Ir para conteúdo
  • Cadastre-se

dev botao
  • Este tópico foi criado há 2251 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

Postado (editado)

Segue fontes tem que fazer uma revisão pois estava usando truck1 e fiz umas modificações pra compilar com truck2 tem umas função duplicadas não tive tempo de fazer a limpeza.

Em 07/07/2017 at 17:09, Eptus disse:

Boa tarde,

Seria excelente se pudesse fazer isso. Como pode ser feito? meu email é [email protected]

Obrigado

 

ACBrCNAB.rar

Editado por Davi
erro de português
  • Obrigado 1
Davi Souza
Analista/Desenvolvedor de Aplicação Desktop
Teste 48 9 9643-8854
Postado
1 hora atrás, Davi disse:

Segue fontes tem que fazer uma revisão pois estava usando truck1 e fiz umas modificações pra compilar com truck2 tem umas função duplicadas não tive tempo de fazer a limpeza.

 

ACBrCNAB.rar

Boa tarde,

Muito obrigado pela ajuda. 

Abri o arquivo e identifiquei o componente, você teria algum exemplo de como utilizá-lo?

Postado
1 hora atrás, Eptus disse:

Boa tarde,

Muito obrigado pela ajuda. 

Abri o arquivo e identifiquei o componente, você teria algum exemplo de como utilizá-lo?

tenho exemplo separado da minha aplicação sim vou verificar e logo posto. mas a principio seria

procedure TFCPG.ConfiguraComponente;
var
 ok: boolean;
begin
 ACBrCNAB1.Configuracoes.Geral.Banco           := StrToBanco(ok, QyPortadorCOD_BANCO.AsString);
 ACBrCNAB1.Configuracoes.Geral.SubstitutaBanco := pagNenhum;
 ACBrCNAB1.Configuracoes.Arquivos.Salvar           := False;
 ACBrCNAB1.Configuracoes.Arquivos.SepararPorCNPJ   := True;
 ACBrCNAB1.Configuracoes.Arquivos.SepararPorMes    := True;
 ACBrCNAB1.Configuracoes.Arquivos.AdicionarLiteral := True;
// ACBrCNAB1.Configuracoes.Arquivos.PathSalvar       := QyPortadorDIR_ARQUIVO_REMESSA.AsString;
end;

 

procedure TFCPG.AlimentarComponente;
var
 ok: boolean;
 TotalLote: Double;
begin
 ACBrCNAB1.Arquivos.Clear;
 with ACBrCNAB1 do
  begin
   with Arquivos.Add.CNAB do
    begin
      //////////////////////////////////////////////////////////////////////////
      // Geral
      //////////////////////////////////////////////////////////////////////////
      (*
       TTipoServico     = (tsCobranca, tsBloquetoEletronico, tsConciliacaoBancaria,
                           tsDebitos, tsCustodiaCheques, tsGestaoCaixa,
                           tsConsultaMargem, tsAverbacaoConsignacao,
                           tsPagamentoDividendos, tsManutencaoConsignacao,
                           tsConsignacaoParcelas, tsGlosaConsignacao,
                           tsConsultaTributosaPagar, tsPagamentoFornecedor,
                           tsPagamentoContas, tsCompror, tsComprorRotativo,
                           tsAlegacaoSacado, tsPagamentoSalarios,
                           tsPagamentoHonorarios, tsPagamentoBolsaAuxilio,
                           tsPagamentoPrebenda, tsVendor, tsVendoraTermo,
                           tsPagamentoSinistrosSegurado, tsPagamentoDespesaViagem,
                           tsPagamentoAutorizado, tsPagamentoCredenciados,
                           tsPagamentoRemuneracao, tsPagamentoRepresentantes,
                           tsPagamentoBeneficios, tsPagamentosDiversos);
      *)
