Differences

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

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
docs:2500_config_apps:0900_add_edit_processes [2022/08/25 00:00] – ↷ Page moved from 2500_config_apps:0900_add_edit_processes to docs:2500_config_apps:0900_add_edit_processes administratordocs:2500_config_apps:0900_add_edit_processes [2025/06/12 03:58] (current) – Change to AwareIM aware_support3
Line 2: Line 2:
 ====== Adding/Editing Processes ====== ====== Adding/Editing Processes ======
  
-The following section describes how to work with the editor of processes when adding a new process or editing an existing one. Processes are described in [[2000_concepts:0200_basics:0300_processes_link_ui_business_logic|Processes as Links between User Interface and Business Logic]].+The following section describes how to work with the editor of processes when adding a new process or editing an existing one. Processes are described in [[docs:2000_concepts:0200_basics:0300_processes_link_ui_business_logic|Processes as Links between User Interface and Business Logic]].
  
-The editor of processes can be started as described in the [[2500_config_apps:0300_work_config_elements:0000_start|Working with Configuration Elements]] section. It has two tabs – Action Rules and Failure Rules. Properties of the process are displayed in the Element Properties window. Action and Failure Rules represent rule collections, which can be edited using the Rule Editor For details how to work with the Rule Collection see [[2500_config_apps:0800_add_edit_rules:0100_working_rule_collections:0000_start#Editor|Working with Rule Collection Editor]]. +The editor of processes can be started as described in the [[docs:2500_config_apps:0300_work_config_elements|Working with Configuration Elements]] section. It has two tabs – Action Rules and Failure Rules. Properties of the process are displayed in the Element Properties window. Action and Failure Rules represent rule collections, which can be edited using the Rule Editor For details how to work with the Rule Collection see [[docs:2500_config_apps:0800_add_edit_rules:0100_working_rule_collections#Editor|Working with Rule Collection Editor]]. 
  
-Action rules determine what the process will do (unless the process is implemented by a custom software component – see below). Failure rules deternine what happens (if anything) if a process fails. Failure rules are explained in the [[2000_concepts:0800_data_processing:0200_rules_transactions:0300_process_failure_rules|Process Failure Rules]] section. +Action rules determine what the process will do (unless the process is implemented by a custom software component – see below). Failure rules deternine what happens (if anything) if a process fails. Failure rules are explained in the [[docs:2000_concepts:0800_data_processing:0200_rules_transactions:0300_process_failure_rules|Process Failure Rules]] section. 
  
 The following properties can be specified for a process: The following properties can be specified for a process:
Line 19: Line 19:
 ===== Description =====  ===== Description ===== 
    
-Specify the description of the process. Providing a description is highly recommended. Any description if defined is included into the generated documentation for the business space version – see [[2500_config_apps:3100_gen_doc|Generating Documentation]]. +Specify the description of the process. Providing a description is highly recommended. Any description if defined is included into the generated documentation for the business space version – see [[docs:2500_config_apps:3100_gen_doc|Generating Documentation]]. 
  
 ===== Category =====  ===== Category ===== 
Line 31: Line 31:
 Instances of the business objects that the process works with may come from two sources: Instances of the business objects that the process works with may come from two sources:
  
-  - The process itself may look for the instances of the business objects it needs by executing ''[[3100_actions:0170_find|FIND]]'' action of the Rule Language. +  - The process itself may look for the instances of the business objects it needs by executing ''[[a_f:a:find|FIND]]'' action of the Rule Language. 
-  - The instances of the business objects the process needs may be written into the Context just before the process starts (see [[2000_concepts:0800_data_processing:0100_rule_evaluation:0800_context_rule_execution|Context of Rule Execution]]) so when the process starts these instances are immediately available for the process to use in its implementation rules. These are the instances of the business objects declared as process input. +  - The instances of the business objects the process needs may be written into the Context just before the process starts (see [[docs:2000_concepts:0800_data_processing:0100_rule_evaluation:0800_context_rule_execution|Context of Rule Execution]]) so when the process starts these instances are immediately available for the process to use in its implementation rules. These are the instances of the business objects declared as process input. 
-  +
 To define business objects or business object groups as process input select the objects or groups in the left list box  and press the Right arrow button to move the selected objects or groups into the right list box. Similarly if you want to delete certain business objects or groups from the process input select the objects or groups in the right list box and press the Left arrow button to move them into the left list box. To define business objects or business object groups as process input select the objects or groups in the left list box  and press the Right arrow button to move the selected objects or groups into the right list box. Similarly if you want to delete certain business objects or groups from the process input select the objects or groups in the right list box and press the Left arrow button to move them into the left list box.
  
Line 40: Line 40:
 The following options are available: The following options are available:
  
-  - //Rules// – select this radio button if you will define rules that implement the process (at least one rule must be defined). Use Action Rules tab to define the rules – see [[2500_config_apps:0800_add_edit_rules:0100_working_rule_collections:0000_start|Working with Rule Collection Editor]].  +  - //Rules// – select this radio button if you will define rules that implement the process (at least one rule must be defined). Use Action Rules tab to define the rules – see [[docs:2500_config_apps:0800_add_edit_rules:0100_working_rule_collections|Working with Rule Collection Editor]].  
-  - //Custom Software Component// – select this radio button if the process is implemented by a piece of code – see "Aware IM Programmer’s Reference". If you select this option you will also need to provide the fully qualified name of the Java class that implements the process, for example "com.mycompany.MyClass".+  - //Custom Software Component// – select this radio button if the process is implemented by a piece of code – see "AwareIM Programmer’s Reference". If you select this option you will also need to provide the fully qualified name of the Java class that implements the process, for example "com.mycompany.MyClass".
 ===== User name =====  ===== User name ===== 
    
Line 48: Line 48:
 ===== Allow cancel =====  ===== Allow cancel ===== 
    
-//**Aware IM**// will automatically add the Cancel button when a process runs, so that the user can abort the execution of the process. Sometimes it may be necessary to disallow the user to cancel a process. In this case you need to untick this checkbox.+//**AwareIM**// will automatically add the Cancel button when a process runs, so that the user can abort the execution of the process. Sometimes it may be necessary to disallow the user to cancel a process. In this case you need to untick this checkbox.
  
 ===== Handles "Forgotten Password" Functionality =====  ===== Handles "Forgotten Password" Functionality ===== 
    
-Tick this box if you want the process to handle the "forgotten password" functionality. In this case the process will be called when the user clicks on the "Forgot your password" link on the [[2000_concepts:0900_prod_feats:0100_access_control:0200_login|login form]], or if the "forgotten password" URL is invoked directly. The process can ask the user a security question, verify the answer and reset the password or do something else. Note, there can only be one process that handles the "forgotten password" functionality.+Tick this box if you want the process to handle the "forgotten password" functionality. In this case the process will be called when the user clicks on the "Forgot your password" link on the [[docs:2000_concepts:0900_prod_feats:0100_access_control:0200_login|login form]], or if the "forgotten password" URL is invoked directly. The process can ask the user a security question, verify the answer and reset the password or do something else. Note, there can only be one process that handles the "forgotten password" functionality.
  
 ===== Run in the background =====  ===== Run in the background ===== 
Line 58: Line 58:
 If a process takes a long time to execute (such as, for example, large import process or a process handling large queries in batches) it is possible to run such a process in the background. The user will be able to continue working with the system while the process is running in the background. The user will be notified when the process completes or when it requires interaction with the user. Here you can specify a number of seconds that the system has to wait before it starts running the process in the background. Note that this property should only be used for processes that the user starts explicitly, not for processes that are started from other processes.  If a process takes a long time to execute (such as, for example, large import process or a process handling large queries in batches) it is possible to run such a process in the background. The user will be able to continue working with the system while the process is running in the background. The user will be notified when the process completes or when it requires interaction with the user. Here you can specify a number of seconds that the system has to wait before it starts running the process in the background. Note that this property should only be used for processes that the user starts explicitly, not for processes that are started from other processes. 
  
-{{page>5000_videos:600_long_running_processes&noheader}}+{{page>docs:5000_videos:600_long_running_processes&noheader}}
  
 ===== Single tab mode =====  ===== Single tab mode ===== 
Line 65: Line 65:
  
 <code aim>ENTER NEW Object <code aim>ENTER NEW Object
-VIEW Object</code>+ VIEW Object </code>
  
 The first and all subsequent actions except the last one are considered to be intermediate actions. Depending on the nature of the last action it can be treated as an intermediate one or as the final one. The last action that expects input from the user is still an intermediate action, but if the action just displays the results and does not expect input from the user, it is considered to be the final one. The VIEW action does not expect input from the user, so it is the final one in this case. In most cases intermediate actions are displayed in a popup window. The final action is displayed according to the designated output of the process, specified either in a form/query operation or a menu command (depending on where the process is used).  You can also specify that intermediate actions be displayed in the current tab rather than a popup window. This option is useful for applications running on a mobile phone where popup windows can be problematic. The first and all subsequent actions except the last one are considered to be intermediate actions. Depending on the nature of the last action it can be treated as an intermediate one or as the final one. The last action that expects input from the user is still an intermediate action, but if the action just displays the results and does not expect input from the user, it is considered to be the final one. The VIEW action does not expect input from the user, so it is the final one in this case. In most cases intermediate actions are displayed in a popup window. The final action is displayed according to the designated output of the process, specified either in a form/query operation or a menu command (depending on where the process is used).  You can also specify that intermediate actions be displayed in the current tab rather than a popup window. This option is useful for applications running on a mobile phone where popup windows can be problematic.
Line 71: Line 71:
 ===== Display under =====  ===== Display under ===== 
    
-You can get //**Aware IM**// to display the process node in the Elements Tree under a node of some other process. If you want this select the process under which the current process should be displayed+You can get //**AwareIM**// to display the process node in the Elements Tree under a node of some other process. If you want this select the process under which the current process should be displayed
  
 ===== Isolation level =====  ===== Isolation level ===== 
    
-This property allows specifying database transaction isolation level that will be used when the process executes. Transaction isolation level is an advanced subject and its description is beyond the scope of this document. You can read this article  +This property allows specifying database transaction isolation level that will be used when the process executes. Transaction isolation level is an advanced subject and its description is beyond the scope of this document. You can read this article [[wp>Isolation_(database_systems)]] for more details. If you don’t specify the isolation level, the default level ("read committed") will be used.
- +
-[[https://en.wikipedia.org/wiki/Isolation_(database_systems)]] for more details. If you don’t specify the isolation level, the default level ("read committed") will be used.+
  
 ===== Process Diagrams ===== ===== Process Diagrams =====
Line 83: Line 81:
 If you click on the "Diagram" tab at the bottom of the process editor you will see the flow chart of the process rules as shown on the picture below.  If you click on the "Diagram" tab at the bottom of the process editor you will see the flow chart of the process rules as shown on the picture below. 
  
-{{ :documentation:images:process_map.png?nolink&425 |}}+{{ docs:images:process_map.png?nolink&425 |}}
  
  
Line 90: Line 88:
 If a process calls another process (sub-process) it is displayed as a blue box on the diagram. You can double click on this box (or click "Expand" at the bottom of the screen) to see the rules of the sub-process on the same diagram as shown on this picture: If a process calls another process (sub-process) it is displayed as a blue box on the diagram. You can double click on this box (or click "Expand" at the bottom of the screen) to see the rules of the sub-process on the same diagram as shown on this picture:
  
-{{ :documentation:images:process_map_expand.png?nolink&425 |}}+{{ docs:images:process_map_expand.png?nolink&425 |}}
  
 To collapse the rules of the sub-process click on the "-" icon in the top right corner of the sub-process. You can also move actions and conditions around by pressing the arrow buttons in the toolbar and customize the appearance of the diagram by pressing the "Settings" button on the toolbar. To collapse the rules of the sub-process click on the "-" icon in the top right corner of the sub-process. You can also move actions and conditions around by pressing the arrow buttons in the toolbar and customize the appearance of the diagram by pressing the "Settings" button on the toolbar.
  
  • Last modified: 2022/09/13 18:06