BDNA Data Platform 5.4 July 2017 (SQL Server) CAT_SW_PRODUCT - Software information table
|
View Definition:
CREATE VIEW CAT_SW_PRODUCT AS SELECT vw.CAT_SW_PRODUCT_ID, vw.CREATE_DATE, vw.LAST_MODIFIED_DATE, vw.CAT_MANUFACTURER_ID, vw.SOFTWARE, vw.FAMILY, vw.COMPONENT, vw.ALIAS, vw.IS_SUITE, vw.PLICSABLE, vw.NFAMILY, prod_tax.CAT_TAXONOMY2012_ID, vw.VENDOR_CATEGORY, vw.DESUPFLAG, vw.DISCONTINUEDFLAG, vw.TO_BE_DELETED, vw.TO_BE_DELETED_ON, vw.DELETE_REASON, vw.PRIVATE_FLAG, vw.IS_PRIVATE, vw.PRIVATE_TYPE, vw.REPLACEMENT_ID FROM ( SELECT f_tcat.CAT_SW_PRODUCT_ID,f_tcat.CREATE_DATE,f_tcat.LAST_MODIFIED_DATE,f_tcat.CAT_MANUFACTURER_ID,f_tcat.SOFTWARE,f_tcat.FAMILY,f_tcat.COMPONENT,f_tcat.ALIAS,f_tcat.IS_SUITE,f_tcat.PLICSABLE,f_tcat.NFAMILY,f_tcat.CAT_TAXONOMY2012_ID,f_tcat.VENDOR_CATEGORY,f_tcat.DESUPFLAG,f_tcat.DISCONTINUEDFLAG,f_tcat.TO_BE_DELETED,f_tcat.TO_BE_DELETED_ON,f_tcat.DELETE_REASON,f_tcat.PRIVATE_FLAG,f_tcat.IS_PRIVATE,f_tcat.PRIVATE_TYPE,f_tcat.REPLACEMENT_ID from TCAT_SW_PRODUCT f_tcat where not exists (select 1 from TPC_SW_PRODUCT tpc_tab where tpc_tab.CAT_SW_PRODUCT_ID=f_tcat.CAT_SW_PRODUCT_ID ) union all SELECT * FROM ( SELECT COALESCE(tpc.CAT_SW_PRODUCT_ID,tcat.CAT_SW_PRODUCT_ID) CAT_SW_PRODUCT_ID,COALESCE(tpc.CREATE_DATE,tcat.CREATE_DATE) CREATE_DATE,CASE WHEN ISNULL(tpc.LAST_MODIFIED_DATE,'31-DEC-1900') > tcat.LAST_MODIFIED_DATE THEN tpc.LAST_MODIFIED_DATE
WHEN ISNULL(tpc.LAST_MODIFIED_DATE,'31-DEC-1900') < tcat.LAST_MODIFIED_DATE THEN tcat.LAST_MODIFIED_DATE
ELSE tcat.LAST_MODIFIED_DATE
END LAST_MODIFIED_DATE, COALESCE(tpc.CAT_MANUFACTURER_ID,tcat.CAT_MANUFACTURER_ID) CAT_MANUFACTURER_ID,COALESCE(cast(tpc.SOFTWARE as varchar(255)) ,cast(tcat.SOFTWARE as varchar(255)) ) SOFTWARE,COALESCE(cast(tpc.FAMILY as varchar(255)) ,cast(tcat.FAMILY as varchar(255)) ) FAMILY,COALESCE(cast(tpc.COMPONENT as varchar(64)) ,cast(tcat.COMPONENT as varchar(64)) ) COMPONENT,COALESCE(tpc.ALIAS,tcat.ALIAS) ALIAS,COALESCE(tpc.IS_SUITE,tcat.IS_SUITE) IS_SUITE,COALESCE(tpc.PLICSABLE,tcat.PLICSABLE) PLICSABLE,COALESCE(tpc.NFAMILY,tcat.NFAMILY) NFAMILY,COALESCE(tpc.CAT_TAXONOMY2012_ID,tcat.CAT_TAXONOMY2012_ID) CAT_TAXONOMY2012_ID,COALESCE(tpc.VENDOR_CATEGORY,tcat.VENDOR_CATEGORY) VENDOR_CATEGORY,COALESCE(tpc.DESUPFLAG,tcat.DESUPFLAG) DESUPFLAG,COALESCE(tpc.DISCONTINUEDFLAG,tcat.DISCONTINUEDFLAG) DISCONTINUEDFLAG,COALESCE(tpc.TO_BE_DELETED,tcat.TO_BE_DELETED) TO_BE_DELETED,COALESCE(tpc.TO_BE_DELETED_ON,tcat.TO_BE_DELETED_ON) TO_BE_DELETED_ON,COALESCE(tpc.DELETE_REASON,tcat.DELETE_REASON) DELETE_REASON,COALESCE(uuid.PRIVATE_FLAG,tcat.PRIVATE_FLAG) PRIVATE_FLAG, COALESCE(uuid.IS_PRIVATE,tcat.IS_PRIVATE) IS_PRIVATE, COALESCE(uuid.PRIVATE_TYPE,tcat.PRIVATE_TYPE) PRIVATE_TYPE, COALESCE(tpc.REPLACEMENT_ID,tcat.REPLACEMENT_ID) REPLACEMENT_ID FROM TPC_SW_PRODUCT tpc LEFT JOIN TCAT_SW_PRODUCT tcat ON tcat.CAT_SW_PRODUCT_ID = tpc.CAT_SW_PRODUCT_ID INNER JOIN TPC_UUID uuid ON tpc.CAT_SW_PRODUCT_ID = uuid.CAT_UUID_ID AND SIGN(tpc.CAT_SW_PRODUCT_ID )!= -1 ) cat_tab UNION ALL SELECT tpc.CAT_SW_PRODUCT_ID,tpc.CREATE_DATE,tpc.LAST_MODIFIED_DATE,tpc.CAT_MANUFACTURER_ID,cast(tpc.SOFTWARE as varchar(255)) SOFTWARE,cast(tpc.FAMILY as varchar(255)) FAMILY,cast(tpc.COMPONENT as varchar(64)) COMPONENT,tpc.ALIAS,tpc.IS_SUITE,tpc.PLICSABLE,tpc.NFAMILY,tpc.CAT_TAXONOMY2012_ID,tpc.VENDOR_CATEGORY,tpc.DESUPFLAG,tpc.DISCONTINUEDFLAG,tpc.TO_BE_DELETED,tpc.TO_BE_DELETED_ON,tpc.DELETE_REASON,tpc.PRIVATE_FLAG,tpc.IS_PRIVATE,tpc.PRIVATE_TYPE,tpc.REPLACEMENT_ID FROM TPC_SW_PRODUCT tpc WHERE SIGN(tpc.CAT_SW_PRODUCT_ID )= -1 ) vw INNER JOIN (SELECT rn,CAT_TAG_ID,CAT_SW_PRODUCT_ID,CAT_TAXONOMY2012_ID
FROM (SELECT ROW_NUMBER() OVER (PARTITION BY swtax.CAT_SW_PRODUCT_ID ORDER BY CASE WHEN swtax.TO_BE_DELETED = 1 then -2
WHEN TAG.CAT_TAG_SHORTNAME='IT' then -1
WHEN TAG.CAT_TAG_SHORTNAME='MD' then 0
Possibly Referenced Tables/Views: