Leave a comment at the end of this page or email contact@krishagni.com
Participant Label Format (PPID Format)
Users can auto-generate the PPID of each participant at the individual collection protocol level using the below tokens.
Tokens to generate PPIDs
Token name | Description | Example |
|---|
Token name | Description | Example |
|---|---|---|
| Unique identifier of the Collection Protocol given by the system when CP was created. |
PPID generated will be 7-01, 7-02, 7-03, etc. Here 7 is a unique identifier assigned by the system to the CP when it was created. |
| Code added to the Collection protocol by the user during the setup. |
PPID generated will be 'PCOS-02' Here, 'PCOS' is the CP code set while creating CP, and '02' is the 2-digit unique identifier generated within the CP. |
| Generates a unique identifier for a participant within a CP. The argument 'n' is optional and specifies the number of digits in the identifier. For example: %CP_UID% generates IDs like 1, 10, 1010, etc %CP_UID(5)% generates IDs like 00001, 00002, 00003, 00004, ... 00010, 00011, etc | %CP_CODE%.%CP_UID(4)%, PPID generated will be 'PCOS-0004' Here, 'PCOD' is the CP code set while creating CP, and '0004' is the 4-digit unique identifier generated within the CP. |
SYS_UID(n) | Assigns unique sequential numbers across all collection protocols. For example: Generates IDs like 1,2,3,.........101,102, etc. These numbers will be unique across all the collection protocols. (n): Optionally specify the number of digits. For example, if (2) is used, then the numbers generated will be 01, 02, 03, etc. | %SYS_UID%, PPID generated will be '36', the unique sequential number across all collection protocols |
| CP specific site code of participant's first MRN. The order of MRNs is based on the order in which they were assigned to the participant. The CP site code is defined in the collection protocol. | %CP_SITE_CODE%_%CP_UID(4)%, the PPID generated will be 'KP-01_0012', where 'KP-01' is the CP site code and '0012' is the unique sequential identifier within the CP. |
| System-wide site code of participant's first MRN. The order of MRNs is based on the order in which they were assigned to the participant. This is specified on the site page. | %SITE_CODE%_%CP_UID(4)%, PPID generated will be 'KP_0013', where 'KP' is the site code, and '0013' is the 4 digits unique identifier within the CP. |
| External subject ID specified during participant registration. External subject ID is a typically unique study-based or system-wide IDs assigned by external systems like OpenClinica, REDCap to identify the subjects or patients. Works v4.3 onward | %CP_CODE%-%EXT_SUBJECT_ID%, the generated PPID will be 'PW-OC-0001' where 'PW' is the CP code, and 'OC-0001' is external subject ID |
| CP site code of participant's registration site, if specified. Works v4.3 onward | %CP_CODE%-%EXT_SUBJECT_ID%-%REG_SITE_CODE%, then the generated PPID will look like 'PW-OC-0001-KP' where 'PW' is CP code, 'OC-0001' is external subject ID, and 'KP' is the CP site code for the registration site. |
| Include the value of any custom field identified by "fieldName" at the specified level. The field name is the same as the attribute name that appears in the custom form designer. The allowed values of level are "cpr" and "cp" Works v5.0 onward |
|
Advance Tokens
You can use the EVAL(expr) token to add advanced tokens at the participant level. This token includes the result of expression evaluation in the generated labels. The expression can be a field name or complex expression.
Token Name | Description | Example |
|---|
Token Name | Description | Example |
|---|---|---|
%EVAL(#cpr.externalSubjectId)% | This will include the external subject ID in the generated PPIDs. | |
%EVAL(#cpr.participant.gender.value?.charAt(0))% | This will include the first character of the participant gender, if any, in the generated PPIDs. | |
%EVAL(#formatDate(#cpr.registrationDate, "yyyy"))% | This will include the registration year in the generated PPIDs. | |
%EVAL(#cpr.participant?.extension?.getAttrValues()['adapt'] == '1' ? 'A' : 'B')% | This will add A in the label if the adapt checkbox is checked and visa versa. | TIA_41_A |
%EVAL(#cpr.collectionProtocol.shortTitle)% | Includes CP short title in the label | |
%EVAL(#cpr.participant.empi)% | Includes the eMPI of the participant in the PPID | |
%EVAL(('0000000' + #cpr.externalSubjectId)?.substring(#cpr.externalSubjectId.length(), ('0000000' + #cpr.externalSubjectId).length()))% | This will pad string fields like to append 0’s |
|
%EVAL(#cpr.externalSubjectId.length() < 7 ? ('0000000' + #cpr.externalSubjectId).substring(#cpr.externalSubjectId.length()) : #cpr.externalSubjectId)% | This pads the External Subject Id with leading 0’s (if its length < 7 characters) |
|
Steps to configure PPID format
Navigate to the CP overview page → CP settings → Label Format and Print
Set the desired PPID label format -> click on the 'Save' button