Subversion Repositories DevTools

Rev

Rev 119 | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 119 Rev 129
Line 1... Line 1...
1
<%@LANGUAGE="VBSCRIPT"%>
1
<%@LANGUAGE="VBSCRIPT"%>
2
<%
2
<%
3
'=====================================================
3
'=====================================================
4
' 			 	   ADD Packages
4
'                 ADD Packages
5
'               --- PROCESS FORM ---
5
'               --- PROCESS FORM ---
6
'=====================================================
6
'=====================================================
7
%>
7
%>
8
<%
8
<%
9
Option explicit
9
Option explicit
10
' Good idea to set when using redirect
10
' Good idea to set when using redirect
11
Response.Expires = 0	' always load the page, dont store
11
Response.Expires = 0   ' always load the page, dont store
12
%>
12
%>
13
 
13
 
14
<!--#include file="common/conf.asp"-->
14
<!--#include file="common/conf.asp"-->
15
<!--#include file="common/globals.asp"-->
15
<!--#include file="common/globals.asp"-->
16
<!--#include file="common/formating.asp"-->
16
<!--#include file="common/formating.asp"-->
Line 34... Line 34...
34
'----------------------------------------------
34
'----------------------------------------------
35
%>
35
%>
36
<%
36
<%
37
'--------------------------------------------------------------------------------------------------------------------
37
'--------------------------------------------------------------------------------------------------------------------
38
Sub Populate_pkgArray ( NNpkg_list, ARRpkg )
38
Sub Populate_pkgArray ( NNpkg_list, ARRpkg )
39
	Dim depList, lastItem, i, recCnt, pkg_name, pkg_version, V_EXT
39
   Dim depList, lastItem, i, recCnt, pkg_name, pkg_version, V_EXT
40
	Dim rsTemp, Query_String
40
   Dim rsTemp, Query_String
41
	
41
 
42
	Query_String = _
42
   Query_String = _
43
	" SELECT pkg_id, pkg_name"&_
43
   " SELECT pkg_id, pkg_name"&_
44
	"  FROM packages"&_
44
   "  FROM packages"&_
45
	" WHERE pkg_id IN ("& NNpkg_list &")"
45
   " WHERE pkg_id IN ("& NNpkg_list &")"
46
	Set rsTemp = OraDatabase.DbCreateDynaset( Query_String, cint(0))
46
   Set rsTemp = OraDatabase.DbCreateDynaset( Query_String, cint(0))
47
	
47
 
48
	recCnt = 0
48
   recCnt = 0
49
	While ((NOT rsTemp.BOF) AND (NOT rsTemp.EOF))
49
   While ((NOT rsTemp.BOF) AND (NOT rsTemp.EOF))
50
		ReDim Preserve ARRpkg( 2, recCnt )
50
      ReDim Preserve ARRpkg( 2, recCnt )
51
		ARRpkg( 0, recCnt ) = rsTemp("pkg_name")
51
      ARRpkg( 0, recCnt ) = rsTemp("pkg_name")
52
		ARRpkg( 1, recCnt ) = Request( "pkgn"& rsTemp("pkg_id") )
52
      ARRpkg( 1, recCnt ) = Request( "pkgn"& rsTemp("pkg_id") )
53
		
53
 
54
		recCnt = recCnt + 1
54
      recCnt = recCnt + 1
55
		rsTemp.MoveNext
55
      rsTemp.MoveNext
56
	WEnd
56
   WEnd
57
	
57
 
58
	rsTemp.Close
58
   rsTemp.Close
59
	Set rsTemp = nothing
59
   Set rsTemp = nothing
60
End Sub
60
End Sub
61
'--------------------------------------------------------------------------------------------------------------------
61
'--------------------------------------------------------------------------------------------------------------------
62
Sub Seed_DB ( ARRpkg, retPV_ID_LIST )
62
Sub Seed_DB ( ARRpkg, retPV_ID_LIST )
63
	Dim i, lastRow
63
   Dim i, lastRow
64
	
64
 
-
 
65
   On Error Resume Next
-
 
66
 
65
	OraDatabase.Parameters.Add "retPV_ID", 0, ORAPARM_OUTPUT, ORATYPE_NUMBER
67
   OraDatabase.Parameters.Add "retPV_ID", 0, ORAPARM_OUTPUT, ORATYPE_NUMBER
66
	
