For each Work With for Smart Devices List Node, and Work With for Smart Devices Detail Node defined in the Work With for Smart Devices object instance, a window is generated to the right depending on the selector (tab) chosen:
This article also apply to the Panel for Smart Devices object object.
It indicates what attributes/variables among other controls will be shown and how they will be shown. In the example above, the attributes PropertyFrontImage and PropertyName from the Property transaction (handled by a real estate agency) are listed inside a grid control. Although we can see only one layout at a time (e.g. the "Any Platform, Any Size, Any Orientation" one) for the List node, note the posibility to add a new one, or delete the current. This lets us to design different layouts depending on the platform (i.e. Android, iOS, Blackberry), the size (i.e. phone, table 7'', table 10'') and/or the orientation (i.e. Landscape, Portrait). If the node is Sectoin(General) it also offers the Mode (i.e. View or Edit) to differentiate the layout displayed to Insert, update or delete, from the layout displayed to just view the information. See more about multiple layouts per node...
As the Web Panel rules, specify some kind of behavior of the corresponding WWSD node (List, Detail or sections). Rules provide a generic language to enforce the controls in these programs. For example, specify the parameters received and/or returned by the node. Do not confuse the rules of the node, with the rules of the transaction, which will run when you insert, delete or modify the element corresponding to detail.
The objective of Events is to provide behavior and interaction between client and services. Note in the layout shown above the "Insert" button on the List node Application Bar. An 'Insert' event is automatically associated, calling the Detail node of that WWSD, in Insert mode:
As usual, another events could be created. Examples of this could be an action to show the real estate properties in a map, an action to call certain data, an action to schedule items, and so on.
The actions available on the User Interface usually have a graphic element associated with them, such as a button, an option in a global menu, a link, and so on.
In the Work With for Smart Devices object, the user can add actions in the List node and in the Detail and Sections nodes. These actions can be placed on screen -besides associating them to controls- using the Application Bar of the pattern layouts.
In addition to the actions included by default ("Insert" Action for List, "Save", "Cancel", "Update" and "Delete" for Section(General)), new actions can be defined.
The grammar of events running on the device has its pecularities regarding the events that run on the server. This is due to the architecture. For example, to invoke two or more objects within an event sequence, we have to use the Composite command inside an event executed on client (device).
To go deeper into this topic: Smart Device Events
This section allows to define orders to list the information into the layout, as well as searches ("Search") criteria and filters ("Advanced Search") offered to user in order to let him/her to fine tune its searches. It also allows to specify free conditions, in the bottom-most screen (in the same way conditons screen of a web panel does):
Orders in the Smart Devices pattern are defined in the same way as in the standard Work With.
Each List (or Detail Section) can have zero, one or more orders defined, -making sense more than zero only when displaying information for multiple items-. Having the default WorkWithDevicesProperty Conditions shown above, the List information will be displayed ordered by PropertyName.
The attributes defined in the Search node will be displayed at runtime as a string to make text searches in the entity’s fields. The instance specifies the fields on which the search has to be performed. Having the default WorkWithDevicesProperty Conditions shown above, the search fields will be PropertyName and PropertyAddress. The implementation is an OR, that is to say, it returns any record that has that string in a field.
They are the Work With (Web) filters. Certain data is requested on screen (such as “advanced filters”), with a possible default value. All the filters that have an entered value take part in the query, and an AND is applied among all filters. The filters that don’t have entered values (or the value is “All” when combos are involved) are not applied.
To go deeper into this topic: Orders and Filters on Smart Devices (X Evolution 2)
Relations among transactions are also strictly generated in the Work With. We have the following transactions:
As you can see, the Neighborhood transaction has a 1-N relation with Property transaction, that is, for one neighborhood there can be N properties.
So, when we select one neighborhood, the relations tab will be displayed on top with its properties.
In the image above, the Coral Gable neighborhood was selected and the Level/Detail/Section (General)/View node was opened. Note that the General tab located in the upper section is selected. To the right is the Property tab, thus closing the relation among entities. So, if we select the Property tab, we can access the list of all the properties of the selected neighborhood.
General Aspects and List layout
Work With for Smart Devices - Detail Layout
Work With for Smart Devices - Orders, Searches and Filters