UPDATE CFG_FELEM SET FELEM_CODE='AMOUNT' WHERE FELEM_ID=59;
UPDATE CFG_OMFUNC SET CONNECT_STR='SADocBuilder' WHERE OMFUNC_ID=2;

update CFG_ROUTE set ROUTE_FILTER='boolean(/UMF_DOC/INBOUND/LENS[not(./CONFUSED)]/CONFLICTING_EXCLUSIVES[./TOTAL_CONFLICTS >= 4 ])' where ROUTE_ID =7;


--Alter TABLE LOG_OBS ADD SRC_PRUNE_BEFORE_DT TIMESTAMP;
--Alter TABLE LOG_OBS ADD SRC_PRUNE_AFTER_DT TIMESTAMP;
ALTER TABLE LOG_OBS ADD  NODE_NAME VARCHAR(50) DEFAULT 'G2';
 
ALTER TABLE CFG_RTYPE ADD BREAK_RES varchar(5) DEFAULT 'No';
ALTER TABLE RES_ENT ADD  NODE_NAME VARCHAR(50) DEFAULT 'G2';
 
 
DROP VIEW CFG_EBOM_VIEW;
CREATE VIEW CFG_EBOM_VIEW 
AS
SELECT
  B.ETYPE_CODE,
  A.EXEC_ORDER,
  C.FTYPE_CODE,
  (SELECT UTYPE_CODE FROM CFG_UTYPE WHERE UTYPE_ID = A.UTYPE_ID) AS UTYPE_CODE,
  C.USED_FOR_CAND,
  C.BEHAVIOR_CODE,
  C.DERIVED,
  C.ANONYMIZE,
  A.ETYPE_ID,
  A.FTYPE_ID,
  A.UTYPE_ID,
  (SELECT ECLASS_CODE FROM CFG_ECLASS WHERE ECLASS_ID = B.ECLASS_ID) ECLASS_CODE,
  (SELECT FCLASS_CODE FROM CFG_FCLASS WHERE FCLASS_ID = C.FCLASS_ID) FCLASS_CODE,
  (SELECT SFUNC_CODE FROM CFG_SFUNC WHERE SFUNC_ID = (SELECT SFUNC_ID FROM CFG_SFCALL WHERE FTYPE_ID = A.FTYPE_ID) fetch first 1 rows only) AS SFUNC_CODE,
  (SELECT EFUNC_CODE FROM CFG_EFUNC WHERE EFUNC_ID = (SELECT EFUNC_ID FROM CFG_EFCALL WHERE FTYPE_ID = A.FTYPE_ID) fetch first 1 rows only) AS EFUNC_CODE,
  (SELECT CFUNC_CODE FROM CFG_CFUNC WHERE CFUNC_ID = (SELECT CFUNC_ID FROM CFG_CFCALL WHERE FTYPE_ID = A.FTYPE_ID) fetch first 1 rows only) AS FFUNC_CODE
FROM CFG_EBOM A
JOIN CFG_ETYPE B ON B.ETYPE_ID = A.ETYPE_ID
JOIN CFG_FTYPE_VIEW C ON C.FTYPE_ID = A.FTYPE_ID
;
DROP VIEW RES_ENT_VIEW;
CREATE VIEW RES_ENT_VIEW 
AS
SELECT
 A.LENS_ID,
 A.RES_ENT_ID,
 A.MIN_OBS_ENT_ID,
 C.DSRC_CODE,
 B.ENT_SRC_KEY,
 B.ENT_SRC_DESC
FROM (
 SELECT 
  X.LENS_ID, 
  X.RES_ENT_ID,
  (SELECT MIN(OBS_ENT_ID) FROM RES_ENT_RKEY WHERE RES_ENT_ID = X.RES_ENT_ID AND LENS_ID = X.LENS_ID) AS MIN_OBS_ENT_ID
 FROM RES_ENT X
) A
JOIN OBS_ENT B ON B.OBS_ENT_ID = A.MIN_OBS_ENT_ID
JOIN CFG_DSRC C ON C.DSRC_ID = B.DSRC_ID
;

