Difference between revisions of "Auto Values"

From Hornbill
Jump to navigation Jump to search
Line 188: Line 188:
  
 
|}
 
|}
 
== Options ==
 
* Name
 
* Description
 
*Auto Value Components
 
:* seq(z,r)
 
:* seqd(z,r)
 
:* seqm(z,r)
 
:* seqy(z,r)
 
:* date()
 
:* udate()
 
:* uuid()
 
:* sess(name)
 
:* param(name)
 
:* rec(name)
 
 
* Current Value
 
* Daily Increment
 
* Monthly Increment
 
* Yearly Increment
 
* Time Last Generated
 

Revision as of 16:41, 20 February 2015

Home > Administration > Data > Auto Values

Introduction

The Auto Values feature lets an administrator define how auto-generated values, such as reference IDs, are constructed. Places where more than a sequence number (000001234) is required, an Auto Value can be modified to include dates, time, location, teams, user IDs and more. There are many situations where this type of sequence is much more preferable over a simple numeric sequences. Some examples include: -

  • Shipment numbers
  • Document or Article Reference Numbers
  • Stock Item Codes
  • Asset ID's
  • Access Code numbers

Available Auto Value Component Parts

The following lists of component parts are available to construct an auto value.

Name Description
seq( z, r ) A number starting at 1 when the sequence is first used and incremented by one each time the sequence is used and will never be reset for the entire life of the sequence.
seqd( z, r ) A number starting at 1 at the beginning of each day, and incremented by one each time the sequence is used. This is the daily incremental value for this specific sequence instance. See the component 'seq' for and explanation of the optional 'z' and 'radix' parameters.
seqm( z, r ) A number starting at 1 at the beginning of each month, and incremented by one each time the sequence is used. This is the monthly incremental value for this specific sequence instance. See the component 'seq' for and explanation of the optional 'z' and 'radix' parameters.
seqy( z, r ) Will be translated into a number starting at 1 at the beginning of each year, and incremented by one each time the sequence is used. This is the yearly incremental value for this specific sequence instance. See the component 'seq' for and explanation of the optional 'z' and 'radix' parameters.

The 'z' parameter is optional but if specified indicates the number of leading zero's to display, if not specified then ZERO is assumed. If the number of digits in the resultant value exceeds the number of places defined here, then the left-most digits will be discarded. The 'r' parameter allows you to specify the base to use when converting the numeric value to a string. The default value if not specified is ten (10), any value between 2 and 36 is valid.


date( [part] ) This function will be translated into the date/time a component of the current date/time based on the analysts current time zone settings. The parameter 'part' is optional, the following are possible: -


Part Description
not specified The current date/time format defined for the current session
year The current four-digit year (e.g. 2008)
year2 The current two-digit year (e.g. 08)
month The current two-digit month (01-12)
day The current two-digit day of the month (01-31)
hour The current two-digit hour (00-23)
hour12 The current two-digit hour (01-12)
min The current two-digit minute (00-59) at the point in time of invocation based on the analysts current time zone settings
sec The current two-digit second (00-59) at the point in time of invocation based on the analysts current time zone settings


udate( [part] ) This function will be translated into the date/time a component of the current date/time based on UTC. The parameter 'part' is optional, the following are possible: -
Part Description
not specified The current UTC time in ISO8601 date/time format
year The current four-digit year (e.g. 2008)
year2 The current two-digit year (e.g. 08)
month The current two-digit month (01-12)
day The current two-digit day of the month (01-31)
hour The current two-digit hour (00-23)
hour12 The current two-digit hour (01-12)
min The current two-digit minute (00-59) at the point in time of invocation based on the analysts current time zone settings
sec The current two-digit second (00-59) at the point in time of invocation based on the analysts current time zone settings
epoch The UTC time as a unix EPOCH time which is a positive number representing the number of seconds elapsed since the 1st January 1970 at 12:00.


uuid( [type] ) This function will be translated into a newly generated UUID. The parameter 'type' is optional, the following are possible: -
Type Description
normal This generates a UUID that is unique to the system its being generated on
secure This generates a UUID that cannot be traced to the ethernet address of the computer on which it was generated
not specified The same as 'normal'.
sess( prop_name ) The current user’s session property.
param(param_name) A value passed into the function when invoking the sequence. A sequence that includes this component can not be auto-bound to a table for automatic sequence generation. If the sequence is used for this purpose, any record insert will fail as the sequence will throw an error
rec( column_name ) will be translated into the value that will be written to the database record. A sequence that includes this component can only be auto-bound to a table and can not be used through a call to the data::sequenceComplexGetNext API. If it is called directly via the API the sequence will contain "??" in the place where the specified record value should be