<%@LANGUAGE="VBSCRIPT"%> <% '===================================================== ' ADD NEW Runtime Dependency ' --- PROCESS FORM --- '===================================================== %> <% Option explicit ' Good idea to set when using redirect Response.Expires = 0 ' always load the page, dont store %> <% ' Page Access Condition %> <% ' Set rfile parameter. This is a return page after Login Call objPMod.StoreParameter ( "rfile", "runtime_dependencies.asp" ) '------------ ACCESS CONTROL ------------------ %> <% '------------ Variable Definition ------------- Dim rtdArray() '------------ Constants Declaration ----------- Const COL_pkg_name = 0 Const COL_pkg_version = 1 '------------ Variable Init ------------------- '---------------------------------------------- %> <% Sub Add_Runtime_Dependency ( ARRrtd, NNpv_id, NNuser_id ) Dim i objEH.TryORA ( OraSession ) On Error Resume Next For i = 0 To UBound( ARRrtd, 2 ) If Err.Number = 0 Then OraDatabase.ExecuteSQL _ "BEGIN Add_Runtime_Dependency ( "& NNpv_id &", "&_ "'"& ARRrtd( COL_pkg_name, i ) &"', "&_ "'"& ARRrtd( COL_pkg_version, i ) &"', "&_ NNuser_id &" ); END;" End If Next objEH.CatchORA ( OraSession ) End Sub Sub Populate_rtdArray ( NNpv_id_list, ARRrtd ) Dim depList, lastItem, i, recCnt, pkg_name, pkg_version Dim rsTemp, Query_String Query_String = _ " SELECT pkgs.pkg_id, pkgs.pkg_name, pv.pv_id, pv.pkg_version"&_ " FROM packages pkgs, package_versions pv"&_ " WHERE pv.pv_id IN ("& NNpv_id_list &")"&_ " AND pv.pkg_id = pkgs.pkg_id" Set rsTemp = OraDatabase.DbCreateDynaset( Query_String, cint(0)) recCnt = 0 While ((NOT rsTemp.BOF) AND (NOT rsTemp.EOF)) ReDim Preserve ARRrtd( 1, recCnt ) ARRrtd( COL_pkg_name, recCnt ) = rsTemp("pkg_name") ARRrtd( COL_pkg_version, recCnt ) = rsTemp("pkg_version") recCnt = recCnt + 1 rsTemp.MoveNext WEnd rsTemp.Close Set rsTemp = nothing End Sub %> <% '----------------------- MAIN LINE --------------------------- '--- Process submition --- If (Request("pv_id") <> "") AND (Request("rtag_id") <> "") Then ' All mandatory parameters FOUND 'COMPLETE THE REQUEST... ' NOTE - Although the underlying search operation (see form_search_pkgs.asp and form_search_result_pkgs.asp) ' returns a list called "pkg_list", it actually contains a pv_id list when used to add runtime dependencies Call Populate_rtdArray ( Request("pkg_list"), rtdArray ) Call Add_Runtime_Dependency ( rtdArray, Request("pv_id"), objAccessControl.UserId ) Call Destroy_All_Objects Response.Redirect("runtime_dependencies.asp?pv_id="& Request("pv_id") &"&rtag_id="& Request("rtag_id")) Else Response.write "Some mandatory parameters are missing!" & "
" 'TODO Response.write QSTR_FullQuery End If %>