Topic data field layout

The wwHelp topic exposes an oTopic object that contains all of the field data of an individual topic. You can access topic data as follows:

oHelp=CREATEOBJECT("wwHelp.wwHelp")

*** Open the help project - Force to reopen
oHelp.Open("c:\temp\wchelp\wchelp.hbp")
oHelp.LoadTopic("Class wwIPStuff")

*** oTopic Member contains topic data
lcTopic = oHelp.oTopic.Topic
lcBody = oHelp.oTopic.Body
lcPK = oHelp.oTopic.PK

The oTopic members match the database definition of the help file. Each field becomes a member in the oTopic object structure.

The topic layout of the table is as follows:

   PK          C (10)
   PARENTPK    C (10)
   TOPIC       C (60)
   TYPE        C (15)
   EXTERNAL    L 
   BODY        M 
   ENDBODY     M 
   CLASS       C (40)
   METHOD      C (40)
   SCOPE       C (10)
   SYNTAX      M 
   PARAMETERS  M 
   RETURNS     M 
   REMARKS     M 
   EXAMPLE     M 
   SEEALSO     M 
   KEYWORDS    M
   PROPERTIES  M 
   METHODS     M 
   EVENTS      M 
   EXPANDED    L 
   HELPID      I 
   NOCONTENT   L 
   SORTORDER   I 
   UPDATED     T 
   FOLLOWUP    L 
   SIGNATURE   M 
   ASSEMBLY    M 
   NAMESPACE   M
   INHERITS    M 
   INH_TREE    M 
   IMPLEMENTS  M 
   STATIC      L

This structure is derived from the __wwhelp.hbp template file found in the Help Builder install directory. This layout maps directly to the oTopic object and can be fully extended by adding your own fields to the __wwhelp.hbp table.

You can easily extend the structure of your own project table by adding additional (character) fields. Fields can be added through the Options Dialog These added fields become available on the Custom Tab for viewing and editing. However only Character or Memo fields can be viewed and edited through this interface.

Any newly added properties properties are available through the COM object, in templates (using the syntax) and by using topic blocks that can be embedded directly into class code.

Accessing the oTopic member

The oTopic member objects can be easily accessed with code like the following using the Help Builder COM object:

loHelp=CREATEOBJECT("wwHelp.wwHelp")
loHelp.Open("c:\wwhelp\sample\wwhelp.hbp")
loHelp.LoadTopic() 

MsgBox loHelp.oTopic.Topic + vbcr + vbcr + _
       loHelp.oTopic.body

See also

Class wwHelp

© West Wind Techologies, 2018 • Updated: 12/21/15
Comment or report problem with topic