Subversion Repositories DevTools

Rev

Rev 5860 | Rev 5952 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
119 ghuddy 1
<%
2
'=====================================================
3
'|                                                   |
129 ghuddy 4
'|                 REPORTS DEFINITION                |
5
'|                                                   |
119 ghuddy 6
'=====================================================
7
' Good idea to set when using redirect
129 ghuddy 8
Response.Expires = 0   ' always load the page, dont store
119 ghuddy 9
 
10
'To enable the script timeout to 10 mins
11
Server.ScriptTimeout=600
12
%>
13
 
14
<%
15
'------------ ACCESS CONTROL ------------------
16
%>
17
 
18
<%
19
'------------ Variable Definition -------------
20
Dim rsQry
21
Dim rsTemp
22
Dim parPv_id, parExt
23
Dim objReleaseContent
24
Dim aReleaseContent
25
Dim objPackageDetails
129 ghuddy 26
Dim outobjDetails
27
Dim pvIdList
28
Dim dpv_id
29
Dim BldStd
119 ghuddy 30
'------------ Constants Declaration -----------
31
'------------ Variable Init -------------------
32
 
33
parExt = Request("ext")
34
Set objReleaseContent = CreateObject("Scripting.Dictionary")
35
Set objPackageDetails = CreateObject("Scripting.Dictionary")
36
Set outobjDetails = CreateObject("Scripting.Dictionary")
37
'----------------------------------------------------------------------------------------------------------------------------------------
38
Sub GetPackageInformation ( nPv_id, ByRef oPackageDetails )
129 ghuddy 39
   Dim rsQry, query
40
   query = _
41
   " SELECT pkg.pkg_name, pv.* "&_
42
   "  FROM PACKAGES pkg,"&_
43
   "       PACKAGE_VERSIONS pv"&_
44
   " WHERE pv.pv_id = "& nPv_id &_
45
   "   AND pv.pkg_id = pkg.pkg_id   "
46
 
47
   Set rsQry = OraDatabase.DbCreateDynaset( query, 0)
48
 
49
   oPackageDetails.RemoveAll
50
 
51
   If (NOT rsQry.BOF) AND (NOT rsQry.EOF) Then
52
      oPackageDetails("pkg_name") = rsQry("pkg_name")
53
      oPackageDetails("pkg_version") = rsQry("pkg_version")
54
      oPackageDetails("v_ext") = rsQry("v_ext")
55
      oPackageDetails("pv_description") = rsQry("pv_description")
56
      oPackageDetails("pv_overview") = rsQry("pv_overview")
57
      oPackageDetails("src_path") = rsQry("src_path")
58
      oPackageDetails("pkg_label") = rsQry("pkg_label")
59
      oPackageDetails("is_build_env_required") = rsQry("is_build_env_required")
60
 
61
   End If
62
 
63
   rsQry.Close()
64
   Set rsQry = Nothing
119 ghuddy 65
End Sub
66
'----------------------------------------------------------------------------------------------------------------------------------------
129 ghuddy 67
Function SQL_Build_Std ( nPv_id )
68
   SQL_Build_Std = _
69
   " SELECT bs.bs_name"&_
70
   "  FROM RELEASE_MANAGER.PACKAGE_VERSIONS pv,"&_
71
   "       RELEASE_MANAGER.BUILD_STANDARDS bs"&_
72
   " WHERE pv.PV_ID = "& nPv_id &_
73
   "   AND pv.BS_ID = bs.BS_ID "
74
End Function
75
'----------------------------------------------------------------------------------------------------------------------------------------
119 ghuddy 76
Function SQL_Build_Env ( nPv_id )
129 ghuddy 77
   SQL_Build_Env = _
78
   " SELECT bm.bm_name"&_
79
   "  FROM  RELEASE_MANAGER.PACKAGE_BUILD_INFO pbi,"&_
80
   "        RELEASE_MANAGER.BUILD_MACHINES bm"&_
81
   " WHERE pbi.PV_ID = "& nPv_id &_
82
   "   AND pbi.BM_ID = bm.BM_ID "&_
83
   " ORDER BY UPPER(bm.BM_NAME) "
119 ghuddy 84
End Function
85
'----------------------------------------------------------------------------------------------------------------------------------------
86
Function SQL_Modules (nPv_idList)
129 ghuddy 87
   SQL_Modules   = _
88
   "SELECT DISTINCT"&_
89
    "   qry.DPV_ID "&_
119 ghuddy 90
    " FROM ("&_
129 ghuddy 91
    "      SELECT dep.*,"&_
92
    "            LEVEL AS LEVEL_NUM"&_
93
    "        FROM PACKAGE_DEPENDENCIES dep"&_
94
    "      START WITH dep.PV_ID IN ( "& nPv_idList &" ) "&_
95
    "      CONNECT BY PRIOR dep.DPV_ID = dep.PV_ID"&_
96
    "   ) qry,"&_
97
    "   PACKAGES pkg,"&_
98
   "   PACKAGE_VERSIONS pv"&_
99
    " WHERE qry.PV_ID = pv.PV_ID AND pv.PKG_ID = pkg.PKG_ID"
100
End   Function
119 ghuddy 101
'----------------------------------------------------------------------------------------------------------------------------------------
102
Function SQL_Build_Dependencies ( nPv_id )
129 ghuddy 103
   SQL_Build_Dependencies = _
104
   " SELECT dpkg.pkg_name, dpv.pkg_version"&_
105
   "     FROM PACKAGE_DEPENDENCIES dep,"&_
106
   "           PACKAGES dpkg,"&_
107
   "         PACKAGE_VERSIONS dpv"&_
108
   "    WHERE dep.pv_id = "& nPv_id &_
109
   "      AND dep.DPV_ID = dpv.pv_id"&_
110
   "      AND dpv.pkg_id = dpkg.pkg_id   "&_
111
   "   ORDER BY UPPER(dpkg.pkg_name) "
119 ghuddy 112
End Function
113
'----------------------------------------------------------------------------------------------------------------------------------------
114
Sub GetReleaseContent ( nBom_id, ByRef oReleaseContent )
129 ghuddy 115
   Dim rsQry, query
116
 
117
   query = _
118
   " SELECT qry.prod_id"&_
119
   "  FROM ("&_
120
   "         SELECT DISTINCT"&_
121
   "          osc.PROD_ID,"&_
122
   "            pkg.pkg_name,"&_
123
   "         pv.pkg_version,"&_
124
   "         1   as   seq_num"&_
125
   "         FROM DEPLOYMENT_MANAGER.bom_contents bc,"&_
126
   "         DEPLOYMENT_MANAGER.operating_systems os, "&_
127
   "         DEPLOYMENT_MANAGER.os_contents osc,"&_
128
   "         PACKAGES pkg,"&_
129
   "         PACKAGE_VERSIONS pv,"&_
130
   "         DEPLOYMENT_MANAGER.PRODUCT_DETAILS pd"&_
131
   "          WHERE osc.os_id = os.os_id "&_
132
   "         AND os.node_id = bc.node_id"&_
133
   "         AND bc.bom_id =   "&   nBom_id &_
134
   "         AND pd.PROD_ID (+) = osc.PROD_ID"&_
135
   "         AND pv.pkg_id = pkg.pkg_id"&_
136
   "         AND osc.prod_id = pv.pv_id "&_
137
   "         AND (pd.is_rejected IS NULL or pd.IS_REJECTED != 'Y')  "&_
138
   "      UNION   "&_
139
   "      SELECT DISTINCT bec.prod_id,  pkg.pkg_name, pkg_version, 2   as   seq_num"&_
140
   "       FROM DEPLOYMENT_MANAGER.boms bm,"&_
141
   "            DEPLOYMENT_MANAGER.bom_contents bc,"&_
142
   "            DEPLOYMENT_MANAGER.network_nodes nn,"&_
143
   "            DEPLOYMENT_MANAGER.operating_systems os,"&_
144
   "            DEPLOYMENT_MANAGER.os_base_env obe,"&_
145
   "            DEPLOYMENT_MANAGER.base_env_contents bec,"&_
146
   "            PACKAGES pkg,"&_
147
   "            package_versions pv,"&_
148
   "            DEPLOYMENT_MANAGER.base_env be,"&_
149
   "            DEPLOYMENT_MANAGER.bos_types bt,"&_
150
   "            DEPLOYMENT_MANAGER.PRODUCT_DETAILS pd"&_
151
   "      WHERE bm.bom_id =   "&   nBom_id   &_
152
   "        AND bm.bom_id = bc.bom_id"&_
153
   "        AND nn.node_id = bc.node_id"&_
154
   "        AND os.node_id = nn.node_id"&_
155
   "        AND obe.os_id = os.os_id"&_
156
   "      AND pd.PROD_ID (+) = bec.PROD_ID"&_
157
   "      AND (pd.is_rejected IS NULL or pd.IS_REJECTED != 'Y')  "&_
158
   "        AND bec.base_env_id = obe.base_env_id"&_
159
   "        AND bec.prod_id = pv.pv_id"&_
160
   "        AND pkg.pkg_id = pv.pkg_id"&_
161
   "        AND be.base_env_id = obe.base_env_id"&_
162
   "       AND bt.bos_id = be.bos_id"&_
163
   "      ) qry  "&_
164
   " ORDER BY  qry.seq_num, UPPER(qry.pkg_name), UPPER(qry.pkg_version)"
165
 
166
   Set rsQry = OraDatabase.DbCreateDynaset( query, 0)
167
   While (NOT rsQry.BOF) AND (NOT rsQry.EOF)
168
      oReleaseContent( CStr( rsQry("prod_id")) ) = ""
169
      rsQry.MoveNext()
170
   WEnd
171
 
172
   rsQry.Close()
173
   Set rsQry = Nothing
119 ghuddy 174
End Sub
175
'----------------------------------------------------------------------------------------------------------------------------------------
176
Function PatchIcon ( cIsPatch, cIsPatchObsolete )
129 ghuddy 177
   If IsNull(cIsPatch) Then
178
      PatchIcon = "<img src='images/rex_images/ext_blank.gif' width='16' height='16' border='0' align='absmiddle'>"
179
   Else
180
      If IsNull(cIsPatchObsolete) Then
181
         PatchIcon = "<img src='images/i_patch_small.gif' width='16' height='16' border='0' align='absmiddle' >"
182
      Else
183
         PatchIcon = "<img src='images/i_patch_small_obsolete.gif' width='16' height='16' border='0' align='absmiddle' title='Patch is obsolete'>"
184
      End If
185
   End If
119 ghuddy 186
End Function
187
%>
188
 
189
<%
190
Sub Reports_List ( SSgroup )
129 ghuddy 191
   Dim repNum
119 ghuddy 192
%>  <!-- REPORTS LIST -------------------------------------------------------->
129 ghuddy 193
   <%Select Case SSgroup%>
194
   <%Case "Advanced_Search"%>
159 ghuddy 195
      <%repNum = 1%>
5860 dpurdie 196
      <strong>Find Jira / ClearQuest Bugs / Issues Location</strong><br>
197
      Use this advance search to locate bugs / issues imported to Release Manager from Jira or ClearQuest.<br>
159 ghuddy 198
      <a href="rep_where_are_bugs_located.asp?repnum=<%=repNum%>&group=<%=SSgroup%>" class="txt_linked">more...</a><br><br><hr size="1" noshade color="#DAD7C8">
199
      <%repNum = 2%>
200
      <strong>Find Packages Using "Ignore Warnings" feature</strong><br>
201
      Lists packages which use "Ignore Warning" feature on their dependencies.<br>
202
      <a href="rep_packages_using_ignore_feature.asp?repnum=<%=repNum%>&group=<%=SSgroup%>" class="txt_linked">more...</a><br><br><hr size="1" noshade color="#DAD7C8">
203
      <%repNum = 4%>
204
      <strong>Find A Package</strong><br>
205
      Use this advanced search to find a package in Release Manager<br>
206
      <a href="rep_find_package.asp?repnum=<%=repNum%>&group=<%=SSgroup%>" class="txt_linked">more...</a><br><br><hr size="1" noshade color="#DAD7C8">
207
      <%repNum = 5%>
208
      <strong>Find Package Version History</strong><br>
209
      Find all package versions and their current locations.<br>
210
      <a href="rep_package_version_history.asp?repnum=<%=repNum%>&group=<%=SSgroup%>" class="txt_linked">more...</a><br><br><hr size="1" noshade color="#DAD7C8">
5685 dpurdie 211
      <%repNum = 14%>
212
      <strong>Find File with a Package</strong><br>
213
      Find all files within a named package.<br>
214
      <a href="rep_package_version_history.asp?repnum=<%=repNum%>&group=<%=SSgroup%>" class="txt_linked">more...</a><br><br><hr size="1" noshade color="#DAD7C8">
129 ghuddy 215
   <%Case "Release_Status"%>
159 ghuddy 216
      <%repNum = 3%>
217
      <strong>Current Status of Release</strong><br>
218
      Shows all packages in a selected release with their current state, owner and last modifier.<br>
219
      <a href="rep_current_state_of_release.asp?repnum=<%=repNum%>&group=<%=SSgroup%>" class="txt_linked">more...</a><br><br><hr size="1" noshade color="#DAD7C8">
220
      <%repNum = 8%>
221
      <strong>Deployable Software Modules</strong><br>
222
      This report shows new and current deployable software modules. Use this report to find which modules will be deployed to the customer.<br>
223
      Also, use this report to find if there are new modules flaged as 'deployable'.<br>
224
      <a href="rep_depoyable_software_modules.asp?repnum=<%=repNum%>&group=<%=SSgroup%>" class="txt_linked">more...</a><br><br><hr size="1" noshade color="#DAD7C8">
225
      <%repNum = 7%>
226
      <strong>Unit Tests per Package</strong><br>
227
      Use this report to check the unit tests performed on packages in a project.<br>
228
      <a href="rep_unit_tests_per_package.asp?repnum=<%=repNum%>&group=<%=SSgroup%>" class="txt_linked">more...</a><br><br><hr size="1" noshade color="#DAD7C8">
229
      <%repNum = 12%>
230
      <strong>Release AutoBuildable Status</strong><br>
231
      Use this report to check the package versions that are autobuildable/not autobuildable in a given release.<br>
232
      <a href="rep_autobuildable_package.asp?repnum=<%=repNum%>&group=<%=SSgroup%>" class="txt_linked">more...</a><br><br><hr size="1" noshade color="#DAD7C8">
233
      <%repNum = 13%>
234
      <strong>Release DEVI Status</strong><br>
235
      Use this report to obtain a list of DEVIs for all packages in a given release.<br>
236
      <a href="rep_devi_status_for_release.asp?repnum=<%=repNum%>&group=<%=SSgroup%>" class="txt_linked">more...</a><br><br><hr size="1" noshade color="#DAD7C8">
129 ghuddy 237
 
238
<!--    <strong>All Packages With out-of-sync Dependencies</strong><br>
239
   List of all packages with dependencies out-of-sync with the release environment.<br>
240
   In escence, these are the packages which has versions in "latest" column of their dependencies.<br>
241
   Not available yet.<br><br><hr size="1" noshade color="#DAD7C8">
159 ghuddy 242
 -->
243
 
244
   <%Case "Release_History"%>
245
      <%repNum = 10%>
246
      <strong>Build History</strong><br>
247
      Use this report to find which packages have been officially released within specified date range.<br>
248
      <a href="rep_build_history.asp?repnum=<%=repNum%>&group=<%=SSgroup%>" class="txt_linked">more...</a><br><br><hr size="1" noshade color="#DAD7C8">
129 ghuddy 249
   <%Case "Admin_Reports"%>
159 ghuddy 250
      <strong>All Packages by Project by Version Tree by Release</strong><br>
251
      CSV output of all packages used in Release Manager per Project.<br>
252
      <a href="rep_all_packages_by_project_by_vtree_by_release.asp" target="_blank" class="txt_linked">more...</a><br><br><hr size="1" noshade color="#DAD7C8">
253
      <strong>All Runtime Dependencies by Project by Version Tree by Release</strong><br>
254
      CSV output of all runtime dependencies used in Release Manager per Project.<br>
255
      <a href="rep_all_runtime_dependencies_by_project_by_vtree_by_release.asp" target="_blank" class="txt_linked">more...</a><br><br><hr size="1" noshade color="#DAD7C8">
256
      <%repNum = 6%>
257
      <strong>Unused Packages</strong><br>
258
      All packages (Not Products) with no entries in "Used By" tab.<br>
259
      Use this report to help you clean up a release and remove all potentially unused packages.<br>
260
      <a href="rep_obsolete_packages.asp?repnum=<%=repNum%>&group=<%=SSgroup%>" class="txt_linked">more...</a><br><br><hr size="1" noshade color="#DAD7C8">
129 ghuddy 261
   <%Case "Escrow"%>
159 ghuddy 262
      <%repNum = 9%>
263
      <strong>Bill of Materials (BOM)</strong><br>
264
      List of all ERG Products per network node for a particular
265
      project. Use this report to integrate a particular project.<br>
266
      <a href="rep_bill_of_materials.asp?repnum=<%=repNum%>&group=<%=SSgroup%>" class="txt_linked">more...</a><br><br><hr size="1" noshade color="#DAD7C8">
267
      <%repNum = 11%>
268
      <strong>Escrow Report</strong><br>
269
      List of all Products/Patches for the BOM including modules. Use this report to provide a build roadmap.<br>
270
      <a href="escrow_report.asp?repnum=<%=repNum%>&group=<%=SSgroup%>" class="txt_linked">more...</a><br><br><hr size="1" noshade color="#DAD7C8">
271
      <strong>Build Dependencies per Package</strong><br>
272
      Use this report to build package from source code. The report
273
      include package repository location, label and build dependencies.<br>
274
      Not available yet.<br><br><hr size="1" noshade color="#DAD7C8">
275
      <strong>Build Order</strong><br>
276
      Use this reports to find the order in which packages should be built.<br>
277
      Not available yet.<br><br><hr size="1" noshade color="#DAD7C8">
129 ghuddy 278
   <%Case Else%>
159 ghuddy 279
      <b>&laquo; Select reporting category.</b>
129 ghuddy 280
   <%End Select%>
281
   <!-- REPORTS LIST END-------------------------------------------------------->
119 ghuddy 282
 
283
<%End Sub%>
284
 
285
<%
286
'-------------------------------------------------------------------------------------------------------------------------------------------------------------------
287
Sub Get_Projects ( NNproj_id, BBallow_all )
129 ghuddy 288
   Dim rsTemp, Query_String
289
 
290
   Query_String = _
291
   "SELECT * FROM projects ORDER BY proj_name ASC"
292
   Set rsTemp = OraDatabase.DbCreateDynaset( Query_String, cint(0))
293
 
294
   Response.write "<select name='FRproj_id' onChange=""Cascaded_Menu('parent','"& scriptName &"?FRvtree_id=&FRrtag_id=&group="& Request("group") &"&repnum="& Request("repnum") &"&FRproj_id=',this,0)"" class='form_item'>"
295
      If BBallow_all Then
296
         Response.write "<option value='-1'>ALL</option>"
297
      Else
298
         Response.write "<option></option>"
299
      End If
300
 
301
      While ((NOT rsTemp.BOF) AND (NOT rsTemp.EOF))
302
         If CDbl(NNproj_id) = CDbl(rsTemp.Fields("proj_id")) Then
303
              Response.write "<option value='"& rsTemp.Fields("proj_id") &"' selected>"& UCase(rsTemp.Fields("proj_name")) &"</option>"
304
           Else
305
            Response.write "<option value='"& rsTemp.Fields("proj_id") &"'>"& UCase(rsTemp.Fields("proj_name")) &"</option>"
306
         End If
307
         rsTemp.MoveNext
308
      WEnd
309
   Response.write "</select>"
310
 
311
   rsTemp.Close
312
   Set rsTemp = nothing
119 ghuddy 313
End Sub
314
'-------------------------------------------------------------------------------------------------------------------------------------------------------------------
315
Sub Get_Version_Trees ( NNproj_id, NNvtree_id, BBallow_all )
129 ghuddy 316
   Dim rsTemp, Query_String
317
 
318
   Query_String = _
319
   "SELECT vtree_id, vtree_name FROM vtrees WHERE hide = 'N' AND proj_id = "& NNproj_id &" ORDER BY vtree_id ASC"
320
   Set rsTemp = OraDatabase.DbCreateDynaset( Query_String, cint(0))
321
 
322
   Response.write "<select name='FRvtree_id' onChange=""Cascaded_Menu('parent','"& scriptName &"?FRproj_id="& NNproj_id &"&FRrtag_id=&group="& Request("group") &"&repnum="& Request("repnum") &"&FRvtree_id=',this,0)"" class='form_item'>"
323
      If BBallow_all Then
324
         Response.write "<option value='-1'>ALL</option>"
325
      Else
326
         Response.write "<option></option>"
327
      End If
328
 
329
      If NNproj_id <> -1 Then
330
         While ((NOT rsTemp.BOF) AND (NOT rsTemp.EOF))
331
            If CDbl(NNvtree_id) = CDbl(rsTemp.Fields("vtree_id")) Then
332
                 Response.write "<option value='"& rsTemp.Fields("vtree_id") &"' selected>"& (rsTemp.Fields("vtree_name")) &"</option>"
333
              Else
334
               Response.write "<option value='"& rsTemp.Fields("vtree_id") &"'>"& (rsTemp.Fields("vtree_name")) &"</option>"
335
            End If
336
            rsTemp.MoveNext
337
         WEnd
338
      End If
339
   Response.write "</select>"
340
 
341
   rsTemp.Close
342
   Set rsTemp = nothing
119 ghuddy 343
End Sub
344
'-------------------------------------------------------------------------------------------------------------------------------------------------------------------
159 ghuddy 345
Sub Get_Open_Release_Labels ( NNproj_id, NNrtag_id, BBallow_all )
346
   Dim rsTemp, Query_String
347
 
348
   Query_String = _
349
   "SELECT rtag_id, rtag_name FROM release_tags WHERE proj_id = "& NNproj_id &"AND official in ('N','C','R')  ORDER BY rtag_name ASC"
350
   Set rsTemp = OraDatabase.DbCreateDynaset( Query_String, cint(0))
351
 
352
   Response.write "<select name='FRrtag_id' onChange=""Cascaded_Menu('parent','"& scriptName &"?FRproj_id="& NNproj_id &"&group="& Request("group") &"&repnum="& Request("repnum") &"&FRrtag_id=',this,0)"" class='form_item'>"
353
   If BBallow_all Then
354
      Response.write "<option value='-1'>ALL</option>"
355
   Else
356
      Response.write "<option></option>"
357
   End If
358
 
359
      If NNproj_id <> -1 Then
360
         While ((NOT rsTemp.BOF) AND (NOT rsTemp.EOF))
361
            If CDbl(NNrtag_id) = CDbl(rsTemp.Fields("rtag_id")) Then
362
                 Response.write "<option value='"& rsTemp.Fields("rtag_id") &"' selected>"& (rsTemp.Fields("rtag_name")) &"</option>"
363
              Else
364
               Response.write "<option value='"& rsTemp.Fields("rtag_id") &"'>"& (rsTemp.Fields("rtag_name")) &"</option>"
365
            End If
366
            rsTemp.MoveNext
367
         WEnd
368
      End If
369
   Response.write "</select>"
370
 
371
   rsTemp.Close
372
   Set rsTemp = nothing
373
End Sub
374
 
119 ghuddy 375
Sub Get_Release_Labels ( NNproj_id, NNrtag_id, BBallow_all )
129 ghuddy 376
   Dim rsTemp, Query_String
377
 
378
   Query_String = _
379
   "SELECT rtag_id, rtag_name FROM release_tags WHERE proj_id = "& NNproj_id &" ORDER BY rtag_id ASC"
380
   Set rsTemp = OraDatabase.DbCreateDynaset( Query_String, cint(0))
381
 
382
   Response.write "<select name='FRrtag_id' onChange=""Cascaded_Menu('parent','"& scriptName &"?FRproj_id="& NNproj_id &"&group="& Request("group") &"&repnum="& Request("repnum") &"&FRrtag_id=',this,0)"" class='form_item'>"
383
   If BBallow_all Then
384
      Response.write "<option value='-1'>ALL</option>"
385
   Else
386
      Response.write "<option></option>"
387
   End If
388
 
389
      If NNproj_id <> -1 Then
390
         While ((NOT rsTemp.BOF) AND (NOT rsTemp.EOF))
391
            If CDbl(NNrtag_id) = CDbl(rsTemp.Fields("rtag_id")) Then
392
                 Response.write "<option value='"& rsTemp.Fields("rtag_id") &"' selected>"& (rsTemp.Fields("rtag_name")) &"</option>"
393
              Else
394
               Response.write "<option value='"& rsTemp.Fields("rtag_id") &"'>"& (rsTemp.Fields("rtag_name")) &"</option>"
395
            End If
396
            rsTemp.MoveNext
397
         WEnd
398
      End If
399
   Response.write "</select>"
400
 
401
   rsTemp.Close
402
   Set rsTemp = nothing
119 ghuddy 403
End Sub
404
'-------------------------------------------------------------------------------------------------------------------------------------------------------------------
405
Sub Get_SBOM_Version ( NNproj_id, NNrtag_id, BBallow_all, NNversion )
129 ghuddy 406
   Dim rsTemp, Query_String
119 ghuddy 407
 
129 ghuddy 408
   Query_String = _
409
   "SELECT BOM_ID, BRANCH_ID, BOM_VERSION ||'.'||BOM_LIFECYCLE AS VERSION FROM DEPLOYMENT_MANAGER.BOMS WHERE BRANCH_ID ="&NNrtag_id&" ORDER BY VERSION"
119 ghuddy 410
 
411
 
129 ghuddy 412
   Set rsTemp = OraDatabase.DbCreateDynaset( Query_String, cint(0))
119 ghuddy 413
 
129 ghuddy 414
 
415
   Response.write "<select name='FRversion' class='form_item'>"
416
   If BBallow_all Then
417
      Response.write "<option value='-1'>ALL</option>"
418
   Else
419
      Response.write "<option></option>"
420
   End If
421
 
422
      If NNrtag_id <> -1 Then
423
         While ((NOT rsTemp.BOF) AND (NOT rsTemp.EOF))
424
            If CStr(NNversion) = CStr(rsTemp.Fields("version")) Then
425
                 Response.write "<option value='"& rsTemp.Fields("version") &"' selected>"& (rsTemp.Fields("version")) &"</option>"
426
              Else
427
               Response.write "<option value='"& rsTemp.Fields("version") &"'>"& (rsTemp.Fields("version")) &"</option>"
428
            End If
429
            rsTemp.MoveNext
430
         WEnd
431
      End If
432
   Response.write "</select>"
433
   rsTemp.Close
434
   Set rsTemp = nothing
435
 
119 ghuddy 436
End Sub
437
'-------------------------------------------------------------------------------------------------------------------------------------------------------------------
438
Sub Get_Branches ( NNproj_id, NNrtag_id, BBallow_all )
129 ghuddy 439
   Dim rsTemp, Query_String
119 ghuddy 440
 
129 ghuddy 441
   Query_String = _
442
   "SELECT * FROM deployment_manager.branches WHERE proj_id = "& NNproj_id &" ORDER BY branch_id ASC"
443
   Set rsTemp = OraDatabase.DbCreateDynaset( Query_String, cint(0))
444
   Response.write "<select name='FRbranch_id' onChange=""Cascaded_Menu('parent','"& scriptName &"?FRproj_id="& NNproj_id &"&group="& Request("group") &"&repnum="& Request("repnum") &"&FRrtag_id=',this,0)"" class='form_item'>"
445
   If BBallow_all Then
446
      Response.write "<option value='-1'>ALL</option>"
447
   Else
448
      Response.write "<option></option>"
449
   End If
450
 
451
      If NNproj_id <> -1 Then
452
         While ((NOT rsTemp.BOF) AND (NOT rsTemp.EOF))
453
            If CDbl(NNrtag_id) = CDbl(rsTemp.Fields("branch_id")) Then
454
                 Response.write "<option value='"& rsTemp.Fields("branch_id") &"' selected>"& (rsTemp.Fields("branch_name")) &"</option>"
455
              Else
456
               Response.write "<option value='"& rsTemp.Fields("branch_id") &"'>"& (rsTemp.Fields("branch_name")) &"</option>"
457
            End If
458
            rsTemp.MoveNext
459
         WEnd
460
      End If
461
   Response.write "</select>"
462
 
463
   rsTemp.Close
464
   Set rsTemp = nothing
119 ghuddy 465
End Sub
466
'-------------------------------------------------------------------------------------------------------------------------------------------------------------------
467
 
468
Sub Get_Base_Views ( nRtag_id, nBase_view_id, BBallow_all )
129 ghuddy 469
   Dim rsTemp, Query_String
