Hur kan jag skriva om denna så att Shift kan vara tomt?
CREATE PROCEDURE sp_productionlog_sum_week
@Shift int,
@Current_date datetime
AS
SELECT Sum(Pr.St), Sum(Pr.Kg), Sum(Pr.Totkg), Sum(pr.Stoptime), Sum(Pr.Prodtime)
FROM puuser.Productionlogtbl Pr
Where Pr.Shift = @Shift And DatePart(year,Pr.Regdate) = year(@Current_date) And
DatePart(week,Pr.Regdate) = DatePart(week,@Current_date)
GO
LarsGMedlem sedan dec. 200012 464 inlägg Where coalesce(Pr.Shift,@shift) = @Shift
eller menar du @shift eller båda?
Från asp-sidan hämtar jag så här
Set rs_sum_week = objConn.execute("sp_productionlog_sum_week " & Shift & ", '" & First_date & "' ")
Variabeln Shift kan ibland vara helt tom, går det att göra nån if-tagg (typ) innuti proceduren?
@ndersMedlem sedan juni 200032 969 inlägg Varför inte göra en if-sats på asp-sidan?
Grejjen är att om Shift är tomt så ska alla Shift visas.
Hm, visst skulle jag ju kunna skriva:
Where Pr.Shift In (@Shift) And .....
Och så matar jag in alla Shift istället för tomt.
Förstår ni eller är jag för otydlig?
Hjälp!
Bör man inte kunna skriva nått i stil med:
Where (Case When Len(@shift) <> 0 Then Pr.Shift = @Shift) And....
Jag börjar om igen efter ett par misslyckade försök med olika kodningar :(
CREATE PROCEDURE sp_productionlog_sum_week
@Shift int,
@Current_date datetime
AS
SELECT Sum(Pr.St), Sum(Pr.Kg), Sum(Pr.Totkg), Sum(pr.Stoptime), Sum(Pr.Prodtime)
FROM puuser.Productionlogtbl Pr
Where Pr.Shift = @Shift And DatePart(year,Pr.Regdate) = year(@Current_date) And
DatePart(week,Pr.Regdate) = DatePart(week,@Current_date)
GO
Shift = Request.Form("Shift")
First_date = Ett datum
Set rs_sum_week = objConn.execute("sp_productionlog_sum_week " & Shift & ", '" & First_date & "' ")
Variabeln Shift kan alltså vara tom, tex. när man kommer in på sidan första gången.
Man bör väl kunna kolla i proceduren om @Shift får ett värde så ska värdet användas annars ska Pr.Shift ignoreras och alltså visa alla, eller?
LarsGMedlem sedan dec. 200012 464 inlägg Where coalesce(@shift,pr.shift) = pr.Shift
Det närmar sig!
Jag reagerade inte på ditt svar LarsG förra gången pga. att det blev fel
då med, och då trodde jag att du missförstod mig.
I alla fall, får inte @Shift nått värde nu så visas ingen post, kan
man vända på nått i koden? den ska alltså visa alla poster. :)
Jahapp då är det bevisat! jag är ordblind!!!
Du skrev ju inte lika som förra gången.
Skit samma nu funkar det, jag skickar in ett null-värde om request.form("shift") är tomt inte en tom sträng.