//      Geral.Banco := 001; // Banco do Brasil
//      Geral.TipoServico := tsPagamentoFornecedor; // Pagamento através de crédito em conta ou titulos
//      Geral.SubstitutaBanco := 0; // Utilizado Somente quando houver o segmento C

      //////////////////////////////////////////////////////////////////////////
      // Registro 0
      //////////////////////////////////////////////////////////////////////////
      Registro0.Empresa.Inscricao.Tipo                := tiCNPJ;
      Registro0.Empresa.Inscricao.Numero              := ExtrairNumeros(QyPortadorCGC_EMPRESA.AsString);
      Registro0.Empresa.Convenio                      := FormatFloat('000000', StrToFloatDef(ExtrairNumeros(QyPortadorNUM_CONVENIO.AsString),0))+ Space(14);//930172
      Registro0.Empresa.ContaCorrente.Agencia.Codigo  := StrToInt(ExtrairSeparador(QyPortadorCOD_AGENCIA.AsString,1));
      Registro0.Empresa.ContaCorrente.Agencia.DV      := ExtrairSeparador(QyPortadorCOD_AGENCIA.AsString,2);
      Registro0.Empresa.ContaCorrente.Conta.Numero    := StrToInt(ExtrairSeparador(QyPortadorNUM_CONTA_BANCO.AsString,1));
      Registro0.Empresa.ContaCorrente.Conta.DV        := ExtrairSeparador(QyPortadorNUM_CONTA_BANCO.AsString,2);
      Registro0.Empresa.ContaCorrente.DV              := ' ';
      Registro0.Empresa.ContaCorrente.Conta.TipoConta := 1;
      Registro0.Empresa.Nome                          := QyPortadorNOM_EMPRESA.AsString;
      Registro0.NomeBanco                             := UpperCase(QyPortadorDES_BANCO.AsString);
      Registro0.Arquivo.Codigo                        := taRemessa;
      Registro0.Arquivo.DataGeracao                   := Date;
      Registro0.Arquivo.HoraGeracao                   := Time;
      Registro0.Arquivo.Sequencia                     := 1;
      case ACBrCNAB1.Configuracoes.Geral.Banco of
        pagHSBC : Registro0.Arquivo.Densidade         := 01600;
        pagItau : Registro0.Arquivo.Densidade         := 0;
        else      Registro0.Arquivo.Densidade         := 0;
      end;
      Registro0.ReservadoBanco                        := '';
      Registro0.ReservadoEmpresa                      := '';

      CDSPagar.First;
      while not CDSPagar.Eof do
      begin
        ValidaTipoPagamento;
        with Lote.Add do
        begin
          TotalLote := 0.0;

          Registro1.Servico.Operacao := toCredito;
          Registro1.Servico.TipoServico := StrToTpServico(ok,Copy(CDSPagarTIP_SERVICO.AsString,1,2));
          Registro1.Servico.FormaLancamento := StrToFmLancamento(ok,Copy(CDSPagarTIP_LANCAMENTO.AsString,1,2));
          if not ok then
            HsErro('Forma de Lancamento não implementado para geração de contas a pagar');
          Registro1.Empresa.Inscricao.Tipo := tiCNPJ;
          Registro1.Empresa.Inscricao.Numero := ExtrairNumeros(QyPortadorCGC_EMPRESA.AsString);
          Registro1.Empresa.Convenio := FormatFloat('000000', StrToFloatDef(ExtrairSeparador(QyPortadorNUM_CONVENIO.AsString,2,'/'),0))+ Space(14);//930172
          Registro1.Empresa.ContaCorrente.Agencia.Codigo := StrToInt(ExtrairSeparador(QyPortadorCOD_AGENCIA.AsString,1));
          Registro1.Empresa.ContaCorrente.Agencia.DV := ExtrairSeparador(QyPortadorCOD_AGENCIA.AsString,2);
          Registro1.Empresa.ContaCorrente.Conta.Numero := StrToInt(ExtrairSeparador(QyPortadorNUM_CONTA_BANCO.AsString,1));
          Registro1.Empresa.ContaCorrente.Conta.DV := ExtrairSeparador(QyPortadorNUM_CONTA_BANCO.AsString,2);
          Registro1.Empresa.ContaCorrente.DV := ' ';
          Registro1.Empresa.ContaCorrente.Conta.TipoConta := 1;
          Registro1.Empresa.Nome := QyPortadorNOM_EMPRESA.AsString;
          Registro1.Informacao1 := '';
          Registro1.Endereco.Logradouro := DMG1.TBEmpresas.FieldByName('END_EMPRESA').AsString;
          Registro1.Endereco.Numero := strToIntDef(DMG1.TBEmpresas.FieldByName('NUM_END_EMPRESA').AsString, 0);
          Registro1.Endereco.Complemento := '';
          Registro1.Endereco.Bairro := DMG1.TBEmpresas.FieldByName('BAI_EMPRESA').AsString;
          Registro1.Endereco.Cidade := Procura('CIDADES', 'NOM_CIDADE', 'COD_CIDADE=' + DMG1.TBEmpresas.FieldByName('COD_CIDADE').AsString);
          Registro1.Endereco.CEP := StrToIntDef(ExtrairNumeros(DMG1.TBEmpresas.FieldByName('SIG_ESTADO').AsString), 0);
          Registro1.Endereco.Estado := DMG1.TBEmpresas.FieldByName('SIG_ESTADO').AsString;

          case Registro1.Servico.FormaLancamento of

            flCreditoContaCorrente, flCreditoContaCorrenteMesmaTitularidade, flCreditoContaPoupanca, flDocTed, flDocMesmaTitularidade,
            flTEDOutraTitularidade, flTEDMesmaTitularidade, flTEDTransferencia, flOPDisposicao : begin
              with SegmentoA.Add do
              begin
                CodMovimento := imInclusaoRegistroDetalheLiberado;
                TipoMovimento:= tmInclusao;
                with Favorecido do
                begin
                  Camara                        := StrtoInt(Copy(CDSPagarCOD_CAMARA.AsString,1,3));// “018” para “TED” (Valor igual ou superior a R$ 0,01);  “700” para “DOC Eletrônico” (Valor inferior a R$ 5.000,00); ou
                  Banco                         := StrToBanco(ok, CDSPagarCOD_BANCO.AsString); //  “888” para “TED” (Qualquer valor) quando for necessário o envio de TED utilizando o código ISPB.
                  if not ok then
                    HsErro('Para a Forma de Lancamento selecionada é nescessario informar o Cód. banco!');
                  if IsBlank(CDSPagarAGENCIA_COD.AsString) then
                    HsErro('Para a Forma de Lancamento selecionada é nescessario informar o Numero da Agencia!');
                  ContaCorrente.Agencia.Codigo  := CDSPagarAGENCIA_COD.AsInteger;
                  ContaCorrente.Agencia.DV      := CDSPagarAGENCIA_DV.AsString;
                  ContaCorrente.Conta.TipoConta := 1;
                  if IsBlank(CDSPagarCONTA_NUM.AsString) then
                    HsErro('Para a Forma de Lancamento selecionada é nescessario informar o Numero da Conta!');
                  ContaCorrente.Conta.Numero    := CDSPagarCONTA_NUM.AsInteger;
                  ContaCorrente.Conta.DV        := CDSPagarCONTA_DV.AsString;
                  Nome                          := CDSPagarRAZ_CLI_FOR.AsString;
                end;
                with Credito do
                begin
                  SeuNumero       := CDSPagarNUM_SEU_NUMERO.AsString;
                  DataPagamento   := CDSPagarDAT_PROVAVEL_PAGAMENTO.AsDateTime;
                  Moeda.Tipo      := tmReal;
                  Moeda.Qtde      := 0.0;
                  ValorPagamento  := CDSPagarVLR_ABERTO.AsFloat;
                  NossoNumero     := CDSPagarNUM_NOSSO_NUMERO.AsString;
                  DataReal        := CDSPagarDAT_PROVAVEL_PAGAMENTO.AsDateTime;
                  ValorReal       := CDSPagarVLR_ABERTO.AsFloat;
                end;
                Informacao2 := '';
                CodigoDOC   := '';
                CodigoTED   := '';
                CodigoComp  := '';
                Aviso       := 0;

                TotalLote := TotalLote + Credito.ValorPagamento;
              end;

              with SegmentoB.Add do
              begin
                with Inscricao do
                begin
                  if (Length(ExtrairNumeros(CDSPagarCGC_CPF.AsString)) > 14) then
                    Tipo := tiCNPJ
                  else
                    Tipo     := tiCPF;
                  Numero   := ExtrairNumeros(CDSPagarCGC_CPF.AsString);
                end;
                with Endereco do
                begin
                  Logradouro  := CDSPagarLOGRADOURO.AsString;
                  Numero      := CDSPagarNUM_END_CLI_FOR.AsInteger;
                  Complemento := CDSPagarCOM_ENDERECO.AsString;
                  Bairro      := CDSPagarBAI_CLI_FOR.AsString;
                  Cidade      := CDSPagarNOM_CIDADE.AsString;
                  CEP         := StrToIntDef(ExtrairNumeros(CDSPagarCEP_CLI_FOR.AsString),0);
                  Estado      := CDSPagarSIG_ESTADO.AsString;;
                end;
                DataVencimento:= CDSPagarVCT_ORIGINAL.AsDateTime;
                Valor         := CDSPagarVLR_ABERTO.AsFloat;
                Abatimento    := 0.00;
                Desconto      := 0.00;
                Mora          := 0.00;
                Multa         := 0.00;
                CodigoDoc     := '';
                Aviso         := 0;
                CodigoUG      := 0;
              end;
            end;

            flLiquidacaoTitulosProprioBanco, flLiquidacaoTitulosOutrosBancos : begin
              with SegmentoJ.Add do
              begin
                CodMovimento := imInclusaoRegistroDetalheLiberado;
                CodigoBarras :=  CDSPagarNUM_LINHA_DIGITAVEL.AsString;
                NomeCedente := CDSPagarRAZ_CLI_FOR.AsString;
                DataVencimento := CDSPagarVCT_ORIGINAL.AsDateTime;
                ValorTitulo := CDSPagarVLR_ABERTO.AsFloat;
                Desconto := 0.0;
                Acrescimo := 0.0;
                DataPagamento := CDSPagarDAT_PROVAVEL_PAGAMENTO.AsDateTime;
                ValorPagamento := CDSPagarVLR_ABERTO.AsFloat;
                QtdeMoeda := 0.0;
                ReferenciaSacado := CDSPagarNUM_SEU_NUMERO.AsString;//FormatFloat('00000000000000000000', 1);
                CodigoMoeda := 09;

                TotalLote := TotalLote + ValorPagamento;
              end;
            end;

            flPagamentoConcessionarias, flPagamentoContas, flTributoDARFNormal, flTributoGSP, flTributoDARFSimples, flTributoIPTU,
            flTributoDARJ, flTributoGARESPICMS, flTributoGARESPDR, flTributoGARESPITCMD, flTributoIPVA,
            flTributoLicenciamento, flTributoDPVAT, flTributoGNRe : begin
              with SegmentoO.Add do
              begin
                CodMovimento      := imInclusaoRegistroDetalheLiberado;
                CodigoBarras      := CDSPagarNUM_LINHA_DIGITAVEL.AsString;
                NomeConcessionaria:= CDSPagarRAZ_CLI_FOR.AsString;
                DataVencimento    := CDSPagarVCT_ORIGINAL.AsDateTime;
                DataPagamento     := CDSPagarDAT_PROVAVEL_PAGAMENTO.AsDateTime;
                ValorPagamento    := CDSPagarVLR_ABERTO.AsFloat;
                SeuNumero         := CDSPagarNUM_SEU_NUMERO.AsString;
                NossoNumero       := CDSPagarNUM_NOSSO_NUMERO.AsString;

                TotalLote := TotalLote + ValorPagamento;
              end;
            end;
            else HsErro('Tipo Serviço não implementado para geração de contas a pagar');
          end;

          Registro5.Valor := TotalLote;
          Registro5.QtdeMoeda := 0.0;
          Registro5.NumAvisoDebito := 0;
        end;

        CDSPagar.Next;
      end;
    end;
  end;