470
 
471
   Query_String = _
472
   "SELECT DISTINCT vi.view_id, vi.view_name"&_
473
   "  FROM VIEWS vi,"&_
474
   "         RELEASE_CONTENT rc"&_
475
   " WHERE rc.BASE_VIEW_ID = vi.VIEW_ID"&_
476
   "   AND rc.rtag_id = "& nRtag_id &_
477
   "ORDER BY UPPER( vi.view_name )"
478
 
479
   Set rsTemp = OraDatabase.DbCreateDynaset( Query_String, cint(0))
480
 
481
   Response.write "<select name='FRbase_view_id' class='form_item'>"
482
   If BBallow_all Then
483
      Response.write "<option value='-1'>ALL</option>"
484
   Else
485
      Response.write "<option></option>"
486
   End If
487
 
488
      If nRtag_id <> -1 Then
489
         While ((NOT rsTemp.BOF) AND (NOT rsTemp.EOF))
490
            If CDbl(nBase_view_id) = CDbl(rsTemp.Fields("view_id")) Then
491
                 Response.write "<option value='"& rsTemp.Fields("view_id") &"' selected>"& (rsTemp.Fields("view_name")) &"</option>"
492
              Else
493
               Response.write "<option value='"& rsTemp.Fields("view_id") &"'>"& (rsTemp.Fields("view_name")) &"</option>"
494
            End If
495
            rsTemp.MoveNext
496
         WEnd
497
      End If
498
   Response.write "</select>"
499
 
500
   rsTemp.Close
501
   Set rsTemp = nothing
119 ghuddy 502
End Sub
503
%>
504
<%
505
'-------------------------------------------------------------------------------------------------------------------------------------------------------------------
506
'==================================================================================
129 ghuddy 507
' Report Name      :    Packages Using Ignore Feature
508
' Description      :   Lists packages which use "Ignore Warning"
509
'                  feature on their dependencies.
510
' INPUT            :   Project, Vesion Tree, Release Label
119 ghuddy 511
'==================================================================================
512
Sub Packages_Using_Ignore_Feature ( SSsection, NNproj_id, NNrtag_id )
129 ghuddy 513
   Dim Query_String, rsRep
514
   Const Allow_All = TRUE
515
 
516
   If NNproj_id = "" Then NNproj_id = -1
517
   If NNrtag_id = "" Then NNrtag_id = -1
518
 
519
   If SSsection = "TITLE" Then
520
      Response.write "Packages Using 'Ignore Warnings' Feature"
521
      Exit Sub
522
   End If
523
 
524
 
525
   If SSsection = "FORM" Then
526
      %>
527
      <table width="100%" border="0" cellpadding="2" cellspacing="1">
528
         <form action="<%=scriptName%>" method="post" name="repform">
529
            <tr>
530
               <td width="1%" nowrap class="form_field"><img src="images/spacer.gif" width="30" height="8"></td>
531
               <td width="1%" align="right" nowrap class="form_field">Project</td>
532
               <td width="100%"><%Call Get_Projects( NNproj_id, Allow_All )%></td>
533
            </tr>
534
            <tr>
535
               <td nowrap class="form_field">&nbsp;</td>
536
               <td align="right" nowrap class="form_field">Release</td>
537
               <td><%Call Get_Release_Labels ( NNproj_id,  NNrtag_id, Allow_All )%></td>
538
            </tr>
539
            <tr>
540
               <td nowrap class="form_field">&nbsp;</td>
541
               <td align="right" nowrap class="form_field">&nbsp;</td>
542
               <td><br>
543
                  <input type="hidden" name="group" value="<%=parGroup%>">
544
                  <input type="hidden" name="repnum" value="<%=parRepNum%>">
545
                  <input type="hidden" name="action" value="true">
546
                  <input name="Submit" type="submit" class="form_btn" value="Submit">
547
               </td>
548
            </tr>
549
         </form>
550
      </table>
551
      <%   Exit Sub
552
   End If
553
 
554
 
555
   If SSsection = "BODY" Then
556
      If NOT CBool(Request("action")) Then Exit Sub
557
 
558
      Query_String = ReadFile( rootPath & "queries\rep_packages_using_ignore_feature.sql" )
559
 
560
      OraDatabase.Parameters.Add "PROJ_ID", NNproj_id, ORAPARM_INPUT, ORATYPE_NUMBER
561
      OraDatabase.Parameters.Add "RTAG_ID", NNrtag_id, ORAPARM_INPUT, ORATYPE_NUMBER
562
      %>
563
      <table width="100%" border="0" cellspacing="0" cellpadding="2">
564
         <tr>
565
            <td width="1%" nowrap class="body_colb">&nbsp;</td>
566
            <td width="1%" nowrap class="body_colb">Package Name&nbsp;&nbsp;&nbsp;</td>
567
            <td width="1%" nowrap class="body_colb">Version&nbsp;&nbsp;&nbsp;</td>
568
            <td width="100%" nowrap class="body_colb">&nbsp;</td>
569
         </tr>
570
         <tr>
571
         <td colspan="4" background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
572
         </tr>
573
         <%
574
         Dim currRtag_id
575
         currRtag_id = -1
576
         Set rsRep = OraDatabase.DbCreateDynaset( Query_String, 0 )
577
 
578
         If rsRep.RecordCount = 0 Then
579
            With Response
580
               .write "<tr>"
581
               .write "<td colspan='4' class='body_row'>Found 0 records</td>"
582
               .write "</tr>"
583
            End With
584
         End If
585
 
586
         While ((NOT rsRep.BOF) AND (NOT rsRep.EOF))
587
            ' -------- GROUP BY RTAG_ID -----------------
588
            If CDbl(currRtag_id) <> CDbl(rsRep("rtag_id")) Then
589
               %>
590
               <tr>
591
                  <td colspan="3" background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
592
               <td></td>
593
               </tr>
594
               <tr>
595
                  <td colspan="4" nowrap class="body_scol"><%=rsRep("proj_name")  &" &gt; "& rsRep("rtag_name")%></td>
596
               </tr>
597
               <%
598
               currRtag_id = CDbl(rsRep("rtag_id"))
599
            End If
600
            ' -------- END GROUP ------------------------
601
            %>
602
            <tr>
603
               <td class="body_row"></td>
604
               <td nowrap><a href="dependencies.asp?rtag_id=<%=rsRep("rtag_id")%>&pv_id=<%=rsRep("pv_id")%>" class="txt_linked"><%=rsRep("pkg_name")%></a></td>
605
               <td nowrap><a href="dependencies.asp?rtag_id=<%=rsRep("rtag_id")%>&pv_id=<%=rsRep("pv_id")%>" class="txt_linked"><%=rsRep("pkg_version")%></a></td>
606
               <td class="body_row"></td>
607
            </tr>
608
            <%  rsRep.MoveNext
609
         WEnd
610
         %>
611
         <tr>
612
            <td colspan="3" background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
613
            <td></td>
614
         </tr>
615
         <tr>
616
            <td colspan="4" background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
617
         </tr>
618
      </table>
619
      <!-- PRINT, SAVE, ETC. ------------>
620
      <%If parPrint = "" Then%>
621
         <br>
622
         <br>
623
         <a href="javascript:;" onClick="window.print();" class="txt_linked"><img src="images/btn_print.gif" width="23" height="24" hspace="4" border="0" align="absmiddle">Print this report</a><br>
624
         <br>
625
      <%End If%>
626
      <!-- PRINT, SAVE, ETC. END -------->
627
      <%
628
      rsRep.Close
629
      Set rsRep = nothing
630
   End If
631
 
119 ghuddy 632
End Sub
633
%>
634
<%
635
'-------------------------------------------------------------------------------------------------------------------------------------------------------------------
636
'==================================================================================
129 ghuddy 637
' Report Name      :    Current State of Release
638
' Description      :   Show all packages in a release with their state, owner and modifier
639
' Form Input      :   Project, Vesion Tree, Release Label
640
' SQL INPUT         :   rtag_id
119 ghuddy 641
'==================================================================================
642
Sub Current_State_of_Release ( SSsection, NNproj_id, NNrtag_id, NNpkg_states )
129 ghuddy 643
   Dim Query_String, rsRep
644
   Const Disallow_All = FALSE
645
 
646
   If NNproj_id = "" Then NNproj_id = -1
647
   If NNrtag_id = "" Then NNrtag_id = -1
648
   If NNpkg_states = "" Then NNpkg_states = -1
649
 
650
   If SSsection = "TITLE" Then
651
      Response.write "Current State of Release"
652
      Exit Sub
653
   End If
654
 
655
 
656
   If SSsection = "FORM" Then
657
      %>
658
      <table width="100%" border="0" cellpadding="2" cellspacing="1">
659
         <form action="<%=scriptName%>" method="post" name="repform" onSubmit="MM_validateForm('FRproj_id','Project','R','FRvtree_id','Version Tree','R','FRrtag_id','Release','R');return document.MM_returnValue">
660
            <tr>
661
               <td width="1%" nowrap class="form_field"><img src="images/spacer.gif" width="30" height="8"></td>
662
               <td width="1%" align="right" nowrap class="form_field">Project</td>
663
               <td width="100%"><%Call Get_Projects( NNproj_id, Disallow_All )%></td>
664
            </tr>
665
            <tr>
666
               <td nowrap class="form_field">&nbsp;</td>
667
               <td align="right" nowrap class="form_field">Release</td>
668
               <td><%Call Get_Release_Labels ( NNproj_id, NNrtag_id, Disallow_All )%></td>
669
            </tr>
670
            <tr>
671
               <td nowrap class="form_field">&nbsp;</td>
672
               <td align="right" nowrap class="form_field">Package States</td>
673
               <td class="form_field" nowrap>
674
                  <span style="border: 1px solid #808080;">&nbsp;OK&nbsp;<input type="checkbox" name="FRpkg_state" value="<%=enumPKG_STATE_OK%>" <%If InStr( Request("FRpkg_state"), Cstr(enumPKG_STATE_OK) ) > 0 Then%>checked<%End If%>></span>&nbsp;&nbsp;
675
                  <span style="border: 1px solid #808080;"><%=enum_imgCritical%><input type="checkbox" name="FRpkg_state" value="<%=enumPKG_STATE_MAJOR%>" <%If InStr( Request("FRpkg_state"), Cstr(enumPKG_STATE_MAJOR) ) > 0 Then%>checked<%End If%>></span>&nbsp;&nbsp;
676
                  <span style="border: 1px solid #808080;"><%=enum_imgWarning%><input type="checkbox" name="FRpkg_state" value="<%=enumPKG_STATE_MINOR%>" <%If InStr( Request("FRpkg_state"), Cstr(enumPKG_STATE_MINOR) ) > 0 Then%>checked<%End If%>></span>&nbsp;&nbsp;
677
                  <span style="border: 1px solid #808080;"><%=enum_imgCReady%><input type="checkbox" name="FRpkg_state" value="<%=enumPKG_STATE_MAJOR_READY%>" <%If InStr( Request("FRpkg_state"), Cstr(enumPKG_STATE_MAJOR_READY) ) > 0 Then%>checked<%End If%>></span>&nbsp;&nbsp;
678
                  <span style="border: 1px solid #808080;"><%=enum_imgWReady%><input type="checkbox" name="FRpkg_state" value="<%=enumPKG_STATE_MINOR_READY%>" <%If InStr( Request("FRpkg_state"), Cstr(enumPKG_STATE_MINOR_READY) ) > 0 Then%>checked<%End If%>></span>&nbsp;&nbsp;
679
               </td>
680
            </tr>
681
            <tr>
682
               <td nowrap class="form_field">&nbsp;</td>
683
               <td align="right" nowrap class="form_field">&nbsp;</td>
684
               <td><br>
685
                  <input type="hidden" name="group" value="<%=parGroup%>">
686
                  <input type="hidden" name="repnum" value="<%=parRepNum%>">
687
                  <input type="hidden" name="action" value="true">
688
                  <input name="Submit" type="submit" class="form_btn" value="Submit">
689
               </td>
690
            </tr>
691
         </form>
692
      </table>
693
      <%   Exit Sub
694
   End If
695
 
696
 
697
   If SSsection = "BODY" Then
698
      If NOT CBool(Request("action")) Then Exit Sub
699
 
700
      Query_String = ReadFile( rootPath & "queries\rep_details_current_status_of_release.sql" )
701
      Query_String = Replace ( Query_String, "/*PKG_STATES*/", NNpkg_states )
702
 
703
      OraDatabase.Parameters.Add "RTAG_ID", NNrtag_id, ORAPARM_INPUT, ORATYPE_NUMBER
704
      %>
705
      <table width="100%" border="0" cellspacing="0" cellpadding="2">
706
         <tr>
707
            <td width="1%" nowrap class="body_colb">&nbsp;</td>
708
            <td width="1%" nowrap class="body_colb">&nbsp;</td>
709
            <td width="1%" nowrap class="body_colb">&nbsp;</td>
710
            <td width="1%" nowrap class="body_colb">Package Name and Version&nbsp;&nbsp;&nbsp;</td>
711
            <td width="1%" nowrap class="body_colb">Owner&nbsp;&nbsp;&nbsp;</td>
712
            <td width="1%" nowrap class="body_colb">Last Modifier&nbsp;&nbsp;&nbsp;</td>
713
            <td width="1%" nowrap class="body_colb">Added to Release&nbsp;&nbsp;&nbsp;</td>
714
            <td width="100%" nowrap class="body_colb">&nbsp;</td>
715
         </tr>
716
         <tr>
717
         <td colspan="8" background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
718
         </tr>
719
         <%
720
         Dim currView_id
721
         currView_id = -1
722
         Set rsRep = OraDatabase.DbCreateDynaset( Query_String, 0 )
723
 
724
         If rsRep.RecordCount = 0 Then
725
            With Response
726
               .write "<tr>"
727
               .write "<td colspan='8' class='body_row'>Found 0 records</td>"
728
               .write "</tr>"
729
            End With
730
         End If
731
 
732
         While ((NOT rsRep.BOF) AND (NOT rsRep.EOF))
733
            ' -------- GROUP BY RTAG_ID -----------------
734
            If CDbl(currView_id) <> CDbl(rsRep("view_id")) Then
735
               %>
736
               <tr>
737
                  <td colspan="7" background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
738
                  <td></td>
739
               </tr>
740
               <tr>
741
                  <td colspan="8" nowrap class="body_scol"><%=rsRep("view_name")%></td>
742
               </tr>
743
               <%
744
               currView_id = CDbl(rsRep("view_id"))
745
            End If
746
            ' -------- END GROUP ------------------------
747
            %>
748
            <tr>
749
               <td class="body_row"></td>
750
               <td><%=DefineStateIcon ( rsRep("pkg_state"), rsRep("dlocked"), NULL, NULL, NULL, NULL )%></td>
751
               <%If rsRep("dlocked") = "Y" Then%>
752
                  <td align="center" class="form_item"><img src='images/i_locked.gif' width='7' height='10' hspace='6'></td>
753
               <%Else%>
754
                  <td align="center" class="form_item"><img src='images/spacer.gif' width='7' height='10' hspace='6'></td>
755
               <%End If%>
756
               <td nowrap class="body_row"><%=rsRep("pkg_name") &" "& rsRep("pkg_version")%></td>
757
               <td nowrap><a href="mailto:<%=rsRep("owner_email")%>" class="txt_linked"><%=rsRep("owner")%></a>&nbsp;&nbsp;&nbsp;</td>
758
               <td nowrap><a href="mailto:<%=rsRep("modifier_email")%>" class="txt_linked"><%=rsRep("modifier")%></a>&nbsp;&nbsp;&nbsp;</td>
5632 dpurdie 759
               <td class="body_row"><%=DisplayDate( rsRep("insert_stamp") )%></td>
129 ghuddy 760
               <td class="body_row"></td>
761
            </tr>
762
            <%  rsRep.MoveNext
763
         WEnd
764
         %>
765
         <tr>
766
            <td colspan="8" background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
767
         </tr>
768
      </table>
769
      <!-- PRINT, SAVE, ETC. ------------>
770
      <%If parPrint = "" Then%>
771
         <br>
772
         <br>
773
         <a href="javascript:;" onClick="window.print();" class="txt_linked"><img src="images/btn_print.gif" width="23" height="24" hspace="4" border="0" align="absmiddle">Print this report</a><br>
774
         <br>
775
      <%End If%>
776
      <!-- PRINT, SAVE, ETC. END -------->
777
      <%
778
      rsRep.Close
779
      Set rsRep = nothing
780
   End If
781
 
119 ghuddy 782
End Sub
783
%>
784
<%
785
'-------------------------------------------------------------------------------------------------------------------------------------------------------------------
786
'==================================================================================
129 ghuddy 787
' Report Name      :    Find ClearQuest Bugs / Issues Location
788
' Description      :   Locates bugs / issues imported from ClearQuest
789
' Form Input      :   CQ issue Database, CQ issue number list space separated
119 ghuddy 790
'==================================================================================
791
Sub Where_Are_Bugs_Located ( SSsection, NNiss_db, SSiss_num_list )
792
 
129 ghuddy 793
   If SSsection = "TITLE" Then
5860 dpurdie 794
      Response.write "Find Jira or ClearQuest Bugs / Issues Location"
129 ghuddy 795
      Exit Sub
796
   End If
797
 
798
   If SSsection = "FORM" Then
799
      %>
800
      <table width="100%" border="0" cellpadding="2" cellspacing="1">
801
         <form action="<%=scriptName%>" method="post" name="repform" onSubmit="MM_validateForm('FRiss_num_list','Issue Number','R');return document.MM_returnValue">
802
            <tr>
803
               <td width="1%" nowrap class="form_field"><img src="images/spacer.gif" width="30" height="8"></td>
5860 dpurdie 804
               <td width="1%" align="right" nowrap class="form_field" valign="top">Issue System</td>
129 ghuddy 805
               <td width="100%">
806
                  <select name="FRiss_db" class="form_item">
5861 dpurdie 807
                     <option value="<%=enumJIRA_DEVI_ID%>" <%If CDbl(NNiss_db) = enumJIRA_DEVI_ID Then%>selected<%End If%>>Jira</option>
5860 dpurdie 808
                     <option value="<%=enumCLEARQUEST_DEVI_ID%>" <%If CDbl(NNiss_db) = enumCLEARQUEST_DEVI_ID Then%>selected<%End If%>>ClearQuest DEVI</option>
129 ghuddy 809
                  </select>
810
               </td>
811
            </tr>
812
            <tr>
813
               <td nowrap class="form_field">&nbsp;</td>
814
               <td align="right" nowrap class="form_field" valign="top">Issue Numbers</td>
815
               <td class="form_txt"><input type="text" name="FRiss_num_list" size="50" class="form_item" value="<%=SSiss_num_list%>"><br>
816
               HINTS:<br>
817
               - You can use * wildcard. e.g. *0123 or 0123* or *0123*<br>
818
               - Use space separated issue numbers for multiple search.</td>
819
            </tr>
820
            <tr>
821
               <td nowrap class="form_field">&nbsp;</td>
822
               <td align="right" nowrap class="form_field">&nbsp;</td>
823
               <td><br>
824
                  <input type="hidden" name="group" value="<%=parGroup%>">
825
                  <input type="hidden" name="repnum" value="<%=parRepNum%>">
826
                  <input type="hidden" name="action" value="true">
827
                  <input name="Submit" type="submit" class="form_btn" value="Submit">
828
               </td>
829
            </tr>
830
         </form>
831
      </table>
832
      <%   Exit Sub
833
   End If
834
 
835
 
836
   If SSsection = "BODY" Then
837
      If NOT CBool(Request("action")) Then Exit Sub
838
 
5860 dpurdie 839
     If CDbl(NNiss_db) = enumCLEARQUEST_DEVI_ID Then
840
        Call Where_Are_Bugs_Located_ClearQuest( SSsection, NNiss_db, SSiss_num_list)
841
     ElseIf CDbl(NNiss_db) = enumJIRA_DEVI_ID Then
842
        Call Where_Are_Bugs_Located_Jira (SSsection, NNiss_db, SSiss_num_list)
843
     End If
844
     %>
845
      <!-- PRINT, SAVE, ETC. ------------>
846
      <%If parPrint = "" Then%>
847
         <br>
848
         <br>
849
         <a href="javascript:;" onClick="window.print();" class="txt_linked"><img src="images/btn_print.gif" width="23" height="24" hspace="4" border="0" align="absmiddle">Print this report</a><br>
850
         <br>
851
      <%End If%>
852
      <!-- PRINT, SAVE, ETC. END -------->
853
      <%
854
   End If
129 ghuddy 855
 
5860 dpurdie 856
End Sub
5861 dpurdie 857
'-------------------------------------------------
858
' Function:     Where_Are_Bugs_Located_Jira    
859
' Description:  Body of the report for Jira Issues
860
'
5860 dpurdie 861
Sub Where_Are_Bugs_Located_Jira ( SSsection, NNiss_db, SSiss_num_list )
862
    Dim Query_String, rsRep
863
    Dim SSsql, issARR, num_item, issNumDict, rsCQ, recCount, maxRecCount
864
    Set issNumDict = CreateObject("Scripting.Dictionary")
129 ghuddy 865
 
5860 dpurdie 866
    '---- Find Issue numbers in JIRA  ----
867
     SSsql = _
868
     " select distinct ISS_KEY"&_
869
     " FROM release_manager.JIRA_ISSUES"&_
870
     " WHERE "
129 ghuddy 871
 
5860 dpurdie 872
    '---- Split multiple search ----
873
    SSiss_num_list = Trim(SSiss_num_list)
874
    If InStr( SSiss_num_list, " " ) > 0 Then
875
     ' space separator found
876
     issARR = Split ( SSiss_num_list, " ")
129 ghuddy 877
 
5860 dpurdie 878
     For Each num_item In issARR
879
        If num_item <> "" Then
880
           SSsql = SSsql & " ISS_KEY LIKE ('%"& Replace( SQLstring(num_item), "*", "%" ) & "') OR"
881
        End If
882
     Next
129 ghuddy 883
 
5860 dpurdie 884
     SSsql = Left ( SSsql, Len(SSsql) - 2 )      ' Removes last OR
129 ghuddy 885
 
5860 dpurdie 886
    Else
887
     SSsql = SSsql & " ISS_KEY LIKE ('%"& Replace( SQLstring(SSiss_num_list), "*", "%") &"')"
129 ghuddy 888
 
5860 dpurdie 889
    End If
129 ghuddy 890
 
5860 dpurdie 891
    Set rsCQ = OraDatabase.DbCreateDynaset( SSsql, cint(0))
129 ghuddy 892
 
5860 dpurdie 893
    ' Get find results from CQ
894
    recCount = 1
895
    maxRecCount = 1000
896
    issNumDict.ADD "'-1'", "-1"      ' take care of no results
897
    While ((NOT rsCQ.BOF) AND (NOT rsCQ.EOF) AND (recCount < maxRecCount))
898
     issNumDict.ADD "'" & Cstr(rsCQ("ISS_KEY")) & "'", "1"
899
     recCount = recCount + 1
900
     rsCQ.MoveNext
901
    WEnd
129 ghuddy 902
 
5860 dpurdie 903
    rsCQ.Close
904
    Set rsCQ = nothing
129 ghuddy 905
 
5860 dpurdie 906
    Query_String = ReadFile( rootPath & "queries\rep_where_are_jirabugs_located.sql" )
907
    Query_String = Replace ( Query_String, "/*ISS_ID_LIST*/", Join( issNumDict.Keys, ",") )
129 ghuddy 908
 
5860 dpurdie 909
    %>
910
    <table width="100%" border="0" cellspacing="0" cellpadding="2">
911
     <tr>
912
        <td width="1%" nowrap class="body_colb">Issue Number&nbsp;&nbsp;&nbsp;</td>
5861 dpurdie 913
        <td width="1%" nowrap class="body_colb">&nbsp;&nbsp;&nbsp;</td>
5860 dpurdie 914
        <td width="1%" nowrap class="body_colb">Package Name and Version&nbsp;&nbsp;&nbsp;</td>
5861 dpurdie 915
        <td width="1%" nowrap class="body_colb">Currently used Release&nbsp;&nbsp;&nbsp;</td>
5860 dpurdie 916
        <td width="100%" nowrap class="body_colb">&nbsp;</td>
917
     </tr>
918
     <tr>
919
     <td colspan="5" background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
920
     </tr>
921
     <%
922
     Dim currIss_id
923
     currIss_id = -1
129 ghuddy 924
 
5860 dpurdie 925
     Set rsRep = OraDatabase.DbCreateDynaset( Query_String, 0 )
926
     If rsRep.RecordCount = 0 Then
927
        With Response
928
           .write "<tr>"
929
           .write "<td colspan='5' class='body_row'>Found 0 records</td>"
930
           .write "</tr>"
931
        End With
932
     End If
129 ghuddy 933
 
5860 dpurdie 934
     While ((NOT rsRep.BOF) AND (NOT rsRep.EOF))
935
        ' -------- GROUP BY ISS_KEY -----------------
936
        If Cstr(currIss_id) <> Cstr(rsRep("iss_key")) Then
937
           %>
5861 dpurdie 938
           <% ' -- line between issues %>
5860 dpurdie 939
           <tr>
940
              <td colspan="5" background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
941
              <td></td>
942
           </tr>
5861 dpurdie 943
           <% ' -- Start of a new issue %>
5860 dpurdie 944
           <tr>
5861 dpurdie 945
              <td nowrap valign="top">
946
                    <a href="<%=Application("JIRA_URL") & "/browse/" & rsRep("iss_key")%>" class="txt_linked"  target="_blank" title="Browse Jira Issue">
947
                        <img src="images/i_drill_down.gif" width="12" height="14" hspace="3" border="0" align="absmiddle">
948
                    <%=rsRep("iss_key")%></a>
949
              </td>
5860 dpurdie 950
           <%
951
           currIss_id = Cstr(rsRep("iss_key"))
5861 dpurdie 952
        Else %>
953
           <td nowrap class="body_row" valign="top"></td>
954
        <% End If
5860 dpurdie 955
        ' -------- END GROUP ------------------------
956
        %>
5861 dpurdie 957
           <td align="left"><img src='images/spacer.gif' width='7' height='7' hspace='6'></td>
958
           <td nowrap align="left" class="body_row" valign="top">
959
              <a href="fixed_issues.asp?pv_id=<%=rsRep("pv_id")%>#ISSUES" class="txt_linked" target="_blank"  title="Open version in new window">
960
                <%=rsRep("pkg_name") &" "& rsRep("pkg_version")%>
961
              </a>
962
           </td>
963
           <td>
5860 dpurdie 964
           <%
5861 dpurdie 965
           Query_String = "select * from release_content rc, release_tags rt" &_
966
                          " where rc.rtag_id = rt.rtag_id and pv_id = "&rsRep("pv_id")
967
           Set rsQry = OraDatabase.DbCreateDynaset( Query_String , 0 )
968
           If rsQry.RecordCount <> 0 Then
969
               %>
970
               <table width="100%" border="0" cellspacing="0" cellpadding="2">
971
               <%
972
               While ((NOT rsQry.BOF) AND (NOT rsQry.EOF))
973
                  %>
974
                  <tr>
975
                     <td nowrap align="left" class="body_row" valign="top">
976
                        <a href="fixed_issues.asp?rtag_id=<%=rsQry("rtag_id")%>&pv_id=<%=rsQry("pv_id")%>#ISSUES" class="txt_linked" target="_blank">
977
                            <%=rsQry("rtag_name")%>
978
                        </a>
979
                     </td>
980
                  </tr>
981
                  <%
982
                  rsQry.MoveNext()
983
               WEnd
984
                %>
985
                </table>
986
                <%
987
           End If
5860 dpurdie 988
           rsQry.Close()
989
           Set rsQry = Nothing
990
           %>
5861 dpurdie 991
           </td>
5860 dpurdie 992
           <td nowrap align="left" class="body_row" valign="top"></td>
993
        </tr>
994
        <%  rsRep.MoveNext
995
     WEnd
996
     %>
997
     <tr>
998
        <td colspan="5" background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
999
     </tr>
1000
    </table>
1001
    <%
1002
    rsRep.Close
1003
    Set rsRep = nothing
119 ghuddy 1004
End Sub
5860 dpurdie 1005
 
5861 dpurdie 1006
'-------------------------------------------------
1007
' Function:     Where_Are_Bugs_Located_ClearQuest    
1008
' Description:  Body of the report for ClearQuest Issues
1009
'
5860 dpurdie 1010
Sub Where_Are_Bugs_Located_ClearQuest ( SSsection, NNiss_db, SSiss_num_list )
1011
    Dim Query_String, rsRep
