/* e4error.h  (c)Copyright Sequiter Software Inc., 1990-1994.  All rights reserved. */
/*            (c)Copyright Sequiter Software Inc.,1990-1991. Alle Rechte vorbehalten.  */
/*                German translation: Mgr. Gertruda TKACIKOVA, Jan. 1992.  */

/*   error messages  */

#ifndef S4OFF_ERROR
#ifndef S4LANGUAGE

/* e4() messages */
#define  E4_CLOSE         "Unknown Name"
#define  E4_CREATE_FIL    "File Name:"
#define  E4_CREATE_TEM    "Temporary Working File"
#define  E4_CREATE_TOO    "Too Many Fields"
#define  E4_ERROR         "Error"
#define  E4_ERROR_NUM     "\r\n\r\nError Number"
#define  E4_ERROR_SEV     "\r\n\r\nSevere Error Number"
#define  E4_ERROR_BAS     "CODEBASIC ERROR"
#define  E4_ERROR_COD     "CODEBASE ERROR"
#define  E4_ERROR_CDS     "CODEBASE SEVERE ERROR"
#define  E4_ERROR_ENT     "\r\nPress Enter ..."
#define  E4_ERROR_KEY     "\r\nPress a key ..."
#define  E4_EXPR_OM       "expression source length > max allowable chars for index"
#define  E4_INDEX_COR     "Corrupted Free Block Chain in Index File"
#define  E4_INDEX_EXP     "Expected '.CDX' file is of the '.IDX' type"
#define  E4_INDEX_FIL     "Filter should be Logical"
#define  E4_INFO_AME      "A memo block is used twice."
#define  E4_INFO_BAC      "Backwards skip attempted without calling relate4skip_enable()"
#define  E4_INFO_CAL      "Call to d4reccount() in r4reindex_blocks_alloc() failed"
#define  E4_INFO_CLO      "Error closing group file in i4open()"
#define  E4_INFO_DAT      "Database is empty."
#define  E4_INFO_EMF      "Expected memo field non-existant in f4memo_read_low()"
#define  E4_INFO_IFT      "f4assign_field() - invalid field type"
#define  E4_INFO_INC      "Incorrect Record Number in tag:"
#define  E4_INFO_KEY      "Error in Key Evaluation"
#define  E4_INFO_LOC      "Error locking in i4open()"
#define  E4_INFO_REA      "Error reading group file in i4open()"
#define  E4_INFO_REC      "Record is missing."
#define  E4_INFO_REL      "relate4top() must be called first"
#define  E4_INFO_REP      "Repeated Record Number in tag:"
#define  E4_INFO_SET      "Set CODE4.auto_open to 'off'"
#define  E4_INFO_SKL      "CODE4->stored_key_len too small"
#define  E4_INFO_SKI      "Skip must be made from valid record number"
#define  E4_INFO_TAG      "Tag is corrupted"
#define  E4_LOCK_LOC      "Attempt to lock file that is read-only"
#define  E4_LOCK_UNL      "Attempt to unlock file that is read-only"
#define  E4_MEMORY_B      "Block Size too Large for Indexing"
#define  E4_MEMORY_S      "Sorting"
#define  E4_NUM_PARMS     "Function"
#define  E4_OPT_INV       "Invalid mode"
#define  E4_RESULT_CII    "Clipper incompatible Index File detected."
#define  E4_RESULT_D4F    "d4flush_record() did not work."
#define  E4_RELATE_EAI    "RELATE4->error_action invalid"
#define  E4_RELATE_MEN    "RELATE4->master expected is null"
#define  E4_RELATE_REL    "relate4match_len() can only be called with a character expression"
#define  E4_RELATE_RCS    "relate4create_slave() - master expression type does not match tag type"

#define  E4_REP_NOSNAM    "Not a valid name in call to style4create()."
#define  E4_REP_DUPSNAM   "The specified name is already in use by another style."
#define  E4_REP_SSELECT   "NULL style specified in call to report4styleSelect()."
#define  E4_REP_SINDEX    "Invalid index specified in call to style4index()."
#define  E4_REP_AHEIGHT   "Invalid value specified for area height."
#define  E4_REP_AMEM      "Unable to allocate memory for area."
#define  E4_REP_AEXPR     "Invalid suppression expression."
#define  E4_REP_OBJNXT    "Invalid object pointer."
#define  E4_REP_OBJPRV    "Invalid object pointer."
#define  E4_REP_GNAME     "Invalid name specified in call to group4create()."
#define  E4_REP_DUPGNAME  "The specified name is in use by another group."
#define  E4_REP_GEXPR     "Invalid group reset expression."
#define  E4_REP_GPOS      "Invalid group position."
#define  E4_REP_SWPHDR    "Flag must be zero or greater."
#define  E4_REP_SWPFTR    "Flag must be zero or greater."
#define  E4_REP_RPTHDR    "Flag must be zero or greater."
#define  E4_REP_RSTPG     "Flag must be zero or greater."
#define  E4_REP_RSTPGN    "Flag must be zero or greater."
#define  E4_REP_GRPLK     "Invalid name specified in call to report4groupLookup()."
#define  E4_REP_ONE       "A report is already in existence."
#define  E4_REP_REPALLOC  "Unable to allocate memory for report."
#define  E4_REP_NONE      "There is no report currently in existence."
#define  E4_REP_CAPALLOC  "Unable to allocate memory for the report caption."
#define  E4_REP_BADRESET  "Invalid parameter in report4hardResets()."
#define  E4_REP_BADTITLE  "Invalid parameter in report4titlePage()."
#define  E4_REP_BADSCREEN "Invalid parameter in report4toScreen()."
#define  E4_REP_DFILE     "Unable to open report data file."
#define  E4_REP_IFILE     "Unable to open report index file."
#define  E4_REP_NOTAG     "Unable to locate report tag."
#define  E4_REP_NOMEXPR   "Unable to parse relate master expression."
#define  E4_REP_NOSORT    "Unable to parse relation sort expression."
#define  E4_REP_NOQUERY   "Unable to parse relation query expression."
#define  E4_REP_RELERR    "Error retrieving relation from file."
#define  E4_REP_TCREATEVAL "Invalid parameter in call to total4create()."
#define  E4_REP_TEXPR     "Unable to parse total expression."
#define  E4_REP_TMEM      "Unable to allocate memory for total."
#define  E4_REP_TCALC     "Unable to create total calculation."
#define  E4_REP_TREXPR    "Unable to parse total reset expression."
#define  E4_REP_TLKP      "Invalid parameter in call to total4lookup()."
#define  E4_REP_OBJMEM    "Unable to allocate memory for object."
#define  E4_REP_OBJAL     "Invalid parameter in call to obj4justify()."
#define  E4_REP_ZERO      "Invalid parameter in call to obj4displayZero()."
#define  E4_REP_NTYPE     "Invalid parameter in call to obj4numericType()."
#define  E4_REP_LZERO     "Invalid parameter in call to obj4leadingZero()."
#define  E4_REP_BRACK     "Invalid parameter in call to obj4brackets()."
#define  E4_REP_OSTYLE    "Invalid parameter in call to obj4style()."
#define  E4_REP_FCRN      "Invalid parameter in call to obj4frameCorners()."
#define  E4_REP_FFILL     "Invalid parameter in call to obj4frameFill()."
#define  E4_REP_OLOOK     "Invalid parameter in call to obj4lookahead()."
#define  E4_REP_OUTWIN    "Unable to create report output window."
#define  E4_REP_PAGEWIN   "Unable to create report page window."
#define  E4_REP_PFILE     "Unable to create report page file."
#define  E4_REP_DOEXPR    "Unable to parse display once expression."
#define  E4_REP_SOBJ      "Unable to save object."
#define  E4_REP_SAREA     "Unable to save area."
#define  E4_REP_SGROUP    "Unable to save group."
#define  E4_REP_SPHF      "Unable to save page header/footer."
#define  E4_REP_ROBJ      "Unable to retrieve object."
#define  E4_REP_RHAREA    "Unable to retrieve header area."
#define  E4_REP_RFAREA    "Unable to retrieve footer area."
#define  E4_REP_RCALC     "Unable to retrieve calculation/total."
#define  E4_REP_RSTYLE    "Unable to retrieve style."
#define  E4_REP_RPHF      "Unable to retrieve page header/footer."
#define  E4_REP_RGROUP    "Unable to retrieve group."
#define  E4_REP_SFILE     "Unable to create save file."
#define  E4_REP_SCALC     "Unable to save calculation/total."
#define  E4_REP_SSTYLE    "Unable to save style."
#define  E4_REP_SREL      "Unable to save relate."
#define  E4_REP_RNUM      "Unable to retrieve report.\r\nA report already exists."
#define  E4_REP_RFILE     "Unable to retrieve report.\r\nFile is not a CodeReporter file."
#define  E4_REP_RFILE2    "Unable to retrieve report.\r\nBad file version."
#define  E4_REP_PGBRK     "Invalid parameter in call to area4pageBreak()."
#define  E4_REP_NODSETUP  "Error in setup for data file generation."
#define  E4_REP_NODCREATE "Unable to create the specified data file for generation."
#define  E4_REP_NOBUFPAGE "There is no output page currently buffered."
#define  E4_REP_OBJDATAAL "Unable to allocate memory for object data."

