(Base One logo) .NET database and distributed computing tools

BFC | Visual Studio | Database Technology | Distributed Computing | Attached Objects

BFC's Customizable Help Facility

Sample Help screen (click for a larger screen shot)
Sample Help Screen

The BFC Help system is used for building, maintaining, and displaying help information, and includes facilities for automatically extracting documentation from source code. This is a nice, easy way to create high quality documentation. We not only provide our own extensive documentation and help this way, but we also give you the tools that make it simple to create and maintain flexible, integrated online help for the users of your application.

Users can print an individual topic, a topic and its subtopics, or entire manuals. As users add, remove, and change topics, they can rebuild the help files without rebuilding the application. BFC's Online Help and Programmer's Reference Manuals are good examples of what can be built with this subsystem, but it can be equally useful with any kind of documentation.

Besides having useful content, the Help system provides valuable sample code. It demonstrates the use of the hierarchical tree control, the ActiveX Web Browser control, splitter window classes, processing of hierarchical IDs, and the log file, where errors are recorded. The construction of Help's contents from source code shows how to use the Parser Class (clsParse) and how to add and retrieve attached objects from the database. Help provides an example of displaying user-friendly tree structures based entirely on the database and can be a model for displaying any hierarchical database information.

The Help system, whose contents require several minutes to build, also provides good illustrations of methods you can use to significantly improve database and file handling performance. Because building Help requires repeated use of the same database commands (with the same SQL statements), useful examples of how to PREPARE a command for efficiency have been provided. And because a large number of source code files must be examined character by character, the Help system contains code showing how to improve file performance by buffering text data instead of reading one character at a time.

BFC's Help Facility was designed for maintainability. It can create programmer documentation by automatically extracting text directly from selected comments imbedded in the source code itself. Instead of being a chore, it's a breeze to edit the comments at the same time as you're editing the code, and you are assured of always seeing the latest master documentation in exactly the place where it's most useful to you.

The Help system can be used to produce programmer documentation for any project, both BFC and non-BFC applications. For example, help topics for BFC classes are stored within the classes' header files, making it easy for the Base One programmer who is changing existing functions or adding new functions to edit the documentation at the same time as editing the code.

Multi-Dimensional Indexing

The Help System supports "multi-dimensional" indexing, that is, alternate keyings. There can be multiple keys pointing to a given Help record. The Help System is an example of building a "data repository" that has a tree view that shows multiple ways to get at the same data. The use of alternate keyings allows multiple presentations of the same information, each with a different slant, filtering, and ordering. (This is analogous to a card catalog in a library, listing books by subjects and by authors).

For example, the SAME detailed information about the OpenDb (Open Database) command can be found in several places in the Help tree view, including the following three locations in the Help tree:

1) Database Library:
.... Database Manager Class (clsDbMgr):
.... ....Open a Database (OpenDb)

2) Database Commands (alphabetical):
.... OpenDb (Database Manager function)

3) Database Functions (alphabetical):
.... OpenDb (Database Manager function)

In other words, the same OpenDb description can be found under different keyings, possibly with different titles. In this case, OpenDb can be found in a grouping by category (Database Library manual - member functions of the Database Manager class) and in the alphabetical list of database commands that work in the Command Processor, plus the comprehensive list of database functions, which includes every database, batch, and Command Processor function callable from C++, C#, VB.Net, and ASP.Net. Since, at the time of this writing, there are currently approximately 300 such database functions, having multiple ways to find out about them is essential.

Each help topic consists of help ID, help text, one or more hierarchical help IDs, and one or more help titles. Help IDs and help text are placed within a help block, which can be located in any text file. Help ID, hierarchical help ID, and help title are kept in a special file called the Help Key file, which forms the outline of help topics. Hierarchical IDs define the parent-child relationships for displaying the help tree in BFC's Help Viewer. Help titles are displayed when the corresponding topic is displayed.

Sample Help Screen - BIS Documentation

BFC comes with an extensive documentation and also provide tools that make it easy to create and maintain online help by extracting documentation from source code and text files

  • Help Screen can display text stored in a database across the Internet.
  • BFC comes with an extensive documentation and also provide tools that make it easy to create and maintain online help by extracting documentation from source code and text files.
  • The source code of Help system demonstrates the use of the hierarchical tree control, the ActiveX Web Browser control, splitter window classes, processing of hierarchical IDs, and the log file.

The Help Builder scans text files and inserts found help text and help IDs into the database, scans the key file and updates the database with the help title and hierarchical Id information, and then creates parent-child associations between help records. 

The Base/1 Foundation Application has two different ways to rebuild the Help system. First, you can choose "Rebuild Help System" in the Help menu, which launches an interactive dialog box. Alternatively, you can do the same work as a series of semi-independent Batch Jobs (a "job stream") that run the same basic Help Builder class code. The easiest way to launch this job stream is to press <Submit> on the Batch Job Master Form for the "StartRebuildHlp" job. Batch Rebuild Help illustrates some of the methods that can be used to break up data processing work and also keep it easily recoverable from crashes.

As topics are added and changed, users can rebuild the Help system without rebuilding the application. Everything can be printed through the Help system except appendices, cover, etc., which, in the case of BFC, can be printed from the documentation directory.

So, in addition to BFC's extensive, developer-oriented online help and documentation, you get all the underlying facilities to create customized online help and documentation for your own applications. The BFC Help system (B1Hlp) includes all the facilities you'll need for automatically extracting documentation from your own source code or text files.

In addition to this Help facility, provided in the Foundation Application (B1_App.exe), the same documentation is also available in standard, compiled HTML (.chm) format. Both help systems contain the Programmer's Reference, Getting Started and Number Class manuals. The compiled HTML help files are read with the same viewer used to display help for MSDN (Microsoft Developer's Network).

We keep the help available through the <Help> button in the Foundation Application (B1_App.exe) in sync with this secondary help format, so you can look in either place. However, since the Foundation Application builds its help directly from source code any time you select the "Rebuild Help System" menu item, it may contain additional last minute info.

Print Help Dialog

User can print complete reference manual or individual topics and also its subtopics

  • Users can print an individual help topic, a topic and its subtopics, or an entire manual.

BFC | Visual Studio | Database Technology | Distributed Computing | Attached Objects

Home Products Consulting Case Studies Order Contents Contact About Us

Copyright 2012, Base One International Corporation