CREATE VIEW RES_ENT_STAT 
AS
SELECT
 A.LENS_ID, 
 A.RES_ENT_ID,
 A.NUM_OBS_ENT, 
 A.NUM_DSRC_CODE, 
 (SELECT COUNT(*) FROM RES_REL_EKEY WHERE RES_ENT_ID = A.RES_ENT_ID AND LENS_ID = A.LENS_ID) AS NUM_RELS,
 A.MIN_OBS_ENT_ID, 
 C.DSRC_CODE,
 B.ENT_SRC_KEY,
 B.ENT_SRC_DESC
FROM (
 SELECT 
  X.LENS_ID, 
  X.RES_ENT_ID,
  COUNT(*) AS NUM_OBS_ENT, 
  COUNT(DISTINCT Y.DSRC_ID) AS NUM_DSRC_CODE, 
  MIN(X.OBS_ENT_ID) AS MIN_OBS_ENT_ID
 FROM RES_ENT_RKEY X
 JOIN OBS_ENT Y ON Y.OBS_ENT_ID = X.OBS_ENT_ID
 GROUP BY X.RES_ENT_ID, X.LENS_ID
) A
JOIN OBS_ENT B ON B.OBS_ENT_ID = A.MIN_OBS_ENT_ID
JOIN CFG_DSRC C ON C.DSRC_ID = B.DSRC_ID
;

DROP VIEW RES_OBS_VIEW;
CREATE VIEW RES_OBS_VIEW 
AS
SELECT
 A.LENS_ID,
 A.RES_ENT_ID,
 D.DSRC_CODE,
 E.ETYPE_CODE,
 C.ENT_SRC_KEY,
 C.ENT_SRC_DESC,
 B.ERRULE_ID,
 F.ERRULE_CODE,
 C.OBS_ENT_ID,
 C.DSRC_ID,
 C.ETYPE_ID,
 B.ER_ID
FROM RES_ENT_RKEY A
JOIN RES_ENT_OKEY B on B.OBS_ENT_ID = A.OBS_ENT_ID AND B.LENS_ID = A.LENS_ID
JOIN OBS_ENT C ON C.OBS_ENT_ID = A.OBS_ENT_ID
JOIN CFG_DSRC D ON D.DSRC_ID = C.DSRC_ID
JOIN CFG_ETYPE E ON E.ETYPE_ID = C.ETYPE_ID
LEFT JOIN CFG_ERRULE F ON F.ERRULE_ID = B.ERRULE_ID
;

DROP VIEW RES_FEAT_VIEW;
CREATE VIEW RES_FEAT_VIEW 
as
SELECT 
 A.LENS_ID,
 A.RES_ENT_ID,
 A.FTYPE_ID,
 C.DERIVED,
 C.FTYPE_CODE,
 (SELECT UTYPE_CODE FROM CFG_UTYPE WHERE UTYPE_ID = A.UTYPE_ID) UTYPE_CODE,
 B.FEAT_DESC,
 B.FELEM_VALUES,
 A.USED_FROM_DT,
 A.USED_THRU_DT,
 A.FIRST_SEEN_DT,  
 A.LAST_SEEN_DT,  
 D.NUM_RES_ENT * D.NUM_RES_ENT_OOM AS EST_ENT_CNT,
 A.LIB_FEAT_ID
FROM RES_FEAT_EKEY A
JOIN LIB_FEAT B ON B.LIB_FEAT_ID = A.LIB_FEAT_ID
JOIN CFG_FTYPE C ON C.FTYPE_ID = A.FTYPE_ID
LEFT JOIN RES_FEAT_STAT D ON D.LIB_FEAT_ID = A.LIB_FEAT_ID AND D.LENS_ID = A.LENS_ID
;