#define  E4_RESULT_DAT    "Database not found"
#define  E4_RESULT_EXP    "Expecting logical result."
#define  E4_RESULT_IDE    "Identical keys in unique key tag:"
#define  E4_RESULT_INT    "Internal buffer too small while retrieving report"
#define  E4_RESULT_LCF    "Could not locate File:"
#define  E4_RESULT_LOS    "Lost Block in Index File"
#define  E4_RESULT_REC    "Record numbers out of order for equal keys:"
#define  E4_RESULT_TAG    "Tag is out of date:"
#define  E4_RESULT_THE    "The tag is out of order:"
#define  E4_RESULT_UNE    "Unexpected key evaluation length:"
#define  E4_RESULT_WAS    "Wasted Space in Memo File"
#define  E4_PARM_MUS      "relate4top() must be called first"
#define  E4_PARM_OPT      "CODE4 optimization initialization values too small"
#define  E4_PARM_REL      "Called relate4create_slave() with a database that already exists in another part of the relation"
#define  E4_PARM_REP      "Attempt to replace to a read-only file"
#define  E4_PARM_SIZ      "Attempt to change file length of a read-only file"
#define  E4_PARM_TAA      "i4add_tag() - an input tag already exists in the index file"
#define  E4_PARM_WRT      "Attempt to write to a read-only file"
#define  E4_TYPE_SUB      "Expression:"
#define  E4_TYPE_UFT      "Unknown field type"
#define  E4_UNIQUE        "Creating Tag"

/* e4severe() messages */
#define  E4_BM4_IEL       "bitmap4seek() - invalid expression length"
#define  E4_BM4_IM        "bitmap4combine_leafs() - incompatible maps"
#define  E4_CONST_EIN     "const4get() - expression incongruity"
#define  E4_DATA_ILL      "Illegal field data."
#define  E4_DATA_COR      "Corrupt Database File."
#define  E4_DATA_DEL      "d4delete() - invalid deletion flag detected"
#define  E4_DATA_DELD     "d4deleted() - invalid deletion flag detected"
#define  E4_DATA_RECALL   "d4recall() - invalid deletion flag"
#define  E4_DATA_MEM      "Memo File not Open for Append"
#define  E4_DATA_UPDATE   "Number records unknown at update time"
#define  E4_EXPR_DELETED  "e4deleted() - invalid value detected in record buffer's deleted flag"
#define  E4_INFO_ACC      "Accessing NULL Block"
#define  E4_INFO_ALR      "Already initialized"
#define  E4_INFO_BDC      "Corrupt NTX Clipper index file"
#define  E4_INFO_BDI      "Corrupt IDX FoxPro index file"
#define  E4_INFO_BLO      "Block size is less than 1024 bytes"
#define  E4_INFO_BLS      "This is unsupported since dBASE IV compatibility requires minimum blocks sizes of 1024 bytes"
#define  E4_INFO_BMC      "Block/memory corruption"
#define  E4_INFO_C4C      "'CODE4.mem_size_block' is an illegal value."
#define  E4_INFO_COD      "CodeBase internal error"
#define  E4_INFO_CIF      "Corrupt index file"
#define  E4_INFO_CIB      "Corrupt index block"
#define  E4_INFO_CIS      "Corrupt index structure"
#define  E4_INFO_CMF      "Corrupt memo file"
#define  E4_INFO_CRL      "Corrupted Linked List"
#define  E4_INFO_DAO      "Database file already open"
#define  E4_INFO_DEL      "Deleted block not empty"
#define  E4_INFO_DUP      "Duplicate Alias"
#define  E4_INFO_EPV      "Expected value not built"
#define  E4_INFO_EVA      "Evaluating Tag Expression"
#define  E4_INFO_EXK      "Expression key is larger than maximum 102 characters"
#define  E4_INFO_EXP      "Expression too large"
#define  E4_INFO_FAI      "Failure in logical field index"
#define  E4_INFO_FOR      "For tag"
#define  E4_INFO_ILF      "Illegal file block reference"
#define  E4_INFO_ILL      "Illegal locking configuration"
#define  E4_INFO_ILP      "Illegal position"
#define  E4_INFO_IMS      "Invalid memo size in memo4file_write()"
#define  E4_INFO_INT      "Internal t4remove_current() failure--index file corrupt"
#define  E4_INFO_INV      "Invalid key type in index file"
#define  E4_INFO_IAO      "Index file already open"
#define  E4_INFO_IVE      "Invalid error action"
#define  E4_INFO_IVT      "Invalid type"
#define  E4_INFO_LIN      "Link not on list"
#define  E4_INFO_NKE      "n_keys invalid"
#define  E4_INFO_STR      "Function was Passed an Invalid Structure Pointer"
#define  E4_INFO_TAO      "Tag file already open"
#define  E4_INFO_UNE      "Unexpected empty block"
#define  E4_INFO_UNI      "Un-initialized values in opt4add_block"
#define  E4_INFO_UNT      "Unexpected tag locks in index file"
#define  E4_INFO_WRO      "Wrong number of links in linked list"
#define  E4_INFO_WT4      "Wrong TAG4 Type"
#define  E4_MEMORY_ERR    "Memory Error"
#define  E4_MEMORY_OOR    "Memory out of range in const4mem_alloc()"
#define  E4_MEMORY_SAV    "l4lock_save(), Saving Lock Information"
#define  E4_MEMORY_YPO    "mem4pop_pointer() with S4DEBUG switch."
#define  E4_MEMORY_YPU    "mem4push_pointer() with S4DEBUG switch."
#define  E4_OPEN_NOD      "i4open(): No database specified"
#define  E4_PARM_FLA      "Flag should be 'r4descending'."
#define  E4_PARM_FOR      "For S4NDX version, filter and descending should be 0"
#define  E4_PARM_ILP      "Illegal position"
#define  E4_PARM_IND      "Index file already open"
#define  E4_PARM_INV      "Invalid lock position"
#define  E4_PARM_NFD      "relate4sort(): Non-freed data list"
#define  E4_PARM_NUL      "Null Data File Pointer"
#define  E4_PARM_NSD      "Null String Detected"
#define  E4_PARM_OSD      "Overlapping Strings Detected"
#define  E4_PARM_REC      "Record Numbers are not Consecutive"
#define  E4_PARM_TAG      "Tag expression is missing."
#define  E4_PARM_TOO      "Too many tags"
#define  E4_PARM_UNI      "Unique flag data is an unrecognized value."
#define  E4_PARM_ZER      "Zero parameter"
#define  E4_RESULT_CLI    "Clipper Key Conversion failed"
#define  E4_RESULT_CMP    "mem4check_pointer() - corrupt memory pointer encountered"
#define  E4_RESULT_COM    "Corrupted Memory Detected"
#define  E4_RESULT_COR    "Corrupted Index File in Check"
#define  E4_RESULT_D4A    "d4append_start() was not completed."
#define  E4_RESULT_D4I    "d4init() has not been called."
#define  E4_RESULT_EXI    "Exiting from within lock wait"
#define  E4_RESULT_FRE    "Free value not found"
#define  E4_RESULT_INC    "Incorrect index file locking order."
#define  E4_RESULT_INQ    "In quick sort."
#define  E4_RESULT_LOC    "Locking index could create deadlock."
#define  E4_RESULT_LCO    "Locking Overlap Detected"
#define  E4_RESULT_MEM    "Memory items not freed"
#define  E4_RESULT_REM    "Removing Lock which was never placed."
#define  E4_RESULT_S4L    "S4LOCK_CHECK cannot be used with 'mem4reset'"
#define  E4_RESULT_STC    "Stack length variable _stklen below minimum."
#define  E4_RESULT_TOO    "Too many pointers"