1012
    Dim SSsql, issARR, num_item, iss_num_col, issNumDict, rsCQ, recCount, maxRecCount
1013
    Set issNumDict = CreateObject("Scripting.Dictionary")
1014
 
1015
    '---- Find Issue numbers in ClearQuest ----
1016
     iss_num_col = "new_num"
1017
     SSsql = _
1018
     " SELECT si.dbid AS iss_id, si."& iss_num_col &" AS iss_num"&_
1019
     " FROM release_manager.cq_software_issue si"&_
1020
     " WHERE "
1021
 
1022
    '---- Split multiple search ----
1023
    SSiss_num_list = Trim(SSiss_num_list)
1024
    If InStr( SSiss_num_list, " " ) > 0 Then
1025
     ' space separator found
1026
     issARR = Split ( SSiss_num_list, " ")
1027
 
1028
     For Each num_item In issARR
1029
        If num_item <> "" Then
1030
           SSsql = SSsql & " (si."& iss_num_col &" LIKE '%"& Replace( SQLstring(num_item), "*", "%" ) &"%') OR"
1031
        End If
1032
     Next
1033
 
1034
     SSsql = Left ( SSsql, Len(SSsql) - 2 )      ' Removes last OR
1035
 
1036
    Else
1037
     SSsql = SSsql & " (si."& iss_num_col &" LIKE '%"& Replace( SQLstring(SSiss_num_list), "*", "%") &"%')"
1038
 
1039
    End If
1040
    Set rsCQ = OraDatabase.DbCreateDynaset( SSsql, cint(0))
1041
 
1042
    ' Get find results from CQ
1043
    recCount = 1
1044
    maxRecCount = 1000
1045
    issNumDict.ADD "-1", "-1"      ' take care of no results
1046
    While ((NOT rsCQ.BOF) AND (NOT rsCQ.EOF) AND (recCount < maxRecCount))
1047
     issNumDict.ADD Cstr(rsCQ("iss_id")), Cstr(rsCQ("iss_num"))
1048
     recCount = recCount + 1
1049
     rsCQ.MoveNext
1050
    WEnd
1051
 
1052
    rsCQ.Close
1053
    Set rsCQ = nothing
1054
 
1055
    Query_String = ReadFile( rootPath & "queries\rep_where_are_bugs_located.sql" )
1056
    Query_String = Replace ( Query_String, "/*ISS_DB*/", NNiss_db )
1057
    Query_String = Replace ( Query_String, "/*ISS_ID_LIST*/", Join( issNumDict.Keys, ",") )
1058
 
1059
    %>
1060
    <table width="100%" border="0" cellspacing="0" cellpadding="2">
1061
     <tr>
1062
        <td width="1%" nowrap class="body_colb">Issue Number&nbsp;&nbsp;&nbsp;</td>
1063
        <td width="1%" nowrap class="body_colb">Fixed</td>
1064
        <td width="1%" nowrap class="body_colb">Package Name and Version&nbsp;&nbsp;&nbsp;</td>
1065
        <td width="1%" nowrap class="body_colb">Notes&nbsp;&nbsp;&nbsp;</td>
1066
        <td width="100%" nowrap class="body_colb">&nbsp;</td>
1067
     </tr>
1068
     <tr>
1069
     <td colspan="5" background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
1070
     </tr>
1071
     <%
1072
     Dim currIss_id
1073
     currIss_id = -1
1074
     Set rsRep = OraDatabase.DbCreateDynaset( Query_String, 0 )
1075
 
1076
     If rsRep.RecordCount = 0 Then
1077
        With Response
1078
           .write "<tr>"
1079
           .write "<td colspan='5' class='body_row'>Found 0 records</td>"
1080
           .write "</tr>"
1081
        End With
1082
     End If
1083
 
1084
     While ((NOT rsRep.BOF) AND (NOT rsRep.EOF))
1085
        ' -------- GROUP BY ISS_ID -----------------
1086
        If Cstr(currIss_id) <> Cstr(rsRep("iss_id")) Then
1087
           %>
1088
           <tr>
1089
              <td colspan="5" background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
1090
              <td></td>
1091
           </tr>
1092
           <tr>
5861 dpurdie 1093
              <td nowrap>
1094
                    <a href="javascript:;" onClick="MM_openVixIFrame('_wform_issues_details.asp?iss_db=<%=NNiss_db%>&iss_id=<%= rsRep("iss_id")%>','Issue Details','resizable=yes,width=580,height=500')" class="txt_linked">
1095
                        <img src="images/i_drill_down.gif" width="12" height="14" hspace="3" border="0" align="absmiddle" title="See issue details.">
1096
                    <%=issNumDict.Item ( Cstr ( rsRep("iss_id") ) )%></a>
1097
              </td>
1098
 
5860 dpurdie 1099
              <td colspan='5' class="body_scol"></td>
1100
           </tr>
1101
           <%
1102
           currIss_id = Cstr(rsRep("iss_id"))
1103
        End If
1104
        ' -------- END GROUP ------------------------
1105
        %>
1106
        <tr>
1107
           <td nowrap class="body_row" valign="top"></td>
1108
           <%If CDbl(rsRep("iss_state")) = enumISSUES_STATE_FIXED Then%>
1109
              <td align="left"><img src="images/i_tick.gif" width="7" height="7" hspace="6"></td>
1110
           <%Else%>
1111
              <td align="left"><img src='images/spacer.gif' width='7' height='7' hspace='6'></td>
1112
           <%End If%>
1113
           <td nowrap align="left" class="body_row" valign="top"><%=rsRep("pkg_name") &" "& rsRep("pkg_version")%><img src="images/i_drill_down.gif" width="12" height="14" hspace="3" border="0" align="absmiddle" title="Find this package."></td>
1114
           <%
1115
           Set rsQry = OraDatabase.DbCreateDynaset( "select * from release_content rc, release_tags rt where rc.rtag_id = rt.rtag_id and "&_
1116
                                      " pv_id ="&rsRep("pv_id"), 0 )
1117
 
1118
           While ((NOT rsQry.BOF) AND (NOT rsQry.EOF))
1119
              %>
1120
              <tr>
1121
                 <td nowrap align="left" class="body_row" valign="top"></td>
1122
                 <td nowrap align="left" class="body_row" valign="top"></td>
1123
                 <td nowrap align="left" class="body_row" valign="top"><a href="fixed_issues.asp?rtag_id=<%=rsQry("rtag_id")%>&pv_id=<%=rsQry("pv_id")%>" class="txt_linked" target="_blank"><%=rsQry("rtag_name")%></a></td>
1124
              </tr>
1125
              <%
1126
              rsQry.MoveNext()
1127
           WEnd
1128
           rsQry.Close()
1129
           Set rsQry = Nothing
1130
           %>
1131
           <td nowrap align="left" class="body_row" valign="top"><%=rsRep("notes")%></td>
1132
           <td nowrap align="left" class="body_row" valign="top"></td>
1133
        </tr>
1134
        <%  rsRep.MoveNext
1135
     WEnd
1136
     %>
1137
     <tr>
1138
        <td colspan="5" background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
1139
     </tr>
1140
    </table>
1141
    <%
1142
    rsRep.Close
1143
    Set rsRep = nothing
1144
End Sub
1145
 
119 ghuddy 1146
%>
1147
<%
1148
'-------------------------------------------------------------------------------------------------------------------------------------------------------------------
1149
'==================================================================================
5504 dpurdie 1150
' Report Name      :   Find a Package
129 ghuddy 1151
' Description      :   Locate a package in Release Manager
5504 dpurdie 1152
' Form Input       :   Package Name, version extension
119 ghuddy 1153
'==================================================================================
1154
Sub Find_Package ( SSsection, SSpkg_name, SSv_ext )
129 ghuddy 1155
   Dim Query_String, rsRep, oRegExp
1156
 
1157
 
1158
   If SSsection = "TITLE" Then
1159
      Response.write "Find a Package"
1160
      Exit Sub
1161
   End If
1162
 
1163
 
1164
   If SSsection = "FORM" Then
1165
      %>
1166
      <table width="100%" border="0" cellpadding="2" cellspacing="1">
1167
         <form action="<%=scriptName%>" method="post" name="repform" onSubmit="MM_validateForm('FRpkg_name','Package Name','R');return document.MM_returnValue">
1168
            <tr>
1169
               <td width="1%" nowrap class="form_field"><img src="images/spacer.gif" width="1" height="8"></td>
1170
               <td width="1%" align="right" nowrap class="form_field" valign="top">Package Name</td>
1171
               <td class="form_txt"><input type="text" name="FRpkg_name" size="30" class="form_item" value="<%=SSpkg_name%>"><br>
1172
               HINTS:<br>
1173
               - You can use * wildcard. e.g. *0123 or 0123* or *0123*<br><br></td>
1174
            </tr>
1175
            <tr>
1176
               <td nowrap class="form_field">&nbsp;</td>
1177
               <td align="right" nowrap class="form_field" valign="top">Version Extension (optional)</td>
1178
               <td class="form_txt"><input type="text" name="FRv_ext" size="10" class="form_item" value="<%=SSv_ext%>"><br>
5504 dpurdie 1179
               e.g. .mas or .cr or blank etc.</td>
129 ghuddy 1180
            </tr>
1181
            <tr>
1182
               <td nowrap class="form_field">&nbsp;</td>
1183
               <td align="right" nowrap class="form_field">&nbsp;</td>
1184
               <td><br>
1185
                  <input type="hidden" name="group" value="<%=parGroup%>">
1186
                  <input type="hidden" name="repnum" value="<%=parRepNum%>">
1187
                  <input type="hidden" name="action" value="true">
1188
                  <input name="Submit" type="submit" class="form_btn" value="Submit">
1189
               </td>
1190
            </tr>
1191
         </form>
1192
      </table>
1193
      <%   Exit Sub
1194
   End If
1195
 
1196
 
1197
   If SSsection = "BODY" Then
1198
      If NOT CBool(Request("action")) Then Exit Sub
1199
 
1200
      If SSpkg_name = "" Then SSpkg_name = "%"
1201
      If SSv_ext = "" Then SSv_ext = "%"
1202
      If Request("withwcard") <> "" Then SSpkg_name = "%"& Replace( SQLstring(SSpkg_name), "*", "") &"%"      'Place wild card automatically
1203
 
1204
 
1205
 
1206
      ' -- Check if this is PV_ID
1207
      Set oRegExp = New RegExp
1208
 
1209
      oRegExp.Global = False   'Find only first match
1210
      oRegExp.Pattern = "\D" 'Match number only
1211
 
1212
 
1213
      If NOT oRegExp.Test(Request("FRpkg_name")) Then
1214
         Query_String = ReadFile( rootPath & "queries\rep_find_package_by_pv_id.sql" )
1215
         Query_String = Replace ( Query_String, "/*PV_ID*/", SQLstring(Request("FRpkg_name") )  )
1216
 
1217
      Else
1218
         Query_String = ReadFile( rootPath & "queries\rep_find_package.sql" )
1219
         Query_String = Replace ( Query_String, "/*PKG_NAME*/", Replace( SQLstring(SSpkg_name), "*", "%") )
1220
         Query_String = Replace ( Query_String, "/*V_EXT*/", Replace( SQLstring(SSv_ext), "*", "%") )
1221
      End If
1222
      %>
1223
      <table width="100%" border="0" cellspacing="0" cellpadding="2">
1224
         <tr>
1225
            <td width="1%" nowrap class="body_colb">Package Name and Version&nbsp;&nbsp;&nbsp;</td>
1226
            <td width="1%" nowrap class="body_colb">Location</td>
1227
            <td width="100%" nowrap class="body_colb">&nbsp;</td>
1228
         </tr>
1229
         <tr>
1230
            <td colspan="3" background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
1231
         </tr>
1232
         <%
5504 dpurdie 1233
         Dim currPv_id, currVext
1234
         currPv_id = -2
1235
         currVext = ""
129 ghuddy 1236
         Set rsRep = OraDatabase.DbCreateDynaset( Query_String, 0 )
1237
 
1238
         If rsRep.RecordCount = 0 Then
1239
            With Response
1240
               .write "<tr>"
1241
               .write "<td colspan='3' class='body_row'>Found 0 records</td>"
1242
               .write "</tr>"
1243
            End With
1244
         End If
1245
 
1246
         While ((NOT rsRep.BOF) AND (NOT rsRep.EOF))
1247
            ' -------- GROUP BY Package Version -----------------
5504 dpurdie 1248
            If (Cstr(currPv_id) <> Cstr(rsRep("pv_id"))) OR (currVext <> rsRep("V_EXT"))  Then
129 ghuddy 1249
               %>
1250
               <tr>
1251
                  <td colspan="2" background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
1252
               <td></td>
1253
               </tr>
1254
               <tr>
1255
                  <%If Request("withwcard") <> "" Then%>
1256
                     <%' Highlight results for package search from index page%>
1257
                     <td nowrap class="body_scol"><%=Highlight_Substring ( rsRep("pkg_name"), Replace( SQLstring(SSpkg_name), "%", "") )  &" "& rsRep("pkg_version")%></td>
1258
                  <%Else%>
1259
                     <td nowrap class="body_scol"><%=rsRep("pkg_name") &" "& rsRep("pkg_version")%></td>
1260
                  <%End If%>
1261
                  <td colspan='2' class="body_scol"></td>
1262
               </tr>
1263
               <%
1264
               currPv_id = Cstr(rsRep("pv_id"))
5504 dpurdie 1265
               currVext = rsRep("V_EXT")
129 ghuddy 1266
            End If
1267
            ' -------- END GROUP ------------------------
1268
            %>
1269
            <%If NOT IsNull(rsRep("proj_name")) Then%>
1270
               <tr>
1271
                  <td class="body_row"></td>
1272
                  <td nowrap class="body_row" valign="top"><%=rsRep("proj_name") &" &gt; "& rsRep("vtree_name") &" &gt; "& rsRep("rtag_name") &" &gt; <a href='dependencies.asp?pv_id="& rsRep("pv_id") &"&rtag_id="& rsRep("rtag_id") &"' class='txt_linked'>"& rsRep("pkg_name") &" "& rsRep("pkg_version") &"</a>"%></td>
1273
                  <td class="body_row"></td>
1274
               </tr>
1275
            <%Else%>
1276
               <tr>
1277
                  <td class="body_row"></td>
1278
                  <td class="body_row"></td>
1279
                  <td class="body_row"></td>
1280
               </tr>
1281
            <%End If%>
1282
            <%  rsRep.MoveNext
1283
         WEnd
1284
         %>
1285
         <tr>
1286
            <td colspan="3" background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
1287
         </tr>
1288
      </table>
1289
      <!-- PRINT, SAVE, ETC. ------------>
1290
      <%If parPrint = "" Then%>
1291
         <br>
1292
         <br>
1293
         <a href="javascript:;" onClick="window.print();" class="txt_linked"><img src="images/btn_print.gif" width="23" height="24" hspace="4" border="0" align="absmiddle">Print this report</a><br>
1294
         <br>
1295
      <%End If%>
1296
      <!-- PRINT, SAVE, ETC. END -------->
1297
      <%
1298
      rsRep.Close
1299
      Set rsRep = nothing
1300
   End If
1301
 
119 ghuddy 1302
End Sub
1303
%>
1304
<%
1305
'==================================================================================
129 ghuddy 1306
' Report Name      :    Find Package Version History
1307
' Description      :   Locate all package versions and their current location
1308
' Form Input      :   Package Name, version extension
119 ghuddy 1309
'==================================================================================
1310
Sub Find_Package_Version_History ( SSsection, SSpkg_name, SSv_ext )
129 ghuddy 1311
   Dim Query_String, rsRep
1312
 
1313
 
1314
   If SSsection = "TITLE" Then
1315
      Response.write "Find Package Version History"
1316
      Exit Sub
1317
   End If
1318
 
1319
 
1320
   If SSsection = "FORM" Then
1321
      %>
1322
      <table width="100%" border="0" cellpadding="2" cellspacing="1">
1323
         <form action="<%=scriptName%>" method="post" name="repform" onSubmit="MM_validateForm('FRpkg_name','Package Name','R');return document.MM_returnValue">
1324
            <tr>
1325
               <td width="1%" nowrap class="form_field"><img src="images/spacer.gif" width="1" height="8"></td>
1326
               <td width="1%" align="right" nowrap class="form_field" valign="top">Package Name</td>
1327
               <td class="form_txt"><input type="text" name="FRpkg_name" size="30" class="form_item" value="<%=SSpkg_name%>"><br>
1328
               HINTS:<br>
1329
               - You can use * wildcard. e.g. *0123 or 0123* or *0123*<br><br></td>
1330
            </tr>
1331
            <tr>
1332
               <td nowrap class="form_field">&nbsp;</td>
1333
               <td align="right" nowrap class="form_field" valign="top">Version Extension (optional)</td>
1334
               <td class="form_txt"><input type="text" name="FRv_ext" size="10" class="form_item" value="<%=SSv_ext%>"><br>
1335
               e.g. .mas or .lvs or .oso or blank etc.</td>
1336
            </tr>
1337
            <tr>
1338
               <td nowrap class="form_field">&nbsp;</td>
1339
               <td align="right" nowrap class="form_field">&nbsp;</td>
1340
               <td><br>
1341
                  <input type="hidden" name="group" value="<%=parGroup%>">
1342
                  <input type="hidden" name="repnum" value="<%=parRepNum%>">
1343
                  <input type="hidden" name="action" value="true">
1344
                  <input name="Submit" type="submit" class="form_btn" value="Submit">
1345
               </td>
1346
            </tr>
1347
         </form>
1348
      </table>
1349
      <%   Exit Sub
1350
   End If
1351
 
1352
 
1353
   If SSsection = "BODY" Then
1354
      Const img_Official = "<img src='images/i_locked.gif' width='7' height='10' hspace='3' align='absmiddle'>"
1355
      If NOT CBool(Request("action")) Then Exit Sub
1356
 
1357
      If SSpkg_name = "" Then SSpkg_name = "%"
1358
      If SSv_ext = "" Then SSv_ext = "%"
1359
 
1360
      Query_String = ReadFile( rootPath & "queries\rep_package_version_history.sql" )
1361
      Query_String = Replace ( Query_String, "/*PKG_NAME*/", Replace( SQLstring(SSpkg_name), "*", "%") )
1362
      Query_String = Replace ( Query_String, "/*V_EXT*/", Replace( SQLstring(SSv_ext), "*", "%") )
1363
      %>
1364
      <table width="100%" border="0" cellspacing="0" cellpadding="2">
1365
         <tr>
1366
            <td width="1%" nowrap class="body_colb" align="right">Official<%=img_Official%></td>
1367
            <td width="1%" nowrap class="body_colb">Package Name and Version&nbsp;&nbsp;&nbsp;</td>
1368
            <td width="1%" nowrap class="body_colb">Location</td>
1369
            <td width="100%" nowrap class="body_colb">&nbsp;</td>
1370
         </tr>
1371
         <tr>
1372
            <td colspan="4" background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
1373
         </tr>
1374
         <%
1375
         Dim currPv_id
1376
         currPv_id = -1
1377
         Set rsRep = OraDatabase.DbCreateDynaset( Query_String, 0 )
1378
 
1379
         If rsRep.RecordCount = 0 Then
1380
            With Response
1381
               .write "<tr>"
1382
               .write "<td colspan='4' class='body_row'>Found 0 records</td>"
1383
               .write "</tr>"
1384
            End With
1385
         End If
1386
 
1387
         While ((NOT rsRep.BOF) AND (NOT rsRep.EOF))
1388
            ' -------- GROUP BY Package Version -----------------
1389
            If Cstr(currPv_id) <> Cstr(rsRep("pv_id")) Then
1390
            %>
1391
               <tr>
1392
               <td colspan="3" background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
1393
               <td></td>
1394
               </tr>
1395
            <tr>
1396
               <td align="right"><%If rsRep("dlocked") = "Y" Then%><%=img_Official%><%End If%></td>
1397
               <td nowrap class="body_scol"><%=rsRep("pkg_name") &" "& rsRep("pkg_version")%></td>
1398
               <td colspan='2' class="body_scol"></td>
1399
               </tr>
1400
            <%
1401
               currPv_id = Cstr(rsRep("pv_id"))
1402
            End If
1403
            ' -------- END GROUP ------------------------
1404
            %>
1405
               <tr>
1406
               <td class="body_row"></td>
1407
               <td class="body_row"></td>
1408
               <%If IsNull(rsRep("rtag_id")) Then%>
1409
                  <td nowrap class="body_txt_gray" valign="top">Not Used!</td>
1410
               <%Else%>
1411
                  <td nowrap class="body_row" valign="top"><%=rsRep("proj_name") &" &gt; "& rsRep("vtree_name") &" &gt; "& rsRep("rtag_name") &" &gt; <a href='dependencies.asp?pv_id="& rsRep("pv_id") &"&rtag_id="& rsRep("rtag_id") &"' class='txt_linked'>"& rsRep("pkg_name") &" "& rsRep("pkg_version") &"</a>"%></td>
1412
               <%End If%>
1413
               <td class="body_row"></td>
1414
               </tr>
1415
         <%  rsRep.MoveNext
1416
         WEnd
1417
         %>
1418
         <tr>
1419
            <td colspan="4" background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
1420
         </tr>
1421
      </table>
1422
      <!-- PRINT, SAVE, ETC. ------------>
1423
      <%If parPrint = "" Then%>
1424
         <br>
1425
         <br>
1426
         <a href="javascript:;" onClick="window.print();" class="txt_linked"><img src="images/btn_print.gif" width="23" height="24" hspace="4" border="0" align="absmiddle">Print this report</a><br>
1427
         <br>
1428
      <%End If%>
1429
      <!-- PRINT, SAVE, ETC. END -------->
1430
      <%
1431
      rsRep.Close
1432
      Set rsRep = nothing
1433
   End If
1434
 
119 ghuddy 1435
End Sub
1436
%>
1437
<%
1438
'-------------------------------------------------------------------------------------------------------------------------------------------------------------------
1439
'==================================================================================
129 ghuddy 1440
' Report Name      :    Obsolete Packages
1441
' Description      :   List packages that are not used (exclude products)
1442
' INPUT            :   Project, Vesion Tree, Release Label
119 ghuddy 1443
'==================================================================================
1444
Sub Obsolete_Packages ( SSsection, NNproj_id, NNrtag_id )
129 ghuddy 1445
   Dim Query_String, rsRep
1446
   Const Allow_All = TRUE
1447
   Const Disallow_All = FALSE
1448
 
1449
   If NNproj_id = "" Then NNproj_id = -1
1450
   If NNrtag_id = "" Then NNrtag_id = -1
1451
 
1452
   If SSsection = "TITLE" Then
1453
      Response.write "Unused Packages"
1454
      Exit Sub
1455
   End If
1456
 
1457
 
1458
   If SSsection = "FORM" Then
1459
      %>
1460
      <table width="100%" border="0" cellpadding="2" cellspacing="1">
1461
         <form action="<%=scriptName%>" method="post" name="repform" onSubmit="MM_validateForm('FRproj_id','Project','R','FRvtree_id','Version Tree','R','FRrtag_id','Release','R');return document.MM_returnValue">
1462
            <tr>
1463
               <td width="1%" nowrap class="form_field"><img src="images/spacer.gif" width="30" height="8"></td>
1464
               <td width="1%" align="right" nowrap class="form_field">Project</td>
1465
               <td width="100%"><%Call Get_Projects( NNproj_id, Disallow_All )%></td>
1466
            </tr>
1467
            <tr>
1468
               <td nowrap class="form_field">&nbsp;</td>
1469
               <td align="right" nowrap class="form_field">Release</td>
1470
               <td><%Call Get_Release_Labels ( NNproj_id, NNrtag_id, Disallow_All )%></td>
1471
            </tr>
1472
            <tr>
1473
               <td nowrap class="form_field">&nbsp;</td>
1474
               <td align="right" nowrap class="form_field">&nbsp;</td>
1475
               <td><br>
1476
                  <input type="hidden" name="group" value="<%=parGroup%>">
1477
                  <input type="hidden" name="repnum" value="<%=parRepNum%>">
1478
                  <input type="hidden" name="action" value="true">
1479
                  <input name="Submit" type="submit" class="form_btn" value="Submit">
1480
               </td>
1481
            </tr>
1482
         </form>
1483
      </table>
1484
      <%   Exit Sub
1485
   End If
1486
 
1487
 
1488
   If SSsection = "BODY" Then
1489
      If NOT CBool(Request("action")) Then Exit Sub
1490
 
1491
      Query_String = ReadFile( rootPath & "queries\rep_obsolete_packages.sql" )
1492
 
1493
      OraDatabase.Parameters.Add "RTAG_ID", NNrtag_id, ORAPARM_INPUT, ORATYPE_NUMBER
1494
      %>
1495
      <table width="100%" border="0" cellspacing="0" cellpadding="2">
1496
         <tr>
1497
            <td width="1%" nowrap class="body_colb">&nbsp;</td>
1498
            <td width="1%" nowrap class="body_colb">Package Name and Version&nbsp;&nbsp;&nbsp;</td>
1499
            <td width="1%" nowrap class="body_colb">Released&nbsp;&nbsp;&nbsp;</td>
1500
            <td width="1%" nowrap class="body_colb">Added to Release&nbsp;&nbsp;&nbsp;</td>
1501
            <td width="100%" nowrap class="body_colb">&nbsp;</td>
1502
         </tr>
1503
         <tr>
1504
            <td colspan="5" background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
1505
         </tr>
1506
         <%
1507
         Dim currView_id
1508
         currView_id = -1
1509
         Set rsRep = OraDatabase.DbCreateDynaset( Query_String, 0 )
1510
 
1511
         If rsRep.RecordCount = 0 Then
1512
            With Response
1513
               .write "<tr>"
1514
               .write "<td colspan='5' class='body_row'>Found 0 records</td>"
1515
               .write "</tr>"
1516
            End With
1517
         End If
1518
 
1519
         While ((NOT rsRep.BOF) AND (NOT rsRep.EOF))
1520
            ' -------- GROUP BY BASE VIEW  -----------------
1521
            If CDbl(currView_id) <> CDbl(rsRep("view_id")) Then
1522
               %>
1523
               <tr>
1524
                  <td colspan="4" background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
1525
                  <td></td>
1526
               </tr>
1527
               <tr>
1528
                  <td nowrap class="body_scol"><%=rsRep("view_name")%></td>
1529
                  <td class="body_scol"></td>
1530
                  <td class="body_scol"></td>
1531
                  <td class="body_scol"></td>
1532
                  <td class="body_scol"></td>
1533
               </tr>
1534
               <%
1535
               currView_id = CDbl(rsRep("view_id"))
1536
            End If
1537
            ' -------- END GROUP ------------------------
1538
            %>
1539
            <tr>
1540
               <td class="body_row"></td>
1541
               <td nowrap class="body_row"><a href="used_by.asp?pv_id=<%=rsRep("pv_id")%>&rtag_id=<%=NNrtag_id%>" class="txt_linked"><%=rsRep("pkg_name") &" "& rsRep("pkg_version")%></a></td>
5632 dpurdie 1542
               <td nowrap class="body_row"><%=DisplayDate( rsRep("modified_stamp") )%> by <a href="mailto:<%=rsRep("modifier_email")%>" class="txt_linked"><%=rsRep("modifier")%></a>&nbsp;&nbsp;&nbsp;</td>
1543
               <td nowrap class="body_row"><%=DisplayDate( rsRep("insert_stamp") )%> by <a href="mailto:<%=rsRep("insertor_email")%>" class="txt_linked"><%=rsRep("insertor")%></a>&nbsp;&nbsp;&nbsp;</td>
129 ghuddy 1544
               <td class="body_row"></td>
1545
            </tr>
1546
            <%  rsRep.MoveNext
1547
         WEnd
1548
         %>
1549
         <tr>
1550
            <td colspan="5" background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
1551
         </tr>
1552
      </table>
1553
      <!-- PRINT, SAVE, ETC. ------------>
1554
      <%If parPrint = "" Then%>
1555
         <br>
1556
         <br>
1557
         <a href="javascript:;" onClick="window.print();" class="txt_linked"><img src="images/btn_print.gif" width="23" height="24" hspace="4" border="0" align="absmiddle">Print this report</a><br>
1558
         <br>
1559
      <%End If%>
1560
      <!-- PRINT, SAVE, ETC. END -------->
1561
      <%
1562
      rsRep.Close
1563
      Set rsRep = nothing
1564
   End If
1565
 
