Compile Insert DS_Equates
*****************************************************************************
*
* This program is proprietary and is not to be used by or disclosed
* to others, nor is it to be copied without written permission from
* Revelation Technologies, Inc.
*
* Product    :  OI/WG
* Poject     :  OI/CS
* Release    :  3.11
*
* Name       :  DS_Equates Insert
* Description:  DataSet Basic+ API declarations and constants
*
* History (Date, Initials, Notes)
*   07/11/95  cp   Original programmer
*   11/05/95  cp   Added sort/filter/search methods and 2-phased DataSet
*                  commit (using DS_UPDATE$ method)
*   04/19/96  cp   Added DS_COPY$ and DS_FINDKEY$
*   05/22/96  cp   Added DS_KEYLIST$ property and DS_LIMITVIEW$ method
*****************************************************************************
* Basic+ functions
declare function DSGetProperty      ;* flag = (hDS, PropertyName, RetValue [, Qualifier])
declare function DSSetProperty      ;* flag = (hDS, PropertyName, Value, [, Qaulifier])
declare function DSInstance         ;* hDS  = (DSName, [hXO, [Options]])
declare function DSMethod           ;* flag = (hDS, MethodName, Param1, ...)
declare function DSGetCompDef       ;* struct = (DSName, [hXO])
* by declaring the DataSet functions as subroutines, the return value can be ignored
declare subroutine DSGetProperty, DSSetProperty, DSMethod
* Repository constants (equates with _DEF suffix represent source definitions)
equ DS_TABLE$            to "SYSREPOSDBCOMPONENTEXES"
equ DS_TYPE$             to "DBCOMPONENTEXE"
equ DS_CLASS$            to "DATASET"
equ DS_TABLE_DEF$        to "SYSREPOSDBCOMPONENTS"
equ DS_TYPE_DEF$         to "DBCOMPONENT"
equ DS_CLASS_DEF$        to "DATASET"
* Methods
equ DS_DESTROY$          to 1       ;* destroy passed DS
equ DS_TRANSLATEFLAG$    to 2       ;* Arg1 is a DS/XO API FLAG, returns TRUE$=success or FALSE$=failure
equ DS_GETERROR$         to 3       ;* Retrieves pending errors for the DataSet Object
equ DS_RESETSCRIPT$      to 4       ;* reset DataSet Script(s), Arg1 is 0 (all) or script ID(s)
equ DS_RESETARG$         to 5       ;* reset DataSet Argument(s), Arg1 is 0 (all) or argument ID(s)
equ DS_EXECUTE$          to 6       ;* execute DataSet select script, Arg1 is exec type and Arg2 is retrieve type
equ DS_CLEAR$            to 7       ;*
equ DS_APPEND$           to 8       ;*
equ DS_INSERT$           to 9       ;*
equ DS_DELETE$           to 10      ;*
equ DS_EXTRACT_WORK$     to 11      ;*
equ DS_DEFAULT_WORK$     to 12      ;*
equ DS_APPEND_WORK$      to 13      ;*
equ DS_INSERT_WORK$      to 14      ;*
equ DS_UPDATE_WORK$      to 15      ;*
equ DS_COMMIT$           to 16      ;*
equ DS_ROLLBACK$         to 17      ;*
equ DS_RESETDEFAULT$     to 18      ;* reset DataSet column default value(s), Arg1 is 0 (all) or column ID(s)
equ DS_ADDREF$           to 19      ;* add reference to DataSet
equ DS_FIND$             to 20      ;* Arg1 is expr, Arg2 is find direction (FD_..$ from DSXO_API)
equ DS_FINDNEXT$         to 21      ;* Arg1 is find direction
equ DS_FINDPREV$         to 22      ;* no args
equ DS_FILTER$           to 23      ;* Arg1 is expr, Arg2 is TRUE to reset filter before applying new filter
equ DS_RESETFILTER$      to 24      ;* no args
equ DS_SORT$             to 25      ;* Arg1 is expr "colname [asc|desc] [,colname [asc|desc]] ..."
equ DS_UPDATE$           to 26      ;* update database (phase 1 of 2-phase DS commit)
equ DS_FINDKEY$          to 27      ;* find key matching the key in the work row; move to that row if successful
equ DS_COPY$             to 28      ;* copy from another DataSet, Arg1 is DataSet handle to copy from, Arg2 is copy options (default to copy rows)
equ DS_LIMITVIEW$        to 29      ;* limit rows appearing in the view, Arg1 is @fm-delimited list of rows
equ DS_METHOD_MIN$       to DS_DESTROY$
equ DS_METHOD_MAX$       to DS_LIMITVIEW$
* Properties
equ DS_VALID$            to 1       ;* returns TRUE$ if handle is valid
equ DS_CONNECTION$       to 2       ;* connection handle for the DataSet
equ DS_ROWCOUNT$         to 3       ;* number of rows in DataSet
equ DS_COLCOUNT$         to 4       ;* number of columns in DataSet
equ DS_COLDESCRIPT$      to 5       ;* column name, type, precision, scale, nullable, and OI type (Arg=iCol)
equ DS_COLNAME$          to 6       ;* column name (Arg=iCol)
equ DS_COLTYPE$          to 7       ;* column type (Arg=iCol)
equ DS_COLPRECISION$     to 8       ;* column precision (Arg=iCol)
equ DS_COLSCALE$         to 9       ;* column scale (Arg=iCol)
equ DS_COLNULLABLE$      to 10      ;* column nullable (Arg=iCol)
equ DS_COLOITYPE$        to 11      ;* column OpenInsight type (Arg=iCol)
equ DS_COLISKEY$         to 12      ;* column is key (Arg=iCol)
equ DS_COLID$            to 13      ;* column index (Arg=Column Name)
equ DS_SCRIPT$           to 14      ;* Qualifier = nScriptID [= <SelectId>]
equ DS_SELECT_SCRIPT$    to 15
equ DS_INSERT_SCRIPT$    to 16
equ DS_UPDATE_SCRIPT$    to 17
equ DS_DELETE_SCRIPT$    to 18
equ DS_ARGCOUNT$         to 19      ;* not settable
equ DS_ARGID$            to 20      ;* not settable, Qualifier = ArgName
equ DS_ARG$              to 21      ;* Qualifier = ArgID or ArgName
equ DS_VIEW$             to 22
equ DS_ROWID$            to 23
equ DS_ISNULL$           to 24      ;* Qualifier = iCol :@fm: nRowType [= <Regular>]
equ DS_DFT_ISNULL$       to 25      ;* Qualifier = iCol
equ DS_WORK_ISNULL$      to 26      ;* Qualifier = iCol
equ DS_VALUE$            to 27      ;* Qualifier = iCol :@fm: nConversion :@fm: nRowType [= <Regular>]
equ DS_DFT_VALUE$        to 28      ;* Qualifier = iCol :@fm: nConversion
equ DS_WORK_VALUE$       to 29      ;* Qualifier = iCol :@fm: nConversion
equ DS_ROW$              to 30      ;* Qualifier = nConversion: @fm: nRowType [= <Regular>]
equ DS_DFT_ROW$          to 31      ;* Qualifier = nConversion
equ DS_WORK_ROW$         to 32      ;* Qualifier = nConversion
equ DS_MODIFIED$         to 33      ;* not settable
equ DS_QUERY$            to 34      ;* query handle used by DataSet, not settable, not created by QryInstance()
equ DS_RECORD$           to 35      ;* extract set of rows in OI format, Qualifier = nFirstRow [=1] :@fm: nLastRow [=rowcount]
equ DS_KEYLIST$          to 36      ;* extract set of keys in OI format, Qualifier = nFirstRow [=1] :@fm: nLastRow [=rowcount]
equ DS_PROPERTY_MIN$     to DS_VALID$
equ DS_PROPERTY_MAX$     to DS_KEYLIST$
  • No labels