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 :)