Wenn ein Lieferschein erfasst wird und dieser zeigt nach dem Speichern (schließen und wieder öffnen) eine falsche Position an, muss in der Tabelle OrderBasket kontrolliert werden, ob es einen Datensatz mit der RecordID 0 gibt. Der Datensatz mit der RecordID 0 in der Tabelle OrderBasket muss gelöscht werden, da sonst alle neuen Lieferscheinpositionen, die aus keiner Bestellung kommen, auf diese Position verweisen!
WICHTIG:
Es wäre hilfreich, wenn vor dem Löschen des Datensatzes ein DB Backup erstellt und dieses als zweite Datenbank eingehängt wird. Über nachfolgendes Statement (DB Namen anpassen) kann ermittelt werden, welche Lieferscheine nochmals erfasst werden müssen.
!!! Die Abfrage muss im Management Studio vom SQL Server ausgeführt werden !!!
select OrStDeliveryNr as Lieferscheinnummer, cast(DAY(LSDatum) as varchar(2)) +'.' +cast(month(LSDatum) as varchar(2))+'.' +cast(year(LSDatum) as varchar(4))
from
(
select x.OrStDeliveryNr, MIN (CreateDate) as LSDatum from
(
select [VCS_Temp]..OrderState.OrStDeliveryNr,[VCS_Temp]..OrderState.CreateDate from [VCS_Temp]..OrderState
where [VCS_Temp]..OrderState.OrStDeliveryNr NOT IN (select isnull([VCS]..OrderState.OrStDeliveryNr,'') from [VCS]..OrderState)) x
group by x.OrStDeliveryNr) y
order by LSDatum
Suchbegriffe: Lieferschein
Erstellt: 28.09.2012 12:02:05 Autor: Pietsch (Zach) Geändert: 08.05.2017 08:09:25 Geändert von: Pietsch ArtikelID: 15718