<%@LANGUAGE="VBSCRIPT"%> <% '===================================================== '| | '| REPORT | '| Escrow | '===================================================== %> <% Option explicit ' Good idea to set when using redirect Response.Expires = 0 ' always load the page, dont store 'To enable the script timeout to 10 mins Server.ScriptTimeout=600 %> <% '------------ ACCESS CONTROL ------------------ %> <% '------------ Variable Definition ------------- Dim rsQry Dim rsTemp Dim parPv_id, parExt Dim objReleaseContent Dim aReleaseContent Dim objPackageDetails Dim BldStd Dim outobjDetails Dim pvIdList Dim dpv_id '------------ Constants Declaration ----------- '------------ Variable Init ------------------- parBom_id = Request("bom_id") parExt = Request("ext") Set objReleaseContent = CreateObject("Scripting.Dictionary") Set objPackageDetails = CreateObject("Scripting.Dictionary") Set outobjDetails = CreateObject("Scripting.Dictionary") '---------------------------------------------- %> <% '---------------------------------------------------------------------------------------------------------------------------------------- Sub GetPackageInformation ( nPv_id, ByRef oPackageDetails ) Dim rsQry, query query = _ " SELECT pkg.pkg_name, pv.* "&_ " FROM PACKAGES pkg,"&_ " PACKAGE_VERSIONS pv"&_ " WHERE pv.pv_id = "& nPv_id &_ " AND pv.pkg_id = pkg.pkg_id " Set rsQry = OraDatabase.DbCreateDynaset( query, 0) oPackageDetails.RemoveAll If (NOT rsQry.BOF) AND (NOT rsQry.EOF) Then oPackageDetails("pkg_name") = rsQry("pkg_name") oPackageDetails("pkg_version") = rsQry("pkg_version") oPackageDetails("v_ext") = rsQry("v_ext") oPackageDetails("pv_description") = rsQry("pv_description") oPackageDetails("pv_overview") = rsQry("pv_overview") oPackageDetails("src_path") = rsQry("src_path") oPackageDetails("pkg_label") = rsQry("pkg_label") oPackageDetails("is_build_env_required") = rsQry("is_build_env_required") End If rsQry.Close() Set rsQry = Nothing End Sub '---------------------------------------------------------------------------------------------------------------------------------------- Function SQL_Build_Std ( nPv_id ) SQL_Build_Std = _ " SELECT bs.bs_name"&_ " FROM RELEASE_MANAGER.PACKAGE_VERSIONS pv,"&_ " RELEASE_MANAGER.BUILD_STANDARDS bs"&_ " WHERE pv.PV_ID = "& nPv_id &_ " AND pv.BS_ID = bs.BS_ID " End Function '---------------------------------------------------------------------------------------------------------------------------------------- Function SQL_Build_Env ( nPv_id ) SQL_Build_Env = _ " SELECT bm.bm_name"&_ " FROM RELEASE_MANAGER.PACKAGE_BUILD_INFO pbi,"&_ " RELEASE_MANAGER.BUILD_MACHINES bm"&_ " WHERE pbi.PV_ID = "& nPv_id &_ " AND pbi.BM_ID = bm.BM_ID "&_ " ORDER BY UPPER(bm.BM_NAME) " End Function '---------------------------------------------------------------------------------------------------------------------------------------- Function SQL_Modules (nPv_idList) SQL_Modules = _ "SELECT DISTINCT"&_ " qry.DPV_ID "&_ " FROM ("&_ " SELECT dep.*,"&_ " LEVEL AS LEVEL_NUM"&_ " FROM PACKAGE_DEPENDENCIES dep"&_ " START WITH dep.PV_ID IN ( "& nPv_idList &" ) "&_ " CONNECT BY PRIOR dep.DPV_ID = dep.PV_ID"&_ " ) qry,"&_ " PACKAGES pkg,"&_ " PACKAGE_VERSIONS pv"&_ " WHERE qry.PV_ID = pv.PV_ID AND pv.PKG_ID = pkg.PKG_ID" End Function '---------------------------------------------------------------------------------------------------------------------------------------- Function SQL_Build_Dependencies ( nPv_id ) SQL_Build_Dependencies = _ " SELECT dpkg.pkg_name, dpv.pkg_version"&_ " FROM PACKAGE_DEPENDENCIES dep,"&_ " PACKAGES dpkg,"&_ " PACKAGE_VERSIONS dpv"&_ " WHERE dep.pv_id = "& nPv_id &_ " AND dep.DPV_ID = dpv.pv_id"&_ " AND dpv.pkg_id = dpkg.pkg_id "&_ " ORDER BY UPPER(dpkg.pkg_name) " End Function '---------------------------------------------------------------------------------------------------------------------------------------- Sub GetReleaseContent ( nBom_id, ByRef oReleaseContent ) Dim rsQry, query query = _ " SELECT qry.prod_id"&_ " FROM ("&_ " SELECT DISTINCT"&_ " osc.PROD_ID,"&_ " pkg.pkg_name,"&_ " pv.pkg_version,"&_ " 1 as seq_num"&_ " FROM bom_contents bc,"&_ " operating_systems os, "&_ " os_contents osc,"&_ " PACKAGES pkg,"&_ " PACKAGE_VERSIONS pv,"&_ " PRODUCT_DETAILS pd"&_ " WHERE osc.os_id = os.os_id "&_ " AND os.node_id = bc.node_id"&_ " AND bc.bom_id = "& nBom_id &_ " AND pd.PROD_ID (+) = osc.PROD_ID"&_ " AND pv.pkg_id = pkg.pkg_id"&_ " AND osc.prod_id = pv.pv_id "&_ " AND (pd.is_rejected IS NULL or pd.IS_REJECTED != 'Y') "&_ " UNION "&_ " SELECT DISTINCT bec.prod_id, pkg.pkg_name, pkg_version, 2 as seq_num"&_ " FROM boms bm,"&_ " bom_contents bc,"&_ " network_nodes nn,"&_ " operating_systems os,"&_ " os_base_env obe,"&_ " base_env_contents bec,"&_ " PACKAGES pkg,"&_ " package_versions pv,"&_ " base_env be,"&_ " bos_types bt,"&_ " PRODUCT_DETAILS pd"&_ " WHERE bm.bom_id = "& nBom_id &_ " AND bm.bom_id = bc.bom_id"&_ " AND nn.node_id = bc.node_id"&_ " AND os.node_id = nn.node_id"&_ " AND obe.os_id = os.os_id"&_ " AND pd.PROD_ID (+) = bec.PROD_ID"&_ " AND (pd.is_rejected IS NULL or pd.IS_REJECTED != 'Y') "&_ " AND bec.base_env_id = obe.base_env_id"&_ " AND bec.prod_id = pv.pv_id"&_ " AND pkg.pkg_id = pv.pkg_id"&_ " AND be.base_env_id = obe.base_env_id"&_ " AND bt.bos_id = be.bos_id"&_ " ) qry "&_ " ORDER BY qry.seq_num, UPPER(qry.pkg_name), UPPER(qry.pkg_version)" Set rsQry = OraDatabase.DbCreateDynaset( query, 0) While (NOT rsQry.BOF) AND (NOT rsQry.EOF) oReleaseContent( CStr( rsQry("prod_id")) ) = "" rsQry.MoveNext() WEnd rsQry.Close() Set rsQry = Nothing End Sub '---------------------------------------------------------------------------------------------------------------------------------------- %> <% '---------------------- Run Before Page --------------------------- Call GetReleaseContent ( parBom_id, objReleaseContent ) Call GetBomDetails (parBom_id, outobjDetails) outobjDetails.Item("bom_full_version") = outobjDetails.Item("bom_name")&" "& outobjDetails.Item("bom_version") &"."& outobjDetails.Item("bom_lifecycle") '------------------------------------------------------------------ %> Deployment Manager - Escrow Report
<%=outobjDetails.Item("bom_full_version")%>
<% Set outobjDetails = Nothing aReleaseContent = objReleaseContent.Keys For Each parPv_id In aReleaseContent pvIdList = pvIdList + parPv_id + "," Call GetPackageInformation ( parPv_id, objPackageDetails ) Response.Flush %> ">

