Ir para conteúdo

Arquivado

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

gabrieldmello

Aspboleto.com.br ou Atual?

Recommended Posts

Boa noite galera,

Trabalho em uma empresa, sempre usamos uma forma de boleto do banco do brasil, assim desde quando entrei aqui. Hoje precisamos mudar para o boleto da caixa. Encontrei um código do VirtuaStore, porém é antigo, acho que os padrões mudaram, pois não consegui utiliza-lo. Ele pede umas informações sobre a conta, pedi todas que identifiquei como necessárias ao contador da empresa, não sei realmente quais são necessárias mexer, confesso.

 

Resultado, estou pensando em comprar esse código de gerar boletos do aspboleto.com da caixa, por 60,00. O que me recomendam? O código que uso ainda é funcional?

 

 

Boa Parte/Importante do Código:

<%@LANGUAGE="VBSCRIPT" CODEPAGE="1252"%>
<!--#include file="..\global.inc" -->
<%response.Buffer = true%>
<%session.LCID = 1046%>
<%
'#########################################################################################
'#----------------------------------------------------------------------------------------
'# BOLETO CEF - VERSÃO 1.0
'# Adaptado por: MJSIERRA@IG.COM.BR
'#----------------------------------------------------------------------------------------
'#########################################################################################
'#
'#  CÓDIGO: VirtuaStore Versão OPEN - Copyright 2001-2004 VirtuaStore
'#  URL: http://comunidade.virtuastore.com.br
'#  E-MAIL: comunidade@virtuastore.com.br
'#  AUTORES: Otávio Dias(Desenvolvedor)
'...
'#########################################################################################
'#----------------------------------------------------------------------------------------
'#########################################################################################
%>

<%
  
'********************************
'****FUNÇÕES********************
'********************************
Function FormataData(Data)
   If Data <> "" Then FormataData = Right("0" & DatePart("d", Data),2) & "/" & Right("0" & DatePart("m", Data),2) & "/" & DatePart("yyyy", Data)
End Function

'********************************
' CONSTANTES
'********************************

cons_banco   = "104" 'bol_banco, Num do Banco 03 posições
cons_dvbanco = "0" 'bol_dvbanco, Digito verificador do banco 01 posição
cons_agencia = "XXXX" 'bol_agencia, sem digito 04 posições
cons_conta   = "XXXXX" 'bol_conta, ContaCedente (Somente Números) 05 posições
cons_dvconta = "X" 'Digito verificador da CC 01 posição
cons_carteira= "SR" 'Código da Carteira: pode ser SR (Sem Registro) ou CR (Com Registro) - (Confirmar com gerente qual usar) - bol_carteira
cons_moeda   = "9"
cons_especie = "R$"
cons_cedente = "Empresa" 'bol_cedente
cons_dadoscedente = "Rua Empresa, 111 - Bairro - CEP: 55555-005" 'bol_dadoscedente
cons_codigocedente= "XXXXXXXXXXX" 'bol_nr_cedente - 11 Caracteres
cons_dvcodigocedente= "X"
cons_taxaboleto = "2.95"

'********************************
' CARREGAR PERFIL CLIENTE
'********************************
id = request.QueryString("id")
set rs = conn.execute ("select * from fisica where codcpf = '"& id &"' ")
fisica = rs("codigo")
nome = rs("nome")
CPF = rs("cpf")
bolsaestudo = rs("bolsaestudo")
valordabolsa = rs("valordabolsa")
prouni = rs("prouni")
set rs = conn.execute ("select * from inscricao where fisica = '"&fisica&"' ")
inscricao=rs("codigo")
curso = rs("codcurso")
if curso=4 then '
valor=400 'mensalidade
else
valor=5 'mensalidade
end if

if(bolsaestudo=2 and valordabolsa=1) then ' 50%
valor=valor/2
elseif(bolsaestudo=2 and valordabolsa=2) then ' 100%
valor=0
elseif(bolsaestudo=1) then
'espaço para plano 
end if

datahoje = now
datavencimento = dateAdd("d",5,date)

set rs = conn.execute ("select * from boleto where fisica = '"& fisica &"' ")
if rs.eof then
set rs = conn.execute ("insert into boleto (fisica, inscricao, valor, dataemissao, datavencimento) values ('"& fisica &"', '"&inscricao&"', '"&valor&"', '"&datahoje&"', '"&datavencimento&"')")
else
set rs = conn.execute ("update boleto set valor='"&valor&"' where fisica = '"& fisica &"' ")
end if

'********************************
' VARIÁVEIS 
'********************************

