Forum Discussion

Blaenzo's avatar
Blaenzo
Icon for Advocate II rankAdvocate II
7 years ago
Solved

Determine which conditions are met in capabilities.json and read values by datarole name

Hi,

 

Assume I have the following two conditions specified in capabilities.json below.

  1. What is the proper way to determine which of the two conditions is satisfied (or none)?
  2. Is there a way to retrieve the values of a field (from options.dataView) by its data role name rather than by an index?
"conditions": [
	{
		"ltd": {
			"min": 1,
			"max": 1
		},
		"lng": {
			"min": 1,
			"max": 1
		},
		"zip": {
			"max":0
		}
	}
]

and

"conditions": [
	{
		"ltd": {
			"max": 0
		},
		"lng": {
			"max": 0
		},
		"zip": {
			"min": 1,
			"max": 1
		}
	}
]

Thanks,

Martijn

 

 

 

 

3 Replies

    • Blaenzo's avatar
      Blaenzo
      Icon for Advocate II rankAdvocate II

      Hi dm-p ,

       

      Yes, that worked. Thanks very much.

      The filter statement also works nicely with data roles that accept multiple fields as it returns an array of all fields.

      From here you can indeed work out which conditions have been met.

       

      Thanks,

      Martijn

    • dm-p's avatar
      dm-p
      Icon for Super User rankSuper User

      The code linked in the previous answer also shows my approach to 'testing' for conditions once I get the column metadata, which may help with solving question #1 - if you have multiple conditions, then you can create flags to indicate suitable scenarios and perhaps branch on those using a switch statement or simialr, depending on the complexity of your view model.

      If you need further advice, let me know and I'll try and mock something up when I get back into the office next week.