Jump to content

Archived

This topic is now archived and is closed to further replies.

Recommended Posts

Olá!

Estou gerando boletos do banco do Brasil através de um sistema próprio.

Ao gerar os boletos individualmente não obtive erros, porém ao aplicar o loop para gerar mais de um boleto, houve um erro com o código de barras e linha digitável:

linha 86

function mod11(cadeia,limitesup,lflag)

Já tentei ajustar de diversas formas, mas só consegui gerar os boletos sem código de barras / linha digitável.

Segue código

<% response.buffer=true %>
<!--#include file="../Connections/ConnectionString.asp" -->
<!-- #include file = "../include/generico_data.inc" -->
<%	'Valida Acesso
	dim rsAcesso, sql
	sql = "select * from acesso_processo_usuario where id_processo = 16 and id_usuario = " & session("id_usuario")
	set rsAcesso = GetRS(sql)
	if rsAcesso.eof then
		response.write "Acesso Negado"
		response.end
	end if
	%>
<%


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


'================INFORMAÇÕES BANCÁRIAS==============
cedente = "RAZÃO SOCIAL"
cpf_cnpj = "00.000.000/0000-00"
agencia = "0000"
dac_agencia = "0" 
conta = "00000" 
dac_conta = "0" 
convenio = "0000000"
carteira = "00"

'================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 = ""
'=====================================================
'===========LOOP=========='
dim id_lan, v_item
For each item in Request.Form("chkBoleto") 
v_item = split(item,",")
    id_lan = v_item(0)


Dim rsNumero, vr_tx_boleto
sql = "select * from vw_ultimo_boleto"
	set rsNumero = GetRS(sql)
	
idPedido = rsNumero("nr_documento") + 1

sql = "update lancamento set "
sql = sql & " nr_documento = '" & idPedido & "'"
sql = sql & " where id_lancamento = " & Request.Form("chkBoleto")
call executecmd(sql)

vr_tx_boleto = 0.0

dim rsTeste, id_parceiro
	sql = "select * from lancamento where id_lancamento = " & Request.Form("chkBoleto") 
	set rsTeste = GetRS(sql)
id_parceiro = rsTeste("id_parceiro")

data_vencimento  = rsTeste("dt_vencimento")

Dim rsLancamento
sql = "select * from vw_lancamento_boleto where id_lancamento = "  & Request.Form("chkBoleto") 
set rsLancamento = GetRS(sql)
	

valor = rsLancamento("vr_curso") + 0 + vr_tx_boleto - rsLancamento("vr_desconto") + rsTeste("vr_juros") + rsTeste("vr_multa")
data_documento  = date
data_processamento = date()
nome_sacado	= rsLancamento("nome") & " - CPF:" & rsLancamento("cpf")
endereco_sacado  = rsLancamento("endereco")

'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;
 }
 
 @media print {
  body * {
    visibility: hidden;
  }
  #printable, #printable * {
    visibility: visible;
  }
  #printable {
    position: fixed;
    left: 0;
    top: 0;
  }
}
</style>
</head> 
<body bgcolor="White" leftmargin="0" topmargin="0" marginwidth="0" marginheight="0" bgproperties="fixed">
<br>
<center><input type="button" name="imprimir" value="Imprimir" onclick="window.print();">
</center><br>
<div id="printble">
<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">
	<%
	next
	
	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>
 </div>
</body>
</html>

Alguém pode me ajudar?

Obrigado!

Share this post


Link to post
Share on other sites

Oi.Tudo bem?

Como conseguiu este código ASP de boleto, o Banco forneceu?

Seu boleto é com registro, ou sem registro?

Você já havia usado ele em Loop alguma vez?

Abraços!

Share this post


Link to post
Share on other sites

Oi.Tudo bem?

Como conseguiu este código ASP de boleto, o Banco forneceu?

Seu boleto é com registro, ou sem registro?

Você já havia usado ele em Loop alguma vez?

Abraços!

