Pesquisar na Comunidade
Showing results for tags 'ACBrBancoBrasil'.
Encontrado 5 registros
-
AcbrBancoBrasil CodMotivoRejeicaoToDescricao outros motivos
um tópico no fórum postou rodrigod6 ACBrBoleto
Modifiquei o AcbrBancoBrasil nos motivos do retorno para que não quando ache o motivo, retorne 00-Outros motivos. Fiz a modificação baseado no AcbrSantander que já possui a funcionalidade. 1) Primeira mudança - alinhamento do if que verifica CNAB 400 2) Alinhamento/padronização dos motivos do tipo da ocorrência: toRetornoComandoRecusado: //03 (Recusado) 3) Adicionado um retorno padrão (CNAB 400), semelhante ao que tem no fonte do AcbrSantander, para retornar outros motivos. 4) CNAB 240 - (toRetornoRegistroRecusado) - Alinhado case, e colocado no result os códigos junto com a descrição, seguindo o padrão existente: 5) CNAB 240 -(toRetornoLiquidado, toRetornoBaixaAutomatica, toRetornoLiquidadoSemRegistro: // 06, 09 e 17 (Liquidado)) Colocado no result os códigos junto com a descrição, seguindo o padrão existente: 6) Mesmo acima para toRetornoDebitoTarifas 7) Adicionado um retorno padrão (CNAB 240), semelhante ao que tem no fonte do AcbrSantander, para retornar outros motivos. Segue arquivo fonte para análise se pode ser alterado no Acbr. ACBrBancoBrasil.Acbr.2018.10.26-Correcao.pas Obrigado,- 2 replies
-
- 1
-
- acbrboleto
- acbrbancobrasil
- (e 2 mais)
-
Segmento S - Santander e Banco do Brasil - Mensagem C 200
um tópico no fórum postou rodrigod6 ACBrBoleto
Boa tarde, Estou precisando enviar a mensagem do Segmento S, onde possui 200 colunas, para envio no Santander e no Banco do Brasil. Fiz uma análise do fonte da Caixa. Temos no Segmento R - de 40 colunas o campo mensagem 3 (Coluna 100 a 139 - Mensagem 3) - é enviado em branco. {SEGMENTO R} Result:= Result + #13#10 + IntToStrZero(ACBrBanco.Numero, 3) ... PadRight('', 40, ' ') + // 100 a 139 - Mensagem 3 No segmento S é enviado Mensagem 5, 6, 7, 8 e 9, totalizando 200 colunas de mensagem {SEGMENTO S} if (Mensagem.Count > 0) then begin Result := Result + #13#10 + ... MontarInstrucoes2 + // 019 - 058 / Mensagem 5 // 059 - 098 / Mensagem 6 // 099 - 138 / Mensagem 7 // 139 - 178 / Mensagem 8 // 179 - 218 / Mensagem 9 No Banco do Brasil e no Santander, não temos a programação das mensagens no segmento S. No Santander, no segmento S temos a rotina MontarInstrucoes2, mas gera as 200 colunas em branco. Seguindo o exemplo da Caixa, talvez mudando de: function MontarInstrucoes2: string; begin with ACBrTitulo do begin if Mensagem.Count <= 2 then begin // Somente duas linhas, foi montado o MonarInstrucoes1 Result := PadRight('', 200, ' '); // 5 registros Exit; end; Para: function MontarInstrucoes2: string; begin with ACBrTitulo do begin if (Mensagem.Count <= 2) then begin if (Mensagem.Count = 2) then Result := Copy(PadRight(Mensagem[0] +' / '+ Mensagem[1], 200, ' '), 1, 200) else Result := Copy(PadRight(Mensagem[0], 200, ' '), 1, 200); Exit; end; Já no Banco do Brasil, não é gerado nem a Mensagem 3 e nem a mensagem 5, 6, 7, 8 e 9, vejamos o Segmento R: {SEGMENTO R} Result:= Result + #13#10 + ... PadRight('',110,' ') + // 90 - 199 Obs.: Segmento S não tem. Então a sugestão de alteração seria mudar os 110 em branco para 10, 40 e 60: No segmento S: {SEGMENTO R} Result:= Result + #13#10 + ... PadRight('',10,' ') + // 90 - 99 - Informação ao Sacado PadRight(AMensagem,40,' ') + // 100 - 139 - Mensagem 3 PadRight('',60,' ') + // 140 - 199 - Não tratado Se no segmento S a nova programação: {SEGMENTO S} if (Mensagem.Count > 0) then begin Result := Result + #13#10 + IntToStrZero(ACBrBanco.Numero, 3) + // 001 a 003 - Código do banco '0001' + // 004 - 007 - Numero do lote remessa '3' + // 008 - 008 - Tipo de registro IntToStrZero((3 * ACBrBoleto.ListadeBoletos.IndexOf(ACBrTitulo))+ 4 ,5) + // 009 - 013 - Número seqüencial do registro no lote - Cada título tem 2 registros (P e Q) 'S' + // 014 - 014 - Cód. Segmento do registro detalhe Space(1) + // 015 - 015 - Reservado (uso Banco) ATipoOcorrencia + // 016 - 017 - Código de movimento remessa ifthen( (Mensagem.Count <= 2), '0', '8' ) + // 018 - 018 - Identificação da impressão ifthen( (Mensagem.Count <= 2), '00', '' ) + // 019 - 020 - Reservado (uso Banco) para tipo de impressão 1 e 2 MontarInstrucoes2 + // 019 - 058 - Mensagem 5 // 059 - 098 - Mensagem 6 // 099 - 138 - Mensagem 7 // 139 - 178 - Mensagem 8 // 179 - 218 - Mensagem 9 ifthen( (Mensagem.Count <= 2), '00' + Space(78) ,Space(22)); // 219 - 240 - Reservado (uso Banco) para tipo de impressão 3 end; // 161 - 240 - Reservado (uso Banco) para tipo de impressão 1 e 2 {SEGMENTO S - FIM} Segue os arquivos modificados, para verificar a possibilidade de alteração para o envio das Obs no Segmento S do Banco Santander e Banco do Brasil. Obrigado, Rodrigo ACBrBancoSantanderCorrecao.pas ACBrBancoBrasilCorrecao.pas- 1 reply
-
- 1
-
- acbrboleto
- acbrbancobrasil
- (e 3 mais)
-
Ocorreu um erro ao exibir a descrição do título recusado pelo banco quando é Banco do Brasil. ACBrBancoBrasil.pas
- 2 replies
-
- acbrbancobrasil
- bancobrasil
-
(e 1 mais)
Tags:
-
Bom dia, Estamos implementando a leitura do retorno do Banco do Brasil, Convenio 7 posições para Pessoa Jurídica, mas tive dois problemas ao ler o retorno (outros bancos está ok): 1 - Cai na validação que a Carteira deve ser informada antes do nosso número no Banco do Brasil 2 - Cai na validação que para Banco do Brasil nosso número deve conter no máximo 10 dígitos. Setamos todas as informação de cedente antes do retorno, como não ficou viável. Fizemos uma alteração no ACBrBancoBrasil.pas, peço que informem se fizemos algo errado ou se pode ser implementado este código: Era assim: NossoNumero := Copy(Linha,64,17); Carteira := Copy(Linha,107,2); Ficou Assim (linha 1554 e 1555) Carteira := Copy(Linha,107,2); NossoNumero := Copy(Linha,71,10); Retorno Exemplo.ret ACBrBancoBrasil.pas
-
Possibilidade De Criar Novo Campo Para Tipo De Documento
um tópico no fórum postou maiconsi ACBrBoleto
Bom tarde a todos da comunidade! Estou homologando um boleto no Banco do Brasil, CNAB240, utilizando a Carteira 11, Carteira Descontada e estou tendo problemas com o Tipo de Documento pois de acordo com o Manual fornecido pelo banco que esta em anexo na pagina 55, campo 60 pede para informar, '1' = Tradicional ou '2' = Escritural. A função implementada esta mandando o código da carteira passado pela variável "ACaracTitulo", na minha opinião deveria existir uma propriedade para informar esse valor. De acordo com uma pesquisa no fórum verifiquei que neste que no manual anterior fornecido pelo Banco do Brasil esse campo não era tratado mas agora de acordo com o novo manual(em anexo) ele é necessário. Gostaria de saber se tem alguma solução sem alterar o código do componente ou terei que implementar uma nova propriedade para resolver esse problema. Att, Maicon da Silva Evangelista CNAB240 - versão 8 7.pdf- 12 replies
-
- Tipo Documento
- ACBrBancoBrasil
- (e 2 mais)