DROP VIEW RES_REL_EKEY_VIEW;
CREATE VIEW RES_REL_EKEY_VIEW 
AS
SELECT 
 A.LENS_ID,
 A.RES_ENT_ID,
 C.DSRC_CODE AS RES_DSRC_CODE,
 C.ENT_SRC_KEY AS RES_ENT_SRC_KEY,
 C.ENT_SRC_DESC AS RES_ENT_SRC_DESC,
 A.RES_REL_ID,
 IS_DISCLOSED,
 IS_AMBIGUOUS,
 B.LAST_ERRULE_ID,
 (SELECT ERRULE_CODE FROM CFG_ERRULE WHERE ERRULE_ID = B.LAST_ERRULE_ID) AS ERRULE_CODE,
 A.REL_ENT_ID,
 D.DSRC_CODE AS REL_DSRC_CODE,
 D.ENT_SRC_KEY AS REL_ENT_SRC_KEY,
 D.ENT_SRC_DESC AS REL_ENT_SRC_DESC,
 B.LAST_ER_ID
FROM RES_REL_EKEY A
LEFT JOIN RES_RELATE B ON B.RES_REL_ID = A.RES_REL_ID
LEFT JOIN RES_ENT_VIEW C ON C.RES_ENT_ID = A.RES_ENT_ID AND C.LENS_ID = A.LENS_ID
LEFT JOIN RES_ENT_VIEW D ON D.RES_ENT_ID = A.REL_ENT_ID AND C.LENS_ID = A.LENS_ID
;

DROP VIEW LOG_ER_RES_VIEW;
CREATE VIEW LOG_ER_RES_VIEW 
AS
SELECT
 A.ER_DT,
 A.ER_ID,
 A.LENS_ID,
 A.OBS_ID,
 A.OBS_ENT_ID,
 C.DSRC_CODE,
 B.ENT_SRC_KEY,
 B.ENT_SRC_DESC,
 E.ER_STEP,
 CAST(CASE D.ER_PROC_ID WHEN 1 THEN 'RESOLVE' WHEN 2 THEN 'RE-RESOLVE' WHEN 3 THEN 'UN-RESOLVE' ELSE 'UNKNOWN' END AS VARCHAR(10)) AS ER_PROCESS,
 E.ER_ACTION_NUM,
 CAST(RTRIM(CAST(COALESCE(E.ER_ACTION_ID, 0) AS VARCHAR(3))) || '=' ||
   CASE COALESCE(E.ER_ACTION_ID, 0)
   WHEN 0 THEN 'NO ACTION'
   WHEN 1 THEN 'NEW ENTITY'
   WHEN 2 THEN 'EXISTING ENTITY'
   WHEN 3 THEN 'MOVE ENTITY'
   WHEN 4 THEN 'DELETE ENTITY'
   WHEN 5 THEN 'NEW RELATION'
   WHEN 6 THEN 'EXISTING RELATION'
   WHEN 7 THEN 'DELETE RELATION'
   ELSE 'UNKNOWN' END AS VARCHAR(25)) AS ER_ACTION,
 E.CAND_ENT_ID,
 E.ERRULE_ID,
 (SELECT ERRULE_CODE FROM CFG_ERRULE WHERE ERRULE_ID = E.ERRULE_ID) AS ERRULE_CODE,
 E.OBS_ENT_ID AS IN_OBS_ENT_ID,
 E.FROM_RES_ENT_ID,
 E.TO_RES_ENT_ID,
 E.RES_REL_ID
FROM LOG_ER A
LEFT JOIN OBS_ENT B ON B.OBS_ENT_ID = A.OBS_ENT_ID
LEFT JOIN CFG_DSRC C ON C.DSRC_ID = B.DSRC_ID
JOIN LOG_ER_RES E ON E.ER_ID = A.ER_ID
LEFT JOIN LOG_ER_STEP D ON D.ER_ID = E.ER_ID AND D.ER_STEP = E.ER_STEP
;

