Recommended mask formats
This section provides supporting information when using the sequence generator. It repeats key sequence and mask concepts previously covered in this section. It also has several tables to refer to when defining the Pattern field in a mask definition. This information helps ensure the pattern you design meets your numbering requirements.
This table lists the predefined sequences and masks that come with Civic Platform. The bottom of this section also explains how to locate the predefined sequences by the Default name in the navigation tree.
| Sequence type | Mask name | Mask definition name | Description | Best practices |
|---|---|---|---|---|
| Agency > Batch invoice | Batch invoice | Batch invoice |
Special Purpose Agency Sequence. Batch Invoice definition is $$SEQ12$$ with the numbers displayed as base 10. Sequence Interval equals “None” which means it never resets based upon a date. |
Use the default setting and do not modify the default. |
| Agency > Classic citation number | Classic citation number | Classic citation number |
Special Purpose Agency Sequence. Classic Citation Number definition is $$SEQ19$$ with the numbers displayed as base 10. Sequence Interval equals “None” which means it never resets based upon a date. |
Use the default setting and do not modify the default. |
| Agency > Invoice | Invoice | Invoice |
Special Purpose Agency Sequence. Invoice definition is $$SEQ12$$ with the numbers displayed as base 10. Sequence Interval is equal to “None” which means it never resets based upon a date. |
Use the default setting and do not modify the default. |
| Agency > Project number | Project number | Project number |
Special Purpose Agency Sequence. Project Number definition is $$SEQ19$$ with the numbers displayed as base 10. Sequence Interval is equal to “None” which means it never resets based upon a date. |
Use the default setting and do not modify the default. |
| Agency >Set ID | < Set ID Masks are listed below> | Set ID | Special Purpose Agency Set ID Sequence
Definition. Set ID defaults to a single Set ID shared by multiple Set Masks. You can modify each Set Mask to use a unique number pool. The Sequence Interval is equal to “Calendar Year” so it resets based upon a calendar year. Civic Platform uses this Set ID Sequence Definition for all of the different Set ID Masks, including Address Set ID, Record Set ID, Licensed Professional Set ID, Parcel Set ID, RandomAudit Set ID, and Set of Sets ID. |
Use default setting. |
| Address set ID | Set ID | The Record Set ID Mask Pattern is $$yy$$-SET-$$SEQ05$$ with a base of 10. Civic Platform shares the Set ID Sequence Definition with the other Set ID masks. | Use default setting. | |
| Record set ID | Set ID | The Record Set ID Mask Pattern is $$yy$$-SET-$$SEQ05$$ with a base of 10. Civic Platform shares the Set ID Sequence Definition with the other Set ID masks. | Use default setting. | |
| Licensed professional set ID | Set ID | The Licensed Professional Set ID Mask Pattern is $$yy$$-LP-$$SEQ05$$ with a base of 10. Civic Platform shares the Set ID Sequence Definition with the other Set ID masks. | Use default setting. | |
| Parcel set ID | Set ID | The Parcel Set ID Mask Pattern is $$yy$$-PARCEL-$$SEQ05$$ with a base of 10. Civic Platform shares the Set ID Sequence Definition with the other Set ID masks. | Use default setting. | |
| Set of sets ID | Set ID | The Set of Sets ID Mask Pattern is $$yy$$-SETS-$$SEQ05$$ with a base of 10. Civic Platform shares the Set ID Sequence Definition with the other Set ID masks. | Use default setting. | |
| Asset ID > Default | Default | Default |
The Default Mask Pattern for the Asset ID is $$SEQ015$$ with a base of 10. The Sequence Interval Type is equal to None and the Sequence Name is “N” which means it never resets based upon a date. |
Use default setting. |
| Invoice | Agency-Invoice | Agency-Invoice |
Agency Invoice Sequence. Agency-Invoice definition is $$SEQ12$$ with the numbers displayed as base 10. The Sequence Interval is equal to “None” which means it never resets based upon a date (the agency default if you do not set up any custom receipts). |
Use the default setting and do not modify the default. |
| Invoice | POS-Invoice <module> | POS-Invoice <module> |
Agency Invoice Module Point of Sale invoice module masks can follow the pattern in your agency’s accounting system. The Mask Definition and Sequence Definition that applies to a POS invoice is equal to “POS-Invoice-<module>.” This configuration enables you to identify what department or group to associate with the Point of Sale (POS) invoice. For example, replace <module> with a department name such as “POS-Invoice-Building.” You must create invoice sequences and mask definitions before you can use the point of sale features. The Sequence Interval Type is equal to Calendar Year and the Sequence Name is “CYyyyy” where yyyy reflects the year in four digits so it resets based upon a calendar year. |
Configure Point of Sale Invoice the same as any other custom invoice. |
| Record ID | Default | Default |
The Record ID Default can handle over 60,000,000 unique keys every year. The Mask Pattern is $$yy$$Record-00000-$$SEQ05$$ with a base of 36 because it is a key. The Sequence Interval Type is equal to Calendar Year and the Sequence Name is “CYyyyy” where yyyy reflects the year in four digits so it resets based upon a calendar year. |
Use default setting. |
| Record key | Default | Default |
The Record Key Default can handle over 60,000,000 unique keys every year. The Mask Pattern is $$yy$$Record-00000-$$SEQ05$$ with a base of 36 because it is a key. The Sequence Interval Type is equal to Calendar Year and the Sequence Name is “CYyyyy” where yyyy reflects the year in four digits so it resets based upon a calendar year. |
Use default setting. |
| Record key | Model record | Model record |
Special Purpose Record Key Sequence You can have up to 9999 models defined each year in Civic Platform. The Defaultpattern is: $$yy$$MDL-00000-#$$SEQ04$$ The base is 10. |
Use the default setting and do not modify the default. |
| Partial record ID | Default | Default |
Special Purpose Record ID Sequence The Default pattern is $$yy$$EST-$$SEQ06$$. The base is 10. The Sequence Interval Type is equal to Calendar Year and the Sequence Name is “CYyyyy” where yyyy reflects the year in four digits so it resets based upon a calendar year. |
Use the default setting and do not modify the default. |
| Temporary record ID | Default | Default |
Special Purpose Record ID Sequence. The Default pattern is $$yy$$TMP-$$SEQ06$$. The base is 10. The Sequence Interval Type is equal to Calendar Year and the Sequence Name is “CYyyyy” where yyyy reflects the year in four digits so it resets based upon a calendar year. |
Use the default setting and do not modify the default. |
| Receipt | Agency-Receipt | Agency-Receipt |
Special Purpose Receipt Sequence Agency-Receipt definition is $$SEQ12$$ with the numbers displayed as base 10. The Sequence Interval is equal to “None” which means it never resets based upon a date (the agency default if you do not define any custom receipts). |
Use the default setting and do not modify the default. |
| Receipt | POS-Receipt- <module> | POS-Receipt- <module> |
Special Purpose Receipt Point of Sale receipt masks are for special purpose Receipts. The point of sale system uses this by getting the Mask Definition and/Sequence Definition named “POS-Receipt-<module>” where <module> is the name of the Point of Sale (POS) receipt that you are defining. For example, “POS-Receipt-Building.” You must create receipt sequence and mask definitions before you can use a point of sale. The Sequence Interval Type is equal to Calendar Year and the Sequence Name is “CYyyyy” where yyyy reflects the year in four digits so it resets based upon a calendar year. |
Configure Point of Sale Receipts the same as any other custom receipt. |
| Receipt | PP-Receipt | PP_RECEIPT_SEQ |
Special Purpose Receipt Payment Processing receipt masks are for special purpose Receipts. The Payment Processing system uses them by getting the Mask/Sequence Definition named “PP_RECEIPT_SEQ.” You must create these receipt sequence and mask definitions before you can use Payment Processing. |
Configure Payment Processing Receipts the same as any other custom receipt. |
| Receipt | SET-Receipt <module> | SET-RECEIPT_SEQ |
Special Purpose Receipt Create Set receipt masks for special purpose Receipts. The Set/Sets system uses this by getting the Mask/Sequence Def named “SET_RECEIPT_SEQ.” You must create receipt sequence and mask definitions before you can use Payment Processing. |
Configure Set/Sets Receipts the same as any other custom receipt. |
| Receipt | POS-Invoice- <module> | POS-Invoice- <module> |
Special Purpose Invoice Create Point of Sale Invoice masks as a special purpose Invoice. The point of sale system uses them by getting the Mask/Sequence Def named “POS-Invoice-<module>” where <module> is the name of the Point of Sale (POS) invoices you are defining. For example, “POS-Invoice-Building.” You must create these invoice sequence and mask definitions before you can use POS. |
Configure Point of Sale Invoices the same as any other custom receipt. |
Masks > Default setting in the navigation tree
You can select the Default setting by expanding Sequence by type in the navigation tree.
Asset ID > Default setting in the navigation tree
You can select this Default setting by expanding Asset ID in the navigation tree.
| Sequence type | Example | Output |
|---|---|---|
| Invoice | INV-$$yyyyMMddHH$$-$$SEQ08$$Base = 10Reset Value = 99999999 (10^8 – 1) | REC-2010083116-00000003 |
| Record ID | $$yyyy$$-$$SEQ07$$-RESBase = 10 (always recommended for Record ID)Reset Value = 99999999 (10^8 – 1) | 2008-00000001-RES2008-00000021-RES2008-00000301-RES2008-00087601-RES |
| Record ID | LIC-$$yyyy$$-$$RANDOMZ06$$-$$SEQ##-####-###$$Base = 10 Reset Value = 999999999 (10^9 – 1) | LIC-2008-9AD633-12-3456-789LIC- 2008-ZX8F3E-12-3456-789LIC- 2008-78934RT-12-3456-789LIC- 2008-K8J7D3D-12-3456-789 |
| Record key | $$yy$$BLD-00000-$$SEQ05$$Base=36Reset Value = 60466175 (36^5 - 1) Note: In the pattern for new Record Key definitions, always use Base=36, Reset Value = 60466175 (36^5 - 1), and $$SEQ05$$ | 08BLD-00000-0000108BLD-00000- 00A0108BLD-00000-0ZZ0108BLD-00000- ZA421 |
| Record key | $$yy$$BLD-00000-$$SEQ05$$Base = 10Reset Value = 99999 (10^5 – 1) | 08BLD-00000-0000108BLD-00000- 0001108BLD-00000-0043108BLD-00000- 08801 |
| Receipt | REC-$$CI$$-$$CDI$$-$$yyyyMMddHH$$-$$SEQ08$$Base = 10Reset Value = 99999999 (10^8 – 1) | REC-DC4-02-2008071416-00002423 |
| Description | Syntax | Example of output (2008-07-14 4:22 pm) |
|---|---|---|
| Year (2 digit) | $$yy$$ | 08 |
| Year (4 digit) | $$FYYY$$ | 2008 |
| Month in Year | $$MM$$ | 7 |
| Month in Year | $$MMM$$ | Jul |
| Week in Year | $$ww$$ | 28 |
| Week in Month | $$W$$ | 2 |
| Day in Year | $$DD$$ | 197 |
| Day in Month | $$dd$$ | 14 |
| Day of Week in month | $$F$$ | 1 |
| Day of Week in month | $$EEE$$ | Mon |
| AM/PM | $$Accela Automation$$ | PM |
| Hour in Day (0- 23) | $$HH$$ | 16(Example: 2008-07-14 0:22 -> 00) |
| Hour in Day (1 - 24) | $$kk$$ | 16(Example: 2008-07-14 0:22 -> 24) |
| You can combine Simple Date patterns into a single, more complex pattern. | $$yyMMdd$$ | 080714 |
| You can combine Simple Date patterns into a single, more complex pattern. | $$yyMMM$$ | 08JUL |
| You can combine Simple Date patterns into a single, more complex pattern. | $$yyMMdd-HH$$ | 080714-16 |
Civic Platform supports fiscal years that start on the first day of a calendar month.
| Description | Syntax | Example of output (2008-07-14 4:22 pm with Fiscal Year start = 07) |
|---|---|---|
| Fiscal year (2 digit) | $$FY$$ | 09 |
| Fiscal year (4 digit) | $$FYYY$$ | 2009 |
| Fiscal quarter (1 digit) | $$FQ$$ | 1 |
| Fiscal Month/Period (2 digit) | $$FM$$ | 01 |
| Description | Syntax | Description | Example | Output |
|---|---|---|---|---|
| Sequence number (Default) | $$SEQ$$ | 1-5 digits with valid digits determined by Sequence Number Base (2-36). | $$SEQ$$Base = 10 | 99909990 |
| $$SEQ$$Base = 36 | 8Z2SDFZ9ZZ8 | |||
| Sequence number | $$SEQ[0]n$$ | [0] Left Zero Fill if sequence does not require all n digits.n = maximum number of digits to display. | $$SEQ05$$Base = 10 | 00009000 100083830000 |
| $$SEQ5$$Base = 36 | 19AZ10999A Z8888 | |||
| Sequence number (formatted number) | $$SEQ####$$ | Formatted Number. Starts with # or *. Each # represents one digit.
Each * represents one hidden digit. Warning: Do not use hidden digits if the sequence numbers generated must be unique because doing so causes the mask definition to return duplicate sequences. Do not use this option for asset IDs, record keys, record IDs, or receipts for Civic Platform to function properly. Civic Platform treats any other character as literal text. |
$$SEQ##-#####$$Base = 10 | 01-23456 |
| $$SEQ##-###-##$$Base = 10 | 01-234-56 | |||
| $$SEQ*****-##$$Base = 10 | *****-56 | |||
| Sequence number | $$SEQZ05$$ | Legacy Record Key Sequence Format. Most significant digit is base 36 (valid values are[0-9]|[A-Z]). All other characters are base 10 (valid values are [0-9]. | $$SEQZ05$$ | 0000199999 A0000A9999 B0000Z9999 |
| Description | Syntax | Description | Example | Output |
|---|---|---|---|---|
| Literal dollar sign | $$DOLLAR$$ | Text | $$DOLLAR$$ | $ |
| Random number (Default) | $$RANDOM$$ | Creates from 1-5 random digits with values from [0-9]. | $$RANDOM$$ | 9 90 990 9990 |
| Random number | $$RANDOM[Z][0]n$$ | Creates from 1-20 random digits with values from [0-9] (base 10) or [0-9] |[A-Z] (base 36).[Z] set = base 36. If not set = base 10.[0] set = left zero fill to guarantee the exact number of digits.n = number of digits. Default=5, Min=1, Max=20. | $$RANDOMZ05$$$$RANDOMZ9$$ | ASD83 23NMJKF823L12L Z8M3829D2 |
The variables in this table apply to receipt masks.
| Description | Syntax | Description | Example output |
|---|---|---|---|
| Cash drawer ID | $$CDI$$ | Cashier Drawer ID. Use only for receipt sequences. | 05 |
| Cashier workstation | $$CI$$ | Cashier Workstation Information. Use only for receipt sequences | D42 |
| Type alias | $$RECTYPE-ALIAS$$ | Record Type Alias. Use only for receipt sequences; does not work for PP-Receipt and SET-Receipt. | Facilities Condos |
| Group | $$RECTYPE-1$$ | The first element of application type. Use only for receipt sequences but does not work for PP-Receipt and SET-Receipt. | Building |
| Type | $$RECTYPE-2$$ | The second element of application type. Use only for receipt sequences but does not work for PP-Receipt and SET-Receipt. | Facilities |
| SubType | $$RECTYPE-3$$ | The third element of application type. Use only for receipt sequences but does not work for PP-Receipt and SET-Receipt. | Remodel |
| Category | $$RECTYPE-4$$ | The fourth element of application type. Use only for receipt sequences but does not work for PP-Receipt and SET-Receipt. | Condos |
| Module name | $$RECTYPE-MODULE$$ | The module name of application type. Use only for receipt sequences but does not work for PP-Receipt and SET-Receipt. | Building |
| Department alias | $$DEPT-ALIAS$$ | The department name of organization. Use only for receipt sequences. | Long Range |
| Bureau | $$DEPT-1$$ | The first element of the organization level. Use only for receipt sequences. | DSD |
| Division | $$DEPT-2$$ | The second element of the organization level. Use only for receipt sequences. | PLN |
| Section | $$DEPT-3$$ | The third element of the organization level. Use only for receipt sequences. | NA |
| Group | $$DEPT-4$$ | The fourth element of the organization level. Use only for receipt sequences. | Long Range |
| Office | $$DEPT-5$$ | The fifth element of the organization level. Use only for receipt sequences. | NA |
| User name | $$USERID$$ | User Login ID. Use only for receipt sequences. | Admin |
| Description | Syntax | Description | Example output |
|---|---|---|---|
| Record type alias | $$RECTYPE-ALIAS$$ | Record type alias. | Facilities condos |
| Group | $$RECTYPE-1$$ | The first element of application type. | Building |
| Type | $$RECTYPE-2$$ | The second element of application type. | Facilities |
| SubType | $$RECTYPE-3$$ | The third element of application type. | Remodel |
| Category | $$RECTYPE-4$$ | The fourth element of application type. | Condos |
| Module name | $$RECTYPE-MODULE$$ | The module name of application type. | Building |
| Department alias | $$DEPT-ALIAS$$ | The department name of organization. | Long range |
| Bureau | $$DEPT-1$$ | The first element of the organization level. | DSD |
| Division | $$DEPT-2$$ | The second element of the organization level. | PLN |
| Section | $$DEPT-3$$ | The third element of the organization level. | NA |
| Group | $$DEPT-4$$ | The fourth element of the organization level. | LONGRANG |
| Office | $$DEPT-5$$ | The fifth element of the organization level. | NA |
| User name | $$USERID$$ | User Login ID. | Admin |
| Mask pattern | Base 10 sequence reset value | Base 36 sequence reset value | ||
|---|---|---|---|---|
| $$SEQ01$$ | 9 | 10^1-1 | 35 | 36^1-1 |
| $$SEQ02$$ | 99 | 10^2-1 | 1295 | 36^2-1 |
| $$SEQ03$$ | 999 | 10^3-1 | 46655 | 36^3-1 |
| $$SEQ04$$ | 9999 | 10^4-1 | 1679615 | 36^4-1 |
| $$SEQ05$$ | 99999 | 10^5-1 | 60466175 | 36^5-1 |
| $$SEQ06$$ | 999999 | 10^6-1 | 2176782335 | 36^6-1 |
| $$SEQ07$$ | 9999999 | 10^7-1 | 78364164095 | 36^7-1 |
| $$SEQ08$$ | 99999999 | 10^8-1 | 2821109907455 | 36^8-1 |
| $$SEQ09$$ | 999999999 | 10^9-1 | 101559956668415 | 36^9-1 |
| $$SEQ010$$ | 9999999999 | 10^10-1 | 3656158440062975 | 36^10-1 |
| $$SEQ011$$ | 99999999999 | 10^11-1 | 131621703842267135 | 36^11-1 |
| $$SEQ012$$ | 999999999999 | 10^12-1 | 4738381338321616895 | 36^12-1 |
| $$SEQ013$$ | 9999999999900 | 10^13-1 | 9223372036854775807 | 36^13-1 |
| $$SEQ014$$ | 99999999999999 | 10^14-1 | Not Applicable | N/A |
| $$SEQ015$$ | 999999999999999 | 10^15-1 | N/A | N/A |
| $$SEQ016$$ | 9999999999999999 | 10^16-1 | N/A | N/A |
| $$SEQ017$$ | 99999999999999999 | 10^17-1 | N/A | N/A |
| $$SEQ017$$ | 999999999999999999 | 10^19-1 | N/A | N/A |
| $$SEQ019$$ | 9223372036854775807 | 2^63-1 | N/A | N/A |

