<%@LANGUAGE="VBSCRIPT"%> <% '===================================================== '| '| wAddPackageInterest.asp '| '===================================================== %> <% Option explicit Response.Expires = 0 %> <% '------------ ACCESS CONTROL ------------------ %> <% '------------ VARIABLE DEFINITION ------------- Dim rsPackages Dim FRview_id Dim parProjId Dim Query_String parProjId = Request("proj_id") '------------ CONSTANTS DECLARATION ----------- '------------ VARIABLE INIT ------------------- '------------ CONDITIONS ---------------------- '---------------------------------------------- %> <% '-------------------------------------------------------------------------------------------------------------------------- Sub Add_Package_Interest (nProj_id, nPkg_id_List) OraDatabase.Parameters.Add "PROJ_ID", nProj_id, ORAPARM_INPUT, ORATYPE_NUMBER OraDatabase.Parameters.Add "PKG_ID_LIST", nPkg_id_List, ORAPARM_INPUT, ORATYPE_VARCHAR2 OraDatabase.Parameters.Add "USER_ID", objAccessControl.UserId, ORAPARM_INPUT, ORATYPE_NUMBER On Error Resume Next objEH.ErrorRedirect = FALSE objEH.TryORA ( OraSession ) OraDatabase.ExecuteSQL _ "BEGIN ADD_PACKAGE_INTEREST ( :PROJ_ID, :PKG_ID_LIST, :USER_ID ); END;" objEH.CatchORA ( OraSession ) OraDatabase.Parameters.Remove "PROJ_ID" OraDatabase.Parameters.Remove "PKG_ID_LIST" OraDatabase.Parameters.Remove "USER_ID" End Sub '-------------------------------------------------------------------------------------------------------------------------- %> <% '------------ RUN BEFORE PAGE RENDER ---------- ' --- Get Form details from DB (for edit forms only) --- '------------------------------------------------------- ' --- Load Validation Rules --- ' --- Enter Form Validation Rule Changes here... ---- '---------------------------------------------------- If CBool(Request("action")) Then If objForm.IsValidOnPostBack Then ' --- Form is Valid --- Call Add_Package_Interest(parProjId, request("pkg_id_list")) If objEH.Finally Then Call ReloadParentWindow() Call Destroy_All_Objects Response.End End If End If End If '---------------------------------------------- %> Release Manager <%'=objPMod.ComposeHiddenTags()%> "> "> <%=objPMod.ComposeHiddenTags()%> ">
Search for Package or select from the list.
Package Search ">
 