DROP VIEW LOG_ER_COMP_VIEW;
CREATE VIEW LOG_ER_COMP_VIEW
AS
SELECT
 A.ER_DT,
 A.ER_ID,
 A.LENS_ID,
 A.OBS_ID,
 A.OBS_ENT_ID,
 C.DSRC_CODE,
 B.ENT_SRC_KEY,
 B.ENT_SRC_DESC,
 E.ER_STEP,
 CAST(CASE D.ER_PROC_ID WHEN 1 THEN 'RESOLVE' WHEN 2 THEN 'RE-RESOLVE' WHEN 3 THEN 'UN-RESOLVE' ELSE 'UNKNOWN' END AS VARCHAR(10)) AS ER_PROCESS,
 D.OBS_ENT_ID AS IN_OBS_ENT_ID,
 D.RES_ENT_ID AS IN_RES_ENT_ID,
 E.CAND_ENT_ID,
 E.ERRULE_ID,
 (SELECT ERRULE_CODE FROM CFG_ERRULE WHERE ERRULE_ID = E.ERRULE_ID) AS ERRULE_CODE,
 F.FTYPE_ID,
 G.FTYPE_CODE,
 H.CFUNC_RTNVAL AS CFRTN_CODE,
 F.CFRTN_SCORE,
 CAST(CASE F.CFRTN_LEVEL WHEN 5 THEN 'SAME' WHEN 4 THEN 'CLOSE' ELSE 'DIFF' END AS VARCHAR(5)) AS CFRTN_LEVEL,
 I.FEAT_DESC AS OBS_FEAT_DESC,
 J.FEAT_DESC AS RES_FEAT_DESC
FROM LOG_ER A
LEFT JOIN OBS_ENT B ON B.OBS_ENT_ID = A.OBS_ENT_ID
LEFT JOIN CFG_DSRC C ON C.DSRC_ID = B.DSRC_ID
JOIN LOG_ER_CAND E ON E.ER_ID = A.ER_ID
LEFT JOIN LOG_ER_STEP D ON D.ER_ID = E.ER_ID AND D.ER_STEP = E.ER_STEP
JOIN LOG_ER_COMP F ON F.ER_ID = E.ER_ID AND F.ER_STEP = E.ER_STEP AND F.CAND_ENT_ID = E.CAND_ENT_ID
JOIN CFG_FTYPE G ON G.FTYPE_ID = F.FTYPE_ID
JOIN CFG_CFRTN H ON H.CFRTN_ID = F.CFRTN_ID
JOIN LIB_FEAT I ON I.LIB_FEAT_ID = F.INCOMING_FEAT_ID
JOIN LIB_FEAT J ON J.LIB_FEAT_ID = F.MATCHED_FEAT_ID
;

DROP VIEW LOG_OBS_VIEW;
CREATE VIEW LOG_OBS_VIEW
AS
SELECT
 A.SYS_CREATE_DT,
 A.OBS_STATUS_ID,
 A.OBS_ID,
 A.OBS_SRC_KEY,
 B.OBS_ENT_ID,
 A.DSRC_ACTION,
 B.SYS_ACTION,
 A.DSRC_ID,
 D.DSRC_CODE,
 C.ETYPE_ID,
 E.ETYPE_CODE,
 C.ENT_SRC_KEY,
 C.ENT_SRC_DESC,
 B.FROM_LENS_ID,
 B.FROM_RES_ENT_ID,
 A.SRC_CREATE_DT,
 A.SRC_LSTUPD_DT,
 A.SRC_LSTUPD_USER
FROM LOG_OBS A
JOIN LOG_OBS_ENT B ON B.OBS_ID = A.OBS_ID
LEFT JOIN OBS_ENT C ON C.OBS_ENT_ID = B.OBS_ENT_ID
LEFT JOIN CFG_DSRC D ON D.DSRC_ID = A.DSRC_ID
LEFT JOIN CFG_ETYPE E ON E.ETYPE_ID = C.ETYPE_ID
;

