Files
GMW/GMW_data/SqlScripts/V1.1/GMW_00288.sql
T

759 lines
23 KiB
Transact-SQL
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
-- FIX parte As400
set xact_abort on
go
begin transaction
go
set ANSI_NULLS on
go
alter VIEW v_datiPackingList
AS
SELECT dbo.ElencoListePrelievo_AS.CodLista, dbo.RigheListePrelievo_AS.IdxRiga, dbo.ElencoCartellini.UDC, dbo.ElencoListePrelievo_AS.Particolare,
dbo.ElencoCartellini.CodImballo, CAST(RIGHT(dbo.RigheListePrelievo_AS.UDC, 6) AS INT) AS matrUdc,
CASE WHEN (dbo.ElencoListePrelievo_AS.CodTipoLista = '03-TerWip') THEN 'FO' ELSE 'CL' END AS tipo, dbo.ElencoListePrelievo_AS.Destinatario,
dbo.ElencoCartellini.Qta, dbo.ElencoCartellini.PesoTot - dbo.ElencoCartellini.Tara AS PesoNetto, dbo.ElencoCartellini.PesoTot, 'B' AS Stato, GETDATE() AS data,
dbo.ElencoListePrelievo_AS.DataBatch
FROM dbo.ElencoListePrelievo_AS INNER JOIN
dbo.RigheListePrelievo_AS ON dbo.ElencoListePrelievo_AS.CodLista = dbo.RigheListePrelievo_AS.CodLista INNER JOIN
dbo.ElencoCartellini ON dbo.RigheListePrelievo_AS.UDC = dbo.ElencoCartellini.UDC
WHERE (dbo.ElencoListePrelievo_AS.DataBatch IS NULL)
go
exec sp_updateextendedproperty 'MS_DiagramPane1', '[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 = "ElencoListePrelievo_AS"
Begin Extent =
Top = 6
Left = 38
Bottom = 367
Right = 238
End
DisplayFlags = 280
TopColumn = 0
End
Begin Table = "RigheListePrelievo_AS"
Begin Extent =
Top = 5
Left = 353
Bottom = 200
Right = 557
End
DisplayFlags = 280
TopColumn = 0
End
Begin Table = "ElencoCartellini"
Begin Extent =
Top = 14
Left = 658
Bottom = 376
Right = 828
End
DisplayFlags = 280
TopColumn = 0
End
End
End
Begin SQLPane =
End
Begin DataPane =
Begin ParameterDefaults = ""
End
Begin ColumnWidths = 14
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
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
', 'SCHEMA', 'dbo', 'VIEW', 'v_datiPackingList'
go
commit
go
set xact_abort on
go
begin transaction
go
set ANSI_NULLS on
go
/***************************************
* STORED stp_batch_RapQual_S01
*
* Esegue lo step 1 (caricamento dati RAW da AS400) per la tab dei rapporti di qualità
*
* Steamware, S.E.L.
* mod: 2010.09.23
*
****************************************/
alter PROCEDURE BatchQueue.stp_batch_RapQual_S01
(
@minData DATETIME
)
AS
SET NOCOUNT ON;
-- BOZZA DA TESTARE A CURA MAZZUCCONI!!!
/*
XRPQLN AS nRapQual
XRPQLD AS DataRapQual
XNRETI AS ProgUDC
XCDFOR AS CodFor
XCDTER AS DestTerz
XCDPAR AS CodLega
XDTPRO AS DataPrelFus
XTRPRO AS TurnoPrelFus
XQTPRO AS Qta
XDESMT AS DestLega
XMATSC AS LegaScaric
XBENQL AS BenesQual
WHERE XRPQLN <> 0 -- Se il n. rapporto di qualità è zero non sono cartellini materia prima
*/
DECLARE @SQL AS NVARCHAR(4000);
DECLARE @SqlOK AS INT;
DECLARE @dataAs400 AS VARCHAR(8)
SET @dataAs400 = (SELECT dbo.dateToAsFormat(@minData))
BEGIN TRY
-- svuoto tab raw attuale
DELETE FROM RawData.XOGIX00F
-- CREO L'ISTRUZIONE SQL DI INSERT PARAMETRICA
SET @SQL =
N'INSERT INTO RawData.XOGIX00F
SELECT XRPQLN
,XRPQLD
,XNRETI
,XCDFOR
,XCDTER
,XCDPAR
,XDTPRO
,XTRPRO
,XQTPRO
,XDESMT
,XMATSC
,XBENQL
FROM OPENQUERY( P65220DC, ''SELECT * FROM MAZZT_DTV3.XOGIX00F WHERE XRPQLN <> 0 AND XRPQLD >= '
SET @SQL = @SQL + @dataAs400 + ' '' ) '
-- SELECT @SQL
-- Eseguo il comando T-SQL verso AS400 e testo se OK
SET @SqlOK = 0;
-- EXEC @SqlOK = sp_executesql @SQL se faccio così non mi valorizza la variabile se da errore
EXEC dbo.sp_executesql @SQL;
END TRY
BEGIN CATCH
-- PRINT ERROR_NUMBER()
SET @SqlOK = ERROR_NUMBER();
END CATCH
-- Memorizzo il comando per verifica T-SQL e l'esito del comando se 0 è OK
INSERT INTO RawData.AS400_Comandi
SELECT GETDATE(), 'stp_consumaMP', @SQL, @SqlOK;
-- è possibile sollevare un RAISERROR ??? come si comporta poi il programma?
-- NON SI FANNO RAISE ERROR E NON SI RESTITUISCE CODICE!!!!!
--RETURN @SqlOK; -- commentato da Sam
RETURN
go
commit
go
set xact_abort on
go
begin transaction
go
set ANSI_NULLS on
go
/***************************************
* STORED stp_consumaMP
*
* Salva il movimento di consumo dell'UDC di MP indicato
*
* Steamware, S.E.L.
* mod: 2010.10.12
*
****************************************/
alter PROCEDURE BatchQueue.stp_consumaMP
(
@XRPQLN INT, -- è il num rap qualità
@XNRETI NVARCHAR(10), -- è il numUdc prog AS400
@XDTPRO INT, -- data 8 cifre aaaammgg Data Prelievo Fusione
@XTRPRO NVARCHAR(5), -- turno prelievo ( solo se interno )
@XDESMT NVARCHAR(3), -- destinatario int/terzista ( F01 / T01 )
@XCDTER NVARCHAR(6) -- cod terzista ( Anagrafico Depositi )
)
AS
-- BOZZA DA VERIFICARE E COMPLETARE A CURA MAZZUCCONI!!!
-- L'UPDATE FUNZIONA VERSO AS400 DI TEST MAZZT_DTV3 effetiva MAZZ_DATV3
/* PER TESTARE
DECLARE @XRPQLN INT, -- è il num rap qualità
@XNRETI NVARCHAR(10), -- è il numUdc prog
@XDTPRO INT, -- data 8 cifre aaaammgg
@XTRPRO NVARCHAR(5), -- turno
@XDESMT NVARCHAR(3), -- destinatario int/terzista
@XCDTER NVARCHAR(6) -- cod terzista
SET @XRPQLN = 905793 -- è il num rap qualità
SET @XNRETI = 'U100548151' -- è il numUdc prog
SET @XDTPRO = 20100723 -- data 8 cifre aaaammgg
SET @XTRPRO = 'S' -- turno
SET @XDESMT = 'F01' -- destinatario int/terzista
SET @XCDTER = '' -- cod terzista
*/
DECLARE @SQL AS NVARCHAR(4000);
DECLARE @SqlOK AS INT;
BEGIN TRY
-- TEST per generare errore
-- SET @XDTPRO = 99999920100723 -- data 8 cifre aaaammgg
-- Creo l'istruzione SQL e faccio chiamata su AS400
-- Forse è meglio controllare prima se già aggiornato e preso in carico da ACG???
SET @SQL = N'UPDATE OPENQUERY( P65220DC, ''SELECT * FROM MAZZT_DTV3.XOGIX00F '
SET @SQL = @SQL + 'WHERE XRPQLN = ' + CAST(@XRPQLN AS NVARCHAR(20)) -- Numero Rapporto Qualita
SET @SQL = @SQL + ' AND XNRETI = ''''' + @XNRETI + ''''''' ) ' -- Numero UDC AS400
SET @SQL = @SQL + 'SET XDTPRO = ' + CAST(@XDTPRO AS NVARCHAR(8))
SET @SQL = @SQL + ', XTRPRO = ''' + @XTRPRO + ''''
SET @SQL = @SQL + ', XDESMT = ''' + @XDESMT + ''''
SET @SQL = @SQL + ', XMATSC = ''S''' -- Flag Lega Scaricata
SET @SQL = @SQL + ', XCDTER = ''' + @XCDTER + '''';
-- SELECT @SQL
-- Eseguo il comando T-SQL verso AS400 e testo se OK
SET @SqlOK = 0;
-- EXEC @SqlOK = sp_executesql @SQL se faccio così non mi valorizza la variabile se da errore
EXEC dbo.sp_executesql @SQL;
END TRY
BEGIN CATCH
-- PRINT ERROR_NUMBER()
SET @SqlOK = ERROR_NUMBER();
-- Uso RAISERROR mandare in errore la procedura e x per tornare le info
-- sull'errore originale che ha portato l'esecuzione nel blocco CATCH
--DECLARE @ErrorMessage NVARCHAR(4000);
--DECLARE @ErrorSeverity INT;
--DECLARE @ErrorState INT;
--SELECT @ErrorMessage = ERROR_MESSAGE(),@ErrorSeverity = ERROR_SEVERITY(),@ErrorState = ERROR_STATE();
--RAISERROR (@ErrorMessage,@ErrorSeverity,@ErrorState); -- Se non uso RAISERROR la procedura non mi da errore es. se schedulata
END CATCH
-- Memorizzo il comando per verifica T-SQL e l'esito del comando se 0 è OK
INSERT INTO RawData.AS400_Comandi
SELECT GETDATE(), 'stp_consumaMP', @SQL, @SqlOK;
-- è possibile sollevare un RAISERROR ??? come si comporta poi il programma?
-- NON SI FANNO RAISE ERROR E NON SI RESTITUISCE CODICE!!!!!
--RETURN @SqlOK; -- commentato da Sam
-- MANCA IL TEST SE HO AGGIORNATO EFFETTIVAMENTE o MENO
/*
SELECT XRPQLN, XNRETI , XDTPRO, XTRPRO, XDESMT, XMATSC, XCDTER
FROM OPENQUERY( P65220DC, 'SELECT * FROM MAZZT_DTV3.XOGIX00F WHERE XRPQLN = 905793 AND XNRETI = ''U100548151'' ')
-- Resetto l'UDC
UPDATE OPENQUERY( P65220DC, 'SELECT * FROM MAZZT_DTV3.XOGIX00F WHERE XRPQLN = 905793 AND XNRETI = ''U100548151'' ')
SET XDTPRO = 0 , XTRPRO = '', XDESMT = '', XMATSC = 'N', XCDTER = ''
-- Comando OK
-- UPDATE OPENQUERY( P65220DC, 'SELECT * FROM MAZZT_DTV3.XOGIX00F WHERE XRPQLN = 905793 AND XNRETI = ''U100548151'' ')
-- SET XDTPRO = 20100723 , XTRPRO = 'S', XDESMT = 'F01', XMATSC = 'N', XCDTER = ''
*/
RETURN
go
commit
go
set xact_abort on
go
begin transaction
go
set ANSI_NULLS on
go
/*****************************************************
* STORED sstp_processaCodaMovimMag
*
* Processa la coda dei movimenti di magazzino e chiama procedura x salvataggio dato su AS400
*
* Steamware, S.E.L.
* mod: 2010.10.15
*
****************************************/
alter PROCEDURE BatchQueue.stp_processaCodaMovimMag
AS
-- BOZZA DA VERIFICARE E COMPLETARE A CURA MAZZUCCONI!!!
-- campi variabili "globali"
DECLARE @IdxBatch INT
DECLARE @CodSoggetto NVARCHAR(17)
DECLARE @CodMovCarico CHAR(2)
DECLARE @CodMovScarico CHAR(2)
-- campi x cursore e valorizzazione riga a riga
DECLARE @Particolare NVARCHAR(15)
DECLARE @Causale NVARCHAR(2)
DECLARE @CodMag NVARCHAR(50)
DECLARE @Qta INT
DECLARE @Data NVARCHAR(8)
DECLARE @RIFFO NVARCHAR(8)
-- faccio una query con un cursore x processare tutte le righe da inviare ad AS400..
DECLARE RigaMovMag CURSOR FOR
SELECT IdxBatch FROM AS400_BatchMovimenti WHERE DataBatch IS NULL
-- setto il codice soggetto da inviare ad AS... VERIFICARE!!!
SET @CodSoggetto = 'O0000000000099999'
-- carico i 2 valori di default di carico e scarico da AS400
SET @CodMovCarico = (SELECT CauCarico FROM RilPro.AnagCausaliMag)
SET @CodMovScarico = (SELECT CauScarico FROM RilPro.AnagCausaliMag)
-- inizio cursore!
OPEN RigaMovMag
FETCH NEXT FROM RigaMovMag
INTO @IdxBatch
WHILE @@FETCH_STATUS = 0
BEGIN
-- controllo ci sia la riga
IF (SELECT COUNT(IdxBatch) FROM AS400_BatchMovimenti WHERE IdxBatch = @IdxBatch) > 0
BEGIN
-- carico valori che mi servono
SELECT @Particolare=bm.Particolare, @Causale=CASE WHEN bm.Quantita>0 THEN @CodMovCarico ELSE @CodMovScarico END,
@CodMag=bm.CodMagAS, @Qta = ABS(bm.Quantita), @Data=dbo.dateToAsFormat(GETDATE()), @RIFFO=dbo.getUdcComp(bm.UDC,8)
FROM AS400_BatchMovimenti bm
WHERE IdxBatch = @IdxBatch
-- Eseguo la stored che registra il Packing List ???
Execute BatchQueue.stp_registraMovMag @CodSoggetto, @Causale, @Particolare, @CodMag, @Qta, @Data, @RIFFO
-- registro la data del movimento BATCH
UPDATE AS400_BatchMovimenti SET DataBatch = GETDATE() WHERE IdxBatch = @IdxBatch
FETCH NEXT FROM RigaMovMag INTO @IdxBatch
END
END
CLOSE RigaMovMag
DEALLOCATE RigaMovMag
RETURN
go
commit
go
set xact_abort on
go
begin transaction
go
set ANSI_NULLS on
go
/*
* STORED stp_processaCodaMovimPackList
*
* Processa la coda delle packing list e chiama procedura x salvataggio dato su AS400
*
* Steamware, S.E.L.
* mod: 2010.10.22
*
****************************************/
create PROCEDURE BatchQueue.stp_processaCodaMovimPackList
AS
-- BOZZA DA VERIFICARE E COMPLETARE A CURA MAZZUCCONI!!!
-- campi x cursore e valorizzazione riga a riga
DECLARE @IdxRiga INT
DECLARE @CodLista NVARCHAR(12)
DECLARE @CodListaPre NVARCHAR(12)
DECLARE @CodStab CHAR(2)
DECLARE @UDC NVARCHAR(15)
DECLARE @Particolare NVARCHAR(15)
DECLARE @CodImb NVARCHAR(15)
DECLARE @Matr INT
DECLARE @Tipo NVARCHAR(2)
DECLARE @Dest NVARCHAR(10)
DECLARE @Qta INT
DECLARE @PesoNet NUMERIC(7,3)
DECLARE @PesoLor NUMERIC(7,3)
DECLARE @Stato CHAR(1)
DECLARE @Data NVARCHAR(8)
-- faccio una query con un cursore x processare tutte le righe da inviare ad AS400..
DECLARE RigaPackList CURSOR FOR
SELECT IdxRiga FROM v_datiPackingList ORDER BY CodLista
-- setto il codice stabilimento da inviare ad AS... VERIFICARE!!!
SET @CodStab = '05';
-- imposto prima codListaPre a vuoto...
SET @CodListaPre = '';
-- inizio cursore!
OPEN RigaPackList
FETCH NEXT FROM RigaPackList
INTO @IdxRiga
WHILE @@FETCH_STATUS = 0
BEGIN
-- controllo ci sia la riga
IF (SELECT COUNT(IdxRiga) FROM v_datiPackingList WHERE IdxRiga = @IdxRiga) > 0
BEGIN
-- carico valori che mi servono
SELECT @Particolare=pl.Particolare, @UDC=UDC, @CodImb=pl.CodImballo, @Matr = pl.matrUdc, @Tipo=pl.tipo, @Dest=pl.Destinatario,
@Qta=ABS(pl.Qta), @PesoNet=pl.PesoNetto, @PesoLor=pl.PesoTot, @Stato=pl.Stato, @Data=dbo.dateToAsFormat(pl.data),
@CodLista=pl.CodLista
FROM v_datiPackingList pl
WHERE IdxRiga = @IdxRiga
-- Eseguo la stored che registra il Packing List ???
Execute BatchQueue.stp_registraPackList @CodStab, @UDC, @Particolare , @CodImb , @Matr , @Tipo , @Dest , @Qta , @PesoNet , @PesoLor , @Stato , @Data
FETCH NEXT FROM RigaPackList INTO @IdxRiga
-- controllo: se la lissta precedente è diversa dall'attuale la indico come scaricata (precedente)
IF(@CodListaPre <> @CodLista)
BEGIN
UPDATE ElencoListePrelievo_AS SET DataBatch = GETDATE() WHERE CodLista = @CodListaPre
-- cambio il cod pre da confrontare
SET @CodListaPre = @CodLista
END
END
-- registro la data del movimento BATCH dell'ultima lista processata
UPDATE ElencoListePrelievo_AS SET DataBatch = GETDATE() WHERE CodLista = @CodLista
END
CLOSE RigaPackList
DEALLOCATE RigaPackList
RETURN
go
commit
go
set xact_abort on
go
begin transaction
go
set ANSI_NULLS on
go
/***************************************
* STORED stp_registraMovMag
*
* Salva il movimento di magazzino indicato
*
* Steamware, S.E.L.
* mod: 2010.10.15
*
****************************************/
alter PROCEDURE BatchQueue.stp_registraMovMag
(
@NOMUS NVARCHAR(50), -- è il nome utente
@CDCAU NVARCHAR(2), -- è la causale del movimento
@CDPAR NVARCHAR(15), -- codice particolare
@CDMAG NVARCHAR(2), -- codice magazzino
@QTMOV NUMERIC(9,2), -- quantità movimento
@DAMOV NVARCHAR(8), -- data 8 cifre aaaammgg Data Movimento
@RIFFO NVARCHAR(8) -- cod UDC compresso
)
AS
-- QUESTA FUNZIONA!!! DA VERIFICARE I DATI PASSATI VISTO CHE ATTUALMENTE NON FUNZIONA
-- LA STORED CHE LA RICHIAMA-POPOLA ?
-- Movimentazioni Magazzino
-- Tabella MWMV200F libreria MAZZT_AZI per test MAZZ_AZI effettiva
/* -- Variabili per test senza Stored
DECLARE @NOMUS NVARCHAR(50), -- è il nome utente
@CDCAU NVARCHAR(2), -- è la causale del movimento
@CDPAR NVARCHAR(15), -- codice particolare
@CDMAG NVARCHAR(2), -- codice magazzino
@QTMOV NUMERIC(9,2), -- quantità movimento ATTENZIONE QUESTA E' SBAGLIATA SULLA STORED
@DAMOV NVARCHAR(8), -- data 8 cifre aaaammgg
@RIFFO NVARCHAR(8) -- cod UDC compresso
-- SETTO LE VARIABILI DI PROVA PER TEST
SET @NOMUS = N'PIPPO'
SET @CDCAU = N'01'
SET @CDPAR = N'P00528503817'
SET @CDMAG = N'54'
SET @QTMOV = 1234567.51
SET @DAMOV = N'20100101'
SET @RIFFO = N'UDCPROVA'
*/
DECLARE @SqlOK AS INT;
-- inizio a dire che è andata bene e salvo in tab comandi
SET @SqlOk = 1;
-- Memorizzo il comando per verifica T-SQL
INSERT INTO RawData.AS400_Comandi
SELECT GETDATE(), 'stp_registraMovMag',
'INSERT INTO OPENQUERY MAZZT_AZI.MWMV200F parametri :'
+ @NOMUS + ',' + @CDCAU + ',' + @CDPAR + ',' + @CDMAG + ',' + CONVERT(VARCHAR(20) , @QTMOV) + ',' + @DAMOV + ',' + @RIFFO, @SqlOk
/*
INSERT INTO
OPENQUERY( P65220DC,
'
SELECT NOMUS , CDCAU , CDPAR , CDMAG , QTMOV , DAMOV , RIFFO
FROM MAZZT_AZI.MWMV200F
' )
VALUES ( @NOMUS , @CDCAU , @CDPAR , @CDMAG , @QTMOV , @DAMOV , @RIFFO )
*/
/* TEST e DELETE
SELECT * FROM OPENQUERY( P65220DC, 'SELECT NOMUS ,CDCAU ,CDPAR ,CDMAG ,QTMOV ,DAMOV ,RIFFO FROM MAZZT_AZI.MWMV200F' )
DELETE
OPENQUERY( P65220DC, 'SELECT * FROM MAZZT_AZI.MWMV200F WHERE NOMUS = ''PIPPO'' ')
*/
RETURN
go
commit
go
set xact_abort on
go
begin transaction
go
set ANSI_NULLS on
go
/***************************************
* STORED stp_registraPackList
*
* Salva i dati di packing list indicati
*
* Steamware, S.E.L.
* mod: 2010.10.15
*
****************************************/
alter PROCEDURE BatchQueue.stp_registraPackList
(
@PLREPA NVARCHAR(2), -- è il codice reparto/stabilimento (05 pressofusione)
@PLCART NVARCHAR(15), -- UDC
@PLARTI NVARCHAR(15), -- cod articolo
@PLCONT NVARCHAR(15), -- cod contenitore
@PLMATR INT, -- matricola contenitore (solo cifre finali INT)
@PLTPAN CHAR(2), -- tipo anagrafico CLiente / FOrnitore-terzista
@PLCDAN NVARCHAR(6), -- cod terzista / cliente
@PLQTA INT, -- quantità
@PLPNET NUMERIC(7, 3), -- peso netto
@PLPLOR NUMERIC(7, 3), -- peso lordo
@PLSTAT CHAR(1), -- stato "P" predisposto per packing list, "B" bolla stampata
@PLDTEN INT -- data entrata merce, data di carico dell'UDC 8 cifre aaaammgg
)
AS
-- BOZZA DA VERIFICARE E COMPLETARE A CURA MAZZUCCONI!!!
--DECLARE @SQL AS NVARCHAR(4000);
DECLARE @SqlOK AS INT;
-- inizio a dire che è andata bene e salvo in tab comandi
SET @SqlOk = 1;
-- Memorizzo il comando per verifica T-SQL
INSERT INTO RawData.AS400_Comandi
SELECT GETDATE(), 'stp_registraPackList',
'INSERT INTO MAZZT_DTV3.PACKL00F parametri :'
+ @PLREPA + ', ' + @PLCART + ', ' + @PLARTI + ', ' + @PLCONT + ', ' + CAST(@PLMATR AS NVARCHAR(5)) + ', ' + @PLTPAN + ', ' + @PLCDAN + ', ' + CAST(@PLQTA AS NVARCHAR(10)) + ', ' + CAST(@PLPNET AS NVARCHAR(10)) + ', ' + CAST(@PLPLOR AS NVARCHAR(10)) + ', ' + @PLSTAT + ', ' + CAST(@PLDTEN AS NVARCHAR(8)) , @SqlOk
/*
INSERT INTO
OPENQUERY( P65220DC,
'
SELECT PLREPA , PLCART , PLARTI , PLCONT , PLMATR , PLTPAN , PLCDAN , PLQTA , PLPNET , PLPLOR , PLSTAT , PLDTEN
FROM MAZZT_AZI.MWMV200F
' )
VALUES ( @PLREPA , @PLCART , @PLARTI , @PLCONT , CAST(@PLMATR AS NVARCHAR(5)) , @PLTPAN , @PLCDAN , CAST(@PLQTA AS NVARCHAR(10)) , CAST(@PLPNET AS NVARCHAR(10)) , CAST(@PLPLOR AS NVARCHAR(10)) , @PLSTAT , CAST(@PLDTEN AS NVARCHAR(8)) )
*/
/*
-- preparo chiamata su AS400
SET @SQL = N' OPENQUERY( P65220DC, ''INSERT INTO MAZZT_DTV3.PACKL00F VALUES '
SET @SQL = @SQL + @PLREPA + ', ' + @PLCART + ', ' + @PLARTI + ', ' + @PLCONT + ', '
SET @SQL = @SQL + CAST(@PLMATR AS NVARCHAR(5)) + ', ' + @PLTPAN + ', ' + @PLCDAN + ', ' + CAST(@PLQTA AS NVARCHAR(10)) + ', '
SET @SQL = @SQL + CAST(@PLPNET AS NVARCHAR(10)) + ', ' + CAST(@PLPLOR AS NVARCHAR(10)) + ', ' + @PLSTAT + ', '
SET @SQL = @SQL + CAST(@PLDTEN AS NVARCHAR(8)) + ''' )'
EXEC dbo.sp_executesql @SQL
*/
RETURN
go
commit
go
-- registro versione...
INSERT INTO [dbo].[LogUpdateDb] ([Versione],[Data]) VALUES(288, GETDATE())
GO