Man Linux: Main Page and Category List

NAME

       PX_retrieve_record — Returns record in Paradox file

SYNOPSIS

       #include <paradox.h>

       pxval_t ** PX_retrieve_record(pxdoc_t *pxdoc, int recno)

DESCRIPTION

       Returns  the  record with the given number in a Paradox file. The first
       record has number 0, the last one has number_of_records-1.

       If you are accessing several records, do it in ascending order, because
       this is the most efficient way.

       The return value is an array of field values. Each value is stored in a
       structure like the following:

       typedef struct px_val pxval_t;
       struct px_val {
       char isnull;
       int type;
       union {
       long lval;
       double dval;
       struct {
       char *val;
       int len;
       } str;
       } value;
       };

       The element isnull is set to 1 if the value is NULL otherwise it is set
       to  0.  type             is the type of the paradox field as defined in
       paradox.h.  A field value can be either a  long  int,  a  double  or  a
       string,  depending  on  the paradox field type. The paradox field types
       pxfShort, pxfLong, pxfDate, pxfTime,  pxfLogical,  and  pxfAutoInc  are
       returned  as long int values.  pxfTimestamp, pxfNumber, and pxfCurrency
       are returned as double values and all remaining paradox field types are
       stored as strings with the length in value.len. You can rely on strings
       being Null terminated. Blobs are stored as string but are not guarented
       to be Null terminated.

       The  paradox  field  types  pxfTimestamp,  pxfTime,  an  pxfDate use an
       uncommon  format  which  can  be   converted   into   a   string   with
       PX_timestamp2string(3), PX_time2string(3), and PX_date2string(3).

RETURN VALUE

       Returns a pointer on success and NULL on failure.

SEE ALSO

       PX_update_record(3),     PX_timestamp2string(3),     PX_time2string(3),
       PX_date2string(3)

AUTHOR

       This manual page was written by Uwe Steinmann uwe@steinmann.cx.