DROP VIEW LOG_ER_CAND_VIEW;
CREATE VIEW LOG_ER_CAND_VIEW
AS
SELECT
 A.ER_DT,
 A.ER_ID,
 A.LENS_ID,
 A.OBS_ID,
 A.OBS_ENT_ID,
 C.DSRC_CODE,
 B.ENT_SRC_KEY,
 B.ENT_SRC_DESC,
 E.ER_STEP,
 CAST(CASE D.ER_PROC_ID WHEN 1 THEN 'RESOLVE' WHEN 2 THEN 'RE-RESOLVE' WHEN 3 THEN 'UN-RESOLVE' ELSE 'UNKNOWN' END AS VARCHAR(10)) AS ER_PROCESS,
 D.OBS_ENT_ID AS IN_OBS_ENT_ID,
 D.RES_ENT_ID AS IN_RES_ENT_ID,
 E.CAND_ENT_ID,
 F.DSRC_CODE AS CAND_DSRC_CODE,
 F.ENT_SRC_KEY AS CAND_ENT_SRC_KEY,
 F.ENT_SRC_DESC AS CAND_ENT_SRC_DESC,
 E.ERRULE_ID,
 (SELECT ERRULE_CODE FROM CFG_ERRULE WHERE ERRULE_ID = E.ERRULE_ID) AS ERRULE_CODE,
 CAST(CASE E.RESOLVED WHEN 1 THEN 'YES' ELSE 'NO' END AS VARCHAR(5)) AS RESOLVED,
 CAST(CASE E.CONFLICTED WHEN 1 THEN 'YES' ELSE 'NO' END AS VARCHAR(5)) AS CONFLICTED
FROM LOG_ER A
LEFT JOIN OBS_ENT B ON B.OBS_ENT_ID = A.OBS_ENT_ID
LEFT JOIN CFG_DSRC C ON C.DSRC_ID = B.DSRC_ID
JOIN LOG_ER_CAND E ON E.ER_ID = A.ER_ID
LEFT JOIN LOG_ER_STEP D ON D.ER_ID = E.ER_ID AND D.ER_STEP = E.ER_STEP
LEFT JOIN RES_ENT_VIEW F ON F.RES_ENT_ID = E.CAND_ENT_ID AND F.LENS_ID = A.LENS_ID
;

DELETE FROM  SYS_PARAM WHERE PARAM_ID=139 AND PARAM_GROUP='LOGGING' AND PARAM_CODE='LOG_OBS_FEAT';

