<% '===================================================== ' Build Environment '===================================================== %> <% '------------ Variable Definition ------------- Dim parOLshow ' show/hide outer-latest Dim parBshow ' expand/collapse base views Dim parPshow ' expand/collapse personal views Dim parPview ' enable/disable all personal views Dim parDview ' enable/disable deployment view. Dim IMG_locked Dim rsEnvQry Dim pvIdInList Dim checked Dim disabled Dim pkgType Dim SCRIPT_NAME 'Use this here only as the previous one ScriptName is Already Defined '------------ Constants Declaration ----------- Const imgMaximise = "Show view contents." Const imgMinimise = "Hide view contents." Const imgForced = "" Const imgLocked = "" Const hlColor = "#DDDDDD" Const imgAdded = "" Const imgRemoved = "" '------------ Variable Init ------------------- parOLshow = QStrPar("OLshow") parBshow = QStrPar("Bshow") parPshow = QStrPar("Pshow") parPview = QStrPar("Pview") parDview = QStrPar("Dview") '---------------------------------------------- %> <% '------------------------------------------------------------------------------------------------------------------------------------------------ Function GetEnvTab ( sEnvTab ) If sEnvTab <> "" Then GetEnvTab = sEnvTab Response.Cookies(COOKIE_RELEASE_MANAGER_MEMORY)("envtab") = sEnvTab Else If Request.Cookies(COOKIE_RELEASE_MANAGER_MEMORY)("envtab") <> "" Then GetEnvTab = Request.Cookies(COOKIE_RELEASE_MANAGER_MEMORY)("envtab") Else GetEnvTab = enumENVTAB_WORK_IN_PROGRESS Response.Cookies(COOKIE_RELEASE_MANAGER_MEMORY)("envtab") = enumENVTAB_WORK_IN_PROGRESS End If End If End Function '------------------------------------------------------------------------------------------------------------------------------------------------ Sub Display_Env_BaseView ( NNbase_view_id, SSbase_view, BBviewCollapsed, SScontents ) %>
  class="body_scol_thin"<%Else%>class="body_txt"<%End If%>> <%=SSbase_view%>  
style="display:none;"<%Else%>style="display:block;"<%End If%>> <%If NOT BBviewCollapsed Then %> <%=SScontents%> <%Else%> <%=enumLOADING%> <%End If%>