end;

 

Davi Souza
Analista/Desenvolvedor de Aplicação Desktop
Teste 48 9 9643-8854
  • Moderadores
Postado
4 horas atrás, Davi disse:

Segue fontes tem que fazer uma revisão pois estava usando truck1 e fiz umas modificações pra compilar com truck2 tem umas função duplicadas não tive tempo de fazer a limpeza.

 

ACBrCNAB.rar

é baseado no código que está no Branches?

Consultor SAC ACBr Juliomar Marchetti
 

Projeto ACBr

skype: juliomar
telegram: juliomar
e-mail: [email protected]
http://www.juliomarmarchetti.com.br
MVP_NewLogo_100x100_Transparent-02.png
 

 

Postado
13 horas atrás, Juliomar Marchetti disse:

é baseado no código que está no Branches?

sim foi utilizado o código que está no Branches homologado no itau e hsbc estou terminando o sicred e logo vou fazer caixa quando sobrar tempo também pretendia fazer uma limpeza e seguir nova padronização que foi adotada no truck2

Davi Souza
Analista/Desenvolvedor de Aplicação Desktop
Teste 48 9 9643-8854
  • Moderadores
Postado
12 minutos atrás, Davi disse:

sim foi utilizado o código que está no Branches homologado no itau e hsbc estou terminando o sicred e logo vou fazer caixa quando sobrar tempo também pretendia fazer uma limpeza e seguir nova padronização que foi adotada no truck2

