Subversion Repositories DevTools

Rev

Go to most recent revision | Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
13 rsolanki 1
<%@LANGUAGE="VBSCRIPT"%>
2
<%
3
'=====================================================
4
'|                                                   |
5
'|			          wAddProd					 	 |
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 objFormCollector
25
Dim sMessage
29 jtweddle 26
Dim aAddPkgList, aFullList, dAddPkgList, PvId
13 rsolanki 27
'------------ CONSTANTS DECLARATION -----------
28
Const LIMG_PRODUCT = "<img src='icons/i_product.gif' width='19' height='19' hspace='2' align='absmiddle'>"
29
Const LIMG_PRODUCT_UNPACKAGED = "<img src='icons/i_product_unpackaged.gif' width='19' height='19' hspace='2' align='absmiddle' title='Product is unofficial'>"
30
Const LIMG_PRODUCT_PATCH = "<img src='icons/i_patch_small.gif' hspace='2' align='absmiddle'>"
31
'------------ VARIABLE INIT -------------------
32
sMessage = NULL
33
parBom_id = Request("bom_id")
34
parOs_id = Request("os_id")
35
Set objFormCollector = CreateObject("Scripting.Dictionary")
29 jtweddle 36
Set dAddPkgList = CreateObject("Scripting.Dictionary")
13 rsolanki 37
'------------ CONDITIONS ----------------------
38
'----------------------------------------------
39
%>
40
<%
41
'--------------------------------------------------------------------------------------------------------------------------
42
Sub GetFormDetails ( nBom_id, ByRef outobjDetails )
43
	Dim rsQry, query
44
	OraDatabase.Parameters.Add "BOM_ID", 		nBom_id,		ORAPARM_INPUT, ORATYPE_NUMBER 
45
 
46
	query = _
47
	"  SELECT bo.RTAG_ID_FK,"&_
48
	"	   rm_proj.PROJ_ID,"&_
49
	"	   rm_proj.PROJ_NAME,"&_
50
	"	   rt.RTAG_NAME"&_
51
	"  FROM BOMS bo,"&_
52
	"	   PROJECTS rm_proj,"&_
53
	"	   RELEASE_TAGS rt"&_
54
	" WHERE rt.PROJ_ID = rm_proj.PROJ_ID"&_
55
	"   AND bo.RTAG_ID_FK = rt.RTAG_ID"&_
56
	"   AND bo.BOM_ID = :BOM_ID"
57
 
58
	Set rsQry = OraDatabase.DbCreateDynaset( query, ORADYN_DEFAULT )
59
	If (NOT rsQry.BOF) AND (NOT rsQry.EOF)Then
60
		outobjDetails.Item ("rtag_id_fk") = rsQry("rtag_id_fk")
61
		outobjDetails.Item ("proj_id") = rsQry("proj_id")
62
		outobjDetails.Item ("proj_name") = rsQry("proj_name")
63
		outobjDetails.Item ("rtag_name") = rsQry("rtag_name")
64
 
65
	End If
66
 
67
 
68
	OraDatabase.Parameters.Remove "BOM_ID"
69
 
70
	rsQry.Close
71
	Set rsQry = Nothing
72
End Sub
73
'--------------------------------------------------------------------------------------------------------------------------
74
Sub AddProdToBaseEnv ()
75
	On Error Resume Next
76
 
77
	OraDatabase.Parameters.Add "PROD_ID_LIST", 	Request("prod_id_list"), 	ORAPARM_INPUT, ORATYPE_VARCHAR2
78
	OraDatabase.Parameters.Add "BASE_ENV_ID", 	Request("base_env_id"),		ORAPARM_INPUT, ORATYPE_NUMBER 
15 rsolanki 79
	OraDatabase.Parameters.Add "OS_ID", 		Request("os_id"), 			ORAPARM_INPUT, ORATYPE_NUMBER 
13 rsolanki 80
	OraDatabase.Parameters.Add "USER_ID", 		objAccessControl.UserId, 	ORAPARM_INPUT, ORATYPE_NUMBER 
29 jtweddle 81
	OraDatabase.Parameters.Add "BOM_ID",		parBom_id,					ORAPARM_INPUT, ORATYPE_NUMBER 
13 rsolanki 82
 
15 rsolanki 83
 
13 rsolanki 84
	objEH.TryORA ( OraSession )
85
 
86
	OraDatabase.ExecuteSQL _