119 ghuddy 1566
End Sub
1567
%>
1568
<%
1569
'-------------------------------------------------------------------------------------------------------------------------------------------------------------------
1570
'==================================================================================
129 ghuddy 1571
' Report Name      :    Deployable Software Modules
1572
' Description      :   Shows packages that are deployed to the customers and shows new packages marked as deployable.
1573
' INPUT            :   Project, Vesion Tree, Release Label, Base View (hard-coded to PRODUCTS)
119 ghuddy 1574
'==================================================================================
1575
Sub Deployable_Software_Modules ( sSection, nProj_id,  nRtag_id, nBase_view_id )
129 ghuddy 1576
   Dim Query_String, rsRep
1577
   Const Allow_All = TRUE
1578
   Const Disallow_All = FALSE
1579
 
1580
   If nProj_id = "" Then nProj_id = -1
1581
   If nRtag_id = "" Then nRtag_id = -1
1582
 
1583
   If sSection = "TITLE" Then
1584
      Response.write "Deployable Software Modules"
1585
      Exit Sub
1586
   End If
1587
 
1588
 
1589
   If sSection = "FORM" Then
1590
      %>
1591
      <table width="100%" border="0" cellpadding="2" cellspacing="1">
1592
         <form action="<%=scriptName%>" method="post" name="repform" onSubmit="MM_validateForm('FRproj_id','Project','R','FRvtree_id','Version Tree','R','FRrtag_id','Release','R');return document.MM_returnValue">
1593
            <tr>
1594
               <td width="1%" nowrap class="form_field"><img src="images/spacer.gif" width="30" height="8"></td>
1595
               <td width="1%" align="right" nowrap class="form_field">Project</td>
1596
               <td width="100%"><%Call Get_Projects( nProj_id, Disallow_All )%></td>
1597
            </tr>
1598
            <tr>
1599
               <td nowrap class="form_field">&nbsp;</td>
1600
               <td align="right" nowrap class="form_field">Release</td>
1601
               <td><%Call Get_Release_Labels ( nProj_id, nRtag_id, Disallow_All )%></td>
1602
            </tr>
1603
         <tr>
1604
            <td nowrap class="form_field">&nbsp;</td>
1605
            <td align="right" nowrap class="form_field">Base View</td>
1606
            <td><select name="noname" class='form_item' disabled>
1607
                  <option>PRODUCTS</option>
1608
               </select></td>
1609
            </tr>
1610
            <tr>
1611
               <td nowrap class="form_field">&nbsp;</td>
1612
               <td align="right" nowrap class="form_field">&nbsp;</td>
1613
               <td><br>
1614
                  <input type="hidden" name="group" value="<%=parGroup%>">
1615
                  <input type="hidden" name="repnum" value="<%=parRepNum%>">
1616
                  <input type="hidden" name="FRbase_view_id" value="<%=enumBASE_VIEW_PRODUCTS%>">
1617
                  <input type="hidden" name="action" value="true">
1618
                  <input name="Submit" type="submit" class="form_btn" value="Submit">
1619
               </td>
1620
            </tr>
1621
         </form>
1622
      </table>
1623
      <%   Exit Sub
1624
   End If
1625
 
1626
 
1627
   If sSection = "BODY" Then
1628
      If NOT CBool(Request("action")) Then Exit Sub
1629
      '--- New Deployable Modules ---
1630
      Query_String = ReadFile( rootPath & "queries\rep_new_deployable_packages.sql" )
1631
 
1632
      OraDatabase.Parameters.Add "RTAG_ID",       nRtag_id,       ORAPARM_INPUT, ORATYPE_NUMBER
1633
      OraDatabase.Parameters.Add "BASE_VIEW_ID",    nBase_view_id,    ORAPARM_INPUT, ORATYPE_NUMBER
1634
      %>
1635
      <table width="100%"  border="0" cellspacing="0" cellpadding="2">
1636
         <tr>
1637
            <td nowrap class="body_colb" colspan="3" background="images/bg_bage.gif">&nbsp;New Deployable Package</td>
1638
         </tr>
1639
         <tr>
1640
            <td background="images/bg_rep_line.gif" colspan="3"><img src="images/spacer.gif" width="1" height="1"></td>
1641
         </tr>
1642
         <tr>
1643
            <td width="1%" class="body_txt">Package Name</td>
1644
            <td width="1%" class="body_txt">Version</td>
1645
            <td width="100%" class="body_txt">Last Modifier</td>
1646
         </tr>
1647
         <tr>
1648
            <td background="images/bg_rep_line.gif" colspan="3"><img src="images/spacer.gif" width="1" height="1"></td>
1649
         </tr>
1650
         <%
1651
         Set rsRep = OraDatabase.DbCreateDynaset( Query_String, 0 )
1652
         %>
1653
         <%If rsRep.RecordCount = 0 Then%>
1654
            <tr>
1655
               <td nowrap class="body_row" colspan="3">Found 0 records! </td>
1656
            </tr>
1657
         <%End If%>
1658
         <%While ((NOT rsRep.BOF) AND (NOT rsRep.EOF))%>
1659
            <tr>
1660
               <td nowrap><a href="dependencies.asp?pv_id=<%=rsRep("pv_id")%>&rtag_id=<%=nRtag_id%>" class="txt_linked"><img src="images/i_go2url.gif" width="14" height="14" hspace="3" border="0" align="absmiddle"><%=rsRep("pkg_name")%></a></td>
1661
               <td nowrap class="body_row"><%=rsRep("pkg_version")%></td>
1662
               <td nowrap class="body_row"><%=rsRep("full_name")%></td>
1663
            </tr>
1664
            <%rsRep.MoveNext
1665
         WEnd
1666
         rsRep.Close
1667
         Set rsRep = Nothing%>
1668
         <tr>
1669
            <td background="images/bg_rep_line.gif" colspan="3"><img src="images/spacer.gif" width="1" height="1"></td>
1670
         </tr>
1671
         <%
1672
         ' Go To Release link...
1673
         Query_String = _
1674
         " SELECT proj.PROJ_NAME, rt.RTAG_NAME"&_
1675
         "   FROM PROJECTS proj,"&_
1676
         "         RELEASE_TAGS rt"&_
1677
         "    WHERE rt.PROJ_ID = proj.proj_id"&_
1678
         "      AND rt.rtag_id = :RTAG_ID"
1679
         Set rsRep = OraDatabase.DbCreateDynaset( Query_String, 0 )
1680
         %>
1681
         <tr>
1682
            <td nowrap class="body_row" colspan="3"><a href="dependencies.asp?rtag_id=<%=nRtag_id%>"><img src="images/i_go2url.gif" width="14" height="14" hspace="3" border="0" align="absmiddle"></a>Go to <a href="dependencies.asp?rtag_id=<%=nRtag_id%>" class="txt_linked"><%=rsRep("proj_name")%> &gt; <%=rsRep("rtag_name")%></a> </td>
1683
         </tr>
1684
         <%
1685
         rsRep.Close
1686
         Set rsRep = Nothing%>
1687
      </table>
1688
      <br><br>
1689
      <%
1690
      '--- Current Deployable Modules ---
1691
      Query_String = ReadFile( rootPath & "queries\rep_current_deployable_packages.sql" )
1692
      %>
1693
      <table width="100%"  border="0" cellspacing="0" cellpadding="2">
1694
         <tr>
1695
            <td colspan="4" nowrap class="body_colb" background="images/bg_bage.gif">&nbsp;Current Deployable Packages </td>
1696
         </tr>
1697
         <tr>
1698
            <td colspan="4" background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
1699
         </tr>
1700
         <%
1701
         Dim currPv_id
1702
         currPv_id = -1
1703
         Set rsRep = OraDatabase.DbCreateDynaset( Query_String, 0 )
1704
 
1705
         If rsRep.RecordCount = 0 Then
1706
            With Response
1707
               .write "<tr>"
1708
               .write "<td colspan='4' class='body_row'>Found 0 records</td>"
1709
               .write "</tr>"
1710
            End With
1711
         End If
1712
 
1713
         While ((NOT rsRep.BOF) AND (NOT rsRep.EOF))
1714
            ' -------- GROUP BY PRODUCT NAME  -----------------
1715
            If CDbl(currPv_id) <> CDbl(rsRep("pv_id")) Then
1716
               %>
1717
               <tr>
1718
                  <td width="1%" background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
1719
                  <td width="1%" background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
1720
                  <td width="1%" background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
1721
                  <td width="100%"><img src="images/spacer.gif" width="1" height="1"></td>
1722
               </tr>
1723
               <tr>
1724
                  <td nowrap><a href="dependencies.asp?pv_id=<%=rsRep("pv_id")%>&rtag_id=<%=nRtag_id%>" class="body_scol"><%=rsRep("pkg_name") &" "& rsRep("pkg_version")%></a></td>
1725
                  <td>&nbsp;</td>
1726
                  <td>&nbsp;</td>
1727
                  <td>&nbsp;</td>
1728
               </tr>
1729
               <%
1730
               currPv_id = CDbl(rsRep("pv_id"))
1731
            End If
1732
            ' -------- END GROUP ------------------------
1733
            %>
1734
            <tr>
1735
               <td>&nbsp;</td>
1736
               <td nowrap><a href="dependencies.asp?pv_id=<%=rsRep("dpv_id")%>&rtag_id=<%=nRtag_id%>" class="txt_linked"><%=rsRep("dpkg_name")%></a></td>
1737
               <td nowrap class="body_row"><%=rsRep("dpkg_version")%></td>
1738
               <td nowrap class="err_alert"><%=rsRep("is_dep_deployable")%></td>
1739
            </tr>
1740
            <%  rsRep.MoveNext
1741
         WEnd
1742
         %>
1743
         <tr>
1744
            <td colspan="4" background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
1745
         </tr>
1746
      </table>
1747
      <!-- PRINT, SAVE, ETC. ------------>
1748
      <%If parPrint = "" Then%>
1749
         <br>
1750
         <br>
1751
         <a href="javascript:;" onClick="window.print();" class="txt_linked"><img src="images/btn_print.gif" width="23" height="24" hspace="4" border="0" align="absmiddle">Print this report</a><br>
1752
         <br>
1753
      <%End If%>
1754
      <!-- PRINT, SAVE, ETC. END -------->
1755
      <%
1756
      rsRep.Close
1757
      Set rsRep = nothing
1758
   End If
1759
 
119 ghuddy 1760
End Sub
1761
%>
1762
 
1763
<%
1764
'-------------------------------------------------------------------------------------------------------------------------------------------------------------------
1765
'==================================================================================
129 ghuddy 1766
' Report Name      :    Bill Of Materials
1767
' Description      :   List products for a BOM
1768
' INPUT            :
119 ghuddy 1769
'==================================================================================
1770
Sub Bill_of_Materials ( SSsection, NNproj_id, NNrtag_id, NNbom_id, NNversion )
129 ghuddy 1771
   Dim Query_String, rsRep, rsQry
1772
   Const Allow_All = TRUE
1773
   Const Disallow_All = FALSE
119 ghuddy 1774
 
129 ghuddy 1775
   If NNproj_id = "" Then NNproj_id = -1
1776
   If NNrtag_id = "" Then NNrtag_id = -1
1777
   If NNversion = "" Then NNversion = -1
1778
 
1779
   If SSsection = "TITLE" Then
1780
      Response.write "Software Bill Of Materials (SBOM) products"
1781
      Exit Sub
1782
   End If
1783
 
1784
 
1785
   If SSsection = "FORM" Then
1786
      %>
1787
      <table width="100%" border="0" cellpadding="2" cellspacing="1">
1788
         <form action="<%=scriptName%>" method="post" name="repform" onSubmit="MM_validateForm('FRproj_id','Project','R','FRvtree_id','Version Tree','R','FRrtag_id','Release','R');return document.MM_returnValue">
1789
            <tr>
1790
               <td width="1%" nowrap class="form_field"><img src="images/spacer.gif" width="30" height="8"></td>
1791
               <td width="1%" align="right" nowrap class="form_field">Project</td>
1792
               <td width="100%"><%Call Get_Projects( NNproj_id, Disallow_All )%></td>
1793
            </tr>
1794
            <tr>
1795
               <td nowrap class="form_field">&nbsp;</td>
1796
               <td align="right" nowrap class="form_field">Release</td>
1797
               <td><%Call Get_Branches ( NNproj_id, NNrtag_id, Disallow_All )%></td>
1798
            </tr>
1799
            <tr>
1800
               <td nowrap class="form_field">&nbsp;</td>
1801
               <td align="right" nowrap class="form_field">SBOM Version</td>
1802
               <td><%Call Get_SBOM_Version ( NNproj_id, NNrtag_id, Disallow_All, NNversion )%></td>
1803
            </tr>
1804
            <tr>
1805
               <td nowrap class="form_field">&nbsp;</td>
1806
               <td align="right" nowrap class="form_field">&nbsp;</td>
1807
               <td><br>
1808
                  <input type="hidden" name="group" value="<%=parGroup%>">
1809
                  <input type="hidden" name="repnum" value="<%=parRepNum%>">
1810
                  <input type="hidden" name="FRrtag_id" value="<%=NNrtag_id%>">
1811
                  <input type="hidden" name="action" value="true">
1812
                  <input name="Submit" type="submit" class="form_btn" value="Submit">
1813
               </td>
1814
            </tr>
1815
         </form>
1816
      </table>
1817
      <p>
1818
      <%   Exit Sub
1819
   End If
1820
 
1821
 
1822
 
1823
   OraDatabase.Parameters.Add "BRANCH_ID", NNrtag_id, ORAPARM_INPUT, ORATYPE_NUMBER
1824
   OraDatabase.Parameters.Add "BOM_VERSION", Request("FRVersion"), ORAPARM_INPUT, ORATYPE_STRING
1825
   Set rsQry = OraDatabase.DbCreateDynaset( GetQuery("rep_SBOM.sql"), cint(0))
1826
   Dim bomId
1827
   bomId = rsQry("bom_id")
1828
   rsQry.close
1829
   Set rsQry = nothing
1830
 
1831
 
1832
   If SSsection = "BODY" Then
1833
      If NOT CBool(Request("action")) Then Exit Sub
1834
 
1835
      Query_String = ReadFile( rootPath & "queries\AllProducts.sql" )
1836
 
1837
      OraDatabase.Parameters.Add "BOM_ID", bomId, ORAPARM_INPUT, ORATYPE_NUMBER
1838
      %>
1839
      </p>
1840
      <table width="100%" border="0" cellspacing="0" cellpadding="2">
1841
         <tr>
1842
            <td nowrap class="body_colb">Node Name</td>
1843
            <td nowrap class="body_colb">Operating System</td>
1844
            <td nowrap class="body_colb">Product</td>
1845
            <td nowrap class="body_colb">Version</td>
1846
         </tr>
1847
         <tr>
1848
            <td colspan="4" background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
1849
         </tr>
1850
         <%
1851
         Dim currNode_id, currOs_id
1852
         currNode_id = -1
1853
         currOs_id = -1
1854
         Set rsRep = OraDatabase.DbCreateDynaset( Query_String, 0 )
1855
 
1856
         If rsRep.RecordCount = 0 Then
1857
            With Response
1858
               .write "<tr>"
1859
               .write "<td colspan='5' class='body_row'>Found 0 records</td>"
1860
               .write "</tr>"
1861
            End With
1862
         End If
1863
 
1864
         While ((NOT rsRep.BOF) AND (NOT rsRep.EOF))
1865
            ' -------- GROUP BY BASE VIEW  -----------------
1866
            If CDbl(currNode_id) <> CDbl(rsRep("node_id")) Then
1867
               %>
1868
               <tr>
1869
                  <td colspan="4" background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
1870
               </tr>
1871
               <tr>
1872
                  <td nowrap class="body_scol"><%=rsRep("node_name")%></td>
1873
                  <td nowrap class="body_scol"></td>
1874
                  <td nowrap class="body_scol"></td>
1875
                  <td nowrap class="body_scol"></td>
1876
               </tr>
1877
               <%
1878
               currNode_id = CDbl(rsRep("node_id"))
1879
            End If
1880
            ' -------- END GROUP ------------------------
1881
            If CDbl(currOs_id) <> CDbl(rsRep("os_id")) Then
1882
               %>
1883
               <tr>
1884
                  <td nowrap class="body_row"></td>
1885
                  <td nowrap class="body_scol"><%=rsRep("os_name")%></td>
1886
                  <td nowrap class="body_scol"></td>
1887
                  <td nowrap class="body_scol"></td>
1888
               </tr>
1889
               <%
1890
               currOs_id = CDbl(rsRep("Os_id"))
1891
            End If
1892
            %>
1893
            <tr>
1894
               <td nowrap class="body_row"></td>
1895
               <td nowrap class="body_row"></td>
1896
               <td nowrap class="body_row"><%=PatchIcon ( rsRep("is_patch"), rsRep("is_obsolete") )%><%=rsRep("pkg_name")%></td>
1897
               <td nowrap class="body_row"><%=rsRep("pkg_version")%></td>
1898
            </tr>
1899
            <%  rsRep.MoveNext
1900
         WEnd
1901
         %>
1902
         <tr>
1903
            <td colspan="4" background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
1904
         </tr>
1905
      </table>
1906
      <p>&nbsp;     </p>
1907
      <p>        <!-- PRINT, SAVE, ETC. ------------>
119 ghuddy 1908
      <%If parPrint = "" Then%>
129 ghuddy 1909
         <br>
1910
         <br>
1911
         <a href="javascript:;" onClick="window.print();" class="txt_linked"><img src="images/btn_print.gif" width="23" height="24" hspace="4" border="0" align="absmiddle">Print this report</a><br>
1912
         <br>
119 ghuddy 1913
      <%End If%>
1914
      <!-- PRINT, SAVE, ETC. END -------->
1915
      <%
129 ghuddy 1916
      rsRep.Close
1917
      Set rsRep = nothing
1918
   End If
1919
 
119 ghuddy 1920
End Sub
1921
%>
1922
 
1923
<%
1924
'-------------------------------------------------------------------------------------------------------------------------------------------------------------------
1925
'==================================================================================
129 ghuddy 1926
' Report Name      :    Build History
1927
' Description      :   List packages which were build between certain dates.
1928
' INPUT            :
119 ghuddy 1929
'==================================================================================
1930
Sub Build_History ( SSsection, NNproj_id, NNrtag_id)
129 ghuddy 1931
   Dim Query_String, rsRep, rsQry
1932
   Const Allow_All = TRUE
1933
   Const Disallow_All = FALSE
119 ghuddy 1934
 
129 ghuddy 1935
   If NNproj_id = "" Then NNproj_id = -1
1936
   If NNrtag_id = "" Then NNrtag_id = -1
119 ghuddy 1937
 
129 ghuddy 1938
   If SSsection = "TITLE" Then
1939
      Response.write "Build History"
1940
      Exit Sub
1941
   End If
119 ghuddy 1942
 
129 ghuddy 1943
 
1944
   If SSsection = "FORM" Then
1945
      %>
5638 dpurdie 1946
      <script>
1947
        $(document).ready(function(){
1948
            var startDateTextBox = $('#FRinitdate');
1949
            var endDateTextBox = $('#FRduedate');
1950
 
1951
            $.timepicker.dateRange(
1952
                startDateTextBox,
1953
    	        endDateTextBox,
1954
    	        {
1955
                    constrainInput: true,
1956
                    showOn: 'both',
1957
                    buttonImageOnly : true,
1958
                    buttonImage: "images/i_calendar.gif",
1959
                    buttonText: "Select Date",
1960
                    dateFormat : "D dd-M-yy",
1961
                    maxDate : 0,
1962
                    yearRange : "1970:2099",
1963
                    changeYear : true, 
1964
                    changeMonth: true,
1965
            		start: {             // start picker options
1966
                        onClose : function(p1,p2){
1967
                            checkForm();
1968
                			}
1969
                    },
1970
            		end: {               // end picker options
1971
                        onClose : function(p1,p2){
1972
                            checkForm();
1973
                			}
1974
                    }
1975
                }
1976
            );
1977
 
1978
            // Setup the submit button
1979
            checkForm();
1980
        })
1981
 
1982
        // Update the Submit(Add) button based on the number of chars in the TextArea
1983
        function checkForm()
1984
        {
1985
            var f1 = $("select[name=FRproj_id]").val().length > 0;
1986
            var f2 = $("select[name=FRrtag_id]").val().length > 0;
1987
            var f3 = $("input[name=FRinitdate]").val().length > 0;
1988
            var f4 = $("input[name=FRduedate]").val().length > 0;
1989
 
1990
           var ok=f1 && f2 && f3 && f4;
1991
           var but = $("#formSubmit");
1992
           but.toggleClass("form_btn_comp", ok);
1993
           but.toggleClass("form_btn_comp_disabled", !ok);
1994
           but.prop("disabled", !ok );
1995
        }
1996
      </script>
129 ghuddy 1997
      <table width="100%" border="0" cellpadding="2" cellspacing="1">
5638 dpurdie 1998
         <form action="<%=scriptName%>" method="post" name="repform">
129 ghuddy 1999
            <tr>
2000
               <td width="1%" nowrap class="form_field"><img src="images/spacer.gif" width="30" height="8"></td>
2001
               <td width="1%" align="right" nowrap class="form_field">Project</td>
2002
               <td width="100%"><%Call Get_Projects( NNproj_id, Disallow_All )%></td>
2003
            </tr>
2004
            <tr>
2005
               <td nowrap class="form_field">&nbsp;</td>
2006
               <td align="right" nowrap class="form_field">Release</td>
2007
               <td><%Call Get_Release_Labels ( NNproj_id,  NNrtag_id, Disallow_All )%></td>
2008
            </tr>
2009
            <tr>
2010
               <td colspan="3" nowrap class="form_field">Between
5638 dpurdie 2011
               <input class="form_item" type="text" name="FRinitdate" maxlength="15" size="15" value="<%=Request.Form("FRinitdate")%>" id="FRinitdate">
129 ghuddy 2012
               And
5638 dpurdie 2013
               <input class="form_item" type="text" name="FRduedate" maxlength="15" size="15" value="<%=Request.Form("FRduedate")%>" id="FRduedate">
129 ghuddy 2014
            </tr>
2015
            <tr>
2016
               <td nowrap class="form_field">&nbsp;</td>
2017
               <td align="right" nowrap class="form_field">&nbsp;</td>
2018
               <td><br>
2019
                  <input type="hidden" name="group" value="<%=parGroup%>">
2020
                  <input type="hidden" name="repnum" value="<%=parRepNum%>">
2021
                  <input type="hidden" name="action" value="true">
5638 dpurdie 2022
                  <input id="formSubmit" name="Submit" type="submit" class="form_btn" value="Submit">
129 ghuddy 2023
               </td>
2024
            </tr>
2025
         </form>
2026
      </table>
2027
      <p>
2028
      <%   Exit Sub
2029
   End If
2030
 
2031
 
2032
   If SSsection = "BODY" Then
2033
      If NOT CBool(Request("action")) Then Exit Sub
2034
      %>
2035
      </p>
2036
      <table width="20%" border="0" cellspacing="0" cellpadding="2">
2037
         <tr>
2038
            <td width="1%" nowrap class="body_colb">&nbsp;</td>
2039
            <td width="5%" nowrap class="body_colb">Package</td>
2040
            <td width="95%" nowrap class="body_colb">Version</td>
2041
         </tr>
2042
         <tr>
2043
            <td background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
2044
            <td background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
2045
            <td background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
2046
         </tr>
2047
         <%
2048
         Dim currView_id
2049
         currView_id = -1
2050
 
2051
         OraDatabase.Parameters.Add "RTAG_ID", NNrtag_id, ORAPARM_INPUT, ORATYPE_NUMBER
2052
         OraDatabase.Parameters.Add "INITDATE", Request.Form("FRinitdate"), ORAPARM_INPUT, ORATYPE_STRING
2053
         OraDatabase.Parameters.Add "DUEDATE", Request.Form("FRduedate"), ORAPARM_INPUT, ORATYPE_STRING
2054
 
2055
         Set rsRep = OraDatabase.DbCreateDynaset( GetQuery("rep_build_history.sql"), cint(0) )
2056
 
2057
         If rsRep.RecordCount = 0 Then
2058
            With Response
2059
               .write "<tr>"
2060
               .write "<td colspan='5' class='body_row'>Found 0 records</td>"
2061
               .write "</tr>"
2062
            End With
2063
         End If
2064
 
2065
         While ((NOT rsRep.BOF) AND (NOT rsRep.EOF))
2066
            ' -------- GROUP BY BASE VIEW  -----------------
2067
            If CDbl(currView_id) <> CDbl(rsRep("view_id")) Then
2068
               %>
2069
               <tr>
2070
                  <td background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
2071
                  <td background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
2072
                  <td background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
2073
               </tr>
2074
 
2075
               <tr>
2076
                  <td valign="top" nowrap class="body_scol"><%=rsRep("view_name")%></td>
2077
                  <td>&nbsp;</td>
2078
                  <td>&nbsp;</td>
2079
               </tr>
2080
 
2081
               <%
2082
               currView_id = CDbl(rsRep("view_id"))
2083
            End If
2084
            ' -------- END GROUP ------------------------
2085
            %>
2086
            <tr>
2087
               <td width="1%" nowrap class="body_colb">&nbsp;</td>
2088
               <td nowrap class="body_row"><a href="fixed_issues.asp?pv_id=<%=rsRep("pv_id")%>&rtag_id=<%=NNRtag_id%>" class="body_txt"><strong><%=rsRep("pkg_name")%></strong></a></td>
2089
               <td nowrap class="body_row"><a href="fixed_issues.asp?pv_id=<%=rsRep("pv_id")%>&rtag_id=<%=NNRtag_id%>" class="body_txt"><strong><%=rsRep("pkg_version")%></strong></a></td>
2090
            </tr>
2091
            <%  rsRep.MoveNext
2092
         WEnd
2093
         %>
2094
         <tr>
2095
            <td background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
2096
            <td background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
2097
            <td background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
2098
         </tr>
2099
      </table>
2100
      <p>&nbsp;     </p>
2101
      <p>        <!-- PRINT, SAVE, ETC. ------------>
119 ghuddy 2102
      <%If parPrint = "" Then%>
129 ghuddy 2103
         <br>
2104
         <br>
2105
         <a href="javascript:;" onClick="window.print();" class="txt_linked"><img src="images/btn_print.gif" width="23" height="24" hspace="4" border="0" align="absmiddle">Print this report</a><br>
2106
         <br>
119 ghuddy 2107
      <%End If%>
2108
      <!-- PRINT, SAVE, ETC. END -------->
2109
      <%
129 ghuddy 2110
      rsRep.Close
2111
      Set rsRep = nothing
2112
   End If
2113
 
119 ghuddy 2114
End Sub
2115
%>
2116
<%
2117
'-------------------------------------------------------------------------------------------------------------------------------------------------------------------
2118
'==================================================================================
129 ghuddy 2119
' Report Name      :    Escrow Report
2120
' Description      :   Report to extract Products/Patches for Building A RoadMap
2121
' INPUT            :
119 ghuddy 2122
'==================================================================================
2123
Sub Escrow_Report (SSsection, NNproj_id, NNrtag_id, NNbom_id, NNversion)
129 ghuddy 2124
   Dim Query_String, rsRep, rsQry
2125
   Const Allow_All = TRUE
2126
   Const Disallow_All = FALSE
119 ghuddy 2127
 
129 ghuddy 2128
   If NNproj_id = "" Then NNproj_id = -1
2129
   If NNrtag_id = "" Then NNrtag_id = -1
2130
   If NNversion = "" Then NNversion = -1
119 ghuddy 2131
 
129 ghuddy 2132
   If SSsection = "TITLE" Then
2133
      Response.write "Generation of ESCROW REPORT"
2134
      Exit Sub
2135
   End If
119 ghuddy 2136
 
2137
 
129 ghuddy 2138
   If SSsection = "FORM" Then
2139
      %>
2140
      <table width="100%" border="0" cellpadding="2" cellspacing="1">
2141
         <form action="<%=scriptName%>" method="post" name="repform" onSubmit="MM_validateForm('FRproj_id','Project','R','FRvtree_id','Version Tree','R','FRrtag_id','Release','R');return document.MM_returnValue">
2142
            <tr>
2143
               <td width="1%" nowrap class="form_field"><img src="images/spacer.gif" width="30" height="8"></td>
2144
               <td width="1%" align="right" nowrap class="form_field">Project</td>
2145
               <td width="100%"><%Call Get_Projects( NNproj_id, Disallow_All )%></td>
2146
            </tr>
2147
            <tr>
2148
               <td nowrap class="form_field">&nbsp;</td>
2149
               <td align="right" nowrap class="form_field">Release</td>
2150
               <td><%Call Get_Branches ( NNproj_id, NNrtag_id, Disallow_All )%></td>
2151
            </tr>
2152
            <tr>
2153
               <td nowrap class="form_field">&nbsp;</td>
2154
               <td align="right" nowrap class="form_field">SBOM Version</td>