UPDATE CFG_FELEM SET FELEM_DESC='Surname' WHERE FELEM_CODE='SUR_NAME';
INSERT INTO CFG_FELEM (FELEM_ID,FELEM_CODE,FELEM_DESC,TOKENIZE,DATA_TYPE) VALUES (12,'CATEGORY','Name category','No','string');
INSERT INTO CFG_FELEM (FELEM_ID,FELEM_CODE,FELEM_DESC,TOKENIZE,DATA_TYPE) VALUES (77,'ALL_NM','All for NAME_KEY','No','string');
INSERT INTO CFG_FELEM (FELEM_ID,FELEM_CODE,FELEM_DESC,TOKENIZE,DATA_TYPE) VALUES (78,'ALL_META','Meta for NAME_KEY','No','string');
INSERT INTO CFG_FELEM (FELEM_ID,FELEM_CODE,FELEM_DESC,TOKENIZE,DATA_TYPE) VALUES (79,'NM_PAIR','Pairs for NAME_KEY','No','string');
INSERT INTO CFG_FELEM (FELEM_ID,FELEM_CODE,FELEM_DESC,TOKENIZE,DATA_TYPE) VALUES (81,'ORIG_GN','Original (standardised) Given Name','No','string');
INSERT INTO CFG_FELEM (FELEM_ID,FELEM_CODE,FELEM_DESC,TOKENIZE,DATA_TYPE) VALUES (83,'META_GN','Metaphoned Given Name','No','string');
INSERT INTO CFG_FELEM (FELEM_ID,FELEM_CODE,FELEM_DESC,TOKENIZE,DATA_TYPE) VALUES (84,'ORIG_SN','Original (standardised) Surname','No','string');
INSERT INTO CFG_FELEM (FELEM_ID,FELEM_CODE,FELEM_DESC,TOKENIZE,DATA_TYPE) VALUES (86,'META_SN','Metaphoned Surname','No','string');
INSERT INTO CFG_FELEM (FELEM_ID,FELEM_CODE,FELEM_DESC,TOKENIZE,DATA_TYPE) VALUES (87,'ORIG_ON','Original Organisation Name','No','string');
INSERT INTO CFG_FELEM (FELEM_ID,FELEM_CODE,FELEM_DESC,TOKENIZE,DATA_TYPE) VALUES (89,'META_ON','Metaphoned Organisation Name','No','string');
INSERT INTO CFG_FELEM (FELEM_ID,FELEM_CODE,FELEM_DESC,TOKENIZE,DATA_TYPE) VALUES (91,'STD_PRE','Standardized Name Prefixes','No', 'string');
INSERT INTO CFG_FELEM (FELEM_ID,FELEM_CODE,FELEM_DESC,TOKENIZE,DATA_TYPE) VALUES (92,'STD_SUF','Standardized Name Suffixes','No', 'string');
INSERT INTO CFG_FELEM (FELEM_ID,FELEM_CODE,FELEM_DESC,TOKENIZE,DATA_TYPE) VALUES (93,'STD_GEN','Standardized Name Generation','No', 'string');
INSERT INTO CFG_FELEM (FELEM_ID,FELEM_CODE,FELEM_DESC,TOKENIZE,DATA_TYPE) VALUES (94,'ORIG_FN','Original (standardised) Full Name','No','string');
INSERT INTO CFG_FELEM (FELEM_ID,FELEM_CODE,FELEM_DESC,TOKENIZE,DATA_TYPE) VALUES (96,'META_FN','Metaphoned Full Name','No','string');

INSERT INTO CFG_EFBOM (EFCALL_ID,FTYPE_ID,FELEM_ID,EXEC_ORDER,FELEM_REQ) VALUES (7,1,12,8,'No');
INSERT INTO CFG_EFBOM (EFCALL_ID,FTYPE_ID,FELEM_ID,EXEC_ORDER,FELEM_REQ) VALUES (7,1,77,9,'No');
INSERT INTO CFG_EFBOM (EFCALL_ID,FTYPE_ID,FELEM_ID,EXEC_ORDER,FELEM_REQ) VALUES (7,1,78,10,'No');
INSERT INTO CFG_EFBOM (EFCALL_ID,FTYPE_ID,FELEM_ID,EXEC_ORDER,FELEM_REQ) VALUES (7,1,79,11,'No');

---INSERT INTO CFG_EFBOM (EFCALL_ID,FTYPE_ID,FELEM_ID,EXEC_ORDER,FELEM_REQ) VALUES (7,2,71,12,'No'); <==4.2.0.0
---INSERT INTO CFG_EFBOM (EFCALL_ID,FTYPE_ID,FELEM_ID,EXEC_ORDER,FELEM_REQ) VALUES (7,2,71,7,'No'); <==4.1.0.1
UPDATE CFG_EFBOM SET EXEC_ORDER=12 WHERE EFCALL_ID=7 AND FTYPE_ID=2 AND FELEM_ID=71;
UPDATE CFG_EFBOM SET EXEC_ORDER=13 WHERE EFCALL_ID=7  AND FTYPE_ID=8 AND FELEM_ID=39;
----INSERT INTO CFG_EFBOM (EFCALL_ID,FTYPE_ID,FELEM_ID,EXEC_ORDER,FELEM_REQ) VALUES (7,8,39,13,'No'); <==4.2.0.0
----INSERT INTO CFG_EFBOM (EFCALL_ID,FTYPE_ID,FELEM_ID,EXEC_ORDER,FELEM_REQ) VALUES (7,8,39,8,'No');<==4.1.0.1

