• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

Gurzi

RecordSet atrofia-me a vida

7 mensagens neste tópico

<!--#include file="includes/Functions/db.asp"-->
<%

' Valores passados por URL ( GET ) atraves do Ajax

envio = Cint(Request.QueryString("envio"))
idEncomenda =  Request.querystring("id")


Set Rs = CreateObject("ADODB.RecordSet")
Rs.ActiveConnection =  "DRIVER={SQL SERVER};SERVER=" & SERVIDOR & "; " &  _
   " PWD=" & PASSWORD & "; UID=" & UTILIZADOR & "; DATABASE=" & BD & ";"
Rs.CursorType = 0


query ="SELECT OrderFormLineItems.shipping_method_name FROM OrderFormLineItems"&_
" INNER JOIN OrderGroup ON OrderFormLineItems.ordergroup_id = OrderGroup.ordergroup_id "&_
"WHERE(OrderGroup.order_number ='" & idEncomenda & "')"


Rs.open query

local_de_entrega = Rs("shipping_method_name")
'Rs.close

query = "INSERT INTO EnvioDetailed VALUES('" & idEncomenda & "'," & envio & ",'11212', 1 )"
Rs.open query
'Rs.execute query ja tentei mas não deu

Pessoal, Estou farto de tentar fazer isto mas não consigo. Porque raio o 2 query nao funciona ?? o idEncomenda e envio funcionam porque já os testei antes e os outros dois campos estão correctos, um é nvarchar e outro tinyint

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Experimenta por os campos no Insert ..

Insert into EnvioDetailed(idencomenda,envio, ... ) VALUES( ... )

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Experimenta por os campos no Insert ..

Insert into EnvioDetailed(idencomenda,envio, ... ) VALUES( ... )

Acho que istem tem a ver com a cena de abrir record set, fechar recordset. Sinceramente custa-me dizer isto. Mas odeio ASP! :s

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Expermienta fechar e voltar a abrir a ligação...pode ser que resolva :)

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Expermienta fechar e voltar a abrir a ligação...pode ser que resolva :)

Update

--------

Set Rs = CreateObject("ADODB.RecordSet")
Rs.ActiveConnection =  "DRIVER={SQL SERVER};SERVER=" & SERVIDOR & "; " &  _
   " PWD=" & PASSWORD & "; UID=" & UTILIZADOR & "; DATABASE=" & BD & ";"
Rs.CursorType = 0


query ="SELECT OrderFormLineItems.shipping_method_name FROM OrderFormLineItems"&_
" INNER JOIN OrderGroup ON OrderFormLineItems.ordergroup_id = OrderGroup.ordergroup_id "&_
"WHERE(OrderGroup.order_number ='" & idEncomenda & "')"

Rs.open query

local_de_entrega = Rs("shipping_method_name")
Rs.close



query = "INSERT INTO envio VALUES('" & idEncomenda & "'," & envio & ",getDate(),'AGUARDA GUIA','" & local_de_entrega & "')"
Rs.open query
Rs.close



'query2 =" exec usp_insereEnvio '112816',1,1,'23233';"

Rs.open "SELECT COUNT(*) AS x FROM OrderGroup"
Response.write Rs("x")
Rs.close

Funciona tudo bem até ao Rs.open query2

O ultimo Rs nao funciona porque diz que

Error Type:

ADODB.Recordset (0x800A0E78)

Operation is not allowed when the object is closed.

/WikineT/adiciona_lista_espera.asp, line 31

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Suponho que tenhas que definir novamente a ActiveConnection após fazeres o Close

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Suponho que tenhas que definir novamente a ActiveConnection após fazeres o Close

Se isso fosse o código acima não funcionava :s

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora