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
start:three_layers [2012/09/07 15:49]
shyser [The Presentation Layer: Layouts and Fields]
start:three_layers [2012/09/07 18:18]
shyser [Action Types]
Line 1: Line 1:
 +====== The Three Layers of WorkXpress ======
 +
 +
  
 ===== The Presentation Layer: Layouts and Fields ===== ===== The Presentation Layer: Layouts and Fields =====
  
-{{:​header-build_interface.gif?300|}}+{{:​header-build_interface.gif|}}
  
-{{:​contact_gretta.gif?200|}}+{{:​contact_gretta.gif|}}
  
-{{:​blue_block.gif?200|}}Layouts are the forms you present to your users. Create rich pages and navigation.+{{:​blue_block.gif|}}Layouts are the forms you present to your users. Create rich pages and navigation.
  
-{{:​yellow_block.gif?200 |}}Fields are nested in Layouts, and let users enter data about Items.+{{:​yellow_block.gif|}}Fields are nested in Layouts, and let users enter data about Items.
  
  
Line 18: Line 21:
 Fields are similar to a form element or a control (in addition to filling a role in the data layer). They serve the primary purpose of presenting data to and capturing data from Users. However, they also incorporate user interface elements such as input masks and sub-controls like a calendar picker or color wheel. Fields are similar to a form element or a control (in addition to filling a role in the data layer). They serve the primary purpose of presenting data to and capturing data from Users. However, they also incorporate user interface elements such as input masks and sub-controls like a calendar picker or color wheel.
 ===== The Database Layer: Items, Relationships and Fields ===== ===== The Database Layer: Items, Relationships and Fields =====
-{{:​header-comprise_interface.gif?​nolink&​500|}}+~~UP~~
  
-{{:sales_rep_joe.gif?​nolink&​500|}}+{{:header-comprise_interface.gif|}}
  
-{{:red_block.gif?​nolink&​25 ​|}}Items are the people, places and things you want to track.+{{:sales_rep_joe.gif|}}
  
-{{:green_block.gif?​nolink&​25 ​|}}Relationships connect ​Items together.+{{:red_block.gif|}}Items ​are the people, places and things you want to track.
  
-{{:​orange_block.gif?​nolink&​25 ​|}}Fields collect and store data about Items. ​+{{:​green_block.gif|}}Relationships connect Items together. 
 + 
 +{{:​orange_block.gif|}}Fields collect and store data about Items. ​
  
 To create a usable application,​ you'll need to build a robust data model. A data model is a diagram of the people, places, and things you want to track with your software application,​ what information you want to track about them, and how they are interrelated. In WorkXpress, Items, Relationships,​ and Fields comprise the data layer of an application and are the Building Blocks you'll use to realize your data model. To create a usable application,​ you'll need to build a robust data model. A data model is a diagram of the people, places, and things you want to track with your software application,​ what information you want to track about them, and how they are interrelated. In WorkXpress, Items, Relationships,​ and Fields comprise the data layer of an application and are the Building Blocks you'll use to realize your data model.
Line 39: Line 44:
 Use the Search Builder tool to Query the WorkXpress data layer. You can Query Item Types, “join” across Related Item Types, and filter using Fields. All manner of branch logic, filtering and connections is possible empowering a diverse query capability very similar to a SQL language, except point-and-click. Use the Search Builder tool to Query the WorkXpress data layer. You can Query Item Types, “join” across Related Item Types, and filter using Fields. All manner of branch logic, filtering and connections is possible empowering a diverse query capability very similar to a SQL language, except point-and-click.
 ===== The Logic Layer: Actions ===== ===== The Logic Layer: Actions =====
-==== Creating Automation ==== +~~UP~~ 
-{{:​header-automate_actions.gif?​nolink&​500|}} +==== Creating Automation ====  
-{{:​checkbox_field.gif?​nolink&​500|}}+ 
 +{{:​header-automate_actions.gif|}} 
 +{{:​checkbox_field.gif|}} 
 + 
 +{{:​yellow_block.gif|}}Use Actions to build any Automation or Integration. 
 + 
 +{{:​then_else.gif|}} 
  
