<< Zenith_Nadir | index | Acceptable >>

DECIDE reference

Notation Conventions

General Syntax Notation

The following list summarises the notation conventions for syntax presentation in this documentation.

UPPERCASE LETTERS: Uppercase letters indicate keywords and reserved words; enter these items exactly as shown. Items not enclosed in brackets are required. For example:

    LIBRARY_SOLVE 

lowercase italic letters: Lowercase italic letters indicate variable items that you supply. Items not enclosed in brackets are required. For example:

    DecisionMatrix 

[ ] Brackets: Brackets enclose optional syntax items. For example:

    MYLIBRARY[.DLL] 

A group of items enclosed in brackets is a list from which you can choose one item or none. The items in the list may be arranged either vertically, with aligned brackets on each side of the list, or horizontally, enclosed in a pair of brackets and separated by vertical lines. For example:

    FILETYPE [AUTO] [ASCII] [DBASE[ num ] ] 

{ } Braces: A group of items enclosed in braces is a list from which you are required to choose one item. The items in the list may be arranged either vertically, with aligned braces on each side of the list, or horizontally, enclosed in a pair of braces and separated by vertical lines. For example:

    AUTOWEIGHTS { ON | OFF } 

| Vertical Line: A vertical line separates alternatives in a horizontal list that is enclosed in brackets or braces. For example:

    AUTOWEIGHTS { OFF | ON | SMART} 

? Ellipsis: An ellipsis immediately following a pair of brackets or braces indicates that you can repeat the enclosed sequence of syntax items any number of times. For example:

    M address-1 [ , new-value ]... 

    [ - ] {0|1|2|3|4|5|6|7|8|9}... 

The following rules illustrate the general guidelines used in the library. There may of course be exceptions : read the documentation for each function.

Dilbert003.gif (18981 bytes)

ARRAYS / RANGES

The data used is often made of arrays (matrices, "ranges", etc.). These arrays must be presented to the library functions as pointers to an unidimensional array of double : A1 B1 C1 D1 E1 A2 B2 C2 D2 E2 A3 B3 C3 D3 E3

must be presented as A1 B1 C1 D1 E1 A2 B2 C2 D2 E2 A3 B3 C3 D3 E3

and the address of A1 must be passed as a pointer to double.

The same convention is used when the library functions return arrays. A visual basic example for each function can be found in the Excel demonstration workbook.

RETURN CODES

    * the library functions return a signed 2 bytes value ("short" in C, "integer" in Visual Basic, etc.)
    * the return value is 0 when the function completed without error
    * return values :

0-100 indicates the number of the parameter that causes the error (1 based : an error in the first parameter causes a return value of 1) 100-900 data related errors (See the documentation of each function.) 900-1000 internal errors (See the documentation of each function.)

    * Although the return value is signed, return values are >= 0
    * You should always test the return value for every call you make to a function, and handle the errors if the return code is not 0. The information returned by the functions when the return code is not 0 should is undefined and should not be used.
    * It is recommended to use return values > 1000 for your user defined functions ("interface" functions), and to pass to the upper layers the library error if any. By using return values above 1000, no conflict appears and the error interpretation is facilitated.
    * Unless otherwise stated, "Length" refers a number of elements, while "Size" refers to a number of bytes : "ArrayLength" is the number of elements in the array, "ArraySize" is the number of bytes allocated to "Array".

<< Zenith_Nadir | index | Acceptable >>


printer friendly view

Google

 

Web

www.christophedavid.org