Subversion Repositories DevTools

Rev

Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
5356 dpurdie 1
<%@LANGUAGE="VBSCRIPT"%>
2
<%
3
'=====================================================
4
'|                                                   |
5
'|			          wSyncProducts                  |
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/_popup_window_common.asp"-->
17
<%
18
'------------ ACCESS CONTROL ------------------
19
%>
20
<!--#include file="_access_control_general.asp"-->
21
<%
22
'------------ VARIABLE DEFINITION -------------
23
Dim rsQry
24
Dim aProducts
25
Dim numOfRows
26
Dim rowNum
27
Dim objFormCollector
28
Dim currPkg_id
29
'------------ CONSTANTS DECLARATION -----------
30
'------------ VARIABLE INIT -------------------
31
parBom_id = Request("bom_id")
32
Set objFormCollector = CreateObject("Scripting.Dictionary")
33
'------------ CONDITIONS ----------------------
34
'----------------------------------------------
35
%>
36
<%
37
'----------------------------------------------------------------------------------------------------------------------------------
38
Sub GetFormDetails ( nBom_id, ByRef outobjDetails )
39
	Dim rsQry, query
40
	OraDatabase.Parameters.Add "BOM_ID", 		nBom_id,		ORAPARM_INPUT, ORATYPE_NUMBER 
41
 
42
	query = _
43
	"  SELECT RTAG_ID_FK "&_
44
	"	FROM BOMS bo"&_
45
	"	  WHERE bo.BOM_ID = :BOM_ID"
46
 
47
	Set rsQry = OraDatabase.DbCreateDynaset( query, ORADYN_DEFAULT )
48
 
49
	query = _
50
	"  SELECT branch_name, branch_id "&_
51
	"	FROM BRANCHES br"&_
52
	"	  WHERE br.branch_id ="&rsQry("rtag_id_fk")
53
 
54
	Set rsQry = OraDatabase.DbCreateDynaset( query, ORADYN_DEFAULT )		
55
 
56
	If (NOT rsQry.BOF) AND (NOT rsQry.EOF) Then
57
		outobjDetails.Item ("branch_id") = rsQry("branch_id")
58
		outobjDetails.Item ("branch_name") = rsQry("branch_name")
59
	End If
60
 
61
 
62
	OraDatabase.Parameters.Remove "BOM_ID"
63
 
64
	rsQry.Close
65
	Set rsQry = Nothing
66
End Sub
67
'----------------------------------------------------------------------------------------------------------------------------------
68
Sub UpdateProducts()
69
	Dim aDiffList, numOfRows, rowNum, OraParameter
70
	Const os_id_column = 2
71
	Const old_prod_id_column = 1
72
 
73
	'/* Get Lates Release Manager */
74
	OraDatabase.Parameters.Add "BOM_ID", parBom_id,		ORAPARM_INPUT, ORATYPE_NUMBER 
75
	OraDatabase.Parameters.Add "RTAG_ID", objFormCollector.Item("rtag_id_fk"),		ORAPARM_INPUT, ORATYPE_NUMBER 
76
 
77
	Set rsQry = OraDatabase.DbCreateDynaset( GetQuery ("CompareBomWithLatestFromRM.sql"), ORADYN_DEFAULT )
78
 
79
 
80
	'-- Get Rows
81
	If rsQry.RecordCount > 0 Then
82
		aDiffList = rsQry.GetRows()
83
 
84
	Else
85
		'-- No differencses with Release Manager, hence exit
86
		OraDatabase.Parameters.Remove "BOM_ID"
87
		OraDatabase.Parameters.Remove "RTAG_ID"
88
		Exit Sub
89
 
90
	End If
91
 
92
 
93
 
94
	'/* Update Versions */
95
	On Error Resume Next
96
 
97
	OraDatabase.Parameters.Add "OLD_PROD_ID", 	0, 	ORAPARM_INPUT, ORATYPE_NUMBER 
98
	OraDatabase.Parameters.Add "NEW_PROD_ID", 	0, 	ORAPARM_INPUT, ORATYPE_NUMBER 
99
	OraDatabase.Parameters.Add "OS_ID", 		0, 	ORAPARM_INPUT, ORATYPE_NUMBER 
100
	OraDatabase.Parameters.Add "USER_ID", 		objAccessControl.UserId, 	ORAPARM_INPUT, ORATYPE_NUMBER 
101
 
102
	Set OraParameter = OraDatabase.Parameters
103
 
104
 
105
 
