ProcessMaker code contributions

Moderator: amosbatto

By HeshanKaru1994
#824261
A -> B
A and B are two dynaforms, and when A completes an incomplete new record is added to a pm table and if the user click on the previous step that incomplete record should be deleted from the table. How to implement such a occurance

Thank you
User avatar
By amosbatto
#824289
You can add an onclick handler to the "previous step" link to set a value in a hidden field if the user clicks on the "previous step" link. Then a trigger would check if there is a value in the hidden field's variable and use executeQuery() to delete the database record.
For example, this JavaScript could be used:
Code: Select all
$("#dyn_backward").click( function() {
     $("#clickedPrevious").setValue('YES');
});
Where "clickedPrevious" is the ID of a hidden field in your Dynaform.

Then, set the following trigger to fire before your Dynaform A:
Code: Select all
if (@@clickedPrevious == 'YES') {
    @@clickedPrevious = ''; //reset for next time 
    $caseNo = @@APP_NUMBER;
    executeQuery("DELETE FROM MYTABLE WHERE CASE_NO=$caseNo");
} 
The problem is that this solution isn't foolproof, because the user can use also use the Steps menu to return to Dynaform A or simply reopen the case and go to Dynaform A.

You are better off to simply use the following trigger before Dynaform A, so that any possible records are always deleted:
Code: Select all
$caseNo = @@APP_NUMBER;
executeQuery("DELETE FROM MYTABLE WHERE CASE_NO=$caseNo");

Hi, I have a case which the duties of the users ar[…]

Starting subprocess

Can we start multiple instances of a sub process. […]

mobile app source code

ProcessMaker Mobile App Android, Use out-of-the-bo[…]

Timer does not works

Hi guys, I'm completely new to process maker. Rece[…]