-{{:​yellow_block.gif?​nolink&​25 |}}Use Actions to build any Automation or Integration. 
-{{ :​then_else.gif?​nolink&​500 |}} 
 We'll teach you about the fifth and final Building Block of WorkXpress, Actions, in this lesson. We'll examine the different kinds of triggers in WorkXpress and show how each trigger fires a procedure. ​ For any procedure, we will show you how you can create and invoke Actions. ​ Finally, we will list the different Action Types available for you to use in WorkXpress. We'll teach you about the fifth and final Building Block of WorkXpress, Actions, in this lesson. We'll examine the different kinds of triggers in WorkXpress and show how each trigger fires a procedure. ​ For any procedure, we will show you how you can create and invoke Actions. ​ Finally, we will list the different Action Types available for you to use in WorkXpress.
 ==== Actions ==== ==== Actions ====
-{{:​yellow_block.gif?​nolink&​30 ​|}}We'​ll teach you about the fifth and final Building Block of WorkXpress, Actions, in this lesson. We'll examine the different kinds of triggers in WorkXpress and show how each trigger fires a procedure. ​ For any procedure, we will show you how you can create and invoke Actions. ​ Finally, we will list the different Action Types available for you to use in WorkXpress.+{{:​yellow_block.gif|}}We'​ll teach you about the fifth and final Building Block of WorkXpress, Actions, in this lesson. We'll examine the different kinds of triggers in WorkXpress and show how each trigger fires a procedure. ​ For any procedure, we will show you how you can create and invoke Actions. ​ Finally, we will list the different Action Types available for you to use in WorkXpress.
  
 === What You'll Learn === === What You'll Learn ===
Line 61: Line 71:
  
 A procedure executes Actions. ​ The types of Actions available at any point in a procedure will vary based on the type of Block from which it is launched. A procedure executes Actions. ​ The types of Actions available at any point in a procedure will vary based on the type of Block from which it is launched.
 +
 == Triggers == == Triggers ==
 In WorkXpress, you must tell the computer when to perform an automation. ​ A trigger is the mechanism that is used to communicate a need for automation to the computer. ​ There are two types of triggers, those fired directly by a user, and those fired indirectly by the computer. In WorkXpress, you must tell the computer when to perform an automation. ​ A trigger is the mechanism that is used to communicate a need for automation to the computer. ​ There are two types of triggers, those fired directly by a user, and those fired indirectly by the computer.
Line 72: Line 83:
  
 The illustration below shows the different types of triggers available from a particular interface element: The illustration below shows the different types of triggers available from a particular interface element:
-{{ :​save_actions.gif?​nolink&​500 ​|}}+{{:​save_actions.gif|}} 
 == Computer Trigger - Scheduled trigger == == Computer Trigger - Scheduled trigger ==
 The only other event, outside of a user activity described above, that WorkXpress could interpret as a trigger is the arrival at some specific point in time.  Setting up these points in time is referred to as scheduling. ​ By creating Actions that are scheduled, you are authorizing the computer to run those Actions according to information in the schedule you provide. The only other event, outside of a user activity described above, that WorkXpress could interpret as a trigger is the arrival at some specific point in time.  Setting up these points in time is referred to as scheduling. ​ By creating Actions that are scheduled, you are authorizing the computer to run those Actions according to information in the schedule you provide.
 == Procedures == == Procedures ==
 All Actions are executed as part of a series of chronologically ordered events called a procedure. If we diagram that procedure, we expose the order in which those events occur. Procedures move from the top to the bottom of the diagram and process each event in order. The starting point for any given procedure will vary based on the trigger, but an example is shown below: All Actions are executed as part of a series of chronologically ordered events called a procedure. If we diagram that procedure, we expose the order in which those events occur. Procedures move from the top to the bottom of the diagram and process each event in order. The starting point for any given procedure will vary based on the trigger, but an example is shown below:
