Difference between revisions of "Using the request Object"
From AgileApps Support Wiki
imported>Aeric (Created page with "To obtain record identifiers from the <tt>request</tt> object: :<syntaxhighlight lang="java" enclose="div"> <% String object_id = request.getParameter("object_id"); String re…") |
imported>Aeric |
||
(19 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
To obtain record | '''To get all of the parameters available in the <tt>request</tt> object, and their values:''' | ||
:<syntaxhighlight lang="java" enclose="div"> | |||
<% | |||
String[] params = request.getParameterValues(); | |||
for (int i=0; i<params.length; i++) | |||
{ | |||
String paramName = params[i]; | |||
String paramValue = request.getParameter( paramName ); | |||
} | |||
%> | |||
</syntaxhighlight> | |||
'''To obtain a record identifier from a <tt>request</tt> object sent by the platform:''' | |||
:With the object ID and record ID, use the [[Java_API:Record_Handling#getRecord|getRecord]] API to retrieve the record. | |||
:<syntaxhighlight lang="java" enclose="div"> | :<syntaxhighlight lang="java" enclose="div"> | ||
<% | <% | ||
Line 9: | Line 22: | ||
{{Note|Although the <tt>object_id</tt> is alphanumeric, it can be used in any API that requires an object name.}} | {{Note|Although the <tt>object_id</tt> is alphanumeric, it can be used in any API that requires an object name.}} | ||
To | '''To obtain a record identifier from a <tt>request</tt> object sent by a Custom Action button:''' | ||
:This code gets the record IDs and uses the [[searchRecords]] API to retrieve the records: | |||
:<syntaxhighlight lang="java" enclose="div"> | :<syntaxhighlight lang="java" enclose="div"> | ||
<% | <% | ||
String | // Get the object ID and the comma separated list of record IDs | ||
for (int | String object_id = request.getParameter("object_id"); | ||
String selectedRecords = request.getParameter("selectedRecords"); | |||
// Break the comma-separated list into record IDs. | |||
// Join them with "OR" operands for use when searching for the records | |||
String filterCriteria = ""; | |||
if (selectedRecords != null) | |||
{ | |||
StringTokenizer st = new StringTokenizer(selectedRecords,","); | |||
while (st.hasMoreTokens()) | |||
{ | |||
if ( !"".equals(filterCriteria.trim())) | |||
{ | |||
// Criteria string isn't empty, and we're adding another expression | |||
// Prefix the new expression with a boolean OR operator | |||
filterCriteria += " OR " | |||
} | |||
filterCriteria += "record_id = "+ st.nextToken(); | |||
} | |||
} | |||
// Use the filter criteria to fetch the selected records | |||
// Here, we ask for the record_id and name fields | |||
Result results; | |||
results = Functions.searchRecords(object_id , "record_id,name", filterCriteria); | |||
int resultCode = results.getCode(); | |||
if (resultCode < 0) | |||
{ | |||
// Error occurred | |||
} | |||
else if (resultCode == 0) | |||
{ | |||
// No records found. (This situation should never occur.) | |||
} | |||
else | |||
{ | { | ||
String | // Records retrieved successfully | ||
// Process them here | |||
ParametersIterator iterator = results.getIterator(); | |||
while(iterator.hasNext()) | |||
{ | |||
Parameters params = iterator.next(); | |||
String recordID = params.get("record_id"); | |||
String recordName = params.get("name"); | |||
// Take additional action according to your business logic | |||
} | |||
} | } | ||
%> | %> | ||
</syntaxhighlight> | </syntaxhighlight> |
Latest revision as of 02:02, 14 August 2013
To get all of the parameters available in the request object, and their values:
<% String[] params = request.getParameterValues(); for (int i=0; i<params.length; i++) { String paramName = params[i]; String paramValue = request.getParameter( paramName ); } %>
To obtain a record identifier from a request object sent by the platform:
- With the object ID and record ID, use the getRecord API to retrieve the record.
<% String object_id = request.getParameter("object_id"); String record_id = request.getParameter("record_id"); %>
To obtain a record identifier from a request object sent by a Custom Action button:
- This code gets the record IDs and uses the searchRecords API to retrieve the records:
<% // Get the object ID and the comma separated list of record IDs String object_id = request.getParameter("object_id"); String selectedRecords = request.getParameter("selectedRecords"); // Break the comma-separated list into record IDs. // Join them with "OR" operands for use when searching for the records String filterCriteria = ""; if (selectedRecords != null) { StringTokenizer st = new StringTokenizer(selectedRecords,","); while (st.hasMoreTokens()) { if ( !"".equals(filterCriteria.trim())) { // Criteria string isn't empty, and we're adding another expression // Prefix the new expression with a boolean OR operator filterCriteria += " OR " } filterCriteria += "record_id = "+ st.nextToken(); } } // Use the filter criteria to fetch the selected records // Here, we ask for the record_id and name fields Result results; results = Functions.searchRecords(object_id , "record_id,name", filterCriteria); int resultCode = results.getCode(); if (resultCode < 0) { // Error occurred } else if (resultCode == 0) { // No records found. (This situation should never occur.) } else { // Records retrieved successfully // Process them here ParametersIterator iterator = results.getIterator(); while(iterator.hasNext()) { Parameters params = iterator.next(); String recordID = params.get("record_id"); String recordName = params.get("name"); // Take additional action according to your business logic } } %>