Passar parâmetro de uma página asp .net para uma página asp

21/02/2010

Rodrigo, preciso passar vários campos de uma tabela por parâmetro de uma página asp .net para uma página asp, não tô conseguindo por causa do limite de 256 caracteres do querystring. vc pode me ajudar como fazer isto? talvez com arquivo texto ou outra opção? obrigado, Melk.
Melkcimar Costa

Melkcimar Costa

Curtidas 0

Respostas

Rodrigo Mourão

Rodrigo Mourão

21/02/2010

Olá Amigo !!!!

Realmente o metodo GET (Via URL) tem este limite. Temos duas opçoes (forma mais fácil). Uma delas e criar um form asp net e redirecionar o metodo action para sua pagina asp.

A outra forma e utilizando hide field que seriam campos ocultos em uma pagina asp net.

Agora eu precisaria saber como e de onde vem este parametro para quem sabe fazer um exemplo ou dar um sugestão melhor. Como você esta fazendo atuamente ???

Fico no aguardo !!

Abs!1

GOSTEI 0
Melkcimar Costa

Melkcimar Costa

21/02/2010

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.
GOSTEI 0
Rodrigo Mourão

Rodrigo Mourão

21/02/2010

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!

GOSTEI 0
Melkcimar Costa

Melkcimar Costa

21/02/2010

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        
GOSTEI 0
Rodrigo Mourão

Rodrigo Mourão

21/02/2010

Ola´Amigo,


Po ta ruim de entender esse lance aqui, as imagens nao foram carregadas nao tem como colocar no word e me mandar compactado. Ajuda.

abs !!!


GOSTEI 0
Melkcimar Costa

Melkcimar Costa

21/02/2010

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.
GOSTEI 0
Rodrigo Mourão

Rodrigo Mourão

21/02/2010

Olá Meu camarada.

Infelizmente a devmedia nao permite interação por email somente por aqui.

Tente usar o disco virtual para me postar ou um serviço como Adrive, 4Share ou similar.


Abs !!

GOSTEI 0
Melkcimar Costa

Melkcimar Costa

21/02/2010

Rodrigo, blz, taí o link: http://www.adrive.com/public/f6725a9897e3fa13d5da632b83b314044731417e3a38e7be2bb631c9b7de73d2.html Um abraço, Melk.
GOSTEI 0
Rodrigo Mourão

Rodrigo Mourão

21/02/2010


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,

GOSTEI 0
Melkcimar Costa

Melkcimar Costa

21/02/2010

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.
GOSTEI 0
Rodrigo Mourão

Rodrigo Mourão

21/02/2010

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,

GOSTEI 0
Rodrigo Mourão

Rodrigo Mourão

21/02/2010

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,

GOSTEI 0
Rodrigo Mourão

Rodrigo Mourão

21/02/2010

Olá Amigo, Podemos ajudar em algo mais? Estamos aguardando para encerrar o chamado !! Att,
GOSTEI 0
Melkcimar Costa

Melkcimar Costa

21/02/2010

não consegui, mas pode fechar o chamado, obrigado, vou pesquisar na internet.
GOSTEI 0
POSTAR