15 rsolanki 87
	"BEGIN   pk_Base_Env.Add_Product ( :PROD_ID_LIST, :BASE_ENV_ID, :OS_ID, :USER_ID );   END;"
13 rsolanki 88
 
89
	objEH.CatchORA ( OraSession )
29 jtweddle 90
 
91
	aFullList = Split ( Replace( Request("prod_id_list"), " ", "" ), "," )
92
 
93
 
94
	' Clean empty parameters
95
	For Each PvId In aFullList
96
		If PvId <> "" Then
97
			dAddPkgList.Add CStr( PvId ), Empty
98
		End If
99
	Next
13 rsolanki 100
 
29 jtweddle 101
	aFullList = NULL
102
	aAddPkgList = dAddPkgList.Keys
103
 
104
	For Each PvId In aAddPkgList
105
		Call PopulateSBOMField(parBom_id, PvId, NULL, NULL )
106
	Next
13 rsolanki 107
 
29 jtweddle 108
 
13 rsolanki 109
	OraDatabase.Parameters.Remove "PROD_ID_LIST"
110
	OraDatabase.Parameters.Remove "BASE_ENV_ID"
15 rsolanki 111
	OraDatabase.Parameters.Remove "OS_ID"
13 rsolanki 112
	OraDatabase.Parameters.Remove "USER_ID"
29 jtweddle 113
	OraDatabase.Parameters.Remove "BOM_ID"
13 rsolanki 114
End Sub
115
'--------------------------------------------------------------------------------------------------------------------------
116
Sub AddProdToOs ()
117
	On Error Resume Next
118
 
119
	OraDatabase.Parameters.Add "PROD_ID_LIST", 	Request("prod_id_list"), 	ORAPARM_INPUT, ORATYPE_VARCHAR2
120
	OraDatabase.Parameters.Add "OS_ID", 		Request("os_id"), 			ORAPARM_INPUT, ORATYPE_NUMBER 
121
	OraDatabase.Parameters.Add "USER_ID", 		objAccessControl.UserId, 	ORAPARM_INPUT, ORATYPE_NUMBER 
29 jtweddle 122
	OraDatabase.Parameters.Add "BOM_ID",		parBom_id,					ORAPARM_INPUT, ORATYPE_NUMBER 
13 rsolanki 123
 
124
	objEH.TryORA ( OraSession )
125
 
126
	OraDatabase.ExecuteSQL _
127
	"BEGIN   pk_Product.Add_Product ( :PROD_ID_LIST, :OS_ID, :USER_ID );   END;"
128
 
129
	objEH.CatchORA ( OraSession )
29 jtweddle 130
 
131
	aFullList = Split ( Replace( Request("prod_id_list"), " ", "" ), "," )
132
 
133
	' Clean empty parameters
134
	For Each PvId In aFullList
135
		If PvId <> "" Then
136
			dAddPkgList.Add CStr( PvId ), Empty
137
		End If
138
	Next
13 rsolanki 139
 
29 jtweddle 140
	aFullList = NULL
141
	aAddPkgList = dAddPkgList.Keys
13 rsolanki 142
 
29 jtweddle 143
	For Each PvId In aAddPkgList
144
		Call PopulateSBOMField(parBom_id, PvId, NULL, NULL )
145
	Next
146
 
147
 
13 rsolanki 148
	OraDatabase.Parameters.Remove "PROD_ID_LIST"
149
	OraDatabase.Parameters.Remove "OS_ID"
150
	OraDatabase.Parameters.Remove "USER_ID"
29 jtweddle 151
	OraDatabase.Parameters.Remove "BOM_ID"
152
 
13 rsolanki 153
End Sub
154
'--------------------------------------------------------------------------------------------------------------------------
155
%>
156
<%
157
'------------ RUN BEFORE PAGE RENDER ----------
158
objPMod.PersistInQryString ( Array("base_env_id") )
159
 
160
If CBool(Request("action")) Then
161
	If Request("prod_id_list") <> "" Then
162
 
163
		'-- Add Product List
164
		If Request("base_env_id") = "" Then
165
			Call AddProdToOs()
166
		Else
167
			Call AddProdToBaseEnv()
168
		End If
169
 
170
		If objEH.Finally Then
171
			Call OpenInParentWindow ( Request("rfile") &"?ADDED=OK"& objPMod.ComposeURLWithout("rfile,base_env_id") )
172
			Call CloseWindow()
173
		End If
174
 
175
	Else
176
		sMessage = "Please select Product(s) from Release Manager list then click Add."
177
 
