Subversion Repositories DevTools

Rev

Rev 1281 | Blame | Compare with Previous | Last modification | View Log | RSS feed

<%@LANGUAGE="VBSCRIPT"%>
<%
'=====================================================
'                  MAKE PENDING
'               --- PROCESS FORM ---
'=====================================================
%>
<%
Option explicit
' Good idea to set when using redirect
Response.Expires = 0   ' always load the page, dont store
%>

<!--#include file="common/conf.asp"-->
<!--#include file="common/globals.asp"-->
<!--#include file="common/formating.asp"-->
<!--#include file="common/qstr.asp"-->
<!--#include file="common/common_subs.asp"-->
<!--#include file="common/common_dbedit.asp"-->
<!--#include file="common/daemon_instructions.asp"-->
<%
'------------ ACCESS CONTROL ------------------
%>
<!--#include file="_access_control_login.asp"-->
<!--#include file="_access_control_general.asp"-->
<!--#include file="_access_control_project.asp"-->
<%
'------------ Variable Definition -------------
Dim parPv_id
Dim parRfile
Dim retERRmsg
Dim retALRTmsg
Dim retParameters
Dim pkgType
'------------ Constants Declaration -----------
'------------ Variable Init -------------------
parPv_id = Request("pv_id")
parRfile = Request("rfile")
'------------ Constants Declaration -----------
'------------ Variable Init -------------------
'----------------------------------------------
%>
<%
Sub MakePending ()

   OraDatabase.Parameters.Add "PV_ID",    Request("pv_id"),        ORAPARM_INPUT, ORATYPE_NUMBER
   OraDatabase.Parameters.Add "RTAG_ID",  Request("rtag_id"),      ORAPARM_INPUT, ORATYPE_NUMBER
   OraDatabase.Parameters.Add "USER_ID",  objAccessControl.UserId, ORAPARM_INPUT, ORATYPE_NUMBER

   objEH.TryORA ( OraSession )
   On Error Resume Next

   OraDatabase.ExecuteSQL " UPDATE package_versions "&_
                     " SET owner_id = :USER_ID"&_
                     " WHERE pv_id = :PV_ID"

   OraDatabase.ExecuteSQL _
   "BEGIN "&_
   " PK_ENVIRONMENT.MAKE_PENDING ( :PV_ID, :RTAG_ID, :USER_ID ); "&_
   "END; "

   objEH.CatchORA ( OraSession )

   OraDatabase.Parameters.Remove "PV_ID"
   OraDatabase.Parameters.Remove "RTAG_ID"
   OraDatabase.Parameters.Remove "USER_ID"

End Sub
%>
<%
'-----------------------  MAIN LINE  ---------------------------

'--- Process submition ---
If ( Request("rtag_id") <> "") AND (Request("pv_id") <> "") Then

   Call CheckRequirementsForMakePending ( parPv_id, parRtag_id, pkgType, retERRmsg, retALRTmsg, retParameters )

   If IsNull(retERRmsg) Then
      ' All Requirements OK
      'COMPLETE THE REQUEST...

      If (DaemonInstructionPreventsEditing(Request("rtag_id"), Request("pv_id"))) Then
         Call RaiseMsg(enum_MSG_ERROR, "This package version has one or more daemon instructions present.<br><br>"&_
                                       "Please delete them or allow them to be consumed before attempting to make the package version pending.")
      Else
         Call MakePending ( )

         If Request("rfile") <> "" Then
            Response.Redirect ( Request("rfile") &"?pv_id="& Request("pv_id") &"&rtag_id="& Request("rtag_id") )
         Else
            Response.Redirect ( "dependencies?pv_id="& Request("pv_id") &"&rtag_id="& Request("rtag_id") )
         End If
      End If

   Else
      Call RaiseMsg ( Eval(retERRmsg), parRtag_id &"|"& parPv_id    &"|"& retParameters &"|"& "N" )
   End If

Else
   Response.write "Some mandatory parameters are missing!" & "<br>" 'TODO
   Response.write QSTR_All
End If

%>

<!-- DESTRUCTOR ------->
<!--#include file="common/destructor.asp"-->