106
	objEH.TryORA ( OraSession )
107
 
108
	numOfRows = UBound( aDiffList, 2 )
109
 
110
	For rowNum = 0 To numOfRows
111
 
112
		If Request("update_"& aDiffList( os_id_column, rowNum ) &"_"& aDiffList( old_prod_id_column, rowNum ) ) <> "" Then
113
			OraParameter("OLD_PROD_ID").Value = aDiffList( old_prod_id_column, rowNum )
114
			OraParameter("NEW_PROD_ID").Value = Request("update_"& aDiffList( os_id_column, rowNum ) &"_"& aDiffList( old_prod_id_column, rowNum ) )
115
			OraParameter("OS_ID").Value = aDiffList( os_id_column, rowNum )
116
 
117
			OraDatabase.ExecuteSQL "BEGIN   pk_Product.Replace_Product ( :OLD_PROD_ID, :NEW_PROD_ID, :OS_ID, :USER_ID );   END;"
118
		End If
119
 
120
	Next
121
 
122
 
123
	'--- Log Action ---
124
	'objEH.LogAction  _
125
	'objAccessControl.UserId, _
126
	'enumAT_EVENT_COMMENT, _
127
	'"Sub UpdateProducts for OS list="& Request("spos_id_list"), _
128
	'SCRIPT_NAME, _
129
	'"Updated Products with new versions.", _
130
	'OraDatabase
131
 
132
 
133
	objEH.CatchORA ( OraSession )	
134
 
135
	OraDatabase.Parameters.Remove "BOM_ID"
136
	OraDatabase.Parameters.Remove "RTAG_ID"
137
	OraDatabase.Parameters.Remove "OLD_PROD_ID"
138
	OraDatabase.Parameters.Remove "NEW_PROD_ID"
139
	OraDatabase.Parameters.Remove "OS_ID"
140
	OraDatabase.Parameters.Remove "USER_ID"
141
End Sub
142
'----------------------------------------------------------------------------------------------------------------------------------
143
Sub AddPatches()
144
	Dim aDiffList, numOfRows, rowNum, OraParameter
145
	Const os_id_column = 2
146
	Const prod_id_column = 1
147
 
148
	'/* Get Lates Release Manager */
149
	OraDatabase.Parameters.Add "BOM_ID", parBom_id,		ORAPARM_INPUT, ORATYPE_NUMBER 
150
 
151
	Set rsQry = OraDatabase.DbCreateDynaset( GetQuery ("NewPatches.sql"), ORADYN_DEFAULT )
152
 
153
 
154
	'-- Get Rows
155
	If rsQry.RecordCount > 0 Then
156
		aDiffList = rsQry.GetRows()
157
 
158
	Else
159
		'-- No differencses with Release Manager, hence exit
160
		OraDatabase.Parameters.Remove "BOM_ID"
161
		Exit Sub
162
	End If
163
 
164
 
165
 
166
	'/* Update Versions */
167
	On Error Resume Next
168
 
169
	OraDatabase.Parameters.Add "NEW_PROD_ID", 	0, 	ORAPARM_INPUT, ORATYPE_NUMBER 
170
	OraDatabase.Parameters.Add "OS_ID", 		0, 	ORAPARM_INPUT, ORATYPE_NUMBER 
171
	OraDatabase.Parameters.Add "USER_ID", 		objAccessControl.UserId, 	ORAPARM_INPUT, ORATYPE_NUMBER 
172
 
173
	Set OraParameter = OraDatabase.Parameters
174
 
175
 
176
 
177
	objEH.TryORA ( OraSession )
178
 
179
	numOfRows = UBound( aDiffList, 2 )
180
 
181
	For rowNum = 0 To numOfRows
182
 
183
		If Request("add_"& aDiffList( os_id_column, rowNum ) &"_"& aDiffList( prod_id_column, rowNum ) ) <> "" Then
184
			OraParameter("NEW_PROD_ID").Value = Request("add_"& aDiffList( os_id_column, rowNum ) &"_"& aDiffList( prod_id_column, rowNum ) )
185
			OraParameter("OS_ID").Value = aDiffList( os_id_column, rowNum )
186
 
187
			OraDatabase.ExecuteSQL "BEGIN   pk_Product.Add_Product ( :NEW_PROD_ID, :OS_ID, :USER_ID );   END;"
188
		End If
189
 
190
	Next
191
 
192
 
193
	objEH.CatchORA ( OraSession )	
194
 