#ifdef S4WINDOWS
#define E4_REPORT_BIT     "Could not create a bitmap"
#define E4_REPORT_COD     "CodeReporter"
#define E4_REPORT_CRE     "Could not create output window"
#define E4_REPORT_DIS     "Could not get a display context"
#define E4_REPORT_FON     "Error Creating Font"
#define E4_REPORT_PRI     "Printing"
#define E4_RESULT_CRE     "Creating Printer Display Context"
#define E4_RESULT_DEL     "Deleting Display Context"
#define E4_RESULT_END     "Ending Document"
#define E4_RESULT_G4D     "G4DISPLAY buffer missing"
#define E4_RESULT_G4E     "G4EDIT buffer missing"
#define E4_RESULT_G4L     "G4LIST buffer missing"
#define E4_RESULT_ON      "On New Frame"
#define E4_RESULT_SET     "Setting Font"
#define E4_RESULT_STA     "Starting Print Document"
#define E4_MESSAG_EXI     "EXITING APPLICATION"
#define E4_MESSAG_CAN     "Cancel"
#define E4_MESSAG_OK      "OK"
#define E4_MESSAG_PAC     "Are you sure you want to pack ?"
#define E4_MESSAG_REC     "RECORD NUMBER"
#define E4_MESSAG_REI     "Are you sure you want to reindex ?"
#define E4_PARM_ADD       "Choice length must be > 0"
#define E4_PARM_SA        "Invalid G4DISPLAY Pointer"
#define E4_PARM_VIS       "WS_VISIBLE Style not Present"
#define E4_PARM_WIN       "Invalid Window Dimensions"
#define E4_RESULT_ADD     "Add String Failed"
#define E4_RESULT_BUF     "G4LIST Buffer Not Big Enough"
#define E4_RESULT_CDC     "CreateCompatibleDC() Failed"
#define E4_RESULT_ENW     "EnableWindow() Failed"
#define E4_RESULT_GDC     "GetDC() Failed"
#define E4_RESULT_GTM     "GetTextMetrics Failed"
#define E4_RESULT_ID      "Invalid Id Number"
#define E4_RESULT_IDB     "Not A G4BUTTON Id Number"
#define E4_RESULT_IDC     "Not A G4COMBO Id Number"
#define E4_RESULT_IDD     "Not A G4DISPLAY Id Number"
#define E4_RESULT_IDL     "Not A G4LIST Id Number"
#define E4_RESULT_IDT     "Not A G4EDIT Id Number"
#define E4_RESULT_PIC     "Bad Picture"
#define E4_RESULT_POS     "Bad Caret Position"
#define E4_RESULT_RDC     "ReleaseDC() Failed"
#define E4_RESULT_RES     "FindResource() Failed"
#define E4_RESULT_TA1     "No WM_TABSTOP Style Present"
#define E4_RESULT_TA2     "Control Cannot Have The WM_TABSTOP Style"
#define E4_RESULT_WIN     "CreateWindow() Failed"
#endif

#else

#ifdef S4GERMAN

#define  E4_CLOSE            "Unbekannter Name"
#define  E4_CREATE_FIL       "Dateiname"
#define  E4_CREATE_TEM       "Tempor�rdatei"
#define  E4_CREATE_TOO       "Zu viele Felder vorhanden"
#define  E4_ERROR            "Fehler"
#define  E4_ERROR_NUM        "\r\n\r\nFehler Nummer"
#define  E4_ERROR_SEV        "\r\n\r\nSchwerer Fehler Nummer"
#define  E4_ERROR_BAS        "CODEBASIC FEHLER"
#define  E4_ERROR_COD        "CODEBASE FEHLER"
#define  E4_ERROR_CDS        "CODEBASE SEVERE FEHLER"
#define  E4_ERROR_ENT        "\r\nReturn-Taste dr�cken ..."
#define  E4_ERROR_KEY        "\r\nEine Taste dr�cken ..."
#define  E4_EXPR_OM          "Ausdrucksl�nge zu gro� f�r diesen Index"
#define  E4_INDEX_COR        "Besch�digte freie Blockkette in der Indexdatei"
#define  E4_INDEX_EXP        "Die erwartete '.CDX' Datei ist vom '.IDX' Typ"
#define  E4_INDEX_FIL        "Der Filter sollte logisch sein"
#define  E4_INFO_AME         "Ein Memo Block wurde zweimal gen�tzt"
#define  E4_INFO_BAC         "Backwards skip attempted without calling relate4skip_enable()"
#define  E4_INFO_CAL         "Der Aufruf von d4reccount() in r4reindex_blocks init() ist nicht gelungen"
#define  E4_INFO_CLO         "Fehler bei Abschlu� der Gruppendatei in i4open()"
#define  E4_INFO_DAT         "Datenbank ist leer"
#define  E4_INFO_EMF         "erwartetes Memofeld nicht vorhanden in f4memo_read_low()"
#define  E4_INFO_IFT         "f4assign_field() - ung�ltiger Feld-Typ"
#define  E4_INFO_INC         "Fehlerhafte Satznummer in 'Tag'"
#define  E4_INFO_KEY         "Fehler bei der Schl�sselauswertung"
#define  E4_INFO_LOC         "Fehler beim Locken in i4open()"
#define  E4_INFO_REA         "Fehler beim Lesen der Gruppendatei in i4open()"
#define  E4_INFO_REC         "Ein Satz fehlt"
#define  E4_INFO_REL         "relate4top() mu� vorher aufgerufen werden"
#define  E4_INFO_REP         "Wiederholte Satznummer in 'Tag'"
#define  E4_INFO_SET         "CODE4.auto_open ausschalten"
#define  E4_INFO_SKL         "CODE4->stored_key_len zu klein"
#define  E4_INFO_SKI         "Skip mu� von g�ltiger Satznummer erfolgen"
#define  E4_INFO_TAG         "'Tag' ist besch�digt"
#define  E4_LOCK_LOC         "Attempt to lock file that is read-only"
#define  E4_LOCK_UNL         "Attempt to unlock file that is read-only"
#define  E4_MEMORY_B         "Der Block ist zum Indexieren zu umfangreich"
#define  E4_MEMORY_S         "Sortieren"
#define  E4_NUM_PARMS        "Funktion"
#define  E4_OPT_INV          "Ung�ltiger Modus"

/*      #define  E4_REPORT_FILE      "Keine Report-Datei von CodeReporter." */
/*      #define  E4_REPORT_ONE       "Nur ein Report auf einmal ladbar" */
/*      #define  E4_REPORT_DFILE     "Kann Datendatei nicht �ffnen" */
/*      #define  E4_REPORT_GRO       "Gruppe nicht gefunden bei Report-Auswertung" */
/*      #define  E4_REPORT_IFILE     "Index-Datei nicht gefunden" */
/*      #define  E4_REPORT_ASTYLE    "Kein Speicher f�r Schriftart" */
/*      #define  E4_REPORT_AGROUP    "Kein Speicher f�r Gruppe" */
/*      #define  E4_REPORT_RGROUP    "Kein Zugriff auf Gruppen-Information" */
/*      #define  E4_REPORT_ATOTAL    "Kein Speicher f�r Summenfeld" */
/*      #define  E4_REPORT_ATEXT     "Kein Speicher f�r Text-Objekt" */
/*      #define  E4_REPORT_HINST     "CODE4-Mitglied 'hInst' nicht initialisiert" */
/*      #define  E4_REPORT_HWND      "REPORT4-Mitglied 'hWndParent' nicht initialisiert" */
/*      #define  E4_REPORT_RTEXT     "Kein Zugriff auf Information zu Text Objekt" */
/*      #define  E4_REPORT_RCALC     "Kein Zugriff auf Ergebnis der Berechnung" */
/*      #define  E4_REPORT_RTOTAL    "Kein Zugriff auf Summenfeld" */
/*      #define  E4_REPORT_TRG       "Kann Reset-Gruppe nicht lokalisieren" */
/*      #define  E4_REPORT_ROBJS     "Kein Zugriff auf Informationen �ber Objekt" */

