update stored x fix errore in creazioen nuova revisione + errore duplicazione

This commit is contained in:
Samuele E. Locatelli
2014-10-22 11:26:12 +02:00
parent 6a70978008
commit 00a5e6f59b
5 changed files with 191 additions and 66 deletions
+1 -1
View File
@@ -2,7 +2,7 @@
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<ProjectView>ShowAllFiles</ProjectView>
<NameOfLastUsedPublishProfile>WinLab</NameOfLastUsedPublishProfile>
<NameOfLastUsedPublishProfile>IIS02</NameOfLastUsedPublishProfile>
</PropertyGroup>
<ProjectExtensions>
<VisualStudio>
BIN
View File
Binary file not shown.
@@ -1,52 +1,54 @@
-- =============================================
-- =============================================
-- Author: Steamware
-- Create date: 2014.04.23
-- Description: duplica record QuoteList
-- =============================================
CREATE PROCEDURE [dbo].[stp_QL_clone]
(
@QuoteType CHAR(1) = 'Q',
@QuoteType_orig CHAR(1) = 'Q',
@CodQuote_orig BIGINT = 0,
@QuoteRev_orig INT = 0
@QuoteType CHAR(1) = 'Q',
@QuoteType_orig CHAR(1) = 'Q',
@CodQuote_orig BIGINT = 0,
@QuoteRev_orig INT = 0
)
AS
-- variabili
DECLARE @CodQuote BIGINT = 0,
@QuoteRev INT = 0
@QuoteRev INT = 0
SET XACT_ABORT ON;
BEGIN TRAN
-- calcolo nuovo record odierno
SELECT @CodQuote = dbo.f_getNewCodQuote()
-- calcolo nuovo record odierno
SELECT @CodQuote = dbo.f_getNewCodQuote()
-- inserisco riga in QuoteList
INSERT INTO QuoteList(QuoteType, CodQuote, QuoteRev, CodClient, CodItem, UnitWeight, BatchQty, CodItemGroup, RawMat, CodInco, Note, PriceOff)
SELECT @QuoteType, @CodQuote, @QuoteRev as QuoteRev, CodClient, CodItem, UnitWeight, BatchQty, CodItemGroup, RawMat, CodInco, 'CLONE - ' + Note, PriceOff
FROM QuoteList
WHERE QuoteType = @QuoteType_orig
AND CodQuote = @CodQuote_orig
AND QuoteRev = @QuoteRev_orig
-- inserisco riga in QuoteList
INSERT INTO QuoteList(QuoteType, CodQuote, QuoteRev, CodClient, CodItem, UnitWeight, BatchQty, CodItemGroup, RawMat, CodInco, Note, PriceOff)
SELECT @QuoteType, @CodQuote, @QuoteRev as QuoteRev, CodClient, CodItem, UnitWeight, BatchQty, CodItemGroup, RawMat, CodInco, 'CLONE - ' + Note, PriceOff
FROM QuoteList
WHERE QuoteType = @QuoteType_orig
AND CodQuote = @CodQuote_orig
AND QuoteRev = @QuoteRev_orig
-- ora inserisco in QuoteRM
INSERT INTO QuoteRM(QuoteType, CodQuote, QuoteRev, NumRM, RawMat, RawMatCost, RawMatExtraCost)
SELECT @QuoteType, @CodQuote, @QuoteRev as QuoteRev, NumRM, RawMat, RawMatCost, RawMatExtraCost
FROM QuoteRM
WHERE QuoteType = @QuoteType_orig
AND CodQuote = @CodQuote_orig
AND QuoteRev = @QuoteRev_orig
-- ora inserisco in QuoteRM
INSERT INTO QuoteRM(QuoteType, CodQuote, QuoteRev, NumRM, RawMat, RawMatCost, RawMatExtraCost)
SELECT @QuoteType, @CodQuote, @QuoteRev as QuoteRev, NumRM, RawMat, RawMatCost, RawMatExtraCost
FROM QuoteRM
WHERE QuoteType = @QuoteType_orig
AND CodQuote = @CodQuote_orig
AND QuoteRev = @QuoteRev_orig
-- se la scheda di destinazione è simulazione
IF(@QuoteType = 'S')
BEGIN
IF(@QuoteType_orig = 'S')
-- se la scheda di destinazione è simulazione
IF(@QuoteType = 'S')
BEGIN
EXEC stp_QL_copyParamS @QuoteType, @QuoteType_orig, @CodQuote, @CodQuote_orig, @QuoteRev, @QuoteRev_orig
/*
IF(@QuoteType_orig = 'S')
-- se partenza è S duplico dati accessori...
BEGIN
BEGIN
INSERT INTO QuoteSimPar(QuoteType, CodQuote, QuoteRev, NomePar, ValPar)
SELECT @QuoteType, @CodQuote, @QuoteRev, NomePar, ValPar
FROM QuoteSimPar
@@ -64,7 +66,7 @@ BEGIN TRAN
AND CodQuote = @CodQuote_orig
AND QuoteRev = @QuoteRev_orig
AND Descr IN ('CodDiesGroup', 'CodPlant')
INSERT INTO QuoteSimPar(QuoteType, CodQuote, QuoteRev, NomePar, ValPar)
SELECT @QuoteType, @CodQuote, @QuoteRev, 'DiesTecLife', Parameter
FROM QuoteParam
@@ -72,7 +74,7 @@ BEGIN TRAN
AND CodQuote = @CodQuote_orig
AND QuoteRev = @QuoteRev_orig
AND Descr = 'KgTeo'
INSERT INTO QuoteSimPar(QuoteType, CodQuote, QuoteRev, NomePar, ValPar)
SELECT @QuoteType, @CodQuote, @QuoteRev, 'DiesPrice_sim', Parameter
FROM QuoteParam
@@ -80,14 +82,14 @@ BEGIN TRAN
AND CodQuote = @CodQuote_orig
AND QuoteRev = @QuoteRev_orig
AND Descr = 'DiesPrice'
INSERT INTO QuoteSimPar(QuoteType, CodQuote, QuoteRev, NomePar, ValPar)
SELECT @QuoteType, @CodQuote, @QuoteRev, 'CodPackag', CodPackag
FROM QuoteRM
WHERE QuoteType = @QuoteType_orig
AND CodQuote = @CodQuote_orig
AND QuoteRev = @QuoteRev_orig
INSERT INTO QuoteSimPar(QuoteType, CodQuote, QuoteRev, NomePar, ValPar)
SELECT @QuoteType, @CodQuote, @QuoteRev, 'NetProd01_sim', NetProd
FROM QuoteWorkInt
@@ -95,7 +97,7 @@ BEGIN TRAN
AND CodQuote = @CodQuote_orig
AND QuoteRev = @QuoteRev_orig
AND ProcessNum = '01'
INSERT INTO QuoteSimPar(QuoteType, CodQuote, QuoteRev, NomePar, ValPar)
SELECT @QuoteType, @CodQuote, @QuoteRev, 'NetProd04_sim', NetProd
FROM QuoteWorkInt
@@ -103,7 +105,7 @@ BEGIN TRAN
AND CodQuote = @CodQuote_orig
AND QuoteRev = @QuoteRev_orig
AND ProcessNum = '04'
INSERT INTO QuoteSimPar(QuoteType, CodQuote, QuoteRev, NomePar, ValPar)
SELECT @QuoteType, @CodQuote, @QuoteRev, 'MSR01_sim', MSR
FROM QuoteWorkInt
@@ -111,7 +113,7 @@ BEGIN TRAN
AND CodQuote = @CodQuote_orig
AND QuoteRev = @QuoteRev_orig
AND ProcessNum = '01'
INSERT INTO QuoteSimPar(QuoteType, CodQuote, QuoteRev, NomePar, ValPar)
SELECT @QuoteType, @CodQuote, @QuoteRev, 'WSR01_sim', WSR
FROM QuoteWorkInt
@@ -119,7 +121,7 @@ BEGIN TRAN
AND CodQuote = @CodQuote_orig
AND QuoteRev = @QuoteRev_orig
AND ProcessNum = '01'
INSERT INTO QuoteSimPar(QuoteType, CodQuote, QuoteRev, NomePar, ValPar)
SELECT @QuoteType, @CodQuote, @QuoteRev, 'DSR_sim', DSR
FROM QuoteWorkInt
@@ -127,21 +129,29 @@ BEGIN TRAN
AND CodQuote = @CodQuote_orig
AND QuoteRev = @QuoteRev_orig
AND ProcessNum = '04'
END
END
END
*/
END
-- ricalcolo!
-- ricalcolo!
EXEC stp_QL_fullDataUpdate @QuoteType
,@CodQuote
,@QuoteRev
,'Y'
-- PATCH 2014/10 rieseguo ricalcolo x problema parametri simulati mancanti in quoteparam
EXEC stp_QL_fullDataUpdate @QuoteType
,@CodQuote
,@QuoteRev
,'Y'
, @CodQuote
, @QuoteRev
, 'Y'
COMMIT TRAN
-- seleziono intera riga!
SELECT *
FROM QuoteList
WHERE QuoteType = @QuoteType
AND CodQuote = @CodQuote
AND QuoteRev = @QuoteRev
AND CodQuote = @CodQuote
AND QuoteRev = @QuoteRev
RETURN
@@ -0,0 +1,103 @@
-- =============================================
-- Author: Steamware
-- Mod date: 2014.10.22
-- Description: copia i parametri per una QL tipo Simulazione per casi clone/revisione
-- =============================================
create PROCEDURE [dbo].[stp_QL_copyParamS]
(
@QuoteType CHAR(1) = 'Q',
@QuoteType_orig CHAR(1) = 'Q',
@CodQuote BIGINT = 0,
@CodQuote_orig BIGINT = 0,
@QuoteRev INT = 0,
@QuoteRev_orig INT = 0
)
AS
IF(@QuoteType_orig = 'S')
-- se partenza è S duplico dati accessori...
BEGIN
INSERT INTO QuoteSimPar(QuoteType, CodQuote, QuoteRev, NomePar, ValPar)
SELECT @QuoteType, @CodQuote, @QuoteRev, NomePar, ValPar
FROM QuoteSimPar
WHERE QuoteType = @QuoteType_orig
AND CodQuote = @CodQuote_orig
AND QuoteRev = @QuoteRev_orig
END
ELSE
-- se partenza è Q carico alcuni dati accessori precompilando...
BEGIN
INSERT INTO QuoteSimPar(QuoteType, CodQuote, QuoteRev, NomePar, ValPar)
SELECT @QuoteType, @CodQuote, @QuoteRev, Descr, Parameter
FROM QuoteParam
WHERE QuoteType = @QuoteType_orig
AND CodQuote = @CodQuote_orig
AND QuoteRev = @QuoteRev_orig
AND Descr IN ('CodDiesGroup', 'CodPlant')
INSERT INTO QuoteSimPar(QuoteType, CodQuote, QuoteRev, NomePar, ValPar)
SELECT @QuoteType, @CodQuote, @QuoteRev, 'DiesTecLife', Parameter
FROM QuoteParam
WHERE QuoteType = @QuoteType_orig
AND CodQuote = @CodQuote_orig
AND QuoteRev = @QuoteRev_orig
AND Descr = 'KgTeo'
INSERT INTO QuoteSimPar(QuoteType, CodQuote, QuoteRev, NomePar, ValPar)
SELECT @QuoteType, @CodQuote, @QuoteRev, 'DiesPrice_sim', Parameter
FROM QuoteParam
WHERE QuoteType = @QuoteType_orig
AND CodQuote = @CodQuote_orig
AND QuoteRev = @QuoteRev_orig
AND Descr = 'DiesPrice'
INSERT INTO QuoteSimPar(QuoteType, CodQuote, QuoteRev, NomePar, ValPar)
SELECT @QuoteType, @CodQuote, @QuoteRev, 'CodPackag', CodPackag
FROM QuoteRM
WHERE QuoteType = @QuoteType_orig
AND CodQuote = @CodQuote_orig
AND QuoteRev = @QuoteRev_orig
INSERT INTO QuoteSimPar(QuoteType, CodQuote, QuoteRev, NomePar, ValPar)
SELECT @QuoteType, @CodQuote, @QuoteRev, 'NetProd01_sim', NetProd
FROM QuoteWorkInt
WHERE QuoteType = @QuoteType_orig
AND CodQuote = @CodQuote_orig
AND QuoteRev = @QuoteRev_orig
AND ProcessNum = '01'
INSERT INTO QuoteSimPar(QuoteType, CodQuote, QuoteRev, NomePar, ValPar)
SELECT @QuoteType, @CodQuote, @QuoteRev, 'NetProd04_sim', NetProd
FROM QuoteWorkInt
WHERE QuoteType = @QuoteType_orig
AND CodQuote = @CodQuote_orig
AND QuoteRev = @QuoteRev_orig
AND ProcessNum = '04'
INSERT INTO QuoteSimPar(QuoteType, CodQuote, QuoteRev, NomePar, ValPar)
SELECT @QuoteType, @CodQuote, @QuoteRev, 'MSR01_sim', MSR
FROM QuoteWorkInt
WHERE QuoteType = @QuoteType_orig
AND CodQuote = @CodQuote_orig
AND QuoteRev = @QuoteRev_orig
AND ProcessNum = '01'
INSERT INTO QuoteSimPar(QuoteType, CodQuote, QuoteRev, NomePar, ValPar)
SELECT @QuoteType, @CodQuote, @QuoteRev, 'WSR01_sim', WSR
FROM QuoteWorkInt
WHERE QuoteType = @QuoteType_orig
AND CodQuote = @CodQuote_orig
AND QuoteRev = @QuoteRev_orig
AND ProcessNum = '01'
INSERT INTO QuoteSimPar(QuoteType, CodQuote, QuoteRev, NomePar, ValPar)
SELECT @QuoteType, @CodQuote, @QuoteRev, 'DSR_sim', DSR
FROM QuoteWorkInt
WHERE QuoteType = @QuoteType_orig
AND CodQuote = @CodQuote_orig
AND QuoteRev = @QuoteRev_orig
AND ProcessNum = '04'
END
RETURN
@@ -1,14 +1,13 @@
-- =============================================
-- =============================================
-- Author: Steamware
-- Create date: 2014.04.23
-- Description: duplica record QuoteList generando una NUOVA REVISIONE
-- =============================================
CREATE PROCEDURE [dbo].[stp_QL_newRev]
(
@QuoteType CHAR(1) = 'Q',
@QuoteType CHAR(1) = 'Q',
@CodQuote BIGINT = 0,
@QuoteRev_orig INT = 0
@QuoteRev_orig INT = 0
)
AS
@@ -20,34 +19,47 @@ SET @QuoteRev = @QuoteRev_orig + 1
SET XACT_ABORT ON;
BEGIN TRAN
-- inserisco riga in QuoteList
INSERT INTO QuoteList(QuoteType, CodQuote, QuoteRev, CodClient, CodItem, UnitWeight, BatchQty, CodItemGroup, RawMat, CodInco, Note)
SELECT QuoteType, @CodQuote, @QuoteRev as QuoteRev, CodClient, CodItem, UnitWeight, BatchQty, CodItemGroup, RawMat, CodInco, Note
FROM QuoteList
WHERE QuoteType = @QuoteType
-- inserisco riga in QuoteList
INSERT INTO QuoteList(QuoteType, CodQuote, QuoteRev, CodClient, CodItem, UnitWeight, BatchQty, CodItemGroup, RawMat, CodInco, Note)
SELECT QuoteType, @CodQuote, @QuoteRev as QuoteRev, CodClient, CodItem, UnitWeight, BatchQty, CodItemGroup, RawMat, CodInco, Note
FROM QuoteList
WHERE QuoteType = @QuoteType
AND CodQuote = @CodQuote
AND QuoteRev = @QuoteRev_orig
-- ora inserisco in QuoteRM
INSERT INTO QuoteRM(QuoteType, CodQuote, QuoteRev, NumRM, RawMat, RawMatCost, RawMatExtraCost)
SELECT QuoteType, @CodQuote, @QuoteRev as QuoteRev, NumRM, RawMat, RawMatCost, RawMatExtraCost
FROM QuoteRM
WHERE QuoteType = @QuoteType
-- ora inserisco in QuoteRM
INSERT INTO QuoteRM(QuoteType, CodQuote, QuoteRev, NumRM, RawMat, RawMatCost, RawMatExtraCost)
SELECT QuoteType, @CodQuote, @QuoteRev as QuoteRev, NumRM, RawMat, RawMatCost, RawMatExtraCost
FROM QuoteRM
WHERE QuoteType = @QuoteType
AND CodQuote = @CodQuote
AND QuoteRev = @QuoteRev_orig
-- ricalcolo!
-- se la scheda di destinazione è simulazione
IF(@QuoteType = 'S')
BEGIN
EXEC stp_QL_copyParamS @QuoteType, @QuoteType, @CodQuote, @CodQuote, @QuoteRev, @QuoteRev_orig
END
-- ricalcolo!
EXEC stp_QL_fullDataUpdate @QuoteType
,@CodQuote
,@QuoteRev
,'Y'
-- PATCH 2014/10 rieseguo ricalcolo x problema parametri simulati mancanti in quoteparam
EXEC stp_QL_fullDataUpdate @QuoteType
,@CodQuote
,@QuoteRev
,'Y'
, @CodQuote
, @QuoteRev
, 'Y'
COMMIT TRAN
-- seleziono intera riga!
SELECT *
FROM QuoteList
WHERE QuoteType = @QuoteType
AND CodQuote = @CodQuote
AND QuoteRev = @QuoteRev
AND CodQuote = @CodQuote
AND QuoteRev = @QuoteRev
RETURN