...
Each of the different types of Custom Logic: Custom Events, Custom API, and Custom Validation share these common syntax syntaxes and available functions.
PCR-360 Data functions
...
List Code of the specified record. Returns NULL if nothing is found.
Other allowed functions & syntax
Logical Structures: if /elseif /else , switch/case/default , break , for , foreach/as , while , do-while , return
Date/Time: date , time , mktime , strtotime
Mathematical: round , ceil , floor , rand , srand , pow , exp , abs , max , min , bindec , hexdec , octdec , base_convert
String: strtolower , strtoupper , substr , stristr , strstr , stripos , strpos , strripos , strrpos , addslashes , chr , trim , ltrim , rtrim , str_replace , substr_replace , strlen
Array: explode , implode , is_array , in_array , is_numeric , json_decode
Debug: error_log
cURL: curl_init , curl_setopt , curl_exec , curl_errno , curl_error , curl_getinfo , curl_close
cURL Constants: CURLOPT_URL, CURLOPT_HEADER, CURLOPT_NOBODY, CURLOPT_HTTPGET, CURLOPT_RETURNTRANSFER
...
call
The Custom API and Custom Events can invoke the Write methods for API types by using the call function. This function allows passing data from the Custom API or Events to the API logic. When invoking this from the Custom API this feature allows you to reformat the incoming API data - perform data validation and lookup and then handoff the properly formatted data to write data. When invoked from a Custom Event it allows scheduled or triggers events to update this data.
Code Block | ||
---|---|---|
| ||
array $this->call ( string $method, array $bind_params); |
Parameters
$method The callable method name. The available callable methods: saveCable, saveContact, saveEquipment, saveGla, saveService, and saveServiceDesk
$params An array of key payload data that is passed to the other API calling function.
Return Values
The function returns a result array containing 'data' which specifies the outcome of the call. For a successful call to saveServiceDesk, this array contain the Service Desk item/action that was created.
Example
In this example, the $payload array contains all the parameters required to create a Service Order and Action
Code Block | ||
---|---|---|
| ||
$result = $this->call("saveServiceDesk", $payload);
$response["servicedesk_number"] = $result["data"]; |
Example
In this example, the Contact API is being invoked via the Custom API endpoint
Code Block | ||
---|---|---|
| ||
$contact_request = [
"customer_number" => "ABC123",
"last_name" => "Help",
"first_name" => "PCR",
"email" => "help@pcr.com",
"email_directory" => 1,
"phone_number" => "616-555-1212",
"phone_primary" => 1,
"phone_type" => 1234, // RECID from Lists
"phone_directory" => 1,
"status" => 1,
"contact_directory" => 1,
"contact_types" => "CUSTOMER",
];
$result_contact = $this->call("saveContact", $contact_request);
if($result_contact["status"] == "success") {
$response["contact"] = $result_contact["data"];
} |
debug
The debug command outputs to a cache which is then displayed in the Debug tab/grid for the Custom Logic you are debugging.
Example
In this example, the debug function is being invoked.
Code Block | ||||
---|---|---|---|---|
| ||||
$this->debug(); |
Child pages (Children Display) | ||||
---|---|---|---|---|
|