Ir para conteúdo
  • Cadastre-se

Claudiomir

Membros
  • Total de ítens

    202
  • Registro em

  • Última visita

  • Days Won

    1

Posts postados por Claudiomir

  1. Saudações a todos

    Isso é apenas um alerta.

    Tentei hoje atualizar o acbr. Fui na pasta, svn, atualizei os arquivos. Rodei o Apagaracbr. bat, tudo normal.

    Executei o AcbrInstalTrunk e mandei instalar tudo.

    Na hora de compilar o acbrboleto.dpk deu erro, conforme mostro abaixo.

    .

    .

    .

    Compiling package C:\componentes\acbr\Pacotes\Delphi\ACBrBoleto\ACBr_Boleto.dpk
    "C:\Program Files (x86)\Embarcadero\Studio\19.0\bin\dcc32.exe" "C:\componentes\acbr\Pacotes\Delphi\ACBrBoleto\ACBr_Boleto.dpk"
    Embarcadero Delphi for Win32 compiler version 32.0
    Copyright (c) 1983,2017 Embarcadero Technologies, Inc.
    C:\componentes\acbr\Fontes\ACBrBoleto\ACBrBoleto.pas(1) Error: E2029 'UNIT' expected but '<' found
    C:\componentes\acbr\Fontes\ACBrBoleto\ACBrBoleto.pas(17) Error: E2038 Illegal character in input file: '|' (#$7C)
    C:\componentes\acbr\Fontes\ACBrBoleto\ACBrBoleto.pas(75) Error: E2038 Illegal character in input file: '|' (#$7C)
    C:\componentes\acbr\Fontes\ACBrBoleto\ACBrBoleto.pas(90) Error: E2038 Illegal character in input file: '|' (#$7C)
    C:\componentes\acbr\Fontes\ACBrBoleto\ACBrBoleto.pas(125) Error: E2029 Declaration expected but '<' found
    C:\componentes\acbr\Fontes\ACBrBoleto\ACBrBoleto.pas(231) Error: E2038 Illegal character in input file: '|' (#$7C)
    C:\componentes\acbr\Fontes\ACBrBoleto\ACBrBoleto.pas(551) Error: E2029 Identifier expected but '<' found
    C:\componentes\acbr\Fontes\ACBrBoleto\ACBrBoleto.pas(552) Error: E2029 '=' expected but identifier 'TACBrTipoCobranca' found
    C:\componentes\acbr\Fontes\ACBrBoleto\ACBrBoleto.pas(552) Error: E2029 ';' expected but '=' found
    C:\componentes\acbr\Fontes\ACBrBoleto\ACBrBoleto.pas(552) Error: E2029 '=' expected but ',' found
    C:\componentes\acbr\Fontes\ACBrBoleto\ACBrBoleto.pas(552) Error: E2029 ';' expected but ',' found
    C:\componentes\acbr\Fontes\ACBrBoleto\ACBrBoleto.pas(552) Error: E2029 '=' expected but ',' found
    C:\componentes\acbr\Fontes\ACBrBoleto\ACBrBoleto.pas(552) Error: E2029 ';' expected but ',' found
    C:\componentes\acbr\Fontes\ACBrBoleto\ACBrBoleto.pas(552) Error: E2029 '=' expected but ',' found
    C:\componentes\acbr\Fontes\ACBrBoleto\ACBrBoleto.pas(552) Error: E2029 ';' expected but ',' found
    C:\componentes\acbr\Fontes\ACBrBoleto\ACBrBoleto.pas(552) Error: E2003 Undeclared identifier: 'cobBancoMercantil'
    C:\componentes\acbr\Fontes\ACBrBoleto\ACBrBoleto.pas(552) Error: E2029 ';' expected but ',' found
    C:\componentes\acbr\Fontes\ACBrBoleto\ACBrBoleto.pas(553) Error: E2029 '=' expected but ',' found
    C:\componentes\acbr\Fontes\ACBrBoleto\ACBrBoleto.pas(553) Error: E2029 ';' expected but ',' found
    C:\componentes\acbr\Fontes\ACBrBoleto\ACBrBoleto.pas(553) Error: E2029 '=' expected but ',' found
    C:\componentes\acbr\Fontes\ACBrBoleto\ACBrBoleto.pas(553) Error: E2029 ';' expected but ',' found
    C:\componentes\acbr\Fontes\ACBrBoleto\ACBrBoleto.pas(553) Error: E2003 Undeclared identifier: 'cobBancoDoNordeste'
    C:\componentes\acbr\Fontes\ACBrBoleto\ACBrBoleto.pas(553) Error: E2029 ';' expected but ',' found
    C:\componentes\acbr\Fontes\ACBrBoleto\ACBrBoleto.pas(553) Error: E2029 ';' expected but ',' found
    C:\componentes\acbr\Fontes\ACBrBoleto\ACBrBoleto.pas(553) Error: E2029 '=' expected but ',' found
    C:\componentes\acbr\Fontes\ACBrBoleto\ACBrBoleto.pas(553) Error: E2029 ';' expected but ',' found
    C:\componentes\acbr\Fontes\ACBrBoleto\ACBrBoleto.pas(554) Error: E2029 '=' expected but ',' found
    C:\componentes\acbr\Fontes\ACBrBoleto\ACBrBoleto.pas(554) Error: E2029 ';' expected but ',' found
    C:\componentes\acbr\Fontes\ACBrBoleto\ACBrBoleto.pas(554) Error: E2029 '=' expected but ',' found
    C:\componentes\acbr\Fontes\ACBrBoleto\ACBrBoleto.pas(554) Error: E2029 ';' expected but ',' found
    C:\componentes\acbr\Fontes\ACBrBoleto\ACBrBoleto.pas(554) Error: E2029 '=' expected but ',' found
    C:\componentes\acbr\Fontes\ACBrBoleto\ACBrBoleto.pas(554) Error: E2029 ';' expected but ',' found
    C:\componentes\acbr\Fontes\ACBrBoleto\ACBrBoleto.pas(554) Error: E2029 '=' expected but ',' found
    C:\componentes\acbr\Fontes\ACBrBoleto\ACBrBoleto.pas(554) Error: E2029 ';' expected but ',' found
    C:\componentes\acbr\Fontes\ACBrBoleto\ACBrBoleto.pas(554) Error: E2029 '=' expected but ',' found
    C:\componentes\acbr\Fontes\ACBrBoleto\ACBrBoleto.pas(555) Error: E2003 Undeclared identifier: 'cobBancoCresolSCRS'
    C:\componentes\acbr\Fontes\ACBrBoleto\ACBrBoleto.pas(555) Error: E2029 ';' expected but ',' found
    C:\componentes\acbr\Fontes\ACBrBoleto\ACBrBoleto.pas(555) Error: E2029 '=' expected but ',' found
    C:\componentes\acbr\Fontes\ACBrBoleto\ACBrBoleto.pas(555) Error: E2029 ';' expected but ',' found
    C:\componentes\acbr\Fontes\ACBrBoleto\ACBrBoleto.pas(555) Error: E2029 '=' expected but ',' found
    C:\componentes\acbr\Fontes\ACBrBoleto\ACBrBoleto.pas(555) Error: E2029 ';' expected but ',' found
    C:\componentes\acbr\Fontes\ACBrBoleto\ACBrBoleto.pas(555) Fatal: E2226 Compilation terminated; too many errors
    Compilation failure
    Erro ao compilar o pacote "ACBr_Boleto.dpk".
    Abortando... Ocorreram erros na compilação dos pacotes.

    Segui vários tópicos aqui tentando a resolução, nada funcionou. Por fim, com o auxílio de um colega, usando o svn Revert, mostrou conflitos.

    image.thumb.png.a8d28e656fae9cc7cab641457713f4b1.png

    "Reverti" o AcbrBoleto.pas, e mandei instalar de novo, e funcionou.

    Criei o tópico apenas para alertar, não entendi o erro.

    Abraços a todos

  2. Saudações

    Desculpe, mas eu estou sem saber o que mais mexer. Li os tópicos. Segui as instruções. Configurei o componente corretamente(até onde eu sei) e depois de receber a mensagem de Lote de Eventos Processados, recebo a mensagem que o arquivo que estou tentando abrir não existe. E detalhe, ele REALMENTE não existe.

    Agora, estou em modo de homologação e apesar de eu não saber se isso afeta ou não o funcionamento, eu recebo os arquivos, só que o nome não confere.

    Implementei o seguinte código na configuração do Componente

     ACBrNFe1.Configuracoes.Arquivos.PathEvento := cfgcfgsalvarnfe.AsString + sdata;
      ACBrNFe1.Configuracoes.Arquivos.PathInu := cfgcfgsalvarnfe.AsString + sdata;
      ACBrNFe1.Configuracoes.Arquivos.PathNFe := cfgcfgsalvarnfe.AsString + sdata;
      ACBrNFe1.Configuracoes.Arquivos.PathSalvar := cfgcfgsalvarnfe.AsString + sdata;
      ACBrNFe1.Configuracoes.Geral.idcsc := cfgcfgidtoken.AsString;
      ACBrNFe1.Configuracoes.Geral.csc := cfgcfgtoken.AsString;
      ACBrNFe1.Configuracoes.Geral.VersaoDF := ve400;
      ACBrNFe1.Configuracoes.Geral.ModeloDF := moNFe;
      ACBrNFe1.Configuracoes.Geral.VersaoQRCode := veqr200;
      ACBrNFe1.Configuracoes.Certificados.NumeroSerie := cfgcfgnumserie.AsString;
      ACBrNFe1.Configuracoes.Certificados.Senha := cfgcfgsenha.AsString;
      ACBrNFe1.Configuracoes.Arquivos.Salvar := true;
      ACBrNFe1.Configuracoes.Geral.Salvar := true;
      ACBrNFe1.Configuracoes.WebServices.Salvar := true;
      ACBrNFe1.Configuracoes.Arquivos.SalvarEvento := true;

    O que ele salva, é somente 1 seguido de eve.... anexei arquivo de imagem.

    O que eu estou errando? Ou só funcionaria em produção?

    No aguardo de ideias,

    Claudiomir

    AcbrEnviar.png

  3. Saudações. Uma situação... inusitada. Cliente meu resolveu trocar a cobrança do Sicoob para Uniprime (99-x). Crio os boletos, visualizo na tela, tudo normal.

    Ao gerar a remessa, ele passa por todos os dados normalmente. Configuro o TipodeCobrança para cobUniprime, alimento os dados da remessa.

    Ele passa pelos testes obrigatórios

          fprinci.ACBrBoleto1.ChecarDadosObrigatorios;
          Inc(nrremessa);
          fprinci.ACBrBoleto1.GerarRemessa(nrremessa);

    Nenhum erro.

    Salva o arquivo no local correto. Mas, aí vem a surpresa. Ele cria somente o cabeçalho da remessa. E não inclui os titulos (boletos) individuais.

    Cnab240.

    Segue remessa em anexo.

    DETALHE! Se eu mudo a cobrança para Sicoob, ele gera NORMALMENTE!

    Fiquei sem entender. Alguém já passou por isso?

    Claudiomir

    cb121101.rem

  4. Bom dia.

    Atualizei Acbr.

    Atualizei Schemas.

    Testando em homologação.

    Sefaz Mt retorna erro NFE - 434 Rejeição: NF-e sem indicativo do intermediador.

    Já alterei várias vezes e sempre retorna mesmo erro.

    Empresa Simples Nacional.

    Nfce / Nfe.

    ....

    Ide.indPres := pcPresencial;
    Ide.indIntermed := iiOperacaoSemIntermediador; // Sem intermediador
     // iiSemOperacao, iiOperacaoSemIntermediador, iiOperacaoComIntermediador. Usar o valor iiSemOperacao para a tag não ser gerada.

    Tem que ter algo muito louco que eu NÃO ESTOU VENDO.

    Comparei meu código com colegas do grupo de whatss e estão idênticos.

    Por favor, o que eu não estou vendo aqui?

    Claudiomir

     

  5. Saudações Juliomar. Grato pela pronta resposta.

    A imagem é da primeira tentativa e posterior compilação do projeto. O log é da segunda tentativa de instalação.

    Vou remover tudo novamente e tentar reinstalar novamente.

    Grato

    Claudiomir

  6. Saudações,

    Perdão se está no tópico errado.

    Fiz atualização do Acbr. Removi acbr segundo apagaracbr.

    Instalei novamente, sem instalar o Pacote Fortes.

    Instalou normal.

    Abro o projeto e compilo. Vários erros no AcbrBoleto.

    Por exemplo a tag layout conforme imagem anexa.

    Fechei tudo. Desinstalei tudo. removi novamente. reiniciei a maquina. Atualizei novamente.

    Dessa vez até inclui o pacote Fortes que por sinal retornou um erro.

    Anexo arquivo de Log.

    O que estou fazendo de errado?

    No aguardo de uma idéia...

    Claudiomir

     

     

     

    erroacbrboleto.png

    log_Delphi_10.2_Tokyo_Win32.txt

  7. 21 minutos atrás, José M. S. Junior disse:

    Boa tarde

    Certifique se realmente está sendo passado ValorMoraJuros, os demais campos só serão preenchidos se esse campo for maior que 0.

    Eu verifiquei. Está gerando com o valor.

  8. 17 minutos atrás, Claudiomir disse:

    Saudações

    Na hora da Remessa, Banco Sicoob, estou informando assim:

          Titulo.EspecieDoc := 'DM';
          Titulo.EspecieMod := '';
          Titulo.Carteira := self.ctactacarteira.AsString;
          Titulo.ValorDocumento := StrToCurr(self.gcrecrevalor.AsString);
          Titulo.LocalPagamento := ctalocalpagamento.AsString;
          Titulo.CodigoMoraJuros := cjValorDia;
          Titulo.DataMoraJuros := (self.gcrecrevencimento.AsDateTime) + 1;
          Titulo.ValorMoraJuros := StrToCurrDef('0', self.gcrecremoradia.AsFloat);
          Titulo.ValorDesconto := StrToCurrDef('0', 0);
          Titulo.ValorAbatimento := StrToCurrDef('0', 0);
          Titulo.PercentualMulta := fprinci.cfgcfgmultadiaria.AsFloat;

    O Banco diz que eu não estou informando os valores corretamente, por isso não está cobrando juros no boleto.

    Alguém pode me orientar onde estou errando?

    Claudiomir

    OBS..: O Banco me enviou imagem dos dados, para comprovação.

    O interessante é que eu fui parando a cada ponto, e os dados são gerados. Abrindo o arquivo enviado, recebi isso do banco.

     

    cobrancasicoob.png

  9. Saudações

    Na hora da Remessa, Banco Sicoob, estou informando assim:

          Titulo.EspecieDoc := 'DM';
          Titulo.EspecieMod := '';
          Titulo.Carteira := self.ctactacarteira.AsString;
          Titulo.ValorDocumento := StrToCurr(self.gcrecrevalor.AsString);
          Titulo.LocalPagamento := ctalocalpagamento.AsString;
          Titulo.CodigoMoraJuros := cjValorDia;
          Titulo.DataMoraJuros := (self.gcrecrevencimento.AsDateTime) + 1;
          Titulo.ValorMoraJuros := StrToCurrDef('0', self.gcrecremoradia.AsFloat);
          Titulo.ValorDesconto := StrToCurrDef('0', 0);
          Titulo.ValorAbatimento := StrToCurrDef('0', 0);
          Titulo.PercentualMulta := fprinci.cfgcfgmultadiaria.AsFloat;

    O Banco diz que eu não estou informando os valores corretamente, por isso não está cobrando juros no boleto.

    Alguém pode me orientar onde estou errando?

    Claudiomir

  10. Pessoal.... RESOLVIDO!!!!

    O erro era basicamente uma burrice minha. Por algum motivo insondável, eu estava mandando gerar novamente o nosso numero quando do envio da remessa.

    Não pergunte por que!

    Provavelmente o maldito Ctrl C, Ctrl V.

    Enfim, o cliente conseguiu pagar!

    Agradeço profundamente a todos que me ajudaram!!!!

    Grato

    Claudiomir

    [Tópico pode ser encerrado]

    • Curtir 2
  11. 4 horas atrás, Juliana Tamizou disse:

    Boa tarde.

    O terceiro bloco da linha digitavel corresponde as posições 2 a 7 do nosso numero + o digito verificador, além do numero da parcela com 3 digitos.

    Em seu último exemplo o nosso numero parece ter sido alterado.

    Att.

    Juliana.... perdão, mas eu não entendi isso (...além do numero da parcela com 3 digitos).

    o campo Titulo.Parcela é integer. Como você passa ele com 3 digitos??

    Sempre que eu tento passar, ele passa somente 1 dígito, ou seja, o próprio valor (quantidades de parcelas).

    Se eu gero 3 boletos, ele vai passar 3 em Titulo.TotalParcelas, não é isso?

    Ou estou completamente enganado?

    Claudiomir

  12. 3 horas atrás, Juliana Tamizou disse:

    Boa tarde.

    O terceiro bloco da linha digitavel corresponde as posições 2 a 7 do nosso numero + o digito verificador, além do numero da parcela com 3 digitos.

    Em seu último exemplo o nosso numero parece ter sido alterado.

    Att.

    Saudações Juliana

    Eu procurei, mas não encontrei. Tem como, olhando no arquivo de remessa, encontrar o campo linha digitável? Sicoob Cnab 240.

    Ou ele não aparece como estaria no boleto?

    Claudiomir

  13. Valeu

    Juliana Tamizou

    Sabe... tem dias que me odeio.

    Esqueci a quantidade de dígitos... ".... além do numero da parcela com 3 digitos. "!!

    To passando somente 1 Digito.

    Parcela ( 1,2,3)

    Titulo.TotalParcelas := self.gcrecretotalparcelas.asinteger;  (está indo somente 1 dígito)!!!!!

    No caso o valor inteiro (3)! e não "003".

    Tem dias... que tenho vontade de "me exorcizar"!

    Vou tentar novamente amanhã. Cliente sem internet agora para testar.

    Grato por enquanto.

     

    Antonio Gomes

    Posso colocar 1 e 1??

    Tanto em Titulo.Parcela como em Titulo.TotalParcelas???

    O banco não vai encher o saco por não ser a informação correta??

    Grato

    Claudiomir

     

  14. 28 minutos atrás, Antonio Gomes disse:

       Titulo.TotalParcelas := self.gcre.RecordCount;
    incrementa parcelas pelo dataset de receber em loop ?

    Se nao for carne: parcela := gcre.RecNo; manda isso com 1 e o TotalParcelas tambem.

    penso estar errado isso.

    E em que momento vc salva no banco de dados isso ? remessa era para enviar com dados ja gravados.

    Esqueci de colocar a chamda da funcao: note os parametros fixos, 1, 1> é parcela e total, nao uso carne, mesmo sendo carne, uso tudo como se fosse 1 parcela.

     

       TFuncBoleto.AtribuirDadosAoTitulo(Titulo,
                    IBQryServBanc,
                    IBDSPai.FieldByName('DATA_BOR').AsDateTime,
                    IBDSPai.FieldByName('REM_OCORRENCIA_BOR').AsInteger,
                    IBDSReceber.FieldByName('DOCUMENTO_REC').AsString,
                    IBDSReceber.FieldByName('BOLETO_REC').AsString, //
                    IBDSReceber.FieldByName('DV_BOLETO_REC').AsString,
                    IBDSReceber.FieldByName('VENCIMENTO_REC').AsDateTime,
                 
      1, 1,
                    IBDSReceber.FieldByName('EMPRESA_REC').AsInteger,
                    IBDSReceber.FieldByName('CODIGO_REC').AsLargeInt,
                    IBDSReceber.FieldByName('VALOR_REC').AsCurrency,
                    IBDSReceber.FieldByName('FISJUR_CLI').AsString,
                    CnpjCpf,
                    TFuncoesString.AnsiParaAscii(IBDSReceber.FieldByName('NOME_CLI').AsString),
                    TFuncoesString.AnsiParaAscii(IBDSReceber.FieldByName('ENDERECO_CLI').AsString),
                    IBDSReceber.FieldByName('NUM_ENDERECO_CLI').AsString,
                    TFuncoesString.AnsiParaAscii(IBDSReceber.FieldByName('COMPL_END_CLI').AsString),
                    TFuncoesString.AnsiParaAscii(IBDSReceber.FieldByName('BAIRRO_CLI').AsString),
                    TFuncoesString.AnsiParaAscii(IBDSReceber.FieldByName('NOMCID').AsString),
                    IBDSReceber.FieldByName('ESTCID').AsString,
                    SoDigito(IBDSReceber.FieldByName('CEP_CLI').AsString),
                    IBDSReceber.FieldByName('EMAIL_COBRANCA_CLI').AsString,
                    IBDSReceber.FieldByName('TELEFONE_CLI').AsString,
                    TFuncoesString.AnsiParaAscii(IBDSReceber.FieldByName('NOME_AVALISTA').AsString),
                    CnpjCpfAvalista,
                    TFuncoesString.AnsiParaAscii(IBDSReceber.FieldByName('ENDERECO_AVALISTA').AsString),
                    IBDSReceber.FieldByName('NUM_END_AVALISTA').AsString,
                    TFuncoesString.AnsiParaAscii(IBDSReceber.FieldByName('COMPL_END_AVALISTA').AsString),
                    TFuncoesString.AnsiParaAscii(IBDSReceber.FieldByName('BAIRRO_AVALISTA').AsString),
                    TFuncoesString.AnsiParaAscii(IBDSReceber.FieldByName('NOME_CID_AVALISTA').AsString),
                    IBDSReceber.FieldByName('UF_CID_AVALISTA').AsString,
                    SoDigito(IBDSReceber.FieldByName('CEP_AVALISTA').AsString),
                    IBDSReceber.FieldByName('EMAIL_AVALISTA').AsString,
                    IBDSReceber.FieldByName('TELEFONE_AVALISTA').AsString,
                    IBDSReceber.FieldByName('IE_AVALISTA').AsString,
                    IBDSReceber.FieldByName('TEXTO_LIVRE_BOLETO_REC').AsString);

     

    Boa. Alterei o código para salvar a qtde de parcelas(cre.recordcount), e o numero da parcela(1,2,3,4....) direto em cada registro do contas a receber. Dessa forma, na geração da remessa eu pego direto da tabela de contas a receber, onde eu já tenho gravado esses valores, impedindo burradas dentro da geração da remessa.

    Bora testar.

    Te respondo a tarde.

    Grato por enquanto.

    Claudiomir

    • Curtir 2
  15. 18 minutos atrás, Claudiomir disse:

    Saudações,

    Uma boa pergunta.

    Acredito que sim, pois é uma numeração sequencial.

    Uso o mesmo código para gerar o boleto.

    Tecnicamente deveria.

    Mas pode não estar correto.

    Deixa eu ver se posso alterar isso, de alguma forma.

    Claudiomir

    Saudações.

    Fiz uma alteração na numeração das parcelas.

    Só vou poder testar no horário do almoço.

    Te respondo a tarde.

    Por enquanto, grato por vosso auxílio.

    Claudiomir

  16. 39 minutos atrás, BigWings disse:

    Isso gera o mesmo número de parcela que usou na emissão do boleto?

    Saudações,

    Uma boa pergunta.

    Acredito que sim, pois é uma numeração sequencial.

    Uso o mesmo código para gerar o boleto.

    Tecnicamente deveria.

    Mas pode não estar correto.

    Deixa eu ver se posso alterar isso, de alguma forma.

    Claudiomir

  17. Saudações

    Conferi, com seu código e, apesar de você ter mais opções, não encontrei diferenças óbvias.

    Gero o boleto. Ele imprime normal. Testo no arquivo do excel que me enviou. Ele confirma os dados. Indica que a Pré-Homologação está correta.

    Gero a remessa. Ele envia para o site. Ela é testada. Indica que está normal. Mas em algum lugar no meio disso, a linha digitável está sendo alterada.

    Posto abaixo o código da geração da Remessa.

    Vou continuar procurando, mas não consigo ver nada óbvio.

    procedure Tgeraremessa.BitBtn4Click(Sender: TObject);
    Var
      Tipo, tipo2: String;
      Titulo: TACBrTitulo;
      nn: double;
      reg: integer;
      arqnp: String;
      ch, bc: String;
      nrremessa: integer;
      ext: string;
    begin

      cta.close;
      cta.SQL.Clear;
      cta.SQL.Add('select * from cta where ctacodigo=' + gcrectacodigo.AsString);
      cta.Open;

      if not cta.IsEmpty then
      begin
        Tipo := self.ctactanossonume.AsString;
        bc := self.ctabcocodigo.AsString;
        nrremessa := self.ctactanumremessa.asinteger;
      End;
      case strtoint(bc) of
        756:
          fprinci.ACBrBoleto1.Banco.TipoCobranca := cobBancoob;
      end;
      if ctactacnab.asinteger = 400 then
      begin
        fprinci.ACBrBoleto1.LayoutRemessa := c400;
      end
      else
      begin
        fprinci.ACBrBoleto1.LayoutRemessa := c240;
      end;

      If ctactatipoboleto.asinteger = 0 Then
      Begin
        fprinci.ACBrBoletoFCFR1.LayOut := lcarne;
      End
      Else If ctactatipoboleto.asinteger = 1 Then
      Begin
        fprinci.ACBrBoletoFCFR1.LayOut := lpadrao;
      End
      Else
      Begin
        fprinci.ACBrBoletoFCFR1.LayOut := lfatura;
      End;

      fprinci.ACBrBoleto1.ACBrBoletoFC.Filtro := fiNenhum;
      fprinci.ACBrBoletoFCFR1.DirLogo := extractfilepath(application.ExeName) + 'logo';
      fprinci.ACBrBoleto1.DirArqRemessa := fprinci.cfgcfgcaminhoremessabanco.AsString;
      fprinci.ACBrBoleto1.DirArqRetorno := fprinci.cfgcfgcaminhoremessabanco.AsString;
      fprinci.ACBrBoleto1.ListadeBoletos.Clear;

      fprinci.ACBrBoleto1.cedente.Agencia := self.ctactanragencia.AsString;
      fprinci.ACBrBoleto1.cedente.AgenciaDigito := self.ctactadgagencia.AsString;
      fprinci.ACBrBoleto1.cedente.Conta := self.ctacatnrconta.AsString;
      fprinci.ACBrBoleto1.cedente.ContaDigito := self.ctactadgconta.AsString;
      fprinci.ACBrBoleto1.cedente.DigitoVerificadorAgenciaConta := self.ctactadigverificaconta.AsString;
      fprinci.ACBrBoleto1.cedente.Convenio := self.ctactaconvenio.AsString;
      fprinci.ACBrBoleto1.cedente.CNPJCPF := fprinci.cfgcfgdoc1.AsString;
      fprinci.ACBrBoleto1.cedente.TipoInscricao := pJuridica;
      fprinci.ACBrBoleto1.cedente.Logradouro := fprinci.cfgcfgendereco.AsString;
      fprinci.ACBrBoleto1.cedente.NumeroRes := fprinci.cfgcfgnumero.AsString;
      fprinci.ACBrBoleto1.cedente.Bairro := fprinci.cfgcfgbairro.AsString;
      fprinci.ACBrBoleto1.cedente.Cidade := fprinci.cfgcfgcidade.AsString;
      fprinci.ACBrBoleto1.cedente.UF := fprinci.cfgcfguf.AsString;
      fprinci.ACBrBoleto1.cedente.CEP := fprinci.cfgcfgcep.AsString;
      fprinci.ACBrBoleto1.cedente.CodigoCedente := self.ctactacodigocedente.AsString;
      fprinci.ACBrBoleto1.cedente.NumeroRes := '';
      fprinci.ACBrBoleto1.cedente.Nome := self.ctactabeneficiario.AsString;
      fprinci.ACBrBoleto1.cedente.Modalidade := self.ctactamodalidade.AsString;
      gcre.first;
      While Not gcre.eof Do
      Begin
        Titulo := fprinci.ACBrBoleto1.CriarTituloNaLista;
        Titulo.TotalParcelas := self.gcre.RecordCount;

        With Titulo Do
        Begin
          if strtoint(bc) = 1 then
          begin
            Titulo.Carteira := self.ctactacarteira.AsString;
          end;

          Vencimento := StrToDate(self.gcrecrevencimento.AsString);
          DataDocumento := StrToDate(self.gcrecreemissao.AsString);
          NumeroDocumento := self.gcrecrenumero.AsString;
          Aceite := atNao;
          DataProcessamento := Now;
          parcela := gcre.RecNo;

          Titulo.EspecieDoc := 'DM';
          Titulo.EspecieMod := '';

          if gcreregistro.AsString = 'Com Registro' then
          begin
            case strtoint(bc) of
              756:
                begin
                  fprinci.ACBrBoleto1.Banco.TipoCobranca := cobBancoob;
                  Carteira := self.ctactacarteira.AsString;
                end;
            end;
          end;
          Titulo.EspecieDoc := 'DM';
          ValorDocumento := StrToCurr(self.gcrecrevalor.AsString);

          Sacado.NomeSacado := self.gcreclinome.AsString;
          Sacado.CNPJCPF := self.limpatexto(self.gcreclidoc1.AsString);
          if length(self.limpatexto(self.gcreclidoc1.AsString)) = 11 then
          begin
            Sacado.Pessoa := pFisica;
          end
          else
          begin
            Sacado.Pessoa := pJuridica;
          end;

          Sacado.Logradouro := self.gcrecliendereco.AsString;
          Sacado.Numero := self.gcreclinumero.AsString;
          Sacado.Bairro := self.gcreclibairro.AsString;
          Sacado.Cidade := self.gcrecddnome.AsString;
          Sacado.UF := self.gcreufsuf.AsString;
          Sacado.CEP := copy(self.gcreclicep.AsString, 1, 5) + copy(self.gcreclicep.AsString, 7, 3);
          LocalPagamento := ctalocalpagamento.AsString;
          CodigoMoraJuros := cjValorDia;
          DataMoraJuros := self.gcrecrevencimento.AsDateTime;
          ValorMoraJuros := StrToCurrDef('0', self.gcrecremoradia.AsFloat);
          ValorDesconto := StrToCurrDef('0', 0);
          ValorAbatimento := StrToCurrDef('0', 0);
          ValorAbatimento := StrToCurrDef('0', 0);

          PercentualMulta := fprinci.cfgcfgmultadiaria.AsFloat;
          Mensagem.Text := self.ctactamensagem1.AsString + #13 + self.ctactamensagem2.AsString + #13 + self.ctactamensagem3.AsString;
          OcorrenciaOriginal.Tipo := toRemessaregistrar;
          fprinci.ACBrBoleto1.AdicionarMensagensPadroes(Titulo, Mensagem);
        End;
        gcre.Next;
      End;

      try
        fprinci.ACBrBoleto1.ChecarDadosObrigatorios;
        Inc(nrremessa);
        fprinci.ACBrBoleto1.GerarRemessa(nrremessa);
        cta.edit;
        ctactanumremessa.asinteger := nrremessa;
        cta.post;
      except
        MessageDlg('Erro ao gerar arquivo de remessa. Verifique!', mtWarning, [mbOK], 0);
      end;

    end;

    Se alguém tiver uma idéia, fico agradecido.

    Claudiomir

     

  18. Saudações Big Wings.

    Vi sim. Implementei baseada nela. Testei. Tudo indicava que iria funcionar. Recebi resposta 2 horas atrás. Erro permanece.

     

     

    Claudiomir

×
×
  • 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.

The popup will be closed in 10 segundos...