2155
               <td><%Call Get_SBOM_Version ( NNproj_id, NNrtag_id, Disallow_All, NNversion )%></td>
2156
            </tr>
2157
            <tr>
2158
               <td nowrap class="form_field">&nbsp;</td>
2159
               <td align="right" nowrap class="form_field">&nbsp;</td>
2160
               <td><br>
2161
                  <input type="hidden" name="group" value="<%=parGroup%>">
2162
                  <input type="hidden" name="repnum" value="<%=parRepNum%>">
2163
                  <input type="hidden" name="FRrtag_id" value="<%=NNrtag_id%>">
2164
                  <input type="hidden" name="action" value="true">
2165
                  <input name="Submit" type="submit" class="form_btn" value="Submit">
2166
               </td>
2167
            </tr>
2168
         </form>
2169
      </table>
2170
      <p>
2171
      <%   Exit Sub
2172
   End If
119 ghuddy 2173
 
129 ghuddy 2174
   OraDatabase.Parameters.Add "BRANCH_ID", NNrtag_id, ORAPARM_INPUT, ORATYPE_NUMBER
2175
   OraDatabase.Parameters.Add "BOM_VERSION", Request("FRVersion"), ORAPARM_INPUT, ORATYPE_STRING
2176
   Set rsQry = OraDatabase.DbCreateDynaset( GetQuery("rep_SBOM.sql"), cint(0))
2177
   Dim bomId, ext
2178
   bomId = rsQry("bom_id")
2179
   Set rsQry = OraDatabase.DbCreateDynaset( "select * from release_manager.project_extentions where proj_id="&NNproj_id, cint(0))
2180
   ext = rsQry("ext_name")
2181
   rsQry.close
2182
   Set rsQry = nothing
119 ghuddy 2183
 
129 ghuddy 2184
   If SSsection = "BODY" Then
2185
      If NOT CBool(Request("action")) Then Exit Sub
119 ghuddy 2186
 
129 ghuddy 2187
      '---------------------- Run Before Page ---------------------------
2188
      Call GetReleaseContent ( bomId, objReleaseContent )
119 ghuddy 2189
 
129 ghuddy 2190
      'Call   GetBomDetails   (bomId, outobjDetails)
2191
      'outobjDetails.Item("bom_full_version") = outobjDetails.Item("bom_name")&"   "&   outobjDetails.Item("bom_version") &"."& outobjDetails.Item("bom_lifecycle")
119 ghuddy 2192
 
129 ghuddy 2193
 
2194
      '------------------------------------------------------------------
2195
      %>
2196
      <html>
2197
      <head>
2198
      <title>Release Manager - Escrow Report</title>
2199
      <meta HTTP-EQUIV="Pragma" CONTENT="no-cache">
2200
      <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
2201
      </head>
2202
      <body>
2203
      <div align="center"><b><font col color="#FF0000" size="+3"><%=outobjDetails.Item("bom_full_version")%></font></b></div>
2204
      <div align="center"><b><font col color="#FF0000" size="+3">Products</font></b></div>
2205
      <%
2206
      Set outobjDetails = Nothing
2207
 
2208
      aReleaseContent = objReleaseContent.Keys
2209
      For Each parPv_id In aReleaseContent
2210
         pvIdList = pvIdList +   parPv_id   +   ","
2211
         Call GetPackageInformation ( parPv_id, objPackageDetails )
2212
         Response.Flush
2213
         %>
2214
         <a name="<%=objPackageDetails.Item("pkg_name")%>"></a>
2215
         <table width="100%" border="0" cellspacing="0" cellpadding="0">
2216
            <tr>
2217
               <td class="body_colb"><h3><%=objPackageDetails.Item("pkg_name")%></h3></td>
2218
            </tr>
2219
         </table>
2220
         <table width="100%" border="0" cellspacing="0" cellpadding="0">
2221
            <tr>
2222
               <td nowrap bgcolor="#FFFFFF" class="sublbox_txt" valign="top"><strong>Version:</strong></td>
2223
               <td bgcolor="#FFFFFF" class="sublbox_txt"><%=objPackageDetails.Item("pkg_version")%></td>
2224
            </tr>
2225
            <tr>
2226
               <td nowrap bgcolor="#FFFFFF" class="sublbox_txt" valign="top"><strong>Source Path:</strong> </td>
2227
               <td bgcolor="#FFFFFF" class="sublbox_txt"><%=objPackageDetails.Item("src_path")%></td>
2228
            </tr>
2229
            <tr>
2230
               <td nowrap bgcolor="#FFFFFF" class="sublbox_txt" valign="top"><strong>Source Label:</strong></td>
2231
               <td bgcolor="#FFFFFF" class="sublbox_txt"><%=objPackageDetails.Item("pkg_label")%></td>
2232
            </tr>
2233
            <tr>
2234
               <td width="1%" nowrap bgcolor="#FFFFFF" class="sublbox_txt" valign="top"><strong>Short Description:</strong></td>
2235
               <td witdh="100%" bgcolor="#FFFFFF" class="sublbox_txt"><%=NewLine_To_BR ( To_HTML( objPackageDetails.Item("pv_description") ) )%></td>
2236
            </tr>
2237
            <tr>
2238
               <td nowrap bgcolor="#FFFFFF" class="sublbox_txt" valign="top"><strong>Package Overview:</strong> </td>
2239
               <td bgcolor="#FFFFFF" class="sublbox_txt"><%=NewLine_To_BR ( To_HTML( objPackageDetails.Item("pv_overview") ) )%></td>
2240
            </tr>
2241
            <tr>
2242
               <td nowrap bgcolor="#FFFFFF" class="sublbox_txt" valign="top"><strong>General Sublicense Material:</strong> </td>
2243
               <td bgcolor="#FFFFFF" class="sublbox_txt"><%If objPackageDetails.Item("v_ext") = ext Then%>Yes<%Else%>No<%End If%></td>
2244
            </tr>
2245
            <tr>
2246
               <td nowrap bgcolor="#FFFFFF" class="sublbox_txt" valign="top"><strong>Build Environment:</strong> </td>
2247
               <td bgcolor="#FFFFFF" class="sublbox_txt"><%If objPackageDetails.Item("is_build_env_required") = enumDB_NO Then%>Not Required.<%End If%>
2248
                  <%
2249
                  '--- Get Build Env Details
2250
                  Set rsQry = OraDatabase.DbCreateDynaset( SQL_Build_Std ( parPv_id ), cint(0))
2251
                  If ((NOT rsQry.BOF) AND (NOT rsQry.EOF)) Then
2252
                     BldStd = rsQry("bs_name")
2253
                     rsQry.Close
2254
 
2255
                     Set rsQry = OraDatabase.DbCreateDynaset( SQL_Build_Env ( parPv_id ), cint(0))
2256
                     %>
2257
                     <ul>
2258
                     <%
2259
                     While (NOT rsQry.BOF) AND (NOT rsQry.EOF)
2260
                     %>
2261
                        <li><%=BldStd%>, <%=rsQry("bm_name")%></li>
2262
                        <%rsQry.MoveNext
2263
                     WEnd
2264
                     %>
2265
                     </ul>
2266
                  <%End If%>
2267
               </td>
2268
            </tr>
2269
            <tr>
2270
               <td nowrap bgcolor="#FFFFFF" class="sublbox_txt" valign="top"><strong>Build Dependencies:</strong> </td>
2271
               <td bgcolor="#FFFFFF" class="sublbox_txt">
2272
                  <%
2273
                  '--- Get Build Dependencies Details
2274
 
2275
                  Set rsQry = OraDatabase.DbCreateDynaset( SQL_Build_Dependencies ( parPv_id ), cint(0))
2276
                  %>
2277
                  <table width="100%"  cellspacing="0" cellpadding="2" border="1">
2278
                     <tr>
2279
                        <td nowrap class="sublbox_txt" bgcolor="#FFFFFF" width="1%"><strong>Software Component</strong></td>
2280
                        <td nowrap class="sublbox_txt" bgcolor="#FFFFFF" width="100%"><strong>Version</strong></td>
2281
                     </tr>
2282
                     <%If rsQry.RecordCount < 1 Then%>
2283
                        <tr>
2284
                           <td nowrap class="sublbox_txt">No Dependencies</td>
2285
                           <td nowrap class="sublbox_txt"></td>
2286
                        </tr>
2287
                     <%End If%>
2288
                     <%
2289
                     While (NOT rsQry.BOF) AND (NOT rsQry.EOF)
2290
                        %>
2291
                        <tr>
2292
                           <td nowrap class="sublbox_txt"><a href="#<%=rsQry("pkg_name")%>"><%=rsQry("pkg_name")%></a></td>
2293
                           <td nowrap class="sublbox_txt"><%=rsQry("pkg_version")%></td>
2294
                        </tr>
2295
                        <%rsQry.MoveNext
2296
                     WEnd
2297
                     %>
2298
                  </table>
2299
               </td>
2300
            </tr>
2301
         </table>
2302
         <br><br>
2303
         <%
2304
      'Exit For
2305
      Next
2306
 
2307
      pvIdList = Mid(pvIdList, 1, Len(pvIdList) - 1)
2308
      Set   rsTemp   =   OraDatabase.DbCreateDynaset( SQL_Modules ( pvIdList ), cint(0))
2309
 
2310
      %>
2311
      <div align="center"><b><font col color="#FF0000" size="+3">Modules</font></b></div>
2312
      <%
2313
      While (NOT rsTemp.BOF) AND (NOT rsTemp.EOF)
2314
         Response.Flush
2315
 
2316
         dpv_id = rsTemp("dpv_id")
2317
         Call GetPackageInformation ( dpv_id, objPackageDetails )
2318
         %>
2319
         <a name="<%=objPackageDetails.Item("pkg_name")%>"></a>
2320
         <table width="100%" border="0" cellspacing="0" cellpadding="0">
2321
            <tr>
2322
               <td class="body_colb"><h3><%=objPackageDetails.Item("pkg_name")%></h3></td>
2323
            </tr>
2324
         </table>
2325
         <table width="100%" border="0" cellspacing="0" cellpadding="0">
2326
            <tr>
2327
               <td nowrap bgcolor="#FFFFFF" class="sublbox_txt" valign="top"><strong>Version:</strong></td>
2328
               <td bgcolor="#FFFFFF" class="sublbox_txt"><%=objPackageDetails.Item("pkg_version")%></td>
2329
            </tr>
2330
            <tr>
2331
               <td nowrap bgcolor="#FFFFFF" class="sublbox_txt" valign="top"><strong>Source Path:</strong> </td>
2332
               <td bgcolor="#FFFFFF" class="sublbox_txt"><%=objPackageDetails.Item("src_path")%></td>
2333
            </tr>
2334
            <tr>
2335
               <td nowrap bgcolor="#FFFFFF" class="sublbox_txt" valign="top"><strong>Source Label:</strong></td>
2336
               <td bgcolor="#FFFFFF" class="sublbox_txt"><%=objPackageDetails.Item("pkg_label")%></td>
2337
            </tr>
2338
            <tr>
2339
               <td width="1%" nowrap bgcolor="#FFFFFF" class="sublbox_txt" valign="top"><strong>Short Description:</strong></td>
2340
               <td witdh="100%" bgcolor="#FFFFFF" class="sublbox_txt"><%=NewLine_To_BR ( To_HTML( objPackageDetails.Item("pv_description") ) )%></td>
2341
            </tr>
2342
            <tr>
2343
               <td nowrap bgcolor="#FFFFFF" class="sublbox_txt" valign="top"><strong>Package Overview:</strong> </td>
2344
               <td bgcolor="#FFFFFF" class="sublbox_txt"><%=NewLine_To_BR ( To_HTML( objPackageDetails.Item("pv_overview") ) )%></td>
2345
            </tr>
2346
            <tr>
2347
               <td nowrap bgcolor="#FFFFFF" class="sublbox_txt" valign="top"><strong>General Sublicense Material:</strong> </td>
2348
               <td bgcolor="#FFFFFF" class="sublbox_txt"><%If objPackageDetails.Item("v_ext") = parExt Then%>Yes<%Else%>No<%End If%></td>
2349
            </tr>
2350
            <tr>
2351
               <td nowrap bgcolor="#FFFFFF" class="sublbox_txt" valign="top"><strong>Build Environment:</strong> </td>
2352
               <td bgcolor="#FFFFFF" class="sublbox_txt"><%If objPackageDetails.Item("is_build_env_required") = enumDB_NO Then%>Not Required.<%End If%>
2353
                  <%
2354
                  '--- Get Build Env Details
2355
                  Set rsQry = OraDatabase.DbCreateDynaset( SQL_Build_Std ( dpv_id ), cint(0))
2356
                  If ((NOT rsQry.BOF) AND (NOT rsQry.EOF)) Then
2357
                     BldStd = rsQry("bs_name")
2358
                     rsQry.Close
2359
 
2360
                     Set rsQry = OraDatabase.DbCreateDynaset( SQL_Build_Env ( dpv_id ), cint(0))
2361
                     %>
2362
                     <ul>
2363
                        <%
2364
                        While (NOT rsQry.BOF) AND (NOT rsQry.EOF)
2365
                           %>
2366
                           <li><%=BldStd%>, <%=rsQry("bm_name")%></li>
2367
                           <%rsQry.MoveNext
2368
                        WEnd
2369
                        %>
2370
                     </ul>
2371
                  <%End If%>
2372
               </td>
2373
            </tr>
2374
            <tr>
2375
               <td nowrap bgcolor="#FFFFFF" class="sublbox_txt" valign="top"><strong>Build Dependencies:</strong> </td>
2376
               <td bgcolor="#FFFFFF" class="sublbox_txt">
2377
                  <%
2378
                  '--- Get Build Dependencies Details
2379
 
2380
                  Set rsQry = OraDatabase.DbCreateDynaset( SQL_Build_Dependencies ( dpv_id ), cint(0))
2381
                  %>
2382
                  <table width="100%"  cellspacing="0" cellpadding="2" border="1">
2383
                     <tr>
2384
                        <td nowrap class="sublbox_txt" bgcolor="#FFFFFF" width="1%"><strong>Software Component</strong></td>
2385
                        <td nowrap class="sublbox_txt" bgcolor="#FFFFFF" width="100%"><strong>Version</strong></td>
2386
                     </tr>
2387
                     <%If rsQry.RecordCount < 1 Then%>
2388
                        <tr>
2389
                           <td nowrap class="sublbox_txt">No Dependencies</td>
2390
                           <td nowrap class="sublbox_txt"></td>
2391
                        </tr>
2392
                     <%End If%>
2393
                     <%
2394
                     While (NOT rsQry.BOF) AND (NOT rsQry.EOF)
2395
                        %>
2396
                        <tr>
2397
                           <td nowrap class="sublbox_txt"><a href="#<%=rsQry("pkg_name")%>"><%=rsQry("pkg_name")%></a></td>
2398
                           <td nowrap class="sublbox_txt"><%=rsQry("pkg_version")%></td>
2399
                        </tr>
2400
                        <%rsQry.MoveNext
2401
                     WEnd
2402
                     %>
2403
                  </table>
2404
               </td>
2405
            </tr>
2406
         </table>
2407
         <br><br>
2408
 
2409
         <%
2410
         rsTemp.MoveNext
2411
      WEnd
2412
 
2413
      rsTemp.Close()
2414
      Set rsTemp = Nothing
2415
   End If
119 ghuddy 2416
End Sub
2417
%>
2418
 
2419
<%
2420
'-------------------------------------------------------------------------------------------------------------------------------------------------------------------
2421
'==================================================================================
129 ghuddy 2422
' Report Name      :    AutoBuildable_Report
2423
' Description      :   List packages which were build between certain dates.
2424
' INPUT            :
119 ghuddy 2425
'==================================================================================
2426
Sub AutoBuildable_Report ( SSsection, NNproj_id, NNrtag_id)
129 ghuddy 2427
   Dim Query_String, rsRep, rsQry
2428
   Const Allow_All = TRUE
2429
   Const Disallow_All = FALSE
119 ghuddy 2430
 
129 ghuddy 2431
   If NNproj_id = "" Then NNproj_id = -1
2432
   If NNrtag_id = "" Then NNrtag_id = -1
119 ghuddy 2433
 
129 ghuddy 2434
   If SSsection = "TITLE" Then
2435
      Response.write "Release AutoBuildable Status"
2436
      Exit Sub
2437
   End If
119 ghuddy 2438
 
2439
 
129 ghuddy 2440
   If SSsection = "FORM" Then
2441
      %>
2442
      <table width="100%" border="0" cellpadding="2" cellspacing="1">
2443
         <form action="<%=scriptName%>" method="post" name="repform" onSubmit="MM_validateForm('FRproj_id','Project','R','FRvtree_id','Version Tree','R','FRrtag_id','Release','R');return document.MM_returnValue">
2444
            <tr>
2445
               <td width="1%" nowrap class="form_field"><img src="images/spacer.gif" width="30" height="8"></td>
2446
               <td width="1%" align="right" nowrap class="form_field">Project</td>
2447
               <td width="100%"><%Call Get_Projects( NNproj_id, Disallow_All )%></td>
2448
            </tr>
2449
            <tr>
2450
               <td nowrap class="form_field">&nbsp;</td>
2451
               <td align="right" nowrap class="form_field">Release</td>
2452
               <td><%Call Get_Release_Labels ( NNproj_id,  NNrtag_id, Disallow_All )%></td>
2453
            </tr>
2454
            <tr>
2455
               <td nowrap class="form_field">&nbsp;</td>
2456
               <td align="right" nowrap class="form_field">&nbsp;</td>
2457
               <td><br>
2458
                  <input type="hidden" name="group" value="<%=parGroup%>">
2459
                  <input type="hidden" name="repnum" value="<%=parRepNum%>">
2460
                  <input type="hidden" name="action" value="true">
5639 dpurdie 2461
                  <input name="Submit" type="submit" class="form_btn" value="Submit">
129 ghuddy 2462
               </td>
2463
            </tr>
2464
      </table>
2465
      <p>
2466
      <%   Exit Sub
2467
   End If
119 ghuddy 2468
 
2469
 
129 ghuddy 2470
   If SSsection = "BODY" Then
2471
      If NOT CBool(Request("action")) Then Exit Sub
2472
      If Request("btn") = "Assign" Then
2473
         OraDatabase.Parameters.Add "RTAG_ID",       NNrtag_id,   ORAPARM_INPUT, ORATYPE_NUMBER
2474
         OraDatabase.Parameters.Add "PV_ID_LIST",   Request("prod_id_list"),   ORAPARM_INPUT, ORATYPE_VARCHAR2
119 ghuddy 2475
 
129 ghuddy 2476
         objEH.TryORA ( OraSession )
2477
         On Error Resume Next
2478
 
2479
         OraDatabase.ExecuteSQL _
2480
         "BEGIN  SET_TO_AUTOBUILDABLE( :RTAG_ID, :PV_ID_LIST );  END;"
2481
 
2482
         objEH.CatchORA ( OraSession )
2483
 
2484
         OraDatabase.Parameters.Remove "PV_ID_LIST"
2485
         OraDatabase.Parameters.Remove "RTAG_ID"
2486
 
2487
      End   If
2488
      %>
2489
      </p>
2490
      <table width="20%" border="0" cellspacing="0" cellpadding="2">
2491
         <tr>
2492
            <td width="1%" nowrap class="body_colb">Base View</td>
2493
            <td width="5%" nowrap class="body_colb">Package</td>
2494
            <td width="95%" nowrap class="body_colb">Version</td>
2495
            <td width="95%" nowrap class="body_colb">Autobuildable</td>
2496
         </tr>
2497
         <tr>
2498
            <td background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
2499
            <td background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
2500
            <td background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
2501
            <td background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
2502
         </tr>
2503
         <%
2504
         Dim currView_id
2505
         currView_id = -1
2506
 
2507
         OraDatabase.Parameters.Add "RTAG_ID", NNrtag_id, ORAPARM_INPUT, ORATYPE_NUMBER
2508
 
2509
         Set rsRep = OraDatabase.DbCreateDynaset( "SELECT * FROM RELEASE_CONTENT rc, VIEWS vw, PACKAGES pkg, PACKAGE_VERSIONS pv "&_
2510
            " WHERE pv.pv_id = rc.pv_id and rc.base_view_id   "&_
2511
            " = vw.view_id and pkg.pkg_id = pv.pkg_id and rc.RTAG_ID ="&NNrtag_id&"   order by vw.view_name, pkg.pkg_name", cint(0) )
2512
         If rsRep.RecordCount = 0 Then
2513
            With Response
2514
               .write "<tr>"
2515
               .write "<td colspan='5' class='body_row'>Found 0 records</td>"
2516
               .write "</tr>"
2517
            End With
2518
         End If
2519
 
2520
         While ((NOT rsRep.BOF) AND (NOT rsRep.EOF))
2521
            ' -------- GROUP BY BASE VIEW  -----------------
2522
            If CDbl(currView_id) <> CDbl(rsRep("view_id")) Then
2523
               %>
2524
               <tr>
2525
                  <td background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
2526
                  <td background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
2527
                  <td background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
2528
                  <td background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
2529
               </tr>
2530
 
2531
               <tr>
2532
                  <td valign="top" nowrap class="body_scol"><%=rsRep("view_name")%></td>
2533
                  <td>&nbsp;</td>
2534
                  <td>&nbsp;</td>
2535
               </tr>
2536
 
2537
               <%
2538
               currView_id = CDbl(rsRep("view_id"))
2539
            End If
2540
            ' -------- END GROUP ------------------------
2541
            %>
2542
            <%If rsRep("is_autobuildable") = "Y" Then%>
2543
               <tr>
2544
                  <td width="1%" nowrap class="body_colb">&nbsp;</td>
2545
                  <td nowrap class="body_row"><a href="fixed_issues.asp?pv_id=<%=rsRep("pv_id")%>&rtag_id=<%=NNRtag_id%>" class="body_txt"><strong><%=rsRep("pkg_name")%></strong></a></td>
2546
                  <td nowrap class="body_row"><a href="fixed_issues.asp?pv_id=<%=rsRep("pv_id")%>&rtag_id=<%=NNRtag_id%>" class="body_txt"><strong><%=rsRep("pkg_version")%></strong></a></td>
5061 dpurdie 2547
                  <%If canShowControlInProject( "SetToReproducible" ) Then%>
129 ghuddy 2548
                     <td><input type="checkbox" name="prod_id_list" value="<%=rsRep("pv_id")%>" checked></td>
2549
                  <%Else%>
2550
                     <td><input type="checkbox" name="prod_id_list" value="<%=rsRep("pv_id")%>" checked disabled></td>
2551
                  <%End If%>
2552
               </tr>
2553
            <%Else%>
2554
               <tr>
2555
                  <td width="1%" nowrap class="body_colb">&nbsp;</td>
2556
                  <td nowrap class="body_row"><a href="fixed_issues.asp?pv_id=<%=rsRep("pv_id")%>&rtag_id=<%=NNRtag_id%>" class="body_txtr"><strong><%=rsRep("pkg_name")%></strong></a></td>
2557
                  <td nowrap class="body_row"><a href="fixed_issues.asp?pv_id=<%=rsRep("pv_id")%>&rtag_id=<%=NNRtag_id%>" class="body_txtr"><strong><%=rsRep("pkg_version")%></strong></a></td>
5061 dpurdie 2558
                  <%If canShowControlInProject( "SetToReproducible" ) Then%>
129 ghuddy 2559
                     <td><input type="checkbox" name="prod_id_list" value="<%=rsRep("pv_id")%>"></td>
2560
                  <%Else%>
2561
                     <td><input type="checkbox" name="prod_id_list" value="<%=rsRep("pv_id")%>" disabled></td>
2562
                  <%End If%>
2563
               </tr>
2564
            <%End If%>
2565
 
2566
 
2567
            <%  rsRep.MoveNext
2568
         WEnd
2569
         %>
2570
 
2571
         <tr>
2572
            <td background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
2573
            <td background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
2574
            <td background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
5061 dpurdie 2575
            <%If canShowControlInProject( "SetToReproducible" ) Then%>
129 ghuddy 2576
               <td><input name="btn" type="submit" class="form_btn" value="Assign" onClick="clickedButton=true;MM_validateForm('FRduedate','Due Date','R','FRmsg','Message details','R');return document.MM_returnValue"></td>
2577
            <%End If%>
2578
         </tr>
2579
      </table>
2580
      </form>
2581
      <p>&nbsp;     </p>
2582
      <p>        <!-- PRINT, SAVE, ETC. ------------>
119 ghuddy 2583
      <%If parPrint = "" Then%>
129 ghuddy 2584
         <br>
2585
         <br>
2586
         <a href="javascript:;" onClick="window.print();" class="txt_linked"><img src="images/btn_print.gif" width="23" height="24" hspace="4" border="0" align="absmiddle">Print this report</a><br>
2587
         <br>
2588
 
119 ghuddy 2589
      <%End If%>
2590
      <!-- PRINT, SAVE, ETC. END -------->
2591
      <%
129 ghuddy 2592
      OraDatabase.Parameters.Remove "RTAG_ID"
2593
      rsRep.Close()
2594
      Set rsRep = nothing
2595
   End If
2596
 
119 ghuddy 2597
End Sub
129 ghuddy 2598
%>
119 ghuddy 2599
 
2600
<%
2601
'-------------------------------------------------------------------------------------------------------------------------------------------------------------------
2602
'==================================================================================
129 ghuddy 2603
' Report Name      :    Unit Tests per Package
2604
' Description      :   List unit tests per package showing the unit test completeness
2605
' INPUT            :   Project, Vesion Tree, Release Label, Base View, Level of Completeness, Show/Hide Dependencies, PV_ID
119 ghuddy 2606
'==================================================================================
2607
Sub Unit_Tests_Per_Package ( sSection, nProj_id,  nRtag_id, nBase_view_id, nLevel_of_complete, nShow_dependencies, nPv_id )
129 ghuddy 2608
   Dim Query_String, rsRep
2609
   Const Allow_All = TRUE
2610
   Const Disallow_All = FALSE
119 ghuddy 2611
 
129 ghuddy 2612
   If nProj_id = "" Then nProj_id = -1
2613
   If nRtag_id = "" Then nRtag_id = -1
2614
   If nShow_dependencies = "" Then nShow_dependencies = 0
2615
   If nPv_id = "" Then nPv_id = -1
119 ghuddy 2616
 
129 ghuddy 2617
   If sSection = "TITLE" Then
2618
      Response.write "Unit Tests per Package"
2619
      Exit Sub
2620
   End If
2621
 
2622
 
2623
   If sSection = "FORM" Then
2624
      %>
2625
 
2626
      <table width="100%" border="0" cellpadding="2" cellspacing="1">
2627
         <form action="<%=scriptName%>" method="post" name="repform" onSubmit="MM_validateForm('FRproj_id','Project','R','FRvtree_id','Version Tree','R','FRrtag_id','Release','R');return document.MM_returnValue">
2628
            <tr>
2629
               <td width="1%" nowrap class="form_field"><img src="images/spacer.gif" width="30" height="8"></td>
2630
               <td width="1%" align="right" nowrap class="form_field">Project</td>
2631
               <td width="100%"><%Call Get_Projects( nProj_id, Disallow_All )%></td>
2632
            </tr>
2633
            <tr>
2634
               <td nowrap class="form_field">&nbsp;</td>
2635
               <td align="right" nowrap class="form_field">Release</td>
2636
               <td><%Call Get_Release_Labels ( nProj_id,  nRtag_id, Disallow_All )%></td>
2637
            </tr>
2638
            <tr>
2639
               <td nowrap class="form_field">&nbsp;</td>
2640
               <td align="right" nowrap class="form_field">Base View</td>
2641
               <td><%Call Get_Base_Views ( nRtag_id, nBase_view_id, Allow_All )%></td>
2642
            </tr>
2643
            <tr>
2644
               <td nowrap class="form_field">&nbsp;</td>
2645
               <td align="right" nowrap class="form_field">Show Dependencie's Unit Tests</td>
2646
               <td><input type="checkbox" name="FRshow_deps" value="1" <%If nShow_dependencies <> 0 Then%>checked<%End If%>></td>
2647
            </tr>
2648
            <tr>
2649
               <td nowrap class="form_field">&nbsp;</td>
2650
               <td align="right" nowrap class="form_field">&nbsp;</td>
2651
               <td><br>
2652
                  <input type="hidden" name="group" value="<%=parGroup%>">
2653
                  <input type="hidden" name="repnum" value="<%=parRepNum%>">
2654
                  <input type="hidden" name="FRtest_complete" value="0">
2655
                  <input type="hidden" name="action" value="true">
2656
                  <input name="Submit" type="submit" class="form_btn" value="Submit">
