Subversion Repositories DevTools

Rev

Rev 5958 | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
5355 dpurdie 1
<%@LANGUAGE="VBSCRIPT"%>
2
<%
3
'=====================================================
4
'|                                                   |
5
'|			          Product Issues 			 	 |
6
'|                                                   |
7
'=====================================================
8
%>
9
<%
10
Option explicit
11
Response.Expires = 0
12
%>
13
<!--#include file="common/globals.asp"-->
14
<!--#include file="common/config.asp"-->
15
<!--#include file="common/common_subs.asp"-->
16
<!--#include file="common/_product_common.asp"-->
17
<%
18
'------------ ACCESS CONTROL ------------------
19
%>
20
<!--#include file="_access_control_general.asp"-->
21
<%
22
'------------ VARIABLE DEFINITION -------------
23
Dim rsQry
24
Dim errNumber
25
Dim objIssueCollector
26
Dim altRowColor
27
Dim currRowColor
28
Dim outORDER_BY
29
Dim a, b, VersionList, sqlstrA
30
'------------ CONSTANTS DECLARATION -----------
31
Const LIMG_FIXED = "<img src='icons/i_tick.gif' border='0' hspace='2' title='Latest Fixed Issue'>"
32
Const LIMG_OLD_FIXED = "<img src='icons/i_tick_gray.gif' border='0' hspace='2' title='Old Fixed Issue'>"
33
'------------ VARIABLE INIT -------------------
34
errNumber = 0
35
Set objIssueCollector = CreateObject("Scripting.Dictionary")
36
'------------ CONDITIONS ----------------------
37
'----------------------------------------------
38
%>
39
<%
40
'----------------------------------------------------------------------------------------------------------------------------------------
41
Sub GetIssueDetails ( nIssID, nIssDB, oIssueCollector, nErrNumber )
42
	Dim query, rsCQ
43
 
44
	query = GetQuery ("IssuesList_cqDEVI.sql")
45
	query = Replace( query, "/*DEVIiss*/", nIssID )
46
 
47
	Set rsCQ = Nothing
48
 
49
	nErrNumber = GetCQIssue ( query, rsCQ )
50
 
51
	If nErrNumber = 0 Then
52
		If (NOT rsCQ.BOF) AND (NOT rsCQ.EOF) Then
53
			oIssueCollector.Item ("iss_id") = CStr( rsCQ("iss_id") )
54
			oIssueCollector.Item ("iss_num") = CStr( rsCQ("iss_num") )
55
			oIssueCollector.Item ("summary") = CStr( rsCQ("summary") )
56
			oIssueCollector.Item ("status") = CStr( rsCQ("status") )
57
			oIssueCollector.Item ("priority") = CStr( rsCQ("priority") )
58
			oIssueCollector.Item ("issue_type") = CStr( rsCQ("issue_type") )
59
 
60
		End If
61
	End If
62
 
63
	Set rsCQ = Nothing
64
 
65
End Sub
66
'----------------------------------------------------------------------------------------------------------------------------------------
67
Function  GetCQIssue ( sSQL, oRsCQ )
68
 
69
    On Error Resume Next
70
    Set oRsCQ = OraDatabase.DbCreateDynaset( sSQL, cint(0))
71
    GetCQIssue = Err.Number
72
 
73
End Function
74
'----------------------------------------------------------------------------------------------------------------------------------------
75
Function SetRowColor( cRowColor )
76
	If cRowColor = "" Then
77
		SetRowColor = altRowColor
78
	Else
79
		SetRowColor = ""
80
	End If
81
End Function
82
'----------------------------------------------------------------------------------------------------------------------------------------
83
'----------------------------------------------------------------------------------------------------------------------------------------
84
Sub PreviousVersions(a, b)
85
 
86
	If CLng(a) < CLng(b) Then
87
		While CLng(a) < CLng(b)
88
			b = LastPvId(b)
89
			If CLng(a) < CLng(b) Then
90
				VersionList = VersionList + ","& b
91
			End If
92
		Wend
93
	End If	
94
 
95
	If CLng(b) < CLng(a) Then
96
		While CLng(b) < CLng(a)
97
			a = LastPvId(a)
98
			If CLng(b) < CLng(a) Then
99
				VersionList = VersionList + ","& a
