1. Home
  2. Knowledge Base
  3. Mobile App Workflows
  4. Mobile App Data Entry Shortcuts

Mobile App Data Entry Shortcuts

Radio Group Option with Default Codes

Radio group attributes can have default codes added as an option (you can also add default codes as a nested option). The default codes are processed when the attribute is opened and the processed value is added to the list of values the user can select. Not all default codes are supported in radio group options. The supported codes are:

  • Feature Created Default Codes
  • Calculation Based Default Codes

Feature Created Default Codes

These default codes are calculated and set only when a feature is created.

CodeDescriptionExampleTags
!TSCurrent timestamp, with date and time in the format dd-MMM-yyyy HH:mm:ss (e.g. 01-Jan-2025 14:30:00)!TSdate, time
!DCurrent date, in the format dd-MMM-yyyy (e.g. 01-Jan-2025)!Ddate
!TIMECurrent time, in the format HH:mm:ss (e.g. 14:30:00)!TIMEtime
!LATLatitude of the user position in degrees!LATcoordinates, latitude
!LNGLatitude of the user position in degrees!LNGcoordinates, longitude
!ALTAltitude of the user position in meters!ALTcoordinates, altitude
!XX coordinate of the user position in the coordinate system defined by the project the feature belongs to!Xcoordinates, easting
!YY coordinate of the user position in the coordinate system defined by the project the feature belongs to!Ycoordinates, northing
!ZZ coordinate of the user position in the coordinate system defined by the project the feature belongs to!Zcoordinates, elevation
!ACCAccuracy of the user position in meters!ACCcoordinates, accuracy
!SATSNumber of satellites used for the user position!SATScoordinates, satellites
!HDOPHorizontal dilution of precision of the user position!HDOPcoordinates, hdop
!USERUser name of the user creating the feature!USERuser, name
!QAQuality assurance status of the user position, it’s the position accuracy followed by the unit. E.g 1.3m!QAcoordinates, qa
!AUTOINCIncrement the attribute value by the specified amount (or by 1 as a default). The attribute must be a number.!AUTOINC, !AUTOINC(5)attributes, increment, number
!READGLOBALCACHERead a value from the global cache, the cache item is scoped to the user.!READGLOBALCACHE(key)cache, global, read
!WRITEGLOBALCACHEWrites the attributes current value to the global cache, the cache item is scoped to the user.!WRITEGLOBALCACHE(key, value)cache, global, write
!READPROJECTCACHERead a value from the project scoped cache, the cache item is scoped to the user and project.!READPROJECTCACHE(key)cache, project, read
!WRITEPROJECTCACHEWrites the attributes current value to the project scoped cache, the cache item is scoped to the user and project.!WRITEPROJECTCACHE(key)cache, project, write
!READLOCATIONCACHERead a value from the location scoped cache, the cache item is scoped to the user and location.!READLOCATIONCACHE(key)cache, location, read
!RESTOREWrites the attributes current value to the location scoped cache, the cache item is scoped to the user and location. Is a shorthand for !READLOCATIONCACHE where the key is the attribute id.!RESTORErestore, location, read
!WRITELOCATIONCACHEWrites the attributes current value to the location scoped cache, the cache item is scoped to the user and location.!WRITELOCATIONCACHE(key)cache, location, write
!PARENTIDThe ID of the parent feature, if the feature is a child feature!PARENTIDfeature, parent, id, child, child form
!FROMCSVProcesses the current attributes value as a CSV and parses out values. The indexes for the value are 1 based.!FROMCSV(1) !FROMCSV(1,3,4)CSV
!RD8KProcess a recorded RD8K measurement. !RD8K will load the full measurement NMEA string. !RD8K(n) will extract the nth value from the measurements NMEA string. On saving the feature, the RD8K measurement will be removed from the cache.!RD8K, !RD8K(3)RD8K, NMEA
!LOCATIONNAMEName of the current location the feature is being created in!LOCATIONNAMElocation, name, location name
!PROJECTNAMEName of the current project the feature is being created in!PROJECTNAMEproject, name, project name

Feature Saved Default Codes

These default codes are calculated and set only when a feature is saved.

CodeDescriptionExampleTags
!ONSAVEWRITEGLOBALCACHEWrites the attributes current value to the global cache, the cache item is scoped to the user.!ONSAVEWRITEGLOBALCACHE(key, value)cache, global, write
!ONSAVEWRITEPROJECTCACHEWrites the attributes current value to the project scoped cache, the cache item is scoped to the user and project.!ONSAVEWRITEPROJECTCACHE(key)cache, project, write
!ONSAVEWRITELOCATIONCACHEWrites the attributes current value to the location scoped cache, the cache item is scoped to the user and location.!ONSAVEWRITELOCATIONCACHE(key)cache, location, write
!STOREWrites the attributes current value to the location scoped cache, the cache item is scoped to the user and location. Shorthand for !ONSAVEWRITELOCATIONCACHE, where the key is the attribute id.!STOREcache, store
!RD8KProcess a recorded RD8K measurement. !RD8K will load the full measurement NMEA string. !RD8K(n) will extract the nth value from the measurements NMEA string. On saving the feature, the RD8K measurement will be removed from the cache.!RD8K, !RD8K(3)RD8K, NMEA

Feature Opened Default Codes

These default codes are calculated and set when a feature is opened (so created/edited).

