Database Systems Corp.
Home  |   Contact Us  |   About Us  |   Sign Up  |   FAQ

predictive dialers and crm software
computer telephony software predictive dialer

IVR Services
Voice Broadcasting
ACD Systems Automatic Call Distribution
Telecommuting Software
Window On the Web
Voice Recording Software
Predictive Dialer
Business Phone Systems
Softphone
Auto Dialer Phone System
Community Notification Systems
Emergency Communications

predictive dialers and crm software
Information

Application Development
File Management Software
IVR Software
Call Center Software
Call Center Technology
Software Toolkit
Windows Development
Telecommuting Software
Remote Agent Software
Predictive Dialer
Predictive Dialing Software
Business Phone Systems
B2B Phone System
Auto Dialers
Predictive Dialers
Phone Dialers
Autodialing
Auto Dialer Software
Automatic Dialer Solutions
CRM Software Solutions
Predictive Dialer Software
Autodialer Software

predictive dialers and crm software


DSC Tech Library

FASTPLUS C Library


fpfile_create()

Function fpfile_create creates a FASTPLUS file from within an application program.

The syntax for fpfile_create is as follows:

fpfile_create(char *name, struct fpc_file *file_desc, struct fpc_index *index_desc, struct fpc_data *data_desc, struct fpc_journ *journ_desc)

   char *name         - File pathname. null terminated pointer.

   struct fpc_file{   - Structure to describe base file info 
      int record_len;     - record length in bytes - 0 for variable length records
      int recover;        - set to true for recovery of deleted data record space
      int compress;       - set to true for compression of data records
      int update_mod;     - update modulus for count caching
      int sync_flag       - bitmaped None/Data/Indexes/Both
      int num_data;       - number of split data partitions - up to 8
      int num_index;      - highst index number defined
      int version;        - not used by fpfile_create
      char date[6];       - not used by fpfile_create
   };

   struct fpc_index{  - Structured array to describe indexes
      char *pathname;     - pointer to pathname if split, NULL pointer or pointer to null string if not split
      int no_dupes;       - set to true if dupes not allowed
      int sparse_key;     - set to true to not add blank and/or null keys
      int num_parts;      - number of parts of data record in this key (0 if not in data)
      struct fpc_part{    - describe key in data record
        int pos;             - zero based part offset in data record
                             - (-1) for key not in data
        int len;             - size of part in bytes - returned by fpinfo_create()
        int type;       - type of key part
                        -  0, FPC_KEY_NONE  - don't create this index
                        -  1, FPC_KEY_CHAR  - character key - size = bytes
                        -  2, FPC_KEY_SHORT - 2-byte integer key - size = ignored
                        -  3, FPC_KEY_INT   - 4-byte integer key - size = ignored
                        -     FPC_KEY_LONG  - 4-byte integer key - size = ignored
                        -  4, FPC_KEY_LONG  - 4-byte floating point key - size = ignored
                        -  5, FPC_KEY_DBLE  - 8-byte floating point key - size = ignored
                        -  6, FPC_KEY_BIT   - bit field key - size = number of bits
                        -  7, FPC_KEY_DECLS - decimal leading separate field key - size = digits - not including sign
                        -  8, FPC_KEY_DECTS - decimal trailing separate field key - size = digits - not including sign
                        -  9, FPC_KEY_PACK  - packed decimal field key - size = digits (must be odd number)
                        - 10, FPC_KEY_DECLE - decimal leading embeded field key - size = digits
                        - 11, FPC_KEY_DECTE - decimal trailing embeded field key - size = digits
                        -     FPC_KEY_DEC   - decimal trailing embeded field key - size = digits
                        - 12, FPC_KEY_DATE  - 3 2-bytes integers (year, month, day) key - size = ignored

        int size;       - size of part in units (chars, bits, or digits)
      }parts[FPC_MAX_PARTS];
    };

      struct fpc_data{   - Structured array to describe data nodes
      int size;           - size in bytes of this partition
      char *pathname;     - filename of partition
    };
  
    struct fpc_journ{  - Structure to describe journal file
      int size;           - maximum size of journal file
      char *pathname;     - filename of journal file
    };

NOTE:  The Recover Deleted Record Space option in fpadmin is invalid for files specified with variable length data records or with the Compress Data Records option.

The possible values for fperrno and an explanation of each value follow. 

     Value             Explanation
     --------------------------------------------------
     FEROK  -     Code  0: Successful FASTPLUS Operation 
     FCENAM -  Code 31: Illegal file name
     FCEEXT -    Code 32: File already exists
     FCENWD -  Code 33: Illegal number of words
     FCENKY -  Code 34: Illegal number of keys
     FCECUM -  Code 35: Illegal count update modulus
     FCEKTP -   Code 37: Illegal index type
     FCENCH -  Code 38: Illegal number of characters
     FCEFLG -   Code 40: Illegal record flag comb.
     FCEACC -  Code 42: Illegal access rights
     FCENDP -  Code 47: Illegal # of data partitions
     FCEPSZ -   Code 49: Illegal data partition size
     FCEFHE -  Code 51: System error