195
	OraDatabase.Parameters.Remove "BOM_ID"
196
	OraDatabase.Parameters.Remove "NEW_PROD_ID"
197
	OraDatabase.Parameters.Remove "OS_ID"
198
	OraDatabase.Parameters.Remove "USER_ID"
199
End Sub
200
'----------------------------------------------------------------------------------------------------------------------------------
201
%>
202
<%
203
'------------ RUN BEFORE PAGE RENDER ----------
204
Call GetFormDetails ( parBom_id, objFormCollector )
205
 
206
If Request("action") <> "" Then	
207
	' --- Form is Valid ---
208
	Call UpdateProducts()
209
 
210
	Call AddPatches()
211
 
212
	If objEH.Finally Then
213
		Call OpenInParentWindow ( Request("rfile") &"?UPDATED=OK"& objPMod.ComposeURLWithout("rfile") )
214
		Call CloseWindow()
215
	End If
216
End If
217
 
218
'----------------------------------------------
219
%>
220
 
221
 
222
<html>
223
<head>
224
<SCRIPT LANGUAGE="JavaScript">
225
<!-- Begin
226
var checkflag = "false";
227
function check(field) {
228
if (checkflag == "false") {
229
  for (i = 0; i < field.length; i++) {
230
  field[i].checked = true;}
231
  checkflag = "true";
232
  return "Uncheck all"; }
233
else {
234
  for (i = 0; i < field.length; i++) {
235
  field[i].checked = false; }
236
  checkflag = "false";
237
  return "Check all"; }
238
}
239
//  End -->
240
</script>
241
 
242
 
243
<title>Deployment Manager</title>
244
<link rel="shortcut icon" href="<%=FavIcon%>"/>
245
<meta HTTP-EQUIV="Pragma" CONTENT="no-cache">
246
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
247
<link href="scripts/deployment_manager.css" rel="stylesheet" type="text/css">
248
<script language="JavaScript" src="scripts/common.js"></script>
249
<style type="text/css">
250
<!--
251
.style8 {font-size: 12px}
252
-->
253
</style>
254
</head>
255
 
256
<body background="images/bg_bage_0.gif" leftmargin="0" topmargin="0" onLoad="self.focus();">
257
<table width="100%"  border="0" cellspacing="0" cellpadding="10">
258
  <tr>
259
    <td bgcolor="#FFFFFF" class="body_txt"><span class="body_h1"><img src="icons/i_linkarrow_black.gif" width="11" height="11" align="absmiddle">&nbsp;Add Patches </span> <br>
260
    Add Patches, selecting the approved ones from "Production Manager".
261
    </td>
262
  </tr>	
263
<%
264
'-- FROM START --------------------------------------------------------------------------------------------------------------
265
objFormComponent.FormName = "FormName"
266
objFormComponent.Action = SCRIPT_NAME
267
objFormComponent.OnSubmit = "ShowProgress();"
268
Call objFormComponent.FormStart()
269
%>    
270
  <tr>
271
    <td background="images/bg_login.gif"><table width="100%"  border="0" cellspacing="0" cellpadding="0">
272
      <tr>
273
        <td><%=ProgressBar()%>
274
          <input name="btn" type="submit" class="form_btn" value="Add">
275
          <input name="btn" type="reset" class="form_btn" value="Cancel" onClick="self.close();"></td>
276
        <td align="left">&nbsp;        </td>
277
      </tr>
278
    </table></td>
279
  </tr>
280
  <tr>
281
    <td>
282
<!-- PRODUCT NAME RESULTS ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -->		
283
	<table width="100%"  border="0" cellspacing="10" cellpadding="0">
284
      <tr>
285
        <td width="100%" valign="top" nowrap class="body_txt">
286
		  <!-- MESSAGE +++++++++++++++++++++++++++++++++++++++++++++++++++ -->	
287
		  <!--#include file="messages/_msg_inline.asp"-->
288
		  <!-- +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -->
289
		  <%
290
		  If objFormCollector.Item("branch_id") = "" Then
291
			Call Messenger ( "This BOM does not have Release Manager Reference release.<br>Please edit BOM properties first.<br>", 1, "100%" )
292
		  End If
293
		  %>
294
		  <!-- ADD PATCHES +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -->
295
		  Select Patches and click Add.
296
          <table width="100%"  border="0" cellspacing="3" cellpadding="0">
297
 
298
 
299
 
300
		    <%
301
			OraDatabase.Parameters.Add "BOM_ID", parBom_id,		ORAPARM_INPUT, ORATYPE_NUMBER 