100
			End If
101
		Wend	
102
	End If
103
 
104
 
105
End Sub
106
'----------------------------------------------------------------------------------------------------------------------------------------
107
Sub GetDependencies(pv_id_a, pv_id_b)
108
 
109
	VersionList = "0"
110
	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))	
111
 
112
 
113
	If sqlstrA.RecordCount <> 0 Then
114
		While ((NOT sqlstrA.BOF) AND (NOT sqlstrA.EOF))
115
			VersionList = VersionList + ","& sqlstrA("dpv_id")
116
			sqlstrA.MoveNext
117
		Wend
118
	End If
119
 
120
	sqlstrA.Close()
121
	Set sqlstrA = Nothing
122
 
123
End Sub
124
'----------------------------------------------------------------------------------------------------------------------------------------
125
Function LastPvId(pvId)
126
	Dim qryA
127
	Set qryA = OraDatabase.DbCreateDynaset("SELECT LAST_PV_ID FROM PACKAGE_VERSIONS WHERE PV_ID="&pvId , cint(0))
128
 
129
	LastPvId = pvId
130
 
131
	If pvId <> qryA("last_pv_id") Then	
132
		LastPvId = qryA("last_pv_id")
133
	Else 
134
		errormsg = true
135
	End If
136
 
137
	qryA.Close()
138
	Set qryA = Nothing
139
 
140
End Function
141
'----------------------------------------------------------------------------------------------------------------------------------------
142
%>
143
<%
144
'------------ RUN BEFORE PAGE RENDER ----------
145
'----------------------------------------------
146
%>
147
<html>
148
<head>
149
<title>Deployment Manager</title>
150
<link rel="shortcut icon" href="<%=FavIcon%>"/>
151
<meta HTTP-EQUIV="Pragma" CONTENT="no-cache">
152
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
6663 dpurdie 153
<link href="scripts/deployment_manager.css?ver=<%=VixVerNum%>" rel="stylesheet" type="text/css">
154
<script language="JavaScript" src="scripts/common.js?ver=<%=VixVerNum%>"></script>
5355 dpurdie 155
</head>
156
 
157
<body leftmargin="0" topmargin="0">
158
<!-- HEADER ++++++++++++++++ -->
159
<!--#include file="_header.asp"-->
160
<!-- +++++++++++++++++++++++ -->
161
<!-- MAIN MENU  +  CRUMBS ++++++++++++++++ -->
162
<!--#include file="_main_menu.asp"-->
163
<!-- +++++++++++++++++++++++++++++++++++++ -->
164
<table width="100%"  border="0" cellspacing="0" cellpadding="0">
165
  <tr>
166
    <td width="1%" valign="top" background="images/bg_bage_0.gif">
167
	<!-- NODE BROWSER ++++++++++++++++++++++ -->
168
	<!--#include file="_bom_browser.asp"-->
169
	<!-- END OF NODE BROWSER +++++++++++++++ -->
170
	</td>
171
    <td width="1" background="images/bg_bage_1.gif"><img src="images/spacer.gif" width="1" height="600"></td>
172
    <td width="100%" valign="top" bgcolor="#FFFFFF">
173
	<table width="100%"  border="0" cellspacing="0" cellpadding="0">
174
	  <tr>
175
        <td valign="top" background="images/bg_blue.gif"></td>
176
        <td align="right" valign="bottom" background="images/bg_blue.gif" class="body_txtw"><%Call RenderTitle( objProdCollector )%></td>
177
        <td background="images/bg_blue.gif"><img src="images/spacer.gif" width="10" height="20"></td>
178
      </tr>
179
      <tr>
180
        <td width="1%" valign="top" background="images/bg_blue.gif"></td>
181
        <td width="100%" valign="bottom" background="images/bg_blue.gif">
182
		<!-- TAB CONTROLS ++++++++++++++++++++++ -->
183
		<!--#include file="_tabs_definition.asp"-->
184
		<%
185
		Set objTabControl = New TabControl
186
		objTabControl.TemplateDoc = ReadFile( Server.MapPath("controls/ERGTabStyleWinXP/tab_style.html") ) ' Supply tab style definition
187
		objTabControl.TabStyle = "StyleWinXP"
188
		objTabControl.AddTabDefnition ( arrProdTabDef )