2657
               </td>
2658
            </tr>
2659
         </form>
2660
      </table>
2661
      <%   Exit Sub
2662
   End If
2663
 
2664
 
2665
   If sSection = "BODY" Then
2666
      If NOT CBool(Request("action")) Then Exit Sub
2667
 
2668
      Query_String = ReadFile( rootPath & "queries\rep_unit_tests_per_package.sql" )
2669
 
2670
      OraDatabase.Parameters.Add "RTAG_ID",       nRtag_id,       ORAPARM_INPUT, ORATYPE_NUMBER
2671
      OraDatabase.Parameters.Add "BASE_VIEW",    nBase_view_id,    ORAPARM_INPUT, ORATYPE_NUMBER
2672
      OraDatabase.Parameters.Add "COMPLETENESS",    nLevel_of_complete, ORAPARM_INPUT, ORATYPE_NUMBER
2673
      OraDatabase.Parameters.Add "SHOW_DEPS",    nShow_dependencies, ORAPARM_INPUT, ORATYPE_NUMBER
2674
      OraDatabase.Parameters.Add "PV_ID",       nPv_id,       ORAPARM_INPUT, ORATYPE_NUMBER
2675
      %>
2676
      <table width="100%" border="0" cellspacing="0" cellpadding="1">
2677
         <tr>
2678
            <td width="1%" nowrap class="body_colb">&nbsp;</td>
2679
            <td width="1%" nowrap class="body_colb">&nbsp;</td>
2680
            <td width="1%" nowrap class="body_colb">Package Name&nbsp;&nbsp;&nbsp;</td>
2681
            <td width="1%" nowrap class="body_colb">Version&nbsp;&nbsp;&nbsp;</td>
2682
            <td width="1%" nowrap class="body_colb">Test Name&nbsp;&nbsp;&nbsp;</td>
2683
            <td width="100%" nowrap class="body_colb">Test Summary&nbsp; </td>
2684
            <td width="1%" nowrap class="body_colb"></td>
2685
            <td width="1%" nowrap class="body_colb">Stamp</td>
2686
            <td width="1%" nowrap class="body_colb">Test Completed &nbsp;&nbsp;&nbsp;</td>
2687
         </tr>
2688
         <tr>
2689
            <td background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
2690
            <td background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
2691
            <td background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
2692
            <td background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
2693
            <td background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
2694
            <td background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
2695
            <td background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
2696
            <td background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
2697
            <td background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
2698
         </tr>
2699
         <%
2700
         Dim currBase_view_id, currPv_id, currDpv_id, showTests
2701
         currBase_view_id = -1
2702
         currPv_id = -1
2703
         currDpv_id = -1
2704
 
2705
         Set rsRep = OraDatabase.DbCreateDynaset( Query_String, 0 )
2706
 
2707
         If rsRep.RecordCount = 0 Then
2708
            With Response
2709
               .write "<tr>"
2710
               .write "<td colspan='9' class='body_row'>Found 0 records</td>"
2711
               .write "</tr>"
2712
            End With
2713
         End If
2714
 
2715
         While ((NOT rsRep.BOF) AND (NOT rsRep.EOF))
2716
            If nShow_dependencies <> 0 Then
2717
               ' show dependency is ON
2718
               If rsRep("dpkg_name") = "------" Then
2719
                  showTests = FALSE
2720
               Else
2721
                  showTests = TRUE
2722
               End If
2723
            Else
2724
               showTests = TRUE
2725
            End If
2726
 
2727
            ' -------- GROUP BY BASE VIEW  -----------------
2728
            If CDbl(currBase_view_id) <> CDbl(rsRep("base_view_id")) Then
2729
               %>
2730
               <tr>
2731
                  <td background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
2732
                  <td background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
2733
                  <td background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
2734
                  <td background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
2735
                  <td background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
2736
                  <td background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
2737
                  <td background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
2738
                  <td background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
2739
                  <td background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
2740
               </tr>
2741
               <tr>
2742
                  <td valign="top" nowrap class="body_scol"><%=rsRep("view_name")%></td>
2743
                  <td>&nbsp;</td>
2744
                  <td>&nbsp;</td>
2745
                  <td>&nbsp;</td>
2746
                  <td>&nbsp;</td>
2747
                  <td>&nbsp;</td>
2748
                  <td>&nbsp;</td>
2749
                  <td>&nbsp;</td>
2750
                  <td>&nbsp;</td>
2751
               </tr>
2752
               <%
2753
               currBase_view_id = CDbl(rsRep("base_view_id"))
2754
            End If
2755
            ' -------- END GROUP BASE VIEW ------------------------
2756
            %>
2757
            <%
2758
            ' -------- GROUP BY PACKAGE  -----------------
2759
            If CDbl(currPv_id) <> CDbl(rsRep("pv_id")) Then
2760
               %>
2761
               <tr>
2762
                  <td><img src="images/spacer.gif" width="1" height="1"></td>
2763
                  <td background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
2764
                  <td background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
2765
                  <td background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
2766
                  <td background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
2767
                  <td background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
2768
                  <td background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
2769
                  <td background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
2770
                  <td background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
2771
                  <td background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
2772
               </tr>
2773
               <tr>
2774
                  <td>&nbsp;</td>
5860 dpurdie 2775
                  <td><%If rsRep("dlocked") = "Y" Then%><img src="images/i_locked.gif" width="7" height="10" hspace="2" title="Officially released."><%Else%><img src="images/spacer.gif" width="7" height="10" hspace="2"><%End If%></td>
129 ghuddy 2776
                  <td nowrap><a href="fixed_issues.asp?pv_id=<%=rsRep("pv_id")%>&rtag_id=<%=nRtag_id%>" class="body_txt"><strong><%=rsRep("pkg_name")%></strong></a></td>
2777
                  <td nowrap><a href="fixed_issues.asp?pv_id=<%=rsRep("pv_id")%>&rtag_id=<%=nRtag_id%>" class="body_txt"><strong><%=rsRep("pkg_version")%></strong></a></td>
2778
                  <td>&nbsp;</td>
2779
                  <td>&nbsp;</td>
2780
                  <td>&nbsp;</td>
2781
                  <td>&nbsp;</td>
2782
                  <td align="center" valign="top" nowrap><%If nShow_dependencies = 0 Then%><%If IsNull( rsRep("not_done") ) Then%><img src="images/i_boxtick_on.gif" width="13" height="13"><%Else%><img src="images/i_boxtick_off.gif" width="13" height="13"><%End If%><%End If%></td>
2783
               </tr>
2784
               <%
2785
               currPv_id = CDbl(rsRep("pv_id"))
2786
            End If
2787
            ' -------- END GROUP PACKAGE ------------------------
2788
            %>
2789
            <%
2790
            ' -------- GROUP BY DEPENDENCY  -----------------
2791
            If Not IsNull(rsRep("dpv_id")) Then
2792
               If CDbl(currDpv_id) <> CDbl(rsRep("dpv_id")) Then
2793
                  %>
2794
                  <tr>
2795
                     <td>&nbsp;</td>
2796
                     <td>&nbsp;</td>
2797
                     <td>&nbsp;</td>
2798
                     <td>&nbsp;</td>
2799
                     <td valign="top" nowrap><a href="fixed_issues.asp?pv_id=<%=rsRep("dpv_id")%>&rtag_id=<%=nRtag_id%>" class="body_txt"><strong><%=rsRep("dpkg_name")%></strong></a></td>
2800
                     <td valign="top" nowrap><a href="fixed_issues.asp?pv_id=<%=rsRep("dpv_id")%>&rtag_id=<%=nRtag_id%>" class="body_txt"><strong><%=rsRep("dpkg_version")%></strong></a></td>
2801
                     <td>&nbsp;</td>
2802
                     <td>&nbsp;</td>
2803
                     <td align="center" valign="top" nowrap><%If IsNull( rsRep("not_done") ) Then%><img src="images/i_boxtick_on.gif" width="13" height="13"><%Else%><img src="images/i_boxtick_off.gif" width="13" height="13"><%End If%></td>
2804
                  </tr>
2805
                  <%
2806
                  currDpv_id = CDbl(rsRep("dpv_id"))
2807
               End If
2808
            End If
2809
            ' -------- END GROUP DEPENDENCY ------------------------
2810
            %>
2811
            <%If Not IsNull( rsRep("completed_by") ) AND showTests Then%>
2812
               <tr>
2813
                  <td>&nbsp;</td>
2814
                  <td>&nbsp;</td>
2815
                  <td>&nbsp;</td>
2816
                  <td>&nbsp;</td>
2817
                  <td bgcolor="#F5F5F5" valign="top" nowrap class="body_row"><img src="images/i_test.gif" width="16" height="16" hspace="1" align="absmiddle"><%=rsRep("test_name")%></td>
2818
                  <td bgcolor="#F5F5F5" valign="top" class="body_row"><%=NewLine_To_BR ( To_HTML ( rsRep("test_summary") ) )%></td>
2819
                  <td bgcolor="#F5F5F5" align="center" valign="top">   </td>
5632 dpurdie 2820
                  <td bgcolor="#F5F5F5" valign="top" nowrap class="body_txt"><%=DisplayDate ( rsRep("completion_date") )%> <a href="mailto:<%=rsRep("user_email")%>" class="txt_linked"><%=rsRep("completed_by")%></a> </td>
129 ghuddy 2821
                  <td>&nbsp;</td>
2822
               </tr>
2823
               <tr>
2824
                  <td><img src="images/spacer.gif" width="1" height="1"></td>
2825
                  <td><img src="images/spacer.gif" width="1" height="1"></td>
2826
                  <td><img src="images/spacer.gif" width="1" height="1"></td>
2827
                  <td><img src="images/spacer.gif" width="1" height="1"></td>
2828
                  <td><img src="images/spacer.gif" width="1" height="1"></td>
2829
                  <td><img src="images/spacer.gif" width="1" height="1"></td>
2830
                  <td><img src="images/spacer.gif" width="1" height="1"></td>
2831
                  <td><img src="images/spacer.gif" width="1" height="1"></td>
2832
                  <td><img src="images/spacer.gif" width="1" height="1"></td>
2833
               </tr>
2834
            <%End If%>
2835
            <%  rsRep.MoveNext
2836
         WEnd
2837
         %>
2838
         <tr>
2839
            <td background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
2840
            <td background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
2841
            <td background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
2842
            <td background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
2843
            <td background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
2844
            <td background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
2845
            <td background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
2846
            <td background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
2847
            <td background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
2848
         </tr>
2849
      </table>
2850
 
2851
      <!-- PRINT, SAVE, ETC. ------------>
2852
      <%If parPrint = "" Then%>
2853
         <br>
2854
         <br>
2855
         <a href="javascript:;" onClick="window.print();" class="txt_linked"><img src="images/btn_print.gif" width="23" height="24" hspace="4" border="0" align="absmiddle">Print this report</a><br>
2856
         <br>
2857
      <%End If%>
2858
      <!-- PRINT, SAVE, ETC. END -------->
2859
      <%
2860
      rsRep.Close
2861
      Set rsRep = nothing
2862
   End If
2863
 
119 ghuddy 2864
End Sub
129 ghuddy 2865
%>
159 ghuddy 2866
 
2867
 
2868
<%
2869
'-------------------------------------------------------------------------------------------------------------------------------------------------------------------
2870
Function  Get_CQ_Issues ( SSsql, OOrsCQ )
4553 dpurdie 2871
    On Error Resume Next
2872
    Set OOrsCQ = OraDatabase.DbCreateDynaset( SSsql, cint(0))
2873
    Get_CQ_Issues = Err.Number
159 ghuddy 2874
End Function
2875
'----------------------------------------------------------------------------------------------------------------------------------------
2876
Function GetRMIssueState (NNpv_id, NNissId)
2877
   Dim rsTemp, Query_String
2878
   Dim s
2879
   Query_String = _
2880
   " SELECT (CASE WHEN iss_state = 0 THEN ' (O)' ELSE ' (F)' END) AS issState "&_
2881
   "   FROM cq_issues cq "&_
2882
   "  WHERE cq.pv_id = "& NNpv_id &_
2883
   "    AND cq.iss_id = "& NNissId
2884
 
2885
   Set rsTemp = OraDatabase.DbCreateDynaset( Query_String, cint(0))
2886
 
2887
   s = ""
2888
   If ((NOT rsTemp.BOF) AND (NOT rsTemp.EOF)) Then
2889
      s = (rsTemp.Fields("issState"))
2890
   End If
2891
 
2892
   rsTemp.Close
2893
   Set rsTemp = nothing
2894
 
2895
   GetRMIssueState = s
2896
End Function
2897
'----------------------------------------------------------------------------------------------------------------------------------------
2898
' Function returns the number of imported clearquest issues
2899
' and builds a string suitable for querying the clearquest issues database
2900
Function Get_Package_Issues ( NNpv_id, SSsql, DDfixedIss, DDnotesIssDict, nIssState )
3975 dpurdie 2901
   Dim rsTemp, sqlstr, DEVIiss, retVal
159 ghuddy 2902
 
2903
   sqlstr = "SELECT iss_db, iss_id, iss_state, notes FROM CQ_ISSUES WHERE pv_id="& NNpv_id &"  AND iss_state IN (" & nIssState & ")"
2904
 
2905
   Set rsTemp = OraDatabase.DbCreateDynaset( sqlstr, cint(0))
2906
   retVal = rsTemp.RecordCount
2907
 
2908
   DEVIiss  = "-1"
2909
 
2910
   While ((NOT rsTemp.BOF) AND (NOT rsTemp.EOF))
2911
      If CInt(rsTemp("iss_db")) = CInt(enumCLEARQUEST_DEVI_ID) Then
2912
         DEVIiss = DEVIiss &","& rsTemp("iss_id")
2913
      End If
2914
 
2915
      rsTemp.MoveNext
2916
   WEnd
2917
 
2918
   ' Construct SQL statement for CQ database
2919
   SSsql = ReadFile( rootPath & "queries\cq_issues_rep1.sql" )
2920
   SSsql = Replace( SSsql, "/*enumCLEARQUEST_DEVI_ID*/", enumCLEARQUEST_DEVI_ID)
2921
   SSsql = Replace( SSsql, "/*DEVIiss*/", DEVIiss)
2922
 
2923
   rsTemp.Close()
2924
   Set rsTemp = nothing
2925
 
2926
   Get_Package_Issues = retVal
2927
 
2928
End Function
2929
'-------------------------------------------------------------------------------------------------------------------------------------------------------------------
2930
Sub sdAdd( dict, key, value )
2931
   if IsNull(value) Then
2932
      dict.Add CStr(key),""
2933
   else
2934
      dict.Add CStr(key),CStr(value)
2935
   End If
2936
End Sub
2937
 
2938
Function sdItem( dict, i )
2939
   Dim a
2940
   Dim s
2941
   a = dict.Items
2942
   s = a(i)
2943
   sdItem=s
2944
End Function
2945
 
2946
Function sdKey( dict, i )
2947
   Dim a
2948
   a = dict.Keys
2949
   sdKey = a(i)
2950
End Function
2951
'-------------------------------------------------------------------------------------------------------------------------------------------------------------------
2952
Function ReleaseDeviStatus_ReportCheckbox( width, NameAndValue, Label, bCheck )
2953
   Dim s
2954
   If (IsNull(Request(NameAndValue)) OR (Request(NameAndValue) = "")) AND (not bCheck) Then
