The JMPC_ Internal Model Variables Table
During the Add Study... process, a number of variables from the imported data sets are used to construct a new set of internal JMPC_ variables. These analysis-ready variables follow the ADaM standards and they are used in calculations and displays by the reports.
Note: When generating the JMPC_ internal model variables, the ADaM variable(s) always take precedence over their SDTM equivalents.
The JMPC_ variables have the following column properties:
• | SAS Name – same as column name. |
• | SAS Label – the label of the original variable is used. If the variable was derived and multiple variables were used to create the variable, then the standard ADaM label is used. |
• | Origin – this is the list of the original variable(s) that was/were used to create the JMPC_ variable. |
JMPC_ Variable Name | Variable Type | Notes |
---|---|---|
JMPC_EXSTDTC | Character |
Earliest non-missing value of EXSTDTC per subject. This variable is added only to the TADSL data table. |
JMPC_EXSTDTM | Numeric |
Numeric datetime version of JMPC_EXSTDTC which only gets created if EXSTDTC is datetime. This variable is added only to the TADSL data table. |
JMPC_EXSTDT | Numeric |
Numeric date version of JMPC_EXSTDTC. This variable is added only to the TADSL data table. |
JMPC_EXENDTC | Character |
Latest non-missing value of EXENDTC per subject. EXSTDTC is used if EXENDTC is missing. This variable is added only to the TADSL data table. |
JMPC_EXENDTM | Numeric |
Numeric datetime version of JMPC_EXENDTC. This variable is created only if EXENDTC is datetime. EXSTDTC is used if EXENDTC is missing. This variable is added only to TADSL data table. |
JMPC_EXENDT | Numeric |
Numeric date version of JMPC_EXENDTC. EXSTDTC is used if EXENDTC is missing. This variable is added only to TADSL data table. |
JMPC_ANCHORDATE | Numeric |
If, during add study, the user selects “Use treatment start date” as the Anchor Date for Study Day Calculation, then this variable is populated with the numeric values of one of these variables: TRTSDTM, TRTSDT, RFXSTDTC, JMPC_EXSTDTM, JMPC_EXSTDT. The variables are checked in this priority order. If during add study the user selects “Use reference start date” as Anchor Date for Study Day Calculation, then the numeric values of RFSTDTC are used to populate the variable. The variable used to create JMPC_ANCHORDATE must have nonmissing values This variable is added only to TADSL data table. |
JMPC_TREATMENTSTARTDATE | Numeric |
It is populated with the numeric values of one of these variables: TRTSDTM, TRTSDT, RFXSTDTC, JMPC_EXSTDTM, JMPC_EXSTDT, RFSTDTC. The variables are checked in this priority order and the first variable that exists and has non-missing values is used to create JMPC_TREATMENTSTARTDATE. This variable is added only to TADSL data table. |
JMPC_TREATMENTSTARTDATEF | Numeric |
Date imputation flag variable for JMPC_TREATMENTSTARTDATE. If Day is imputed only, then it gets the value of “D”. If Day and Month are both imputed, then it gets the value of “M”. This variable is added only to the TADSL data table. |
JMPC_TREATMENTSTARTTIMEF | Numeric |
Time imputation flag variable for JMPC_TREATMENTSTARTDATE. If Seconds are imputed only, then it gets the value of “S”. If Seconds and Minutes are both imputed, then it gets the value of “M”. If Seconds, Minutes, and Hour are all imputed, then it gets the value of “H”. This variable is added only to the TADSL data table. |
JMPC_TREATMENTENDDATE | Numeric |
It is populated with the numeric values of one of these variables: TRTEDTM, TRTEDT, RFXENDTC, JMPC_EXENDTM, JMPC_EXENDT, and RFENDTC and the first variable that exists and has non-missing values is used to create JMPC_TREATMENTENDDATEF. This variable is added only to the TADSL data table. |
JMPC_TREATMENTENDDATEF | Numeric |
Date imputation flag variable for JMPC_TREATMENTENDDATE. If Day is imputed only, then it gets the value of “D”. If Day and Month are both imputed, then it gets the value of “M”. This variable is added only to the TADSL data table. |
JMPC_TREATMENTENDTIMEF | Numeric |
Time imputation flag variable for JMPC_TREATMENTENDDATE. If Seconds are imputed only, then it gets the value of “S”. If Seconds and Minutes are both imputed, then it gets the value of “M”. If Seconds, Minutes, and Hour are all imputed, then it gets the value of “H”. This variable is added only to the TADSL data table. |
JMPC_ALSBFL | Character |
All Subjects population flag variable. It has a value of “Y” for all subjects. This variable is added to the ADSL, DM, and TADSL data tables. |
JMPC_ALSBXSFL | Character |
All Subjects Excluding Screen Failures population flag. It has a value of “Y” for all subjects that are not screen failures, and a value of “N” for screen failures. ARM/ARMCD and ARMNRS variables are used to identify Screen Failures. This variable is added to the ADSL, DM, and TADSL data tables. |
JMPC_SAFFL | Character |
Safety population flag This variable is created by checking for the existence of the following ADSL/DM variables in this order: SAFFL, SAFETY. The first variable that exists and has non-missing values is used to create JMPC_SAFFL. If the values are 1 and 0 instead of Y and N, then 1 is converted to Y and 0 to N. |
JMPC_COMPLFL | Character |
Completers population flag This variable is created by checking for the existence of the following ADSL/DM variables in this order: COMPLFL, COMPFL, COMPLT, COMPLETED. The first variable that exists and has non-missing values is used to create JMPC_COMPLFL. If the values are 1 and 0 instead of Y and N, then 1 is converted to Y and 0 is converted to N. |
JMPC_ENRLFL | Character |
Enrolled population flag This variable is created by checking for the existence of the following ADSL/DM variables in this order: ENRLFL, ENRL, ENROLLED. The first variable that exists and has non-missing values is used to create JMPC_ENRLFL. If the values are 1 and 0 instead of Y and N, then 1 is converted to Y and 0 is converted to N. |
JMPC_FASFL | Character |
Full Analysis Set population flag This variable is created by checking for the existence of the following ADSL/DM variables in this order: FASFL, FULLSET. The first variable that exists and has non-missing values is used to create JMPC_FASFL. If the values are 1 and 0 instead of Y and N, then 1 is converted to Y and 0 is converted to N. |
JMPC_ITTFL | Character |
Intent-To-Treat population flag This variable is created by checking for the existence of the following ADSL/DM variables in this order: ITTFL, ITT. The first variable that exists and has non-missing values is used to create JMPC_ITTFL. If the values are 1 and 0 instead of Y and N, then 1 is converted to Y and 0 is converted to N. |
JMPC_PPROTFL | Character |
Per-Protocol population flag This variable is created by checking for the existence of the following ADSL/DM variables in this order: PPROTFL, PPROT. The first variable that exists and has non-missing values is used to create JMPC_PPROTFL. If the values are 1 and 0 instead of Y and N, then 1 is converted to Y and 0 is converted to N. |
JMPC_RANDFL | Character |
Randomized population flag This variable is created by checking the existence of the following ADSL/DM variables in this order: RANDFL, RAND, RANDOMIZED, RANDOM. The first variable that exists and has non-missing values is used to create JMPC_PPROTFL. If the values are 1 and 0 instead of Y and N, then 1 is converted to Y and 0 is converted to N. |
JMPC_PARAM | Character |
If the ADaM PARAM variable exists, its values are used to create JMPC_PARAM. If the ADaM PARAM variable does not exist, then the SDTM variables xxTEST, xxCAT, xxSCAT, xxSPEC, xxMETHOD, xxLOC, xxPOS, xxSTRESU/xxORRESU are concatenated to create JMPC_PARAM. Note: Only the values of xxTEST are used to create JMPC_PARAM for SDTM TU, TR, and RS domains. |
JMPC_PARAMCD | Character |
If the ADaM PARAMCD variable exists, its values are used to create JMPC_PARAMCD. If the ADaM PARAMCD variable does not exist, then the SDTM variables xxTESTCD, xxCAT, xxSCAT, xxSPEC, xxMETHOD, xxLOC, xxPOS, xxSTRESU/xxORRESU are concatenated to create JMPC_PARAMCD. Note: Only the values of xxTESTCD are used to create JMPC_PARAMCD for SDTM TU, TR, and RS domains. |
JMPC_PARCAT1 | Character |
If the ADaM PARCAT1 variable exists, then the values of PARCAT1 are used to create JMPC_PARCAT1. If the ADaM PARCAT1 variable does not exist, then the SDTM variable xxCAT is used to create JMPC_PARCAT1. |
JMPC_AVAL | Numeric |
If the ADaM AVAL variable exists, then the values of AVAL are used to create JMPC_AVAL. If the ADaM AVAL variable does not exist, then the standard or original results (xxSTRESN/xxORRES) from SDTM are used, based on which Advanced option is selected during the Add Study... process. |
JMPC_AVALC | Character |
If the ADaM AVALC variable exists, then the values of AVALC are used to create JMPC_AVALC. If the ADaM AVALC variable does not exist, then the standard or original results (xxSTRESC/xxORRES) from SDTM are used, based on which Advanced option is selected during the Add Study... process. |
JMPC_AVISIT | Character |
AVISIT/VISIT is used to create JMPC_AVISIT. If the domain contains only a numeric visit variable, then ADSV/SV is used to look up the character visit values. If there is a visit variable in DM/ADSL, then JMPC_DMVISIT/JMPC_ADSLVISIT is created. |
JMPC_AVISITN | Character |
AVISITN/VISITNUM is used to create JMP_AVISITN. If the domain contains only a character visit variable, then ADSV/SV is used to look up the numeric visit values. If there is a visit number variable in DM/ADSL, then JMPC_DMVISITN/JMPC_ADSLVISITN is created. |
JMPC_RFSTDTM | Numeric |
RFSTDTC is used to create JMPC_RFSTDTM. This variable is created only if RFSTDTC has both date and time values. |
JMPC_RFSTDT | Numeric | RFSTDTC is used to create JMPC_RFSTDTM.
This variable is created only if RFSTDTC has only date but not time values. |
JMPC_RFSTDTF | Character |
Date imputation flag variable for reference start date (RFSTDTC). If Day is imputed only, then it gets the value of “D”. If Day and Month are both imputed, then it gets the value of “M”. |
JMPC_RFSTTMF | Character |
Time imputation flag variable for reference start date (RFSTDTC). It gets created only if RFSTDTC is datetime (has time). If Seconds are imputed only, then it gets the value of “S”. If Seconds and Minutes are both imputed, then it gets the value of “M”. If Seconds, Minutes, and Hour are all imputed, then it gets the value of “H”. |
JMPC_RFENDTM | Numeric |
RFENDTC is used to create JMPC_RFENDTM. This variable is created only if RFENDTC has both date and time values.. |
JMPC_RFENDT | Numeric |
RFENDTC is used to create JMPC_RFENDT. This variable is created only if RFENDTC has date (but not time) values. |
JMPC_RFENDTF | Character |
Date imputation flag variable for reference end date (RFENDTC). If Day is imputed only, then it gets the value of “D”. If Day and Month are both imputed, then it gets the value of “M”. |
JMPC_RFENTMF | Character |
Time imputation flag variable for reference end date (RFENDTC). It only gets created if RFENTDTC is datetime (has time). If Seconds are imputed only, then it gets the value of “S”. If Seconds and Minutes are both imputed, then it gets the value of “M”. If Seconds, Minutes, and Hour are all imputed, then it gets the value of “H”. |
JMPC_RFICDTM | Numeric |
RFICDTC is used to create JMPC_RFICDTM. This variable is created only if RFICDTC has both date and time values. |
JMPC_RFICDT | Numeric |
RFICDTC is used to create JMPC_RFICDT. This variable is created only if RFICDTC has date (but not time) values. |
JMPC_RFXSTDTM | Numeric |
RFXSTDTC is used to create JMPC_RFXSTDTM. This variable is created only if RFXSTDTC has both date and time values. |
JMPC_RFXSTDT | Numeric |
RFXSTDTC is used to create JMPC_RFXSTDT. This variable is created only if RFXSTDTC has date (but not time) values. |
JMPC_RFXSTDTF | Character |
Date imputation flag variable for Date/Time of First Study Treatment (RFXSTDTC). If Day is imputed only, then it gets the value of “D”. If Day and Month are both imputed, then it gets the value of “M”. |
JMPC_RFXSTTMF | Character |
Time imputation flag variable for Date/Time of First Study Treatment (RFXSTDTC). It gets created only if RFXSTDTC is datetime (has time). If Seconds are imputed only, then it gets the value of “S”. If Seconds and Minutes are both imputed, then it gets the value of “M”. If Seconds, Minutes, and Hour are all imputed, then it gets the value of “H”. |
JMPC_RFXENDTM | Numeric |
RFXENDTC is used to create JMPC_RFXENDTM. This variable is created only if RFXENDTC has both date and time values. |
JMPC_RFXENDT | Numeric |
RFXENDTC is used to create JMPC_RFXENDT. This variable is created only if RFXENDTC has date (but not time) values. |
JMPC_RFXENDTF | Character |
Date imputation flag variable for Date/Time of Last Study Treatment (RFXENDTC). If Day is imputed only, then it gets the value of “D”. If Day and Month are both imputed, then it gets the value of “M”. |
JMPC_RFXENTMF | Character |
Time imputation flag variable for Date/Time of Last Study Treatment (RFXENDTC). It only gets created if RFXENDTC is datetime (has time). If Seconds are imputed only, then it gets the value of “S”. If Seconds and Minutes are both imputed, then it gets the value of “M”. If Seconds, Minutes, and Hour are all imputed, then it gets the value of “H”. |
JMPC_RFPENDTM | Numeric |
RFPENDTC is used to create JMPC_RFPENDTM. This variable is created only if RFPENDTC has both date and time values. |
JMPC_RFPENDT | Numeric | RFPENDTC is used to create JMPC_RFPENDT. This variable is created only if RFPENDTC has date (but not time) values. |
JMPC_RFPENDTF | Character |
Date imputation flag variable for Date/Time of End of Participation (RFPENDTC). If Day is imputed only, then it gets the value of “D”. If Day and Month are both imputed, then it gets the value of “M”. |
JMPC_RFPENTMF | Character |
Time imputation flag variable for Date/Time of End of Participation (RFPENDTC). It gets created only if RFPENDTC is datetime (has time). If Seconds are imputed only, then it gets the value of “S”. If Seconds and Minutes are both imputed, then it gets the value of “M”. If Seconds, Minutes, and Hour are all imputed, then it gets the value of “H”. |
JMPC_BRTHDT | Numeric | Numeric version of BRTHDTC. Partial birth dates are imputed. |
JMPC_DTHDT | Numeric | Numeric version of DTHDTC. Partial death dates are imputed. |
JMPC_ADT | Numeric | This variable is generated from either the ADaM ADT/ADTM or the SDTM xxDTC variable. If the date variable is in DM/ADSL, then JMPC_DMDT/JMPC_ADSLDT is created. |
JMPC_ADTM | Numeric |
This variable is generated from either the ADaM ADTM or the SDTM xxDTC variable. This variable is created only when the original variable has both date and time values. If the datetime variable is in DM/ADSL, then JMPC_DMDTM/JMPC_ADSLDTM gets created. |
JMPC_ADTF | Character |
Date imputation flag variable. If ADaM ADTF variable is present, then we use the values of ADTF to populate it. Otherwise, if we have the character xxDTC variable then if Day is imputed only, then it gets the value of “D”. If Day and Month are both imputed, then it gets the value of “M”. If the date variable is in DM/ADSL, then JMPC_DMDTF/JMPC_ADSLDTF gets created. |
JMPC_ATMF | Character |
Time imputation flag variable. If ADaM ATMF variable is present, then we use the values of ATMF to populate it. Otherwise, if we have character xxDTC variable then if Seconds are imputed only, then it gets the value of “S”. If Seconds and Minutes are both imputed, then it gets the value of “M”. If Seconds, Minutes, and Hour are all imputed, then it gets the value of “H”. If the datetime variable is in DM/ADSL, then JMPC_DMTMF/JMPC_ADSLTMF gets created. |
JMPC_ASTDT | Numeric |
This variable is generated from either the ADaM ASTDT/ASTDTM or the SDTM xxSTDTC variable. If the start date variable is in DM/ADSL, then JMPC_DMSTDT/JMPC_ADSLSTDT is created. |
JMPC_ASTDTM | Numeric |
This variable is generated from either the ADaM ASTDTM or the SDTM xxSTDTC variable. This variable is created only when the original variable has both date and time values. If the start datetime variable is in DM/ADSL, then JMPC_DMSTDTM/JMPC_ADSLSTDTM gets created. |
JMPC_ASTDTF | Character |
Start date imputation flag variable. If ADaM ASTDTF variable is present, then we use the values of ASTDTF to populate it. Otherwise, if we have character xxSTDTC variable then if Day is imputed only, then it gets the value of “D”. If Day and Month are both imputed, then it gets the value of “M”. If the start date variable is in DM/ADSL, then JMPC_DMSTDTF/JMPC_ADSLSTDTF gets created. |
JMPC_ASTTMF | Character |
Start time imputation flag variable. If ADaM ASTTMF variable is present, then we use the values of ASTTMF to populate it. Otherwise, if we have character xxSTDTC variable then if Seconds are imputed only, then it gets the value of “S”. If Seconds and Minutes are both imputed, then it gets the value of “M”. If Seconds, Minutes, and Hour are all imputed, then it gets the value of “H”. If the start datetime variable is in DM/ADSL, then JMPC_DMSTTMF/JMPC_ADSLSTTMF gets created. |
JMPC_AENDT | Numeric | This variable is generated from either the ADaM AENDT/AENDTM or the SDTM xxENDTC variable. |
JMPC_AENDTM | Numeric |
This variable is generated from either the ADaM AENDTM or the SDTM xxENDTC variable. This variable is created only when the original variable has both date and time values. |
JMPC_AENDTF | Character |
End date imputation flag variable. If ADaM AENDTF variable is present, then we use the values of AENDTF to populate it. Otherwise, if we have character xxENDTC variable then if Day is imputed only, then it gets the value of “D”. If Day and Month are both imputed, then it gets the value of “M”. |
JMPC_AENTMF | Character |
End time imputation flag variable. If ADaM AENTMF variable is present, then we use the values of AENTMF to populate it. Otherwise, if we have character xxENDTC variable then if Seconds are imputed only, then it gets the value of “S”. If Seconds and Minutes are both imputed, then it gets the value of “M”. If Seconds, Minutes, and Hour are all imputed, then it gets the value of “H”. |
JMPC_ADY | Numeric |
This variable is generated from either the ADaM ADY or the SDTM xxDY variable. When there is no study day variable, then this variable is calculated using the domain's date variable and the anchor date specified for study day calculation (treatment start date/reference start date). Even if a study day variable is present, users can choose the option to recalculate the values when adding the study under Advanced options. If there is a study day variable in DM/ADSL, then JMPC_DMDY/JMPC_ADSLDY gets created. |
JMPC_ASTDY | Numeric |
This variable is generated from either the ADaM ASTDY or the SDTM xxSTDY variable. When there is no start study day variable, then this variable is calculated using the domain’s start date variable and the anchor date specified for study day calculation (treatment start date/reference start date). Even if a start study day variable is present, users can choose the option to recalculate the values when adding the study under Advanced options. If there is a study start day variable in DM/ADSL, then JMPC_DMSTDY/JMPC_ADSLSTDY gets created. |
JMPC_AENDY | Numeric |
This variable is generated from either the ADaM AENDY or the SDTM xxENDY variable. When there is no end study day variable, this variable is calculated using the domain’s end date variable and the anchor date specified for study day calculation (treatment start date/reference start date). Even if end study day variable is present users can choose the option to recalculate the values when adding the study under Advanced options. |
JMPC_ATPT | Character | This variable is generated from either the ADaM ATPT or the SDTM xxTPT variable. |
JMPC_ATPTN | Numeric | This variable is generated from either the ADaM ATPTN or the SDTM xxTPTN variable. |
JMPC_ANRLO | Numeric |
This variable is generated from either the ADaM ANRLO or SDTM xxSTNRLO/xxORNRLO variables. If the data is SDTM, then standard or original reference ranges are loaded based on which option was selected for Test Results under Advanced options when the study was added. |
JMPC_ANRLOC | Character |
This variable is generated from either the ADaM ANRLOC or SDTM xxSTNRC/ xxSTNRLO/xxORNRLO variables. If the data is SDTM, then standard or original reference ranges are loaded based on what was selected for Test Results under Advanced options when the study was added. |
JMPC_ANRHI | Numeric | This variable is generated from either the ADaM ANRHI or SDTM xxSTNRHI/xxORNRHI variables. If the data is SDTM, then standard or original reference ranges are loaded based on what was selected for Test Results under Advanced options when the study was added. |
JMPC_ANRHIC | Character |
This variable is generated from either the ADaM ANRHIC or SDTM xxSTNRC/xxSTNRHI/xxORNRHI variables. If the data is SDTM, then standard or original reference ranges are loaded based on what was selected for Test Results under Advanced options when the study was added. |
JMPC_ANRIND | Character |
This variable is generated from either the ADaM ANRIND or SDTM xxNRIND variables. If there is no normal reference range indicator variable or it is present, but all values are missing, then the value is imputed using the test result value and the lower and upper reference range values. In this case JMPC_ANRIND gets populated with the following values: NORMAL, LOW, and HIGH. |
JMPC_ABLFL | Character | This variable is generated from either the ADaM ABLFL or SDTM xxBLFL variables. |
JMPC_ASEV | Character | The ADaM ASEV or SDTM xxSEV is used to create this variable. |
JMPC_ATOXGR | Character | This variable is generated from either the ADaM ATOXGR or SDTM xxTOXGR variables. |
JMPC_ATOXGRSEV | Character | First we look for ATOXGR/xxTOXGR and if it is missing, then we use the values of ASEV/xxSEV. |
JMPC_TRTEMFL | Character | This variable is generated from either the ADaM TRTEMFL or SDTM xxTRTEM variables. |
JMPC_ACN | Character |
This variable is generated from the AEACN variable. If we are dealing with a multiple treatment study, then multiple JMPC_ACN variables are created in this form JMPC_ACN_<treatment x>. The name of the treatment is extracted from the label. |
JMPC_AREL | Character |
The ADaM AREL or SDTM AEREL is used to create this variable. If we are dealing with a multiple treatment study, then multiple JMPC_AREL variables are created in this form JMPC_AREL_<treatment x>. The name of the treatment isextracted from the label. |
JMPC_APERIOD | Numeric |
This variable is added to findings/events/interventions domains for crossover studies. If APERIOD exists in the data, then the values of APERIOD are used. If it doesn't exist, then the treatment start date ADSL variables (TRTxxSDTM/TRTxxSTDT) are used to assign a numeric value to JMPC_APERIOD. The pre-treatment findings/events/interventions are assigned a value of 0. |
JMPC_TRTA | Character |
This variable is added to findings/events/interventions domains for crossover studies. If TRTA exists in the data, then the values of TRTA are used. If it doesn't exist, then the treatment start date (TRTxxSTDM/TRTxxSTDT) and actual treatment period (TRTxxA) ADSL variables are used to identify in which actual treatment period the finding/event/intervention occurred. |
JMPC_TRTP | Character |
This variable is added to findings/events/interventions domains for crossover studies. If TRTP exists in the data, then the values of TRTP are used. If it doesn't exist, then the treatment start date (TRTxxSTDM/TRTxxSTDT) and planned treatment period (TRTxxP) ADSL variables are used to identify in which planned treatment period the finding/event/intervention occurred. |