Aggiunto progetto GPW_Data
This commit is contained in:
@@ -0,0 +1,68 @@
|
||||
SELECT *
|
||||
FROM TMP_importFasi tf
|
||||
INNER JOIN ETS_ScipHalf.dbo.commesse c ON dbo.f_padLeft(tf.NumComm, 4,'0')=c.NrComme AND dbo.f_padLeft(tf.anno, 4,'0')=c.Anno
|
||||
|
||||
select * from AnagClienti
|
||||
select * from AnagProgetti
|
||||
select * from AnagFasi
|
||||
|
||||
|
||||
SELECT * FROM ETS_ScipHalf.dbo.commesse
|
||||
|
||||
-- step 0: creo clienti!
|
||||
SELECT DISTINCT Commitente INTO TMP_RawClienti
|
||||
FROM ETS_ScipHalf.dbo.commesse
|
||||
|
||||
INSERT INTO AnagClienti(RagSociale)
|
||||
SELECT Commitente from TMP_RawClienti
|
||||
|
||||
-- step 1: creo progetti (tutti) INATTIVI
|
||||
INSERT INTO AnagProgetti(idxCliente, nomeProj, descrProj, attivo, codExt, avvio, chiusura)
|
||||
SELECT ac.idxCliente, NrComme+'-'+Anno as nomeProj, Descrizione as descrProj, 0, NrProtocollo as codExt, dataApe as avvio, DataSca as chiusura
|
||||
FROM ETS_ScipHalf.dbo.commesse c
|
||||
INNER JOIN AnagClienti ac ON c.Commitente=ac.RagSociale
|
||||
|
||||
-- step 2: indico attivi solo i progetti che ho trovato da tam import
|
||||
UPDATE ap
|
||||
SET Attivo = 1
|
||||
FROM AnagProgetti ap INNER JOIN TMP_importFasi tif ON ap.nomeProj = dbo.f_padLeft(tif.NumComm, 4,'0') +'-'+dbo.f_padLeft(tif.anno, 4,'0')
|
||||
|
||||
|
||||
-- step 3: creo fasi MACRO (ancestor) da TUTTI i progetti ATTIVI
|
||||
INSERT INTO AnagFasi( idxProgetto, codFase, idxFaseAncest, nomeFase, descrizioneFase, enableTime, enableMoney, Attivo, budgetTime, budgetMoney)
|
||||
SELECT idxProgetto, '' as codFase, 0 as idxFaseAncest, nomeProj, descrProj, 0 as enabTime, 0 as enabMon, Attivo, 0 as bdgTim, 0 as bdgMon
|
||||
FROM AnagProgetti ap
|
||||
WHERE attivo = 1
|
||||
|
||||
-- step 4: creo vere (sotto) fasi
|
||||
INSERT INTO AnagFasi( idxProgetto, codFase, idxFaseAncest, nomeFase, descrizioneFase, enableTime, enableMoney, Attivo, budgetTime, budgetMoney)
|
||||
SELECT af.idxProgetto, '' as codFase, af.idxFase AS idxFaseAncest, tif.NomeFase, tif.NomeFase, 1 as enabTime, 0 as enabMon, 1, 0 as bdgTim, 0 as bdgMon
|
||||
FROM AnagFasi af
|
||||
INNER JOIN TMP_importFasi tif ON af.nomeFase = dbo.f_padLeft(tif.NumComm, 4,'0') +'-'+dbo.f_padLeft(tif.anno, 4,'0')
|
||||
|
||||
-- step 5: sistemo progetti con date apertura/chiusura nulle e oldIdx nulli...
|
||||
UPDATE AnagProgetti
|
||||
SET avvio = '1900-01-01'
|
||||
where avvio IS NULL
|
||||
|
||||
UPDATE AnagProgetti
|
||||
SET chiusura = '2100-12-31'
|
||||
where chiusura IS NULL
|
||||
|
||||
UPDATE AnagProgetti
|
||||
SET OldIdx =-1
|
||||
WHERE OldIdx is null
|
||||
|
||||
|
||||
--- update finale
|
||||
-- inserisco commesse mancanti
|
||||
INSERT INTO AnagFasi( idxProgetto, codFase, idxFaseAncest, nomeFase, descrizioneFase, enableTime, enableMoney, Attivo, budgetTime, budgetMoney)
|
||||
SELECT idxProgetto, '' as codFase, 0 as idxFaseAncest, nomeProj, descrProj, 0 as enabTime, 0 as enabMon, Attivo, 0 as bdgTim, 0 as bdgMon
|
||||
FROM AnagProgetti ap
|
||||
WHERE attivo = 0
|
||||
|
||||
-- inserisco sottofasi (fasi) mancanti a "generale"
|
||||
INSERT INTO AnagFasi( idxProgetto, codFase, idxFaseAncest, nomeFase, descrizioneFase, enableTime, enableMoney, Attivo, budgetTime, budgetMoney)
|
||||
SELECT af.idxProgetto, '' as codFase, af.idxFase AS idxFaseAncest, 'GENERALE', 'GENERALE', 1 as enabTime, 0 as enabMon, 0, 0 as bdgTim, 0 as bdgMon
|
||||
FROM AnagFasi af
|
||||
WHERE af.idxFase > 493
|
||||
Reference in New Issue
Block a user