2955
      s = "<td width=""" & width & """><INPUT Type=Checkbox  name=""" & NameAndValue & """ value=""" & NameAndValue & """>" & Label & "</td>"
2956
   Else
2957
      s = "<td width=""" & width & """><INPUT Type=Checkbox  CHECKED name=""" & NameAndValue & """ value=""" & NameAndValue & """>" & Label & "</td>"
2958
   End If
2959
   ReleaseDeviStatus_ReportCheckbox = s
2960
End Function
2961
 
2962
'-------------------------------------------------------------------------------------------------------------------------------------------------------------------
2963
Function GetCQIssuesListFilter
2964
   Dim s
2965
   s = ""
2966
   If not (IsNull(Request("CB_FILTER_FIXED")) OR (Request("CB_FILTER_FIXED") = "")) Then
2967
      s = CStr(enumISSUES_STATE_FIXED)
2968
      If not (IsNull(Request("CB_FILTER_OUTSTANDING")) OR (Request("CB_FILTER_OUTSTANDING") = "")) Then
2969
         s = s & "," & CStr(enumISSUES_STATE_IMPORTED)
2970
      End If
2971
   Else
2972
      If not (IsNull(Request("CB_FILTER_OUTSTANDING")) OR (Request("CB_FILTER_OUTSTANDING") = "")) Then
2973
         s = CStr(enumISSUES_STATE_IMPORTED)
2974
      End If
2975
   End If
2976
   GetCQIssuesListFilter = s
2977
End Function
2978
'-------------------------------------------------------------------------------------------------------------------------------------------------------------------
2979
Function GetPkgNameAndVersion(SSPvId, SSPkgNameAndVer)
2980
   Dim SSpkgID, SSpkgName, SSpkgVersion, SSsrc_path, SSpkgDesc, BBdlocked
2981
   SSpkgID      = ""
2982
   SSpkgName    = ""
2983
   SSpkgVersion = ""
2984
   SSsrc_path   = ""
2985
   SSpkgDesc    = ""
2986
   BBdlocked    = 0
2987
   Call Get_Pkg_Short_Info( SSPvId, SSpkgID, SSpkgName, SSpkgVersion, SSsrc_path, SSpkgDesc, BBdlocked )
2988
   If not ((SSpkgName = "") and (SSpkgVersion = "")) Then
2989
      SSPkgNameAndVer = SSpkgName & " " & SSpkgVersion
2990
      GetPkgNameAndVersion = True
2991
   Else
2992
      SSPkgNameAndVer = ""
2993
      GetPkgNameAndVersion = False
2994
   End If
2995
End Function
2996
'-------------------------------------------------------------------------------------------------------------------------------------------------------------------
2997
'==================================================================================
2998
' Report Name      :   ReleaseDeviStatus_Report
2999
' Description      :   List DEVIs for all Package Versions in a Release
3000
' INPUT            :
3001
'==================================================================================
3002
Sub ReleaseDeviStatus_Report ( SSsection, NNproj_id, NNrtag_id)
3003
   Dim rsCQQry                   ' Query for the CLEARQUEST database
3004
   Dim rsRMQry                   ' Query for the RELEASE MANAGER database
3005
   Dim SQLstr                    ' String to contain a query
3006
   Dim issueCnt                  ' Records how many CQ issues were found for a given RM package version
3007
   Dim retVal                    ' General return value
3008
   Dim isFirstDeviRow            ' HTML rendering helper
3009
   Dim isRowOpen                 ' HTML rendering helper
3010
   Dim dict_Iss_Id_to_Iss_Num    ' Dictionaries populated during the formation of the package DEVI list
3011
   Dim dict_Iss_Id_to_Iss_DB     '   creation, supporting the generation of the DEVI details list.
3012
   Dim dict_Iss_Id_to_Risk
3013
   Dim dict_Iss_Id_to_Summary
3014
   Dim dict_Iss_Id_to_CodeRev
3015
   Dim dict_Iss_Id_to_IntNotes
3016
   Dim dict_Iss_Id_to_RelDBPatches
3017
   Dim dict_Iss_Id_to_Pkg
3018
   Dim dict_Iss_Id_to_PvId
3019
   Dim dict_Iss_Id_to_Iss_Status
3020
   Dim dict_Iss_Id_to_Iss_Type
3021
   Dim dict_Iss_Id_to_Aff_Pkg
3022
   Dim i,j,k                     ' General loop vars
3023
   Dim s,strIn,strOut,sDisplay   ' General string vars
3024
   Dim a                         ' General array var
3025
   Dim pkgArr                    ' Holds an array of CSV strings listing RM package names, 1 array element per unique CQ issue found
3026
   Dim pkgCsv                    ' Holds a single CSV string listing RM package names, related to a single unique CQ issue
3027
   Dim pvIdArr                   ' Holds an array of CSV strings listing RM package PV IDs, 1 array element per unique CQ issue found
3028
   Dim pvIdCsv                   ' Holds a single CSV string listing RM package PV IDs, related to a single unique CQ issue
3029
   Dim crRefArr                  ' Holds an array of code review reference strings
3030
   Dim relDbPatchArr             ' Holds an array of related DB patch strings
3031
   Dim sqlTblCnt                 ' Counts the number of tables in the RM query string
3032
   Dim FSO                       ' File System Object
3033
   Dim NewTextFile               ' File Object
3034
   Dim emailReport               ' Boolean flag signalling email generation
3035
   Dim cqFilterStr               ' Fixed and/or Outstanding Issues Filter for RM Query
3036
   Dim cbWIPChecked              ' Default checkbox states
3037
   Dim cbPendingChecked
3038
   Dim cbReleasedChecked
3039
   Dim cbFixed
3040
   Dim cbOutstanding
3041
   Dim cbWithoutIssues
3042
   Dim cbTraverseRipples
3043
   Dim reObj                     ' regular expression object
3044
   Dim reObjMatch
3045
   Dim NumPkgsListed             ' Stats collection vars
3046
   Dim NumIssuesListed
3047
   Dim parRipDate                ' traverse ripple limit date
3048
   Dim lastNonRipplePvId         ' pv_id after ripple version traversal
3049
   Dim cqIssId                   ' clearquest database ID for a given issue (not a human readable number)
3050
 
3051
   Const Allow_All = TRUE
3052
   Const Disallow_All = FALSE
3053
 
3054
   NumPkgsListed = 0
3055
   NumIssuesListed = 0
3056
 
3057
   If NNproj_id = "" Then NNproj_id = -1
3058
   If NNrtag_id = "" Then NNrtag_id = -1
3059
 
3060
   If SSsection = "TITLE" Then
3061
      Response.write "Release DEVI Status"
3062
      Exit Sub
3063
   End If
3064
 
3065
   ' Determine if we have to assert default check status on one of the checkboxes
3066
   cbWIPChecked      = False
3067
   cbPendingChecked  = False
3068
   cbReleasedChecked = False
3069
   cbFixed           = False
3070
   cbOutstanding     = False
3071
   cbWithoutIssues   = False
3072
   cbTraverseRipples = False
3073
   If  (IsNull(Request("CB_FILTER_WIP")) OR (Request("CB_FILTER_WIP") = "")) _
3074
   and (IsNull(Request("CB_FILTER_PENDING")) OR (Request("CB_FILTER_PENDING") = "")) _
3075
   and (IsNull(Request("CB_FILTER_RELEASED")) OR (Request("CB_FILTER_RELEASED") = "")) Then
3076
      cbWIPChecked = True
3077
   End If
3078
   If  (IsNull(Request("CB_FILTER_FIXED")) OR (Request("CB_FILTER_FIXED") = "")) _
3079
   and (IsNull(Request("CB_FILTER_OUTSTANDING")) OR (Request("CB_FILTER_OUTSTANDING") = "")) Then
3080
      cbFixed = True
3081
   End If
3082
 
3083
   If (IsNull(Request("FRripdate")) OR (Request("FRripdate") = "")) Then
5639 dpurdie 3084
      parRipDate = DisplayDate(DateAdd("d",-31,Date))
159 ghuddy 3085
   Else
3086
      parRipDate = Request("FRripdate")
3087
   End If
3088
 
3089
   If SSsection = "FORM" Then
3090
      %>
5639 dpurdie 3091
      <script>
3092
        $(document).ready(function(){
3093
            $("#FRripdate").datepicker({
3094
                    constrainInput: true,
3095
                    showOn: 'both',
3096
                    buttonImageOnly : true,
3097
                    buttonImage: "images/i_calendar.gif",
3098
                    buttonText: "Select Date",
3099
                    dateFormat : "D dd-M-yy",
3100
                    maxDate : 0,
3101
                    yearRange : "1970:2099",
3102
                    changeYear : true, 
3103
                    changeMonth: true,
3104
            });
3105
        });
3106
 
3107
      </script>
159 ghuddy 3108
      <table width="100%" border="0" cellpadding="2" cellspacing="1">
3109
         <form action="<%=scriptName%>" method="post" name="repform" onSubmit="MM_validateForm('FRproj_id','Project','R','FRvtree_id','Version Tree','R','FRrtag_id','Release','R');return document.MM_returnValue">
3110
            <table width="100%" border="0" cellpadding="2" cellspacing="1">
3111
               <tr>
3112
                  <td width="50%">
3113
                     <table width="100%" border="0" cellpadding="2" cellspacing="1">
3114
                        <tr>
3115
                           <td width="10%" align="left" valign="top" nowrap class="form_field">Project</td>
3116
                           <td width="90%" valign="top"><%Call Get_Projects( NNproj_id, Disallow_All )%></td>
3117
                        </tr>
3118
                        <tr>
3119
                           <td align="left" nowrap class="form_field">Release</td>
3120
                           <td><%Call Get_Open_Release_Labels ( NNproj_id,  NNrtag_id, Disallow_All )%></td>
3121
                        </tr>
3122
                        <tr><td colspan="2" height="130px"><img src="images/spacer.gif" width="1" height="1"></td></tr>
3123
                        <tr>
3124
                           <td>
3125
                              <input name="btn" type="submit" class="form_btn" value="Submit"            >
3126
                           </td>
3127
                           <td>
3128
                              <input name="btn" type="submit" class="form_btn" value="Mail Me CSV Report">
3129
                              <input type="hidden" name="group" value="<%=parGroup%>">
3130
                              <input type="hidden" name="repnum" value="<%=parRepNum%>">
3131
                              <input type="hidden" name="action" value="true">
3132
                           </td>
3133
                        </tr>
3134
                     </table>
3135
                  </td>
3136
                  <td width="50%">
3137
                     <table width="100%" border="0" cellpadding="2" cellspacing="1">
3138
                        <tr>
3139
                           <td width="60%" valign="top">
3140
                              <fieldset>
3141
                                 <legend><a href="javascript:;" class="body_scol" >Include&nbsp;Package&nbsp;Versions<%=Quick_Help("RepRDS_pv")%>&nbsp;</a></legend>
3142
                                 <table width="100%" border="0" cellpadding="2" cellspacing="1">
3143
                                    <tr><%=ReleaseDeviStatus_ReportCheckbox("25%", "CB_FILTER_WIP", "From Work-in-progress", cbWIPChecked)%></tr>
3144
                                    <tr><%=ReleaseDeviStatus_ReportCheckbox("17%", "CB_FILTER_PENDING", "From Pending", cbPendingChecked)%></tr>
3145
                                    <tr><%=ReleaseDeviStatus_ReportCheckbox("20%", "CB_FILTER_RELEASED", "From Released", cbReleasedChecked)%></tr>
3146
                                    <tr><%=ReleaseDeviStatus_ReportCheckbox("100%", "CB_FILTER_WITHOUT_ISSUES", "Without Issues", cbWithoutIssues)%></tr>
3147
                                 </table>
3148
                              </fieldset>
3149
                           </td>
3150
                           <td width="40%" valign="top">
3151
                              <fieldset>
3152
                                 <legend><a href="javascript:;" class="body_scol" >&nbsp;Include&nbsp;Issues<%=Quick_Help("RepRDS_iss")%>&nbsp;</a></legend>
3153
                                 <table width="100%" border="0" cellpadding="2" cellspacing="1">
3154
                                    <tr><%=ReleaseDeviStatus_ReportCheckbox("100%", "CB_FILTER_FIXED",       "Fixed", cbFixed)%></tr>
3155
                                    <tr><%=ReleaseDeviStatus_ReportCheckbox("100%", "CB_FILTER_OUTSTANDING", "Outstanding", cbOutstanding)%></tr>
3156
                                 </table>
3157
                              </fieldset>
3158
                           </td>
3159
                        </tr>
3160
                        <tr>
3161
                           <td width="60%" valign="top" colspan="2">
3162
                              <fieldset>
3163
                                 <legend><a href="javascript:;" class="body_scol" >&nbsp;From&nbsp;Released<%=Quick_Help("RepRDS_trav")%>&nbsp;</a></legend>
3164
                                 <table width="100%" border="0" cellpadding="0" cellspacing="0">
3165
                                    <tr>
3166
                                       <%=ReleaseDeviStatus_ReportCheckbox("60%", "CB_FILTER_TRAVERSE_RIPPLES", "Traverse Ripples as far back as", cbTraverseRipples)%>
3167
                                       <td>
5639 dpurdie 3168
                                          <input type="text" name="FRripdate" maxlength="10" size="12" value="<%=parRipDate%>" id="FRripdate">
159 ghuddy 3169
                                       </td>
3170
                                    </tr>
3171
                                 </table>
3172
                              </fieldset>
3173
                           </td>
3174
                        </tr>
3175
                     </table>
3176
                  </td>
3177
               </tr>
3178
            </table>
3179
         </form>
3180
      </table>
3181
      <%
3182
      Exit Sub
3183
   End If
3184
 
3185
   If SSsection = "BODY" Then
3186
      emailReport = false
3187
      If Request("btn") = "Mail Me CSV Report" Then
3188
         emailReport = true
3189
      End If
3190
 
3191
      If NOT CBool(Request("action")) Then Exit Sub
3192
      If NNrtag_id = -1 then Exit Sub
3193
 
3194
      ' Construct Release Manager Query based upon form settings (rtag and checkbox states)
3195
      sqlTblCnt = 0
3196
      SQLstr = "SELECT * FROM ( "
3197
      If not (IsNull(Request("CB_FILTER_WIP")) OR (Request("CB_FILTER_WIP") = "")) Then
3198
         sqlTblCnt = sqlTblCnt + 1
3199
         SQLstr = SQLstr & " SELECT p.PROJ_ID,   rt.RTAG_ID,   v.VIEW_ID,   pk.PKG_ID,   pv.PV_ID,"&_
3200
                           "        p.PROJ_NAME, rt.RTAG_NAME, v.VIEW_NAME, pk.PKG_NAME, pv.PKG_VERSION, pv.PKG_LABEL, pv.BUILD_TYPE, pv.DLOCKED, 'WIP' as STATE"&_
3201
                           "   FROM PACKAGE_VERSIONS pv,"&_
3202
                           "        PACKAGES pk,"&_
3203
                           "        RELEASE_TAGS rt,"&_
3204
                           "        PROJECTS p,"&_
3205
                           "        VIEWS v," &_
3206
                           "        WORK_IN_PROGRESS wip"&_
3207
                           "  WHERE wip.RTAG_ID =   :RTAG_ID"&_
3208
                           "    AND wip.RTAG_ID = rt.RTAG_ID"&_
3209
                           "    AND wip.PV_ID   = pv.PV_ID"&_
3210
                           "    AND wip.VIEW_ID = v.VIEW_ID"&_
3211
                           "    AND pv.PKG_ID   = pk.PKG_ID"&_
3212
                           "    AND rt.PROJ_ID  = p.PROJ_ID"
3213
      End If
3214
 
3215
      If not (IsNull(Request("CB_FILTER_PENDING")) OR (Request("CB_FILTER_PENDING") = "")) Then
3216
         If sqlTblCnt > 0 Then
3217
            SQLstr = SQLstr & " UNION ALL "
3218
         End If
3219
         sqlTblCnt = sqlTblCnt + 1
3220
         SQLstr = SQLstr & " SELECT p.PROJ_ID,   rt.RTAG_ID,   v.VIEW_ID,   pk.PKG_ID,   pv.PV_ID,"&_
3221
                           "        p.PROJ_NAME, rt.RTAG_NAME, v.VIEW_NAME, pk.PKG_NAME, pv.PKG_VERSION, pv.PKG_LABEL, pv.BUILD_TYPE, pv.DLOCKED, 'Pending' as STATE"&_
3222
                           "   FROM PACKAGE_VERSIONS pv,"&_
3223
                           "        PACKAGES pk,"&_
3224
                           "        RELEASE_TAGS rt,"&_
3225
                           "        PROJECTS p,"&_
3226
                           "        VIEWS v," &_
3227
                           "        PLANNED pl"&_
3228
                           "  WHERE pl.RTAG_ID  =   :RTAG_ID"&_
3229
                           "    AND pl.RTAG_ID  = rt.RTAG_ID"&_
3230
                           "    AND pl.PV_ID    = pv.PV_ID"&_
3231
                           "    AND pl.VIEW_ID  = v.VIEW_ID"&_
3232
                           "    AND pv.PKG_ID   = pk.PKG_ID"&_
3233
                           "    AND rt.PROJ_ID  = p.PROJ_ID"
3234
      End If
3235
 
3236
      If not (IsNull(Request("CB_FILTER_RELEASED")) OR (Request("CB_FILTER_RELEASED") = "")) Then
3237
         If sqlTblCnt > 0 Then
3238
            SQLstr = SQLstr & " UNION ALL "
3239
         End If
3240
         sqlTblCnt = sqlTblCnt + 1
3241
         SQLstr = SQLstr & " SELECT p.PROJ_ID,   rt.RTAG_ID,   v.VIEW_ID,   pk.PKG_ID,   pv.PV_ID,"&_
3242
                           "        p.PROJ_NAME, rt.RTAG_NAME, v.VIEW_NAME, pk.PKG_NAME, pv.PKG_VERSION, pv.PKG_LABEL, pv.BUILD_TYPE, pv.DLOCKED, 'Released' as STATE"&_
3243
                           "   FROM PACKAGE_VERSIONS pv,"&_
3244
                           "        PACKAGES pk,"&_
3245
                           "        RELEASE_TAGS rt,"&_
3246
                           "        PROJECTS p,"&_
3247
                           "        VIEWS v," &_
3248
                           "        RELEASE_CONTENT rc"&_
3249
                           "  WHERE rc.RTAG_ID      =   :RTAG_ID"&_
3250
                           "    AND rc.RTAG_ID      = rt.RTAG_ID"&_
3251
                           "    AND rc.PV_ID        = pv.PV_ID"&_
3252
                           "    AND rc.BASE_VIEW_ID = v.VIEW_ID"&_
3253
                           "    AND pv.PKG_ID       = pk.PKG_ID"&_
3254
                           "    AND rt.PROJ_ID      = p.PROJ_ID"
3255
      End If
3256
 
3257
      SQLstr = SQLstr & " )"
3258
      SQLstr = SQLstr & " ORDER BY UPPER(PKG_NAME), PKG_VERSION"
3259
 
3260
      ' Exit if nothing to do
3261
      If sqlTblCnt = 0 Then
3262
         Response.Write "Select one or more of Work-in-progress/Pending/Released package version states to be considered"
3263
         Exit Sub
3264
      End If
3265
 
3266
      ' Get SQL string for querying the CLEARQUEST database for this package version's fixed issues  enumISSUES_STATE_IMPORTED or enumISSUES_STATE_FIXED
3267
      cqFilterStr = GetCQIssuesListFilter()
3268
      If cqFilterStr = "" Then
3269
         Response.Write "Select one or both of Fixed/Outstanding issues lists to be considered"
3270
         Exit Sub
3271
      End If
3272
 
3273
      ' Query RELEASE MANAGER for Package versions
3274
      OraDatabase.Parameters.Add "RTAG_ID", NNrtag_id, ORAPARM_INPUT, ORATYPE_NUMBER
3275
      Set rsRMQry = OraDatabase.DbCreateDynaset( SQLstr, cint(0))
3276
      OraDatabase.Parameters.Remove "RTAG_ID"
3277
 
3278
      ' If no records returned issue a message to user and exit
3279
      If rsRMQry.RecordCount = 0 Then
3280
         Response.Write "No records returned - try including additional package version states"
3281
         Exit Sub
3282
      End If
3283
 
3284
      ' Create a downloadable file
3285
      Set FSO = Server.CreateObject("Scripting.FileSystemObject")
3286
      Set NewTextFile = FSO.CreateTextFile(Server.MapPath("docs\ReleaseDEVIStatus_"&objAccessControl.UserName&".csv"), true)
3287
 
3288
      ' Create some dictionaries
3289
      set dict_Iss_Id_to_Iss_Num      = CreateObject("Scripting.Dictionary")
3290
      set dict_Iss_Id_to_Iss_DB       = CreateObject("Scripting.Dictionary")
3291
      set dict_Iss_Id_to_Pkg          = CreateObject("Scripting.Dictionary")
3292
      set dict_Iss_Id_to_Risk         = CreateObject("Scripting.Dictionary")
3293
      set dict_Iss_Id_to_Summary      = CreateObject("Scripting.Dictionary")
3294
      set dict_Iss_Id_to_CodeRev      = CreateObject("Scripting.Dictionary")
3295
      set dict_Iss_Id_to_IntNotes     = CreateObject("Scripting.Dictionary")
3296
      set dict_Iss_Id_to_RelDBPatches = CreateObject("Scripting.Dictionary")
3297
      set dict_Iss_Id_to_PvId         = CreateObject("Scripting.Dictionary")
3298
      set dict_Iss_Id_to_Iss_Status   = CreateObject("Scripting.Dictionary")
3299
      set dict_Iss_Id_to_Iss_Type     = CreateObject("Scripting.Dictionary")
3300
      set dict_Iss_Id_to_Aff_Pkg      = CreateObject("Scripting.Dictionary")
3301
 
3302
      set reObj  = new RegExp
3303
 
3304
      NewTextFile.WriteLine(DoubleQuotes("Release DEVI Status Report for " & Get_Proj_Name(Request("FRproj_id")) & ", release " & Get_Release_Name(Request("FRrtag_id"))))
3305
      NewTextFile.WriteLine("")
3306
      NewTextFile.WriteLine("Package DEVI List")
3307
      NewTextFile.WriteLine("")
3308
      NewTextFile.WriteLine("""Package"",""Label"",""State"",""Issue Number"",""Issue Summary""")
3309
      %>
3310
      <H3>Release DEVI Status Report for
3311
      &nbsp;project&nbsp;<a href="rtree.asp?proj_id=<%=NNproj_id%>" class="txt_linked"><%=Get_Proj_Name(Request("FRproj_id"))%></a>,
3312
      &nbsp;release&nbsp;<a href="dependencies.asp?rtag_id=<%=NNrtag_id%>" class="txt_linked"><%=Get_Release_Name(Request("FRrtag_id"))%></a>
3313
      </H3>
3314
      <H4>Contents</H4>
3315
      <table width="100%" border="0" cellspacing="0" cellpadding="1">
3316
         <tr>
3317
            <td valign="top" nowrap width="15%"><a href="#C1">Package DEVI List</a></td>
3318
            <td valign="top" width="85%">This contains the list of package versions in the release, along with the CLEARQUEST issues assigned to them.</td>
3319
         </tr>
3320
         <tr><td>&nbsp;</td><td>&nbsp;</td></tr>
3321
         <tr>
3322
            <td valign="top"><a href="#C2">DEVI Details List</a></td>
3323
            <td valign="top">This contains the list of CLEARQUEST issues for the release, along with selected details for each, and a reference back to the package versions to which they have been assigned.</td>
3324
         </tr>
3325
         <tr>
3326
            <td valign="top"><a href="#C3">Statistics</a></td>
3327
            <td valign="top">This contains some statistics collected during the report generation.</td>
3328
         </tr>
3329
         <tr>
3330
            <td background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
3331
            <td background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
3332
         </tr>
3333
      </table>
3334
 
3335
      <H5><a name="C1">Package DEVI List</a></H5>
3336
      <table width="100%" border="0" cellspacing="0" cellpadding="1">
3337
         <tr>
3338
            <td width="10%" nowrap class="body_colb">Package&nbsp;&nbsp;&nbsp;</td>
3339
            <td width="10%" nowrap class="body_colb">Label&nbsp;&nbsp;&nbsp;</td>
3340
            <td width="10%" nowrap class="body_colb">State&nbsp;&nbsp;&nbsp;</td>
3341
            <td width="10%" class="body_colb">Issue Number<br>(F)=Fixed<br>(O)=Outstanding</td>
3342
            <td width="60%" nowrap class="body_colb">Issue Summary&nbsp;&nbsp;&nbsp;</td>
3343
         </tr>
3344
         <tr>
3345
            <td background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
3346
            <td background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
3347
            <td background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
3348
            <td background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
3349
            <td background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
3350
         </tr>
3351
         <%
3352
         while ((NOT rsRMQry.BOF) AND (NOT rsRMQry.EOF))
3353
            isFirstDeviRow = 1
3354
            isRowOpen = 1
3355
 
3356
            ' If this package version is a ripple, try and find its non-ripple predecessor in order to get at the
3357
            ' issues that were addressed
3358
            lastNonRipplePvId = rsRMQry("PV_ID")
3359
            If not (IsNull(Request("CB_FILTER_TRAVERSE_RIPPLES")) OR (Request("CB_FILTER_TRAVERSE_RIPPLES") = "")) Then
3360
               if ((rsRMQry("BUILD_TYPE") = "Y") and (rsRMQry("DLOCKED") = "Y")) Then
3361
                  If (IsNull(Request("FRripdate")) OR (Request("FRripdate") = "")) Then
3362
                     lastNonRipplePvId = getLastNonRippleVersionPVID(rsRMQry("PV_ID"))
3363
                  Else
3364
                     lastNonRipplePvId = getLastNonRippleVersionPVIDLimitedByDate(rsRMQry("PV_ID"), Request("FRripdate"))
3365
                  End If
3366
                  If IsNull(lastNonRipplePvId) or (lastNonRipplePvId = "") Then
3367
                     lastNonRipplePvId = rsRMQry("PV_ID")
3368
                  End If
3369
               End If
3370
            End If
3371
 
3372
            issueCnt = Get_Package_Issues (lastNonRipplePvId, SQLstr, NULL, NULL, cqFilterStr )
3373
            if (issueCnt > 0) _
3374
            or not(IsNull(Request("CB_FILTER_WITHOUT_ISSUES")) OR (Request("CB_FILTER_WITHOUT_ISSUES") = "")) Then
3375
 
3376
               NumPkgsListed = NumPkgsListed + 1
3377
 
3378
               %>
3379
               <tr>
3380
                  <td background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
3381
                  <td background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
3382
                  <td background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
3383
                  <td background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
3384
                  <td background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
3385
               </tr>
3386
               <%
3387
 
3388
               NewTextFile.Write(DoubleQuotes(rsRMQry("PKG_NAME")) & ",")
3389
               NewTextFile.Write(DoubleQuotes(rsRMQry("PKG_LABEL")) & ",")
3390
               NewTextFile.Write(DoubleQuotes(rsRMQry("STATE")) & ",")
3391
               %>
3392
               <tr>
3393
               <td valign="top"><a href="fixed_issues.asp?rtag_id=<%=NNrtag_id%>&pv_id=<%=rsRMQRy("PV_ID")%>" class="txt_linked"><%=rsRMQry("PKG_NAME")%></a></td>
3394
               <td valign="top"><%=rsRMQry("PKG_LABEL")%></td>
3395
               <td valign="top"><%=rsRMQry("STATE")%></td>
3396
               <%
3397
 
3398
               ' Complete the row immediately if this package version has no issues, else process the issues.
3399
               if issueCnt = 0 Then
3400
                  NewTextFile.WriteLine(",")
3401
                  %>
3402
                  <td><img src="images/spacer.gif" width="1" height="1"></td>
3403
                  <td><img src="images/spacer.gif" width="1" height="1"></td>
3404
                  </tr>
3405
                  <%
3406
                  isRowOpen = 0
3407
               Else
3408
                  ' Query the CLEARQUEST database
3409
                  retVal = Get_CQ_Issues ( SQLstr, rsCQQry )
3410
                  If retVal = 0 Then
3411
                     While ((NOT rsCQQry.BOF) AND (NOT rsCQQry.EOF))
3412
                        Dim issueNumber
3413
                        issueNumber = rsCQQry("ISS_NUM") & GetRMIssueState (lastNonRipplePvId, rsCQQry("ISS_ID"))
3414
 
3415
                        ' Keep dictionary of issue IDs to human readable issue numbers, plus other info we will need later on for the report
3416
                        If not dict_Iss_Id_to_Iss_Num.Exists(CStr(rsCQQry("ISS_ID"))) Then
3417
                           sdAdd dict_Iss_Id_to_Iss_Num,      rsCQQry("ISS_ID"), issueNumber
3418
                           sdAdd dict_Iss_Id_to_Iss_DB,       rsCQQry("ISS_ID"), rsCQQry("ISS_DB")
3419
                           sdAdd dict_Iss_Id_to_Risk,         rsCQQry("ISS_ID"), rsCQQry("RISK")
3420
                           sdAdd dict_Iss_Id_to_Summary,      rsCQQry("ISS_ID"), rsCQQry("SUMMARY")
3421
                           sdAdd dict_Iss_Id_to_CodeRev,      rsCQQry("ISS_ID"), rsCQQry("CR_REF")
3422
                           sdAdd dict_Iss_Id_to_IntNotes,     rsCQQry("ISS_ID"), rsCQQry("INT_NOTES")
3423
                           sdAdd dict_Iss_Id_to_RelDBPatches, rsCQQry("ISS_ID"), rsCQQry("DB_PATCHES")
3424
                           sdAdd dict_Iss_Id_to_Iss_Type,     rsCQQry("ISS_ID"), rsCQQry("ISSUE_TYPE")
3425
                           sdAdd dict_Iss_Id_to_Iss_Status,   rsCQQry("ISS_ID"), rsCQQry("STATUS")
3426
                           sdAdd dict_Iss_Id_to_Aff_Pkg,      rsCQQry("ISS_ID"), rsCQQry("AFFECTED_PACKAGES")
3427
                        End If
3428
 
3429
                        ' Keep dictionary of issue IDs to release manager package names (latter is a comma separated list)
3430
                        If dict_Iss_Id_to_Pkg.Exists(CStr(rsCQQry("ISS_ID"))) Then
3431
                           dict_Iss_Id_to_Pkg.Item(CStr(rsCQQry("ISS_ID"))) = dict_Iss_Id_to_Pkg.Item(CStr(rsCQQry("ISS_ID"))) & "," & CStr(rsRMQry("PKG_NAME")) & " " & CStr(rsRMQry("PKG_VERSION"))
3432
                        Else
3433
                           sdAdd dict_Iss_Id_to_Pkg, rsCQQry("ISS_ID"), rsRMQry("PKG_NAME") & " " & CStr(rsRMQry("PKG_VERSION"))
3434
                        End If
3435
 
3436
                        ' Keep dictionary of issue IDs to release manager package version IDs (latter is a comma separated list)
3437
                        If dict_Iss_Id_to_PvId.Exists(CStr(rsCQQry("ISS_ID"))) Then
3438
                           dict_Iss_Id_to_PvId.Item(CStr(rsCQQry("ISS_ID"))) = dict_Iss_Id_to_PvId.Item(CStr(rsCQQry("ISS_ID"))) & "," & CStr(rsRMQry("PV_ID"))
3439
                        Else
3440
                           sdAdd dict_Iss_Id_to_PvId, rsCQQry("ISS_ID"), rsRMQry("PV_ID")
3441
                        End If
3442
 
3443
                        ' Begin new row if needed
3444
                        if isRowOpen = 0 Then
3445
                           isRowOpen = 1
3446
                           %><tr><%
3447
                        End If
3448
 
3449
                        ' If first row, no need to pad since those columns have already been filled in outer loop
3450
                        If isFirstDeviRow = 1 Then
3451
                           isFirstDeviRow = 0
3452
                           NewTextFile.Write(DoubleQuotes(issueNumber) & ",")
3453
                           NewTextFile.WriteLine(DoubleQuotes(rsCQQry("SUMMARY")))
3454
                           %>
3455
                           <td valign="top"><a class="txt_linked"  href="#<%=rsCQQry("ISS_ID")%>"><%=issueNumber%></a></td>
3456
                           <td valign="top"><%=rsCQQry("SUMMARY")%></td>
3457
                           <%
3458
                        Else
3459
                           NewTextFile.Write(",,," & DoubleQuotes(issueNumber) & ",")
3460
                           NewTextFile.WriteLine(DoubleQuotes(rsCQQry("SUMMARY")))
3461
                           %>
3462
                           <td valign="top"><img src="images/spacer.gif" width="1" height="1"></td>
3463
                           <td valign="top"><img src="images/spacer.gif" width="1" height="1"></td>
3464
                           <td valign="top"><img src="images/spacer.gif" width="1" height="1"></td>
3465
                           <td valign="top"><a class="txt_linked" href="#<%=rsCQQry("ISS_ID")%>"><%=issueNumber%></a></td>
3466
                           <td valign="top"><%=rsCQQry("SUMMARY")%></td>
3467
                           <%
3468
                        End If
3469
 
3470
                        ' End this row
3471
                        isRowOpen = 0
3472
                        %></tr><%
3473
                        rsCQQry.MoveNext
3474
                     Wend  ' end of loop processing each issue
3475
                     rsCQQry.Close
3476
                  Else
3477
                     NewTextFile.WriteLine("," & DoubleQuotes("ERROR - could not get issue details from CLEARQUEST"))
3478
                     %>
3479
                     <td><img src="images/spacer.gif" width="1" height="1"></td>
3480
                     <td>ERROR - could not get issue details from CLEARQUEST</td>
3481
                     <%
3482
                  End If
3483
 
3484
                  ' Complete the row if needed
3485
                  if isRowOpen = 1 Then
3486
                     if (isFirstDeviRow = 1) Then
3487
                        NewTextFile.WriteLine(",")
3488
                        %>
3489
                        <td><img src="images/spacer.gif" width="1" height="1"></td>
3490
                        <td><img src="images/spacer.gif" width="1" height="1"></td>
3491
                        <%
3492
                     End If
3493
                     isRowOpen = 0
3494
                     %></tr><%
3495
                  End If
3496
               End If
3497
            End If
3498
            rsRMQry.MoveNext
3499
         Wend  ' End of loop processing each package version
3500
         set rsCQQry = nothing
3501
         %>
3502
         <tr>
3503
            <td background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
3504
            <td background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
3505
            <td background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
3506
            <td background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
3507
            <td background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
3508
         </tr>
3509
      </table>
3510
 
3511
      <%
3512
      NewTextFile.WriteLine("")
3513
      NewTextFile.WriteLine("DEVI Details List")
3514
      NewTextFile.WriteLine("")
3515
      NewTextFile.WriteLine("""Issue Number"",""Property"",""Details""")
3516
      %>
3517
 
3518
      <H5><a name="C2">DEVI Details List</a></H5>
3519
      <table width="100%" border="0" cellspacing="0" cellpadding="1">
3520
         <tr>
3521
            <td width="10%" nowrap class="body_colb">Issue Number&nbsp;&nbsp;&nbsp;</td>
3522
            <td width="20%" nowrap class="body_colb">Property&nbsp;&nbsp;&nbsp;</td>
3523
            <td width="70%" nowrap class="body_colb">Details&nbsp;&nbsp;&nbsp;</td>
3524
         </tr>
3525
         <tr>
3526
            <td background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
3527
            <td background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
3528
            <td background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
3529
         </tr>
3530
         <%
3531
         For i = 0 To (dict_Iss_Id_to_Iss_Num.Count - 1)
3532
 
3533
            cqIssId = sdKey(dict_Iss_Id_to_Iss_Num, i)
3534
 
3535
            NumIssuesListed = NumIssuesListed + 1
3536
            %>
3537
            <tr>
3538
               <td background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
3539
               <td background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
3540
               <td background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
3541
            </tr>
3542
            <%
3543
            '-------------------------------------------------------------------------------------------------------------------------------
3544
            ' First line is the DEVI Number, and its summary info
3545
            s = sdItem(dict_Iss_Id_to_Summary,i)   ' Prepare for CSV
3546
            s = Replace(s,"""","""""")
3547
            NewTextFile.WriteLine(DoubleQuotes(sdItem(dict_Iss_Id_to_Iss_Num,i)) & ",Issue Summary," & DoubleQuotes(s))
3548
            s = sdItem(dict_Iss_Id_to_Summary,i)   ' Prepare for HTML
3549
            s = NewLine_To_BR(To_HTML(s))
3550
            %>
3551
            <tr>
5590 dpurdie 3552
            <td valign="top"><a name="<%=cqIssId%>" class="txt_linked vixIframeDialog" href="_wform_issues_details.asp?iss_db=<%=sdItem(dict_Iss_Id_to_Iss_DB,i)%>&iss_id=<%=sdKey(dict_Iss_Id_to_Iss_Num,i)%>"><%=sdItem(dict_Iss_Id_to_Iss_Num,i)%></a></td>
159 ghuddy 3553
            <td valign="top">Issue Summary:</td>
3554
            <td valign="top"><%=s%></td>
3555
            </tr><%
3556
            '-------------------------------------------------------------------------------------------------------------------------------
3557
            ' Next line is the DEVI Type Value (ie Defect, Future Enhancement, etc)
3558
            NewTextFile.WriteLine(",Type," & DoubleQuotes(sdItem(dict_Iss_Id_to_Iss_Type,i)))
3559
            %>
3560
            <tr>
3561
            <td valign="top"><img src="images/spacer.gif" width="1" height="1"></td>
3562
            <td valign="top">Type:</td>
3563
            <td valign="top"><%=sdItem(dict_Iss_Id_to_Iss_Type, i)%></td>
3564
            </tr>
3565
            <%
3566
            '-------------------------------------------------------------------------------------------------------------------------------
3567
            ' Next line is the DEVI Status Value
3568
            NewTextFile.WriteLine(",Status," & DoubleQuotes(sdItem(dict_Iss_Id_to_Iss_Status,i)))
3569
            %>
3570
            <tr>
3571
            <td valign="top"><img src="images/spacer.gif" width="1" height="1"></td>
3572
            <td valign="top">Status:</td>
3573
            <td valign="top"><%=sdItem(dict_Iss_Id_to_Iss_Status, i)%></td>
3574
            </tr>
3575
            <%
3576
            '-------------------------------------------------------------------------------------------------------------------------------
3577
            ' Next line is the DEVI Risk Value
3578
            NewTextFile.WriteLine(",Risk," & DoubleQuotes(sdItem(dict_Iss_Id_to_Risk,i)))
3579
            %>
3580
            <tr>
3581
            <td valign="top"><img src="images/spacer.gif" width="1" height="1"></td>
3582
            <td valign="top">Risk:</td>
3583
            <td valign="top"><%=sdItem(dict_Iss_Id_to_Risk, i)%></td>
3584
            </tr>
3585
            <%
3586
            '-------------------------------------------------------------------------------------------------------------------------------
3587
            ' Next line is the DEVI's code review reference
3588
            a = dict_Iss_Id_to_CodeRev.Items  ' Get collection into an array
3589
            s = a(i)                          ' Get array element into a string
3590
            s = Replace(s, chr(13), "+")      ' Replace possible delimiters with a single delimiter ("+")
3591
            s = Replace(s, chr(10), "+")
3592
            s = Replace(s, " ", "+")
3593
            crRefArr = Split(s,"+")           ' Split on our contrived delimiter and iterate through results
3594
 
3595
            NewTextFile.Write(",Code Review Ref,""")
3596
            %>
3597
            <tr>
3598
            <td valign="top"><img src="images/spacer.gif" width="1" height="1"></td>
3599
            <td valign="top">Code Review Ref:</td>
3600
            <td valign="top">
3601
            <%
3602
            For j = 0 To UBOUND(crRefArr)
3603
               if not ((crRefArr(j) = "+") or (crRefArr(j) = ",") or (Trim(crRefArr(j)) = "")) Then
3604
                  if j = 0 Then
3605
                     NewTextFile.Write(Trim(crRefArr(j)))
3606
                     %>
3607
                     <a href="<%=Trim(crRefArr(j))%>" class="txt_linked"><%=Trim(crRefArr(j))%></a>
3608
                     <%
3609
                  Else
3610
                     NewTextFile.Write("," & Trim(crRefArr(j)))
3611
                     %>
3612
                     <a href="<%=Trim(crRefArr(j))%>" class="txt_linked"><br><%=Trim(crRefArr(j))%></a>
3613
                     <%
3614
                  End If
3615
               End If
3616
            Next
3617
            NewTextFile.WriteLine("""")
3618
            %>
3619
            </td>
3620
            </tr>
3621
            <%
3622
 
3623
            '-------------------------------------------------------------------------------------------------------------------------------
3624
            ' Next line is the DEVI's related DB Patches
3625
            '  This is quite complicated but at the end of the day, we are aiming to convert the free form text in
3626
            '  the CLEARQUEST devi into a list of hyperlinks to the actual package versions in RM, based on the assumption
3627
            '  that the free form text contains PV_ID numbers somewhere therein.
3628
            a = dict_Iss_Id_to_RelDBPatches.Items  ' Get collection into an array
3629
            s = a(i)                               ' Get array element into a string
3630
            s = Replace(s, chr(13), "+")           ' Replace possible delimiters with a single delimiter ("+")
3631
            s = Replace(s, chr(10), "+")
3632
            s = Replace(s, " ", "+")
3633
            relDbPatchArr = Split(s,"+")           ' Split on our contrived delimiter and iterate through results
3634
 
3635
            NewTextFile.Write(",Related DB Patches,""")
3636
            %>
3637
            <tr>
3638
            <td valign="top"><img src="images/spacer.gif" width="1" height="1"></td>
3639
            <td valign="top">Related DB Patches:</td>
3640
            <td valign="top">
3641
            <%
3642
            For j = 0 To UBOUND(relDbPatchArr)
