Topic
  • No replies
brian.armstrong91
brian.armstrong91
1 Post

Pinned topic Analysis "Microsoft Office Suite Information (Windows)" error

‏2014-02-11T16:08:41Z |

We are using the Analysis "Microsoft Office Suite Information (Windows)" in our organization to track our Office licenses.  Recently within the last month we started seeing a lot of errors reported for the property "Full Name of Installed Microsoft Office Suite(s)".  The error is "Singular expression refers to nonexistent object."  I was able to debug the relevance and found a singular expression that needed to be plural.

I think the issue is a singular "key" that should be "keys".  Below is a section of the relevance with the problem areas highlighted.

(if (exists folder (value "CommonFilesDir" of key "HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion" of registry as string & "\Microsoft Shared\Office12") whose (exists folder whose (exists file "MSOINTL.DLL" of it) of it)) then (((value "DisplayName" of it as string) of (key whose ((((length of it = 38) AND (it contains "000000FF1CE}" AND ((it = "0011" OR it = "0012" OR it = "0013" OR it = "0014" OR it = "002E" OR it = "002F" OR it = "0030" OR it = "0031" OR it = "0033" OR it = "0035" OR it = "00CA") of last 4 of (first 14 of it)))) of (name of it)) AND exists value "DisplayName" of it) of key "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall" of registry)) &(" ("&concatenation ", "of(((language ofversion block offile "MSOINTL.DLL"ofit) of(folders whose(existsfile "MSOINTL.DLL"ofit) offolder (value "CommonFilesDir"ofkey "HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion"ofregistry asstring &"\Microsoft Shared\Office12"))) asstring) &")")) else nothing)

I was able to resolve this one section by making it "keys" and moving the contatination of the language.  This is my updated relevance.

(if (exists folder (value "CommonFilesDir" of key "HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion" of registry as string & "\Microsoft Shared\Office12") whose (exists folder whose (exists file "MSOINTL.DLL" of it) of it)) then (((value "DisplayName" of it as string &(" ("&concatenation ", "of(((language ofversion block offile "MSOINTL.DLL"ofit) of(folders whose(existsfile "MSOINTL.DLL"ofit) offolder (value "CommonFilesDir"ofkey "HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion"ofregistry asstring &"\Microsoft Shared\Office12"))) asstring) &")")) of (keys whose ((((length of it = 38) AND (it contains "000000FF1CE}" AND ((it = "0011" OR it = "0012" OR it = "0013" OR it = "0014" OR it = "002E" OR it = "002F" OR it = "0030" OR it = "0031" OR it = "0033" OR it = "0035" OR it = "00CA") of last 4 of (first 14 of it)))) of (name of it)) AND exists value "DisplayName" of it) of key "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall" of registry))) else nothing)

There are a few other sections that look like they need updating.  They aren't causing any issues on my test machine but when I created a custom analysis with the updated relevance and run it agains our computers there are a few that still show in error.  The number of devices on the original relevance that were in error was almost 5,000 and with the updated relevance it is only 5.  The error of the remaining 5 error devices is "Singular expression refers to non-unique object", so it appears there still is some error and I don't have easy access to the error devices to be able to debug it properly.

Since the analysis is published by IBM I am unable to make any edits to it myself anyways.  Can IBM review the analysis and correct the errors?