<%@LANGUAGE="VBSCRIPT"%> <% '===================================================== '| | '| Build Order | '| | '===================================================== %> <% Option explicit ' Good idea to set when using redirect Response.Expires = 0 ' always load the page, dont store %> <% 'To enable the script timeout to 20 mins Server.ScriptTimeout=1200 %> <% ' Make sure rtag_id is always present If Request("rtag_id") = "" Then Response.Redirect("index.asp") End If %> <% '------------ ACCESS CONTROL ------------------ %> <% '------------ Variable Definition ------------- Dim rsOrder Dim parPv_id 'Dim parMinEnv ' show/hide whole environment '------------ Constants Declaration ----------- Const UP_THE_TREE = 1 Const DOWN_THE_TREE = -1 '------------ Variable Init ------------------- Set pkgInfoHash = CreateObject("Scripting.Dictionary") parPv_id = QStrPar("pv_id") 'parMinEnv = Get_parMinEnv ( QStrPar("minenv") ) '---------------------------------------------- %> <% Call Rebuild_Environment ( parRtag_id ) %> <% Function Get_Build_Order ( nRtag_id ) Get_Build_Order = _ " SELECT bo.step_num, pv.pv_id, pkg.pkg_name, pv.pkg_version, pv.v_ext, bo.UNRESOLVED "&_ " FROM build_order bo,"&_ " package_versions pv,"&_ " packages pkg"&_ " WHERE bo.RTAG_ID = "& nRtag_id &_ " AND bo.pv_id = pv.pv_id"&_ " AND pv.pkg_id = pkg.pkg_id"&_ " ORDER BY bo.STEP_NUM, UPPER(pkg.pkg_name)" End Function Function Indent Indent = "" End Function Function TabsFromStart ( SStabs ) Dim widthimg widthimg = SStabs * 27 TabsFromStart = "" End Function Sub Generate_Build_Tree ( nRtag_id, outSessionNum ) OraDatabase.Parameters.Add "RTAG_ID", nRtag_id, ORAPARM_INPUT, ORATYPE_NUMBER OraDatabase.Parameters.Add "SESSION_NUM", 0, ORAPARM_OUTPUT, ORATYPE_NUMBER objEH.TryORA ( OraSession ) On Error Resume Next OraDatabase.ExecuteSQL _ " BEGIN Build_Tree ( :RTAG_ID, :SESSION_NUM ); END;" objEH.CatchORA ( OraSession ) outSessionNum = OraDatabase.Parameters("SESSION_NUM").Value OraDatabase.Parameters.Remove "RTAG_ID" OraDatabase.Parameters.Remove "SESSION_NUM" End Sub Sub Delete_Build_Tree ( nSessionNum ) objEH.TryORA ( OraSession ) On Error Resume Next OraDatabase.ExecuteSQL _ " DELETE FROM TEMP_TREE_BROWSE WHERE session_num = "& nSessionNum objEH.CatchORA ( OraSession ) End Sub %> Release Manager
<%'Call RenderPackageProperties ()%>
 
<%'Call Generate_Tab_Menu ( TABarray1, "Build Order", "orange" )%>
 
 
<%If IsNull(rsOrder("UNRESOLVED")) Then%> <%Else%> <%End If%>
Steps   <% Dim currLevel, SessionNum, link, stepNum currLevel = 0 stepNum = 0 Call Generate_Build_Tree ( parRtag_id, SessionNum ) ' Generate Tree %> <%Set rsOrder = OraDatabase.DbCreateDynaset( Get_Build_Order ( parRtag_id ), cint(0))%> <%Do While ((NOT rsOrder.BOF) AND (NOT rsOrder.EOF))%> <%link = "dependencies.asp?pv_id="& rsOrder("pv_id") &"&rtag_id="& parRtag_id%> <%If currLevel <> CInt( rsOrder("step_num") ) Then%> <% currLevel = CInt( rsOrder("step_num") ) stepNum = stepNum + 1 %>
Circular dependency detected!
background="images/bg_form_lightbluedark.gif"<%Else%>bgcolor="#FF3C3C"<%End If%> class="lbox_ttl"><%=stepNum%> bgcolor="#FFECEC"<%End If%>><%=rsOrder("pkg_name") &"  "& rsOrder("v_ext")%>
<%Else%> <%=rsOrder("pkg_name") &"  "& rsOrder("v_ext")%>
<%End If%> <%rsOrder.MoveNext Loop%> <% ' Clean up temporary table Call Delete_Build_Tree ( SessionNum ) ' Clean UP %>