%@LANGUAGE="VBSCRIPT"%>
<%
Option explicit
Response.Expires = 0 ' always load the page, dont store
%>
<%
'=====================================================
' Change Owner
'=====================================================
%>
<%
'------------ ACCESS CONTROL ------------------
%>
<%
'------------ Variable Definition -------------
Dim parPv_id
Dim parPPv_id ' pv_id of parent
'Dim parRtag_id
Dim parRfile
Dim parView_id
Dim parBase_view_id
Dim bPreventSubmit
'------------ Constants Declaration -----------
'------------ Constants Declaration -----------
Const imgPkgLocked = "
"
Const imgPkgLockSpacer = "
"
'------------ Variable Init -------------------
Set pkgInfoHash = CreateObject("Scripting.Dictionary")
parPv_id = QStrPar("pv_id")
parPPv_id = QStrPar("ppv_id")
parRtag_id = QStrPar("rtag_id")
parRfile = Request("rfile")
parView_id = QStrPar("view_id")
parBase_view_id = QStrPar("base_view_id")
bPreventSubmit = false
'----------------------------------------------
%>
<%
Sub Get_Pkg_Information ( NNpv_id)
Dim rsTemp, Query_String
Query_String = _
" SELECT pkg.pkg_id, pkg.pkg_name, pv.pkg_version, pv.dlocked,pv.modified_stamp,um.full_name as modifier,pv.created_stamp,uc.full_name as creator"&_
" FROM packages pkg, package_versions pv, users um, users uc"&_
" WHERE pkg.pkg_id = pv.pkg_id"&_
" AND pv.modifier_id = um.user_id (+)" &_
" AND pv.creator_id = uc.user_id (+)" &_
" AND pv.pv_id = "& NNpv_id
Set rsTemp = OraDatabase.DbCreateDynaset( Query_String, cint(0))
If ((NOT rsTemp.BOF) AND (NOT rsTemp.EOF)) Then
pkgInfoHash.Add "pkg_id", (rsTemp.Fields("pkg_id"))
pkgInfoHash.Add "pkg_name", (rsTemp.Fields("pkg_name"))
pkgInfoHash.Add "pkg_version", (rsTemp.Fields("pkg_version"))
pkgInfoHash.Add "dlocked", (rsTemp.Fields("dlocked"))
pkgInfoHash.Add "modified_stamp", (rsTemp.Fields("modified_stamp"))
pkgInfoHash.Add "modifier", (rsTemp.Fields("modifier"))
pkgInfoHash.Add "created_stamp", (rsTemp.Fields("created_stamp"))
pkgInfoHash.Add "creator", (rsTemp.Fields("creator"))
End If
rsTemp.Close
Set rsTemp = nothing
End Sub
'----------------------------------------------
Sub Add_Missing_Dependency(RtagId, pvId, viewId)
OraDatabase.Parameters.Add "RTAG_ID", RtagId, ORAPARM_INPUT, ORATYPE_NUMBER
OraDatabase.Parameters.Add "PV_ID", pvId, ORAPARM_INPUT, ORATYPE_VARCHAR2
OraDatabase.Parameters.Add "USER_ID", objAccessControl.UserId, ORAPARM_INPUT, ORATYPE_NUMBER
OraDatabase.Parameters.Add "VIEW_ID", viewId, ORAPARM_INPUT, ORATYPE_NUMBER
objEH.TryORA ( OraSession )
' check if the package already exists in a pending or wip state
If PackageExists(RtagId, pvId, "planned") Then
Call RaiseMsg ( enum_WMSG_ERROR, "Package " & pkgInfoHash.Item ("pkg_name") & " " & pkgInfoHash.Item ("pkg_version") & " already exists in a pending state")
ElseIf PackageExists(RtagId, pvId, "work_in_progress") Then
Call RaiseMsg ( enum_WMSG_ERROR, "Package " & pkgInfoHash.Item ("pkg_name") & " " & pkgInfoHash.Item ("pkg_version") & " already exists as a WIP")
End If
OraDatabase.ExecuteSQL _
"BEGIN PK_PLANNED.REMOVE_PACKAGE ( :PV_ID, :RTAG_ID, :USER_ID ); END;"
If Err.Number = 0 Then
OraDatabase.ExecuteSQL _
"BEGIN PK_RELEASE.ADD_PACKAGE ( :PV_ID, :VIEW_ID, :RTAG_ID, :USER_ID ); END;"
End If
objEH.CatchORA ( OraSession )
OraDatabase.Parameters.Remove "RTAG_ID"
OraDatabase.Parameters.Remove "PV_ID"
OraDatabase.Parameters.Remove "USER_ID"
OraDatabase.Parameters.Remove "VIEW_ID"
End Sub
Function Release_Groups ( SSrtag_id, SSpkg_id )
Release_Groups = _
"SELECT vi.view_id, vi.view_name, bv.hint"&_
" FROM views vi,"&_
" ("&_
" SELECT DISTINCT rc.BASE_VIEW_ID, '> ' AS hint"&_
" FROM release_content rc,"&_
" package_versions pv"&_
" WHERE rc.pv_id = pv.pv_id"&_
" AND pv.pkg_id IN (" & SSpkg_id & ")"&_
" ) bv "&_
"WHERE"&_
" UPPER(vi.base_view) = 'Y'"&_
" AND bv.BASE_VIEW_ID (+) = vi.VIEW_ID "&_
"ORDER BY vi.view_name ASC"
End Function
%>
<%
'Process submition
If CBool(QStrPar("action")) AND objAccessControl.UserLogedIn Then
Call Add_Missing_Dependency(parRtag_id,parPv_id,parView_id)
Call OpenInParentWindow ( "dependencies.asp?pv_id="& parPPv_id &"&rtag_id="& parRtag_id )
Call CloseWindow
End If
%>
<%
Call Get_Pkg_Information ( parPv_id)
%>