var_sacado = nome 'Request.QueryString("sacador")
var_CPFSacado= CPF 'Request.QueryString("cpf")

'*************************************** 
 Function Converten(pNumeron)
	 Converten = Right(String(8,"0") &_
	 cstr(pNumeron * 100),8)
 End Function
'****************************************

'************************************
'Preencher com zeros a esquerda
 Function strZeros(strValor,Tamanho)
   while len(strValor) < Tamanho
     strValor = "0" & strValor
   wend
   StrZeros=strValor
 End Function
 
'**********************************
'Data de Vencimento 5 dias após a data do servidor
Ano = DatePart("yyyy", DateAdd("d", 5, date))
Mes = DatePart("m", DateAdd("d", 5, date))
if Len(Mes) < 5 then
   Mes = "0" & Mes
end if
Dia = DatePart("d", DateAdd("d", 5, date))
if Len(Dia) < 5 then
   Dia = "0" & Dia
end if

Dim dataHoje
dataHoje = day(now)&"/"&month(now)&"/"&year(now)


'**********************************
set rs = conn.execute ("select * from boleto where fisica = '"& fisica &"' ")
valorMensalidade= rs("valor")
dataemissao = rs("dataemissao")
datavencimento = rs("datavencimento")

var_datadocumento = FormataData(dataemissao) 'Data de emissão do Boleto 
var_datavencimento = FormataData(datavencimento) 'Data de Vencimento do Boleto - REGRA: Formato DD/MM/AAAA
var_valordocumento = Cstr(valorMensalidade)+",00" 'Valor do Documento



var_numerodoc = rs("codigo") 'Num do Documento
'Carteira SR: 80, 81 ou 82  -  Carteira CR: 90 (Confirmar com gerente qual usar)
var_inicionossonumero = "80" 
'var_nossonumero = CStr(Cint(var_inicionossonumero)+var_numerodoc) 'Nosso numero sem o DV - REGRA: Máximo de 8 caracteres!
var_nossonumero = var_numerodoc 'Nosso numero sem o DV - REGRA: Máximo de 8 caracteres!

var_instrucoes="<B><BR>Não receber após o vencimento.<BR> MULTA de 0,02% por dia de atraso<BR> </b>"
var_intervalo = CDate(Var_datavencimento)-CDate(Var_datadocumento)
if var_intervalo > 5 then
  var_observacoes="<B> <BR> Pagamento referente à Blá Blá Blá <BR> Outra Linha <BR> <BR></b>"
else
  var_observacoes="<B> <BR> Pagamento referente à Blá Blá Blá <BR> Outra Linha <BR> <BR></b>"
end if

if var_numerodoc = "" then
  if var_CPFSacado<>"" then
    var_nossonumero = mid(var_CPFSacado,1,7)
  end if
end if

Informações que achei necessárias para gerar o boleto e que pedi ao contador:

 

Código da Agência: sem o dígito (04 posições) XXXX

Conta Cedente: (Somente Números) (05 posições) XXXX / operação XXX

Digito Verificador da Conta Cedente: (01 posição) X

Código da Carteira: pode ser SR (Sem Registro) ou CR (Com Registro) - (Confirmar com gerente qual usar) SR

Código Cedente: (número do cedente) (11 posições) XXXXXX

Digito Verificador Código Cedente: (01 posição) NÃO POSSUI

 

 

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

adapta ele

Compartilhar este post


Link para o post
Compartilhar em outros sites

// DADOS DA SUA CONTA - CEF
$dadosboleto["agencia"] = "0000"; // Num da agencia, sem digito
$dadosboleto["conta"] = "0000"; 	// Num da conta, sem digito
$dadosboleto["conta_dv"] = "0"; 	// Digito do Num da conta

// DADOS PERSONALIZADOS - CEF
$dadosboleto["conta_cedente"] = "000000"; // ContaCedente do Cliente, sem digito (Somente Números)
$dadosboleto["conta_cedente_dv"] = "0"; // Digito da ContaCedente do Cliente
$dadosboleto["carteira"] = "SR";  // Código da Carteira: pode ser SR (Sem Registro) ou CR (Com Registro) - (Confirmar com gerente qual usar) 

Xanbur, comecei a usar um script php que encontrei gratuito e atualizado. Porém estou me passando um pouco, o gerente me passou esses dados. O script pede Agencia, Conta, Dv Conta e a Conta Cedente. Realmente são dois números de conta?

Compartilhar este post