-{{ :​user_saves_1.gif?​nolink&​500 ​|}}+ 
 +{{:​user_saves_1.gif|}} 
 In this example a user clicks the save button on a page, thereby triggering the “page saving” procedure for that page.  First, the Item the page is about begins to save; however. In order to complete, it must save the page it is on.  In order to save the page, each Layout must save.  In order to save a Layout, each of its Fields must save: Field 1 saves first, Field 2 second, and Field 3 third.  ​ In this example a user clicks the save button on a page, thereby triggering the “page saving” procedure for that page.  First, the Item the page is about begins to save; however. In order to complete, it must save the page it is on.  In order to save the page, each Layout must save.  In order to save a Layout, each of its Fields must save: Field 1 saves first, Field 2 second, and Field 3 third.  ​
 ==== Actions ==== ==== Actions ====
 +~~UP~~
 In WorkXpress, an Action is anything you want the computer to do for you automatically. Actions are executed as part of some procedure that was fired by a trigger. As part of a procedure, you may create Actions to send emails, update task statuses, open new pages, or even make SOAP calls. In WorkXpress, an Action is anything you want the computer to do for you automatically. Actions are executed as part of some procedure that was fired by a trigger. As part of a procedure, you may create Actions to send emails, update task statuses, open new pages, or even make SOAP calls.
  
Line 86: Line 101:
 When building an application,​ you may create an Action to be placed at any point in a given procedure. Lets re-examine the procedural tree we diagrammed above: When building an application,​ you may create an Action to be placed at any point in a given procedure. Lets re-examine the procedural tree we diagrammed above:
  
-{{ :​user_saves_2.gif?​nolink&​350 ​|}}+{{:​user_saves_2.gif|}}
 We'd like to create an Action that sends an email when Field 2 saves. We can add that Action to the procedure as follows: We'd like to create an Action that sends an email when Field 2 saves. We can add that Action to the procedure as follows:
  
-{{ :​action_email.gif?​nolink&​500 ​|}}+{{:​action_email.gif|}}
  
 Now that we've added our Action, let's see how our diagrammed procedure has changed: Now that we've added our Action, let's see how our diagrammed procedure has changed:
  
-{{ :​user_saves_3.gif?​nolink&​500 ​|}}+{{:​user_saves_3.gif|}}
  
 As you can see, that Action has become a part of the procedure and will be executed when a user saves that page. As you can see, that Action has become a part of the procedure and will be executed when a user saves that page.
Line 104: Line 119:
 For example, if our Action in the procedure above was intended instead to “Save a value in a Field”, the procedure would need to invoke that Field and any global Actions already associated with that Field. ​ Let's suppose there exists elsewhere in the application a Field 4, and that Field 4 already has a global Action to Run a Report, as below: For example, if our Action in the procedure above was intended instead to “Save a value in a Field”, the procedure would need to invoke that Field and any global Actions already associated with that Field. ​ Let's suppose there exists elsewhere in the application a Field 4, and that Field 4 already has a global Action to Run a Report, as below:
  
-{{ :​action_report.gif?​nolink&​450 ​|}}+{{:​action_report.gif|}}
  
 Then, if we create an Action that happens to save a value into Field 4, we invoke its global Actions. Then, if we create an Action that happens to save a value into Field 4, we invoke its global Actions.
  
-{{ :​action_report_2.gif?​nolink&​450 ​|}}+{{:​action_report_2.gif|}}
  
 You can see how our original procedure would then change: You can see how our original procedure would then change:
  
-{{ :​user_saves_4.gif?​nolink&​450 ​|}}+{{:​user_saves_4.gif|}}
 ==== Action Types ==== ==== Action Types ====
 +~~UP~~
 There are a wide variety of Action Types available in WorkXpress; however, not all may make sense for any given trigger or procedure and may not be accessible for that trigger or procedure. ​ Below is an overview of WorkXpress Action Types and their function. There are a wide variety of Action Types available in WorkXpress; however, not all may make sense for any given trigger or procedure and may not be accessible for that trigger or procedure. ​ Below is an overview of WorkXpress Action Types and their function.
 === Control Actions === === Control Actions ===
Line 148: Line 164:
  
  
- +~~UP~~
  
  
Copyright WorkXpress, 2024