DSReport: NDS Report Generator

DSReport was originally designed as sample code to illustrate the use of Delphi with NetWare APIs. The Delphi source code (not as frequently updated as the EXE upload) is available on Novell’s DeveloperNet web site as “DNDSRPT” under https://developer.novell.com/support/sample.htm

It will allow you to run reports on any attribute of any object in an eDirectory/NDS tree.The resulting data can be exported into text, Excel, QuattroPro, HTML, or XML files.

Usage:

Get Info Tab 1 shows this info

Get Updates Tab 1 has a link to my web site where the most recent version is found

Select the tree Tab2: To select a different tree, choose the target tree from the drop list

Select the tree Tab2: To select a different container, double-click on the appropriate container in the container list

Get details on one object Tab2: To scan all attributes of one object, double-click the object in the object list (right list) Results will be shown in Tab4

Get details on multiple objects of the same type Tab3: To scan all objects of a selected type, select the object type, and requested properties, then press “Run”. DSReport remembers and saves your preferences into DSReport.INI Results will be shown in Tab4

Get details on classes or attributes in the schema Tab3: To scan the schema for class or attribute details, use the respective report button in the bottom right of the screen Results will be shown in Tab4

Sorting Results Tab 4: To sort a report on any column right-click on the results window and choose the sort option from the context menu.

Exporting Report Data Tab 4: To export a report, run it, then press the “Save” button, or right-click on the results window. To export the results into Excel or QuattroPro, the applications need to be installed on the machine. After pressing “Save”, the result table will also be in the clipboard and can be pasted into other applications.

Filtering Report Results Tab 3: The Multi-object report can be filtered. You may select up to 3 attributes and specify filter strings that will be compared with the attribute values at run time. The 3 filters will be combined with a logical AND. This allows you for example reports to identify users that have been created in the year 2003, but have not logged in during 2004. A filter is ignored if the attribute name or the filter string is left empty. To check for empty attributes use “must contain” … “[nothing]” or “must not contain” … “[anything]” To check for non-empty attributes use “must contain” … “[anything]” or “must not contain” … “[nothing]”

Saving/Loading report specifications (canned reports) Once you have run a report, you can save the report specifications (i.e., the your report criteria) for repeated use. The context menu in the report window allows to save the current report, or to load and run previous specifications. You may also specify the name of a saved report on the command line when starting DSReport (Example: DSReport /Report=”F:\Reports\User Admin.rpt”) DSReport will terminate after running a canned report if you add the option “/Quit”.

Notes about canned reports The canned report is a regular ini file with the extension “rpt” and may be edited to your needs. If you save the report _before_ saving the results, running the canned report will _not_ auto-save the results. If you save the report _after_ saving the results, running the canned report will auto-save the results in the specified file.

Exporting classes or attribute lists Tab 3: To export the simple list of classes or class-specific attributes, right-click on the list. To export the results into Excel, the application needs to be installed on the machine. After pressing “Save”, the result table will also be in the clipboard and can be pasted into other applications. Note that a more detailed schema report method is available by pressing one of the schema report buttons

Other important information

Reading the schema The tool reads the schema at run-time, therefor can detect all attribute types, however only the standard syntaxes will be read.

The current version of DSReport does not support the following (uncommon) NDS syntaxes: SYN_COMPONENT, SYN_ENUM_COMPONENT, SYN_NULL, SYN_OID, SYN_ENUMERATED, SYN_SET, SYN_SEQUENCE, SYN_CHOICE. If such unknown syntax is detected, the attribute value will contain a string like this: “[] <hex data>” Drop me a note if you need such decodes.

Reading ZEN attributes Since the NDS attribute structure is not yet fully documented, some ZEN attributes may displayed as hex-strings or only partially decoded.

Disclaimer: This content is not supported by Novell. It was contributed by a community member and is published "as is." It seems to have worked for at least one person, and might work for you. But please be sure to test it thoroughly before using it in a production environment.