Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

s4muk4

Geração de arquivo de remessa

Recommended Posts

Pessoal,

 

tranquilo?

 

Bom, gostaria de alguma orientação a respeito, eu tenho um sistema financeiro de um cliente, só que agora ele quer gerar os boletos no proprio sistema, bom até gerar os boletos tranquilo, porém a conta dele é cobrança com registro, então preciso gerar um arquivo de remessa para o banco registra-los, fuçei em alguns lugares, mas ainda estou com duvidas, peguei o arquivo da febraban, mas ainda pra mim está confuso.

No arquivo fala a estrutura como deve ser:

 

====================

Header Arquivo

 

Header Lote 1

Registro Detalhe 1

Registro Detalhe 2

Trailer Lote 1

 

Header Lote N

Registro Detalhe 1

Registro Detalhe 2

Trailer Lote N

 

Trailer Arquivo

===================

 

A questão dos registro detalhes estou perdido, pois possui vários segmentos, não sei qual usar, praticamente vou gerar um boleto e um arquivo de remessa, e o arquivo de remessa é enviado para o banco em formato txt certo?

 

Os bancos que serão usado é o BB e o Itaú.

 

Alguem pode me dar uma orientação?

 

Obrigado

Compartilhar este post


Link para o post
Compartilhar em outros sites

você verificar quais os digitos do boleto, que identifica a empresa que efetuou o pagamento e insere ele em um arquivo texto, e depois você lê o arquivo texto atraves do FSO, recupera as informações ,como por exemplo, nome da empresa que pagou,dia e valor e dá um INSERT atraves da SQL em seu banco de dados.

 

olha este exemplo:

 

<%
option explicit

session.lcid = 1046

dim idPedido, valor, data_documento, data_vencimento,nome_sacado, endereco_sacado, endereco_sacado2,cedente, cpf_cnpj, agencia, dac_agencia,conta, dac_conta, carteira,layout_boleto,convenio, numero_documento,nosso_numero, instrucoes1,instrucoes2,instrucoes3,instrucoes4, instrucoes5, contrato, especie, especie_doc, aceite, a, fvencimento, valor_str, livre, dac_nosso_numero, codbar, mult, total, pos, nresto, ndig, dac, cmplivre, campo1, res, campo2,campo3,campo4, campo5, linha_digitavel, agencia_codigo, x98, quantidade, data_processamento, valor_unitario, x80, x171,x99,x3,x125,x126,x18,dvNosso_numero
dim sql, rs

idPedido = "10"

'================INFORMAÇÕES BANCÁRIAS==============
cedente = "Sua Empresa Teste Ltda"
cpf_cnpj = "000.000.000/0000-00"
agencia = "1234"
dac_agencia = "3" 
conta = "9999" 
dac_conta = "9" 
convenio = "1234567"
carteira = "12"

'================INSTRUÇÕES DO BOLETO==============
instrucoes1 = "Após o vencimento multa de 2% + 0,1% de mora ao dia."
instrucoes2 = "Protestar 03 dias úteis após o vencimento."
instrucoes3 = "-"
instrucoes4 = "-"
instrucoes5 = "-"
'=====================================================