68
 
67
	retPV_ID_LIST = ""
69
   retPV_ID_LIST = ""
68
	lastRow = UBound( pkgArray, 2 )
70
   lastRow = UBound( pkgArray, 2 )
69
	
-
 
70
	
71
 
71
	For i = 0 To lastRow
72
   For i = 0 To lastRow
-
 
73
      If Err.Number = 0 Then
72
		OraDatabase.ExecuteSQL "BEGIN Seed_Package_Names_Versions ('"& ARRpkg(0,i) &"','"& ARRpkg(1,i) &"', :USER_ID, :retPV_ID); END;"
74
         OraDatabase.ExecuteSQL "BEGIN Seed_Package_Names_Versions ('"& ARRpkg(0,i) &"','"& ARRpkg(1,i) &"', :USER_ID, :retPV_ID); END;"
73
		retPV_ID_LIST = retPV_ID_LIST &","& OraDatabase.Parameters("retPV_ID").Value 
75
         retPV_ID_LIST = retPV_ID_LIST &","& OraDatabase.Parameters("retPV_ID").Value
74
		
76
      End If
75
	Next
77
   Next
76
	
78
 
77
	If Len(retPV_ID_LIST) > 0 Then retPV_ID_LIST = Replace ( retPV_ID_LIST, ",", "", 1, 1 )
79
   If Len(retPV_ID_LIST) > 0 Then retPV_ID_LIST = Replace ( retPV_ID_LIST, ",", "", 1, 1 )
78
	
80
 
79
	OraDatabase.Parameters.Remove "retPV_ID"
81
   OraDatabase.Parameters.Remove "retPV_ID"
80
End Sub
82
End Sub
81
'--------------------------------------------------------------------------------------------------------------------
83
'--------------------------------------------------------------------------------------------------------------------
82
Sub AddPackage ( sPvIdList )
84
Sub AddPackage ( sPvIdList )
83
	OraDatabase.Parameters.Add "PV_ID_LIST", sPvIdList, ORAPARM_OUTPUT, ORATYPE_VARCHAR2
-
 
-
 
85
 
84
	Dim rsQry, AssocMASS
86
   Dim rsQry, AssocMASS
-
 
87
 
85
On Error Resume Next
88
   On Error Resume Next
-
 
89
 
86
	Set rsQry = OraDatabase.DbCreateDynaset( "SELECT * FROM RELEASE_TAGS RT, PACKAGE_VERSIONS PV WHERE RT.RTAG_ID ="&Request("rtag_id")&" AND PV.PV_ID IN ("&sPvIdList&")", cint(0))
90
   Set rsQry = OraDatabase.DbCreateDynaset( "SELECT * FROM RELEASE_TAGS RT, PACKAGE_VERSIONS PV WHERE RT.RTAG_ID ="&Request("rtag_id")&" AND PV.PV_ID IN ("&sPvIdList&")", cint(0))
-
 
91
 
87
	AssocMASS = rsQry("ASSOC_MASS_REF")
92
   AssocMASS = rsQry("ASSOC_MASS_REF")
88
objEH.Try
-
 
89
	
93
 
90
	If ( IsNull(AssocMASS) ) OR (AssocMASS <> "" AND (rsQry("v_ext") <> ".cr" AND rsQry("v_ext") <> ".mas" )) Then
94
   If ( IsNull(AssocMASS) ) OR (AssocMASS <> "" AND (rsQry("v_ext") <> ".cr" AND rsQry("v_ext") <> ".mas" )) Then
-
 
95
 
-
 
96
      OraDatabase.Parameters.Add "PV_ID_LIST", sPvIdList, ORAPARM_OUTPUT, ORATYPE_VARCHAR2
91
	
97
 
92
		OraDatabase.ExecuteSQL "BEGIN PK_ENVIRONMENT.ADD_PACKAGE_BULK ( :PV_ID_LIST, :BASE_VIEW_ID, :RTAG_ID, :USER_ID ); END;"
98
      OraDatabase.ExecuteSQL "BEGIN PK_ENVIRONMENT.ADD_PACKAGE_BULK ( :PV_ID_LIST, :BASE_VIEW_ID, :RTAG_ID, :USER_ID ); END;"
93
	
99
 
94
		OraDatabase.Parameters.Remove "PV_ID_LIST"
100
      OraDatabase.Parameters.Remove "PV_ID_LIST"
