diff --git a/Modules/mip_bulk_load.pck b/Modules/mip_bulk_load.pck index 63842c1..7a96405 100644 --- a/Modules/mip_bulk_load.pck +++ b/Modules/mip_bulk_load.pck @@ -89,8 +89,8 @@ CREATE OR REPLACE PACKAGE BODY mip_bulk_load IS (code ,description) VALUES - ('UNKNOWN' - ,'Unknown Meter Type'); + ('OTHER' + ,'OTHER Meter Type'); EXCEPTION WHEN dup_val_on_index THEN NULL; @@ -124,7 +124,7 @@ CREATE OR REPLACE PACKAGE BODY mip_bulk_load IS VALUES ('OTHER' ,'OTHER' - ,'UNKNOWN' + ,'OTHER' ,g_other_manufacturer_id ,SYSDATE); EXCEPTION @@ -138,7 +138,7 @@ CREATE OR REPLACE PACKAGE BODY mip_bulk_load IS ,description) VALUES ('UNKNOWN' - ,'Unknown Housing Type'); + ,'Other Housing Type'); EXCEPTION WHEN dup_val_on_index THEN NULL; @@ -150,7 +150,7 @@ CREATE OR REPLACE PACKAGE BODY mip_bulk_load IS ,description) VALUES ('UNKNOWN' - ,'Unknown Regulator Type'); + ,'Other Regulator Type'); EXCEPTION WHEN dup_val_on_index THEN NULL; @@ -162,7 +162,7 @@ CREATE OR REPLACE PACKAGE BODY mip_bulk_load IS ,description) VALUES ('UNKNOWN' - ,'Unknown Filter Type'); + ,'Other Filter Type'); EXCEPTION WHEN dup_val_on_index THEN NULL; @@ -173,8 +173,8 @@ CREATE OR REPLACE PACKAGE BODY mip_bulk_load IS (code ,description) VALUES - ('UNKNOWN' - ,'Unknown Relief Valve Type'); + ('OTHER' + ,'Other Relief Valve Type'); EXCEPTION WHEN dup_val_on_index THEN NULL; @@ -185,8 +185,8 @@ CREATE OR REPLACE PACKAGE BODY mip_bulk_load IS (code ,rvty_code) VALUES - ('UNKNOWN' - ,'UNKNOWN'); + ('OTHER' + ,'OTHER'); EXCEPTION WHEN dup_val_on_index THEN NULL; @@ -197,8 +197,8 @@ CREATE OR REPLACE PACKAGE BODY mip_bulk_load IS (code ,description) VALUES - ('UNKNOWN' - ,'Unknown Slamshut Type '); + ('OTHER' + ,'Other Slamshut Type '); EXCEPTION WHEN dup_val_on_index THEN NULL; @@ -209,8 +209,8 @@ CREATE OR REPLACE PACKAGE BODY mip_bulk_load IS (code ,slty_code) VALUES - ('UNKNOWN' - ,'UNKNOWN'); + ('OTHER' + ,'OTHER'); EXCEPTION WHEN dup_val_on_index THEN NULL; @@ -221,8 +221,8 @@ CREATE OR REPLACE PACKAGE BODY mip_bulk_load IS (code ,description) VALUES - ('UNKNOWN' - ,'Unknown Service Pressure Type '); + ('OTHER' + ,'Other Service Pressure Type '); EXCEPTION WHEN dup_val_on_index THEN NULL; @@ -233,13 +233,13 @@ CREATE OR REPLACE PACKAGE BODY mip_bulk_load IS (code ,description) VALUES - ('UNKNOWN' - ,'Unknown Drawing '); + ('OTHER' + ,'Other Drawing '); EXCEPTION WHEN dup_val_on_index THEN NULL; END; - + END get_globals; PROCEDURE load_meters IS @@ -264,7 +264,7 @@ CREATE OR REPLACE PACKAGE BODY mip_bulk_load IS FROM meter_types)); pl(to_char(SQL%ROWCOUNT - ,'FM099G999G999') || ': meter_types'); + ,'FM099G999') || ': meter_types'); -- Meter Sizes INSERT INTO meter_size_codes (code @@ -286,7 +286,7 @@ CREATE OR REPLACE PACKAGE BODY mip_bulk_load IS FROM meter_size_codes)); pl(to_char(SQL%ROWCOUNT - ,'FM099G999G999') || ': meter_size_codes'); + ,'FM099G999') || ': meter_size_codes'); -- Manufacturers INSERT INTO parties @@ -312,7 +312,7 @@ CREATE OR REPLACE PACKAGE BODY mip_bulk_load IS WHERE prty_type = 'MANU')); pl(to_char(SQL%ROWCOUNT - ,'FM099G999G999') || ': manufacturers'); + ,'FM099G999') || ': manufacturers'); -- Drawings INSERT INTO drawings @@ -327,10 +327,12 @@ CREATE OR REPLACE PACKAGE BODY mip_bulk_load IS FROM drawings)); pl(to_char(SQL%ROWCOUNT - ,'FM099G999G999') || ': drawings'); + ,'FM099G999') || ': drawings'); MERGE INTO meters metr - USING (SELECT upper(TRIM(code)) AS code + USING (SELECT upper(REPLACE(TRIM(code) + ,'"' + ,'inch')) AS code ,upper(TRIM(drwg_code)) AS drwg_code ,upper(TRIM(mety_code)) AS mety_code ,p.id AS prty_id @@ -415,7 +417,7 @@ CREATE OR REPLACE PACKAGE BODY mip_bulk_load IS ,e.mesc_code) log errors reject LIMIT unlimited; pl(to_char(SQL%ROWCOUNT - ,'FM099G999G999') || ': meters'); + ,'FM099G999') || ': meters'); END load_meters; PROCEDURE load_modules IS @@ -451,7 +453,7 @@ CREATE OR REPLACE PACKAGE BODY mip_bulk_load IS FROM connection_types)); pl(to_char(SQL%ROWCOUNT - ,'FM099G999G999') || ': connection_types'); + ,'FM099G999') || ': connection_types'); -- Drawings INSERT INTO drawings (code @@ -466,7 +468,7 @@ CREATE OR REPLACE PACKAGE BODY mip_bulk_load IS FROM drawings)); pl(to_char(SQL%ROWCOUNT - ,'FM099G999G999') || ': drawings'); + ,'FM099G999') || ': drawings'); -- Manufacturers INSERT INTO parties @@ -492,7 +494,7 @@ CREATE OR REPLACE PACKAGE BODY mip_bulk_load IS WHERE prty_type = 'MANU')); pl(to_char(SQL%ROWCOUNT - ,'FM099G999G999') || ': manufacturers'); + ,'FM099G999') || ': manufacturers'); -- Relief valves INSERT INTO relief_valves @@ -501,7 +503,7 @@ CREATE OR REPLACE PACKAGE BODY mip_bulk_load IS ,relief_valve_size ,relief_valve_setting) (SELECT code - ,'UNKNOWN' + ,'OTHER' ,999 ,999 FROM (SELECT DISTINCT upper(TRIM(reva_code)) AS code @@ -511,7 +513,7 @@ CREATE OR REPLACE PACKAGE BODY mip_bulk_load IS FROM relief_valves)); pl(to_char(SQL%ROWCOUNT - ,'FM099G999G999') || ': relief_valves'); + ,'FM099G999') || ': relief_valves'); -- Slamshut valves INSERT INTO slamshut_valves (code @@ -519,7 +521,7 @@ CREATE OR REPLACE PACKAGE BODY mip_bulk_load IS ,slamshut_size ,slamshut_setting) (SELECT code - ,'UNKNOWN' + ,'OTHER' ,999 ,999 FROM (SELECT DISTINCT upper(TRIM(slva_code)) AS code @@ -529,7 +531,7 @@ CREATE OR REPLACE PACKAGE BODY mip_bulk_load IS FROM slamshut_valves)); pl(to_char(SQL%ROWCOUNT - ,'FM099G999G999') || ': slamshut_valves'); + ,'FM099G999') || ': slamshut_valves'); -- Service pressures INSERT INTO service_pressures @@ -537,7 +539,7 @@ CREATE OR REPLACE PACKAGE BODY mip_bulk_load IS ,svcpt_code ,description) (SELECT code - ,'UNKNOWN' + ,'OTHER' ,code FROM (SELECT DISTINCT upper(TRIM(svcp_code)) AS code FROM ext_modules) @@ -546,7 +548,7 @@ CREATE OR REPLACE PACKAGE BODY mip_bulk_load IS FROM service_pressures)); pl(to_char(SQL%ROWCOUNT - ,'FM099G999G999') || ': service_pressures'); + ,'FM099G999') || ': service_pressures'); -- Bases INSERT INTO bases @@ -564,7 +566,7 @@ CREATE OR REPLACE PACKAGE BODY mip_bulk_load IS ,dim_i ,depth) (SELECT code - ,'UNKNOWN' + ,'OTHER' ,code ,999 ,999 @@ -583,7 +585,7 @@ CREATE OR REPLACE PACKAGE BODY mip_bulk_load IS FROM bases)); pl(to_char(SQL%ROWCOUNT - ,'FM099G999G999') || ': bases'); + ,'FM099G999') || ': bases'); -- Housings INSERT INTO housings @@ -597,8 +599,8 @@ CREATE OR REPLACE PACKAGE BODY mip_bulk_load IS ,dim_h ,weight) (SELECT code - ,'UNKNOWN' - ,'UNKNOWN' + ,'OTHER' + ,'OTHER' ,g_other_manufacturer_id ,code ,999 @@ -612,7 +614,7 @@ CREATE OR REPLACE PACKAGE BODY mip_bulk_load IS FROM housings)); pl(to_char(SQL%ROWCOUNT - ,'FM099G999G999') || ': housings'); + ,'FM099G999') || ': housings'); -- Regulators INSERT INTO regulators @@ -622,7 +624,7 @@ CREATE OR REPLACE PACKAGE BODY mip_bulk_load IS ,regulator_size ,lock_up) (SELECT code - ,'UNKNOWN' + ,'OTHER' ,code ,999 ,999 @@ -633,7 +635,7 @@ CREATE OR REPLACE PACKAGE BODY mip_bulk_load IS FROM regulators)); pl(to_char(SQL%ROWCOUNT - ,'FM099G999G999') || ': regulators'); + ,'FM099G999') || ': regulators'); -- Filters INSERT INTO filters @@ -641,7 +643,7 @@ CREATE OR REPLACE PACKAGE BODY mip_bulk_load IS ,fity_code ,filter_size) (SELECT code - ,'UNKNOWN' + ,'OTHER' ,999 FROM (SELECT DISTINCT upper(TRIM(fltr_code)) AS code FROM ext_modules) @@ -650,7 +652,7 @@ CREATE OR REPLACE PACKAGE BODY mip_bulk_load IS FROM filters)); pl(to_char(SQL%ROWCOUNT - ,'FM099G999G999') || ': filters'); + ,'FM099G999') || ': filters'); -- Connection orientations INSERT INTO connection_orientations @@ -669,7 +671,7 @@ CREATE OR REPLACE PACKAGE BODY mip_bulk_load IS FROM connection_orientations)); pl(to_char(SQL%ROWCOUNT - ,'FM099G999G999') || ': connection_orientations'); + ,'FM099G999') || ': connection_orientations'); MERGE INTO modules modu USING (SELECT upper(TRIM(code)) AS code @@ -826,7 +828,7 @@ CREATE OR REPLACE PACKAGE BODY mip_bulk_load IS ,e.qmax) log errors reject LIMIT unlimited; pl(to_char(SQL%ROWCOUNT - ,'FM099G999G999') || ': modules'); + ,'FM099G999') || ': modules'); END load_modules; @@ -973,7 +975,7 @@ CREATE OR REPLACE PACKAGE BODY mip_bulk_load IS WHERE code NOT IN (SELECT code FROM drawings)); pl(to_char(SQL%ROWCOUNT - ,'FM099G999G999') || ': drawings'); + ,'FM099G999') || ': drawings'); MERGE INTO bases bas USING (SELECT upper(TRIM(field_1)) AS field_1 ,upper(TRIM(field_2)) AS field_2 @@ -1037,7 +1039,7 @@ CREATE OR REPLACE PACKAGE BODY mip_bulk_load IS ,e.field_13) log errors reject LIMIT unlimited; pl(to_char(SQL%ROWCOUNT - ,'FM099G999G999') || ': bases'); + ,'FM099G999') || ': bases'); END load_bases; PROCEDURE load_housings IS @@ -1073,7 +1075,7 @@ CREATE OR REPLACE PACKAGE BODY mip_bulk_load IS FROM parties WHERE prty_type = 'MANU')); pl(to_char(SQL%ROWCOUNT - ,'FM099G999G999') || ': manufacturers'); + ,'FM099G999') || ': manufacturers'); -- Drawings INSERT INTO drawings @@ -1087,7 +1089,7 @@ CREATE OR REPLACE PACKAGE BODY mip_bulk_load IS WHERE code NOT IN (SELECT code FROM drawings)); pl(to_char(SQL%ROWCOUNT - ,'FM099G999G999') || ': drawings'); + ,'FM099G999') || ': drawings'); -- Housing Types INSERT INTO housing_types @@ -1101,7 +1103,7 @@ CREATE OR REPLACE PACKAGE BODY mip_bulk_load IS WHERE code NOT IN (SELECT code FROM housing_types)); pl(to_char(SQL%ROWCOUNT - ,'FM099G999G999') || ': housing_types'); + ,'FM099G999') || ': housing_types'); MERGE INTO housings hou USING (SELECT upper(TRIM(field_1)) AS field_1 @@ -1153,7 +1155,7 @@ CREATE OR REPLACE PACKAGE BODY mip_bulk_load IS ,e.field_9) log errors reject LIMIT unlimited; pl(to_char(SQL%ROWCOUNT - ,'FM099G999G999') || ': housings'); + ,'FM099G999') || ': housings'); END load_housings; @@ -1224,7 +1226,7 @@ CREATE OR REPLACE PACKAGE BODY mip_bulk_load IS ,e.adit_code) log errors reject LIMIT unlimited; pl(to_char(SQL%ROWCOUNT - ,'FM099G999G999') || ': additional_items'); + ,'FM099G999') || ': additional_items'); -- -- Base costs -- @@ -1277,7 +1279,7 @@ CREATE OR REPLACE PACKAGE BODY mip_bulk_load IS ,e.bas_code) log errors reject LIMIT unlimited; pl(to_char(SQL%ROWCOUNT - ,'FM099G999G999') || ': bases'); + ,'FM099G999') || ': bases'); -- -- Housing costs -- @@ -1330,7 +1332,7 @@ CREATE OR REPLACE PACKAGE BODY mip_bulk_load IS ,e.hou_code) log errors reject LIMIT unlimited; pl(to_char(SQL%ROWCOUNT - ,'FM099G999G999') || ': housings'); + ,'FM099G999') || ': housings'); -- -- Module costs -- @@ -1383,7 +1385,7 @@ CREATE OR REPLACE PACKAGE BODY mip_bulk_load IS ,e.modu_code) log errors reject LIMIT unlimited; pl(to_char(SQL%ROWCOUNT - ,'FM099G999G999') || ': modules'); + ,'FM099G999') || ': modules'); -- -- Labour costs -- @@ -1467,7 +1469,7 @@ CREATE OR REPLACE PACKAGE BODY mip_bulk_load IS ,e.mety_code) log errors reject LIMIT unlimited; pl(to_char(SQL%ROWCOUNT - ,'FM099G999G999') || ': ' || l_enty.code || ':NETW0' || + ,'FM099G999') || ': ' || l_enty.code || ':NETW0' || l_network || ': labour'); END LOOP; @@ -1517,7 +1519,7 @@ CREATE OR REPLACE PACKAGE BODY mip_bulk_load IS ,field_6) log errors reject LIMIT unlimited; pl(to_char(SQL%ROWCOUNT - ,'FM099G999G999') || ': caveat_texts'); + ,'FM099G999') || ': caveat_texts'); END load_caveats; PROCEDURE load_postcodes IS @@ -1543,37 +1545,41 @@ CREATE OR REPLACE PACKAGE BODY mip_bulk_load IS FROM regions)); pl(to_char(SQL%ROWCOUNT - ,'FM099G999G999') || ': regions'); + ,'FM099G999') || ': regions'); - DELETE FROM postcodes - WHERE ROWID NOT IN (SELECT p.ROWID - FROM postcodes p - ,(SELECT CASE instr(TRIM(field_1) - ,' ') - WHEN 0 THEN - upper(field_1) - ELSE - upper(substr(field_1 - ,1 - ,instr(field_1 - ,' ') - 1)) - END AS outcode - ,CASE instr(TRIM(field_1) - ,' ') - WHEN 0 THEN - NULL - ELSE - substr(TRIM(field_1) - ,instr(TRIM(field_1) - ,' ') + 1) - END AS incode - FROM ext_postcodes) e - WHERE p.outcode = e.outcode - AND ((p.incode IS NULL AND e.incode IS NULL) OR - (p.incode = e.incode))); + DELETE FROM postcodes pd + WHERE (outcode, nvl(incode + ,'#NULL#')) IN + (SELECT outcode + ,nvl(incode + ,'#NULL#') + FROM (SELECT outcode + ,incode + FROM postcodes p + MINUS + SELECT CASE instr(TRIM(field_1) + ,' ') + WHEN 0 THEN + upper(TRIM(field_1)) + ELSE + upper(substr(field_1 + ,1 + ,instr(field_1 + ,' ') - 1)) + END AS outcode + ,CASE instr(TRIM(field_1) + ,' ') + WHEN 0 THEN + NULL + ELSE + substr(TRIM(field_1) + ,instr(TRIM(field_1) + ,' ') + 1) + END AS incode + FROM ext_postcodes)); pl(to_char(SQL%ROWCOUNT - ,'FM099G999G999') || ': postcodes - delete'); + ,'FM099G999') || ': postcodes - delete'); -- -- Postcodes @@ -1617,7 +1623,7 @@ CREATE OR REPLACE PACKAGE BODY mip_bulk_load IS ,e.regi_code) log errors reject LIMIT unlimited; pl(to_char(SQL%ROWCOUNT - ,'FM099G999G999') || ': postcodes - merge'); + ,'FM099G999') || ': postcodes - merge'); END load_postcodes; @@ -1691,7 +1697,7 @@ CREATE OR REPLACE PACKAGE BODY mip_bulk_load IS ,e.days) log errors reject LIMIT unlimited; pl(to_char(SQL%ROWCOUNT - ,'FM099G999G999') || ': leadtimes - merge'); + ,'FM099G999') || ': leadtimes - merge'); END load_leadtimes; @@ -1728,18 +1734,13 @@ CREATE OR REPLACE PACKAGE BODY mip_bulk_load IS pl('report_err'); - FOR l_rec IN (SELECT * - FROM err$_modules) LOOP - pl('modules:' || l_rec.ora_err_mesg$ || ':' || l_rec.ora_err_rowid$ || ':' || - l_rec.ora_err_optyp$); - END LOOP; - + FOR l_rec IN (SELECT * FROM err$_meters) LOOP pl('meters:' || l_rec.ora_err_mesg$ || ':' || l_rec.ora_err_rowid$ || ':' || l_rec.ora_err_optyp$); END LOOP; - + FOR l_rec IN (SELECT * FROM err$_bases) LOOP pl('bases:' || l_rec.ora_err_mesg$ || ':' || l_rec.ora_err_rowid$ || ':' || @@ -1751,7 +1752,19 @@ CREATE OR REPLACE PACKAGE BODY mip_bulk_load IS pl('housings:' || l_rec.ora_err_mesg$ || ':' || l_rec.ora_err_rowid$ || ':' || l_rec.ora_err_optyp$); END LOOP; - + + FOR l_rec IN (SELECT * + FROM err$_modules) LOOP + pl('modules:' || l_rec.ora_err_mesg$ || ':' || l_rec.ora_err_rowid$ || ':' || + l_rec.ora_err_optyp$); + END LOOP; + + FOR l_rec IN (SELECT * + FROM err$_postcodes) LOOP + pl('postcodes:' || l_rec.ora_err_mesg$ || ':' || + l_rec.ora_err_rowid$ || ':' || l_rec.ora_err_optyp$); + END LOOP; + FOR l_rec IN (SELECT * FROM err$_costs) LOOP pl('costs:' || l_rec.ora_err_mesg$ || ':' || l_rec.ora_err_rowid$ || ':' || @@ -1763,13 +1776,13 @@ CREATE OR REPLACE PACKAGE BODY mip_bulk_load IS pl('caveats:' || l_rec.ora_err_mesg$ || ':' || l_rec.ora_err_rowid$ || ':' || l_rec.ora_err_optyp$); END LOOP; - - FOR l_rec IN (SELECT * - FROM err$_postcodes) LOOP - pl('postcodes:' || l_rec.ora_err_mesg$ || ':' || - l_rec.ora_err_rowid$ || ':' || l_rec.ora_err_optyp$); + + FOR l_rec IN (SELECT * + FROM err$_lead_times) LOOP + pl('lead_times:' || l_rec.ora_err_mesg$ || ':' || l_rec.ora_err_rowid$ || ':' || + l_rec.ora_err_optyp$); END LOOP; - + pl('report_err - complete'); END report_err; @@ -1778,14 +1791,14 @@ CREATE OR REPLACE PACKAGE BODY mip_bulk_load IS init; - load_modules; load_meters; load_bases; load_housings; load_drawings; + load_modules; + load_postcodes; load_costs; load_caveats; - load_postcodes; load_leadtimes; report_err;