Link para o post
Compartilhar em outros sites

  • Conteúdo Similar

    • Por cesarhtc
      Boa tarde tenho uma aplicação que gera uma relação de dados como faço para exportar isso para pdf?
       
      Obrigado
    • Por vmenezes
      ola galera . tenho uma aplicação com asp  e utilizo javascript para bater foto do cliente . consigo apos a foto batida salvar no pc com o ID do cliente,
      porem gostaria que assim que a foto fosse batida salvasse na raiz do proprio site.
      tem como fazer isso ?
      obg
    • Por Negrito
      Olá,
       
      Estou quebrando a cabeça com o recurso Session_OnStart , pois eu gostaria que algumas paginas/arquivos .asp tivessem exceções.
       
      Criei o Global.ASA com o seguinte contexto:
       
      <SCRIPT RUNAT=Server Language="VBScript">
      Sub Session_OnStart
        startPage = "/default.asp"
        currentPage = Request.ServerVariables("SCRIPT_NAME")
        If strcomp(currentPage,startPage,1) then
          Response.Redirect("/default.asp")
        End If
      End Sub
      </SCRIPT>
       
      Ele funciona perfeitamente, quando tento acessar qualquer pagina ou subdiretorio diretamente pela URL, ele me joga para a pagina inicial.
       
      Porem, eu gostaria de ter exceções em alguns diretorios e paginas .ASP , onde eu gostaria de liberar o acesso direto ao digitar a URL.
       
      Alguem sabe me informar se é possivel ? 
       
      Obrigado.
       
       
    • Por Negrito
      Olá Pessoal, 
       
      Converti o banco de dados de uma app em ASP Classico de MSSQL para MySQL para redução de custos e percebi que alguns componentes ou recursos não estão mais funcionando devido a não compatibilidade com o MySQL , como por exemplo a função : RecordCount
       
      Já consegui converter e atualizar 95% de aplicação para rodar com o MySQL, mas tem 1 item que esta tirando meu sono e após dias pesquisando, resolvi pedir ajuda.
       
      Segue o meu codigo abaixo , onde estou com problema no resultado dessa operação:
       
      <%
      ...
      Set RS = Server.CreateObject("ADODB.Recordset")
      RS.CursorLocation = 3
      RS.CursorType = 3
      RS.ActiveConnection = Cn
      RS.Open strSQL, Cn, 3, 3
      RS.PageSize = 25
      RS.CacheSize = RS.PageSize
      intPageCount = RS.PageCount
      intRecordCount = RS.RecordCount
          If NOT (RS.BOF AND RS.EOF) Then
      If CInt(intPage) > CInt(intPageCount) Then intPage = intPageCount
          If CInt(intPage) <= 0 Then intPage = 1
              If intRecordCount > 0 Then
                  RS.AbsolutePage = intPage
                  intStart = RS.AbsolutePosition
                  If CInt(intPage) = CInt(intPageCount) Then
                      intFinish = intRecordCount
                  Else
                      intFinish = intStart + (RS.PageSize - 1)
                  End if
              End If
          If intRecordCount > 0 Then
              For intRecord = 1 to RS.PageSize
          QntExibicoes = QntExibicoes + Rs.fields("views")
      ...
      %>
       
       
      Já percebi que a função RecordCount não pode ser usada com o MySQL ou pelo menos não é compativel.
       
      A paginação esta funcionando ! 
      Porem , não consigo fazer ele calcular a quantidade de linhas (rows) do MySQL com a função RecordCount e acredito que possa ter alguma outra função que não esta compativel , mas como não conheço MySQL , não posso afirmar.
       
      Enfim, algum pode me dar uma luz ?
       
      Desde já agradeço pela atenção.
       
      Obrigado.
    • Por Person
      Estou fazendo um protótipo de e-commerce com aps clássico e sql server, na parte de administração, o usuário administrativo pode alterar o status do pedido,  para isso ele clica no botão de alterar na pagina principal e é redirecionado para um formulário onde tenho as options, para que ele mude o status, coloquei um botão para que ele passe os parâmetros  (id_pedido e id_status_pedido) para a pagina de manutenção, onde é feito o update e o envio de e-mail com as atualizações. Mas quero retirar esse botão e fazer com que, assim que eu clique em uma opção, ele altere, sem eu precisar ser redirecionado para a tela de manutenção, isso com o Ajax se possível.
       
      <body> <% call Abredb() cod = Request.QueryString("cod") evt = Request.QueryString("evt") if cod <> "" then cod = cint(cod) end if if ucase(evt) = "ALT" then sql = "exec SP_TR32_status_frm_SEL" 'Response.Write(sql) 'Response.End() set rs = dbWeb.execute(sql) estrato = rs("id_status_pedido") bot = "Alterar" end if %> <div class="container"> <div class="titulo">Formulario</div> <form action="manu_pedido.asp" method="post" enctype="multipart/form-data"> <div class="detalhes-formulario"> <div class="input-box"> <span class="detalhes">status</span> <select class="form-control" name = "status"> <% do while not rs.eof%> <option value="<%=rs("id_status_pedido")%>"><%=rs("descricao")%></option> <% rs.movenext loop rs.close set rs = nothing %> </select> </div> </div> <button><a href="/treinamento/Thau/mini_mercado/adm/manu_pedido.asp?evt=alt&cod="<%=cod%>"&estrato="<%rs("id_status_pedido")%> </form> </div> <br> </body> <%call Fechadb()%> </html> Abaixo está o código da minha pagina de manutenção, no qual acontece a alteração do status
      <% Function ZerosEsquerda(Num,tam) Dim Zero Num = Trim(Num) Zero = "" For i = Len(Num) To tam - 1 Zero = "0" & Zero Next ZerosEsquerda = Trim(Zero & Num) End Function byteCount = Request.TotalBytes RequestBin = Request.BinaryRead(byteCount) Set UploadRequest = CreateObject("Scripting.Dictionary") BuildUploadRequest RequestBin 'opc = request.QueryString("opc") 'if opc = "" then 'cod = UploadRequest.Item("hfcod").Item("Value") 'botao = UploadRequest.Item("botao").Item("Value") 'estrato = UploadRequest.Item("estrato").Item("Value") 'end if session.LCID = 1046 call Abredb() if botao = "Alterar" then ' ALTERANDO OS DADOS RECEBIDOS NA TABELA sql = "exec SP_TR32_pedido_UPD "&cod&", '"&estrato&"'" 'response.write sql 'response.end dbWeb.execute(sql) str_html = "" str_html = str_html & "<HTML><BODY BGCOLOR=#0000FF>" str_html = str_html & "<h1>produtos</h1>" sql ="SP_TR32_email__itens_sel "&cod&"" set rs = dbWeb.execute(sql) str_html = str_html & "<table>" str_html = str_html & "<thead>" str_html = str_html & " <tr>" str_html = str_html & "<th>Produtos</th>" str_html = str_html & "<th>quantidade</th>" str_html = str_html & " <th>Total</th>" str_html = str_html & "</tr>" str_html = str_html & " </thead>" str_html = str_html & "<tbody>" do while not rs.eof str_html = str_html & "<tr>" str_html = str_html & "<td >"&rs("produto")&"</td>" str_html = str_html & "<td >"&rs("quantidade")&"</td>" str_html = str_html & "<td >"&rs("total")&"</td>" str_html = str_html & "</tr>" rs.movenext loop rs.close set rs = nothing str_html = str_html & " </tbody>" str_html = str_html & "</table>" str_html = str_html & "</BODY></HTML>" sql = "SP_TR32_email_sel "&cod&"" set rs = dbWeb.execute(sql) if estrato<>"" then Set ObjMail = Server.CreateObject("Cdonts.Newmail") objMail.Subject = "Atualização de pedido" objMail.From = "Porto Dourado <contato@email.websupply.com.br>" objMail.To = "request("email")" objMail.BodyFormat = 0 objMail.MailFormat = 0 objMail.Body = "Olá"&" "&rs("nome")&" "&rs("sobrenome")&", </br> Houve uma atualização em seu pedido pedido: "&rs("id_pedido")&" </br> o status mudou para: "&rs("descricao")&" </br> endereço de entrega: "&rs("cep")&", "&rs("rua")&", "&rs("bairro")&", "&rs("numero")&", "&rs("cidade")&", "&rs("Uf")&" </br>Total pedido: "&rs("total_pedido")&" </br> "& str_html &" </br></br>"&" Atentamente,"&" </br> "&"Equipe Porto dourado"&" </br></br> "&"Para entrar em contato com a equipe de suporte, entre em contato com o email ou ligue para nossa central no numero " objMail.Send Set objMail = nothing envio = true %> <script> alert('email com alteração enviado com sucesso!'); </script> <% end if if estrato = 6 then sql = "exec SP_TR32_adm_data_envio_UPD "&cod&"" dbWeb.execute(sql) end if if estrato = 4 then sql = "exec SP_TR32_adm_data_entregue_UPD "&cod&"" dbWeb.execute(sql) end if %> <script> alert("Dados alterado com sucesso!") parent.location = "cst_pedido.asp" </script> <% end if %> <%call Fechadb()%>  
×

Informação importante

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