valor       = formatNumber(52.15,2)
data_vencimento  = formatDateTime(#18-01-2008#, vbShortDate)
data_documento  = formatDateTime(#15-01-2008#, vbShortDate)
data_processamento = date()
nome_sacado    = "Mononoomomo Mononomom - CNPJ: 111.111.111/1111-110"
endereco_sacado  = "Rua de testes nº 5<br>"&_
         "91910500 - Piracicaba/SP"

'Evite mudar estas variaveis abaixo
layout_boleto = "3" 
numero_documento = idPedido
nosso_numero = idPedido
dvNosso_numero = mod11(convenio &right("0000000000"&idPedido,10),9,0) 
contrato = ""
especie = "R$"
especie_doc = "DM"
aceite = "N"

function mod11(cadeia,limitesup,lflag)
mult=1 + (len(cadeia) mod (limitesup-1))
if mult=1 then
 mult=limitesup
end if
total=0
for pos=1 to len(cadeia)
 total=total+(mid(cadeia,pos,1) * mult)
 mult=mult-1
 if mult=1 then
  mult=limitesup
 end if
Next
nresto=(total mod 11)
if lflag = 1 then
 mod11=nresto
else
 if nresto=0 or nresto=1 or nresto=10 then
  ndig=1
 else
  ndig=11 - nresto 
 end if
 mod11=ndig
end if
end function

function mod10(cadeia)
mult=(len(cadeia) mod 2) 
mult=mult+1
total=0
for pos=1 to len(cadeia)
 res= mid(cadeia, pos, 1) * mult
 if res > 9 then
  res=int(res/10) + (res mod 10)
 end if
 total=total+res
 if mult=2 then
  mult=1
 else
  mult=2
 end if
next
total=((10-(total mod 10)) mod 10 )
mod10=total
end function

function linhadigitavel(codigobarras)
cmplivre=mid(codigobarras,20,25)
campo1=left(codigobarras,4)&mid(cmplivre,1,5)
campo1=campo1&mod10(campo1)
campo1=mid(campo1,1,5)&"."&mid(campo1,6,5)  
campo2=mid(cmplivre,6,10)
campo2=campo2&mod10(campo2)
campo2=mid(campo2,1,5)&"."&mid(campo2,6,6)  
campo3=mid(cmplivre,16,10)
campo3=campo3&mod10(campo3) 
campo3=mid(campo3,1,5)&"."&mid(campo3,6,6)  
campo4=mid(codigobarras,5,1)  
campo5=int(mid(codigobarras,6,14))  
if campo5=0 then
 campo5="000"
end if  
linhadigitavel=campo1&" "&campo2&" "&campo3&" "&campo4&" "&campo5 
end function 
function fvenc(entra)
fvenc = DateDiff("d", CDate("7/10/1997"), CDate(entra))
end function 
function formatar(valor, comp, ench, tipo)
dim str
str = valor
if tipo = "v" then
 str = Ccur(str)
 str = formatnumber(str,2,-2,-2,-2)
 tipo = "e" :str = cstr(str)
 str = replace(str,",","")
 str = replace(str,".","")
end if
for a=len(str) to (comp - 1)
 if tipo = "e" then
  str = ench & str 
 else
  str = str & ench
 end if
next
if tipo = "e" then
 str = left(str,comp) 
else
 str = right(str,comp)
end if
formatar = str
end function 
function d1d2(entra)
d1 = mod10(entra)
Do
 d2 = mod11(entra & d1,7,1)
 if d2 = 1 then
  if d2 = 9 then
   d1 = 0
  elseif d1 < 9 then
   d1 = d1 + 1
  else
   d1 = 0
  end if  
 end if
Loop while d2 = 1
if d2 > 0 then
 d2 = 11 - d2
end if
d1d2 = Cstr(Cstr(entra) & Cstr(d1) & Cstr(d2))
end function 
function dv(entra)
temp = Cint(mod11(entra,9,1))
if temp < 10 then
 dv = 11 - temp
else
 dv = 1
end if
if dv = 11 then dv = 0
if dv = 10 then dv = "X"
dv = Cstr(dv)
end function 
layout_boleto = Cstr(layout_boleto)
conta = Cstr(formatar(conta,8,"0","e"))
fvencimento = Cstr(fvenc(data_vencimento))
valor_str = Cstr(formatar(valor,10,"0","v"))
agencia = Cstr(formatar(agencia,4,"0","e"))
carteira = Cstr(formatar(carteira,2,"0","e"))
if layout_boleto = "3" then
convenio = formatar(convenio,7,"0","e")
nosso_numero = formatar(nosso_numero,10,"0","e")
livre = "000000" & convenio & nosso_numero & carteira
dac_nosso_numero = ""    
nosso_numero = convenio & nosso_numero
else
Response.Write("ERRO ! <br> Selecione o layout do boleto inválido, use numero 3")
Response.End()
end if 
codbar = Cstr("0019" & fvencimento & valor_str & livre)
dac = Cstr(mod11(codbar,9,0))
codbar = Cstr("0019" & dac & fvencimento & valor_str & livre)
linha_digitavel = linhadigitavel(codbar)
agencia_codigo = agencia &"-"& dac_agencia & "/" & conta &"-"& dac_conta
valor = formatnumber(Ccur(valor),2,-2,-2,-2) 
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<title>Boleto BB</title>
<meta http-equiv=Content-Type content="text/html;charset=windows-1252">
<meta content="MSHTML 6.00.2800.1400" name=GENERATOR>
<style>
.Titulo11{
 font:11px Arial, Helvetica, sans-serif;
}  
.campo{
 font:10px Verdana, Arial, Helvetica, sans-serif;
}  
.CampoTitulo{
 font:bold 14px Arial, Helvetica, sans-serif;
}
.Normal{
 font:12px Arial, Helvetica, sans-serif;
}
</style>
</head> 
<body bgcolor="White" leftmargin="0" topmargin="0" marginwidth="0" marginheight="0" bgproperties="fixed">
<table border="0" cellPadding="0" cellSpacing="0" width="660">
<tr>
 <td class="Normal">
  <div align="center">
   <b>O pagamento deste boleto também poderá ser efetuado pelo Auto-Atendimento BB na Internet ou pelos Terminais de Auto-Atendimento.</b>
  </div>
  <p>
    <b>Instruções:</b><br>
   <ol>
    <li>Imprima em impressora jato de tinta (ink jet) ou laser em qualidade normal ou alta. Não use modo econômico.</li>
    <li>Utilize folha A4 (210 x 297mm) ou Carta (216 x 279mm) e margens mínimas à esquerda e à direita do formulário.</li>
    <li>Corte na linha indicada. Não rasure, risque, fure ou dobre a região onde se encontra o código de barras.</li>
   </ol>
  </p>
 </td>
</tr> 
</table>
<br>
<div style="position:absolute;top:145px;left:5px;height:636px;width:670px;z-index:1;">
<img src="imagens_bb/bbformularioBoleto.gif" width="647" height="636" border="0" alt="">
</div>
<div style="position:absolute;top:161px;left:7px;height:22px;width:96px;z-index:2;">
<img src="imagens_bb/bblogoBoleto.gif" width="150" height="22" border="0" alt="">
</div>
<div style="position:absolute;top:444px;left:7px;height:22px;width:96px;z-index:2;">
<img src="imagens_bb/bblogoBoleto.gif" width="150" height="22" border="0" alt="">
</div>
<div style="position:absolute;top:127px;left:7px;z-index:2;" class="Titulo11">
Corte na linha pontilhada
</div> 
<div style="position:absolute;top:138px;left:5px;z-index:2;" class="Titulo11">
<img src="imagens_bb/bblinhaPontilhada.gif" width="650" height="5" border="0" alt="">
</div>
<div style="position:absolute;top:145px;left:549px;z-index:2;" class="Campo">
<b>Recibo do Sacado</b>
</div>
<div style="position:absolute;top:167px;left:163px;z-index:2;" class="CampoTitulo">
001-9
</div>
<div style="position:absolute;top:166px;left:210px;z-index:2;width:438px;text-align:right;" class="CampoTitulo">
<layer name="helpns" width=438px><%=linha_digitavel%></layer>
</div>
<div style="position:absolute;top:450px;left:163px;z-index:2;" class="CampoTitulo">
001-9
</div>
<div style="position:absolute;top:449px;left:210px;z-index:2;width:438px;text-align:right;" class="CampoTitulo">
<layer name="helpns" width=438px><%=linha_digitavel%></layer>
</div>
<div style="position:absolute;top:184px;left:15px;z-index:2;" class="Titulo11">
Cedente
</div>
<div style="position:absolute;top:184px;left:317px;z-index:2;" class="Titulo11">
Código do Cedente
</div>
<div style="position:absolute;top:184px;left:438px;z-index:2;" class="Titulo11">
Espécie
</div> 
<div style="position:absolute;top:184px;left:480px;z-index:2;" class="Titulo11">
Quantidade
</div>
<div style="position:absolute;top:184px;left:536px;z-index:2;" class="Titulo11">
Nosso número
</div>
<div style="position:absolute;top:209px;left:15px;z-index:2;" class="Titulo11">
Número do documento
</div>
<div style="position:absolute;top:209px;left:135px;z-index:2;" class="Titulo11">
Contrato
</div>
<div style="position:absolute;top:209px;left:214px;z-index:2;" class="Titulo11">
CPF/CEI/CNPJ
</div>
<div style="position:absolute;top:209px;left:353px;z-index:2;" class="Titulo11">
Vencimento
</div>
<div style="position:absolute;top:209px;left:480px;z-index:2;" class="Titulo11">
Valor documento
</div>
<div style="position:absolute;top:234px;left:15px;z-index:2;" class="Titulo11">
(-)Desconto/Abatimento
</div>
<div style="position:absolute;top:234px;left:135px;z-index:2;" class="Titulo11">
(-)Outras opções
</div> 
<div style="position:absolute;top:234px;left:251px;z-index:2;" class="Titulo11">
(+)Mora/Multa
</div>
<div style="position:absolute;top:234px;left:367px;z-index:2;" class="Titulo11">
(+)Outros acréscimos
</div>
<div style="position:absolute;top:234px;left:480px;z-index:2;" class="Titulo11">
(=)Valor cobrado
</div>
<div style="position:absolute;top:259px;left:15px;z-index:2;" class="Titulo11">
Sacado
</div>
<div style="position:absolute;top:284px;left:15px;z-index:2;" class="Titulo11">
Instruções
</div>
<div style="position:absolute;top:284px;left:574px;z-index:2;" class="Titulo11">
Autenticação Mecânica
</div>
<div style="position:absolute;top:415px;left:7px;z-index:2;" class="Titulo11">
Corte na linha pontilhada
</div>
<div style="position:absolute;top:426px;left:5px;z-index:2;" class="Titulo11">
<img src="imagens_bb/bblinhaPontilhada.gif" width="650" height="5" border="0" alt="">
</div>
<div style="position:absolute;top:467px;left:15px;z-index:2;" class="Titulo11">
Local de pagamento
</div> 
<div style="position:absolute;top:467px;left:480px;z-index:2;" class="Titulo11">
Vencimento
</div>
<div style="position:absolute;top:492px;left:15px;z-index:2;" class="Titulo11">
Cedente
</div>
<div style="position:absolute;top:492px;left:480px;z-index:2;" class="Titulo11">
Agência/Código do cedente
</div>
<div style="position:absolute;top:517px;left:15px;z-index:2;" class="Titulo11">
Data do documento
</div>
<div style="position:absolute;top:517px;left:133px;z-index:2;" class="Titulo11">
Nº do documento
</div>
<div style="position:absolute;top:517px;left:295px;z-index:2;" class="Titulo11">
Espécie DOC
</div>
<div style="position:absolute;top:517px;left:364px;z-index:2;" class="Titulo11">
Aceite
</div>
<div style="position:absolute;top:517px;left:405px;z-index:2;" class="Titulo11">
Data process.
</div>
<div style="position:absolute;top:517px;left:480px;z-index:2;" class="Titulo11">
Nosso Número
</div>
<div style="position:absolute;top:542px;left:15px;z-index:2;" class="Titulo11">
Uso do Banco/Convênio
</div>
<div style="position:absolute;top:542px;left:133px;z-index:2;" class="Titulo11">
Carteira
</div>
<div style="position:absolute;top:542px;left:223px;z-index:2;" class="Titulo11">
Espécie
</div>
<div style="position:absolute;top:542px;left:283px;z-index:2;" class="Titulo11">
Quantidade
</div>
<div style="position:absolute;top:542px;left:405px;z-index:2;" class="Titulo11">
xValor
</div>
<div style="position:absolute;top:542px;left:480px;z-index:2;" class="Titulo11">
(=) Valor do documento
</div>
<div style="position:absolute;top:567px;left:15px;z-index:2;" class="Titulo11">
Instrucoes
</div>
<div style="position:absolute;top:567px;left:480px;z-index:2;" class="Titulo11">
(-) Desconto / Abatimento
</div>
<div style="position:absolute;top:592px;left:480px;z-index:2;" class="Titulo11">
(-) Outras deduções
</div> 
<div style="position:absolute;top:618px;left:480px;z-index:2;" class="Titulo11">
(+) Mora / Multa
</div>
<div style="position:absolute;top:643px;left:480px;z-index:2;" class="Titulo11">
(+) Outros acréscimos
</div>
<div style="position:absolute;top:668px;left:480px;z-index:2;" class="Titulo11">
(=) Valor cobrado
</div>
<div style="position:absolute;top:573px;left:463px;z-index:2;" class="Titulo11">
27
</div>
<div style="position:absolute;top:620px;left:463px;z-index:2;" class="Titulo11">
35
</div>
<div style="position:absolute;top:596px;left:463px;z-index:2;" class="Titulo11">
19
</div>
<div style="position:absolute;top:693px;left:15px;z-index:2;" class="Titulo11">
Sacado
</div>
<div style="position:absolute;top:739px;left:480px;z-index:2;" class="Titulo11">
Cód. baixa
</div> 
<div style="position:absolute;top:740px;left:15px;z-index:2;" class="Titulo11">
Sacador/Avalista
</div>
<div style="position:absolute;top:751px;left:470px;z-index:2;" class="Titulo11">
Autenticação mecânica - Ficha de Compensação
</div>
<div style="position:absolute;top:197px;left:15px;z-index:2;" class="Campo">
<%=cedente%>
</div>
<div style="position:absolute;top:197px;left:317px;z-index:2;width:120px;" class="Campo">
<%=agencia_codigo%>
</div>
<div style="position:absolute;top:197px;left:438px;z-index:2;width:28px;" class="Campo">
R$
</div>
<div style="position:absolute;top:197px;left:480px;z-index:2;width:50px;" class="Campo">
0001
</div>
<div style="position:absolute;top:197px;left:531px;z-index:2;width:118px;text-align:right;" class="Campo">
<%=nosso_numero%>
</div>
<div style="position:absolute;top:222px;left:15px;z-index:2;width:110px;" class="Campo">
<%=right("0000000000"& numero_documento, 10)%>
</div>
<div style="position:absolute;top:222px;left:135px;z-index:2;width:70px;" class="Campo">
<%=contrato%>
</div> 
<div style="position:absolute;top:222px;left:214px;z-index:2;width:125px;" class="Campo">
<%=cpf_cnpj%>
</div>
<div style="position:absolute;top:222px;left:353px;z-index:2;width:118px;" class="Campo">
<%=data_vencimento%>
</div>
<div style="position:absolute;top:222px;left:480px;z-index:2;width:169px;text-align:right;" class="Campo">
<%=valor%>
</div>
<div style="position:absolute;top:247px;left:15px;z-index:2;width:108px;text-align:right;" class="Campo"></div>
<div style="position:absolute;top:247px;left:133px;z-index:2;width:107px;text-align:right;" class="Campo"></div>
<div style="position:absolute;top:247px;left:248px;z-index:2;width:108px;text-align:right;" class="Campo"></div>
<div style="position:absolute;top:247px;left:361px;z-index:2;width:108px;text-align:right;" class="Campo"></div>
<div style="position:absolute;top:247px;left:480px;z-index:2;width:169px;text-align:right;" class="Campo"> </div>
<div style="position:absolute;top:272px;left:15px;z-index:2;" class="Campo">
<%=nome_sacado%>
</div>
<div style="position:absolute;top:312px;left:15px;z-index:2;width:498px;text-align:justify;" class="Campo">
<layer name="helpns" width=498px align="left"><%=instrucoes1%><br><%=instrucoes2%><br><%=instrucoes3%><br><%=instrucoes4%><br><%=instrucoes5%></layer>
</div> 
<div style="position:absolute;top:480px;left:15px;z-index:2;" class="Campo">
Pagável em qualquer Banco até o vencimento
</div>
<div style="position:absolute;top:480px;left:480px;z-index:2;width:169px;text-align:right;" class="Campo">
<%=data_vencimento%>
</div>
<div style="position:absolute;top:505px;left:15px;z-index:2;" class="Campo">
<%=cedente%>
</div>
<div style="position:absolute;top:505px;left:480px;z-index:2;width:169px;text-align:right;" class="Campo">
<%=agencia_codigo%>
</div>
<div style="position:absolute;top:530px;left:15px;z-index:2;width:110px;" class="Campo">
<%=data_documento%>
</div>
<div style="position:absolute;top:530px;left:133px;z-index:2;width:160px;" class="Campo">
<%=right("0000000000"& numero_documento, 10)%>
</div>
<div style="position:absolute;top:530px;left:295px;z-index:2;width:60px;" class="Campo">
<%=especie_doc%>
</div>

<div style="position:absolute;top:530px;left:364px;z-index:2;width:35px;" class="Campo">
<%=aceite%>
</div>
<div style="position:absolute;top:530px;left:405px;z-index:2;width:60px;" class="Campo">
<%=data_processamento%>
</div> 
<div style="position:absolute;top:530px;left:480px;z-index:2;width:169px;text-align:right;" class="Campo">
<%=nosso_numero%> 
</div>
<div style="position:absolute;top:556px;left:15px;z-index:2;" class="Campo"> </div>
<div style="position:absolute;top:556px;left:133px;z-index:2;" class="Campo">
<%=carteira%>
</div>
<div style="position:absolute;top:556px;left:223px;z-index:2;" class="Campo">
<%=especie%>
</div>
<div style="position:absolute;top:556px;left:283px;z-index:2;" class="Campo"> </div>
<div style="position:absolute;top:556px;left:405px;z-index:2;width:65px;text-align:right;" class="Campo"></div>
<div style="position:absolute;top:556px;left:480px;z-index:2;width:169px;text-align:right;" class="Campo">
<%=valor%>
</div>
<div style="position:absolute;top:580px;left:15px;z-index:2;width:430px;text-align:justify;" class="Campo">
<layer name="helpns" width=430px align="left"><%=instrucoes1%><br><%=instrucoes2%><br><%=instrucoes3%><br><%=instrucoes4%><br><%=instrucoes5%></layer>
</div>
<div style="position:absolute;top:580px;left:480px;z-index:2;width:169px;text-align:right;" class="Campo"> </div>
<div style="position:absolute;top:605px;left:480px;z-index:2;width:169px;text-align:right;" class="Campo"> </div>
<div style="position:absolute;top:631px;left:480px;z-index:2;width:169px;text-align:right;" class="Campo"> </div>
<div style="position:absolute;top:656px;left:480px;z-index:2;width:169px;text-align:right;" class="Campo"> </div>
<div style="position:absolute;top:581px;left:480px;z-index:2;width:169px;text-align:right;" class="Campo"> </div>
<div style="position:absolute;top:704px;left:15px;z-index:2;" class="Campo">
<%=nome_sacado%>
</div>
<div style="position:absolute;top:717px;left:15px;z-index:2;" class="Campo">
<%=endereco_sacado%>
</div>
<div style="position:absolute;top:830px;left:7px;z-index:2;" class="Titulo11">
Corte na linha pontilhada
</div>
<div style="position:absolute;top:827px;left:7px;z-index:2;" class="Titulo11">
<img src="imagens_bb/bblinhaPontilhada.gif" width="650" height="5" border="0" alt="">
</div>
<div style="position:absolute;top:760px;left:12px;height:70px;z-index:2;" class="Titulo11">
<table border=0 cellPadding=0 cellSpacing=0 width="666">
 <tr>
  <td colspan="2">
   <%
   function fbarcode(valor_barras)
    Dim f, f1, f2, i
    Dim texto
    Const fino = 1
    Const largo = 3
    Const altura = 50
    Dim BarCodes(99)
    if isempty(BarCodes(0)) then
     BarCodes(0) = "00110"
     BarCodes(1) = "10001"
     BarCodes(2) = "01001"
     BarCodes(3) = "11000"
     BarCodes(4) = "00101"
     BarCodes(5) = "10100"
     BarCodes(6) = "01100"
     BarCodes(7) = "00011"
     BarCodes(8) = "10010"
     BarCodes(9) = "01010"
     for f1 = 9 to 0 step -1
      for f2 = 9 to 0 Step -1
       f = f1 * 10 + f2
       texto = ""
       for i = 1 To 5
        texto = texto & mid(BarCodes(f1), i, 1) + mid(BarCodes(f2), i, 1)
       next
       BarCodes(f) = texto
      next
     next
    end if
    %>
    <img src=imagens_bb/p.gif width=<%=fino%> height=<%=altura%> border=0><img
    src=imagens_bb/b.gif width=<%=fino%> height=<%=altura%> border=0><img
    src=imagens_bb/p.gif width=<%=fino%> height=<%=altura%> border=0><img
    src=imagens_bb/b.gif width=<%=fino%> height=<%=altura%> border=0><img
    <%
    texto = valor_barras
    if len( texto ) mod 2 <> 0 then
     texto = "0" & texto
    end if
    do while len(texto) > 0
     i = cint( left( texto, 2) )
     texto = right( texto, len( texto ) - 2)
     f = BarCodes(i)
     for i = 1 to 10 step 2
      if mid(f, i, 1) = "0" then
       f1 = fino
      else
       f1 = largo
      end if
      %>
      src=imagens_bb/p.gif width=<%=f1%> height=<%=altura%> border=0><img
      <%
      if mid(f, i + 1, 1) = "0" Then
       f2 = fino
      else
       f2 = largo
      end if
      %>
      src=imagens_bb/b.gif width=<%=f2%> height=<%=altura%> border=0><img
      <%
     next
    loop
    %>
    src=imagens_bb/p.gif width=<%=largo%> height=<%=altura%> border=0><img
    src=imagens_bb/b.gif width=<%=fino%> height=<%=altura%> border=0><img
    src=imagens_bb/p.gif width=<%=1%> height=<%=altura%> border=0>
    <%
   end function
   %>
   <%=fbarcode(codbar)%>  
   </td>
  </tr>
 </table>
</div>
</body>
</html>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Esse código é para criar o boleto nao é ?

Se sim, o sistema já gera o boleto, o que eu precisava é saber como é o procedimento para gerar o arquivo de remessa.

 

Não sei se fui muito claro , se nao for pode perguntar...

 

Obrigado

Compartilhar este post


Link para o post
Compartilhar em outros sites

você terá que recuperar os dados do seu código de barras, se não souber entre em contato com o banco, para ver o layout para o arquivo de remessa e retorno, alguns até seguem o padrão da FEBRABAN mas nem todos.dae você pega apenas as informações que lhe interessa e grava em um arquivo txt.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Entao, eu consigo pegar o dado do codigo de barra, é ai que eu nao to conseguindo entender, vou pegar e gerar esse arquivo txt, mas como vou montar essa estrutura? existem varios segmentos, é nisso que eu estou penando...

 

 

Segue meu código


'#############################################################################################
'[sTART] Gera o arquivo da remessa BB
'#############################################################################################
Public Sub geraHeaderArquivo()
	Dim html
	html = 	"001"											'CODIGO DO BANCO NA COMPENSACAO			001
	html = html & "0000"									'LOTE DE SERVICO						0000
	html = html & "0"										'REGISTRO HEADER DE ARQUIVO				0
	html = html & complementoRegistro(9, "brancos")			'USO EXCLUSIVO FEBRABAN/CNAB			BRANCOS
	html = html & "2"										'TIPO DE INSCRICAO DA EMPRESA			1-CPF 2-CGC
	html = html & limit(cpf_cnpj, 14)						'Nº. DE INSCRICAO DA EMPRESA			
	html = html & complementoRegistro(20, "brancos")		'CODIGO DO CONVENIO NO BANCO			
	html = html & "3435"									'AGENCIA MANTENEDORA DA CONTA			
	html = html & ""										'DIGITO VERIFICADOR DA AGENCIA			
	html = html & ""										'NUMERO DA CONTA CORRENTE				
	html = html & ""										'DIGITO VERIFICADOR DA CONTA			
	html = html & ""										'DIGITO VERIFICADOR DA AG/CONTA			
	html = html & ""										'NOME DA EMPRESA						
	html = html & ""										'NOME DO BANCO							
	html = html & complementoRegistro(10, "brancos")		'USO EXCLUSIVO FEBRABAN/CNAB			BRANCOS
	html = html & ""										'CODIGO REMESSA / RETORNO				1-REM 2-RET
	html = html & ""										'DATA DE GERACAO DO ARQUIVO				DDMMAAAA
	html = html & ""										'HORA DE GERACAO DO ARQUIVO				HHMMSS
	html = html & ""										'Nº. SEQUENCIAL DO ARQUIVO				
	html = html & "030"										'Nº. DA VERSAO DO LAYOUT DO ARQUIVO		030
	html = html & ""										'DENSIDADE DE GRAVACAO DO ARQUIVO		
	html = html & ""										'PARA USO RESERVADO DO BANCO			
	html = html & ""										'PARA USO RESERVADO DA EMPRESA			
	html = html & complementoRegistro(11, "brancos")		'USO EXCLUSIVO FEBRABAN/CNAB			BRANCOS
	html = html & "CSP"										'IDENTIFICACAO COBRANCA S/PAPEL			'CSP'
	html = html & ""										'USO EXCLUSIVO DAS VANS					
	html = html & ""										'TIPO DE SERVICO						
	html = html & ""										'CODIGOS DAS OCORRENCIAS				

	ArquivoTxt.WriteLine(html)
End Sub

Public Sub geraHeaderLote()
	Dim html
	html = ""												'CODIGO DO BANCO NA COMPENSACAO
	html = html & ""										'LOTE DE SERVICO
	html = html & ""										'REGISTRO HEADER DO LOTE
	html = html & ""										'TIPO DE OPERACAO
	html = html & ""										'TIPO DE SERVICO
	html = html & ""										'FORMA DE LANCAMENTO
	html = html & ""										'No.DA VERSAO DO LAYOUT DO LOTE
	html = html & ""										'USO EXCLUSIVO FEBRABAN/CNAB
	html = html & ""										'TIPO DE INSCRICAO DA EMPRESA
	html = html & ""										'No.DE INSCRICAO DA EMPRESA
	html = html & ""										'CODIGO DO CONVENIO NO BANCO
	html = html & ""										'AGENCIA MANTENEDORA DA CONTA
	html = html & ""										'DIGITO VERIFICADOR DA AGENCIA
	html = html & ""										'NUMERO DA CONTA CORRENTE
	html = html & ""										'DIGITO VERIFICADOR DA CONTA
	html = html & ""										'DIGITO VERIFICADOR DA AG/CONTA
	html = html & ""										'NOME DA EMPRESA
	html = html & ""										'MENSAGEM 1
	html = html & ""										'MENSAGEM 2
	html = html & ""										'NUMERO REMESSA/RETORNO
	html = html & ""										'DATA DE GRAVACAO REMESSA/RETORN
	html = html & ""										'DATA DO CREDITO
	html = html & ""										'USO EXCLUSIVO FEBRABAN/CNAB

	ArquivoTxt.WriteLine(html)
End Sub

Public Sub geraRemessa()
	ArquivoTxt.WriteLine("remessa")
End Sub

Public Sub geraTrailerLote()
	Dim html
	html = 	""												'CODIGO DO BANCO NA COMPENSACAO
	html = html & ""										'LOTE DE SERVICO
	html = html & ""										'REGISTRO TRAILER DO LOTE
	html = html & ""										'USO EXCLUSIVO FEBRABAN/CNAB
	html = html & ""										'QUANTIDADE DE REGISTROS DO LOTE
	html = html & ""										'QUANTIDADE DE TIT. EM COBRANCA
	html = html & ""										'VALOR TOT. DOS TIT. EM CARTEIRA
	html = html & ""										'QUANTIDADE DE TIT. EM COBRANCA
	html = html & ""										'VALOR TOT DOS TIT. EM CARTEIRAS
	html = html & ""										'QUANTIDADE DE TIT. EM COBRANCA
	html = html & ""										'VALOR TOT DOS TIT. EM CARTEIRAS
	html = html & ""										'QUANTIDADE DE TIT. EM COBRANCA
	html = html & ""										'VALOR TOT DOS TIT. EM CARTEIRAS
	html = html & ""										'NUMERO DO AVISO DE LANCAMENTO
	html = html & ""										'USO EXCLUSIVO FEBRABAN/CNAB

	ArquivoTxt.WriteLine(html)
End Sub

Public Sub geraTrailerArquivo()
	Dim html
	html = 	"001"						'					'CODIGO DO BANCO NA COMPENSACAO			001
	html = html & "9999"									'LOTE DE SERVICO						9999
	html = html & "9"										'REGISTRO TRAILER DE ARQUIVO			9
	html = html & complementoRegistro(9, "brancos")			'USO EXCLUSIVO FEBRABAN/CNAB			BRANCOS
	html = html & ""										'QUANTID. DE LOTES DO ARQUIVO			NUM. REGIST. TIPO - 1
	html = html & ""										'QUANTID. DE REGISTROS DO ARQUIV		NUM. REG. TIPOS 0+1+3+5+9
	html = html & ""										'QTDADE DE CONTAS P/CONC.- LOTES		NUM. REG. TIPO-1 OPER-E
	html = html & complementoRegistro(205, "brancos")		'USO EXCLUSIVO FEBRABAN/CNAB			BRANCOS

	ArquivoTxt.WriteLine(html)
End Sub

Public Sub addRemessa()
	'Gera os dados da remessa
	Call geraHeaderArquivo	
	Call geraHeaderLote
	Call geraRemessa	
	Call geraTrailerLote
	Call geraTrailerArquivo

End Sub
'#############################################################################################
'[END] Cria o arquivo de remessa BB
'#############################################################################################

 

Não sei estou no caminho certo, vou inserindo os passos é isso? mas o que teria a ver com o dado de codigo de barras?

Compartilhar este post


Link para o post
Compartilhar em outros sites

pelo código de barra você consegue recuperar, informações como:

nomes da empresa, valor pago,data de pagamento

dae você as insere em um txt

Compartilhar este post


Link para o post
Compartilhar em outros sites

beleza, ai eu pego esses dados do código de barra e vou encaixando na minha estrutura?

Em relaçao aos segmentos, ponho apenas os que são obrigatórios?

Compartilhar este post


Link para o post
Compartilhar em outros sites

coloque apenas as informações que necessita

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.