<%=objPackageDetails.Item("pkg_name")%>

Version: <%=objPackageDetails.Item("pkg_version")%>
Source Path: <%=objPackageDetails.Item("src_path")%>
Source Label: <%=objPackageDetails.Item("pkg_label")%>
Short Description: <%=NewLine_To_BR ( To_HTML( objPackageDetails.Item("pv_description") ) )%>
Package Overview: <%=NewLine_To_BR ( To_HTML( objPackageDetails.Item("pv_overview") ) )%>
General Sublicense Material: <%If objPackageDetails.Item("v_ext") = parExt Then%>Yes<%Else%>No<%End If%>
Build Environment: <%If objPackageDetails.Item("is_build_env_required") = enumDB_NO Then%>Not Required.<%End If%> <% '--- Get Build Env Details Set rsQry = OraDatabase.DbCreateDynaset( SQL_Build_Std ( parPv_id ), cint(0)) If ((NOT rsQry.BOF) AND (NOT rsQry.EOF)) Then BldStd = rsQry("bs_name") rsQry.Close Set rsQry = OraDatabase.DbCreateDynaset( SQL_Build_Env ( parPv_id ), cint(0)) %>
    <% While (NOT rsQry.BOF) AND (NOT rsQry.EOF) %>
  • <%=BldStd%>, <%=rsQry("bm_name")%>
  • <%rsQry.MoveNext WEnd %>