178
	End If
179
 
180
End If
181
 
182
Call GetFormDetails ( parBom_id, objFormCollector )
183
'----------------------------------------------
184
%>
185
<html>
186
<head>
187
<title>Deployment Manager</title>
188
<meta HTTP-EQUIV="Pragma" CONTENT="no-cache">
189
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
190
<link href="scripts/deployment_manager.css" rel="stylesheet" type="text/css">
191
<script language="JavaScript" src="scripts/common.js"></script>
192
</head>
193
 
194
<body background="images/bg_bage_0.gif" leftmargin="0" topmargin="0" onLoad="self.focus();FormSearch.prod_name.focus();">
195
<table width="100%"  border="0" cellspacing="0" cellpadding="10">
196
  <tr>
197
    <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 Product </span> <br>
198
    Search for Product, Create New Product or select from Release Manager list.
199
      </td>
200
  </tr>
201
 
202
<%
203
'-- FROM START ---------------------------------------------------------------------------------------------------------------
204
objFormComponent.FormName = "FormSearch"
205
objFormComponent.Action = "wAddProdBySearch.asp"
206
Call objFormComponent.FormStart()
207
%>  
208
  <tr>
209
    <td background="images/bg_quicksearch.gif" class="body_txt"><table width="100" border="0" cellspacing="3" cellpadding="0">
210
        <tr>
211
          <td nowrap class="body_txtw"><strong>Product Search</strong> </td>
212
          <td><input name="prod_name" type="text" class="body_txt" size="20"></td>
213
          <td><input name="btn" type="image" src="icons/b_search.gif" width="16" height="16" border="0"></td>
214
        </tr>
215
      </table></td>
216
  </tr>
217
  <%=objPMod.ComposeHiddenTags()%>
218
<%
219
Call objFormComponent.FormEnd()
220
'-- FROM END ----------------------------------------------------------------------------------------------------------------
221
%>
222
 
223
<%
224
'-- FROM START --------------------------------------------------------------------------------------------------------------
225
objFormComponent.FormName = "FormName"
226
objFormComponent.Action = SCRIPT_NAME
227
objFormComponent.OnSubmit = "ShowProgress();"
228
Call objFormComponent.FormStart()
229
%>  
230
  <tr>
231
    <td background="images/bg_login.gif"><table width="100%"  border="0" cellspacing="0" cellpadding="0">
232
      <tr>
233
        <td><%=ProgressBar()%></td>
234
        <td align="right"><input name="btn" type="submit" class="form_btn" value="Add">
235
          <input name="btn" type="reset" class="form_btn" value="Cancel" onClick="self.close();"></td>
236
      </tr>
237
    </table></td>
238
  </tr>
239
  <tr>
240
    <td>
241
<!-- NEW PRODUCT ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -->		
242
	<%Call Messenger ( sMessage , 3, "100%" )%>
243
	<!-- MESSAGE +++++++++++++++++++++++++++++++++++++++++++++++++++ -->	
244
	<!--#include file="messages/_msg_inline.asp"-->
245
    <!-- +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -->
246
	<table width="100%"  border="0" cellspacing="10" cellpadding="0">
247
      <tr>
248
        <td width="50%" valign="top" class="body_txt"><strong>Create New</strong><br>
249
            <a href="wAddProdNew.asp?NEW=OK&<%=objPMod.ComposeURL()%>" class="menu_link"><img src="icons/i_product_new.gif" width="15" height="17" hspace="5" vspace="3" border="0" align="absmiddle">Product</a><br>
250
        </td>
251
        <td width="1" background="images/bg_bage_2.gif"><img src="images/spacer.gif" width="1" height="1"></td>
252
        <td width="50%" valign="top" nowrap class="body_txt"><strong>Add from Release Manager</strong><br> 
253
		  <%If (objFormCollector.Item("rtag_id_fk") <> "")  Then%>
254
		  <%=objFormCollector.Item ("proj_name") &"&nbsp;/&nbsp;"& objFormCollector.Item ("rtag_name")%>
255
		  <%Else%>
256
		  <%Call Messenger ( "This BOM does not have Release Manager Reference release.<br>Please edit BOM properties first.<br>" , 1, "100%" )%>
257
		  <%End If%>
258
          <br>
259
          <table width="100%"  border="0" cellspacing="3" cellpadding="0">
260
            <tr>
261
              <td width="1"><img src="images/spacer.gif" width="1" height="1"></td>