Posso estar subindo o mesmo no branches substituindo o código existente?

Consultor SAC ACBr Juliomar Marchetti
 

Projeto ACBr

skype: juliomar
telegram: juliomar
e-mail: [email protected]
http://www.juliomarmarchetti.com.br
MVP_NewLogo_100x100_Transparent-02.png
 

 

Postado
2 horas atrás, Juliomar Marchetti disse:

Posso estar subindo o mesmo no branches substituindo o código existente?

sim ja esta compatível com truck2 e homologado em 2 bancos HSBC e ITAU assim o pessoal poderia pegar e ajudar nas novas implementações

  • Curtir 1
Davi Souza
Analista/Desenvolvedor de Aplicação Desktop
Teste 48 9 9643-8854
Postado

 

Em 11/07/2017 at 11:06, Juliomar Marchetti disse:

Alterações no Branches

favor testar.

Obrigado.

 

Em 11/07/2017 at 11:51, Eptus disse:

Bom dia Davi,

Obrigado pela atenção, ficarei no aguardo de seu exemplo. 

Valew!!!

 

Bom dia Segue fonte do exemplo e unit do componente alterada pois acabei de homologar no Santander e estou em faze esperando retorno do Sicred mas alterações já contempla o layout.

ACBrCNAB.rar

Demo_ACBrCNAB.rar

