Files
C2P/C2P_Project/dbo/Stored Procedures/dbo.stp_QLS_UpdHead.sql
T
Samuele E. Locatelli 76452aa4dd Refresh Progetto DB
2014-10-21 16:42:06 +02:00

86 lines
2.5 KiB
Transact-SQL

-- =============================================
-- Author: Steamware - S.E.L.
-- Create date: 2014.05.16
-- Description: update di un record in QL (Full) TIPO SIMULAZIONE e poi aggiorna a cascata
-- =============================================
CREATE PROCEDURE [dbo].[stp_QLS_UpdHead]
(
@Original_QuoteType CHAR(1) = 'S',
@Original_CodQuote BIGINT = 0,
@Original_QuoteRev INT = 0,
@CodClient NVARCHAR(50) = '',
@CodItem NVARCHAR(50) = '',
@UnitWeight DECIMAL(9, 3) = 0,
@CodItemGroup NVARCHAR(50) = '',
@RawMat NVARCHAR(50),
@RawMatCost DECIMAL(18, 6),
@RawMatExtraCost DECIMAL(18, 6),
@BatchQty INT,
@CodInco NVARCHAR(5),
@ProvvCost DECIMAL(18,6),
@Note NVARCHAR(2500) = ''
)
AS
SET XACT_ABORT ON;
BEGIN TRAN
-- aggiorno valori QuoteList!
UPDATE QuoteList
SET CodClient = @CodClient
, CodItem = @CodItem
, RawMat = @RawMat
, BatchQty = @BatchQty
, CodInco = @CodInco
, Note = ISNULL(@Note,'')
, CodItemGroup= @CodItemGroup
, UnitWeight = @UnitWeight
WHERE QuoteType = @Original_QuoteType
AND CodQuote = @Original_CodQuote
AND QuoteRev = @Original_QuoteRev
-- aggiorno valori QuoteRM
UPDATE QuoteRM
SET RawMat = @RawMat
, RawMatCost = @RawMatCost
, RawMatExtraCost = @RawMatExtraCost
WHERE QuoteType = @Original_QuoteType
AND CodQuote = @Original_CodQuote
AND QuoteRev = @Original_QuoteRev
-- @CodDiesGroup
DECLARE @CodDiesGroup NVARCHAR(50) = ''
SELECT @CodDiesGroup = ValPar
FROM QuoteSimPar
WHERE QuoteType = @Original_QuoteType
AND CodQuote = @Original_CodQuote
AND QuoteRev = @Original_QuoteRev
AND NomePar = 'CodDiesGroup'
-- scambio ultimo valore
SELECT @CodDiesGroup = ISNULL(REPLACE(@CodDiesGroup, '-' + dbo.f_GetSubstring(@CodDiesGroup,'-' , 4), '-'+@CodItemGroup), '' )
EXEC stp_QSP_upsert @Original_QuoteType, @Original_CodQuote, @Original_QuoteRev, 'CodDiesGroup', @CodDiesGroup
EXEC stp_QSP_upsert @Original_QuoteType, @Original_CodQuote, @Original_QuoteRev, 'ProvvCost', @ProvvCost
-- update dei valori calcolati!
EXEC stp_QL_fullDataUpdate @Original_QuoteType
,@Original_CodQuote
,@Original_QuoteRev
,'Y'
COMMIT TRAN
-- seleziono intera riga!
SELECT *
FROM v_QuoteFull_Q
WHERE QuoteType = @Original_QuoteType
AND CodQuote = @Original_CodQuote
AND QuoteRev = @Original_QuoteRev
RETURN