| 5357 |
dpurdie |
1 |
<%@LANGUAGE="VBSCRIPT"%>
|
|
|
2 |
<%
|
|
|
3 |
Option explicit
|
|
|
4 |
Response.Expires = 0 ' always load the page, dont store
|
|
|
5 |
%>
|
|
|
6 |
<%
|
|
|
7 |
'=====================================================
|
|
|
8 |
' Import Issues
|
|
|
9 |
'=====================================================
|
|
|
10 |
%>
|
|
|
11 |
<!--#include file="common/conf.asp"-->
|
|
|
12 |
<!--#include file="common/globals.asp"-->
|
|
|
13 |
<!--#include file="common/qstr.asp"-->
|
|
|
14 |
<!--#include file="common/common_subs.asp"-->
|
|
|
15 |
<!--#include file="common/common_dbedit.asp"-->
|
|
|
16 |
<!--#include file="common/formating.asp"-->
|
|
|
17 |
<!--#include file="common/_popup_window_common.asp"-->
|
|
|
18 |
<%
|
|
|
19 |
' Set rfile parameter. This is a return page after Login
|
|
|
20 |
Call objPMod.StoreParameter ( "rfile", "fixed_issues.asp" )
|
|
|
21 |
'------------ ACCESS CONTROL ------------------
|
|
|
22 |
%>
|
|
|
23 |
<!--#include file="_access_control_login.asp"-->
|
|
|
24 |
<!--#include file="_access_control_general.asp"-->
|
|
|
25 |
<!--#include file="_access_control_project.asp"-->
|
|
|
26 |
<%
|
|
|
27 |
'------------ Variable Definition -------------
|
|
|
28 |
Dim parPv_id
|
|
|
29 |
Dim parFRiss_db
|
|
|
30 |
Dim parFRiss_id
|
|
|
31 |
Dim parFRiss_num
|
|
|
32 |
Dim rsCQ
|
|
|
33 |
Dim rspPage ' current page number for multiple page results
|
|
|
34 |
Dim rspTotal ' total number of records
|
|
|
35 |
Dim rspCount ' Record counter
|
|
|
36 |
Dim rspTotalPages ' Total number of pages required to display results
|
|
|
37 |
Dim imported
|
|
|
38 |
Dim retVal
|
|
|
39 |
Dim rsCQTemp
|
|
|
40 |
Dim SQLstr
|
|
|
41 |
Dim parPackage
|
|
|
42 |
Dim parProject
|
|
|
43 |
Dim parProduct
|
|
|
44 |
Dim parSkipOpen
|
|
|
45 |
Dim disabled
|
|
|
46 |
Dim IsOptionUsed
|
|
|
47 |
Dim parCategMain
|
|
|
48 |
Dim parCategMinor
|
|
|
49 |
Dim parIStates
|
|
|
50 |
Dim parTitle
|
|
|
51 |
Dim parDoQuery
|
|
|
52 |
Dim oIStates
|
|
|
53 |
Dim checked
|
|
|
54 |
Dim summaryText
|
|
|
55 |
|
|
|
56 |
'------------ Constants Declaration -----------
|
| 5590 |
dpurdie |
57 |
Const rspMax = 15 ' maximum number of records displayed
|
| 5357 |
dpurdie |
58 |
Const LENUM_ALL = "ALL"
|
|
|
59 |
Const LCONST_STAR = "*"
|
|
|
60 |
'------------ Variable Init -------------------
|
|
|
61 |
parPv_id = Request("pv_id")
|
|
|
62 |
parRtag_id = Request("rtag_id")
|
|
|
63 |
rspPage = Request("rpg")
|
|
|
64 |
parFRiss_db = Request("FRiss_db")
|
|
|
65 |
parFRiss_id = Request("FRiss_id")
|
|
|
66 |
parFRiss_num = Request("FRiss_num")
|
|
|
67 |
parPackage = Request("package")
|
|
|
68 |
parProject = Request("project")
|
|
|
69 |
parProduct = Request("product")
|
|
|
70 |
parCategMain = Request("categmain")
|
|
|
71 |
parCategMinor = Request("categminor")
|
|
|
72 |
parSkipOpen = Request("skip_open")
|
|
|
73 |
parIStates = Request("istates")
|
|
|
74 |
parTitle = Request("title")
|
|
|
75 |
parDoQuery = Request("doQuery")
|
|
|
76 |
|
|
|
77 |
imported = FALSE
|
|
|
78 |
IsOptionUsed = FALSE
|
|
|
79 |
'-- CONDITIONS --------------------------------
|
|
|
80 |
If rspPage = "" Then rspPage = 1
|
|
|
81 |
If ( Request("btn") = "Filter" ) OR ( Request("btn") = "Find" ) Then rspPage = 1
|
|
|
82 |
If (parFRiss_num = "") Then parFRiss_num = LENUM_ALL
|
|
|
83 |
If (parTitle = "") Then parTitle = LCONST_STAR ' Default
|
|
|
84 |
|
|
|
85 |
If parFRiss_db = "" Then parFRiss_db = enumCLEARQUEST_DEVI_ID ' Default
|
|
|
86 |
|
|
|
87 |
If CInt(parFRiss_db) = enumCLEARQUEST_DEVI_ID Then
|
|
|
88 |
If (parPackage <> "") OR (parProject <> "") OR (parProduct <> "") OR (parTitle <> LCONST_STAR) Then IsOptionUsed = TRUE
|
|
|
89 |
Else
|
|
|
90 |
If (parCategMain <> "") OR (parCategMinor <> "") Then IsOptionUsed = TRUE
|
|
|
91 |
End If
|
|
|
92 |
|
|
|
93 |
If (parDoQuery = "") Then parDoQuery = "0"
|
|
|
94 |
|
|
|
95 |
' Get DEVI issue states checked
|
|
|
96 |
Set oIStates = GetIStates()
|
|
|
97 |
|
|
|
98 |
|
|
|
99 |
'----------------------------------------------
|
|
|
100 |
'Response.write "parPackage="& parPackage &", parProject="& parProject &", parProduct="& parProduct &", parSkipOpen="& parSkipOpen &"<br>"
|
|
|
101 |
'Response.write "parPv_id="& parPv_id &", parRtag_id="& parRtag_id &", rspPage="& rspPage &", parFRiss_db="& parFRiss_db &", parFRiss_id="& parFRiss_id &", parFRiss_num="& parFRiss_num
|
|
|
102 |
'Response.write "parIStates="& parIStates &", parSkipOpen="& parSkipOpen
|
|
|
103 |
%>
|
|
|
104 |
<%
|
|
|
105 |
'------------------------------------------------------------------------------------------------------------------------------------
|
|
|
106 |
Function GetIStates()
|
|
|
107 |
Dim IStates, aStates, stateId
|
|
|
108 |
Set IStates = CreateObject("Scripting.Dictionary")
|
|
|
109 |
|
|
|
110 |
If parIStates = "" Then
|
|
|
111 |
IStates.Item ("ALL") = "checked"
|
|
|
112 |
Else
|
|
|
113 |
|
|
|
114 |
aStates = Split( Replace( parIStates, " ", "" ), ",")
|
|
|
115 |
|
|
|
116 |
For Each stateId In aStates
|
|
|
117 |
IStates.Item (CStr(stateId)) = "checked"
|
|
|
118 |
Next
|
|
|
119 |
|
|
|
120 |
|
|
|
121 |
End If
|
|
|
122 |
|
|
|
123 |
Set GetIStates = IStates
|
|
|
124 |
|
|
|
125 |
End Function
|
|
|
126 |
'------------------------------------------------------------------------------------------------------------------------------------
|
|
|
127 |
Function Get_Issues ( NNiss_db, NNiss_num, NNrecordCount, OOrsCQ )
|
|
|
128 |
Dim SQLstr, issARR, iss_num, col_name, Title
|
|
|
129 |
|
|
|
130 |
|
|
|
131 |
If CInt(NNiss_db) = enumCLEARQUEST_DEVI_ID Then
|
|
|
132 |
SQLstr = _
|
|
|
133 |
" SELECT si.dbid AS iss_id, si.new_num AS iss_num, si.headline AS summary, sd.NAME AS state"&_
|
|
|
134 |
" FROM release_manager.CQ_software_issue si,"&_
|
|
|
135 |
" release_manager.CQ_STATEDEF sd"&_
|
|
|
136 |
" WHERE si.STATE = sd.ID "
|
|
|
137 |
End If
|
|
|
138 |
|
|
|
139 |
|
|
|
140 |
'-- User filter --
|
|
|
141 |
If (CInt(NNiss_db) = enumCLEARQUEST_DEVI_ID) Then
|
|
|
142 |
' Add package Filter
|
|
|
143 |
If (parPackage <> "") Then
|
|
|
144 |
SQLstr = SQLstr &" AND si.package_ref = '"& Replace( parPackage, "'","''" ) &"'"
|
|
|
145 |
End If
|
|
|
146 |
|
|
|
147 |
' Add project Filter
|
|
|
148 |
If (parProject <> "") Then
|
|
|
149 |
SQLstr = SQLstr &" AND si.project = '"& Replace( parProject, "'","''" ) &"'"
|
|
|
150 |
End If
|
|
|
151 |
|
|
|
152 |
' Add product Filter
|
|
|
153 |
If (parProduct <> "") Then
|
|
|
154 |
SQLstr = SQLstr &" AND si.product = '"& Replace( parProduct, "'","''" ) &"'"
|
|
|
155 |
End If
|
|
|
156 |
|
|
|
157 |
' Add Issue State Filter
|
|
|
158 |
If (parIStates <> "") Then
|
|
|
159 |
SQLstr = SQLstr &" AND sd.id IN ("& parIStates &")"
|
|
|
160 |
End If
|
|
|
161 |
|
|
|
162 |
' Add Title keyword search
|
|
|
163 |
If ( parTitle <> LCONST_STAR ) Then
|
|
|
164 |
Title = Replace( parTitle, "'", "''" )
|
|
|
165 |
Title = Replace( Title, "*", "%" )
|
|
|
166 |
SQLstr = SQLstr &" AND si.headline LIKE ( '"& Title &"' )"
|
|
|
167 |
End If
|
|
|
168 |
|
|
|
169 |
End If
|
|
|
170 |
|
|
|
171 |
|
|
|
172 |
'-- Keyword search --
|
|
|
173 |
If ( NNiss_num <> LENUM_ALL ) Then
|
|
|
174 |
issARR = Split( Replace( NNiss_num, " ", ""), "," )
|
|
|
175 |
|
|
|
176 |
col_name = "new_num"
|
|
|
177 |
SQLstr = SQLstr & " AND ( "
|
|
|
178 |
For Each iss_num IN issARR
|
|
|
179 |
SQLstr = SQLstr &" ("& col_name &" LIKE '%"& iss_num &"%') OR"
|
|
|
180 |
Next
|
|
|
181 |
|
|
|
182 |
SQLstr = Left( SQLstr, Len(SQLstr) - 2 ) ' Remove last 'OR'
|
|
|
183 |
|
|
|
184 |
SQLstr = SQLstr & " ) "
|
|
|
185 |
|
|
|
186 |
End If
|
|
|
187 |
|
|
|
188 |
|
|
|
189 |
'-- Get record count ---
|
|
|
190 |
NNrecordCount = Get_Record_Count( SQLstr )
|
|
|
191 |
|
|
|
192 |
|
|
|
193 |
'-- Order by --
|
|
|
194 |
If CInt(NNiss_db) = enumCLEARQUEST_DEVI_ID Then
|
|
|
195 |
SQLstr = SQLstr &" ORDER BY si.submit_date DESC"
|
|
|
196 |
End If
|
|
|
197 |
|
|
|
198 |
'Response.write SQLstr
|
|
|
199 |
On Error Resume Next
|
|
|
200 |
Set OOrsCQ = OraDatabase.DbCreateDynaset( SQLstr, cint(0))
|
|
|
201 |
Get_Issues = Err.Number
|
|
|
202 |
'Response.write "Result Code" & Get_Issues
|
|
|
203 |
|
|
|
204 |
End Function
|
|
|
205 |
'------------------------------------------------------------------------------------------------------------------------------------
|
|
|
206 |
Function Get_Record_Count ( SSsql )
|
|
|
207 |
Dim rsTemp, sqlTemp
|
|
|
208 |
|
|
|
209 |
sqlTemp = _
|
|
|
210 |
" SELECT COUNT(*) as record_count "&_
|
|
|
211 |
" FROM ("& SSsql &") ct"
|
|
|
212 |
|
|
|
213 |
Set rsTemp = OraDatabase.DbCreateDynaset( sqlTemp, cint(0))
|
|
|
214 |
|
|
|
215 |
If (NOT rsTemp.BOF) AND (NOT rsTemp.EOF) Then
|
|
|
216 |
Get_Record_Count = rsTemp("record_count")
|
|
|
217 |
Else
|
|
|
218 |
Get_Record_Count = 0
|
|
|
219 |
End If
|
|
|
220 |
|
|
|
221 |
rsTemp.Close
|
|
|
222 |
Set rsTemp = nothing
|
|
|
223 |
End Function
|
|
|
224 |
'------------------------------------------------------------------------------------------------------------------------------------
|
|
|
225 |
Sub Get_CQ_Issues_States ( sIssIdList, nIssDB, outObjCQissState )
|
|
|
226 |
Dim rsTemp, SQLstr
|
|
|
227 |
|
|
|
228 |
If CInt(nIssDB) = enumCLEARQUEST_DEVI_ID Then
|
|
|
229 |
SQLstr = _
|
|
|
230 |
" SELECT si.dbid, sd.name AS state_name, si.state AS state_id"&_
|
|
|
231 |
" FROM release_manager.CQ_software_issue si,"&_
|
|
|
232 |
" release_manager.CQ_statedef sd"&_
|
|
|
233 |
" WHERE si.STATE = sd.ID"&_
|
|
|
234 |
" AND si.dbid IN ("& sIssIdList &")"
|
|
|
235 |
End If
|
|
|
236 |
Set rsTemp = OraDatabase.DbCreateDynaset( SQLstr, cint(0))
|
|
|
237 |
|
|
|
238 |
While (NOT rsTemp.BOF) AND (NOT rsTemp.EOF)
|
|
|
239 |
outObjCQissState.Add CStr(rsTemp("dbid")), CStr(rsTemp("state_name"))
|
|
|
240 |
rsTemp.MoveNext
|
|
|
241 |
WEnd
|
|
|
242 |
|
|
|
243 |
rsTemp.Close
|
|
|
244 |
Set rsTemp = nothing
|
|
|
245 |
End Sub
|
|
|
246 |
'------------------------------------------------------------------------------------------------------------------------------------
|
|
|
247 |
Function Is_Pkg_Official ( nPv_id )
|
|
|
248 |
Dim rsTemp, Query_String
|
|
|
249 |
Query_String = _
|
|
|
250 |
" SELECT dlocked"&_
|
|
|
251 |
" FROM package_versions "&_
|
|
|
252 |
" WHERE pv_id = "& nPv_id
|
|
|
253 |
Set rsTemp = OraDatabase.DbCreateDynaset( Query_String, cint(0))
|
|
|
254 |
If rsTemp("dlocked") = "Y" Then
|
|
|
255 |
Is_Pkg_Official = TRUE
|
|
|
256 |
Else
|
|
|
257 |
Is_Pkg_Official = FALSE
|
|
|
258 |
End If
|
|
|
259 |
rsTemp.Close
|
|
|
260 |
Set rsTemp = nothing
|
|
|
261 |
End Function
|
|
|
262 |
'------------------------------------------------------------------------------------------------------------------------------------
|
|
|
263 |
Function Set_Issue_State ( sCQState )
|
|
|
264 |
If parSkipOpen <> "" Then
|
|
|
265 |
Set_Issue_State = enumISSUES_STATE_FIXED
|
|
|
266 |
|
|
|
267 |
Else
|
|
|
268 |
Set_Issue_State = enumISSUES_STATE_IMPORTED
|
|
|
269 |
|
|
|
270 |
End If
|
|
|
271 |
End Function
|
|
|
272 |
'------------------------------------------------------------------------------------------------------------------------------------
|
|
|
273 |
Sub Import_Issues ( NNpv_id, NNiss_db, NNiss_id_list )
|
|
|
274 |
Dim issArr, iss_id, oCQissState, iss_num, iss_state, iss_state_human_readable
|
|
|
275 |
If NNiss_id_list = "" Then Exit Sub
|
|
|
276 |
Set oCQissState = CreateObject("Scripting.Dictionary")
|
|
|
277 |
|
|
|
278 |
issArr = Split ( NNiss_id_list, ",")
|
|
|
279 |
|
|
|
280 |
Call Get_CQ_Issues_States ( NNiss_id_list, NNiss_db, oCQissState )
|
|
|
281 |
|
|
|
282 |
objEH.TryORA ( OraSession )
|
|
|
283 |
On Error Resume Next
|
|
|
284 |
|
|
|
285 |
For Each iss_id In issArr
|
|
|
286 |
iss_num = GetIssueNumber ( NNiss_db, iss_id )
|
|
|
287 |
iss_state = Set_Issue_State ( oCQissState.Item (Trim(iss_id)) )
|
|
|
288 |
|
|
|
289 |
If Err.Number = 0 Then
|
|
|
290 |
OraDatabase.ExecuteSQL _
|
|
|
291 |
" INSERT INTO cq_issues ( pv_id, iss_db, iss_id, iss_state, mod_date )"&_
|
|
|
292 |
" VALUES ( "& NNpv_id &", "& NNiss_db &", "& iss_id &", "& iss_state &", "& ORA_SYSDATE &")"
|
|
|
293 |
|
|
|
294 |
If iss_state = 0 Then
|
|
|
295 |
iss_state_human_readable = "No"
|
|
|
296 |
Else
|
|
|
297 |
iss_state_human_readable = "Yes"
|
|
|
298 |
End If
|
|
|
299 |
|
|
|
300 |
If Err.Number = 0 Then
|
|
|
301 |
OraDatabase.ExecuteSQL _
|
|
|
302 |
"BEGIN Log_Action ( "& NNpv_id &", 'issue_add', "& objAccessControl.UserId &", 'Issue number: "& iss_num &", Fixed: "& iss_state_human_readable &"' ); END;"
|
|
|
303 |
End If
|
|
|
304 |
End If
|
|
|
305 |
|
|
|
306 |
Next
|
|
|
307 |
|
|
|
308 |
objEH.CatchORA ( OraSession )
|
|
|
309 |
End Sub
|
|
|
310 |
'------------------------------------------------------------------------------------------------------------------------------------
|
|
|
311 |
%>
|
|
|
312 |
<%
|
|
|
313 |
'Process submition
|
|
|
314 |
If CBool(Request("action")) AND (Request("btn") = "Import") AND objAccessControl.UserLogedIn Then
|
|
|
315 |
Call Import_Issues ( parPv_id, parFRiss_db, parFRiss_id )
|
|
|
316 |
imported = TRUE
|
|
|
317 |
Call OpenInParentWindow ("fixed_issues.asp?pv_id="& parPv_id &"&rtag_id="& parRtag_id)
|
|
|
318 |
|
|
|
319 |
End If
|
|
|
320 |
%>
|
|
|
321 |
<%
|
|
|
322 |
'-------------- Main Line ---------------
|
|
|
323 |
If parDoQuery <> "0" Then
|
|
|
324 |
retVal = Get_Issues ( parFRiss_db, parFRiss_num, rspTotal, rsCQ )
|
|
|
325 |
End If
|
|
|
326 |
|
|
|
327 |
' total number of pages required
|
|
|
328 |
rspTotalPages = rspTotal \ rspMax
|
|
|
329 |
If (rspTotal Mod rspMax) > 0 Then rspTotalPages = rspTotalPages + 1
|
|
|
330 |
%>
|
|
|
331 |
<html>
|
|
|
332 |
<head>
|
|
|
333 |
<title>Release Manager</title>
|
|
|
334 |
<link rel="shortcut icon" href="<%=FavIcon%>"/>
|
|
|
335 |
<meta HTTP-EQUIV="Pragma" CONTENT="no-cache">
|
|
|
336 |
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
|
| 6579 |
dpurdie |
337 |
<link rel="stylesheet" href="images/release_manager_style.css?ver=<%=VixVerNum%>" type="text/css">
|
|
|
338 |
<link rel="stylesheet" href="images/navigation.css?ver=<%=VixVerNum%>" type="text/css">
|
|
|
339 |
<script language="JavaScript" src="images/common.js?ver=<%=VixVerNum%>"></script>
|
| 5357 |
dpurdie |
340 |
<script language="javascript">
|
|
|
341 |
<!--
|
|
|
342 |
function toggleOptions()
|
|
|
343 |
{
|
|
|
344 |
var dbOpt = MM_findObj("FRiss_db");
|
|
|
345 |
var dbName = dbOpt.options[dbOpt.selectedIndex].text;
|
|
|
346 |
|
|
|
347 |
if (dbName == "DEVI")
|
|
|
348 |
{
|
|
|
349 |
MM_findObj("DIVOPTIONSTDSE").style.display = "none";
|
|
|
350 |
MM_findObj("DIVOPTIONSDEVI").style.display = "block";
|
|
|
351 |
}
|
|
|
352 |
else
|
|
|
353 |
{
|
|
|
354 |
MM_findObj("DIVOPTIONSDEVI").style.display = "none";
|
|
|
355 |
MM_findObj("DIVOPTIONSTDSE").style.display = "block";
|
|
|
356 |
}
|
| 5590 |
dpurdie |
357 |
|
|
|
358 |
parent.resizeIframe();
|
| 5357 |
dpurdie |
359 |
}
|
|
|
360 |
//-->
|
|
|
361 |
</script>
|
|
|
362 |
</head>
|
|
|
363 |
<body bgcolor="#FFFFFF" text="#000000" leftmargin="0" topmargin="0" onload="self.focus();">
|
|
|
364 |
<%If retVal = 0 Then%>
|
|
|
365 |
<form name="importform" method="post" action="<%=scriptName%>">
|
| 5590 |
dpurdie |
366 |
<table border="0" cellspacing="0" cellpadding="2" >
|
| 5357 |
dpurdie |
367 |
<tr>
|
|
|
368 |
<td height="1%" background="images/bg_admin_dark.gif"><img src="images/spacer.gif" width="10" height="40"></td>
|
|
|
369 |
<td nowrap colspan="3" class="wform_ttl" background="images/bg_admin_dark.gif">
|
|
|
370 |
<table width="100" border="0" cellspacing="5" cellpadding="0">
|
|
|
371 |
<tr>
|
|
|
372 |
<td align="left" class="wform_ttl">Issue Number</td>
|
|
|
373 |
<td nowrap>
|
|
|
374 |
<input name="FRiss_num" type="text" class="form_item" id="FRiss_num" value="<%=parFRiss_num%>" size="30" >
|
|
|
375 |
<span class="form_wtxt_link">Example: ALL, 123, DEVI-123 </span>
|
|
|
376 |
</td>
|
|
|
377 |
</tr>
|
|
|
378 |
<tr>
|
|
|
379 |
<td align="left" class="wform_ttl">Database</td>
|
|
|
380 |
<td>
|
|
|
381 |
<select name="FRiss_db" class="form_item" id="FRiss_db" onChange="toggleOptions();">
|
|
|
382 |
<option value="<%=enumCLEARQUEST_DEVI_ID%>" <%If CInt(parFRiss_db) = enumCLEARQUEST_DEVI_ID Then%>selected<%End If%>>DEVI</option>
|
|
|
383 |
</select>
|
|
|
384 |
</td>
|
|
|
385 |
</tr>
|
|
|
386 |
<tr>
|
|
|
387 |
<td align="right" class="wform_ttl"><img src="images/spacer.gif" width="80" height="1"></td>
|
|
|
388 |
<td><a href="javascript:;" onClick="ToggleDisplay('DIVOPTIONS');" class="form_wtxt_link">Options...</a></td>
|
|
|
389 |
</tr>
|
|
|
390 |
</table>
|
|
|
391 |
|
|
|
392 |
<DIV id="DIVOPTIONS" <%If IsOptionUsed Then%>style="display:block;"<%Else%>style="display:none;"<%End If%>>
|
|
|
393 |
<DIV id="DIVOPTIONSDEVI" <%If CInt(parFRiss_db) = enumCLEARQUEST_DEVI_ID Then%>style="display:block;"<%Else%>style="display:none;"<%End If%>>
|
|
|
394 |
<table width="100" border="0" cellspacing="5" cellpadding="0">
|
|
|
395 |
<tr>
|
|
|
396 |
<td align="left" class="wform_ttl" valign="top">Title</td>
|
|
|
397 |
<td class="form_wtxt_link"><input name="title" type="text" class="form_item" id="title" value="<%=parTitle%>" style="width:100%;"> * Wildcard available</td>
|
|
|
398 |
</tr>
|
|
|
399 |
<tr>
|
|
|
400 |
<td align="left" class="wform_ttl">Package</td>
|
|
|
401 |
<td>
|
|
|
402 |
<select name="package" class="form_item" id="package" style="width:100%;">
|
|
|
403 |
<option value="">ALL</option>
|
|
|
404 |
<%
|
|
|
405 |
'---- PACKAGES ----
|
|
|
406 |
|
| 5375 |
dpurdie |
407 |
'-- Get packages
|
| 5357 |
dpurdie |
408 |
SQLstr = _
|
|
|
409 |
"SELECT si.PACKAGE_REF"&_
|
|
|
410 |
" FROM release_manager.CQ_SOFTWARE_ISSUE si"&_
|
|
|
411 |
" WHERE NOT si.PACKAGE_REF IS NULL"&_
|
|
|
412 |
" GROUP BY si.PACKAGE_REF"&_
|
|
|
413 |
" ORDER BY si.PACKAGE_REF"
|
|
|
414 |
|
|
|
415 |
Set rsCQTemp = OraDatabase.DbCreateDynaset( SQLstr, cint(0))
|
|
|
416 |
|
|
|
417 |
While (NOT rsCQTemp.BOF) AND (NOT rsCQTemp.EOF)
|
|
|
418 |
%>
|
|
|
419 |
<option value="<%=rsCQTemp("package_ref")%>" <%If parPackage = Cstr(rsCQTemp("package_ref")) Then%>selected<%End If%>><%=rsCQTemp("package_ref")%></option>
|
|
|
420 |
<%
|
|
|
421 |
rsCQTemp.MoveNext
|
|
|
422 |
WEnd
|
|
|
423 |
rsCQTemp.Close()
|
|
|
424 |
%>
|
|
|
425 |
</select>
|
|
|
426 |
</td>
|
|
|
427 |
</tr>
|
|
|
428 |
<tr>
|
|
|
429 |
<td align="left" class="wform_ttl">Project</td>
|
|
|
430 |
<td>
|
|
|
431 |
<select name="project" class="form_item" id="project" style="width:100%;">
|
|
|
432 |
<option value="">ALL</option>
|
|
|
433 |
<%
|
|
|
434 |
'---- PROJECT ----
|
|
|
435 |
|
|
|
436 |
'-- Get projects
|
|
|
437 |
SQLstr = _
|
|
|
438 |
"SELECT si.PROJECT"&_
|
|
|
439 |
" FROM release_manager.CQ_SOFTWARE_ISSUE si"&_
|
|
|
440 |
" WHERE NOT si.PROJECT IS NULL"&_
|
|
|
441 |
" GROUP BY si.PROJECT"&_
|
|
|
442 |
" ORDER BY si.PROJECT"
|
|
|
443 |
|
|
|
444 |
Set rsCQTemp = OraDatabase.DbCreateDynaset( SQLstr, cint(0))
|
|
|
445 |
|
|
|
446 |
While (NOT rsCQTemp.BOF) AND (NOT rsCQTemp.EOF)
|
|
|
447 |
%>
|
|
|
448 |
<option value="<%=rsCQTemp("project")%>" <%If parProject = Cstr(rsCQTemp("project")) Then%>selected<%End If%>><%=rsCQTemp("project")%></option>
|
|
|
449 |
<%
|
|
|
450 |
rsCQTemp.MoveNext
|
|
|
451 |
WEnd
|
|
|
452 |
rsCQTemp.Close()
|
|
|
453 |
%>
|
|
|
454 |
</select>
|
|
|
455 |
</td>
|
|
|
456 |
</tr>
|
|
|
457 |
<tr>
|
|
|
458 |
<td align="left" class="wform_ttl">Product</td>
|
|
|
459 |
<td>
|
|
|
460 |
<select name="product" class="form_item" id="product" style="width:100%;">
|
|
|
461 |
<option value="">ALL</option>
|
|
|
462 |
<%
|
|
|
463 |
'---- PRODUCT ----
|
|
|
464 |
|
|
|
465 |
'-- Get projects
|
|
|
466 |
SQLstr = _
|
|
|
467 |
"SELECT si.PRODUCT"&_
|
|
|
468 |
" FROM release_manager.CQ_SOFTWARE_ISSUE si"&_
|
|
|
469 |
" WHERE NOT si.PRODUCT IS NULL"&_
|
|
|
470 |
" GROUP BY si.PRODUCT"&_
|
|
|
471 |
" ORDER BY si.PRODUCT"
|
|
|
472 |
|
|
|
473 |
Set rsCQTemp = OraDatabase.DbCreateDynaset( SQLstr, cint(0))
|
|
|
474 |
|
|
|
475 |
While (NOT rsCQTemp.BOF) AND (NOT rsCQTemp.EOF)
|
|
|
476 |
%>
|
|
|
477 |
<option value="<%=rsCQTemp("product")%>" <%If parProduct = Cstr(rsCQTemp("product")) Then%>selected<%End If%>><%=rsCQTemp("product")%></option>
|
|
|
478 |
<%
|
|
|
479 |
rsCQTemp.MoveNext
|
|
|
480 |
WEnd
|
|
|
481 |
rsCQTemp.Close()
|
|
|
482 |
%>
|
|
|
483 |
</select>
|
|
|
484 |
</td>
|
|
|
485 |
</tr>
|
|
|
486 |
<tr>
|
|
|
487 |
<td align="left" class="wform_ttl"> </td>
|
|
|
488 |
<td>
|
|
|
489 |
<fieldset>
|
|
|
490 |
<legend class="form_wtxt_link">Issue Status </legend>
|
|
|
491 |
<table width="100%" border="0" cellspacing="0" cellpadding="0">
|
|
|
492 |
<%
|
|
|
493 |
'---- ISSUE STATES ----
|
|
|
494 |
|
|
|
495 |
'-- Get Issuestates
|
|
|
496 |
SQLstr = _
|
|
|
497 |
" SELECT sd.ID,"&_
|
|
|
498 |
" sd.NAME"&_
|
|
|
499 |
" FROM release_manager.CQ_STATEDEF sd" &_
|
|
|
500 |
" ORDER BY sd.ORDINAL"
|
|
|
501 |
|
|
|
502 |
Set rsCQTemp = OraDatabase.DbCreateDynaset( SQLstr, cint(0))
|
|
|
503 |
|
|
|
504 |
While (NOT rsCQTemp.BOF) AND (NOT rsCQTemp.EOF)
|
|
|
505 |
checked = ""
|
|
|
506 |
|
|
|
507 |
If oIStates.Exists("ALL") OR oIStates.Exists(Cstr(rsCQTemp("id"))) Then checked = "checked"
|
|
|
508 |
%>
|
|
|
509 |
<tr>
|
|
|
510 |
<td width="1"><input type="checkbox" name="istates" value="<%=rsCQTemp("id")%>" <%=checked%>></td>
|
|
|
511 |
<td width="100%" class="form_wtxt_link"><%=rsCQTemp("name")%></td>
|
|
|
512 |
</tr>
|
|
|
513 |
<%
|
|
|
514 |
rsCQTemp.MoveNext
|
|
|
515 |
WEnd
|
|
|
516 |
rsCQTemp.Close()
|
|
|
517 |
%>
|
|
|
518 |
</table>
|
|
|
519 |
</fieldset>
|
|
|
520 |
</td>
|
|
|
521 |
</tr>
|
|
|
522 |
<tr>
|
|
|
523 |
<td align="right" class="wform_ttl"><img src="images/spacer.gif" width="80" height="1"></td>
|
|
|
524 |
<td><img src="images/spacer.gif" width="100" height="1"></td>
|
|
|
525 |
</tr>
|
|
|
526 |
</table>
|
|
|
527 |
</DIV>
|
|
|
528 |
</DIV>
|
|
|
529 |
<table width="400" border="0" cellspacing="5" cellpadding="0">
|
|
|
530 |
<tr background="images/lbox_bg_blue.gif">
|
|
|
531 |
<td colspan="2"><img src="images/spacer.gif" width="1" height="1"></td>
|
|
|
532 |
</tr>
|
|
|
533 |
<tr>
|
|
|
534 |
<td width="1"> </td>
|
|
|
535 |
<td width="100%">
|
|
|
536 |
<input type="submit" name="btn" value="Find »" class="form_btn_comp">
|
|
|
537 |
<span class="form_wtxt_link">Click Find to initiate clearquest query based on your options</span>
|
|
|
538 |
</td>
|
|
|
539 |
</tr>
|
|
|
540 |
</table>
|
|
|
541 |
</td>
|
|
|
542 |
</tr>
|
|
|
543 |
|
|
|
544 |
<tr>
|
|
|
545 |
<td background="images/lbox_bg_blue.gif" width="1%" height="1%"> </td>
|
|
|
546 |
<td background="images/lbox_bg_blue.gif" nowrap width="50%" class="wform_ttl"> </td>
|
|
|
547 |
<td background="images/lbox_bg_blue.gif" align="right" width="50%">
|
|
|
548 |
<input type="submit" name="btn" value="Import" class="form_btn_comp">
|
| 5590 |
dpurdie |
549 |
<input type="reset" name="btn" value="Close" class="form_btn_comp" onclick="parent.closeIFrame();">
|
| 5357 |
dpurdie |
550 |
</td>
|
|
|
551 |
<td background="images/lbox_bg_blue.gif" align="right" width="1%" nowrap>
|
|
|
552 |
<img src="images/h_trsp_dot.gif" width="5" height="22">
|
|
|
553 |
</td>
|
|
|
554 |
</tr>
|
|
|
555 |
<tr>
|
|
|
556 |
<td height="100%" width="1%"> </td>
|
|
|
557 |
<td valign="top" nowrap colspan="3" class="wform_ttl" background="images/bg_form_lightgray.gif">
|
|
|
558 |
<%
|
|
|
559 |
If imported Then
|
|
|
560 |
Call DisplayInfo ( "ISSUES_IMPORTED", "300" )
|
|
|
561 |
End If
|
|
|
562 |
%>
|
| 5590 |
dpurdie |
563 |
<table width="600px" border="0" cellspacing="1" cellpadding="2">
|
| 5357 |
dpurdie |
564 |
<tr>
|
| 5624 |
dpurdie |
565 |
<td width="1%" background="images/bg_form_lightbluedark.gif"> </td>
|
| 5357 |
dpurdie |
566 |
<td width="1%" nowrap background="images/bg_form_lightbluedark.gif" class="form_field">Issue Number</td>
|
|
|
567 |
<td width="1%" nowrap background="images/bg_form_lightbluedark.gif" class="form_field">State</td>
|
|
|
568 |
<td width="100%" nowrap background="images/bg_form_lightbluedark.gif" class="form_field">Summary</td>
|
|
|
569 |
</tr>
|
|
|
570 |
<%
|
|
|
571 |
rspCount = 0
|
|
|
572 |
If (parDoQuery <> "0") Then
|
|
|
573 |
If (NOT rsCQ.BOF) AND (NOT rsCQ.EOF) Then
|
|
|
574 |
rsCQ.MoveTo( 1+(rspMax * (rspPage - 1)))
|
|
|
575 |
|
|
|
576 |
While ((NOT rsCQ.BOF) AND (NOT rsCQ.EOF) AND (rspCount < rspMax))
|
|
|
577 |
|
|
|
578 |
If (canActionControlInProject("ImportOpenIssues")) Then
|
|
|
579 |
Select Case UCase( rsCQ("state") )
|
|
|
580 |
Case "OPEN"
|
|
|
581 |
disabled = ""
|
|
|
582 |
Case "SUSPENDED"
|
|
|
583 |
disabled = ""
|
|
|
584 |
Case Else
|
|
|
585 |
disabled = ""
|
|
|
586 |
End Select
|
|
|
587 |
End If
|
|
|
588 |
|
|
|
589 |
If NOT (canActionControlInProject("ImportOpenIssues")) Then
|
|
|
590 |
If (parSkipOpen <> "") Then
|
|
|
591 |
Select Case UCase( rsCQ("state") )
|
|
|
592 |
Case "OPEN"
|
|
|
593 |
disabled = "disabled"
|
|
|
594 |
Case Else
|
|
|
595 |
disabled = ""
|
|
|
596 |
End Select
|
|
|
597 |
Else
|
|
|
598 |
Select Case UCase( rsCQ("state") )
|
|
|
599 |
Case "CLOSED"
|
|
|
600 |
disabled = "disabled"
|
|
|
601 |
Case Else
|
|
|
602 |
disabled = ""
|
|
|
603 |
End Select
|
|
|
604 |
End If
|
|
|
605 |
End If
|
|
|
606 |
%>
|
|
|
607 |
<tr>
|
|
|
608 |
<td>
|
|
|
609 |
<input type="checkbox" name="FRiss_id" value="<%=rsCQ("iss_id")%>" <%=disabled%>>
|
|
|
610 |
</td>
|
|
|
611 |
<td nowrap class="form_item">
|
| 5861 |
dpurdie |
612 |
<a href="javascript:;" onClick="MM_openBrWindow('_wform_issues_details.asp?iss_db=<%=parFRiss_db%>&iss_id=<%=rsCQ("iss_id")%>','Issue Details','resizable=yes,width=580,height=500')" class="txt_linked">
|
| 5357 |
dpurdie |
613 |
<%If parFRiss_num <> LENUM_ALL Then%>
|
|
|
614 |
<%=Highlight_Substring( rsCQ("iss_num"), parFRiss_num )%>
|
|
|
615 |
<%Else%>
|
|
|
616 |
<%=rsCQ("iss_num")%>
|
|
|
617 |
<%End If%>
|
|
|
618 |
</a>
|
|
|
619 |
</td>
|
|
|
620 |
<td class="form_item"><%=rsCQ("state")%></td>
|
|
|
621 |
<td class="form_item"><%=Server.HTMLEncode(rsCQ("summary"))%></td>
|
|
|
622 |
</tr>
|
|
|
623 |
<%
|
|
|
624 |
rspCount = rspCount + 1
|
|
|
625 |
rsCQ.MoveNext
|
|
|
626 |
WEnd
|
|
|
627 |
rsCQ.Close
|
|
|
628 |
Set rsCQ = nothing
|
|
|
629 |
End If
|
|
|
630 |
End If
|
|
|
631 |
%>
|
|
|
632 |
<tr>
|
|
|
633 |
<td background="images/bg_form_lightbluedark.gif"> </td>
|
|
|
634 |
<td colspan="3" nowrap background="images/bg_form_lightbluedark.gif" class="form_step">
|
|
|
635 |
<%
|
|
|
636 |
If rspTotal > rspMax Then
|
|
|
637 |
If CInt(rspPage) = CInt(rspTotalPages) Then
|
|
|
638 |
Response.write "Found "& rspTotal &" records, showing "& (rspMax * rspPage) - rspMax + 1 &" - "& rspTotal
|
|
|
639 |
Else
|
|
|
640 |
Response.write "Found "& rspTotal &" records, showing "& (rspMax * rspPage) - rspMax + 1 &" - "& (rspCount * rspPage)
|
|
|
641 |
End If
|
|
|
642 |
Else
|
|
|
643 |
Response.write "Found "& rspTotal &" records"
|
|
|
644 |
End If
|
|
|
645 |
%>
|
|
|
646 |
</td>
|
|
|
647 |
</tr>
|
|
|
648 |
</table>
|
|
|
649 |
<table width="100%" border="0" cellspacing="1" cellpadding="2">
|
|
|
650 |
<tr>
|
|
|
651 |
<td align="center">
|
|
|
652 |
<%If CInt(rspPage) > 1 Then%><a href="javascript:void(document.importform.submit())" onClick="importform.rpg.value = parseInt(importform.rpg.value) - 1; importform.submit();" class="txt_linked"><previous</a><%End If%>
|
|
|
653 |
<%If CInt(rspPage) < CInt(rspTotalPages) Then%><a href="javascript:void(document.importform.submit())" onClick="importform.rpg.value = parseInt(importform.rpg.value) + 1; importform.btn.value='next';" class="txt_linked">next ></a><%End If%>
|
|
|
654 |
</td>
|
|
|
655 |
</tr>
|
|
|
656 |
</table>
|
|
|
657 |
<br>
|
|
|
658 |
</td>
|
|
|
659 |
</tr>
|
|
|
660 |
<tr>
|
|
|
661 |
<td width="1%" height="1%" background="images/lbox_bg_blue.gif"><img src="images/h_trsp_dot.gif" width="5" height="5"></td>
|
|
|
662 |
<td valign="top" nowrap colspan="3" class="wform_ttl" background="images/lbox_bg_blue.gif"></td>
|
|
|
663 |
</tr>
|
|
|
664 |
</table>
|
|
|
665 |
<input name="rpg" type="hidden" value="<%=rspPage%>">
|
|
|
666 |
<input name="skip_open" type="hidden" value="<%=parSkipOpen%>">
|
|
|
667 |
<input name="pv_id" type="hidden" value="<%=parPv_id%>">
|
|
|
668 |
<input name="rtag_id" type="hidden" value="<%=parRtag_id%>">
|
|
|
669 |
<input name="doQuery" id="doQuery" type="hidden" value="1">
|
|
|
670 |
<input name="action" type="hidden" value="true">
|
|
|
671 |
</form>
|
|
|
672 |
<%Else%>
|
|
|
673 |
<%=enumMSSQL_ERROR%>
|
|
|
674 |
<%End If%>
|
|
|
675 |
</body>
|
|
|
676 |
</html>
|
|
|
677 |
<!-- DESTRUCTOR ------->
|
|
|
678 |
<!--#include file="common/destructor.asp"-->
|