Davi Souza
Analista/Desenvolvedor de Aplicação Desktop
Teste 48 9 9643-8854
  • Moderadores
Postado
1 hora atrás, Davi disse:

 

 

Bom dia Segue fonte do exemplo e unit do componente alterada pois acabei de homologar no Santander e estou em faze esperando retorno do Sicred mas alterações já contempla o layout.

ACBrCNAB.rar

Demo_ACBrCNAB.rar

Bom dia

 no svn as alterações sugeridas.

Consultor SAC ACBr Juliomar Marchetti
 

Projeto ACBr

skype: juliomar
telegram: juliomar
e-mail: [email protected]
http://www.juliomarmarchetti.com.br
MVP_NewLogo_100x100_Transparent-02.png
 

 

Postado

 

2 horas atrás, Davi disse:

 

 

Bom dia Segue fonte do exemplo e unit do componente alterada pois acabei de homologar no Santander e estou em faze esperando retorno do Sicred mas alterações já contempla o layout.

ACBrCNAB.rar

Demo_ACBrCNAB.rar

Valew Davi,

Muito obrigado pela ajuda. []´s

  • 2 meses depois ...
  • 5 meses depois ...
Postado
Em 7/19/2017 at 11:10, Juliomar Marchetti disse:

Bom dia

 no svn as alterações sugeridas.

