Rev 64 | Blame | Compare with Previous | Last modification | View Log | RSS feed
/* Release Diff */SELECT qry.*FROM (/* Removed Patches*/SELECT 'R' AS CHANGE_TYPE,oldbom.PKG_ID,oldbom.PV_ID AS PV_ID_A,oldbom.PKG_NAME AS PKG_NAME_A,oldbom.PKG_VERSION AS PKG_VERSION_A,oldbom.NODE_NAME AS NODE_NAME_A,oldbom.OS_NAME AS OS_NAME_A,oldbom.OS_ID AS OS_ID_A,oldbom.NODE_ID AS NODE_ID_A,NULL AS PV_ID_B,NULL AS PKG_NAME_B,NULL AS PKG_VERSION_B,NULL AS NODE_NAME_B,NULL AS OS_NAME_B,NULL AS OS_ID_B,NULL AS NODE_ID_BFROM (SELECT osc.PROD_ID,nn.NODE_NAME ||'_'|| os.OS_NAME AS PK,pv.PKG_VERSION, pv.PV_ID, pkg.PKG_NAME, pv.PKG_ID, nn.NODE_NAME AS NODE_NAME_BFROM OS_CONTENTS osc,OPERATING_SYSTEMS os,NETWORK_NODES nn,BOM_CONTENTS bc,PACKAGE_VERSIONS pv,PACKAGES pkgWHERE osc.OS_ID = os.OS_IDAND os.NODE_ID = nn.NODE_IDAND bc.NODE_ID = nn.NODE_IDAND osc.PROD_ID = pv.PV_IDAND NOT pv.IS_PATCH IS NULLAND bc.BOM_ID = :SBOM_BAND pkg.PKG_ID = pv.PKG_ID) newbom,(SELECT osc.PROD_ID,nn.NODE_NAME ||'_'|| os.OS_NAME AS PK, nn.NODE_ID, os.OS_ID,pv.PKG_VERSION, pv.PV_ID, pkg.PKG_NAME, pv.PKG_ID, nn.NODE_NAME, os.OS_NAMEFROM OS_CONTENTS osc,OPERATING_SYSTEMS os,NETWORK_NODES nn,BOM_CONTENTS bc,PACKAGE_VERSIONS pv,PACKAGES pkgWHERE osc.OS_ID = os.OS_IDAND os.NODE_ID = nn.NODE_IDAND bc.NODE_ID = nn.NODE_IDAND osc.PROD_ID = pv.PV_IDAND NOT pv.IS_PATCH IS NULLAND bc.BOM_ID = :SBOM_AAND pkg.PKG_ID = pv.PKG_ID) oldbomWHERE newbom.PK (+) = oldbom.PKAND newbom.PROD_ID (+) = oldbom.PROD_IDAND newbom.PK IS NULLAND :REMOVED IS NULLUNION/* Removed Products*/SELECT 'R' AS CHANGE_TYPE,oldbom.PKG_ID,oldbom.PV_ID AS PV_ID_A,oldbom.PKG_NAME AS PKG_NAME_A,oldbom.PKG_VERSION AS PKG_VERSION_A,oldbom.NODE_NAME_A,oldbom.OS_NAME_A,oldbom.OS_ID AS OS_ID_A,oldbom.NODE_ID AS NODE_ID_A,NULL AS PV_ID_B,NULL AS PKG_NAME_B,NULL AS PKG_VERSION_B,NULL AS NODE_NAME_B,NULL AS OS_NAME_B,NULL AS OS_ID_B,NULL AS NODE_ID_BFROM (SELECT osc.PROD_ID,nn.NODE_NAME ||'_'|| os.OS_NAME AS PK,pv.PKG_ID, pv.PKG_VERSION, pkg.PKG_NAME, pv.PV_ID, nn.NODE_NAME AS NODE_NAME_B,NVL( pv.V_EXT, '|LINK_A_NULL|' ) AS V_EXTFROM OS_CONTENTS osc,OPERATING_SYSTEMS os,NETWORK_NODES nn,BOM_CONTENTS bc,PACKAGE_VERSIONS pv,PACKAGES pkgWHERE osc.OS_ID = os.OS_IDAND os.NODE_ID = nn.NODE_IDAND bc.NODE_ID = nn.NODE_IDAND osc.PROD_ID = pv.PV_IDAND pv.IS_PATCH IS NULLAND bc.BOM_ID = :SBOM_BAND pkg.PKG_ID = pv.PKG_ID) newbom,(SELECT osc.PROD_ID,nn.NODE_NAME ||'_'|| os.OS_NAME AS PK, nn.NODE_ID, os.OS_ID,pv.PKG_ID, pv.PKG_VERSION, pkg.PKG_NAME, pv.PV_ID, nn.NODE_NAME AS NODE_NAME_A, os.OS_NAME AS OS_NAME_A,NVL( pv.V_EXT, '|LINK_A_NULL|' ) AS V_EXTFROM OS_CONTENTS osc,OPERATING_SYSTEMS os,NETWORK_NODES nn,BOM_CONTENTS bc,PACKAGE_VERSIONS pv,PACKAGES pkgWHERE osc.OS_ID = os.OS_IDAND os.NODE_ID = nn.NODE_IDAND bc.NODE_ID = nn.NODE_IDAND osc.PROD_ID = pv.PV_IDAND pv.IS_PATCH IS NULLAND bc.BOM_ID = :SBOM_AAND pkg.PKG_ID = pv.PKG_ID) oldbomWHERE newbom.PK (+) = oldbom.PK--AND newbom.PROD_ID (+) = oldbom.PROD_IDAND newbom.PKG_ID (+) = oldbom.PKG_IDAND newbom.V_EXT (+) = oldbom.V_EXTAND newbom.PK IS NULLAND :REMOVED IS NULLUNION/* Added Patches */SELECT 'A' AS CHANGE_TYPE,newbom.PKG_ID,NULL AS PV_ID_A,NULL AS PKG_NAME_A,NULL AS PKG_VERSION_A,NULL AS NODE_NAME_A,NULL AS OS_NAME_A,NULL AS OS_ID_A,NULL AS NODE_ID_A,newbom.PV_ID AS PV_ID_B,newbom.PKG_NAME AS PKG_NAME_B,newbom.PKG_VERSION AS PKG_VERSION_B,newbom.NODE_NAME_B,newbom.OS_NAME_B,newbom.OS_ID AS OS_ID_B,newbom.NODE_ID AS NODE_ID_BFROM (SELECT osc.PROD_ID,nn.NODE_NAME ||'_'|| os.OS_NAME AS PK, nn.NODE_ID, os.OS_ID,pv.PKG_VERSION, pv.PV_ID, pkg.PKG_NAME, pv.PKG_ID, nn.NODE_NAME AS NODE_NAME_B, os.OS_NAME AS OS_NAME_BFROM OS_CONTENTS osc,OPERATING_SYSTEMS os,NETWORK_NODES nn,BOM_CONTENTS bc,PACKAGE_VERSIONS pv,PACKAGES pkgWHERE osc.OS_ID = os.OS_IDAND os.NODE_ID = nn.NODE_IDAND bc.NODE_ID = nn.NODE_IDAND osc.PROD_ID = pv.PV_IDAND NOT pv.IS_PATCH IS NULLAND bc.BOM_ID = :SBOM_BAND pkg.PKG_ID = pv.PKG_ID) newbom,(SELECT osc.PROD_ID,nn.NODE_NAME ||'_'|| os.OS_NAME AS PKFROM OS_CONTENTS osc,OPERATING_SYSTEMS os,NETWORK_NODES nn,BOM_CONTENTS bc,PACKAGE_VERSIONS pvWHERE osc.OS_ID = os.OS_IDAND os.NODE_ID = nn.NODE_IDAND bc.NODE_ID = nn.NODE_IDAND osc.PROD_ID = pv.PV_IDAND NOT pv.IS_PATCH IS NULLAND bc.BOM_ID = :SBOM_A) oldbomWHERE newbom.PK = oldbom.PK (+)AND newbom.PROD_ID = oldbom.PROD_ID (+)AND oldbom.PK IS NULLAND :ADDED IS NULLUNION/* Added Products */SELECT 'A' AS CHANGE_TYPE,newbom.PKG_ID,NULL AS PV_ID_A,NULL AS PKG_NAME_A,NULL AS PKG_VERSION_A,NULL AS NODE_NAME_A,NULL AS OS_NAME_A,NULL AS OS_ID_A,NULL AS NODE_ID_A,newbom.PV_ID AS PV_ID_B,newbom.PKG_NAME AS PKG_NAME_B,newbom.PKG_VERSION AS PKG_VERSION_B,newbom.NODE_NAME_B,newbom.OS_NAME_B,newbom.OS_ID AS OS_ID_B,newbom.NODE_ID AS NODE_ID_BFROM (SELECT osc.PROD_ID,nn.NODE_NAME ||'_'|| os.OS_NAME AS PK, nn.NODE_ID, os.OS_ID,pv.PKG_ID, pv.PKG_VERSION, pkg.PKG_NAME, pv.PV_ID, nn.NODE_NAME AS NODE_NAME_B, os.OS_NAME AS OS_NAME_B,NVL( pv.V_EXT, '|LINK_A_NULL|' ) AS V_EXTFROM OS_CONTENTS osc,OPERATING_SYSTEMS os,NETWORK_NODES nn,BOM_CONTENTS bc,PACKAGE_VERSIONS pv,PACKAGES pkgWHERE osc.OS_ID = os.OS_IDAND os.NODE_ID = nn.NODE_IDAND bc.NODE_ID = nn.NODE_IDAND osc.PROD_ID = pv.PV_IDAND pv.IS_PATCH IS NULLAND bc.BOM_ID = :SBOM_BAND pkg.PKG_ID = pv.PKG_ID) newbom,(SELECT osc.PROD_ID,nn.NODE_NAME ||'_'|| os.OS_NAME AS PK,pv.PKG_ID,NVL( pv.V_EXT, '|LINK_A_NULL|' ) AS V_EXTFROM OS_CONTENTS osc,OPERATING_SYSTEMS os,NETWORK_NODES nn,BOM_CONTENTS bc,PACKAGE_VERSIONS pvWHERE osc.OS_ID = os.OS_IDAND os.NODE_ID = nn.NODE_IDAND bc.NODE_ID = nn.NODE_IDAND osc.PROD_ID = pv.PV_IDAND pv.IS_PATCH IS NULLAND bc.BOM_ID = :SBOM_A) oldbomWHERE newbom.PK = oldbom.PK (+)--AND newbom.PROD_ID = oldbom.PROD_ID (+)AND newbom.PKG_ID = oldbom.PKG_ID (+)AND newbom.V_EXT = oldbom.V_EXT (+)AND oldbom.PROD_ID IS NULLAND :ADDED IS NULLUNION/* UPDATED Packages */SELECT (CASE WHEN ra.PV_ID < rb.PV_ID THEN'UW'ELSE'U'END) AS CHANGE_TYPE,ra.PKG_ID,ra.PV_ID AS PV_ID_A,ra.PKG_NAME AS PKG_NAME_A,ra.PKG_VERSION AS PKG_VERSION_A,ra.NODE_NAME_A,ra.OS_NAME_A,ra.OS_ID AS OS_ID_A,ra.NODE_ID AS NODE_ID_A,rb.PV_ID AS PV_ID_B,rb.PKG_NAME AS PKG_NAME_B,rb.PKG_VERSION AS PKG_VERSION_B,rb.NODE_NAME_B,rb.OS_NAME_B,rb.OS_ID AS OS_ID_B,rb.NODE_ID AS NODE_ID_BFROM (SELECT osc.PROD_ID, pv.PV_ID, pv.V_EXT, pv.PKG_VERSION, pkg.PKG_NAME, pv.PKG_ID, nn.NODE_NAME AS NODE_NAME_A,os.OS_NAME AS OS_NAME_A, os.OS_ID, nn.NODE_IDFROM OS_CONTENTS osc,OPERATING_SYSTEMS os,NETWORK_NODES nn,BOM_CONTENTS bc,PACKAGE_VERSIONS pv,PACKAGES pkgWHERE osc.OS_ID = os.OS_IDAND os.NODE_ID = nn.NODE_IDAND bc.NODE_ID = nn.NODE_IDAND osc.PROD_ID = pv.PV_IDAND pv.IS_PATCH IS NULLAND bc.BOM_ID = :SBOM_AAND pkg.PKG_ID = pv.PKG_ID) ra,(SELECT osc.PROD_ID, pv.PV_ID, pv.V_EXT, pv.PKG_VERSION, pkg.PKG_NAME, pv.PKG_ID, nn.NODE_NAME AS NODE_NAME_B,os.OS_NAME AS OS_NAME_B, os.OS_ID, nn.NODE_IDFROM OS_CONTENTS osc,OPERATING_SYSTEMS os,NETWORK_NODES nn,BOM_CONTENTS bc,PACKAGE_VERSIONS pv,PACKAGES pkgWHERE osc.OS_ID = os.OS_IDAND os.NODE_ID = nn.NODE_IDAND bc.NODE_ID = nn.NODE_IDAND osc.PROD_ID = pv.PV_IDAND pv.IS_PATCH IS NULLAND bc.BOM_ID = :SBOM_BAND pv.PKG_ID = pkg.PKG_IDAND osc.PROD_ID NOT IN (SELECT osc.PROD_IDFROM OS_CONTENTS osc,OPERATING_SYSTEMS os,NETWORK_NODES nn,BOM_CONTENTS bc,PACKAGE_VERSIONS pvWHERE osc.OS_ID = os.OS_IDAND os.NODE_ID = nn.NODE_IDAND bc.NODE_ID = nn.NODE_IDAND osc.PROD_ID = pv.PV_IDAND pv.IS_PATCH IS NULLAND bc.BOM_ID = :SBOM_A)) rbWHERE ra.PKG_ID = rb.PKG_IDAND NVL( ra.V_EXT, '|LINK_A_NULL|') = NVL( rb.V_EXT, '|LINK_A_NULL|')AND ra.PV_ID != rb.PV_IDAND :UPDATED IS NULLAND ra.NODE_NAME_A = rb.NODE_NAME_BAND ra.OS_NAME_A = rb.OS_NAME_B) qryORDER BY UPPER(qry.PKG_NAME_A)