Ir para conteúdo
  • Cadastre-se

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

Recommended Posts

  • Administradores
Postado

Boa tarde Antonio.

Qual foi a necessidade da criação desta nova propriedade?

Att.

Consultora SAC ACBr

Juliana Tamizou

Gerente de Projetos ACBr / Diretora de Marketing AFRAC
Ajude o Projeto ACBr crescer - Seja Pro

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

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 !!

Postado

Para atender essa funcionalidade do Banco do Brasil

Poderá ser transmitida remessa para teste, através do Gerenciador Financeiro ( Transferência de Arquivos/Remessa ), bastando que seja informado “TS” nas posições 52 e 53 do Header de Lote. Após o processamento, o Banco disponibilizará arquivo-retorno, para tratamento pelo seu programa próprio.

Quando o arquivo for transmitido definitivamente para produção, as colunas 52 e 53 do Header de Lote deverão ser alteradas para brancos

function TACBrBancoBrasil.GerarRegistroHeader240(NumeroRemessa : Integer): String;

var

  ATipoInscricao,CNPJCIC: string;

  aAgencia: String;

  aConta: String;

  aModalidade: String;

begin


   with ACBrBanco.ACBrBoleto.Cedente do

   begin

      case TipoInscricao of

         pFisica  : ATipoInscricao := '1';

         pJuridica: ATipoInscricao := '2';

         pOutras  : ATipoInscricao := '3';

      end;


      CNPJCIC := OnlyNumber(CNPJCPF);


      aAgencia:= IntToStrZero(StrToIntDef(trim(Agencia),0),5);

      aConta  := IntToStrZero(StrToIntDef(trim(Conta),0),12);

      aModalidade := IntToStrZero(StrToIntDef(trim(Modalidade),0),3);


          { GERAR REGISTRO-HEADER DO ARQUIVO }


      Result:= IntToStrZero(ACBrBanco.Numero, 3)       + //1 a 3 - Código do banco

               '0000'                                  + //4 a 7 - Lote de serviço

               '0'                                     + //8 - Tipo de registro - Registro header de arquivo

               padL('', 9, ' ')                        + //9 a 17 Uso exclusivo FEBRABAN/CNAB

               ATipoInscricao                          + //18 - Tipo de inscrição do cedente

               padR(CNPJCIC, 14, '0')                  + //19 a 32 -Número de inscrição do cedente

               padR(Convenio, 9, '0') + '0014'         + //33 a 45 - Código do convênio no banco [ Alterado conforme instruções da CSO Brasília ] 27-07-09

               ACBrBanco.ACBrBoleto.ListadeBoletos[0].Carteira + //46 a 47 - Carteira

              [b] IfThen(ACBrBanco.ModoTeste, aModalidade+'TS', aModalidade+'  ')+//48 a 52 - Variacao Carteira[/b]

               aAgencia                                + //53 a 57 - Código da agência do cedente

               padL(AgenciaDigito, 1 , '0')            + //58 - Dígito da agência do cedente

               aConta                                  + //59 a 70 - Número da conta do cedente

               padL(ContaDigito, 1, '0')               + //71 - Dígito da conta do cedente

               ' '                                     + //72 - Dígito verificador da agência / conta

               padL(Nome, 30, ' ')                     + //73 a 102 - Nome do cedente

               padL('BANCO DO BRASIL', 30, ' ')        + //103 a 132 - Nome do banco

               padL('', 10, ' ')                       + //133 a 142 - Uso exclusivo FEBRABAN/CNAB

               '1'                                     + //143 - Código de Remessa (1) / Retorno (2)

               FormatDateTime('ddmmyyyy', Now)         + //144 a 151 - Data do de geração do arquivo

               FormatDateTime('hhmmss', Now)           + //152 a 157 - Hora de geração do arquivo

               padL(IntToStr(NumeroRemessa), 6, '0')   + //158 a 163 - Número seqüencial do arquivo

               '030'                                   + //164 a 166 - Número da versão do layout do arquivo

               padL('',  5, '0')                       + //167 a 171 - Densidade de gravação do arquivo (BPI)

               padL('', 20, ' ')                       + // 172 a 191 - Uso reservado do banco

               padL('', 20, '0')                       + // 192 a 211 - Uso reservado da empresa

               padL('', 11, ' ')                       + // 212 a 222 - 11 brancos

               'CSP'                                   + // 223 a 225 - 'CSP'

               padL('',  3, '0')                       + // 226 a 228 - Uso exclusivo de Vans

               padL('',  2, ' ')                       + // 229 a 230 - Tipo de servico

               padL('', 10, ' ');                        //231 a 240 - titulo em carteira de cobranca


          { GERAR REGISTRO HEADER DO LOTE }


      Result:= Result + #13#10 +

               IntToStrZero(ACBrBanco.Numero, 3)       + //1 a 3 - Código do banco

               '0001'                                  + //4 a 7 - Lote de serviço

               '1'                                     + //8 - Tipo de registro - Registro header de arquivo

               'R'                                     + //9 - Tipo de operação: R (Remessa) ou T (Retorno)

               '01'                                    + //10 a 11 - Tipo de serviço: 01 (Cobrança)

               '00'                                    + //12 a 13 - Forma de lançamento: preencher com ZEROS no caso de cobrança

               '020'                                   + //14 a 16 - Número da versão do layout do lote

               ' '                                     + //17 - Uso exclusivo FEBRABAN/CNAB

               ATipoInscricao                          + //18 - Tipo de inscrição do cedente

               padR(CNPJCIC, 15, '0')                  + //19 a 32 -Número de inscrição do cedente

               padR(Convenio, 9, '0') + '0014'         + //33 a 45 - Código do convênio no banco [ Alterado conforme instruções da CSO Brasília ] 27-07-09

               ACBrBanco.ACBrBoleto.ListadeBoletos[0].Carteira + //46 a 47 - Carteira

               aModalidade+'  '                        + //48 a 52 - Variacao Carteira

               aAgencia                                + //53 a 57 - Código da agência do cedente

               padL(AgenciaDigito, 1 , '0')            + //58 - Dígito da agência do cedente

               aConta                                  + //59 a 70 - Número da conta do cedente

               padL(ContaDigito, 1, '0')               + //71 - Dígito da conta do cedente

               ' '                                     + //72 - Dígito verificador da agência / conta

               padL(Nome, 30, ' ')                     + //73 a 102 - Nome do cedente

               padL('', 40, ' ')                       + //104 a 143 - Mensagem 1 para todos os boletos do lote

               padL('', 40, ' ')                       + //144 a 183 - Mensagem 2 para todos os boletos do lote

               padL(IntToStr(NumeroRemessa), 8, '0')   + //184 a 191 - Número do arquivo

               FormatDateTime('ddmmyyyy', Now)         + //192 a 199 - Data de geração do arquivo

               padL('', 8, '0')                        + //200 a 207 - Data do crédito - Só para arquivo retorno

               padL('', 33, ' ');                        //208 a 240 - Uso exclusivo FEBRABAN/CNAB

   end;

end;

Atenciosamente

Antônio Marcelo

Divinópolis - MG

  • Este tópico foi criado há 4710 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.