update x install in produzioen (allieneato db!!!)

This commit is contained in:
Samuele E. Locatelli
2014-07-18 16:58:50 +02:00
parent a509775686
commit 256c86f2eb
120 changed files with 6674 additions and 514 deletions
+2
View File
@@ -18,6 +18,8 @@
<add key="reportsUrl" value="http://c2p-rep.steamware.net" xdt:Transform="SetAttributes" xdt:Locator="Match(key)"/>
<add key="importDataFolder" value="e:\test" xdt:Transform="SetAttributes" xdt:Locator="Match(key)"/>
<add key="C2PConnectionString" value="Data Source=localhost\SQLExpress2008R2;Initial Catalog=C2P;Persist Security Info=True;User ID=sa;Password=keyhammer" xdt:Transform="SetAttributes" xdt:Locator="Match(key)"/>
<add key="PermessiConnectionString" value="Data Source=localhost\SQLExpress2008R2;Initial Catalog=C2P;Persist Security Info=True;User ID=sa;Password=keyhammer" xdt:Transform="SetAttributes" xdt:Locator="Match(key)"/>
<add key="UtenteCdcConnectionString" value="Data Source=localhost\SQLExpress2008R2;Initial Catalog=C2P;Persist Security Info=True;User ID=sa;Password=keyhammer" xdt:Transform="SetAttributes" xdt:Locator="Match(key)"/>
<add key="VocabolarioConnectionString" value="Data Source=localhost\SQLExpress2008R2;Initial Catalog=C2P;Persist Security Info=True;User ID=sa;Password=keyhammer" xdt:Transform="SetAttributes" xdt:Locator="Match(key)"/>
</appSettings>
<connectionStrings>
BIN
View File
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
+74 -2
View File
@@ -87,7 +87,6 @@
<Build Include="dbo\Tables\QuoteList.sql" />
<Build Include="dbo\Tables\QuoteWorkExt.sql" />
<Build Include="dbo\Tables\QuoteWorkInt.sql" />
<Build Include="dbo\Tables\test.sql" />
<Build Include="dbo\Tables\QuoteOC.sql" />
<Build Include="dbo\Tables\Config.sql" />
<Build Include="dbo\Tables\QuoteFull_Q.sql" />
@@ -203,10 +202,83 @@
<Build Include="dbo\Stored Procedures\dbo.stp_test.sql" />
<Build Include="dbo\Stored Procedures\dbo.stp_QLF_UpdHead.sql" />
<Build Include="dbo\Stored Procedures\dbo.stp_QLF_UpdCosts.sql" />
<Build Include="dbo\Stored Procedures\dbo.stp_insNewLemma.sql" />
<Build Include="dbo\Tables\dbo.Permessi2Funzione.sql" />
<Build Include="dbo\Tables\dbo.Permessi.sql" />
<Build Include="dbo\Stored Procedures\dbo.stp_QLF_UpdQState.sql" />
<Build Include="tmp\Tables\tmp.OrdersHistRaw.sql" />
<Build Include="ext\Tables\ext.OrdersHistRaw.sql" />
<Build Include="dbo\Tables\dbo.UTENTE.sql" />
<Build Include="dbo\Tables\dbo.TrascPlan.sql" />
<Build Include="dbo\Tables\dbo.TrascItem.sql" />
<Build Include="dbo\Tables\dbo.TrascDies.sql" />
<Build Include="dbo\Tables\dbo.TrascClient.sql" />
<Build Include="dbo\Tables\dbo.TrascClass03.sql" />
<Build Include="dbo\Tables\dbo.TrascClass02.sql" />
<Build Include="dbo\Tables\dbo.TrascClass01.sql" />
<Build Include="dbo\Tables\dbo.ReportPrintTicket.sql" />
<Build Include="dbo\Tables\dbo.QuoteSimPar.sql" />
<Build Include="dbo\Tables\dbo.QuoteFull_S.sql" />
<Build Include="dbo\Tables\dbo.QuoteFull_R.sql" />
<Build Include="dbo\Tables\dbo.QuoteFull_C.sql" />
<Build Include="dbo\Tables\dbo.PickList.sql" />
<Build Include="dbo\Tables\dbo.OrdersHist.sql" />
<Build Include="dbo\Tables\dbo.MODULO.sql" />
<Build Include="dbo\Tables\dbo.FUNZIONE.sql" />
<Build Include="dbo\Tables\dbo.DIRITTI.sql" />
<Build Include="dbo\Tables\dbo.CostList.sql" />
<Build Include="dbo\Tables\dbo.ContatoriQuote.sql" />
<Build Include="dbo\Tables\dbo.CDC.sql" />
<Build Include="dbo\Views\dbo.v_StdCostList.sql" />
<Build Include="dbo\Views\dbo.v_selPlant.sql" />
<Build Include="dbo\Views\dbo.v_selPackage.sql" />
<Build Include="dbo\Views\dbo.v_selDateStdCost.sql" />
<Build Include="dbo\Views\dbo.v_pivot.sql" />
<Build Include="dbo\Views\dbo.v_MarginReportStatsNewData.sql" />
<Build Include="dbo\Views\dbo.v_MarginReportStats.sql" />
<Build Include="dbo\Views\dbo.v_MarginReport.sql" />
<Build Include="dbo\Views\dbo.v_listinoArticoli.sql" />
<Build Include="dbo\Functions\dbo.fnFormatDate.sql" />
<Build Include="dbo\Functions\dbo.f_prt_getParameter.sql" />
<Build Include="voc\Stored Procedures\voc.stp_voUpdateLemmiReport.sql" />
<Build Include="voc\Stored Procedures\voc.stp_upsertLemma.sql" />
<Build Include="voc\Stored Procedures\voc.stp_updateQuery.sql" />
<Build Include="voc\Stored Procedures\voc.stp_getByLinguaLemmaLike.sql" />
<Build Include="voc\Stored Procedures\voc.stp_getByLingua.sql" />
<Build Include="tmp\Stored Procedures\tmp.importOrdersHistRaw.sql" />
<Build Include="tmp\Stored Procedures\tmp.convertOrdersHistRaw.sql" />
<Build Include="ext\Stored Procedures\ext.stp_mergeOrdersHist.sql" />
<Build Include="dbo\Stored Procedures\dbo.stp_zzz_scratchDatiDemo.sql" />
<Build Include="dbo\Stored Procedures\dbo.stp_SC2C_insertForDate.sql" />
<Build Include="dbo\Stored Procedures\dbo.stp_SC2C_deleteForDate.sql" />
<Build Include="dbo\Stored Procedures\dbo.stp_SC2C_countRemaining.sql" />
<Build Include="dbo\Stored Procedures\dbo.stp_RPT_reserveTicket.sql" />
<Build Include="dbo\Stored Procedures\dbo.stp_RPT_insertNew.sql" />
<Build Include="dbo\Stored Procedures\dbo.stp_RMD_getByKey.sql" />
<Build Include="dbo\Stored Procedures\dbo.stp_QSP_upsert.sql" />
<Build Include="dbo\Stored Procedures\dbo.stp_QLS_UpdPackPar.sql" />
<Build Include="dbo\Stored Procedures\dbo.stp_QLS_UpdHead.sql" />
<Build Include="dbo\Stored Procedures\dbo.stp_QLS_UpdExtrPar.sql" />
<Build Include="dbo\Stored Procedures\dbo.stp_QLS_UpdDiesPar.sql" />
<Build Include="dbo\Stored Procedures\dbo.stp_QLR_insNew.sql" />
<Build Include="dbo\Stored Procedures\dbo.stp_QLR_getByDate.sql" />
<Build Include="dbo\Stored Procedures\dbo.stp_QLF_revHist.sql" />
<Build Include="dbo\Stored Procedures\dbo.stp_QLF_Insert.sql" />
<Build Include="dbo\Stored Procedures\dbo.stp_QLF_getMinMax.sql" />
<Build Include="dbo\Stored Procedures\dbo.stp_QLF_getLast.sql" />
<Build Include="dbo\Stored Procedures\dbo.stp_QLC_insNew_OLD.sql" />
<Build Include="dbo\Stored Procedures\dbo.stp_QLC_insNew.sql" />
<Build Include="dbo\Stored Procedures\dbo.stp_QL_newRev.sql" />
<Build Include="dbo\Stored Procedures\dbo.stp_QL_makeSim.sql" />
<Build Include="dbo\Stored Procedures\dbo.stp_QL_fullDataCount.sql" />
<Build Include="dbo\Stored Procedures\dbo.stp_QL_delete.sql" />
<Build Include="dbo\Stored Procedures\dbo.stp_QL_clone.sql" />
<Build Include="dbo\Stored Procedures\dbo.stp_QFC_creaListino.sql" />
<Build Include="dbo\Stored Procedures\dbo.stp_prt_dsQuoteFull_Q_Data.sql" />
<Build Include="dbo\Stored Procedures\dbo.stp_prt_dsQuoteFull_byChiave.sql" />
<Build Include="dbo\Stored Procedures\dbo.stp_PL_getByListLingua.sql" />
<Build Include="dbo\Stored Procedures\dbo.stp_OH_countRemaining.sql" />
<Build Include="dbo\Stored Procedures\dbo.stp_getDataCodPackag.sql" />
<Build Include="dbo\Stored Procedures\dbo.stp_checkOffers4Item.sql" />
</ItemGroup>
<ItemGroup>
<None Include="C2P_compare_dev2prod.scmp" />
+2
View File
@@ -3,3 +3,5 @@
+2
View File
@@ -3,3 +3,5 @@
+2
View File
@@ -1,3 +1,5 @@
CREATE SCHEMA [voc]
AUTHORIZATION [dbo];
@@ -3,7 +3,7 @@
-- Create date: 2014.02.21
-- Description: Retituisce un codice offerta valido da yyMMdd + incr
-- =============================================
CREATE FUNCTION f_getNewCodQuote
CREATE FUNCTION [dbo].[f_getNewCodQuote]
(
)
RETURNS INT
@@ -17,7 +17,25 @@ BEGIN
SELECT @output = ISNULL(MAX(CodQuote) + 1,CAST(RIGHT(YEAR(@oggi),2) AS NVARCHAR) + dbo.f_padLeft(MONTH(@oggi), 2,'0') + dbo.f_padLeft(DAY(@oggi), 2,'0')+'0001')
FROM QuoteList
WHERE codquote LIKE CAST(RIGHT(YEAR(@oggi),2) AS NVARCHAR) + dbo.f_padLeft(MONTH(@oggi), 2,'0') + dbo.f_padLeft(DAY(@oggi), 2,'0') + '%'
AND (QuoteType = 'Q' OR QuoteType = 'S')
RETURN @output
/* altra modalità (valutare...)
-- calcolo prox valori "free" x cod Quote (QuoteRev parte a zero...)
SELECT @CodQuote = ISNULL(CodQuote, 0)
FROM QuoteList
WHERE QuoteType = 'Q'
AND CodQuote LIKE dbo.fnFormatDate (getdate(), 'YYMMDD') +'%'
-- se è vuoto prendo primo valore...
IF(@CodQuote = 0)
BEGIN
SELECT @CodQuote = dbo.fnFormatDate (getdate(), 'YYMMDD0000')
END
*/
END
@@ -0,0 +1,43 @@
-- =============================================
-- Author: G:A:R
-- Create date:
-- Description: estrazione valore del paramento passato
-- =============================================
CREATE FUNCTION f_prt_getParameter
(
@par AS VARCHAR(50)
,@val AS VARCHAR(50)
,@endSepar AS VARCHAR(10) = '&'
)
RETURNS VARCHAR(50)
AS
BEGIN
DECLARE @Result VARCHAR(50)
DECLARE @Inizio INT;
DECLARE @Fine INT;
SET @par = '%'+ @par + '=%' -- '%QuoteType=%'
--;WITH CTE AS
--(
-- SELECT *, ( PATINDEX(@campo , Chiave) + LEN(@campo) - 2 ) As Inizio , CHARINDEX ( '&' ,Chiave , PATINDEX(@campo , Chiave) ) As Fine
-- FROM dbo.ReportPrintTicket
-- WHERE Ticket = 1 AND PATINDEX(@campo , Chiave) > 0
--)
SET @Inizio = PATINDEX(@par , @val )
IF @Inizio > 0
BEGIN
SET @Inizio = @Inizio + LEN(@par) - 2
SET @Fine = CASE WHEN ( CHARINDEX ( @endSepar , @val , @Inizio ) ) = 0
THEN LEN(@val)
ELSE CHARINDEX ( @endSepar , @val , @Inizio )
END ;
SELECT @Result = SUBSTRING( @val, @Inizio, @Fine-@Inizio )
END
RETURN @Result
END
@@ -0,0 +1,42 @@
-----------------------------------------------------------------------------
-- SQL Server date formatting function convert datetime to string
-----------------------------------------------------------------------------
-- SQL datetime functions
-- SQL Server date formats
-- T-SQL convert dates
-- Formatting dates sql server
CREATE FUNCTION dbo.fnFormatDate (@Datetime DATETIME, @FormatMask VARCHAR(32))
RETURNS VARCHAR(32)
AS
BEGIN
DECLARE @StringDate VARCHAR(32)
SET @StringDate = @FormatMask
IF (CHARINDEX ('YYYY',@StringDate) > 0)
SET @StringDate = REPLACE(@StringDate, 'YYYY',
DATENAME(YY, @Datetime))
IF (CHARINDEX ('YY',@StringDate) > 0)
SET @StringDate = REPLACE(@StringDate, 'YY',
RIGHT(DATENAME(YY, @Datetime),2))
IF (CHARINDEX ('Month',@StringDate) > 0)
SET @StringDate = REPLACE(@StringDate, 'Month',
DATENAME(MM, @Datetime))
IF (CHARINDEX ('MON',@StringDate COLLATE SQL_Latin1_General_CP1_CS_AS)>0)
SET @StringDate = REPLACE(@StringDate, 'MON',
LEFT(UPPER(DATENAME(MM, @Datetime)),3))
IF (CHARINDEX ('Mon',@StringDate) > 0)
SET @StringDate = REPLACE(@StringDate, 'Mon',
LEFT(DATENAME(MM, @Datetime),3))
IF (CHARINDEX ('MM',@StringDate) > 0)
SET @StringDate = REPLACE(@StringDate, 'MM',
RIGHT('0'+CONVERT(VARCHAR,DATEPART(MM, @Datetime)),2))
IF (CHARINDEX ('M',@StringDate) > 0)
SET @StringDate = REPLACE(@StringDate, 'M',
CONVERT(VARCHAR,DATEPART(MM, @Datetime)))
IF (CHARINDEX ('DD',@StringDate) > 0)
SET @StringDate = REPLACE(@StringDate, 'DD',
RIGHT('0'+DATENAME(DD, @Datetime),2))
IF (CHARINDEX ('D',@StringDate) > 0)
SET @StringDate = REPLACE(@StringDate, 'D',
DATENAME(DD, @Datetime))
RETURN @StringDate
END
@@ -1,10 +1,11 @@
-- =============================================
-- Author: Steamware
-- Create date: 2014-01-30
-- Description: Ritorna l'imballo e i dati associati
-- Description: Ritorna l'imballo e i dati associati ( sostituita da stored ma lasciata nel caso di query on-line )
-- =============================================
CREATE FUNCTION [dbo].[f_getDataCodPackag]
(
@@ -33,15 +34,16 @@ BEGIN
-- setup iniziale: imposto a zero...
SET @output = '0'
SELECT @trovati = COUNT(*) FROM Package2ItemClient WHERE CodClient = @CodClient AND CodItem = @CodItem
IF(@trovati > 0)
-- primo tentativo: cerco il package dato SIA cliente che ITEM
-- SELECT @trovati = COUNT(*) FROM Package2ItemClient WHERE CodClient = @CodClient AND CodItem = @CodItem
--IF(@trovati > 0)
IF EXISTS ( SELECT * FROM dbo.Package2ItemClient WHERE CodClient = @CodClient AND CodItem = @CodItem)
-- primo tentativo: cerco il package dato SIA cliente che ITEM
BEGIN
INSERT @Table
SELECT TOP 1 CodItem, CodClient , CodPackag, TotQta, Weight, Tare, NumImb, Durata
,'Item-Client-Package', @CodItem + '-' + @CodClient + '-' + CodPackag
FROM Package2ItemClient WHERE CodClient = @CodClient AND CodItem = @CodItem
FROM dbo.Package2ItemClient WHERE CodClient = @CodClient AND CodItem = @CodItem
ORDER BY TotQta DESC
END
ELSE IF EXISTS ( SELECT * FROM Package2Item WHERE CodItem = @CodItem )
@@ -50,7 +52,7 @@ BEGIN
INSERT @Table
SELECT TOP 1 CodItem, 'ND' AS CodClient , CodPackag, TotQta, Weight, Tare, NumImb, Durata
,'Item-Package', @CodItem + '-' + CodPackag
FROM Package2Item WHERE CodItem = @CodItem
FROM dbo.Package2Item WHERE CodItem = @CodItem
ORDER BY TotQta DESC
END
ELSE
+16 -20
View File
@@ -1,10 +1,6 @@
-- ================================================================
-- ================================================================
-- Author : Steamware
-- Create date: 2017-01-17
-- Create date: 2014-01-17
--
-- Description: Data una stringa con una serie di valori separati da un separatore ( es. ; )
-- ritorna l'elemento nella posizione richiesta
@@ -20,8 +16,8 @@ AS
BEGIN
DECLARE @Occurrences INT,
@Counter INT,
@tmpStr NVARCHAR(4000),
@Counter INT,
@tmpStr NVARCHAR(4000),
@str_out NVARCHAR(4000)
IF RIGHT(@str_in, DATALENGTH(@separator)/2 ) <> @separator
@@ -30,25 +26,25 @@ BEGIN
SET @str_out = @str_in ;
-- calcolo il numero di elementi della nella stringa
SET @Occurrences = ( (DATALENGTH( REPLACE(@str_out, @separator, @separator+'#')) - DATALENGTH(@str_out)) ) / 2
SET @Occurrences = ( (DATALENGTH( REPLACE(@str_out, @separator, @separator+'#')) - DATALENGTH(@str_out)) ) / 2
-- se l'elemento richiesto esiste proseguo altrimenti ritorno NULL
IF @Occurrences >= @PosizValue AND @PosizValue <> 0
BEGIN
SET @tmpStr = @str_out ;
SET @Counter = 1 ;
SET @tmpStr = @str_out ;
SET @Counter = 1 ;
WHILE @Counter <= @PosizValue
BEGIN
SET @Counter = @Counter + 1 ;
SET @str_out = SUBSTRING( @tmpStr, 1, CHARINDEX(@separator,@tmpStr) - 1) ;
WHILE @Counter <= @PosizValue
BEGIN
SET @Counter = @Counter + 1 ;
SET @str_out = SUBSTRING( @tmpStr, 1, CHARINDEX(@separator,@tmpStr) - 1) ;
-- metto via il resto della stringa
SET @tmpStr = SUBSTRING( @tmpStr, CHARINDEX(@separator,@tmpStr) + DATALENGTH(@separator)/2, 4000) ;
IF DATALENGTH(@tmpStr) = 0
BREAK
END
SET @tmpStr = SUBSTRING( @tmpStr, CHARINDEX(@separator,@tmpStr) + DATALENGTH(@separator)/2, 4000) ;
IF DATALENGTH(@tmpStr) = 0
BREAK
END
-- pulisco da caratteri NON voluti
--SET @str_out = REPLACE(@str_out, char(13), '') ; -- carriage return
@@ -0,0 +1,14 @@
-- =============================================
-- Author: Steamware
-- Mod. date: 2014.05.27
-- Description: conteggio OrdersHist ancora da processare
-- =============================================
CREATE PROCEDURE dbo.stp_OH_countRemaining
AS
SELECT COUNT(*) as RecordsIn
FROM dbo.OrdersHist
WHERE CodQuote = 0
RETURN
@@ -0,0 +1,21 @@
-- =============================================
-- Author: Steamware
-- Mod date: 2014.05.23
-- Description: elenco calori x picklist data lingua e CodList
-- =============================================
CREATE PROCEDURE [dbo].[stp_PL_getByListLingua]
(
@CodList NVARCHAR(50) = '',
@Lingua NVARCHAR(3) = 'IT'
)
AS
SET NOCOUNT ON
SELECT pl.Value, ISNULL(v.Traduzione, '_'+pl.Lemma+'_') as Label
FROM PickList pl
LEFT OUTER JOIN Vocabolario v ON pl.Lemma = v.Lemma
WHERE pl.CodList = @CodList
AND ISNULL(v.Lingua, @Lingua) = @Lingua
ORDER BY NumOrd
RETURN
@@ -0,0 +1,54 @@
-- =============================================
-- STORED PROCEDURE stp_QFC_creaListino
--
-- Author: Steamware
-- Mod date: 2014.05.26
-- Description: crea un nuovo listino di costi
-- =============================================
CREATE PROCEDURE [dbo].[stp_QFC_creaListino]
(
@RawMatCost DECIMAL(18,6) = 2,
@BatchQty INT = 1000
)
AS
SET NOCOUNT ON
-- questo è l'elenco delle cose da processare, in temp table / Cte x "scorrere" tutto?
SELECT DISTINCT
CONVERT(CHAR(8), GETDATE(), 112) AS DateList
, die.CodItem AS CodItem
, CASE WHEN pl.RawMat = '' -- al momento li escludo perchè poi non ho dati sugli scarti
THEN '6060'
ELSE pl.RawMat
END AS RawMat
, @RawMatCost AS RawMatCost
, rm.ExtraMatCost AS RawMatExtraCost
, @BatchQty AS batchQty
, 'EXW' AS CodInco
-- 'C' AS QuoteType
-- , '' AS CodClient --'' / '05000000001' in alternativa come default
FROM dbo.DiesDet AS die
INNER JOIN dbo.ProductionLog AS pl
ON die.CodDies = pl.CodDies
INNER JOIN dbo.RawMatDet AS rm
ON pl.RawMat = rm.RawMat
INNER JOIN dbo.TabProdSc AS sc -- escludo record che non hanno dati di scarto produzione
ON sc.KeyAM = ( die.CodItem + '-' + pl.RawMat)
WHERE ( pl.RawMat <> '' AND pl.RawMat IS NOT NULL ) -- escludo righe di produzione senza RawMat ( es. fermi o altro )
-- AND ( die.ActLife <> 0 ) -- escludo matrici senza dati ( es. vecchie matrici senza dati attuali o nuove che non hanno ancora prodotto )
--AND die.CodItem = '3DI05194'
ORDER BY die.CodItem
RETURN
@@ -0,0 +1,223 @@
-- =============================================
-- Author: Steamware
-- Mod. date: 2014.05.26
-- Description: elaborazione dbo.QuoteFull_C ( listino )
-- =============================================
CREATE PROCEDURE [dbo].[stp_QLC_insNew]
(
@row2proc INT = 100,
@Note NVARCHAR(2500) = '',
@QuoteType CHAR(1) = 'C' -- per il momento è fisso = 'C'
)
AS
BEGIN
SET NOCOUNT ON;
-- declare variabili
DECLARE @CodQuote AS BIGINT,
@QuoteRev AS INT = 0,
@OrdNum AS NVARCHAR(50),
@OrdRow AS NVARCHAR(50),
@CodItem AS NVARCHAR(50),
@CodClient AS NVARCHAR(50) = '',
@RawMat AS NVARCHAR(50),
@RawMatCost AS DECIMAL(18,6) = 0,
@BatchQty AS INT = 0,
@RawMatExtraCost AS DECIMAL(18,6),
@CodInco AS NVARCHAR(5),
@PriceOff AS DECIMAL(9,6),
@OrdDate As DATETIME,
@OrdPrice AS DECIMAL(9,6),
@OrdQty AS INT,
@oggi AS DATETIME = GETDATE(),
@LastIdx AS INT,
@noRow AS CHAR(1) = 'N',
@TotRow AS INT = 0,
@Date AS SMALLDATETIME = CONVERT(SMALLDATETIME,CONVERT(CHAR(8), GETDATE(), 112))
SET XACT_ABORT ON;
SET @QuoteType = 'C' -- per il momento non lascio parametrico il quotetype = C - Costi
-- se non esiste il contatore creo il record contatore
IF NOT EXISTS ( SELECT * FROM dbo.ContatoriQuote WHERE Flusso = @QuoteType )
INSERT INTO dbo.ContatoriQuote SELECT @QuoteType, 0
/* viene fatta da altra stored
-- ===========================================================
-- se non esiste, CREO LISTINO per il giorno carico listino
-- ===========================================================
IF NOT EXISTS( SELECT * FROM dbo.CostList
WHERE QuoteType = @QuoteType AND DateList = @Date )
-- AND LEFT(CodQuote,6) = CONVERT( BIGINT, ( RIGHT(YEAR(@oggi),2) + dbo.f_padLeft(MONTH(@oggi), 2,'0') + dbo.f_padLeft(DAY(@oggi), 2,'0') ) ) )
BEGIN
INSERT INTO dbo.CostList WITH (TABLOCK) ( DateList,CodItem,RawMat,RawMatCost,RawMatExtraCost,batchQty,CodInco )
EXEC dbo.stp_QFC_creaListino @RawmatCost , @BatchQty
END
*/
-- verifico se ci sono record da elaborare
IF EXISTS ( SELECT * FROM dbo.CostList WHERE QuoteType = @QuoteType AND CodQuote = 0 )
SET @noRow = 'N'
WHILE( @noRow = 'N' AND @row2proc > 0)
BEGIN
-- ===========================================================
-- stacco il CodQuote da usare e sbocco la tabella ( in realtà perdo un numero se poi non faccio insert )
-- se non eseguo procedure multiple contemporanee non serve
-- ===========================================================
DECLARE @Table TABLE ( LastIdx INT )
BEGIN TRAN;
UPDATE dbo.ContatoriQuote
SET LastIdx = ( LastIdx % 1000000 ) + 1 -- si resetta dopo 1.000.000 righe ( in pratica ho tot righe al giorno )
OUTPUT inserted.LastIdx INTO @Table
WHERE Flusso = @QuoteType
SELECT @LastIdx = MAX(LastIdx) FROM @Table
SELECT @CodQuote = CONVERT( BIGINT, ( RIGHT(YEAR(@oggi),2) + dbo.f_padLeft(MONTH(@oggi), 2,'0') + dbo.f_padLeft(DAY(@oggi), 2,'0') + dbo.f_padLeft(@LastIdx, 8,'0') ) )
COMMIT;
-- ===========================================================
-- elaboro il primo ordine "libero" assegnando il CodQuote
-- se da errore la transazione mi annulla il codquote e quindi rimane elaborabile
-- altrimenti metto l'assegnazione nella tran precedente e poi decido cosa fare con quelli non completati con data EndCalc = NULL
-- ===========================================================
-- SET TRANSACTION ISOLATION LEVEL REPEATABLE READ; -- SERIALIZABLE; -- REPEATABLE READ;
BEGIN TRANSACTION;
-- leggo il primo record da elaborare e assegno il CodQuote
WITH cteFree AS
( -- leggo il primo ordine da elaborare e assegno il CodQuote
SELECT TOP(1) CodItem, RawMat FROM dbo.CostList WHERE DateList = @Date AND QuoteType = @QuoteType AND CodQuote = 0
)
UPDATE dbo.CostList
SET CodQuote = @CodQuote,
QuoteType = @QuoteType
FROM dbo.CostList AS ls
INNER JOIN cteFree AS cte
ON ls.DateList = @Date AND ls.CodItem = cte.CodItem AND ls.RawMat = cte.RawMat
-- OPTION (RECOMPILE)
-- leggo i valori di calcolo
SET @CodItem = NULL
SELECT @CodItem = CodItem,
@BatchQty = batchQty,
@RawMat = RawMat,
@RawMatCost = RawMatCost,
@RawMatExtraCost = RawMatExtraCost,
@CodInco = CodInco
FROM dbo.CostList
WHERE QuoteType = @QuoteType AND CodQuote = @CodQuote
OPTION (RECOMPILE);
-- imposto il Cliente a non specificato ( CUSTOMER ND )
SET @CodClient = '00000000000'
IF @CodItem IS NOT NULL
BEGIN
-- -------------------------------------------------------
-- inserisco dati per elaborazione in QuoteList e QuoteRM
-- -------------------------------------------------------
INSERT INTO dbo.QuoteList( QuoteType, CodQuote, QuoteRev, CodClient, CodItem, UnitWeight, BatchQty, CodItemGroup, RawMat, CodInco, Note )
SELECT @QuoteType, @CodQuote, @QuoteRev, @CodClient, CodItem, UnitWeight, @BatchQty, CodItemGroup, @RawMat, @CodInco, @Note
FROM dbo.ItemDet
WHERE CodItem = @CodItem
INSERT INTO dbo.QuoteRM(QuoteType, CodQuote, QuoteRev, NumRM, RawMat, RawMatCost, RawMatExtraCost)
VALUES (@QuoteType, @CodQuote, @QuoteRev, 1, @RawMat, @RawMatCost, @RawMatExtraCost)
-- -------------------------------------------------------
-- ricalcolo!
-- -------------------------------------------------------
EXEC dbo.stp_QL_fullDataUpdate @QuoteType , @CodQuote , @QuoteRev, 'Y';
-- aggiorno data-ora fine elaborazione
UPDATE dbo.CostList
SET EndCalc = GETDATE()
WHERE QuoteType = @QuoteType AND CodQuote = @CodQuote
--SELECT * FROM dbo.QuoteList WHERE QuoteType = 'C' AND CodQuote = @CodQuote
--SELECT * FROM dbo.QuoteRM WHERE QuoteType = 'C' AND CodQuote = @CodQuote
--SELECT TOP(1000) * FROM dbo.QuoteFull_C WHERE QuoteType = 'C' AND CodQuote = @CodQuote
END
ELSE
SET @noRow = 'Y' -- fine righe da elaborare
COMMIT TRAN
SET @row2proc = @row2proc - 1
/*
SET @TotRow = @TotRow -1 -- decremento righe da leggere
COMMIT TRAN;
END TRY
BEGIN CATCH
SELECT 'Error'
,@CodItem
,@CodClient
,@BatchQty
,@RawMat
,@RawMatCost
,@RawMatExtraCost
,@CodInco
, @TotRow
-- ROLLBACK
DECLARE @ErrorMessage NVARCHAR(4000);
DECLARE @ErrorSeverity INT;
DECLARE @ErrorState INT;
SELECT @ErrorMessage = ERROR_MESSAGE() + ' Error Number: ' + CONVERT( Varchar(10) , ERROR_NUMBER())
+ ' Severity: ' + CONVERT( Varchar(10) , ERROR_SEVERITY() ) + ' : '
+ ISNULL(ERROR_PROCEDURE(),'stored?')
+ ' Line: ' + CONVERT(VARCHAR(100),ERROR_LINE()),
@ErrorSeverity = 8, -- ERROR_SEVERITY(),
@ErrorState = ERROR_STATE();
RAISERROR (@ErrorMessage, -- Message text.
@ErrorSeverity, -- Severity.
@ErrorState -- State.
);
SET @TotRow = @TotRow -1 -- decremento righe da leggere
END CATCH
*/
END -- END WHILE
RETURN
END
/*
-- Pulizia Tabelle di appoggio x QuoteType = 'C'
TRUNCATE TABLE CostList
DELETE FROM dbo.QuoteOC WHERE QuoteType = 'C'
DELETE FROM dbo.QuoteParam WHERE QuoteType = 'C'
DELETE FROM dbo.QuoteWorkExt WHERE QuoteType = 'C'
DELETE FROM dbo.QuoteWorkInt WHERE QuoteType = 'C'
DELETE FROM dbo.QuoteRM WHERE QuoteType = 'C'
DELETE FROM dbo.QuoteList WHERE QuoteType = 'C'
SELECT TOP 1000 * FROM dbo.QuoteList WHERE QuoteType = 'C' -- AND CodQuote = '14052600000001'
SELECT * FROM dbo.QuoteRM WHERE QuoteType = 'C' -- AND CodQuote = '14052600000001'
SELECT TOP 1000 * FROM dbo.QuoteOC WHERE QuoteType = 'C' -- AND CodQuote = '14052600000002'
SELECT TOP 1000 * FROM dbo.QuoteParam WHERE QuoteType = 'C' -- AND CodQuote = '14052600000993'
SELECT TOP 1000 * FROM dbo.QuoteWorkInt WHERE QuoteType = 'C' -- AND CodQuote = '14052600000993'
SELECT * FROM CostList
SELECT * FROM dbo.QuoteFull_C WHERE QuoteType = 'C'
SELECT TOP 1000 * FROM ItemDet WHERE CodItem = '1BQ00012'
-- RIPULISCO TUTTO
TRUNCATE TABLE dbo.QuoteFull_C
UPDATE dbo.ContatoriQuote
SET LastIdx = 0 WHERE Flusso = 'C'
*/
@@ -0,0 +1,199 @@
-- =============================================
-- Author: Steamware
-- Mod. date: 2014.05.26
-- Description: elaborazione dbo.QuoteFull_C ( listino )
-- =============================================
CREATE PROCEDURE [dbo].[stp_QLC_insNew_OLD]
(
@RawMatCost DECIMAL(18,6) = 2,
@BatchQty INT = 1000,
@QuoteType CHAR(1) = 'C', -- non usato al momento
@Note NVARCHAR(2500) = '',
@row2proc INT = 100
)
AS
SET NOCOUNT ON;
-- declare variabili
DECLARE @CodQuote AS BIGINT,
@QuoteRev AS INT = 0,
@OrdNum AS NVARCHAR(50),
@OrdRow AS NVARCHAR(50),
@CodItem AS NVARCHAR(50),
@CodClient AS NVARCHAR(50),
@RawMat AS NVARCHAR(50),
@RawMatExtraCost AS DECIMAL(18,6),
@CodInco AS NVARCHAR(5),
@PriceOff AS DECIMAL(9,6),
@OrdDate As DATETIME,
@OrdPrice AS DECIMAL(9,6),
@OrdQty AS INT,
@oggi AS DATETIME = GETDATE(),
@LastIdx AS INT,
@noRow AS CHAR(1) = 'N',
@TotRow AS INT = 0
SET XACT_ABORT ON;
SET @QuoteType = 'C' -- per il momento non lascio parametrico il quotetype = C - Costi
-- se non esiste il contatore creo il record
IF NOT EXISTS ( SELECT * FROM dbo.ContatoriQuote WHERE Flusso = @QuoteType )
INSERT INTO dbo.ContatoriQuote SELECT @QuoteType, 0
-- creo il listino da elaborare
CREATE TABLE #temp (
[IdxRiga] [int] IDENTITY(1,1),
-- [DataRif] [datetime] NOT NULL, -- CodQuote ha già la data
-- [QuoteType] [char](1) NOT NULL,
-- [CodClient] [nvarchar](50) NOT NULL,
[CodItem] [nvarchar](50) NOT NULL,
[RawMat] [nvarchar](50) NOT NULL,
[RawMatCost] [decimal](18, 6) NULL,
[RawMatExtraCost] [decimal](18, 6) NULL,
[batchQty] [int] NULL,
[CodInco] [nvarchar](5) NOT NULL
PRIMARY KEY ( [IdxRiga] ) WITH (PAD_INDEX = ON, FILLFACTOR = 100)
) ON [PRIMARY]
INSERT INTO #temp ( CodItem,RawMat,RawMatCost,RawMatExtraCost,batchQty,CodInco )
EXEC dbo.stp_QFC_creaListino @RawmatCost , @BatchQty
SET @TotRow = @@ROWCOUNT -- metto via record da elaborare
SELECT @TotRow
-- SELECT @TotRow = COUNT(*) FROM #temp WHERE QuoteType = @QuoteType
-- SET @TotRow = 100 -- elaboro solo 1000 x test
SELECT TOP 100 * FROM #temp ORDER BY [IdxRiga] DESC
WHILE( @TotRow > 0 )
BEGIN
-- ===========================================================
-- stacco il CodQuote da usare e sbocco la tabella ( in realtà perdo un numero se poi non faccio insert )
-- se non eseguo procedure multiple contemporanee non serve
-- ===========================================================
DECLARE @Table TABLE ( LastIdx INT )
BEGIN TRAN;
UPDATE dbo.ContatoriQuote
SET LastIdx = ( LastIdx % 1000000 ) + 1 -- si resetta dopo 1.000.000 righe ( in pratica ho tot righe al giorno )
OUTPUT inserted.LastIdx INTO @Table
WHERE Flusso = @QuoteType
SELECT @LastIdx = MAX(LastIdx) FROM @Table
SELECT @CodQuote = CONVERT( BIGINT, ( RIGHT(YEAR(@oggi),2) + dbo.f_padLeft(MONTH(@oggi), 2,'0') + dbo.f_padLeft(DAY(@oggi), 2,'0') + dbo.f_padLeft(@LastIdx, 8,'0') ) )
COMMIT;
-- ===========================================================
-- elaboro il record in sequenza
-- ===========================================================
-- SET TRANSACTION ISOLATION LEVEL REPEATABLE READ; -- SERIALIZABLE; -- REPEATABLE READ;
BEGIN TRY
-- BEGIN TRANSACTION;
-- leggo i valori di calcolo
SELECT @CodItem = CodItem,
@BatchQty = batchQty,
@RawMat = RawMat,
@RawMatCost = RawMatCost,
@RawMatExtraCost = RawMatExtraCost,
@CodInco = CodInco
FROM #temp
WHERE IdxRiga = @TotRow
IF @CodItem IS NOT NULL
BEGIN
-- -------------------------------------------------------
-- inserisco dati per elaborazione in QuoteList e QuoteRM
-- -------------------------------------------------------
INSERT INTO dbo.QuoteList( QuoteType, CodQuote, QuoteRev, CodClient, CodItem, UnitWeight, BatchQty, CodItemGroup, RawMat, CodInco, Note )
SELECT @QuoteType, @CodQuote, @QuoteRev, @CodClient, CodItem, UnitWeight, @BatchQty, CodItemGroup, @RawMat, @CodInco, @Note
FROM dbo.ItemDet
WHERE CodItem = @CodItem
INSERT INTO dbo.QuoteRM(QuoteType, CodQuote, QuoteRev, NumRM, RawMat, RawMatCost, RawMatExtraCost)
VALUES (@QuoteType, @CodQuote, @QuoteRev, 1, @RawMat, @RawMatCost, @RawMatExtraCost)
-- -------------------------------------------------------
-- ricalcolo!
-- -------------------------------------------------------
EXEC dbo.stp_QL_fullDataUpdate @QuoteType , @CodQuote , @QuoteRev, 'Y';
--SELECT * FROM dbo.QuoteList WHERE QuoteType = 'C' AND CodQuote = @CodQuote
--SELECT * FROM dbo.QuoteRM WHERE QuoteType = 'C' AND CodQuote = @CodQuote
--SELECT TOP(1000) * FROM dbo.QuoteFull_C WHERE QuoteType = 'C' AND CodQuote = @CodQuote
END
SET @TotRow = @TotRow -1 -- decremento righe da leggere
-- COMMIT TRAN;
END TRY
BEGIN CATCH
SELECT 'Error'
,@CodItem
,@CodClient
,@BatchQty
,@RawMat
,@RawMatCost
,@RawMatExtraCost
,@CodInco
, @TotRow
-- ROLLBACK
DECLARE @ErrorMessage NVARCHAR(4000);
DECLARE @ErrorSeverity INT;
DECLARE @ErrorState INT;
SELECT @ErrorMessage = ERROR_MESSAGE() + ' Error Number: ' + CONVERT( Varchar(10) , ERROR_NUMBER())
+ ' Severity: ' + CONVERT( Varchar(10) , ERROR_SEVERITY() ) + ' : '
+ ISNULL(ERROR_PROCEDURE(),'stored?')
+ ' Line: ' + CONVERT(VARCHAR(100),ERROR_LINE()),
@ErrorSeverity = 8, -- ERROR_SEVERITY(),
@ErrorState = ERROR_STATE();
RAISERROR (@ErrorMessage, -- Message text.
@ErrorSeverity, -- Severity.
@ErrorState -- State.
);
SET @TotRow = @TotRow -1 -- decremento righe da leggere
END CATCH
END -- END WHILE
/*
-- Pulizia Tabelle di appoggio x QuoteType = 'C'
DELETE FROM dbo.QuoteOC WHERE QuoteType = 'C'
DELETE FROM dbo.QuoteParam WHERE QuoteType = 'C'
DELETE FROM dbo.QuoteWorkExt WHERE QuoteType = 'C'
DELETE FROM dbo.QuoteWorkInt WHERE QuoteType = 'C'
DELETE FROM dbo.QuoteRM WHERE QuoteType = 'C'
DELETE FROM dbo.QuoteList WHERE QuoteType = 'C'
SELECT TOP 1000 * FROM dbo.QuoteList WHERE QuoteType = 'C' AND CodQuote = '14052600000001'
SELECT * FROM dbo.QuoteRM WHERE QuoteType = 'C' AND CodQuote = '14052600000001'
SELECT TOP 1000 * FROM dbo.QuoteOC WHERE QuoteType = 'C' AND CodQuote = '14052600000002'
SELECT TOP 1000 * FROM dbo.QuoteParam WHERE QuoteType = 'C' AND CodQuote = '14052600000993'
SELECT TOP 1000 * FROM dbo.QuoteWorkInt WHERE QuoteType = 'C' AND CodQuote = '14052600000993'
SELECT TOP 1000 * FROM ItemDet WHERE CodItem = '1BQ00012'
SELECT * FROM dbo.QuoteFull_C WHERE QuoteType = 'C'
-- RIPULISCO TUTTO
TRUNCATE TABLE dbo.QuoteFull_C
UPDATE dbo.ContatoriQuote
SET LastIdx = 0 WHERE Flusso = 'C'
*/
RETURN
@@ -0,0 +1,63 @@
-- =============================================
-- Author: Steamware - S.E.L.
-- Create date: 2014.04.16
-- Description: insert di un record in QL (Full) e poi aggiorna a cascata
-- =============================================
CREATE PROCEDURE [dbo].[stp_QLF_Insert]
(
@QuoteType CHAR(1) = 'Q',
@CodClient NVARCHAR(50) = '',
@CodItem NVARCHAR(50) = '',
@RawMat NVARCHAR(50),
@RawMatCost DECIMAL(18, 6),
@RawMatExtraCost DECIMAL(18, 6),
@BatchQty INT,
@CodInco NVARCHAR(5),
@Note NVARCHAR(2500) = ''
)
AS
-- variabili
DECLARE @CodQuote BIGINT = 0,
@QuoteRev INT = 0
-- check QTA: deve essere > 0 !!!
IF(@BatchQty = 0)
BEGIN
SET @BatchQty = 1
END
SET XACT_ABORT ON;
BEGIN TRAN
-- 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)
SELECT @QuoteType, @CodQuote, @QuoteRev, @CodClient, CodItem, UnitWeight, @BatchQty, CodItemGroup, @RawMat, @CodInco, @Note
FROM ItemDet
WHERE CodItem = @CodItem
-- ora inserisco in QuoteRM
INSERT INTO QuoteRM(QuoteType, CodQuote, QuoteRev, NumRM, RawMat, RawMatCost, RawMatExtraCost)
VALUES (@QuoteType, @CodQuote, @QuoteRev, 1, @RawMat, @RawMatCost, @RawMatExtraCost)
-- ricalcolo!
EXEC stp_QL_fullDataUpdate @QuoteType
,@CodQuote
,@QuoteRev
,'Y'
COMMIT TRAN
-- seleziono intera riga!
SELECT *
FROM v_QuoteFull_Q
WHERE QuoteType = @QuoteType
AND CodQuote = @CodQuote
AND QuoteRev = @QuoteRev
RETURN
@@ -1,9 +1,10 @@
-- =============================================
-- =============================================
-- Author: Steamware - S.E.L.
-- Create date: 2014.04.15
-- Description: update di un record in QL (Full) e poi aggiorna a cascata
-- =============================================
create PROCEDURE [dbo].[stp_QLF_UpdCosts]
CREATE PROCEDURE [dbo].[stp_QLF_UpdCosts]
(
@Original_QuoteType CHAR(1) = 'Q',
@Original_CodQuote BIGINT = 0,
@@ -12,6 +13,7 @@ create PROCEDURE [dbo].[stp_QLF_UpdCosts]
)
AS
SET XACT_ABORT ON;
BEGIN TRAN
-- aggiorno valori QuoteList!
@@ -1,4 +1,5 @@
-- =============================================
-- =============================================
-- Author: Steamware - S.E.L.
-- Create date: 2014.04.11
-- Description: update di un record in QL (Full) e poi aggiorna a cascata
@@ -19,19 +20,24 @@ CREATE PROCEDURE [dbo].[stp_QLF_UpdHead]
)
AS
SET XACT_ABORT ON;
BEGIN TRAN
-- aggiorno valori QuoteList!
UPDATE QuoteList
UPDATE ql
SET CodClient = @CodClient
, CodItem = @CodItem
, RawMat = @RawMat
, BatchQty = @BatchQty
, CodInco = @CodInco
, Note = @Note
WHERE QuoteType = @Original_QuoteType
AND CodQuote = @Original_CodQuote
AND QuoteRev = @Original_QuoteRev
, CodItemGroup= id.CodItemGroup
, UnitWeight = id.UnitWeight
FROM QuoteList ql
INNER JOIN ItemDet id ON id.CodItem = @CodItem
WHERE ql.QuoteType = @Original_QuoteType
AND ql.CodQuote = @Original_CodQuote
AND ql.QuoteRev = @Original_QuoteRev
-- aggiorno valori QuoteRM
UPDATE QuoteRM
@@ -1,9 +1,10 @@
-- =============================================
-- =============================================
-- Author: Steamware - S.E.L.
-- Create date: 2014.04.16
-- Description: update di un record in QL (Full) e poi aggiorna a cascata
-- =============================================
create PROCEDURE [dbo].[stp_QLF_UpdQState]
CREATE PROCEDURE [dbo].[stp_QLF_UpdQState]
(
@Original_QuoteType CHAR(1) = 'Q',
@Original_CodQuote BIGINT = 0,
@@ -12,6 +13,7 @@ create PROCEDURE [dbo].[stp_QLF_UpdQState]
)
AS
SET XACT_ABORT ON;
BEGIN TRAN
-- aggiorno valori QuoteList!
@@ -0,0 +1,13 @@
-- =============================================
-- Author: Steamware - S.E.L.
-- Create date: 2014.04.17
-- Description: recupera ultimo record del tipo richiesto
-- =============================================
create PROCEDURE [dbo].[stp_QLF_getLast]
AS
SELECT TOP 1 *
FROM v_QuoteFull_Q
ORDER BY CodQuote DESC
RETURN
@@ -0,0 +1,32 @@
-- =============================================
-- Author: Steamware - S.E.L.
-- Create date: 2014.04.23
-- Description: recupera record min/max per qta batch dato intervallo di analisi
-- =============================================
CREATE PROCEDURE [dbo].[stp_QLF_getMinMax]
(
@DateMin INT, -- formato aammgg
@DateMax INT -- formato aammgg
)
AS
WITH cteMin AS
(
SELECT TOP 1 *
FROM v_QuoteFull_Q
WHERE CodQuote BETWEEN @DateMin AND @DateMax
ORDER BY BatchQty
)
, cteMax AS
(
SELECT TOP 1 *
FROM v_QuoteFull_Q
WHERE CodQuote BETWEEN @DateMin AND @DateMax
ORDER BY BatchQty DESC
)
SELECT * FROM cteMin
UNION
SELECT * FROM cteMax
RETURN
@@ -0,0 +1,23 @@
-- =============================================
-- STORED PROCEDURE stp_QLF_revHist
--
-- Author: Steamware
-- Create date: 2014.04.29
-- Description: Recupera tutte le revisioni di un offerta
-- =============================================
create PROCEDURE stp_QLF_revHist
(
@QuoteType CHAR(1) = 'Q'
, @CodQuote BIGINT = 0
)
AS
SET NOCOUNT ON
-- calcolo con aggiunta campi sommati...
SELECT vq.*
FROM v_QuoteFull_Q vq
WHERE QuoteType = @QuoteType
AND CodQuote = @CodQuote
ORDER BY QuoteRev DESC
RETURN
@@ -0,0 +1,20 @@
-- =============================================
-- Author: Steamware
-- Mod. date: 2014.05.27
-- Description: elaborazione OrdersHist
-- =============================================
CREATE PROCEDURE [dbo].[stp_QLR_getByDate]
(
@DataRif INT
)
AS
BEGIN
SET NOCOUNT ON;
SELECT *
FROM v_StdCostList
WHERE DataRif = @DataRif
END
RETURN
@@ -0,0 +1,185 @@
-- =============================================
-- Author: Steamware
-- Mod. date: 2014.05.22
-- Description: elaborazione OrdersHist Redditivity
-- =============================================
CREATE PROCEDURE [dbo].[stp_QLR_insNew]
(
@QuoteType CHAR(1) = 'R',
@Note NVARCHAR(2500) = '',
@row2proc INT = 100
)
AS
BEGIN
SET NOCOUNT ON;
-- declare variabili
DECLARE @CodQuote AS BIGINT,
@QuoteRev AS INT = 0,
@OrdNum AS NVARCHAR(50),
@OrdRow AS NVARCHAR(50),
@CodItem AS NVARCHAR(50),
@CodClient AS NVARCHAR(50),
@BatchQty AS INT,
@RawMat AS NVARCHAR(50),
@RawMatCost AS DECIMAL(18,6),
@RawMatExtraCost AS DECIMAL(18,6),
@CodInco AS NVARCHAR(5),
@PriceOff AS DECIMAL(9,6),
@OrdDate As DATETIME,
@OrdPrice AS DECIMAL(9,6),
@OrdQty AS INT,
@ProvvCost AS DECIMAL(9,6),
@oggi AS DATETIME = GETDATE(),
@LastIdx AS INT,
@noRow AS CHAR(1) = 'N'
SET XACT_ABORT ON;
SET @QuoteType = 'R' -- per il momento non lascio parametrico il quotetype R - redditività
-- se non esiste il contatore creo il record
IF NOT EXISTS ( SELECT * FROM dbo.ContatoriQuote WHERE Flusso = @QuoteType )
INSERT INTO dbo.ContatoriQuote SELECT @QuoteType, 0
-- verifico se ci sono record da elaborare
IF EXISTS ( SELECT * FROM dbo.OrdersHist WHERE CodQuote = 0 )
SET @noRow = 'N'
WHILE( @noRow = 'N' AND @row2proc > 0)
BEGIN
-- ===========================================================
-- stacco il CodQuote da usare e sbocco la tabella ( in realtà perdo un numero se poi non faccio insert )
-- se non eseguo procedure multiple contemporanee non serve
-- ===========================================================
-- SET TRANSACTION ISOLATION LEVEL SERIALIZABLE; -- credo non serva con OUTPUT
DECLARE @Table TABLE ( LastIdx INT )
BEGIN TRAN;
UPDATE dbo.ContatoriQuote
SET LastIdx = ( LastIdx % 1000000 ) + 1 -- si resetta dopo 1.000.000 righe ( in pratica ho tot righe x giorno )
OUTPUT inserted.LastIdx INTO @Table
WHERE Flusso = @QuoteType
SELECT @LastIdx = MAX(LastIdx) FROM @Table
SELECT @CodQuote = CONVERT( BIGINT, ( RIGHT(YEAR(@oggi),2) + dbo.f_padLeft(MONTH(@oggi), 2,'0') + dbo.f_padLeft(DAY(@oggi), 2,'0') + dbo.f_padLeft(@LastIdx, 8,'0') ) )
COMMIT;
-- ===========================================================
-- elaboro il primo ordine "libero" assegnando il CodQuote
-- se da errore la transazione mi annulla il codquote e quindi rimane elaborabile
-- altrimenti metto l'assegnazione nella tran precedente e poi decido cosa fare con quelli non completati con data EndCalc = NULL
-- ===========================================================
-- SET TRANSACTION ISOLATION LEVEL REPEATABLE READ; -- SERIALIZABLE; -- REPEATABLE READ;
BEGIN TRANSACTION;
-- leggo il primo ordine da elaborare e assegno il CodQuote
WITH cteOrderFree AS
( -- leggo il primo ordine da elaborare e assegno il CodQuote
SELECT TOP(1) OrdNum, OrdRow FROM dbo.OrdersHist WHERE CodQuote = 0
)
UPDATE Ord
SET CodQuote = @CodQuote,
QuoteType = @QuoteType
FROM dbo.OrdersHist AS ord
INNER JOIN cteOrderFree AS cte
ON ord.OrdNum = cte.OrdNum AND ord.OrdRow = cte.OrdRow
-- leggo i valori di calcolo
SET @OrdNum = NULL
SELECT @OrdNum = OrdNum,
@OrdRow = OrdRow ,
@CodItem = hi.CodItem,
@CodClient = CodClient,
@BatchQty = BatchQty,
@RawMat = RawMat,
@RawMatCost = RawMatCost,
@RawMatExtraCost = RawMatExtraCost,
@CodInco = CodInco,
@PriceOff = PriceOff,
@OrdPrice = OrdPrice,
@OrdDate = OrdDate,
@OrdQty = OrdQty,
@ProvvCost = ProvvCost
FROM dbo.OrdersHist hi
INNER JOIN dbo.ItemDet AS It ON hi.CodItem = it.CodItem -- deve esistere il codice in anagrafica altrimenti non lo elaboro
WHERE CodQuote = @CodQuote AND QuoteType = @QuoteType
OPTION (RECOMPILE)
IF @OrdNum IS NOT NULL -- record precedente trovato
BEGIN
-- inserisco riga in QuoteList
INSERT INTO dbo.QuoteList( QuoteType, CodQuote, QuoteRev, CodClient, CodItem, UnitWeight, BatchQty, CodItemGroup, RawMat, CodInco, Note, PriceOff, OrdNum, OrdRow, OrdDate, OrdPrice, OrdQty )
SELECT @QuoteType, @CodQuote, @QuoteRev, @CodClient, CodItem, UnitWeight, @BatchQty, CodItemGroup, @RawMat, @CodInco, @Note , @PriceOff, @OrdNum, @OrdRow, @OrdDate ,@OrdPrice, @OrdQty
FROM dbo.ItemDet
WHERE CodItem = @CodItem
-- ora inserisco in QuoteRM
INSERT INTO dbo.QuoteRM(QuoteType, CodQuote, QuoteRev, NumRM, RawMat, RawMatCost, RawMatExtraCost)
VALUES (@QuoteType, @CodQuote, @QuoteRev, 1, @RawMat, @RawMatCost, @RawMatExtraCost)
-- ora inserisco ProvvCost in QuoteSimPar che mi serve dopo nei calcoli dopo
INSERT INTO dbo.QuoteSimPar(QuoteType, CodQuote, QuoteRev, NomePar, ValPar)
VALUES (@QuoteType, @CodQuote, @QuoteRev, 'ProvvCost', @ProvvCost)
-- ricalcolo!
EXEC dbo.stp_QL_fullDataUpdate @QuoteType , @CodQuote , @QuoteRev, 'Y';
-- aggiorno data-ora fine elaborazione
UPDATE dbo.OrdersHist
SET EndCalc = GETDATE()
WHERE CodQuote = @CodQuote AND QuoteType = @QuoteType;
--SELECT * FROM dbo.OrdersHist WHERE QuoteType = 'R' AND CodQuote = @CodQuote
--SELECT * FROM dbo.QuoteList WHERE QuoteType = 'R' AND CodQuote = @CodQuote
--SELECT * FROM dbo.QuoteRM WHERE QuoteType = 'R' AND CodQuote = @CodQuote
--SELECT TOP(1000) * FROM dbo.QuoteFull_R WHERE QuoteType = 'R' AND CodQuote = @CodQuote
END
ELSE
SET @noRow = 'Y' -- fine righe da elaborare
COMMIT TRAN;
SET @row2proc = @row2proc - 1
END -- END WHILE
RETURN
END
/*
-- Pulizia Tabelle di appoggio x QuoteType = 'R'
DELETE FROM dbo.QuoteOC WHERE QuoteType = 'R'
DELETE FROM dbo.QuoteParam WHERE QuoteType = 'R'
DELETE FROM dbo.QuoteWorkExt WHERE QuoteType = 'R'
DELETE FROM dbo.QuoteWorkInt WHERE QuoteType = 'R'
DELETE FROM dbo.QuoteRM WHERE QuoteType = 'R'
DELETE FROM dbo.QuoteList WHERE QuoteType = 'R'
DELETE FROM dbo.QuoteSimPar WHERE QuoteType = 'R'
SELECT TOP 1000 * FROM dbo.QuoteList WHERE QuoteType = 'R'
SELECT TOP 1000 * FROM dbo.QuoteRM WHERE QuoteType = 'R'
SELECT TOP 1000 * FROM dbo.QuoteOC WHERE QuoteType = 'R'
SELECT TOP 1000 * FROM dbo.QuoteParam WHERE QuoteType = 'R'
SELECT TOP 1000 * FROM dbo.QuoteWorkExt WHERE QuoteType = 'R'
SELECT TOP 1000 * FROM dbo.QuoteWorkInt WHERE QuoteType = 'R'
SELECT * FROM dbo.OrdersHist
SELECT * FROM dbo.QuoteFull_R WHERE QuoteType = 'R'
-- RIPULISCO TUTTO
TRUNCATE TABLE dbo.QuoteFull_R
UPDATE dbo.OrdersHist
SET CodQuote = 0
UPDATE dbo.ContatoriQuote
SET LastIdx = 0 WHERE Flusso = 'R'
-- SE RICARICO DA ZERO GLI ORDINI
TRUNCATE TABLE dbo.OrdersHist
*/
@@ -0,0 +1,53 @@
-- =============================================
-- Author: Steamware - S.E.L.
-- Create date: 2014.05.20
-- Description: update di un record in QL (Full) TIPO SIMULAZIONE e poi aggiorna a cascata
-- =============================================
CREATE PROCEDURE [dbo].[stp_QLS_UpdDiesPar]
(
@Original_QuoteType CHAR(1) = 'S',
@Original_CodQuote BIGINT = 0,
@Original_QuoteRev INT = 0,
@SamplePrice DECIMAL(18, 6),
@DiesPriceClientQuote DECIMAL(18, 6),
@DiesCommLife DECIMAL(18, 6),
@MonthSalesPrev INT
)
AS
SET XACT_ABORT ON;
BEGIN TRAN
-- @SamplePrice
EXEC stp_QSP_upsert @Original_QuoteType, @Original_CodQuote, @Original_QuoteRev, 'SamplePrice', @SamplePrice
-- @DiesPriceClientQuote
EXEC stp_QSP_upsert @Original_QuoteType, @Original_CodQuote, @Original_QuoteRev, 'DiesPriceClientQuote', @DiesPriceClientQuote
-- @DiesCommLife
EXEC stp_QSP_upsert @Original_QuoteType, @Original_CodQuote, @Original_QuoteRev, 'DiesCommLife', @DiesCommLife
-- @MonthSalesPrev
EXEC stp_QSP_upsert @Original_QuoteType, @Original_CodQuote, @Original_QuoteRev, 'MonthSalesPrev', @MonthSalesPrev
-- 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
@@ -0,0 +1,77 @@
-- =============================================
-- 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_UpdExtrPar]
(
@Original_QuoteType CHAR(1) = 'S',
@Original_CodQuote BIGINT = 0,
@Original_QuoteRev INT = 0,
@TipoDies NVARCHAR(50) = '',
@DiamDies INT = 1,
@HoleNumDies INT = 1,
@CodPlant NVARCHAR(50),
@DiesPrice_sim DECIMAL(18, 6),
@DiesTecLife DECIMAL(18, 6),
@WSR01_sim DECIMAL(9, 8),
@MSR01_sim DECIMAL(9, 8),
@NetProd01_sim DECIMAL(9, 3)
)
AS
SET XACT_ABORT ON;
BEGIN TRAN
-- dichiaro e calcolo valore complessivo...
DECLARE @CodDiesGroup NVARCHAR(50) = ''
SELECT @CodDiesGroup = @TipoDies + '-' + CAST(@DiamDies AS VARCHAR(50)) + '-' + CAST(@HoleNumDies AS VARCHAR(50)) + '-' + CodItemGroup
FROM QuoteList
WHERE QuoteType = @Original_QuoteType
AND CodQuote = @Original_CodQuote
AND QuoteRev = @Original_QuoteRev
-- @CodDiesGroup
EXEC stp_QSP_upsert @Original_QuoteType, @Original_CodQuote, @Original_QuoteRev, 'CodDiesGroup', @CodDiesGroup
-- @CodPlant
EXEC stp_QSP_upsert @Original_QuoteType, @Original_CodQuote, @Original_QuoteRev, 'CodPlant', @CodPlant
-- @DiesPrice_sim
EXEC stp_QSP_upsert @Original_QuoteType, @Original_CodQuote, @Original_QuoteRev, 'DiesPrice_sim', @DiesPrice_sim
-- @DiesTecLife
EXEC stp_QSP_upsert @Original_QuoteType, @Original_CodQuote, @Original_QuoteRev, 'DiesTecLife', @DiesTecLife
-- @WSR01_sim
EXEC stp_QSP_upsert @Original_QuoteType, @Original_CodQuote, @Original_QuoteRev, 'WSR01_sim', @WSR01_sim
-- @MSR01_sim
EXEC stp_QSP_upsert @Original_QuoteType, @Original_CodQuote, @Original_QuoteRev, 'MSR01_sim', @MSR01_sim
-- @NetProd01_sim
EXEC stp_QSP_upsert @Original_QuoteType, @Original_CodQuote, @Original_QuoteRev, 'NetProd01_sim', @NetProd01_sim
-- 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
@@ -0,0 +1,84 @@
-- =============================================
-- 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),
@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
-- 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
@@ -0,0 +1,45 @@
-- =============================================
-- Author: Steamware - S.E.L.
-- Create date: 2014.05.20
-- Description: update di un record in QL (Full) TIPO SIMULAZIONE e poi aggiorna a cascata
-- =============================================
CREATE PROCEDURE [dbo].[stp_QLS_UpdPackPar]
(
@Original_QuoteType CHAR(1) = 'S',
@Original_CodQuote BIGINT = 0,
@Original_QuoteRev INT = 0,
@CodPackag NVARCHAR(50),
@DSR_sim DECIMAL(9, 8)
)
AS
SET XACT_ABORT ON;
BEGIN TRAN
-- @CodPackag
EXEC stp_QSP_upsert @Original_QuoteType, @Original_CodQuote, @Original_QuoteRev, 'CodPackag', @CodPackag
-- @DSR_sim
EXEC stp_QSP_upsert @Original_QuoteType, @Original_CodQuote, @Original_QuoteRev, 'DSR_sim', @DSR_sim
-- 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
@@ -0,0 +1,139 @@
-- =============================================
-- 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
)
AS
-- variabili
DECLARE @CodQuote BIGINT = 0,
@QuoteRev INT = 0
SET XACT_ABORT ON;
BEGIN TRAN
-- 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
-- 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 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, '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
END
-- ricalcolo!
EXEC stp_QL_fullDataUpdate @QuoteType
,@CodQuote
,@QuoteRev
,'Y'
COMMIT TRAN
-- seleziono intera riga!
SELECT *
FROM QuoteList
WHERE QuoteType = @QuoteType
AND CodQuote = @CodQuote
AND QuoteRev = @QuoteRev
RETURN
@@ -0,0 +1,78 @@
-- =============================================
-- Author: Steamware
-- Create date: 2013.01.23
-- Description: elimina record QuoteList
-- =============================================
CREATE PROCEDURE [dbo].[stp_QL_delete]
(
@QuoteType_orig CHAR(1) = 'Q',
@CodQuote_orig BIGINT = 0,
@QuoteRev_orig INT = 0
)
AS
SET XACT_ABORT ON;
BEGIN TRAN
DELETE
FROM QuoteFull_Q
WHERE QuoteType = @QuoteType_orig
AND CodQuote = @CodQuote_orig
AND QuoteRev = @QuoteRev_orig
DELETE
FROM QuoteFull_S
WHERE QuoteType = @QuoteType_orig
AND CodQuote = @CodQuote_orig
AND QuoteRev = @QuoteRev_orig
DELETE
FROM QuoteFull_R
WHERE QuoteType = @QuoteType_orig
AND CodQuote = @CodQuote_orig
AND QuoteRev = @QuoteRev_orig
DELETE
FROM QuoteWorkExt
WHERE QuoteType = @QuoteType_orig
AND CodQuote = @CodQuote_orig
AND QuoteRev = @QuoteRev_orig
DELETE
FROM QuoteWorkInt
WHERE QuoteType = @QuoteType_orig
AND CodQuote = @CodQuote_orig
AND QuoteRev = @QuoteRev_orig
DELETE
FROM QuoteOC
WHERE QuoteType = @QuoteType_orig
AND CodQuote = @CodQuote_orig
AND QuoteRev = @QuoteRev_orig
DELETE
FROM QuoteParam
WHERE QuoteType = @QuoteType_orig
AND CodQuote = @CodQuote_orig
AND QuoteRev = @QuoteRev_orig
DELETE
FROM QuoteRM
WHERE QuoteType = @QuoteType_orig
AND CodQuote = @CodQuote_orig
AND QuoteRev = @QuoteRev_orig
DELETE
FROM QuoteList
WHERE QuoteType = @QuoteType_orig
AND CodQuote = @CodQuote_orig
AND QuoteRev = @QuoteRev_orig
COMMIT TRAN
RETURN
@@ -0,0 +1,31 @@
-- =============================================
-- Author: Steamware
-- Mod date: 2014.05.23
-- Description: conteggio totale record QL
-- =============================================
CREATE PROCEDURE dbo.stp_QL_fullDataCount
(
@CodClient NVARCHAR(50) = ''
, @CodItem NVARCHAR(50) = ''
, @RawMat NVARCHAR(50) = ''
, @DataMin DATETIME
, @DataMax DATETIME
, @qtaMin INT = 0
, @qtaMax INT = 999999
, @QuoteType CHAR(1) = '*'
, @IdxQState INT = '-1'
)
AS
SET NOCOUNT ON
SELECT COUNT(DISTINCT CodQuote) AS num
FROM v_QuoteFull_Q vq
WHERE vq.CodClient = CASE WHEN ISNULL(@CodClient,'') = '' THEN vq.CodClient ELSE @CodClient END
AND vq.CodItem = CASE WHEN ISNULL(@CodItem,'') = '' THEN vq.CodItem ELSE @CodItem END
AND vq.RawMat = CASE WHEN ISNULL(@RawMat,'') = '' THEN vq.RawMat ELSE @RawMat END
AND vq.CodQuote BETWEEN CONVERT(NVARCHAR(30), @DataMin, 12)*10000 AND (CONVERT(NVARCHAR(30), @DataMax, 12) +1 )*10000
AND vq.BatchQty BETWEEN @qtaMin AND @qtaMax
AND vq.QuoteType = CASE WHEN @QuoteType = '*' THEN vq.QuoteType ELSE @QuoteType END
AND vq.IdxQState = CASE WHEN @IdxQState = -1 THEN vq.IdxQState ELSE @IdxQState END
RETURN
@@ -1,57 +1,56 @@
-- =============================================
-- =============================================
-- Author: Steamware
-- Create date: 2014.02.21
-- Description: inserisce un nuovo record QuoteList
-- =============================================
CREATE PROCEDURE [dbo].[stp_QL_insNew]
(
@QuoteType CHAR(1) = 'Q',
-- @CodQuote BIGINT = 0,
-- @QuoteRev INT = 0,
@CodClient NVARCHAR(50) = '',
@CodItem NVARCHAR(50) = '',
@RawMat NVARCHAR(50),
@RawMatCost DECIMAL(18, 6),
@RawMatExtraCost DECIMAL(18, 6),
@BatchQty INT,
@CodInco NVARCHAR(5),
@Note NVARCHAR(2500)
@QuoteType CHAR(1) = 'Q',
@CodClient NVARCHAR(50) = '',
@CodItem NVARCHAR(50) = '',
@RawMat NVARCHAR(50),
@RawMatCost DECIMAL(18, 6),
@RawMatExtraCost DECIMAL(18, 6),
@BatchQty INT,
@CodInco NVARCHAR(5),
@Note NVARCHAR(2500)
)
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, CodItemGroup, RawMat, CodInco, Note)
SELECT @QuoteType, @CodQuote, @QuoteRev, @CodClient, CodItem, UnitWeight, CodItemGroup, @RawMat, @CodInco, @Note
-- inserisco riga in QuoteList
INSERT INTO QuoteList(QuoteType, CodQuote, QuoteRev, CodClient, CodItem, UnitWeight, BatchQty, CodItemGroup, RawMat, CodInco, Note)
SELECT @QuoteType, @CodQuote, @QuoteRev, @CodClient, CodItem, UnitWeight, @BatchQty, CodItemGroup, @RawMat, @CodInco, @Note
FROM ItemDet
WHERE CodItem = @CodItem
-- ora inserisco in QuoteRM
INSERT INTO QuoteRM(QuoteType, CodQuote, QuoteRev, NumRM, RawMat, RawMatCost, RawMatExtraCost)
VALUES (@QuoteType, @CodQuote, @QuoteRev, 1, @RawMat, @RawMatCost, @RawMatExtraCost)
-- ora inserisco in QuoteRM
INSERT INTO QuoteRM(QuoteType, CodQuote, QuoteRev, NumRM, RawMat, RawMatCost, RawMatExtraCost)
VALUES (@QuoteType, @CodQuote, @QuoteRev, 1, @RawMat, @RawMatCost, @RawMatExtraCost)
-- ricalcolo!
EXEC stp_QL_fullDataUpdate @QuoteType
, @CodQuote
, @QuoteRev
, 'N'
COMMIT TRAN
-- ricalcolo!
EXEC stp_QL_fullDataUpdate @QuoteType
,@CodQuote
,@QuoteRev
,'Y'
-- 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,112 @@
-- =============================================
-- Author: Steamware
-- Mod date: 2014.05.21
-- Description: modifica una quotazione da Q ad S in QuoteList e ricalcola
-- =============================================
CREATE PROCEDURE [dbo].[stp_QL_makeSim]
(
@CodQuote_orig BIGINT = 0,
@QuoteRev_orig INT = 0
)
AS
SET XACT_ABORT ON;
BEGIN TRAN
-- passo x definizione a 'S'
DECLARE @QuoteType_orig CHAR(1) = 'Q',
@QuoteType CHAR(1) = 'S'
-- elimino record in QuoteFull_Q
DELETE
FROM QuoteFull_Q
WHERE QuoteType = @QuoteType_orig
AND CodQuote = @CodQuote_orig
AND QuoteRev = @QuoteRev_orig
-- carico alcuni dati accessori precompilando...
INSERT INTO QuoteSimPar(QuoteType, CodQuote, QuoteRev, NomePar, ValPar)
SELECT @QuoteType, @CodQuote_orig, @QuoteRev_orig, 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_orig, @QuoteRev_orig, '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_orig, @QuoteRev_orig, '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_orig, @QuoteRev_orig, '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_orig, @QuoteRev_orig, '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_orig, @QuoteRev_orig, '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_orig, @QuoteRev_orig, '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_orig, @QuoteRev_orig, 'DSR_sim', DSR
FROM QuoteWorkInt
WHERE QuoteType = @QuoteType_orig
AND CodQuote = @CodQuote_orig
AND QuoteRev = @QuoteRev_orig
AND ProcessNum = '04'
-- update riga in QuoteList
UPDATE QuoteList
SET QuoteType = @QuoteType
WHERE QuoteType = @QuoteType_orig
AND CodQuote = @CodQuote_orig
AND QuoteRev = @QuoteRev_orig
-- ricalcolo!
EXEC stp_QL_fullDataUpdate @QuoteType
, @CodQuote_orig
, @QuoteRev_orig
, 'Y'
COMMIT TRAN
-- seleziono intera riga!
SELECT *
FROM QuoteList
WHERE QuoteType = @QuoteType
AND CodQuote = @CodQuote_orig
AND QuoteRev = @QuoteRev_orig
RETURN
@@ -0,0 +1,53 @@
-- =============================================
-- 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',
@CodQuote BIGINT = 0,
@QuoteRev_orig INT = 0
)
AS
-- variabili
DECLARE @QuoteRev INT = 0
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
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
AND CodQuote = @CodQuote
AND QuoteRev = @QuoteRev_orig
-- ricalcolo!
EXEC stp_QL_fullDataUpdate @QuoteType
,@CodQuote
,@QuoteRev
,'Y'
COMMIT TRAN
-- seleziono intera riga!
SELECT *
FROM QuoteList
WHERE QuoteType = @QuoteType
AND CodQuote = @CodQuote
AND QuoteRev = @QuoteRev
RETURN
@@ -0,0 +1,44 @@
-- =============================================
-- 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_QSP_upsert]
(
@QuoteType CHAR(1) = 'S',
@CodQuote BIGINT = 0 ,
@QuoteRev INT = 0 ,
@NomePar NVARCHAR(50) = '' ,
@ValPar NVARCHAR(50) = ''
)
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
-- variabili
DECLARE @trovati INT = 0
-- inserisco CodDiesGroup
SELECT @trovati = COUNT(*)
FROM QuoteSimPar
WHERE QuoteType = @QuoteType
AND CodQuote = @CodQuote
AND QuoteRev = @QuoteRev
AND NomePar = @NomePar
IF(@trovati = 0)
BEGIN
INSERT INTO QuoteSimPar(QuoteType, CodQuote, QuoteRev, NomePar, ValPar)
VALUES(@QuoteType, @CodQuote, @QuoteRev, @NomePar, @ValPar)
END
ELSE
BEGIN
UPDATE QuoteSimPar
SET ValPar = @ValPar
WHERE QuoteType = @QuoteType
AND CodQuote = @CodQuote
AND QuoteRev = @QuoteRev
AND NomePar = @NomePar
END
END
@@ -1,4 +1,5 @@
-- =============================================
-- =============================================
-- Author: Steamware
-- Create date: 2014.02.23
-- Description: upelimina tutti i record di un offerta
@@ -11,6 +12,7 @@ CREATE PROCEDURE [dbo].[stp_QuoteFull_delete]
)
AS
SET XACT_ABORT ON;
BEGIN tran
-- elimino da QuoteFull
DELETE
@@ -0,0 +1,9 @@
CREATE PROCEDURE [dbo].stp_RMD_getByKey
(
@RawMat nvarchar(50)
)
AS
SET NOCOUNT ON;
SELECT RawMat, ProcCost, ProcYield, CSR, SSR, SSVA, SSVR, ExtraMatCost, ExtraServCost
FROM RawMatDet
WHERE (RawMat = @RawMat)
@@ -0,0 +1,32 @@
-- =============================================
-- Author: Steamware
-- Create date: 2014.04.28
-- Description: insert record di stampa
-- =============================================
CREATE PROCEDURE [dbo].[stp_RPT_insertNew]
(
@Ticket INT,
@Report NVARCHAR(50),
@Chiave NVARCHAR(250),
@UserReq NVARCHAR(50),
@DataReq DATETIME,
@deleteOld BIT = 0
)
AS
SET NOCOUNT OFF;
SET XACT_ABORT ON;
BEGIN TRAN
-- se richiesto elimino record vecchi (utile x togliere segnaposto iniziale)
IF(@deleteOld = 1)
BEGIN
DELETE FROM ReportPrintTicket WHERE Ticket = @Ticket
END
INSERT INTO ReportPrintTicket (Ticket, Report, Chiave, UserReq, DataReq)
VALUES (@Ticket, @Report, @Chiave, @UserReq, @DataReq)
COMMIT TRAN
@@ -0,0 +1,35 @@
-- =============================================
-- Author: Steamware
-- Create date: 2014.04.28
-- Description: riserva un record per insert richiesta di stampa
-- =============================================
CREATE PROCEDURE [dbo].[stp_RPT_reserveTicket]
(
@Report nvarchar(50),
@UserReq nvarchar(50)
)
AS
SET NOCOUNT OFF;
DECLARE @Ticket int = 0
, @Chiave nvarchar(250) = '-'
, @DataReq datetime = GETDATE()
SET XACT_ABORT ON;
BEGIN TRAN
SELECT @Ticket = MAX(Ticket)
FROM ReportPrintTicket
SET @Ticket = ISNULL(@Ticket, 0) + 1
INSERT INTO [dbo].[ReportPrintTicket] ([Ticket], [Report], [Chiave], [UserReq], [DataReq])
VALUES (@Ticket, @Report, @Chiave, @UserReq, @DataReq)
COMMIT TRAN
SELECT Ticket, Report, Chiave, UserReq, DataReq, DataPrint
FROM ReportPrintTicket
WHERE Ticket = @Ticket
@@ -0,0 +1,16 @@
-- =============================================
-- Author: Steamware
-- Mod. date: 2014.05.27
-- Description: conteggio StandardCostList ancora da processare
-- =============================================
CREATE PROCEDURE [dbo].[stp_SC2C_countRemaining]
AS
DECLARE @Date AS SMALLDATETIME = CONVERT(SMALLDATETIME,CONVERT(CHAR(8), GETDATE(), 112))
SELECT COUNT(*) as RecordsIn
FROM dbo.CostList
WHERE DateList = @Date AND QuoteType = 'C' AND CodQuote = 0
RETURN
@@ -0,0 +1,37 @@
-- =============================================
-- Author: Steamware
-- Mod. date: 2014.05.29
-- Description: cancellazione Cost List per data
-- =============================================
CREATE PROCEDURE [dbo].[stp_SC2C_deleteForDate]
@Date SMALLDATETIME
AS
BEGIN
SET NOCOUNT ON;
DECLARE @CodQuoteDateMin BIGINT,
@CodQuoteDateMax BIGINT;
SET @Date = CONVERT(SMALLDATETIME,CONVERT(CHAR(8), @Date, 112))
SET @CodQuoteDateMin = CONVERT( BIGINT, ( RIGHT(YEAR(@Date),2) + dbo.f_padLeft(MONTH(@Date), 2,'0') + dbo.f_padLeft(DAY(@Date), 2,'0') + dbo.f_padLeft(0, 8,'0') ) )
SET @CodQuoteDateMax = CONVERT( BIGINT, ( RIGHT(YEAR(@Date),2) + dbo.f_padLeft(MONTH(@Date), 2,'0') + dbo.f_padLeft(DAY(@Date), 2,'0') + dbo.f_padLeft(9, 8,'9') ) )
-- cancello i dati di carico
DELETE FROM dbo.CostList WHERE DateList = @Date AND QuoteType = 'C'
DELETE FROM dbo.QuoteOC WHERE QuoteType = 'C' AND CodQuote >= @CodQuoteDateMin AND CodQuote <= @CodQuoteDateMax
DELETE FROM dbo.QuoteParam WHERE QuoteType = 'C' AND CodQuote >= @CodQuoteDateMin AND CodQuote <= @CodQuoteDateMax
DELETE FROM dbo.QuoteWorkExt WHERE QuoteType = 'C' AND CodQuote >= @CodQuoteDateMin AND CodQuote <= @CodQuoteDateMax
DELETE FROM dbo.QuoteWorkInt WHERE QuoteType = 'C' AND CodQuote >= @CodQuoteDateMin AND CodQuote <= @CodQuoteDateMax
DELETE FROM dbo.QuoteRM WHERE QuoteType = 'C' AND CodQuote >= @CodQuoteDateMin AND CodQuote <= @CodQuoteDateMax
DELETE FROM dbo.QuoteList WHERE QuoteType = 'C' AND CodQuote >= @CodQuoteDateMin AND CodQuote <= @CodQuoteDateMax
DELETE FROM dbo.QuoteFull_C WHERE QuoteType = 'C' AND CodQuote >= @CodQuoteDateMin AND CodQuote <= @CodQuoteDateMax
-- RIPULISCO TUTTO
-- TRUNCATE TABLE CostList
-- TRUNCATE TABLE dbo.QuoteFull_C
RETURN
END
@@ -0,0 +1,29 @@
-- =============================================
-- Author: Steamware
-- Mod. date: 2014.05.29
-- Description: creazione dati base per Cost List per data odierna
-- =============================================
CREATE PROCEDURE [dbo].[stp_SC2C_insertForDate]
@RawMatCost DECIMAL(18,6) = 2,
@BatchQty INT = 1000
AS
BEGIN
DECLARE @Date AS SMALLDATETIME = CONVERT( SMALLDATETIME,CONVERT(CHAR(8), GETDATE(), 112) ) ;
-- ===========================================================
-- se non esiste, CREO DATI LISTINO COSTI per il giorno
-- ===========================================================
IF NOT EXISTS( SELECT * FROM dbo.CostList WHERE QuoteType = 'C' AND DateList = @Date )
BEGIN
INSERT INTO dbo.CostList WITH (TABLOCK) ( DateList,CodItem,RawMat,RawMatCost,RawMatExtraCost,batchQty,CodInco )
EXEC dbo.stp_QFC_creaListino @RawmatCost , @BatchQty
-- aggiorno statistiche tabella
UPDATE STATISTICS dbo.CostList WITH FULLSCAN;
END
RETURN
END
@@ -0,0 +1,26 @@
-- =============================================
-- Author: Steamware
-- Create date: 2014.05.11
-- Description: elenco dati produzione x item indicato
-- =============================================
CREATE PROCEDURE dbo.stp_checkOffers4Item (@CodItem NVARCHAR(50) = '')
AS
SELECT rmd.RawMat
, ISNULL(@CodItem,'-') AS CodItem
, COUNT(pl.EventStart) AS numRec
FROM RawMatDet rmd
LEFT JOIN (
SELECT pl.EventStart
, pl.RawMat
FROM ProductionLog pl
INNER JOIN DiesDet dd
ON pl.CodDies = dd.CodDies
WHERE dd.CodItem = @CodItem
AND ISNULL(pl.RawMat, '') <> ''
) AS pl
ON rmd.RawMat = pl.RawMat
WHERE ISNULL(rmd.RawMat, '') <>''
GROUP BY rmd.RawMat
ORDER BY rmd.RawMat
RETURN
@@ -0,0 +1,52 @@
-- =============================================
-- Author: G.A.R.
-- Mad. date: 2014-06-06
-- Description: Ritorna il package e i dati associati dove presenti
-- sostituisce la relativa funzione UDF f_getDataCodPackag
-- =============================================
CREATE PROCEDURE [stp_getDataCodPackag]
@CodItem NVARCHAR(50),
@CodClient NVARCHAR(50),
-- output variable
@CodPackag NVARCHAR(50) OUTPUT,
@TotQta DECIMAL(18, 3) OUTPUT,
@Weight DECIMAL(18, 6) OUTPUT,
@Tare DECIMAL(18, 6) OUTPUT,
@NumImb DECIMAL(9, 6) OUTPUT,
@Durata DECIMAL(18, 6) OUTPUT,
@LivPackag NVARCHAR(50) OUTPUT,
@LivPackagDet NVARCHAR(50) OUTPUT
AS
BEGIN
SET NOCOUNT ON;
SET XACT_ABORT ON;
IF EXISTS ( SELECT * FROM dbo.Package2ItemClient WHERE CodClient = @CodClient AND CodItem = @CodItem)
-- primo tentativo: cerco il package dato SIA cliente che ITEM
BEGIN
SELECT TOP 1 @CodPackag = CodPackag, @TotQta = TotQta, @Weight = Weight, @Tare = Tare, @NumImb = NumImb, @Durata = Durata
,@LivPackag = 'Item-Client-Package' , @LivPackagDet = @CodItem + '-' + @CodClient + '-' + CodPackag
FROM dbo.Package2ItemClient
WHERE CodClient = @CodClient AND CodItem = @CodItem
ORDER BY TotQta DESC
END
ELSE IF EXISTS ( SELECT * FROM Package2Item WHERE CodItem = @CodItem )
-- secondo tentativo: se non lo trovo cerco per SOLO ITEM
BEGIN
SELECT TOP 1 @CodPackag = CodPackag, @TotQta = TotQta, @Weight = Weight, @Tare = Tare, @NumImb = NumImb, @Durata = Durata
,@LivPackag = 'Item-Package', @LivPackagDet = @CodItem + '-' + CodPackag
FROM dbo.Package2Item WHERE CodItem = @CodItem
ORDER BY TotQta DESC
END
ELSE
-- secondo tentativo: se non lo trovo cerco per SOLO ITEM
BEGIN
SELECT TOP 1 @CodPackag = CodPackag, @TotQta = TotQta, @Weight = Weight, @Tare = Tare, @NumImb = NumImb, @Durata = Durata
,@LivPackag = 'Package', @LivPackagDet = CodPackag
FROM dbo.Package2 WHERE CodPackag = 0
END
END
RETURN
@@ -1,32 +0,0 @@
/*************************************
* STORED PROCEDURE stp_insNewLemma
*
* elimina record anagrafica classe prodotto
*
* mod : 14/05/2012
* aut : S.E. Locatelli
**************************************/
CREATE PROCEDURE [dbo].[stp_insNewLemma]
(
@lemma NVARCHAR(50),
@traduzione NVARCHAR(500)
)
AS
-- elimino se c'era già...
DELETE
FROM dbo.Vocabolario
WHERE lemma = @lemma
-- inserisco x tutte le lingue attive...
INSERT INTO dbo.Vocabolario
SELECT lingua, @lemma, @traduzione
FROM Lingue
SELECT *
FROM dbo.Vocabolario
WHERE lemma = @lemma
RETURN
@@ -0,0 +1,470 @@
-- =============================================
-- STORED PROCEDURE stp_prt_dsQuoteFull_Q_Data
--
-- Author: Steamware
-- Mod date: 2014.04.28
-- Description: dataset stp_prt_dsQuoteFull_Q_Data per reportOffers
-- =============================================
CREATE PROCEDURE [dbo].[stp_prt_dsQuoteFull_Q_Data]
@Ticket AS INT = 1
AS
BEGIN
SET NOCOUNT ON;
/*
Se decidiamo di separare le traduzioni dei lemmi tra Applicazione e stampa basta usare la prima cte come insert
nella tabella vocabolario e poi sostituire la cte con la tabella vocabolario stessa
*/
SELECT
-- chiave
Vers
, QuoteType
, CodQuote
, QuoteRev
-- valori
, IdxQState
, CodClient
, ClientName
, CodItem
, CodItemGroup
, RawMat
, UnitWeight
, BatchQty
, CodInco
, TranspZone
, KeyAM
, Note
, PriceOff
, CodClientAssoc
, ClientNameAssoc
, ItemDescr
, CodifProfilo
, ClasseMerc
, TipoDies
, CodDiesGroup
, DiamDies
, HoleNumDies
, DiesPrice
, DiesExpLife
, DiesEOLife
, DiesByClass
, NumDiesInList
, NumDiesExaust
, CodPlant
, KeyAMIL
, KgTeo
, NumSMED
, QuotaMan
, PRMWeight
, PWeight
, PTare
, LivPackage
, LivPackageDett
, RawMatCost
, RawMatExtraCost
, RawMatFullCost
, CodPackag
, PkgDesc
, FSR
, ProvvCost
, EECost
, GasCost
, DiesCost
, PackCost
, TranspCost
, SellCost01
, RefCost01
, SellCost04
, RefCost04
, WSR01
, MSR01
, NetProd01
, FC4UG01
, VC4UG01
, OH4UG01
, SC4UG01
, DSR
, NetProd04
, FC4UG04
, VC4UG04
, FVC
, Charge
, P_FVC
, CPS
, P_CPS
, P_FC4UG04
, FullCost
, P_FullCost
, MinPrice
, P_MinPrice
, P_PriceOff
, NetMar
, FCShield
, PckSur
, valid
, errorScore
, DiesPrice_sim
, SamplePrice
, DiesFullCost
, DiesPriceClientQuote
, DiesTecLife
, DiesCommLife
, MonthSalesPrev
, SalesPrevCost
, DiesFinCost
, ClientQuoteReven
, ExtraDiscountDies
, WSR01_sim
, MSR01_sim
, NetProd01_sim
, DSR_sim
, NetMar_sim
, FCShield_sim
, MinPrice_sim
, P_MinPrice_sim
FROM dbo.v_QuoteFull_Q AS qf
INNER JOIN dbo.ReportPrintTicket AS prt
ON qf.QuoteType = dbo.f_prt_getParameter ( 'QuoteType', prt.Chiave , '&')
AND qf.CodQuote = dbo.f_prt_getParameter ( 'CodQuote' , prt.Chiave , '&')
AND qf.QuoteRev = dbo.f_prt_getParameter ( 'QuoteRev' , prt.Chiave +'&' , '&')
AND prt.Ticket = @Ticket
/* OLD VERSION
WITH Cte AS -- carico i lemmi dei campi che mi servono per la stampa
(
SELECT Lingua,
'prt1_'+ Lemma AS Lemma,
CASE WHEN @Lingua = 'LB'
THEN Lemma
ELSE Traduzione END
AS Traduzione -- il lemma corrisponde ai campi
FROM Vocabolario
WHERE Lemma IN ( 'ClientName'
,'CodClient'
,'CodItem'
,'ItemDescr'
,'CodifProfilo'
,'ClasseMerc'
,'CodClientAssoc'
,'ClientNameAssoc'
,'CodItemGroup'
,'UnitWeight'
,'RawMat'
,'RawMatCost'
,'RawMatExtraCost'
,'RawMatFullCost'
,'RawMatCost'
,'RawMatExtraCost'
,'BatchQty'
,'ProvvCost'
,'CodInco','TipoDies'
,'CodDiesGroup'
,'DiamDies'
,'DiesPrice'
,'HoleNumDies'
,'DiesExpLife'
,'NumDiesInList'
,'DiesEOLife'
,'NumDiesExaust'
,'CodPlant'
,'HoleNumDies'
,'KeyAMIL'
,'KgTeo'
,'WSR01'
,'NumSMED'
,'MSR01'
,'NetProd01'
,'CodPackag'
,'NetProd04'
,'QuotaMan'
,'LivPackage'
,'LivPackageDet'
,'PkgDesc'
,'PRMWeight'
,'DSR'
,'PWeight'
,'PTare'
,'FSR'
,'RefCost01'
,'SellCost01'
,'EECost'
,'GasCost'
,'DiesCost'
,'RefCost04'
,'SellCost04'
,'PackCost'
,'ProvvCost'
,'TranspCost'
,'VC4UG01'
,'VC4UG04'
,'SC4UG01'
,'FVC'
,'P_FVC'
,'CPS'
,'P_CPS'
,'FC4UG04'
,'P_FC4UG04'
,'FullCost'
,'P_FullCost'
,'MinPrice'
,'P_MinPrice'
,'Charge'
,'PriceOff'
,'P_PriceOff'
,'NetMar'
,'FCShield'
,'PckSur'
)
),
ctepvt AS ( -- faccio pivot dei lemmi e loro traduzioni
SELECT
Lingua,
prt1_BatchQty,
prt1_Charge,
prt1_ClasseMerc,
prt1_ClientName,
prt1_ClientNameAssoc,
prt1_CodClient,
prt1_CodClientAssoc,
prt1_CodDiesGroup,
prt1_CodifProfilo,
prt1_CodInco,
prt1_CodItem,
prt1_CodItemGroup,
prt1_CodPackag,
prt1_CodPlant,
prt1_CPS,
prt1_DiamDies,
prt1_DiesCost,
prt1_DiesEOLife,
prt1_DiesExpLife,
prt1_DiesPrice,
prt1_DSR,
prt1_EECost,
prt1_FC4UG04,
prt1_FCShield,
prt1_FSR,
prt1_FullCost,
prt1_FVC,
prt1_GasCost,
prt1_HoleNumDies,
prt1_ItemDescr,
prt1_KeyAMIL,
prt1_KgTeo,
prt1_LivPackage,
prt1_LivPackageDet,
prt1_MinPrice,
prt1_MSR01,
prt1_NetMar,
prt1_NetProd01,
prt1_NetProd04,
prt1_NumDiesExaust,
prt1_NumDiesInList,
prt1_NumSMED,
prt1_P_CPS,
prt1_P_FC4UG04,
prt1_P_FullCost,
prt1_P_FVC,
prt1_P_MinPrice,
prt1_P_PriceOff,
prt1_PackCost,
prt1_PckSur,
prt1_PkgDesc,
prt1_PriceOff,
prt1_PRMWeight,
prt1_ProvvCost,
prt1_PTare,
prt1_PWeight,
prt1_QuotaMan,
prt1_RawMat,
prt1_RawMatCost,
prt1_RawMatExtraCost,
prt1_RawMatFullCost,
prt1_RefCost01,
prt1_RefCost04,
prt1_SC4UG01,
prt1_SellCost01,
prt1_SellCost04,
prt1_TipoDies,
prt1_TranspCost,
prt1_UnitWeight,
prt1_VC4UG01,
prt1_VC4UG04,
prt1_WSR01
FROM ( SELECT * FROM cte
WHERE Lemma Like 'prt1%' ) AS tab -- al momento non serve ma se mettiamo i lemmi separati con prt1_ in vocabolario
PIVOT ( MIN ( Traduzione ) -- possiamo semplicemente sostituire la tab vocabolario alla cte
FOR Lemma IN (
prt1_BatchQty,
prt1_Charge,
prt1_ClasseMerc,
prt1_ClientName,
prt1_ClientNameAssoc,
prt1_CodClient,
prt1_CodClientAssoc,
prt1_CodDiesGroup,
prt1_CodifProfilo,
prt1_CodInco,
prt1_CodItem,
prt1_CodItemGroup,
prt1_CodPackag,
prt1_CodPlant,
prt1_CPS,
prt1_DiamDies,
prt1_DiesCost,
prt1_DiesEOLife,
prt1_DiesExpLife,
prt1_DiesPrice,
prt1_DSR,
prt1_EECost,
prt1_FC4UG04,
prt1_FCShield,
prt1_FSR,
prt1_FullCost,
prt1_FVC,
prt1_GasCost,
prt1_HoleNumDies,
prt1_ItemDescr,
prt1_KeyAMIL,
prt1_KgTeo,
prt1_LivPackage,
prt1_LivPackageDet,
prt1_MinPrice,
prt1_MSR01,
prt1_NetMar,
prt1_NetProd01,
prt1_NetProd04,
prt1_NumDiesExaust,
prt1_NumDiesInList,
prt1_NumSMED,
prt1_P_CPS,
prt1_P_FC4UG04,
prt1_P_FullCost,
prt1_P_FVC,
prt1_P_MinPrice,
prt1_P_PriceOff,
prt1_PackCost,
prt1_PckSur,
prt1_PkgDesc,
prt1_PriceOff,
prt1_PRMWeight,
prt1_ProvvCost,
prt1_PTare,
prt1_PWeight,
prt1_QuotaMan,
prt1_RawMat,
prt1_RawMatCost,
prt1_RawMatExtraCost,
prt1_RawMatFullCost,
prt1_RefCost01,
prt1_RefCost04,
prt1_SC4UG01,
prt1_SellCost01,
prt1_SellCost04,
prt1_TipoDies,
prt1_TranspCost,
prt1_UnitWeight,
prt1_VC4UG01,
prt1_VC4UG04,
prt1_WSR01 ) ) AS pvt
)
SELECT
-- chiave
Vers
,QuoteType
,CodQuote
,QuoteRev
-- valori
,BatchQty
,Charge
,ClasseMerc
,ClientName
,ClientNameAssoc
,CodClient
,CodClientAssoc
,CodDiesGroup
,CodifProfilo
,CodInco
,CodItem
,CodItemGroup
,CodPackag
,CodPlant
,CPS
,DiamDies
,DiesCost
,DiesEOLife
,DiesExpLife
,DiesPrice
,DSR
,EECost
,FC4UG01
,FC4UG04
,FCShield
,FSR
,FullCost
,FVC
,GasCost
,HoleNumDies
,IdxQState
,ItemDescr
,KeyAM
,KeyAMIL
,KgTeo
,LivPackage
,LivPackageDett
,MinPrice
,MSR01
,NetMar
,NetProd01
,NetProd04
,Note
,NumDiesExaust
,NumDiesInList
,NumSMED
,OH4UG01
,P_CPS
,P_FC4UG04
,P_FullCost
,P_FVC
,P_MinPrice
,P_PriceOff
,PackCost
,PckSur
,PkgDesc
,PriceOff
,PRMWeight
,ProvvCost
,PTare
,PWeight
,QuotaMan
,RawMat
,RawMatCost
,RawMatExtraCost
,RawMatFullCost
,RefCost01
,RefCost04
,SC4UG01
,SellCost01
,SellCost04
,TipoDies
,TranspCost
,UnitWeight
,VC4UG01
,VC4UG04
,WSR01
-- lemmi x traduzione etichette campi
,ctepvt.*
FROM dbo.v_QuoteFull_Q
INNER JOIN ctepvt
-- ON ctepvt.Lingua = 'EN' -- qui va messa la variabile della lingua di stampa
-- ON ctepvt.Lingua = @Lingua -- 'EN' -- qui va messa la variabile della lingua di stampa
ON ctepvt.Lingua = CASE WHEN @Lingua = 'LB' -- se richiede le Label dei campi estraggo i lemmi in inglese
THEN 'EN'
ELSE @Lingua
END
*/
END
@@ -0,0 +1,135 @@
-- =============================================
-- STORED PROCEDURE stp_prt_dsQuoteFull_Q_Data
--
-- Author: Steamware
-- Mod date: 2014.05.23
-- Description: dataset stp_prt_dsQuoteFull_Q_Data per reportOffers
-- =============================================
CREATE PROCEDURE [dbo].[stp_prt_dsQuoteFull_byChiave]
(
@Chiave AS NVARCHAR(50) = ''
)
AS
BEGIN
SET NOCOUNT ON;
/*
Se decidiamo di separare le traduzioni dei lemmi tra Applicazione e stampa basta usare la prima cte come insert
nella tabella vocabolario e poi sostituire la cte con la tabella vocabolario stessa
*/
SELECT
-- chiave
Vers
, QuoteType
, CodQuote
, QuoteRev
-- valori
, IdxQState
, CodClient
, ClientName
, CodItem
, CodItemGroup
, RawMat
, UnitWeight
, BatchQty
, CodInco
, TranspZone
, KeyAM
, Note
, PriceOff
, CodClientAssoc
, ClientNameAssoc
, ItemDescr
, CodifProfilo
, ClasseMerc
, TipoDies
, CodDiesGroup
, DiamDies
, HoleNumDies
, DiesPrice
, DiesExpLife
, DiesEOLife
, DiesByClass
, NumDiesInList
, NumDiesExaust
, CodPlant
, KeyAMIL
, KgTeo
, NumSMED
, QuotaMan
, PRMWeight
, PWeight
, PTare
, LivPackage
, LivPackageDett
, RawMatCost
, RawMatExtraCost
, RawMatFullCost
, CodPackag
, PkgDesc
, FSR
, ProvvCost
, EECost
, GasCost
, DiesCost
, PackCost
, TranspCost
, SellCost01
, RefCost01
, SellCost04
, RefCost04
, WSR01
, MSR01
, NetProd01
, FC4UG01
, VC4UG01
, OH4UG01
, SC4UG01
, DSR
, NetProd04
, FC4UG04
, VC4UG04
, FVC
, Charge
, P_FVC
, CPS
, P_CPS
, P_FC4UG04
, FullCost
, P_FullCost
, MinPrice
, P_MinPrice
, P_PriceOff
, NetMar
, FCShield
, PckSur
, valid
, errorScore
, DiesPrice_sim
, SamplePrice
, DiesFullCost
, DiesPriceClientQuote
, DiesTecLife
, DiesCommLife
, MonthSalesPrev
, SalesPrevCost
, DiesFinCost
, ClientQuoteReven
, ExtraDiscountDies
, WSR01_sim
, MSR01_sim
, NetProd01_sim
, DSR_sim
, NetMar_sim
, FCShield_sim
, MinPrice_sim
, P_MinPrice_sim
FROM dbo.v_QuoteFull_Q
WHERE QuoteType = dbo.f_prt_getParameter ( 'QuoteType', @Chiave , '&')
AND CodQuote = dbo.f_prt_getParameter ( 'CodQuote' , @Chiave , '&')
AND QuoteRev = dbo.f_prt_getParameter ( 'QuoteRev' , @Chiave +'&' , '&')
END
@@ -0,0 +1,328 @@
-- =============================================
-- Author: G.A.R.
-- Create date: 2014.05.12
-- Description: Procedura sostituzione dati con dati DEMO
-- =============================================
CREATE PROCEDURE [dbo].[stp_zzz_scratchDatiDemo]
AS
BEGIN
-- dichiaro e imposto periodo di calcolo dei valori
-- andrà impostato in una tabella e mi determinerà la versione dei dati
DECLARE @dateFrom AS DateTime;
DECLARE @dateTo AS DateTime;
SET @dateFrom = '20100101'
SET @dateTo = '20130929'
-- ==========================================
-- IMPORTAZIONE DATI CSV --- QUI NON SERVER DATI GIA' CARICATI
-- ==========================================
-- exec tmp.importProductionLogRaw
--exec tmp.importClientsRaw
--exec tmp.importTranspCostRaw
--exec tmp.importItemsRaw
--exec tmp.importPackagRaw
--exec tmp.importDiesRaw
-- -- questo sotto va fatto solo se ci sono dati da integrare in DiesRaw
--exec tmp.importDiesGroupRaw
--select top 10 * FROM tmp.ProductionLogRaw
--select * FROM tmp.ClientsRaw
--select * FROM tmp.ItemsRaw
--select * FROM tmp.PackagRaw
--select * FROM tmp.DiesRaw
--select * FROM tmp.DiesGroupRaw
-- Se ci sono record con Item doppi li cancello????
--SELECT CodItem,COUNT(*) as qty
--FROM ( SELECT DISTINCT * FROM tmp.ItemsRaw ) AS a
--GROUP BY CodItem
--having COUNT(*)>1
--delete from tmp.ItemsRaw
--where CodItem IN
--(
-- SELECT CodItem
-- FROM ( SELECT DISTINCT * FROM tmp.ItemsRaw ) AS a
-- GROUP BY CodItem
-- having COUNT(*)>1
--)
-- ===========================================================
-- CARICO DATI IN RAW EXT ( da Char a Tipi corretti ) cancella e carica da Tabelle TMP
-- ===========================================================
exec tmp.convertClientsRaw
exec tmp.convertTranspCostRaw
exec tmp.convertItemsRaw
exec tmp.convertProductionLogRaw
exec tmp.convertPackagRaw
exec tmp.convertDiesRaw
-- necessario se integriamo i dati x i gruppi di matrici con un file
exec tmp.convertDiesGroupRaw
-- exec tmp.convertDiesGroupRaw 'DiesDet' -- integro i gruppi mancanti ??? TOLTO
select top 10 * FROM ext.ProductionLogRaw
select * FROM ext.ClientsRaw
select * FROM ext.ItemsRaw
select * FROM ext.PackagRaw
select * FROM ext.DiesRaw
SELECT * FROM ext.DiesGroupRaw
-- elimino a mano dato con oltre 68 anni di evento... prob. non serve più
--select *
----delete
--from ext.ProductionLogRaw where DATEDIFF(YEAR,EventStart,EventEnd)> 10
-- =======================================
-- cancello le tabelle che ricarico
-- =======================================
-- exec ext.stp_mergeAgentsDet -- NON DEMO campi non modificati x DEMO
TRUNCATE TABLE dbo.ProductionLog
TRUNCATE TABLE dbo.Package2ItemClient
TRUNCATE TABLE dbo.Package2Item
TRUNCATE TABLE dbo.Cost2Plant -- forse meglio non cancellarli e sostituirli in import? ma se non li ho in anagrafica non riesco!!!
DELETE FROM dbo.PlantsDet
DELETE FROM dbo.ClientDet
exec ext.stp_mergeClientDet 'ProductionLogRaw'
exec ext.stp_mergeClientDet 'ClientsRaw'
-- exec ext.stp_mergeTranspCostDet 'TranspCostRaw' -- NON DEMO
exec ext.stp_mergePlantsDet
-- exec ext.stp_mergeCost2Plant non carica i valori caricati a mano dopo
TRUNCATE TABLE dbo.DiesDet
DELETE FROM dbo.DiesGroupDet
DELETE FROM dbo.ItemDet
exec ext.stp_mergeItemDet 'ItemsRaw'
exec ext.stp_mergePackagDet 'ProductionLogRaw' -- 'PackagRaw'
exec ext.stp_mergeDiesDet
-- se ricarico diesgroup... ricarico solo i campi che nel file sono <> ''
exec ext.stp_mergeDiesGroupDet
DELETE FROM dbo.RawMatDet
exec ext.stp_mergeRawMat
exec ext.stp_updateProductionLog
--DECLARE @dateFrom AS DateTime;
--DECLARE @dateTo AS DateTime;
--SET @dateFrom = '20100101'
--SET @dateTo = '20130929'
exec ext.stp_mergePackage2ItemClient 'ProductionLog', @dateFrom, @dateTo
exec ext.stp_mergePackage2Item 'ProductionLog', @dateFrom, @dateTo
exec ext.stp_mergePackage2 'ProductionLog', @dateFrom, @dateTo
-- =========================================================================
-- aggiorno CodPlan nelle Utilities ( sono state caricate a mano ??? )
-- =========================================================================
SELECT * FROM utilities
UPDATE Utilities
SET CodPlant = tp.CodPlantNew
FROM Utilities AS u
INNER JOIN TrascPlan tp ON u.CodPlant = tp.CodPlant
---- aggiorno quota agenti a 0.037
----update AgentsDet set quotaperc=0.0374
--SELECT DISTINCT dr.CodItem FROM ext.DiesRaw dr LEFT OUTER JOIN ItemDet id ON dr.CodItem = id.CodItem
--where id.CodItemGroup is null
select * from ClientDet
select * from ItemDet
select * from Package2ItemClient
select * from Package2Item
select * from Package2
select * from PackagDet
select * from DiesGroupDet where EOLLife > 0
select * from DiesDet
select * from DiesGroupDet
select * from AgentsDet
select * from PlantsDet
select * from Cost2Plant
select * from utilities
select top 100 * from ProductionLog
--update tmp.ProductionLogRaw
--set
-- okPr = 1
-- , okDi = 1
-- , okQM = 1
-- , okSc = 1
--select distinct ProcessNum from ProductionLog
--select top 10 * from ext.ProductionLogRaw
---- fix errore packaging
--update tmp.ProductionLogRaw
--SET CodPackag='4'
--where CodPackag LIKE '%4%' and CodPackag <> '4'
--select * from tmp.ProductionLogRaw where CodPackag LIKE '%4%' and CodPackag <> '4'
--SELECT p.CodDies, CodItem, CodClient, CodPackag, p.* FROM ext.ProductionLogRaw AS p
--LEFT JOIN dbo.DiesDet AS d ON p.CodDies = d.CodDies
--WHERE CodItem IS NULL
-- ===========================
-- parte CALCOLI!!!
-- ===========================
TRUNCATE TABLE [dbo].[QuoteWorkInt]
TRUNCATE TABLE [dbo].[QuoteWorkExt]
TRUNCATE TABLE [dbo].QuoteParam
TRUNCATE TABLE [dbo].QuoteOC
TRUNCATE TABLE [dbo].[QuoteFull_Q]
--TRUNCATE TABLE [dbo].QuoteRM -- controllare prima di cancellare
--DELETE FROM QuoteList
SELECT * FROM QuoteList
SELECT TOP 1000 * FROM QuoteRM
--select * from ClientDet where CodClient='05000001048'
--select * from itemdet
--where CodItem like '1PT00102%'
select * from RawMatDet
--Q 1312130001 0 05000001048 1PT00102 A 7020 7673,400 1000 CPT NULL NULL NULL NULL
SELECT --TOP 10
dd.CodItem, pl.RawMat, dd.CodItem + '-' + pl.RawMat as KeyAM, dd.CodDiesGroup, pl.CodPlant, dd.HoleNum
,dd.CodItem + '-' + pl.RawMat + '-' + pl.CodPlant + '-' + CAST(dd.HoleNum AS NVARCHAR(19)) as KeyAMIL
,0 as NumSMED -- numero cambi, da sistemare...
, SUM(QtyOUT) as KgTeorici, SUM(Duration) AS Durata
,ISNULL(SUM(QtyOUT),0)/ISNULL(SUM(Duration), 1) as ProduttTeo
FROM ProductionLog pl INNER JOIN DiesDet dd ON pl.CodDies=dd.CodDies
WHERE pl.ProcessNum='01' and pl.EventType=1
GROUP BY dd.CodItem, pl.RawMat, dd.CodDiesGroup, pl.CodPlant, dd.HoleNum
ORDER BY dd.CodItem, pl.RawMat, dd.CodDiesGroup, SUM(QtyOUT) DESC
-- ==========================================
-- re-insert dei dati di produzione x statistiche
-- ==========================================
--DECLARE @dateFrom AS DateTime;
--DECLARE @dateTo AS DateTime;
--SET @dateFrom = '20100101'
--SET @dateTo = '20130929'
exec stp_TPS_upsert @dateFrom, @dateTo
exec stp_TD_upsert @dateFrom , @dateTo
-- exec stp_TI_upsert @dateFrom , @dateTo -- adesso sono già calcolati e inseriti in Package2 / Package2Item
SELECT TOP 1000 * FROM TabProdSc
SELECT TOP 1000 * FROM TabDifett
-- ==========================================
-- salvo nuova revisione dati di produzione...
-- Va messa in ogni procedura di update con 'procedura' e versione anno-mese-giorno
-- ==========================================
--INSERT INTO RevHistory
--SELECT 'P', ISNULL(MAX(RevNum),0) + 1, GETDATE(), 'Aggiornamento dati di produzione x fase 04 ' + CONVERT(NVARCHAR(20), @dateFrom, 120) + ' --> ' +CONVERT(NVARCHAR(20), @dateTo, 120)
--FROM RevHistory
--WHERE RevType = 'P'
-- AND RevNum = 1 -- mod. 14/05 GCARLO altrimenti ne crea una per ogni riga di RevHistory
--select * from RevHistory
-- simulazione tempo di calcolo: circa 50/sec
---- aggiornamento dei dati dell'offerta in oggetto
--DECLARE @tick DATETIME,
-- @idx INT = 100
--SET @tick = GETDATE()
--WHILE @idx > 0
--BEGIN
-- EXEC stp_QL_update 'Q', 1312130001, 0
-- SELECT @idx = @idx - 1
--END
--SELECT GETDATE() - @tick as tempo
/*
ARRIVATO QUI - da errore la funzione f_getSubstring perchè ritorna NULL al posto di '' ??? riga della stored 295 dovuto a trasformazione dei gruppi Dies - sistemato
*/
-- prima aggiorno i dati di Cost2Plant che non si sa da dove arrivano ( caricati a mano??? )
SELECT TOP 1000 * FROM Cost2Plant
SELECT TOP 1000 * FROM Proxima_C2P.dbo.Cost2Plant
SELECT * from TrascPlan
DELETE FROM Cost2Plant
INSERT INTO Cost2Plant
SELECT t.CodPlantNew, ProcessNum, FC, VC, OH, SC, QuotaPlantStd, QuotaManStd
FROM Proxima_C2P.dbo.Cost2Plant AS cp
LEFT JOIN TrascPlan AS t ON cp.CodPlant = t.CodPlant
-- GCARLO DEVO creare la riga per il test, la copio da quella di sviluppo e agg. i dati di demo
SELECT TOP 1000 * FROM QuoteList
SELECT TOP 1000 * FROM QuoteRM
SELECT TOP 1000 * FROM Proxima_C2P.dbo.QuoteList
SELECT TOP 1000 * FROM Proxima_C2P.dbo.QuoteRM WHERE CodQuote = '1402050001'
-- creo righe di test
INSERT QuoteList
SELECT QuoteType, CodQuote, QuoteRev, IdxQState, CodClientNew, CodItemNew, CodItemGroup, RawMat, UnitWeight, BatchQty, CodInco, Note, PriceOff, OrdDate, OrdNum, OrdRow, OrdPrice, valid, errorScore
FROM Proxima_C2P.[dbo].[QuoteList] AS q
INNER JOIN [dbo].[TrascClient] AS tc ON q.CodClient = tc.CodClient
INNER JOIN dbo.TrascItem AS ti ON q.CodItem = ti.CodItem
INSERT QuoteRM
SELECT QuoteType, CodQuote, QuoteRev, NumRM, RawMat, RawMatCost, RawMatExtraCost, CodPackag, FCR, valid
FROM Proxima_C2P.[dbo].[QuoteRM]
UPDATE QuoteList
SET CodClient = ( SELECT CodClientNew FROM TrascClient WHERE CodClient = '05000000382' )
,CodItem = ( SELECT CodItemNew FROM TrascItem WHERE CodItem = '3DI05376' )
WHERE CodQuote = '1402050001'
-- *** ESEGUO L'AGGIORNAMENTO ****
DECLARE @QuoteType CHAR(1) = 'Q',
@CodQuote BIGINT = 1402050001,
@QuoteRev INT = 0,
@PriceOff DECIMAL(9, 6) = 0
-- EXEC stp_QL_update 'Q', 1402050001, 0 -- <<<<< ERRORE
-- EXECUTE dbo.stp_QuoteFull_Q_update 'Q', 1402050001, 0, 0.1 -- crea il record in QuoteFull_Q
EXEC stp_QL_update @QuoteType, @CodQuote, @QuoteRev
SELECT @PriceOff = PriceOff FROM QuoteList WHERE CodQuote= @CodQuote AND QuoteRev = @QuoteRev
EXECUTE dbo.stp_QuoteFull_Q_update @QuoteType, @CodQuote, @QuoteRev -- crea il record in QuoteFull_Q
SELECT * FROM QuoteList WHERE QuoteType=@QuoteType AND CodQuote = @CodQuote AND QuoteRev = @QuoteRev
SELECT * FROM QuoteRM WHERE QuoteType=@QuoteType AND CodQuote = @CodQuote AND QuoteRev = @QuoteRev
SELECT * FROM QuoteWorkInt WHERE QuoteType=@QuoteType AND CodQuote = @CodQuote AND QuoteRev = @QuoteRev
SELECT * FROM QuoteWorkExt WHERE QuoteType=@QuoteType AND CodQuote = @CodQuote AND QuoteRev = @QuoteRev
SELECT * FROM QuoteOC WHERE QuoteType=@QuoteType AND CodQuote = @CodQuote AND QuoteRev = @QuoteRev
SELECT * FROM QuoteParam WHERE QuoteType=@QuoteType AND CodQuote = @CodQuote AND QuoteRev = @QuoteRev
select top 10 * from ItemDet
SELECT * FROM RawMatDet
SELECT top 10 * FROM TabProdSc
SELECT top 10 * FROM TabDifett
-- SELECT * FROM TabImbArt
-- SELECT * FROM TabImbGrp
SELECT * FROM PackagDet
SELECT * FROM Package2
---- test gestione selezione CodPackag corretto
--SELECT TOP 5 * FROM Package2ItemClient
--SELECT TOP 5 * FROM Package2Item
--SELECT TOP 5 * FROM Package2
-- SELECT dbo.f_getCodPackag('1EL00005', '05000001048')
--SELECT dbo.f_getCodPackag('1AN00001', '05000000137')
END
@@ -14,10 +14,13 @@ CREATE PROCEDURE [dbo].[stp_QL_fullData] (
AS
SET NOCOUNT ON
EXEC stp_QL_fullDataUpdate @QuoteType
, @CodQuote
, @QuoteRev
, @DoUpdate
IF(@QuoteType <> '' AND @DoUpdate = 'N')
BEGIN
EXEC stp_QL_fullDataUpdate @QuoteType
, @CodQuote
, @QuoteRev
, @DoUpdate
END
---- calcolo con aggiunta campi sommati...
--SELECT *
@@ -2,26 +2,42 @@
-- STORED PROCEDURE stp_QL_fullDataSearch
--
-- Author: Steamware
-- Create date: 2014.02.11
-- Mod date: 2014.02.11
-- Description: Recupera tutti i dati dalle tab QuoteList x avere schema con ricerca x cliente, item, materiale
-- =============================================
CREATE PROCEDURE [dbo].[stp_QL_fullDataSearch]
(
@CodClient NVARCHAR(50) = ''
, @CodItem NVARCHAR(50) = ''
, @RawMat NVARCHAR(50) = ''
, @DataMin DATETIME
, @DataMax DATETIME
@CodClient NVARCHAR(50) = ''
, @CodItem NVARCHAR(50) = ''
, @RawMat NVARCHAR(50) = ''
, @DataMin DATETIME
, @DataMax DATETIME
, @qtaMin INT = 0
, @qtaMax INT = 999999
, @QuoteType CHAR(1) = '*'
, @IdxQState INT = '-1'
)
AS
SET NOCOUNT ON
-- cte x selezionare solo ultime revisioni...
;WITH myCte AS
(
SELECT QuoteType, CodQuote, MAX(QuoteRev) AS QuoteRev
FROM QuoteList
GROUP BY QuoteType, CodQuote
)
-- calcolo con aggiunta campi sommati...
SELECT *
FROM v_QuoteFull_Q
WHERE CodClient = CASE WHEN ISNULL(@CodClient,'') = '' THEN CodClient ELSE @CodClient END
AND CodItem = CASE WHEN ISNULL(@CodItem,'') = '' THEN CodItem ELSE @CodItem END
AND RawMat = CASE WHEN ISNULL(@RawMat,'') = '' THEN RawMat ELSE @RawMat END
--AND CodQuote BETWEEN CONVERT(NVARCHAR(30), @DataMin, 12)*10000 AND (CONVERT(NVARCHAR(30), @DataMax, 12) +1 )*10000 -- FARE FILTRO DATE!!! non c'è vero campo data...
SELECT vq.*
FROM v_QuoteFull_Q vq
INNER JOIN myCte mc ON vq.QuoteType = mc.QuoteType AND vq.CodQuote = mc.CodQuote AND vq.QuoteRev = mc.QuoteRev
WHERE vq.CodClient = CASE WHEN ISNULL(@CodClient,'') = '' THEN vq.CodClient ELSE @CodClient END
AND vq.CodItem = CASE WHEN ISNULL(@CodItem,'') = '' THEN vq.CodItem ELSE @CodItem END
AND vq.RawMat = CASE WHEN ISNULL(@RawMat,'') = '' THEN vq.RawMat ELSE @RawMat END
AND vq.CodQuote BETWEEN CONVERT(NVARCHAR(30), @DataMin, 12)*10000 AND (CONVERT(NVARCHAR(30), @DataMax, 12) +1 )*10000
AND vq.BatchQty BETWEEN @qtaMin AND @qtaMax
AND vq.QuoteType = CASE WHEN @QuoteType = '*' THEN vq.QuoteType ELSE @QuoteType END
AND vq.IdxQState = CASE WHEN @IdxQState = -1 THEN vq.IdxQState ELSE @IdxQState END
ORDER BY CodQuote DESC
RETURN
@@ -1,4 +1,8 @@
-- =============================================
-- =============================================
-- STORED PROCEDURE stp_QL_fullDataUpdate
--
-- Author: Steamware
@@ -6,10 +10,10 @@
-- Description: Recupera tutti i dati dalle tab QuoteList x avere schema x report/gestioen web
-- =============================================
CREATE PROCEDURE [dbo].[stp_QL_fullDataUpdate] (
@QuoteType CHAR(1) = 'Q'
, @CodQuote BIGINT = 0
, @QuoteRev INT = 0
, @DoUpdate CHAR(1) = 'N' -- se si debba fare ricalcolo Y/N
@QuoteType CHAR(1) = 'Q'
, @CodQuote BIGINT = 0
, @QuoteRev INT = 0
, @DoUpdate CHAR(1) = 'N' -- se si debba fare ricalcolo Y/N
)
AS
SET NOCOUNT ON
@@ -30,9 +34,9 @@ SET NOCOUNT ON
-- , @MinPrice DECIMAL(9,6)
IF (@DoUpdate = 'Y')
BEGIN
EXEC stp_QL_update @QuoteType
, @CodQuote
, @QuoteRev
EXEC dbo.stp_QL_update @QuoteType
, @CodQuote
, @QuoteRev
END
@@ -60,9 +64,7 @@ AS (
, Descr
, Parameter
FROM dbo.QuoteParam
WHERE CodQuote = @CodQuote
AND QuoteType = @QuoteType
AND QuoteRev = @QuoteRev
WHERE CodQuote = @CodQuote AND QuoteType = @QuoteType AND QuoteRev = @QuoteRev
) AS SourceTable
PIVOT(MIN(Parameter) FOR Descr IN (
@@ -87,6 +89,7 @@ AS (
, DiesPrice
, DiesExpLife
, DiesEOLife
, DiesByClass
, PkgDesc
, PRMWeight
, PWeight
@@ -94,6 +97,23 @@ AS (
, TareStRatio
, LivPackage
, LivPackageDett
-- START nuovi campi x SIM
, DiesPrice_sim
, SamplePrice
, DiesFullCost
, DiesPriceClientQuote
, DiesTecLife
, DiesCommLife
, MonthSalesPrev
, SalesPrevCost
, DiesFinCost
, ClientQuoteReven
, ExtraDiscountDies
, WSR01_sim
, MSR01_sim
, NetProd01_sim
, DSR_sim
-- end nuovi campi x SIM
)
) AS PivotData
),
@@ -109,9 +129,7 @@ ctePivotQuoteOC AS (
, Class01 + ProcessNum AS ClassProc
, C4UG
FROM dbo.QuoteOC
WHERE CodQuote = @CodQuote
AND QuoteType = @QuoteType
AND QuoteRev = @QuoteRev
WHERE CodQuote = @CodQuote AND QuoteType = @QuoteType AND QuoteRev = @QuoteRev
) AS SourceTable
PIVOT(SUM(C4UG) FOR ClassProc IN
( EE01
@@ -136,16 +154,22 @@ SELECT 'V14.1' AS Vers
, QL.QuoteRev
, QL.IdxQState
, QL.CodClient
, CD.ClientName
, ISNULL(CD.ClientName,N'') AS ClientName
, QL.CodItem
, QL.CodItemGroup
, QL.RawMat
, QL.UnitWeight
, QL.BatchQty
, QL.CodInco
, ISNULL(CD.TranspZone,N'') AS TranspZone
, QL.KeyAM
, QL.Note
, QL.PriceOff
, QL.OrdDate
, QL.OrdNum
, QL.OrdRow
, QL.OrdPrice
, QL.OrdQty
, pQP.CodClientAssoc
, pQP.ClientNameAssoc
, pQP.ItemDescr
@@ -153,23 +177,41 @@ SELECT 'V14.1' AS Vers
, pQP.ClasseMerc
, pQP.TipoDies
, pQP.CodDiesGroup
, pQP.DiamDies
, pQP.HoleNumDies
, pQP.DiesPrice
, pQP.DiesExpLife
, pQP.DiesEOLife
, pQP.NumDiesInList
, pQP.NumDiesExaust
, CONVERT(DECIMAL(18,6),pQP.DiamDies) AS DiamDies
, CONVERT(INT,pQP.HoleNumDies) AS HoleNumDies
, ISNULL(CONVERT(DECIMAL(18,6),pQP.DiesPrice),0) AS DiesPrice
, CONVERT(DECIMAL(18,6),pQP.DiesExpLife) AS DiesExpLife
, CONVERT(DECIMAL(18,6),pQP.DiesEOLife) AS DiesEOLife
, CONVERT(BIT, ISNULL(pQP.DiesByClass,0)) AS DiesByClass
, CONVERT(DECIMAL(18,6),pQP.NumDiesInList) AS NumDiesInList
, CONVERT(DECIMAL(18,6),pQP.NumDiesExaust) AS NumDiesExaust
, pQP.CodPlant
, pQP.KeyAMIL
, pQP.KgTeo
, pQP.NumSMED
, pQP.QuotaMan
, pQP.PRMWeight
, pQP.PWeight
, pQP.PTare
, CONVERT(DECIMAL(18,6),pQP.KgTeo) AS KgTeo
, CONVERT(DECIMAL(18,6),pQP.NumSMED) AS NumSMED
, CONVERT(DECIMAL(18,6),pQP.QuotaMan) AS QuotaMan
, CONVERT(DECIMAL(18,6),pQP.PRMWeight) AS PRMWeight
, CONVERT(DECIMAL(18,6),pQP.PWeight) AS PWeight
, CONVERT(DECIMAL(18,6),pQP.PTare) AS PTare
, pQP.LivPackage
, pQP.LivPackageDett
-- START nuovi campi x SIM
, ISNULL(CONVERT(DECIMAL(18,6),pQP.DiesPrice_sim),0) AS DiesPrice_sim
, ISNULL(CONVERT(DECIMAL(18,6),pQP.SamplePrice),0) AS SamplePrice
, ISNULL(CONVERT(DECIMAL(18,6),pQP.DiesFullCost),0) AS DiesFullCost
, ISNULL(CONVERT(DECIMAL(18,6),pQP.DiesPriceClientQuote),0) AS DiesPriceClientQuote
, ISNULL(CONVERT(DECIMAL(18,6),pQP.DiesTecLife),0) AS DiesTecLife
, ISNULL(CONVERT(DECIMAL(18,6),pQP.DiesCommLife),1) AS DiesCommLife
, ISNULL(CONVERT(INT,pQP.MonthSalesPrev),0) AS MonthSalesPrev
, ISNULL(CONVERT(DECIMAL(18,6),pQP.SalesPrevCost),0) AS SalesPrevCost
, ISNULL(CONVERT(DECIMAL(18,6),pQP.DiesFinCost),0) AS DiesFinCost
, ISNULL(CONVERT(DECIMAL(18,6),pQP.ClientQuoteReven),0) AS ClientQuoteReven
, ISNULL(CONVERT(DECIMAL(18,6),pQP.ExtraDiscountDies),0) AS ExtraDiscountDies
, ISNULL(CONVERT(DECIMAL(9,8),pQP.WSR01_sim),0) AS WSR01_sim
, ISNULL(CONVERT(DECIMAL(9,8),pQP.MSR01_sim),0) AS MSR01_sim
, ISNULL(CONVERT(DECIMAL(9,3),pQP.NetProd01_sim),0) AS NetProd01_sim
, ISNULL(CONVERT(DECIMAL(9,8),pQP.DSR_sim),0) AS DSR_sim
-- end nuovi campi x SIM
, QRM.RawMatCost
, QRM.RawMatExtraCost
, QRM.RawMatCost + QRM.RawMatExtraCost AS RawMatFullCost -- fare campo calcolato ?!?
@@ -186,24 +228,26 @@ SELECT 'V14.1' AS Vers
, ISNULL(pQOC.ROTTAME01, 0) AS RefCost01
, ISNULL(pQOC.VENDITA04, 0) AS SellCost04
, ISNULL(pQOC.ROTTAME04, 0) AS RefCost04
, QWI01.WSR AS WSR01
, QWI01.MSR AS MSR01
, QWI01.NetProd AS NetProd01
, QWI01.FC4UG AS FC4UG01
, QWI01.VC4UG AS VC4UG01
, QWI01.OH4UG AS OH4UG01
, QWI01.SC4UG AS SC4UG01
, QWI01.WSR AS WSR01
, QWI01.MSR AS MSR01
, QWI01.NetProd AS NetProd01
, QWI01.FC4UG AS FC4UG01
, QWI01.VC4UG AS VC4UG01
, QWI01.OH4UG AS OH4UG01
, QWI01.SC4UG AS SC4UG01
, 1 - (QWI01.DYR * QWI02.DYR * QWI03.DYR * QWI04.DYR) AS DSR
, QWI04.NetProd AS NetProd04
, QWI04.FC4UG AS FC4UG04
, QWI04.VC4UG AS VC4UG04
, QWI04.NetProd AS NetProd04
, QWI04.FC4UG AS FC4UG04
, QWI04.VC4UG AS VC4UG04
, ISNULL(pQOC.VENDITA01, 0) + ISNULL(pQOC.ROTTAME01, 0) + ISNULL(pQOC.VENDITA04, 0) + ISNULL(pQOC.ROTTAME04, 0) + ISNULL(pQOC.EE01, 0) + ISNULL(pQOC.GAS01, 0) + ISNULL(pQOC.MATRICE01, 0) + ISNULL(pQOC.IMBALLO04, 0) + ISNULL(pQOC.PROVVIGIONI04, 0) + ISNULL(pQOC.TRASPORTI04, 0) + QWI01.VC4UG + QWI04.VC4UG + QWI01.SC4UG AS FVC
, PD.Charge
, QL.valid
, QL.errorScore
INTO #TempFullData -- carico in temp table
INTO #TempFullData -- carico in temp table
FROM dbo.QuoteList AS QL
INNER JOIN dbo.ClientDet CD
LEFT JOIN dbo.ClientDet CD -- non voglio che non crei record x mancanza Cliente
ON QL.CodClient = CD.CodClient
INNER JOIN ctePivotQuoteP AS pQP
@@ -254,40 +298,83 @@ INNER JOIN dbo.PlantsDet AS PD
-- AND CodQuote = @CodQuote
-- AND QuoteRev = @QuoteRev
-- SELECT TOP 1000 * FROM #TempFullData
IF @QuoteType = 'Q'
BEGIN
IF OBJECT_ID('QuoteFull_Q') IS NULL -- DROP TABLE QuoteFull_Q
IF OBJECT_ID('QuoteFull_Q') IS NULL -- CREATE TABLE QuoteFull_Q da eliminare quando Tabella Definitiva
SELECT * INTO dbo.QuoteFull_Q FROM #TempFullData
ELSE
BEGIN
--DELETE dbo.QuoteFull_Q WHERE QuoteType = @QuoteType AND CodQuote = @CodQuote AND QuoteRev = @QuoteRev
DELETE dbo.QuoteFull_Q WHERE QuoteType = @QuoteType AND CodQuote = @CodQuote AND QuoteRev = @QuoteRev
INSERT dbo.QuoteFull_Q
SELECT * FROM #TempFullData
INSERT INTO dbo.QuoteFull_Q (Vers, QuoteType, CodQuote, QuoteRev, IdxQState, CodClient, ClientName, CodItem, CodItemGroup, RawMat, UnitWeight, BatchQty, CodInco, TranspZone, KeyAM, Note, PriceOff, CodClientAssoc, ClientNameAssoc, ItemDescr, CodifProfilo, ClasseMerc, TipoDies, CodDiesGroup, DiamDies, HoleNumDies, DiesPrice, DiesExpLife, DiesEOLife, DiesByClass, NumDiesInList, NumDiesExaust, CodPlant, KeyAMIL, KgTeo, NumSMED, QuotaMan, PRMWeight, PWeight, PTare, LivPackage, LivPackageDett, RawMatCost, RawMatExtraCost, RawMatFullCost, CodPackag, PkgDesc, FSR, ProvvCost, EECost, GasCost, DiesCost, PackCost, TranspCost, SellCost01, RefCost01, SellCost04, RefCost04, WSR01, MSR01, NetProd01, FC4UG01, VC4UG01, OH4UG01, SC4UG01, DSR, NetProd04, FC4UG04, VC4UG04, FVC, Charge, valid, errorScore)
SELECT Vers, QuoteType, CodQuote, QuoteRev, IdxQState, CodClient, ClientName, CodItem, CodItemGroup, RawMat, UnitWeight, BatchQty, CodInco, TranspZone, KeyAM, Note, PriceOff, CodClientAssoc, ClientNameAssoc, ItemDescr, CodifProfilo, ClasseMerc, TipoDies, CodDiesGroup, DiamDies, HoleNumDies, DiesPrice, DiesExpLife, DiesEOLife, DiesByClass, NumDiesInList, NumDiesExaust, CodPlant, KeyAMIL, KgTeo, NumSMED, QuotaMan, PRMWeight, PWeight, PTare, LivPackage, LivPackageDett, RawMatCost, RawMatExtraCost, RawMatFullCost, CodPackag, PkgDesc, FSR, ProvvCost, EECost, GasCost, DiesCost, PackCost, TranspCost, SellCost01, RefCost01, SellCost04, RefCost04, WSR01, MSR01, NetProd01, FC4UG01, VC4UG01, OH4UG01, SC4UG01, DSR, NetProd04, FC4UG04, VC4UG04, FVC, Charge, valid, errorScore
FROM #TempFullData
END
END
ELSE IF @QuoteType = 'R'
BEGIN
IF OBJECT_ID('QuoteFull_R') IS NULL -- DROP TABLE QuoteFull_R
IF OBJECT_ID('QuoteFull_R') IS NULL -- CREATE TABLE QuoteFull_R da eliminare quando Tabella Definitiva
SELECT * INTO dbo.QuoteFull_R FROM #TempFullData
ELSE
BEGIN
INSERT dbo.QuoteFull_R
SELECT * FROM #TempFullData
DELETE dbo.QuoteFull_R WHERE QuoteType = @QuoteType AND CodQuote = @CodQuote AND QuoteRev = @QuoteRev
INSERT INTO dbo.QuoteFull_R (Vers, QuoteType, CodQuote, QuoteRev, IdxQState, CodClient, ClientName, CodItem, CodItemGroup, RawMat, UnitWeight, BatchQty, CodInco, TranspZone, KeyAM, Note, PriceOff, CodClientAssoc, ClientNameAssoc, ItemDescr, CodifProfilo, ClasseMerc, TipoDies, CodDiesGroup, DiamDies, HoleNumDies, DiesPrice, DiesExpLife, DiesEOLife, DiesByClass, NumDiesInList, NumDiesExaust, CodPlant, KeyAMIL, KgTeo, NumSMED, QuotaMan, PRMWeight, PWeight, PTare, LivPackage, LivPackageDett, RawMatCost, RawMatExtraCost, RawMatFullCost, CodPackag, PkgDesc, FSR, ProvvCost, EECost, GasCost, DiesCost, PackCost, TranspCost, SellCost01, RefCost01, SellCost04, RefCost04, WSR01, MSR01, NetProd01, FC4UG01, VC4UG01, OH4UG01, SC4UG01, DSR, NetProd04, FC4UG04, VC4UG04, FVC, Charge, OrdDate, OrdNum, OrdRow, OrdPrice, OrdQty, valid, errorScore)
SELECT Vers, QuoteType, CodQuote, QuoteRev, IdxQState, CodClient, ClientName, CodItem, CodItemGroup, RawMat, UnitWeight, BatchQty, CodInco, TranspZone, KeyAM, Note, PriceOff, CodClientAssoc, ClientNameAssoc, ItemDescr, CodifProfilo, ClasseMerc, TipoDies, CodDiesGroup, DiamDies, HoleNumDies, DiesPrice, DiesExpLife, DiesEOLife, DiesByClass, NumDiesInList, NumDiesExaust, CodPlant, KeyAMIL, KgTeo, NumSMED, QuotaMan, PRMWeight, PWeight, PTare, LivPackage, LivPackageDett, RawMatCost, RawMatExtraCost, RawMatFullCost, CodPackag, PkgDesc, FSR, ProvvCost, EECost, GasCost, DiesCost, PackCost, TranspCost, SellCost01, RefCost01, SellCost04, RefCost04, WSR01, MSR01, NetProd01, FC4UG01, VC4UG01, OH4UG01, SC4UG01, DSR, NetProd04, FC4UG04, VC4UG04, FVC, Charge, OrdDate, OrdNum, OrdRow, OrdPrice, OrdQty, valid, errorScore
-- FROM [dbo].[v_pivot]
FROM #TempFullData
END
END
ELSE IF @QuoteType = 'S'
BEGIN
IF OBJECT_ID('QuoteFull_S') IS NULL -- DROP TABLE QuoteFull_S
IF OBJECT_ID('QuoteFull_S') IS NULL -- CREATE TABLE QuoteFull_S da eliminare quando Tabella Definitiva
SELECT * INTO dbo.QuoteFull_S FROM #TempFullData
ELSE
BEGIN
INSERT dbo.QuoteFull_S
SELECT * FROM #TempFullData
DELETE dbo.QuoteFull_S WHERE QuoteType = @QuoteType AND CodQuote = @CodQuote AND QuoteRev = @QuoteRev
INSERT INTO dbo.QuoteFull_S (Vers, QuoteType, CodQuote, QuoteRev, IdxQState, CodClient, ClientName, CodItem, CodItemGroup, RawMat, UnitWeight, BatchQty, CodInco, TranspZone, KeyAM, Note, PriceOff, CodClientAssoc, ClientNameAssoc, ItemDescr, CodifProfilo, ClasseMerc, TipoDies, CodDiesGroup, DiamDies, HoleNumDies, DiesPrice_sim, DiesPrice, SamplePrice, DiesFullCost, DiesPriceClientQuote, DiesExpLife, DiesEOLife, DiesTecLife, DiesCommLife, MonthSalesPrev, SalesPrevCost, DiesFinCost, ClientQuoteReven, ExtraDiscountDies, DiesByClass, NumDiesInList, NumDiesExaust, CodPlant, KeyAMIL, KgTeo, NumSMED, QuotaMan, PRMWeight, PWeight, PTare, LivPackage, LivPackageDett, RawMatCost, RawMatExtraCost, RawMatFullCost, CodPackag, PkgDesc, FSR, ProvvCost, EECost, GasCost, DiesCost, PackCost, TranspCost, SellCost01, RefCost01, SellCost04, RefCost04, WSR01_sim, WSR01, MSR01_sim, MSR01, NetProd01_sim, NetProd01, FC4UG01, VC4UG01, OH4UG01, SC4UG01, DSR_sim, DSR, NetProd04, FC4UG04, VC4UG04, FVC, Charge, valid, errorScore)
SELECT Vers, QuoteType, CodQuote, QuoteRev, IdxQState, CodClient, ClientName, CodItem, CodItemGroup, RawMat, UnitWeight, BatchQty, CodInco, TranspZone, KeyAM, Note, PriceOff, CodClientAssoc, ClientNameAssoc, ItemDescr, CodifProfilo, ClasseMerc, TipoDies, CodDiesGroup, DiamDies, HoleNumDies, DiesPrice_sim, DiesPrice, SamplePrice, (DiesPrice_sim + SamplePrice) AS DiesFullCost, DiesPriceClientQuote, DiesExpLife, DiesEOLife, DiesTecLife, DiesCommLife, MonthSalesPrev
-- se DiesCommLife è NULLA è messa a 1 sopra
,CASE WHEN ( DiesTecLife = 0 OR DiesCommLife = 0 )
THEN 0
ELSE ( (((DiesTecLife % DiesCommLife) / DiesTecLife) * ( DiesPrice_sim + SamplePrice) ) / DiesTecLife )
END AS SalesPrevCost
,CASE WHEN DiesCommLife > 0
THEN ((((DiesPrice_sim+SamplePrice)-DiesPriceClientQuote)*(power((1.05),MonthSalesPrev/(12))-(1))) / DiesCommLife )
ELSE ((((DiesPrice_sim+SamplePrice)-DiesPriceClientQuote)*(power((1.05),MonthSalesPrev/(12))-(1))) / 1 )
END AS DiesFinCost
,CASE WHEN DiesTecLife > 0
THEN ( -DiesPriceClientQuote / DiesTecLife )
ELSE -DiesPriceClientQuote
END AS ClientQuoteReven
,CASE WHEN ( DiesTecLife = 0 OR DiesCommLife = 0 )
THEN 0
ELSE (((((DiesTecLife % DiesCommLife) / DiesTecLife ) * (DiesPrice_sim+SamplePrice)) / DiesTecLife
+(((DiesPrice_sim+SamplePrice)-DiesPriceClientQuote) * (power((1.05),MonthSalesPrev/(12))-(1))) / DiesCommLife )
- DiesPriceClientQuote / DiesTecLife )
END AS ExtraDiscountDies
-- CALCOLI OLD Version
--((((DiesTecLife%DiesCommLife)/case when DiesTecLife=(0) then (1) else DiesTecLife end)*(DiesPrice+SamplePrice))/case when DiesTecLife=(0) then (1) else DiesTecLife end) AS SalesPrevCost,
--((((DiesPrice+SamplePrice)-DiesPriceClientQuote)*(power((1.05),MonthSalesPrev/(12))-(1)))/case when DiesCommLife>(0) then DiesCommLife else (1) end) AS DiesFinCost,
--( -DiesPriceClientQuote/case when DiesTecLife>(0) then DiesTecLife else (1) end) AS ClientQuoteReven,
--(((((DiesTecLife%DiesCommLife)/case when DiesTecLife=(0) then (1) else DiesTecLife end)*(DiesPrice+SamplePrice))/case when DiesTecLife=(0) then (1) else DiesTecLife end+(((DiesPrice+SamplePrice)-DiesPriceClientQuote)*(power((1.05),MonthSalesPrev/(12))-(1)))/case when DiesCommLife>(0) then DiesCommLife else (1) end)-DiesPriceClientQuote/case when DiesTecLife>(0) then DiesTecLife else (1) end) AS ExtraDiscountDies,
,DiesByClass, NumDiesInList, NumDiesExaust, CodPlant, KeyAMIL, KgTeo, NumSMED, QuotaMan, PRMWeight, PWeight, PTare, LivPackage, LivPackageDett, RawMatCost, RawMatExtraCost, RawMatFullCost, CodPackag, PkgDesc, FSR, ProvvCost, EECost, GasCost, DiesCost, PackCost, TranspCost, SellCost01, RefCost01, SellCost04, RefCost04, WSR01_sim, WSR01, MSR01_sim, MSR01, NetProd01_sim, NetProd01, FC4UG01, VC4UG01, OH4UG01, SC4UG01, DSR_sim, DSR, NetProd04, FC4UG04, VC4UG04, FVC, Charge, valid, errorScore
FROM #TempFullData
END
END
ELSE IF @QuoteType = 'C'
BEGIN
DELETE dbo.QuoteFull_C WHERE QuoteType = @QuoteType AND CodQuote = @CodQuote AND QuoteRev = @QuoteRev
INSERT INTO dbo.QuoteFull_C ( Vers, QuoteType, CodQuote, QuoteRev, Class01, Class02, CodItem, RawMat, CodPlant, CodDiesGroup, CodPackag, batchQty, CodInco, RawMatFullCost, FVC, FullCost, valid, errorScore )
SELECT Vers, QuoteType, CodQuote, QuoteRev, CodifProfilo, ClasseMerc, tmp.CodItem, RawMat, tmp.CodPlant, CodDiesGroup, CodPackag, batchQty, CodInco, RawMatFullCost, FVC, FVC + FC4UG01 + OH4UG01 + FC4UG04 AS FullCost, valid, errorScore
FROM #TempFullData AS tmp
END
-- elimino temp table...
--IF OBJECT_ID('tempdb..#TempFullData') IS NOT NULL
File diff suppressed because it is too large Load Diff
@@ -1,4 +1,5 @@
-- =============================================
-- =============================================
-- Author: S.E. Locatelli
-- Create date: 2013.12.17
-- Description: Crea TabDifett (tabella difettosità)
@@ -11,6 +12,7 @@ CREATE PROCEDURE [dbo].[stp_TD_upsert]
AS
BEGIN
SET XACT_ABORT ON;
BEGIN TRAN
SET NOCOUNT ON;
@@ -1,4 +1,5 @@
-- =============================================
-- Author: S.E. Locatelli
-- Create date: 2013.12.20
@@ -13,6 +14,7 @@ CREATE PROCEDURE [dbo].[stp_TI_upsert]
AS
BEGIN
SET XACT_ABORT ON;
BEGIN TRAN
SET NOCOUNT ON;
@@ -1,4 +1,6 @@
-- =============================================
-- =============================================
-- Author: S.E. Locatelli
-- Create date: 2013.12.13
-- Description: Crea TabProdSc (tabella produttività/scarti)
@@ -11,6 +13,7 @@ CREATE PROCEDURE [dbo].[stp_TPS_upsert]
AS
BEGIN
SET XACT_ABORT ON;
BEGIN TRAN
SET NOCOUNT ON;
@@ -18,25 +21,47 @@ BEGIN
-- svuoto tabella...
TRUNCATE TABLE TabProdSc
-- riempio di nuovo valori!
-- riempio di nuovo valori! chiave AMIL
INSERT INTO TabProdSc
SELECT
dd.CodItem + '-' + pl.RawMat + '-' + pl.CodPlant + '-' + CAST(dd.HoleNum AS NVARCHAR(19)) as KeyAMIL
SELECT
dd.CodItem + '-' + pl.RawMat + '-' + pl.CodPlant + '-' + CAST(dd.HoleNum AS NVARCHAR(19)) AS KeyAMIL
, dd.CodDiesGroup
, dd.CodItem + '-' + pl.RawMat as KeyAM
, dd.CodItem + '-' + pl.RawMat AS KeyAM
, dd.CodItem, pl.RawMat, pl.CodPlant, dd.HoleNum
, 0 as NumSMED -- numero cambi, da sistemare...
, SUM(QtyOUT) as KgTeorici
, SUM(QtyIN) as KgLordi
, 0 AS NumSMED -- numero cambi, da sistemare...
, SUM(QtyOUT) AS KgTeorici
, SUM(QtyIN) AS KgLordi
, SUM(Duration) AS Durata
FROM ProductionLog pl INNER JOIN DiesDet dd ON pl.CodDies=dd.CodDies
FROM ProductionLog pl
INNER JOIN DiesDet dd ON pl.CodDies=dd.CodDies
WHERE pl.ProcessNum='01' and pl.EventType=1
AND pl.okPr = 1 AND pl.okSc = 1
AND pl.okPr = 1
AND pl.okSc = 1
AND pl.EventStart BETWEEN @dateFrom AND @dateTo
GROUP BY dd.CodItem, pl.RawMat, dd.CodDiesGroup, pl.CodPlant, dd.HoleNum
ORDER BY dd.CodItem, pl.RawMat, dd.CodDiesGroup, SUM(QtyOUT) DESC
-- calcolo cambi SMED
-- riempio di nuovo valori! chiave CMIL
INSERT INTO TabProdSc
SELECT
id.CodItemGroup + '-' + pl.RawMat + '-' + pl.CodPlant + '-' + CAST(dd.HoleNum AS NVARCHAR(19)) AS KeyAMIL
, dd.CodDiesGroup
, id.CodItemGroup + '-' + pl.RawMat AS KeyAM
, id.CodItemGroup, pl.RawMat, pl.CodPlant, dd.HoleNum
, 0 AS NumSMED -- numero cambi, da sistemare...
, SUM(QtyOUT) AS KgTeorici
, SUM(QtyIN) AS KgLordi
, SUM(Duration) AS Durata
FROM ProductionLog pl INNER JOIN DiesDet dd ON pl.CodDies=dd.CodDies
INNER JOIN ItemDet id ON dd.CodItem = id.CodItem
WHERE pl.ProcessNum='01' and pl.EventType=1
AND pl.okPr = 1 AND pl.okSc = 1
AND pl.EventStart BETWEEN @dateFrom AND @dateTo
GROUP BY id.CodItemGroup, pl.RawMat, dd.CodDiesGroup, pl.CodPlant, dd.HoleNum
ORDER BY id.CodItemGroup, pl.RawMat, dd.CodDiesGroup, SUM(QtyOUT) DESC
-- calcolo cambi SMED
-- con cte
; WITH cteCambiPre
@@ -53,6 +78,7 @@ BEGIN
, cteCambi
AS
(
-- PARTE AMIL
SELECT dd.CodItem + '-' + a.RawMat + '-' + a.CodPlant + '-' + CAST(dd.HoleNum AS NVARCHAR(19)) as KeyAMIL
, dd.CodDiesGroup
, a.*
@@ -67,6 +93,24 @@ BEGIN
INNER JOIN DiesDet dd ON a.CodDies=dd.CodDies
WHERE b.Row IS NULL -- se voglio vedere solo i cambi
--ORDER BY a.CodPlant, a.EventStart
UNION
-- PARTE CMIL
SELECT id.CodItemGroup + '-' + a.RawMat + '-' + a.CodPlant + '-' + CAST(dd.HoleNum AS NVARCHAR(19)) as KeyAMIL
, dd.CodDiesGroup
, a.*
--, b.Row
--, ISNULL(b.Row, 0) AS Cambio -- se 0 c'è cambio
--, CASE ISNULL(b.Row, 0) WHEN 0 THEN 1 ELSE 0 END AS Cambio2
, CASE ISNULL(b.Row, 0) WHEN 0 THEN 1 ELSE 0 END AS Cambio2
FROM cteCambiPre AS a
LEFT JOIN cteCambiPre AS b
ON a.Row-1 = b.Row
AND a.CodPlant = b.CodPlant AND a.CodDies = b.CodDies
INNER JOIN DiesDet dd ON a.CodDies=dd.CodDies
INNER JOIN ItemDet id ON dd.CodItem = id.CodItem
WHERE b.Row IS NULL -- se voglio vedere solo i cambi
--ORDER BY a.CodPlant, a.EventStart
)
UPDATE tps
SET NumSMED = cc.NumSMED
@@ -3,7 +3,7 @@
-- Create date: 2014.02.18
-- Description: Ricerca items
-- =============================================
create PROCEDURE [dbo].stp_VSItem_SearchLike
CREATE PROCEDURE [dbo].stp_VSItem_SearchLike
(
@value NVARCHAR(50)
)
@@ -16,3 +16,4 @@ SELECT value
FROM v_selItems
WHERE (value LIKE '%' + @value + '%')
OR (label LIKE '%' + @value + '%')
ORDER BY value
@@ -3,6 +3,7 @@
-- =============================================
-- Author: S.E. Locatelli
-- Create date: 2013.11.20
@@ -89,6 +90,10 @@ BEGIN
exec ext.stp_mergeCost2Plant
exec ext.stp_mergeItemDet 'ItemsRaw'
exec ext.stp_mergePackagDet 'ProductionLogRaw' -- 'PackagRaw'
-- QUESTE ANDREBBERO ESEGUITO DOPO ext.stp_updateProductionLog prendendo in considerazione un periodo di tempo
-- di tre anno o comunque stabilito a priori predefinito ( configurabile a sistema )
-- DA VERIFICARE
exec ext.stp_mergePackage2ItemClient 'ProductionLog', @dateFrom, @dateTo
exec ext.stp_mergePackage2Item 'ProductionLog', @dateFrom, @dateTo
exec ext.stp_mergePackage2 'ProductionLog', @dateFrom, @dateTo
+6 -2
View File
@@ -14,6 +14,8 @@
);
GO
CREATE NONCLUSTERED INDEX [i_DiesDet_CodItem_CodDiesGroup_Active]
ON [dbo].[DiesDet]([CodItem] ASC, [CodDiesGroup] ASC, [Active] ASC)
@@ -22,8 +24,10 @@ CREATE NONCLUSTERED INDEX [i_DiesDet_CodItem_CodDiesGroup_Active]
GO
CREATE NONCLUSTERED INDEX [i_DiesDet_Active_CodDiesGroup_Filtered]
ON [dbo].[DiesDet]([Active] ASC, [CodDiesGroup] ASC)
INCLUDE([CodItem]) WHERE ([Active]=(0));
ON [dbo].[DiesDet]([CodDiesGroup] ASC, [CodItem] ASC)
INCLUDE([ActLife], [Price], [ExpLife]) WHERE ([Active]=(0));
GO
+9 -1
View File
@@ -20,7 +20,7 @@
[QuotaPlant] DECIMAL (9, 4) NOT NULL,
[QuotaMan] DECIMAL (9, 4) NOT NULL,
[Tags] NVARCHAR (250) NOT NULL,
[Duration] AS (datediff(second,[EventStart],[EventEnd])/(3600.00)) PERSISTED,
[Duration] AS (CONVERT([decimal](12,6),datediff(second,[EventStart],[EventEnd])/(3600.00),(0))) PERSISTED,
[okPr] BIT CONSTRAINT [DF_ProductionLog_okPr] DEFAULT ((1)) NOT NULL,
[okQM] BIT CONSTRAINT [DF_ProductionLog_okQM] DEFAULT ((1)) NOT NULL,
[okSc] BIT CONSTRAINT [DF_ProductionLog_okSc] DEFAULT ((1)) NOT NULL,
@@ -33,6 +33,8 @@
);
GO
EXECUTE sp_addextendedproperty @name = N'MS_Description', @value = N'inizio evento - formato INT 16 cifre yyyyMMddHHmmssnn dove nn = centesimi di sec oppure 00', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'ProductionLog', @level2type = N'COLUMN', @level2name = N'EventStart';
@@ -132,3 +134,9 @@ EXECUTE sp_addextendedproperty @name = N'MS_Description', @value = N'validazione
GO
EXECUTE sp_addextendedproperty @name = N'MS_Description', @value = N'validazione riga x calcolo difettosità', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'ProductionLog', @level2type = N'COLUMN', @level2name = N'okDi';
GO
CREATE NONCLUSTERED INDEX [i_ProductionLog_CodDies]
ON [dbo].[ProductionLog]([CodDies] ASC)
INCLUDE([EventStart], [RawMat]);
+27 -7
View File
@@ -1,6 +1,6 @@
CREATE TABLE [dbo].[QuoteFull_Q] (
[Vers] VARCHAR (5) NOT NULL,
[QuoteType] CHAR (1) NOT NULL,
[QuoteType] CHAR (1) CONSTRAINT [DF_QuoteFull_Q_QuoteType] DEFAULT ('Q') NOT NULL,
[CodQuote] BIGINT NOT NULL,
[QuoteRev] INT NOT NULL,
[IdxQState] INT CONSTRAINT [DF_QuoteFull_Q_IdxQState] DEFAULT ((0)) NOT NULL,
@@ -12,6 +12,7 @@
[UnitWeight] DECIMAL (9, 3) NOT NULL,
[BatchQty] INT NOT NULL,
[CodInco] NVARCHAR (5) NOT NULL,
[TranspZone] NVARCHAR (50) CONSTRAINT [DF_QuoteFull_Q_TranspZone] DEFAULT ('') NOT NULL,
[KeyAM] NVARCHAR (101) NOT NULL,
[Note] NVARCHAR (2500) NOT NULL,
[PriceOff] DECIMAL (9, 6) CONSTRAINT [DF_QuoteFull_Q_PriceOff] DEFAULT ((0)) NOT NULL,
@@ -22,11 +23,12 @@
[ClasseMerc] NVARCHAR (100) NULL,
[TipoDies] NVARCHAR (100) NULL,
[CodDiesGroup] NVARCHAR (100) NULL,
[DiamDies] DECIMAL (18, 6) NULL,
[DiamDies] DECIMAL (18, 6) CONSTRAINT [DF_QuoteFull_Q_DiamDies] DEFAULT ((0)) NOT NULL,
[HoleNumDies] INT NULL,
[DiesPrice] DECIMAL (18, 6) NULL,
[DiesExpLife] DECIMAL (18, 6) NULL,
[DiesEOLife] DECIMAL (18, 6) NULL,
[DiesPrice] DECIMAL (18, 6) CONSTRAINT [DF_QuoteFull_Q_DiesPrice] DEFAULT ((0)) NOT NULL,
[DiesExpLife] DECIMAL (18, 6) CONSTRAINT [DF_QuoteFull_Q_DiesExpLife] DEFAULT ((0)) NOT NULL,
[DiesEOLife] DECIMAL (18, 6) NOT NULL,
[DiesByClass] BIT CONSTRAINT [DF_QuoteFull_Q_DiesByClass] DEFAULT ((0)) NOT NULL,
[NumDiesInList] DECIMAL (18, 6) NULL,
[NumDiesExaust] DECIMAL (18, 6) NULL,
[CodPlant] NVARCHAR (100) NULL,
@@ -62,22 +64,40 @@
[VC4UG01] DECIMAL (9, 6) NOT NULL,
[OH4UG01] DECIMAL (9, 6) NOT NULL,
[SC4UG01] DECIMAL (9, 6) NOT NULL,
[DSR] DECIMAL (18, 6) NULL,
[DSR] DECIMAL (9, 8) NULL,
[NetProd04] DECIMAL (9, 3) NOT NULL,
[FC4UG04] DECIMAL (9, 6) NOT NULL,
[VC4UG04] DECIMAL (9, 6) NOT NULL,
[FVC] DECIMAL (18, 6) NULL,
[Charge] DECIMAL (9, 6) NOT NULL,
[valid] BIT CONSTRAINT [DF_QuoteFull_Q_valid] DEFAULT ((1)) NOT NULL,
[errorScore] INT CONSTRAINT [DF_QuoteFull_Q_errorScore] DEFAULT ((0)) NOT NULL,
CONSTRAINT [PK_QuoteFull_Q_1] PRIMARY KEY CLUSTERED ([QuoteType] ASC, [CodQuote] ASC, [QuoteRev] ASC)
);
GO
EXECUTE sp_addextendedproperty @name = N'MS_Description', @value = N'Prezzo Offerto', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'QuoteFull_Q', @level2type = N'COLUMN', @level2name = N'PriceOff';
GO
EXECUTE sp_addextendedproperty @name = N'MS_Description', @value = N'Stato offerta: 0 = bozza, 10 = completata / in approvazione, 20 = approvata, 30 rilasciata', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'QuoteFull_Q', @level2type = N'COLUMN', @level2name = N'IdxQState';
EXECUTE sp_addextendedproperty @name = N'MS_Description', @value = N'Stato offerta: 0 = D raft, 1 = C ompleted / in approvazione, 2 = A pprouved, 3 = R eleased', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'QuoteFull_Q', @level2type = N'COLUMN', @level2name = N'IdxQState';
GO
EXECUTE sp_addextendedproperty @name = N'MS_Description', @value = N'Quotation', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'QuoteFull_Q';
GO
EXECUTE sp_addextendedproperty @name = N'MS_Description', @value = N'Classificazione cliente (es zona, provincia...) x incrocio con tab costi trasporto', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'QuoteFull_Q', @level2type = N'COLUMN', @level2name = N'TranspZone';
GO
EXECUTE sp_addextendedproperty @name = N'MS_Description', @value = N'punteggio complessivo errori in procedure di calcolo', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'QuoteFull_Q', @level2type = N'COLUMN', @level2name = N'errorScore';
+19 -4
View File
@@ -10,19 +10,28 @@
[UnitWeight] DECIMAL (9, 3) CONSTRAINT [DF_QuoteList_UnitWeight] DEFAULT ((0)) NOT NULL,
[BatchQty] INT CONSTRAINT [DF_QuoteList_BathQty] DEFAULT ((0)) NOT NULL,
[CodInco] NVARCHAR (5) NOT NULL,
[KeyAM] AS (([CodItem]+'-')+[RawMat]),
[KeyAM] AS ((case when [QuoteType]='S' then [CodItemGroup] else [CodItem] end+'-')+[RawMat]),
[Note] NVARCHAR (2500) CONSTRAINT [DF_QuoteList_Note] DEFAULT ('') NOT NULL,
[PriceOff] DECIMAL (9, 6) CONSTRAINT [DF_QuoteList_OrdPrice1] DEFAULT ((0)) NOT NULL,
[OrdDate] DATE NULL,
[OrdDate] SMALLDATETIME NULL,
[OrdNum] NVARCHAR (50) CONSTRAINT [DF_QuoteList_OrdNum] DEFAULT ((0)) NOT NULL,
[OrdRow] NVARCHAR (50) CONSTRAINT [DF_QuoteList_OrdRow] DEFAULT ((0)) NOT NULL,
[OrdPrice] DECIMAL (9, 6) CONSTRAINT [DF_QuoteList_PriceOff1] DEFAULT ((0)) NOT NULL,
CONSTRAINT [PK_QuoteList_1] PRIMARY KEY CLUSTERED ([QuoteType] ASC, [CodQuote] ASC, [QuoteRev] ASC)
[OrdQty] INT CONSTRAINT [DF_QuoteList_OrderQty] DEFAULT ((0)) NOT NULL,
[valid] BIT CONSTRAINT [DF_QuoteList_valid] DEFAULT ((1)) NOT NULL,
[errorScore] INT CONSTRAINT [DF_QuoteList_errorScore] DEFAULT ((0)) NOT NULL,
[UserCreaz] NVARCHAR (50) CONSTRAINT [DF_QuoteList_UserCreaz] DEFAULT ('') NOT NULL,
[DataCreaz] DATETIME CONSTRAINT [DF_QuoteList_DataCreaz] DEFAULT (getdate()) NOT NULL,
[UserMod] NVARCHAR (50) CONSTRAINT [DF_QuoteList_UserMod] DEFAULT ('') NOT NULL,
[DataMod] DATETIME CONSTRAINT [DF_QuoteList_DataMod] DEFAULT (getdate()) NOT NULL,
CONSTRAINT [PK_QuoteList_1] PRIMARY KEY CLUSTERED ([QuoteType] ASC, [CodQuote] ASC, [QuoteRev] ASC) WITH (FILLFACTOR = 90)
);
GO
EXECUTE sp_addextendedproperty @name = N'MS_Description', @value = N'tipo di preventivo: Q = quote, S = simulation', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'QuoteList', @level2type = N'COLUMN', @level2name = N'QuoteType';
@@ -80,5 +89,11 @@ EXECUTE sp_addextendedproperty @name = N'MS_Description', @value = N'Prezzo fina
GO
EXECUTE sp_addextendedproperty @name = N'MS_Description', @value = N'Stato offerta: 0 = bozza, 10 = completata / in approvazione, 20 = approvata, 30 rilasciata', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'QuoteList', @level2type = N'COLUMN', @level2name = N'IdxQState';
EXECUTE sp_addextendedproperty @name = N'MS_Description', @value = N'Stato offerta: 0 = D raft, 1 = C ompleted / in approvazione, 2 = A pprouved, 3 = R eleased', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'QuoteList', @level2type = N'COLUMN', @level2name = N'IdxQState';
GO
EXECUTE sp_addextendedproperty @name = N'MS_Description', @value = N'punteggio complessivo errori in procedure di calcolo', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'QuoteList', @level2type = N'COLUMN', @level2name = N'errorScore';
+3 -1
View File
@@ -6,11 +6,13 @@
[ProcessNum] NVARCHAR (50) CONSTRAINT [DF_QuoteParam_ProcessNum] DEFAULT ((0)) NOT NULL,
[Descr] NVARCHAR (50) NOT NULL,
[Parameter] NVARCHAR (100) CONSTRAINT [DF_QuoteParam_Parameter] DEFAULT ('') NOT NULL,
CONSTRAINT [PK_QuoteParam] PRIMARY KEY CLUSTERED ([NumP] ASC, [QuoteType] ASC, [CodQuote] ASC, [QuoteRev] ASC),
CONSTRAINT [PK_QuoteParam] PRIMARY KEY CLUSTERED ([QuoteType] ASC, [CodQuote] ASC, [QuoteRev] ASC, [NumP] ASC) WITH (FILLFACTOR = 90),
CONSTRAINT [FK_QuoteParam_QuoteList] FOREIGN KEY ([QuoteType], [CodQuote], [QuoteRev]) REFERENCES [dbo].[QuoteList] ([QuoteType], [CodQuote], [QuoteRev]) ON UPDATE CASCADE
);
GO
EXECUTE sp_addextendedproperty @name = N'MS_Description', @value = N'tipo di preventivo: Q = quote, S = simulation', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'QuoteParam', @level2type = N'COLUMN', @level2name = N'QuoteType';
+6 -4
View File
@@ -21,11 +21,11 @@
[WYR] AS ((1)-[WSR]),
[MYR] AS ((1)-[MSR]),
[DYR] AS ((1)-[DSR]),
[WCR] AS ((1)/((1)-[WSR])),
[MCR] AS ((1)/((1)-[MSR])),
[DCR] AS ((1)/((1)-[DSR])),
[WCR] AS (case when ((1)-[WSR])=(0) then (1) else (1)/((1)-[WSR]) end),
[MCR] AS (case when ((1)-[MSR])=(0) then (1) else (1)/((1)-[MSR]) end),
[DCR] AS (case when ((1)-[DSR])=(0) then (1) else (1)/((1)-[DSR]) end),
[valid] BIT CONSTRAINT [DF_QuoteWorkInt_valid] DEFAULT ((1)) NOT NULL,
CONSTRAINT [PK_QuoteWorkInt] PRIMARY KEY CLUSTERED ([QuoteType] ASC, [CodQuote] ASC, [QuoteRev] ASC, [NumWI] ASC),
CONSTRAINT [PK_QuoteWorkInt] PRIMARY KEY CLUSTERED ([QuoteType] ASC, [CodQuote] ASC, [QuoteRev] ASC, [NumWI] ASC) WITH (FILLFACTOR = 90),
CONSTRAINT [FK_QuoteWorkInt_QuoteList] FOREIGN KEY ([QuoteType], [CodQuote], [QuoteRev]) REFERENCES [dbo].[QuoteList] ([QuoteType], [CodQuote], [QuoteRev]) ON UPDATE CASCADE
);
@@ -34,6 +34,8 @@
GO
EXECUTE sp_addextendedproperty @name = N'MS_Description', @value = N'tipo di preventivo: Q = quote, S = simulation', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'QuoteWorkInt', @level2type = N'COLUMN', @level2name = N'QuoteType';
+5 -1
View File
@@ -12,6 +12,8 @@
);
GO
EXECUTE sp_addextendedproperty @name = N'MS_Description', @value = N'codice MP', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'RawMatDet', @level2type = N'COLUMN', @level2name = N'RawMat';
@@ -29,7 +31,9 @@ EXECUTE sp_addextendedproperty @name = N'MS_Description', @value = N'Cut Scrape
GO
EXECUTE sp_addextendedproperty @name = N'MS_Description', @value = N'Scrape Sell Ratio, percentuale di vendita dello scarto (0-100)', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'RawMatDet', @level2type = N'COLUMN', @level2name = N'SSR';
EXECUTE sp_addextendedproperty @name = N'MS_Description', @value = N'Scrape Sell Ratio, percentuale di vendita dello scarto ( da 0 a 1)', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'RawMatDet', @level2type = N'COLUMN', @level2name = N'SSR';
GO
+13 -13
View File
@@ -1,21 +1,21 @@
CREATE TABLE [dbo].[TabDifett] (
[KeyAMI] NVARCHAR (152) NOT NULL,
[ProcessNum] NVARCHAR (50) NOT NULL,
[CodItem] NVARCHAR (50) NOT NULL,
[RawMat] NVARCHAR (50) NOT NULL,
[CodPlant] NVARCHAR (50) NOT NULL,
[TotOUT] INT NULL,
[TotIn] INT NULL
[KeyAMI] NVARCHAR (152) NOT NULL,
[ProcessNum] NVARCHAR (50) NOT NULL,
[CodItem] NVARCHAR (50) NOT NULL,
[RawMat] NVARCHAR (50) NOT NULL,
[CodPlant] NVARCHAR (50) NOT NULL,
[TotOut] DECIMAL (18, 6) NULL,
[TotIn] INT NULL,
CONSTRAINT [PK_TabDifett] PRIMARY KEY CLUSTERED ([KeyAMI] ASC, [ProcessNum] ASC)
);
GO
CREATE CLUSTERED INDEX [i_TabDifett_ProcessNum_KeyAMI]
ON [dbo].[TabDifett]([ProcessNum] ASC, [KeyAMI] ASC);
GO
CREATE NONCLUSTERED INDEX [i_TabDifett_KeyAMI_ProcessNum]
ON [dbo].[TabDifett]([KeyAMI] ASC, [ProcessNum] ASC)
INCLUDE([TotOUT], [TotIn]);
GO
+4 -2
View File
@@ -10,12 +10,14 @@
[KgTeo] DECIMAL (18, 6) NOT NULL,
[KgLor] DECIMAL (18, 6) NOT NULL,
[Duration] DECIMAL (18, 6) NOT NULL,
[ProdTeo] AS (isnull([KgTeo],(0))/case isnull([Duration],(1)) when (0) then (1) else isnull([Duration],(1)) end),
[ScTec] AS ((1)-[KgTeo]/case [KgLor] when (0) then (1) else [KgLor] end),
[ProdTeo] AS (case isnull([Duration],(0)) when (0) then (0) else isnull([KgTeo],(0))/[Duration] end),
[ScTec] AS (case isnull([KgLor],(0)) when (0) then (0) else (1)-[KgTeo]/[KgLor] end),
CONSTRAINT [PK_TabProdSc] PRIMARY KEY CLUSTERED ([KeyAMIL] ASC, [CodDiesGroup] ASC)
);
GO
CREATE NONCLUSTERED INDEX [i_TabProdSc_KeyAM]
ON [dbo].[TabProdSc]([KeyAM] ASC)
+8
View File
@@ -0,0 +1,8 @@
CREATE TABLE [dbo].[CDC] (
[COD_CDC] VARCHAR (10) NOT NULL,
[DESCRIZIONE] VARCHAR (200) NULL,
[COD_TIPO] VARCHAR (1) NOT NULL,
[POSIZIONE] VARCHAR (100) NULL,
PRIMARY KEY CLUSTERED ([COD_CDC] ASC)
);
@@ -0,0 +1,6 @@
CREATE TABLE [dbo].[ContatoriQuote] (
[Flusso] VARCHAR (2) NOT NULL,
[LastIdx] INT NOT NULL,
CONSTRAINT [PK_ContatoriQuote] PRIMARY KEY CLUSTERED ([Flusso] ASC)
);
+20
View File
@@ -0,0 +1,20 @@
CREATE TABLE [dbo].[CostList] (
[DateList] SMALLDATETIME CONSTRAINT [DF_CostList_DataList] DEFAULT (CONVERT([date],getdate(),0)) NOT NULL,
[CodItem] NVARCHAR (50) NOT NULL,
[RawMat] NVARCHAR (50) NOT NULL,
[RawMatCost] DECIMAL (18, 6) NOT NULL,
[RawMatExtraCost] DECIMAL (18, 6) NULL,
[batchQty] INT NOT NULL,
[CodInco] NVARCHAR (5) NOT NULL,
[QuoteType] CHAR (1) CONSTRAINT [DF_CostList_QuoteType] DEFAULT ('C') NOT NULL,
[CodQuote] BIGINT CONSTRAINT [DF_CostList_CodQuote] DEFAULT ((0)) NOT NULL,
[QuoteRev] INT CONSTRAINT [DF_CostList_QuoteRev] DEFAULT ((0)) NOT NULL,
[EndCalc] DATETIME NULL,
CONSTRAINT [PK_CostList_1] PRIMARY KEY CLUSTERED ([DateList] ASC, [CodItem] ASC, [RawMat] ASC)
);
GO
CREATE NONCLUSTERED INDEX [ix_CostList_QuoteType_CodQuote]
ON [dbo].[CostList]([QuoteType] ASC, [CodQuote] ASC);
+12
View File
@@ -0,0 +1,12 @@
CREATE TABLE [dbo].[DIRITTI] (
[USER_NAME] NVARCHAR (50) NOT NULL,
[COD_CDC] NVARCHAR (50) NOT NULL,
[COD_MODULO] NVARCHAR (31) NOT NULL,
[COD_FUNZIONE] NVARCHAR (31) NOT NULL,
[VALUE] VARCHAR (255) NULL,
CONSTRAINT [PK_DIRITTI] PRIMARY KEY CLUSTERED ([USER_NAME] ASC, [COD_CDC] ASC, [COD_MODULO] ASC, [COD_FUNZIONE] ASC),
CONSTRAINT [FK_DIRITTI_FUNZIONE] FOREIGN KEY ([COD_FUNZIONE]) REFERENCES [dbo].[FUNZIONE] ([COD_FUNZIONE]) ON UPDATE CASCADE,
CONSTRAINT [FK_DIRITTI_MODULO] FOREIGN KEY ([COD_MODULO]) REFERENCES [dbo].[MODULO] ([COD_MODULO]) ON UPDATE CASCADE,
CONSTRAINT [FK_DIRITTI_UTENTE] FOREIGN KEY ([USER_NAME]) REFERENCES [dbo].[UTENTE] ([USER_NAME]) ON UPDATE CASCADE
);
+6
View File
@@ -0,0 +1,6 @@
CREATE TABLE [dbo].[FUNZIONE] (
[COD_FUNZIONE] NVARCHAR (31) NOT NULL,
[DESCRIZIONE] NVARCHAR (500) NULL,
CONSTRAINT [PK_FUNZIONE] PRIMARY KEY CLUSTERED ([COD_FUNZIONE] ASC)
);
+6
View File
@@ -0,0 +1,6 @@
CREATE TABLE [dbo].[MODULO] (
[COD_MODULO] NVARCHAR (31) NOT NULL,
[DESCRIZIONE] VARCHAR (200) NULL,
CONSTRAINT [PK_MODULO] PRIMARY KEY CLUSTERED ([COD_MODULO] ASC)
);
+75
View File
@@ -0,0 +1,75 @@
CREATE TABLE [dbo].[OrdersHist] (
[OrdNum] NVARCHAR (50) CONSTRAINT [DF_OrdersHist_OrdNum] DEFAULT ((0)) NOT NULL,
[OrdRow] NVARCHAR (50) CONSTRAINT [DF_OrdersHist_OrdRow] DEFAULT ((0)) NOT NULL,
[OrdDate] SMALLDATETIME CONSTRAINT [DF_OrdersHist_OrdDate] DEFAULT (getdate()) NOT NULL,
[CodClient] NVARCHAR (50) NOT NULL,
[CodItem] NVARCHAR (50) CONSTRAINT [DF_OrdersHist_CodItem] DEFAULT ('') NOT NULL,
[RawMat] NVARCHAR (50) NOT NULL,
[RawMatCost] DECIMAL (18, 6) CONSTRAINT [DF_OrdersHist_RawMatCost] DEFAULT ((0)) NOT NULL,
[BatchQty] INT CONSTRAINT [DF_OrdersHist_BatchQty] DEFAULT ((0)) NOT NULL,
[CodInco] NVARCHAR (5) NOT NULL,
[OrdPrice] DECIMAL (9, 6) CONSTRAINT [DF_OrdersHist_OrdPrice] DEFAULT ((0)) NOT NULL,
[RawMatExtraCost] DECIMAL (18, 6) NOT NULL,
[PriceOff] DECIMAL (9, 6) NOT NULL,
[OrdQty] INT NOT NULL,
[QuoteType] CHAR (1) CONSTRAINT [DF_OrdersHist_QuoteType] DEFAULT ('R') NOT NULL,
[CodQuote] BIGINT CONSTRAINT [DF_OrdersHist_CodQuote] DEFAULT ((0)) NOT NULL,
[QuoteRev] INT CONSTRAINT [DF_OrdersHist_QuoteRev] DEFAULT ((0)) NOT NULL,
[ProvvCost] DECIMAL (9, 6) CONSTRAINT [DF_OrdersHist_ProvvCost] DEFAULT ((0)) NOT NULL,
[EndCalc] DATETIME NULL,
CONSTRAINT [PK_OrdersHist] PRIMARY KEY CLUSTERED ([OrdNum] ASC, [OrdRow] ASC) WITH (FILLFACTOR = 100)
);
GO
CREATE NONCLUSTERED INDEX [idx_OH_quote]
ON [dbo].[OrdersHist]([CodQuote] ASC, [QuoteRev] ASC) WITH (FILLFACTOR = 100);
GO
EXECUTE sp_addextendedproperty @name = N'MS_Description', @value = N'numero nel formato yyMMddnnnn dove nnn è incrementale giornaliero', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'OrdersHist', @level2type = N'COLUMN', @level2name = N'CodQuote';
GO
EXECUTE sp_addextendedproperty @name = N'MS_Description', @value = N'tipo di preventivo: Q = quote, S = simulation', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'OrdersHist', @level2type = N'COLUMN', @level2name = N'QuoteType';
GO
EXECUTE sp_addextendedproperty @name = N'MS_Description', @value = N'Prezzo finale ordine', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'OrdersHist', @level2type = N'COLUMN', @level2name = N'OrdPrice';
GO
EXECUTE sp_addextendedproperty @name = N'MS_Description', @value = N'Codice Incoterms', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'OrdersHist', @level2type = N'COLUMN', @level2name = N'CodInco';
GO
EXECUTE sp_addextendedproperty @name = N'MS_Description', @value = N'Quantità lotto kg', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'OrdersHist', @level2type = N'COLUMN', @level2name = N'BatchQty';
GO
EXECUTE sp_addextendedproperty @name = N'MS_Description', @value = N'costo della MP €/kg', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'OrdersHist', @level2type = N'COLUMN', @level2name = N'RawMatCost';
GO
EXECUTE sp_addextendedproperty @name = N'MS_Description', @value = N'codice MP', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'OrdersHist', @level2type = N'COLUMN', @level2name = N'RawMat';
GO
EXECUTE sp_addextendedproperty @name = N'MS_Description', @value = N'codice articolo', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'OrdersHist', @level2type = N'COLUMN', @level2name = N'CodItem';
GO
EXECUTE sp_addextendedproperty @name = N'MS_Description', @value = N'codice cliente', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'OrdersHist', @level2type = N'COLUMN', @level2name = N'CodClient';
GO
EXECUTE sp_addextendedproperty @name = N'MS_Description', @value = N'data dell''ordine', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'OrdersHist', @level2type = N'COLUMN', @level2name = N'OrdDate';
GO
EXECUTE sp_addextendedproperty @name = N'MS_Description', @value = N'riga ordine', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'OrdersHist', @level2type = N'COLUMN', @level2name = N'OrdRow';
GO
EXECUTE sp_addextendedproperty @name = N'MS_Description', @value = N'numero ordine', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'OrdersHist', @level2type = N'COLUMN', @level2name = N'OrdNum';
+8
View File
@@ -0,0 +1,8 @@
CREATE TABLE [dbo].[PickList] (
[CodList] NVARCHAR (50) NOT NULL,
[Value] NVARCHAR (50) NOT NULL,
[Lemma] NVARCHAR (50) CONSTRAINT [DF_PickList_lemma] DEFAULT ('') NOT NULL,
[NumOrd] INT CONSTRAINT [DF_PickList_NumOrd] DEFAULT ((0)) NOT NULL,
CONSTRAINT [PK_PickList] PRIMARY KEY CLUSTERED ([CodList] ASC, [Value] ASC)
);
@@ -0,0 +1,22 @@
CREATE TABLE [dbo].[QuoteFull_C] (
[Vers] VARCHAR (5) NOT NULL,
[QuoteType] CHAR (1) NOT NULL,
[CodQuote] BIGINT NOT NULL,
[QuoteRev] INT NOT NULL,
[Class01] NVARCHAR (50) NOT NULL,
[Class02] NVARCHAR (50) NOT NULL,
[CodItem] NVARCHAR (50) NOT NULL,
[RawMat] NVARCHAR (50) NOT NULL,
[CodPlant] NVARCHAR (50) NOT NULL,
[CodDiesGroup] NVARCHAR (50) NOT NULL,
[CodPackag] NVARCHAR (50) NOT NULL,
[batchQty] INT NOT NULL,
[CodInco] NVARCHAR (5) NOT NULL,
[RawMatFullCost] NUMERIC (18, 6) NOT NULL,
[FVC] DECIMAL (18, 6) NOT NULL,
[FullCost] DECIMAL (18, 6) NOT NULL,
[valid] BIT NULL,
[errorScore] INT NULL,
CONSTRAINT [PK_QuoteFull_C] PRIMARY KEY CLUSTERED ([QuoteType] ASC, [CodQuote] ASC, [QuoteRev] ASC)
);
+102
View File
@@ -0,0 +1,102 @@
CREATE TABLE [dbo].[QuoteFull_R] (
[Vers] VARCHAR (5) NOT NULL,
[QuoteType] CHAR (1) CONSTRAINT [DF_QuoteFull_R_QuoteType] DEFAULT ('Q') NOT NULL,
[CodQuote] BIGINT NOT NULL,
[QuoteRev] INT NOT NULL,
[IdxQState] INT CONSTRAINT [DF_QuoteFull_R_IdxQState] DEFAULT ((0)) NOT NULL,
[CodClient] NVARCHAR (50) NOT NULL,
[ClientName] NVARCHAR (250) NOT NULL,
[CodItem] NVARCHAR (50) NOT NULL,
[CodItemGroup] NVARCHAR (50) NOT NULL,
[RawMat] NVARCHAR (50) NOT NULL,
[UnitWeight] DECIMAL (9, 3) NOT NULL,
[BatchQty] INT NOT NULL,
[CodInco] NVARCHAR (5) NOT NULL,
[TranspZone] NVARCHAR (50) CONSTRAINT [DF_QuoteFull_R_TranspZone] DEFAULT ('') NOT NULL,
[KeyAM] NVARCHAR (101) NOT NULL,
[Note] NVARCHAR (2500) NOT NULL,
[PriceOff] DECIMAL (9, 6) CONSTRAINT [DF_QuoteFull_R_PriceOff] DEFAULT ((0)) NOT NULL,
[CodClientAssoc] NVARCHAR (100) NULL,
[ClientNameAssoc] NVARCHAR (100) NULL,
[ItemDescr] NVARCHAR (100) NULL,
[CodifProfilo] NVARCHAR (100) NULL,
[ClasseMerc] NVARCHAR (100) NULL,
[TipoDies] NVARCHAR (100) NULL,
[CodDiesGroup] NVARCHAR (100) NULL,
[DiamDies] DECIMAL (18, 6) CONSTRAINT [DF_QuoteFull_R_DiamDies] DEFAULT ((0)) NOT NULL,
[HoleNumDies] INT NULL,
[DiesPrice] DECIMAL (18, 6) CONSTRAINT [DF_QuoteFull_R_DiesPrice] DEFAULT ((0)) NOT NULL,
[DiesExpLife] DECIMAL (18, 6) CONSTRAINT [DF_QuoteFull_R_DiesExpLife] DEFAULT ((0)) NOT NULL,
[DiesEOLife] DECIMAL (18, 6) NOT NULL,
[DiesByClass] BIT CONSTRAINT [DF_QuoteFull_R_DiesByClass] DEFAULT ((0)) NOT NULL,
[NumDiesInList] DECIMAL (18, 6) NULL,
[NumDiesExaust] DECIMAL (18, 6) NULL,
[CodPlant] NVARCHAR (100) NULL,
[KeyAMIL] NVARCHAR (100) NULL,
[KgTeo] DECIMAL (18, 6) NULL,
[NumSMED] INT NULL,
[QuotaMan] DECIMAL (18, 6) NULL,
[PRMWeight] DECIMAL (18, 6) NULL,
[PWeight] DECIMAL (18, 6) NULL,
[PTare] DECIMAL (18, 6) NULL,
[LivPackage] NVARCHAR (100) NULL,
[LivPackageDett] NVARCHAR (100) NULL,
[RawMatCost] DECIMAL (18, 6) NOT NULL,
[RawMatExtraCost] DECIMAL (18, 6) NOT NULL,
[RawMatFullCost] DECIMAL (18, 6) NULL,
[CodPackag] NVARCHAR (50) NOT NULL,
[PkgDesc] NVARCHAR (100) NULL,
[FSR] DECIMAL (18, 6) NULL,
[ProvvCost] DECIMAL (18, 6) NOT NULL,
[EECost] DECIMAL (18, 6) NOT NULL,
[GasCost] DECIMAL (18, 6) NOT NULL,
[DiesCost] DECIMAL (18, 6) NOT NULL,
[PackCost] DECIMAL (18, 6) NOT NULL,
[TranspCost] DECIMAL (18, 6) NOT NULL,
[SellCost01] DECIMAL (18, 6) NOT NULL,
[RefCost01] DECIMAL (18, 6) NOT NULL,
[SellCost04] DECIMAL (18, 6) NOT NULL,
[RefCost04] DECIMAL (18, 6) NOT NULL,
[WSR01] DECIMAL (9, 8) NOT NULL,
[MSR01] DECIMAL (9, 8) NOT NULL,
[NetProd01] DECIMAL (9, 3) NOT NULL,
[FC4UG01] DECIMAL (9, 6) NOT NULL,
[VC4UG01] DECIMAL (9, 6) NOT NULL,
[OH4UG01] DECIMAL (9, 6) NOT NULL,
[SC4UG01] DECIMAL (9, 6) NOT NULL,
[DSR] DECIMAL (9, 8) NULL,
[NetProd04] DECIMAL (9, 3) NOT NULL,
[FC4UG04] DECIMAL (9, 6) NOT NULL,
[VC4UG04] DECIMAL (9, 6) NOT NULL,
[FVC] DECIMAL (18, 6) NULL,
[Charge] DECIMAL (9, 6) NOT NULL,
[OrdDate] SMALLDATETIME NOT NULL,
[OrdNum] NVARCHAR (50) NOT NULL,
[OrdRow] NVARCHAR (50) NOT NULL,
[OrdPrice] DECIMAL (9, 6) NOT NULL,
[OrdQty] INT NOT NULL,
[valid] BIT CONSTRAINT [DF_QuoteFull_R_valid] DEFAULT ((1)) NOT NULL,
[errorScore] INT CONSTRAINT [DF_QuoteFull_R_errorScore] DEFAULT ((0)) NOT NULL,
CONSTRAINT [PK_QuoteFull_R_1] PRIMARY KEY CLUSTERED ([QuoteType] ASC, [CodQuote] ASC, [QuoteRev] ASC) WITH (FILLFACTOR = 90)
);
GO
EXECUTE sp_addextendedproperty @name = N'MS_Description', @value = N'punteggio complessivo errori in procedure di calcolo', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'QuoteFull_R', @level2type = N'COLUMN', @level2name = N'errorScore';
GO
EXECUTE sp_addextendedproperty @name = N'MS_Description', @value = N'Prezzo Offerto', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'QuoteFull_R', @level2type = N'COLUMN', @level2name = N'PriceOff';
GO
EXECUTE sp_addextendedproperty @name = N'MS_Description', @value = N'Classificazione cliente (es zona, provincia...) x incrocio con tab costi trasporto', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'QuoteFull_R', @level2type = N'COLUMN', @level2name = N'TranspZone';
GO
EXECUTE sp_addextendedproperty @name = N'MS_Description', @value = N'Stato offerta: 0 = D raft, 1 = C ompleted / in approvazione, 2 = A pprouved, 3 = R eleased', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'QuoteFull_R', @level2type = N'COLUMN', @level2name = N'IdxQState';
GO
EXECUTE sp_addextendedproperty @name = N'MS_Description', @value = N'Resa', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'QuoteFull_R';
+168
View File
@@ -0,0 +1,168 @@
CREATE TABLE [dbo].[QuoteFull_S] (
[Vers] VARCHAR (5) NOT NULL,
[QuoteType] CHAR (1) CONSTRAINT [DF_QuoteFull_S_QuoteType] DEFAULT ('S') NOT NULL,
[CodQuote] BIGINT CONSTRAINT [DF_QuoteFull_S_CodQuote] DEFAULT ((0)) NOT NULL,
[QuoteRev] INT CONSTRAINT [DF_QuoteFull_S_QuoteRev] DEFAULT ((0)) NOT NULL,
[IdxQState] INT CONSTRAINT [DF_QuoteFull_S_IdxQState] DEFAULT ((0)) NOT NULL,
[CodClient] NVARCHAR (50) NOT NULL,
[ClientName] NVARCHAR (250) NOT NULL,
[CodItem] NVARCHAR (50) NOT NULL,
[CodItemGroup] NVARCHAR (50) NOT NULL,
[RawMat] NVARCHAR (50) NOT NULL,
[UnitWeight] DECIMAL (9, 3) CONSTRAINT [DF_QuoteFull_S_UnitWeight] DEFAULT ((0)) NOT NULL,
[BatchQty] INT CONSTRAINT [DF_QuoteFull_S_BatchQty] DEFAULT ((1)) NOT NULL,
[CodInco] NVARCHAR (5) NOT NULL,
[TranspZone] NVARCHAR (50) NOT NULL,
[KeyAM] NVARCHAR (101) NOT NULL,
[Note] NVARCHAR (2500) NOT NULL,
[PriceOff] DECIMAL (9, 6) CONSTRAINT [DF_QuoteFull_S_PriceOff] DEFAULT ((0)) NOT NULL,
[CodClientAssoc] NVARCHAR (100) NULL,
[ClientNameAssoc] NVARCHAR (100) NULL,
[ItemDescr] NVARCHAR (100) NULL,
[CodifProfilo] NVARCHAR (100) NULL,
[ClasseMerc] NVARCHAR (100) NULL,
[TipoDies] NVARCHAR (100) NULL,
[CodDiesGroup] NVARCHAR (100) NULL,
[DiamDies] DECIMAL (18, 6) CONSTRAINT [DF_QuoteFull_S_DiamDies] DEFAULT ((0)) NOT NULL,
[HoleNumDies] INT CONSTRAINT [DF_QuoteFull_S_HoleNumDies] DEFAULT ((1)) NOT NULL,
[DiesPrice_sim] DECIMAL (18, 6) CONSTRAINT [DF_QuoteFull_S_DiesPrice_avg] DEFAULT ((0)) NOT NULL,
[DiesPrice] DECIMAL (18, 6) CONSTRAINT [DF_QuoteFull_S_DiesPrice] DEFAULT ((0)) NOT NULL,
[SamplePrice] DECIMAL (18, 6) CONSTRAINT [DF_QuoteFull_S_TestPrice] DEFAULT ((0)) NOT NULL,
[DiesFullCost] DECIMAL (18, 6) CONSTRAINT [DF_QuoteFull_S_DiesFullCost] DEFAULT ((0)) NOT NULL,
[DiesPriceClientQuote] DECIMAL (18, 6) CONSTRAINT [DF_QuoteFull_S_DiesPrice1] DEFAULT ((0)) NOT NULL,
[DiesExpLife] DECIMAL (18, 6) CONSTRAINT [DF_QuoteFull_S_DiesExpLife] DEFAULT ((0)) NOT NULL,
[DiesEOLife] DECIMAL (18, 6) CONSTRAINT [DF_QuoteFull_S_DiesEOLife] DEFAULT ((0)) NOT NULL,
[DiesTecLife] DECIMAL (18, 6) CONSTRAINT [DF_QuoteFull_S_DiesTecLife] DEFAULT ((1)) NOT NULL,
[DiesCommLife] DECIMAL (18, 6) CONSTRAINT [DF_QuoteFull_S_DiesCommLife1] DEFAULT ((1)) NOT NULL,
[MonthSalesPrev] INT CONSTRAINT [DF_QuoteFull_S_DiesTecLife1] DEFAULT ((0)) NOT NULL,
[SalesPrevCost] DECIMAL (18, 6) CONSTRAINT [DF_QuoteFull_S_SalesPrevCost] DEFAULT ((0)) NOT NULL,
[DiesFinCost] DECIMAL (18, 6) CONSTRAINT [DF_QuoteFull_S_DiesFinCost] DEFAULT ((0)) NOT NULL,
[ClientQuoteReven] DECIMAL (18, 6) CONSTRAINT [DF_QuoteFull_S_ClientQuoteReven] DEFAULT ((0)) NOT NULL,
[ExtraDiscountDies] DECIMAL (18, 6) CONSTRAINT [DF_QuoteFull_S_ExtraDiscountDies] DEFAULT ((0)) NOT NULL,
[DiesByClass] BIT CONSTRAINT [DF_QuoteFull_S_DiesByClass] DEFAULT ((0)) NOT NULL,
[NumDiesInList] DECIMAL (18, 6) CONSTRAINT [DF_QuoteFull_S_NumDiesInList] DEFAULT ((0)) NOT NULL,
[NumDiesExaust] DECIMAL (18, 6) CONSTRAINT [DF_QuoteFull_S_NumDiesExaust] DEFAULT ((0)) NOT NULL,
[CodPlant] NVARCHAR (100) NULL,
[KeyAMIL] NVARCHAR (100) NULL,
[KgTeo] DECIMAL (18, 6) CONSTRAINT [DF_QuoteFull_S_KgTeo] DEFAULT ((0)) NOT NULL,
[NumSMED] INT CONSTRAINT [DF_QuoteFull_S_NumSMED] DEFAULT ((0)) NOT NULL,
[QuotaMan] DECIMAL (18, 6) CONSTRAINT [DF_QuoteFull_S_QuotaMan] DEFAULT ((0)) NOT NULL,
[PRMWeight] DECIMAL (18, 6) CONSTRAINT [DF_QuoteFull_S_PRMWeight] DEFAULT ((0)) NOT NULL,
[PWeight] DECIMAL (18, 6) CONSTRAINT [DF_QuoteFull_S_PWeight] DEFAULT ((0)) NOT NULL,
[PTare] DECIMAL (18, 6) CONSTRAINT [DF_QuoteFull_S_PTare] DEFAULT ((0)) NOT NULL,
[LivPackage] NVARCHAR (100) NULL,
[LivPackageDett] NVARCHAR (100) NULL,
[RawMatCost] DECIMAL (18, 6) CONSTRAINT [DF_QuoteFull_S_RawMatCost] DEFAULT ((0)) NOT NULL,
[RawMatExtraCost] DECIMAL (18, 6) CONSTRAINT [DF_QuoteFull_S_RawMatExtraCost] DEFAULT ((0)) NOT NULL,
[RawMatFullCost] DECIMAL (18, 6) CONSTRAINT [DF_QuoteFull_S_RawMatFullCost] DEFAULT ((0)) NOT NULL,
[CodPackag] NVARCHAR (50) NOT NULL,
[PkgDesc] NVARCHAR (100) NULL,
[FSR] DECIMAL (18, 6) CONSTRAINT [DF_QuoteFull_S_FSR] DEFAULT ((0)) NOT NULL,
[ProvvCost] DECIMAL (18, 6) CONSTRAINT [DF_QuoteFull_S_ProvvCost] DEFAULT ((0)) NOT NULL,
[EECost] DECIMAL (18, 6) CONSTRAINT [DF_QuoteFull_S_EECost] DEFAULT ((0)) NOT NULL,
[GasCost] DECIMAL (18, 6) CONSTRAINT [DF_QuoteFull_S_GasCost] DEFAULT ((0)) NOT NULL,
[DiesCost] DECIMAL (18, 6) CONSTRAINT [DF_QuoteFull_S_DiesCost] DEFAULT ((0)) NOT NULL,
[PackCost] DECIMAL (18, 6) CONSTRAINT [DF_QuoteFull_S_PackCost] DEFAULT ((0)) NOT NULL,
[TranspCost] DECIMAL (18, 6) CONSTRAINT [DF_QuoteFull_S_TranspCost] DEFAULT ((0)) NOT NULL,
[SellCost01] DECIMAL (18, 6) CONSTRAINT [DF_QuoteFull_S_SellCost01] DEFAULT ((0)) NOT NULL,
[RefCost01] DECIMAL (18, 6) CONSTRAINT [DF_QuoteFull_S_RefCost01] DEFAULT ((0)) NOT NULL,
[SellCost04] DECIMAL (18, 6) CONSTRAINT [DF_QuoteFull_S_SellCost04] DEFAULT ((0)) NOT NULL,
[RefCost04] DECIMAL (18, 6) CONSTRAINT [DF_QuoteFull_S_RefCost04] DEFAULT ((0)) NOT NULL,
[WSR01_sim] DECIMAL (9, 8) CONSTRAINT [DF_QuoteFull_S_WSR01_avg] DEFAULT ((0)) NOT NULL,
[WSR01] DECIMAL (9, 8) CONSTRAINT [DF_QuoteFull_S_WSR01] DEFAULT ((0)) NOT NULL,
[MSR01_sim] DECIMAL (9, 8) CONSTRAINT [DF_QuoteFull_S_MSR01_avg] DEFAULT ((0)) NOT NULL,
[MSR01] DECIMAL (9, 8) CONSTRAINT [DF_QuoteFull_S_MSR01] DEFAULT ((0)) NOT NULL,
[NetProd01_sim] DECIMAL (9, 3) CONSTRAINT [DF_QuoteFull_S_NetProd01_avg] DEFAULT ((0)) NOT NULL,
[NetProd01] DECIMAL (9, 3) CONSTRAINT [DF_QuoteFull_S_NetProd01] DEFAULT ((0)) NOT NULL,
[FC4UG01] DECIMAL (9, 6) CONSTRAINT [DF_QuoteFull_S_FC4UG01] DEFAULT ((0)) NOT NULL,
[VC4UG01] DECIMAL (9, 6) CONSTRAINT [DF_QuoteFull_S_VC4UG01] DEFAULT ((0)) NOT NULL,
[OH4UG01] DECIMAL (9, 6) CONSTRAINT [DF_QuoteFull_S_OH4UG01] DEFAULT ((0)) NOT NULL,
[SC4UG01] DECIMAL (9, 6) CONSTRAINT [DF_QuoteFull_S_SC4UG01] DEFAULT ((0)) NOT NULL,
[DSR_sim] DECIMAL (9, 8) CONSTRAINT [DF_QuoteFull_S_DSR_avg] DEFAULT ((0)) NOT NULL,
[DSR] DECIMAL (9, 8) CONSTRAINT [DF_QuoteFull_S_DSR] DEFAULT ((0)) NOT NULL,
[NetProd04] DECIMAL (9, 3) CONSTRAINT [DF_QuoteFull_S_NetProd04] DEFAULT ((0)) NOT NULL,
[FC4UG04] DECIMAL (9, 6) CONSTRAINT [DF_QuoteFull_S_FC4UG04] DEFAULT ((0)) NOT NULL,
[VC4UG04] DECIMAL (9, 6) CONSTRAINT [DF_QuoteFull_S_VC4UG04] DEFAULT ((0)) NOT NULL,
[FVC] DECIMAL (18, 6) CONSTRAINT [DF_QuoteFull_S_FVC] DEFAULT ((0)) NOT NULL,
[Charge] DECIMAL (9, 6) CONSTRAINT [DF_QuoteFull_S_Charge] DEFAULT ((0)) NOT NULL,
[valid] BIT NOT NULL,
[errorScore] INT NOT NULL,
CONSTRAINT [PK_QuoteFull_S] PRIMARY KEY CLUSTERED ([QuoteType] ASC, [CodQuote] ASC, [QuoteRev] ASC)
);
GO
EXECUTE sp_addextendedproperty @name = N'MS_Description', @value = N'scarto medio AMI', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'QuoteFull_S', @level2type = N'COLUMN', @level2name = N'DSR';
GO
EXECUTE sp_addextendedproperty @name = N'MS_Description', @value = N'scarto medio SIMULAZIONE', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'QuoteFull_S', @level2type = N'COLUMN', @level2name = N'DSR_sim';
GO
EXECUTE sp_addextendedproperty @name = N'MS_Description', @value = N'produttività teorica medio AMIL', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'QuoteFull_S', @level2type = N'COLUMN', @level2name = N'NetProd01';
GO
EXECUTE sp_addextendedproperty @name = N'MS_Description', @value = N'produttività teorica SIMULAZIONE', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'QuoteFull_S', @level2type = N'COLUMN', @level2name = N'NetProd01_sim';
GO
EXECUTE sp_addextendedproperty @name = N'MS_Description', @value = N'scarto cesoia medio AMIL', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'QuoteFull_S', @level2type = N'COLUMN', @level2name = N'MSR01';
GO
EXECUTE sp_addextendedproperty @name = N'MS_Description', @value = N'scarto cesoia SIMULAZIONE', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'QuoteFull_S', @level2type = N'COLUMN', @level2name = N'MSR01_sim';
GO
EXECUTE sp_addextendedproperty @name = N'MS_Description', @value = N'scarto tecnico medio AMIL', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'QuoteFull_S', @level2type = N'COLUMN', @level2name = N'WSR01';
GO
EXECUTE sp_addextendedproperty @name = N'MS_Description', @value = N'scarto tecnico SIMULAZIONE', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'QuoteFull_S', @level2type = N'COLUMN', @level2name = N'WSR01_sim';
GO
EXECUTE sp_addextendedproperty @name = N'MS_Description', @value = N'Ricavo quota cliente', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'QuoteFull_S', @level2type = N'COLUMN', @level2name = N'ExtraDiscountDies';
GO
EXECUTE sp_addextendedproperty @name = N'MS_Description', @value = N'Ricavo quota cliente', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'QuoteFull_S', @level2type = N'COLUMN', @level2name = N'ClientQuoteReven';
GO
EXECUTE sp_addextendedproperty @name = N'MS_Description', @value = N'oneri finanziari anticipo matrice', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'QuoteFull_S', @level2type = N'COLUMN', @level2name = N'DiesFinCost';
GO
EXECUTE sp_addextendedproperty @name = N'MS_Description', @value = N'costi per durata commerciale', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'QuoteFull_S', @level2type = N'COLUMN', @level2name = N'SalesPrevCost';
GO
EXECUTE sp_addextendedproperty @name = N'MS_Description', @value = N'Durata commerciale in mesi prevista', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'QuoteFull_S', @level2type = N'COLUMN', @level2name = N'MonthSalesPrev';
GO
EXECUTE sp_addextendedproperty @name = N'MS_Description', @value = N'Durata commerciale in kg', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'QuoteFull_S', @level2type = N'COLUMN', @level2name = N'DiesCommLife';
GO
EXECUTE sp_addextendedproperty @name = N'MS_Description', @value = N'Durata tecnica stimata', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'QuoteFull_S', @level2type = N'COLUMN', @level2name = N'DiesTecLife';
GO
EXECUTE sp_addextendedproperty @name = N'MS_Description', @value = N'costo prove', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'QuoteFull_S', @level2type = N'COLUMN', @level2name = N'DiesFullCost';
GO
EXECUTE sp_addextendedproperty @name = N'MS_Description', @value = N'costo prove', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'QuoteFull_S', @level2type = N'COLUMN', @level2name = N'SamplePrice';
GO
EXECUTE sp_addextendedproperty @name = N'MS_Description', @value = N'costo matrice per SIMULAZIONE', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'QuoteFull_S', @level2type = N'COLUMN', @level2name = N'DiesPrice_sim';
GO
EXECUTE sp_addextendedproperty @name = N'MS_Description', @value = N'Simulation', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'QuoteFull_S';
@@ -0,0 +1,17 @@
CREATE TABLE [dbo].[QuoteSimPar] (
[QuoteType] CHAR (1) CONSTRAINT [DF_QuoteSimPar_QuoteType] DEFAULT ('Q') NOT NULL,
[CodQuote] BIGINT NOT NULL,
[QuoteRev] INT CONSTRAINT [DF_QuoteSimPar_QuoteRev] DEFAULT ((0)) NOT NULL,
[NomePar] NVARCHAR (50) CONSTRAINT [DF_QuoteSimPar_NomePar] DEFAULT ('') NOT NULL,
[ValPar] NVARCHAR (50) CONSTRAINT [DF_QuoteSimPar_ValParStr] DEFAULT ('') NOT NULL,
CONSTRAINT [PK_QuoteSimPar_1] PRIMARY KEY CLUSTERED ([QuoteType] ASC, [CodQuote] ASC, [QuoteRev] ASC, [NomePar] ASC) WITH (FILLFACTOR = 90)
);
GO
EXECUTE sp_addextendedproperty @name = N'MS_Description', @value = N'numero nel formato yyMMddnnnn dove nnn è incrementale giornaliero', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'QuoteSimPar', @level2type = N'COLUMN', @level2name = N'CodQuote';
GO
EXECUTE sp_addextendedproperty @name = N'MS_Description', @value = N'tipo di preventivo: Q = quote, S = simulation', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'QuoteSimPar', @level2type = N'COLUMN', @level2name = N'QuoteType';
@@ -0,0 +1,30 @@
CREATE TABLE [dbo].[ReportPrintTicket] (
[Ticket] INT NOT NULL,
[Report] NVARCHAR (50) CONSTRAINT [DF_Table1_Tabella] DEFAULT ('') NOT NULL,
[Chiave] NVARCHAR (250) CONSTRAINT [DF_ReportPrintTicket_Chiave] DEFAULT ('') NOT NULL,
[UserReq] NVARCHAR (50) CONSTRAINT [DF_ReportPrintTicket_UserReq] DEFAULT ('') NOT NULL,
[DataReq] DATETIME CONSTRAINT [DF_ReportPrintTicket_DataReq] DEFAULT (getdate()) NOT NULL,
[DataPrint] DATETIME NULL,
CONSTRAINT [PK_ReportPrintTicket] PRIMARY KEY CLUSTERED ([Ticket] ASC, [Report] ASC, [Chiave] ASC)
);
GO
EXECUTE sp_addextendedproperty @name = N'MS_Description', @value = N'data stampa', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'ReportPrintTicket', @level2type = N'COLUMN', @level2name = N'DataPrint';
GO
EXECUTE sp_addextendedproperty @name = N'MS_Description', @value = N'data richiesta', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'ReportPrintTicket', @level2type = N'COLUMN', @level2name = N'DataReq';
GO
EXECUTE sp_addextendedproperty @name = N'MS_Description', @value = N'user richiesta', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'ReportPrintTicket', @level2type = N'COLUMN', @level2name = N'UserReq';
GO
EXECUTE sp_addextendedproperty @name = N'MS_Description', @value = N'chiave multipla richiesta (specifica epr report)', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'ReportPrintTicket', @level2type = N'COLUMN', @level2name = N'Chiave';
GO
EXECUTE sp_addextendedproperty @name = N'MS_Description', @value = N'Ticket univoco per stampa', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'ReportPrintTicket', @level2type = N'COLUMN', @level2name = N'Ticket';
@@ -0,0 +1,9 @@
CREATE TABLE [dbo].[TrascClass01] (
[Class01] NVARCHAR (50) NOT NULL,
[Class01New] NVARCHAR (50) NOT NULL
);
GO
EXECUTE sp_addextendedproperty @name = N'Note', @value = N'Tabella per Trascodifica dati in Dati DEMO', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'TrascClass01';
@@ -0,0 +1,9 @@
CREATE TABLE [dbo].[TrascClass02] (
[Class02] NVARCHAR (50) NOT NULL,
[Class02New] NVARCHAR (50) NOT NULL
);
GO
EXECUTE sp_addextendedproperty @name = N'Note', @value = N'Tabella per Trascodifica dati in Dati DEMO', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'TrascClass02';
@@ -0,0 +1,9 @@
CREATE TABLE [dbo].[TrascClass03] (
[Class03] NVARCHAR (50) NOT NULL,
[Class03New] NVARCHAR (50) NOT NULL
);
GO
EXECUTE sp_addextendedproperty @name = N'Note', @value = N'Tabella per Trascodifica dati in Dati DEMO', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'TrascClass03';
@@ -0,0 +1,11 @@
CREATE TABLE [dbo].[TrascClient] (
[CodClient] NVARCHAR (50) NOT NULL,
[ClientName] NVARCHAR (250) NOT NULL,
[CodClientNew] NVARCHAR (50) NOT NULL,
[ClientNameNew] NVARCHAR (250) NOT NULL
);
GO
EXECUTE sp_addextendedproperty @name = N'Note', @value = N'Tabella per Trascodifica dati in Dati DEMO', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'TrascClient';
+9
View File
@@ -0,0 +1,9 @@
CREATE TABLE [dbo].[TrascDies] (
[CodDies] NVARCHAR (50) NOT NULL,
[CodDiesNew] NVARCHAR (50) NOT NULL
);
GO
EXECUTE sp_addextendedproperty @name = N'Note', @value = N'Tabella per Trascodifica dati in Dati DEMO', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'TrascDies';
+11
View File
@@ -0,0 +1,11 @@
CREATE TABLE [dbo].[TrascItem] (
[CodItem] NVARCHAR (50) NOT NULL,
[ItemDescr] NVARCHAR (250) NOT NULL,
[CodItemNew] NVARCHAR (50) NOT NULL,
[ItemDescNew] NVARCHAR (250) NOT NULL
);
GO
EXECUTE sp_addextendedproperty @name = N'Note', @value = N'Tabella per Trascodifica dati in Dati DEMO', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'TrascItem';
+9
View File
@@ -0,0 +1,9 @@
CREATE TABLE [dbo].[TrascPlan] (
[CodPlant] NVARCHAR (50) NOT NULL,
[CodPlantNew] NVARCHAR (50) NOT NULL
);
GO
EXECUTE sp_addextendedproperty @name = N'Note', @value = N'Tabella per Trascodifica dati in Dati DEMO', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'TrascPlan';
+16
View File
@@ -0,0 +1,16 @@
CREATE TABLE [dbo].[UTENTE] (
[DOMINIO] VARCHAR (30) NULL,
[USER_NAME] NVARCHAR (50) NOT NULL,
[COGNOME] VARCHAR (100) NULL,
[NOME] VARCHAR (100) NULL,
[COD_SOCIETA] VARCHAR (5) NULL,
[MATRICOLA] VARCHAR (5) NULL,
[COD_CDC] VARCHAR (10) NULL,
[EMAIL] VARCHAR (100) NULL,
[SIGLA] NVARCHAR (5) NULL,
[COD_LINGUA] VARCHAR (3) NULL,
[ATTIVO] CHAR (1) NULL,
CONSTRAINT [PK_UTENTE] PRIMARY KEY CLUSTERED ([USER_NAME] ASC),
CONSTRAINT [FK_UTENTE_CDC] FOREIGN KEY ([COD_CDC]) REFERENCES [dbo].[CDC] ([COD_CDC]) ON UPDATE CASCADE
);
-12
View File
@@ -1,12 +0,0 @@
CREATE TABLE [dbo].[test] (
[Row] BIGINT IDENTITY (1, 1) NOT NULL,
[CodPlant] NVARCHAR (50) NOT NULL,
[EventStart] DATETIME NOT NULL,
[ProcessNum] NVARCHAR (50) NOT NULL,
[CodDies] NVARCHAR (50) NOT NULL,
[CodClient] NVARCHAR (50) NOT NULL,
[OrderNum] NVARCHAR (50) NOT NULL,
[BatchNum] NVARCHAR (50) NOT NULL,
CONSTRAINT [PK_test] PRIMARY KEY CLUSTERED ([Row] ASC)
);
@@ -0,0 +1,242 @@
CREATE VIEW [dbo].[v_MarginReport]
AS
SELECT Vers, CodClient, CodItem, RawMat, BatchQty, CodInco, KeyAM, CodDiesGroup, DiesPrice, DiesExpLife, DiesEOLife, DiesByClass, NumDiesInList, NumDiesExaust, CodPlant, KeyAMIL, KgTeo, NumSMED,
QuotaMan, PWeight, PTare, LivPackage, LivPackageDett, RawMatCost, RawMatExtraCost, RawMatFullCost, CodPackag, FSR, ProvvCost, EECost, GasCost, DiesCost, PackCost, TranspCost, SellCost01,
RefCost01, SellCost04, RefCost04, WSR01, MSR01, NetProd01, FC4UG01, VC4UG01, OH4UG01, SC4UG01, DSR, NetProd04, FC4UG04, VC4UG04, FVC, Charge, FVC + RawMatFullCost AS P_FVC,
FC4UG01 + OH4UG01 AS CPS, FC4UG01 + OH4UG01 + FVC + RawMatFullCost AS P_CPS, FC4UG04 + FVC + RawMatFullCost AS P_FC4UG04, FVC + FC4UG01 + OH4UG01 + FC4UG04 AS FullCost,
FVC + FC4UG01 + OH4UG01 + FC4UG04 + RawMatFullCost AS P_FullCost, Charge * (FVC + FC4UG01 + OH4UG01 + FC4UG04) AS MinPrice, Charge * (FVC + FC4UG01 + OH4UG01 + FC4UG04 + RawMatFullCost)
AS P_MinPrice, PriceOff - (FVC + FC4UG01 + OH4UG01 + FC4UG04) AS NetMar, CASE WHEN (FC4UG01 + OH4UG01 + FC4UG04) = 0 THEN 0 ELSE (PriceOff - FVC) / (FC4UG01 + OH4UG01 + FC4UG04)
END AS FCShield, CASE WHEN PWeight = 0 THEN 0 ELSE (PRMWeight - PTare) * (PriceOff + RawMatFullCost) / PWeight END AS PckSur, valid, errorScore, OrdDate, OrdNum, OrdRow, OrdPrice,
PriceOff AS OrdTrasf, OrdQty AS OrdQty
FROM dbo.QuoteFull_R
GO
EXECUTE sp_addextendedproperty @name = N'MS_DiagramPaneCount', @value = 2, @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'VIEW', @level1name = N'v_MarginReport';
GO
EXECUTE sp_addextendedproperty @name = N'MS_DiagramPane2', @value = N'
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
End
End
Begin CriteriaPane =
Begin ColumnWidths = 11
Column = 12180
Alias = 1725
Table = 1170
Output = 720
Append = 1400
NewValue = 1170
SortType = 1350
SortOrder = 1410
GroupBy = 1350
Filter = 1350
Or = 1350
Or = 1350
Or = 1350
End
End
End
', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'VIEW', @level1name = N'v_MarginReport';
GO
EXECUTE sp_addextendedproperty @name = N'MS_DiagramPane1', @value = N'[0E232FF0-B466-11cf-A24F-00AA00A3EFFF, 1.00]
Begin DesignProperties =
Begin PaneConfigurations =
Begin PaneConfiguration = 0
NumPanes = 4
Configuration = "(H (1[25] 4[31] 2[14] 3) )"
End
Begin PaneConfiguration = 1
NumPanes = 3
Configuration = "(H (1 [50] 4 [25] 3))"
End
Begin PaneConfiguration = 2
NumPanes = 3
Configuration = "(H (1 [50] 2 [25] 3))"
End
Begin PaneConfiguration = 3
NumPanes = 3
Configuration = "(H (4 [30] 2 [40] 3))"
End
Begin PaneConfiguration = 4
NumPanes = 2
Configuration = "(H (1 [56] 3))"
End
Begin PaneConfiguration = 5
NumPanes = 2
Configuration = "(H (2 [66] 3))"
End
Begin PaneConfiguration = 6
NumPanes = 2
Configuration = "(H (4 [50] 3))"
End
Begin PaneConfiguration = 7
NumPanes = 1
Configuration = "(V (3))"
End
Begin PaneConfiguration = 8
NumPanes = 3
Configuration = "(H (1[56] 4[18] 2) )"
End
Begin PaneConfiguration = 9
NumPanes = 2
Configuration = "(H (1 [75] 4))"
End
Begin PaneConfiguration = 10
NumPanes = 2
Configuration = "(H (1[66] 2) )"
End
Begin PaneConfiguration = 11
NumPanes = 2
Configuration = "(H (4 [60] 2))"
End
Begin PaneConfiguration = 12
NumPanes = 1
Configuration = "(H (1) )"
End
Begin PaneConfiguration = 13
NumPanes = 1
Configuration = "(V (4))"
End
Begin PaneConfiguration = 14
NumPanes = 1
Configuration = "(V (2))"
End
ActivePaneConfig = 0
End
Begin DiagramPane =
Begin Origin =
Top = 0
Left = 0
End
Begin Tables =
Begin Table = "QuoteFull_R"
Begin Extent =
Top = 5
Left = 30
Bottom = 226
Right = 213
End
DisplayFlags = 280
TopColumn = 69
End
End
End
Begin SQLPane =
End
Begin DataPane =
Begin ParameterDefaults = ""
End
Begin ColumnWidths = 109
Width = 284
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 2445
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'VIEW', @level1name = N'v_MarginReport';
@@ -0,0 +1,119 @@
CREATE VIEW dbo.v_MarginReportStats
AS
SELECT MIN(OrdDate) AS FromDate, MAX(OrdDate) AS ToDate, COUNT(*) AS NumOrderRows, COUNT(DISTINCT OrdNum) AS NumOrders, COUNT(DISTINCT CodItem) AS NumItem, COUNT(DISTINCT CodClient)
AS NumClients
FROM dbo.QuoteFull_R
GO
EXECUTE sp_addextendedproperty @name = N'MS_DiagramPaneCount', @value = 1, @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'VIEW', @level1name = N'v_MarginReportStats';
GO
EXECUTE sp_addextendedproperty @name = N'MS_DiagramPane1', @value = N'[0E232FF0-B466-11cf-A24F-00AA00A3EFFF, 1.00]
Begin DesignProperties =
Begin PaneConfigurations =
Begin PaneConfiguration = 0
NumPanes = 4
Configuration = "(H (1[40] 4[20] 2[20] 3) )"
End
Begin PaneConfiguration = 1
NumPanes = 3
Configuration = "(H (1 [50] 4 [25] 3))"
End
Begin PaneConfiguration = 2
NumPanes = 3
Configuration = "(H (1 [50] 2 [25] 3))"
End
Begin PaneConfiguration = 3
NumPanes = 3
Configuration = "(H (4 [30] 2 [40] 3))"
End
Begin PaneConfiguration = 4
NumPanes = 2
Configuration = "(H (1 [56] 3))"
End
Begin PaneConfiguration = 5
NumPanes = 2
Configuration = "(H (2 [66] 3))"
End
Begin PaneConfiguration = 6
NumPanes = 2
Configuration = "(H (4 [50] 3))"
End
Begin PaneConfiguration = 7
NumPanes = 1
Configuration = "(V (3))"
End
Begin PaneConfiguration = 8
NumPanes = 3
Configuration = "(H (1[56] 4[18] 2) )"
End
Begin PaneConfiguration = 9
NumPanes = 2
Configuration = "(H (1 [75] 4))"
End
Begin PaneConfiguration = 10
NumPanes = 2
Configuration = "(H (1[66] 2) )"
End
Begin PaneConfiguration = 11
NumPanes = 2
Configuration = "(H (4 [60] 2))"
End
Begin PaneConfiguration = 12
NumPanes = 1
Configuration = "(H (1) )"
End
Begin PaneConfiguration = 13
NumPanes = 1
Configuration = "(V (4))"
End
Begin PaneConfiguration = 14
NumPanes = 1
Configuration = "(V (2))"
End
ActivePaneConfig = 0
End
Begin DiagramPane =
Begin Origin =
Top = 0
Left = 0
End
Begin Tables =
Begin Table = "QuoteFull_R"
Begin Extent =
Top = 6
Left = 38
Bottom = 273
Right = 237
End
DisplayFlags = 280
TopColumn = 0
End
End
End
Begin SQLPane =
End
Begin DataPane =
Begin ParameterDefaults = ""
End
End
Begin CriteriaPane =
Begin ColumnWidths = 12
Column = 1440
Alias = 900
Table = 1170
Output = 720
Append = 1400
NewValue = 1170
SortType = 1350
SortOrder = 1410
GroupBy = 1350
Filter = 1350
Or = 1350
Or = 1350
Or = 1350
End
End
End
', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'VIEW', @level1name = N'v_MarginReportStats';
@@ -0,0 +1,130 @@
CREATE VIEW dbo.[v_MarginReportStatsNewData]
AS
SELECT MIN(OrdDate) AS FromDate, MAX(OrdDate) AS ToDate, COUNT(*) AS NumOrderRows, COUNT(DISTINCT OrdNum) AS NumOrders, COUNT(DISTINCT CodItem) AS NumItem, COUNT(DISTINCT CodClient)
AS NumClients
FROM ext.OrdersHistRaw
GO
EXECUTE sp_addextendedproperty @name = N'MS_DiagramPaneCount', @value = 1, @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'VIEW', @level1name = N'v_MarginReportStatsNewData';
GO
EXECUTE sp_addextendedproperty @name = N'MS_DiagramPane1', @value = N'[0E232FF0-B466-11cf-A24F-00AA00A3EFFF, 1.00]
Begin DesignProperties =
Begin PaneConfigurations =
Begin PaneConfiguration = 0
NumPanes = 4
Configuration = "(H (1[40] 4[20] 2[20] 3) )"
End
Begin PaneConfiguration = 1
NumPanes = 3
Configuration = "(H (1 [50] 4 [25] 3))"
End
Begin PaneConfiguration = 2
NumPanes = 3
Configuration = "(H (1 [50] 2 [25] 3))"
End
Begin PaneConfiguration = 3
NumPanes = 3
Configuration = "(H (4 [30] 2 [40] 3))"
End
Begin PaneConfiguration = 4
NumPanes = 2
Configuration = "(H (1 [56] 3))"
End
Begin PaneConfiguration = 5
NumPanes = 2
Configuration = "(H (2 [66] 3))"
End
Begin PaneConfiguration = 6
NumPanes = 2
Configuration = "(H (4 [50] 3))"
End
Begin PaneConfiguration = 7
NumPanes = 1
Configuration = "(V (3))"
End
Begin PaneConfiguration = 8
NumPanes = 3
Configuration = "(H (1[56] 4[18] 2) )"
End
Begin PaneConfiguration = 9
NumPanes = 2
Configuration = "(H (1 [75] 4))"
End
Begin PaneConfiguration = 10
NumPanes = 2
Configuration = "(H (1[66] 2) )"
End
Begin PaneConfiguration = 11
NumPanes = 2
Configuration = "(H (4 [60] 2))"
End
Begin PaneConfiguration = 12
NumPanes = 1
Configuration = "(H (1) )"
End
Begin PaneConfiguration = 13
NumPanes = 1
Configuration = "(V (4))"
End
Begin PaneConfiguration = 14
NumPanes = 1
Configuration = "(V (2))"
End
ActivePaneConfig = 0
End
Begin DiagramPane =
Begin Origin =
Top = 0
Left = 0
End
Begin Tables =
Begin Table = "OrdersHistRaw (ext)"
Begin Extent =
Top = 6
Left = 38
Bottom = 298
Right = 219
End
DisplayFlags = 280
TopColumn = 0
End
End
End
Begin SQLPane =
End
Begin DataPane =
Begin ParameterDefaults = ""
End
Begin ColumnWidths = 9
Width = 284
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
End
End
Begin CriteriaPane =
Begin ColumnWidths = 12
Column = 1440
Alias = 900
Table = 1170
Output = 720
Append = 1400
NewValue = 1170
SortType = 1350
SortOrder = 1410
GroupBy = 1350
Filter = 1350
Or = 1350
Or = 1350
Or = 1350
End
End
End
', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'VIEW', @level1name = N'v_MarginReportStatsNewData';
+136
View File
@@ -0,0 +1,136 @@
CREATE VIEW dbo.v_StdCostList
AS
SELECT LEFT(CodQuote, 6) AS DataRif, Class01, Class02, CodItem, RawMat, CodPlant, CodDiesGroup, CodPackag, batchQty, CodInco, RawMatFullCost, FVC, FullCost
FROM dbo.QuoteFull_C
GO
EXECUTE sp_addextendedproperty @name = N'MS_DiagramPaneCount', @value = 1, @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'VIEW', @level1name = N'v_StdCostList';
GO
EXECUTE sp_addextendedproperty @name = N'MS_DiagramPane1', @value = N'[0E232FF0-B466-11cf-A24F-00AA00A3EFFF, 1.00]
Begin DesignProperties =
Begin PaneConfigurations =
Begin PaneConfiguration = 0
NumPanes = 4
Configuration = "(H (1[41] 4[20] 2[8] 3) )"
End
Begin PaneConfiguration = 1
NumPanes = 3
Configuration = "(H (1 [50] 4 [25] 3))"
End
Begin PaneConfiguration = 2
NumPanes = 3
Configuration = "(H (1 [50] 2 [25] 3))"
End
Begin PaneConfiguration = 3
NumPanes = 3
Configuration = "(H (4 [30] 2 [40] 3))"
End
Begin PaneConfiguration = 4
NumPanes = 2
Configuration = "(H (1 [56] 3))"
End
Begin PaneConfiguration = 5
NumPanes = 2
Configuration = "(H (2 [66] 3))"
End
Begin PaneConfiguration = 6
NumPanes = 2
Configuration = "(H (4 [50] 3))"
End
Begin PaneConfiguration = 7
NumPanes = 1
Configuration = "(V (3))"
End
Begin PaneConfiguration = 8
NumPanes = 3
Configuration = "(H (1[56] 4[18] 2) )"
End
Begin PaneConfiguration = 9
NumPanes = 2
Configuration = "(H (1 [75] 4))"
End
Begin PaneConfiguration = 10
NumPanes = 2
Configuration = "(H (1[66] 2) )"
End
Begin PaneConfiguration = 11
NumPanes = 2
Configuration = "(H (4 [60] 2))"
End
Begin PaneConfiguration = 12
NumPanes = 1
Configuration = "(H (1) )"
End
Begin PaneConfiguration = 13
NumPanes = 1
Configuration = "(V (4))"
End
Begin PaneConfiguration = 14
NumPanes = 1
Configuration = "(V (2))"
End
ActivePaneConfig = 0
End
Begin DiagramPane =
Begin Origin =
Top = 0
Left = 0
End
Begin Tables =
Begin Table = "QuoteFull_C"
Begin Extent =
Top = 6
Left = 38
Bottom = 136
Right = 213
End
DisplayFlags = 280
TopColumn = 0
End
End
End
Begin SQLPane =
End
Begin DataPane =
Begin ParameterDefaults = ""
End
Begin ColumnWidths = 16
Width = 284
Width = 2205
Width = 2250
Width = 1200
Width = 915
Width = 720
Width = 1065
Width = 1230
Width = 840
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
End
End
Begin CriteriaPane =
Begin ColumnWidths = 11
Column = 1440
Alias = 900
Table = 1170
Output = 720
Append = 1400
NewValue = 1170
SortType = 1350
SortOrder = 1410
GroupBy = 1350
Filter = 1350
Or = 1350
Or = 1350
Or = 1350
End
End
End
', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'VIEW', @level1name = N'v_StdCostList';
@@ -0,0 +1,157 @@
CREATE VIEW dbo.v_listinoArticoli
AS
SELECT DISTINCT
GETDATE() AS DataRif, 'C' AS QuoteType, '' AS CodClient, dbo.DiesDet.CodItem, CASE WHEN dbo.ProductionLog.RawMat = '' THEN '6060' ELSE dbo.ProductionLog.RawMat END AS RawMat,
2.00 + dbo.RawMatDet.ExtraMatCost AS RawMatCost, 1000 AS batchQty, 'EXW' AS CodInco
FROM dbo.DiesDet INNER JOIN
dbo.ProductionLog ON dbo.DiesDet.CodDies = dbo.ProductionLog.CodDies INNER JOIN
dbo.RawMatDet ON dbo.ProductionLog.RawMat = dbo.RawMatDet.RawMat
GO
EXECUTE sp_addextendedproperty @name = N'MS_DiagramPaneCount', @value = 1, @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'VIEW', @level1name = N'v_listinoArticoli';
GO
EXECUTE sp_addextendedproperty @name = N'MS_DiagramPane1', @value = N'[0E232FF0-B466-11cf-A24F-00AA00A3EFFF, 1.00]
Begin DesignProperties =
Begin PaneConfigurations =
Begin PaneConfiguration = 0
NumPanes = 4
Configuration = "(H (1[40] 4[20] 2[20] 3) )"
End
Begin PaneConfiguration = 1
NumPanes = 3
Configuration = "(H (1 [50] 4 [25] 3))"
End
Begin PaneConfiguration = 2
NumPanes = 3
Configuration = "(H (1 [50] 2 [25] 3))"
End
Begin PaneConfiguration = 3
NumPanes = 3
Configuration = "(H (4 [30] 2 [40] 3))"
End
Begin PaneConfiguration = 4
NumPanes = 2
Configuration = "(H (1 [56] 3))"
End
Begin PaneConfiguration = 5
NumPanes = 2
Configuration = "(H (2 [66] 3))"
End
Begin PaneConfiguration = 6
NumPanes = 2
Configuration = "(H (4 [50] 3))"
End
Begin PaneConfiguration = 7
NumPanes = 1
Configuration = "(V (3))"
End
Begin PaneConfiguration = 8
NumPanes = 3
Configuration = "(H (1[56] 4[18] 2) )"
End
Begin PaneConfiguration = 9
NumPanes = 2
Configuration = "(H (1 [75] 4))"
End
Begin PaneConfiguration = 10
NumPanes = 2
Configuration = "(H (1[66] 2) )"
End
Begin PaneConfiguration = 11
NumPanes = 2
Configuration = "(H (4 [60] 2))"
End
Begin PaneConfiguration = 12
NumPanes = 1
Configuration = "(H (1) )"
End
Begin PaneConfiguration = 13
NumPanes = 1
Configuration = "(V (4))"
End
Begin PaneConfiguration = 14
NumPanes = 1
Configuration = "(V (2))"
End
ActivePaneConfig = 0
End
Begin DiagramPane =
Begin Origin =
Top = 0
Left = 0
End
Begin Tables =
Begin Table = "ProductionLog"
Begin Extent =
Top = 26
Left = 424
Bottom = 347
Right = 594
End
DisplayFlags = 280
TopColumn = 0
End
Begin Table = "DiesDet"
Begin Extent =
Top = 77
Left = 128
Bottom = 247
Right = 298
End
DisplayFlags = 280
TopColumn = 0
End
Begin Table = "RawMatDet"
Begin Extent =
Top = 138
Left = 703
Bottom = 360
Right = 873
End
DisplayFlags = 280
TopColumn = 0
End
End
End
Begin SQLPane =
End
Begin DataPane =
Begin ParameterDefaults = ""
End
Begin ColumnWidths = 13
Width = 284
Width = 2055
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
End
End
Begin CriteriaPane =
Begin ColumnWidths = 11
Column = 1440
Alias = 900
Table = 1170
Output = 720
Append = 1400
NewValue = 1170
SortType = 1350
SortOrder = 1410
GroupBy = 1350
Filter = 1350
Or = 1350
Or = 1350
Or = 1350
End
End
End
', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'VIEW', @level1name = N'v_listinoArticoli';
+339
View File
@@ -0,0 +1,339 @@
CREATE VIEW [dbo].[v_pivot]
AS
WITH ctePivotQuoteP
AS (
SELECT *
FROM (
SELECT QuoteType
, CodQuote
, QuoteRev
, Descr
, Parameter
FROM dbo.QuoteParam
) AS SourceTable
PIVOT(MIN(Parameter) FOR Descr IN (
ItemDescr
, CodifProfilo
, ClasseMerc
, CodClientAssoc
, ClientNameAssoc
, CodDiesGroup
, TipoDies
, DiamDies
, HoleNumDies
, NumDiesInList
, NumDiesExaust
, CodPlant
, KeyAM
, KeyAMIL
, NumSMED
, KgTeo
, KgProdotti
, QuotaMan
, DiesPrice
, DiesExpLife
, DiesEOLife
, DiesByClass
, PkgDesc
, PRMWeight
, PWeight
, PTare
, TareStRatio
, LivPackage
, LivPackageDett
-- START nuovi campi x SIM
, DiesPrice_sim
, SamplePrice
, DiesFullCost
, DiesPriceClientQuote
, DiesTecLife
, DiesCommLife
, MonthSalesPrev
, SalesPrevCost
, DiesFinCost
, ClientQuoteReven
, ExtraDiscountDies
, WSR01_sim
, MSR01_sim
, NetProd01_sim
, DSR_sim
-- end nuovi campi x SIM
)
) AS PivotData
),
-- =================================================
-- PIVOT TABELLA QuoteOC
-- =================================================
ctePivotQuoteOC AS (
SELECT *
FROM (
SELECT QuoteType
, CodQuote
, QuoteRev
, Class01 + ProcessNum AS ClassProc
, C4UG
FROM dbo.QuoteOC
) AS SourceTable
PIVOT(SUM(C4UG) FOR ClassProc IN
( EE01
, GAS01
, MATRICE01
, VENDITA01
, ROTTAME01
, VENDITA04
, ROTTAME04
, IMBALLO04
, TRASPORTI04
, PROVVIGIONI04
)
) AS PivotData
)
-- =================================================
-- MAIN Select Tabella con INTO temp table
-- =================================================
SELECT 'V14.1' AS Vers
, QL.QuoteType
, QL.CodQuote
, QL.QuoteRev
, QL.IdxQState
, QL.CodClient
, CD.ClientName
, QL.CodItem
, QL.CodItemGroup
, QL.RawMat
, QL.UnitWeight
, QL.BatchQty
, QL.CodInco
, CD.TranspZone
, QL.KeyAM
, QL.Note
, QL.PriceOff
, QL.OrdDate
, QL.OrdNum
, QL.OrdRow
, QL.OrdPrice
, QL.OrdQty
, pQP.CodClientAssoc
, pQP.ClientNameAssoc
, pQP.ItemDescr
, pQP.CodifProfilo
, pQP.ClasseMerc
, pQP.TipoDies
, pQP.CodDiesGroup
, CONVERT(DECIMAL(18,6),pQP.DiamDies) AS DiamDies
, CONVERT(INT,pQP.HoleNumDies) AS HoleNumDies
, ISNULL(CONVERT(DECIMAL(18,6),pQP.DiesPrice),0) AS DiesPrice
, CONVERT(DECIMAL(18,6),pQP.DiesExpLife) AS DiesExpLife
, CONVERT(DECIMAL(18,6),pQP.DiesEOLife) AS DiesEOLife
, CONVERT(BIT, ISNULL(pQP.DiesByClass,0)) AS DiesByClass
, CONVERT(DECIMAL(18,6),pQP.NumDiesInList) AS NumDiesInList
, CONVERT(DECIMAL(18,6),pQP.NumDiesExaust) AS NumDiesExaust
, pQP.CodPlant
, pQP.KeyAMIL
, CONVERT(DECIMAL(18,6),pQP.KgTeo) AS KgTeo
, CONVERT(DECIMAL(18,6),pQP.NumSMED) AS NumSMED
, CONVERT(DECIMAL(18,6),pQP.QuotaMan) AS QuotaMan
, CONVERT(DECIMAL(18,6),pQP.PRMWeight) AS PRMWeight
, CONVERT(DECIMAL(18,6),pQP.PWeight) AS PWeight
, CONVERT(DECIMAL(18,6),pQP.PTare) AS PTare
, pQP.LivPackage
, pQP.LivPackageDett
-- START nuovi campi x SIM
, ISNULL(CONVERT(DECIMAL(18,6),pQP.DiesPrice_sim),0) AS DiesPrice_sim
, ISNULL(CONVERT(DECIMAL(18,6),pQP.SamplePrice),0) AS SamplePrice
, ISNULL(CONVERT(DECIMAL(18,6),pQP.DiesFullCost),0) AS DiesFullCost
, ISNULL(CONVERT(DECIMAL(18,6),pQP.DiesPriceClientQuote),0) AS DiesPriceClientQuote
, ISNULL(CONVERT(DECIMAL(18,6),pQP.DiesTecLife),0) AS DiesTecLife
, ISNULL(CONVERT(DECIMAL(18,6),pQP.DiesCommLife),1) AS DiesCommLife
, ISNULL(CONVERT(INT,pQP.MonthSalesPrev),0) AS MonthSalesPrev
, ISNULL(CONVERT(DECIMAL(18,6),pQP.SalesPrevCost),0) AS SalesPrevCost
, ISNULL(CONVERT(DECIMAL(18,6),pQP.DiesFinCost),0) AS DiesFinCost
, ISNULL(CONVERT(DECIMAL(18,6),pQP.ClientQuoteReven),0) AS ClientQuoteReven
, ISNULL(CONVERT(DECIMAL(18,6),pQP.ExtraDiscountDies),0) AS ExtraDiscountDies
, ISNULL(CONVERT(DECIMAL(9,8),pQP.WSR01_sim),0) AS WSR01_sim
, ISNULL(CONVERT(DECIMAL(9,8),pQP.MSR01_sim),0) AS MSR01_sim
, ISNULL(CONVERT(DECIMAL(9,3),pQP.NetProd01_sim),0) AS NetProd01_sim
, ISNULL(CONVERT(DECIMAL(9,8),pQP.DSR_sim),0) AS DSR_sim
-- end nuovi campi x SIM
, QRM.RawMatCost
, QRM.RawMatExtraCost
, QRM.RawMatCost + QRM.RawMatExtraCost AS RawMatFullCost -- fare campo calcolato ?!?
, QRM.CodPackag
, pQP.PkgDesc
, QRM.FSR
, ISNULL(pQOC.PROVVIGIONI04, 0) AS ProvvCost
, ISNULL(pQOC.EE01, 0) AS EECost
, ISNULL(pQOC.GAS01, 0) AS GasCost
, ISNULL(pQOC.MATRICE01, 0) AS DiesCost
, ISNULL(pQOC.IMBALLO04, 0) AS PackCost
, ISNULL(pQOC.TRASPORTI04, 0) AS TranspCost
, ISNULL(pQOC.VENDITA01, 0) AS SellCost01
, ISNULL(pQOC.ROTTAME01, 0) AS RefCost01
, ISNULL(pQOC.VENDITA04, 0) AS SellCost04
, ISNULL(pQOC.ROTTAME04, 0) AS RefCost04
, QWI01.WSR AS WSR01
, QWI01.MSR AS MSR01
, QWI01.NetProd AS NetProd01
, QWI01.FC4UG AS FC4UG01
, QWI01.VC4UG AS VC4UG01
, QWI01.OH4UG AS OH4UG01
, QWI01.SC4UG AS SC4UG01
, 1 - (QWI01.DYR * QWI02.DYR * QWI03.DYR * QWI04.DYR) AS DSR
, QWI04.NetProd AS NetProd04
, QWI04.FC4UG AS FC4UG04
, QWI04.VC4UG AS VC4UG04
, ISNULL(pQOC.VENDITA01, 0) + ISNULL(pQOC.ROTTAME01, 0) + ISNULL(pQOC.VENDITA04, 0) + ISNULL(pQOC.ROTTAME04, 0) + ISNULL(pQOC.EE01, 0) + ISNULL(pQOC.GAS01, 0) + ISNULL(pQOC.MATRICE01, 0) + ISNULL(pQOC.IMBALLO04, 0) + ISNULL(pQOC.PROVVIGIONI04, 0) + ISNULL(pQOC.TRASPORTI04, 0) + QWI01.VC4UG + QWI04.VC4UG + QWI01.SC4UG AS FVC
, PD.Charge
, QL.valid
, QL.errorScore
FROM dbo.QuoteList AS QL
INNER JOIN dbo.ClientDet CD
ON QL.CodClient = CD.CodClient
INNER JOIN ctePivotQuoteP AS pQP
ON QL.QuoteType = pQP.QuoteType
AND QL.CodQuote = pQP.CodQuote
AND QL.QuoteRev = pQP.QuoteRev
INNER JOIN dbo.QuoteRM AS QRM
ON QL.QuoteType = QRM.QuoteType
AND QL.CodQuote = QRM.CodQuote
AND QL.QuoteRev = QRM.QuoteRev
AND QL.rawmat = QRM.RawMat
INNER JOIN ctePivotQuoteOC AS pQOC
ON QL.QuoteType = pQOC.QuoteType
AND QL.CodQuote = pQOC.CodQuote
AND QL.QuoteRev = pQOC.QuoteRev
INNER JOIN dbo.QuoteWorkInt AS QWI01
ON QL.QuoteType = QWI01.QuoteType
AND QL.CodQuote = QWI01.CodQuote
AND QL.QuoteRev = QWI01.QuoteRev
AND QWI01.ProcessNum = '01'
INNER JOIN dbo.QuoteWorkInt AS QWI02
ON QL.QuoteType = QWI02.QuoteType
AND QL.CodQuote = QWI02.CodQuote
AND QL.QuoteRev = QWI02.QuoteRev
AND QWI02.ProcessNum = '02'
INNER JOIN dbo.QuoteWorkInt AS QWI03
ON QL.QuoteType = QWI03.QuoteType
AND QL.CodQuote = QWI03.CodQuote
AND QL.QuoteRev = QWI03.QuoteRev
AND QWI03.ProcessNum = '03'
INNER JOIN dbo.QuoteWorkInt AS QWI04
ON QL.QuoteType = QWI04.QuoteType
AND QL.CodQuote = QWI04.CodQuote
AND QL.QuoteRev = QWI04.QuoteRev
AND QWI04.ProcessNum = '04'
INNER JOIN dbo.PlantsDet AS PD
ON PD.CodPlant = pQP.CodPlant
GO
EXECUTE sp_addextendedproperty @name = N'MS_DiagramPaneCount', @value = 1, @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'VIEW', @level1name = N'v_pivot';
GO
EXECUTE sp_addextendedproperty @name = N'MS_DiagramPane1', @value = N'[0E232FF0-B466-11cf-A24F-00AA00A3EFFF, 1.00]
Begin DesignProperties =
Begin PaneConfigurations =
Begin PaneConfiguration = 0
NumPanes = 4
Configuration = "(H (1[40] 4[20] 2[20] 3) )"
End
Begin PaneConfiguration = 1
NumPanes = 3
Configuration = "(H (1 [50] 4 [25] 3))"
End
Begin PaneConfiguration = 2
NumPanes = 3
Configuration = "(H (1 [50] 2 [25] 3))"
End
Begin PaneConfiguration = 3
NumPanes = 3
Configuration = "(H (4 [30] 2 [40] 3))"
End
Begin PaneConfiguration = 4
NumPanes = 2
Configuration = "(H (1 [56] 3))"
End
Begin PaneConfiguration = 5
NumPanes = 2
Configuration = "(H (2 [66] 3))"
End
Begin PaneConfiguration = 6
NumPanes = 2
Configuration = "(H (4 [50] 3))"
End
Begin PaneConfiguration = 7
NumPanes = 1
Configuration = "(V (3))"
End
Begin PaneConfiguration = 8
NumPanes = 3
Configuration = "(H (1[56] 4[18] 2) )"
End
Begin PaneConfiguration = 9
NumPanes = 2
Configuration = "(H (1 [75] 4))"
End
Begin PaneConfiguration = 10
NumPanes = 2
Configuration = "(H (1[66] 2) )"
End
Begin PaneConfiguration = 11
NumPanes = 2
Configuration = "(H (4 [60] 2))"
End
Begin PaneConfiguration = 12
NumPanes = 1
Configuration = "(H (1) )"
End
Begin PaneConfiguration = 13
NumPanes = 1
Configuration = "(V (4))"
End
Begin PaneConfiguration = 14
NumPanes = 1
Configuration = "(V (2))"
End
ActivePaneConfig = 0
End
Begin DiagramPane =
Begin Origin =
Top = 0
Left = 0
End
Begin Tables =
End
End
Begin SQLPane =
End
Begin DataPane =
Begin ParameterDefaults = ""
End
End
Begin CriteriaPane =
Begin ColumnWidths = 11
Column = 1440
Alias = 900
Table = 1170
Output = 720
Append = 1400
NewValue = 1170
SortType = 1350
SortOrder = 1410
GroupBy = 1350
Filter = 1350
Or = 1350
Or = 1350
Or = 1350
End
End
End
', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'VIEW', @level1name = N'v_pivot';
@@ -0,0 +1,118 @@
CREATE VIEW dbo.v_selDateStdCost
AS
SELECT DISTINCT CONVERT(date, LEFT(CodQuote, 6)) AS label, LEFT(CodQuote, 6) AS value
FROM dbo.QuoteFull_C
GO
EXECUTE sp_addextendedproperty @name = N'MS_DiagramPaneCount', @value = 1, @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'VIEW', @level1name = N'v_selDateStdCost';
GO
EXECUTE sp_addextendedproperty @name = N'MS_DiagramPane1', @value = N'[0E232FF0-B466-11cf-A24F-00AA00A3EFFF, 1.00]
Begin DesignProperties =
Begin PaneConfigurations =
Begin PaneConfiguration = 0
NumPanes = 4
Configuration = "(H (1[40] 4[20] 2[20] 3) )"
End
Begin PaneConfiguration = 1
NumPanes = 3
Configuration = "(H (1 [50] 4 [25] 3))"
End
Begin PaneConfiguration = 2
NumPanes = 3
Configuration = "(H (1 [50] 2 [25] 3))"
End
Begin PaneConfiguration = 3
NumPanes = 3
Configuration = "(H (4 [30] 2 [40] 3))"
End
Begin PaneConfiguration = 4
NumPanes = 2
Configuration = "(H (1 [56] 3))"
End
Begin PaneConfiguration = 5
NumPanes = 2
Configuration = "(H (2 [66] 3))"
End
Begin PaneConfiguration = 6
NumPanes = 2
Configuration = "(H (4 [50] 3))"
End
Begin PaneConfiguration = 7
NumPanes = 1
Configuration = "(V (3))"
End
Begin PaneConfiguration = 8
NumPanes = 3
Configuration = "(H (1[56] 4[18] 2) )"
End
Begin PaneConfiguration = 9
NumPanes = 2
Configuration = "(H (1 [75] 4))"
End
Begin PaneConfiguration = 10
NumPanes = 2
Configuration = "(H (1[66] 2) )"
End
Begin PaneConfiguration = 11
NumPanes = 2
Configuration = "(H (4 [60] 2))"
End
Begin PaneConfiguration = 12
NumPanes = 1
Configuration = "(H (1) )"
End
Begin PaneConfiguration = 13
NumPanes = 1
Configuration = "(V (4))"
End
Begin PaneConfiguration = 14
NumPanes = 1
Configuration = "(V (2))"
End
ActivePaneConfig = 0
End
Begin DiagramPane =
Begin Origin =
Top = 0
Left = 0
End
Begin Tables =
Begin Table = "QuoteFull_C"
Begin Extent =
Top = 6
Left = 38
Bottom = 136
Right = 213
End
DisplayFlags = 280
TopColumn = 0
End
End
End
Begin SQLPane =
End
Begin DataPane =
Begin ParameterDefaults = ""
End
End
Begin CriteriaPane =
Begin ColumnWidths = 11
Column = 1440
Alias = 900
Table = 1170
Output = 720
Append = 1400
NewValue = 1170
SortType = 1350
SortOrder = 1410
GroupBy = 1350
Filter = 1350
Or = 1350
Or = 1350
Or = 1350
End
End
End
', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'VIEW', @level1name = N'v_selDateStdCost';
+129
View File
@@ -0,0 +1,129 @@
CREATE VIEW dbo.v_selPackage
AS
SELECT CodPackag AS value, PackagDesc AS label
FROM dbo.PackagDet
GO
EXECUTE sp_addextendedproperty @name = N'MS_DiagramPaneCount', @value = 1, @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'VIEW', @level1name = N'v_selPackage';
GO
EXECUTE sp_addextendedproperty @name = N'MS_DiagramPane1', @value = N'[0E232FF0-B466-11cf-A24F-00AA00A3EFFF, 1.00]
Begin DesignProperties =
Begin PaneConfigurations =
Begin PaneConfiguration = 0
NumPanes = 4
Configuration = "(H (1[40] 4[20] 2[20] 3) )"
End
Begin PaneConfiguration = 1
NumPanes = 3
Configuration = "(H (1 [50] 4 [25] 3))"
End
Begin PaneConfiguration = 2
NumPanes = 3
Configuration = "(H (1 [50] 2 [25] 3))"
End
Begin PaneConfiguration = 3
NumPanes = 3
Configuration = "(H (4 [30] 2 [40] 3))"
End
Begin PaneConfiguration = 4
NumPanes = 2
Configuration = "(H (1 [56] 3))"
End
Begin PaneConfiguration = 5
NumPanes = 2
Configuration = "(H (2 [66] 3))"
End
Begin PaneConfiguration = 6
NumPanes = 2
Configuration = "(H (4 [50] 3))"
End
Begin PaneConfiguration = 7
NumPanes = 1
Configuration = "(V (3))"
End
Begin PaneConfiguration = 8
NumPanes = 3
Configuration = "(H (1[56] 4[18] 2) )"
End
Begin PaneConfiguration = 9
NumPanes = 2
Configuration = "(H (1 [75] 4))"
End
Begin PaneConfiguration = 10
NumPanes = 2
Configuration = "(H (1[66] 2) )"
End
Begin PaneConfiguration = 11
NumPanes = 2
Configuration = "(H (4 [60] 2))"
End
Begin PaneConfiguration = 12
NumPanes = 1
Configuration = "(H (1) )"
End
Begin PaneConfiguration = 13
NumPanes = 1
Configuration = "(V (4))"
End
Begin PaneConfiguration = 14
NumPanes = 1
Configuration = "(V (2))"
End
ActivePaneConfig = 0
End
Begin DiagramPane =
Begin Origin =
Top = 0
Left = 0
End
Begin Tables =
Begin Table = "PackagDet"
Begin Extent =
Top = 6
Left = 38
Bottom = 136
Right = 208
End
DisplayFlags = 280
TopColumn = 0
End
End
End
Begin SQLPane =
End
Begin DataPane =
Begin ParameterDefaults = ""
End
Begin ColumnWidths = 9
Width = 284
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
Width = 1500
End
End
Begin CriteriaPane =
Begin ColumnWidths = 11
Column = 1440
Alias = 900
Table = 1170
Output = 720
Append = 1400
NewValue = 1170
SortType = 1350
SortOrder = 1410
GroupBy = 1350
Filter = 1350
Or = 1350
Or = 1350
Or = 1350
End
End
End
', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'VIEW', @level1name = N'v_selPackage';

Some files were not shown because too many files have changed in this diff Show More