Run Button in a Grid Application (Processing Records)

This option in the Grid allows to create a button to process a PHP code in selected records (checkbox).


Creating a new button

1. Performing actions on multiple rows of a Grid application can be done creating a new button in the Grid.


2.We will name the field "Process" and select the type "Run".


3. This kind of button has 2 events to process PHP Codes.

onRecord: runs to each record that was selected.
onFinish: runs after process all selected records.


4. In the code of our button we need some global variables, then, first, let's create these variables accessing the onScriptInit event in the application menu ...


... and use the code below

Event Grid: OnInti

[i] = 0;

It will be our Array Key

[total_chked] = array();

Array where we will keep all selected values


5. Now we can use [i] and [total_chked] in the onRecord and onFinish of the Run button.

Event Button: Onrecord

Event Button: OnRecord
$arr=[i]; Keeping the key in a local variable


Assigning the Contact Name to the Array
[i]++; increasing the key to access the next Array position

Event Button: OnFinish

Event Button: OnFinish
$tot = count([total_chked]); Counting the total of checked records.

$contacts = $tot." Selected Contacts: ";

Will keep the message to be displayed

$contacts .= [total_chked][$x];

if($x == ($tot-1)){

$contacts .= ".";


$contacts .= ", ";



/* This code will check who is the last selected value to add a dot, else add a comma */
echo "<table width='300px' border='1' bordercolor='#000000' cellpadding='0' cellspacing='0'>
<td colspan='2'><strong> ($tot) Selected Contacts: <strong></td>
<td><font color='#003366'><strong> $contacts </strong></font> </td>
Display the message with all selected contacts

6.Now we should access “Application>>Global Variables” to set [i] and [total_chked] to be “OUT” variables.


7.Running the application, select the records and click on the “Process” button.