Skip to main content
What are some example ECLI calls?

Building commands from typical templates

Philip Johnston avatar
Written by Philip Johnston
Updated over a year ago

👩🏼‍💻 Example CLI Calls

ADAM Data Validation

java -jar p21-client-2.5.0.jar \
--api.key={Enterprise server key} \
--web.host=https://{your company}.pinnacle21.net \
--project=adam-compliance \
--study=adam-compliance-101 \
--datapackage=ADaM \
--standard=adam \
--standard.version=1.1 \
--meddra.version=19.0 \
--cdisc.ct.sdtm.version=2017-06-30 \
--cdisc.ct.adam.version=2017-03-31 \
--source.adam="aspera:///adam-v1.0/compliance" \
--source.sdtm="aspera:///sdtm/compliance" \
--source.define="aspera:///adam/define/inprogress/define.xml" \
--source.comment="Your comment text goes here" \
--report="/adam-v1.0/reports/compliance.xlsx"

SDTM Data Validation in a new data package

In this example, the web.host and api.key arguments are not present on the command line. Instead, they are provided through the pinnacle21.conf file. Data package is configured here to always use the latest available versions for SNOMED, UNII, NDF-RT, and LOINC dictionaries.

java -jar p21-client-2.5.0.jar \
--project="Project Name" \
--study="Study Name" \
--datapackage="New DP Name" \
--source.sdtm="aspera:///path/to/data" \
--standard.version=3.3 \
--standard=SDTM \
--define.standard=2.1 \
--engine.version="P21 2304.0" \
--meddra.version=21.0 \
--cdisc.ct.sdtm.version=2018-12-21 \
--whodrug.version=GLOBALB3Sep19 \
--snomed.version=latest \
--unii.version=latest \
--ndf-rt.version=latest \
--loinc.version=latest \
--report=path/to/report.xlsx

SDTM Validation using existing data package attributes

In this example, data and define.xml placed in different locations are included in validation.

java -jar p21-client-2.5.0.jar \
--project="Project Name" \
--study="Study Name" \
--datapackage="DP Name" \
--source.sdtm="aspera:///path/to/data" \
--source.define="/path/to/define.xml" \
--report=path/to/report.xlsx

Retrieve the most recent validation report for the data package

In this example data validation is not executed.

java -jar p21-client-2.5.0.jar \
--project="Project Name" \
--study="Study Name" \
--datapackage="DP Name" \
--report=path/to/report.xlsx

Create Define.xml from Validation Metadata

In this example, define.xml is created for a Data Package that does not have a define.xml in P21E. ECLI uses the most recently validated data. Value level metadata is generated for --ORRES, TSVAL, and QVAL variables.

In order to import validation metadata, upload define.xml or Excel spec, the CLI will need the "Define Designer" (Edit spec/define.xml) and "Analyst" (Validate Data) roles assigned to the API key it uses.

java -jar p21-client-2.5.0.jar \
--project="Project Name" \
--study="Study Name" \
--datapackage="DP Name" \
--import.validation.metadata \
--create.value.level.for=”ORRES;TSVAL;QVAL”

Merge Validation Metadata into existing Define.xml

Import using validation metadata with merge option. Existing metadata in Define Designer will be merged with metadata extracted from the most recently validated data.

java -jar p21-client-2.5.0.jar \
--project="Project Name" \
--study="Study Name" \
--datapackage="DP Name" \
--import.validation.metadata \
--automerge

Upload and Validate Define.xml

java -jar p21-client-2.5.0.jar \
--project="Project Name" \
--study="Study Name" \
--datapackage="DP Name" \
--source.define="/path/to/define.xml" \
--standard.version=1.0 \
--standard=adam \
--cdisc.ct.sdtm.version=2017-06-30 \
--cdisc.ct.adam.version=2017-03-31 \
--report=/reports/define-issue-report.xlsx

Upload Excel Spec To Generate Define.xml

java -jar p21-client-2.5.0.jar \
--project="Project Name" \
--study="Study Name" \
--datapackage="DP Name" \
--standard=sdtm \
--standard.version=3.3 \
--source=/define/define-2017-12-18T15-01.xlsx \
--output=/define/define_gen.xml

Upload Excel Spec To Generate Define.xml and Validate it

java -jar p21-client-2.5.0.jar \
--project="Project Name" \
--study="Study Name" \
--datapackage="DP Name" \
--standard=sdtm \
--standard.version=3.3 \
--source=/define/define-2017-12-18T15-01.xlsx \
--output=/define/define_gen.xml \
--report=/reports/define-issue-report.xlsx

Generate Excel Spec from existing Define.xml

java -jar p21-client-2.5.0.jar \
--project="Project Name" \
--study="Study Name" \
--datapackage="DP Name" \
--standard=sdtm \
--standard.version=3.3 \
--source.define="define-designer" \
--output=/define/define_gen.xlsx \
--output.format=xlsx

Export Define.xml from P21E

java -jar p21-client-2.5.0.jar \
--project="Project Name" \
--study="Study Name" \
--datapackage="DP Name" \
--standard=sdtm \
--standard.version=3.3 \
--source.define="define-designer" \
--output="/path/to/define.xml"

Invoke ECLI From SAS Using javaobj

The CLI can be invoked from the SAS program using javaobj API.

If the p21-client-<version>.jar file in the classpath SAS macro can load ProcessUtils class and call startFromCommandLine method.

SAS Macro Exampledata _pinnacle21_cli;  
dcl javaobj jCmd("net/pinnacle21/oce/utils/ProcessUtils");
length exitCode 8.;

* s - string that contains a list of command line parameters; = jCmd.callStaticVoidMethod("startFromCommandLine",s);
jCmd.callStaticIntMethod("exit", exitCode); put exitCode=;
run;

👣 What's Next?

Email questions or feedback to support@pinnacle21.atlassian.net.

Did this answer your question?