3643
               if not ((relDbPatchArr(j) = "+") or (relDbPatchArr(j) = ",") or (Trim(relDbPatchArr(j)) = "")) Then
3644
                  ' Given that the Related DB Patches is a free form text field in a CLEARQUEST DEVI,
3645
                  ' it can contain a variety of text. Normally it contains a list of PV_ID's but it
3646
                  ' can also contain the patch file names (eg. orahops.467229_patch.xml) which normally
3647
                  ' contains PV_IDs embedded within them. We have to cater for both approaches and
3648
                  ' somehow extract those PV_IDs. We have already split the string so we know we are
3649
                  ' now dealing with a single item, but sometimes users name their packages or files with
3650
                  ' numbers as well as letters. The code below looks for the longest numeric sequence
3651
                  ' and assumes that is the PV_ID
3652
                  Dim lenMax,lenThis,objMatch
3653
                  lenMax  = 0
3654
                  lenThis = 0
3655
 
3656
                  sDisplay = Trim(relDbPatchArr(j))   'default
3657
 
3658
                  ' search for numeric sequences in the string
3659
                  reObj.IgnoreCase = True
3660
                  reObj.Global = True
3661
                  reObj.Pattern = "[0-9]+"
3662
                  set reObjMatch = reObj.Execute(Trim(relDbPatchArr(j)))
3663
                  If reObjMatch.Count > 0 Then
3664
                     ' Look for the longest numeric sequence
3665
                     for each objMatch in reObjMatch
3666
                        lenThis = objMatch.Length
3667
                        If lenThis > lenMax Then
3668
                           lenMax = lenThis
3669
                           sDisplay = objMatch  'sDisplay is now a numeric sequence
3670
                        End If
3671
                     next
3672
                     if (lenMax > 0) Then
3673
                        ' Form the display string as "PV_ID (package-name package-version)"
3674
                        If GetPkgNameAndVersion(sDisplay, s) Then
3675
                           sDisplay = sDisplay & " (" & s & ")"
3676
                        Else
3677
                           ' Couldn't get the package name/version from RM so it is likely this number
3678
                           ' is not a true/real PV_ID so revert to the simpler display format we began with
3679
                           ' as a default.
3680
                           sDisplay = Trim(relDbPatchArr(j))   'reset to full string
3681
                           lenMax = 0                          'zero to force simpler display format in HTML
3682
                        End If
3683
                     End If
3684
                  End If
3685
 
3686
                  if j = 0 Then
3687
                     NewTextFile.Write(Trim(sDisplay))
3688
                     If (lenMax = 0) Then
3689
                        %><%=Trim(relDbPatchArr(j))%><%
3690
                     Else
3691
                        %><a href="dependencies.asp?pv_id=<%=Trim(relDbPatchArr(j))%>" class="txt_linked"><%=sDisplay%></a><%
3692
                     End If
3693
                  Else
3694
                     NewTextFile.Write("," & Trim(sDisplay))
3695
                     If (lenMax = 0) Then
3696
                        %><%=Trim(relDbPatchArr(j))%><%
3697
                     Else
3698
                        %><a href="dependencies.asp?pv_id=<%=Trim(relDbPatchArr(j))%>" class="txt_linked"><br><%=sDisplay%></a><%
3699
                     End If
3700
                  End If
3701
               End If
3702
            Next
3703
            NewTextFile.WriteLine("""")
3704
            %>
3705
            </td>
3706
            </tr>
3707
            <%
3708
            '-------------------------------------------------------------------------------------------------------------------------------
3709
            ' Next line is the DEVI's affected packages field
3710
            s = sdItem(dict_Iss_Id_to_Aff_Pkg,i)   ' Prepare for CSV
3711
            s = Replace(s,"""","""""")
3712
            NewTextFile.WriteLine(",Affected Packages," & DoubleQuotes(s))
3713
            s = sdItem(dict_Iss_Id_to_Aff_Pkg,i)   ' Prepare for HTML
3714
            s = NewLine_To_BR(To_HTML(s))
3715
            %>
3716
            <tr>
3717
            <td valign="top"><img src="images/spacer.gif" width="1" height="1"></td>
3718
            <td valign="top">Affected Packages:</td>
3719
            <td valign="top"><%=s %></td>
3720
            </tr>
3721
            <%
3722
            '-------------------------------------------------------------------------------------------------------------------------------
3723
            ' Next line(s) is/are the packages this DEVI is assigned to, in release manager
3724
            pkgArr = dict_Iss_Id_to_Pkg.Items
3725
            pkgCsv = pkgArr(i)
3726
            pkgArr = Split(pkgCsv, ",")
3727
 
3728
            pvIdArr = dict_Iss_Id_to_PvId.Items
3729
            pvIdCsv = pvIdArr(i)
3730
            pvIdArr = Split(pvIdCsv, ",")
3731
 
3732
            NewTextFile.Write(",RM Assigned Packages,""")
3733
            %>
3734
            <tr>
3735
            <td valign="top"><img src="images/spacer.gif" width="1" height="1"></td>
3736
            <td valign="top">RM Assigned Packages:</td>
3737
            <td valign="top">
3738
            <%
3739
            For j = 0 To UBOUND(pkgArr)
3740
               If j = 0 Then
3741
                  NewTextFile.Write(pkgArr(j))
3742
                  %><a href="fixed_issues.asp?rtag_id=<%=NNrtag_id%>&pv_id=<%=pvIdArr(j)%>" class="txt_linked"><%=pkgArr(j)%></a><%
3743
               Else
3744
                  NewTextFile.Write("," & pkgArr(j))
3745
                  %><a href="fixed_issues.asp?rtag_id=<%=NNrtag_id%>&pv_id=<%=pvIdArr(j)%>" class="txt_linked"><br><%=pkgArr(j)%></a><%
3746
               End If
3747
            Next
3748
            NewTextFile.WriteLine("""")
3749
            %>
3750
            </td>
3751
            </tr>
3752
            <%
3753
            '-------------------------------------------------------------------------------------------------------------------------------
3754
            ' Next line is the DEVI's integration notes
3755
            s = sdItem(dict_Iss_Id_to_IntNotes, i) 'Prepare for CSV
3756
            s = Replace(s,"""","""""")
3757
            NewTextFile.WriteLine(",Integration Notes," & DoubleQuotes(s))
3758
 
3759
            s = sdItem(dict_Iss_Id_to_IntNotes, i) ' Prepare for HTML
3760
            s = NewLine_To_BR(To_HTML(s))
3761
            %>
3762
            <tr>
3763
            <td valign="top"><img src="images/spacer.gif" width="1" height="1"></td>
3764
            <td valign="top">Integration Notes:</td>
3765
            <td valign="top"><%=s %>
3766
            </td>
3767
            </tr>
3768
            <%
3769
         Next
3770
         %>
3771
         <tr>
3772
            <td background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
3773
            <td background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
3774
            <td background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
3775
         </tr>
3776
      </table>
3777
      <H5><a name="C3">Statistics</a></H5>
5632 dpurdie 3778
      Report&nbsp;generated on&nbsp;<%=DisplayDate(Date)%>&nbsp;at&nbsp;<%=Time%><BR>
159 ghuddy 3779
      <%=NumPkgsListed %>&nbsp;Package(s)&nbsp;Listed<BR>
3780
      <%=NumIssuesListed  %>&nbsp;Issue(s)&nbsp;Listed<BR>
3781
      <!-- PRINT, SAVE, ETC. ------------>
3782
      <%If parPrint = "" Then%>
3783
         <br>
3784
         <br>
3785
         <a href="javascript:;" onClick="window.print();" class="txt_linked"><img src="images/btn_print.gif" width="23" height="24" hspace="4" border="0" align="absmiddle">Print this report</a><br>
3786
         <br>
3787
      <%End If%>
3788
      <%
3789
      ' Clean up
3790
      rsRMQry.Close
3791
      set rsRMQry = nothing
3792
      set dict_Iss_Id_to_Iss_Num      = nothing
3793
      set dict_Iss_Id_to_Iss_DB       = nothing
3794
      set dict_Iss_Id_to_Pkg          = nothing
3795
      set dict_Iss_Id_to_Risk         = nothing
3796
      set dict_Iss_Id_to_Summary      = nothing
3797
      set dict_Iss_Id_to_CodeRev      = nothing
3798
      set dict_Iss_Id_to_IntNotes     = nothing
3799
      set dict_Iss_Id_to_RelDBPatches = nothing
3800
      set dict_Iss_Id_to_PvId         = nothing
3801
      set dict_Iss_Id_to_Iss_Status   = nothing
3802
      set dict_Iss_Id_to_Iss_Type     = nothing
3803
      set dict_Iss_Id_to_Aff_Pkg      = nothing
3804
      set reObj                       = nothing
3805
 
3806
      NewTextFile.Close
3807
      Set NewTextFile=Nothing
3808
 
3809
      ' EMAIL CSV report if user has requested it
3810
      If emailReport Then
3959 dpurdie 3811
         Dim LocalPath
159 ghuddy 3812
         LocalPath = Server.MapPath("docs\ReleaseDEVIStatus_"&objAccessControl.UserName&".csv")
3959 dpurdie 3813
 
3814
         Send_Email   "Release Manager Notification",_
5357 dpurdie 3815
                       ADMIN_EMAIL, _
3959 dpurdie 3816
                       objAccessControl.UserEmail,_
3817
                       "Release DEVI Status Report (csv) from Release Manager", _
3818
                       "Your requested report...",_
3819
                       LocalPath
159 ghuddy 3820
      End If
3821
   End If
3822
End Sub
3823
%>
5685 dpurdie 3824
<%
3825
'==================================================================================
3826
' Report Name      :   Find Files within a Package
3827
' Description      :   Locate all files in all versions of the package
3828
' Form Input       :   Package Name, File Name ( Wild cards allowed )
3829
'==================================================================================
3830
Sub Find_Package_File ( SSsection, SSpkg_name, SSfile_name )
3831
   Dim Query_String, rsRep
3832
 
3833
 
3834
   If SSsection = "TITLE" Then
3835
      Response.write "Find Files within a Package"
3836
      Exit Sub
3837
   End If
3838
 
3839
 
3840
   If SSsection = "FORM" Then
3841
      %>
3842
      <table width="100%" border="0" cellpadding="2" cellspacing="1">
3843
         <form action="<%=scriptName%>" method="post" name="repform" onSubmit="MM_validateForm('FRpkg_name','Package Name','R', 'FRfile_name','File Name','R');return document.MM_returnValue">
3844
            <tr>
3845
               <td width="1%" nowrap class="form_field"><img src="images/spacer.gif" width="1" height="8"></td>
3846
               <td width="1%" align="right" nowrap class="form_field" valign="top">Package Name</td>
3847
               <td class="form_txt"><input type="text" name="FRpkg_name" size="30" class="form_item" value="<%=SSpkg_name%>"><br>
3848
               HINTS:<br>
3849
               - You can use * wildcard. e.g. *0123 or 0123* or *0123*<br><br></td>
3850
            </tr>
3851
            <tr>
3852
               <td nowrap class="form_field">&nbsp;</td>
3853
               <td align="right" nowrap class="form_field" valign="top">File Name</td>
3854
               <td class="form_txt"><input type="text" name="FRfile_name" size="10" class="form_item" value="<%=SSv_ext%>"><br>
3855
               You can use Wildcards</td>
3856
            </tr>
3857
            <tr>
3858
               <td nowrap class="form_field">&nbsp;</td>
3859
               <td align="right" nowrap class="form_field">&nbsp;</td>
3860
               <td><br>
3861
                  <input type="hidden" name="group" value="<%=parGroup%>">
3862
                  <input type="hidden" name="repnum" value="<%=parRepNum%>">
3863
                  <input type="hidden" name="action" value="true">
3864
                  <input name="Submit" type="submit" class="form_btn" value="Submit">
3865
               </td>
3866
            </tr>
3867
         </form>
3868
      </table>
3869
      <%   Exit Sub
3870
   End If
3871
 
3872
 
3873
   If SSsection = "BODY" Then
3874
      Const img_Official = "<img src='images/i_locked.gif' width='7' height='10' hspace='3' align='absmiddle'>"
3875
      If NOT CBool(Request("action")) Then Exit Sub
3876
 
3877
      If SSpkg_name = "" Then SSpkg_name = "%"
3878
      If SSv_ext = "" Then SSv_ext = "%"
3879
 
3880
      Query_String = ReadFile( rootPath & "queries\rep_package_version_history.sql" )
3881
      Query_String = Replace ( Query_String, "/*PKG_NAME*/", Replace( SQLstring(SSpkg_name), "*", "%") )
3882
      Query_String = Replace ( Query_String, "/*V_EXT*/", Replace( SQLstring(SSv_ext), "*", "%") )
3883
      %>
3884
      <table width="100%" border="0" cellspacing="0" cellpadding="2">
3885
         <tr>
3886
            <td width="1%" nowrap class="body_colb" align="right">Official<%=img_Official%></td>
3887
            <td width="1%" nowrap class="body_colb">Package Name and Version&nbsp;&nbsp;&nbsp;</td>
3888
            <td width="1%" nowrap class="body_colb">Location</td>
3889
            <td width="100%" nowrap class="body_colb">&nbsp;</td>
3890
         </tr>
3891
         <tr>
3892
            <td colspan="4" background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
3893
         </tr>
3894
         <%
3895
         Dim currPv_id
3896
         currPv_id = -1
3897
         Set rsRep = OraDatabase.DbCreateDynaset( Query_String, 0 )
3898
 
3899
         If rsRep.RecordCount = 0 Then
3900
            With Response
3901
               .write "<tr>"
3902
               .write "<td colspan='4' class='body_row'>Found 0 records</td>"
3903
               .write "</tr>"
3904
            End With
3905
         End If
3906
 
3907
         While ((NOT rsRep.BOF) AND (NOT rsRep.EOF))
3908
            ' -------- GROUP BY Package Version -----------------
3909
            If Cstr(currPv_id) <> Cstr(rsRep("pv_id")) Then
3910
            %>
3911
               <tr>
3912
               <td colspan="3" background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
3913
               <td></td>
3914
               </tr>
3915
            <tr>
3916
               <td align="right"><%If rsRep("dlocked") = "Y" Then%><%=img_Official%><%End If%></td>
3917
               <td nowrap class="body_scol"><%=rsRep("pkg_name") &" "& rsRep("pkg_version")%></td>
3918
               <td colspan='2' class="body_scol"></td>
3919
               </tr>
3920
            <%
3921
               currPv_id = Cstr(rsRep("pv_id"))
3922
            End If
3923
            ' -------- END GROUP ------------------------
3924
            %>
3925
               <tr>
3926
               <td class="body_row"></td>
3927
               <td class="body_row"></td>
3928
               <%If IsNull(rsRep("rtag_id")) Then%>
3929
                  <td nowrap class="body_txt_gray" valign="top">Not Used!</td>
3930
               <%Else%>
3931
                  <td nowrap class="body_row" valign="top"><%=rsRep("proj_name") &" &gt; "& rsRep("vtree_name") &" &gt; "& rsRep("rtag_name") &" &gt; <a href='dependencies.asp?pv_id="& rsRep("pv_id") &"&rtag_id="& rsRep("rtag_id") &"' class='txt_linked'>"& rsRep("pkg_name") &" "& rsRep("pkg_version") &"</a>"%></td>
3932
               <%End If%>
3933
               <td class="body_row"></td>
3934
               </tr>
3935
         <%  rsRep.MoveNext
3936
         WEnd
3937
         %>
3938
         <tr>
3939
            <td colspan="4" background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
3940
         </tr>
3941
      </table>
3942
      <!-- PRINT, SAVE, ETC. ------------>
3943
      <%If parPrint = "" Then%>
3944
         <br>
3945
         <br>
3946
         <a href="javascript:;" onClick="window.print();" class="txt_linked"><img src="images/btn_print.gif" width="23" height="24" hspace="4" border="0" align="absmiddle">Print this report</a><br>
3947
         <br>
3948
      <%End If%>
3949
      <!-- PRINT, SAVE, ETC. END -------->
3950
      <%
3951
      rsRep.Close
3952
      Set rsRep = nothing
3953
   End If
3954
 
3955
End Sub
3956
%>
3957
 
3958
<%
3959
'==================================================================================
3960
' Report Name      :   Find Files within a Package
3961
' Description      :   Locate all files in all versions of the package
3962
' Form Input       :   Package Name, File Name ( Wild cards allowed )
3963
'==================================================================================
3964
Sub Find_Package_File ( SSsection, SSpkg_name, SSfile_name )
3965
   Dim Query_String, rsRep
3966
 
3967
 
3968
   If SSsection = "TITLE" Then
3969
      Response.write "Find Files within a Package"
3970
      Exit Sub
3971
   End If
3972
 
3973
 
3974
   If SSsection = "FORM" Then
3975
      %>
3976
      <table width="100%" border="0" cellpadding="2" cellspacing="1">
3977
         <form action="<%=scriptName%>" method="post" name="repform" onSubmit="MM_validateForm('FRpkg_name','Package Name','R', 'FRfile_name','File Name','R');return document.MM_returnValue">
3978
            <tr>
3979
               <td width="1%" nowrap class="form_field"><img src="images/spacer.gif" width="1" height="8"></td>
3980
               <td width="1%" align="right" nowrap class="form_field" valign="top">Package Name</td>
3981
               <td class="form_txt"><input type="text" name="FRpkg_name" size="30" class="form_item" value="<%=SSpkg_name%>"><br>
3982
               HINTS:<br>
3983
               - You can use * wildcard. e.g. *0123 or 0123* or *0123*<br><br></td>
3984
            </tr>
3985
            <tr>
3986
               <td nowrap class="form_field">&nbsp;</td>
3987
               <td align="right" nowrap class="form_field" valign="top">File Name</td>
3988
               <td class="form_txt"><input type="text" name="FRfile_name" size="10" class="form_item" value="<%=SSfile_name%>"><br>
3989
               You can use Wildcards</td>
3990
            </tr>
3991
            <tr>
3992
               <td nowrap class="form_field">&nbsp;</td>
3993
               <td align="right" nowrap class="form_field">&nbsp;</td>
3994
               <td><br>
3995
                  <input type="hidden" name="group" value="<%=parGroup%>">
3996
                  <input type="hidden" name="repnum" value="<%=parRepNum%>">
3997
                  <input type="hidden" name="action" value="true">
3998
                  <input name="Submit" type="submit" class="form_btn" value="Submit">
3999
               </td>
4000
            </tr>
4001
         </form>
4002
      </table>
4003
      <%   Exit Sub
4004
   End If
4005
 
4006
 
4007
   If SSsection = "BODY" Then
4008
      Const img_Official = "<img src='images/i_locked.gif' width='7' height='10' hspace='3' align='absmiddle'>"
4009
      If NOT CBool(Request("action")) Then Exit Sub
4010
 
4011
      If SSpkg_name = "" Then SSpkg_name = "%"
4012
      If SSfile_name = "" Then SSfile_name = "%"
4013
 
4014
      Query_String = ReadFile( rootPath & "queries\rep_package_version_history.sql" )
4015
      Query_String = Replace ( Query_String, "/*PKG_NAME*/", Replace( SQLstring(SSpkg_name), "*", "%") )
4016
      Query_String = Replace ( Query_String, "/*V_EXT*/", Replace( SQLstring(SSfile_name), "*", "%") )
4017
      %>
4018
      <table width="100%" border="0" cellspacing="0" cellpadding="2">
4019
         <tr>
4020
            <td width="1%" nowrap class="body_colb" align="right">Official<%=img_Official%></td>
4021
            <td width="1%" nowrap class="body_colb">Package Name and Version&nbsp;&nbsp;&nbsp;</td>
4022
            <td width="1%" nowrap class="body_colb">Location</td>
4023
            <td width="100%" nowrap class="body_colb">&nbsp;</td>
4024
         </tr>
4025
         <tr>
4026
            <td colspan="4" background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
4027
         </tr>
4028
         <%
4029
         Dim currPv_id
4030
         currPv_id = -1
4031
         Set rsRep = OraDatabase.DbCreateDynaset( Query_String, 0 )
4032
 
4033
         If rsRep.RecordCount = 0 Then
4034
            With Response
4035
               .write "<tr>"
4036
               .write "<td colspan='4' class='body_row'>Found 0 records</td>"
4037
               .write "</tr>"
4038
            End With
4039
         End If
4040
 
4041
         While ((NOT rsRep.BOF) AND (NOT rsRep.EOF))
4042
            ' -------- GROUP BY Package Version -----------------
4043
            If Cstr(currPv_id) <> Cstr(rsRep("pv_id")) Then
4044
            %>
4045
               <tr>
4046
               <td colspan="3" background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
4047
               <td></td>
4048
               </tr>
4049
            <tr>
4050
               <td align="right"><%If rsRep("dlocked") = "Y" Then%><%=img_Official%><%End If%></td>
4051
               <td nowrap class="body_scol"><%=rsRep("pkg_name") &" "& rsRep("pkg_version")%></td>
4052
               <td colspan='2' class="body_scol"></td>
4053
               </tr>
4054
            <%
4055
               currPv_id = Cstr(rsRep("pv_id"))
4056
            End If
4057
            ' -------- END GROUP ------------------------
4058
            %>
4059
               <tr>
4060
               <td class="body_row"></td>
4061
               <td class="body_row"></td>
4062
               <%If IsNull(rsRep("rtag_id")) Then%>
4063
                  <td nowrap class="body_txt_gray" valign="top">Not Used!</td>
4064
               <%Else%>
4065
                  <td nowrap class="body_row" valign="top"><%=rsRep("proj_name") &" &gt; "& rsRep("vtree_name") &" &gt; "& rsRep("rtag_name") &" &gt; <a href='dependencies.asp?pv_id="& rsRep("pv_id") &"&rtag_id="& rsRep("rtag_id") &"' class='txt_linked'>"& rsRep("pkg_name") &" "& rsRep("pkg_version") &"</a>"%></td>
4066
               <%End If%>
4067
               <td class="body_row"></td>
4068
               </tr>
4069
         <%  rsRep.MoveNext
4070
         WEnd
4071
         %>
4072
         <tr>
4073
            <td colspan="4" background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
4074
         </tr>
4075
      </table>
4076
      <!-- PRINT, SAVE, ETC. ------------>
4077
      <%If parPrint = "" Then%>
4078
         <br>
4079
         <br>
4080
         <a href="javascript:;" onClick="window.print();" class="txt_linked"><img src="images/btn_print.gif" width="23" height="24" hspace="4" border="0" align="absmiddle">Print this report</a><br>
4081
         <br>
4082
      <%End If%>
4083
      <!-- PRINT, SAVE, ETC. END -------->
4084
      <%
4085
      rsRep.Close
4086
      Set rsRep = nothing
4087
   End If
4088
 
4089
End Sub
4090
%>
4091
 
4092
<%
4093
'==================================================================================
4094
' Report Name      :   Find Files within a Package
4095
' Description      :   Locate all files in all versions of the package
4096
' Form Input       :   Package Name, File Name ( Wild cards allowed )
4097
'==================================================================================
4098
Sub Find_Package_File ( SSsection, SSpkg_name, SSfile_name )
4099
   Dim Query_String, rsRep
4100
 
4101
 
4102
   If SSsection = "TITLE" Then
4103
      Response.write "Find Files within a Package"
4104
      Exit Sub
4105
   End If
4106
 
4107
 
4108
   If SSsection = "FORM" Then
4109
      %>
4110
      <table width="100%" border="0" cellpadding="2" cellspacing="1">
4111
         <form action="<%=scriptName%>" method="post" name="repform" onSubmit="MM_validateForm('FRpkg_name','Package Name','R', 'FRfile_name','File Name','R');return document.MM_returnValue">
4112
            <tr>
4113
               <td width="1%" nowrap class="form_field"><img src="images/spacer.gif" width="1" height="8"></td>
4114
               <td width="1%" align="right" nowrap class="form_field" valign="top">Package Name</td>
4115
               <td class="form_txt"><input type="text" name="FRpkg_name" size="30" class="form_item" value="<%=SSpkg_name%>"><br>
4116
               You can use * wildcard. e.g. *0123 or 0123* or *0123*<br><br></td>
4117
            </tr>
4118
            <tr>
4119
               <td nowrap class="form_field">&nbsp;</td>
4120
               <td align="right" nowrap class="form_field" valign="top">Path Name</td>
4121
               <td class="form_txt"><input type="text" name="FRfile_name" size="10" class="form_item" value="<%=SSfile_name%>"><br>
4122
               You should use * wildcards. e.g.  /lib/*.a</td>
4123
            </tr>
4124
            <tr>
4125
               <td nowrap class="form_field">&nbsp;</td>
4126
               <td align="right" nowrap class="form_field">&nbsp;</td>
4127
               <td><br>
4128
                  <input type="hidden" name="group" value="<%=parGroup%>">
4129
                  <input type="hidden" name="repnum" value="<%=parRepNum%>">
4130
                  <input type="hidden" name="action" value="true">
4131
                  <input name="Submit" type="submit" class="form_btn" value="Submit">
4132
               </td>
4133
            </tr>
4134
         </form>
4135
      </table>
4136
      <%   Exit Sub
4137
   End If
4138
 
4139
 
4140
   If SSsection = "BODY" Then
4141
      If NOT CBool(Request("action")) Then Exit Sub
4142
 
4143
      If SSpkg_name = "" Then SSpkg_name = "%"
4144
      If SSfile_name = "" Then SSfile_name = "%"
4145
 
4146
      Query_String = ReadFile( rootPath & "queries\rep_package_file_find.sql" )
4147
      Query_String = Replace ( Query_String, "/*PKG_NAME*/", Replace( SQLstring(SSpkg_name), "*", "%") )
4148
      Query_String = Replace ( Query_String, "/*FILE_NAME*/", Replace( SQLstring(SSfile_name), "*", "%") )
4149
      %>
4150
      <table width="100%" border="0" cellspacing="0" cellpadding="2">
4151
         <tr>
4152
            <td width="1%" nowrap class="body_colb">Package Name and Version&nbsp;&nbsp;&nbsp;</td>
4153
            <td width="1%" nowrap class="body_colb">Location</td>
4154
            <td width="100%" nowrap class="body_colb">&nbsp;</td>
4155
         </tr>
4156
         <tr>
4157
            <td colspan="3" background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
4158
         </tr>
4159
         <%
4160
         Dim currPv_id
4161
         currPv_id = -1
4162
         Set rsRep = OraDatabase.DbCreateDynaset( Query_String, 0 )
4163
 
4164
         If rsRep.RecordCount = 0 Then
4165
            With Response
4166
               .write "<tr>"
4167
               .write "<td colspan='3' class='body_row'>Found 0 records</td>"
4168
               .write "</tr>"
4169
            End With
4170
         End If
4171
 
4172
         While ((NOT rsRep.BOF) AND (NOT rsRep.EOF))
4173
            ' -------- GROUP BY Package Version -----------------
4174
            If Cstr(currPv_id) <> Cstr(rsRep("pv_id")) Then
4175
            %>
4176
               <tr>
4177
               <td colspan="3" background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
4178
               <td></td>
4179
               </tr>
4180
            <tr>
4181
               <td nowrap class="body_row" valign="top"><a href="dependencies.asp?pv_id=<%=rsRep("pv_id")%>" class="txt_linked"><%=rsRep("pkg_name") &" "& rsRep("pkg_version")%></a></td>
4182
               <td colspan="2" class="body_scol"></td>
4183
               </tr>
4184
            <%
4185
               currPv_id = Cstr(rsRep("pv_id"))
4186
            End If
4187
            ' -------- END GROUP ------------------------
4188
            %>
4189
               <tr>
4190
               <td class="body_row"></td>
4191
                  <td nowrap class="body_row" valign="top"><%=rsRep("filename")%></td>
4192
               <td class="body_row"></td>
4193
               </tr>
4194
         <%  rsRep.MoveNext
4195
         WEnd
4196
         %>
4197
         <tr>
4198
            <td colspan="4" background="images/bg_rep_line.gif"><img src="images/spacer.gif" width="1" height="1"></td>
4199
         </tr>
4200
      </table>
4201
      <!-- PRINT, SAVE, ETC. ------------>
4202
      <%If parPrint = "" Then%>
4203
         <br>
4204
         <br>
4205
         <a href="javascript:;" onClick="window.print();" class="txt_linked"><img src="images/btn_print.gif" width="23" height="24" hspace="4" border="0" align="absmiddle">Print this report</a><br>
4206
         <br>
4207
      <%End If%>
4208
      <!-- PRINT, SAVE, ETC. END -------->
4209
      <%
4210
      rsRep.Close
4211
      Set rsRep = nothing
4212
   End If
4213
 
4214
End Sub
4215
%>
4216
 
4217