Advertisement
Guest User

Untitled

a guest
Jun 27th, 2019
67
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.22 KB | None | 0 0
  1. Segue os fontes completos para vc analisar
  2.  
  3. var
  4. _logslista: tstrings;
  5. i:integer;
  6. x:integer;
  7. begin
  8. inherited;
  9. _logslista := tstringlist.create;
  10. try
  11. dm.Progresso_Iniciar('Carregando tabela, aguarde...');
  12. TabFinanceiro.open;
  13. TabFinanceiro.first;
  14. Fin_Mov.DisableControls;
  15. tabparc.Open;
  16. tabParc.DisableControls;
  17. _logslista.add('LOG;EMISSAO;CODIGO_CLIENTE;NOME;NUMERO_DOC;VENCIMENTO;VALOR;CONTA_ID;PLANO_ID;SUBPLANO_ID;MODALIDADE_ID');
  18. x:=tabfinanceiro.RecordCount;
  19. i:=1;
  20. while not TabFinanceiro.eof do
  21. begin
  22. dm.Progresso_msg('Processando: '+inttostr(i)+'/'+inttostr(x)+' '+TabFinanceiroNOME.value);
  23. tabcli.close;
  24. tabcli.Params[0].asinteger := TabFinanceiroCODIGO_CLIENTE.asinteger;
  25. tabcli.open;
  26. if tabcli.isempty then
  27. begin
  28. _logslista.add('NAO-ENCONTRADO;' + TabFinanceiroEMISSAO.AsString + ';' + TabFinanceiroCODIGO_CLIENTE.AsString + ';' + TabFinanceiroNOME.AsString + ';' + TabFinanceiroNUMERO_DOC.AsString + ';' + TabFinanceiroVENCIMENTO.AsString + ';'
  29. + TabFinanceiroVALOR.AsString + ';' + TabFinanceiroCONTA_ID.AsString + ';' + TabFinanceiroPLANO_ID.AsString + ';' + TabFinanceiroSUBPLANO_ID.AsString + ';' + TabFinanceiroMODALIDADE_ID.AsString);
  30. end
  31. else
  32. begin
  33. if TabFinanceiroNOME.value <> TabFinanceiroNOME.value then
  34. _logslista.add('NOME-DIFERENTE;' + TabFinanceiroEMISSAO.AsString + ';' + TabFinanceiroCODIGO_CLIENTE.AsString + ';' + TabFinanceiroNOME.AsString + ';' + TabFinanceiroNUMERO_DOC.AsString + ';' + TabFinanceiroVENCIMENTO.AsString +
  35. ';' + TabFinanceiroVALOR.AsString + ';' + TabFinanceiroCONTA_ID.AsString + ';' + TabFinanceiroPLANO_ID.AsString + ';' + TabFinanceiroSUBPLANO_ID.AsString + ';' + TabFinanceiroMODALIDADE_ID.AsString)
  36. else
  37. begin
  38.  
  39.  
  40. // Conta
  41. Fin_Mov.insert;
  42. Fin_Movdt_emissao.value := strtodate(TabFinanceiroEMISSAO.value);
  43. Fin_Movhistorico_narrativa.value := 'CONTAS A RECEBER';
  44. Fin_Movfin_operacao.value := 'C';
  45. Fin_Movnumero_documento.value := TabFinanceiroNUMERO_DOC.value;
  46. Fin_Movpossui_instrucao_protesto.value := 'N';
  47. Fin_Movvalor.value := 0;
  48. Fin_Movcancelado.value := 'N';
  49. Fin_Movsituacao.value := 'P';
  50. Fin_Movpessoa_id.value := TabFinanceiroCODIGO_CLIENTE.asinteger;
  51. Fin_Movperiodicidade.value := 'V';
  52. Fin_Movempresa_id.value := dm.Empresaid.value;
  53. Fin_Movnota_pontodevenda_id.value := dm.PontodeVendaid.value;
  54. Fin_Movfin_planoconta_id.value := strtointdef(TabFinanceiroPLANO_ID.value, 10);
  55. Fin_Movfin_subplanoconta_id.value := strtointdef(TabFinanceiroSUBPLANO_ID.value, 102);
  56. Fin_Movtransferencia.value := 'N';
  57. Fin_Movfin_centrocusto_id.value := 1;
  58. Fin_Mov.post;
  59.  
  60. // Parcela
  61. tabParc.insert;
  62. tabParcfin_mov_id.value := Fin_Movid.value;
  63. tabParcdata_competencia.value := Fin_Movdt_emissao.value;
  64. tabParcvencimento.value := strtodate(TabFinanceiroVENCIMENTO.value);
  65. tabParcparcela.value := 1;
  66. tabParcnumero_doc_parc.value := TabFinanceiroNUMERO_DOC.value;
  67. tabParcparcela_situacao.value := 'P';
  68. tabParctitulo_descontado.value := 'N';
  69. tabParcsituacao_entrega_doc.Clear;
  70. tabParcfin_conta_id.value := strtointdef(TabFinanceiroCONTA_ID.value, 2);
  71. tabParcfin_modalidade_id.value := strtointdef(TabFinanceiroMODALIDADE_ID.value, 15);
  72. tabParcvalor_parcela.value := strtofloat(formatavalor(TabFinanceiroVALOR.value));
  73. tabParcvalor_final.value := strtofloat(formatavalor(TabFinanceiroVALOR.value));
  74. tabParc.post;
  75.  
  76. end;
  77. end;
  78.  
  79. TabFinanceiro.next;
  80. inc(i);
  81. end;
  82. Fin_Mov.enableControls;
  83. Fin_Mov_x_Parcelas.enableControls;
  84. tabParc.enableControls;
  85. tabParc.Close;
  86. TabFinanceiro.Close;
  87. finally
  88. _logslista.SaveToFile(ExtractFilePath(Application.ExeName) + 'logs_importacao_financeiro.csv');
  89. showmessage(ExtractFilePath(Application.ExeName) + 'logs_importacao_financeiro.csv');
  90. FreeAndNil(_logslista);
  91. DM.Progresso_Fechar;
  92. end;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement