Subversion Repositories DevTools

Rev

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

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