CREATE OR ALTER PROCEDURE [dbo].[Prc_P_PurchaseOrderAfterSave] @Id uniqueidentifier, @UserId uniqueidentifier = NULL AS BEGIN SET NOCOUNT ON; DECLARE @Act nvarchar(16) = (SELECT PendingAction FROM Prc_T_PurchaseOrder WHERE Id = @Id); UPDATE o SET PaymentTermId = ISNULL(o.PaymentTermId, c.PurchasePaymentTermId), IncotermId = ISNULL(o.IncotermId, c.PurchaseIncotermId), IncotermLocation = ISNULL(o.IncotermLocation, c.PurchaseIncotermLocation), BuyerUserId = CASE WHEN o.LastModificationTime IS NULL AND c.BuyerUserId IS NOT NULL THEN c.BuyerUserId ELSE o.BuyerUserId END FROM Prc_T_PurchaseOrder o INNER JOIN Adm_T_Contact c ON c.Id = o.SupplierId WHERE o.Id = @Id; EXEC Prc_P_PurchaseOrderRecalc @Id; -- Durum butonlari islemi PendingAction alanina yazip ekranin guncelleme ucuyla kaydeder. IF @Act IS NOT NULL EXEC Prc_P_PurchaseOrderSetStatus @Id, @Act, @UserId; END