Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Ola a todos
Estou aqui novamente procurando uma solução!
criei uma prcedure num banco sql server 7 e ela me retorna um erro de execução
bom 1º queria saber se a sql esta bem montada.
bom 2º sera que a ordem emque o dados estao dispostos difere na intrução sql?
bom 3º onde eu erei Deus
o codigo e o seguinte
DADOS PARA PROCEDURE.
<BR>
<br>
NUMREG_FORN :
<% NUMFOR = session("id")
response.write NUMFOR %> ' esta ok funcioa
<br>
NUMREG_COTACAO: <%NUMCOT = rs(0)
RESPONSE.WRITE NUMCOT %>' esta ok funcioa
<br>
NUMREG_COTACAO_ITENS: <%NUMCOTITEM = rs(1)
RESPONSE.WRITE NUMCOTITEM%>' esta ok funcioa
<br>
NUMREG_ITENS: <%NUMITEM = rs(2)
RESPONSE.WRITE NUMITEM%>' esta ok funcioa
<BR>
TAREFA: <%I = ("INSERIR")
RESPONSE.WRITE I%>' esta ok funcioa
<BR>
CUSTO:
<%
A = REQUEST.FORM(RS(2))
'response.clear
response.write a
%>' esta ok funcioa
<BR>
QUANTIDADE:
<%QT = rs(6)
RESPONSE.WRiTE QT%>' esta ok funcioa
<%
sql "execute sp_Inclui_Categorias "&I&",'"&NUMCOT&"','"&NUMCOTITEM&"','"&NUMITEM&"','"&NUMFOR&"','"&A&"'"
set rs = objConn.Execute(sql)
rs.movefirst
While not rs.eof
' este e o erro
Tipo de erro:
Erro de tempo de execução do Microsoft VBScript (0x800A000D)
Tipos incompatíveis: 'sql'
>
Ola a todos
Estou aqui novamente procurando uma solução!
criei uma prcedure num banco sql server 7 e ela me retorna um erro de execução
bom 1º queria saber se a sql esta bem montada.
bom 2º sera que a ordem emque o dados estao dispostos difere na intrução sql?
bom 3º onde eu erei Deus
o codigo e o seguinte
DADOS PARA PROCEDURE.
NUMREG_FORN :
<% NUMFOR = session("id")
response.write NUMFOR %> ' esta ok funcioa
<br>
NUMREG_COTACAO: <%NUMCOT = rs(0)
RESPONSE.WRITE NUMCOT %>' esta ok funcioa
<br>
NUMREG_COTACAO_ITENS: <%NUMCOTITEM = rs(1)
RESPONSE.WRITE NUMCOTITEM%>' esta ok funcioa
<br>
NUMREG_ITENS: <%NUMITEM = rs(2)
RESPONSE.WRITE NUMITEM%>' esta ok funcioa
<BR>
TAREFA: <%I = ("INSERIR")
RESPONSE.WRITE I%>' esta ok funcioa
<BR>
CUSTO:
<%
A = REQUEST.FORM(RS(2))
'response.clear
response.write a
%>' esta ok funcioa
<BR>
QUANTIDADE:
<%QT = rs(6)
RESPONSE.WRiTE QT%>' esta ok funcioa
<%
sql "execute sp_Inclui_Categorias "&I&",'"&NUMCOT&"','"&NUMCOTITEM&"','"&NUMITEM&"','"&NUMFOR&"','"&A&"'"
set rs = objConn.Execute(sql)
rs.movefirst
While not rs.eof
' este e o erro
Tipo de erro:
Erro de tempo de execução do Microsoft VBScript (0x800A000D)
Tipos incompatíveis: 'sql'
Bem William Penaforte , sem ver o código fonte da sua SP (Stored Procedure), sem saber qual a definição dos campos das mesma e com base na mensagem de erro, tudo leva a crer que você está passando dados de tipo incompativeis.
Exemplo: Se sua SP tem um campo do tipo NUMERIC(5) e você resolve passar um valor do tipo STRING para esse campo não irá funcionar.
Logo aconselho a você duas coisas básicas no trato junto à SP, primeiro definina corretamente o tipo de cada parametro (e campo) da sua SP e sempre faça referência do nome do campo na sua página ASP, pois amanhã na hora da manutenção facilitará a sua vida. Segue abaixo um pequeno exemplo de SP e chamada em ASP.
Stored Procedure.
CREATE STORED PROCEDURE DBO.SP_MEUTESTE(
@CAMPO1 NUMERIC(5),
@CAMPO2 VARCHAR(50)
@CAMPO3 DATETIME
AS
SELECT @CAMPO1, @CAMPO2, @CAMPO3
----*
ASP:
<%
Set rs = Server.CreateObject ("ADODB.RECORDSET")
sql = "EXECUTE SP_MEUTESTE @CAMPO1=" & variavel1 & " ,@CAMPO2 = '" & Trim(variavel2) & "', @campo3 ='" & Cdate(variavel3) & "'"
SET RS = objConn.Execute(sql)
If not RS.EOF Then
......sua implementação vai aqui....
End if
rs.close
set rs = nothing
Espero ter ajudado, abraços e boa sorte.