Mobile Data Entry

Overview

The Clock In/Out screen has two buttons as follows:

These buttons are also present on the Task Tracking and Job Tracking screens when you use "Clock Mode". The text on these buttons can be changed by specifying the "in" and "out" options in the screen details. For example:

        in=Start Shift, out=End Shift

The buttons can be further configured to allow you to collect data during your clock in and clock out events, using the following syntax:

        in/out = <button>:<type>:<label>:<details>

where <button> is the button text, <type> is the type of data you want to capture , <label> is the name of the data field, and <details> are the type specific details.

Data Types

While all data types can be used at either Clock In or Clock Out, the following data types are typically used at Clock In:

And the following data types are typically used at Clock Out:

Each of these data types is explained in detail below.

List

A data type of "list" is used to capture a selection from a list, such as a list of active projects. The "in" option should be configured with the following colon separated components:

  • The button label. eg: "Start Work"
  • The data type. ie: "list"
  • The label for the list attribute. eg: "Project".
  • The semi-colon separated list values.
  • Optionally, a default value.

For example:

        in=Start Work:list:Project:Airport;Tower One;Naval Base:Airport

If you are synchronising your users with a system that supports global lists, you can specify your list values by providing the appropriate list number. For example:

       in=Start:list:Project:$1

Dual

A data type of "dual" is used to capture values from two different lists, such as a project name and a work type. The "in" option should be configured with the following colon separated components:

  • The button label. eg: "Start Work"
  • The data type. ie: "dual"
  • The label for the first list attribute. eg: "Project".
  • The label for the second list attribute. eg: "Work Type".
  • The semi-colon separated list values for the first list.
  • The semi-colon separated list values for the second list.
  • Optionally, a default for the first list.
  • Optionally, a default for the second list.


For example:

        in=Start Work:dual:Project:Work Type:Airport;Tower One;Naval Base:Design;Construction;Maintenance:Airport


If you are synchronising your users with a system that supports global lists, you can specify your list values by providing the appropriate list numbers. For example:

       in=Start:dual:Project:Work Type:$1:$2

Nest

A data type of "nest" is used to capture values from two different lists, such as a project name and a work type, when the list of work types varies for each project. The "in" option should be configured with the following colon separated components:

  • The button label. eg: "Start Shift"
  • The data type. ie: "nest"
  • The label for the first list attribute. eg: "Project".
  • The semi-colon separated list values for the first list.
  • Optionally, a default for the first list.


Then, for each value in the first list, you separately define the values in the second list with the following colon separated components:

  • The label for the attribute. eg: "Work Type"
  • The semi-colon separated list values.
  • Optionally, a default.


Each of the second lists is defined by the option "list1", "list2", etc, in the order of the options in the first list. For example:

        in=Start Shift:nest:Project:Airport;Tower One;Naval Base,
        list1=Work Type:Design;Construction;Maintenance,
        list2=Work Type:Maintenance:Maintenance,
        out=End Shift

Notice in this example that the Naval Base project does not have a corresponding list of Work Types, so it won't be necessary to select a Work Type for that project.

If you are synchronising your users with a system that supports global lists, and your list is hierarchical, you can specify your list values by providing the appropriate list number. For example:

       in=Start Shift:nest:Work Type:$4

Tree

A data type of "tree" is used to capture values from a hierarchical list, such as a list of cost centers. Each level of the hierarchy is selected independently (one after the other), and searching is supported when a level has a large number of options. The "in" option should be configured with the following colon separated components:

  • The button label. eg: "Start Work"
  • The data type. ie: "tree"
  • The semi-colon separated labels for each level in the hierarchy. eg: "Project;Work Type".
  • The list number. eg: "$1".
  • Optionally, the default value that should be auto selected. eg: "Maintenance".
  • Optionally, the keyboard type (for searching). eg: "numeric".


Each level of the hierarchy is selected independently (one after the other). For example:

        in=Start Work:tree:Project;Work Type:$1

Site

A data type of "site" is used to capture a selection from a list, such as a work type, when the options vary by site. Employees do not need to select the site; it is determined automatically using their geolocation. This means that location capture must be set to either "Mapped" or "Fenced" in order to use site lists. The "in" option should be configured with the following colon separated components:

  • The button label. eg: "Start Shift"
  • The data type. ie: "site"


Then, for each site, you separately define the values in the list with the following colon separated components:

  • The label for the attribute. eg: "Work Type"
  • The semi-colon separated list values.
  • Optionally, a default.


For example:

        in=Start Shift:site,
        Sydney=Work Type:Design;Construction;Maintenance,
        Melbourne=Work Type:Design;Construction:Design,
        Perth=Work Type:Maintenance:Maintenance,
        out=End Shift

If you are synchronising your users with a system that supports global lists, and your list is hierarchical, you can specify your list values by providing the appropriate list number. For example:

       in=Start Work:site:Work Type:$4

Type

A data type of "type" is used to capture a selection from a list, such as a work type, when the options vary by user type. The "in" option should be configured with the following colon separated components:

  • The button label. eg: "Start Work"
  • The data type. ie: "type"


Then, for each user type, you separately define the values in the list with the following colon separated components:

  • The label for the attribute. eg: "Work Type"
  • The semi-colon separated list values.
  • Optionally, a default.


You can optionally specify a label and the list of options for all other user types at the end of your "in" option.

For example:

       in=Start Work:type:Work Type:General,
       Maintenance=Work Type:Fencing;Buildings;Machinery,
       Farm Hand=Work Type:Ploughing;Planting;Picking;Other

