Learn WorkXpress
Chooser select
| A Select Layout is most commonly used when you want the User to make a one-time choice about what other Layouts to navigate to. The User see's a select box and chooses an option, which then reloads the child content area with the Layouts for that option. Returning to the page shows the content previously selected without having to make the selection again. Importantly, the option selected is stored in a field so that you can reference the choice elsewhere. Example: Your application tracks several types of Companies; customers, vendors and partners. Each type has different fields and layouts. When creating a new Company, the user selects whether this company will be a customer, a vendor or a partner. Upon choosing, the content area reloads with the corresponding Layouts. Later, using the fact that the choice was saved in a field, you can create lists of just "vendors", for example. |
-

Modes
Show Technical DetailsSelect Layouts themselves accept no user input. Thus a Select Layout in view mode looks exactly the same as it does in add mode or in edit mode. However, Select Layouts do transmit their mode to their children. Thus the child of a Select Layout in view mode may well look different than the child would if its parent were in edit mode.
-

Parts
Show Technical DetailsSelect Layouts have four parts:
- Title Bar - Consists of a title, an icon, a drop-point for links/HTML content, and the title bar background.
- Select Options - Appear as a drop-down select box.
- Bodies - There are multiple bodies for a Select Chooser, depending upon how many select options the internal Selection Field has. Each body consists of any Layouts which are already attached to the current select option. If there are no Layouts currently attached to the select option, the body consists of one Layout drop point.
- Layout Footer - A Layout (other than a page) usually has nothing in the footer. However, if a Layout has independent save controls enabled, a Layout in edit mode will always have a save button in the footer, and, unless security doesn't allow edit mode, a Layout in view mode will always have an edit button in the footer. When Save Behaviors are specified, a Layout in edit mode will show the Save Behavior(s) in a drop-down in the Layout footer.
-

Expand/Contract
Show Technical DetailsWant to build an interface that includes a long list of things but don't want to dramatically increase the length of the page its' on? Use these Expand/Contract settings to start with a collapsed Layout! You can also give your users the ability to expand or contract layouts on their own, empowering them to shape their experience as they see fit.
Settings:
- Allow the Layout To Be Collapsed - Check this box to allow the Layout to be collapsed by clicking the up arrows icon on the right side of the Layout's Header Bar.
- Start Collapsed - Check this box to initially display the Layout in its collapsed position.
- Remember Collapsed Setting By User - Check this box to allow WorkXpress to remember if a user has collapsed or expanded a Layout and display that Layout in the future based on the user's selection.
-

Header Bar
Show Technical DetailsOften, you'll want to change the appearance of the Header Bar for a Layout Block. Using these settings, you can change the title, icon, and appearance of your Layout's Header Bar.
Settings:
- Title (required) - Use the Expression Builder to choose a name for your Layout.
- Layout Icon - Choose an Icon to appear on the left side of your Layout's title bar.
- Hide Title Bar - Check the box to completely hide the Title Bar for this layout.
- Hide Title Bar Background - Check this box to hide only the Title Bar background. The Title Bar text will remain visible for this Layout.
-

Field Appearance
Show Technical DetailsWhen setting up a Layout Chooser (Select, Tab, or Ribbon), you'll need to configure a couple settings for the associated Field that stores the user's choice.
Settings:
- Field Label (required) - Enter a name for the Selection Field you've chosen to store the choice made by the user with the Layout Chooser.
- Hide Label - Hide the local Field Label name you chose using the Field Label setting above.
-

Sizing
Show Technical DetailsDon't want that Layout to stretch for miles down a page? Set a maximum height for it to keep it under control.
Settings:
- Max Height (in pixels) - Enter a maximum height for the Layout.
-

Tooltip
Show Technical DetailsA Tooltip provides helpful text when your User mouses over the field label. This Tooltip feature lets you create the Help Text you want your Users to see.
Settings:
- Tooltip - Enter text to create a tooltip that will display when a user hovers his mouse over this Field's Label.
Hints:
- You can never go wrong by adding tooltips!
-

Default Value
Show Technical DetailsIf you want your Chooser's menu options to have a default value, here's the setting to configure it.
Settings:
- Default Value in Add Mode - Use the Expression Builder to construct a default value for the Field you selected using the "Choice Is Saved in This Field" setting to use in Add Mode.
-

