jag har en tabell AWBStock
-SystemID
-Prefix
-FirstNr
-LastNr
-NrLeft
i min sp så vill jag skicka in systemID och prefix.
och det är här det kniper...
Jag vill nämligen kolla först om prefix finns, och om det finns så vill jag kolla att nrLeft är större än 0.
Om detta stämmer så vill jag hämta ut FirstNr samt uppdatera detta fält med 1 och även dra ifrån 1 från NrLeft.
Kan jag göra detta i en och samma sp?
problemet är att jag inte får ut firstNR från frågan...
mao typ merga ihop dessa på något sätt:
CREATE PROCEDURE sp_GetNextAWB
@SystemID varchar(10),
@Prefix char(3)
AS
SELECT FirstNr
FROM AWBStock
WHERE SystemID = @SystemID AND Prefix = @Prefix
GO
och
CREATE PROCEDURE sp_GetNextAWB
@SystemID varchar(10),
@Prefix char(3)
AS
update awbstock set firstnr = firstnr + 1, nrleft = nrleft - 1
WHERE SystemID = @SystemID AND Prefix = @Prefix
GO
ett annat problem är att firstNR är en varchar(7) detta då numret iblan kan vara 0000000 --> med int så blir det ju 0.
Detta påverkade också firstnr + 1
problemet med att firstnr är varchar är just en gammal lösning så jag vet inte riktigt varför det ser ut som det ser ut... problemet är att tabellen används i en annan lösning så jag kan inte ändra detta.
Skippade den gamla tabellen - kopierar över data tille en ny tabell istället.
Men hur mergar jag de två ovanstående frågorna så att den returnerar ett värde?
jag måste ju köra min select fråga innan updatefrågan...