#define  E4_REP_NOSNAM    "Not a valid name in call to style4create()."
#define  E4_REP_DUPSNAM   "The specified name is already in use by another style."
#define  E4_REP_SSELECT   "NULL style specified in call to report4styleSelect()."
#define  E4_REP_SINDEX    "Invalid index specified in call to style4index()."
#define  E4_REP_AHEIGHT   "Invalid value specified for area height."
#define  E4_REP_AMEM      "Unable to allocate memory for area."
#define  E4_REP_AEXPR     "Invalid suppression expression."
#define  E4_REP_OBJNXT    "Invalid object pointer."
#define  E4_REP_OBJPRV    "Invalid object pointer."
#define  E4_REP_GNAME     "Invalid name specified in call to group4create()."
#define  E4_REP_DUPGNAME  "The specified name is in use by another group."
#define  E4_REP_GEXPR     "Invalid group reset expression."
#define  E4_REP_GPOS      "Invalid group position."
#define  E4_REP_SWPHDR    "Flag must be zero or greater."
#define  E4_REP_SWPFTR    "Flag must be zero or greater."
#define  E4_REP_RPTHDR    "Flag must be zero or greater."
#define  E4_REP_RSTPG     "Flag must be zero or greater."
#define  E4_REP_RSTPGN    "Flag must be zero or greater."
#define  E4_REP_GRPLK     "Invalid name specified in call to report4groupLookup()."
#define  E4_REP_ONE       "A report is already in existence."
#define  E4_REP_REPALLOC  "Unable to allocate memory for report."
#define  E4_REP_NONE      "There is no report currently in existence."
#define  E4_REP_CAPALLOC  "Unable to allocate memory for the report caption."
#define  E4_REP_BADRESET  "Invalid parameter in report4hardResets()."
#define  E4_REP_BADTITLE  "Invalid parameter in report4titlePage()."
#define  E4_REP_BADSCREEN "Invalid parameter in report4toScreen()."
#define  E4_REP_DFILE     "Unable to open report data file."
#define  E4_REP_IFILE     "Unable to open report index file."
#define  E4_REP_NOTAG     "Unable to locate report tag."
#define  E4_REP_NOMEXPR   "Unable to parse relate master expression."
#define  E4_REP_NOSORT    "Unable to parse relation sort expression."
#define  E4_REP_NOQUERY   "Unable to parse relation query expression."
#define  E4_REP_RELERR    "Error retrieving relation from file."
#define  E4_REP_TCREATEVAL "Invalid parameter in call to total4create()."
#define  E4_REP_TEXPR     "Kann Summenausdruck nicht expression."
#define  E4_REP_TMEM      "Unable to allocate memory for total."
#define  E4_REP_TCALC     "Unable to create total calculation."
#define  E4_REP_TREXPR    "Unable to parse total reset expression."
#define  E4_REP_TLKP      "Invalid parameter in call to total4lookup()."
#define  E4_REP_OBJMEM    "Unable to allocate memory for object."
#define  E4_REP_OBJAL     "Invalid parameter in call to obj4justify()."
#define  E4_REP_ZERO      "Invalid parameter in call to obj4displayZero()."
#define  E4_REP_NTYPE     "Invalid parameter in call to obj4numericType()."
#define  E4_REP_LZERO     "Invalid parameter in call to obj4leadingZero()."
#define  E4_REP_BRACK     "Invalid parameter in call to obj4brackets()."
#define  E4_REP_OSTYLE    "Invalid parameter in call to obj4style()."
#define  E4_REP_FCRN      "Invalid parameter in call to obj4frameCorners()."
#define  E4_REP_FFILL     "Invalid parameter in call to obj4frameFill()."
#define  E4_REP_OLOOK     "Invalid parameter in call to obj4lookahead()."
#define  E4_REP_OUTWIN    "Unable to create report output window."
#define  E4_REP_PAGEWIN   "Unable to create report page window."
#define  E4_REP_PFILE     "Unable to create report page file."
#define  E4_REP_DOEXPR    "Unable to parse display once expression."
#define  E4_REP_SOBJ      "Unable to save object."
#define  E4_REP_SAREA     "Unable to save area."
#define  E4_REP_SGROUP    "Unable to save group."
#define  E4_REP_SPHF      "Unable to save page header/footer."
#define  E4_REP_ROBJ      "Unable to retrieve object."
#define  E4_REP_RHAREA    "Unable to retrieve header area."
#define  E4_REP_RFAREA    "Unable to retrieve footer area."
#define  E4_REP_RCALC     "Unable to retrieve calculation/total."
#define  E4_REP_RSTYLE    "Unable to retrieve style."
#define  E4_REP_RPHF      "Unable to retrieve page header/footer."
#define  E4_REP_RGROUP    "Unable to retrieve group."
#define  E4_REP_SFILE     "Unable to create save file."
#define  E4_REP_SCALC     "Unable to save calculation/total."
#define  E4_REP_SSTYLE    "Unable to save style."
#define  E4_REP_SREL      "Unable to save relate."
#define  E4_REP_RNUM      "Unable to retrieve report.\r\nA report already exists."
#define  E4_REP_RFILE     "Kann Report nicht einlesen.\r\nKeine CodeReporter-Datei."
#define  E4_REP_RFILE2    "Unable to retrieve report.\r\nBad file version."
#define  E4_REP_PGBRK     "Invalid parameter in call to area4pageBreak()."
#define  E4_REP_NODSETUP  "Error in setup for data file generation."
#define  E4_REP_NODCREATE "Unable to create the specified data file for generation."
#define  E4_REP_NOBUFPAGE "There is no output page currently buffered."
#define  E4_REP_OBJDATAAL "Unable to allocate memory for object data."

#define  E4_RESULT_CII       "Nicht kompatible Clipper-Index-Datei entdeckt."
#define  E4_RESULT_D4F       "d4flush record() gescheitert"
#define  E4_RESULT_DAT       "Datenbank nicht gefunden"
#define  E4_RESULT_EXP       "Es werden logische Ergebnisse erwartet"
#define  E4_RESULT_IDE       "Identische Schl�ssel in eindeutigem Subindex"
#define  E4_RESULT_INT       "Interner Puffer f�r Report zu klein"
#define  E4_RESULT_LCF       "Datei nicht gefunden:"
#define  E4_RESULT_LOS       "Nicht zugeordneter Block in Indexdatei"
#define  E4_RESULT_REC       "Satznummern f�r gleiche Schl�ssel nicht aufeinanderfolgend"
#define  E4_RELATE_EAI       "RELATE4->error_action ist ung�ltig"
#define  E4_RELATE_MEN       "RELATE4->master ist Null"
#define  E4_RELATE_RCS       "relate4create_slave() - Typ des Master-Ausdrucks nicht kompatibel zum Subindex-Typ"
#define  E4_RELATE_REL       "relate4match_len() erfordert Zeichenkette als Argument"
#define  E4_RESULT_TAG       "Subindex ist veraltet"
#define  E4_RESULT_THE       "Subindex ist nicht in Ordnung"
#define  E4_RESULT_UNE       "Unerwartete L�nge bei Schl�sselauswertung"
#define  E4_RESULT_WAS       "Ungenutzter Platz in der Memo Datei"
#define  E4_PARM_OPT         "Initialisierungswerte f�r Optimierungs-Schalter in CODE4 zu klein"
#define  E4_PARM_REL         "relate4create_slave() mit Datendatei aufgerufen, die bereits in der Relation verwendet wird"
#define  E4_PARM_REP         "Versuchtes �berschreiben einer Nur-Lese-Datei"
#define  E4_PARM_SIZ         "Versuchte L�ngen�nderung einer Nur-Lese-Datei"
#define  E4_PARM_TAA         "i4add_tag() - Subindex existiert bereits in der Indexdatei"
#define  E4_PARM_WRT         "Versuchtes Schreiben in eine Nur-Lese-Datei"
#define  E4_TYPE_SUB         "Ausdruck"
#define  E4_TYPE_UFT         "Unbekannter Feld-Typ"
#define  E4_UNIQUE           "Subindex wird angelegt"