189
		objTabControl.SelectByName ("Issues")
190
		objTabControl.Render ()
191
		%>
192
		<!-- END OF TAB CONTROLS +++++++++++++++ -->
193
		</td>
194
        <td width="1%" background="images/bg_blue.gif"><img src="images/spacer.gif" width="10" height="35"></td>
195
        </tr>
196
      <tr>
197
        <td background="images/bg_bage_0.gif"><img src="images/spacer.gif" width="30" height="10"></td>
198
        <td background="images/bg_bage_0.gif">
199
		<!-- BUTTONS CONTROL +++++++++++++++++++ -->
200
		<%
201
		'-- Define Action buttons on this tab
202
		'aTabBtnsDef = Array("btnAddOs", "width=10", "btnCopyOs", "btnPasteOs")
203
 
204
		'Call LoadTabActionButtons ( aTabBtnsDef, objBtnControl )
205
 
206
		'objBtnControl.Render( aTabBtnsDef )
207
		%>
208
		<!-- +++++++++++++++++++++++++++++++++++ -->
209
		</td>
210
        <td background="images/bg_blue.gif"><img src="images/p_bar_corrner.gif" width="17" height="42"></td>
211
        </tr>
212
      <tr>
213
        <td>&nbsp;</td>
214
        <td>&nbsp;</td>
215
        <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>
216
        </tr>
217
    </table>
218
	<table width="100%"  border="0" cellspacing="10" cellpadding="0">
219
      <tr>
220
        <td>
221
		<!-- PAGE DETAILS +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -->
222
		<%
223
		OraDatabase.Parameters.Add "PROD_ID", 		dbPARprod_id,		ORAPARM_INPUT, ORATYPE_NUMBER 
224
		%>
225
		<form name="OldVersion" method="get" action="<%=SCRIPT_NAME%>">
226
			<SPAN class="body_txt">Changes since version&nbsp;</SPAN>
227
			<select name="old_prod_id" class="form_ivalue">
228
			   <option value=""></option>
229
			  <%
230
			  Dim nOldProdID
231
			  nOldProdID = Request("old_prod_id")
232
			  If nOldProdID = "" Then nOldProdID = objProdCollector.Item ("last_pv_id")
233
 
234
 
235
			  OraDatabase.Parameters.Add "PKG_ID", 		objProdCollector.Item ("pkg_id"),	ORAPARM_INPUT, ORATYPE_NUMBER 
236
			  OraDatabase.Parameters.Add "V_EXT", 		objProdCollector.Item ("v_ext"),	ORAPARM_INPUT, ORATYPE_NUMBER 
237
			  OraDatabase.Parameters.Add "OLD_PROD_ID", nOldProdID,	ORAPARM_INPUT, ORATYPE_NUMBER 
238
 
239
			  Set rsQry = OraDatabase.DbCreateDynaset( GetQuery ("ProductVersionsCombo.sql"), ORADYN_DEFAULT )
240
			  While (NOT rsQry.BOF) AND (NOT rsQry.EOF)
241
			  %>
242
				<option value="<%=rsQry("pv_id")%>" <%=rsQry("selected")%>><%=rsQry("pkg_version")%></option>
243
			  <%
244
			  	rsQry.MoveNext
245
			  WEnd
246
			  rsQry.Close
247
 
248
			  OraDatabase.Parameters.Remove "PROD_ID"
249
			  OraDatabase.Parameters.Remove "PKG_ID"
250
			  OraDatabase.Parameters.Remove "V_EXT"
251
			  OraDatabase.Parameters.Remove "OLD_PROD_ID"
252
			  %>
253
			</select>
254
			<%=objPMod.ComposeHiddenTags()%>
255
			<input type="submit" name="btn" value="Compare" class="form_btn">
256
		<hr width="100%" size="1px" noshade color="Black">
257
		</form>
258
 
259
		<table width="100%"  border="0" cellspacing="3" cellpadding="0">
260
          <tr>	
261
		  	<td width="1%" nowrap align="right" <%Call DisplayColumn("Fixed", "icon_fixed", outORDER_BY, FALSE)%></td>
262
            <td width="1%" nowrap align="right" <%Call DisplayColumn("Issue ID", "iss_id", outORDER_BY, TRUE)%></td>
