By when rule I mean, any when rule. Create a when rule and add your property check in the when rule. For your case in the when rule use expression "Property ".NumericPrice" exists and has a value" . When this is false, your row will be highlighted.
Acheiving this without inline style is a little complicated.
-you need to add a CSS class on your table under presentation tab.
-Then add a html section in your current section.
-run an onload JS fucntion in the html section which will add a css class to you table if your conditions are met.
The above mentioned code is a JSP tag, its not pega, hence giving "!WhenRule" will not work. You have to give the when rule name in double qoutes without "!" and handle the "!" Not condition in when rule.
I have attached the screenshot. Try configuring your when rule in this manner.
Seeing your screenshot , I realised you have added the Inline style on coulmn properties. Thats wrong. You need to add this condition on ROW properties. Keeping it on coulmn will not have the right page context.
If you keep it on Row, the when condition will run in context of each page of the page list. So you property should be in the context of each page of the pagelist.
where WhenConditionToBeChecked is your When rule. Be sure that the section, when rule and report definition are in the same class.
Step 2. The property from the When condition should be present in the report definition. In my case the property NumericPrice needed to be added into the report definition with the option for the column to be hidden. This way the information was extracted from the report, it is used in the background from the When rule and the column is not displayed in the final view, keeping the UI as per the initial requirements.
Step 3. Justify the use of this inline style (with the full conscience that inline styles are not recommended as per the guardrails).
This thread can be now marked as resolved/completed.