/* e4severe() Meldungen*/
#define  E4_BM4_IEL          "bitmap4seek() - ung�ltige Ausdruck-L�nge"  /*!!!GERMAN*/
#define  E4_BM4_IM           "bitmap4combine_leafs() - inkompatible Bitmaps" /*!!!GERMAN*/
#define  E4_CONST_EIN        "const4get() - Incongruente Ausdr�cke"       /*!!!GERMAN*/
#define  E4_DATA_ILL         "Nichtzul�ssige Felddaten"
#define  E4_DATA_COR         "Fehlerhafte Datendatei."
#define  E4_DATA_DEL         "d4delete() - ung�ltiges L�sch-Flag entdeckt"  /*!!!GERMAN*/
#define  E4_DATA_DELD        "d4deleted() -ung�ltiges L�sch-Flag entdeckt" /*!!!GERMAN*/
#define  E4_DATA_RECALL      "d4recall() - ung�ltiges L�sch-Flag"           /*!!!GERMAN*/
#define  E4_DATA_MEM         "Memo Datei f�r 'Append' wurde nicht angelegt"
#define  E4_DATA_UPDATE      "Satznummern w�hrend Update nicht verf�gbar"    /*!!!GERMAN*/
#define  E4_EXPR_DELETED     "e4deleted() - ung�ltiger Wert bei deleted-Flag im Satzpuffer" /*!!!GERMAN*/
#define  E4_INFO_ACC         "Zugriff auf NULL-Block"                 /*!!!GERMAN*/
#define  E4_INFO_ALR         "Wurde bereits initialisiert"
#define  E4_INFO_BDC         "Fehlerhafte Clipper NTX-Indexdatei"
#define  E4_INFO_BDI         "Fehlerhafte FoxPro IDX-Indexdatei"
#define  E4_INFO_BLO         "Blockgr��e betr�gt weniger als 1024 Byte"
#define  E4_INFO_BLS         "Eine minimale Blockgr��e von 1024 Byte wird ben�tigt"
#define  E4_INFO_BMC         "Blockspeicher fehlerhaft"
#define  E4_INFO_C4C         "'CODE4.mem_size_block' hat einen unzul�ssigen Wert"
#define  E4_INFO_COD         "Interner Fehler in CodeBase"
#define  E4_INFO_CIF         "Indexdatei ist besch�digt"
#define  E4_INFO_CIB         "Indexblock ist besch�digt"
#define  E4_INFO_CIS         "Indexblockstruktur ist besch�digt"
#define  E4_INFO_CMF         "Memodatei ist besch�digt"
#define  E4_INFO_CRL         "Verkettete Liste ist besch�digt"
#define  E4_INFO_DAO         "Datenbank-Datei bereits ge�ffnet"
#define  E4_INFO_DEL         "zu l�schender Block ist nicht leer"
#define  E4_INFO_DUP         "Doppelter Alias-Wert"
#define  E4_INFO_EPV         "Erwarteter Wert wurde nicht gebildet"
#define  E4_INFO_EVA         "Indexausdruck wird ausgewertet"
#define  E4_INFO_EXK         "Schl�sselausdruck �berschreitet die H�chstl�nge von 102 Zeichen"
#define  E4_INFO_EXP         "Ausdruck ist zu lang"
#define  E4_INFO_FAI         "Fehler in logischem Feld-Index"
#define  E4_INFO_FOR         "f�r Subindex"
#define  E4_INFO_ILF         "nichtzul�ssiger Bezug auf Dateiblock"
#define  E4_INFO_ILL         "nichtzul�ssige Konfiguration beim Locken"
#define  E4_INFO_ILP         "nichtzul�ssige Position"
#define  E4_INFO_IMS         "Ung�ltige Memo-Gr��e in memo4file_write()"
#define  E4_INFO_INT         "interner Fehler in t4remove_current(). Indexdatei besch�digt"
#define  E4_INFO_INV         "Ung�ltiger Schl�sseltyp in der Indexdatei"
#define  E4_INFO_IAO         "Indexdatei bereits ge�ffnet"
#define  E4_INFO_IVE         "Ung�ltige Fehler-Aktion"
#define  E4_INFO_IVT         "Ung�ltiger Typ"
#define  E4_INFO_LIN         "Link befindet sich nicht in der Liste"
#define  E4_INFO_NKE         "n_keys ung�ltig"
#define  E4_INFO_STR         "Funktionsaufruf mit ung�ltigem Strukturzeiger-Argument"
#define  E4_INFO_TAO         "Indexdatei bereits ge�ffnet"
#define  E4_INFO_UNE         "Unerwarteter leerer Block"
#define  E4_INFO_UNI         "nicht initialisierte Werte in opt4add_block"
#define  E4_INFO_UNT         "Unerwartete Indexsperren in der Indexdatei"
#define  E4_INFO_WRO         "Falsche Anzahl von Links in verketteter Liste"
#define  E4_INFO_WT4         "Falscher TAG4 Typ"
#define  E4_MEMORY_ERR       "Speicherverwaltungs-Fehler"
#define  E4_MEMORY_OOR       "Ung�ltige Speichergr��e in const4mem_alloc()" /*!!!GERMAN*/
#define  E4_MEMORY_SAV       "l4lock_save(), Information zum Sperren wird gespeichert"
#define  E4_MEMORY_YPO       "mem4pop_pointer() mit S4DEBUG-Schalter"
#define  E4_MEMORY_YPU       "mem4push_pointer() mit S4DEBUG-Schalter"
#define  E4_OPEN_NOD         "i4open(): keine Datenbank angegeben"
#define  E4_PARM_FLA         "Wert des Flags sollte 'r4descending' sein"
#define  E4_PARM_FOR         "F�r die Version S4NDX sollten 'filter' und 'descending' gleich 0 sein"
#define  E4_PARM_H4R         "file4read() mit negativer Position"
#define  E4_PARM_ILP         "unzul�ssige Position"
#define  E4_PARM_IND         "Indexdatei bereits ge�ffnet"
#define  E4_PARM_INV         "Ung�ltige Position beim Sperren"
#define  E4_PARM_NFD         "relate4sort(): nicht freigegebene Datenliste"
#define  E4_PARM_NUL         "Null-Zeiger auf Datendatei"
#define  E4_PARM_NSD         "Null-String entdeckt"
#define  E4_PARM_OSD         "�berlappende Strings entdeckt"
#define  E4_PARM_REC         "Datensatznummern nicht aufeinanderfolgend"
#define  E4_PARM_TAG         "Subindex-Ausdruck fehlt"
#define  E4_PARM_TOO         "Zu viele Subindizes"
#define  E4_PARM_UNI         "Das unique-Flag hat einen unzul�ssigen Wert"
#define  E4_PARM_ZER         "Nullparameter"
#define  E4_RESULT_CLI       "Schl�sselkonvertierung f�r CLIPPER gescheitert"
#define  E4_RESULT_CMP       "mem4check_pointer() - falscher Zeigerwert entdeckt"
#define  E4_RESULT_COM       "fehlerhafter Speicherinhalt entdeckt"
#define  E4_RESULT_COR       "fehlerhafte Indexdatei wird gepr�ft"
#define  E4_RESULT_D4A       "d4append_start() wurde nicht abgeschlossen"
#define  E4_RESULT_D4I       "d4init() wurde nicht aufgerufen."
#define  E4_RESULT_EXI       "Warteposition beim Sperren wird abgebrochen"
#define  E4_RESULT_FRE       "Freier Wert nicht gefunden"
#define  E4_RESULT_INC       "Falsche Reihenfolge beim Sperren der Indexdatei"
#define  E4_RESULT_INQ       "bei QuickSort."
#define  E4_RESULT_LOC       "Indexsperre k�nnte einen 'deadlock' bewirken"
#define  E4_RESULT_LCO       "�berlappung beim Sperren entdeckt"
#define  E4_RESULT_MEM       "dynamische Speichervariablen nicht freigegeben"
#define  E4_RESULT_REM       "Nicht vorgenommene Sperre wird entfernt"
#define  E4_RESULT_S4L       "S4LOCK_CHECK kann nicht mit 'mem4reset' verwendet werden"
#define  E4_RESULT_STC       "Die Stack-Variable _stklen ist zu klein"
#define  E4_RESULT_TOO       "Zuviele Zeiger vorhanden"

#ifdef S4WINDOWS
#define E4_REPORT_BIT        "Kann Bitmap nicht erstellen"
#define E4_REPORT_COD        "CodeReporter"
#define E4_REPORT_CRE        "Kann Ausgabefenster nicht erstellen"
#define E4_REPORT_DIS        "Kein Display-Context verf�gbar"
#define E4_REPORT_FON        "Fehler bei Font-Erstellung"
#define E4_REPORT_PRI        "Drucke"

