Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- DECLARE
- vWodID NUMBER(10,1);
- vWodSym NUMBER(10,1);
- vEleID NUMBER(10,1);
- vEleSym NUMBER(10,1);
- vSklID NUMBER(10,1);
- vSklSym NUMBER(10,1);
- vInsID NUMBER(10,1);
- vInsSym NUMBER(10,1);
- vLaczID NUMBER(10,1);
- vLaczSym NUMBER(10,1);
- vPrzYID NUMBER(10,1);
- vPrzySym NUMBER(10,1);
- BEGIN
- vWodSym := 30000;
- vSklSym := 30000;
- vEleSym := 30000;
- vInsSym := 30000;
- FOR q IN (SELECT DISTINCT w.yo_id, w.ywu_id, w.ywu_idwodomierz, w.ywu_nrwodomierz, w.YWU_NRWODOMIERZ1, w.YWU_ZAWORY, w.yw_Id, w.YW_SREDNICA, w.YW_SREDNICA2, w.YW_GWINT, w.YW_ZAKRES, w.YW_ZAKRES2,
- w.YW_MNOZNIK, w.YW_MNOZNIK2, w.GZKPRODUCENT_ID, w.INFSIECMIEJSCE_ID, w.GZKTYP_ID, Nvl(w.DATA_MONTAZ,'2017-11-01') data_m, w.infpunkt_Id, CASE WHEN g.YSZRO_ID IS NOT NULL THEN 'G' ELSE 'Z' END typ_instal,
- CASE WHEN w.YW_ROK_CECHY_LEGALIZACJI IS NOT NULL THEN To_Date(TRIM(w.YW_ROK_CECHY_LEGALIZACJI)||'-12-31','yyyy-mm-dd') ELSE Nvl(w.DATA_MONTAZ,'2017-11-01') END data_leg1,
- CASE WHEN w.YW_ROK_CECHY_LEGALIZACJI2 IS NOT NULL THEN To_Date(TRIM(w.YW_ROK_CECHY_LEGALIZACJI2)||'-12-31','yyyy-mm-dd') ELSE Nvl(w.DATA_MONTAZ,'2017-11-01') END data_leg2,
- CASE WHEN To_Number(REPLACE(w.YW_PRZEPUSTOWOSC_QN,'.',',')) > 0 THEN To_Number(REPLACE(w.YW_PRZEPUSTOWOSC_QN,'.',',')) ELSE NULL END przepl,
- CASE WHEN To_Number(REPLACE(w.YW_PRZEPUSTOWOSC_QN2,'.',',')) >0 THEN To_Number(REPLACE(w.YW_PRZEPUSTOWOSC_QN2,'.',',')) ELSE NULL END przepl_sp,
- CASE WHEN To_Number(REPLACE(w.YW_PRZEPUSTOWOSC_QNMAX,'.',',')) >0 THEN To_Number(REPLACE(w.YW_PRZEPUSTOWOSC_QNMAX,'.',',')) ELSE NULL END przepl_max,
- CASE WHEN To_Number(REPLACE(w.YW_PRZEPUSTOWOSC_QNMAX2,'.',',')) >0 THEN To_Number(REPLACE(w.YW_PRZEPUSTOWOSC_QNMAX2,'.',',')) ELSE NULL END przepl_sp_max,
- CASE WHEN w.YWU_NRWODOMIERZ1 IS NOT NULL THEN 'S' ELSE 'P' END typ_wodomierz,
- nad.gzkwodomierz_Id nad_wod_Id, nad.infsiecinstal_Id nad_Instal_Id, nad.infsiecelement_Id nad_element_Id
- -- Row_Number() OVER (PARTITION BY w.yo_id ORDER BY w.yo_Id) lp
- FROM zzms_wodomierz_powiazane w,
- zzms_wodomierz_powiazane nad,
- zzms_powiazania g,
- zzms_powiazania p
- WHERE w.ywu_id = g.YROB_WZ_IDWOD_UZYT (+)
- AND w.ywu_id = p.p_YROB_WZ_IDWOD_UZYT (+)
- AND CASE WHEN p.YSZRO_ID IS NOT NULL THEN p.YROB_WZ_IDWOD_UZYT
- ELSE NULL
- END IS NOT NULL
- AND w.infpunkt_Id IS NOT NULL
- AND nad.ywu_id = p.YROB_WZ_IDWOD_UZYT
- AND nad.infsiecinstal_Id IS NOT NULL
- ORDER BY w.yo_Id
- )
- LOOP
- -- WODOMIERZ
- SELECT wch.seq_gzkwodomierz.NEXTVAL INTO vWodID FROM dual;
- vWodSym := vWodSym + 1;
- INSERT INTO gzkwodomierz (gzkwodomierz_id, gzkwodomierz_symbol, gzkwodomierz_pole1, gzkwodomierz_pole2, gzkwodomierz_pole3, gzkwodomierz_rodzaj, gzkwodomierz_nrfabr, gzkwodomierz_dataprod, gzkwodomierz_datalegal, gzkwodomierz_datadelegal,
- gzkwodomierz_illbcalc, gzkwodomierz_illbdzies, gzkwodomierz_gnyzswsk, gzkwodomierz_mnwsk, gzkwodomierz_przeplmax, gzkwodomierz_przeplnom, gzkwodomierz_przekroj, gzkwodomierz_nrsprzez, gzkwodomierz_mnsprzez,
- gzkwodomierz_illbcalcspr, gzkwodomierz_illbdziesspr, gzkwodomierz_czyprywatny, gzktyp_id, gzkproducent_id, unimodulzsi_id, gzkwodomierz_stan_urz, gzkwodomierz_gwint, gzkwodomierz_uz_au_id, gzkwodomierz_data_au,
- gzkwodomierz_uz_zm_id, gzkwodomierz_data_zm, gzkwodomierz_uwagi, GZKWODOMIERZ_PRZEKSPRZEZ)
- VALUES (vWodID, LPad(vWodSym,8,'0'), q.ywu_id, q.ywu_idwodomierz, q.yw_Id, q.TYP_WODOMIERZ, q.YWU_NRWODOMIERZ, q.data_m, q.DATA_LEG1, Add_Months(Trunc(sysdate,'year'),72)-1,
- 7, 2, '9999999,99', q.YW_MNOZNIK, q.przepl_max, q.przepl, q.YW_SREDNICA, q.YWU_NRWODOMIERZ1, q.YW_MNOZNIK2,
- 7, 2, 'F', q.gzktyp_Id, q.gzkproducent_id, 31, 'A', q.YW_GWINT, 1, SYSDATE,
- 1, SYSDATE, 'Zawory : ' || q.ywu_zawory, q.yw_srednica2);
- INSERT INTO gzkstatusliczhist VALUES (wch.seq_gzkstatusliczhist.NEXTVAL, '2017-11-01', 1, vWodID, NULL, NULL, 2, 1, SYSDATE);
- -- ELEMENTY SIECI
- SELECT wch.seq_infsiecelement.NEXTVAL INTO vEleID FROM dual;
- vEleSym := vEleSym + 1;
- INSERT INTO infsiecelement (INFSIECELEMENT_ID, INFSIECELEMENT_SYMBOL, INFSIECELEMENT_NAZWA, INFSIECWARSTWA_ID, INFSIECRODZAJ_ID, INFSIECELEMENT_DATALEGAL, INFSIECELEMENT_DATADELEGAL, INFSIECELEMENT_DATAOD, INFSIECELEMENT_STAN_UKL ,
- INFSIECELEMENT_PEC_NALICZAJ, INFSIECELEMENT_CZY_UKLAD, INFSIECELEMENT_OBLICZONO, INFSIECELEMENT_KONTROLA, INFSIECELEMENT_UZ_AU_ID, INFSIECELEMENT_DATA_AU, INFSIECELEMENT_UZ_ZM_ID, INFSIECELEMENT_DATA_ZM)
- VALUES (vEleId, LPad(vEleSym,7,'0')||'-01', 'Wodomierz konwersja', 1, 3, q.DATA_LEG1, Add_Months(Trunc(sysdate,'year'),72)-1, q.data_m, 'A',
- 'T', 'N', 'N', 'N', 1, SYSDATE, 1, SYSDATE);
- -- SKLADNIK SIECI
- SELECT wch.seq_infsiecskladnik.NEXTVAL INTO vSklID FROM dual;
- vSklSym := vSklSym + 1;
- INSERT INTO infsiecskladnik (INFSIECSKLADNIK_ID, INFSIECELEMENT_ID, INFSIECSKLADNIK_SYMBOL, INFSIECSKLADNIK_NAZWA, INFSIECSKLADNIK_TYP, GZKWODOMIERZ_ID, INFSIECSKLADNIK_DATA_OD, INFSIECSKLADNIK_UZ_AU_ID, INFSIECSKLADNIK_DATA_AU, INFSIECSKLADNIK_UZ_ZM_ID, INFSIECSKLADNIK_DATA_ZM)
- VALUES (vSklID, vEleID, LPad(vSklSym,7,'0')||'-01', 'Wodomierz '||q.YWU_NRWODOMIERZ, 0, vWodID, q.data_m, 1, SYSDATE, 1, SYSDATE);
- -- ZAŁOŻENIE INSTALACJI i ODCZYTU ZEROWEGO
- SELECT wch.seq_infsiecinstal.NEXTVAL INTO vInsID FROM dual;
- vInsSym := vInsSym + 1;
- INSERT INTO infsiecinstal (infsiecinstal_id, infsiecinstal_symbol, infsiecinstal_dataod, infsiecinstal_opis, infsiecinstal_nrsyst, infsiecinstal_stpocz, infsiecinstal_stpoczsp, infsiecskladnik_id, infsiecmiejsce_id, infsiecelement_id, infpunkt_id,
- infsiecinstalnad_id, infsiecinstal_data_montazu, infsiecinstal_uz_au_id, infsiecinstal_data_au, infsiecinstal_uz_zm_id, infsiecinstal_data_zm)
- VALUES (vInsID, LPad(vInsSym,8,'0'), q.data_m, 'konwersja', 1, 0, 0, vSklID, q.infsiecmiejsce_Id, vEleID, q.infpunkt_Id,
- q.nad_instal_Id, q.data_m, 1, SYSDATE, 1, SYSDATE);
- SELECT wch.seq_infsieclacznik.NEXTVAL INTO vLaczID FROM dual;
- INSERT INTO infsieclacznik (INFSIECLACZNIK_ID, INFSIECLACZNIK_OPIS, INFSIECLACZNIK_DATA_OD, INFSIECELEMENTNAD_ID, INFSIECELEMENTPOD_ID, INFSIECLACZNIK_PODLICZNIK, INFSIECLACZNIK_UZ_AU_ID, INFSIECLACZNIK_DATA_AU, INFSIECLACZNIK_UZ_ZM_ID, INFSIECLACZNIK_DATA_ZM)
- VALUES (vLaczID, 'Przyłącze - konwersja', q.data_m, q.nad_element_id, vEleID, 'T', 1, SYSDATE, 1, SYSDATE);
- -- SIEC OKRES
- INSERT INTO infsiecokres
- VALUES (wch.seq_infsiecokres.NEXTVAL, 1, q.data_m, NULL, 100, NULL, vLaczID, 1, SYSDATE, 1, SYSDATE);
- INSERT INTO gzkzdli (GZKZDLI_ID, GZKZDLI_DATA, GZKZDLI_STAN, GZKZDLI_STANSPRZEz, GZKRZD_ID, GZKZDLI_NRKOLEJNY, GZKWODOMIERZ_ID, INFSIECELEMENT_ID, GZKZDLI_UWAGI, GZKZDLI_UZ_AU_ID, GZKZDLI_DATA_AU, GZKZDLI_UZ_ZM_ID, GZKZDLI_DATA_ZM)
- VALUES (wch.seq_gzkzdli.NEXTVAL, q.data_m, 0, 0, 1, 1, vWodID, vEleID, 'konwersja', 1, SYSDATE, 1, SYSDATE);
- INSERT INTO gzkwododczyt (GZKWODODCZYT_ID, GZKWODODCZYT_NRSYST, GZKWODODCZYT_DATA, GZKWODODCZYT_STAN, GZKWODODCZYT_STANSPRZ, GZKWODODCZYT_RODZAJ, GZKWODODCZYT_ZUZOGOLEM, GZKWODODCZYT_ZUZOGOLEMSP, GZKWODODCZYT_OSTATNIEZUZ, GZKWODODCZYT_OSTATNIEZUZSP,
- GZKWODODCZYT_SRZUZYDOB, GZKWODODCZYT_SRZUZYDOBSP, GZKWODODCZYT_ODCZYT, GZKWODODCZYT_ODCZYTSPRZ, GZKWODODCZYT_CZYLICZNIKSTOI, GZKWODOMIERZ_ID, INFSIECINSTAL_ID, GZKWODODCZYT_MNOZNIK, GZKWODODCZYT_MNOZNIK_SP, GZKWODODCZYT_ILOSC,
- GZKWODODCZYT_ZUZYCIE, GZKWODODCZYT_POP_ZUZYCIE, GZKSPOSOBODCZ_ID, GZKWODODCZYT_UZ_AU_ID, GZKWODODCZYT_DATA_AU, GZKWODODCZYT_UZ_ZM_ID, GZKWODODCZYT_DATA_ZM)
- VALUES (wch.seq_gzkwododczyt.NEXTVAL, 1, q.data_m, 0, 0, 'O', 0, 0, 0, 0, 0, 0, 0, 0, 0, vWodId, vInsID, 1, 1, 0, 0, 0, 1, 1, SYSDATE, 1, SYSDATE);
- INSERT INTO gzkstatusliczhist VALUES (wch.seq_gzkstatusliczhist.NEXTVAL, '2017-11-01', 4, vWodID, NULL, NULL, 2, 1, SYSDATE);
- -- wpisanie danych do tabeli roboczej
- UPDATE zzms_wodomierz_powiazane SET gzkwodomierz_Id = vWodID, infsiecelement_Id = vEleID, infsiecskladnik_Id = vSklID, infsiecinstal_ID = vInsID
- WHERE yo_Id = q.yo_Id
- AND ywu_id = q.ywu_Id
- AND yw_id = q.yw_id;
- END LOOP;
- END;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement