Ir para conteúdo
  • Cadastre-se

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

Recommended Posts

Postado

Estamos gerando o arquivo de remessa e estamos com o seguinte problema:

No registro tipo 2 na posição 342 a 351 está enviando o campo Seu Número, este campo está sendo usado pelo Sicredi para impressão do boleto.

Na impressão do ACBR no "numero documento" está indo o valor "titulo.numerodocumento", mas quando impresso pelo arquivo de remessa no sicredi está imprimindo o mesmo valor de "NossoNum."

No caso da geração da remessa ("ACBrBancoSicredi.pas"), na posição 342 a 351 do tipo 2 deveria enviar a informação de "Numerodocumento" e não a variavel "ANumeroDocumento" fomentada pela condição (PadRight(IfThen(SeuNumero <> '', SeuNumero, NumeroDocumento), 10, ' ');)


Trecho Original

   wLinha:=
             '2'                                                  + // 001 - 001 Tipo do Registro Detalhe
             PadRight('', 11, ' ')                                + // 002 - 012 Filler - Deixar em Branco
             PadLeft(wNossoNumeroCompleto,9,'0')                  + // 013 - 021 Nosso Número
             TextoRegInfo                                         +  //022 - 341 1,2,3,4 instrucao impressa no boleto
             ANumeroDocumento                                     + // 342 - 351 Seu Número
             PadRight('', 43, ' ');                                 // 352 - 394 Filler - Deixar em Branco


Print Manual

image.thumb.jpeg.db3dd700571e1291888109f734c86cf8.jpeg

 

Impressão ACBR
image.thumb.jpeg.71143f58278dbb52ad238fd3773b9752.jpeg

 

Impressao Sicredi
image.thumb.png.4535e404ef4c7a35547b491fea984af2.png

 

 

 

 

 

Postado (editado)

Engraçado na impressao sicred tem parte do nosso numero, repara, vc nao está mandando a mesma coisa?

Um precisa mandar o seu numero do seu doc, nao o numero do boleto.

na hr que monto a remessa aqui, faço assim:

ATitulo.NossoNumero          := ANumeroSlip; // Não pode somar o DV aqui = numero boleto
  ATitulo.NumeroDocumento      := ADocumentoRec; // meu numero 0001/1... 0001/12
  

Da caixa/cef tem esse mesmo conflito de interesses

 if (ATitulo.ACBrBoleto.Banco.Numero = 104) and
   (ATitulo.ACBrBoleto.LayoutRemessa = c240) then // caixa - nojento - 19
     ATitulo.NumeroDocumento := ATitulo.ACBrBoleto.Banco.MontarCampoNossoNumero(ATitulo);
 

Editado por Antonio Gomes
Postado
20 horas atrás, Antonio Gomes disse:

Engraçado na impressao sicred tem parte do nosso numero, repara, vc nao está mandando a mesma coisa?

Um precisa mandar o seu numero do seu doc, nao o numero do boleto.

na hr que monto a remessa aqui, faço assim:

ATitulo.NossoNumero          := ANumeroSlip; // Não pode somar o DV aqui = numero boleto
  ATitulo.NumeroDocumento      := ADocumentoRec; // meu numero 0001/1... 0001/12
  

Da caixa/cef tem esse mesmo conflito de interesses

 if (ATitulo.ACBrBoleto.Banco.Numero = 104) and
   (ATitulo.ACBrBoleto.LayoutRemessa = c240) then // caixa - nojento - 19
     ATitulo.NumeroDocumento := ATitulo.ACBrBoleto.Banco.MontarCampoNossoNumero(ATitulo);
 

Na impressão e na remessa as tags são alimentadas com o mesmo valor,  porem na remessa gera uma informação e na impressão outra.

No "nossonumero" o valor do exemplo = "2347" e no "numerodocumento" o valor de "5-1", porem na impressão não tem a condição na variavel "ANumeroDocumento := (PadRight(IfThen(SeuNumero <> '', SeuNumero, NumeroDocumento), 10, ' ');)", no e na remessa na coluna que é para ser o identificador do titulo/fatura está gravando o ANumeroDcoumento, nesse caso como ele é <> '' está indo o mesmo valor do SeuNumero.

 

Postado

entendi sua ideia, esse teste precisa inverter a variavel

No caso da geração da remessa ("ACBrBancoSicredi.pas"), na posição 342 a 351 do tipo 2 deveria enviar a informação de "Numerodocumento" e não a variavel "ANumeroDocumento" fomentada pela condição (PadRight(IfThen(SeuNumero <> '', SeuNumero, NumeroDocumento), 10, ' ');)
 

