<% '===================================================== '| | '| RELEASE NOTES | '| | '===================================================== %> <% '------------ Variable Definition ------------- Dim rsCQ Dim rsDepIss Dim SQLstr Dim fixedIssDict Dim notesIssDict Dim issArr() Dim depIssDict Dim sDocTitle Dim rsQry, rsTemp Dim iss_db_id, G1_template, G1_style, currG1 Dim retVal Dim baseURL Dim rsProjId Dim rsPkgMetrics Dim rsCodeReviewURL Dim vcsInfoCollector Dim bHasaLicense '------------ Constants Declaration ----------- Const enumLoc_iss_db = 0 Const enumLoc_iss_id = 1 Const enumLoc_iss_num = 2 Const enumLoc_summary = 3 Const enumLoc_status = 4 Const enumLoc_priority = 5 Const enumLoc_issue_type = 6 '------------ Variable Init ------------------- Set fixedIssDict = CreateObject("Scripting.Dictionary") Set notesIssDict = CreateObject("Scripting.Dictionary") Set depIssDict = CreateObject("Scripting.Dictionary") Set vcsInfoCollector = CreateObject("Scripting.Dictionary") '---------------------------------------------- %> <% '---------------------------------------------------------------------------------------------------------------------------------------- Function asDepIss ( SSiss_db_id, SScolumn ) If NOT depIssDict.Exists (SSiss_db_id) Then Exit Function asDepIss = issArr ( SScolumn, CInt( depIssDict.Item (SSiss_db_id) ) ) End Function '---------------------------------------------------------------------------------------------------------------------------------------- Function FixedIssues ( parPv_id ) Dim sqlstr, rsTemp sqlstr = "SELECT pv_id FROM cq_issues WHERE pv_id = "& parPv_id &" AND iss_state = "& enumISSUES_STATE_FIXED Set rsTemp = OraDatabase.DbCreateDynaset( sqlstr, cint(0)) If ((NOT rsTemp.BOF) AND (NOT rsTemp.EOF)) Then FixedIssues = TRUE Else FixedIssues = FALSE End If rsTemp.Close() Set rsTemp = nothing End Function '---------------------------------------------------------------------------------------------------------------------------------------- Function SQL_Package_Information ( nPv_id ) SQL_Package_Information = _ " SELECT *"&_ " FROM PACKAGE_VERSIONS pv"&_ " WHERE pv.pv_id = "& nPv_id End Function '---------------------------------------------------------------------------------------------------------------------------------------- Function SQL_Dependency_Issues ( NNpv_id ) SQL_Dependency_Issues = _ " SELECT pkg.pkg_name, pv.pkg_version, pv.pv_id, cqi.iss_db, cqi.iss_id, cqi.iss_state, pv.comments AS reasons"&_ " FROM cq_issues cqi,"&_ " package_dependencies dep,"&_ " packages pkg,"&_ " package_versions pv"&_ " WHERE dep.pv_id = "& NNpv_id &_ " AND dep.dpv_id = cqi.pv_id(+)"&_ " AND dep.dpv_id = pv.pv_id(+)"&_ " AND pv.pkg_id = pkg.pkg_id"&_ " ORDER BY UPPER(pkg.pkg_name) ASC, cqi.iss_state DESC" End Function '---------------------------------------------------------------------------------------------------------------------------------------- Function SQL_Additional_Notes ( nPv_id ) SQL_Additional_Notes = ReadFile( rootPath & "queries\additional_notes.sql" ) SQL_Additional_Notes = Replace( SQL_Additional_Notes, ":PV_ID", nPv_id ) End Function '---------------------------------------------------------------------------------------------------------------------------------------- Function SQL_Unit_Tests ( nPv_id ) SQL_Unit_Tests = ReadFile( rootPath & "queries\unit_tests.sql" ) SQL_Unit_Tests = Replace( SQL_Unit_Tests, ":PV_ID", nPv_id ) End Function '---------------------------------------------------------------------------------------------------------------------------------------- ' Function returns the number of imported clearquest issues ' and builds a string suitable for querying the clearquest issues database Function Get_Package_Issues ( NNpv_id, SSsql, DDfixedIss, DDnotesIssDict, nIssState ) Dim rsTemp, sqlstr, DEVIiss, retVal If IsObject(DDfixedIss) Then ' Find this package issues sqlstr = "SELECT iss_db, iss_id, iss_state, notes FROM CQ_ISSUES WHERE pv_id="& NNpv_id &" AND iss_state = "& nIssState Else ' Find dependency issues sqlstr = "SELECT iss_db, iss_id, iss_state, notes FROM CQ_ISSUES WHERE pv_id IN ( "&_ " SELECT dpv_id FROM package_dependencies WHERE pv_id = "& NNpv_id &_ " )" End If Set rsTemp = OraDatabase.DbCreateDynaset( sqlstr, cint(0)) retVal = rsTemp.RecordCount DEVIiss = "-1" While ((NOT rsTemp.BOF) AND (NOT rsTemp.EOF)) If CInt(rsTemp("iss_db")) = CInt(enumCLEARQUEST_DEVI_ID) Then DEVIiss = DEVIiss &","& rsTemp("iss_id") End If If IsObject(DDfixedIss) Then ' Store only Fixed Issues If CInt(rsTemp("iss_state")) = CInt(enumISSUES_STATE_FIXED) AND _ DDfixedIss.Exists(Cstr(rsTemp("iss_db") &"."& rsTemp("iss_id"))) = false Then DDfixedIss.Add Cstr(rsTemp("iss_db") &"."& rsTemp("iss_id")), "" End If If IsObject(DDnotesIssDict) Then ' Store Notes If Not IsNull(rsTemp("notes")) AND (rsTemp("notes") <> "") AND _ DDnotesIssDict.Exists(Cstr(rsTemp("iss_db") &"."& rsTemp("iss_id"))) = false Then DDnotesIssDict.Add Cstr(rsTemp("iss_db") &"."& rsTemp("iss_id")), Cstr(rsTemp("notes")) End If rsTemp.MoveNext WEnd ' Construct SQL statement for CQ database SSsql = ReadFile( rootPath & "queries\cq_issues.sql" ) SSsql = Replace( SSsql, "/*enumCLEARQUEST_DEVI_ID*/", enumCLEARQUEST_DEVI_ID) SSsql = Replace( SSsql, "/*DEVIiss*/", DEVIiss) rsTemp.Close() Set rsTemp = nothing Get_Package_Issues = retVal End Function '---------------------------------------------------------------------------------------------------------------------------------------- Sub LastPvId (PvId) Dim sqlstr sqlstr = "SELECT pv_id, pkg_version, comments, last_pv_id FROM PACKAGE_VERSIONS WHERE PV_ID= "& PvId Set rsQry = OraDatabase.DbCreateDynaset( sqlstr, cint(0) ) End Sub '---------------------------------------------------------------------------------------------------------------------------------------- Function Get_CQ_Issues ( SSsql, OOrsCQ ) On Error Resume Next Set OOrsCQ = OraDatabase.DbCreateDynaset( SSsql, cint(0)) Get_CQ_Issues = Err.Number End Function '---------------------------------------------------------------------------------------------------------------------------------------- Function Get_Dependency_CQ_Issues ( SSsql, OOrsCQ, DDdepIss, AAiss ) Dim recCnt On Error Resume Next Set OOrsCQ = OraDatabase.DbCreateDynaset( SSsql, cint(0)) ' Exit with error if error occurs Get_Dependency_CQ_Issues = Err.Number If Err.Number <> 0 Then Exit Function recCnt = 1 While ((NOT OOrsCQ.BOF) AND (NOT OOrsCQ.EOF)) ReDim Preserve AAiss( 6, recCnt ) 'If NOT DDdepIss.Exists Cstr(rsTemp("iss_db") &"."& rsTemp("iss_id")) Then DDdepIss.Add Cstr(OOrsCQ("iss_db") &"."& OOrsCQ("iss_id")), Cstr(recCnt) 'End If AAiss( enumLoc_iss_db, recCnt ) = OOrsCQ("iss_db") AAiss( enumLoc_iss_id, recCnt ) = OOrsCQ("iss_id") AAiss( enumLoc_iss_num, recCnt ) = OOrsCQ("iss_num") AAiss( enumLoc_summary, recCnt ) = OOrsCQ("summary") AAiss( enumLoc_status, recCnt ) = OOrsCQ("status") AAiss( enumLoc_priority, recCnt ) = OOrsCQ("priority") AAiss( enumLoc_issue_type, recCnt ) = OOrsCQ("issue_type") recCnt = recCnt + 1 OOrsCQ.MoveNext WEnd OOrsCQ.Close() End Function '---------------------------------------------------------------------------------------------------------------------------------------- Sub Group_By ( rsG, styleG, currG ) If rsG = currG Then Exit Sub Response.write styleG 'currG = rsG End Sub '---------------------------------------------------------------------------------------------------------------------------------------- Sub CheckUnitTestsState ( nPv_id, outMSG, outMSG_ID, outNote, outTestsFound ) Dim sqlstr, rsTemp sqlstr = ReadFile( rootPath & "queries\unit_test_entries_check.sql" ) sqlstr = Replace( sqlstr, ":PV_ID", nPv_id) sqlstr = Replace( sqlstr, ":enumTEST_TYPE_NOT_DONE", enumTEST_TYPE_NOT_DONE) Set rsTemp = OraDatabase.DbCreateDynaset( sqlstr, cint(0)) If ((NOT rsTemp.BOF) AND (NOT rsTemp.EOF)) Then outMSG = rsTemp("msg") outMSG_ID = CInt(rsTemp("msg_id")) outNote = rsTemp("test_summary") outTestsFound = FALSE If IsNull(rsTemp("msg")) Then outTestsFound = TRUE End If rsTemp.Close() Set rsTemp = nothing End Sub '---------------------------------------------------------------------------------------------------------------------------------------- Function FormatAccepted ( sAccepted, nTest_id ) Dim tempSTR If IsNull(nTest_id) Then Exit Function tempSTR = "" If pageIsEditable Then tempSTR = "" End If If sAccepted = enumUNIT_TEST_ACCEPTED Then tempSTR = tempSTR &""&_ ""&_ "" ElseIf sAccepted = enumUNIT_TEST_NOTACCEPTED Then tempSTR = tempSTR &""&_ ""&_ "" Else tempSTR = tempSTR &""&_ ""&_ "" End If tempSTR = tempSTR & "" FormatAccepted = tempSTR End Function '---------------------------------------------------------------------------------------------------------------------------------------- Function SQL_CodeReview ( nPv_id ) SQL_CodeReview = _ " SELECT cr.date_of_review, cr.time_spent, cr.review_reason, cr.rteam_domain_expert,"&_ " cr.rteam_language_expert, cr.rteam_peer_developer, cr.rteam_author,"&_ " cr.files_reviewed, cr.review_results, cr.issues_raised,"&_ " cr.review_comments, cr.fnc_s_meets_functionality,"&_ " cr.fnc_c_meets_functionality"&_ " FROM code_reviews cr"&_ " WHERE cr.pv_id = "& nPv_id End Function '---------------------------------------------------------------------------------------------------------------------------------------- Function SQL_Build_Env ( nPv_id ) SQL_Build_Env = _ " SELECT pv.*, bm.BM_ID,"&_ " bm.BM_NAME,"&_ " pkgbinfo.BSA_ID,"&_ " bsa.BSA_NAME"&_ " FROM PACKAGE_BUILD_INFO pkgbinfo,"&_ " BUILD_MACHINES bm,"&_ " PACKAGE_VERSIONS pv,"&_ " BUILD_STANDARDS_ADDENDUM bsa"&_ " WHERE pkgbinfo.BM_ID = bm.BM_ID"&_ " AND pv.PV_ID = pkgbinfo.PV_ID"&_ " AND pkgbinfo.PV_ID = "& nPv_id &_ " AND pkgbinfo.BSA_ID = bsa.BSA_ID"&_ " ORDER BY UPPER(bm.BM_NAME) " End Function '---------------------------------------------------------------------------------------------------------------------------------------- Function DecodeOverallResult ( ByVal cCheck ) If cCheck = "" OR IsNull(cCheck) Then cCheck = 0 Select Case CInt( cCheck ) Case enumCODE_REVIEW_ACCEPTED DecodeOverallResult = "Accepted" Case enumCODE_REVIEW_MINOR_UPDATES DecodeOverallResult = "Minor updates required" Case enumCODE_REVIEW_MAJOR_REWORK DecodeOverallResult = "Major rework required" Case Else DecodeOverallResult = "" End Select End Function '---------------------------------------------------------------------------------------------------------------------------------------- Function GetBuildType ( nBuildType, nBuildName ) if (IsNull(nBuildType) OR (nBuildType = "")) Then GetBuildType = "Build type not defined" ElseIf (IsNull(nBuildName) OR (nBuildName = "") ) Then GetBuildType = "Build Name not defined" Else GetBuildType = nBuildName End If '' Wrap around brackets GetBuildType = "("& GetBuildType &")" End Function '---------------------------------------------------------------------------------------------------------------------------------------- Sub GetPackageMetrics (NNpv_id, rsTemp) OraDatabase.Parameters.Add "PV_ID", NNpv_id, ORAPARM_INPUT, ORATYPE_NUMBER Set rsTemp = OraDatabase.DbCreateDynaset( GetQuery("PackageMetrics.sql"), cint(0)) OraDatabase.Parameters.Remove "PV_ID" End Sub '---------------------------------------------------------------------------------------------------------------------------------------- Sub GetCodeReviewURLs (NNpv_id, rsTemp) OraDatabase.Parameters.Add "PV_ID", NNpv_id, ORAPARM_INPUT, ORATYPE_NUMBER Set rsTemp = OraDatabase.DbCreateDynaset( GetQuery("CodeReviewURLs.sql"), cint(0)) OraDatabase.Parameters.Remove "PV_ID" End Sub '--------------------------------------------------------------- Sub Query_Config_Spec (NNRtag_id, NNPv_id) OraDatabase.Parameters.Add "RTAG_ID", NNRtag_id, ORAPARM_INPUT, ORATYPE_NUMBER OraDatabase.Parameters.Add "PV_ID", NNPv_id, ORAPARM_INPUT, ORATYPE_NUMBER If NNRtag_id <> "" Then If pkgInfoHash.Item ("dlocked") <> "Y" Then Set rsQry = OraDatabase.DbCreateDynaset( GetQuery("config_spec.sql"), cint(0)) Else Set rsQry = OraDatabase.DbCreateDynaset( Replace(GetQuery("config_spec.sql"), "PV.LAST_PV_ID", "PV.PV_ID"), cint(0)) End If Else If pkgInfoHash.Item ("dlocked") <> "Y" Then Set rsQry = OraDatabase.DbCreateDynaset( GetQuery("config_spec_nortag.sql"), cint(0)) Else Set rsQry = OraDatabase.DbCreateDynaset( Replace(GetQuery("config_spec_nortag.sql"), "PV.LAST_PV_ID", "PV.PV_ID"), cint(0)) End If End If OraDatabase.Parameters.Remove "RTAG_ID" OraDatabase.Parameters.Remove "PV_ID" End Sub '--------------------------------------------------------------- ' Returns the jats extraction commands Sub Jats_Extract_Command (ByRef sjats_cmds(), ByRef ajats_cmd_test, ByRef sjats_cmds_qh, ByRef sjats_extractable) Dim dlocked: dlocked = pkgInfoHash.Item("dlocked") Dim pkg_vcs_tag: pkg_vcs_tag = Get_Pkg_Vcs_Tag(Request("pv_id")) Dim ii: ii = -1 Dim baseCmd sjats_extractable = false sjats_cmds_qh = vcsInfoCollector.Item("vcs_tag") If ( sjats_cmds_qh = "CC" OR sjats_cmds_qh = "SVN" ) Then sjats_extractable = true End If ' if not released then use last package version vcs tag and branch else use current vcs tag If dlocked <> "Y" Then ' not released, so get last package version id Dim last_version_valid Dim last_pv_id: last_pv_id = pkgInfoHash.Item("last_pv_id") Dim last_pkg_vcs_tag Dim VcsType last_version_valid = TRUE If IsNull(pkgInfoHash.Item ("previous_version")) Then last_version_valid = FALSE ElseIf last_pv_id = pkgInfoHash.Item ("pv_id") Then last_version_valid = FALSE ElseIf pkgInfoHash.Item ("pkg_count") = 1 Then last_version_valid = FALSE End If If last_version_valid Then last_pkg_vcs_tag = Get_Pkg_Vcs_Tag(last_pv_id) End If If (last_version_valid AND last_pkg_vcs_tag <> "") Then VcsType = Mid(last_pkg_vcs_tag, 1, InStr(1, last_pkg_vcs_tag, "::") - 1 ) sjats_cmds_qh = VcsType baseCmd = "jats vcsrelease -extract -label """ & last_pkg_vcs_tag & """" ii = ii+1 : sjats_cmds(ii) = baseCmd ' ClearCase extraction may get a project specific branch appended ' This will be used to automatically branch the files in the package ' If (VcsType = "CC") Then Call Query_Config_Spec (Request("rtag_id"), last_pv_id) Dim config_branch: config_branch = rsQry("config_spec_branch") If NOT IsNull(config_branch) AND (config_branch <> "") Then ii = ii+1 : sjats_cmds(ii) = baseCmd & " -branch " & config_branch End If End If If (VcsType = "SVN") Then ii = ii+1 : sjats_cmds(ii) = baseCmd & " -devMode=Tag" ii = ii+1 : sjats_cmds(ii) = baseCmd & " -devMode=Tip" ii = ii+1 : sjats_cmds(ii) = baseCmd & " -devMode=Work" ii = ii+1 : sjats_cmds(ii) = baseCmd & " -devMode=Exact" End If Else 'ii = ii+1 : sjats_cmds(ii) = "No Previous version to extract" End If baseCmd = "jats vcsrelease -extract -label """ & pkg_vcs_tag & """" ii = ii+1 : sjats_cmds(ii) = baseCmd Else ' released if sjats_extractable Then baseCmd = "jats vcsrelease -extract -label """ & pkg_vcs_tag & """" ii = ii+1 : sjats_cmds(ii) = baseCmd Else baseCmd = "Cannot be extracted with JATS" ii = ii+1 : sjats_cmds(ii) = baseCmd End If End If ' Test Command if sjats_extractable Then ajats_cmd_test = "jats vcsrelease -test -label """ & pkg_vcs_tag & """" Else ajats_cmd_test = "Cannot be extracted with JATS" End If ReDim Preserve sjats_cmds(ii) rsQry.Close() Set rsQry = nothing End Sub '--------------------------------------------------------------- ' Returns the VCS tag for the specified package version ' Note: ORAPARM_OUTPUT default size is 127 bytes. This is too short for some ' Function Get_Pkg_Vcs_Tag(apv_id) OraDatabase.Parameters.Add "PV_ID", apv_id, ORAPARM_INPUT, ORATYPE_NUMBER OraDatabase.Parameters.Add "RETURN_CODE","xxxx", ORAPARM_OUTPUT, ORATYPE_VARCHAR2 OraDatabase.Parameters("RETURN_CODE").MinimumSize = 200 On Error Resume Next OraDatabase.ExecuteSQL ("BEGIN :RETURN_CODE := PK_RMAPI.RETURN_VCS_TAG( :PV_ID ); END;") Get_Pkg_Vcs_Tag = OraDatabase.Parameters("RETURN_CODE").Value On Error Goto 0 OraDatabase.Parameters.Remove "PV_ID" OraDatabase.Parameters.Remove "RETURN_CODE" End Function '------------------------------------------------- ' Description: Return a string displaying if the user is following this package in theis Release '---------------------------------------------------------------------------------------------------------------------------------------- Function GetFollowing () Dim rsQry Dim thisProject, otherProjects, someProjects GetFollowing = "Not logged in" If objAccessControl.UserLogedIn() Then OraDatabase.Parameters.Add "PKG_ID", pkgInfoHash.Item ("pkg_id"), ORAPARM_INPUT, ORATYPE_NUMBER OraDatabase.Parameters.Add "PROJ_ID", pkgInfoHash.Item ("proj_id"), ORAPARM_INPUT, ORATYPE_NUMBER OraDatabase.Parameters.Add "USER_ID", objAccessControl.UserId(), ORAPARM_INPUT, ORATYPE_NUMBER If pkgInfoHash.Item ("proj_id") <> "" Then Set rsQry = OraDatabase.DbCreateDynaset( "SELECT * FROM PACKAGE_INTEREST WHERE PKG_ID = :PKG_ID AND PROJ_ID = :PROJ_ID AND USER_ID = :USER_ID", cint(0)) thisProject = rsQry.RecordCount > 0 Set rsQry = OraDatabase.DbCreateDynaset( "SELECT * FROM PACKAGE_INTEREST WHERE PKG_ID = :PKG_ID AND PROJ_ID != :PROJ_ID AND USER_ID = :USER_ID", cint(0)) otherProjects = rsQry.RecordCount > 0 If thisProject Then If otherProjects Then GetFollowing = "Yes. In this and " & rsQry.RecordCount & " other projects" Else GetFollowing = "Yes. Only this project" End If Else If otherProjects Then GetFollowing = "Yes. In " & rsQry.RecordCount & " other projects" Else GetFollowing = "No" End If End If Else Set rsQry = OraDatabase.DbCreateDynaset( "SELECT * FROM PACKAGE_INTEREST WHERE PKG_ID = :PKG_ID AND USER_ID = :USER_ID", cint(0)) someProjects = rsQry.RecordCount > 0 If rsQry.RecordCount > 0 Then GetFollowing = "Yes. In " & rsQry.RecordCount & " Projects" Else GetFollowing = "No" End If End If OraDatabase.Parameters.Remove "USER_ID" OraDatabase.Parameters.Remove "PROJ_ID" OraDatabase.Parameters.Remove "PKG_ID" rsQry.Close() Set rsQry = nothing If pageIsEditable Then GetFollowing = GetFollowing & "" End If End If End Function '--------------------------------------------------------------- ' Description: Return a string displaying licence information '--------------------------------------------------------------- Function getLicence Dim rsQry, rsSql, lName Dim licenceList Dim joiner : joiner = "" Dim otherVersions : otherVersions = "" Set licenceList=Server.CreateObject("Scripting.Dictionary") getLicence = "" bHasaLicense = FALSE ' Determine license for this package-version OraDatabase.Parameters.Add "PV_ID", pkgInfoHash.Item ("pv_id"), ORAPARM_INPUT, ORATYPE_NUMBER Set rsQry = OraDatabase.DbCreateDynaset( _ "SELECT l.NAME FROM LICENCES l, LICENCING ld" &_ " WHERE l.LICENCE = ld.LICENCE " &_ " and ld.PV_ID = :PV_ID" &_ " ORDER by l.NAME" _ , cint(0)) While (NOT rsQry.BOF) AND (NOT rsQry.EOF) lName = rsQry("name") getLicence = getLicence & joiner & lName licenceList.Add lName, "Y" joiner = ", " rsQry.MoveNext bHasaLicense = TRUE WEnd rsQry.Close() Set rsQry = nothing ' ' Indicate if other versions have licences - ignore those we already know about ' The data is stored on a package-version basis ' Set rsQry = OraDatabase.DbCreateDynaset( _ "SELECT UNIQUE ld.NAME" &_ " FROM licencing l,LICENCES ld" &_ " WHERE l.pv_id IN" &_ " (SELECT pv_id" &_ " FROM package_versions" &_ " WHERE pkg_id IN" &_ " (SELECT pkg_id FROM package_versions WHERE pv_id=:PV_ID)" &_ " AND pv_id != :PV_ID" &_ " )" &_ " AND l.LICENCE = ld.LICENCE" &_ " ORDER by ld.NAME" _ , cint(0)) joiner = "" While (NOT rsQry.BOF) AND (NOT rsQry.EOF) lName = rsQry("name") If NOT licenceList.Exists(lName) Then otherVersions = otherVersions & joiner & rsQry("name") joiner = ", " End If rsQry.MoveNext WEnd OraDatabase.Parameters.Remove "PV_ID" rsQry.Close() Set rsQry = nothing If otherVersions <> "" Then getLicence = getLicence & ". Other Versions: " & otherVersions End If End Function '------------------------------------------------- Function getLinkUrl(pvid) Dim joiner : joiner = "?" getLinkUrl = scriptName If parRtag_id <> "" Then getLinkUrl = getLinkUrl + joiner + "rtag_id=" + parRtag_id joiner = "&" End If getLinkUrl = getLinkUrl + joiner + "pv_id=" + pvid End Function '------------------------------------------------- ' DisplayVersionRow - Display a row of vesrion information ' pvid - pvid to process. Null -> "Initial Version" ' title - row title ' helpTag - Tag for help ' Sub DisplayVersionRow( pvid, title, helpTag ) Dim versionText Dim tagText Dim showLink Dim clipClass Dim ExtractText Dim queryResult If IsNull(pvid) Then versionText = "Initial Version" tagText = NULL showLink = FALSE Else Set queryResult = OraDatabase.DbCreateDynaset( "SELECT pkg_version from package_versions where pv_id =" & pvid , cint(0)) If (NOT queryResult.BOF ) AND (NOT queryResult.EOF) Then versionText = queryResult("pkg_version") tagText = Get_Pkg_Vcs_Tag(pvid) showLink = isDefined("showPrevVerLinks") Else versionText = "Unknown" tagText = NULL showLink = FALSE End If queryResult.Close() Set queryResult = nothing End If If sjats_extractable Then clipClass = "clip" ExtractText = NewLine_To_BR ( To_HTML(tagText) ) Else clipClass = "" ExtractText = "Cannot be extracted with JATS" End If %> <%=title%><%=Quick_Help(helpTag)%> <%If NOT IsNull(tagText) Then %> <%End If%>
<%=versionText%> <%If showLink Then %> > <%End If%> <%=ExtractText%>
<% End Sub '------------------------------------------------- ' DisplayCreationCommands ' Display commands that may be useful in the creation of the package ' Sub DisplayCreationCommands Dim VcsType: VcsType = vcsInfoCollector.Item("vcs_tag") Dim title: title = "Package Creation Hints" Dim SvnUrl Dim SvnLabel If VcsType = "SVN" Then If pkgInfoHash.Item("src_path") <> "" Then SvnUrl = pkgInfoHash.Item("src_path") Dim lastBit: lastBit = InStrRev(SvnUrl, "/" ) If lastBit > 1 Then SvnUrl = Left(SvnUrl, lastBit-1) End If Else SvnUrl = "AUPERASVN0X/RepoName/" & pkgInfoHash.Item ("pkg_name") End If If pkgInfoHash.Item("pkg_label") <> "" Then SvnLabel = pkgInfoHash.Item("pkg_label") Else SvnLabel = "SomeLabel.WIP" End If %> <%=title%><%=Quick_Help("CreationHints")%>
jats svn create_package -new <%=SvnUrl%>
jats svn create_package -new <%=SvnUrl%> -import=<PkgDir>
jats svn create_package -new <%=SvnUrl%> -label=<%=SvnLabel%> -import=<PkgDir>
jats svn create_package -new <%=SvnUrl%> -label=<%=SvnLabel%> -import=<%=pkgInfoHash.Item ("pkg_name")%>
<% Else %> <%=title%> Not supported under this version control system. <% End If End Sub %> <% '------------------ MAIN LINE -------------------- '------------------------------------------------- If pkgInfoHash.Exists("pv_id") Then %>
Package Information
<%If pageIsEditable Then%> Edit <%End If%>
<% Set rsQry = OraDatabase.DbCreateDynaset( SQL_Package_Information ( parPv_id ), cint(0)) Call get_vcs_info_for_package( rsQry("pkg_label"), rsQry("build_type"), rsQry("vcs_type_id"), rsQry("dlocked"), vcsInfoCollector ) ' Status: Dim sstate Dim bcan_unlock Dim stitle Dim bis_patch Dim spkgType Dim shref bis_patch = not IsNull(pkgInfoHash.Item ("is_patch")) If bis_patch Then ' the user can unlock a patch if they have permission ' packages can be unlocked by the btnUnlockRelease button bcan_unlock = canActionControlInProject("UnlockPatch") spkgType = "Patch" Else bcan_unlock = canActionControlInProject("EditCriticalInfoForLockedPackage") spkgType = "Package" End If If pkgInfoHash.Item("is_sdkpkg") Then bcan_unlock = FALSE Select Case pkgInfoHash.Item ("dlocked") Case "Y" sstate = "Released" Case "N" sstate = "Not Released" Case "P" sstate = "Not Released. Pending approval" Case "A" sstate = "Not Released. Approved for build" Case "R" sstate = "Not Released. Rejected" Case Else sstate = "Not Released. Invalid State" End Select If bcan_unlock Then If (pkgInfoHash.Item ("dlocked") = "Y") Then ' Unlock patch/package. stitle="Unlock the " & spkgType shref="_s_unlock_package.asp?pv_id="& parPv_id &"&rtag_id="& parRtag_id ElseIf (pkgInfoHash.Item ("dlocked") = "N") Then ' lock patch/package. stitle="Lock the "& spkgType &". Release requirements are not applied." shref="_s_lock_package.asp?pv_id="& parPv_id &"&rtag_id="& parRtag_id Else ' unlock patch/package. stitle="Unlock the " & spkgType shref="_s_unlock_package.asp?pv_id="& parPv_id &"&rtag_id="& parRtag_id bcan_unlock = FALSE End If End if %> <%If parRtag_id <> "" Then Dim s3Text If pkgInfoHash("inManifest") <> "Y" Then s3Text = "No" Else If pkgInfoHash("s3ManifestEnabled") <> "Y" Then s3Text = "Yes. Ignored as the Release does not support S3 Manifest generation" Else s3Text = "Yes" End If End If %> <%End If%> <% Dim sonclick Dim imgClass Dim sClass %> <% ' Display only if the package is a COTS ( or TOOL ) package ' Display if this package has associated licencing ' Display if this is the first version of the package If pkgInfoHash.Item("is_cots") = "Y" OR (CINT(pkgInfoHash.Item("pkgVerCount")) = 1 AND pkgInfoHash.Item("dlocked") = "N" ) OR bHasaLicense OR pkgInfoHash.Item("pkg_eref") <> "" Then %> <%End If%> <% ' Last Modified: %> <% ' Added to Release If IsNull(pkgInfoHash.Item ("is_patch")) AND (Request("rtag_id") <> "") AND (pkgInfoHash.Item ("insertor") <> "") Then %> <%End If%> <%If (vcsInfoCollector.Item("vcs_tag") = enum_VCS_CLEARCASE_TAG) OR (vcsInfoCollector.Item("vcs_tag") = enum_VCS_CVS_TAG) Then%> <%ElseIf vcsInfoCollector.Item("vcs_tag") = enum_VCS_SUBVERSION_TAG OR vcsInfoCollector.Item("vcs_tag") = enum_VCS_GIT_TAG Then%> <%ElseIf vcsInfoCollector.Item("vcs_tag") = enum_VCS_UNCONTROLLED_TAG Then%> <%Else%> <%End If%> <% If pkgInfoHash.Item ("bs_id") <> "" Then If pkgInfoHash.Item ("bs_id") = "1" Then Response.write "" ElseIf pkgInfoHash.Item ("bs_id") = "2" Then Response.write "" ElseIf pkgInfoHash.Item ("bs_id") = "3" Then Response.write "" End If Else If vcsInfoCollector.Item("vcs_tag") <> enum_VCS_UNCONTROLLED_TAG Then Response.write "" Else Response.write "" End If End If %> <%If (NOT IsNull(pkgInfoHash.Item ("bs_id"))) AND (pkgInfoHash.Item ("bs_id") <> "3") Then%> <% '--- Get Build Env Details Set rsTemp = OraDatabase.DbCreateDynaset( SQL_Build_Env ( parPv_id ), cint(0)) %> <%End If%> <% ' Get JATS extraction commands Dim sjats_cmd_test, sjats_cmds_qh, sjats_extractable ReDim sjats_cmds(6) call Jats_Extract_Command(sjats_cmds, sjats_cmd_test, sjats_cmds_qh, sjats_extractable) Dim PrevVerTitle : PrevVerTitle = "Previous Version:" ' Previous Versions If pkgInfoHash.Item ("pkg_count") = 1 AND pkgInfoHash.Item ("dlocked") = "N" Then Call DisplayVersionRow(NULL, PrevVerTitle, "PreviousVcsTag") Call DisplayCreationCommands() ElseIf IsNull(pkgInfoHash.Item ("is_patch")) Then If canActionControlInProject("ChangePreviousVersion") AND NOT pkgInfoHash.Item("is_sdkpkg") Then sonclick="MM_openVixIFrame('_wform_change_previous_version.asp?rfile="& scriptName &"&pv_id="& parPv_id &"&rtag_id="& parRtag_id &"','Change Previous Version')" PrevVerTitle = " " & PrevVerTitle & " " Else PrevVerTitle = PrevVerTitle & "" End If Call DisplayVersionRow(pkgInfoHash.Item ("last_pv_id"), PrevVerTitle, "PreviousVcsTag") Dim iLastSignificantPVID Dim iRippleBasePVID Call getLastSignificantVersions(pkgInfoHash.Item("pv_id"), iRippleBasePVID, iLastSignificantPVID) Call DisplayVersionRow(iRippleBasePVID, "Previous NonRipple Version:", "PreviousNonRippleVcsTag") Call DisplayVersionRow(iLastSignificantPVID, "Previous Significant Version:", "PreviousSignificantVcsTag") End If %> <% ' Beyond Compare difference command Dim prevVcsTag Dim curVcsTag Dim sBcCmd, sBcClass prevVcsTag = Get_Pkg_Vcs_Tag(iLastSignificantPVID) curVcsTag = Get_Pkg_Vcs_Tag(parPv_id) sBcCmd = "" sBcClass = "" If pkgInfoHash.Item ("pkg_count") = 1 Then sBcCmd = "No prior version compare against" ElseIf (IsNull(prevVcsTag) OR prevVcsTag = "" ) Then sBcCmd = "No prior label to compare against" ElseIf (IsNull(curVcsTag) OR curVcsTag = "" ) Then sBcCmd = "Current VCS tag not yet specified" ElseIf (not sjats_extractable) Then sBcCmd = "Cannot be extracted with JATS" Else sBcCmd = "jats vcsdiff -old=" & prevVcsTag & " -new=" & curVcsTag sBcClass = "clip" End If sBcCmd = NewLine_To_BR( To_HTML (sBcCmd) ) %> <%If pkgInfoHash.Item("is_deployable") = "Y" Then OraDatabase.Parameters.Add "PV_ID", pkgInfoHash.Item ("pv_id"), ORAPARM_INPUT, ORATYPE_NUMBER Set rsTemp = OraDatabase.DbCreateDynaset( GetQuery("DeploymentManagerReference.sql"), cint(0)) If rsTemp.RecordCount = 0 Then%> <%If pkgInfoHash.Item("product_state") = 3 Then%> <%ElseIf pkgInfoHash.Item("product_state") = 2 Then%> <%ElseIf pkgInfoHash.Item("product_state") = 1 Then%> <%ElseIf pkgInfoHash.Item("product_state") = 5 Then%> <%ElseIf IsNull(pkgInfoHash.Item("product_state")) Then%> <%End If%> <%Else%> <%End If rsTemp.Close() Set rsTemp = Nothing OraDatabase.Parameters.Remove "PV_ID" End If %>
<% If bcan_unlock Then %> Status:  <% Else %> Status: <% End If %> <%=sstate%>
Deployable: <%=iif(IsNull( rsQry("is_deployable") ), "No","Yes")%>
<%BuildEditButtonRaw pkgInfoHash.Item ("is_released") AND ( canActionControlInProject("ConfigureRelease") OR canActionControlInProject("EditNonCriticalInfoForLockedPackage") OR canActionControlInProject ("EditInManifest") OR canActionControl("MSMaintainer")), _ "Include in Manifest:", "Edit", False, "src='images/i_edit.gif' width='12' height='12' border='0' align='absmiddle'",_ "MM_openVixIFrame('_wform_change_in_manifest.asp?pv_id="& parPv_id &"&rtag_id="& parRtag_id &"','Change In Manifest')" %> <%=Quick_Help("inManifest")%> <%=s3Text%>
Short Description: <%If IsNull( rsQry("pv_description") ) Then%> Required! <%Else%> <%=NewLine_To_BR ( To_HTML( rsQry("pv_description") ) )%> <%End If%>
Package Overview: <%If IsNull( rsQry("pv_overview") ) Then%> Required! <%Else%> <%=NewLine_To_BR ( To_HTML( rsQry("pv_overview") ) )%> <%End If%>
<%BuildEditButtonRaw canActionControlInProject ("EditPackageLicence") OR canActionControl("MSMaintainer"), _ "Package Licence:", "Edit", False, "src='images/i_edit.gif' width='12' height='12' border='0' align='absmiddle'",_ "MM_openVixIFrame('_wform_change_licence.asp?pv_id="& parPv_id &"&rtag_id="& parRtag_id &"','Change License')" %> <%=getLicence()%>
<%BuildEditButtonRaw canActionControlInProject ("EditPackageLicence") OR canActionControl("MSMaintainer"), _ "External Reference:", "Edit", False, "src='images/i_edit.gif' width='12' height='12' border='0' align='absmiddle'",_ "MM_openVixIFrame('_wform_change_eref.asp?pv_id="& parPv_id &"&rtag_id="& parRtag_id &"','Change External Reference')" %> <%=Quick_Help("ExternalRef")%> <%=pkgInfoHash.Item("pkg_eref")%>
<%BuildEditButtonRaw objAccessControl.UserLogedIn() AND NOT pkgInfoHash.Item("is_sdkpkg"),_ "Build Owner:", "Edit", False, "src='images/i_edit.gif' width='12' height='12' border='0' align='absmiddle'",_ "MM_openVixIFrame('_wform_change_owner.asp?pv_id="& parPv_id &"&rtag_id="& parRtag_id &"','Change Owner')" %> <%=Quick_Help("BuildOwner")%> <%=emailField(pkgInfoHash.Item ("owner"),pkgInfoHash.Item ("owner_email"))%>
Created: <%=DisplayDateTimeSecs(pkgInfoHash.Item ("created_stamp"))&" by "& emailField(pkgInfoHash.Item ("creator"),pkgInfoHash.Item ("creator_email"))%>
Last Modified: <%=DisplayDateTimeSecs(pkgInfoHash.Item ("modified_stamp"))&" by "& emailField(pkgInfoHash.Item ("modifier"),pkgInfoHash.Item ("modifier_email"))%>
Added to Release: <%=DisplayDateTimeSecs(pkgInfoHash.Item ("insert_stamp")) &" by "& emailField(pkgInfoHash.Item ("insertor"),pkgInfoHash.Item ("insertor_email"))%>
Version Control System: <%=NewLine_To_BR ( To_HTML( vcsInfoCollector.Item("vcs_name") ) )%> <%If (vcsInfoCollector.Item("vcs_tag") = enum_VCS_CVS_TAG) AND pkgInfoHash.Item ("build_type") = "A" Then%> [Requires Manual Build] <%End If%>
Source Path: <%If IsNull( rsQry("src_path") ) Then%> Required!<%Else%><%=NewLine_To_BR ( To_HTML( rsQry("src_path") ) )%> <%End If%>
Label: <%If IsNull( rsQry("pkg_label") ) Then%> Required!<%Else%><%=NewLine_To_BR ( To_HTML( rsQry("pkg_label") ) )%> <%End If%>
Version Control System: <%=NewLine_To_BR ( To_HTML( vcsInfoCollector.Item("vcs_name") ) )%>
Source Path: <%If IsNull( rsQry("src_path") ) Then%> Required!<%Else%><%=NewLine_To_BR ( To_HTML( rsQry("src_path") ) )%> <%End If%>
Tag: <%If IsNull( rsQry("pkg_label") ) Then%> Required!<%Else%><%=NewLine_To_BR ( To_HTML( rsQry("pkg_label") ) )%> <%End If%>
Version Control System: <%=NewLine_To_BR ( To_HTML( vcsInfoCollector.Item("vcs_name") ) )%>
Version Control System: Required!
<%BuildEditButtonRaw (pkgInfoHash.Item("can_edit_in_project") = "1") AND (objAccessControl.UserLogedIn) AND (canActionInProject()) AND pkgInfoHash.Item("base_view_id") <> "",_ "Base View:", "Edit", False, "src='images/i_edit.gif' width='12' height='12' border='0' align='absmiddle'",_ "MM_openVixIFrame('_wform_change_group.asp?pv_id="& parPv_id &"&rtag_id="& parRtag_id &"','Set Package Base View')" %><%=Quick_Help("baseView")%> <% Dim CleanView : CleanView = pkgInfoHash.Item("view_name") If CleanView = "" Then CleanView = "N/A" If pkgInfoHash.Item("release_view_name") <> "" AND pkgInfoHash.Item("view_name") <> pkgInfoHash.Item("release_view_name") Then Response.Write "[" & pkgInfoHash.Item("release_view_name") & "] " End If Response.Write CleanView %>
Following:<%=Quick_Help("following")%> <%=GetFollowing()%>
Build Standard:JATS
ANT
NONE" If pkgInfoHash.Item("build_type") = "A" Then Response.write " [Must be specified for an automated build]" End If Response.write "
Required!
Unspecified
Build Environment: <%If rsTemp.RecordCount = 0 Then%> <%If rsQry("is_build_env_required") = enumDB_NO Then%> Not Required <%Else%> Required! <%End If%> <%Else%> <%If (IsNull( rsQry("is_build_env_required") ) AND (rsQry("comments") <> "Rippled Build.")) Then%> Required! <%ElseIf rsQry("is_build_env_required") = enumDB_NO Then%> Not Required. <%Else%> <% currG1 = 0 While (NOT rsTemp.BOF) AND (NOT rsTemp.EOF) If currG1 <> CInt(rsTemp("bm_id")) Then%> <%currG1 = CInt(rsTemp("bm_id")) End If rsTemp.MoveNext WEnd %>
<%=rsTemp("bm_name")%> <%=GetBuildType( rsTemp("bsa_id"),rsTemp("bsa_name") )%>
<%End If%> <%End If%>
JATS extraction commands:<%=Quick_Help ( "JatsExtraction_" & sjats_cmds_qh )%> <% Dim ii : For ii = 0 to UBound(sjats_cmds) %> <% Next %>
<%=NewLine_To_BR ( To_HTML(sjats_cmds(ii)) )%> 
JATS Test:<%=Quick_Help ( "JatsTest" )%> <%=NewLine_To_BR ( To_HTML(sjats_cmd_test) )%>
Beyond Compare command:<%=Quick_Help ( "BeyondCompare" )%> <%=sBcCmd%>
SBOM Information:Ready For Deployment!Ready For Testing!Ready For Integration!Ready For Integration and Deployment!Information Unavailable!
SBOM Added/Updated: <%=rsTemp("branch_name")%> - <%=rsTemp("bom_name")%><%=VBNewLine%><%=rsTemp("version")%>

<% Call GetPackageMetrics( parPv_id, rsPkgMetrics ) %>
<%If IsNull(rsPkgMetrics("pkg_name")) Then %> Package Metrics not available <%Else%> Package Metrics...
Show...
<%End If%>

<% rsPkgMetrics.Close() Set rsPkgMetrics = nothing %> <%If pkgInfoHash.Item("deprecated_state") = 6 Then %>
Reason for deprecation
<% Dim rsComment Set rsComment = OraDatabase.DbCreateDynaset("SELECT * FROM DEPRECATED_PACKAGES WHERE RTAG_ID ="& Request("rtag_id") &" AND PKG_ID = "& pkgInfoHash.Item ("pkg_id") &"", cint(0)) If rsComment("comments") <> "" Then Response.write "" Response.write "" Response.write "" Response.write "" Response.write "
"& NewLine_To_BR(( rsComment("comments") ) ) &"
" 'Else ' If FixedIssues ( parPv_id ) Then ' Response.write "Not specified.
" ' Else ' Response.write "Required!
" ' End If End If rsComment.Close() Set rsComment = nothing %>

<%End If%> <%If NOT pageIsEditable AND pkgInfoHash.Item ("is_deployable") = "Y" Then%>
SBOM Priority <%If (pkgInfoHash.Item ("dlocked") = "Y") Then%>
Edit
<%End If%>
<%If pkgInfoHash.Item ("sbom_priority") <> "" Then%>
<% If pkgInfoHash.Item ("sbom_priority") = "C" Then Response.write "Critical." ElseIf pkgInfoHash.Item ("sbom_priority") = "I" Then Response.write "Important." ElseIf pkgInfoHash.Item ("sbom_priority") = "R" Then Response.write "Routine" ElseIf pkgInfoHash.Item ("sbom_priority") = "L" Then Response.write "Low" End If %>
<%Else%> Required!
<%End If%>

<%End If%>
<%If pkgInfoHash.Item ("build_type") = "A" Then%> Change Type
<%If (pkgInfoHash.Item ("dlocked") <> "A") AND (pkgInfoHash.Item ("dlocked") <> "Y") AND criticalSectionIsEditable Then%> Edit <%End If%>
<% If pkgInfoHash.Item ("change_type") <> "" Then Response.write "" Response.write "" If pkgInfoHash.Item ("change_type") = "M" Then Response.write "" ElseIf pkgInfoHash.Item ("change_type") = "N" Then Response.write "" ElseIf pkgInfoHash.Item ("change_type") = "P" Then Response.write "" ElseIf pkgInfoHash.Item ("change_type") = "F" Then Response.write "" Else Response.write "" End If Response.write "" Response.write "
Major Change.
Minor Change.
Patch Change.
Version Specified by User.
Unknown Change Type: " & pkgInfoHash.Item ("change_type") & "
" Else Response.write "Required!
" End If %>
<%ElseIf pkgInfoHash.Item ("build_type") = "M" Then%> Build Type
Manually Built Package. <%If pkgInfoHash.Item ("change_type") <> "F" Then%> Unexpected Change Type: <%=pkgInfoHash.Item ("change_type")%> <%End If%>
<%ElseIf pkgInfoHash.Item ("build_type") = "U" Then%> Build Type
UnbuildablePackage. This version has been created outside of the build system, possibly via Deployment Manager or as a part of the unification of the Pulse Build System.
<%ElseIf pkgInfoHash.Item ("build_type") = "Y" Then%> Build Type
Ripple Built
<%Else%> Build Type
Unknown Build Type (<%=pkgInfoHash.Item ("build_type")%>) Change Type (<%=pkgInfoHash.Item ("change_type")%>)
<%End If%>

<%If IsNull(pkgInfoHash.Item ("is_patch")) Then%>
Ripple Properties
<%Dim canEditRippleProperties : canEditRippleProperties = FALSE canEditRippleProperties = (pageIsEditable AND canShowControlInProject( "RipplePackage" )) OR _ canShowControlInProject( "AdvRipPackageVersions" ) OR _ canShowControlInProject( "PegPackageVersions" ) OR _ criticalSectionIsEditable If canEditRippleProperties Then%> Edit <%End If%>
<%If Request("rtag_id") <> "" Then If pkgInfoHash.Item ("is_pegged") Then %> <%End If%> <%End If%> <%If NOT pkgInfoHash.Item ("is_pegged") Then%> <%If Request("rtag_id") <> "" Then%> <%Dim rsQryRipple Set rsQryRipple = OraDatabase.DbCreateDynaset( "SELECT p.PKG_NAME, pv.PV_OVERVIEW, pv.PKG_ID,nvl(dnr.root_pv_id, -1) as root_pv_id, dnr.* FROM DO_NOT_RIPPLE dnr, PACKAGE_VERSIONS pv, PACKAGES p WHERE dnr.RTAG_ID ="& Request("rtag_id") &"AND dnr.PV_ID ="&Request("pv_id") &" AND pv.pv_id(+) = dnr.ROOT_PV_ID AND p.PKG_ID(+) = pv.PKG_ID", cint(0)) If rsQryRipple.RecordCount <> 0 Then Dim CauseText Dim rowData If (IsNull(rsQryRipple("root_file")) AND IsNull(rsQryRipple("root_cause"))) Then If rsQryRipple("root_pv_id") < 0 Then CauseText = "Directly Excluded" Else CauseText = "Indirectly excluded by " & rsQryRipple("pkg_name") & "" End If ElseIf IsNull(rsQryRipple("root_file")) Then CauseText = rsQryRipple("root_cause") Else CauseText = "" &_ "Build Failure Log File" End If %> <%Else%> <%End If%> <%rsQryRipple.Close() Set rsQryRipple = nothing%> <%End If%> <%If pkgInfoHash.Item ("advisory_ripple") Then%> <%End If%> <%End If%> <%If Request("rtag_id") <> "" AND pkgInfoHash.Item("dlocked") = "Y" Then Dim sClickStop, sStopText, dRippleStop, sButtonText, sPersistText dRippleStop = pkgInfoHash.Item("ripple_stop") If dRippleStop = "" OR IsNull(dRippleStop) Then sClickStop="vixConfirm('Marked this package so as to prevent it from being built
when its dependencies change, until it is manually resumed.

Stop Ripple Builds',{title:'Stop Ripple', button:'Stop', url: '_s_ripple_stop.asp?mode=s&rfile="& scriptName &"&pv_id="& parPv_id &"&rtag_id="& parRtag_id &"'});" sStopText = "Normal" sButtonText = "Change" ElseIf dRippleStop = "s" Then sClickStop="vixConfirm('This package has been marked to prevented ripple builds.

Remove this marker',{title:'Remove Ripple', button:'Remove', url: '_s_ripple_stop.asp?mode=r&rfile="& scriptName &"&pv_id="& parPv_id &"&rtag_id="& parRtag_id &"'});" sStopText = "Ripples will stop at this package" sButtonText = "Remove" ElseIf dRippleStop = "w" Then sClickStop="vixConfirm('This package has been marked to prevented ripple builds
and a ripple is required.

Allow ripple to continue.',{title:'Continue Ripple', button:'Allow Ripple', url: '_s_ripple_stop.asp?mode=g&rfile="& scriptName &"&pv_id="& parPv_id &"&rtag_id="& parRtag_id &"'});" sStopText = "Ripple required and awaiting manual intervention" sButtonText = "Resume" ElseIf dRippleStop = "g" Then sStopText = "Ripple resumed. Awaiting build" Else sStopText = "Ripple Stop: Unknown state:" & dRippleStop End If sPersistText = "" If pkgInfoHash.Exists("persist_ripple_stop") Then If NOT IsNull(pkgInfoHash.Item("persist_ripple_stop")) Then sPersistText = " [Persistent Ripple Stop Enabled]" End If End If %>

<%End If%>
Is Pegged <%=Quick_Help ( "pegged_version" )%> Yes
Build Inclusion<%=Quick_Help ( "ripple_build" )%> No. <%=CauseText%>Yes
Advisory Ripple <%=Quick_Help ( "advisory_ripple" )%> Enabled
Ripple Type <%=Quick_Help ( "ripple_type" )%> <% Response.write "" Response.write "" Response.write "" Response.write "" Response.write "
" Dim selectedRippleType, selectedRippleName, selectedRippleState selectedRippleType = pkgInfoHash.Item ("ripple_field") selectedRippleName = rippleFieldName(selectedRippleType, selectedRippleState) If NOT selectedRippleState Then Response.write "Required!" Else Response.write( selectedRippleName ) End If If ( selectedRippleType = "L" ) Then Dim qry Set qry = OraDatabase.DbCreateDynaset( "SELECT major_limit, minor_limit, patch_limit, build_number_limit from package_versions where pv_id="& Request("pv_id"), cint(0)) Response.write " " If isNull(qry("major_limit")) Then Response.write("0") Else Response.write( qry.Fields( "major_limit" ).Value ) End If Response.write ", " If isNull(qry("minor_limit")) Then Response.write("0") Else Response.write( qry.Fields( "minor_limit" ).Value ) End If Response.write ", " If isNull(qry("patch_limit")) Then Response.write("0") Else Response.write( qry.Fields( "patch_limit" ).Value ) End If Response.write ", " If isNull(qry("build_number_limit")) Then Response.write("0") Else Response.write( qry.Fields( "build_number_limit" ).Value ) End If qry.Close() Set qry = nothing End If Response.Write "
" %>
Ripple Stop <%=Quick_Help ( "ripple_stop" )%> <%=sStopText%><%=sPersistText%> <%If canActionInProject() AND sClickStop <> "" Then%> <%=sButtonText%> <%End If%>

<%End If%>
Reason for this version
Copy<%=enum_imgClipBoard12%> <%If pageIsEditable Then%> Update Dependencies Edit <%End If%>
<%If pkgInfoHash.Item ("comments") <> "" Then%>
<%Response.Write( NewLine_To_BR(pkgInfoHash.Item("comments")) )%>
<%ElseIf FixedIssues ( parPv_id ) Then%> Not specified.
<%Else%> Required!
<%End If%>

<%If pkgInfoHash.Item ("comments") = "Rippled Build." Then%>
Reason for last non-ripple build
<% 'Dim rsQry Call LastPvId(pkgInfoHash.Item ("pv_id")) While rsQry("comments") = "Rippled Build." Call LastPvId(rsQry("last_pv_id")) Wend If pkgInfoHash.Item ("comments") <> "" Then Response.write "" Response.write "" Response.write "" Response.write "" Response.write "" Response.write "" Response.write "" Response.write "
Package Version: "& NewLine_To_BR(( rsQry ("pkg_version") ) ) &"
"& NewLine_To_BR(( rsQry ("comments") ) ) &"
"%>
Fixed Issues For Last Non-Ripple Build <%If pageIsEditable Then%> Import Fixed Issues from ClearQuest <%End If%>
<%Call Get_Package_Issues ( parPv_id, SQLstr, fixedIssDict, notesIssDict, enumISSUES_STATE_FIXED ) If (retVal > 0) Then retVal = Get_CQ_Issues ( SQLstr, rsCQ ) If retVal = 0 Then%> <%If ((NOT rsCQ.BOF) AND (NOT rsCQ.EOF)) Then%> <%While ((NOT rsCQ.BOF) AND (NOT rsCQ.EOF))%> <%If sectionIsEditable Then%> <%If notesIssDict.Exists (Cstr(rsCQ("iss_db") &"."& rsCQ("iss_id"))) Then%> <%Else%> <%End If%> <%Else%> <%If notesIssDict.Exists (Cstr(rsCQ("iss_db") &"."& rsCQ("iss_id"))) Then%> <%Else%> <%End If%> <%End If%> <%If NOT pageIsEditable Then%> <%Else%> <%End If%> <%rsCQ.MoveNext WEnd rsCQ.Close()%> <%Else%> <%End If%>
Fixed Issue Id  Issue DB  Summary Issue Type  Priority Status Note  
&iss_id=<%=rsCQ("iss_id")%>','Issue Details')" class="txt_linked pointer"><%=rsCQ("iss_num")%> <%If Cint(rsCQ("iss_db")) = enumCLEARQUEST_DEVI_ID Then%> DEVI <%Else%> UNKNOWN <%End If%> <%=NewLine_To_BR ( To_HTML ( rsCQ("summary") ) )%> <%=rsCQ("issue_type")%> <%=rsCQ("priority")%> <%=rsCQ("Status")%>&iss_id=<%=rsCQ("iss_id")%>','Issue Notes')">">&iss_id=<%=rsCQ("iss_id")%>','Issue Notes')">">&iss_id=<%=rsCQ("iss_id")%>&pv_id=<%=parPv_id%>&rtag_id=<%=parRtag_id%>" onClick="return vixConfirmDelete('this issue from Release Manager');">Delete this issue from the list
 
<%End If%> <%If retVal <> 0 Then Response.write enumMSSQL_ERROR End If Else If FixedIssues ( parPv_id ) Then Response.write "Not specified.
" Else Response.write "Required!
" End If End If rsQry.Close() Set rsQry = nothing %>

<%End If%>
Issues

<% Dim issueInfo, el, key Set issueInfo = CreateObject( "Scripting.Dictionary" ) Call getJiraIssueDetails(parPv_id,issueInfo, 0) If issueInfo.Count > 0 Then %>
JIRA Issues <%BuildEditButtonRaw pageIsEditable, "Import JIRA issues", "Edit", TRUE, "src='images/i_download.gif' width='12' height='12' hspace='2' border='0' align='absmiddle'", "MM_openVixIFrame('_wform_import_jira_issues.asp?pv_id="&parPv_id&"&rtag_id="&parRtag_id&"&skip_open=true','Import Issues')" %>
<% For Each key In issueInfo Set el = issueInfo.item(key) %> <%If el.Exists("resolution") Then %> <%Else%> <%End If%> <%If NOT pageIsEditable Then%> <%Else%> <%End If%> <% Next Set issueInfo = nothing %>
Fixed IssueId IssueDB Summary IssueType Priority Status Note
" target="_blank" class="txt_linked"><%=key%> <%=el.item("type")%> <%=NewLine_To_BR ( To_HTML ( el.item("summary") ) )%> <%=el.item("issuetype")%> <%=el.item("priority")%> <%=el.item("status")%> &pv_id=<%=parPv_id%>&rtag_id=<%=parRtag_id%>" onClick="return vixConfirmDelete('this issue from Release Manager');"> Delete this issue from the list
<%End If%>
Fixed Issues <%BuildEditButtonRaw pageIsEditable, "Import Fixed Issues from ClearQuest", "Edit", TRUE, "src='images/i_download.gif' width='12' height='12' hspace='2' border='0' align='absmiddle'", "MM_openVixIFrame('_wform_import_issues.asp?pv_id="&parPv_id&"&rtag_id="&parRtag_id&"&skip_open=true','Import Fixed Issues')" %>
<%retVal = Get_Package_Issues ( parPv_id, SQLstr, fixedIssDict, notesIssDict, enumISSUES_STATE_FIXED ) If (retVal > 0) Then retVal = Get_CQ_Issues ( SQLstr, rsCQ ) If retVal = 0 Then%> <%If ((NOT rsCQ.BOF) AND (NOT rsCQ.EOF)) Then%> <%While ((NOT rsCQ.BOF) AND (NOT rsCQ.EOF))%> <%If sectionIsEditable AND pageIsEditable Then Dim noteImage If notesIssDict.Exists (Cstr(rsCQ("iss_db") &"."& rsCQ("iss_id"))) Then noteImage = "images/i_note_on.gif" Else noteImage = "images/i_note_off.gif" End If End If %> <%If sectionIsEditable AND pageIsEditable Then%> <%If notesIssDict.Exists (Cstr(rsCQ("iss_db") &"."& rsCQ("iss_id"))) Then%> <%Else%> <%End If%> <%Else%> <%If notesIssDict.Exists (Cstr(rsCQ("iss_db") &"."& rsCQ("iss_id"))) Then%> <%Else%> <%End If%> <%End If%> <%If NOT pageIsEditable Then%> <%Else%> <%End If%> <%rsCQ.MoveNext WEnd rsCQ.Close()%> <%Else%> <%End If%>
Fixed IssueId IssueDB Summary IssueType Priority Status Note
<%BuildEditButtonRaw TRUE, rsCQ("iss_num") , "Edit", TRUE, "", "MM_openVixIFrame('_wform_issues_details.asp?iss_db="&rsCQ("iss_db")&"&iss_id="&rsCQ("iss_id")&"','Issue Details')" %> <%If CInt(rsCQ("iss_db")) = enumCLEARQUEST_DEVI_ID Then%> DEVI <%Else%> UNKNOWN <%End If%> <%=NewLine_To_BR ( To_HTML ( rsCQ("summary") ) )%> <%=rsCQ("issue_type")%> <%=rsCQ("priority")%> <%=rsCQ("Status")%> &iss_id=<%=rsCQ("iss_id")%>','Issue Notes')"> "> &iss_id=<%=rsCQ("iss_id")%>','Issue Notes')"> "> &iss_id=<%=rsCQ("iss_id")%>&pv_id=<%=parPv_id%>&rtag_id=<%=parRtag_id%>" onClick="return vixConfirmDelete('this issue from Release Manager');"> Delete this issue from the list
 
<%End If%> <%If retVal <> 0 Then Response.write enumMSSQL_ERROR%> <%End If%>
Outstanding Issues <%If pageIsEditable Then%> Import Outstanding Issues from ClearQuest <%End If%>
<%retVal = Get_Package_Issues ( parPv_id, SQLstr, fixedIssDict, notesIssDict, enumISSUES_STATE_IMPORTED ) If (retVal > 0) Then retVal = Get_CQ_Issues ( SQLstr, rsCQ ) If retVal = 0 Then%> <%If pageIsEditable Then%> <%End If%> <%If ((NOT rsCQ.BOF) AND (NOT rsCQ.EOF)) Then%> <%While ((NOT rsCQ.BOF) AND (NOT rsCQ.EOF))%> <%If pageIsEditable Then%> <%End If%> <%If sectionIsEditable AND pageIsEditable Then%> <%If notesIssDict.Exists (Cstr(rsCQ("iss_db") &"."& rsCQ("iss_id"))) Then%> <%Else%> <%End If%> <%Else%> <%If notesIssDict.Exists (Cstr(rsCQ("iss_db") &"."& rsCQ("iss_id"))) Then%> <%Else%> <%End If%> <%End If%> <%If NOT pageIsEditable Then%> <%Else%> <%End If%> <%rsCQ.MoveNext WEnd rsCQ.Close()%> <%If pageIsEditable Then%> <%End If%> <%Else%> <%If pageIsEditable Then%> <%End If%> <%End If%>
FixedIssue Id  Issue DB  Summary Issue Type  Priority Status Note  
"> &iss_id=<%=rsCQ("iss_id")%>','Issue Details')" class="txt_linked"> <%=rsCQ("iss_num")%> <%If CInt(rsCQ("iss_db")) = enumCLEARQUEST_DEVI_ID Then%> DEVI <%Else%> UNKNOWN <%End If%> <%=NewLine_To_BR ( To_HTML ( rsCQ("summary") ) )%> <%=rsCQ("issue_type")%> <%=rsCQ("priority")%> <%=rsCQ("Status")%> &iss_id=<%=rsCQ("iss_id")%>','Issue Notes')"> <%=notesIssDict.Item (Cstr(rsCQ("> &iss_id=<%=rsCQ("iss_id")%>','Issue Notes')"> Add Note <%=notesIssDict.Item (Cstr(rsCQ("> &iss_id=<%=rsCQ("iss_id")%>&pv_id=<%=parPv_id%>&rtag_id=<%=parRtag_id%>" onClick="return vixConfirmDelete('this issue from Release Manager');"> Delete this issue from the list
 
<%End If%> <%If retVal <> 0 Then Response.write enumMSSQL_ERROR%> <%End If%>

<%If IsNull(pkgInfoHash.Item ("is_patch")) Then%>
Dependency Issues <% If Request("ShowIssues") <> "" Then retVal = Get_Package_Issues ( parPv_id, SQLstr, NULL, NULL, NULL ) Else retVal = 0 %> <% End If If (retVal > 0) Then retVal = Get_Dependency_CQ_Issues ( SQLstr, rsCQ, depIssDict, issArr ) If retVal = 0 Then%> <% currG1 = 0 G1_template = _ ""&_ " "&_ ""&_ ""&_ " "&_ "" Set rsDepIss = OraDatabase.DbCreateDynaset( SQL_Dependency_Issues( parPv_id ), cint(0)) %> <%If ((NOT rsDepIss.BOF) AND (NOT rsDepIss.EOF)) Then%> <%While ((NOT rsDepIss.BOF) AND (NOT rsDepIss.EOF))%> <% iss_db_id = Cstr(rsDepIss("iss_db") &"."& rsDepIss("iss_id")) G1_style = Replace(G1_template, "/*DEP_NAME_VERSION*/", ""& rsDepIss("pkg_name") &" "& rsDepIss("pkg_version") &"") If IsNull(rsDepIss("iss_id")) Then If IsNull(rsDepIss("reasons")) Then G1_style = Replace(G1_style, "/*REASONS*/", "
Reason for this version is not specified.") Else G1_style = Replace(G1_style, "/*REASONS*/", "
"& NewLine_To_BR ( To_HTML ( rsDepIss("reasons") ) ) ) End If Else If IsNull(rsDepIss("reasons")) Then G1_style = Replace(G1_style, "/*REASONS*/", "") Else G1_style = Replace(G1_style, "/*REASONS*/", "
"& NewLine_To_BR ( To_HTML ( rsDepIss("reasons") ) ) ) End If End If Call Group_By ( rsDepIss("pv_id"), G1_style, currG1 ) If NOT IsNull(rsDepIss("iss_id")) Then If rsDepIss("pv_id") <> currG1 Then currG1 = rsDepIss("pv_id")%> <%End If%> <%End If%> <%rsDepIss.MoveNext WEnd rsDepIss.Close() Set rsDepIss = nothing%> <%Else%> <%End If%> <%End If%> <%If retVal <> 0 Then Response.write enumMSSQL_ERROR%> <%End If%>
Show Issues of Dependent Packages
/*DEP_NAME_VERSION*//*REASONS*/
Fixed IssueId Issue DB Summary IssueType Priority
<%If CInt(rsDepIss("iss_state")) = enumISSUES_STATE_FIXED Then%> <%Else%> <%End If%> <%=asDepIss( iss_db_id, enumLoc_iss_num )%> <%If CInt(asDepIss( iss_db_id, enumLoc_iss_db )) = enumCLEARQUEST_DEVI_ID Then%> DEVI <%Else%> UNKNOWN <%End If%> <%=asDepIss( iss_db_id, enumLoc_summary)%> <%=asDepIss( iss_db_id, enumLoc_issue_type)%> <%=asDepIss( iss_db_id, enumLoc_priority)%>

<%End If%> <% Dim testCheckMSG, testCheckMSG_ID, testCheckNote, testCheckTestsFound Call CheckUnitTestsState ( parPv_id, testCheckMSG, testCheckMSG_ID, testCheckNote, testCheckTestsFound ) Set rsQry = OraDatabase.DbCreateDynaset( SQL_Unit_Tests ( parPv_id ), cint(0)) %>
Unit Tests <%If testCheckMSG_ID = 0 AND (pkgInfoHash.Item("dlocked") <> "Y") Then%>   <%=testCheckMSG%> <%End If%>
<%If ( scriptName = "fixed_issues.asp" ) Then%> <%If objAccessControl.UserLogedIn AND (pageIsEditable OR (pkgInfoHash.Item("dlocked") = "Y")) Then%> New TestAdd new test. <%End If%> <%If (NOT testCheckTestsFound) AND (testCheckMSG_ID = 0) Then%> Click here if Not Done!Add new test. <%End If%> <%End If%>
<%If (NOT testCheckTestsFound) AND (testCheckMSG_ID = -1) Then%>
<%Call DisplayInfo ( "UNIT_TEST_NOT_DONE", 300 )%> Last Modified: <%=testCheckMSG%>
<%=NewLine_To_BR( To_HTML ( testCheckNote ) )%>
<%End If%> <% Dim ShowApply: ShowApply = FALSE While ((NOT rsQry.BOF) AND (NOT rsQry.EOF) )%> <%If NOT pageIsEditable Then%> <%If NOT IsNull(rsQry("test_id")) AND ( scriptName = "fixed_issues.asp") Then %> <%Else %> <%End If%> <%Else %> <%End If %> <%If rsQry("test_type_id") <> CStr(enumTEST_TYPE_AUTOBUILD_UTF) Then %> <%If CInt(rsQry("test_type_id")) = enumTEST_TYPE_AUTOMATIC Then %> <% Else %> <%End If%> <%Else%> <%End If%> <% If ( ( pageIsEditable _ AND (scriptName = "fixed_issues.asp") _ AND (IsNull(rsQry("test_accepted")) OR (rsQry("test_accepted") = enumUNIT_TEST_NOTACCEPTED))) _ OR _ ( objAccessControl.UserLogedIn _ AND (scriptName = "fixed_issues.asp") _ AND (pkgInfoHash.Item("dlocked") = "Y") _ AND (IsNull(rsQry("test_accepted")) OR (rsQry("test_accepted") = enumUNIT_TEST_NOTACCEPTED)) _ AND (rsQry("test_type_id") <> CStr(enumTEST_TYPE_AUTOBUILD_UTF))) ) Then %> <% Else %> <%End If%> <% rsQry.MoveNext WEnd %>
Test Type Test Summary Test
Completed
Passed
# / Total
Results Accepted Review
Completed
Comments /
Issue#
&pv_id=<%=parPv_id%>&rtag_id=<%=parRtag_id%>','Update Unit Test')" class="txt_linked"><%=rsQry("test_type_name")%><%=rsQry("test_type_name")%>_wform_update_unit_test.asp<%Else%>_wform_unit_test.asp<%End If%>?test_id=<%=rsQry("test_id")%>&pv_id=<%=parPv_id%>&rtag_id=<%=parRtag_id%>&test_type_id=<%=rsQry("test_type_id")%>','Update Unit Test')" class="txt_linked"><%=rsQry("test_type_name")%><%=NewLine_To_BR( To_HTML( rsQry("test_summary") ))%> <%If ( NOT IsNull(rsQry("tester")) ) Then%><%=DisplayDate ( rsQry("completion_date") )%>
by <%=emailField(rsQry("tester"),rsQry("tester_email"))%><%End If%>
<%=rsQry("numof_test")%> <%If NOT IsNull( rsQry("results_url") ) Then%> <%If InStr( rsQry("results_url"), "http://" ) = 1 Then%> " target="_blank">View test results <%Else%> " target="_blank">View test results <%End If%> <%End If%> <%If NOT IsNull( rsQry("results_attachment_name") ) Then%> " target="_blank">View test results <%End If%> <%=FormatAccepted(rsQry("test_accepted"), rsQry("test_id"))%> <%ShowApply = true%> <%If NOT IsNull(rsQry("reviewee")) Then%><%=DisplayDate ( rsQry("acceptance_date") )%>
by <%=emailField(rsQry("reviewee"),rsQry("reviewee_email"))%><%End If%>
<%=NewLine_To_BR( To_HTML( rsQry("review_comments") ))%>See Unit Tests tab<%If NOT IsNull(rsQry("test_id")) Then%>&pv_id=<%=parPv_id%>&rtag_id=<%=parRtag_id%>" onClick="return vixConfirmDelete('this unit test');">Remove this test.<%End If%>
<%If ShowApply AND (testCheckTestsFound) AND (testCheckMSG_ID = 0) AND ( scriptName = "fixed_issues.asp" ) AND pageIsEditable Then%> <%End If%>

<%Set rsQry = OraDatabase.DbCreateDynaset( SQL_CodeReview ( parPv_id ), cint(0))%>
Code Review
<%If ( scriptName = "fixed_issues.asp" ) Then%> <%If objAccessControl.UserLogedIn AND (pageIsEditable OR (pkgInfoHash.Item("dlocked") = "Y")) Then%> Edit <%End If%> <%If rsQry.RecordCount > 0 Then%> <%If NOT IsNull(rsQry("date_of_review")) Then%>   View <%End If%> <%End If%> <%End If%>
<%If ((NOT rsQry.BOF) AND (NOT rsQry.EOF)) Then%> <%If NOT IsNull(rsQry("date_of_review")) Then%>
Date of Review <%=DisplayDate ( rsQry("date_of_review") )%>       Time Spent: <%=rsQry("time_spent")%> hrs
Reason for Review <%=NewLine_To_BR( To_HTML( rsQry("review_reason") ))%>
Review Results <%=DecodeOverallResult( rsQry("review_results") )%>
Issues Raised <%=NewLine_To_BR( To_HTML( rsQry("issues_raised") ))%>
<%Else%>
No details found.
<%End If%> <%Else%>
No details found.
<%End If%> <%Call GetCodeReviewURLs( parPv_id, rsCodeReviewURL )%> <%If IsNull(rsCodeReviewURL("full_url")) Then %> <%Else%> <%If ((NOT rsCodeReviewURL.BOF) AND (NOT rsCodeReviewURL.EOF)) Then While ((NOT rsCodeReviewURL.BOF) AND (NOT rsCodeReviewURL.EOF))%> <%If (Left(rsCodeReviewURL("url"),4) = "http") Then%> <%Else%> <%End If%> <%If (scriptName = "fixed_issues.asp") AND objAccessControl.UserLogedIn AND (pageIsEditable OR (pkgInfoHash.Item("dlocked") = "Y")) Then%> <%Else%> <%End If%> <%rsCodeReviewURL.MoveNext WEnd Else%> <%End If End If%>
Code Review URL for this version > <%If (scriptName = "fixed_issues.asp") AND objAccessControl.UserLogedIn AND (pageIsEditable OR (pkgInfoHash.Item("dlocked") = "Y")) Then%> New <%End If%>
No details found.
URL Reason for Review Date of Review Last Modified
" target="_blank" class="txt_linked"><%=rsCodeReviewURL("url")%>" target="_blank" class="txt_linked"><%=rsCodeReviewURL("full_url")%><%=rsCodeReviewURL("reason")%> <%=DisplayDate(rsCodeReviewURL("date_of_review"))%> <%=DisplayDate(rsCodeReviewURL("last_modified"))%>','Edit Code Review URL')" class="txt_linked">Edit this code review URL &pv_id=<%=parPv_id%>&rtag_id=<%=parRtag_id%>" onclick="return vixConfirmDelete('this code review URL from Release Manager');">Delete this code review URL
<%If pkgInfoHash.Item ("comments") = "Rippled Build." Then Call LastPvId(pkgInfoHash.Item ("pv_id")) While rsQry("comments") = "Rippled Build." Call LastPvId(rsQry("last_pv_id")) Wend Dim sOldPkgVersion Dim oldDlocked Call Get_Pkg_Short_Info ( rsQry("pv_id"), NULL, NULL, sOldPkgVersion, NULL, NULL, oldDlocked ) Call GetCodeReviewURLs( rsQry("pv_id"), rsCodeReviewURL ) %> <%If IsNull(rsCodeReviewURL("url")) Then%> <%Else%> <%If ((NOT rsCodeReviewURL.BOF) AND (NOT rsCodeReviewURL.EOF)) Then While ((NOT rsCodeReviewURL.BOF) AND (NOT rsCodeReviewURL.EOF))%> <%If (Left(rsCodeReviewURL("url"),4) = "http") Then%> <%Else%> <%End If%> <%If (scriptName = "fixed_issues.asp") AND objAccessControl.UserLogedIn AND (pageIsEditable OR (oldDlocked = "Y")) Then%> <%Else%> <%End If%> <%rsCodeReviewURL.MoveNext WEnd Else%> <%End If End If%>
>Code Review URL for last non-ripple build ("><%=sOldPkgVersion%>)
No details found.
URL Reason for Review Date of Review Last Modified
" target="_blank" class="txt_linked"><%=rsCodeReviewURL("url")%>" target="_blank" class="txt_linked"><%=rsCodeReviewURL("full_url")%><%=rsCodeReviewURL("reason")%> <%=rsCodeReviewURL("date_of_review")%> <%=rsCodeReviewURL("last_modified")%>&rtag_id=<%=parRtag_id%>&cr_id=<%=rsCodeReviewURL("cr_id")%>','Edit Code Review URL')" class="txt_linked">Edit this code review URL &pv_id=<%=rsCodeReviewURL("pv_id")%>&rtag_id=<%=parRtag_id%>" onclick="return vixConfirmDelete('this code review URL from Release Manager');">Delete this code review URL
<%End If%>

Additional Notes
<%If pageIsEditable Then%> New Note <%End If%>
<%Set rsQry = OraDatabase.DbCreateDynaset( SQL_Additional_Notes ( parPv_id ), cint(0))%> <%If rsQry.RecordCount < 1 Then%> <%End If%> <%While ((NOT rsQry.BOF) AND (NOT rsQry.EOF))%> <%rsQry.MoveNext WEnd%>
 
<%If pageIsEditable Then%> &pv_id=<%=parPv_id%>&rtag_id=<%=parRtag_id%>','Update Note')" class="pointer">Edit<%=To_HTML (rsQry("note_title"))%> <%Else%> <%=To_HTML (rsQry("note_title"))%> <%End If%> <%If pageIsEditable Then%> &pv_id=<%=parPv_id%>&rtag_id=<%=parRtag_id%>" onClick="return vixConfirmDelete('this note');">Remove this note. <%End If%>
<%=NewLine_To_BR( To_HTML ( rsQry("note_body") ) )%>
Last Modified: <%=rsQry("lastmod")%>

<%End If%>