95
	Else
101
   Else
96
		Err.Raise 8, "Cannot ADD a CORE/MASS package into a MASS_REF Reference Release!"
102
      Err.Raise 8, "Cannot ADD a CORE/MASS package into a MASS_REF Reference Release!"
97
	End If
103
   End If
98
objEH.Catch
104
 
99
End Sub
105
End Sub
100
'--------------------------------------------------------------------------------------------------------------------
106
'--------------------------------------------------------------------------------------------------------------------
101
Sub Add_Packages_To_View_Definition ( NNpkg_list )
107
Sub Add_Packages_To_View_Definition ( NNpkg_list )
102
	If OraDatabase.Parameters("PERSONAL_VIEW_ID").Value = "" Then Exit Sub
108
   If OraDatabase.Parameters("PERSONAL_VIEW_ID").Value = "" Then Exit Sub
103
	OraDatabase.ExecuteSQL _
109
   OraDatabase.ExecuteSQL _
104
	" INSERT INTO view_def"&_
110
   " INSERT INTO view_def"&_
105
	"	SELECT TO_NUMBER( :PERSONAL_VIEW_ID ) AS view_id, pkg.pkg_id"&_
111
   "   SELECT TO_NUMBER( :PERSONAL_VIEW_ID ) AS view_id, pkg.pkg_id"&_
106
	"	  FROM packages pkg"&_
112
   "     FROM packages pkg"&_
107
	"	 WHERE pkg.pkg_id IN ( "& NNpkg_list &" )"&_
113
   "    WHERE pkg.pkg_id IN ( "& NNpkg_list &" )"&_
108
	"	MINUS "&_
114
   "   MINUS "&_
109
	"	SELECT vd.view_id, vd.pkg_id"&_
115
   "   SELECT vd.view_id, vd.pkg_id"&_
110
	"	  FROM view_def vd"&_
116
   "     FROM view_def vd"&_
111
	"	 WHERE vd.view_id = :PERSONAL_VIEW_ID "
117
   "    WHERE vd.view_id = :PERSONAL_VIEW_ID "
112
End Sub
118
End Sub
113
'--------------------------------------------------------------------------------------------------------------------
119
'--------------------------------------------------------------------------------------------------------------------
114
%>
120
%>
115
<%
121
<%
116
'-----------------------  MAIN LINE  ---------------------------
122
'-----------------------  MAIN LINE  ---------------------------
117
On Error Resume Next
123
On Error Resume Next
118
Dim rsQry
124
Dim rsQry
119
Set rsQry = OraDatabase.DbCreateDynaset( "SELECT OFFICIAL FROM RELEASE_TAGS WHERE RTAG_ID ="&Request("rtag_id"), cint(0))
125
Set rsQry = OraDatabase.DbCreateDynaset( "SELECT OFFICIAL FROM RELEASE_TAGS WHERE RTAG_ID ="&Request("rtag_id"), cint(0))
120
objEH.Try	
126
objEH.Try
121
If rsQry("official") = "N" OR rsQry("official") = "R" Then 
127
If rsQry("official") = "N" OR rsQry("official") = "R" Then
-
 
128
 
-
 
129
   '--- Process submition ---
-
 
130
   If  ( Request("rtag_id") <> "" ) AND ( Request("pkg_list") <> "" ) Then
-
 
131
 
-
 
132
      ' All mandatory parameters FOUND
-
 
133
 
-
 
134
      Call Populate_pkgArray ( Request("pkg_list"), pkgArray )
122
 
135
 
123
	'--- Process submition ---
-
 
124
	If  ( Request("rtag_id") <> "" ) AND ( Request("pkg_list") <> "" ) Then
-
 
125
	
-
 
126
		' All mandatory parameters FOUND
-
 
127
	
-
 
128
	
-
 
129
		Call Populate_pkgArray ( Request("pkg_list"), pkgArray )
-
 
130
	
-
 
131
	
-
 
132
		'On Error Resume Next
136
      'On Error Resume Next
133
		OraSession.BeginTrans
137
      OraSession.BeginTrans
134
	
138
 
135
		'---- SQL parameters ----
139
      '---- SQL parameters ----
136
		OraDatabase.Parameters.Add "RTAG_ID", Request("rtag_id"), ORAPARM_INPUT, ORATYPE_NUMBER