Olá, encontrei o código aqui no fórum mesmo ( http://forum.imasters.com.br/topic/270392-boleto-bb-7-digitos/ )

A carteira é registrada

Não havia colocado o loop ainda neste código, ao colocar houve o erro que citei, saberia como resolver?

Obrigado

Share this post


Link to post
Share on other sites

Oi.

Pode ser algum problema de variável não resetada no loop.
Tente resetar algumas variáveis ou muda-las de nome no loop!

Abraços!

Share this post


Link to post
Share on other sites

Pessoal, consegui realizar a impressão, porém tive que inserir o "NEXT" antes da função do código de barras, logo, só gera um boleto mesmo que eu selecione vários.

Alguém pode ajudar com o loop de forma geral?

Obrigado!

<% response.buffer=true %>
<!--#include file="../Connections/ConnectionString.asp" -->
<!-- #include file = "../include/generico_data.inc" -->
<%	'Valida Acesso
	dim rsAcesso, sql
	sql = "select * from acesso_processo_usuario where id_processo = 16 and id_usuario = " & session("id_usuario")
	set rsAcesso = GetRS(sql)
	if rsAcesso.eof then
		response.write "Acesso Negado"
		response.end
	end if
	%>
<%


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


'================INFORMAÇÕES BANCÁRIAS==============
cedente = "RAZÃO SOCIAL"
cpf_cnpj = "-"
agencia = "-"
dac_agencia = "-" 
conta = "-" 
dac_conta = "-" 
convenio = "-"
carteira = "17"

'================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 = ""
'=====================================================
'===========LOOP=========='
dim id_lan, v_item
For each item in Request.Form("chkBoleto") 
v_item = split(item,",")
    id_lan = v_item(0)


Dim rsNumero, vr_tx_boleto
sql = "select * from vw_ultimo_boleto"
	set rsNumero = GetRS(sql)
	
idPedido = rsNumero("nr_documento") + 1

sql = "update lancamento set "
sql = sql & " nr_documento = '" & idPedido & "'"
sql = sql & " where id_lancamento = " & id_lan
call executecmd(sql)

vr_tx_boleto = 0.0

dim rsTeste, id_parceiro
	sql = "select * from lancamento where id_lancamento = " & id_lan
	set rsTeste = GetRS(sql)
id_parceiro = rsTeste("id_parceiro")

data_vencimento  = rsTeste("dt_vencimento")

Dim rsLancamento
sql = "select * from vw_lancamento_boleto where id_lancamento = "  & id_lan 
set rsLancamento = GetRS(sql)
	

valor = rsLancamento("vr_curso") + 0 + vr_tx_boleto - rsLancamento("vr_desconto") + rsTeste("vr_juros") + rsTeste("vr_multa")
data_documento  = date
data_processamento = date()
nome_sacado	= rsLancamento("nome") & " - CPF:" & rsLancamento("cpf")
endereco_sacado  = rsLancamento("endereco")

'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"
%>
<%next%>

<%

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>

Share this post


Link to post
Share on other sites

  • Similar Content

    • By Hacker_Buiu
      Costuma dar erro quando você vai curtir um tópico?
    • By Hacker_Buiu
      Porque demora para aprovar meus tópicos?Porque quando tento curtir dá erro,e perco o direito de criar um novo tópico?
    • By Sapinn
      NÃO SEI COMO RESOLVER ISSO PELO AMOR ... Eu tenho um método home que vai transferir os dados do banco para uma tabela 
       
      Aqui esta o método no controlador:
          public function home(){         $dados = [             'admins' => $this->adminModel->lerAdmin()         ];                $this->view('paginas/admins/home', $dados);     } E esse método no model:
         public function lerAdmin(){         $this->db->query("SELECT * FROM admins");         return $this->db->resultados();     } Ai eu chama os dados no home assim:
       
      <?=$dados['admins']?>  
      Só pra testar eu sei que precisa usar um foreach, mas ele me retorna o seguinte erro:
       
      Notice: Undefined index: admins inC:\xampp\htdocs\PROJETOS\sistema-de-gerenciamento\app\Views\paginas\admins\home.phpon line178
    • By Sapinn
      Opa galera. Então depois que eu comecei a usar cookies no meu sistema o seguinte erro está acontecendo Cannot modify header information - headers already sent by não sei exatamente o que é e preciso de ajuda. O erro ocorre quando eu verifico se a caixa "mantenha-me conectado" é marcada então eu faço uma verificação direto no index.
      <?php     session_start();              include '../app/configuracao.php';         include '../app/autoload.php';         include '../app/Controllers/Admins.php';         $rotas = new Rota();         $db = new DataBase();         $control = new Admins();         if(isset($_COOKIE['acesso'])){             $db->query('select * from admins where acesso = :acesso');             $db->bind('acesso',$_COOKIE['acesso']);             $db->resultado();                  if($db->resultado()){                 $control->fazLogin(isset($db->resultado()->email), isset($db->resultado()->senha));             }         }            ?>  
    • By Jack Oliveira
      Ola pessoal bom dia 
      Bom estou tentando fazer um formulario de cadastros
      com ajax
       
      mais sempre me retorna o erro uma msg que definir caso não esteja fazendo
      Houve um erro ao fazer o seu cadastro, tente novamente!
       
       
      Mais já olhei tudo que podia não há porque dar erro pois esta sendo colocando os campos certos para cadastrar
       
      No Ajax esta da seguinte forma
      <script> $(function(){ $('.form').submit(function(){ $('.loading').html("<img src='loading.gif' width='45'>"); $.ajax({ url: '<?= ConfigPainel('site_url');?>controlers/cadastro_empresa_users.php', type: 'POST', data: $('.form').serialize(), success: function(data){ $('.mostrar').html(data); $('.loading').hide(); $('.form')[0].reset(); } }); return false; }); }); </script> no html no form fiz assim pegando a class form do ajax creio que não há nada de errado aqui
      <form action="" method="post" enctype="multipart/form-data" class="form">
       
      no php esta assim
       
      <?php header('Access-Control-Allow-Origin: *'); require_once ('../admin/database/config.php'); require_once ('../admin/database/config.database..php'); require_once ('../admin/database/config.session.php'); require_once ('../admin/includes/funcoes.php'); if($_POST){ if(empty($_POST['user_name']) || empty($_POST['user_lastname']) || empty($_POST['user_email']) || empty($_POST['user_telefone']) || empty($_POST['user_password']) || empty($_POST['user_plano']) || empty($_POST['nome_empresa']) || empty($_POST['nome_empresa_link'])){ echo '<script> $(document).ready(function(){ swal("Ops...","Preencha todos os campos obrigatórios!","warning"); }); </script>'; }else{ // INICIO PASSANDO PARA ARRAY DO USUARIO. $user_name = post('user_name'); $user_lastname = post('user_lastname'); $user_email = post('user_email'); $user_telefone = post('user_telefone'); $user_password = md5(post('user_password')); $user_plano = post('user_plano'); $user_level = 3; $user_registration = date('Y-m-d H:i:s'); // FIM ARRAY DO USUARIO. $QueryC = DBRead('configuracoes_site','*'); if (is_array($QueryC)) { foreach ($QueryC as $CONF) { //Teste $DiasDeTeste = $CONF['dias_testes']; //Plano 1 $nome_plano_um = $CONF['nome_plano_um']; $v_plano_um = $CONF['v_plano_um']; $dias_plano_um = $CONF['dias_plano_um']; //Plano 2 $nome_plano_dois = $CONF['nome_plano_dois']; $v_plano_dois = $CONF['v_plano_dois']; $dias_plano_dois = $CONF['dias_plano_dois']; //Plano 3 $nome_plano_tres = $CONF['nome_plano_tres']; $v_plano_tres = $CONF['v_plano_tres']; $dias_plano_tres = $CONF['dias_plano_tres']; }} //INICIO PASSANDO PARA ARRAY DA EMPRESA $nome_empresa = post('nome_empresa'); $nome_empresa_link = post('nome_empresa_link'); $end_uf_empresa = post('end_uf_empresa'); $cidade_empresa = post('cidade_empresa'); $end_bairro_empresa = post('end_bairro_empresa'); $end_rua_n_empresa = post('end_rua_n_empresa'); $email_empresa = post('user_email'); $telefone_empresa = preg_replace("/[^0-9]/", "", post('user_telefone')); $empresa_data_renovacao = date("Y-m-d", strtotime("+{$DiasDeTeste} days")); $QueryE = DBRead('estados','*',"WHERE id='{$end_uf_empresa}'"); if (is_array($QueryE)) { foreach ($QueryE as $ES) { $uf_empresa = $ES['sigla']; }} $QueryU = DBRead('ws_users','*',"WHERE user_plano='{$user_plano}'"); if (is_array($QueryU)) { foreach ($QueryU as $USER) { $UserPlano = $USER['user_plano']; }} switch ($UserPlano) { case '1': $Planos = $nome_plano_um; $Valor = 'R$:'.$v_plano_um.''; $Dias = 'Assinatura de '.$dias_plano_um.' dias'; break; case '2': $Planos = $nome_plano_dois; $Valor = 'R$:'.$v_plano_dois.''; $Dias = 'Assinatura de '.$dias_plano_dois.' dias'; break; case '3': $Planos = $nome_plano_tres; $Valor = 'R$:'.$v_plano_tres.''; $Dias = 'Assinatura de '.$dias_plano_tres.' dias'; break; default: $Planos = 'Plano Teste'; $Valor = 'Bônus R$: 21,00'; $Dias = 'Assinatura de '.$empresa_data_renovacao.' dias grátis'; break; } $Adicionar = array( 'user_name' => $user_name, 'user_lastname' => $user_lastname, 'user_email' => $user_email, 'user_telefone' => $user_telefone, 'user_password' => $user_password, 'user_plano' => $user_plano, 'user_level' => 3, 'user_registration' => $user_registration ); $Query = DBCreate('ws_users', $Adicionar); $Adicionar = array( 'nome_empresa' => $nome_empresa, 'nome_empresa_link' => $nome_empresa_link, 'end_uf_empresa' => $uf_empresa, 'cidade_empresa' => $cidade_empresa, 'end_bairro_empresa' => $end_bairro_empresa, 'end_rua_n_empresa' => $end_rua_n_empresa, 'email_empresa' => $email_empresa, 'telefone_empresa' => $telefone_empresa, 'empresa_data_renovacao' => $empresa_data_renovacao ); $Query = DBCreate('ws_empresa', $Adicionar); if ($Query != 0) { echo' <script> $(document).ready(function(){ swal("Ops '.utf8_encode($user_name).'...","Houve um erro ao fazer o seu cadastro, tente novamente!", "error"); }); </script>'; }else{ echo' <script> $(document).ready(function(){ swal("Sucesso '.utf8_encode($user_name).'...", "Seu cadastro foi realizado com sucesso.<br><a href="./login/Acessar"><button class="btn btn-default btn-sm"></button>Fazer Login...</a>", "success") }); </script>'; } } } Posso esta deixando passar algo no php que não estou vendo o problema....
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.