<% End Sub '------------------------------------------------------------------------------------------------------------------------------------------------ Sub Print_View( NNEnvTab, SSviewtype, NNrtag_id, SSshowviews, NNuser_id ) Dim rsView, Query_String 'Dim btn1 Dim tmpURL Dim SSscript Dim qstrPar Dim nViewType Dim nTrueRecordCount Dim nOperation Dim relContentsSTR, viewCollapsed, curr_view_id, view_name If scriptName = "find.asp" Then SSscript = "dependencies.asp" Else SSscript = scriptName End If If SSviewtype = "guest" Then nViewType = 1 qstrPar = "Bshow" ElseIf SSviewtype = "personal" Then nViewType = 2 qstrPar = "Pshow" End If OraDatabase.Parameters.Add "VIEW_TYPE", nViewType, ORAPARM_INPUT, ORATYPE_NUMBER 'OraDatabase.Parameters.Add "VIEW_ID_SHOW_LIST", ShowView( Pipes2Commas( SSshowviews ), SSviewtype ), ORAPARM_INPUT, ORATYPE_VARCHAR2 OraDatabase.Parameters.Add "VIEW_ID_SHOW_LIST", GetShowViewList(), ORAPARM_INPUT, ORATYPE_VARCHAR2 OraDatabase.Parameters.Add "RTAG_ID", NNrtag_id, ORAPARM_INPUT, ORATYPE_NUMBER OraDatabase.Parameters.Add "USER_ID", NNuser_id, ORAPARM_INPUT, ORATYPE_NUMBER OraDatabase.Parameters.Add "TRUE_RECORD_COUNT", NULL, ORAPARM_OUTPUT, ORATYPE_NUMBER OraDatabase.Parameters.Add "RECORD_SET", NULL, ORAPARM_OUTPUT, ORATYPE_CURSOR 'If it's a Deployment View If parDview = "enable" Then ' Decide which environment list is to be displayed to the Integrators/Testers Select Case CInt( NNEnvTab ) Case enumENVTAB_PRODRELEASE OraDatabase.ExecuteSQL "BEGIN PK_ENVIRONMENT.GET_PRODRELEASE_ITEMS ( :RTAG_ID, :TRUE_RECORD_COUNT, :RECORD_SET ); END;" Case enumENVTAB_INTEGRATE OraDatabase.ExecuteSQL "BEGIN PK_ENVIRONMENT.GET_INTEGRATION_ITEMS ( :RTAG_ID, :TRUE_RECORD_COUNT, :RECORD_SET ); END;" Case enumENVTAB_TEST OraDatabase.ExecuteSQL "BEGIN PK_ENVIRONMENT.GET_TEST_ITEMS ( :RTAG_ID, :TRUE_RECORD_COUNT, :RECORD_SET ); END;" Case enumENVTAB_DEPLOY OraDatabase.ExecuteSQL "BEGIN PK_ENVIRONMENT.GET_DEPLOY_ITEMS ( :RTAG_ID, :TRUE_RECORD_COUNT, :RECORD_SET ); END;" Case enumENVTAB_REJECT OraDatabase.ExecuteSQL "BEGIN PK_ENVIRONMENT.GET_REJECT_ITEMS ( :RTAG_ID, :TRUE_RECORD_COUNT, :RECORD_SET ); END;" End Select Else ' Decide which environment list is to be displayed Select Case CInt( NNEnvTab ) Case enumENVTAB_WORK_IN_PROGRESS OraDatabase.ExecuteSQL "BEGIN PK_ENVIRONMENT.GET_WORK_IN_PROGRESS_ITEMS ( :VIEW_TYPE, :USER_ID, :RTAG_ID, :VIEW_ID_SHOW_LIST, :TRUE_RECORD_COUNT, :RECORD_SET ); END;" Case enumENVTAB_PLANNED OraDatabase.ExecuteSQL "BEGIN PK_ENVIRONMENT.GET_PENDING_ITEMS ( :VIEW_TYPE, :USER_ID, :RTAG_ID, :VIEW_ID_SHOW_LIST, :TRUE_RECORD_COUNT, :RECORD_SET ); END;" Case enumENVTAB_RELEASED OraDatabase.ExecuteSQL "BEGIN PK_ENVIRONMENT.GET_RELEASED_ITEMS ( :VIEW_TYPE, :USER_ID, :RTAG_ID, :VIEW_ID_SHOW_LIST, :TRUE_RECORD_COUNT, :RECORD_SET ); END;" Case Else OraDatabase.ExecuteSQL "BEGIN PK_ENVIRONMENT.GET_ENVIRONMENT_ITEMS ( :VIEW_TYPE, :USER_ID, :RTAG_ID, :VIEW_ID_SHOW_LIST, :TRUE_RECORD_COUNT, :RECORD_SET ); END;" End Select End If ' Get Record set from database Set rsView = OraDatabase.Parameters("RECORD_SET").Value nTrueRecordCount = OraDatabase.Parameters("TRUE_RECORD_COUNT").Value OraDatabase.Parameters.Remove "RTAG_ID" OraDatabase.Parameters.Remove "USER_ID" OraDatabase.Parameters.Remove "VIEW_TYPE" OraDatabase.Parameters.Remove "VIEW_ID_SHOW_LIST" OraDatabase.Parameters.Remove "RECORD_SET" OraDatabase.Parameters.Remove "TRUE_RECORD_COUNT" ' Initialise variables If ((NOT rsView.BOF) AND (NOT rsView.EOF)) Then relContentsSTR = "" viewCollapsed = FALSE curr_view_id = rsView("view_id") ' Set current view view_name = rsView("view_name") End If While ((NOT rsView.BOF) AND (NOT rsView.EOF)) '==== Get View Contents ==== If NOT IsNull(rsView.Fields("pv_id")) Then tmpURL = SSscript &"?pv_id="& rsView.Fields("pv_id") &"&rtag_id="& parRtag_id IMG_locked = "" If rsView.Fields("dlocked") = "Y" Then IMG_locked = imgLocked ' DEVI-45275 - Normally, dlocked=Y items are denoted with a padlock icon on the web page. Since we can now merge ' into the pending tab, the dlocked=Y items that end up there would not give any visual indication to the user ' as to why they are present. So, instead of the padlock icon, display the added or removed icon to indicate ' what the intended action is to be, once the pending item is approved. ' Obviously, this functionality does not apply if we are in the deployment view, and only applies if viewing ' the PENDING or ALL environment tabs. ' With regard to the operation value, A = Added, S = Subtracted nOperation = " " If parDview <> "enable" AND (CInt( NNEnvTab ) = enumENVTAB_PLANNED OR CInt( NNEnvTab ) = enumENVTAB_ALL) Then nOperation = rsView.Fields("operation") ' NB. this field is only availble if earlier query was GET_PENDING_ITEMS or GET_ENVIRONMENT_ITEMS If nOperation = "A" Then IMG_locked = imgAdded ElseIf nOperation = "S" Then IMG_locked = imgRemoved End If End If relContentsSTR = relContentsSTR & "" & VBNewLine If rsView("pkg_state") = 0 And rsView.Fields("deprecated_state") <> "" Then relContentsSTR = relContentsSTR & " "& DefineStateIcon ( rsView.Fields("deprecated_state"), rsView("dlocked"), NULL, NULL, pkgInfoHash.Item("build_type"), TRUE ) &""& VBNewLine Else If (parDview <> "enable") AND ( ( CInt(NNEnvTab) = enumENVTAB_PLANNED ) OR ( Request("envtab") = enumENVTAB_PLANNED ) ) Then ' if package version is unlocked, rejected, or pending approval, or is to be added/subtracted to/from the release (DEVI-45275), then If (rsView("dlocked") = "N") OR (rsView("dlocked") = "R") OR (rsView("dlocked") = "P") OR (nOperation = "A") OR (nOperation = "S") Then checked = NULL disabled = NULL ' disable check box if not logged in, or if not in open mode and user has no permission to approve pending If objAccessControl.UserLogedIn Then If ( ReleaseMode <> enumDB_RELEASE_IN_OPEN_MODE ) Then If NOT objAccessControl.IsActive("ApproveForAutoBuild") Then disabled = "disabled" End If End If Else disabled = "disabled" End If Else ' always check and disable the checkbox checked = "checked" disabled = "disabled" End If relContentsSTR = relContentsSTR & " "& VBNewLine Else relContentsSTR = relContentsSTR & " "& DefineStateIcon ( rsView("pkg_state"), rsView("dlocked"), NULL, NULL, pkgInfoHash.Item("build_type"), TRUE ) &""& VBNewLine End If End If relContentsSTR = relContentsSTR & " "& rsView.Fields("pkg_name") &"" & VBNewLine relContentsSTR = relContentsSTR & " "& rsView.Fields("pkg_version") &"" & VBNewLine relContentsSTR = relContentsSTR & " "& IMG_locked &"" relContentsSTR = relContentsSTR & "" & VBNewLine Else 'relContentsSTR = relContentsSTR & "" ' Collapsed view displays dots viewCollapsed = TRUE End If rsView.MoveNext If ((NOT rsView.BOF) AND (NOT rsView.EOF)) Then ' NOT end of the record set If curr_view_id <> rsView("view_id") Then '====== Draw buttons ================================= 'If InStrPipes( SSshowviews, curr_view_id ) Then ' btn1 = ""& imgMinimise &"" 'Else ' btn1 = ""& imgMaximise &"" 'End If '====== Print contents =============================== relContentsSTR = "" & relContentsSTR & "
" Call Display_Env_BaseView ( curr_view_id, view_name, viewCollapsed, relContentsSTR ) curr_view_id = rsView("view_id") view_name = rsView("view_name") relContentsSTR = "" ' Empty the contents string viewCollapsed = FALSE End If Else ' End of the record set '====== Draw buttons ================================= 'If InStrPipes( SSshowviews, curr_view_id ) Then ' btn1 = ""& imgMinimise &"" 'Else ' btn1 = ""& imgMaximise &"" 'End If '====== Print contents =============================== relContentsSTR = "" & relContentsSTR & "
" Call Display_Env_BaseView ( curr_view_id, view_name, viewCollapsed, relContentsSTR ) End If WEnd If relContentsSTR <> "" Then Response.write "Icon Legend...
" End If If nTrueRecordCount > 0 Then If rsView.RecordCount < 1 Then 'If qstrPar = "Bshow" Then ' 'Release is empty. Draw default box for Base view ' Call DisplayInfo ( "EMPTY_RELEASE_CONTENTS", "100%" ) ' 'End If If qstrPar = "Pshow" Then 'Release is empty. Draw default box for Personal view Call DisplayInfo ( "PERSONAL_VIEW_NOT_SETUP", "100%" ) End If End If End If ' Destroy rsView.Close Set rsView = nothing End Sub '------------------------------------------------------------------------------------------------------------------------------------------------ Sub PopulateGetShowViews ( ByRef outShowView ) If Session(SESSION_SHOW_BASE_VIEW) <> "" Then Set outShowView = Session(SESSION_SHOW_BASE_VIEW) End If End Sub '------------------------------------------------------------------------------------------------------------------------------------------------ Function GetShowViewList () 'If SSparshow <> "" Then ' ' get list from query string ' ShowView = SSparshow 'ElseIf Request.Cookies("RELEASEMANAGER_VIEW_SHOW")( SSviewtype ) <> "" Then ' ' get list from cookie ' ShowView = Request.Cookies("RELEASEMANAGER_VIEW_SHOW")( SSviewtype ) 'Else ' ' no list i.e. collapse all views ' ShowView = -1 'End If 'If oShowView.Count = 0 Then ' GetShowViewList = -1 'Else ' GetShowViewList = Join( oShowView.Keys, "," ) 'End If If Request.Cookies(COOKIE_RELMGR_SHOW_VIEW) = "" Then GetShowViewList = -1 Else GetShowViewList = Request.Cookies(COOKIE_RELMGR_SHOW_VIEW) End If End Function '------------------------------------------------------------------------------------------------------------------------------------------------ ' This function forms a URL to use for refreshing the current dependencies.asp based page using the settings that are in effect at the time. ' Most importantly, it filters out the pv_id parameter if it is null (which otherwise would cause the page to be rendered incorreclty for an ' as yet, unknown reason). ' Function RefreshedURL(NNdview, NNpview, NNpv_id, NNrtag_id) Dim url url = scriptName & "?Dview=" & NNdview & "&Pview=" & NNpview If NNpv_id Then url = url & "&pv_id=" & NNpv_id End If url = url & "&rtag_id=" & NNrtag_id RefreshedURL = url End Function '------------------------------------------------------------------------------------------------------------------------------------------------ %> <% '------------------------- MAIN LINE --------------------------- %> <%If parRtag_Id <> "" Then%>
<% Dim rsTest Set rsTest = OraDataBase.DbCreateDynaset( "SELECT PROJ_ID FROM RELEASE_TAGS WHERE RTAG_ID ="&parRtag_id , ORADYN_DEFAULT ) If (((ReleaseMode = enumDB_RELEASE_IN_CCB_MODE) OR (ReleaseMode = enumDB_RELEASE_IN_RESTRICTIVE_MODE)) AND objAccessControl.IsActive("AddDeletePackageInRestrictiveMode") And objAccessControl.IsDataActive("PROJECTS", DB_PROJ_ID, "EditProjects")) OR (ReleaseMode = enumDB_RELEASE_IN_OPEN_MODE ) Then Response.write "" 'Response.write "" Else Response.write "" 'Response.write "" End If If (pkgInfoHash.Item("dlocked") <> "Y") AND (objAccessControl.UserLogedIn) AND (Request("pv_id") <> "") Then If ( (objAccessControl.UserName = pkgInfoHash.Item("creator")) OR (objAccessControl.IsActive("DestroyPackageFromRelease")) ) Then Response.write "" End If End If If objAccessControl.IsActive("CreateNewRelease") Then Response.write "" End If Response.write "" If objAccessControl.UserLogedIn Then If QStrPar("Pview") = "disable" Then Response.write "" Else Response.write "" End If Else Response.write "" End If If QStrPar("Dview") = "enable" Then Response.write "" Else Response.write "" End If Response.write "" Response.write "" Response.write "" Response.write "" If ( (QStrPar("Dview") <> "enable") AND ( (CInt(nEnvTab) = enumENVTAB_PLANNED) OR (Request("envtab") = enumENVTAB_PLANNED) ) ) Then If objAccessControl.UserLogedIn Then If ( ReleaseMode <> enumDB_RELEASE_IN_OPEN_MODE ) Then If objAccessControl.IsActive("ApproveForAutoBuild") OR objAccessControl.IsActive("ApproveForManualBuild") Then Response.write "" End If Else Response.write "" End If End If End If rsTest.Close() Set rsTest = nothing %>
Remove package from this releaseAdd package to this releaseRemove package from this releaseDestroy the selected Package Version
&rtag_id=<%=parRtag_id%>", onSubmit="makeBulkRelease();">
<% Set objTabControl = New TabControl objTabControl.TemplateDoc = ReadFile( Server.MapPath("controls/ERGTabStyleDreamWeaver/dreamweaver_style.html") ) ' Supply tab style definition objTabControl.TabStyle = "StyleDreamWeaver" If QStrPar("Dview") = "enable" Then objTabControl.AddTabDefnition ( arrProductEnv ) '- Integration/Test/Deploy Else objTabControl.AddTabDefnition ( arrEnv ) End If objTabControl.SelectByIndex ( nEnvTab ) objTabControl.Render () %>

<% Dim tempTimer tempTimer = Timer %> <%'Response.write "TOTAL TIME: "& Timer - tempTimer%> <% '--- Render Environment --- If objAccessControl.UserLogedIn AND (parPview <> "disable") Then 'Personal View Call Print_View( nEnvTab, "personal", parRtag_id, parPshow, objAccessControl.UserId ) Else ' Guest view Call Print_View( nEnvTab, "guest", parRtag_id, parBshow, empty ) End If %> <%'Response.write "TOTAL TIME: "& Timer - tempTimer%>
<%End If%>