CodeDescriptionExampleTags
!ONOPENTSCurrent timestamp, with date and time in the format dd-MMM-yyyy HH:mm:ss (e.g. 01-Jan-2025 14:30:00)!TSdate, time
!ONOPENDCurrent date, in the format dd-MMM-yyyy (e.g. 01-Jan-2025)!Ddate
!ONOPENTIMECurrent time, in the format HH:mm:ss (e.g. 14:30:00)!TIMEtime
!ONOPENWRITEGLOBALCACHEWrites the attributes current value to the global cache, the cache item is scoped to the user.!ONOPENWRITEGLOBALCACHE(key, value)cache, global, write
!ONOPENWRITEPROJECTCACHEWrites the attributes current value to the project scoped cache, the cache item is scoped to the user and project.!ONOPENWRITEPROJECTCACHE(key)cache, project, write
!ONOPENWRITELOCATIONCACHEWrites the attributes current value to the location scoped cache, the cache item is scoped to the user and location.!ONOPENWRITELOCATIONCACHE(key)cache, location, write
!ONOPENGETLOCATIONNAMEGets the name of the location the feature is in.!ONOPENGETLOCATIONNAMElocation, name, location name
!ONOPENGETPROJECTNAMEGets the name of the current project the feature is in.!ONOPENGETPROJECTNAMEproject, name, project name

Geometry Based Default Codes

These default codes are calculated and set when the geometry of a feature is changed.

CodeDescriptionExampleTags
!LENLength of the geometry in meters!LENgeometry, length
!AREA2D area of the geometry in square meters!AREAgeometry, area
!FEATUREXX coordinate of the geometry in the coordinate system defined by the project the feature belongs to. Only available for point geometries.!FEATUREXgeometry, coordinates, point, easting
!FEATUREYY coordinate of the geometry in the coordinate system defined by the project the feature belongs to. Only available for point geometries.!FEATUREYgeometry, coordinates, point, northing
!FEATUREZZ coordinate of the geometry in the coordinate system defined by the project the feature belongs to. Only available for point geometries.!FEATUREZgeometry, coordinates, point, elevation
!FEATURELATLatitude of the feature geometry. Only available for point geometries.!FEATURELATgeometry, coordinates, point, latitude
!FEATURELNGLongitude of the feature geometry. Only available for point geometries.!FEATURELNGgeometry, coordinates, point, longitude
!FEATUREALTAltitude of the feature geometry. Only available for point geometries.!FEATUREALTgeometry, coordinates, point, altitude
!SNAPPEDSTARTGets the attribute value from a point feature snapped to the start of a linestring. Parameter 1 is the attribute name to get the value from. The example would get the CONVER_LEV attribute from the point feature snapped to the start of the linestring.!SNAPPEDSTART(COVER_LEV)pipe, snapping, start
!SNAPPEDENDGets the attribute value from a point feature snapped to the end of a linestring. Parameter 1 is the attribute name to get the value from. The example would get the CONVER_LEV attribute from the point feature snapped to the end of the linestring.!SNAPPEDEND(COVER_LEV)pipe, snapping, end

Calculation Based Default Codes

These default codes are for calculation based fields, They run when they are autonavigated over and when the form is opened.

CodeDescriptionExampleTags
!CALCPerform a calculation using the given expression. The expression can include mathematical operations and field names. You can make the calculation react to attribute updates by prefixing the attribute name with $!CALC 2 + 2, !CALC field1 * field2, !CALC field1 + 5, !CALC $field1 + $field2calculation, math, expression
!CALCW3WNOWGet the users current position’s What3Words address. This calc code does not run when the feature type is opened – only when the attribute is selected/autoselected.!CALCW3WNOWcalculation, w3w, what3words, location

Modifier Default Codes

These default codes modify properties of an attribute (mandatory, hidden, read only etc) depending on a condition.

CodeDescriptionExampleTags
!MODIFIER-FORCEPHOTOCAPTUREModifies a FileUpload attribute to be mandatory and visible if the expression evaluates to true, otherwise it is hidden and not mandatory. The example below makes the attribute mandatory and visible if the value of the attribute with the code ‘condition_field’ is ‘needs_repair’. The dollar sign makes this reactive, so it will reevaluate when the value of ‘condition_field’ changes. The expression must evaluate to a boolean value.!MODIFIER-FORCEPHOTOCAPTURE $condition_field == ‘needs_repair’modifier, photo, nested photo
!MODIFIER-SHOWWHENModifies an attribute to be visible if the expression evaluates to true, otherwise it is hidden. The example below makes the attribute visible if the value of the attribute with the name ‘status’ is set to ‘active’. The dollar sign makes this reactive, so it will reevaluate when the value of ‘status’ changes. The expression must evaluate to a boolean value.!MODIFIER-SHOWWHEN $status == ‘active’modifier, hidden
!MODIFIER-HIDEWHENModifies an attribute to be hidden if the expression evaluates to true, otherwise it is visible. The example below makes the attribute hidden if the value of the attribute with the name ‘status’ is set to ‘inactive’. The dollar sign makes this reactive, so it will reevaluate when the value of ‘status’ changes. The expression must evaluate to a boolean value.!MODIFIER-HIDEWHEN $status == ‘inactive’modifier, hidden
!MODIFIER-HIDEModifies an attribute to be hidden.!MODIFIER-HIDEmodifier, hidden

Sketch Attribute Default Codes

These default codes are used specifically with sketch attributes (FileUpload attributes with a Drawing attribute setting) to load images into the sketch canvas. The PNG images must be uploaded to a location with the format like ‘filename.png.system’. But can then be accessed across a project.

CodeDescriptionExampleTags
!LOADIMAGE(filename)Loads a specific image file directly into the sketch canvas, assumes the extension is .png!SKETCHLOAD(photoname)sketch, image, load
!LOADIMAGE([attributename])Loads an image linked to an attribute value, where the attribute name in square brackets is replaced with the actual attribute value. Assumes the extension is .png!SKETCHLOAD([inspection_id])sketch, image, load, dynamic
Was this article helpful?

Related Articles