In this example, users with a user type of Maintenance will get to select from: Fencing, Buildings, or Machinery; users with a user type of Farm Hand will get to select from: Ploughing, Planting, Picking, or Other, and users with any other user type will only have one option to select from: General.

Scan

A data type of "scan" is used to capture a value from a barcode or QR code. The "in" option should be configured with the following colon separated components:

  • The button label. eg: "Start Job"
  • The data type. ie: "scan"
  • The label for the scan attribute. eg: "Job Number".
  • Optionally, the minimum number of characters, which defaults to 1.
  • Optionally, the maximum number of characters, which defaults to 10.
  • Optionally, a validation rule.


Validation rules can be expressed as either:

  • A regular expression. eg: [0-9]*
  • A global list. eg: $1


The following types of alphanumeric barcode are supported:

  • Code 39
  • Interleaved 2 of 5
  • QR Codes


For example, to capture 4 to 6 character job numbers, validated against a global list of job numbers, use:

For example:

       in=Start Job:scan:Job Number:4:6:$1

Text

A data type of "text" is used to capture an alphanumeric string, such as a comment on clock out. The "out" option should be configured with the following colon separated components:

  • The button label. eg: "End Work"
  • The data type. ie: "text"
  • The label for the text attribute. eg: "Comment".
  • Optionally, the minimum number of characters, which defaults to 0.

For example:

        out=End Work:text:Comment:1

Select

A data type of "select" is used to capture two-option attestations at the end of a shift. The "out" option should be configured with the following colon separated components:

  • The button label. eg: "End Shift"
  • The data type. ie: "select"
  • The label for the select window. eg: "Shift Confirmation".
  • The instructions for the employee.
  • The notes behaviour, either: "required", "optional", "negative" (ie: required if negative), or "hidden".
  • The notes label. eg: "Comments", "Justification", "Notes".
  • One or two option attestations (see example below).
  • Optionally whether the attestations should default to be positive ("yes", "true"), negative ("no", "false"), or unselected ("none").


For example:

out=Clock Out:select:Shift Confirmation:Please confirm that you worked standard hours and that you took your required rest breaks. Otherwise please provide justification.:negative:Details:Standard Hours:Extra Time Worked:Rest Breaks Taken:Breaks Not Taken:none

NoahFace Go App showing Attestation

Break

A data type of "break" is used to capture the times of paid rest breaks at the end of a shift. The "out" option should be configured with the following colon separated components:

  • The button label. eg: "End Shift"
  • The data type. ie: "break"
  • Whether to default breaks as taken ie: true/false.
  • The break duration in minutes (eg: 10 = 10 mins).
  • The time after a 1st break is due in hours (eg: 4 = 4 hours).
  • The default time after the 1st break is taken (eg: 2 = 2 hours).
  • The time after a 2nd break is due in hours (eg: 8 = 8 hours).
  • The default time after the 2nd break is taken (eg: 6 = 6 hours).


For example:

       out=End Shift:break:true:10:4:2:8:6

Sentiment

A data type of "sentiment" is used to capture employee sentiment at the end of a shift. The "out" option should be configured with the following colon separated components:

  • The button label. eg: "Clock Out".
  • The data type. ie: "sentiment"
  • The title for the sentiment screen. eg: "Clock Out".
  • Optionally, the comments behaviour, either: "required", "optional", "negative" (ie: required if negative), or "hidden".
  • Optionally, the sentiment question.
  • Optionally, the comments prompt.


For example:

       out=Clock Out:sentiment:Clock Out:negative

Multi

A data type of "multi" is used to capture multiple selections from a list, such as shift conditions which drive additional payments. The "out" option should be configured with the following colon separated components:

  • The button label. eg: "End Shift"
  • The data type. ie: "multi"
  • The label for the list attribute. eg: "Conditions".
  • The semi-colon separated list values.
  • Optionally, the minimum number of selections, which defaults to 0.


For example:

        out=End Work:multi:Conditions:Rain;Hail;Shine:1

Range

A data type of "range" is used to capture a numeric value, such as the number of boxes packed during a shift. The "out" option should be configured with the following colon separated components:

  • The button label. eg: "End Work"
  • The data type. ie: "range"
  • The label for the attribute. eg: "Boxes".
  • The minimum value.
  • The maximum value.
  • Optionally, the increment between values.
  • Optionally, the default value.


For example:

        out=End Work:range:Boxes:1:100:1:25

Dollar

A data type of "dollar" is used to capture a dollar amount, such as tips, at the end of a shift. The "out" option should be configured with the following colon separated components:

  • The button label. eg: "End Shift"
  • The data type. ie: "dollar"
  • The label for the dollar attribute. eg: "Tips".
  • Optionally, the minimum number of characters, which defaults to 0.
  • Optionally, the maximum number of characters, which defaults to 5.
  • Optionally, whether cents should be allowed ie: true or false.


For example:

       out=End Shift:dollar:Tips:0:10:true

Conditional Data Entry


You can restrict which users are required to enter data by specifying either the "intype" or "outtype" option in the screen details as appropriate. For example, to require that users with a user type of "Supervisor" must select a project during clock in, you would specify:

        in=Start:list:Project:Airport;Tower One;Naval Base:Tower One, intype=Supervisor

All other users can clock in just by pressing the "Clock In" button.

Similarly, to require that users with a user type of "Driver" or "Packer" must enter the number of boxes processed during clock out, you would specify:

        out=Done:range:Boxes:0:100:1, outtype=Driver;Packer

All other users can clock out just by pressing the "Clock Out" button.

Privacy
Legal
Terms of Use
Contact Us
© NoahFace 2018
.