The tool lets you put together in minutes what would normally require days of coding. It consists of a runtime application and the designer, plus two NLMs needed for certain operations and a license token to be installed on a server. You write a utility in the designer much the same way you would create a dialog in Visual Studio, but it's much easier with Vision Manager.
Because of its visual interface and the powerful operations a single primitive performs, Vision Manager is handy for NetWare administrators who lack the time or skills to delve into the Novell libraries, but need customized tools to manage their networks. It's also useful for creating helpdesk tools when full-blown tools, such as NWAdmin, aren't required.
I wrote several small utilities while testing Vision Manager. The first showed the licensed users on a server. It took me about 15 minutes to write the utility, learning curve included. Ten to 20 minutes later, I modified it to show open files, then further changed it to show which users had which files open on a server. This utility is useful in determining if a server may be brought down safely.
Server operations are just the beginning. Vision Manager has a suite of NDS operators to display distinguished names, memberships, containers, attribute values, schema data and other information. For example, using my above application, after obtaining the logged-in objects with open files, I could add an NDS operator to get the "full name" and "telephone number" attributes.
The tool's power reveals itself when you use the rules capability. Any of the services may have a rule attached to it that determines whether a specific result is shown. For example, if you want to limit the results (such as showing only users with open files), you define rules by point and click. The rules use the results of built-in services within Vision Manager as their input data. The output of a service request filtered by its rules may be displayed, passed as input to nested service requests (with their own rules) or both.
One quick example of the power of these rules is to display all objects of a certain type. Say you want to find all the Roles in your tree. Simply display everything, apply a rule to show only objects whose class is "Organizational Role" and a line to display the occupants, click on a box to have it update every n seconds, and you have a dynamic Role monitor for your tree. This could be very useful to a helpdesk in finding the correct server administrator. And it saves time--using the traditional NWAdmin tool, you would have to visit every OU (organizational unit) and Role object manually, and use copy-paste to make a list.
Besides operations concerning server connections and NDS information, the other major service areas include bindery-based information, NLM and volume data, file-system trustees and limited NCP (NetWare Core Protocol) packet tracing. The NLM service area lets you list NLMs, retrieve NLM version information and display NLM dependencies. The volume service area lists the volumes on a server, directories and files, and trustee rights; there's also a useful service that analyzes how an NDS object obtained its rights. NCP packet tracing will display file open/close calls on a specified connection.
As you use Vision Manager, you'll see four types of controls--TreeView, ListView, Dropbox and ButtonView. Investigate all of them because each has its own set of services. For example, while NDS attribute values normally may be used in Rules in any of the controls, you can only display the attribute values in a ListView.
And only ButtonView lets you change things (user/group creation and admin). TreeViews are used to show your tree and its containers. To avoid frustration when you don't see a primitive you want, try again with a different control. The cvmwhat.hlp file has help for each of the services and is worth checking. Vision Manager also comes with two Lotus screencam tutorials, but they are far too cute, almost to the point of being insulting.
Lacks Some Polish
The downside of Vision Manager is that this is version 1.0. It could use some more refining. For example, in the designer, when you string together primitives from different service groups, it allows it without complaint. But if there's a bad combination, the interpreter simply displays an "unknown API" error. This makes sense if you've used Novell's SDK and know what information is needed for certain requests, but it is not helpful to a nonprogrammer. In some areas, the interpreter is smart enough to extract information behind the scenes, but not always. The design program should warn you about these data mismatches.
Even better would be to have a visual display of compatible data types, such as red for connection-type information, blue for NDS objects and purple for volumes. Data flow from one connected service to another could be visualized by a line drawn between them. A colored icon on the left of each service could show the types of information it may use as input, and icons at the right of the service could show the different types of output it provides.
Despite some drawbacks, Vision Manager is a great tool with a lot of promise. You can download an evaluation version from www.visualclick.com. This version does not have a license token. Without the token, results are limited to the first three results on most operations. Pricing is $595 per server. A single license will suffice if you only want to do NDS operations, not server operations.
Michael Schechter is a systems programmer at Syracuse University. Send your comments on this article to him at mschech@syr.edu.