The follow Session Relevance produced the error “Singular expression refers to nonexistent object” in an installation of 8.2.1175.0 and I can not figure out why.
Here I retrieve information about security related fixlets.
(display name of it, source id of it, category of it, source of it, source severity of it, source release date of it as string) of fixlets of results from ( bes fixlets whose ( fixlet flag of it and category of it as lowercase contains
"security" ) ) whose (relevant flag of it) of (bes computer whose (id of it = 232323))
I have double checked that the bes fixlets clause does not produce this error if no results are returned.
Many Fixlets do not have the properties that you have in the statement.
So we need to protect against that.
As an example below, if I am sure that “display name” will always return some value, then we can skip the if/then/else statement.
( display name of it, (
if (exists source id of it) then (source id of it)
else (
"n/a")), (
if (exists category of it) then (category of it)
else (
"n/a")), (
if (exists source of it) then (source of it)
else (
"n/a")), (
if (exists source severity of it) then (source severity of it)
else (
"n/a")), (
if (exists source release date of it) then (source release date of it as string)
else (
"n/a")) ) of fixlets of results from ( bes fixlets whose ( fixlet flag of it and category of it as lowercase contains
"security" ) ) whose (relevant flag of it) of (bes computer whose (id of it = 232323))
If you are using Endpoint Manager 8.2 or above, the syntax can be:
( display name of it |
"No Display Name", source id of it |
"No Source ID", category of it |
"No Category", source of it |
"No Source", source severity of it |
"No Source Severity", source release date of it as string |
"No Source Release Date" ) of fixlets of results from ( bes fixlets whose ( fixlet flag of it and category of it as lowercase contains
"security" ) ) whose (relevant flag of it) of (bes computer whose (id of it = 232323))