UPDATE CFG_CFUNC SET ANON_SUPPORT='Yes' WHERE CFUNC_ID=2;

INSERT INTO CFG_CFRTN (CFRTN_ID,CFUNC_ID,CFUNC_RTNVAL,EXEC_ORDER,SAME_SCORE,CLOSE_SCORE,LIKELY_SCORE,PLAUSIBLE_SCORE,UN_LIKELY_SCORE) VALUES (6,2,'GENERATION_MATCH',4,2,2,2,2,1);

INSERT INTO CFG_CFBOM (CFCALL_ID,FTYPE_ID,FELEM_ID,EXEC_ORDER) VALUES (1,1,12,11);
INSERT INTO CFG_CFBOM (CFCALL_ID,FTYPE_ID,FELEM_ID,EXEC_ORDER) VALUES (1,1,81,12);
INSERT INTO CFG_CFBOM (CFCALL_ID,FTYPE_ID,FELEM_ID,EXEC_ORDER) VALUES (1,1,83,13);
INSERT INTO CFG_CFBOM (CFCALL_ID,FTYPE_ID,FELEM_ID,EXEC_ORDER) VALUES (1,1,84,14);
INSERT INTO CFG_CFBOM (CFCALL_ID,FTYPE_ID,FELEM_ID,EXEC_ORDER) VALUES (1,1,86,15);
INSERT INTO CFG_CFBOM (CFCALL_ID,FTYPE_ID,FELEM_ID,EXEC_ORDER) VALUES (1,1,87,16);
INSERT INTO CFG_CFBOM (CFCALL_ID,FTYPE_ID,FELEM_ID,EXEC_ORDER) VALUES (1,1,89,17);
INSERT INTO CFG_CFBOM (CFCALL_ID,FTYPE_ID,FELEM_ID,EXEC_ORDER) VALUES (1,1,91,18);
INSERT INTO CFG_CFBOM (CFCALL_ID,FTYPE_ID,FELEM_ID,EXEC_ORDER) VALUES (1,1,92,19);
INSERT INTO CFG_CFBOM (CFCALL_ID,FTYPE_ID,FELEM_ID,EXEC_ORDER) VALUES (1,1,93,20);
INSERT INTO CFG_CFBOM (CFCALL_ID,FTYPE_ID,FELEM_ID,EXEC_ORDER) VALUES (1,1,94,21);
INSERT INTO CFG_CFBOM (CFCALL_ID,FTYPE_ID,FELEM_ID,EXEC_ORDER) VALUES (1,1,96,22);


