Files
mip/Modules/mip_bulk_load.pck
hardya c9c4299917 mip_bulk_load.pck - initial stage of producing bulk load routines.
mip_quotation.pck - move bases and housings from main 'install' query to allow a more comprehensive 'reasoning' to be produced. Removed references to 'logger' for 'install'. Added 'lifting gear' to all 'install' quotations.

git-svn-id: http://locode01.ad.dom/svn/WEBMIP/trunk@3173 248e525c-4dfb-0310-94bc-949c084e9493
2008-01-08 18:20:27 +00:00

103 lines
2.5 KiB
Plaintext

CREATE OR REPLACE PACKAGE mip_bulk_load IS
-- Author : HARDYA
-- Created : 08/01/2008 14:26:14
-- Purpose : Bulk data load routines
PROCEDURE load_meters;
END mip_bulk_load;
/
CREATE OR REPLACE PACKAGE BODY mip_bulk_load IS
PROCEDURE load_manufacturers IS
BEGIN
MERGE INTO parties prty
USING (SELECT field_1
FROM ext_meter) e_metr
ON (upper(e_metr.field_1) = upper(prty.manu_ref))
WHEN NOT MATCHED THEN
INSERT
(prty.manu_ref
,NAME
,description
,created_on
,created_by
,prty_type
,id)
VALUES
(upper(e_metr.field_1)
,e_metr.field_1
,'Inserted missing manufacturer (EXT_METR)'
,SYSDATE
,USER
,'MANU'
,prty_seq.NEXTVAL) log errors reject LIMIT unlimited;
END load_manufacturers;
PROCEDURE load_meters IS
BEGIN
load_manufacturers;
MERGE INTO meters metr
USING (SELECT field_1
,field_2
,field_3
,field_4
,field_5
,field_6
,field_7
,field_8
,field_9
,field_10
,field_11
,field_12
FROM ext_meter) e_metr
ON (e_metr.field_2 = metr.code)
WHEN MATCHED THEN
UPDATE
SET prty_id = (SELECT id
FROM parties p
WHERE upper(p.manu_ref) = upper(e_metr.field_1)
AND p.prty_type = 'MANU')
,mety_code = e_metr.field_4
WHEN NOT MATCHED THEN
INSERT
(metr.code
,metr.prty_id
,metr.mety_code
,metr.dim_a
,metr.dim_b
,metr.centres
,metr.dim_c
,metr.weight
,metr.qmax
,metr.valid_from
,metr.qnom
,metr.qmin)
VALUES
(e_metr.field_2
,(SELECT id
FROM parties p
WHERE upper(p.manu_ref) = upper(e_metr.field_1)
AND p.prty_type = 'MANU')
,e_metr.field_4
,e_metr.field_5
,e_metr.field_6
,e_metr.field_7
,e_metr.field_8
,e_metr.field_9
,e_metr.field_10
,SYSDATE
,e_metr.field_11
,e_metr.field_12) log errors reject LIMIT unlimited;
END load_meters;
BEGIN
-- Initialization
NULL;
END mip_bulk_load;
/