Validation
Show Technical DetailsIs this Field required? Most Fields have at least this basic validation question, and possibly some additional, basic validations. The Field you select to store the user's selection is no different. When these basic validations aren't enough, use Actions to build your unique validations!
Settings:
- Required - Check this box to require the Field you choose for "Choice Is Saved in This Field".
-

Save Effects
Show Technical DetailsWhen creating a complex interface, you need options to allow your users to save individual pieces or groups of data at once. Use these settings to configure that functionality.
Settings:
- When Saving, Save (required) - Choose which Layout groups to save into the database when a user saves this Layout. Using the select box, choose either "Current choice only (will clear Fields on other choices) or "All choices".
- Lock Choice (After First Save) - Check this box to "lock" a Field in the Layout after the first value for it is chosen by a user. After the first save, the instance of this Field in this Layout will not be editable.
-

Autorefresh
Show Technical DetailsSometimes, you'll need to set up a Layout to automatically refresh its display periodically. Do that here.
Settings:
- Refresh Layout every X seconds - If you would like to autorefresh your Layout, enter an interval, in number of seconds, at which you'd like the Layout to refresh.
-

Block Association
Show Technical DetailsBlock Association is the tie that binds all WorkXpress Blocks to each other and enables them to work together. There are permanent, global Block Associations and temporary, local ones. First, all Blocks are permanently associated with either an Item Type or Relationship--this defines an application's structure. Second, Layouts and Fields can permanently nest inside of Layouts to create your interface. Third, Actions can permanently nest inside of Actions to create logic. Finally, at any point in time, a Layout, Field, or Action will temporarily be "about" a particular Item in the database, to give context.
Introduction:
- Block Association makes WorkXpress unique and powerful as an application development tool. It's the glue that connects all WorkXpress Blocks to each other.
- Permanent Block Associations define the application's structure.
- Temporary Block Associations give the interface and logic "context", which helps the application to interact with the database at a point in time.
Permanent (Global) Block Associations
Item Type or Relationship Type AssociationThe most basic type of all Associations, this defines your application structure. At the topmost level, an application is a group of Item Types. These Item Types may have associated Relationship Types. Collectively, all other Blocks in WorkXpress then are associated ultimately with an Item Type. Therefore, an "application" is defined as a set of Item Types and all their associated Blocks.
When searching for Blocks in the build tools, you will tend to find them by first beginning your search on a particular Item Type or Relationship Type, and viewing their associated Blocks.
This choice of Association also effects data backup and restoration.
Blocks with permanent Item Type Association only: Relationships
Blocks with permanent Item Type or Relationship Type Association: Layouts, Fields, Actions
Layout AssociationTo build an interface you must nest Layouts and Fields inside of other Layouts. This nesting generates Layout Association.
Blocks with permanent Layout Association: Layouts, Fields
Action AssociationTo build a logic model (aka business rules, scripting, etc.) you must nest Actions inside of other Actions within a procedure.
Blocks with permanent Action Assocation: Actions
Global and Local Actions
Actions may be associated with an event and block globally, or they may be associated locally. A "Global Action" exists everywhere and every time the Action's parent Block undergoes that same event. A "Local Action", however, only exists when the Action's parent block undergoes this specific event, in this context. In this case though, context refers to the context of the triggering Block within the interface, not the Item context. This is a unique kind of context.
In other words, although a Field may trigger a local Action when it is saved from within one Layout, it will not trigger that same local Action when it is saved from within a different Layout. In both cases, however, its global save Actions will be triggered from either Layout.
For example, for a certain Field, Action A is global to its "Field Save" event for all pages and Action B is local to its "Field Save" event for a specific page. Later, that same Field is added to a new page. When that new page is saved, Action A will fire, but Action B will not exist at all on that page (in that unique context).
Item Association and Context
An Action is always associated with the building block for whom it is a "local" or "global" action (see below). Placing an Action in the Action Manager will result in that Action being associated with an Item Type based on where it is placed. Actions may be associated with Layouts, Fields, Items, or Relationships.
Similarly, an Action typically requires context to function properly. That context comes from the Block for whom this Action Manager Tool was opened and may not be the same Block for which this Action is a local or global Action. Context and Item Association for an Action may be different.
Further, some Actions can change the context. For example, when a list of Items is passed into an Action Manager from a "Mass Action" button in Layout Type - List, the context is each of the Items passed. However if they pass through a "foreach" control structure, the subsequent context passed to subordinate action is that of a single one of the Items in the list, changing each time the loop is repeated.
Temporary (Local) Block Association
Temporary Item Association (Context)At any given time, what is the page you are on "about"? If the page is about a company, then the context of that page is the specific company it is displaying (e.g. "Acme Company", where Acme Company is an "Item" in the database of "Type" Company). Any Fields or Actions need to be about that specific item and not some other item (i.e. about "Acme company and not some other company), so those Fields or Actions need to be provided with this context. For a much more detailed examination of this concept, which is critical to successfully building applications with WorkXpress, please see our lesson about Context.
If the page is about a specific Item of Type: User...for example the "current user"...then perhaps it is about you? When the page displays data, it needs to display that data about you. When Actions on the page shoot off an email notifying of a change to username, it needs to shoot that email to you, not to some other User. YOU are an Item in the database of Type User, and are also the context in this second example.
Context then is the specific Item (Not Item Type) in the database which the current Layout, Field or Action is displaying data about.
Blocks with temporary Item Association: Layouts, Fields, Actions
-

Option Setup
Show Technical DetailsYour users won't get very far with a Layout Chooser if they don't have some choices they can make! Configure those choices here.
Settings:
- The following two settings are used to manage the different options for the Field stored in the "Choice is Saved in This Field" setting. Use the "Delete" Mass Action link to eliminate some select options or use the "Add Choice" button to add more select options. If you choose "Add Choice", configure the new selection options:
- Select Option Name (required) -Enter a name for the select option.
- Order (required) - Enter a number that indicates the place in the list where you'd like the select option to display. Lower numbers appear first in the selection list.
- Rollout this item with the application? - Would you like to make this item available as user data? Please remember that if that data is subsequently changed, a rollout will overwrite those changes.
-

Tab, Select, or Ribbon?
Show Technical DetailsWorkXpress was developed to offer choice and to empower you with the flexibility to build exactly the application you need. To that end, we offer a few different, and eminently flexible, navigational controls to help your users move between different Layouts.
Settings:
- Tab, Select, or Ribbon? - Choose the method you wish to use to navigate between Layout groups. You may select "Choose Using Tabs" and "Choose Using Select".
- Choice Is Saved in This Field - Select the Field in which you want to save the choice made by the user. It must be a Selection Field. Additionally, the user will see exactly what options the Selection Field chosen contains. Thus, if a Selection Field with the options "Yes" and "No" were chosen for the "Choice is Saved in This Field" setting for a Tab Chooser, the user would see two tabs, one labeled "Yes" and one labeled "No". Note: the user's choice only gets saved in the Field if the Chooser Type is Choose Using Select.
-

Enable Layout Security
Show Technical DetailsWorkXpress gives you fine-grained control over your application's security. Use Layout Security to control which of your users may access and/or edit which Layouts.
Settings:
- Enable Layout Security - Check this box to enable security for this Layout only. If this box isn't checked, security, if any, for this Layout will be inherited from its Parent.
- Configure Layout Security - Use these settings to set up granular control of your Layout's security.
- Map - Use the Query Builder to select the Items (usually users or groups) whose access you want to control.
- Independent Save Controls - Check this box to allow this Layout to be saved independently of the rest of the page. You will need to select "Allow View" and "Allow Edit" for this functionality to work properly.
- Allow View - Check this box to allow the Item(s) selected in the Map section to view this Layout.
- Allow Edit - Check this box to allow the Item(s) selected in the Map section to edit this Layout.
- Allow Add - Check this box to allow the Item(s) selected in the Map section to add Item(s) using this Layout.
- Starting Mode (required) - Select View, Edit, or Add from the dropdown to choose the starting mode for this Layout.
- Order (required) - If you're configuring security for a single Query Builder map of Item(s), enter 1 for this setting. If you choose to configure security for Item(s) defined by additional Query Builder Maps, you must enter the order in which you'd like them to be processed in the text entry box for this setting. Please note: your security settings will be processed in reverse order. That is, the highest number listed for the order setting will be processed first, and so on to the lowest.
-

Chooser Security



