23/02/2010
Melkcimar Costa
Os dados vem de uma página Asp .net onde busco do banco de dados em um DataReader e quero passar estes campos do DataReader (Nome, Data de Emissão, Vencimento, Valor, etc) pra emitir um boleto bancário que foi feito em uma página Asp.
24/02/2010
Rodrigo Mourão
Olá,
Bem ai a coisa e um pouco mais detalhes pois esses script de geração de boletos tem um padrão para se passar o parâmetros, tem que ter o nome correto, tamanho correto, etc.
É preciso verificar se podemos passar os valores via metodo POST pois como vc disse pelo GET (URL) esta excedendo o limite. Se ele não aceitar enviar os parametros via POST então terá que ser via URL mesmo e reduxzir algo.
Você tem a documentação deste script para me enviar ou então verificar se ele aceita que os valores sejam enviamos via metodo POST ???
Fico no aguardo !!!!
Abs!
24/02/2010
Melkcimar Costa
blz, então vai abaixo, é o boleto da netdinamica, comprei a versao asp, ele tem a versao asp .net tb, mas no site eles não colocaram a opção asp .net, tentei obter o desconto nela por ter comprado a versao asp por engano e sem saber, por culpa deles, mas não teve jeito, o cara é ruim de negócio, simplesmente me falou, compre a versão .net, ou seja paguei 77,00 ele quer me vender a .net por 99,00.
Por isto preciso de sua ajuda, mas se não tiver jeito mesmo vou ter de comprar a versão .net.
x13 Then
x32 = Right(x126, x13)
Else
x32 = x126
End If
End Function
Function x16(x15, x36, x94)
Dim x87, x69, x45
x45 = x36 + 1
x87 = ""
Do
If IsNumeric(Mid(x15, (x45), 1)) Then
x87 = x87 & Mid(x15, (x45), 1)
x45 = x45 + 1
End If
Loop While IsNumeric(Mid(x15, (x45), 1))
For x69 = 1 To x87
x94 = x94 & (x91(53))
Next
x36 = x36 + 2
x16 = x94
End Function
Function x23(x15)
For x18 = 1 To Len(x15) Step 3
x78 = 0 : x78 = Mid(x15, (x18), 3) : x94 = x94 & x91(x78)
Next
x23 = x94
End Function
Function x31(x36)
Dim x59, x30, x173, x68, x82, x120, x113
x68 = 2
For x59 = 1 To 43
x113 = Mid(Right(x36, x59), 1, 1)
If x68 > 9 Then
x68 = 2: x30 = 0
End If
x30 = x113 * x68: x173 = x173 + x30: x68 = x68 + 1
Next
x82 = x173 Mod 11
x120 = 11 - x82
If x120 = 0 Or x120 = 1 Or x120 > 9 Then
x31 = 1
Else
x31 = x120
End If
End Function
Function x102(x124)
Dim x59, x30, x173, x68, x82, x25
If Not IsNumeric(x124) Then
x102 = ""
Exit Function
End If
x68 = 2
For x59 = Len(x124) To 1 Step -1
x30 = CInt(Mid(x124, x59, 1)) * x68
If x30 > 9 Then
x30 = CInt(Left(x30, 1) + CInt(Right(x30, 1)))
End If
x173 = x173 + x30
If x68 = 2 Then
x68 = 1
Else
x68 = 2
End If
Next
x25 = (x173 / 10) * -1: x25 = Int([x25]) * -1: x25 = x25 * 10
x82 = x25 - x173: x102 = x82
If x102 = 10 Then x102 = 0
End Function
Function x158(x36)
Dim x59, x30, x173, x68, x82, x120, x113, x172
x172 = Len(x36)
x68 = 2
For x59 = 1 To x172
x113 = Mid(Right(x36, x59), 1, 1)
If x68 > 9 Then
x68 = 2: x30 = 0
End If
x30 = x113 * x68: x173 = x173 + x30: x68 = x68 + 1
Next
x82 = x173 Mod 11
x120 = 11 - x82
If x120 > 9 Then
x158 = 0
Else
x158 = x120
End If
End Function
Function x77(x36, x66, x92, x142)
Dim x112, x55, x42, x65, x105, x87, x69, x45
x112 = Left(x36, 9): x55 = Mid(x36, 10, 10): x42 = Right(x36, 10)
x105 = CCur(x142): x65 = x32(x105, 10)
x87 = x102(x112): x69 = x102(x55): x45 = x102(x42)
x112 = Left(x112 & x87, 5) & "." & Right(x112 & x87, 5)
x55 = Left(x55 & x69, 5) & "." & Right(x55 & x69, 6)
x42 = Left(x42 & x45, 5) & "." & Right(x42 & x45, 6)
x77 = x112 & " " & x55 & " " & x42 & " " & x66 & " " & x92 & x65
End Function
Function x17(x108, x140, x106, x142, x58)
Dim x116, x146, x75, x46
If x106 "" Then
x75 = CDate("7/10/1997")
x146 = DateDiff("d", x75, CDate(x106))
Else
x146 = "0000"
End If
x142 = Int(x142 * 100)
x116 = x108 & x140 & x146 & x32(x142, 10) & x58: x46 = x31(x116)
x17 = (Left(x116, 4) & x46 & Right(x116, 39))
End Function
Function x147(x108, x140, x106, x142, x58)
Dim x116, x146, x75, x46
If x106 "" Then
x75 = CDate("7/10/1997")
x146 = DateDiff("d", x75, CDate(x106))
Else
x146 = "0000"
End If
x142 = Int(x142 * 100): x116 = x108 & x140 & x146 & x32(x142, 10) & x58
x46 = x31(x116): x147 = x77(x108 & x140 & x58, CStr(x46), x146, x32(x142, 10))
End Function
Function x91(x78)
x91 = Mid(x135, x78, 1)
End Function
x64 = x32(x64, 8)
x157 = x32(x157, 4)
x128 = "104" ' número do banco (Caixa)
x19 = "9"
x101 = FormatNumber((x101), 2, -2, -2, -2)
x83 = x32(x83, 4)
x103 = x83 & "." & x9 & "." & x64 '"0240.870.00000026" 'agencia completa
x127 = x103 & "-" & dac_conta
If x10 = "8" Then
v_cart="SR"
x81 = x32(x81, 14) ' (14 posições para carteira 8) SR Eletrônica
x89 = x81
x119 = "8" & CStr(x81) ' N/número será o 8 + nº do ped ou doc com 14 dígitos
x64 = x32(x64,5)
x5 = x64 & x83 & x10 & "7" & x81 ' carteira SR (8)
x104 = Left(x119, 6) & Right(x119, 9) & "-" & x158(x32(x119, 15)) ' nosso número completo
ElseIf x10 = "80" Or x10 = "81" Or x10 = "82" or x10 = "00" Then
' aqui código para carteira 80, 81 ou 82 SR Convencional
if x10 = "00" then
v_cart= "CS"
else
v_cart="SR"
end if
x81 = x32(x81, 8) ' (8 posições para carteira 80, 81 ou 82)
x89 = x81
x119 = x10 & CStr(x81) ' N/número será o 80 ou 81 ou 82 + nº do ped ou doc com 8 dígitos
x5 = x119 & x83 & x9 & x32(x64, 8) ' carteira SR (8)
x104 = x119 & "-" & x158(x32(x119, 10)) ' nosso número completo
ElseIf x10 = "9" or x10="3" Then
' aqui código para carteira = de 9 CR (Carteira rápida)
v_cart="CR"
x81 = x32(x81, 9) ' (9 posições para carteira 9)
x89 = x81
x119 = x10 & CStr(x81) ' N/número será o 9 + nº do ped ou doc com 9 dígitos
x5 = x119 & x83 & x9 & x32(x64, 8) ' carteira CR (9)
x104 = x119 & "-" & x158(x32(x119, 10)) ' nosso número completo
ElseIf x10 = "1" or x10 = "01" or x10 = "99" or x10="90" then
x64 = x32(x64, 6)
x81 = x32(x81, 16)
if x10 = "90" or x10 = "01" or x10 = "1" then
x81 = "90" & x81
v_cart = x10
else
x81 = "99" & x81
v_cart = "01"
end if
x5 = "1" & x64 & x81
dac_nn = x158(x81)
x81 = x81 & "-" & dac_nn
x104 = x81
x127 = x83 & "/" & x64 ' & "-" & dac_conta
elseif x10 = "SR5" then
x64 = x32(x64, 5)
x81 = x32(x81, 17)
x5 = "1" & x64 & x81
x81 = "9" & x81
v_cart = "SR5"
dac_nn = x158(x81)
x81 = x81 & "-" & dac_nn
x104 = x81
x127 = x83 & "/" & x64 ' & "-" & dac_conta
elseif x10 = "24" then
v_cart="SR"
x89 = x32(x81, 15)
x81 = "24" & x32(x81, 15) ' NN
x83 = x32(x83, 4) ' Agencia
x64 = x32(x64, 6) ' Conta
dac_conta = x32(dac_conta,1)
'x119 = "24" & CStr(x81)
nn1 = mid(x89,1,3)
nn2 = mid(x89,4,3)
nn3 = mid(x89,7,9)
x89 = x81
x5 = x64 & dac_conta & nn1 & "2" & nn2 & "4" & nn3
dacL = x158(x5)
x5 = x64 & dac_conta & nn1 & "2" & nn2 & "4" & nn3 & dacL
x104 = x81 & "-" & x158(x81)
x127 = x83 & "/" & x64 & "-" & dac_conta
else
response.Write("Carteira Inválida")
response.end
End If
x123 = x17(x128, x19, x33, CCur(x101), x5)
x57 = x147(x128, x19, x33, CCur(x101), x5)
if x33 = "" then x33 = "Contra Apresentação"
%>
NetDinamica - Boleto Caixa em ASP ou PHP
Instruções
de ImpressãoImprimir
em impressora jato de tinta (ink jet) ou laser em qualidade normal. (Não use modo
econômico).
Utilize folha A4 (210 x 297 mm) ou Carta (216 x 279 mm) - Corte
na linha indicada
Recibo
do Sacado
104-0
CedenteAgência/Código
do CedenteEspécie
Número
do documentoCPF/CNPJVencimentoValor
documento
(-)
Desconto / Abatimentos(-)
Outras deduções(+)
Mora / Multa(+)
Outros acréscimos(=)
Valor cobradoSacado
InstruçõesAutenticação
mecânica
Recibo do Sacado - Corte na linha pontilhada
104-0
Local
de pagamentoVencimentoPREFERENCIALMENTE NAS CASAS LOTÉRICAS E AGÊNCIAS DA CAIXA
CedenteAgência/Código
cedente
Data
do documento
Numero do documento
Espécie
doc. Aceite
Data
processamento Nosso
número
Uso
do banco Carteira
Espécie
Quantidade
Valor
(=)
Valor documento
Instruções
(Texto de responsabilidade do cedente)
(-)
Desconto
(-)
Outras Deduções/ Abatimentos
(+)
Mora/Multa/Juros
(+)
Outros acréscimos (=)
Valor cobrado
Sacado
Cód.
baixaSacador/AvalistaAutenticação
mecânica - Ficha de Compensação
src=imagens/p.gif width= height= border=0>
Corte
na linha pontilhada
25/02/2010
Melkcimar Costa
Rodrigo, meu amigo, me desculpe! não tinha visto a bagunça q te enviei.
Não consegui fazer o upload pela página do suporte, incluí o arquivo txt da página asp, mas deu erro dizendo que a imagem estava em formato incorreto, apesar de no texto da página do upload dizer que aceitaria doc, txt, etc.
Mando pra vc por algum email?
Obrigado.
26/02/2010
Rodrigo Mourão
Olá Melk,
Bem este script e muito confuso. Eu analisei mas sinceramente nao entedi.
Qual função deve chamar, como devo passar os parametros e detalhe pelo que entendi ele e uma coleção de funcção em asp para que via as vc possa chamar as funcções e gerar o boleto.
Até onde eu sei nao não da para chamar funcões asp via asp.net. Seria o mesmo que via PHP tentar chamar essas funcções.
Não tem uma documentação ????
Att,
01/03/2010
Melkcimar Costa
Rodrigo, vou tentar explicar de uma outra maneira pra ver se vc consegue me ajudar, favor esquecer o codigo q te mandei, vamos lá!
Exemplo:
Em uma página asp .net tenho 4 TextBox, depois de preenchidos, quero clicar em um Button e este Button redirecionará para uma página asp, transferindo o conteúdo dos 4 TextBox para a página Asp.
No início da página Asp defino 4 variáveis e atribuo a cada uma delas o conteúdo dos TextBox da página asp .net, depois disto preciso apenas fazer um Response.Write do conteúdo destas variáveis.
Claro que precisamos considerar que o conteúdo dos 4 TextBox excede 255 caracteres, o que nos impede de passar por URL.
Lembrando: com um texto menor que 255 caracteres consegui transferir via URL.
Espero ter sido claro, preciso mesmo desta ajuda.
Obrigado,
Melk.
02/03/2010
Rodrigo Mourão
Blz, simplificou !!!
Vamos passar os parametros via metodo POST, ou seja, junto com a requisição. Eu não saco nada de asp so asp.net entao vc vai ter que ver como pegar o parametro lá.
Me da alguns minutos, vou fazer o teste e te post aqui.
Att,
03/03/2010
Rodrigo Mourão
Olá Melk,
tive problema na minha VM. Segue código.
Crie o Form no asp.net normalmente. Altere os nomes dos TextBox pois será atraves destes mnomes que vc vai pegar os valores.
Feito isso va no no arquivo aspx e onde tem a linha:
<form runat="server" >
Altera para:
<form runat="server" action="minhapagina.asp">
Onde minhapagina.asp e o scrips asp para onde vc quer mandar os dados.
Agora para pegar os dados em asp eu já nao sei como faz pois nao programo em asp mas um busca rapida no google deve resolver.
Att,