utknąłem na tworzeniu warunku, który będzie wyświetlał komunikat o błędzie, jeżeli na dokumencie sprzedaży pojawią się towary z różnych grup.
Powinno być tak, że jeżeli jeden z towarów będzie miał grupę 27 i jakikolwiek inny będzie z grupy różnej od 27, to ma się wyświetlić komunikat błędu.
Trigger jest na tabeli dok_Pozycja
SELECT @pid = ob_DokHanId FROM inserted
SELECT @tow = ob_TowId FROM inserted
SELECT @typ = dok_Typ from dok__Dokument where dok_Id = @pid
SELECT @dhan = ob_DokHanLp from INSERTED
SELECT @dkat = dok_KatId FROM dok__Dokument where dok_DoDokId = @pid
SELECT @grup = tw_IdGrupa FROM tw__Towar WHERE tw_Id = @tow
IF (@typ = 21 OR @typ = 2)
AND
(@dhan = 1 OR @dhan = 2 OR @dhan = 3) AND (@grup = 27 AND @grup <> 27)
RAISERROR('<msg>Dla towaru Komisowego, na dokumencie mogą być tylko telefony z Komisu.</msg>', 16, 1)
czyli, jeżeli mam towar na pozycji 1,2 lub 3 i któryś z tych towarów jest grupy 27 a inny z różnej od 27, to jest błąd. Tym czasem błąd chyba robię na tym (@grup = 27 AND @grup <> 27). Ktoś mnie naprowadzi?