ifThen(NumeroDocumento <> ''...

saquei

pq a precedencia do campo é ele.. nao o numero do boleto.

Postado (editado)
15 minutos atrás, Antonio Gomes disse:

entendi sua ideia, esse teste precisa inverter a variavel

No caso da geração da remessa ("ACBrBancoSicredi.pas"), na posição 342 a 351 do tipo 2 deveria enviar a informação de "Numerodocumento" e não a variavel "ANumeroDocumento" fomentada pela condição (PadRight(IfThen(SeuNumero <> '', SeuNumero, NumeroDocumento), 10, ' ');)
 

ifThen(NumeroDocumento <> ''...

saquei

pq a precedencia do campo é ele.. nao o numero do boleto.

Ao menos para mim o melhor ajuste seria na linha do tipo 2 e posição (342 a 351) fazer uma tratativa somente nesse valor, pq o SeuNumero é um identificador interno também para encontrar o titulo, não poderia ser o "5-1" no caso, mas sim o "2347', então acredito que mais interessante seria fazer a condição abaixo na montagem da linha do tipo 2

 

          wLinha:=
             '2'                                                  + // 001 - 001 Tipo do Registro Detalhe
             PadRight('', 11, ' ')                                + // 002 - 012 Filler - Deixar em Branco
             PadLeft(wNossoNumeroCompleto,9,'0')                  + // 013 - 021 Nosso Número
             TextoRegInfo                                         +  //022 - 341 1,2,3,4 instrucao impressa no boleto
             IfThen(NumeroDocumento <> '',NumeroDocumento,ANumeroDocumento) + // 342 - 351 Seu Número
             PadRight('', 43, ' ');                                 // 352 - 394 Filler - Deixar em Branco

 

Editado por jfelipetdsoft
  • Curtir 1
Postado
2 horas atrás, jfelipetdsoft disse:

Ao menos para mim o melhor ajuste seria na linha do tipo 2 e posição (342 a 351) fazer uma tratativa somente nesse valor, pq o SeuNumero é um identificador interno também para encontrar o titulo, não poderia ser o "5-1" no caso, mas sim o "2347', então acredito que mais interessante seria fazer a condição abaixo na montagem da linha do tipo 2

 

          wLinha:=
             '2'                                                  + // 001 - 001 Tipo do Registro Detalhe
             PadRight('', 11, ' ')                                + // 002 - 012 Filler - Deixar em Branco
             PadLeft(wNossoNumeroCompleto,9,'0')                  + // 013 - 021 Nosso Número
             TextoRegInfo                                         +  //022 - 341 1,2,3,4 instrucao impressa no boleto
             IfThen(NumeroDocumento <> '',NumeroDocumento,ANumeroDocumento) + // 342 - 351 Seu Número
             PadRight('', 43, ' ');                                 // 352 - 394 Filler - Deixar em Branco

 

eu sou tão chato nisso, para mim nem o ifthen teria, é um dado que tem o campo certo no projeto... A caixa (104) que tem palhaçada de mandar cortado. O tal: "tem que ser igual" 

Postado
1 hora atrás, Antonio Gomes disse:

eu sou tão chato nisso, para mim nem o ifthen teria, é um dado que tem o campo certo no projeto... A caixa (104) que tem palhaçada de mandar cortado. O tal: "tem que ser igual" 

Eu pensei na condição para não impactar quem usa hoje, mas tudo bem.

Eu preciso disponibilizar o arquivo .pas com a alteração para subir no SVN?

Postado
10 minutos atrás, jfelipetdsoft disse:

Eu pensei na condição para não impactar quem usa hoje, mas tudo bem.

Eu preciso disponibilizar o arquivo .pas com a alteração para subir no SVN?

Precisa, e pedir ao pessoal do boleto para incorporar. 

  • Consultores
Postado

só complementando , temos n clientes usando já via cnab 400 a tempos enão temos problemas. 

região do PR

 

Consultora ACBr Pro

Juliomar Marchetti

Ajude o Projeto ACBr crescer - Seja Pro

discord: juliomar
telegram: juliomar
e-mail: [email protected]
http://www.juliomarmarchetti.com.br

 

MVP_NewLogo_100x100_Transparent-02.png
Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil


Participe de nosso canal no Discord e fique ainda mais próximo da Comunidade !!

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

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

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