263
			<td width="100%" nowrap align="right" <%Call DisplayColumn("Summary", NULL, outORDER_BY, FALSE)%></td>
264
			<td width="1%" nowrap align="right" <%Call DisplayColumn("Issue Type", NULL, outORDER_BY, FALSE)%></td>
265
			<td width="1%" nowrap align="right" <%Call DisplayColumn("Priority", NULL, outORDER_BY, FALSE)%></td>
266
			<td width="1%" nowrap align="right" <%Call DisplayColumn("Source", "pkg_name", outORDER_BY, FALSE)%></td>
267
          </tr>
268
		  <%
269
 
270
		  OraDatabase.Parameters.Add "PROD_ID", 		dbPARprod_id,		ORAPARM_INPUT, ORATYPE_NUMBER 
271
		  OraDatabase.Parameters.Add "OLD_PROD_ID",  	objProdCollector.Item("last_pv_id"),		ORAPARM_INPUT, ORATYPE_NUMBER 
272
		  OraDatabase.Parameters.Add "OTHER_PROD_ID", 	dbPARprod_id,		ORAPARM_INPUT, ORATYPE_NUMBER 
273
 
274
		  Set rsQry = OraDatabase.DbCreateDynaset( GetQuery ("IssuesList.sql") & outORDER_BY, ORADYN_DEFAULT )
275
 
276
		  altRowColor = "bgcolor='#F7F7F8'"
277
		  currRowColor = ""
278
 
279
		  Do While (NOT rsQry.BOF) AND (NOT rsQry.EOF)
280
		  	Call GetIssueDetails ( rsQry("iss_id"), rsQry("iss_db"), objIssueCollector, errNumber )
281
 
282
			currRowColor = SetRowColor( currRowColor )
283
 
284
			If errNumber <> 0 Then Exit Do
285
		  %>
286
          <tr>
287
            <td <%=currRowColor%> nowrap valign="top" align="center"><%=Eval(rsQry("icon_fixed"))%></td>
288
            <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>
289
			<td <%=currRowColor%> valign="top" class="body_rowlite"><%=objIssueCollector.Item ("summary")%></td>
290
			<td <%=currRowColor%> nowrap valign="top" class="body_rowlite"><%=objIssueCollector.Item ("issue_type")%></td>
291
            <td <%=currRowColor%> nowrap valign="top" class="body_rowlite"><%=objIssueCollector.Item ("priority")%></td>
292
			<td <%=currRowColor%> nowrap valign="top" class="body_rowlite"><%=rsQry("pkg_name").Value &" "& rsQry("pkg_version").Value%></a></td>
293
          </tr>
294
		  <%rsQry.MoveNext%>
295
 
296
		  <%If (NOT rsQry.BOF) AND (NOT rsQry.EOF) Then%>
297
          <tr>
298
            <td colspan="6"><img src="images/spacer.gif" width="1" height="1"></td>
299
          </tr>
300
		  <%End If%>
301
 
302
		  <%
303
		  Loop
304
 
305
		  OraDatabase.Parameters.Remove "PROD_ID"
306
		  OraDatabase.Parameters.Remove "OLD_PROD_ID"
307
		  OraDatabase.Parameters.Remove "OTHER_PROD_ID"
308
 
309
		  VersionList = "0"			
310
		  On Error Resume Next
311
		  Dim rsQryLast
312
		  Set rsQryLast = OraDatabase.DbCreateDynaset( "SELECT LAST_PV_ID FROM PACKAGE_VERSIONS WHERE PV_ID="& Request("prod_id"), cint(0)) 
313
 
314
 
315
		  If rsQryLast("last_pv_id") <> Request("old_prod_id") Then	
316
			Call PreviousVersions( Request("prod_id"), Request("old_prod_id") )
317
		  End If
318
 
319
		  Call GetDependencies(Request("prod_id"), VersionList + ","+ Request("old_prod_id"))
320
 
321
 