140
      OraDatabase.Parameters.Add "RTAG_ID", Request("rtag_id"), ORAPARM_INPUT, ORATYPE_NUMBER
137
		OraDatabase.Parameters.Add "USER_ID", objAccessControl.UserId, ORAPARM_INPUT, ORATYPE_NUMBER
141
      OraDatabase.Parameters.Add "USER_ID", objAccessControl.UserId, ORAPARM_INPUT, ORATYPE_NUMBER
138
		OraDatabase.Parameters.Add "BASE_VIEW_ID", Request("base_view_id"), ORAPARM_INPUT, ORATYPE_NUMBER
142
      OraDatabase.Parameters.Add "BASE_VIEW_ID", Request("base_view_id"), ORAPARM_INPUT, ORATYPE_NUMBER
139
		OraDatabase.Parameters.Add "PERSONAL_VIEW_ID", Request("personal_view_id"), ORAPARM_INPUT, ORATYPE_NUMBER
143
      OraDatabase.Parameters.Add "PERSONAL_VIEW_ID", Request("personal_view_id"), ORAPARM_INPUT, ORATYPE_NUMBER
140
		'------------------------
144
      '------------------------
141
	
-
 
142
 
-
 
143
 
145
 
144
		Call Seed_DB ( pkgArray, pv_id_list )
146
      Call Seed_DB ( pkgArray, pv_id_list )
145
	
147
 
-
 
148
      If Err.Number = 0 Then
146
		Call AddPackage ( pv_id_list )
149
         Call AddPackage ( pv_id_list )
147
 
-
 
-
 
150
         If Err.Number = 0 Then
148
		If NOT IsNull(Request("personal_view_id")) Then
151
            If NOT IsNull(Request("personal_view_id")) Then
149
			Call Add_Packages_To_View_Definition ( Request("pkg_list") )
152
               Call Add_Packages_To_View_Definition ( Request("pkg_list") )
-
 
153
            End If
-
 
154
         End If
150
		End If
155
      End If
151
 
156
 
152
		If Err.number <> 0 Then
157
      If Err.number <> 0 Then
153
			OraSession.RollBack
158
         OraSession.RollBack
154
			Call RaiseMsg ( enum_MSG_ERROR, Err.description )
159
         Call RaiseMsg ( enum_MSG_ERROR, Err.description )
155
		Else
160
      Else
156
			OraSession.CommitTrans
161
         OraSession.CommitTrans
157
		End If
162
      End If
158
	
-
 
159
	
163
 
160
		OraDatabase.Parameters.Remove "RTAG_ID"
164
      OraDatabase.Parameters.Remove "RTAG_ID"
161
		OraDatabase.Parameters.Remove "USER_ID"
165
      OraDatabase.Parameters.Remove "USER_ID"
162
		OraDatabase.Parameters.Remove "BASE_VIEW_ID"
166
      OraDatabase.Parameters.Remove "BASE_VIEW_ID"
163
		OraDatabase.Parameters.Remove "PERSONAL_VIEW_ID"
167
      OraDatabase.Parameters.Remove "PERSONAL_VIEW_ID"
164
	
168
 
165
	
169
 
166
		Response.Redirect("dependencies.asp?rtag_id="& Request("rtag_id"))
170
      Response.Redirect("dependencies.asp?rtag_id="& Request("rtag_id"))
167
	
-
 
168
	Else
171
   Else
169
		Response.write "Some mandatory parameters are missing!" & "<br>" 'TODO
172
      Response.write "Some mandatory parameters are missing!" & "<br>" 'TODO
170
		Response.write QSTR_All 
173
      Response.write QSTR_All
171
	End If
174
   End If
172
 
175
 
173
Else
176
Else
174
	Err.Raise 8, "Cannot ADD a package in a CLOSED or CCB Release Mode"
177
   Err.Raise 8, "Cannot ADD a package in a CLOSED or CCB Release Mode"
175
End If
178
End If
176
	rsQry.Close
179
   rsQry.Close
177
	Set rsQry = nothing
180
   Set rsQry = nothing
178
objEH.Catch
181
objEH.Catch
179
%>
182
%>
180
 
183
 
181
<!-- DESTRUCTOR ------->
184
<!-- DESTRUCTOR ------->
182
<!--#include file="common/destructor.asp"-->
-
 
183
185
<!--#include file="common/destructor.asp"-->
-
 
186