<%End If%>
Build Dependencies: <% '--- Get Build Dependencies Details Set rsQry = OraDatabase.DbCreateDynaset( SQL_Build_Dependencies ( parPv_id ), cint(0)) %> <%If rsQry.RecordCount < 1 Then%> <%End If%> <% While (NOT rsQry.BOF) AND (NOT rsQry.EOF) %> <%rsQry.MoveNext WEnd %>
Software Component Version
No Dependencies
"><%=rsQry("pkg_name")%> <%=rsQry("pkg_version")%>


<% 'Exit For Next pvIdList = Mid(pvIdList, 1, Len(pvIdList) - 1) Set rsTemp = OraDatabase.DbCreateDynaset( SQL_Modules ( pvIdList ), cint(0)) %>
Modules
<% While (NOT rsTemp.BOF) AND (NOT rsTemp.EOF) dpv_id = rsTemp("dpv_id") Call GetPackageInformation ( dpv_id, objPackageDetails ) Response.Flush %> ">

<%=objPackageDetails.Item("pkg_name")%>

Version: <%=objPackageDetails.Item("pkg_version")%>
Source Path: <%=objPackageDetails.Item("src_path")%>
Source Label: <%=objPackageDetails.Item("pkg_label")%>
Short Description: <%=NewLine_To_BR ( To_HTML( objPackageDetails.Item("pv_description") ) )%>
Package Overview: <%=NewLine_To_BR ( To_HTML( objPackageDetails.Item("pv_overview") ) )%>
General Sublicense Material: <%If objPackageDetails.Item("v_ext") = parExt Then%>Yes<%Else%>No<%End If%>
Build Environment: <%If objPackageDetails.Item("is_build_env_required") = enumDB_NO Then%>Not Required.<%End If%> <% '--- Get Build Env Details Set rsQry = OraDatabase.DbCreateDynaset( SQL_Build_Env ( dpv_id ), cint(0)) %>
    <% While (NOT rsQry.BOF) AND (NOT rsQry.EOF) %>
  • <%=rsQry("be_name")%>
  • <%rsQry.MoveNext WEnd %>
Build Dependencies: <% '--- Get Build Dependencies Details Set rsQry = OraDatabase.DbCreateDynaset( SQL_Build_Dependencies ( dpv_id ), cint(0)) %> <%If rsQry.RecordCount < 1 Then%> <%End If%> <% While (NOT rsQry.BOF) AND (NOT rsQry.EOF) %> <%rsQry.MoveNext WEnd %>
Software Component Version
No Dependencies
"><%=rsQry("pkg_name")%> <%=rsQry("pkg_version")%>


<% rsTemp.MoveNext WEnd rsTemp.Close() Set rsTemp = Nothing %>