322
		  Set rsQry = OraDatabase.DbCreateDynaset( "select * from cq_issues cq, packages pkg, package_versions pv "&_
323
		  " 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 )
324
		  'Response.Write VersionList
325
		  Do While (NOT rsQry.BOF) AND (NOT rsQry.EOF)
326
		  	Call GetIssueDetails ( rsQry("iss_id"), rsQry("iss_db"), objIssueCollector, errNumber )
327
 
328
			currRowColor = SetRowColor( currRowColor )
329
 
330
			If errNumber <> 0 Then Exit Do
331
		  %>
332
          <tr>
333
			<td <%=currRowColor%> nowrap valign="top" align="center"><%=Eval("LIMG_OLD_FIXED")%></td>		            
334
            <td <%=currRowColor%> nowrap valign="top" class="body_link"><%=objIssueCollector.Item ("iss_num")%></td>
335
			<td <%=currRowColor%> valign="top" class="body_rowlite"><%=objIssueCollector.Item ("summary")%></td>
336
			<td <%=currRowColor%> nowrap valign="top" class="body_rowlite"><%=objIssueCollector.Item ("issue_type")%></td>
337
            <td <%=currRowColor%> nowrap valign="top" class="body_rowlite"><%=objIssueCollector.Item ("priority")%></td>
338
			<%If IsEmpty(objIssueCollector.Item ("summary")) Then%>
339
				<td <%=currRowColor%> nowrap valign="top" class="body_rowlite"></a></td>
340
			<%Else%>
341
				<td <%=currRowColor%> nowrap valign="top" class="body_rowlite"><%=rsQry("pkg_name").Value &" "& rsQry("pkg_version").Value%></a></td>
342
			<%End If%>
343
 
344
          </tr>
345
		  <%rsQry.MoveNext%>
346
 
347
		  <%If (NOT rsQry.BOF) AND (NOT rsQry.EOF) Then%>
348
          <tr>
349
            <td colspan="6"><img src="images/spacer.gif" width="1" height="1"></td>
350
          </tr>
351
		  <%End If%>
352
 
353
		  <%
354
		  Loop		  	
355
 
356
		  rsQry.Close()
357
		  Set rsQry = Nothing			  
358
		  rsQryLast.Close()
359
		  Set rsQryLast = Nothing
360
		  %>
361
 
362
 
363
		  <%If errNumber <> 0 Then		'--- Handle any errors during data retrieve from MS SQL database (i.e. Cannot connect to DB.)%>
364
		  <tr>
365
            <td colspan="6">
366
			  <%Response.write enumMSSQL_ERROR%>
367
			</td>
368
          </tr>
369
		  <%End If%>
370
 
371
          <tr>
372
            <td colspan="6" background="images/bg_table_border.gif">
373
			 <table width="100%"  border="0" cellspacing="1" cellpadding="2">
374
              <tr>
375
                <td nowrap background="images/bg_table_col.gif"><img src="images/spacer.gif" width="1" height="1"></td>
376
              </tr>
377
             </table>
378
			</td>
379
          </tr>
380
         </table>	
381
		<!-- ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -->
382
		</td>
383
      </tr>
384
    </table>
385
	</td>
386
    <td width="1%" valign="top" background="images/bg_favourits.gif">
387
	<!-- PERSONAL BAR +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -->
388
	<!--#include file="_personal_bar.asp"-->
389
	<!-- END OF PERSONAL BAR ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -->
390
   </td>
391
  </tr>
392
  <tr>
393
    <td background="images/bg_bage_0a.gif"><img src="images/spacer.gif" width="1" height="15"></td>
394
    <td background="images/bg_bage_1.gif"><img src="images/spacer.gif" width="1" height="1"></td>
395
    <td bgcolor="#FFFFFF"><img src="images/spacer.gif" width="1" height="1"></td>
396
    <td bgcolor="#FFFFFF"><img src="images/spacer.gif" width="1" height="1"></td>
397
  </tr>
398
  <tr>
399
    <td bgcolor="#FFFFFF"><img src="images/spacer.gif" width="1" height="20"></td>
400
    <td bgcolor="#FFFFFF"><img src="images/spacer.gif" width="1" height="1"></td>
401
    <td bgcolor="#FFFFFF"><img src="images/spacer.gif" width="1" height="1"></td>
402
    <td bgcolor="#FFFFFF">&nbsp;</td>
403
  </tr>
404
</table>
405
<!-- FOOTER ++++++++++++++++ -->
406
<!--#include file="_footer.asp"-->
407
<!-- +++++++++++++++++++++++ -->
408
</body>
409
</html>