Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Table of Contents

You can show fields based on the field if dropdown values :for a specific study.

'Contains'

...

titleClick here to expand

...

Condition

Example: Show the custom field 'Any complications' at the visit level only if the 'Clinical Diagnosis' field contains the word 'pregnancy'.

Expand
titleClick here to expand
Code Block
languagejson
{
           "name" : "visit.extensionDetail.attrsMap.TA2",
           "caption" : "Any complications",
           "type" : "textarea",
           "optional" : true,
           "showIf" : {
             "op" : "AND",
             "rules" : [ {
               "field" : "visit.clinicalDiagnoses",
               "op" : ".join(',').indexOf('pregnancy')",
               "value" : "> -1"
             } ]
           },
           "showInOverviewIf": "useShowIf"
}

"op" : ".join(',').indexOf('pregnancy')": means show 'TA2' field when clinical diagnosis has 'pregnancy' word in the selected option.

'Is one of the value'

...

Condition

Example 1:

...

Shows the field 'Any complications' at the visit level if 'Clinical Diagnosis' has '10 weeks gestation of pregnancy'

...

in it.

Expand
titleClick here to expand
Code Block
languagejson
{
           "name" : "visit.extensionDetail.attrsMap.TA2",
           "caption" : "Any complications",
           "type" : "textarea",
           "optional" : true,
           "showIf" : {
             "op" : "AND",
             "rules" : [ {
               "field" : "visit.clinicalDiagnoses",
               "op" : ".indexOf('10 weeks gestation of pregnancy')",
               "value" : "> -1"
             } ]
           },
           "showInOverviewIf": "useShowIf"
  }

"op": ".indexOf('10 weeks gestation of pregnancy')": means show 'TA2' field when clinical diagnosis has '10 weeks gestation of pregnancy' value.

Example 2: Suppose you want to display fields on the nth step page when only specified specimen types are selected.

Expand
Code Block
languagejson
{
  "name" : "specimenCollection",
  "view" : null,
  "ctrl" : null,
  "data" : {
    "fieldGroups" : [ {
      "title" : "Processing Event for Frozen Samples",
      "criteria" : {
        "op" : "AND",
        "rules" : [ {
          "field" : "specimen.lineage",
          "op" : "==",
          "value" : "'Derived'"
        }, {
          "field" : "['Frozen Tissue', 'Frozen Tissue Slide', 'Frozen Tissue Block','Embedded in OCT', 'Swiss Role in OCT'].indexOf(specimen.type)",
          "op" : "!=",
          "value" : "-1"
        } ]
      },
      "fields" : [ {
        "name" : "specimen.label",
        "baseField" : "specimen.label",
        "type" : "span"
      }, {
        "name" : "specimen.type",
        "baseField" : "specimen.type",
        "type" : "span"
      }, {
        "name" : "specimen.createdOn",
        "baseField" : "specimen.createdOn",
        "caption" : "Processing Date and Time"
      } ]
    } ]
  }
}

Example 3: Show field on overview and hide on the data entry page.

Expand
Code Block
languagejson
{
      "name" : "cpr.participant.extensionDetail.attrsMap.ST10",
      "caption" : "Kindred ID",
      "type" : "text",
      "showIf" : {
        "op" : "AND",
        "rules" : [ {
          "field" : "cpr.participant.extensionDetail.attrsMap.ST10",
          "op" : "==",
          "value" : "'xxx"
        } ]
      },
      "optional" : true
    }, 

Example JSON

Download