262
              <td width="100%"><img src="images/spacer.gif" width="1" height="1"></td>
263
            </tr>
264
            <%
265
	  ' -- Only run if links with Release Manager
266
	  If (objFormCollector.Item("rtag_id_fk") <> "")  Then
267
 
268
		  '===== Release Manager PRODUCTS =====
269
		  OraDatabase.Parameters.Add "RTAG_ID_FK", 				objFormCollector.Item("rtag_id_fk"),	ORAPARM_INPUT, ORATYPE_NUMBER 
270
		  OraDatabase.Parameters.Add "enumPRODUCTS_BASE_VIEW_ID", 	enumPRODUCTS_BASE_VIEW_ID,				ORAPARM_INPUT, ORATYPE_NUMBER 
23 rsolanki 271
		  OraDatabase.Parameters.Add "enumAUTOPRODUCTS_BASE_VIEW_ID", 	enumAUTOPRODUCTS_BASE_VIEW_ID,				ORAPARM_INPUT, ORATYPE_NUMBER 
13 rsolanki 272
		  OraDatabase.Parameters.Add "OS_ID", 						parOs_id,								ORAPARM_INPUT, ORATYPE_NUMBER 
273
 
274
		  Set rsQry = OraDatabase.DbCreateDynaset( GetQuery ("ReleaseManagerProductsView.sql"), ORADYN_DEFAULT )
275
 
276
		  If rsQry.RecordCount < 1 Then
277
		  	Response.write "No Products Found."
278
		  End If
279
 
280
		  While (NOT rsQry.BOF) AND (NOT rsQry.EOF)
281
		  %>
282
            <tr>
283
              <td nowrap class="form_iname"><input type="checkbox" name="prod_id_list" value="<%=rsQry("prod_id")%>" <%=rsQry("used")%>></td>
284
              <td nowrap class="body_txt"><%=Eval( rsQry("icon") )%><%=rsQry("pkg_name") &" "& rsQry("pkg_version")%></td>
285
            </tr>
286
            <%rsQry.MoveNext%>
287
            <%
288
		  WEnd
289
 
290
 
291
 
292
		  %>
293
		  </table>
294
		  <br><br>
295
		  <!-- NEW PATCHES ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -->
296
		  <strong>Add New Patches</strong><br> 
297
          <table width="100%"  border="0" cellspacing="3" cellpadding="0">
298
		  <%
299
		  Set rsQry = OraDatabase.DbCreateDynaset( GetQuery ("ReleaseManagerProductsUnusedPatches.sql"), ORADYN_DEFAULT )
300
 
301
		  If rsQry.RecordCount < 1 Then
302
		  	Response.write "No New Patches Found."
303
		  End If
304
 
305
		  While (NOT rsQry.BOF) AND (NOT rsQry.EOF)
306
		  %>
307
            <tr>
308
              <td nowrap class="form_iname"><input type="checkbox" name="prod_id_list" value="<%=rsQry("prod_id")%>"></td>
309
              <td nowrap class="body_txt"><%=LIMG_PRODUCT_PATCH%><%=rsQry("pkg_name") &" "& rsQry("pkg_version")%></td>
310
            </tr>
311
            <%rsQry.MoveNext%>
312
            <%
313
		  WEnd
314
 
315
 
316
 
317
		  OraDatabase.Parameters.Remove "RM_BRANCH_ID"
318
		  OraDatabase.Parameters.Remove "enumPRODUCTS_BASE_VIEW_ID"
23 rsolanki 319
		  OraDatabase.Parameters.Remove "enumAUTOPRODUCTS_BASE_VIEW_ID"		  
13 rsolanki 320
		  OraDatabase.Parameters.Remove "OS_ID"
321
 
322
	  End If
323
	  %>
324
          </table></td>
325
        <td width="1" valign="top" class="body_txt"><img src="images/spacer.gif" width="1" height="320"></td>
326
      </tr>
327
    </table>
328
	<!-- ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -->
329
    </td>
330
  </tr>
331
  <%=objPMod.ComposeHiddenTags()%>
332
  <input type="hidden" name="action" value="true">
333
<%
334
Call objFormComponent.FormEnd()
335
'-- FROM END ----------------------------------------------------------------------------------------------------------------
336
%>
337
</table>
338
</body>
339
</html>
340
<%
341
'------------ RUN AFTER PAGE RENDER -----------
342
Set objFormCollector = Nothing
343
'----------------------------------------------
344
%><!--#include file="common/globals_destructor.asp"-->