Difference between revisions of "UpdateRecord"

From AgileApps Support Wiki
imported>Aeric
imported>Aeric
Line 44: Line 44:
</syntaxhighlight>
</syntaxhighlight>


====Example #2: Update a "Related To" Field in an Opportunity Record====
====Example #2: Update a Record with a Multi Object Lookup field====
This example gets needed details to update the Opportunity object's <tt>Related To</tt> field. In order to update opportunity object's <tt>Related to</tt> field to be Account or Prospect, you need to use both of these fields:  <tt>related_to_id</tt> and <tt>related_to_type</tt>
 
:<syntaxhighlight lang="java" enclose="div">
//Retrieve the record ID of the ACCOUNT that you want to relate to the current opportunity
String accountID = "";
 
//Use requestParams to retrieve the record_id of the Opportunity record to update
String opportunityID = "";
 
//Create an instance of the Paramters object to hold the key-value pairs to update the record with
Parameters oppParams = Functions.getParametersInstance();
 
oppParams.add("related_to_id", accountID);
oppParams.add("related_to_type", "ACCOUNT"); 
Result opportunityUpdateResult = Functions.updateRecord("OPPORTUNITY_v2", opportunityID, oppParams);
Functions.debug("Result from opportunity update: " + opportunityUpdateResult.getMessage());
 
</syntaxhighlight>
 
====Example #3: Update a Record with a Multi Object Lookup field====
This example uses the same fields and record IDs as those shown when adding a record with a multiobject lookup field.
This example uses the same fields and record IDs as those shown when adding a record with a multiobject lookup field.
:<syntaxhighlight lang="java" enclose="div">
:<syntaxhighlight lang="java" enclose="div">

Revision as of 01:03, 16 May 2013


Syntax
Result result = Functions.updateRecord(String objectName, String recordID, Parameters params);

Parameters

objectName
The identifier of the object
recordID
The identifier of the record to update.
  • Use the searchRecords API to retrieve the record ID
  • An error is returned if the record is not found.
params
  • The field-value pairs for the object.

Return

Result object

Example #1: Update an Account Record

This example creates an instance of Parameters and adds name-values pairs to it. The code then calls updateRecord, assigning the returned value to an instance of Result and calling Result.getCode() to assign the error code to a variable which is then conditionally checked to determine the code to execute. If the call was not successful, the code calls throwError to display an error dialog.

Parameters params = Functions.getParametersInstance();
String accountID = "";
// Some logic to populate accountID variable.
params.add("name", "Acme Solutions");
params.add("number", "GRG2323339");
Result result = Functions.updateRecord("ACCOUNT", accountID, params);
int resultCode = result.getCode();
if(resultCode < 0)
{
    // Some error happened.
    String msg = "Account could not be updated";
    Functions.debug(msg + ":\n" + result.getMessage());  // Log details
    Functions.throwError(msg + ".");                     // Error dialog
}
else 
{
    // Take other actions after successful addition of the account.
}

Example #2: Update a Record with a Multi Object Lookup field

This example uses the same fields and record IDs as those shown when adding a record with a multiobject lookup field.

Parameters params = Functions.getParametersInstance();
String bookID = "117645552"
params.add("title", "Another Good Book"); 
params.add("libraryBook", "9978946545:767645492");
                      //  {object_id}:{record_id}
Result result = Functions.updateRecord("Books", bookID, params); 
int resultCode = result.getCode();
if(resultCode < 0)
{
    // Some error happened.
    String msg = "Book record could not be updated";
    Functions.debug(msg + ":\n" + result.getMessage());  // Log details
    Functions.throwError(msg + ".");                     // Error dialog
}
else
{
    // Successful update. Take other actions, as needed.
}