Imagino que minha pergunta possa ser amadora. Mas como consigo baixar esses fontes no svn? E esses fontes já são como um componente que é possivel compilar e instalar?

Postado
Agora, Juliomar Marchetti disse:

Sim está no branches do svn 

basta tirar o final do endereço trunk2 e baixar tudo lá está o componente mas pelo que notei está parado.

Eu ainda estou dando continuidade aos poucos, ja terminei sicred estou começando a colocar nos padrões TRUCK2 assim que tiver mais tempo posto as alterações novamente.

Davi Souza
Analista/Desenvolvedor de Aplicação Desktop
Teste 48 9 9643-8854
  • Consultores
Postado
22 horas atrás, Eduardo Filho disse:

Imagino que minha pergunta possa ser amadora. Mas como consigo baixar esses fontes no svn? E esses fontes já são como um componente que é possivel compilar e instalar?

É basicamente o mesmo modo da instalação padrão conforme explicado no vídeo abaixo. Só que vai alterar o endereço conforme o Juliomar citou acima.

 

 

 

 

 

[]'s

Consultor SAC ACBr

Elton
Profissionalize o ACBr na sua empresa, conheça o ACBr Pro.

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

Um engenheiro de Controle de Qualidade(QA) entra num bar. Pede uma cerveja. Pede zero cervejas.
Pede 99999999 cervejas. Pede -1 cervejas. Pede um jacaré. Pede asdfdhklçkh.
  • 1 mês depois ...
Postado
Em 04/04/2018 at 16:15, Davi disse:

Eu ainda estou dando continuidade aos poucos, ja terminei sicred estou começando a colocar nos padrões TRUCK2 assim que tiver mais tempo posto as alterações novamente.

Bom dia Davi.

Como está o suporte à Sicredi? Homologado? Em produção?

Poderia postar os fontes? Posso ajudar nos ajustes e conversão pro trunk2.

  • 1 mês depois ...
  • Consultores
Postado
4 horas atrás, Carlos Henrique Benelli disse:

Alguem pode disponibilizar o endereço de checkout do SVN, utilizei este informado anteriormente e ele da unable to access  >> https://acbr.svn.sourceforge.net/svnroot/acbr/branches/ <<

https://www.projetoacbr.com.br/como-usar/

[]'s

Consultor SAC ACBr

Elton
Profissionalize o ACBr na sua empresa, conheça o ACBr Pro.

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

Um engenheiro de Controle de Qualidade(QA) entra num bar. Pede uma cerveja. Pede zero cervejas.
Pede 99999999 cervejas. Pede -1 cervejas. Pede um jacaré. Pede asdfdhklçkh.
Postado
Em 15/05/2018 at 09:46, Daniel Sonda disse:

Bom dia Davi.

Como está o suporte à Sicredi? Homologado? Em produção?

Poderia postar os fontes? Posso ajudar nos ajustes e conversão pro trunk2.

o sicred na epoca que implementei em homologação deu certo porem agora estou sem cliente em uso deste banco para efetuar teste em produção!

Davi Souza
Analista/Desenvolvedor de Aplicação Desktop
Teste 48 9 9643-8854
  • Este tópico foi criado há 2251 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.
Visitante
Este tópico está agora fechado para novas respostas
×
×
  • Criar Novo...

Informação Importante

Colocamos cookies em seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies, caso contrário, assumiremos que você está bem para continuar.