Rev 5958 | Blame | Compare with Previous | Last modification | View Log | RSS feed
<%@LANGUAGE="VBSCRIPT"%><%'====================================================='| |'| Product Issues |'| |'=====================================================%><%Option explicitResponse.Expires = 0%><!--#include file="common/globals.asp"--><!--#include file="common/config.asp"--><!--#include file="common/common_subs.asp"--><!--#include file="common/_product_common.asp"--><%'------------ ACCESS CONTROL ------------------%><!--#include file="_access_control_general.asp"--><%'------------ VARIABLE DEFINITION -------------Dim rsQryDim errNumberDim objIssueCollectorDim altRowColorDim currRowColorDim outORDER_BYDim a, b, VersionList, sqlstrA'------------ CONSTANTS DECLARATION -----------Const LIMG_FIXED = "<img src='icons/i_tick.gif' border='0' hspace='2' title='Latest Fixed Issue'>"Const LIMG_OLD_FIXED = "<img src='icons/i_tick_gray.gif' border='0' hspace='2' title='Old Fixed Issue'>"'------------ VARIABLE INIT -------------------errNumber = 0Set objIssueCollector = CreateObject("Scripting.Dictionary")'------------ CONDITIONS ----------------------'----------------------------------------------%><%'----------------------------------------------------------------------------------------------------------------------------------------Sub GetIssueDetails ( nIssID, nIssDB, oIssueCollector, nErrNumber )Dim query, rsCQquery = GetQuery ("IssuesList_cqDEVI.sql")query = Replace( query, "/*DEVIiss*/", nIssID )Set rsCQ = NothingnErrNumber = GetCQIssue ( query, rsCQ )If nErrNumber = 0 ThenIf (NOT rsCQ.BOF) AND (NOT rsCQ.EOF) ThenoIssueCollector.Item ("iss_id") = CStr( rsCQ("iss_id") )oIssueCollector.Item ("iss_num") = CStr( rsCQ("iss_num") )oIssueCollector.Item ("summary") = CStr( rsCQ("summary") )oIssueCollector.Item ("status") = CStr( rsCQ("status") )oIssueCollector.Item ("priority") = CStr( rsCQ("priority") )oIssueCollector.Item ("issue_type") = CStr( rsCQ("issue_type") )End IfEnd IfSet rsCQ = NothingEnd Sub'----------------------------------------------------------------------------------------------------------------------------------------Function GetCQIssue ( sSQL, oRsCQ )On Error Resume NextSet oRsCQ = OraDatabase.DbCreateDynaset( sSQL, cint(0))GetCQIssue = Err.NumberEnd Function'----------------------------------------------------------------------------------------------------------------------------------------Function SetRowColor( cRowColor )If cRowColor = "" ThenSetRowColor = altRowColorElseSetRowColor = ""End IfEnd Function'----------------------------------------------------------------------------------------------------------------------------------------'----------------------------------------------------------------------------------------------------------------------------------------Sub PreviousVersions(a, b)If CLng(a) < CLng(b) ThenWhile CLng(a) < CLng(b)b = LastPvId(b)If CLng(a) < CLng(b) ThenVersionList = VersionList + ","& bEnd IfWendEnd IfIf CLng(b) < CLng(a) ThenWhile CLng(b) < CLng(a)a = LastPvId(a)If CLng(b) < CLng(a) ThenVersionList = VersionList + ","& aEnd IfWendEnd IfEnd Sub'----------------------------------------------------------------------------------------------------------------------------------------Sub GetDependencies(pv_id_a, pv_id_b)VersionList = "0"Set sqlstrA = OraDatabase.DbCreateDynaset("select distinct dpv_id from package_dependencies where pv_id IN ("& pv_id_b &") and dpv_id NOT IN (SELECT dpv_id from package_dependencies where pv_id ="& pv_id_a &" ) order by dpv_id desc", cint(0))If sqlstrA.RecordCount <> 0 ThenWhile ((NOT sqlstrA.BOF) AND (NOT sqlstrA.EOF))VersionList = VersionList + ","& sqlstrA("dpv_id")sqlstrA.MoveNextWendEnd IfsqlstrA.Close()Set sqlstrA = NothingEnd Sub'----------------------------------------------------------------------------------------------------------------------------------------Function LastPvId(pvId)Dim qryASet qryA = OraDatabase.DbCreateDynaset("SELECT LAST_PV_ID FROM PACKAGE_VERSIONS WHERE PV_ID="&pvId , cint(0))LastPvId = pvIdIf pvId <> qryA("last_pv_id") ThenLastPvId = qryA("last_pv_id")Elseerrormsg = trueEnd IfqryA.Close()Set qryA = NothingEnd Function'----------------------------------------------------------------------------------------------------------------------------------------%><%'------------ RUN BEFORE PAGE RENDER ----------'----------------------------------------------%><html><head><title>Deployment Manager</title><link rel="shortcut icon" href="<%=FavIcon%>"/><meta HTTP-EQUIV="Pragma" CONTENT="no-cache"><meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"><link href="scripts/deployment_manager.css?ver=<%=VixVerNum%>" rel="stylesheet" type="text/css"><script language="JavaScript" src="scripts/common.js?ver=<%=VixVerNum%>"></script></head><body leftmargin="0" topmargin="0"><!-- HEADER ++++++++++++++++ --><!--#include file="_header.asp"--><!-- +++++++++++++++++++++++ --><!-- MAIN MENU + CRUMBS ++++++++++++++++ --><!--#include file="_main_menu.asp"--><!-- +++++++++++++++++++++++++++++++++++++ --><table width="100%" border="0" cellspacing="0" cellpadding="0"><tr><td width="1%" valign="top" background="images/bg_bage_0.gif"><!-- NODE BROWSER ++++++++++++++++++++++ --><!--#include file="_bom_browser.asp"--><!-- END OF NODE BROWSER +++++++++++++++ --></td><td width="1" background="images/bg_bage_1.gif"><img src="images/spacer.gif" width="1" height="600"></td><td width="100%" valign="top" bgcolor="#FFFFFF"><table width="100%" border="0" cellspacing="0" cellpadding="0"><tr><td valign="top" background="images/bg_blue.gif"></td><td align="right" valign="bottom" background="images/bg_blue.gif" class="body_txtw"><%Call RenderTitle( objProdCollector )%></td><td background="images/bg_blue.gif"><img src="images/spacer.gif" width="10" height="20"></td></tr><tr><td width="1%" valign="top" background="images/bg_blue.gif"></td><td width="100%" valign="bottom" background="images/bg_blue.gif"><!-- TAB CONTROLS ++++++++++++++++++++++ --><!--#include file="_tabs_definition.asp"--><%Set objTabControl = New TabControlobjTabControl.TemplateDoc = ReadFile( Server.MapPath("controls/ERGTabStyleWinXP/tab_style.html") ) ' Supply tab style definitionobjTabControl.TabStyle = "StyleWinXP"objTabControl.AddTabDefnition ( arrProdTabDef )objTabControl.SelectByName ("Issues")objTabControl.Render ()%><!-- END OF TAB CONTROLS +++++++++++++++ --></td><td width="1%" background="images/bg_blue.gif"><img src="images/spacer.gif" width="10" height="35"></td></tr><tr><td background="images/bg_bage_0.gif"><img src="images/spacer.gif" width="30" height="10"></td><td background="images/bg_bage_0.gif"><!-- BUTTONS CONTROL +++++++++++++++++++ --><%'-- Define Action buttons on this tab'aTabBtnsDef = Array("btnAddOs", "width=10", "btnCopyOs", "btnPasteOs")'Call LoadTabActionButtons ( aTabBtnsDef, objBtnControl )'objBtnControl.Render( aTabBtnsDef )%><!-- +++++++++++++++++++++++++++++++++++ --></td><td background="images/bg_blue.gif"><img src="images/p_bar_corrner.gif" width="17" height="42"></td></tr><tr><td> </td><td> </td><td valign="top"><%If Request.Cookies( enumCOOKIE_NAME )( "user_bar" ) = "hide" Then%><a href="<%=SCRIPT_NAME%>?user_bar=<%=enumDEFAULT%>&<%=objPMod.ComposeURL()%>"><img src="icons/b_left.gif" title="Maximize favourits" width="13" height="13" vspace="5" border="0"></a><%End If%></td></tr></table><table width="100%" border="0" cellspacing="10" cellpadding="0"><tr><td><!-- PAGE DETAILS +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ --><%OraDatabase.Parameters.Add "PROD_ID", dbPARprod_id, ORAPARM_INPUT, ORATYPE_NUMBER%><form name="OldVersion" method="get" action="<%=SCRIPT_NAME%>"><SPAN class="body_txt">Changes since version </SPAN><select name="old_prod_id" class="form_ivalue"><option value=""></option><%Dim nOldProdIDnOldProdID = Request("old_prod_id")If nOldProdID = "" Then nOldProdID = objProdCollector.Item ("last_pv_id")OraDatabase.Parameters.Add "PKG_ID", objProdCollector.Item ("pkg_id"), ORAPARM_INPUT, ORATYPE_NUMBEROraDatabase.Parameters.Add "V_EXT", objProdCollector.Item ("v_ext"), ORAPARM_INPUT, ORATYPE_NUMBEROraDatabase.Parameters.Add "OLD_PROD_ID", nOldProdID, ORAPARM_INPUT, ORATYPE_NUMBERSet rsQry = OraDatabase.DbCreateDynaset( GetQuery ("ProductVersionsCombo.sql"), ORADYN_DEFAULT )While (NOT rsQry.BOF) AND (NOT rsQry.EOF)%><option value="<%=rsQry("pv_id")%>" <%=rsQry("selected")%>><%=rsQry("pkg_version")%></option><%rsQry.MoveNextWEndrsQry.CloseOraDatabase.Parameters.Remove "PROD_ID"OraDatabase.Parameters.Remove "PKG_ID"OraDatabase.Parameters.Remove "V_EXT"OraDatabase.Parameters.Remove "OLD_PROD_ID"%></select><%=objPMod.ComposeHiddenTags()%><input type="submit" name="btn" value="Compare" class="form_btn"><hr width="100%" size="1px" noshade color="Black"></form><table width="100%" border="0" cellspacing="3" cellpadding="0"><tr><td width="1%" nowrap align="right" <%Call DisplayColumn("Fixed", "icon_fixed", outORDER_BY, FALSE)%></td><td width="1%" nowrap align="right" <%Call DisplayColumn("Issue ID", "iss_id", outORDER_BY, TRUE)%></td><td width="100%" nowrap align="right" <%Call DisplayColumn("Summary", NULL, outORDER_BY, FALSE)%></td><td width="1%" nowrap align="right" <%Call DisplayColumn("Issue Type", NULL, outORDER_BY, FALSE)%></td><td width="1%" nowrap align="right" <%Call DisplayColumn("Priority", NULL, outORDER_BY, FALSE)%></td><td width="1%" nowrap align="right" <%Call DisplayColumn("Source", "pkg_name", outORDER_BY, FALSE)%></td></tr><%OraDatabase.Parameters.Add "PROD_ID", dbPARprod_id, ORAPARM_INPUT, ORATYPE_NUMBEROraDatabase.Parameters.Add "OLD_PROD_ID", objProdCollector.Item("last_pv_id"), ORAPARM_INPUT, ORATYPE_NUMBEROraDatabase.Parameters.Add "OTHER_PROD_ID", dbPARprod_id, ORAPARM_INPUT, ORATYPE_NUMBERSet rsQry = OraDatabase.DbCreateDynaset( GetQuery ("IssuesList.sql") & outORDER_BY, ORADYN_DEFAULT )altRowColor = "bgcolor='#F7F7F8'"currRowColor = ""Do While (NOT rsQry.BOF) AND (NOT rsQry.EOF)Call GetIssueDetails ( rsQry("iss_id"), rsQry("iss_db"), objIssueCollector, errNumber )currRowColor = SetRowColor( currRowColor )If errNumber <> 0 Then Exit Do%><tr><td <%=currRowColor%> nowrap valign="top" align="center"><%=Eval(rsQry("icon_fixed"))%></td><td <%=currRowColor%> nowrap valign="top"><a href="javascript:;" onClick="MM_openBrWindow('<%=RELEASE_MANAGER_URL%>/_wform_issues_details.asp?iss_db=<%=rsQry("iss_db")%>&iss_id=<%=rsQry("iss_id")%>','IssueDetails','resizable=yes,width=580,height=500')" class="body_link"><%=objIssueCollector.Item ("iss_num")%></a></td><td <%=currRowColor%> valign="top" class="body_rowlite"><%=objIssueCollector.Item ("summary")%></td><td <%=currRowColor%> nowrap valign="top" class="body_rowlite"><%=objIssueCollector.Item ("issue_type")%></td><td <%=currRowColor%> nowrap valign="top" class="body_rowlite"><%=objIssueCollector.Item ("priority")%></td><td <%=currRowColor%> nowrap valign="top" class="body_rowlite"><%=rsQry("pkg_name").Value &" "& rsQry("pkg_version").Value%></a></td></tr><%rsQry.MoveNext%><%If (NOT rsQry.BOF) AND (NOT rsQry.EOF) Then%><tr><td colspan="6"><img src="images/spacer.gif" width="1" height="1"></td></tr><%End If%><%LoopOraDatabase.Parameters.Remove "PROD_ID"OraDatabase.Parameters.Remove "OLD_PROD_ID"OraDatabase.Parameters.Remove "OTHER_PROD_ID"VersionList = "0"On Error Resume NextDim rsQryLastSet rsQryLast = OraDatabase.DbCreateDynaset( "SELECT LAST_PV_ID FROM PACKAGE_VERSIONS WHERE PV_ID="& Request("prod_id"), cint(0))If rsQryLast("last_pv_id") <> Request("old_prod_id") ThenCall PreviousVersions( Request("prod_id"), Request("old_prod_id") )End IfCall GetDependencies(Request("prod_id"), VersionList + ","+ Request("old_prod_id"))Set rsQry = OraDatabase.DbCreateDynaset( "select * from cq_issues cq, packages pkg, package_versions pv "&_" where pv.pv_id IN ("&VersionList&") and pv.pkg_id = pkg.pkg_id and cq.pv_id = pv.pv_id order by pv.pv_id desc", ORADYN_DEFAULT )'Response.Write VersionListDo While (NOT rsQry.BOF) AND (NOT rsQry.EOF)Call GetIssueDetails ( rsQry("iss_id"), rsQry("iss_db"), objIssueCollector, errNumber )currRowColor = SetRowColor( currRowColor )If errNumber <> 0 Then Exit Do%><tr><td <%=currRowColor%> nowrap valign="top" align="center"><%=Eval("LIMG_OLD_FIXED")%></td><td <%=currRowColor%> nowrap valign="top" class="body_link"><%=objIssueCollector.Item ("iss_num")%></td><td <%=currRowColor%> valign="top" class="body_rowlite"><%=objIssueCollector.Item ("summary")%></td><td <%=currRowColor%> nowrap valign="top" class="body_rowlite"><%=objIssueCollector.Item ("issue_type")%></td><td <%=currRowColor%> nowrap valign="top" class="body_rowlite"><%=objIssueCollector.Item ("priority")%></td><%If IsEmpty(objIssueCollector.Item ("summary")) Then%><td <%=currRowColor%> nowrap valign="top" class="body_rowlite"></a></td><%Else%><td <%=currRowColor%> nowrap valign="top" class="body_rowlite"><%=rsQry("pkg_name").Value &" "& rsQry("pkg_version").Value%></a></td><%End If%></tr><%rsQry.MoveNext%><%If (NOT rsQry.BOF) AND (NOT rsQry.EOF) Then%><tr><td colspan="6"><img src="images/spacer.gif" width="1" height="1"></td></tr><%End If%><%LooprsQry.Close()Set rsQry = NothingrsQryLast.Close()Set rsQryLast = Nothing%><%If errNumber <> 0 Then '--- Handle any errors during data retrieve from MS SQL database (i.e. Cannot connect to DB.)%><tr><td colspan="6"><%Response.write enumMSSQL_ERROR%></td></tr><%End If%><tr><td colspan="6" background="images/bg_table_border.gif"><table width="100%" border="0" cellspacing="1" cellpadding="2"><tr><td nowrap background="images/bg_table_col.gif"><img src="images/spacer.gif" width="1" height="1"></td></tr></table></td></tr></table><!-- ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ --></td></tr></table></td><td width="1%" valign="top" background="images/bg_favourits.gif"><!-- PERSONAL BAR +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ --><!--#include file="_personal_bar.asp"--><!-- END OF PERSONAL BAR ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ --></td></tr><tr><td background="images/bg_bage_0a.gif"><img src="images/spacer.gif" width="1" height="15"></td><td background="images/bg_bage_1.gif"><img src="images/spacer.gif" width="1" height="1"></td><td bgcolor="#FFFFFF"><img src="images/spacer.gif" width="1" height="1"></td><td bgcolor="#FFFFFF"><img src="images/spacer.gif" width="1" height="1"></td></tr><tr><td bgcolor="#FFFFFF"><img src="images/spacer.gif" width="1" height="20"></td><td bgcolor="#FFFFFF"><img src="images/spacer.gif" width="1" height="1"></td><td bgcolor="#FFFFFF"><img src="images/spacer.gif" width="1" height="1"></td><td bgcolor="#FFFFFF"> </td></tr></table><!-- FOOTER ++++++++++++++++ --><!--#include file="_footer.asp"--><!-- +++++++++++++++++++++++ --></body></html>