[en] When executing form actions on OnClick events, the mouse cursor changes from “arrow” to “busy” indicator. This provides good visual feedback to the user that the form is busy executing some actions.
[en] You can select several actions at once in the Action panel and perform a quick copy, paste or delete operations upon them. This feature introduces easy transfer of actions between various triggers and therefore significantly increases productivity while building the business logic rules using Automation and/or PowerForms.
[en] NOTE: You can select multiple actions that are configured on the same hierarchy level (defined below the same parent action).
[en] Figure 9: You can select multiple actions at once for easier managing
[en] With this release, you can activate spellchecking in Edit Field and Memo Field PowerForms objects. When enabled, all incorrectly spelled words are clearly marked. Users can also right-click incorrectly spelled words to see the spelling suggestions. The new functionality helps prevent manual data entry errors.
[en] Figure 10: Spellchecker has been enabled for the Memo Field in this form
[en] Spelling language is defined by the selected keyboard when the form is started. The selection of available languages depends on your operating system. Newer operating systems (such as Windows 10 and Windows Server 2016) support most spoken world languages.
[en] NiceLabel 2017 PowerForms applications can now automatically read data from devices attached to serial ports. As soon as the data arrives to the serial port, the form application receives it and saves it to an assigned variable. Such variable can be used directly as a label or form object data source or as a part of actions included in a solution. In form properties, you only have to select the listening port, set up connection parameters and you are set to go. Polling devices for data are also supported with this new feature.
[en] This option is typically used for building applications that interface with weight scales but can be used for building other device-monitoring applications as well. The application can update statuses graphically on-screen and you can configure it to send out alerts if necessary for building other device-monitoring applications.
[en] Figure 11: Enabling listening for inbound messages on serial port
[en] A new event type is available in form applications. “On Form Inactivity” event runs its actions whenever the user has been away from a computer for a specified time interval.
[en] In most cases, you would use this event to increase application security and to prevent unauthorized access.
[en] Timeout is defined by the number of inactive minutes. If no mouse move or keypress is detected within this time interval, the application runs the associated actions. For example, the actions can lock the user out of the application, or the application can simply close.
[en] Figure 12: Actions can run automatically if the user has not been active in a while
[en] The Database Table form object introduces a new possibility to track user’s record selection. The new event type “On Selection Change” runs all associated actions each time the record selection changes.
[en] This feature allows easy control over the selected record(s) and associated field data and therefore simplifies application design.
[en] Figure 13: New event type “On Selection Change” available in Database Table properties
[en] This action enables you to retrieve values from selected rows in the Database Table form object. The values are stored in a variable and can be used in other actions or with other form objects. If multiple rows are selected, the stored values (row numbers or field values) are separated by commas.
[en] You can retrieve:
-
[en] Index numbers of highlighted rows (row number)
-
[en] Selected field values of highlighted rows (field value)
[en] “Get Selected Table Row” action works as a counterpart of the “Select Table Row” action. The action is useful if you want to restore the application state, after the user navigates away and back to the current form in multi-form application. You would remember the number of the selected record when the user leaves the form and restore it upon user’s return.
[en] You can also use this action to extract the required data from the Database Table object and to save it to variable.
[en] Figure 14: Remembering row numbers (index) for selected records
[en] This action allows you to define which row in a Database Table form object is selected.
[en] In this release, the existing action “Select Table Row” has been extended with two new selection modes. The following has been added:
-
[en] Select all rows
-
[en] Deselect all rows
[en] Additionally, the action supports multi-row selection. When you select “Row number” or “Field value” selection mode, all records matching the row number of field value are highlighted in the Database Table object.
[en] Figure 15: New selection modes are available
[en] The action Define Printer Settings applies various settings to the printer during label printing. This is a quick and efficient method to allow a print operator to adapt the printout to his environment. The label template can be the same for all printing stations, while printing parameters such as speed, darkness, and offsets can be adjusted at a print time based on the requirement of the current printer.
[en] Until this release, this action displayed the printing preferences dialog box, so the user could modify them for their selected printer. After that, the action applied preferences to the current print job.
[en] Figure 16: Saving all printer settings to a variable
[en] With this release, the action still displays printing preferences. However, you can also save them to a variable and then further to a file or database for future use. With this approach, you can create and save sets of “printer settings” for the labels and choose to apply the appropriate one at print time.
[en] To apply these settings to the printout, use the action Set Print Parameter.
[en] Figure 17: Applying saved printer settings to print jobs
[en] The action Send Data to TCP/IP Port has been enhanced to not only send data to a target network socket but also to collect the response from a device. This enables two-way communication with network devices over TCP/IP protocol.
[en] The device that Automation of form application communicates with can be of various types, such as another computer (server), weight-scale or PLC. The data is usually exchanged in small packages of raw data without any complex structure. For example, you would use this action to query network devices for their states and live statuses.
[en] Once the response has been retrieved, you can save it to a selected variable and process it within your application or configuration.
[en] Figure 18: Collecting response from network device
[en] You can use On Form Timer event in each form to automate the execution of actions in defined time intervals. Previously, the minimum time interval was one second. With this release, you can define it in milliseconds.
[en] Figure 19: Events can be executed in millisecond time intervals
[en] This is beneficial if you have to obtain data from network devices in real time. For example, you can continuously query PLC for some status and display it in the form application user interface.
[en] You can now change the visibility of table columns in a Database Table object while the form is already running. The action “Set object property” has a new parameter named “Visible columns” if used with the Database Table object. This property can be set with a comma-separated list of table field names that are supposed to be visible. The field names that are not included on the list are hidden.
[en] The same form can display the Database Table object with different columns, depending on the selected criteria, such as which user runs the solution, state of the application, or values of data sources.
[en] Figure 20: New property for setting table columns visibility