<% Dim startPosition, pageNumber, navigator, totalRecords, lastRecord Const MAX_ROWS = 50 ' Maximum number of rows displayed OraDatabase.Parameters.Add "KEYWORD", Request("filter"), ORAPARM_INPUT, ORATYPE_VARCHAR2 '--- Set filters --- If Request("filter") <> "" Then Query_String = _ " SELECT DISTINCT PKG.PKG_ID, PKG.PKG_NAME FROM RELEASE_CONTENT RC,"&_ " RELEASE_TAGS RT, PROJECTS PRJ,"&_ " PACKAGE_VERSIONS PV, PACKAGES PKG,"&_ " ("&_ " /* Exact match */"&_ " SELECT 1 AS DISPLAY_ORDER,"&_ " pkg.PKG_ID,"&_ " pkg.PKG_NAME"&_ " FROM PACKAGES pkg"&_ " WHERE UPPER(pkg.PKG_NAME) = UPPER(:KEYWORD)"&_ " UNION"&_ " /* Starts with */ "&_ " SELECT 2 AS DISPLAY_ORDER,"&_ " pkg.PKG_ID,"&_ " pkg.PKG_NAME"&_ " FROM PACKAGES pkg"&_ " WHERE UPPER(pkg.PKG_NAME) LIKE UPPER(:KEYWORD) ||'%'"&_ " UNION"&_ " /* Ends with */ "&_ " SELECT 3 AS DISPLAY_ORDER,"&_ " pkg.PKG_ID,"&_ " pkg.PKG_NAME"&_ " FROM PACKAGES pkg"&_ " WHERE UPPER(pkg.PKG_NAME) LIKE '%'|| UPPER(:KEYWORD) "&_ " UNION"&_ " /* Middle of word */ "&_ " SELECT 4 AS DISPLAY_ORDER,"&_ " pkg.PKG_ID,"&_ " pkg.PKG_NAME"&_ " FROM PACKAGES pkg"&_ " WHERE UPPER(pkg.PKG_NAME) LIKE '%'|| UPPER(:KEYWORD) ||'%'"&_ " ) qry"&_ " WHERE RC.RTAG_ID = RT.RTAG_ID AND PRJ.PROJ_ID = RT.PROJ_ID AND PKG.PKG_ID NOT IN"&_ " (SELECT PKG_ID FROM PACKAGE_INTEREST WHERE PROJ_ID ="& parProjId &" AND USER_ID ="& objAccessControl.UserId &")"&_ " AND PV.PV_ID = RC.PV_ID AND PKG.PKG_ID = PV.PKG_ID AND qry.pkg_id = pkg.pkg_id AND PRJ.PROJ_ID="& parProjId &" order by pkg.pkg_name" Else Query_String = _ " SELECT DISTINCT PKG.PKG_ID, PKG.PKG_NAME FROM RELEASE_CONTENT RC,"&_ " RELEASE_TAGS RT, PROJECTS PRJ,"&_ " PACKAGE_VERSIONS PV, PACKAGES PKG"&_ " WHERE RC.RTAG_ID = RT.RTAG_ID AND PRJ.PROJ_ID = RT.PROJ_ID and PKG.PKG_ID NOT IN"&_ " (SELECT PKG_ID FROM PACKAGE_INTEREST WHERE PROJ_ID ="& parProjId &" AND USER_ID ="& objAccessControl.UserId &")"&_ " AND PV.PV_ID = RC.PV_ID AND PKG.PKG_ID = PV.PKG_ID AND PRJ.PROJ_ID="& parProjId &" order by pkg.pkg_name" End If Set rsPackages = OraDatabase.DbCreateDynaset( Query_String , ORADYN_DEFAULT ) OraDatabase.Parameters.Remove "KEYWORD" '--- Get page number --- pageNumber = 0 If Request("pg") <> "" Then pageNumber = CInt(Request("pg")) End If '--- Set Cursor start position --- startPosition = pageNumber * MAX_ROWS + 1 If (NOT rsPackages.BOF) AND (NOT rsPackages.EOF) Then rsPackages.MoveTo ( startPosition ) ' Set starting cursor point End If '--- Construct Navigator navigator = "" If (NOT rsPackages.BOF) AND (NOT rsPackages.EOF) Then totalRecords = rsPackages.RecordCount ' Get total number of records '--- Create "Previous" link If pageNumber > 0 Then navigator = navigator &"« Previous" End If '--- Create "Next" link If ( startPosition + MAX_ROWS ) < totalRecords Then navigator = navigator &"  Next »" End If End If '--- Calculate Last Record --- If totalRecords > 0 Then lastRecord = ( startPosition - 1 + MAX_ROWS ) _ + ( CInt( ( startPosition - 1 + MAX_ROWS )/totalRecords > 1) ) * ( ( startPosition - 1 + MAX_ROWS ) - totalRecords ) End If %>
 
<% If totalRecords > 0 Then Response.write "Showing "& startPosition &" - "& lastRecord &" of "& totalRecords Else Response.write "No Results." End If %> <%=navigator%>
<% '--- Render rows --- Do While (NOT rsPackages.BOF) AND (NOT rsPackages.EOF) If rsPackages.RowPosition => (startPosition + MAX_ROWS) Then Exit Do ' Limit the number of rows displayed %> <%rsPackages.MoveNext%> <%If (NOT rsPackages.BOF) AND (NOT rsPackages.EOF) Then%> <%End If%> <% Loop rsPackages.Close() Set rsPackages = Nothing %>
Packages
"> <%=Highlight_Substring( rsPackages("pkg_name"), request("filter") )%>
<%=navigator%>
<% '------------ RUN AFTER PAGE RENDER ----------- Set objFormCollector = Nothing '---------------------------------------------- %>