#define E4_RESULT_CRE        "Anlegen eines Drucker-Bildschirm-Kontextes"
#define E4_RESULT_DEL        "L�schen eines Bildschirm-Kontextes"
#define E4_RESULT_END        "Ein Dokument wird beendet"
#define E4_RESULT_G4D        "G4DISPLAY-Puffer fehlt"
#define E4_RESULT_G4E        "G4EDIT-Puffer fehlt"
#define E4_RESULT_G4L        "G4LIST-Puffer fehlt"
#define E4_RESULT_ON         "Neues Formular"
#define E4_RESULT_SET        "bei Font-Definition"
#define E4_RESULT_STA        "Drucken eines Dokuments beginnt"
#define E4_MESSAG_EXI        "Abbruch der Anwendung"
#define E4_MESSAG_CAN        "Abbruch"
#define E4_MESSAG_OK         "OK"
#define E4_MESSAG_PAC        "Sind Sie sicher, da� Sie packen m�chten?"
#define E4_MESSAG_REC        "SATZNUMMER"
#define E4_MESSAG_REI        "Sind Sie sicher, da� Sie neu indizieren m�chten?"
#define E4_PARM_ADD          "L�nge der Auswahl mu� > 0 sein"
#define E4_PARM_SA           "Ung�ltiger G4DISPLAY-Zeiger"
#define E4_PARM_VIS          "WS_VISIBLE-Attribut nicht gesetzt"
#define E4_PARM_WIN          "Ung�ltige Fensterabmessungen"
#define E4_RESULT_ADD        "String kann nicht hinzugef�gt werden"
#define E4_RESULT_BUF        "G4LIST-Puffer nicht gro� genug"
#define E4_RESULT_CDC        "CreateCompatibleDC() gescheitert"
#define E4_RESULT_ENW        "EnableWindow() gescheitert"
#define E4_RESULT_GDC        "GetDC() gescheitert"
#define E4_RESULT_GTM        "GetTextMetrics() gescheitert"
#define E4_RESULT_ID         "Ung�ltige ID-Nummer"
#define E4_RESULT_IDB        "Keine G4BUTTON-ID-Nummer"
#define E4_RESULT_IDC        "Keine G4COMBO-ID-Nummer"
#define E4_RESULT_IDD        "Keine G4DISPLAY-ID Nummer"
#define E4_RESULT_IDL        "Keine G4LIST-ID-Nummer"
#define E4_RESULT_IDT        "Keine G4EDIT-ID-Nummer"
#define E4_RESULT_PIC        "Falsches Eingabeformat"
#define E4_RESULT_POS        "Falsche Position des Carets"
#define E4_RESULT_RDC        "ReleaseDC() gescheitert"
#define E4_RESULT_RES        "FindResource() gescheitert"
#define E4_RESULT_TA1        "WM_TABSTOP-Attribut nicht gesetzt"
#define E4_RESULT_TA2        "Kontroll-Element kann kein WM_TABSTOP-Attribut haben"
#define E4_RESULT_WIN        "CreateWindow() gescheitert"
#endif
#endif   /* ifdef S4GERMAN  */

#ifdef S4FRENCH
#define  E4_CLOSE            "Unknown Name"
#define  E4_CREATE_FIL       "File Name:"
#define  E4_CREATE_TEM       "Temporary Working File"
#define  E4_CREATE_TOO       "Too Many Fields"
#define  E4_ERROR            "Error"
#define  E4_ERROR_NUM        "\r\n\r\nError Number"
#define  E4_ERROR_SEV        "\r\n\r\nSevere Error Number"
#define  E4_ERROR_BAS        "CODEBASIC ERROR"
#define  E4_ERROR_COD        "CODEBASE ERROR"
#define  E4_ERROR_CDS        "CODEBASE SEVERE ERROR"
#define  E4_ERROR_ENT        "\r\nPress Enter ..."
#define  E4_ERROR_KEY        "\r\nPress a key ..."
#define  E4_EXPR_OM          "expression source length > max allowable chars for index"
#define  E4_INDEX_COR        "Corrupted Free Block Chain in Index File"
#define  E4_INDEX_EXP        "Expected '.CDX' file is of the '.IDX' type"
#define  E4_INDEX_FIL        "Filter should be Logical"
#define  E4_INFO_AME         "A memo block is used twice."
#define  E4_INFO_BAC         "Backwards skip attempted without calling relate4skip_enable()"
#define  E4_INFO_CAL         "Call to d4reccount() in r4reindex_blocks_alloc() failed"
#define  E4_INFO_CLO         "Error closing group file in i4open()"
#define  E4_INFO_DAT         "Database is empty."
#define  E4_INFO_EMF         "Expected memo field non-existant in f4memo_read_low()"
#define  E4_INFO_IFT         "f4assign_field() - invalid field type"
#define  E4_INFO_INC         "Incorrect Record Number in tag:"
#define  E4_INFO_KEY         "Error in Key Evaluation"
#define  E4_INFO_LOC         "Error locking in i4open()"
#define  E4_INFO_REA         "Error reading group file in i4open()"
#define  E4_INFO_REC         "Record is missing."
#define  E4_INFO_REL         "relate4top() must be called first"
#define  E4_INFO_REP         "Repeated Record Number in tag:"
#define  E4_INFO_SET         "Set CODE4.auto_open to 'off'"
#define  E4_INFO_SKL         "CODE4->stored_key_len too small"
#define  E4_INFO_SKI         "Skip must be made from valid record number"
#define  E4_INFO_TAG         "Tag is corrupted"
#define  E4_LOCK_LOC         "Attempt to lock file that is read-only"
#define  E4_LOCK_UNL         "Attempt to unlock file that is read-only"
#define  E4_MEMORY_B         "Block Size too Large for Indexing"
#define  E4_MEMORY_S         "Sorting"
#define  E4_NUM_PARMS        "Function"
#define  E4_OPT_INV          "Invalid mode"

/*      #define  E4_REPORT_FILE      "This file is not a CodeReporter report file." */
/*      #define  E4_REPORT_ONE       "Only one report can be loaded at a time" */
/*      #define  E4_REPORT_DFILE     "Unable to Open Data File" */
/*      #define  E4_REPORT_GRO       "Group not Found while Retrieving Report" */
/*      #define  E4_REPORT_IFILE     "Index File Not Found" */
/*      #define  E4_REPORT_ASTYLE    "Unable to Allocate Memory For Style" */
/*      #define  E4_REPORT_AGROUP    "Unable to Allocate Memory For Group" */
/*      #define  E4_REPORT_RGROUP    "Unable to Retrieve Group Information" */
/*      #define  E4_REPORT_ATOTAL    "Unable to Allocate Memory for Total" */
/*      #define  E4_REPORT_ATEXT     "Unable to Allocate Memory for Text Object" */
/*      #define  E4_REPORT_HINST     "'hInst' member of CODE4 is not Initialized" */
/*      #define  E4_REPORT_HWND      "'hWndParent' member of REPORT4 is not Initialized" */
/*      #define  E4_REPORT_RTEXT     "Unable to Retrieve Text Object Information" */
/*      #define  E4_REPORT_RCALC     "Unable to Retrieve Calculation Information" */
/*      #define  E4_REPORT_RTOTAL    "Unable to Retrieve Total Information" */
/*      #define  E4_REPORT_TRG       "Unable to Locate Reset Group" */
/*      #define  E4_REPORT_ROBJS     "Unable to Retrieve Objects Information" */

