User Tools

Site Tools



This shows you the differences between two versions of the page.

Link to this comparison view

en:actions:actioncallprocedure [2016/10/09 09:10]
en:actions:actioncallprocedure [2020/02/09 13:26] (current)
Line 1: Line 1:
 +====== Call procedure ======
 +This action allows you to call a procedure.
 +A procedure contains actions inserted between a [[en:​actions:​ActionBeginProcedure|Begin procedure action]] and a [[en:​actions:​ActionEndProcedure|End procedure action]]. A procedure can be called using a [[en:​actions:​ActionCallProcedure|Call procedure action]] or any "If true/​false/​etc"​ parameter. When the actions contained within the procedure have been executed the execution automatically jumps after the action that made the procedure call.
 +Procedures have the following limitations:​
 +  * Each procedure has an unique, non-empty name that cannot be dynamically set
 +  * Is not allowed to declare a procedure within another procedure
 +  * Each Begin procedure action has to have exactly one End procedure action
 +  * Variables declared within the procedure will be kept outside the procedure (this is not the case in most programming languages)
 +  * Procedures doesn'​t have any parameters (yet)
 +Note also that:
 +  * Recursive calls are allowed (a procedure can call itself)
 +  * You can call a procedure before it is declared
 +  * You should not use any [[en:​actions:​ActionGoto|Goto action]], conditional actions, nor jump outside the procedure because doing this will prevent the execution to go back to the calling action
 +  * You should not mix gotos and procedures
 +[//Added in Actionaz 3.4.0.//]
 +===== Standard parameters =====
 +==== Input parameters ====
 +== Name ==
 +The name of the procedure to call.
 +===== Exceptions =====
 +  * [[en:​actions:​exceptions#​Bad parameter|Bad parameter]]
 +  * [[en:​actions:​exceptions#​Code error|Code error]]
 +  * [[en:​actions:​exceptions#​Timeout|Timeout]]