User Tools

Site Tools


en:actions:actioncallprocedure

Differences

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


Previous revision
en:actions:actioncallprocedure [2021/02/13 11:23] (current) – external edit 127.0.0.1
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]]