Retro video games delivered to your door every month!
Click above to get retro games delivered to your door ever month!
X-Hacker.org- CA-Clipper 5.2 . Technical Reference - <b>dbfunctable</b> http://www.X-Hacker.org [<<Previous Entry] [^^Up^^] [Next Entry>>] [Menu] [About The Guide]
 DBFUNCTABLE
 The virtual method table for the workarea
------------------------------------------------------------------------------
 Structure

     typedef struct _DBFUNCTABLE_
     {
     
        /* Movement and positioning methods */
     
        DBENTRYP_SP  bof;
        DBENTRYP_SP  eof;
        DBENTRYP_SP  found;
        DBENTRYP_V   goBottom;
        DBENTRYP_L   go;
        DBENTRYP_I   goToId;
        DBENTRYP_V   goTop;
        DBENTRYP_SI  seek;
        DBENTRYP_L   skip;
        DBENTRYP_L   skipFilter;
        DBENTRYP_L   skipRaw;
     
     
        /* Data management */
     
        DBENTRYP_VP  addField;
        DBENTRYP_S   append;
        DBENTRYP_V   delete;
        DBENTRYP_SP  deleted;
        DBENTRYP_SP  fieldCount;
        DBENTRYP_SVP fieldName;
        DBENTRYP_V   flush;
        DBENTRYP_SI  getValue;
        DBENTRYP_SVP getVarLen;
        DBENTRYP_V   goCold;
        DBENTRYP_V   goHot;
        DBENTRYP_VP  putRec;
        DBENTRYP_SI  putValue;
        DBENTRYP_V   recall;
        DBENTRYP_LP  reccount;
        DBENTRYP_I   recno;
        DBENTRYP_S   setFieldExtent;
     
        /* Workarea/Database management */
     
        DBENTRYP_VP  alias;
        DBENTRYP_V   close;
        DBENTRYP_VP  create;
        DBENTRYP_SI  info;
        DBENTRYP_V   new;
        DBENTRYP_VP  open;
        DBENTRYP_V   release;
        DBENTRYP_SP  structSize;
        DBENTRYP_VP  sysName;
        DBENTRYP_VP  dbEval;
        DBENTRYP_V   pack;
        DBENTRYP_VP  sort;
        DBENTRYP_VP  trans;
        DBENTRYP_VP  transRec;
        DBENTRYP_V   zap;
     
     
        /* Relational Methods */
     
        DBENTRYP_VP  childEnd;
        DBENTRYP_VP  childStart;
        DBENTRYP_VP  childSync;
        DBENTRYP_V   syncChildren;
        DBENTRYP_V   clearRel;
        DBENTRYP_V   forceRel;
        DBENTRYP_SVP relArea;
        DBENTRYP_VP  relEval;
        DBENTRYP_SVP relText;
        DBENTRYP_VP  setRel;
     
     
        /* Order Management */
     
        DBENTRYP_VP  orderListAdd;
        DBENTRYP_V   orderListClear;
        DBENTRYP_VP  orderListDelete;
        DBENTRYP_VP  orderListFocus;
        DBENTRYP_V   orderListRebuild;
     
        DBENTRYP_VP  orderCondition;
        DBENTRYP_VP  orderCreate;
        DBENTRYP_VP  orderDestroy;
        DBENTRYP_SVP orderInfo;
     
        /* Filters and Scope Settings */
     
        DBENTRYP_V   clearFilter;
        DBENTRYP_V   clearLocate;
        DBENTRYP_V   clearScope;
        DBENTRYP_VP  filterText;
        DBENTRYP_VP  setFilter;
        DBENTRYP_VP  setLocate;
        DBENTRYP_VP  setScope;
     
        /* Miscellaneous */
     
        DBENTRYP_VP  compile;
        DBENTRYP_VP  error;
        DBENTRYP_I   evalBlock;
     
     
        /* Network operations */
     
        DBENTRYP_VP  lock;
        DBENTRYP_L   unlock;
     
     } DBFUNCTABLE;
     
     typedef DBFUNCTABLE  far * DBFUNCTABLEP;
     typedef DBFUNCTABLEP far * DBFUNCTABLEPP;

 Elements

     The elements of the DBFUNCTABLE structure define the slots of the
     virtual method table.  Each slot in the table represents the location of
     a specific method (i.e., the address of the function that acts as the
     pseudo-method).  Methods that will not be supported by the RDD should
     have a NULL placed in its corresponding slot.  When the RDD is
     initialized, CA-Clipper will use the default behavior of the superclass
     instead.  If no functionality is provided by the superclass, CA-Clipper
     will generate an appropriate "unsupported" error.

     Warning!  Under no circumstance should the virtual method table be
     expanded.  The size and ordinal positioning of the methods in the table
     is critical.  Failure to adhere to this arrangement will cause
     unpredictable results and potential memory corruption.

 Files:  Header file is Rdd.api.

 Used by:   WORKAREA


See Also: WORKAREA

Online resources provided by: http://www.X-Hacker.org --- NG 2 HTML conversion by Dave Pearson