Subversion Repositories DevTools

Rev

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

Rev Author Line No. Line
29 jtweddle 1
<?xml version="1.0" ?>
2
<package>
3
	<comment>
4
	PrimalCode wizard generated file.
5
	</comment>
6
	<job id="GenerateXMLNodeDefinitons" args="/bom_id:2864" prompt="no">
7
		<?job error="false" debug="false" ?>
8
		<runtime>
9
			<named helpstring="Bom ID" name="bom_id" required="false" type="string"/>
10
		</runtime>
11
		<object id="Oracle_Objects_For_OLE" progid="OracleInProcServer.XOraServer" events="true"/>
12
		<script language="VBScript" src="common_subs.vbs"/>
13
		<script language="VBScript" src="config.vbs"/>
14
		<script id="GenerateXMLNodeDefnitions" language="VBScript">
15
<![CDATA[
16
Option Explicit
17
'=====================================================
18
'        Name: 	GetComponents
19
' Description:	Connects to dpkg_archive and gets the
20
' 				content of folders and files of certain
21
' 				package. It then stores this info into 
22
'				Release Manager database. This info can
23
' 				later be included in release notes Or
24
' 				searched with search engine.
25
' 		INPUT:  pkg_name
26
'				pkg_version
27
'=====================================================
28
 
29
'== Variable Definition ==============================
30
Dim BomId
31
Dim objArgs
32
'== Constants Declaration ============================
33
'== Variable Init ====================================
34
'=====================================================
35
 
36
 
37
'-----------------------------------------------------------------------------------------------------------------
38
Sub GenerateXMLNodeDefinitionsWindows ( nBomId )
39
	Dim rsQry, aNetworkNodes, XMLNode, DateString
40
	Dim lastRow, row
41
 
42
	' Remove existing stuff
43
	Call DeleteFile( APP_ROOT &"downloads\*" )
44
 
45
 
46
	OraDatabase.Parameters.Add "BOM_ID", nBomId, ORAPARM_INPUT, ORATYPE_NUMBER 
47
 
48
	Set rsQry = OraDatabase.DbCreateDynaset( GetQuery ("NetworkNodes.sql"), ORADYN_DEFAULT )
49
 
50
	OraDatabase.Parameters.Remove "BOM_ID"
51
 
52
	If rsQry.RecordCount > 0 Then
53
		aNetworkNodes = rsQry.GetRows()
54
 
55
	End If
56
 
57
	lastRow = UBound( aNetworkNodes, 2 )
58
	DateString = DateReversed( Date )
59
 
60
	For row = 0 To lastRow
61
 
62
		XMLNode = Null
63
 
64
		XMLNode = XMLNode &_
65
		"	<BomHeader>"& vbNewLine &_
66
		"		<release_ident></release_ident>"& vbNewLine &_
67
  		"		<bom_name>"& aNetworkNodes( 1, row ) &" Windows</bom_name>"& vbNewLine &_
68
	  	"		<bom_type>system</bom_type>"& vbNewLine &_
69
	  	"		<bom_id>"& nBomId &"</bom_id>"& vbNewLine &_
70
	  	"		<bom_version>"& aNetworkNodes( 2, row ) &"."& aNetworkNodes( 3, row ) &"</bom_version>"& vbNewLine &_
71
	  	"		<bom_date>"& DateString &"</bom_date>"& vbNewLine &_
72
	  	"		<bom_status>REG</bom_status>"& vbNewLine &_
73
	  	"		<bom_status_date>"& DateString &"</bom_status_date>"& vbNewLine &_
74
		"	</BomHeader>"& vbNewLine 
75
 
76
 
77
		'-- Get Node Base Configurations Details For Windows OS --
78
		XMLNode = XMLNode & GetNodeBaseConfigDetailsWindows ( nBomId, aNetworkNodes( 0, row ) ) & vbNewLine 
79
 
80
 
81
		'-- Get Node Product Details For Windows OS --
82
		XMLNode = XMLNode & GetNodeDetailsWindows ( nBomId, aNetworkNodes( 0, row ) ) & vbNewLine 
83
 
84
 
85
		' Close xml node tag before saving
86
		XMLNode = _
87
		"<BomDistribution>"& vbNewLine &_
88
		XMLNode &"</BomDistribution>"& vbNewLine
89
 
90
		'WScript.Echo XMLNode
91
 
92
		If GetNodeBaseConfigDetailsWindows ( nBomId, aNetworkNodes( 0, row ) ) <> "" OR GetNodeDetailsWindows ( nBomId, aNetworkNodes( 0, row ) ) <> "" Then
93
			' Save to a file
94
			Call SaveFileToProductionManager( rsQry("version"), rsQry("branch_name"), "E:\wwwTRD\manager_suite_DEVELOPMENT\production_manager\XMLBOMS",  FormatFileName( aNetworkNodes( 1, row ) ) &"_Windows.xml", XMLNode )
95
		End If	
96
 
97
	Next
98
 
99
 
100
 
101
 
102
 
103
End Sub
104
'-----------------------------------------------------------------------------------------------------------------
105
Sub GenerateXMLNodeDefinitionsSunOS ( nBomId )
106
	Dim rsQry, aNetworkNodes, XMLNode, DateString
107
	Dim lastRow, row
108
 
109
	' Remove existing stuff
110
	Call DeleteFile( APP_ROOT &"downloads\*" )
111
 
112
 
113
	OraDatabase.Parameters.Add "BOM_ID", nBomId, ORAPARM_INPUT, ORATYPE_NUMBER 
114
 
115
	Set rsQry = OraDatabase.DbCreateDynaset( GetQuery ("NetworkNodes.sql"), ORADYN_DEFAULT )
116
 
117
	OraDatabase.Parameters.Remove "BOM_ID"
118
 
119
	If rsQry.RecordCount > 0 Then
120
		aNetworkNodes = rsQry.GetRows()
121
 
122
	End If
123
 
124
	lastRow = UBound( aNetworkNodes, 2 )
125
	DateString = DateReversed( Date )
126
 
127
	For row = 0 To lastRow
128
 
129
		XMLNode = Null
130
 
131
		XMLNode = XMLNode &_
132
		"	<BomHeader>"& vbNewLine &_
133
		"		<release_ident></release_ident>"& vbNewLine &_
134
  		"		<bom_name>"& aNetworkNodes( 1, row ) &" SunOS</bom_name>"& vbNewLine &_
135
	  	"		<bom_type>system</bom_type>"& vbNewLine &_
136
		"		<bom_id>"& nBomId &"</bom_id>"& vbNewLine &_
137
	  	"		<bom_version>"& aNetworkNodes( 2, row ) &"."& aNetworkNodes( 3, row ) &"</bom_version>"& vbNewLine &_
138
	  	"		<bom_date>"& DateString &"</bom_date>"& vbNewLine &_
139
	  	"		<bom_status>REG</bom_status>"& vbNewLine &_
140
	  	"		<bom_status_date>"& DateString &"</bom_status_date>"& vbNewLine &_
141
		"	</BomHeader>"& vbNewLine 
142
 
143
 
144
		'-- Get Node Base Configurations Details For Sun OS --
145
		XMLNode = XMLNode & GetNodeBaseConfigDetailsSunOS ( nBomId, aNetworkNodes( 0, row ) ) & vbNewLine 
146
 
147
 
148
		'-- Get Node Product Details For Sun OS --
149
		XMLNode = XMLNode & GetNodeDetailsSunOS ( nBomId, aNetworkNodes( 0, row ) ) & vbNewLine 
150
 
151
 
152
		' Close xml node tag before saving
153
		XMLNode = _
154
		"<BomDistribution>"& vbNewLine &_
155
		XMLNode &"</BomDistribution>"& vbNewLine
156
 
157
		'WScript.Echo XMLNode
158
 
159
		If GetNodeBaseConfigDetailsSunOS ( nBomId, aNetworkNodes( 0, row ) ) <> "" OR GetNodeDetailsSunOS ( nBomId, aNetworkNodes( 0, row ) ) <> "" Then		
160
			' Save to a file
161
			Call SaveFileToProductionManager( rsQry("version"), rsQry("branch_name"), "E:\wwwTRD\manager_suite_DEVELOPMENT\production_manager\XMLBOMS",  FormatFileName( aNetworkNodes( 1, row ) ) &"_SunOS.xml", XMLNode )
162
		End If
163
 
164
	Next
165
 
166
 
167
 
168
 
169
 
170
End Sub
171
'-----------------------------------------------------------------------------------------------------------------
172
 
173
Function FormatFileName ( sFileName )
174
	Dim sReturn
175
 
176
	sReturn = Replace ( sFileName, "/", "" ) 	
177
	sReturn = Replace ( sReturn, "\", "" ) 	
178
	sReturn = Replace ( sReturn, "&", "And" ) 	
179
	sReturn = Replace ( sReturn, " ", "_" ) 	
180
 
181
	FormatFileName = sReturn
182
 
183
End Function
184
'-----------------------------------------------------------------------------------------------------------------
185
Function GetNodeBaseConfigDetailsWindows ( nBomId, nNodeId )
186
	Dim rsQry, XMLPackageString, pkgName, pkgReleaseType, osType
187
 
188
	OraDatabase.Parameters.Add "BOM_ID", nBomId, ORAPARM_INPUT, ORATYPE_NUMBER 
189
	OraDatabase.Parameters.Add "NODE_ID", nNodeId, ORAPARM_INPUT, ORATYPE_NUMBER 
190
 
191
	Set rsQry = OraDatabase.DbCreateDynaset( GetQuery ("NodeBaseConfigsWindows.sql"), ORADYN_DEFAULT )
192
 
193
	OraDatabase.Parameters.Remove "BOM_ID"
194
	OraDatabase.Parameters.Remove "NODE_ID"
195
 
196
 
197
	While (NOT rsQry.BOF) AND (NOT rsQry.EOF)
198
 
199
		If rsQry("is_patch") <> "" Then
200
			If rsQry("patch_electronic_name") <> "" Then
201
				pkgName = rsQry("patch_electronic_name")
202
			Else
203
				pkgName = rsQry("pkg_name")
204
			End If
205
		Else
206
			If rsQry("win_electronic_name") <> "" Then
207
				pkgName = rsQry("win_electronic_name")
208
			Else
209
				pkgName = rsQry("pkg_name")
210
			End If
211
		End If
212
 
213
		If rsQry("is_patch") = "Y" Then
214
			pkgReleaseType = "PT"
215
		Else
216
			pkgReleaseType = "FR"
217
		End If
218
 
219
		If rsQry("os_name") <> "" Then
220
			osType = rsQry("os_name")
221
		Else
222
			osType = rsQry("bos_type")
223
		End If
224
 
225
 
226
		XMLPackageString = XMLPackageString &_
227
		"	<PackageRecord>"& vbNewLine &_
228
		"		<pkg_name>"& pkgName &"</pkg_name>"& vbNewLine &_
229
  		"		<pkg_version>"& rsQry("pkg_version") &"</pkg_version>"& vbNewLine &_
230
  		"		<pkg_date>2003-03-01</pkg_date>"& vbNewLine &_
231
  		"		<pkg_status>REG</pkg_status>"& vbNewLine &_
232
  		"		<pkg_status_date>"& DateReversed( CDate( rsQry("modified_stamp") ) ) &"</pkg_status_date>"& vbNewLine &_
233
  		"		<pkg_target></pkg_target>"& vbNewLine &_
234
    	"		<pkg_platform_list>"& vbNewLine &_
235
        "			<platform_record>"& osType &"</platform_record>"& vbNewLine &_
236
        "		</pkg_platform_list>"& vbNewLine &_ 
237
  		"		<pkg_release_type>"& pkgReleaseType &"</pkg_release_type>"& vbNewLine &_
238
		"	</PackageRecord>"& vbNewLine
239
 
240
 
241
		rsQry.MoveNext()
242
	Wend	
243
 
244
	rsQry.Close()
245
	Set rsQry = Nothing
246
 
247
	' Return string
248
	GetNodeBaseConfigDetailsWindows = XMLPackageString	
249
 
250
End Function
251
'-----------------------------------------------------------------------------------------------------------------
252
Function GetNodeBaseConfigDetailsSunOS ( nBomId, nNodeId )
253
	Dim rsQry, XMLPackageString, pkgName, pkgReleaseType, osType
254
 
255
	OraDatabase.Parameters.Add "BOM_ID", nBomId, ORAPARM_INPUT, ORATYPE_NUMBER 
256
	OraDatabase.Parameters.Add "NODE_ID", nNodeId, ORAPARM_INPUT, ORATYPE_NUMBER 
257
 
258
	Set rsQry = OraDatabase.DbCreateDynaset( GetQuery ("NodeBaseConfigsSunOS.sql"), ORADYN_DEFAULT )
259
 
260
	OraDatabase.Parameters.Remove "BOM_ID"
261
	OraDatabase.Parameters.Remove "NODE_ID"
262
 
263
 
264
	While (NOT rsQry.BOF) AND (NOT rsQry.EOF)
265
 
266
 
267
 
268
		If rsQry("is_patch") <> "" Then
269
			If rsQry("patch_electronic_name") <> "" Then
270
				pkgName = rsQry("patch_electronic_name")
271
			Else
272
				pkgName = rsQry("pkg_name")
273
			End If
274
		Else
275
 
276
			If rsQry("sunos_electronic_name") <> "" Then
277
				pkgName = rsQry("sunos_electronic_name")
278
			Else
279
				pkgName = rsQry("pkg_name")
280
			End If
281
		End If
282
 
283
		If rsQry("is_patch") = "Y" Then
284
			pkgReleaseType = "PT"
285
		Else
286
			pkgReleaseType = "FR"
287
		End If
288
 
289
		If rsQry("os_name") <> "" Then
290
			osType = rsQry("os_name")
291
		Else
292
			osType = rsQry("bos_type")
293
		End If
294
 
295
 
296
		XMLPackageString = XMLPackageString &_
297
		"	<PackageRecord>"& vbNewLine &_
298
		"		<pkg_name>"& pkgName &"</pkg_name>"& vbNewLine &_
299
  		"		<pkg_version>"& rsQry("pkg_version") &"</pkg_version>"& vbNewLine &_
300
  		"		<pkg_date>2003-03-01</pkg_date>"& vbNewLine &_
301
  		"		<pkg_status>REG</pkg_status>"& vbNewLine &_
302
  		"		<pkg_status_date>"& DateReversed( CDate( rsQry("modified_stamp") ) ) &"</pkg_status_date>"& vbNewLine &_
303
  		"		<pkg_target></pkg_target>"& vbNewLine &_
304
    	"		<pkg_platform_list>"& vbNewLine &_
305
        "			<platform_record>"& osType &"</platform_record>"& vbNewLine &_
306
        "		</pkg_platform_list>"& vbNewLine &_ 
307
  		"		<pkg_release_type>"& pkgReleaseType &"</pkg_release_type>"& vbNewLine &_
308
		"	</PackageRecord>"& vbNewLine
309
 
310
 
311
		rsQry.MoveNext()
312
	Wend	
313
 
314
	rsQry.Close()
315
	Set rsQry = Nothing
316
 
317
	' Return string
318
	GetNodeBaseConfigDetailsSunOS = XMLPackageString	
319
 
320
End Function
321
'-----------------------------------------------------------------------------------------------------------------
322
Function GetNodeDetailsWindows ( nBomId, nNodeId )
323
	Dim rsQry, XMLPackageString, pkgName, pkgReleaseType, osType
324
 
325
	OraDatabase.Parameters.Add "BOM_ID", nBomId, ORAPARM_INPUT, ORATYPE_NUMBER 
326
	OraDatabase.Parameters.Add "NODE_ID", nNodeId, ORAPARM_INPUT, ORATYPE_NUMBER 
327
 
328
	Set rsQry = OraDatabase.DbCreateDynaset( GetQuery ("NodeProductsWindows.sql"), ORADYN_DEFAULT )
329
 
330
	OraDatabase.Parameters.Remove "BOM_ID"
331
	OraDatabase.Parameters.Remove "NODE_ID"
332
 
333
 
334
	While (NOT rsQry.BOF) AND (NOT rsQry.EOF)
335
 
336
		If rsQry("is_patch") <> "" Then
337
			If rsQry("patch_electronic_name") <> "" Then
338
				pkgName = rsQry("patch_electronic_name")
339
			Else
340
				pkgName = rsQry("pkg_name")
341
			End If
342
		Else
343
 
344
			If rsQry("win_electronic_name") <> "" Then
345
				pkgName = rsQry("win_electronic_name")
346
			Else
347
				pkgName = rsQry("pkg_name")
348
			End If
349
		End If
350
 
351
 
352
		If rsQry("is_patch") = "Y" Then
353
			pkgReleaseType = "PT"
354
		Else
355
			pkgReleaseType = "FR"
356
		End If
357
 
358
		If rsQry("os_name") <> "" Then
359
			osType = rsQry("os_name")
360
		Else
361
			osType = rsQry("bos_type")
362
		End If
363
 
364
 
365
		XMLPackageString = XMLPackageString &_
366
		"	<PackageRecord>"& vbNewLine &_
367
		"		<pkg_name>"& pkgName &"</pkg_name>"& vbNewLine &_
368
  		"		<pkg_version>"& rsQry("pkg_version") &"</pkg_version>"& vbNewLine &_
369
  		"		<pkg_date>2003-03-01</pkg_date>"& vbNewLine &_
370
  		"		<pkg_status>REG</pkg_status>"& vbNewLine &_
371
  		"		<pkg_status_date>"& DateReversed( CDate( rsQry("modified_stamp") ) ) &"</pkg_status_date>"& vbNewLine &_
372
  		"		<pkg_target></pkg_target>"& vbNewLine &_
373
    	"		<pkg_platform_list>"& vbNewLine &_
374
        "			<platform_record>"& osType &"</platform_record>"& vbNewLine &_
375
        "		</pkg_platform_list>"& vbNewLine &_ 
376
  		"		<pkg_release_type>"& pkgReleaseType &"</pkg_release_type>"& vbNewLine &_
377
		"	</PackageRecord>"& vbNewLine
378
 
379
 
380
		rsQry.MoveNext()
381
	Wend	
382
 
383
	rsQry.Close()
384
	Set rsQry = Nothing
385
 
386
	' Return string
387
	GetNodeDetailsWindows = XMLPackageString	
388
 
389
End Function
390
'-----------------------------------------------------------------------------------------------------------------
391
Function GetNodeDetailsSunOS ( nBomId, nNodeId )
392
	Dim rsQry, XMLPackageString, pkgName, pkgReleaseType, osType
393
 
394
	OraDatabase.Parameters.Add "BOM_ID", nBomId, ORAPARM_INPUT, ORATYPE_NUMBER 
395
	OraDatabase.Parameters.Add "NODE_ID", nNodeId, ORAPARM_INPUT, ORATYPE_NUMBER 
396
 
397
	Set rsQry = OraDatabase.DbCreateDynaset( GetQuery ("NodeProductsSunOS.sql"), ORADYN_DEFAULT )
398
 
399
	OraDatabase.Parameters.Remove "BOM_ID"
400
	OraDatabase.Parameters.Remove "NODE_ID"
401
 
402
 
403
	While (NOT rsQry.BOF) AND (NOT rsQry.EOF)
404
 
405
		If rsQry("is_patch") <> "" Then
406
			If rsQry("patch_electronic_name") <> "" Then
407
				pkgName = rsQry("patch_electronic_name")
408
			Else
409
				pkgName = rsQry("pkg_name")
410
			End If
411
		Else
412
			If rsQry("sunos_electronic_name") <> "" Then
413
				pkgName = rsQry("sunos_electronic_name")
414
			Else
415
				pkgName = rsQry("pkg_name")
416
			End If
417
		End If
418
 
419
 
420
		If rsQry("is_patch") = "Y" Then
421
			pkgReleaseType = "PT"
422
		Else
423
			pkgReleaseType = "FR"
424
		End If
425
 
426
		If rsQry("os_name") <> "" Then
427
			osType = rsQry("os_name")
428
		Else
429
			osType = rsQry("bos_type")
430
		End If
431
 
432
 
433
		XMLPackageString = XMLPackageString &_
434
		"	<PackageRecord>"& vbNewLine &_
435
		"		<pkg_name>"& pkgName &"</pkg_name>"& vbNewLine &_
436
  		"		<pkg_version>"& rsQry("pkg_version") &"</pkg_version>"& vbNewLine &_
437
  		"		<pkg_date>2003-03-01</pkg_date>"& vbNewLine &_
438
  		"		<pkg_status>REG</pkg_status>"& vbNewLine &_
439
  		"		<pkg_status_date>"& DateReversed( CDate( rsQry("modified_stamp") ) ) &"</pkg_status_date>"& vbNewLine &_
440
  		"		<pkg_target></pkg_target>"& vbNewLine &_
441
    	"		<pkg_platform_list>"& vbNewLine &_
442
        "			<platform_record>"& osType &"</platform_record>"& vbNewLine &_
443
        "		</pkg_platform_list>"& vbNewLine &_ 
444
  		"		<pkg_release_type>"& pkgReleaseType &"</pkg_release_type>"& vbNewLine &_
445
		"	</PackageRecord>"& vbNewLine
446
 
447
 
448
		rsQry.MoveNext()
449
	Wend	
450
 
451
	rsQry.Close()
452
	Set rsQry = Nothing
453
 
454
	' Return string
455
	GetNodeDetailsSunOS = XMLPackageString	
456
 
457
End Function
458
'-----------------------------------------------------------------------------------------------------------------
459
 
460
 
461
 
462
'=================================== MAIN LINE ======================================
463
WScript.Echo "==================== job:GenerateXMLNodeDefenitions ===================="
464
 
465
Set objArgs = WScript.Arguments
466
 
467
If (objArgs.Unnamed.Count > 0) Then
468
	Wscript.Echo "ERROR: Unnamed parameters!"
469
	objArgs.ShowUsage
470
   	WScript.Quit
471
 
472
Else
473
	BomId = objArgs.Named.Item("bom_id")
474
 
475
	If ( BomId <> "" ) Then
476
		'Generation of Node Spec Files for Windows OS. 
477
		Call GenerateXMLNodeDefinitionsWindows( BomId )
478
		'Generation of Node Spec Files for Sun OS.
479
		Call GenerateXMLNodeDefinitionsSunOS( BomId )
480
 
481
   	Else
482
   		objArgs.ShowUsage
483
   		WScript.Quit
484
 
485
   	End If
486
 
487
End If
488
 
489
 
490
WScript.Echo "Job completed successfully!"
491
 
492
'====================================================================================
493
 
494
 
495
]]>
496
		</script>
497
	</job>
498
</package>