;fun‡Æo ativada BXAUTO 
If PARAM_TITCRED<>"T"
   then return
endif   
   
;** Ft_GERTCS ******************************************************************
;*  Geracao de Titulos a Pagar (Credito) para Saidas                           *
;*******************************************************************************
;Autor           : Vise Informatica (VISERP)
;Desenvolvido    : 06/01/2016 por Anivel Augusto Rodrigues
;Ultima Alteracao: 24/02/2016 por Anivel Augusto Rodrigues
;Motivo Alteracao: Ajustes usar data base na geracao         
;Ultima Alteracao: 16/06/2016 por Bruno Carvalho 
;Motivo Alteracao: Alterado NUM_LANCTO = PROXLANCTO_NLANC -> Padroniza‡Æo da rotina de Numero_Lancamento()             
;Ultima Alteracao: 11/08/2018 por Anivel Augusto Rodrigues
;Motivo Alteracao: Ajustes acerto gerando so TC         
 
;*******************************************************************************
;* Exportacao p/ Contas a Pagar - Gera titulo de Credito                       *
;*******************************************************************************
Proc Atualiza_CPTC()
Private CP_LANC, CHV_EMPRESA, CHV_TPDOCTO, CHV_NUMERO
                  
CHV_EMPRESA =regconta["Codigo da Empresa"]
CHV_TPDOCTO ="REC"
CHV_NUMERO  =[Bxautc->Numero do Lote]
                         
Moveto "\\Sistemas\\CtaPag\\Titulos"
Moveto [Codigo da Empresa]
Locate IndexOrder by "Indtit30" CHV_EMPRESA,CHV_TPDOCTO,CHV_NUMERO
If RetVal
   Then While [Codigo da Empresa  ]=CHV_EMPRESA and
              [Codigo do Documento]=CHV_TPDOCTO and
              [Lancamento Gerador ]=CHV_NUMERO  
   
          if [Tipo do Pagamento  ]="TC" and
             [Numero do Documento]=CHV_NUMERO+"-TC"
             then          
                  sm=   "Contas a Pagar  , lan‡amento "+[Numero do Lancamento]+ " - "
                  sm=sm+"Docto "+Format("W04,AL",[Codigo da Empresa  ])+"/"+
                                 Format("W04,AL",[Codigo do Documento])+"/"+
                                 Format("W10,AL",[Numero do Documento])+", "
             
                  Grava_Erro(sm+"titulo credito j  existe !")
                  return
          endif
          
          skip
          If EOT() Then QuitLoop EndIf
          
          Moveto [Codigo da Empresa]
          Locate Next IndexOrder by "Indtit30" CHV_EMPRESA,CHV_TPDOCTO,CHV_NUMERO
          
        EndWhile
endif

While True
  Moveto [Numero do Lancamento]
  End
  If Numero_Lancamento("Interno","")
     Then CP_LANC = PROXLANCTO_NLANC
          Release Vars PROXLANCTO_NLANC
  EndIf
  Locate CP_LANC
  If Not Retval
     Then End Down
          [Numero do Lancamento ]=CP_LANC
          If Not IsLockRecord()
             Then QuitLoop
             Else Del
          EndIf
  EndIf
EndWhile  

[Codigo da Conta         ]=regconta["Codigo da Conta"  ]
[Codigo da Empresa       ]=CHV_EMPRESA
[Codigo do Documento     ]=CHV_TPDOCTO
[Numero do Documento     ]=CHV_NUMERO+"-TC"
[Codigo do Emitente      ]=[Bxautc->Codigo        ]
[Data de Emissao         ]=[Bxautc->Data Base     ]
[Data de Vencimento      ]=[Bxautc->Data Base     ]
[Data a Pagar            ]=[Bxautc->Data Base     ]
[Data Competencia        ]=[Bxautc->Data Base     ]
[Valor do Documento      ]=[Bxautc->Valor_TCGerado]
[Saldo do Documento      ]=[Bxautc->Valor_TCGerado]
[Observacoes             ]="CREDITO CONCEDIDO REF. LOTE "+[Bxautc->Numero do Lote]+" * "+"ACERTO FINANCEIRO"

if [Bxautc->Tipo_TCGerado]=""
    then [Observacoes    ]=[Observacoes]+", "+[Bxautc->Observacoes]
endif            

[Tipo do Lancamento      ]="E"
[Descricao do Lancamento ]="OUTROS PAGAMENTOS"
[Tipo do Pagamento       ]="TC"    ; GERACAO TITULO DE CREDITO
[Codigo Plano_Conta      ]=regp_titulo["Plano_Conta_GCredito"]  

[Sistema Gerador         ]="AF"
[Lancamento Gerador      ]=[Bxautc->Numero do Lote]
[Documento Referente     ]="REC"+"/"+[Lancamento Gerador]

Controle_Dia()

UnLockRecord

EndProc



;*******************************************************************************
;* Rotina Principal                                                            *
;*******************************************************************************
If Not IsAssigned(Opcaoc) Then Opcaoc="" EndIf

Aguarde("Atualizando TC/TITULOS A PAGAR ")

Atualiza_CPTC()

Release Procs Atualiza_CPTC

