Torna al Thread
CREATE TRIGGER dbo.OrdiniFornitori_DataUltimaSpedizione
ON dbo.OrdiniFornitori
INSTEAD OF INSERT
AS
BEGIN
SET NOCOUNT ON;
DECLARE @L_DataUltimaSpedizione smalldatetime
DECLARE @P_DataUltimaSpedizione smalldatetime
-- inserted è una tabella creata automaticamente dal trigger. Contiene i dati che stanno per essere inseriti
-- questo perchè siamo in un trigger instead of.
-- ricavo i valori che sto per inserire o aggiornare (ProformaInvoices e LettereDiCredito)
SELECT @P_DataUltimaSpedizione = dataUltimaSpedizione FROM dbo.ProformaInvoices WHERE FK_idOrdineFornitore = INSERTED.PK_idOrdineFornitore
SELECT @L_DataUltimaSpedizione = dataUltimaSpedizione FROM dbo.LettereDiCredito WHERE FK_idOrdine = INSERTED.PK_idOrdineFornitore
IF @P_DataUltimaSpedizione IS NOT NULL
-- INSERT INTO dbo.OrdiniFornitori.. usando la variabile @P_DataUltimaSpedizione
IF @P_DataUltimaSpedizione IS NULL AND @L_DataUltimaSpedizione IS NOT NULL
-- INSERT INTO dbo.OrdiniFornitori.. usando la variabile @L_DataUltimaSpedizione 0
IF @P_DataUltimaSpedizione IS NULL AND @L_DataUltimaSpedizione IS NULL
-- INSERT INTO dbo.OrdiniFornitori.. col campo Inserted.dataUltimaSpedizione
-- fine
END
GO