Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

[ Image Removed |../../index.htm#lansa/ugub_40114.htm]
You are here:

...

A process is essentially a menu of functions.
A process named PROC01 with 3 functions named FUNC01 to FUNC03 could be visualized like this:
              

No Format
nopaneltrue
              __________

...


             |          |
             |  PROC01  |
             |          |
             |  Select  |
             |  FUNC01  |
             |  FUNC02  |
             |  FUNC03  |
             |__________|

...


                  |
      ____________|____________
 _

...

___|_____   __

...

__|_____   _

...

___|_____

...

          

...

 

...

          

...

 

...

          

...

  FUNC01  

...

 

...

  FUNC02  

...

 

...

  FUNC03  


|          | |          | |          |
|  FUNC01  | |  FUNC02  | |  FUNC03  |
|__________

...

 

| |__________

...

 

| |__________|

 
If another process named PROC02 existed and had 2 associated functions called FUNC04 and FUNC05, then it could be visualized like this:
              

No Format
nopaneltrue
              __________

...


             |          |

...


             |  PROC02  |

...


             |          |

...


             |  Select  |

...


             |  FUNC04  |

...


             |  FUNC05  |

...


             |__________|

...


                  |

...


          ________|___

...

_
      ___|______   ____|____

...

_
     |          |

...

 |          |

...


     |  FUNC04  |

...

 |  FUNC05  |

...


     |__________|

...

 |__________|

 
Both PROC01 and PROC02 can be independently invoked from within LANSA. However, it is possible to "attach" PROC02 to PROC01 using the facilities described in the following sections.

If PROC02 was "attached" to PROC01, then PROC01 would now be visualized like this:
                     

No Format
nopaneltrue
                     __________

...


                    |          |
                    |  PROC01  |
                    |          |
                    |  Select  |
                    |  FUNC01  |
                    |  FUNC02  |
                    |  FUNC03  |
                    |  PROC02  |
                    |__________|

...


                         |
      ___________________|__________________

...


 ____|_____   __

...

__|_____   __

...

__|_____   __

...

__|____

...

          

...

 

...

          

...

 

...

          

...

 

...

  PROC02  

...

  FUNC01  

...

 

...

  FUNC02  

...

 

...

  FUNC03  

...

 

...

          

_
|          | |          | |          | |  PROC02  |
|  FUNC01  | |  FUNC02  | |  FUNC03  | |          |
|__________

...

 

| |__________

...

 

| |__________

...

 

...

  Select  

...

| |  Select  |
                                       |  FUNC04  |
                                       |  FUNC05  |
                                       |__________|

...


                                            |
                                       _____|____

...

__
                                  ____|___

...

__   ____|_____

...


                                 |          | |          |
                                 |  FUNC04  | |  FUNC05  |
                                 |__________|

...

 |__________|
 

 
It is also possible to "attach" FUNC04 and FUNC05 directly to PROC01 (even though they are part of process PROC02). If this was done PROC01 could be visualized like this:
                           

No Format
nopaneltrue
                           __________

...


                          |          | 
                          |  PROC01  |
                          |          |
                          |  Select  |
                          |  FUNC01  |
                          |  FUNC02  |
                          |  FUNC03  |
                          |  FUNC04  |
                          |  FUNC05  |
                          |__________|

...


                               |
      _________________________|_________________________

...


 ____|_____   __

...

__|_____   __

...

__|_____   __

...

__|_____   __

...

__|____

...

          

...

 

...

          

...

 

...

          

...

 

...

          

...

 

...

          

...

  FUNC01  

...

 

...

  FUNC02  

...

 

...

  FUNC03  

...

 

...

  FUNC04  

...

 

...

  FUNC05  

...

          

...

 

...

          

...

 

...

          

...

 

...

 (PROC02) 

...

 

...

 (PROC02) 

_
|          | |          | |          | |          | |          |
|  FUNC01  | |  FUNC02  | |  FUNC03  | |  FUNC04  | |  FUNC05  |
|          | |          | |          | | (PROC02) | | (PROC02) |
|__________

...

 

| |__________

...

 

| |__________

...

 

| |__________

...

 

| |__________

...

|


In fact, process PROC02 may have a process(s) "attached" to it. For instance, if process PROC03 was attached to process PROC02 and process PROC02 was itself attached to process PROC01, then process PROC01 could be visualized like this:
                     

No Format
nopaneltrue
                     __________

...


                    |          |
                    |  PROC01  |
                    |          |
                    |  Select  |
                    |  FUNC01  |
                    |  FUNC02  |
                    |  FUNC03  |
                    |  PROC02  |
                    |__________|

...


                         |
      ___________________|__________________
 _

...

___|_____   __

...

__|_____   __

...

__|___

...

__   ____|____

...

          

...

 

...

          

...

 

...

          

...

 

...

          

...

  FUNC01  

...

 

...

  FUNC02  

...

 

...

  FUNC03  

...

 

...

  PROC02  

_
|          | |          | |          | |          |
|  FUNC01  | |  FUNC02  | |  FUNC03  | |  PROC02  |
|__________

...

 

| |__________

...

 

| |__________

...

 

...

          

...

| |          |
                                       |  Select  |
                                       |  FUNC04  |
                                       |  FUNC05  |
                                       |  PROC03  |
                                       |__________|

...


                                            |
                                 ___________|____________

...


                           _____|____   _

...

___|_____

...

   ____|_____

...


                          |          | |          | |          |
                          |  PROC03  | |  FUNC04  | |  FUNC05  |
                          |          | |__________|

...

 |_________

...

_|
                          |  Select  |                          
                          |  FUNC06  |
                          |  FUNC07  |
                          |__________|

...


                                |
                          ______|_____

...


                     ____|_____   __

...

__|____

...

_
                    |          | |          |
                    |  FUNC06  | |  FUNC07  |
                    |__________|

...

 |__________|                  

                                                  
                                                  
 
It can be seen from these examples that by "attaching" a process to another process a "hierarchy" of process menus can be created.

Some other points to note about this facility are:

  • Multiple processes may be attached to a process.
  • Multiple functions (from other processes) may be directly attached to a process.
  • A process (or any of its associated functions) may be attached to itself.
  • If a process B is attached to process A, then it is possible to attach process A to process B.
  • Processes can be built into a "hierarchy" using this facility. There is no limit to the "depth" of the hierarchy that can be defined, but when actually using a process the "depth" being used must not exceed 9 processes. If it does an error message will be issued indicating that it is not possible to go any deeper in the process "hierarchy" and that the required process should be accessed via a different route.
  • Processes and functions can be attached and detached dynamically. There is no need to recompile any associated functions after attaching or detaching them from another process.
  • When a process or function is deleted all associated attachments are also automatically deleted.

...