Kom ihåg mig?
Home Menu

Menu


Stored procedure för att ändra orderstatus.

Ämnesverktyg Visningsalternativ
Oläst 2010-07-29, 18:14 #1
allstars allstars är inte uppkopplad
Klarade millennium-buggen
 
Reg.datum: Apr 2006
Inlägg: 2 126
allstars allstars är inte uppkopplad
Klarade millennium-buggen
 
Reg.datum: Apr 2006
Inlägg: 2 126
Standard Stored procedure för att ändra orderstatus.

Jag har en service som skall göra olika saker beroende vad det är för produkt i en databastabell "OrderItems".
Kanske går det inte att ta för givet att hela ordern har hanterats så därför skulle jag behöva göra en Stored Procedure som räknar ingående OrderItems till en Order och om lika många ingående OrderItems är satta till IsHandled = 1 så skall Shippingstatus ändras.

Kod:
UPDATE Order Set ShippingStatus = 3
WHERE ShippingStatus = 1
AND ("där alla ingående artiklarna har IsHandled=1")
Kan någon visa mig i rätt riktning?!
Tack på förhand.
allstars är inte uppkopplad   Svara med citatSvara med citat
Oläst 2010-07-30, 08:55 #2
allstars allstars är inte uppkopplad
Klarade millennium-buggen
 
Reg.datum: Apr 2006
Inlägg: 2 126
allstars allstars är inte uppkopplad
Klarade millennium-buggen
 
Reg.datum: Apr 2006
Inlägg: 2 126
Så här blev det till slut.
Kod:
UPDATE [Order] SET ShippingStatus = 3 WHERE ID IN (
	SELECT DISTINCT o.ID from [Order] o
	INNER JOIN [OrderItem] oi ON o.ID = oi.OrderID
	WHERE o.ShippingStatus = 1
	GROUP BY o.ID
	HAVING MIN(CAST(oi.IsHandled as int)) = 1
	)
Och det fungerar jättebra!
allstars är inte uppkopplad   Svara med citatSvara med citat
Svara


Aktiva användare som för närvarande tittar på det här ämnet: 1 (0 medlemmar och 1 gäster)
 

Regler för att posta
Du får inte posta nya ämnen
Du får inte posta svar
Du får inte posta bifogade filer
Du får inte redigera dina inlägg

BB-kod är
Smilies är
[IMG]-kod är
HTML-kod är av

Forumhopp


Alla tider är GMT +2. Klockan är nu 19:05.

Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson
 
Copyright © 2017