#define  E4_REP_NOSNAM    "Not a valid name in call to style4create()."
#define  E4_REP_DUPSNAM   "The specified name is already in use by another style."
#define  E4_REP_SSELECT   "NULL style specified in call to report4styleSelect()."
#define  E4_REP_SINDEX    "Invalid index specified in call to style4index()."
#define  E4_REP_AHEIGHT   "Invalid value specified for area height."
#define  E4_REP_AMEM      "Unable to allocate memory for area."
#define  E4_REP_AEXPR     "Invalid suppression expression."
#define  E4_REP_OBJNXT    "Invalid object pointer."
#define  E4_REP_OBJPRV    "Invalid object pointer."
#define  E4_REP_GNAME     "Invalid name specified in call to group4create()."
#define  E4_REP_DUPGNAME  "The specified name is in use by another group."
#define  E4_REP_GEXPR     "Invalid group reset expression."
#define  E4_REP_GPOS      "Invalid group position."
#define  E4_REP_SWPHDR    "Flag must be zero or greater."
#define  E4_REP_SWPFTR    "Flag must be zero or greater."
#define  E4_REP_RPTHDR    "Flag must be zero or greater."
#define  E4_REP_RSTPG     "Flag must be zero or greater."
#define  E4_REP_RSTPGN    "Flag must be zero or greater."
#define  E4_REP_GRPLK     "Invalid name specified in call to report4groupLookup()."
#define  E4_REP_ONE       "A report is already in existence."
#define  E4_REP_REPALLOC  "Unable to allocate memory for report."
#define  E4_REP_NONE      "There is no report currently in existence."
#define  E4_REP_CAPALLOC  "Unable to allocate memory for the report caption."
#define  E4_REP_BADRESET  "Invalid parameter in report4hardResets()."
#define  E4_REP_BADTITLE  "Invalid parameter in report4titlePage()."
#define  E4_REP_BADSCREEN "Invalid parameter in report4toScreen()."
#define  E4_REP_DFILE     "Unable to open report data file."
#define  E4_REP_IFILE     "Unable to open report index file."
#define  E4_REP_NOTAG     "Unable to locate report tag."
#define  E4_REP_NOMEXPR   "Unable to parse relate master expression."
#define  E4_REP_NOSORT    "Unable to parse relation sort expression."
#define  E4_REP_NOQUERY   "Unable to parse relation query expression."
#define  E4_REP_RELERR    "Error retrieving relation from file."
#define  E4_REP_TCREATEVAL "Invalid parameter in call to total4create()."
#define  E4_REP_TEXPR     "Unable to parse total expression."
#define  E4_REP_TMEM      "Unable to allocate memory for total."
#define  E4_REP_TCALC     "Unable to create total calculation."
#define  E4_REP_TREXPR    "Unable to parse total reset expression."
#define  E4_REP_TLKP      "Invalid parameter in call to total4lookup()."
#define  E4_REP_OBJMEM    "Unable to allocate memory for object."
#define  E4_REP_OBJAL     "Invalid parameter in call to obj4justify()."
#define  E4_REP_ZERO      "Invalid parameter in call to obj4displayZero()."
#define  E4_REP_NTYPE     "Invalid parameter in call to obj4numericType()."
#define  E4_REP_LZERO     "Invalid parameter in call to obj4leadingZero()."
#define  E4_REP_BRACK     "Invalid parameter in call to obj4brackets()."
#define  E4_REP_OSTYLE    "Invalid parameter in call to obj4style()."
#define  E4_REP_FCRN      "Invalid parameter in call to obj4frameCorners()."
#define  E4_REP_FFILL     "Invalid parameter in call to obj4frameFill()."
#define  E4_REP_OLOOK     "Invalid parameter in call to obj4lookahead()."
#define  E4_REP_OUTWIN    "Unable to create report output window."
#define  E4_REP_PAGEWIN   "Unable to create report page window."
#define  E4_REP_PFILE     "Unable to create report page file."
#define  E4_REP_DOEXPR    "Unable to parse display once expression."
#define  E4_REP_SOBJ      "Unable to save object."
#define  E4_REP_SAREA     "Unable to save area."
#define  E4_REP_SGROUP    "Unable to save group."
#define  E4_REP_SPHF      "Unable to save page header/footer."
#define  E4_REP_ROBJ      "Unable to retrieve object."
#define  E4_REP_RHAREA    "Unable to retrieve header area."
#define  E4_REP_RFAREA    "Unable to retrieve footer area."
#define  E4_REP_RCALC     "Unable to retrieve calculation/total."
#define  E4_REP_RSTYLE    "Unable to retrieve style."
#define  E4_REP_RPHF      "Unable to retrieve page header/footer."
#define  E4_REP_RGROUP    "Unable to retrieve group."
#define  E4_REP_SFILE     "Unable to create save file."
#define  E4_REP_SCALC     "Unable to save calculation/total."
#define  E4_REP_SSTYLE    "Unable to save style."
#define  E4_REP_SREL      "Unable to save relate."
#define  E4_REP_RNUM      "Unable to retrieve report.\r\nA report already exists."
#define  E4_REP_RFILE     "Unable to retrieve report.\r\nFile is not a CodeReporter file."
#define  E4_REP_RFILE2    "Unable to retrieve report.\r\nBad file version."
#define  E4_REP_PGBRK     "Invalid parameter in call to area4pageBreak()."
#define  E4_REP_NODSETUP  "Error in setup for data file generation."
#define  E4_REP_NODCREATE "Unable to create the specified data file for generation."
#define  E4_REP_NOBUFPAGE "There is no output page currently buffered."
#define  E4_REP_OBJDATAAL "Unable to allocate memory for object data."

#define  E4_RESULT_CII       "Clipper incompatible Index File detected."
#define  E4_RESULT_D4F       "d4flush_record() did not work."
#define  E4_RESULT_DAT       "Database not found"
#define  E4_RESULT_EXP       "Expecting logical result."
#define  E4_RESULT_IDE       "Identical keys in unique key tag:"
#define  E4_RESULT_INT       "Internal buffer too small while retrieving report"
#define  E4_RESULT_LCF       "Could not locate File:"
#define  E4_RESULT_LOS       "Lost Block in Index File"
#define  E4_RESULT_REC       "Record numbers out of order for equal keys:"
#define  E4_RELATE_EAI       "RELATE4->error_action invalid"
#define  E4_RELATE_MEN       "RELATE4->master expected is null"
#define  E4_RELATE_RCS       "relate4create_slave() - master expression type does not match tag type"
#define  E4_RELATE_REL       "relate4match_len() can only be called with a character expression"
#define  E4_RESULT_TAG       "Tag is out of date:"
#define  E4_RESULT_THE       "The tag is out of order:"
#define  E4_RESULT_UNE       "Unexpected key evaluation length:"
#define  E4_RESULT_WAS       "Wasted SPace in Memo File"
#define  E4_PARM_MUS         "relate4top() must be called first"
#define  E4_PARM_OPT         "CODE4 optimization initialization values too small"
#define  E4_PARM_REL         "Called relate4create_slave() with a database that already exists in another part of the relation"
#define  E4_PARM_REP         "Attempt to replace to a read-only file"
#define  E4_PARM_SIZ         "Attempt to change file length of a read-only file"
#define  E4_PARM_TAA         "i4add_tag() - an input tag already exists in the index file"
#define  E4_PARM_WRT         "Attempt to write to a read-only file"
#define  E4_TYPE_SUB         "Expression:"
#define  E4_TYPE_UFT         "Unknown field type"
#define  E4_UNIQUE           "Creating Tag"