302
			OraDatabase.Parameters.Add "BRANCH_ID", objFormCollector.Item("branch_id"),		ORAPARM_INPUT, ORATYPE_NUMBER 
303
 
304
			Set rsQry = OraDatabase.DbCreateDynaset( GetQuery ("NewPatches.sql"), ORADYN_DEFAULT )
305
			currPkg_id = 0
306
			%>
307
 
308
			<%If rsQry.RecordCount > 0 Then%>
309
		    <tr>
310
			  <td nowrap background="images/bg_bage_0h.gif" class="body_col" align="center">Add</td>
311
              <td align="right" nowrap background="images/bg_bage_0h.gif" class="body_col"><div align="left">Location</div></td>
312
			  <td align="right" nowrap background="images/bg_bage_0h.gif" class="body_col"><div align="left">Version</div></td>
313
              <td align="right" background="images/bg_bage_0h.gif" class="body_col"><div align="left">Comments<img src="images/spacer.gif" width="1" height="18" align="absmiddle"></div>                </td>
314
              </tr>
315
 
316
			<%
317
			While (NOT rsQry.BOF) AND (NOT rsQry.EOF)
318
			%>
319
			<%If currPkg_id <> rsQry("pkg_id") Then%>
320
            <tr>
321
			  <td colspan="2" nowrap><div align="left"><span class="body_row"><img src="icons/i_product.gif" width="19" height="19" hspace="2" align="absmiddle"><%=rsQry("prod_name")%></span></div></td>
322
              <td nowrap class="body_row">&nbsp;</td>
323
              <td nowrap class="body_row"></td>
324
              </tr>
325
			<tr>
326
              <td colspan="4" background="images/bg_table_border.gif"><img src="images/spacer.gif" width="1" height="1"></td>
327
            </tr>
328
			<%currPkg_id = rsQry("pkg_id")%>
329
			<%End If%>
330
			<%
331
			Dim rsForm
332
			Set rsForm = OraDatabase.DbCreateDynaset("SELECT * FROM RELEASE_AUTHORISATION WHERE PV_ID="&rsQry("prod_id")&" AND BOM_ID="&parBom_id, ORADYN_DEFAULT)
333
 
334
			If rsForm("is_official") = "Y" Then%>
335
            <tr>
336
              <td align="center" nowrap><input type="checkbox" name="add_<%=rsQry("os_id") &"_"& rsQry("prod_id")%>" value="<%=rsQry("prod_id")%>"> </td>
337
              <td nowrap class="body_row"><img hspace="2" src="icons/<%=rsQry("node_icon")%>" align="absmiddle" border="0"><%=rsQry("prod_location")%></td>
338
              <td nowrap class="body_row"><img src="icons/i_patch_small.gif" width="16" height="16" border="0" align="absmiddle"><%=rsQry("prod_version")%></td>
339
              <td nowrap class="body_row"><span class="body_row"><%=rsQry("comments")%></span></td>
340
            </tr>
341
 
342
 
343
			<tr>
344
              <td colspan="4" background="images/bg_table_border.gif"><img src="images/spacer.gif" width="1" height="1"></td>
345
            </tr>
346
			<%End If
347
			rsForm.Close()
348
			Set rsForm = Nothing
349
 
350
			%>			
351
 
352
            <%rsQry.MoveNext
353
			Wend
354
			%>
355
 
356
			<%End If%>
357
 
358
			<tr>
359
              <td colspan="4" background="images/bg_table_border.gif"><img src="images/spacer.gif" width="1" height="3"></td>
360
            </tr>
361
          </table>
362
 
363
 
364
		  <%
365
		  OraDatabase.Parameters.Remove "BRANCH_ID"
366
		  OraDatabase.Parameters.Remove "BOM_ID"
367
		  rsQry.Close
368
		  Set rsQry = Nothing
369
		  %>		  </td>
370
        </tr>
371
    </table>
372
	<!-- ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -->
373
    </td>
374
  </tr>
375
  <%=objPMod.ComposeHiddenTags()%>
376
  <input type="hidden" name="action" value="true">
377
<%
378
Call objFormComponent.FormEnd()
379
'-- FROM END ----------------------------------------------------------------------------------------------------------------
380
%>
381
</table>
382
</body>
383
</html>
384
<%
385
'------------ RUN AFTER PAGE RENDER -----------
386
'----------------------------------------------
387
%><!--#include file="common/globals_destructor.asp"-->