webForumDet fria alternativet

stored procerure problem... buhu

1 svar · 246 visningar · startad av hopparn

hopparnMedlem sedan nov. 20011 551 inlägg
#1

Hej
Jag har ett problem, jag är inte sådär 100% ig i min SQL/asp kunskap som jag skulle vilja.

jag har en tabell med kundid samt artikelnummer och ett datumfält. det kan t ex ligga 110 st artiklar med olika datum men med samma kundid i denna tabellen. Jag vill nu kunna presentera t ex alla förändringar den senaste månaden el dyl baserat på datum. Mitt problem är att jag inte får till frågan, jag får felmeddelande som lyder "Implicit conversion from data type datetime to int is not allowed. Use the CONVERT function to run this query. " vilket jag inte förstår alls, datatyperna i tabellen är rätt ju...?!?!

jag skickar med koden för sp:n

*********************
CREATE PROCEDURE sp_DAF_subscr_changes_web
@DAFID INT,
@dokid INT ,
@begin_date datetime,
@end_date datetime,@change_date datetime OUTPUT,
@description Varchar (50) OUTPUT

AS
SET NOCOUNT ON

SELECT @dafid=a.customerid, @dokid=a.dokid, @change_date=a.change_date, @description=b.description
FROM tabell a, tabell b
WHERE (a.customerid = @dafid) AND (a.change_date BETWEEN @begin_date AND @end_date)
AND a.dokid=b.dokid

IF (@@ERROR <> 0) GOTO on_error
RETURN 0

on_error:
RETURN 1

************************
på sidan gör jag för tillfället såhär men vet ej riktigt var det felar....

************************
DIM sqlConn
SET sqlConn = Server.CreateObject("ADODB.Connection")
sqlConn.Open "Provider=SQLOLEDB;Data Source=server;Database=databas;UID=XXXXX;PWD=XXXXXXXXX"

DIM sqlComm,begin_date,end_date
SET sqlComm = Server.CreateObject("ADODB.Command")
SET sqlComm.ActiveConnection = sqlConn
begin_date=date-100
end_date = date-7
sqlComm.CommandType = adCMDStoredProc
sqlComm.CommandText = "sp_DAF_subscr_changes_web"
sqlComm.Parameters.Append sqlComm.CreateParameter("return_value", adInteger, adParamReturnValue)

sqlComm.Parameters.Append sqlComm.CreateParameter("dafid", adInteger, adParamInput)
sqlComm.Parameters("dafid") = 11
sqlComm.Parameters.Append sqlComm.CreateParameter("begin_date", adDBTimeStamp, adParamInput)
sqlComm.Parameters("begin_date") = begin_date
sqlComm.Parameters.Append sqlComm.CreateParameter("end_date", adDBTimeStamp, adParamInput)
sqlComm.Parameters("end_date") = end_date

sqlComm.Parameters.Append sqlComm.CreateParameter("description", adVarChar, adParamOutput,50)
sqlComm.Parameters.Append sqlComm.CreateParameter("change_date", adDBTimeStamp, adParamOutput)
'sqlComm.parameters.refresh

DIM ErrorMessage
IF ExecuteCommand(sqlconn, sqlComm, ErrorMessage) THEN

response.write "<TABLE Border=""1"" Cellspacing=""2"" Cellpadding=""2"">"
Response.Write("<TR>")
Response.Write("<TD>" & sqlcomm.parameters("description").value &"</TD>")
Response.Write("<TD>" & sqlcomm.parameters("change_date").value & "</TD>")
Response.Write("</TR></TABLE>")

ELSE
response.write "Fel som fan!!!!! <br>"
response.write errormessage
end if
%>

***************************

snälla, kan nån fylla i mina misstag med lite kunskap? Jag inser nyttan av att arbeta med denna typ av tekniker men behöver få lite mer på fötterna känner jag :)

hopparnMedlem sedan nov. 20011 551 inlägg
#2

bra karl...

...reder sig själv ;)

126 ms totalt · 3 externa anrop · v20260731065814-full.0e50b1ef
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
123 ms — hämta tråd, inlägg och bilagor (db)