/* e4severe() messages */
#define  E4_BM4_IEL          "bitmap4seek() - invalid expression length"
#define  E4_BM4_IM           "bitmap4combine_leafs() - incompatible maps"
#define  E4_CONST_EIN        "const4get() - expression incongruity"
#define  E4_DATA_ILL         "Illegal field data."
#define  E4_DATA_COR         "Corrupt Database File."
#define  E4_DATA_DEL         "d4delete() - invalid deletion flag detected"
#define  E4_DATA_DELD        "d4deleted() - invalid deletion flag detected"
#define  E4_DATA_RECALL      "d4recall() - invalid deletion flag"
#define  E4_DATA_MEM         "Memo File not Open for Append"
#define  E4_DATA_UPDATE      "Number records unknown at update time"
#define  E4_EXPR_DELETED     "e4deleted() - invalid value detected in record buffer's deleted flag"
#define  E4_INFO_ACC         "Accessing NULL Block"
#define  E4_INFO_ALR         "Already initialized"
#define  E4_INFO_BDC         "Corrupt NTX Clipper index file"
#define  E4_INFO_BDI         "Corrupt IDX FoxPro index file"
#define  E4_INFO_BLO         "Block size is less than 1024 bytes"
#define  E4_INFO_BLS         "This is unsupported since dBASE IV compatibility requires minimum blocks sizes of 1024 bytes"
#define  E4_INFO_BMC         "Block/memory corruption"
#define  E4_INFO_C4C         "'CODE4.mem_size_block' is an illegal value."
#define  E4_INFO_COD         "CodeBase internal error"
#define  E4_INFO_CIF         "Corrupt index file"
#define  E4_INFO_CIB         "Corrupt index block"
#define  E4_INFO_CIS         "Corrupt index structure"
#define  E4_INFO_CMF         "Corrupt memo file"
#define  E4_INFO_CRL         "Corrupted Linked List"
#define  E4_INFO_DAO         "Database file already open"
#define  E4_INFO_DEL         "Deleted block not empty"
#define  E4_INFO_DUP         "Duplicate Alias"
#define  E4_INFO_EPV         "Expected value not built"
#define  E4_INFO_EVA         "Evaluating Tag Expression"
#define  E4_INFO_EXK         "Expression key is larger than maximum 102 characters"
#define  E4_INFO_EXP         "Expression too large"
#define  E4_INFO_FAI         "Failure in logical field index"
#define  E4_INFO_FOR         "for tag"
#define  E4_INFO_ILF         "Illegal file block reference"
#define  E4_INFO_ILL         "Illegal locking configuration"
#define  E4_INFO_ILP         "Illegal position"
#define  E4_INFO_IMS         "Invalid memo size in memo4file_write()"
#define  E4_INFO_INT         "Internal t4remove_current() failure--index file corrupt"
#define  E4_INFO_INV         "Invalid key type in index file"
#define  E4_INFO_IVE         "Invalid error action"
#define  E4_INFO_IVT         "Invalid type"
#define  E4_INFO_LIN         "Link not on list"
#define  E4_INFO_NKE         "n_keys invalid"
#define  E4_INFO_STR         "Function was Passed an Invalid Structure Pointer"
#define  E4_INFO_UNE         "Unexpected empty block"
#define  E4_INFO_UNI         "Un-initialized values in opt4add_block"
#define  E4_INFO_UNT         "Unexpected tag locks in index file"
#define  E4_INFO_WRO         "Wrong number of links in linked list"
#define  E4_INFO_WT4         "Wrong TAG4 Type"
#define  E4_MEMORY_ERR       "Memory Error"
#define  E4_MEMORY_OOR       "Memory out of range in const4mem_alloc()"
#define  E4_MEMORY_SAV       "l4lock_save(), Saving Lock Information"
#define  E4_MEMORY_YPO       "mem4pop_pointer() with S4DEBUG switch."
#define  E4_MEMORY_YPU       "mem4push_pointer() with S4DEBUG switch."
#define  E4_OPEN_NOD         "i4open(): No database specified"
#define  E4_PARM_FLA         "Flag should be 'r4descending'."
#define  E4_PARM_FOR         "For S4NDX version, filter and descending should be 0"
#define  E4_PARM_H4R         "file4read() with negative position"
#define  E4_PARM_ILP         "Illegal position"
#define  E4_PARM_IND         "Index file already open"
#define  E4_PARM_NFD         "relate4sort(): Non-freed data list"
#define  E4_PARM_INV         "Invalid lock position"
#define  E4_PARM_NSD         "Null String Detected"
#define  E4_PARM_OSD         "Overlapping Strings Detected"
#define  E4_PARM_NUL         "Null Data File Pointer"
#define  E4_PARM_REC         "Record Numbers are not Consecutive"
#define  E4_PARM_TAG         "Tag expression is missing."
#define  E4_PARM_TOO         "Too many tags"
#define  E4_PARM_UNI         "Unique flag data is an unrecognized value."
#define  E4_PARM_ZER         "Zero parameter"
#define  E4_RESULT_CLI       "Clipper Key Conversion failed"
#define  E4_RESULT_CMP    "mem4check_pointer() - corrupt memory pointer encountered"
#define  E4_RESULT_COM       "Corrupted Memory Detected"
#define  E4_RESULT_COR       "Corrupted Index File in Check"
#define  E4_RESULT_D4A       "d4append_start() was not completed."
#define  E4_RESULT_D4I       "d4init() has not been called."
#define  E4_RESULT_EXI       "Exiting from within lock wait"
#define  E4_RESULT_FRE       "Free value not found"
#define  E4_RESULT_INC       "Incorrect index file locking order."
#define  E4_RESULT_INQ       "In quick sort."
#define  E4_RESULT_LOC       "Locking index could create deadlock."
#define  E4_RESULT_LCO       "Locking Overlap Detected"
#define  E4_RESULT_MEM       "Memory items not freed"
#define  E4_RESULT_REM       "Removing Lock which was never placed."
#define  E4_RESULT_S4L       "S4LOCK_CHECK cannot be used with 'mem4reset'"
#define  E4_RESULT_STC       "Stack length variable _stklen below minimum."
#define  E4_RESULT_TOO       "Too many pointers"

#ifdef S4WINDOWS
#define E4_REPORT_BIT        "Could not create a bitmap"
#define E4_REPORT_COD        "CodeReporter"
#define E4_REPORT_CRE        "Could not create output window"
#define E4_REPORT_DIS        "Could not get a display context"
#define E4_REPORT_FON        "Error Creating Font"
#define E4_REPORT_PRI        "Printing"

#define E4_RESULT_CRE        "Creating Printer Display Context"
#define E4_RESULT_DEL        "Deleting Display Context"
#define E4_RESULT_END        "Ending Document"
#define E4_RESULT_G4D        "G4DISPLAY buffer missing"
#define E4_RESULT_G4E        "G4EDIT buffer missing"
#define E4_RESULT_G4L        "G4LIST buffer missing"
#define E4_RESULT_ON         "On New Frame"
#define E4_RESULT_SET        "Setting Font"
#define E4_RESULT_STA        "Starting Print Document"
#define E4_MESSAG_EXI        "EXITING APPLICATION"
#define E4_MESSAG_CAN        "Cancel"
#define E4_MESSAG_OK         "OK"
#define E4_MESSAG_PAC        "Are you sure you want to pack ?"
#define E4_MESSAG_REC        "RECORD NUMBER"
#define E4_MESSAG_REI        "Are you sure you want to reindex ?"
#define E4_PARM_ADD          "Choice length must be > 0"
#define E4_PARM_SA           "Invalid G4DISPLAY Pointer"
#define E4_PARM_VIS          "WS_VISIBLE Style not Present"
#define E4_PARM_WIN          "Invalid Window Dimensions"
#define E4_RESULT_ADD        "Add String Failed"
#define E4_RESULT_BUF        "G4LIST Buffer Not Big Enough"
#define E4_RESULT_CDC        "CreateCompatibleDC() Failed"
#define E4_RESULT_ENW        "EnableWindow() Failed"
#define E4_RESULT_GDC        "GetDC() Failed"
#define E4_RESULT_GTM        "GetTextMetrics Failed"
#define E4_RESULT_ID         "Invalid Id Number"
#define E4_RESULT_IDB        "Not A G4BUTTON Id Number"
#define E4_RESULT_IDC        "Not A G4COMBO Id Number"
#define E4_RESULT_IDD        "Not A G4DISPLAY Id Number"
#define E4_RESULT_IDL        "Not A G4LIST Id Number"
#define E4_RESULT_IDT        "Not A G4EDIT Id Number"
#define E4_RESULT_PIC        "Bad Picture"
#define E4_RESULT_POS        "Bad Caret Position"
#define E4_RESULT_RDC        "ReleaseDC() Failed"
#define E4_RESULT_RES        "FindResource() Failed"
#define E4_RESULT_TA1        "No WM_TABSTOP Style Present"
#define E4_RESULT_TA2        "Control Cannot Have The WM_TABSTOP Style"
#define E4_RESULT_WIN        "CreateWindow() Failed"
#endif

#define  E4A_GRA   0x85
#define  E4A_CIR   0x83
#define  E4A_CI2   0x86
#define  E4A_TRE   0x84
#define  E4A_EGU   0xA0
#define  E4C_CED   0x87
#define  E4E_EGU   0x82
#define  E4E_GRA   0x8A
#define  E4E_CIR   0x88
#define  E4E_TRE   0x89
#define  E4I_TRE   0x8B
#define  E4I_CIR   0x8C
#define  E4I_EGU   0xA1
#define  E4I_GRA   0x8D
#define  E4N_ACC   0xA4
#define  E4O_CIR   0x93
#define  E4O_TRE   0x94
#define  E4O_GRA   0x95
#define  E4O_EGU   0xA2
#define  E4U_CIR   0x96
#define  E4U_GRA   0x97
#define  E4U_TRE   0x81
#define  E4U_EGU   0xA3
#define  E4Y_TRE   0x98
#define  E4CM_CED  0x80
#define  E4AM_TRE  0x8E
#define  E4AM_CIR  0x8F
#define  E4EM_EGU  0x90
#define  E4OM_TRE  0x89
#define  E4UM_TRE  0x9A

#endif   /* ifdef S4FRENCH  */

#endif  /* S4LANGUAGE  */
#endif  /* S4OFF_ERROR */

typedef struct error_data_st
{
  int   error_num ;
  char S4PTR *error_data ;
}  ERROR_DATA ;