INSERT INTO CFG_FBOM (FTYPE_ID,FELEM_ID,EXEC_ORDER,DISPLAY_LEVEL,DISPLAY_DELIM,DERIVED) VALUES (1,12,11,0,NULL,'No');
INSERT INTO CFG_FBOM (FTYPE_ID,FELEM_ID,EXEC_ORDER,DISPLAY_LEVEL,DISPLAY_DELIM,DERIVED) VALUES (1,77,12,0,NULL,'Yes');
INSERT INTO CFG_FBOM (FTYPE_ID,FELEM_ID,EXEC_ORDER,DISPLAY_LEVEL,DISPLAY_DELIM,DERIVED) VALUES (1,78,13,0,NULL,'Yes');
INSERT INTO CFG_FBOM (FTYPE_ID,FELEM_ID,EXEC_ORDER,DISPLAY_LEVEL,DISPLAY_DELIM,DERIVED) VALUES (1,79,14,0,NULL,'Yes');
INSERT INTO CFG_FBOM (FTYPE_ID,FELEM_ID,EXEC_ORDER,DISPLAY_LEVEL,DISPLAY_DELIM,DERIVED) VALUES (1,81,15,0,NULL,'Yes');
INSERT INTO CFG_FBOM (FTYPE_ID,FELEM_ID,EXEC_ORDER,DISPLAY_LEVEL,DISPLAY_DELIM,DERIVED) VALUES (1,83,16,0,NULL,'Yes');
INSERT INTO CFG_FBOM (FTYPE_ID,FELEM_ID,EXEC_ORDER,DISPLAY_LEVEL,DISPLAY_DELIM,DERIVED) VALUES (1,84,17,0,NULL,'Yes');
INSERT INTO CFG_FBOM (FTYPE_ID,FELEM_ID,EXEC_ORDER,DISPLAY_LEVEL,DISPLAY_DELIM,DERIVED) VALUES (1,86,18,0,NULL,'Yes');
INSERT INTO CFG_FBOM (FTYPE_ID,FELEM_ID,EXEC_ORDER,DISPLAY_LEVEL,DISPLAY_DELIM,DERIVED) VALUES (1,87,19,0,NULL,'Yes');
INSERT INTO CFG_FBOM (FTYPE_ID,FELEM_ID,EXEC_ORDER,DISPLAY_LEVEL,DISPLAY_DELIM,DERIVED) VALUES (1,89,20,0,NULL,'Yes');
INSERT INTO CFG_FBOM (FTYPE_ID,FELEM_ID,EXEC_ORDER,DISPLAY_LEVEL,DISPLAY_DELIM,DERIVED) VALUES (1,91,21,0,NULL,'Yes');
INSERT INTO CFG_FBOM (FTYPE_ID,FELEM_ID,EXEC_ORDER,DISPLAY_LEVEL,DISPLAY_DELIM,DERIVED) VALUES (1,92,22,0,NULL,'Yes');
INSERT INTO CFG_FBOM (FTYPE_ID,FELEM_ID,EXEC_ORDER,DISPLAY_LEVEL,DISPLAY_DELIM,DERIVED) VALUES (1,93,23,0,NULL,'Yes');
INSERT INTO CFG_FBOM (FTYPE_ID,FELEM_ID,EXEC_ORDER,DISPLAY_LEVEL,DISPLAY_DELIM,DERIVED) VALUES (1,94,24,0,NULL,'Yes');
INSERT INTO CFG_FBOM (FTYPE_ID,FELEM_ID,EXEC_ORDER,DISPLAY_LEVEL,DISPLAY_DELIM,DERIVED) VALUES (1,96,25,0,NULL,'Yes');

-- The following only exists in 4.1.0.1
--INSERT INTO CFG_CFBOM (CFCALL_ID,FTYPE_ID,FELEM_ID,EXEC_ORDER) VALUES (34,37,37,1);
--INSERT INTO CFG_CFBOM (CFCALL_ID,FTYPE_ID,FELEM_ID,EXEC_ORDER) VALUES (34,37,26,2);
--No CFG_GNRCP, CFG_VARIANT, LOG_OBS_FEAT
DELETE FROM CFG_CFBOM WHERE CFCALL_ID=34 AND FTYPE_ID=37 AND FELEM_ID=37 AND EXEC_ORDER=1;
DELETE FROM CFG_CFBOM WHERE CFCALL_ID=34 AND FTYPE_ID=37 AND FELEM_ID=26 AND EXEC_ORDER=2;

RENAME TABLE CFG_GNRCP TO  CFG_GNRCP_UNUSED;
RENAME TABLE CFG_VARIANT TO  CFG_VARIANT_UNUSED;
DROP TABLE LOG_OBS_FEAT;


--ALTER TABLE LIB_FEAT   MODIFY FEAT_DESC VARCHAR(150);
ALTER TABLE LIB_FEAT ALTER COLUMN FEAT_DESC SET DATA TYPE VARCHAR(150);


UPDATE SRD_PRODUCT_VERSIONS SET VERSION='4.2.0.0' WHERE PRODUCT='PIPELINE';
