How on earth am I supposed to handle this scenario efficiently (remember, Zenworks is a tool that should ease things)

Zenworks link to application (A)
Dependency to run setup (B).

However dependency runs per user per computer! So if application is already installed it installs it again when a "new" user logs on.

I just want to check if the application is installed machine wide! Why isn't there a simple option "run once per user" and "run once per computer"?

The workaround is using fault tolerance (when A fails, run B), but then you need to also remember to enter a post execute script to run the application in B. Also you lose version control because when A succeeds it won't run B whether or not it's version number has changed.

You might think a solution would be add distribution rules to B that check if the executable does not exists or a version number check. But when this check fails (which it does when the application IS installed) it will report this to the calling program A and displays an error! You think someone at Novell knows how program distribution works...

So what is the best practice for this scenario? Thanks!