AgileApps Support Wiki Pre Release

Difference between revisions of "Incoming Method Parameters"

From AgileApps Support Wiki
imported>Aeric
imported>Aeric
Line 18: Line 18:
:<syntaxhighlight lang="java" enclose="div">
:<syntaxhighlight lang="java" enclose="div">
// Generate a newline-separated list of parameters
// Generate a newline-separated list of parameters
debug( params.toString().replace(",", ",\n") );
Logger.info( params.toString().replace(",", ",\n"), "YourClassName" );
</syntaxhighlight>
</syntaxhighlight>



Revision as of 04:30, 13 November 2014

Standard Object Parameters

When a Java method is invoked by a Rule or Macro, the record's fields are passed to the method in a Parameters instance. That instance contains the object's custom fields, as well as the object's Standard Fields. The following convenience parameters are passed, as well:

Field name Notes
name The record's "name", as specified by the object's Record Locator definition. For cases, it's the unique case number. For users, it's the user's full name. And so on.
is_deleted True (=1) if the record is in the recycle bin. Otherwise false (=0).
userPrimaryTeamId The current user's team affiliation.

Field Parameters

When a Parameters instance is returned by a search, it contains the fields specified in the search. When passed to a Java method by a Rule or Macro, it contains all of the fields for the current record.

Add this line to your code above to put a complete list of parameters into the debug log:

// Generate a newline-separated list of parameters
Logger.info( params.toString().replace(",", ",\n"), "YourClassName" );

The code assumes that your parameters object is named params. It adds a linebreak after each comma in the string-representation of the Parameters hashmap, to improve readability.

Thumbsup.gif

Tip: To see the listing clearly, copy the results into a text editor.

Additional Macro Parameters

These values have counterparts in the rule parameters, but have different names:

Field name Notes
p_service_domain Ex: acme.claimdynamics.com
user_id The current user's ID.

Additional Rule Parameters

These values are included when a Java method is invoked from a Rule. The first two are equivalent to the additional macro parameters shown above. A number of useful session values are included as well, along with values that pertain to the current user:

Field name Notes
serverName Ex: acme.claimdynamics.com
userId The current user's ID.
current_application The ID of the application the user is running.
JSESSIONID The session identifier. (Generally used only when making a REST API call.)
isCaseDynamicsSession True (=1) if the ServiceDesk application is running. Else false (=0).
login not used
layout_id The ID of the Form that is currently being used to display the record.
user.id
user.primaryteamid
userPrimaryTerritoryId
user_local_time
user User's full name. For example: Aaron Acme
user.firstname
user.lastname
user.primaryteamname
user.primaryroleid
user.email
userEmail
Email address
lang User's language identifer. For example: en