summaryrefslogtreecommitdiff
path: root/storage/connect
diff options
context:
space:
mode:
Diffstat (limited to 'storage/connect')
-rw-r--r--storage/connect/CMakeLists.txt4
-rw-r--r--storage/connect/bsonudf.cpp4
-rw-r--r--storage/connect/domdoc.cpp1
-rw-r--r--storage/connect/filamdbf.cpp3
-rw-r--r--storage/connect/frcas.h320
-rw-r--r--storage/connect/frids.h46
-rw-r--r--storage/connect/frmsg.h320
-rw-r--r--storage/connect/frmsg1.h1013
-rw-r--r--storage/connect/frmsg2.h1013
-rw-r--r--storage/connect/ha_connect.cc105
-rw-r--r--storage/connect/jdbconn.cpp13
-rw-r--r--storage/connect/jsonudf.cpp18
-rw-r--r--storage/connect/messages.h8
-rw-r--r--storage/connect/mycat.cc2
-rw-r--r--storage/connect/myconn.cpp2
-rw-r--r--storage/connect/mysql-test/connect/r/alter.result28
-rw-r--r--storage/connect/mysql-test/connect/r/bson.result8
-rw-r--r--storage/connect/mysql-test/connect/r/dbf.result10
-rw-r--r--storage/connect/mysql-test/connect/r/json.result8
-rw-r--r--storage/connect/mysql-test/connect/r/part_file.result16
-rw-r--r--storage/connect/mysql-test/connect/r/part_table.result4
-rw-r--r--storage/connect/mysql-test/connect/t/dbf.test10
-rw-r--r--storage/connect/noconst.c6
-rw-r--r--storage/connect/odbconn.cpp4
-rw-r--r--storage/connect/plgdbsem.h4
-rw-r--r--storage/connect/rcmsg.c11
-rw-r--r--storage/connect/reldef.cpp3
-rw-r--r--storage/connect/tabjson.cpp1
-rw-r--r--storage/connect/tabutil.cpp2
-rw-r--r--storage/connect/tabxml.cpp18
30 files changed, 137 insertions, 2868 deletions
diff --git a/storage/connect/CMakeLists.txt b/storage/connect/CMakeLists.txt
index 1c87305dc70..4816086f7c8 100644
--- a/storage/connect/CMakeLists.txt
+++ b/storage/connect/CMakeLists.txt
@@ -78,7 +78,7 @@ IF(UNIX)
get_property(inc_dirs DIRECTORY PROPERTY INCLUDE_DIRECTORIES)
SET(CONNECT_SOURCES ${CONNECT_SOURCES} inihandl.cpp)
SET(IPHLPAPI_LIBRARY "")
-ELSE(NOT UNIX)
+ELSE()
SET(CONNECT_SOURCES ${CONNECT_SOURCES}
tabwmi.cpp tabwmi.h tabmac.cpp tabmac.h macutil.cpp macutil.h)
# Add exception handling to the CONNECT project)
@@ -88,7 +88,7 @@ ELSE(NOT UNIX)
# Connect does not work with clang-cl
RETURN()
ENDIF()
-ENDIF(UNIX)
+ENDIF()
#
diff --git a/storage/connect/bsonudf.cpp b/storage/connect/bsonudf.cpp
index f5fe6475639..8dc892998cb 100644
--- a/storage/connect/bsonudf.cpp
+++ b/storage/connect/bsonudf.cpp
@@ -500,7 +500,7 @@ void BJNX::SetJsonValue(PGLOBAL g, PVAL vp, PBVAL vlp)
case TYPE_NULL:
vp->SetNull(true);
/* fall through */
- default:
+ default:
vp->Reset();
} // endswitch Type
@@ -2903,7 +2903,7 @@ my_bool bson_array_grp_init(UDF_INIT *initid, UDF_ARGS *args, char *message)
return true;
PGLOBAL g = (PGLOBAL)initid->ptr;
- (void) new(g) BJNX(g);
+ (void) new(g) BJNX(g);
JsonMemSave(g);
return false;
diff --git a/storage/connect/domdoc.cpp b/storage/connect/domdoc.cpp
index 7d5b87a2640..268ad771ef9 100644
--- a/storage/connect/domdoc.cpp
+++ b/storage/connect/domdoc.cpp
@@ -642,7 +642,6 @@ bool DOMNODELIST::DropItem(PGLOBAL g, int n)
if (Listp == NULL || Listp->length < n)
return true;
-//Listp->item[n] = NULL; La propriété n'a pas de méthode 'set'
return false;
} // end of DeleteItem
diff --git a/storage/connect/filamdbf.cpp b/storage/connect/filamdbf.cpp
index 94ff480f83e..b9ce16c5a7e 100644
--- a/storage/connect/filamdbf.cpp
+++ b/storage/connect/filamdbf.cpp
@@ -55,6 +55,7 @@
#define NO_FUNC
#include "plgcnx.h" // For DB types
#include "resource.h"
+#include "m_string.h" // For strmake
/****************************************************************************/
/* Definitions. */
@@ -732,7 +733,7 @@ bool DBFFAM::AllocateBuffer(PGLOBAL g)
return true;
} // endswitch c
- strncpy(descp->Name, cdp->GetName(), 11);
+ strmake(descp->Name, cdp->GetName(), sizeof(descp->Name)-1);
descp->Type = c;
descp->Length = (uchar)cdp->GetLong();
} // endif Flags
diff --git a/storage/connect/frcas.h b/storage/connect/frcas.h
deleted file mode 100644
index e9401d475ae..00000000000
--- a/storage/connect/frcas.h
+++ /dev/null
@@ -1,320 +0,0 @@
- case MSG_ACCESS_VIOLATN: p = "Violation accès mémoire"; break;
- case MSG_ADD_BAD_TYPE: p = "Ajout d'une valeur de type %s non conforme dans un tableau %s"; break;
- case MSG_ALLOC_ERROR: p = "Erreur d'allocation de %s"; break;
- case MSG_ANSWER_TYPE: p = "Réponse de type"; break;
- case MSG_API_CONF_ERROR: p = "Erreur SQL: API_CONFORMANCE"; break;
- case MSG_APPL_NOT_INIT: p = "Application non initialisée"; break;
- case MSG_ARRAY_BNDS_EXCD: p = "Hors limite de tableau"; break;
- case MSG_BAD_ARRAY_OPER: p = "Les tableaux doivent utiliser l'opérateur IN"; break;
- case MSG_BAD_ARRAY_TYPE: p = "Type=%d invalide pour un tableau"; break;
- case MSG_BAD_ARRAY_VAL: p = "Les tableaux doivent avoir le même nombre de valeurs"; break;
- case MSG_BAD_BIN_FMT: p = "Format invalide %c pour la colonne BIN %s"; break;
- case MSG_BAD_BLK_ESTIM: p = "Nombre de blocs supérieur à l'estimation"; break;
- case MSG_BAD_BLK_SIZE: p = "Taille du bloc %d non conforme"; break;
- case MSG_BAD_BYTE_NUM: p = "Le nombre d'octets écrits est faux"; break;
- case MSG_BAD_BYTE_READ: p = "Le nombre d'octets lus est faux"; break;
- case MSG_BAD_COL_TYPE: p = "Type invalide %s pour la colonne %s"; break;
- case MSG_BAD_COL_XPATH: p = "Xpath invalide colonne %s de la table HTML %s"; break;
- case MSG_BAD_CONST_TYPE: p = "Type=%d invalide pour une constante"; break;
- case MSG_BAD_CONV_TYPE: p = "Convertion de type invalide %d"; break;
- case MSG_BAD_DATETIME: p = "Valeur date/temps invalide"; break;
- case MSG_BAD_DBF_FILE: p = "Le fichier DBF %s est altéré"; break;
- case MSG_BAD_DBF_REC: p = "Fichier DBF %s altéré enregistrement %d"; break;
- case MSG_BAD_DBF_TYPE: p = "Type DBF %c non supporté colonne %s"; break;
- case MSG_BAD_DIRECTORY: p = "Répertoire invalide %s: %s"; break;
- case MSG_BAD_FIELD_RANK: p = "Rang %d invalide pour la colonne %s"; break;
- case MSG_BAD_FIELD_TYPE: p = "Mauvais type de champ %s"; break;
- case MSG_BAD_FILE_HANDLE: p = "Handle de fichier invalide: %s"; break;
- case MSG_BAD_FILTER: p = "Mauvais filtre: Opc=%d B_T=%d %d Type=%d %d"; break;
- case MSG_BAD_FILTER_CONV: p = "Conversion filtre incorrecte, B_T=%d,%d"; break;
- case MSG_BAD_FILTER_OP: p = "Opérateur de filtre invalide %d"; break;
- case MSG_BAD_FLD_FORMAT: p = "Format invalide pour le champs %d de %s"; break;
- case MSG_BAD_FLD_LENGTH: p = "Champs %s trop long (%s --> %d) ligne %d de %s"; break;
- case MSG_BAD_FREQ_SET: p = "Spécification erronnée de Freq pour la colonne %s"; break;
- case MSG_BAD_FUNC_MODE: p = "%s: mode invalide %d"; break;
- case MSG_BAD_HANDLE_VAL: p = "Valeur Handle invalide"; break;
- case MSG_BAD_HEADER: p = "Fichier %s: bloc en-tête altéré"; break;
- case MSG_BAD_HEAD_END: p = "Lecture fin d'en-tête impossible"; break;
- case MSG_BAD_INDEX_FILE: p = "Fichier index %s corrompu"; break;
- case MSG_BAD_LINEFLD_FMT: p = "Format invalide ligne %d champs %d de %s"; break;
- case MSG_BAD_LINE_LEN: p = "Longueur ligne non égale à Lrecl"; break;
- case MSG_BAD_LRECL: p = "Disparité lrecl table/fichier (%d,%hd)"; break;
- case MSG_BAD_NODE_TYPE: p = "Type noeud erroné pour la table"; break;
- case MSG_BAD_OFFSET_VAL: p = "Nul offset invalide pour une table CSV"; break;
- case MSG_BAD_OPEN_MODE: p = "Mode d'ouverture invalide %d"; break;
- case MSG_BAD_PARAM_TYPE: p = "%.8s: Paramètre de type=%d invalide"; break;
- case MSG_BAD_PARM_COUNT: p = "Nombre de paramètres incohérent"; break;
- case MSG_BAD_QUOTE_FIELD: p = "Quote manquante dans %s champs %d ligne %d"; break;
- case MSG_BAD_READ_NUMBER: p = "Mauvais nombre %d de valeurs lues dans %s"; break;
- case MSG_BAD_RECFM: p = "Recfm type %d invalide pour DOSCOL"; break;
- case MSG_BAD_RECFM_VAL: p = "Valeur invalide %d de Recfm"; break;
- case MSG_BAD_SET_CASE: p = "La casse d'un tableau ne peut pas passer de non respect à respecter"; break;
- case MSG_BAD_SET_STRING: p = "SetValue: appel invalide pour STRING"; break;
- case MSG_BAD_SPECIAL_COL: p = "Colonne spéciale invalide %s"; break;
- case MSG_BAD_SPEC_COLUMN: p = "Colonne spéciale invalide pour ce type de table"; break;
- case MSG_BAD_TABLE_TYPE: p = "Type invalide %s pour la table %s"; break;
- case MSG_BAD_TYPE_LIKE: p = "Type(%d)= %d invalide pour LIKE"; break;
- case MSG_BAD_VALBLK_INDX: p = "Valeur hors limites de l'index du bloc de valeurs"; break;
- case MSG_BAD_VALBLK_TYPE: p = "Type=%d invalide pour un bloc de valeurs"; break;
- case MSG_BAD_VALNODE: p = "Type %d invalide pour le noeud valeur colonne %s"; break;
- case MSG_BAD_VALUE_TYPE: p = "Type de valeur invalide %d"; break;
- case MSG_BAD_VAL_UPDATE: p = "Impossible de déterminer quelle valeur %s doit être mise à jour"; break;
- case MSG_BAS_NS_LIST: p = "Format invalide de la liste des espace-noms"; break;
- case MSG_BIN_F_TOO_LONG: p = "Valeur trop longue pour le champ %s (%d --> %d)"; break;
- case MSG_BIN_MODE_FAIL: p = "Echec mode binaire: %s"; break;
- case MSG_BLKTYPLEN_MISM: p = "Disparité types/longueurs de bloc dans SetValue"; break;
- case MSG_BLK_IS_NULL: p = "Blk est nul"; break;
- case MSG_BREAKPOINT: p = "Point de contrôle"; break;
- case MSG_BUILD_INDEX: p = "Construction index %s sur %s"; break;
- case MSG_CANNOT_OPEN: p = "Ouverture impossible de %s"; break;
- case MSG_CHSIZE_ERROR: p = "Erreur dans chsize: %s"; break;
- case MSG_COL_ALLOC_ERR: p = "Allocation impossible du noeud colonne"; break;
- case MSG_COL_ISNOT_TABLE: p = "La colonne %s n'est pas dans la table %s"; break;
- case MSG_COL_NOT_SORTED: p = "La colonne %s de la table %s n'est pas triée"; break;
- case MSG_COL_NUM_MISM: p = "Disparité du nombre de colonnes"; break;
- case MSG_COM_ERROR: p = "Erreur Com"; break;
- case MSG_CONCAT_SUBNODE: p = "Concaténation de sous-noeuds impossible"; break;
- case MSG_CONNECT_CANCEL: p = "Connection interrompue par l'utilisateur"; break;
- case MSG_CONTROL_C_EXIT: p = "Exit par Ctrl-C"; break;
- case MSG_DATABASE_LOADED: p = "Base de données %s chargée"; break;
- case MSG_DATA_MISALIGN: p = "Mauvais alignement pour ce type de données"; break;
- case MSG_DBASE_FILE: p = "Fichier dBASE dbf: "; break;
- case MSG_DEF_ALLOC_ERROR: p = "Erreur d'allocation de la classe DEF %s"; break;
- case MSG_DEL_FILE_ERR: p = "Erreur à l'effacement de %s"; break;
- case MSG_DEL_READ_ERROR: p = "Delete: erreur en lecture req=%d len=%d"; break;
- case MSG_DEL_WRITE_ERROR: p = "Delete: erreur en écriture: %s"; break;
- case MSG_DEPREC_FLAG: p = "Option Flag périmée, utiliser Coltype"; break;
- case MSG_DLL_LOAD_ERROR: p = "Erreur %d au chargement du module %s"; break;
- case MSG_DOM_NOT_SUPP: p = "MS-DOM non supporté par cette version"; break;
- case MSG_DVAL_NOTIN_LIST: p = "Valeur %s non trouvée dans la liste des valeurs distinctes de la colonne %s"; break;
- case MSG_EMPTY_DOC: p = "Document vide"; break;
- case MSG_EMPTY_FILE: p = "%s du fichier vide %s: "; break;
- case MSG_EOF_AFTER_LINE: p = "Fin de fichier après la ligne %d"; break;
- case MSG_EOF_INDEX_FILE: p = "EOF lisant le fichier index"; break;
- case MSG_ERROR_IN_LSK: p = "Erreur %d dans lseek64"; break;
- case MSG_ERROR_IN_SFP: p = "Erreur %d dans SetFilePointer"; break;
- case MSG_ERR_READING_REC: p = "Erreur lisant l'enregistrement %d de %s"; break;
- case MSG_FAIL_ADD_NODE: p = "L'ajout du noeud %s dans la table a échoué"; break;
- case MSG_FETCH_NO_RES: p = "Fetch: Pas de Résultats"; break;
- case MSG_FIELD_TOO_LONG: p = "Valeur trop longue pour le champs %d ligne %d"; break;
- case MSG_FILELEN_ERROR: p = "Erreur dans %s pour %s"; break;
- case MSG_FILE_IS_EMPTY: p = "Le fichier %s est vide"; break;
- case MSG_FILE_MAP_ERR: p = "Erreur de File mapping"; break;
- case MSG_FILE_MAP_ERROR: p = "CreateFileMapping %s erreur rc=%d"; break;
- case MSG_FILE_OPEN_YET: p = "Fichier %s déjà ouvert"; break;
- case MSG_FILE_UNFOUND: p = "Fichier %s non trouvé"; break;
- case MSG_FLD_TOO_LNG_FOR: p = "Champs %d trop long pour %s ligne %d de %s"; break;
- case MSG_FLT_BAD_RESULT: p = "Virgule flottante: résultat inexacte"; break;
- case MSG_FLT_DENORMAL_OP: p = "Opérande virgule flottante non normalisé"; break;
- case MSG_FLT_INVALID_OP: p = "Opération virgule flottante invalide"; break;
- case MSG_FLT_OVERFLOW: p = "Dépassement de capacité virgule flottante"; break;
- case MSG_FLT_STACK_CHECK: p = "Virgule flottante: Erreur de la pile"; break;
- case MSG_FLT_UNDERFLOW: p = "Sous-dépassement de capacité virgule flottante"; break;
- case MSG_FLT_ZERO_DIVIDE: p = "Virgule flottante: division par zéro"; break;
- case MSG_FMT_WRITE_NIY: p = "L'écriture des fichiers %s n'est pas encore implémentée"; break;
- case MSG_FOXPRO_FILE: p = "Fichier FoxPro: "; break;
- case MSG_FPUTS_ERROR: p = "Erreur dans fputs: %s"; break;
- case MSG_FSEEK_ERROR: p = "Erreur dans fseek: %s"; break;
- case MSG_FSETPOS_ERROR: p = "Erreur dans fseek pour i=%d"; break;
- case MSG_FTELL_ERROR: p = "Erreur dans ftell enregistrement=%d: %s"; break;
- case MSG_FUNCTION_ERROR: p = "Erreur dans %s: %d"; break;
- case MSG_FUNC_ERRNO: p = "Erreur %d dans %s"; break;
- case MSG_FUNC_ERROR: p = "Erreur dans %s"; break;
- case MSG_FUNC_ERR_S: p = "Erreur dans %s: %s"; break;
- case MSG_FWRITE_ERROR: p = "Erreur dans fwrite: %s"; break;
- case MSG_GET_DIST_VALS: p = "Récupération des valeurs distinctes de "; break;
- case MSG_GET_FUNC_ERR: p = "Erreur en recherche de la fonction %s: %s"; break;
- case MSG_GLOBAL_ERROR: p = "Erreur d'allocation de Global (taille=%d)\n"; break;
- case MSG_GUARD_PAGE: p = "Violation de page de garde"; break;
- case MSG_GZOPEN_ERROR: p = "gzopen %s: erreur %d sur %s"; break;
- case MSG_ILLEGAL_INSTR: p = "Instruction illégale"; break;
- case MSG_ILL_FILTER_CONV: p = "Conversion implicite illégale dans un filtre"; break;
- case MSG_INDEX_NOT_UNIQ: p = "L'index n'est pas Unique"; break;
- case MSG_INDEX_YET_ON: p = "L'index %s existe déjà sur %s"; break;
- case MSG_INDX_COL_NOTIN: p = "La colonne index %s n'existe pas dans la table %s"; break;
- case MSG_INDX_EXIST_YET: p = "L'entrée index existe déjà"; break;
- case MSG_INIT_FAILED: p = "L'initialisation de %s a échoué"; break;
- case MSG_INT_COL_ERROR: p = "Erreur interne sur la colonne index %s"; break;
- case MSG_INT_OVERFLOW: p = "Dépassement de capacité sur entier"; break;
- case MSG_INT_ZERO_DIVIDE: p = "Division entière par zéro"; break;
- case MSG_INVALID_DISP: p = "Disposition invalide"; break;
- case MSG_INVALID_FTYPE: p = "SBV: Ftype %d invalide"; break;
- case MSG_INVALID_HANDLE: p = "Poignée invalide"; break;
- case MSG_INVALID_OPER: p = "Opérateur invalide %d pour %s"; break;
- case MSG_INV_COLUMN_TYPE: p = "Type %d Invalide pour la colonne %s"; break;
- case MSG_INV_COL_TYPE: p = "Type de colonne %s invalide"; break;
- case MSG_INV_DEF_READ: p = "Lecture différée invalide rc=%d"; break;
- case MSG_INV_DIRCOL_OFST: p = "Offset invalide pour une colonne DIR"; break;
- case MSG_INV_MAP_POS: p = "Position mémoire invalide"; break;
- case MSG_INV_RAND_ACC: p = "L'accès aléatoire d'une table non optimisée est impossible"; break;
- case MSG_INV_REC_POS: p = "Position d'enregistrement invalide"; break;
- case MSG_INV_RESULT_TYPE: p = "Type de résultat invalide %s"; break;
- case MSG_INV_UPDT_TABLE: p = "Table %s invalide pour Update"; break;
- case MSG_IN_WITHOUT_SUB: p = "IN ou EXISTS sans tableau ou subquery"; break;
- case MSG_KEY_ALLOC_ERR: p = "Erreur d'allocation d'un bloc offset clé"; break;
- case MSG_KEY_ALLOC_ERROR: p = "Erreur d'allocation mémoire, Klen=%d n=%d"; break;
- case MSG_LINE_TOO_LONG: p = "La nouvelle ligne est trop longue"; break;
- case MSG_LIST: p = "--Liste--"; break;
- case MSG_LOADING_FAILED: p = "Le chargement de %s a échoué"; break;
- case MSG_LRECL_TOO_SMALL: p = "Lrecl trop petit (longueur en-tête = %d)"; break;
- case MSG_MAKE_EMPTY_FILE: p = "Génération du fichier vide %s: %s"; break;
- case MSG_MAKING: p = "Génération"; break;
- case MSG_MALLOC_ERROR: p = "Allocation mémoire impossible par %s"; break;
- case MSG_MAP_VIEW_ERROR: p = "MapViewOfFile %s erreur rc=%d"; break;
- case MSG_MAXSIZE_ERROR: p = "Maxsize incalculable sur table ouverte"; break;
- case MSG_MEM_ALLOC_ERR: p = "Erreur d'allocation mémoire, taille %s = %d"; break;
- case MSG_MEM_ALLOC_ERROR: p = "Erreur d'allocation mémoire"; break;
- case MSG_MISPLACED_QUOTE: p = "Appostrophe mal placée ligne %d"; break;
- case MSG_MISSING_ARG: p = "Argument manquant pour l'opérateur %d"; break;
- case MSG_MISSING_FIELD: p = "Champs %d manquant dans %s ligne %d"; break;
- case MSG_MISSING_FNAME: p = "Nom du fichier manquant"; break;
- case MSG_MISSING_NODE: p = "Noeud %s manquant dans %s"; break;
- case MSG_MISSING_ROWNODE: p = "Impossible de trouver le noeud de la ligne %d"; break;
- case MSG_MIS_TAG_LIST: p = "Liste des balises colonne manquante"; break;
- case MSG_MUL_MAKECOL_ERR: p = "Erreur logique dans TABMUL::MakeCol"; break;
- case MSG_NAME_CONV_ERR: p = "Erreur de convertion du nom de noeud"; break;
- case MSG_NEW_DOC_FAILED: p = "Impossible de créer le nouveau document"; break;
- case MSG_NEW_RETURN_NULL: p = "NULL renvoyé par New dans PlugEvalLike"; break;
- case MSG_NEXT_FILE_ERROR: p = "Erreur en recherche du fichier suivant. rc=%s"; break;
- case MSG_NONCONT_EXCEPT: p = "Exception non-continuable"; break;
- case MSG_NOP_ZLIB_INDEX: p = "L'indexage d'une table zlib non optimisée est impossible"; break;
- case MSG_NOT_A_DBF_FILE: p = "Le fichier n'a pas le format dBASE dbf "; break;
- case MSG_NOT_FIXED_LEN: p = "Fichier %s non fixe, len=%d lrecl=%d"; break;
- case MSG_NO_0DH_HEAD: p = "0DH manquant en fin d'en-tête (dbc=%d)"; break;
- case MSG_NO_ACTIVE_DB: p = "Pas de base de données active"; break;
- case MSG_NO_CHAR_FROM: p = "Conversion de type %d en caractères impossible"; break;
- case MSG_NO_DATE_FMT: p = "Pas de format date pour le valblock de type %d"; break;
- case MSG_NO_DEF_FNCCOL: p = "Colonne fonction par défaut introuvable"; break;
- case MSG_NO_DEF_PIVOTCOL: p = "Colonne pivot par défaut introuvable"; break;
- case MSG_NO_DIR_INDX_RD: p = "Pas d'accès directe des tables %s"; break;
- case MSG_NO_FEAT_SUPPORT: p = "%s non supporté dans cette version"; break;
- case MSG_NO_FLD_FORMAT: p = "Format absent pour le champs %d de %s"; break;
- case MSG_NO_FORMAT_COL: p = "Type COLUMN informattable"; break;
- case MSG_NO_FORMAT_TYPE: p = "Le format ne peut pas être défini à partir du type %d"; break;
- case MSG_NO_INDEX_READ: p = "Pas d'accès directe des tables multiples"; break;
- case MSG_NO_KEY_COL: p = "Pas de colonne clé trouvée"; break;
- case MSG_NO_KEY_UPDATE: p = "Le nom des clés ne peut pas être modifié"; break;
- case MSG_NO_MAP_INSERT: p = "MAP incompatible avec Insert"; break;
- case MSG_NO_MATCHING_COL: p = "Pas de colonne correspondant à %s dans %s"; break;
- case MSG_NO_MATCH_COL: p = "Colonne correspondante introuvable"; break;
- case MSG_NO_MEMORY: p = "Mémoire pleine"; break;
- case MSG_NO_MODE_PADDED: p = "Mode non supporté pour les fichiers 'padded'"; break;
- case MSG_NO_MUL_VCT: p = "Les tables VCT ne peuvent pas être multiples"; break;
- case MSG_NO_ODBC_DELETE: p = "Delete ne devrait pas être appelé pour les tables ODBC"; break;
- case MSG_NO_ODBC_DIRECT: p = "Accès directe des tables ODBC non encore implémenté"; break;
- case MSG_NO_ODBC_MUL: p = "Multiple(2) non supporté pour les tables ODBC"; break;
- case MSG_NO_ODBC_SPECOL: p = "Pas de colonne spéciale ODBC"; break;
- case MSG_NO_PART_DEL: p = "Delete partiel des fichier %s impossible"; break;
- case MSG_NO_PART_MAP: p = "Mapping partiel non implémenté pour cet OS"; break;
- case MSG_NO_PAR_BLK_INS: p = "Insertion de bloc partiel impossible"; break;
- case MSG_NO_PIV_DIR_ACC: p = "Pas d'accès directe aux tables PIVOT"; break;
- case MSG_NO_READ_32: p = "Lecture de 32 octets impossible"; break;
- case MSG_NO_RECOV_SPACE: p = "Espace non recouvrable dans le fichier index"; break;
- case MSG_NO_ROWID_FOR_AM: p = "Accès direct impossible de ROWID pour les tables de type %s"; break;
- case MSG_NO_ROW_NODE: p = "Le nom du Rownode n'est pas défini"; break;
- case MSG_NO_SECTION_NAME: p = "Nom de section manquant"; break;
- case MSG_NO_SEC_UPDATE: p = "Les noms de section ne peuvent pas être modifiés"; break;
- case MSG_NO_SETPOS_YET: p = "SetPos pas encore implémenté pour les fichier %s"; break;
- case MSG_NO_SPEC_COL: p = "Pas de colonne spéciales MYSQL"; break;
- case MSG_NO_SUB_VAL: p = "Pas de sous-value d'un tableau de type %d"; break;
- case MSG_NO_TABCOL_DATA: p = "Pas de données pour la table %s colonne %s"; break;
- case MSG_NO_TABLE_DEL: p = "Delete non autorisé pour les tables %s "; break;
- case MSG_NO_TAB_DATA: p = "Pas de données pour la table %s"; break;
- case MSG_NO_VCT_DELETE: p = "Délétion Partielle non implémentée pour les fichiers VCT"; break;
- case MSG_NO_ZIP_DELETE: p = "Delete sur fichier Zip non encore implementé"; break;
- case MSG_OPENING: p = "Ouverture"; break;
- case MSG_OPEN_EMPTY_FILE: p = "Ouverture du fichier vide %s: %s"; break;
- case MSG_OPEN_ERROR: p = "Erreur d'ouverture %d en mode %d sur %s: "; break;
- case MSG_OPEN_ERROR_IS: p = "Erreur à l'ouverture de %s: %s"; break;
- case MSG_OPEN_MODE_ERROR: p = "Erreur d'ouverture(%s) %d sur %s"; break;
- case MSG_OPEN_STRERROR: p = "Erreur à l'ouverture: %s"; break;
- case MSG_OPTBLK_RD_ERR: p = "Erreur à la lecture d'un bloc optimisation: %s"; break;
- case MSG_OPTBLK_WR_ERR: p = "Erreur à l'écriture d'un bloc optimisation: %s"; break;
- case MSG_OPTIMIZING: p = "Optimisation de "; break;
- case MSG_OPT_BMAP_RD_ERR: p = "Erreur en lecture des bitmaps d'optimisation: %s"; break;
- case MSG_OPT_BMAP_WR_ERR: p = "Erreur en écriture des bitmaps d'optimisation: %s"; break;
- case MSG_OPT_CANCELLED: p = "Optimisation interrompue par l'utilisateur"; break;
- case MSG_OPT_DVAL_RD_ERR: p = "Erreur en lecture des valeurs distinctes: %s"; break;
- case MSG_OPT_DVAL_WR_ERR: p = "Erreur en écriture des valeurs distinctes: %s"; break;
- case MSG_OPT_HEAD_RD_ERR: p = "Erreur en lecture de l'entête du fichier opt: %s"; break;
- case MSG_OPT_HEAD_WR_ERR: p = "Erreur en écriture de l'entête du fichier opt: %s"; break;
- case MSG_OPT_LOGIC_ERR: p = "Erreur logique dans SetBitmap, i=%d"; break;
- case MSG_OPT_MAX_RD_ERR: p = "Erreur en lecture des valeurs maxi: %s"; break;
- case MSG_OPT_MAX_WR_ERR: p = "Erreur en écriture des valeurs maxi: %s"; break;
- case MSG_OPT_MIN_RD_ERR: p = "Erreur en lecture des valeurs mini: %s"; break;
- case MSG_OPT_MIN_WR_ERR: p = "Erreur en écriture des valeurs mini: %s"; break;
- case MSG_OPT_NOT_MATCH: p = "Le fichier opt %s n'est pas à jour"; break;
- case MSG_PAGE_ERROR: p = "Erreur de pagination"; break;
- case MSG_PARM_CNT_MISS: p = "Disparité du nombre de Paramètres"; break;
- case MSG_PREC_VBLP_NULL: p = "ARRAY SetPrecision: Vblp est NULL"; break;
- case MSG_PRIV_INSTR: p = "Instruction privilégiée"; break;
- case MSG_PROCADD_ERROR: p = "Erreur %d sur l'adresse de %s"; break;
- case MSG_QUERY_CANCELLED: p = "Requête interrompue par l'utilisateur"; break;
- case MSG_RANGE_NO_JOIN: p = "Range non compatible avec les index de jointure"; break;
- case MSG_RC_READING: p = "rc=%d en lecture de la table %s"; break;
- case MSG_READY: p = "Prêt"; break;
- case MSG_READ_ERROR: p = "Erreur en lecture sur %s: %s"; break;
- case MSG_READ_ONLY: p = "Cette table protégée en lecture seule ne peut être modifiée"; break;
- case MSG_READ_SEEK_ERROR: p = "Erreur de recherche en lecture: %s"; break;
- case MSG_REGISTER_ERR: p = "Enregistrement NS impossible, préfix='%s' et href='%s'"; break;
- case MSG_REMOVE_ERROR: p = "Erreur en supprimant %s: %s"; break;
- case MSG_RENAME_ERROR: p = "Erreur renommant %s en %s: %s"; break;
- case MSG_ROWID_NOT_IMPL: p = "RowNumber non implémenté pour les tables de type %s"; break;
- case MSG_SEC_KEY_FIRST: p = "Les sections et clés doivent être insérées en premier"; break;
- case MSG_SEC_NAME_FIRST: p = "Le nom de section doit être en tête de liste en insertion"; break;
- case MSG_SEP_IN_FIELD: p = "Le champ %d contient le caractère séparateur"; break;
- case MSG_SEQUENCE_ERROR: p = "HSTMT: Allocation hors séquence"; break;
- case MSG_SETEOF_ERROR: p = "Erreur %d dans SetEndOfFile"; break;
- case MSG_SETRECPOS_NIY: p = "SetRecpos non implémenté pour ce type de table"; break;
- case MSG_SET_STR_TRUNC: p = "SetValue: Chaîne de caractères tronquée"; break;
- case MSG_SFP_ERROR: p = "Erreur sur SetFilePointer: %s"; break;
- case MSG_SHARED_LIB_ERR: p = "Erreur au chargement de la librairie partagée %s: %s"; break;
- case MSG_SINGLE_STEP: p = "Pas à pas"; break;
- case MSG_SORTING_VAL: p = "Tri de %d valeurs"; break;
- case MSG_SPCOL_READONLY: p = "La colonne spéciale %s est en lecture seulement"; break;
- case MSG_SQL_CONF_ERROR: p = "Erreur SQL: SQL_CONFORMANCE"; break;
- case MSG_SRCH_CLOSE_ERR: p = "Erreur à la fermeture de l'Handle de recherche"; break;
- case MSG_SRC_TABLE_UNDEF: p = "La table source n'est pas définie"; break;
- case MSG_STACK_OVERFLOW: p = "Dépassement de capacité de la pile"; break;
- case MSG_TABDIR_READONLY: p = "Les tables DIR sont en lecture seulement"; break;
- case MSG_TABLE_NOT_OPT: p = "Table non optimisable"; break;
- case MSG_TABLE_NO_INDEX: p = "La table %s n'est pas indexable"; break;
- case MSG_TABLE_READ_ONLY: p = "Les tables %s sont en lecture seulement "; break;
- case MSG_TABMUL_READONLY: p = "Les tables multiples sont en lecture seulement"; break;
- case MSG_TOO_MANY_FIELDS: p = "Trop de champs ligne %d de %s"; break;
- case MSG_TOO_MANY_JUMPS: p = "Trop de niveaux de saut"; break;
- case MSG_TOO_MANY_KEYS: p = "Trop de clés (%d)"; break;
- case MSG_TO_BLK_IS_NULL: p = "To Blk est nul"; break;
- case MSG_TRUNCATE_ERROR: p = "Erreur en troncation: %s"; break;
- case MSG_TRUNC_BY_ESTIM: p = "Tronqué par l'option Estimate"; break;
- case MSG_TYPE_MISMATCH: p = "Clé et source ne sont pas du même type"; break;
- case MSG_TYPE_VALUE_ERR: p = "Colonne %s: disparité type(%s)/valeur(%s)"; break;
- case MSG_UNBALANCE_QUOTE: p = "Appostrophe en trop ligne %d"; break;
- case MSG_UNDEFINED_AM: p = "COLBLK %s: méthode d'accès indéfinie"; break;
- case MSG_UNKNOWN_EXCPT: p = "Exception non répertoriée"; break;
- case MSG_UNMATCH_FIL_ARG: p = "Argument de filtre dépareillé"; break;
- case MSG_UPDATE_ERROR: p = "Erreur en Update sur %s"; break;
- case MSG_UPD_ZIP_NOT_IMP: p = "Mise à jour des tables ZDOS non encore implementé"; break;
- case MSG_VALSTR_TOO_LONG: p = "Valeur %s trop longue pour une chaîne de longueur %d"; break;
- case MSG_VALTYPE_NOMATCH: p = "Disparité types de valeur"; break;
- case MSG_VALUE_ERROR: p = "Colonne %s: bloc valeur nul"; break;
- case MSG_VALUE_TOO_BIG: p = "Valeur %lld trop grande pour la colonne %s"; break;
- case MSG_VALUE_TOO_LONG: p = "Valeur %s trop longue pour la colonne %s de longueur %d"; break;
- case MSG_VAL_ALLOC_ERR: p = "Allocation impossible du noeud valeur"; break;
- case MSG_VIR_NO_DELETE: p = "Delete impossible sur les tables %s"; break;
- case MSG_VIR_READ_ONLY: p = "Les tables virtuelles %s sont en lecture seulement"; break;
- case MSG_VOID_FIRST_ARG: p = "Le premier argument ne doit pas être vide"; break;
- case MSG_WORK_AREA: p = "Espace de travail: %s"; break;
- case MSG_WRITE_SEEK_ERR: p = "Erreur de recherche en écriture: %s"; break;
- case MSG_WRITE_STRERROR: p = "Erreur en écriture sur %s: %s"; break;
- case MSG_WRITING: p = "Ecriture"; break;
- case MSG_WRITING_ERROR: p = "Erreur à l'écriture de %s: %s"; break;
- case MSG_WS_CONV_ERR: p = "Erreur de convertion de %s en WS"; break;
- case MSG_XCOL_MISMATCH: p = "La colonne %s ne correspond pas à l'index"; break;
- case MSG_XFILE_READERR: p = "Erreur %d en lisant le fichier index"; break;
- case MSG_XFILE_WRITERR: p = "Erreur en écrivant le fichier index: %s"; break;
- case MSG_XMLTAB_INIT_ERR: p = "Erreur d'initialisation de la table XML"; break;
- case MSG_XML_INIT_ERROR: p = "Erreur d'initialisation du nouveau fichier XML"; break;
- case MSG_XPATH_CNTX_ERR: p = "Le nouveau contexte XPath ne peut être créé"; break;
- case MSG_XPATH_EVAL_ERR: p = "Impossible d'évaluer l'emplacement xpath '%s'"; break;
- case MSG_XPATH_NOT_SUPP: p = "Xpath non supporté colonne %s"; break;
diff --git a/storage/connect/frids.h b/storage/connect/frids.h
deleted file mode 100644
index 561dbb68837..00000000000
--- a/storage/connect/frids.h
+++ /dev/null
@@ -1,46 +0,0 @@
- case IDS_TABLES: p = "Table Entêtes"; break;
- case IDS_TAB_01: p = "Catalogue"; break;
- case IDS_TAB_02: p = "Schéma"; break;
- case IDS_TAB_03: p = "Nom"; break;
- case IDS_TAB_04: p = "Type"; break;
- case IDS_TAB_05: p = "Remarque"; break;
- case IDS_COLUMNS: p = "Colonne Entêtes"; break;
- case IDS_COL_01: p = "Cat_Table"; break;
- case IDS_COL_02: p = "Schem_Table"; break;
- case IDS_COL_03: p = "Nom_Table"; break;
- case IDS_COL_04: p = "Nom_Colonne"; break;
- case IDS_COL_05: p = "Type_Données"; break;
- case IDS_COL_06: p = "Nom_Type"; break;
- case IDS_COL_07: p = "Précision"; break;
- case IDS_COL_08: p = "Longueur"; break;
- case IDS_COL_09: p = "Echelle"; break;
- case IDS_COL_10: p = "Base"; break;
- case IDS_COL_11: p = "Nullifiable"; break;
- case IDS_COL_12: p = "Remarques"; break;
- case IDS_PKEY: p = "Clé Entêtes"; break;
- case IDS_PKY_01: p = "Cat_Table"; break;
- case IDS_PKY_02: p = "Schem_Table"; break;
- case IDS_PKY_03: p = "Nom_Table"; break;
- case IDS_PKY_04: p = "Nom_Colonne"; break;
- case IDS_PKY_05: p = "Numéro_Clé"; break;
- case IDS_PKY_06: p = "Nom_Clé"; break;
- case IDS_STAT: p = "Stat Entêtes"; break;
- case IDS_STA_01: p = "Table_Catalog"; break;
- case IDS_STA_02: p = "Table_Schema"; break;
- case IDS_STA_03: p = "Table_Name"; break;
- case IDS_STA_04: p = "Non_Unique"; break;
- case IDS_STA_05: p = "Index_Qualifier"; break;
- case IDS_STA_06: p = "Index_Name"; break;
- case IDS_STA_07: p = "Type"; break;
- case IDS_STA_08: p = "Seq_in_Index"; break;
- case IDS_STA_09: p = "Column_Name"; break;
- case IDS_STA_10: p = "Collation"; break;
- case IDS_STA_11: p = "Cardinality"; break;
- case IDS_STA_12: p = "Pages"; break;
- case IDS_STA_13: p = "Filter_Condition"; break;
- case IDS_DRIVER: p = "Driver Entêtes"; break;
- case IDS_DRV_01: p = "Description"; break;
- case IDS_DRV_02: p = "Attributs"; break;
- case IDS_DSRC: p = "DataSrc Entêtes"; break;
- case IDS_DSC_01: p = "Nom"; break;
- case IDS_DSC_02: p = "Description"; break;
diff --git a/storage/connect/frmsg.h b/storage/connect/frmsg.h
deleted file mode 100644
index d58779b948f..00000000000
--- a/storage/connect/frmsg.h
+++ /dev/null
@@ -1,320 +0,0 @@
-#define MSG_ACCESS_VIOLATN "Violation accès mémoire"
-#define MSG_ADD_BAD_TYPE "Ajout d'une valeur de type %s non conforme dans un tableau %s"
-#define MSG_ALLOC_ERROR "Erreur d'allocation de %s"
-#define MSG_ANSWER_TYPE "Réponse de type"
-#define MSG_API_CONF_ERROR "Erreur SQL: API_CONFORMANCE"
-#define MSG_APPL_NOT_INIT "Application non initialisée"
-#define MSG_ARRAY_BNDS_EXCD "Hors limite de tableau"
-#define MSG_BAD_ARRAY_OPER "Les tableaux doivent utiliser l'opérateur IN"
-#define MSG_BAD_ARRAY_TYPE "Type=%d invalide pour un tableau"
-#define MSG_BAD_ARRAY_VAL "Les tableaux doivent avoir le même nombre de valeurs"
-#define MSG_BAD_BIN_FMT "Format invalide %c pour la colonne BIN %s"
-#define MSG_BAD_BLK_ESTIM "Nombre de blocs supérieur à l'estimation"
-#define MSG_BAD_BLK_SIZE "Taille du bloc %d non conforme"
-#define MSG_BAD_BYTE_NUM "Le nombre d'octets écrits est faux"
-#define MSG_BAD_BYTE_READ "Le nombre d'octets lus est faux"
-#define MSG_BAD_COL_TYPE "Type invalide %s pour la colonne %s"
-#define MSG_BAD_COL_XPATH "Xpath invalide colonne %s de la table HTML %s"
-#define MSG_BAD_CONST_TYPE "Type=%d invalide pour une constante"
-#define MSG_BAD_CONV_TYPE "Convertion de type invalide %d"
-#define MSG_BAD_DATETIME "Valeur date/temps invalide"
-#define MSG_BAD_DBF_FILE "Le fichier DBF %s est altéré"
-#define MSG_BAD_DBF_REC "Fichier DBF %s altéré enregistrement %d"
-#define MSG_BAD_DBF_TYPE "Type DBF %c non supporté colonne %s"
-#define MSG_BAD_DIRECTORY "Répertoire invalide %s: %s"
-#define MSG_BAD_FIELD_RANK "Rang %d invalide pour la colonne %s"
-#define MSG_BAD_FIELD_TYPE "Mauvais type de champ %s"
-#define MSG_BAD_FILE_HANDLE "Handle de fichier invalide: %s"
-#define MSG_BAD_FILTER "Mauvais filtre: Opc=%d B_T=%d %d Type=%d %d"
-#define MSG_BAD_FILTER_CONV "Conversion filtre incorrecte, B_T=%d,%d"
-#define MSG_BAD_FILTER_OP "Opérateur de filtre invalide %d"
-#define MSG_BAD_FLD_FORMAT "Format invalide pour le champs %d de %s"
-#define MSG_BAD_FLD_LENGTH "Champs %s trop long (%s --> %d) ligne %d de %s"
-#define MSG_BAD_FREQ_SET "Spécification erronnée de Freq pour la colonne %s"
-#define MSG_BAD_FUNC_MODE "%s: mode invalide %d"
-#define MSG_BAD_HANDLE_VAL "Valeur Handle invalide"
-#define MSG_BAD_HEADER "Fichier %s: bloc en-tête altéré"
-#define MSG_BAD_HEAD_END "Lecture fin d'en-tête impossible"
-#define MSG_BAD_INDEX_FILE "Fichier index %s corrompu"
-#define MSG_BAD_LINEFLD_FMT "Format invalide ligne %d champs %d de %s"
-#define MSG_BAD_LINE_LEN "Longueur ligne non égale à Lrecl"
-#define MSG_BAD_LRECL "Disparité lrecl table/fichier (%d,%hd)"
-#define MSG_BAD_NODE_TYPE "Type noeud erroné pour la table"
-#define MSG_BAD_OFFSET_VAL "Nul offset invalide pour une table CSV"
-#define MSG_BAD_OPEN_MODE "Mode d'ouverture invalide %d"
-#define MSG_BAD_PARAM_TYPE "%.8s: Paramètre de type=%d invalide"
-#define MSG_BAD_PARM_COUNT "Nombre de paramètres incohérent"
-#define MSG_BAD_QUOTE_FIELD "Quote manquante dans %s champs %d ligne %d"
-#define MSG_BAD_READ_NUMBER "Mauvais nombre %d de valeurs lues dans %s"
-#define MSG_BAD_RECFM "Recfm type %d invalide pour DOSCOL"
-#define MSG_BAD_RECFM_VAL "Valeur invalide %d de Recfm"
-#define MSG_BAD_SET_CASE "La casse d'un tableau ne peut pas passer de non respect à respecter"
-#define MSG_BAD_SET_STRING "SetValue: appel invalide pour STRING"
-#define MSG_BAD_SPECIAL_COL "Colonne spéciale invalide %s"
-#define MSG_BAD_SPEC_COLUMN "Colonne spéciale invalide pour ce type de table"
-#define MSG_BAD_TABLE_TYPE "Type invalide %s pour la table %s"
-#define MSG_BAD_TYPE_LIKE "Type(%d)= %d invalide pour LIKE"
-#define MSG_BAD_VALBLK_INDX "Valeur hors limites de l'index du bloc de valeurs"
-#define MSG_BAD_VALBLK_TYPE "Type=%d invalide pour un bloc de valeurs"
-#define MSG_BAD_VALNODE "Type %d invalide pour le noeud valeur colonne %s"
-#define MSG_BAD_VALUE_TYPE "Type de valeur invalide %d"
-#define MSG_BAD_VAL_UPDATE "Impossible de déterminer quelle valeur %s doit être mise à jour"
-#define MSG_BAS_NS_LIST "Format invalide de la liste des espace-noms"
-#define MSG_BIN_F_TOO_LONG "Valeur trop longue pour le champ %s (%d --> %d)"
-#define MSG_BIN_MODE_FAIL "Echec mode binaire: %s"
-#define MSG_BLKTYPLEN_MISM "Disparité types/longueurs de bloc dans SetValue"
-#define MSG_BLK_IS_NULL "Blk est nul"
-#define MSG_BREAKPOINT "Point de contrôle"
-#define MSG_BUILD_INDEX "Construction index %s sur %s"
-#define MSG_CANNOT_OPEN "Ouverture impossible de %s"
-#define MSG_CHSIZE_ERROR "Erreur dans chsize: %s"
-#define MSG_COL_ALLOC_ERR "Allocation impossible du noeud colonne"
-#define MSG_COL_ISNOT_TABLE "La colonne %s n'est pas dans la table %s"
-#define MSG_COL_NOT_SORTED "La colonne %s de la table %s n'est pas triée"
-#define MSG_COL_NUM_MISM "Disparité du nombre de colonnes"
-#define MSG_COM_ERROR "Erreur Com"
-#define MSG_CONCAT_SUBNODE "Concaténation de sous-noeuds impossible"
-#define MSG_CONNECT_CANCEL "Connection interrompue par l'utilisateur"
-#define MSG_CONTROL_C_EXIT "Exit par Ctrl-C"
-#define MSG_DATABASE_LOADED "Base de données %s chargée"
-#define MSG_DATA_MISALIGN "Mauvais alignement pour ce type de données"
-#define MSG_DBASE_FILE "Fichier dBASE dbf: "
-#define MSG_DEF_ALLOC_ERROR "Erreur d'allocation de la classe DEF %s"
-#define MSG_DEL_FILE_ERR "Erreur à l'effacement de %s"
-#define MSG_DEL_READ_ERROR "Delete: erreur en lecture req=%d len=%d"
-#define MSG_DEL_WRITE_ERROR "Delete: erreur en écriture: %s"
-#define MSG_DEPREC_FLAG "Option Flag périmée, utiliser Coltype"
-#define MSG_DLL_LOAD_ERROR "Erreur %d au chargement du module %s"
-#define MSG_DOM_NOT_SUPP "MS-DOM non supporté par cette version"
-#define MSG_DVAL_NOTIN_LIST "Valeur %s non trouvée dans la liste des valeurs distinctes de la colonne %s"
-#define MSG_EMPTY_DOC "Document vide"
-#define MSG_EMPTY_FILE "%s du fichier vide %s: "
-#define MSG_EOF_AFTER_LINE "Fin de fichier après la ligne %d"
-#define MSG_EOF_INDEX_FILE "EOF lisant le fichier index"
-#define MSG_ERROR_IN_LSK "Erreur %d dans lseek64"
-#define MSG_ERROR_IN_SFP "Erreur %d dans SetFilePointer"
-#define MSG_ERR_READING_REC "Erreur lisant l'enregistrement %d de %s"
-#define MSG_FAIL_ADD_NODE "L'ajout du noeud %s dans la table a échoué"
-#define MSG_FETCH_NO_RES "Fetch: Pas de Résultats"
-#define MSG_FIELD_TOO_LONG "Valeur trop longue pour le champs %d ligne %d"
-#define MSG_FILELEN_ERROR "Erreur dans %s pour %s"
-#define MSG_FILE_IS_EMPTY "Le fichier %s est vide"
-#define MSG_FILE_MAP_ERR "Erreur de File mapping"
-#define MSG_FILE_MAP_ERROR "CreateFileMapping %s erreur rc=%d"
-#define MSG_FILE_OPEN_YET "Fichier %s déjà ouvert"
-#define MSG_FILE_UNFOUND "Fichier %s non trouvé"
-#define MSG_FLD_TOO_LNG_FOR "Champs %d trop long pour %s ligne %d de %s"
-#define MSG_FLT_BAD_RESULT "Virgule flottante: résultat inexacte"
-#define MSG_FLT_DENORMAL_OP "Opérande virgule flottante non normalisé"
-#define MSG_FLT_INVALID_OP "Opération virgule flottante invalide"
-#define MSG_FLT_OVERFLOW "Dépassement de capacité virgule flottante"
-#define MSG_FLT_STACK_CHECK "Virgule flottante: Erreur de la pile"
-#define MSG_FLT_UNDERFLOW "Sous-dépassement de capacité virgule flottante"
-#define MSG_FLT_ZERO_DIVIDE "Virgule flottante: division par zéro"
-#define MSG_FMT_WRITE_NIY "L'écriture des fichiers %s n'est pas encore implémentée"
-#define MSG_FOXPRO_FILE "Fichier FoxPro: "
-#define MSG_FPUTS_ERROR "Erreur dans fputs: %s"
-#define MSG_FSEEK_ERROR "Erreur dans fseek: %s"
-#define MSG_FSETPOS_ERROR "Erreur dans fseek pour i=%d"
-#define MSG_FTELL_ERROR "Erreur dans ftell enregistrement=%d: %s"
-#define MSG_FUNCTION_ERROR "Erreur dans %s: %d"
-#define MSG_FUNC_ERRNO "Erreur %d dans %s"
-#define MSG_FUNC_ERROR "Erreur dans %s"
-#define MSG_FUNC_ERR_S "Erreur dans %s: %s"
-#define MSG_FWRITE_ERROR "Erreur dans fwrite: %s"
-#define MSG_GET_DIST_VALS "Récupération des valeurs distinctes de "
-#define MSG_GET_FUNC_ERR "Erreur en recherche de la fonction %s: %s"
-#define MSG_GLOBAL_ERROR "Erreur d'allocation de Global (taille=%d)\n"
-#define MSG_GUARD_PAGE "Violation de page de garde"
-#define MSG_GZOPEN_ERROR "gzopen %s: erreur %d sur %s"
-#define MSG_ILLEGAL_INSTR "Instruction illégale"
-#define MSG_ILL_FILTER_CONV "Conversion implicite illégale dans un filtre"
-#define MSG_INDEX_NOT_UNIQ "L'index n'est pas Unique"
-#define MSG_INDEX_YET_ON "L'index %s existe déjà sur %s"
-#define MSG_INDX_COL_NOTIN "La colonne index %s n'existe pas dans la table %s"
-#define MSG_INDX_EXIST_YET "L'entrée index existe déjà"
-#define MSG_INIT_FAILED "L'initialisation de %s a échoué"
-#define MSG_INT_COL_ERROR "Erreur interne sur la colonne index %s"
-#define MSG_INT_OVERFLOW "Dépassement de capacité sur entier"
-#define MSG_INT_ZERO_DIVIDE "Division entière par zéro"
-#define MSG_INVALID_DISP "Disposition invalide"
-#define MSG_INVALID_FTYPE "SBV: Ftype %d invalide"
-#define MSG_INVALID_HANDLE "Poignée invalide"
-#define MSG_INVALID_OPER "Opérateur invalide %d pour %s"
-#define MSG_INV_COLUMN_TYPE "Type %d Invalide pour la colonne %s"
-#define MSG_INV_COL_TYPE "Type de colonne %s invalide"
-#define MSG_INV_DEF_READ "Lecture différée invalide rc=%d"
-#define MSG_INV_DIRCOL_OFST "Offset invalide pour une colonne DIR"
-#define MSG_INV_MAP_POS "Position mémoire invalide"
-#define MSG_INV_RAND_ACC "L'accès aléatoire d'une table non optimisée est impossible"
-#define MSG_INV_REC_POS "Position d'enregistrement invalide"
-#define MSG_INV_RESULT_TYPE "Type de résultat invalide %s"
-#define MSG_INV_UPDT_TABLE "Table %s invalide pour Update"
-#define MSG_IN_WITHOUT_SUB "IN ou EXISTS sans tableau ou subquery"
-#define MSG_KEY_ALLOC_ERR "Erreur d'allocation d'un bloc offset clé"
-#define MSG_KEY_ALLOC_ERROR "Erreur d'allocation mémoire, Klen=%d n=%d"
-#define MSG_LINE_TOO_LONG "La nouvelle ligne est trop longue"
-#define MSG_LIST "--Liste--"
-#define MSG_LOADING_FAILED "Le chargement de %s a échoué"
-#define MSG_LRECL_TOO_SMALL "Lrecl trop petit (longueur en-tête = %d)"
-#define MSG_MAKE_EMPTY_FILE "Génération du fichier vide %s: %s"
-#define MSG_MAKING "Génération"
-#define MSG_MALLOC_ERROR "Allocation mémoire impossible par %s"
-#define MSG_MAP_VIEW_ERROR "MapViewOfFile %s erreur rc=%d"
-#define MSG_MAXSIZE_ERROR "Maxsize incalculable sur table ouverte"
-#define MSG_MEM_ALLOC_ERR "Erreur d'allocation mémoire, taille %s = %d"
-#define MSG_MEM_ALLOC_ERROR "Erreur d'allocation mémoire"
-#define MSG_MISPLACED_QUOTE "Appostrophe mal placée ligne %d"
-#define MSG_MISSING_ARG "Argument manquant pour l'opérateur %d"
-#define MSG_MISSING_FIELD "Champs %d manquant dans %s ligne %d"
-#define MSG_MISSING_FNAME "Nom du fichier manquant"
-#define MSG_MISSING_NODE "Noeud %s manquant dans %s"
-#define MSG_MISSING_ROWNODE "Impossible de trouver le noeud de la ligne %d"
-#define MSG_MIS_TAG_LIST "Liste des balises colonne manquante"
-#define MSG_MUL_MAKECOL_ERR "Erreur logique dans TABMUL::MakeCol"
-#define MSG_NAME_CONV_ERR "Erreur de convertion du nom de noeud"
-#define MSG_NEW_DOC_FAILED "Impossible de créer le nouveau document"
-#define MSG_NEW_RETURN_NULL "NULL renvoyé par New dans PlugEvalLike"
-#define MSG_NEXT_FILE_ERROR "Erreur en recherche du fichier suivant. rc=%s"
-#define MSG_NONCONT_EXCEPT "Exception non-continuable"
-#define MSG_NOP_ZLIB_INDEX "L'indexage d'une table zlib non optimisée est impossible"
-#define MSG_NOT_A_DBF_FILE "Le fichier n'a pas le format dBASE dbf "
-#define MSG_NOT_FIXED_LEN "Fichier %s non fixe, len=%d lrecl=%d"
-#define MSG_NO_0DH_HEAD "0DH manquant en fin d'en-tête (dbc=%d)"
-#define MSG_NO_ACTIVE_DB "Pas de base de données active"
-#define MSG_NO_CHAR_FROM "Conversion de type %d en caractères impossible"
-#define MSG_NO_DATE_FMT "Pas de format date pour le valblock de type %d"
-#define MSG_NO_DEF_FNCCOL "Colonne fonction par défaut introuvable"
-#define MSG_NO_DEF_PIVOTCOL "Colonne pivot par défaut introuvable"
-#define MSG_NO_DIR_INDX_RD "Pas d'accès directe des tables %s"
-#define MSG_NO_FEAT_SUPPORT "%s non supporté dans cette version"
-#define MSG_NO_FLD_FORMAT "Format absent pour le champs %d de %s"
-#define MSG_NO_FORMAT_COL "Type COLUMN informattable"
-#define MSG_NO_FORMAT_TYPE "Le format ne peut pas être défini à partir du type %d"
-#define MSG_NO_INDEX_READ "Pas d'accès directe des tables multiples"
-#define MSG_NO_KEY_COL "Pas de colonne clé trouvée"
-#define MSG_NO_KEY_UPDATE "Le nom des clés ne peut pas être modifié"
-#define MSG_NO_MAP_INSERT "MAP incompatible avec Insert"
-#define MSG_NO_MATCHING_COL "Pas de colonne correspondant à %s dans %s"
-#define MSG_NO_MATCH_COL "Colonne correspondante introuvable"
-#define MSG_NO_MEMORY "Mémoire pleine"
-#define MSG_NO_MODE_PADDED "Mode non supporté pour les fichiers 'padded'"
-#define MSG_NO_MUL_VCT "Les tables VCT ne peuvent pas être multiples"
-#define MSG_NO_ODBC_DELETE "Delete ne devrait pas être appelé pour les tables ODBC"
-#define MSG_NO_ODBC_DIRECT "Accès directe des tables ODBC non encore implémenté"
-#define MSG_NO_ODBC_MUL "Multiple(2) non supporté pour les tables ODBC"
-#define MSG_NO_ODBC_SPECOL "Pas de colonne spéciale ODBC"
-#define MSG_NO_PART_DEL "Delete partiel des fichier %s impossible"
-#define MSG_NO_PART_MAP "Mapping partiel non implémenté pour cet OS"
-#define MSG_NO_PAR_BLK_INS "Insertion de bloc partiel impossible"
-#define MSG_NO_PIV_DIR_ACC "Pas d'accès directe aux tables PIVOT"
-#define MSG_NO_READ_32 "Lecture de 32 octets impossible"
-#define MSG_NO_RECOV_SPACE "Espace non recouvrable dans le fichier index"
-#define MSG_NO_ROWID_FOR_AM "Accès direct impossible de ROWID pour les tables de type %s"
-#define MSG_NO_ROW_NODE "Le nom du Rownode n'est pas défini"
-#define MSG_NO_SECTION_NAME "Nom de section manquant"
-#define MSG_NO_SEC_UPDATE "Les noms de section ne peuvent pas être modifiés"
-#define MSG_NO_SETPOS_YET "SetPos pas encore implémenté pour les fichier %s"
-#define MSG_NO_SPEC_COL "Pas de colonne spéciales MYSQL"
-#define MSG_NO_SUB_VAL "Pas de sous-value d'un tableau de type %d"
-#define MSG_NO_TABCOL_DATA "Pas de données pour la table %s colonne %s"
-#define MSG_NO_TABLE_DEL "Delete non autorisé pour les tables %s "
-#define MSG_NO_TAB_DATA "Pas de données pour la table %s"
-#define MSG_NO_VCT_DELETE "Délétion Partielle non implémentée pour les fichiers VCT"
-#define MSG_NO_ZIP_DELETE "Delete sur fichier Zip non encore implementé"
-#define MSG_OPENING "Ouverture"
-#define MSG_OPEN_EMPTY_FILE "Ouverture du fichier vide %s: %s"
-#define MSG_OPEN_ERROR "Erreur d'ouverture %d en mode %d sur %s: "
-#define MSG_OPEN_ERROR_IS "Erreur à l'ouverture de %s: %s"
-#define MSG_OPEN_MODE_ERROR "Erreur d'ouverture(%s) %d sur %s"
-#define MSG_OPEN_STRERROR "Erreur à l'ouverture: %s"
-#define MSG_OPTBLK_RD_ERR "Erreur à la lecture d'un bloc optimisation: %s"
-#define MSG_OPTBLK_WR_ERR "Erreur à l'écriture d'un bloc optimisation: %s"
-#define MSG_OPTIMIZING "Optimisation de "
-#define MSG_OPT_BMAP_RD_ERR "Erreur en lecture des bitmaps d'optimisation: %s"
-#define MSG_OPT_BMAP_WR_ERR "Erreur en écriture des bitmaps d'optimisation: %s"
-#define MSG_OPT_CANCELLED "Optimisation interrompue par l'utilisateur"
-#define MSG_OPT_DVAL_RD_ERR "Erreur en lecture des valeurs distinctes: %s"
-#define MSG_OPT_DVAL_WR_ERR "Erreur en écriture des valeurs distinctes: %s"
-#define MSG_OPT_HEAD_RD_ERR "Erreur en lecture de l'entête du fichier opt: %s"
-#define MSG_OPT_HEAD_WR_ERR "Erreur en écriture de l'entête du fichier opt: %s"
-#define MSG_OPT_LOGIC_ERR "Erreur logique dans SetBitmap, i=%d"
-#define MSG_OPT_MAX_RD_ERR "Erreur en lecture des valeurs maxi: %s"
-#define MSG_OPT_MAX_WR_ERR "Erreur en écriture des valeurs maxi: %s"
-#define MSG_OPT_MIN_RD_ERR "Erreur en lecture des valeurs mini: %s"
-#define MSG_OPT_MIN_WR_ERR "Erreur en écriture des valeurs mini: %s"
-#define MSG_OPT_NOT_MATCH "Le fichier opt %s n'est pas à jour"
-#define MSG_PAGE_ERROR "Erreur de pagination"
-#define MSG_PARM_CNT_MISS "Disparité du nombre de Paramètres"
-#define MSG_PREC_VBLP_NULL "ARRAY SetPrecision: Vblp est NULL"
-#define MSG_PRIV_INSTR "Instruction privilégiée"
-#define MSG_PROCADD_ERROR "Erreur %d sur l'adresse de %s"
-#define MSG_QUERY_CANCELLED "Requête interrompue par l'utilisateur"
-#define MSG_RANGE_NO_JOIN "Range non compatible avec les index de jointure"
-#define MSG_RC_READING "rc=%d en lecture de la table %s"
-#define MSG_READY "Prêt"
-#define MSG_READ_ERROR "Erreur en lecture sur %s: %s"
-#define MSG_READ_ONLY "Cette table protégée en lecture seule ne peut être modifiée"
-#define MSG_READ_SEEK_ERROR "Erreur de recherche en lecture: %s"
-#define MSG_REGISTER_ERR "Enregistrement NS impossible, préfix='%s' et href='%s'"
-#define MSG_REMOVE_ERROR "Erreur en supprimant %s: %s"
-#define MSG_RENAME_ERROR "Erreur renommant %s en %s: %s"
-#define MSG_ROWID_NOT_IMPL "RowNumber non implémenté pour les tables de type %s"
-#define MSG_SEC_KEY_FIRST "Les sections et clés doivent être insérées en premier"
-#define MSG_SEC_NAME_FIRST "Le nom de section doit être en tête de liste en insertion"
-#define MSG_SEP_IN_FIELD "Le champ %d contient le caractère séparateur"
-#define MSG_SEQUENCE_ERROR "HSTMT: Allocation hors séquence"
-#define MSG_SETEOF_ERROR "Erreur %d dans SetEndOfFile"
-#define MSG_SETRECPOS_NIY "SetRecpos non implémenté pour ce type de table"
-#define MSG_SET_STR_TRUNC "SetValue: Chaîne de caractères tronquée"
-#define MSG_SFP_ERROR "Erreur sur SetFilePointer: %s"
-#define MSG_SHARED_LIB_ERR "Erreur au chargement de la librairie partagée %s: %s"
-#define MSG_SINGLE_STEP "Pas à pas"
-#define MSG_SORTING_VAL "Tri de %d valeurs"
-#define MSG_SPCOL_READONLY "La colonne spéciale %s est en lecture seulement"
-#define MSG_SQL_CONF_ERROR "Erreur SQL: SQL_CONFORMANCE"
-#define MSG_SRCH_CLOSE_ERR "Erreur à la fermeture de l'Handle de recherche"
-#define MSG_SRC_TABLE_UNDEF "La table source n'est pas définie"
-#define MSG_STACK_OVERFLOW "Dépassement de capacité de la pile"
-#define MSG_TABDIR_READONLY "Les tables DIR sont en lecture seulement"
-#define MSG_TABLE_NOT_OPT "Table non optimisable"
-#define MSG_TABLE_NO_INDEX "La table %s n'est pas indexable"
-#define MSG_TABLE_READ_ONLY "Les tables %s sont en lecture seulement "
-#define MSG_TABMUL_READONLY "Les tables multiples sont en lecture seulement"
-#define MSG_TOO_MANY_FIELDS "Trop de champs ligne %d de %s"
-#define MSG_TOO_MANY_JUMPS "Trop de niveaux de saut"
-#define MSG_TOO_MANY_KEYS "Trop de clés (%d)"
-#define MSG_TO_BLK_IS_NULL "To Blk est nul"
-#define MSG_TRUNCATE_ERROR "Erreur en troncation: %s"
-#define MSG_TRUNC_BY_ESTIM "Tronqué par l'option Estimate"
-#define MSG_TYPE_MISMATCH "Clé et source ne sont pas du même type"
-#define MSG_TYPE_VALUE_ERR "Colonne %s: disparité type(%s)/valeur(%s)"
-#define MSG_UNBALANCE_QUOTE "Appostrophe en trop ligne %d"
-#define MSG_UNDEFINED_AM "COLBLK %s: méthode d'accès indéfinie"
-#define MSG_UNKNOWN_EXCPT "Exception non répertoriée"
-#define MSG_UNMATCH_FIL_ARG "Argument de filtre dépareillé"
-#define MSG_UPDATE_ERROR "Erreur en Update sur %s"
-#define MSG_UPD_ZIP_NOT_IMP "Mise à jour des tables ZDOS non encore implementé"
-#define MSG_VALSTR_TOO_LONG "Valeur %s trop longue pour une chaîne de longueur %d"
-#define MSG_VALTYPE_NOMATCH "Disparité types de valeur"
-#define MSG_VALUE_ERROR "Colonne %s: bloc valeur nul"
-#define MSG_VALUE_TOO_BIG "Valeur %lld trop grande pour la colonne %s"
-#define MSG_VALUE_TOO_LONG "Valeur %s trop longue pour la colonne %s de longueur %d"
-#define MSG_VAL_ALLOC_ERR "Allocation impossible du noeud valeur"
-#define MSG_VIR_NO_DELETE "Delete impossible sur les tables %s"
-#define MSG_VIR_READ_ONLY "Les tables virtuelles %s sont en lecture seulement"
-#define MSG_VOID_FIRST_ARG "Le premier argument ne doit pas être vide"
-#define MSG_WORK_AREA "Espace de travail: %s"
-#define MSG_WRITE_SEEK_ERR "Erreur de recherche en écriture: %s"
-#define MSG_WRITE_STRERROR "Erreur en écriture sur %s: %s"
-#define MSG_WRITING "Ecriture"
-#define MSG_WRITING_ERROR "Erreur à l'écriture de %s: %s"
-#define MSG_WS_CONV_ERR "Erreur de convertion de %s en WS"
-#define MSG_XCOL_MISMATCH "La colonne %s ne correspond pas à l'index"
-#define MSG_XFILE_READERR "Erreur %d en lisant le fichier index"
-#define MSG_XFILE_WRITERR "Erreur en écrivant le fichier index: %s"
-#define MSG_XMLTAB_INIT_ERR "Erreur d'initialisation de la table XML"
-#define MSG_XML_INIT_ERROR "Erreur d'initialisation du nouveau fichier XML"
-#define MSG_XPATH_CNTX_ERR "Le nouveau contexte XPath ne peut être créé"
-#define MSG_XPATH_EVAL_ERR "Impossible d'évaluer l'emplacement xpath '%s'"
-#define MSG_XPATH_NOT_SUPP "Xpath non supporté colonne %s"
diff --git a/storage/connect/frmsg1.h b/storage/connect/frmsg1.h
deleted file mode 100644
index e88440a3a9c..00000000000
--- a/storage/connect/frmsg1.h
+++ /dev/null
@@ -1,1013 +0,0 @@
-#define MSG_ACCESS_VIOLATN "Violation accès mémoire"
-#define MSG_ACT_ALLOC_FAIL "PlugInitLang: Erreur d'allocation du bloc Activity"
-#define MSG_ADDVAL_ERROR "Erreur %d dans AddValue"
-#define MSG_ADD_BAD_TYPE "Ajout d'une valeur de type %s non conforme dans un tableau %s"
-#define MSG_ADD_NULL_DOM "Ajout de la chaîne %s à un domaine nul"
-#define MSG_ADPOS_IN_DICTP "ADPOS au travail dans User_Dictp"
-#define MSG_AFTER " après: "
-#define MSG_ALG_CHOICE_AUTO "Le choix du meilleur algorithme est automatique"
-#define MSG_ALG_CHOICE_BAD "Choix d'algorithme invalide, remis à AUTO"
-#define MSG_ALG_CHOICE_QRY "Utilise l'algorithme 'Query'"
-#define MSG_ALG_CURLY_BRK "Le choix de l'algorithme dépend des accolades externes"
-#define MSG_ALLOC_ERROR "Erreur d'allocation de %s"
-#define MSG_ALL_DELETED "Toutes les lignes enlevées en %.2lf sec"
-#define MSG_ALTER_DB_ERR "Impossible de déterminer la base de données à modifier"
-#define MSG_AMBIG_COL_QUAL "Qualificateur ambigu %s pour la colonne %s"
-#define MSG_AMBIG_CORREL "Select %s.* corrélation ambigue"
-#define MSG_AMBIG_SPEC_COL "Colonne spéciale ambiguë %s"
-#define MSG_ANSWER_TYPE "Réponse de type"
-#define MSG_API_CONF_ERROR "Erreur SQL: API_CONFORMANCE"
-#define MSG_APPL_ACCESSIBLE "Application %s accessible"
-#define MSG_APPL_ACTIVE "Application %s encore active"
-#define MSG_APPL_BAD_SAVE "Application %s partiellement sauvegardée"
-#define MSG_APPL_CREATED "Application %s crée"
-#define MSG_APPL_IS_ACTIVE "Application déjà active"
-#define MSG_APPL_NOT_INIT "Application non initialisée"
-#define MSG_APPL_NOT_LOADED "Application non chargée"
-#define MSG_APPL_QUIT "Fin de l'application %s"
-#define MSG_APPL_SAVED "Application %s sauvegardée"
-#define MSG_APP_STILL_ACTIV "Application du langage %s encore active (non libérable)"
-#define MSG_AREAFILE_NOTFND "Fichier Area introuvable"
-#define MSG_ARGS_SYNTAX_ERR "?SetArgs erreur de syntaxe: %s inattendu après %s"
-#define MSG_ARG_ALREADY_SET "Argument %d déjà alloué"
-#define MSG_ARG_NOT_AN_ATTR "L'argument n'est pas un attribut (type %d erroné)"
-#define MSG_ARG_OUT_CONTEXT "Argument de type @ utilisé hors contexte"
-#define MSG_ARG_OUT_RANGE "Argument de phrase valant %d hors limite"
-#define MSG_ARG_PTR_NOSEM "Argument valant %d pointe sur un noeud sans Sem"
-#define MSG_ARG_PTR_NOSEMS "Argument valant %d pointe sur un noeud sans sémantique"
-#define MSG_ARG_REF_LOOP "?Bouclage entre références croisées des arguments"
-#define MSG_ARG_TWO_CONST "Le 2ème argument de %s doit être constant"
-#define MSG_ARRAY_ALLOC_ERR "Erreur d'allocation mémoire dans ARRAY"
-#define MSG_ARRAY_BNDS_EXCD "Hors limite de tableau"
-#define MSG_ARRAY_ERROR "Erreur de fonctionnement k=%d n=%d"
-#define MSG_ATTRIBUTE_ERROR "Erreur règle %u attribut %s: "
-#define MSG_ATT_NOT_CASE "Mauvaise valeur %d pour attribut (pas une CaseValue)"
-#define MSG_ATT_POSCODE_BIG "Code attribut %d trop grand (max=%d)"
-#define MSG_AVGLEN_ERROR "avglen doit être entre %d et %d"
-#define MSG_BAD_AGGREG_FUNC "Fonction aggrégée %d non supportée"
-#define MSG_BAD_ARGTYPES "Argument de type invalide pour %s"
-#define MSG_BAD_ARGUMENTS "Argument not attachés pour %s"
-#define MSG_BAD_ARG_NUM "Nombre d'arguments invalide %d"
-#define MSG_BAD_ARG_TYPE "Type d'argument %d invalide"
-#define MSG_BAD_ARRAY_OPER "Les tableaux doivent utiliser l'opérateur IN"
-#define MSG_BAD_ARRAY_TYPE "Type=%d invalide pour un tableau"
-#define MSG_BAD_ARRAY_VAL "Les tableaux doivent avoir le même nombre de valeurs"
-#define MSG_BAD_BIN_FMT "Format invalide %c pour la colonne BIN %s"
-#define MSG_BAD_BLK_ESTIM "Nombre de blocs supérieur à l'estimation"
-#define MSG_BAD_BLK_SIZE "Taille du bloc %d non conforme"
-#define MSG_BAD_BYTE_NUM "Le nombre d'octets écrits est faux"
-#define MSG_BAD_BYTE_READ "Le nombre d'octets lus est faux"
-#define MSG_BAD_CARDINALITY "Appel invalide de Cardinality pour une table multiple"
-#define MSG_BAD_CASE_SPEC "Min/Maj: spécification %c incorrecte, recommencez: "
-#define MSG_BAD_CHAR_SPEC "Spécification '%s' invalide pour caractère"
-#define MSG_BAD_CHECK_TYPE "Sous-type %d invalide pour CheckColumn"
-#define MSG_BAD_CHECK_VAL "Valeur pour Check invalide '%s'"
-#define MSG_BAD_COLCRT_ARG "COLCRT: Arg invalide (type=%hd, domain=%hd)"
-#define MSG_BAD_COLDEF_TYPE "Coldefs: type illégal %d"
-#define MSG_BAD_COLIST_ITEM "Elément invalide dans une Colist"
-#define MSG_BAD_COLIST_TYPE "Mauvais type=%d pour une Colist"
-#define MSG_BAD_COLSIZE "Colsize %d trop petit pour cette base de données"
-#define MSG_BAD_COL_ENTRY "Entrée invalide pour la colonne %s"
-#define MSG_BAD_COL_FORMAT "Type de formattage %d invalide pour une colonne"
-#define MSG_BAD_COL_IN_FILT "Colonne incorrecte dans un filtre"
-#define MSG_BAD_COL_QUALIF "Qualificateur invalide %s pour la colonne %s"
-#define MSG_BAD_COL_TYPE "Type invalide %s pour la colonne %s"
-#define MSG_BAD_COL_XPATH "Xpath invalide colonne %s de la table HTML %s"
-#define MSG_BAD_COMPARE_OP "Opérateur de comparaison %d invalide"
-#define MSG_BAD_CONST_TYPE "Type=%d invalide pour une constante"
-#define MSG_BAD_CONV_TYPE "Convertion de type invalide %d"
-#define MSG_BAD_CORREL "Select %s.* corrélation absente"
-#define MSG_BAD_DATETIME "Valeur date/temps invalide"
-#define MSG_BAD_DATE_OPER "Opérateur de date inattendu %d"
-#define MSG_BAD_DBF_FILE "Le fichier DBF %s est altéré"
-#define MSG_BAD_DBF_REC "Fichier DBF %s altéré enregistrement %d"
-#define MSG_BAD_DBF_TYPE "Type DBF %c non supporté"
-#define MSG_BAD_DEF_ARG "Argument invalide pour INDEXDEF (type=%hd, domain=%hd)"
-#define MSG_BAD_DEF_READ "EOF inattendue en lecture différée"
-#define MSG_BAD_DEF_TYPE "Type de colonne invalide"
-#define MSG_BAD_DIRECTORY "Répertoire invalide %s: %s"
-#define MSG_BAD_DIST_JN_FIL "Filtre de jointure distincte invalide"
-#define MSG_BAD_DIST_JOIN "Spécification invalide de jointure distincte"
-#define MSG_BAD_DOM_COL_DEF "Définition de colonnes invalide pour un domaine"
-#define MSG_BAD_DOM_VALUE "La valeur %d n'appartient pas au domaine"
-#define MSG_BAD_EDIT_INIT "Coparm: édition %s initialisée improprement"
-#define MSG_BAD_EVAL_TYPE "Fonction scalaire de type=%d invalide"
-#define MSG_BAD_EXEC_MODE "Mode d'exécution invalide '%s'"
-#define MSG_BAD_EXP_ARGTYPE "Argument de type %d invalide pour une expression"
-#define MSG_BAD_EXP_OPER "Opérateur=%d invalide pour expression"
-#define MSG_BAD_FETCH_RC "Code retour inattendu de Fetch %d"
-#define MSG_BAD_FIELD_FMT "Format de champ invalide %c pour %s"
-#define MSG_BAD_FIELD_RANK "Rang %d invalide pour la colonne %s"
-#define MSG_BAD_FIELD_TYPE "Mauvais type de champ %s"
-#define MSG_BAD_FILE_HANDLE "Handle de fichier invalide: %s"
-#define MSG_BAD_FILE_LIST "La section liste de fichiers est erronée"
-#define MSG_BAD_FILTER "Mauvais filtre: Opc=%d B_T=%d %d Type=%d %d"
-#define MSG_BAD_FILTER_CONV "Conversion filtre incorrecte, B_T=%d,%d"
-#define MSG_BAD_FILTER_LINK "Opérateur de chaînage illégal %d"
-#define MSG_BAD_FILTER_OP "Opérateur de filtre invalide %d"
-#define MSG_BAD_FILTEST_OP "Opérateur invalide %d %d pour FilTest"
-#define MSG_BAD_FLD_FORMAT "Format invalide pour le champs %d de %s"
-#define MSG_BAD_FLD_LENGTH "Champs %s trop long (%s --> %d) ligne %d de %s"
-#define MSG_BAD_FLOAT_CONV "Convertion invalide d'un tableau flottant"
-#define MSG_BAD_FPARM_NEXT "Coparm: FPARM avec Next non nul"
-#define MSG_BAD_FREQ_SET "Spécification erronnée de Freq pour la colonne %s"
-#define MSG_BAD_FUNC_ARG "Funcarg de type %d non implémenté"
-#define MSG_BAD_FUNC_ARGTYP "Mauvais type d'argument=%d pour une fonction"
-#define MSG_BAD_FUNC_MODE "%s: mode invalide %d"
-#define MSG_BAD_GENRE "Genre est invalide"
-#define MSG_BAD_GETVIEW_RET "GetView: type de retour %d invalide"
-#define MSG_BAD_HANDLE_VAL "Valeur Handle invalide"
-#define MSG_BAD_HAV_FILTER "Filtre Having sur une requête non groupée"
-#define MSG_BAD_HAV_FILTYPE "Filtre invalide pour clause Having"
-#define MSG_BAD_HEADER "Fichier %s: bloc en-tête altéré"
-#define MSG_BAD_HEADER_VAL "Valeur invalide pour Header"
-#define MSG_BAD_HEAD_END "Lecture fin d'en-tête impossible"
-#define MSG_BAD_INDEX_COL "Colonne %s invalide pour index %s"
-#define MSG_BAD_INDEX_DEF "Définition invalide pour index %s"
-#define MSG_BAD_INDEX_FILE "Fichier index %s corrompu"
-#define MSG_BAD_INDEX_PART "Définition colonne invalide pour index %s"
-#define MSG_BAD_INPUT "Entrée incorrecte"
-#define MSG_BAD_IN_ARGTYPE "Argument de type invalide pour l'opérateur IN"
-#define MSG_BAD_IN_ENDING "Erreur: fin de chaîne IN invalide"
-#define MSG_BAD_IN_STRING "La chaîne IN commence ou finie par des caractères invalides %c ... %c"
-#define MSG_BAD_JCOL_TYPE "Erreur logique JCT: disparité des types colonnes"
-#define MSG_BAD_JOIN_EXP "Expression invalide pour une jointure"
-#define MSG_BAD_JOIN_FILTER "Filtre de jointure invalide"
-#define MSG_BAD_JOIN_OP "Opérateur de joint invalide %d"
-#define MSG_BAD_LANG_SIZE "Le fichier langage a une mauvaise taille %d"
-#define MSG_BAD_LINEFLD_FMT "Format invalide ligne %d champs %d de %s"
-#define MSG_BAD_LINE_LEN "Longueur ligne non égale à Lrecl"
-#define MSG_BAD_LIST_TYPE "Type de liste invalide %d"
-#define MSG_BAD_LOCALE "Locale invalide %s"
-#define MSG_BAD_LOCDFON_ARG "Mauvais paramètre pour LOCDFON"
-#define MSG_BAD_LOCNODE_USE "Usage inattendu de LOCNODE"
-#define MSG_BAD_LRECL "Disparité lrecl table/fichier (%d,%hd)"
-#define MSG_BAD_MAX_HAVING "MAXTMP trop petit pour Having"
-#define MSG_BAD_MAX_NREC "MaxRec=%d ne correspond pas à MaxBlk=%d Nrec=%d"
-#define MSG_BAD_MAX_PARAM "Mauvais paramètres pour spécifier une valeur maximum"
-#define MSG_BAD_MAX_SETTING "Mauvaise valeur '%c' pour max"
-#define MSG_BAD_MERGE_TYPE "Le type %d ne pas être intercallé"
-#define MSG_BAD_NODE_TYPE "Type noeud erroné pour la table"
-#define MSG_BAD_OFFSET_VAL "Nul offset invalide pour une table CSV"
-#define MSG_BAD_OPEN_MODE "Mode d'ouverture invalide %d"
-#define MSG_BAD_OPERATOR "Opérateur invalide %s"
-#define MSG_BAD_ORDER_MODE "Mode de tri %c invalide"
-#define MSG_BAD_ORDER_TYPE "Tri sur objet de type=%d invalide"
-#define MSG_BAD_OUTER_JOIN "Jointure externe invalide sur table enfant"
-#define MSG_BAD_PAD_ARGTYP "Argument de type invalide pour Pad ou Justify"
-#define MSG_BAD_PARAMETERS "%.8s: Mauvais paramètres"
-#define MSG_BAD_PARAM_TYPE "%.8s: Paramètre de type=%d invalide"
-#define MSG_BAD_PARM_COUNT "Nombre de paramètres incohérent"
-#define MSG_BAD_PHASE_NUM "Numéro de phrase %d hors limite"
-#define MSG_BAD_PHRASE_NB "numéro de phrase hors limite %d rc=%d\n"
-#define MSG_BAD_POS_CODE "POS_code invalide %d"
-#define MSG_BAD_POS_TYPE "Type de POS_code invalide %d"
-#define MSG_BAD_PROJNUM "Mauvais projnum %d pour la colonne %s"
-#define MSG_BAD_QUERY_OPEN "Mode invalide %d pour l'ouverture d'une requête"
-#define MSG_BAD_QUERY_TYPE "Type de requête %d invalide pour %s"
-#define MSG_BAD_QUOTE_FIELD "Quote manquante dans %s champs %d ligne %d"
-#define MSG_BAD_READ_NUMBER "Mauvais nombre %d de valeurs lues dans %s"
-#define MSG_BAD_RECFM "Recfm type %d invalide pour DOSCOL"
-#define MSG_BAD_RECFM_VAL "Valeur invalide %d de Recfm"
-#define MSG_BAD_RESULT_TYPE "Mauvais type de résultat %d pour %s"
-#define MSG_BAD_RETURN_TYPE "Type de retour %d incorrect"
-#define MSG_BAD_ROW_VALIST "Liste de valeurs invalide pour ROW"
-#define MSG_BAD_ROW_VALNB "Nombre de valeurs inégal dans la liste"
-#define MSG_BAD_SCF_ARGTYPE "Argument %d de type=%s invalide pour %s"
-#define MSG_BAD_SEM_DOMAIN "Domain .%d invalide"
-#define MSG_BAD_SETTINGS "Certaines spécifications sont incompatibles avec le type de la table"
-#define MSG_BAD_SET_CASE "La casse d'un tableau ne peut pas passer de non respect à respecter"
-#define MSG_BAD_SET_STRING "SetValue: appel invalide pour STRING"
-#define MSG_BAD_SET_TYPE "Set type %hd invalide"
-#define MSG_BAD_SPECIAL_CMD "Commande spéciale invalide"
-#define MSG_BAD_SPECIAL_COL "Colonne spéciale invalide %s"
-#define MSG_BAD_SPEC_COLUMN "Colonne spéciale invalide pour ce type de table"
-#define MSG_BAD_SQL_PARAM "Paramètre SQL invalide pour FindColblk"
-#define MSG_BAD_SUBLST_TYPE "Coparm: type %d de sous-liste invalide"
-#define MSG_BAD_SUBSEL_IN_X "Sub-select invalide pour une expression"
-#define MSG_BAD_SUBSEL_TYPE "Type %d invalide retourné de Sub-Select"
-#define MSG_BAD_SUB_RESULT "Résultat indéfini de fonction Sub-Select"
-#define MSG_BAD_SUB_SELECT "Sub-select invalide comme argument de fonction"
-#define MSG_BAD_TABLE_LINE "Ligne '%s' illégale ou tronquée dans la section Tables"
-#define MSG_BAD_TABLE_LIST "Table %s absente de la liste des tables"
-#define MSG_BAD_TABLE_TYPE "Type invalide %s pour la table %s"
-#define MSG_BAD_TEST_TYPE "BlockTest sur tableau: types dépareillés %s %s"
-#define MSG_BAD_TRIM_ARGTYP "Argument de type invalide pour Trim"
-#define MSG_BAD_TYPE_FOR_IN "Types d'argument incompatibles pour la fonction IN"
-#define MSG_BAD_TYPE_FOR_S "Type incorrecte %d pour %s(%d)"
-#define MSG_BAD_TYPE_LIKE "Type(%d)= %d invalide pour LIKE"
-#define MSG_BAD_UPD_COR "Le qualificateur %s de la colonne %s ne se refère pas à la table mise à jour %s"
-#define MSG_BAD_USERBLK_LEN "Mauvaise longueur à l'écriture du bloc utilisateur"
-#define MSG_BAD_USETEMP "Usetemp invalide '%s'"
-#define MSG_BAD_USETEMP_VAL "Valeur pour Usetemp invalide %d"
-#define MSG_BAD_VALBLK_INDX "Valeur hors limites de l'index du bloc de valeurs"
-#define MSG_BAD_VALBLK_TYPE "Type=%d invalide pour un bloc de valeurs"
-#define MSG_BAD_VALNODE "Type %d invalide pour le noeud valeur colonne %s"
-#define MSG_BAD_VALUE_TYPE "Type de valeur invalide %d"
-#define MSG_BAD_VAL_UPDATE "Impossible de déterminer quelle valeur %s doit être mise à jour"
-#define MSG_BAD_VIEW_OPEN "Mode invalide %d pour l'ouverture d'une View"
-#define MSG_BAD_XMODE_VAL "Mode d'exécution %d invalide"
-#define MSG_BAD_XOBJ_TYPE "Mauvais type de Xobject %d"
-#define MSG_BAS_NS_LIST "Format invalide de la liste des espace-noms"
-#define MSG_BIN_F_TOO_LONG "Valeur trop longue pour le champ %s (%d --> %d)"
-#define MSG_BIN_MODE_FAIL "Echec mode binaire: %s"
-#define MSG_BLKTYPLEN_MISM "Disparité types/longueurs de bloc dans SetValue"
-#define MSG_BLK_IS_NULL "Blk est nul"
-#define MSG_BLOCK_NO_MATCH "Bloc non correspondant"
-#define MSG_BREAKPOINT "Point de contrôle"
-#define MSG_BUFF_TOO_SMALL "GetColData: Buffer trop petit"
-#define MSG_BUFSIZE_ERROR "Erreur en recherchant la taille du buffer"
-#define MSG_BUILDING_GROUPS "Formation des groupes"
-#define MSG_BUILD_DIST_GRPS "Formation des groupes distinctes"
-#define MSG_BUILD_INDEX "Construction index %s sur %s"
-#define MSG_BXP_NULL "Bxp nul dans PUTFON"
-#define MSG_CANNOT_OPEN "Ouverture impossible de %s"
-#define MSG_CD_ONE_STEP "Count Distinct doit être exécuté en une seule étape"
-#define MSG_CD_ORDER_ERROR "Erreur de tri dans Count Distinct"
-#define MSG_CHECKING_ROWS "Test des lignes à mettre à jour"
-#define MSG_CHECK_LEVEL "Niveau de vérification fixé à %u"
-#define MSG_CHSIZE_ERROR "Erreur dans chsize: %s"
-#define MSG_CLN_NOT_IN_JOIN "La colonne C%d n'est pas dans le join"
-#define MSG_CNTDIS_COL_LOST "Colonne du Count Distinct perdue"
-#define MSG_COLIST_BAD_TYPE "Type=%d invalide pour Colist"
-#define MSG_COLNAM_TOO_LONG "Nom de colonne trop long"
-#define MSG_COLSEC_TOO_BIG "Section colonne trop grande, table %s (%d)"
-#define MSG_COLS_REDUCED " (réduit par Maxcol)"
-#define MSG_COLUMN_ERROR "Erreur de colonne"
-#define MSG_COLUMN_MISMATCH "Colonne %s dépareillée"
-#define MSG_COLUMN_NOT_KEY "La colonne jointe R%d.%s n'est pas une clé"
-#define MSG_COL_ALLOC_ERR "Allocation impossible du noeud colonne"
-#define MSG_COL_ALLOC_ERROR "Erreur d'allocation mémoire pour la colonne %d"
-#define MSG_COL_HAS_NO_DEF "La colonne %s n'est pas définie"
-#define MSG_COL_INVAL_TABLE "La colonne %s.%s n'existe pas dans la table %s alias %s"
-#define MSG_COL_ISNOT_TABLE "La colonne %s n'est pas dans la table %s"
-#define MSG_COL_NB_MISM "Le nombre de colonnes ne correspond pas"
-#define MSG_COL_NOTIN_GRPBY "La colonne %s n'est pas dans la liste de Group By"
-#define MSG_COL_NOTIN_TABLE "La colonne %s n'est dans aucune table"
-#define MSG_COL_NOTIN_UPDT "%s n'appartient pas à la table mise à jour %s"
-#define MSG_COL_NOT_CODED "La colonne %s n'est pas codifiée"
-#define MSG_COL_NOT_EXIST "La colonne %s n'existe pas dans %s"
-#define MSG_COL_NOT_FOUND "La colonne %s n'est pas dans la table %s"
-#define MSG_COL_NOT_IN_DB "La colonne %s de la table %s n'est pas dans la base de données"
-#define MSG_COL_NOT_IN_JOIN "La colonne %s n'est pas dans le join"
-#define MSG_COL_NOT_SORTED "La colonne %s de la table %s n'est pas triée"
-#define MSG_COL_NUM_MISM "Disparité du nombre de colonnes"
-#define MSG_COL_USED_TWICE "Colonne %s utilisée deux fois ???"
-#define MSG_COMPUTE_ERROR "Erreur dans Compute, op=%d"
-#define MSG_COMPUTE_NIY "Compute non implémenté pour TOKEN"
-#define MSG_COMPUTING "Calculs en cours"
-#define MSG_COMPUTING_DIST "Comptage des valeurs distinctes"
-#define MSG_COMPUTING_FUNC "Calcul de(s) fonction(s)"
-#define MSG_COM_ERROR "Erreur Com"
-#define MSG_CONCAT_SUBNODE "Concaténation de sous-noeuds impossible"
-#define MSG_CONNECTED "Connecté"
-#define MSG_CONNECT_CANCEL "Connection interrompue par l'utilisateur"
-#define MSG_CONNECT_ERROR "Erreur %d se connectant à %s"
-#define MSG_CONN_CLOSED "%s(%d) fermée"
-#define MSG_CONN_CREATED "Connexion %s crée"
-#define MSG_CONN_DROPPED "Connexion %s supprimée"
-#define MSG_CONN_OPEN "%s(%d) ouverte (%s)"
-#define MSG_CONN_SUC_OPEN "%s(%d) ouverte avec succès"
-#define MSG_CONTROL_C_EXIT "Exit par Ctrl-C"
-#define MSG_COPY_BAD_PHASE "Copie de liste invalide en phase %d"
-#define MSG_COPY_INV_TYPE "Coparm: type non supporté %d"
-#define MSG_CORREL_NO_QRY "Les sous-requêtes corrélées ne peuvent pas être de type QRY"
-#define MSG_CREATED_PLUGDB " Créé par PlugDB %s "
-#define MSG_CURSOR_SET "Curseur remis à %d"
-#define MSG_DATABASE_ACTIVE "Base de données %s activée"
-#define MSG_DATABASE_LOADED "Base de données %s chargée"
-#define MSG_DATA_IS_NULL "ExecSpecialCmd: data est NULL"
-#define MSG_DATA_MISALIGN "Mauvais alignement pour ce type de données"
-#define MSG_DBASE_FILE "Fichier dBASE dbf: "
-#define MSG_DB_ALREADY_DEF "Base de données %s déjà définie"
-#define MSG_DB_ALTERED "Base de données modifiée"
-#define MSG_DB_CREATED "Base de données %s créée"
-#define MSG_DB_NOT_SPEC "Base de données non spécifiée"
-#define MSG_DB_REMOVED "Base de données %s retirée de la liste"
-#define MSG_DB_SORT_ERROR "Erreur de tri DB"
-#define MSG_DB_STOPPED "Arrêt de la base de données %s"
-#define MSG_DEBUG_NOT_ACTIV "Mode Debug inactif"
-#define MSG_DEBUG_SET_INV "Invalide pour Debug: %c"
-#define MSG_DEF_ALLOC_ERROR "Erreur d'allocation de la classe DEF %s"
-#define MSG_DELETING_ROWS "Suppression des lignes"
-#define MSG_DEL_FILE_ERR "Erreur à l'effacement de %s"
-#define MSG_DEL_READ_ERROR "Delete: erreur en lecture req=%d len=%d"
-#define MSG_DEL_WRITE_ERROR "Delete: erreur en écriture: %s"
-#define MSG_DEPREC_FLAG "Option Flag périmée, utiliser Coltype"
-#define MSG_DICTIONARY "Dictionnaire "
-#define MSG_DIRECT_VARTOK "Accès direct aux règles du Variable Token non implémenté"
-#define MSG_DISCONNECTED "Déconnecté"
-#define MSG_DISTINCT_ERROR "Plus d'un élément fonctionel DISTINCT"
-#define MSG_DISTINCT_ROWS "Sélection des lignes distinctes"
-#define MSG_DISTINCT_VALUES "Extraction des valeurs distinctes"
-#define MSG_DIS_NOHEAD_JOIN "Jointure distincte sur une table non en tête"
-#define MSG_DLL_LOAD_ERROR "Erreur %d au chargement du module %s"
-#define MSG_DOMAIN_EMPTY "Le domaine %s est vide"
-#define MSG_DOMAIN_ERROR "Colonne %s: disparité domaine(%s)/valeur(%s)"
-#define MSG_DOMAIN_FULL "Le domaine %s est plein (max=%d)"
-#define MSG_DOM_FILE_ERROR "Fichier domain %s introuvable"
-#define MSG_DOM_NOT_SUPP "MS-DOM non supporté par cette version"
-#define MSG_DOM_OPEN_ERROR "Erreur d'ouverture du domaine: %s"
-#define MSG_DOM_READ_ERROR "Erreur %d en lecture de domaine: %s"
-#define MSG_DOM_READ_ONLY "La table domaine %s est en lecture seulement"
-#define MSG_DOM_WRITE_ERROR "Erreur %d en écriture de domaine: %s"
-#define MSG_DONE "Effectué, rc=%d"
-#define MSG_DOSALMEM_NOMEM "Erreur d'allocation, pas assez de mémoire"
-#define MSG_DROP_DB_ERR "Echec du Drop sur le base de données %s"
-#define MSG_DSORT_LOG_ERROR "Kindex: Erreur logique de tri distincte"
-#define MSG_DUMMY_NO_COLS "Les tables DUMMY ne peuvent pas avoir de colonne"
-#define MSG_DUPLICAT_COUNT "Count sur plus d'une colonne"
-#define MSG_DUP_COL_NAME "La colonne %s existe en double"
-#define MSG_DUP_PROJNUM "Non unique projnum %d pour la colonne %s"
-#define MSG_DVAL_NOTIN_LIST "Valeur %s non trouvée dans la liste des valeurs distinctes de la colonne %s"
-#define MSG_EMPTY_DOC "Document vide"
-#define MSG_EMPTY_FILE "%s du fichier vide %s: "
-#define MSG_ENDSTR_MISMATCH "Fins de chaîne et de noeud ne correspondent pas"
-#define MSG_END_OF_DELETE "%d ligne(s) enlevée(s) en %.2lf sec"
-#define MSG_END_OF_INSERT "%d ligne(s) insérée(s) en %.2lf sec"
-#define MSG_END_OF_QUERY "%d ligne(s) extraite(s) en %.2lf sec"
-#define MSG_END_OF_UPDATE "%d ligne(s) modifiée(s) en %.2lf sec"
-#define MSG_EOF_AFTER_LINE "Fin de fichier après la ligne %d"
-#define MSG_EOF_INDEX_FILE "EOF lisant le fichier index"
-#define MSG_ERASED " et effacée"
-#define MSG_ERASE_FAILED " (échec de l'effacement)"
-#define MSG_ERROR "Erreur"
-#define MSG_ERROR_IN_LSK "Erreur %d dans lseek64"
-#define MSG_ERROR_IN_SFP "Erreur %d dans SetFilePointer"
-#define MSG_ERROR_NO_PARM "Paramètre absent (valide seulement pour %.8s.1 et %.8s.5)"
-#define MSG_ERROR_OPENING "Erreur à l'ouverture de : "
-#define MSG_ERR_NUM_GT_MAX "Erreur: Numval (%d) plus grand que Maxnum (%d)"
-#define MSG_ERR_READING_REC "Erreur lisant l'enregistrement %d de %s"
-#define MSG_ERR_RET_RULE "Retour erreur, règle=%u"
-#define MSG_ERR_RET_TYPE "Retour erreur, type=%d"
-#define MSG_EVAL_EXPIRED "Cette version d'évaluation est expirée"
-#define MSG_EVAL_ONLY "L'utilisation de cette Dll est pour évaluation seulement"
-#define MSG_EXECUTING "Exécution"
-#define MSG_EXECUTION_ERROR "Erreur d'exécution"
-#define MSG_EXEC_MODE_IS "Le mode d'exécution est %s"
-#define MSG_EXEC_MODE_RESET ". Mode remis à Execute"
-#define MSG_EXEC_MODE_SET "Mode d'exécution fixé à %s"
-#define MSG_EXIT_EVAL_ERR "Erreur pendant l'évaluation de Exit"
-#define MSG_EXIT_FROM_LANG "Fin du langage %s version %d.%d"
-#define MSG_FAIL_ADD_NODE "L'ajout du noeud %s dans la table a échoué"
-#define MSG_FETCHING_DATA "Recherche des données"
-#define MSG_FETCHING_ROWS "Recherche des lignes"
-#define MSG_FETCH_NO_RES "Fetch: Pas de Résultats"
-#define MSG_FIELD_TOO_LONG "Valeur trop longue pour le champs %d ligne %d"
-#define MSG_FILELEN_ERROR "Erreur dans %s pour %s"
-#define MSG_FILE_CLOSE_ERR "Erreur %d à la fermeture du fichier"
-#define MSG_FILE_IS_EMPTY "Le fichier %s est vide"
-#define MSG_FILE_MAP_ERR "Erreur de File mapping"
-#define MSG_FILE_MAP_ERROR "CreateFileMapping %s erreur rc=%d"
-#define MSG_FILE_NOT_FOUND "Fichier %s introuvable"
-#define MSG_FILE_OPEN_YET "Fichier %s déjà ouvert"
-#define MSG_FILE_UNFOUND "Fichier %s non trouvé"
-#define MSG_FILGRP_NO_TABLE "Table %d manquante pour groupe filtre"
-#define MSG_FILTER_ATTACH "Filtre passé à Attach"
-#define MSG_FILTER_NO_TABLE "Filtre: première table manquante"
-#define MSG_FIND_BAD_TYPE "Recherche dans un tableau: type non conforme %s %s"
-#define MSG_FIX_OVFLW_ADD "Dépassement de capacité en addition"
-#define MSG_FIX_OVFLW_TIMES "Dépassement de capacité en mutiplication"
-#define MSG_FIX_UNFLW_ADD "Sous dépassement de capacité en addition"
-#define MSG_FIX_UNFLW_TIMES "Sous dépassement de capacité en multiplication"
-#define MSG_FLD_TOO_LNG_FOR "Champs %d trop long pour %s ligne %d de %s"
-#define MSG_FLTST_NO_CORREL "FilTest ne devrait être appelé que pour les sous-requêtes corrélées"
-#define MSG_FLT_BAD_RESULT "Virgule flottante: résultat inexacte"
-#define MSG_FLT_DENORMAL_OP "Opérande virgule flottante non normalisé"
-#define MSG_FLT_INVALID_OP "Opération virgule flottante invalide"
-#define MSG_FLT_OVERFLOW "Dépassement de capacité virgule flottante"
-#define MSG_FLT_STACK_CHECK "Virgule flottante: Erreur de la pile"
-#define MSG_FLT_UNDERFLOW "Sous-dépassement de capacité virgule flottante"
-#define MSG_FLT_ZERO_DIVIDE "Virgule flottante: division par zéro"
-#define MSG_FMT_WRITE_NIY "L'écriture des fichiers %s n'est pas encore implémentée"
-#define MSG_FNC_NOTIN_SLIST "Fonction de tri absente de la liste de sélection"
-#define MSG_FORMAT_ERROR "Erreur de formattage"
-#define MSG_FOXPRO_FILE "Fichier FoxPro: "
-#define MSG_FPUTS_ERROR "Erreur dans fputs: %s"
-#define MSG_FSBPARP_NULL "PUTFON: fsbparp est nul"
-#define MSG_FSEEK_ERROR "Erreur dans fseek: %s"
-#define MSG_FSETPOS_ERROR "Erreur dans fseek pour i=%d"
-#define MSG_FTELL_ERROR "Erreur dans ftell enregistrement=%d: %s"
-#define MSG_FUNCTION_ERROR "Erreur dans %s: %d"
-#define MSG_FUNC_ERRNO "Erreur %d dans %s"
-#define MSG_FUNC_ERROR "Erreur dans %s"
-#define MSG_FUNC_ERR_S "Erreur dans %s: %s"
-#define MSG_FUNC_REF_DEL "Référence à une fonction définie (règle %d) qui a été supprimée"
-#define MSG_FWRITE_ERROR "Erreur dans fwrite: %s"
-#define MSG_GETCWD_ERR_NO "?getcwd %s errno=%d"
-#define MSG_GETFILESIZE_ERR "Erreur %d dans GetFileSize"
-#define MSG_GET_DIST_VALS "Récupération des valeurs distinctes de "
-#define MSG_GET_ERROR "Erreur dans %s (colonne %d)"
-#define MSG_GET_FUNC_ERR "Erreur en recherche de la fonction %s: %s"
-#define MSG_GET_NAME_ERR "Erreur en retrouvant le nom d'une table SYS"
-#define MSG_GLOBAL_ERROR "Erreur d'allocation de Global (taille=%d)\n"
-#define MSG_GRAM_ALLOC_ERR "Erreur d'allocation dans Grammar Up"
-#define MSG_GRAM_MISMATCH "Avertissement: version de GRAMMAR perimée (sauvé sous GRAMMAR v%u)"
-#define MSG_GRAM_SUBSET_ERR "Erreur d'initialisation du dictionnaire de la grammaire"
-#define MSG_GRBY_TAB_NOTIMP "Group by avec tables jointes non implémenté"
-#define MSG_GROUPBY_NOT_ALL "Group By doit inclure toutes les sélections non-fonctionnelles"
-#define MSG_GROUP_ON_FUNC "Group by invalide sur colonne fonctionnelle"
-#define MSG_GRP_COL_MISM "Disparité colonne des groupes"
-#define MSG_GRP_LIST_MISMAT "Le groupement ne couvre pas la liste de sélection"
-#define MSG_GUARD_PAGE "Violation de page de garde"
-#define MSG_GZOPEN_ERROR "gzopen %s: erreur %d sur %s"
-#define MSG_GZPUTS_ERROR "Erreur dans gzputs: %s"
-#define MSG_HANDLE_IS_NULL "%s est NULL: erreur code: %d"
-#define MSG_HARRY_COMP_NIY "Compute non implémenté pour les chaînes codées"
-#define MSG_HAVING_FILTER "Traitement du Filtre Having"
-#define MSG_HBUF_TOO_SMALL "Buffer(%d) trop petit pour entête(%d)"
-#define MSG_HEAD_OPEN_ERROR "Erreur à l'ouverture du fichier header"
-#define MSG_HEAD_READ_ERROR "Erreur en lecture du fichier header %s"
-#define MSG_HEAD_WRITE_ERR "Erreur en écriture du fichier header"
-#define MSG_HI_OFFSET_ERR "Offset supérieur non nul"
-#define MSG_HUGE_DEFAULT "Huge est %d par défault"
-#define MSG_HUGE_WARNING_1 "Mémoire Huge non compatible 16-bit pour %d\n"
-#define MSG_HUGE_WARNING_2 "Résultats imprévisibles possibles\n"
-#define MSG_IDLE "Au repos"
-#define MSG_ILLEGAL_INSTR "Instruction illégale"
-#define MSG_ILL_FILTER_CONV "Conversion implicite illégale dans un filtre"
-#define MSG_INDEX_CREATED "Index %s créé sur %s"
-#define MSG_INDEX_DEF_ERR "Erreur sauvegardant l'index définition pour %s"
-#define MSG_INDEX_DROPPED "Index %s supprimé de %s"
-#define MSG_INDEX_INIT_ERR "Echec de l'initialisation de l'index %s"
-#define MSG_INDEX_NOT_DEF "Index %s non défini"
-#define MSG_INDEX_NOT_UNIQ "L'index n'est pas Unique"
-#define MSG_INDEX_ONE_SAVE "Les index sont sauvegardés dans un fichier unique"
-#define MSG_INDEX_SEP_SAVE "Les index sont sauvegardés dans des fichiers séparés"
-#define MSG_INDEX_YET_ON "L'index %s existe déjà sur %s"
-#define MSG_INDX_ALL_DROP "Tous les index de %s supprimés"
-#define MSG_INDX_COL_NOTIN "La colonne index %s n'existe pas dans la table %s"
-#define MSG_INDX_EXIST_YET "L'entrée index existe déjà"
-#define MSG_INIT_ERROR "Erreur à l'initialisation de %s"
-#define MSG_INIT_FAILED "L'initialisation de %s a échoué"
-#define MSG_INPUT "Entrée: "
-#define MSG_INPUT_KEYBD_YET "L'entrée est déjà au clavier"
-#define MSG_INSERTING "Insertion: "
-#define MSG_INSERT_ERROR "Insert erreur: usage multiple du fichier %s"
-#define MSG_INSERT_MISMATCH "Les listes colonne et valeur ne correspondent pas"
-#define MSG_INTERNAL "interne"
-#define MSG_INT_COL_ERROR "Erreur interne sur la colonne index %s"
-#define MSG_INT_OVERFLOW "Dépassement de capacité sur entier"
-#define MSG_INT_ZERO_DIVIDE "Division entière par zéro"
-#define MSG_INVALID_BIP "Bip invalide .%d"
-#define MSG_INVALID_DISP "Disposition invalide"
-#define MSG_INVALID_FTYPE "SBV: Ftype %d invalide"
-#define MSG_INVALID_HANDLE "Poignée invalide"
-#define MSG_INVALID_OPER "Opérateur invalide %d pour %s"
-#define MSG_INVALID_OPTION "Option invalide %s"
-#define MSG_INV_COLUMN_TYPE "Type %d Invalide pour la colonne %s"
-#define MSG_INV_COL_DATATYP "Type de données %d invalide pour la colonne %d"
-#define MSG_INV_COL_NUM "Colonne invalide %d"
-#define MSG_INV_COL_TYPE "Type de colonne %s invalide"
-#define MSG_INV_CONC_BIP "Bip invalide (seuls valides: %.8s.0 .1 and .5)"
-#define MSG_INV_DATA_PATH "Chemin vers les données invalide"
-#define MSG_INV_DEF_READ "Lecture différée invalide rc=%d"
-#define MSG_INV_DIRCOL_OFST "Offset invalide pour une colonne DIR"
-#define MSG_INV_DOMAIN_TYPE "Type invalide %d"
-#define MSG_INV_FILTER "Filtre résiduel dans %s"
-#define MSG_INV_FNC_BUFTYPE "FNC: Type %d de l'argument invalide pour %s"
-#define MSG_INV_INFO_TYPE "Type d'info catalog invalide %d"
-#define MSG_INV_INIPATH "Inipath invalide "
-#define MSG_INV_MAP_POS "Position mémoire invalide"
-#define MSG_INV_OPERATOR "opérateur invalide %d\n"
-#define MSG_INV_PARAMETER "Paramètre invalide %s"
-#define MSG_INV_PARM_TYPE "Type de paramètre invalide"
-#define MSG_INV_QUALIFIER "Qalificateur '%s' invalide"
-#define MSG_INV_QUERY_TYPE "Type de requête %d invalide"
-#define MSG_INV_RAND_ACC "L'accès aléatoire d'une table non optimisée est impossible"
-#define MSG_INV_REC_POS "Position d'enregistrement invalide"
-#define MSG_INV_RESULT_TYPE "Type de résultat invalide %s"
-#define MSG_INV_SET_SUBTYPE "Type de formattage %d invalide"
-#define MSG_INV_SPECIAL_CMD "%s: Commande spéciale invalide"
-#define MSG_INV_SUBTYPE "Sous type invalide %s"
-#define MSG_INV_TOK_DOMAIN "Le domaine %s n'existe pas"
-#define MSG_INV_TOPSEM_CMD "Commande TopSem invalide %c"
-#define MSG_INV_TRANSF_USE "Usage invalide en règle transformationnelle"
-#define MSG_INV_TYPE_SPEC "Spécification de type invalide (%.8s.%d)"
-#define MSG_INV_UPDT_TABLE "Table %s invalide pour Update"
-#define MSG_INV_VALUE_LIST "Liste de valeurs invalide pour Insert"
-#define MSG_INV_WHERE_JOIN "Clause Where invalide dans une requête de jointure"
-#define MSG_INV_WORK_PATH "Chemin de travail invalide"
-#define MSG_IN_ARGTYPE_MISM "Arguments de types incompatibles pour une expression IN"
-#define MSG_IN_USE " et en activité"
-#define MSG_IN_WITHOUT_SUB "IN ou EXISTS sans tableau ou subquery"
-#define MSG_IS_NOT_CONN "%s n'est pas une connexion définie"
-#define MSG_JCT_MISS_COLS "Colonnes manquantes pour une table JCT"
-#define MSG_JCT_MISS_TABLE "Table jointe manquante pour JCT"
-#define MSG_JCT_NO_FILTER "Filtrage impossible des tables virtuelles JCT"
-#define MSG_JCT_NO_KEY "Erreur logique JCT: clé manquante"
-#define MSG_JOIN_KEY_NO_COL "La clé de jointure n'est pas une colonne"
-#define MSG_KEY_ALLOC_ERR "Erreur d'allocation d'un bloc offset clé"
-#define MSG_KEY_ALLOC_ERROR "Erreur d'allocation mémoire, Klen=%d n=%d"
-#define MSG_LANGUAGE_QUIT "%s libéré"
-#define MSG_LANG_ACTIVE "Langage %s actif"
-#define MSG_LANG_ALLOC_FAIL "PlugInitLang: Erreur d'allocation du bloc Lang"
-#define MSG_LANG_ALREADY_UP "Langage déjà en édition"
-#define MSG_LANG_BAD_SAVE "Langage %s peut-être incorrectement sauvegardé"
-#define MSG_LANG_NOT_FREED "Langage %s non libérable (pas dans la chaîne principale)"
-#define MSG_LANG_SAVED "Langage %s sauvegardé"
-#define MSG_LANG_WR_LEN_ERR "Erreur de longueur à l'écriture du bloc Lang"
-#define MSG_LDF_ALLOC_ERROR "Erreur d'allocation d'un LdfBlock"
-#define MSG_LDF_RN_MISMATCH "LDF: décalage des numéros de règle"
-#define MSG_LDF_WLEN_ERROR "Erreur de longueur en écrivant LdfData"
-#define MSG_LDF_W_LEN_ERROR "Erreur de longueur pour LdfData en écriture"
-#define MSG_LIC_NO_MYSQL "Votre licence actuelle ne permet pas l'utilisation du type MYSQL"
-#define MSG_LINEAR_ERROR "Erreur de linéarisation"
-#define MSG_LINE_LENGTH "Largeur d'impression fixée à %d"
-#define MSG_LINE_MAXLIN "Nombre de lignes de travail plafonné à %d"
-#define MSG_LINE_MAXRES "Nombre de lignes de résultat plafonné à %d"
-#define MSG_LINE_MAXTMP "Nombre de lignes intermédiaires plafonné à %d"
-#define MSG_LINE_TOO_LONG "La nouvelle ligne est trop longue"
-#define MSG_LINJOINDB_ERROR "Erreur système: appel incorrecte à LinJoinDB"
-#define MSG_LIST "--Liste--"
-#define MSG_LNG_NOT_IN_LIST "Le langage %s n'est pas dans la liste"
-#define MSG_LOADING_DB "Chargement description de la BD"
-#define MSG_LOADING_FAILED "Le chargement de %s a échoué"
-#define MSG_LOAD_CDLL_ERROR "Erreur au chargement de ConnDll: rc=%d"
-#define MSG_LOCSTRG_TOO_BIG "LOCSTRG: n trop grand ? (%d)\n"
-#define MSG_LOGICAL_ERROR "%s: Erreur logique"
-#define MSG_LRECL_TOO_SMALL "Lrecl trop petit (longueur en-tête = %d)"
-#define MSG_MAC_NO_DELETE "Pas de suppression de lignes pour les tables MAC"
-#define MSG_MAC_NO_INDEX "Pas d'accès direct aux tables MAC"
-#define MSG_MAC_READ_ONLY "Les tables MAC sont en lecture seulement"
-#define MSG_MAC_WIN_ONLY "Les tables MAC sont seulement sous Windows"
-#define MSG_MAKE_EMPTY_FILE "Génération du fichier vide %s: %s"
-#define MSG_MAKING "Génération"
-#define MSG_MAKING_DISTINCT "Regroupement des valeures distinctes"
-#define MSG_MALLOC_ERROR "Allocation mémoire impossible par %s"
-#define MSG_MALLOC_NULL "malloc retourne Null"
-#define MSG_MAP_NO_MORE "Le type %s n'est plus supporté"
-#define MSG_MAP_OBJ_ERR "Erreur %d à la fermeture du map objet"
-#define MSG_MAP_VEC_ONLY "MAP Insert permis seulement pour les tables VEC Estimate"
-#define MSG_MAP_VIEW_ERROR "MapViewOfFile %s erreur rc=%d"
-#define MSG_MAXSIZE_ERROR "Maxsize incalculable sur table ouverte"
-#define MSG_MAXTMP_TRUNCATE "Résultats intermédiaires tronqués par maxtmp=%d"
-#define MSG_MAX_BITMAP "Taille maxi des bitmaps d'optimisation fixée à %d"
-#define MSG_MEMSIZE_TOO_BIG "Erreur: memsize (%d) trop grand pour Length (%d)"
-#define MSG_MEM_ALLOC_ERR "Erreur d'allocation mémoire, taille %s = %d"
-#define MSG_MEM_ALLOC_ERROR "Erreur d'allocation mémoire"
-#define MSG_MEM_ALLOC_YET "Mémoire déjà allouée"
-#define MSG_METAFILE_NOTFND "Fichier Meta introuvable"
-#define MSG_MISPLACED_QUOTE "Appostrophe mal placée ligne %d"
-#define MSG_MISSING "Manquant: Value=%p Argval=%p Builtin=%d"
-#define MSG_MISSING_ARG "Argument manquant pour l'opérateur %d"
-#define MSG_MISSING_COL_DEF "Définition des colonnes manquante"
-#define MSG_MISSING_CONNECT "Connection #1 manquante"
-#define MSG_MISSING_EOL "Fin de ligne manquante dans %s"
-#define MSG_MISSING_FIELD "Champs %d manquant dans %s ligne %d"
-#define MSG_MISSING_FNAME "Nom du fichier manquant"
-#define MSG_MISSING_NODE "Noeud %s manquant dans %s"
-#define MSG_MISSING_POS "POS code manquant"
-#define MSG_MISSING_ROWNODE "Impossible de trouver le noeud de la ligne %d"
-#define MSG_MISSING_SERV_DB "Indication serveur et/ou base de données manquante"
-#define MSG_MISS_LEAD_COL "Colonne majeure %s manquante"
-#define MSG_MISS_NAME_LRECL "Nom du fichier et/ou LRECL manquant"
-#define MSG_MISS_TABLE_LIST "Liste des tables manquante"
-#define MSG_MISS_VCT_ELMT "Taille de bloc vectoriel manquante (Elements)"
-#define MSG_MIS_TAG_LIST "Liste des balises colonne manquante"
-#define MSG_MKEMPTY_NIY "MakeEmptyFile: pas encore implementé pour Huge et Unix"
-#define MSG_MOVE_INV_TYPE "MOVPARM: paramètre de type invalide %d"
-#define MSG_MULT_DISTINCT "Distinct utilisé plus d'une fois"
-#define MSG_MULT_KEY_ERROR "Erreur sur clé multiple k=%d n=%d"
-#define MSG_MUL_MAKECOL_ERR "Erreur logique dans TABMUL::MakeCol"
-#define MSG_MYSQL_CNC_OFF "La connexion à MySQL est fermée"
-#define MSG_MYSQL_CNC_ON "La connexion à MySQL est établie"
-#define MSG_MYSQL_NOT_SUP "Pas de support de MySQL dans cette version"
-#define MSG_MY_CNC_ALREADY "La connexion à MySQL est déjà active"
-#define MSG_NAME_CONV_ERR "Erreur de convertion du nom de noeud"
-#define MSG_NAME_IS_USED "Le nom %s est déjà utilisé"
-#define MSG_NCOL_GT_MAXCOL "Trop de colonnes (%d > %d max)"
-#define MSG_NEW_CHAR_NULL "new char(%d) retourne Null"
-#define MSG_NEW_DOC_FAILED "Impossible de créer le nouveau document"
-#define MSG_NEW_RETURN_NULL "NULL renvoyé par New dans PlugEvalLike"
-#define MSG_NEW_TABLE_ERR "La nouvelle table %s ne peut pas être chargée"
-#define MSG_NEXT_FILE_ERROR "Erreur en recherche du fichier suivant. rc=%s"
-#define MSG_NODEF_FROM_VIEW "Pas de définition de table depuis une view"
-#define MSG_NODE_FOR_CHAR "Noeud %s trouvé au lieu d'un caractère"
-#define MSG_NODE_SUBSET_ERR "Erreur d'initialisation de la zone Noeud %d"
-#define MSG_NONCONT_EXCEPT "Exception non-continuable"
-#define MSG_NON_DUP_HAVING "Clause Having dans une requête non fonctionelle"
-#define MSG_NON_EVAL_SEM "Sem non évaluée: p_no=%d"
-#define MSG_NOP_ZLIB_INDEX "L'indexage d'une table zlib non optimisée est impossible"
-#define MSG_NOT_A_DBF_FILE "Le fichier n'a pas le format dBASE dbf "
-#define MSG_NOT_ENOUGH_COLS "Pas assez de colonnes dans %s"
-#define MSG_NOT_ENOUGH_MEM "Mémoire insuffisante pour cette opération"
-#define MSG_NOT_FIXED_LEN "Fichier %s non fixe, len=%d lrecl=%d"
-#define MSG_NOT_IMPLEMENTED "Non implementé: %.8s"
-#define MSG_NOT_IMPL_JOIN "Pas implémenté pour les jointures"
-#define MSG_NOT_IMPL_SET "Pas implémenté pour les opérateurs d'ensembles"
-#define MSG_NOT_IMPL_YET "Pas encore implementé"
-#define MSG_NOT_LINEARIZED "Arborescence des tables non linéarisée"
-#define MSG_NOT_MODIFIABLE " (non modifiable)"
-#define MSG_NO_0DH_HEAD "0DH manquant en fin d'en-tête (dbc=%d)"
-#define MSG_NO_ACTIVE_APPL "Pas d'application active"
-#define MSG_NO_ACTIVE_DB "Pas de base de données active"
-#define MSG_NO_ACTIVE_UDIC "Pas de dictionaire utilisateur actif"
-#define MSG_NO_AGGR_FUNC "Fonction aggrégée %d illégale à cet endroit"
-#define MSG_NO_AREA_FILE "Fichier Area introuvable"
-#define MSG_NO_AVAIL_RESULT "Pas de résultat disponible"
-#define MSG_NO_BIG_DELETE "Délétion Partielle non implémentée pour les fichiers HUGE"
-#define MSG_NO_CHAR_FROM "Conversion de type %d en caractères impossible"
-#define MSG_NO_CLUSTER_COL "Pas de colonne optimisable"
-#define MSG_NO_COL_ADDING "Ajouter des colonnes dans une définition existante est impossible"
-#define MSG_NO_COL_DEF_AS "La définitions des colonnes est incompatible avec AS Select"
-#define MSG_NO_COL_FOUND "La section colonne %s est vide"
-#define MSG_NO_COL_IN_TABLE "La colonne %d n'est pas dans la table %s"
-#define MSG_NO_COL_SECTION "Section colonne manquante pour la table %s"
-#define MSG_NO_CONNECT_ADDR "Adresse de connection non spécifiée"
-#define MSG_NO_CONST_FILTER "Filtres constants non implementés"
-#define MSG_NO_CURLY_BRKT "Pas d'accolade de fermeture"
-#define MSG_NO_DATABASE "Base de données %s introuvable"
-#define MSG_NO_DATE_FMT "Pas de format date pour le valblock de type %d"
-#define MSG_NO_DBF_INSERT "Insert pas encore implémenté pour les fichier DBF"
-#define MSG_NO_DEF_FNCCOL "Colonne fonction par défaut introuvable"
-#define MSG_NO_DEF_PIVOTCOL "Colonne pivot par défaut introuvable"
-#define MSG_NO_DIR_INDX_RD "Pas d'accès directe des tables %s"
-#define MSG_NO_DMY_DIR_ACC "Pas d'accès direct aux tables virtuelles DUMMY"
-#define MSG_NO_DOM_DELETE "Délétion Partielle non implémentée pour les domaines"
-#define MSG_NO_DOM_MATCH "Chaîne %.8s... non touvée dans le domaine %s"
-#define MSG_NO_EDITED_LANG "Coparm: Pas de langage en édition"
-#define MSG_NO_EXP_LINK "Liaison par expression invalide pour une table JCT"
-#define MSG_NO_EXT_FILTER "Le filtrage ne peut se référer à une autre table"
-#define MSG_NO_EXT_UPDATE "Pas de mise à jour en référence à une autre table"
-#define MSG_NO_FEAT_SUPPORT "%s non supporté dans cette version"
-#define MSG_NO_FILE_LIST "La table %s n'a pas de liste de fichiers"
-#define MSG_NO_FLD_FORMAT "Format absent pour le champs %d de %s"
-#define MSG_NO_FORMAT_COL "Type COLUMN informattable"
-#define MSG_NO_FORMAT_TYPE "Le format ne peut pas être défini à partir du type %d"
-#define MSG_NO_FULL_JOIN "Jointures autorisées seulement à égalité sur clé(s)"
-#define MSG_NO_FUL_OUT_JOIN "Jointures externes complètes non supportées"
-#define MSG_NO_FUNC_ORDER "Tri non supporté sur élément fonctionnel"
-#define MSG_NO_HEAD_JOIN "Jointure sur une table non en tête"
-#define MSG_NO_HQL_CONV "Conversion en HQL non disponible"
-#define MSG_NO_INDEX "La table %s n'a pas d'index"
-#define MSG_NO_INDEX_GBX "Pas ou mauvais index pour SQLGBX"
-#define MSG_NO_INDEX_IN "Pas d'index dans %s"
-#define MSG_NO_INDEX_READ "Pas d'accès directe des tables multiples"
-#define MSG_NO_INIT_LANG "Pas de langage initial"
-#define MSG_NO_JOIN_TO_EXP "Jointure vers une expression impossible"
-#define MSG_NO_JOIN_UPDEL "Pas de jointure avec Update/Delete"
-#define MSG_NO_KEY_COL "Pas de colonne clé trouvée"
-#define MSG_NO_KEY_UPDATE "Le nom des clés ne peut pas être modifié"
-#define MSG_NO_LANGUAGE "Pas de langage opérationnel\n"
-#define MSG_NO_LANG_TO_QUIT "Pas de langage à quitter"
-#define MSG_NO_LISTVAL_HERE "LSTBLK: Liste de valeurs utilisée hors contexte"
-#define MSG_NO_MAP_INSERT "MAP incompatible avec Insert"
-#define MSG_NO_MATCHING_COL "Pas de colonne correspondant à %s dans %s"
-#define MSG_NO_MATCH_COL "Colonne correspondante introuvable"
-#define MSG_NO_MEMORY "Mémoire pleine"
-#define MSG_NO_MEM_CORR_SUB "Subquery corrélée en mémoire non encore implémentée"
-#define MSG_NO_MODE_PADDED "Mode non supporté pour les fichiers 'padded'"
-#define MSG_NO_MORE_COL "La colonne %s n'est plus dans la table pivot"
-#define MSG_NO_MORE_LANG "Plus de langage, exit de %s\n"
-#define MSG_NO_MORE_VAR "Les fichiers VAR ne sont plus supportés"
-#define MSG_NO_MULCOL_JOIN "Jointure vers un index multi-colonne pas encore possible"
-#define MSG_NO_MULT_HAVING "Clauses Having multiples non implémentées"
-#define MSG_NO_MUL_DIR_ACC "Accès direct des tables multiples pas encore implémenté"
-#define MSG_NO_MUL_VCT "Les tables VCT ne peuvent pas être multiples"
-#define MSG_NO_MYSQL_CONN "Aucune connexion MySQL ouverte"
-#define MSG_NO_MYSQL_DELETE "Pas de Delete pour les tables MySQL"
-#define MSG_NO_NBCOL "Pas de NBcol"
-#define MSG_NO_NBLIN "Pas de NBlin, MaxSize ou Continued"
-#define MSG_NO_NBLIN_CONT "Fetch: Pas de NBlin ou Continued"
-#define MSG_NO_NULL_CONST "Les constantes <null> ne sont pas prises en charge"
-#define MSG_NO_ODBC_COL "Colonnes ODBC automatiques non supportées par cette version"
-#define MSG_NO_ODBC_DELETE "Delete ne devrait pas être appelé pour les tables ODBC"
-#define MSG_NO_ODBC_DIRECT "Accès directe des tables ODBC non encore implémenté"
-#define MSG_NO_ODBC_MUL "Multiple(2) non supporté pour les tables ODBC"
-#define MSG_NO_ODBC_SPECOL "Pas de colonne spéciale ODBC"
-#define MSG_NO_OPT_COLUMN "Pas optimisable ou pas de colonne optimisées"
-#define MSG_NO_OP_MODIF "Les modificateurs ne s'appliquent pas à %s"
-#define MSG_NO_PARAMETER "Pas de paramètre"
-#define MSG_NO_PART_DEL "Delete partiel des fichier %s impossible"
-#define MSG_NO_PART_MAP "Mapping partiel non implémenté pour cet OS"
-#define MSG_NO_PAR_BLK_INS "Insertion de bloc partiel impossible"
-#define MSG_NO_PIV_DIR_ACC "Pas d'accès directe aux tables PIVOT"
-#define MSG_NO_POS_ADDED "Pos_code non ajouté"
-#define MSG_NO_PROMPTING "Relance impossible pour les tables distribuées"
-#define MSG_NO_QRY_DELETE "Delete n'est pas utilisable pour les views QRY"
-#define MSG_NO_QUERY_ARRAY "Tableaux avec QUERY non encore implémentés"
-#define MSG_NO_RCUR_DSK_YET "Usage recursif de DISK non encore implementé"
-#define MSG_NO_READ_32 "Lecture de 32 octets impossible"
-#define MSG_NO_RECOV_SPACE "Espace non recouvrable dans le fichier index"
-#define MSG_NO_REF_DELETE "Pas de suppression en référence à une autre table"
-#define MSG_NO_REF_UPDATE "Pas de mise à jour en référence à une autre table"
-#define MSG_NO_REMOTE_FNC "Certaines fonctions ne peuvent pas être exécutées à distance"
-#define MSG_NO_ROWID_FOR_AM "Accès direct impossible de ROWID pour les tables de type %s"
-#define MSG_NO_ROW_NODE "Le nom du Rownode n'est pas défini"
-#define MSG_NO_SECTION_NAME "Nom de section manquant"
-#define MSG_NO_SEC_UPDATE "Les noms de section ne peuvent pas être modifiés"
-#define MSG_NO_SELECTED_DB "Aucune base de données sélectée"
-#define MSG_NO_SELF_PIVOT "Une table ne peut se pivoter elle-même !"
-#define MSG_NO_SERVER_FOUND "Serveur introuvable"
-#define MSG_NO_SETPOS_YET "SetPos pas encore implémenté pour les fichier %s"
-#define MSG_NO_SFEXIT_UNIX "Fonction %s non disponible sur Unix"
-#define MSG_NO_SOURCE " (pas de source)"
-#define MSG_NO_SPEC_COL "Pas de colonne spéciales MYSQL"
-#define MSG_NO_SQL_DELETE "Delete n'est pas utilisable actuellement pour les views SQL"
-#define MSG_NO_SUB_VAL "Pas de sous-value d'un tableau de type %d"
-#define MSG_NO_SUCH_INDEX "La table %s n'a pas l'index %s"
-#define MSG_NO_SUCH_SERVER "Serveur %s introuvable"
-#define MSG_NO_SUCH_TABLE "Table %s pas dans la base de données"
-#define MSG_NO_TABCOL_DATA "Pas de données pour la table %s colonne %s"
-#define MSG_NO_TABLE_COL "Aucune colonne trouvée pour %s"
-#define MSG_NO_TABLE_DEL "Delete non autorisé pour les tables %s "
-#define MSG_NO_TABLE_DESC "Pas de bloc descriptif de table"
-#define MSG_NO_TABLE_INDEX "La table %s n'a pas d'index"
-#define MSG_NO_TABLE_LIST "Pas de liste de tables"
-#define MSG_NO_TAB_DATA "Pas de données pour la table %s"
-#define MSG_NO_TERM_IN_TOK "Les non-terminaux ne sont pas utilisables dans les règles de Token"
-#define MSG_NO_TOKEN_DB "DB introuvable pour la colonne TOKEN %s"
-#define MSG_NO_UNIX_CATINFO "Pas d'info catalogue sous Unix"
-#define MSG_NO_UPDEL_JOIN "Pas de jointure de tables ODBC pour Update/Delete"
-#define MSG_NO_VCT_DELETE "Délétion Partielle non implémentée pour les fichiers VCT"
-#define MSG_NO_VIEW_COLDEF "Colonne définition impossible pour les views"
-#define MSG_NO_VIEW_SORT "La View fonctionnelle %s ne peut pas être triée ou jointe"
-#define MSG_NO_ZIP_DELETE "Delete sur fichier Zip non encore implementé"
-#define MSG_NO_ZIP_DIR_ACC "Accès directe des tables ZDOS non encore implementé"
-#define MSG_NULL_COL_VALUE "La colonne n'a pas de valeur"
-#define MSG_NULL_ENTRY "InitLang, entrée nulle %d %s"
-#define MSG_NULL_QUERY "Requête vide"
-#define MSG_NUMVAL_NOMATCH "Disparité de Numval pour %s"
-#define MSG_N_FULL_PARSES "%d significations"
-#define MSG_ODBC_READ_ONLY "ODBC est actuellement en lecture seulement"
-#define MSG_OFFSET_NOT_SUPP "Offset non supporté pour ce type de sous requête"
-#define MSG_ONE_LANG_YET "Un langage est déjà en édition"
-#define MSG_ONE_PARAM_ONLY "Un seul paramètre autorisé"
-#define MSG_ONLY_LOG10_IMPL "Seul Log10 est implementé"
-#define MSG_ON_LANGUAGE "Langage %.8s version %d niveau %d éditable"
-#define MSG_OPENING "Ouverture"
-#define MSG_OPENING_QUERY "Ouverture de la requête"
-#define MSG_OPEN_EMPTY_FILE "Ouverture du fichier vide %s: %s"
-#define MSG_OPEN_ERROR "Erreur d'ouverture %d en mode %d sur %s: "
-#define MSG_OPEN_ERROR_IS "Erreur à l'ouverture de %s: %s"
-#define MSG_OPEN_ERROR_ON "Erreur d'ouverture sur %s"
-#define MSG_OPEN_MODE_ERROR "Erreur d'ouverture(%s) %d sur %s"
-#define MSG_OPEN_SORT_ERROR "Erreur logique de tri dans QUERY Open"
-#define MSG_OPEN_STRERROR "Erreur à l'ouverture: %s"
-#define MSG_OPEN_W_ERROR "Erreur à l'ouverture de %s en écriture"
-#define MSG_OPTBLK_RD_ERR "Erreur à la lecture d'un bloc optimisation: %s"
-#define MSG_OPTBLK_WR_ERR "Erreur à l'écriture d'un bloc optimisation: %s"
-#define MSG_OPTIMIZING "Optimisation de "
-#define MSG_OPT_BMAP_RD_ERR "Erreur en lecture des bitmaps d'optimisation: %s"
-#define MSG_OPT_BMAP_WR_ERR "Erreur en écriture des bitmaps d'optimisation: %s"
-#define MSG_OPT_CANCELLED "Optimisation interrompue par l'utilisateur"
-#define MSG_OPT_DVAL_RD_ERR "Erreur en lecture des valeurs distinctes: %s"
-#define MSG_OPT_DVAL_WR_ERR "Erreur en écriture des valeurs distinctes: %s"
-#define MSG_OPT_HEAD_RD_ERR "Erreur en lecture de l'entête du fichier opt: %s"
-#define MSG_OPT_HEAD_WR_ERR "Erreur en écriture de l'entête du fichier opt: %s"
-#define MSG_OPT_INIT "Optimisation initialisée"
-#define MSG_OPT_LOGIC_ERR "Erreur logique dans SetBitmap, i=%d"
-#define MSG_OPT_MAX_RD_ERR "Erreur en lecture des valeurs maxi: %s"
-#define MSG_OPT_MAX_WR_ERR "Erreur en écriture des valeurs maxi: %s"
-#define MSG_OPT_MIN_RD_ERR "Erreur en lecture des valeurs mini: %s"
-#define MSG_OPT_MIN_WR_ERR "Erreur en écriture des valeurs mini: %s"
-#define MSG_OPT_NOT_MATCH "Le fichier opt %s n'est pas à jour"
-#define MSG_OP_RES_TOO_LONG "Résultat trop long pour l'opérateur=%d"
-#define MSG_ORDER_OUT_RANGE "Tri: Order %d hors limite"
-#define MSG_ORDER_TWICE "Un même élément est trié deux fois"
-#define MSG_PAGE_ERROR "Erreur de pagination"
-#define MSG_PARM_CNT_MISS "Disparité du nombre de Paramètres"
-#define MSG_PARSE_NULL_SEM "Sémantique nulle"
-#define MSG_PARSING_QUERY "Analyse de la requête"
-#define MSG_PIX_ERROR "Pix %s erreur règle no=%u\n"
-#define MSG_PIX_TEST_ERROR "Règle=%u: pix-TEST pas dans le premier noeud\n"
-#define MSG_PLG_READ_ONLY "PLG est actuellement en lecture seulement"
-#define MSG_PLM_NULL_SFP "TABPLM ReadDB: Sfp est NULL"
-#define MSG_PLUG_NOT_INIT "Plug n'est pas initialisé\n"
-#define MSG_PLUG_NOT_RUN "Plug n'est pas en marche"
-#define MSG_PNODE_RULE "(Noeud %d règle %d) "
-#define MSG_POS_TOO_LONG "%s trop long (>%d)"
-#define MSG_PREC_VBLP_NULL "ARRAY SetPrecision: Vblp est NULL"
-#define MSG_PRIV_INSTR "Instruction privilégiée"
-#define MSG_PROCADD_ERROR "Erreur %d sur l'adresse de %s"
-#define MSG_PROCESS_SUBQRY "Sub-Query en cours de traitement"
-#define MSG_PROC_WOULD_LOOP "Bouclage du traitement (maxres=%d maxlin=%d)"
-#define MSG_PROGRESS_INFO "Informations sur le traitement en cours"
-#define MSG_PROMPT_CANCEL "Relance annulée"
-#define MSG_PROMPT_NIY "Prompt non implémenté pour cette configuration"
-#define MSG_PTR_NOT_FOUND "Pointeur introuvable Num=%d ti1=%d"
-#define MSG_PXDEF_IS_NULL "Pxdef est NULL"
-#define MSG_QRY_READ_ONLY "Les views QRY sont en lecture seulement"
-#define MSG_QUERY_CANCELLED "Requête interrompue par l'utilisateur"
-#define MSG_QUERY_NOT_EXEC "Requête non exécutée"
-#define MSG_QUERY_SAVED "Requête %s sauvegardée"
-#define MSG_QUOTE_IN_QUOTE "Appostrophe dans un champ entre appostrophe ligne %d"
-#define MSG_RANGE_NIY "Range pas encore implémenté pour %s"
-#define MSG_RANGE_NO_JOIN "Range non compatible avec les index de jointure"
-#define MSG_RC_READING "rc=%d en lecture de la table %s"
-#define MSG_READB_BAD_INIT "%s ReadDB appelé avec Init=0"
-#define MSG_READCOL_ERROR "SQLCOL: erreur dans ReadColumn"
-#define MSG_READING "Lecture"
-#define MSG_READING_FROM "Lecture de %s"
-#define MSG_READING_RECORD "Erreur en lecture de l'enregistrement %d de %s"
-#define MSG_READY "Prêt"
-#define MSG_READ_ERROR "Erreur en lecture sur %s: %s"
-#define MSG_READ_ERROR_RC "Erreur en lecture, rc=%d"
-#define MSG_READ_MEM_ERROR "Lecture mémoire %d: taille=%d"
-#define MSG_READ_ONLY "Cette table protégée en lecture seule ne peut être modifiée"
-#define MSG_READ_SEEK_ERROR "Erreur de recherche en lecture: %s"
-#define MSG_READ_SEG_ERROR "Lecture segment %d: taille=%d"
-#define MSG_RECEIVED "Reçu %c\n"
-#define MSG_RECORD_ERROR "Erreur à la lecture de l'enregistrement %d de %s"
-#define MSG_RECORD_NO_SEP "Enregistrement sans séparateur"
-#define MSG_REC_SKIPPED " (%d lignes erronnées sautées par l'option MaxErr)"
-#define MSG_REDUCE_INDEX "Réduction de l'index"
-#define MSG_REGISTER_ERR "Enregistrement NS impossible, préfix='%s' et href='%s'"
-#define MSG_REMOTE_CONN_ERR "La connection éloignée a échoué"
-#define MSG_REMOVE_ERROR "Erreur en supprimant %s: %s"
-#define MSG_REMOVE_NOT_IMPL "Remove non implémenté pour TDB non Table"
-#define MSG_RENAME_ERROR "Erreur renommant %s en %s: %s"
-#define MSG_RENUM_RULES "Renumérotez les règles et réentrez ADD (règle sauvegardée dans la zone tampon)"
-#define MSG_REORDER_INDEX "Reclassement de l'index"
-#define MSG_REQU_ARG_NUM "La fonction %s doit avoir %d arguments"
-#define MSG_RESET_TO "%s remis à %d"
-#define MSG_RES_NOT_UNIQUE "Le résultat n'est pas unique"
-#define MSG_RET_FROM_LANG "Retour au language %s version %d.%d du language %s version %d.%d"
-#define MSG_ROWID_NOT_IMPL "RowNumber non implémenté pour les tables de type %s"
-#define MSG_ROWS_SELECTED "%d lignes sélectionnées en %.2lf sec"
-#define MSG_ROWS_TRUNCATED " (tronqué par MAXRES, LIMIT, FREQ ou AreaSize)"
-#define MSG_ROW_ARGNB_ERR "ROW: disparité du nombre d'arguments (%d,%d)"
-#define MSG_RPC_SERVER_ERR "Erreur logique dans TABMUL::MakeCol"
-#define MSG_RSC_ALLOC_ERROR "Erreur d'allocation mémoire dans Rescol %s"
-#define MSG_RULE_ENTERED "Règle %d entrée"
-#define MSG_RULE_SUBSET_ERR "Erreur d'initialisation de la zone Règles"
-#define MSG_SAVING_INDEX "Sauvegarde du fichier index"
-#define MSG_SCAN_NOT_IMP "Scan non implémenté"
-#define MSG_SEC_KEY_FIRST "Les sections et clés doivent être insérées en premier"
-#define MSG_SEC_NAME_FIRST "Le nom de section doit être en tête de liste en insertion"
-#define MSG_SEC_NOT_FOUND "Section %s absente de %s"
-#define MSG_SEEK_ERROR "Seek erreur dans CopyHeader"
-#define MSG_SEMANTIC_TREE "Arbre sémantique"
-#define MSG_SEM_BAD_REF "Sem @%d référence un argument de type non 0 ou 1"
-#define MSG_SEM_UNKNOWN "inconnue, rc=%d"
-#define MSG_SEP_IN_FIELD "Le champ %d contient le caractère séparateur"
-#define MSG_SEQUENCE_ERROR "HSTMT: Allocation hors séquence"
-#define MSG_SETEOF_ERROR "Erreur %d dans SetEndOfFile"
-#define MSG_SETRECPOS_NIY "SetRecpos non implémenté pour ce type de table"
-#define MSG_SET_LOCALE "Locale fixée à %s"
-#define MSG_SET_NULL_DOM "Valeur %d donnée à un domaine nul"
-#define MSG_SET_OP_NOT_IMPL "Opérateurs ensemblistes non implementés"
-#define MSG_SET_STR_TRUNC "SetValue: Chaîne de caractères tronquée"
-#define MSG_SEVERAL_TREES "Jointure non spécifiée pour certaines tables"
-#define MSG_SFP_ERROR "Erreur sur SetFilePointer: %s"
-#define MSG_SFUNC_NOT_IMPL "Fonction scalaire %s non implémentée"
-#define MSG_SHARED_LIB_ERR "Erreur au chargement de la librairie partagée %s: %s"
-#define MSG_SINGLE_STEP "Pas à pas"
-#define MSG_SLEEP "J'ai dormi %d milliseconds"
-#define MSG_SMART_SORTING "Récupération des lignes triées (passage %d de %d)"
-#define MSG_SMART_SORT_ERR "Erreur logique 1 dans Smart Sort"
-#define MSG_SORTING "Tri en cours"
-#define MSG_SORTING_INDEX "Tri de l'index"
-#define MSG_SORTING_VAL "Tri de %d valeurs"
-#define MSG_SORT_JOIN_INDEX "Tri de l'index de jointure"
-#define MSG_SPCOL_READONLY "La colonne spéciale %s est en lecture seulement"
-#define MSG_SPEC_CMD_SEP "Les commandes spéciales doivent être exécutées séparément"
-#define MSG_SQL_BAD_TYPE "RephraseSQL: type %d non supporté"
-#define MSG_SQL_BLOCK_MISM "CheckColumn: bloc SQL courant non correspondant"
-#define MSG_SQL_CONF_ERROR "Erreur SQL: SQL_CONFORMANCE"
-#define MSG_SQL_READ_ONLY "Les views SQL sont actuellement en lecture seulement"
-#define MSG_SRCH_CLOSE_ERR "Erreur à la fermeture de l'Handle de recherche"
-#define MSG_SRC_TABLE_UNDEF "La table source n'est pas définie"
-#define MSG_STACK_ERROR "Erreur sur la pile, i=%d\n"
-#define MSG_STACK_OVERFLOW "Parser: Débordement de la pile\n"
-#define MSG_STRG_NOT_FOUND "Chaîne introuvable"
-#define MSG_STRING_INV_LIST "Liste invalide pour SemString"
-#define MSG_STRING_TOO_BIG "Chaîne trop grande pour le domaine %s"
-#define MSG_SUBALLOC_ERROR "Pas assez de mémoire en zone %p pour allouer %d (utilisé=%d libre=%d)"
-#define MSG_SUBAL_HUGE_ERR "Pas assez de mémoire en zone huge %p pour allouer %d"
-#define MSG_SUBARG_NOSEM "Argument @ ou sous-phrase de niveau %d pointe sur un noeud sans Sem"
-#define MSG_SUBARG_OUTRANGE "Argument @ ou sous-phrase de niveau %d hors limite"
-#define MSG_SUBQRY_ONEITEM "Une Sub-Query ne doit avoir qu'une sélection"
-#define MSG_SUBSET_ERROR "SubSet erreur dans LoadDB"
-#define MSG_SUB_OPEN_YET "Subquery déjà ouverte"
-#define MSG_SUB_RES_TOO_LNG "Résultat trop long pour SUBSTR"
-#define MSG_SYNTAX_ERROR "Erreur de syntaxe"
-#define MSG_SYSTEM_ERROR "Erreur système %d"
-#define MSG_S_ACCESS_DENIED "%s: accès non autorisé"
-#define MSG_S_ERROR "%s erreur"
-#define MSG_S_ERROR_NUM "%s: erreur=%d"
-#define MSG_S_INTRUPT_ERROR "%s: erreur interruption"
-#define MSG_S_INVALID_PARM "%s: paramètre invalide"
-#define MSG_S_INV_ADDRESS "%s: adresse invalide"
-#define MSG_S_UNKNOWN_ERROR "%s: erreur de code %u inconnu"
-#define MSG_TABDIR_READONLY "Les tables DIR sont en lecture seulement"
-#define MSG_TABLE_ALREADY "La table %s existe déjà"
-#define MSG_TABLE_ALTERED "Table %s %s altérée"
-#define MSG_TABLE_CREATED "%s table %s créée"
-#define MSG_TABLE_DROPPED "Table %s supprimée"
-#define MSG_TABLE_MULT_JOIN "Utilisation multiple de la table %s pour jointure"
-#define MSG_TABLE_NOT_IN_DB "La table %s n'existe pas dans %s"
-#define MSG_TABLE_NOT_OPT "Table non optimisable"
-#define MSG_TABLE_NO_INDEX "La table %s n'est pas indexable"
-#define MSG_TABLE_NO_OPT "La table %s n'existe pas ou de type non optimisable"
-#define MSG_TABLE_READ_ONLY "Les tables %s sont en lecture seulement "
-#define MSG_TABMUL_READONLY "Les tables multiples sont en lecture seulement"
-#define MSG_TAB_NOT_LOADED " (certaines tables n'ont put être chargées)"
-#define MSG_TAB_NOT_SPEC "Table non specifiée"
-#define MSG_TB_VW_NOTIN_DB "Table ou view %s pas dans la base de données"
-#define MSG_TDB_NXT_NOT_NUL "Tdb.Next non NULL"
-#define MSG_TDB_USE_ERROR "Erreur, Tdbp->Use=%d"
-#define MSG_TOO_MANY_COLS "Trop de colonnes"
-#define MSG_TOO_MANY_COLTAB "Trop de colonnes dans %s (%d)"
-#define MSG_TOO_MANY_FIELDS "Trop de champs ligne %d de %s"
-#define MSG_TOO_MANY_JUMPS "Trop de niveaux de saut"
-#define MSG_TOO_MANY_KEYS "Trop de clés (%d)"
-#define MSG_TOO_MANY_POS "Trop de pos_codes"
-#define MSG_TOO_MANY_TABLES "Trop de tables (%d)"
-#define MSG_TOPSEM_ERROR "Erreur inconnue dans TopSem"
-#define MSG_TO_BLK_IS_NULL "To Blk est nul"
-#define MSG_TO_FTR_NOT_NULL "Set.To_Ftr n'est pas nul"
-#define MSG_TO_PIX_NOT_NULL "Set.To_Pix n'est pas nul"
-#define MSG_TO_SEM_NOT_NULL "Set.To_Sem n'est pas nul"
-#define MSG_TRUNCATE_ERROR "Erreur en troncation: %s"
-#define MSG_TRUNC_BY_ESTIM "Tronqué par l'option Estimate"
-#define MSG_TYPES_ERROR "Erreur sur Types(%d)"
-#define MSG_TYPE_CONV_ERROR "Type non convertible dans une expression"
-#define MSG_TYPE_DEF_MISM "Disparité entre type et définition"
-#define MSG_TYPE_MISMATCH "Clé et source ne sont pas du même type"
-#define MSG_TYPE_RECFM_MISM "Disparité entre Type et Recfm"
-#define MSG_TYPE_TO_VERIFY "Type à vérifier: %d"
-#define MSG_TYPE_VALUE_ERR "Colonne %s: disparité type(%s)/valeur(%s)"
-#define MSG_UNBALANCE_QUOTE "Appostrophe en trop ligne %d"
-#define MSG_UNDEFINED_AM "COLBLK %s: méthode d'accès indéfinie"
-#define MSG_UNDEFINED_PATH "Chemin d'accès indéfini pour Plgcnx.ini"
-#define MSG_UNDEF_COL_COUNT "Count sur colonne non définie"
-#define MSG_UNKNOWN_DOMAIN "Domaine inconnu %s"
-#define MSG_UNKNOWN_ERROR "Erreur inconnue"
-#define MSG_UNKNOWN_EXCPT "Exception non répertoriée"
-#define MSG_UNKNOWN_NAME "Nom inconnu: %.8s"
-#define MSG_UNKNOWN_PATH "Chemin d'accès inconnu pour Plgcnx.ini"
-#define MSG_UNKNOWN_POS "Nom pos_code inconnu: %s"
-#define MSG_UNKNOWN_SEM "Sem %.8s inconnue, rc=%d"
-#define MSG_UNKNOWN_SYNONYM "Synonyme inconnu"
-#define MSG_UNKNW_QRY_TYPE "ReadDB: type de requête inconnu"
-#define MSG_UNKN_ERR_CODE "Erreur de code %d inconnu"
-#define MSG_UNLOADABLE " inchargeable: "
-#define MSG_UNLOADABLE_PRM "%s inchargeable: %s"
-#define MSG_UNMATCH_FIL_ARG "Argument de filtre dépareillé"
-#define MSG_UNQ_COL_SEV_TAB "La colonne %s non qualifiée est dans plusieurs tables"
-#define MSG_UNRESOLVED_ARG "?Argument manquant: %s non résolu en %d ligne %d"
-#define MSG_UPDATE_ERROR "Erreur en Update sur %s"
-#define MSG_UPDATING_ROWS "Mise à jour des lignes"
-#define MSG_UPD_ZIP_NOT_IMP "Mise à jour des tables ZDOS non encore implementé"
-#define MSG_UP_LANGUAGE "Bloc langage %.8s version %d niveau %d chargé"
-#define MSG_USED_FREE_MEM "Sarea: utilisé %d, libre %d"
-#define MSG_USETEMP_IS "Usetemp est : %s"
-#define MSG_USETEMP_RESET ". Usetemp remis à Auto"
-#define MSG_USETEMP_SET "Usetemp fixé à %s"
-#define MSG_USE_NO_MATCH "Use non correspondant : Use=%d, ti2=%d, ti3=%d"
-#define MSG_USING_INDEX " (Indexé par"
-#define MSG_VALIST_MISMATCH "Disparité des listes de valeurs"
-#define MSG_VALSTR_TOO_LONG "Valeur %s trop longue pour une chaîne de longueur %d"
-#define MSG_VALTYPE_NOMATCH "Disparité types de valeur"
-#define MSG_VALUE_ERROR "Colonne %s: bloc valeur nul"
-#define MSG_VALUE_NOT_ALLOC "Valeur non allouée pour la colonne R%d %s"
-#define MSG_VALUE_TOO_BIG "Valeur %lld trop grande pour la colonne %s"
-#define MSG_VALUE_TOO_LONG "Valeur %s trop longue pour la colonne %s de longueur %d"
-#define MSG_VAL_ALLOC_ERR "Allocation impossible du noeud valeur"
-#define MSG_VAL_TOO_LONG "Valeur %s trop longue pour le champ %s"
-#define MSG_VIEW_ALREADY "La VIEW %s existe déjà"
-#define MSG_VIEW_CREATED "%s view %s créée"
-#define MSG_VIEW_DROPPED "View %s supprimée"
-#define MSG_VIEW_NOT_IN_DB "%s n'est pas une View de %s"
-#define MSG_VIR_NO_DELETE "Delete impossible sur les tables %s"
-#define MSG_VIR_READ_ONLY "Les tables virtuelles %s sont en lecture seulement"
-#define MSG_VM_LANG "Langage au format VM, non supporté"
-#define MSG_VOID_FIRST_ARG "Le premier argument ne doit pas être vide"
-#define MSG_VOID_IN_STRING "Erreur: chaîne IN vide"
-#define MSG_VOID_ORDER_LIST "Liste de tri vide, erreur système ?"
-#define MSG_VOID_POS_DICT "Dictionnaire interne du langage vide"
-#define MSG_VOID_QUERY "Requête vide %s"
-#define MSG_WORK_AREA "Espace de travail: %s"
-#define MSG_WORK_TOO_SMALL "Zone de travail trop petite, accroître AreaSize"
-#define MSG_WRITE_ERROR "Erreur à l'écriture de %s"
-#define MSG_WRITE_SEEK_ERR "Erreur de recherche en écriture: %s"
-#define MSG_WRITE_STRERROR "Erreur en écriture sur %s: %s"
-#define MSG_WRITING "Ecriture"
-#define MSG_WRITING_ERROR "Erreur à l'écriture de %s: %s"
-#define MSG_WRITING_QUERY "Erreur à l'écriture de la requête: "
-#define MSG_WRONG_ARG_NUM "La fonction %s ne prend pas %d arguments"
-#define MSG_WRONG_COL_NUM "Numéro de colonne %d trop grand pour %s"
-#define MSG_WRONG_DB_LIST "Liste des bases de données incorrecte ou vide"
-#define MSG_WRONG_FUNCTION "Mauvaise fonction %d"
-#define MSG_WRONG_OP_PARM "Mauvais opérateur ou paramètres pour %s"
-#define MSG_WRONG_PARMS "Mauvais paramètres pour %s"
-#define MSG_WRONG_PASSWORD "Mot de passe illégal pour %s"
-#define MSG_WRONG_TYPE "type non supporté"
-#define MSG_WRONG_USERFILE "La Userfile a une mauvaise taille %d"
-#define MSG_WS_CONV_ERR "Erreur de convertion de %s en WS"
-#define MSG_XCOL_MISMATCH "La colonne %s ne correspond pas à l'index"
-#define MSG_XDB_DEL_ERROR "Erreur en supprimant des entrées du fichier XDB"
-#define MSG_XFILE_READERR "Erreur %d en lisant le fichier index"
-#define MSG_XFILE_TOO_SMALL "Le fichier index est plus petit que la taille de l'index"
-#define MSG_XFILE_WRITERR "Erreur en écrivant le fichier index: %s"
-#define MSG_XMLTAB_INIT_ERR "Erreur d'initialisation de la table XML"
-#define MSG_XML_INIT_ERROR "Erreur d'initialisation du nouveau fichier XML"
-#define MSG_XPATH_CNTX_ERR "Le nouveau contexte XPath ne peut être créé"
-#define MSG_XPATH_EVAL_ERR "Impossible d'évaluer l'emplacement xpath '%s'"
-#define MSG_XPATH_NOT_SUPP "Xpath non supporté colonne %s"
-#define MSG_X_ARG_ADDED "%d arguments ajoutés"
-#define MSG_X_ARG_SET "%d arguments ont été initialisés"
-#define MSG_X_ON_TAB " %s sur %s("
-#define MSG_ZERO_DIVIDE "Division par zéro dans une expression"
diff --git a/storage/connect/frmsg2.h b/storage/connect/frmsg2.h
deleted file mode 100644
index 487db3395fb..00000000000
--- a/storage/connect/frmsg2.h
+++ /dev/null
@@ -1,1013 +0,0 @@
-#define MSG_ACCESS_VIOLATN "Violation accŠs m‚moire"
-#define MSG_ACT_ALLOC_FAIL "PlugInitLang: Erreur d'allocation du bloc Activity"
-#define MSG_ADDVAL_ERROR "Erreur %d dans AddValue"
-#define MSG_ADD_BAD_TYPE "Ajout d'une valeur de type %s non conforme dans un tableau %s"
-#define MSG_ADD_NULL_DOM "Ajout de la chaŒne %s … un domaine nul"
-#define MSG_ADPOS_IN_DICTP "ADPOS au travail dans User_Dictp"
-#define MSG_AFTER " aprŠs: "
-#define MSG_ALG_CHOICE_AUTO "Le choix du meilleur algorithme est automatique"
-#define MSG_ALG_CHOICE_BAD "Choix d'algorithme invalide, remis … AUTO"
-#define MSG_ALG_CHOICE_QRY "Utilise l'algorithme 'Query'"
-#define MSG_ALG_CURLY_BRK "Le choix de l'algorithme d‚pend des accolades externes"
-#define MSG_ALLOC_ERROR "Erreur d'allocation de %s"
-#define MSG_ALL_DELETED "Toutes les lignes enlev‚es en %.2lf sec"
-#define MSG_ALTER_DB_ERR "Impossible de d‚terminer la base de donn‚es … modifier"
-#define MSG_AMBIG_COL_QUAL "Qualificateur ambigu %s pour la colonne %s"
-#define MSG_AMBIG_CORREL "Select %s.* corr‚lation ambigue"
-#define MSG_AMBIG_SPEC_COL "Colonne sp‚ciale ambigue %s"
-#define MSG_ANSWER_TYPE "R‚ponse de type"
-#define MSG_API_CONF_ERROR "Erreur SQL: API_CONFORMANCE"
-#define MSG_APPL_ACCESSIBLE "Application %s accessible"
-#define MSG_APPL_ACTIVE "Application %s encore active"
-#define MSG_APPL_BAD_SAVE "Application %s partiellement sauvegard‚e"
-#define MSG_APPL_CREATED "Application %s cr‚‚"
-#define MSG_APPL_IS_ACTIVE "Application d‚j… active"
-#define MSG_APPL_NOT_INIT "Application non initialis‚e"
-#define MSG_APPL_NOT_LOADED "Application non charg‚e"
-#define MSG_APPL_QUIT "Fin de l'application %s"
-#define MSG_APPL_SAVED "Application %s sauvegard‚e"
-#define MSG_APP_STILL_ACTIV "Application du langage %s encore active (non lib‚rable)"
-#define MSG_AREAFILE_NOTFND "Fichier Area introuvable"
-#define MSG_ARGS_SYNTAX_ERR "?SetArgs erreur de syntaxe: %s inattendu aprŠs %s"
-#define MSG_ARG_ALREADY_SET "Argument %d d‚j… allou‚"
-#define MSG_ARG_NOT_AN_ATTR "L'argument n'est pas un attribut (type %d erron‚)"
-#define MSG_ARG_OUT_CONTEXT "Argument de type @ utilis‚ hors contexte"
-#define MSG_ARG_OUT_RANGE "Argument de phrase valant %d hors limite"
-#define MSG_ARG_PTR_NOSEM "Argument valant %d pointe sur un noeud sans Sem"
-#define MSG_ARG_PTR_NOSEMS "Argument valant %d pointe sur un noeud sans s‚mantique"
-#define MSG_ARG_REF_LOOP "?Bouclage entre r‚f‚rences crois‚es des arguments"
-#define MSG_ARG_TWO_CONST "Le 2Šme argument de %s doit ˆtre constant"
-#define MSG_ARRAY_ALLOC_ERR "Erreur d'allocation m‚moire dans ARRAY"
-#define MSG_ARRAY_BNDS_EXCD "Hors limite de tableau"
-#define MSG_ARRAY_ERROR "Erreur de fonctionnement k=%d n=%d"
-#define MSG_ATTRIBUTE_ERROR "Erreur rŠgle %u attribut %s: "
-#define MSG_ATT_NOT_CASE "Mauvaise valeur %d pour attribut (pas une CaseValue)"
-#define MSG_ATT_POSCODE_BIG "Code attribut %d trop grand (max=%d)"
-#define MSG_AVGLEN_ERROR "avglen doit ˆtre entre %d et %d"
-#define MSG_BAD_AGGREG_FUNC "Fonction aggr‚g‚e %d non support‚e"
-#define MSG_BAD_ARGTYPES "Argument de type invalide pour %s"
-#define MSG_BAD_ARGUMENTS "Argument non attach‚s pour %s"
-#define MSG_BAD_ARG_NUM "Nombre d'arguments invalide %d"
-#define MSG_BAD_ARG_TYPE "Type d'argument %d invalide"
-#define MSG_BAD_ARRAY_OPER "Les tableaux doivent utiliser l'op‚rateur IN"
-#define MSG_BAD_ARRAY_TYPE "Type=%d invalide pour un tableau"
-#define MSG_BAD_ARRAY_VAL "Les tableaux doivent avoir le mˆme nombre de valeurs"
-#define MSG_BAD_BIN_FMT "Format invalide %c pour la colonne BIN %s"
-#define MSG_BAD_BLK_ESTIM "Nombre de blocs sup‚rieur … l'estimation"
-#define MSG_BAD_BLK_SIZE "Taille du bloc %d non conforme"
-#define MSG_BAD_BYTE_NUM "Le nombre d'octets ‚crits est faux"
-#define MSG_BAD_BYTE_READ "Le nombre d'octets lus est faux"
-#define MSG_BAD_CARDINALITY "Appel invalide de Cardinality pour une table multiple"
-#define MSG_BAD_CASE_SPEC "Min/Maj: sp‚cification %c incorrecte, recommencez: "
-#define MSG_BAD_CHAR_SPEC "Sp‚cification '%s' invalide pour caractŠre"
-#define MSG_BAD_CHECK_TYPE "Sous-type %d invalide pour CheckColumn"
-#define MSG_BAD_CHECK_VAL "Valeur pour Check invalide '%s'"
-#define MSG_BAD_COLCRT_ARG "COLCRT: Arg invalide (type=%hd, domain=%hd)"
-#define MSG_BAD_COLDEF_TYPE "Coldefs: type ill‚gal %d"
-#define MSG_BAD_COLIST_ITEM "El‚ment invalide dans une Colist"
-#define MSG_BAD_COLIST_TYPE "Mauvais type=%d pour une Colist"
-#define MSG_BAD_COLSIZE "Colsize %d trop petit pour cette base de donn‚es"
-#define MSG_BAD_COL_ENTRY "Entr‚e invalide pour la colonne %s"
-#define MSG_BAD_COL_FORMAT "Type de formattage %d invalide pour une colonne"
-#define MSG_BAD_COL_IN_FILT "Colonne incorrecte dans un filtre"
-#define MSG_BAD_COL_QUALIF "Qualificateur invalide %s pour la colonne %s"
-#define MSG_BAD_COL_TYPE "Type invalide %s pour la colonne %s"
-#define MSG_BAD_COL_XPATH "Xpath invalide colonne %s de la table HTML %s"
-#define MSG_BAD_COMPARE_OP "Op‚rateur de comparaison %d invalide"
-#define MSG_BAD_CONST_TYPE "Type=%d invalide pour une constante"
-#define MSG_BAD_CONV_TYPE "Convertion de type invalide %d"
-#define MSG_BAD_CORREL "Select %s.* corr‚lation absente"
-#define MSG_BAD_DATETIME "Valeur date/temps invalide"
-#define MSG_BAD_DATE_OPER "Op‚rateur de date inattendu %d"
-#define MSG_BAD_DBF_FILE "Le fichier DBF %s est alt‚r‚"
-#define MSG_BAD_DBF_REC "Fichier DBF %s alt‚r‚ enregistrement %d"
-#define MSG_BAD_DBF_TYPE "Type DBF %c non support‚"
-#define MSG_BAD_DEF_ARG "Argument invalide pour INDEXDEF (type=%hd, domain=%hd)"
-#define MSG_BAD_DEF_READ "EOF inattendue en lecture diff‚r‚e"
-#define MSG_BAD_DEF_TYPE "Type de colonne invalide"
-#define MSG_BAD_DIRECTORY "R‚pertoire invalide %s: %s"
-#define MSG_BAD_DIST_JN_FIL "Filtre de jointure distincte invalide"
-#define MSG_BAD_DIST_JOIN "Sp‚cification invalide de jointure distincte"
-#define MSG_BAD_DOM_COL_DEF "D‚finition de colonnes invalide pour un domaine"
-#define MSG_BAD_DOM_VALUE "La valeur %d n'appartient pas au domaine"
-#define MSG_BAD_EDIT_INIT "Coparm: ‚dition %s initialis‚e improprement"
-#define MSG_BAD_EVAL_TYPE "Fonction scalaire de type=%d invalide"
-#define MSG_BAD_EXEC_MODE "Mode d'ex‚cution invalide '%s'"
-#define MSG_BAD_EXP_ARGTYPE "Argument de type %d invalide pour une expression"
-#define MSG_BAD_EXP_OPER "Op‚rateur=%d invalide pour expression"
-#define MSG_BAD_FETCH_RC "Code retour inattendu de Fetch %d"
-#define MSG_BAD_FIELD_FMT "Format de champ invalide %c pour %s"
-#define MSG_BAD_FIELD_RANK "Rang %d invalide pour la colonne %s"
-#define MSG_BAD_FIELD_TYPE "Mauvais type de champ %s"
-#define MSG_BAD_FILE_HANDLE "Handle de fichier invalide: %s"
-#define MSG_BAD_FILE_LIST "La section liste de fichiers est erron‚e"
-#define MSG_BAD_FILTER "Mauvais filtre: Opc=%d B_T=%d %d Type=%d %d"
-#define MSG_BAD_FILTER_CONV "Conversion filtre incorrecte, B_T=%d,%d"
-#define MSG_BAD_FILTER_LINK "Op‚rateur de chaŒnage ill‚gal %d"
-#define MSG_BAD_FILTER_OP "Op‚rateur de filtre invalide %d"
-#define MSG_BAD_FILTEST_OP "Op‚rateur invalide %d %d pour FilTest"
-#define MSG_BAD_FLD_FORMAT "Format invalide pour le champs %d de %s"
-#define MSG_BAD_FLD_LENGTH "Champs %s trop long (%s --> %d) ligne %d de %s"
-#define MSG_BAD_FLOAT_CONV "Convertion invalide d'un tableau flottant"
-#define MSG_BAD_FPARM_NEXT "Coparm: FPARM avec Next non nul"
-#define MSG_BAD_FREQ_SET "Sp‚cification erronn‚e de Freq pour la colonne %s"
-#define MSG_BAD_FUNC_ARG "Funcarg de type %d non impl‚ment‚"
-#define MSG_BAD_FUNC_ARGTYP "Mauvais type d'argument=%d pour une fonction"
-#define MSG_BAD_FUNC_MODE "%s: mode invalide %d"
-#define MSG_BAD_GENRE "Genre est invalide"
-#define MSG_BAD_GETVIEW_RET "GetView: type de retour %d invalide"
-#define MSG_BAD_HANDLE_VAL "Valeur Handle invalide"
-#define MSG_BAD_HAV_FILTER "Filtre Having sur une requˆte non group‚e"
-#define MSG_BAD_HAV_FILTYPE "Filtre invalide pour clause Having"
-#define MSG_BAD_HEADER "Fichier %s: bloc en-tˆte alt‚r‚"
-#define MSG_BAD_HEADER_VAL "Valeur invalide pour Header"
-#define MSG_BAD_HEAD_END "Lecture fin d'en-tˆte impossible"
-#define MSG_BAD_INDEX_COL "Colonne %s invalide pour index %s"
-#define MSG_BAD_INDEX_DEF "D‚finition invalide pour index %s"
-#define MSG_BAD_INDEX_FILE "Fichier index %s corrompu"
-#define MSG_BAD_INDEX_PART "D‚finition colonne invalide pour index %s"
-#define MSG_BAD_INPUT "Entr‚e incorrecte"
-#define MSG_BAD_IN_ARGTYPE "Argument de type invalide pour l'op‚rateur IN"
-#define MSG_BAD_IN_ENDING "Erreur: fin de chaŒne IN invalide"
-#define MSG_BAD_IN_STRING "La chaŒne IN commence ou finie par des caractŠres invalides %c ... %c"
-#define MSG_BAD_JCOL_TYPE "Erreur logique JCT: disparit‚ des types colonnes"
-#define MSG_BAD_JOIN_EXP "Expression invalide pour une jointure"
-#define MSG_BAD_JOIN_FILTER "Filtre de jointure invalide"
-#define MSG_BAD_JOIN_OP "Op‚rateur de joint invalide %d"
-#define MSG_BAD_LANG_SIZE "Le fichier langage a une mauvaise taille %d"
-#define MSG_BAD_LINEFLD_FMT "Format invalide ligne %d champs %d de %s"
-#define MSG_BAD_LINE_LEN "Longueur ligne non ‚gale … Lrecl"
-#define MSG_BAD_LIST_TYPE "Type de liste invalide %d"
-#define MSG_BAD_LOCALE "Locale invalide %s"
-#define MSG_BAD_LOCDFON_ARG "Mauvais paramŠtre pour LOCDFON"
-#define MSG_BAD_LOCNODE_USE "Usage inattendu de LOCNODE"
-#define MSG_BAD_LRECL "Disparit‚ lrecl table/fichier (%d,%hd)"
-#define MSG_BAD_MAX_HAVING "MAXTMP trop petit pour Having"
-#define MSG_BAD_MAX_NREC "MaxRec=%d ne correspond pas … MaxBlk=%d Nrec=%d"
-#define MSG_BAD_MAX_PARAM "Mauvais paramŠtres pour sp‚cifier une valeur maximum"
-#define MSG_BAD_MAX_SETTING "Mauvaise valeur '%c' pour max"
-#define MSG_BAD_MERGE_TYPE "Le type %d ne pas ˆtre intercall‚"
-#define MSG_BAD_NODE_TYPE "Type noeud erron‚ pour la table"
-#define MSG_BAD_OFFSET_VAL "Nul offset invalide pour une table CSV"
-#define MSG_BAD_OPEN_MODE "Mode d'ouverture invalide %d"
-#define MSG_BAD_OPERATOR "Op‚rateur invalide %s"
-#define MSG_BAD_ORDER_MODE "Mode de tri %c invalide"
-#define MSG_BAD_ORDER_TYPE "Tri sur objet de type=%d invalide"
-#define MSG_BAD_OUTER_JOIN "Jointure externe invalide sur table enfant"
-#define MSG_BAD_PAD_ARGTYP "Argument de type invalide pour Pad ou Justify"
-#define MSG_BAD_PARAMETERS "%.8s: Mauvais paramŠtres"
-#define MSG_BAD_PARAM_TYPE "%.8s: ParamŠtre de type=%d invalide"
-#define MSG_BAD_PARM_COUNT "Nombre de paramŠtres incoh‚rent"
-#define MSG_BAD_PHASE_NUM "Num‚ro de phrase %d hors limite"
-#define MSG_BAD_PHRASE_NB "num‚ro de phrase hors limite %d rc=%d\n"
-#define MSG_BAD_POS_CODE "POS_code invalide %d"
-#define MSG_BAD_POS_TYPE "Type de POS_code invalide %d"
-#define MSG_BAD_PROJNUM "Mauvais projnum %d pour la colonne %s"
-#define MSG_BAD_QUERY_OPEN "Mode invalide %d pour l'ouverture d'une requˆte"
-#define MSG_BAD_QUERY_TYPE "Type de requˆte %d invalide pour %s"
-#define MSG_BAD_QUOTE_FIELD "Quote manquante dans %s champs %d ligne %d"
-#define MSG_BAD_READ_NUMBER "Mauvais nombre %d de valeurs lues dans %s"
-#define MSG_BAD_RECFM "Recfm type %d invalide pour DOSCOL"
-#define MSG_BAD_RECFM_VAL "Valeur invalide %d de Recfm"
-#define MSG_BAD_RESULT_TYPE "Mauvais type de r‚sultat %d pour %s"
-#define MSG_BAD_RETURN_TYPE "Type de retour %d incorrect"
-#define MSG_BAD_ROW_VALIST "Liste de valeurs invalide pour ROW"
-#define MSG_BAD_ROW_VALNB "Nombre de valeurs in‚gal dans la liste"
-#define MSG_BAD_SCF_ARGTYPE "Argument %d de type=%s invalide pour %s"
-#define MSG_BAD_SEM_DOMAIN "Domain .%d invalide"
-#define MSG_BAD_SETTINGS "Certaines sp‚cifications sont incompatibles avec le type de la table"
-#define MSG_BAD_SET_CASE "La casse d'un tableau ne peut pas passer de non respect … respecter"
-#define MSG_BAD_SET_STRING "SetValue: appel invalide pour STRING"
-#define MSG_BAD_SET_TYPE "Set type %hd invalide"
-#define MSG_BAD_SPECIAL_CMD "Commande sp‚ciale invalide"
-#define MSG_BAD_SPECIAL_COL "Colonne sp‚ciale invalide %s"
-#define MSG_BAD_SPEC_COLUMN "Colonne sp‚ciale invalide pour ce type de table"
-#define MSG_BAD_SQL_PARAM "ParamŠtre SQL invalide pour FindColblk"
-#define MSG_BAD_SUBLST_TYPE "Coparm: type %d de sous-liste invalide"
-#define MSG_BAD_SUBSEL_IN_X "Sub-select invalide pour une expression"
-#define MSG_BAD_SUBSEL_TYPE "Type %d invalide retourn‚ de Sub-Select"
-#define MSG_BAD_SUB_RESULT "R‚sultat ind‚fini de fonction Sub-Select"
-#define MSG_BAD_SUB_SELECT "Sub-select invalide comme argument de fonction"
-#define MSG_BAD_TABLE_LINE "Ligne '%s' ill‚gale ou tronqu‚e dans la section Tables"
-#define MSG_BAD_TABLE_LIST "Table %s absente de la liste des tables"
-#define MSG_BAD_TABLE_TYPE "Type invalide %s pour la table %s"
-#define MSG_BAD_TEST_TYPE "BlockTest sur tableau: types d‚pareill‚s %s %s"
-#define MSG_BAD_TRIM_ARGTYP "Argument de type invalide pour Trim"
-#define MSG_BAD_TYPE_FOR_IN "Types d'argument incompatibles pour la fonction IN"
-#define MSG_BAD_TYPE_FOR_S "Type incorrecte %d pour %s(%d)"
-#define MSG_BAD_TYPE_LIKE "Type(%d)= %d invalide pour LIKE"
-#define MSG_BAD_UPD_COR "Le qualificateur %s de la colonne %s ne se refŠre pas … la table mise … jour %s"
-#define MSG_BAD_USERBLK_LEN "Mauvaise longueur … l'‚criture du bloc utilisateur"
-#define MSG_BAD_USETEMP "Usetemp invalide '%s'"
-#define MSG_BAD_USETEMP_VAL "Valeur pour Usetemp invalide %d"
-#define MSG_BAD_VALBLK_INDX "Valeur hors limites de l'index du bloc de valeurs"
-#define MSG_BAD_VALBLK_TYPE "Type=%d invalide pour un bloc de valeurs"
-#define MSG_BAD_VALNODE "Type %d invalide pour le noeud valeur colonne %s"
-#define MSG_BAD_VALUE_TYPE "Type de valeur invalide %d"
-#define MSG_BAD_VAL_UPDATE "Impossible de d‚terminer quelle valeur %s doit ˆtre mise … jour"
-#define MSG_BAD_VIEW_OPEN "Mode invalide %d pour l'ouverture d'une View"
-#define MSG_BAD_XMODE_VAL "Mode d'ex‚cution %d invalide"
-#define MSG_BAD_XOBJ_TYPE "Mauvais type de Xobject %d"
-#define MSG_BAS_NS_LIST "Format invalide de la liste des espace-noms"
-#define MSG_BIN_F_TOO_LONG "Valeur trop longue pour le champ %s (%d --> %d)"
-#define MSG_BIN_MODE_FAIL "Echec mode binaire: %s"
-#define MSG_BLKTYPLEN_MISM "Disparit‚ types/longueurs de bloc dans SetValue"
-#define MSG_BLK_IS_NULL "Blk est nul"
-#define MSG_BLOCK_NO_MATCH "Bloc non correspondant"
-#define MSG_BREAKPOINT "Point de controle"
-#define MSG_BUFF_TOO_SMALL "GetColData: Buffer trop petit"
-#define MSG_BUFSIZE_ERROR "Erreur en recherchant la taille du buffer"
-#define MSG_BUILDING_GROUPS "Formation des groupes"
-#define MSG_BUILD_DIST_GRPS "Formation des groupes distinctes"
-#define MSG_BUILD_INDEX "Construction index %s sur %s"
-#define MSG_BXP_NULL "Bxp nul dans PUTFON"
-#define MSG_CANNOT_OPEN "Ouverture impossible de %s"
-#define MSG_CD_ONE_STEP "Count Distinct doit ˆtre ex‚cut‚ en une seule ‚tape"
-#define MSG_CD_ORDER_ERROR "Erreur de tri dans Count Distinct"
-#define MSG_CHECKING_ROWS "Test des lignes … mettre … jour"
-#define MSG_CHECK_LEVEL "Niveau de v‚rification fix‚ … %u"
-#define MSG_CHSIZE_ERROR "Erreur dans chsize: %s"
-#define MSG_CLN_NOT_IN_JOIN "La colonne C%d n'est pas dans le join"
-#define MSG_CNTDIS_COL_LOST "Colonne du Count Distinct perdue"
-#define MSG_COLIST_BAD_TYPE "Type=%d invalide pour Colist"
-#define MSG_COLNAM_TOO_LONG "Nom de colonne trop long"
-#define MSG_COLSEC_TOO_BIG "Section colonne trop grande, table %s (%d)"
-#define MSG_COLS_REDUCED " (r‚duit par Maxcol)"
-#define MSG_COLUMN_ERROR "Erreur de colonne"
-#define MSG_COLUMN_MISMATCH "Colonne %s d‚pareill‚e"
-#define MSG_COLUMN_NOT_KEY "La colonne jointe R%d.%s n'est pas une cl‚"
-#define MSG_COL_ALLOC_ERR "Allocation impossible du noeud colonne"
-#define MSG_COL_ALLOC_ERROR "Erreur d'allocation m‚moire pour la colonne %d"
-#define MSG_COL_HAS_NO_DEF "La colonne %s n'est pas d‚finie"
-#define MSG_COL_INVAL_TABLE "La colonne %s.%s n'existe pas dans la table %s alias %s"
-#define MSG_COL_ISNOT_TABLE "La colonne %s n'est pas dans la table %s"
-#define MSG_COL_NB_MISM "Le nombre de colonnes ne correspond pas"
-#define MSG_COL_NOTIN_GRPBY "La colonne %s n'est pas dans la liste de Group By"
-#define MSG_COL_NOTIN_TABLE "La colonne %s n'est dans aucune table"
-#define MSG_COL_NOTIN_UPDT "%s n'appartient pas … la table mise … jour %s"
-#define MSG_COL_NOT_CODED "La colonne %s n'est pas codifi‚e"
-#define MSG_COL_NOT_EXIST "La colonne %s n'existe pas dans %s"
-#define MSG_COL_NOT_FOUND "La colonne %s n'est pas dans la table %s"
-#define MSG_COL_NOT_IN_DB "La colonne %s de la table %s n'est pas dans la base de donn‚es"
-#define MSG_COL_NOT_IN_JOIN "La colonne %s n'est pas dans le join"
-#define MSG_COL_NOT_SORTED "La colonne %s de la table %s n'est pas tri‚e"
-#define MSG_COL_NUM_MISM "Disparit‚ du nombre de colonnes"
-#define MSG_COL_USED_TWICE "Colonne %s utilis‚e deux fois ???"
-#define MSG_COMPUTE_ERROR "Erreur dans Compute, op=%d"
-#define MSG_COMPUTE_NIY "Compute non impl‚ment‚ pour TOKEN"
-#define MSG_COMPUTING "Calculs en cours"
-#define MSG_COMPUTING_DIST "Comptage des valeurs distinctes"
-#define MSG_COMPUTING_FUNC "Calcul de(s) fonction(s)"
-#define MSG_COM_ERROR "Erreur Com"
-#define MSG_CONCAT_SUBNODE "Concat‚nation de sous-noeuds impossible"
-#define MSG_CONNECTED "Connect‚e"
-#define MSG_CONNECT_CANCEL "Connection interrompue par l'utilisateur"
-#define MSG_CONNECT_ERROR "Erreur %d se connectant à %s"
-#define MSG_CONN_CLOSED "%s(%d) ferm‚e"
-#define MSG_CONN_CREATED "Connexion %s cr‚e"
-#define MSG_CONN_DROPPED "Connexion %s supprim‚e"
-#define MSG_CONN_OPEN "%s(%d) ouverte (%s)"
-#define MSG_CONN_SUC_OPEN "%s(%d) ouverte avec succŠs"
-#define MSG_CONTROL_C_EXIT "Exit par Ctrl-C"
-#define MSG_COPY_BAD_PHASE "Copie de liste invalide en phase %d"
-#define MSG_COPY_INV_TYPE "Coparm: type non support‚ %d"
-#define MSG_CORREL_NO_QRY "Les sous-requˆtes corr‚l‚es ne peuvent pas ˆtre de type QRY"
-#define MSG_CREATED_PLUGDB " Cr‚‚ par PlugDB %s "
-#define MSG_CURSOR_SET "Curseur remis … %d"
-#define MSG_DATABASE_ACTIVE "Base de donn‚es %s activ‚e"
-#define MSG_DATABASE_LOADED "Base de donn‚es %s charg‚e"
-#define MSG_DATA_IS_NULL "ExecSpecialCmd: data est NULL"
-#define MSG_DATA_MISALIGN "Mauvais alignement pour ce type de donn‚es"
-#define MSG_DBASE_FILE "Fichier dBASE dbf: "
-#define MSG_DB_ALREADY_DEF "Base de donn‚es %s d‚j… d‚finie"
-#define MSG_DB_ALTERED "Base de donn‚es modifi‚e"
-#define MSG_DB_CREATED "Base de donn‚es %s cr‚‚e"
-#define MSG_DB_NOT_SPEC "Base de donn‚es non sp‚cifi‚e"
-#define MSG_DB_REMOVED "Base de donn‚es %s retir‚e de la liste"
-#define MSG_DB_SORT_ERROR "Erreur de tri DB"
-#define MSG_DB_STOPPED "Arrˆt de la base de donn‚es %s"
-#define MSG_DEBUG_NOT_ACTIV "Mode Debug inactif"
-#define MSG_DEBUG_SET_INV "Invalide pour Debug: %c"
-#define MSG_DEF_ALLOC_ERROR "Erreur d'allocation de la classe DEF %s"
-#define MSG_DELETING_ROWS "Suppression des lignes"
-#define MSG_DEL_FILE_ERR "Erreur … l'effacement de %s"
-#define MSG_DEL_READ_ERROR "Delete: erreur en lecture req=%d len=%d"
-#define MSG_DEL_WRITE_ERROR "Delete: erreur en ‚criture: %s"
-#define MSG_DEPREC_FLAG "Option Flag p‚rim‚e, utiliser Coltype"
-#define MSG_DICTIONARY "Dictionnaire "
-#define MSG_DIRECT_VARTOK "AccŠs direct aux rŠgles du Variable Token non impl‚ment‚"
-#define MSG_DISCONNECTED "D‚connect‚"
-#define MSG_DISTINCT_ERROR "Plus d'un ‚l‚ment fonctionel DISTINCT"
-#define MSG_DISTINCT_ROWS "S‚lection des lignes distinctes"
-#define MSG_DISTINCT_VALUES "Extraction des valeurs distinctes"
-#define MSG_DIS_NOHEAD_JOIN "Jointure distincte sur une table non en tˆte"
-#define MSG_DLL_LOAD_ERROR "Erreur %d au chargement du module %s"
-#define MSG_DOMAIN_EMPTY "Le domaine %s est vide"
-#define MSG_DOMAIN_ERROR "Colonne %s: disparit‚ domaine(%s)/valeur(%s)"
-#define MSG_DOMAIN_FULL "Le domaine %s est plein (max=%d)"
-#define MSG_DOM_FILE_ERROR "Fichier domain %s introuvable"
-#define MSG_DOM_NOT_SUPP "MS-DOM non support‚ par cette version"
-#define MSG_DOM_OPEN_ERROR "Erreur d'ouverture du domaine: %s"
-#define MSG_DOM_READ_ERROR "Erreur %d en lecture de domaine: %s"
-#define MSG_DOM_READ_ONLY "La table domaine %s est en lecture seulement"
-#define MSG_DOM_WRITE_ERROR "Erreur %d en ‚criture de domaine: %s"
-#define MSG_DONE "Effectu‚, rc=%d"
-#define MSG_DOSALMEM_NOMEM "Erreur d'allocation, pas assez de m‚moire"
-#define MSG_DROP_DB_ERR "Echec du Drop sur le base de donn‚es %s"
-#define MSG_DSORT_LOG_ERROR "Kindex: Erreur logique de tri distincte"
-#define MSG_DUMMY_NO_COLS "Les tables DUMMY ne peuvent pas avoir de colonne"
-#define MSG_DUPLICAT_COUNT "Count sur plus d'une colonne"
-#define MSG_DUP_COL_NAME "La colonne %s existe en double"
-#define MSG_DUP_PROJNUM "Non unique projnum %d pour la colonne %s"
-#define MSG_DVAL_NOTIN_LIST "Valeur %s non trouv‚e dans la liste des valeurs distinctes de la colonne %s"
-#define MSG_EMPTY_DOC "Document vide"
-#define MSG_EMPTY_FILE "%s du fichier vide %s: "
-#define MSG_ENDSTR_MISMATCH "Fins de chaŒne et de noeud ne correspondent pas"
-#define MSG_END_OF_DELETE "%d ligne(s) enlev‚e(s) en %.2lf sec"
-#define MSG_END_OF_INSERT "%d ligne(s) ins‚r‚e(s) en %.2lf sec"
-#define MSG_END_OF_QUERY "%d ligne(s) extraite(s) en %.2lf sec"
-#define MSG_END_OF_UPDATE "%d ligne(s) modifi‚e(s) en %.2lf sec"
-#define MSG_EOF_AFTER_LINE "Fin de fichier aprŠs la ligne %d"
-#define MSG_EOF_INDEX_FILE "EOF lisant le fichier index"
-#define MSG_ERASED " et effac‚e"
-#define MSG_ERASE_FAILED " (‚chec de l'effacement)"
-#define MSG_ERROR "Erreur"
-#define MSG_ERROR_IN_LSK "Erreur %d dans lseek64"
-#define MSG_ERROR_IN_SFP "Erreur %d dans SetFilePointer"
-#define MSG_ERROR_NO_PARM "ParamŠtre absent (valide seulement pour %.8s.1 et %.8s.5)"
-#define MSG_ERROR_OPENING "Erreur … l'ouverture de : "
-#define MSG_ERR_NUM_GT_MAX "Erreur: Numval (%d) plus grand que Maxnum (%d)"
-#define MSG_ERR_READING_REC "Erreur lisant l'enregistrement %d de %s"
-#define MSG_ERR_RET_RULE "Retour erreur, rŠgle=%u"
-#define MSG_ERR_RET_TYPE "Retour erreur, type=%d"
-#define MSG_EVAL_EXPIRED "Cette version d'évaluation est expir‚e"
-#define MSG_EVAL_ONLY "L'utilisation de cette Dll est pour ‚valuation seulement"
-#define MSG_EXECUTING "Ex‚cution"
-#define MSG_EXECUTION_ERROR "Erreur d'ex‚cution"
-#define MSG_EXEC_MODE_IS "Le mode d'ex‚cution est %s"
-#define MSG_EXEC_MODE_RESET ". Mode remis … Execute"
-#define MSG_EXEC_MODE_SET "Mode d'ex‚cution fix‚ … %s"
-#define MSG_EXIT_EVAL_ERR "Erreur pendant l'‚valuation de Exit"
-#define MSG_EXIT_FROM_LANG "Fin du langage %s version %d.%d"
-#define MSG_FAIL_ADD_NODE "L'ajout du noeud %s dans la table a ‚chou‚"
-#define MSG_FETCHING_DATA "Recherche des donn‚es"
-#define MSG_FETCHING_ROWS "Recherche des lignes"
-#define MSG_FETCH_NO_RES "Fetch: Pas de R‚sultats"
-#define MSG_FIELD_TOO_LONG "Valeur trop longue pour le champs %d ligne %d"
-#define MSG_FILELEN_ERROR "Erreur dans %s pour %s"
-#define MSG_FILE_CLOSE_ERR "Erreur %d … la fermeture du fichier"
-#define MSG_FILE_IS_EMPTY "Le fichier %s est vide"
-#define MSG_FILE_MAP_ERR "Erreur de File mapping"
-#define MSG_FILE_MAP_ERROR "CreateFileMapping %s erreur rc=%d"
-#define MSG_FILE_NOT_FOUND "Fichier %s introuvable"
-#define MSG_FILE_OPEN_YET "Fichier %s d‚j… ouvert"
-#define MSG_FILE_UNFOUND "Fichier %s non trouv‚"
-#define MSG_FILGRP_NO_TABLE "Table %d manquante pour groupe filtre"
-#define MSG_FILTER_ATTACH "Filtre pass‚ … Attach"
-#define MSG_FILTER_NO_TABLE "Filtre: premiŠre table manquante"
-#define MSG_FIND_BAD_TYPE "Recherche dans un tableau: type non conforme %s %s"
-#define MSG_FIX_OVFLW_ADD "D‚passement de capacit‚ en addition"
-#define MSG_FIX_OVFLW_TIMES "D‚passement de capacit‚ en mutiplication"
-#define MSG_FIX_UNFLW_ADD "Sous d‚passement de capacit‚ en addition"
-#define MSG_FIX_UNFLW_TIMES "Sous d‚passement de capacit‚ en multiplication"
-#define MSG_FLD_TOO_LNG_FOR "Champs %d trop long pour %s ligne %d de %s"
-#define MSG_FLTST_NO_CORREL "FilTest ne devrait ˆtre appel‚ que pour les sous-requˆtes corr‚l‚es"
-#define MSG_FLT_BAD_RESULT "Virgule flottante: r‚sultat inexacte"
-#define MSG_FLT_DENORMAL_OP "Op‚rande virgule flottante non normalis‚"
-#define MSG_FLT_INVALID_OP "Op‚ration virgule flottante invalide"
-#define MSG_FLT_OVERFLOW "D‚passement de capacit‚ virgule flottante"
-#define MSG_FLT_STACK_CHECK "Virgule flottante: Erreur de la pile"
-#define MSG_FLT_UNDERFLOW "Sous-d‚passement de capacit‚ virgule flottante"
-#define MSG_FLT_ZERO_DIVIDE "Virgule flottante: division par z‚ro"
-#define MSG_FMT_WRITE_NIY "L'‚criture des fichiers %s n'est pas encore impl‚ment‚e"
-#define MSG_FNC_NOTIN_SLIST "Fonction de tri absente de la liste de s‚lection"
-#define MSG_FORMAT_ERROR "Erreur de formattage"
-#define MSG_FOXPRO_FILE "Fichier FoxPro: "
-#define MSG_FPUTS_ERROR "Erreur dans fputs: %s"
-#define MSG_FSBPARP_NULL "PUTFON: fsbparp est nul"
-#define MSG_FSEEK_ERROR "Erreur dans fseek: %s"
-#define MSG_FSETPOS_ERROR "Erreur dans fseek pour i=%d"
-#define MSG_FTELL_ERROR "Erreur dans ftell enregistrement=%d: %s"
-#define MSG_FUNCTION_ERROR "Erreur dans %s: %d"
-#define MSG_FUNC_ERRNO "Erreur %d dans %s"
-#define MSG_FUNC_ERROR "Erreur dans %s"
-#define MSG_FUNC_ERR_S "Erreur dans %s: %s"
-#define MSG_FUNC_REF_DEL "R‚f‚rence … une fonction d‚finie (rŠgle %d) qui a ‚t‚ supprim‚e"
-#define MSG_FWRITE_ERROR "Erreur dans fwrite: %s"
-#define MSG_GETCWD_ERR_NO "?getcwd %s errno=%d"
-#define MSG_GETFILESIZE_ERR "Erreur %d dans GetFileSize"
-#define MSG_GET_DIST_VALS "R‚cup‚ration des valeurs distinctes de "
-#define MSG_GET_ERROR "Erreur dans %s (colonne %d)"
-#define MSG_GET_FUNC_ERR "Erreur en recherche de la fonction %s: %s"
-#define MSG_GET_NAME_ERR "Erreur en retrouvant le nom d'une table SYS"
-#define MSG_GLOBAL_ERROR "Erreur d'allocation de Global (taille=%d)\n"
-#define MSG_GRAM_ALLOC_ERR "Erreur d'allocation dans Grammar Up"
-#define MSG_GRAM_MISMATCH "Avertissement: version de GRAMMAR p‚rim‚e (sauv‚ sous GRAMMAR v%u)"
-#define MSG_GRAM_SUBSET_ERR "Erreur d'initialisation du dictionnaire de la grammaire"
-#define MSG_GRBY_TAB_NOTIMP "Group by avec tables jointes non impl‚ment‚"
-#define MSG_GROUPBY_NOT_ALL "Group By doit inclure toutes les s‚lections non-fonctionnelles"
-#define MSG_GROUP_ON_FUNC "Group by invalide sur colonne fonctionnelle"
-#define MSG_GRP_COL_MISM "Disparit‚ colonne des groupes"
-#define MSG_GRP_LIST_MISMAT "Le groupement ne couvre pas la liste de s‚lection"
-#define MSG_GUARD_PAGE "Violation de page de garde"
-#define MSG_GZOPEN_ERROR "gzopen %s: erreur %d sur %s"
-#define MSG_GZPUTS_ERROR "Erreur dans gzputs: %s"
-#define MSG_HANDLE_IS_NULL "%s est NULL: erreur code: %d"
-#define MSG_HARRY_COMP_NIY "Compute non impl‚ment‚ pour les chaŒnes cod‚es"
-#define MSG_HAVING_FILTER "Traitement du Filtre Having"
-#define MSG_HBUF_TOO_SMALL "Buffer(%d) trop petit pour entˆte(%d)"
-#define MSG_HEAD_OPEN_ERROR "Erreur … l'ouverture du fichier header"
-#define MSG_HEAD_READ_ERROR "Erreur en lecture du fichier header %s"
-#define MSG_HEAD_WRITE_ERR "Erreur en ‚criture du fichier header"
-#define MSG_HI_OFFSET_ERR "Offset sup‚rieur non nul"
-#define MSG_HUGE_DEFAULT "Huge est %d par d‚fault"
-#define MSG_HUGE_WARNING_1 "M‚moire Huge non compatible 16-bit pour %d\n"
-#define MSG_HUGE_WARNING_2 "R‚sultats impr‚visibles possibles\n"
-#define MSG_IDLE "Au repos"
-#define MSG_ILLEGAL_INSTR "Instruction ill‚gale"
-#define MSG_ILL_FILTER_CONV "Conversion implicite ill‚gale dans un filtre"
-#define MSG_INDEX_CREATED "Index %s cr‚‚ sur %s"
-#define MSG_INDEX_DEF_ERR "Erreur sauvegardant l'index d‚finition pour %s"
-#define MSG_INDEX_DROPPED "Index %s supprim‚ de %s"
-#define MSG_INDEX_INIT_ERR "Echec de l'initialisation de l'index %s"
-#define MSG_INDEX_NOT_DEF "Index %s non d‚fini"
-#define MSG_INDEX_NOT_UNIQ "L'index n'est pas Unique"
-#define MSG_INDEX_ONE_SAVE "Les index sont sauvegard‚s dans un fichier unique"
-#define MSG_INDEX_SEP_SAVE "Les index sont sauvegard‚s dans des fichiers s‚par‚s"
-#define MSG_INDEX_YET_ON "L'index %s existe d‚j… sur %s"
-#define MSG_INDX_ALL_DROP "Tous les index de %s supprim‚s"
-#define MSG_INDX_COL_NOTIN "La colonne index %s n'existe pas dans la table %s"
-#define MSG_INDX_EXIST_YET "L'entr‚e index existe d‚j…"
-#define MSG_INIT_ERROR "Erreur à l'initialisation de %s"
-#define MSG_INIT_FAILED "L'initialisation de %s a ‚chou‚"
-#define MSG_INPUT "Entr‚e: "
-#define MSG_INPUT_KEYBD_YET "L'entr‚e est d‚j… au clavier"
-#define MSG_INSERTING "Insertion: "
-#define MSG_INSERT_ERROR "Insert erreur: usage multiple du fichier %s"
-#define MSG_INSERT_MISMATCH "Les listes colonne et valeur ne correspondent pas"
-#define MSG_INTERNAL "interne"
-#define MSG_INT_COL_ERROR "Erreur interne sur la colonne index %s"
-#define MSG_INT_OVERFLOW "D‚passement de capacit‚ sur entier"
-#define MSG_INT_ZERO_DIVIDE "Division entiŠre par z‚ro"
-#define MSG_INVALID_BIP "Bip invalide .%d"
-#define MSG_INVALID_DISP "Disposition invalide"
-#define MSG_INVALID_FTYPE "SBV: Ftype %d invalide"
-#define MSG_INVALID_HANDLE "Poign‚e invalide"
-#define MSG_INVALID_OPER "Op‚rateur invalide %d pour %s"
-#define MSG_INVALID_OPTION "Option invalide %s"
-#define MSG_INV_COLUMN_TYPE "Type %d Invalide pour la colonne %s"
-#define MSG_INV_COL_DATATYP "Type de donn‚es %d invalide pour la colonne %d"
-#define MSG_INV_COL_NUM "Colonne invalide %d"
-#define MSG_INV_COL_TYPE "Type de colonne %s invalide"
-#define MSG_INV_CONC_BIP "Bip invalide (seuls valides: %.8s.0 .1 and .5)"
-#define MSG_INV_DATA_PATH "Chemin vers les donn‚es invalide"
-#define MSG_INV_DEF_READ "Lecture diff‚r‚e invalide rc=%d"
-#define MSG_INV_DIRCOL_OFST "Offset invalide pour une colonne DIR"
-#define MSG_INV_DOMAIN_TYPE "Type invalide %d"
-#define MSG_INV_FILTER "Filtre r‚siduel dans %s"
-#define MSG_INV_FNC_BUFTYPE "FNC: Type %d de l'argument invalide pour %s"
-#define MSG_INV_INFO_TYPE "Type d'info catalog invalide %d"
-#define MSG_INV_INIPATH "Inipath invalide "
-#define MSG_INV_MAP_POS "Position m‚moire invalide"
-#define MSG_INV_OPERATOR "op‚rateur invalide %d\n"
-#define MSG_INV_PARAMETER "ParamŠtre invalide %s"
-#define MSG_INV_PARM_TYPE "Type de paramŠtre invalide"
-#define MSG_INV_QUALIFIER "Qalificateur '%s' invalide"
-#define MSG_INV_QUERY_TYPE "Type de requˆte %d invalide"
-#define MSG_INV_RAND_ACC "L'accŠs al‚atoire d'une table non optimis‚e est impossible"
-#define MSG_INV_REC_POS "Position d'enregistrement invalide"
-#define MSG_INV_RESULT_TYPE "Type de r‚sultat invalide %s"
-#define MSG_INV_SET_SUBTYPE "Type de formattage %d invalide"
-#define MSG_INV_SPECIAL_CMD "%s: Commande sp‚ciale invalide"
-#define MSG_INV_SUBTYPE "Sous type invalide %s"
-#define MSG_INV_TOK_DOMAIN "Le domaine %s n'existe pas"
-#define MSG_INV_TOPSEM_CMD "Commande TopSem invalide %c"
-#define MSG_INV_TRANSF_USE "Usage invalide en rŠgle transformationnelle"
-#define MSG_INV_TYPE_SPEC "Sp‚cification de type invalide (%.8s.%d)"
-#define MSG_INV_UPDT_TABLE "Table %s invalide pour Update"
-#define MSG_INV_VALUE_LIST "Liste de valeurs invalide pour Insert"
-#define MSG_INV_WHERE_JOIN "Clause Where invalide dans une requˆte de jointure"
-#define MSG_INV_WORK_PATH "Chemin de travail invalide"
-#define MSG_IN_ARGTYPE_MISM "Arguments de types incompatibles pour une expression IN"
-#define MSG_IN_USE " et en activit‚"
-#define MSG_IN_WITHOUT_SUB "IN ou EXISTS sans tableau ou subquery"
-#define MSG_IS_NOT_CONN "%s n'est pas une connexion d‚finie"
-#define MSG_JCT_MISS_COLS "Colonnes manquantes pour une table JCT"
-#define MSG_JCT_MISS_TABLE "Table jointe manquante pour JCT"
-#define MSG_JCT_NO_FILTER "Filtrage impossible des tables virtuelles JCT"
-#define MSG_JCT_NO_KEY "Erreur logique JCT: cl‚ manquante"
-#define MSG_JOIN_KEY_NO_COL "La cl‚ de jointure n'est pas une colonne"
-#define MSG_KEY_ALLOC_ERR "Erreur d'allocation d'un bloc offset cl‚"
-#define MSG_KEY_ALLOC_ERROR "Erreur d'allocation m‚moire, Klen=%d n=%d"
-#define MSG_LANGUAGE_QUIT "%s lib‚r‚"
-#define MSG_LANG_ACTIVE "Langage %s actif"
-#define MSG_LANG_ALLOC_FAIL "PlugInitLang: Erreur d'allocation du bloc Lang"
-#define MSG_LANG_ALREADY_UP "Langage d‚j… en ‚dition"
-#define MSG_LANG_BAD_SAVE "Langage %s peut-ˆtre incorrectement sauvegard‚"
-#define MSG_LANG_NOT_FREED "Langage %s non lib‚rable (pas dans la chaŒne principale)"
-#define MSG_LANG_SAVED "Langage %s sauvegard‚"
-#define MSG_LANG_WR_LEN_ERR "Erreur de longueur … l'‚criture du bloc Lang"
-#define MSG_LDF_ALLOC_ERROR "Erreur d'allocation d'un LdfBlock"
-#define MSG_LDF_RN_MISMATCH "LDF: d‚calage des num‚ros de rŠgle"
-#define MSG_LDF_WLEN_ERROR "Erreur de longueur en ‚crivant LdfData"
-#define MSG_LDF_W_LEN_ERROR "Erreur de longueur pour LdfData en ‚criture"
-#define MSG_LIC_NO_MYSQL "Votre licence actuelle ne permet pas l'utilisation du type MYSQL"
-#define MSG_LINEAR_ERROR "Erreur de lin‚arisation"
-#define MSG_LINE_LENGTH "Largeur d'impression fix‚e … %d"
-#define MSG_LINE_MAXLIN "Nombre de lignes de travail plafonn‚ … %d"
-#define MSG_LINE_MAXRES "Nombre de lignes de r‚sultat plafonn‚ … %d"
-#define MSG_LINE_MAXTMP "Nombre de lignes interm‚diaires plafonn‚ … %d"
-#define MSG_LINE_TOO_LONG "La nouvelle ligne est trop longue"
-#define MSG_LINJOINDB_ERROR "Erreur systŠme: appel incorrecte … LinJoinDB"
-#define MSG_LIST "--Liste--"
-#define MSG_LNG_NOT_IN_LIST "Le langage %s n'est pas dans la liste"
-#define MSG_LOADING_DB "Chargement description de la BD"
-#define MSG_LOADING_FAILED "Le chargement de %s a ‚chou‚"
-#define MSG_LOAD_CDLL_ERROR "Erreur au chargement de ConnDll: rc=%d"
-#define MSG_LOCSTRG_TOO_BIG "LOCSTRG: n trop grand ? (%d)\n"
-#define MSG_LOGICAL_ERROR "%s: Erreur logique"
-#define MSG_LRECL_TOO_SMALL "Lrecl trop petit (longueur en-tˆte = %d)"
-#define MSG_MAC_NO_DELETE "Pas de suppression de lignes pour les tables MAC"
-#define MSG_MAC_NO_INDEX "Pas d'accŠs direct aux tables MAC"
-#define MSG_MAC_READ_ONLY "Les tables MAC sont en lecture seulement"
-#define MSG_MAC_WIN_ONLY "Les tables MAC sont seulement sous Windows"
-#define MSG_MAKE_EMPTY_FILE "G‚n‚ration du fichier vide %s: %s"
-#define MSG_MAKING "G‚n‚ration"
-#define MSG_MAKING_DISTINCT "Regroupement des valeures distinctes"
-#define MSG_MALLOC_ERROR "Allocation m‚moire impossible par %s"
-#define MSG_MALLOC_NULL "malloc retourne Null"
-#define MSG_MAP_NO_MORE "Le type %s n'est plus support‚"
-#define MSG_MAP_OBJ_ERR "Erreur %d … la fermeture du map objet"
-#define MSG_MAP_VEC_ONLY "MAP Insert permis seulement pour les tables VEC Estimate"
-#define MSG_MAP_VIEW_ERROR "MapViewOfFile %s erreur rc=%d"
-#define MSG_MAXSIZE_ERROR "Maxsize incalculable sur table ouverte"
-#define MSG_MAXTMP_TRUNCATE "R‚sultats interm‚diaires tronqu‚s par maxtmp=%d"
-#define MSG_MAX_BITMAP "Taille maxi des bitmaps d'optimisation fix‚e … %d"
-#define MSG_MEMSIZE_TOO_BIG "Erreur: memsize (%d) trop grand pour Length (%d)"
-#define MSG_MEM_ALLOC_ERR "Erreur d'allocation m‚moire, taille %s = %d"
-#define MSG_MEM_ALLOC_ERROR "Erreur d'allocation m‚moire"
-#define MSG_MEM_ALLOC_YET "M‚moire d‚j… allou‚e"
-#define MSG_METAFILE_NOTFND "Fichier Meta introuvable"
-#define MSG_MISPLACED_QUOTE "Appostrophe mal plac‚e ligne %d"
-#define MSG_MISSING "Manquant: Value=%p Argval=%p Builtin=%d"
-#define MSG_MISSING_ARG "Argument manquant pour l'op‚rateur %d"
-#define MSG_MISSING_COL_DEF "D‚finition des colonnes manquante"
-#define MSG_MISSING_CONNECT "Connection #1 manquante"
-#define MSG_MISSING_EOL "Fin de ligne manquante dans %s"
-#define MSG_MISSING_FIELD "Champs %d manquant dans %s ligne %d"
-#define MSG_MISSING_FNAME "Nom du fichier manquant"
-#define MSG_MISSING_NODE "Noeud %s manquant dans %s"
-#define MSG_MISSING_POS "POS code manquant"
-#define MSG_MISSING_ROWNODE "Impossible de trouver le noeud de la ligne %d"
-#define MSG_MISSING_SERV_DB "Indication serveur et/ou base de donn‚es manquante"
-#define MSG_MISS_LEAD_COL "Colonne majeure %s manquante"
-#define MSG_MISS_NAME_LRECL "Nom du fichier et/ou LRECL manquant"
-#define MSG_MISS_TABLE_LIST "Liste des tables manquante"
-#define MSG_MISS_VCT_ELMT "Taille de bloc vectoriel manquante (Elements)"
-#define MSG_MIS_TAG_LIST "Liste des balises colonne manquante"
-#define MSG_MKEMPTY_NIY "MakeEmptyFile: pas encore implement‚ pour Huge et Unix"
-#define MSG_MOVE_INV_TYPE "MOVPARM: paramŠtre de type invalide %d"
-#define MSG_MULT_DISTINCT "Distinct utilis‚ plus d'une fois"
-#define MSG_MULT_KEY_ERROR "Erreur sur cl‚ multiple k=%d n=%d"
-#define MSG_MUL_MAKECOL_ERR "Erreur logique dans TABMUL::MakeCol"
-#define MSG_MYSQL_CNC_OFF "La connexion … MySQL est ferm‚e"
-#define MSG_MYSQL_CNC_ON "La connexion … MySQL est ‚tablie"
-#define MSG_MYSQL_NOT_SUP "Pas de support de MySQL dans cette version"
-#define MSG_MY_CNC_ALREADY "La connexion … MySQL est d‚j… active"
-#define MSG_NAME_CONV_ERR "Erreur de convertion du nom de noeud"
-#define MSG_NAME_IS_USED "Le nom %s est d‚j… utilis‚"
-#define MSG_NCOL_GT_MAXCOL "Trop de colonnes (%d > %d max)"
-#define MSG_NEW_CHAR_NULL "new char(%d) retourne Null"
-#define MSG_NEW_DOC_FAILED "Impossible de cr‚er le nouveau document"
-#define MSG_NEW_RETURN_NULL "NULL renvoy‚ par New dans PlugEvalLike"
-#define MSG_NEW_TABLE_ERR "La nouvelle table %s ne peut pas ˆtre charg‚e"
-#define MSG_NEXT_FILE_ERROR "Erreur en recherche du fichier suivant. rc=%s"
-#define MSG_NODEF_FROM_VIEW "Pas de d‚finition de table depuis une view"
-#define MSG_NODE_FOR_CHAR "Noeud %s trouve au lieu d'un caractŠre"
-#define MSG_NODE_SUBSET_ERR "Erreur d'initialisation de la zone Noeud %d"
-#define MSG_NONCONT_EXCEPT "Exception non-continuable"
-#define MSG_NON_DUP_HAVING "Clause Having dans une requˆte non fonctionelle"
-#define MSG_NON_EVAL_SEM "Sem non ‚valu‚e: p_no=%d"
-#define MSG_NOP_ZLIB_INDEX "L'indexage d'une table zlib non optimis‚e est impossible"
-#define MSG_NOT_A_DBF_FILE "Le fichier n'a pas le format dBASE dbf "
-#define MSG_NOT_ENOUGH_COLS "Pas assez de colonnes dans %s"
-#define MSG_NOT_ENOUGH_MEM "M‚moire insuffisante pour cette op‚ration"
-#define MSG_NOT_FIXED_LEN "Fichier %s non fixe, len=%d lrecl=%d"
-#define MSG_NOT_IMPLEMENTED "Non implement‚: %.8s"
-#define MSG_NOT_IMPL_JOIN "Pas impl‚ment‚ pour les jointures"
-#define MSG_NOT_IMPL_SET "Pas impl‚ment‚ pour les op‚rateurs d'ensembles"
-#define MSG_NOT_IMPL_YET "Pas encore implement‚"
-#define MSG_NOT_LINEARIZED "Arborescence des tables non lin‚aris‚e"
-#define MSG_NOT_MODIFIABLE " (non modifiable)"
-#define MSG_NO_0DH_HEAD "0DH manquant en fin d'en-tˆte (dbc=%d)"
-#define MSG_NO_ACTIVE_APPL "Pas d'application active"
-#define MSG_NO_ACTIVE_DB "Pas de base de donn‚es active"
-#define MSG_NO_ACTIVE_UDIC "Pas de dictionaire utilisateur actif"
-#define MSG_NO_AGGR_FUNC "Fonction aggr‚g‚e %d ill‚gale … cet endroit"
-#define MSG_NO_AREA_FILE "Fichier Area introuvable"
-#define MSG_NO_AVAIL_RESULT "Pas de r‚sultat disponible"
-#define MSG_NO_BIG_DELETE "D‚l‚tion Partielle non impl‚ment‚e pour les fichiers HUGE"
-#define MSG_NO_CHAR_FROM "Conversion de type %d en caractŠres impossible"
-#define MSG_NO_CLUSTER_COL "Pas de colonne optimisable"
-#define MSG_NO_COL_ADDING "Ajouter des colonnes dans une d‚finition existante est impossible"
-#define MSG_NO_COL_DEF_AS "La d‚finitions des colonnes est incompatible avec AS Select"
-#define MSG_NO_COL_FOUND "La section colonne %s est vide"
-#define MSG_NO_COL_IN_TABLE "La colonne %d n'est pas dans la table %s"
-#define MSG_NO_COL_SECTION "Section colonne manquante pour la table %s"
-#define MSG_NO_CONNECT_ADDR "Adresse de connection non sp‚cifi‚e"
-#define MSG_NO_CONST_FILTER "Filtres constants non implement‚s"
-#define MSG_NO_CURLY_BRKT "Pas d'accolade de fermeture"
-#define MSG_NO_DATABASE "Base de donn‚es %s introuvable"
-#define MSG_NO_DATE_FMT "Pas de format date pour le valblock de type %d"
-#define MSG_NO_DBF_INSERT "Insert pas encore impl‚ment‚ pour les fichier DBF"
-#define MSG_NO_DEF_FNCCOL "Colonne fonction par d‚faut introuvable"
-#define MSG_NO_DEF_PIVOTCOL "Colonne pivot par d‚faut introuvable"
-#define MSG_NO_DIR_INDX_RD "Pas d'accŠs directe des tables %s"
-#define MSG_NO_DMY_DIR_ACC "Pas d'accŠs direct aux tables virtuelles DUMMY"
-#define MSG_NO_DOM_DELETE "D‚l‚tion Partielle non impl‚ment‚e pour les domaines"
-#define MSG_NO_DOM_MATCH "ChaŒne %.8s... non touv‚e dans le domaine %s"
-#define MSG_NO_EDITED_LANG "Coparm: Pas de langage en ‚dition"
-#define MSG_NO_EXP_LINK "Liaison par expression invalide pour une table JCT"
-#define MSG_NO_EXT_FILTER "Le filtrage ne peut se r‚f‚rer … une autre table"
-#define MSG_NO_EXT_UPDATE "Pas de mise … jour en r‚f‚rence … une autre table"
-#define MSG_NO_FEAT_SUPPORT "%s non support‚ dans cette version"
-#define MSG_NO_FILE_LIST "La table %s n'a pas de liste de fichiers"
-#define MSG_NO_FLD_FORMAT "Format absent pour le champs %d de %s"
-#define MSG_NO_FORMAT_COL "Type COLUMN informattable"
-#define MSG_NO_FORMAT_TYPE "Le format ne peut pas ˆtre d‚fini … partir du type %d"
-#define MSG_NO_FULL_JOIN "Jointures autoris‚es seulement … ‚galit‚ sur cl‚(s)"
-#define MSG_NO_FUL_OUT_JOIN "Jointures externes complŠtes non support‚es"
-#define MSG_NO_FUNC_ORDER "Tri non support‚ sur ‚l‚ment fonctionnel"
-#define MSG_NO_HEAD_JOIN "Jointure sur une table non en tˆte"
-#define MSG_NO_HQL_CONV "Conversion en HQL non disponible"
-#define MSG_NO_INDEX "La table %s n'a pas d'index"
-#define MSG_NO_INDEX_GBX "Pas ou mauvais index pour SQLGBX"
-#define MSG_NO_INDEX_IN "Pas d'index dans %s"
-#define MSG_NO_INDEX_READ "Pas d'accŠs directe des tables multiples"
-#define MSG_NO_INIT_LANG "Pas de langage initial"
-#define MSG_NO_JOIN_TO_EXP "Jointure vers une expression impossible"
-#define MSG_NO_JOIN_UPDEL "Pas de jointure avec Update/Delete"
-#define MSG_NO_KEY_COL "Pas de colonne cl‚ trouv‚e"
-#define MSG_NO_KEY_UPDATE "Le nom des cl‚s ne peut pas ˆtre modifi‚"
-#define MSG_NO_LANGUAGE "Pas de langage op‚rationnel\n"
-#define MSG_NO_LANG_TO_QUIT "Pas de langage … quitter"
-#define MSG_NO_LISTVAL_HERE "LSTBLK: Liste de valeurs utilis‚e hors contexte"
-#define MSG_NO_MAP_INSERT "MAP incompatible avec Insert"
-#define MSG_NO_MATCHING_COL "Pas de colonne correspondant … %s dans %s"
-#define MSG_NO_MATCH_COL "Colonne correspondante introuvable"
-#define MSG_NO_MEMORY "M‚moire pleine"
-#define MSG_NO_MEM_CORR_SUB "Subquery corr‚l‚e en m‚moire non encore impl‚ment‚e"
-#define MSG_NO_MODE_PADDED "Mode non support‚ pour les fichiers 'padded'"
-#define MSG_NO_MORE_COL "La colonne %s n'est plus dans la table pivot"
-#define MSG_NO_MORE_LANG "Plus de langage, exit de %s\n"
-#define MSG_NO_MORE_VAR "Les fichiers VAR ne sont plus support‚s"
-#define MSG_NO_MULCOL_JOIN "Jointure vers un index multi-colonne pas encore possible"
-#define MSG_NO_MULT_HAVING "Clauses Having multiples non impl‚ment‚es"
-#define MSG_NO_MUL_DIR_ACC "AccŠs direct des tables multiples pas encore impl‚ment‚"
-#define MSG_NO_MUL_VCT "Les tables VCT ne peuvent pas ˆtre multiples"
-#define MSG_NO_MYSQL_CONN "Aucune connexion MySQL ouverte"
-#define MSG_NO_MYSQL_DELETE "Pas de Delete pour les tables MySQL"
-#define MSG_NO_NBCOL "Pas de NBcol"
-#define MSG_NO_NBLIN "Pas de NBlin, MaxSize ou Continued"
-#define MSG_NO_NBLIN_CONT "Fetch: Pas de NBlin ou Continued"
-#define MSG_NO_NULL_CONST "Les constantes <null> ne sont pas prises en charge"
-#define MSG_NO_ODBC_COL "Colonnes ODBC automatiques non support‚es par cette version"
-#define MSG_NO_ODBC_DELETE "Delete ne devrait pas ˆtre appel‚ pour les tables ODBC"
-#define MSG_NO_ODBC_DIRECT "AccŠs directe des tables ODBC non encore impl‚ment‚"
-#define MSG_NO_ODBC_MUL "Multiple(2) non support‚ pour les tables ODBC"
-#define MSG_NO_ODBC_SPECOL "Pas de colonne sp‚ciale ODBC"
-#define MSG_NO_OPT_COLUMN "Pas optimisable ou pas de colonne optimis‚es"
-#define MSG_NO_OP_MODIF "Les modificateurs ne s'appliquent pas … %s"
-#define MSG_NO_PARAMETER "Pas de paramŠtre"
-#define MSG_NO_PART_DEL "Delete partiel des fichier %s impossible"
-#define MSG_NO_PART_MAP "Mapping partiel non impl‚ment‚ pour cet OS"
-#define MSG_NO_PAR_BLK_INS "Insertion de bloc partiel impossible"
-#define MSG_NO_PIV_DIR_ACC "Pas d'accŠs directe aux tables PIVOT"
-#define MSG_NO_POS_ADDED "Pos_code non ajout‚"
-#define MSG_NO_PROMPTING "Relance impossible pour les tables distribu‚es"
-#define MSG_NO_QRY_DELETE "Delete n'est pas utilisable pour les views QRY"
-#define MSG_NO_QUERY_ARRAY "Tableaux avec QUERY non encore impl‚ment‚s"
-#define MSG_NO_RCUR_DSK_YET "Usage r‚cursif de DISK non encore implement‚"
-#define MSG_NO_READ_32 "Lecture de 32 octets impossible"
-#define MSG_NO_RECOV_SPACE "Espace non recouvrable dans le fichier index"
-#define MSG_NO_REF_DELETE "Pas de suppression en r‚f‚rence … une autre table"
-#define MSG_NO_REF_UPDATE "Pas de mise … jour en r‚f‚rence … une autre table"
-#define MSG_NO_REMOTE_FNC "Certaines fonctions ne peuvent pas ˆtre ex‚cut‚es … distance"
-#define MSG_NO_ROWID_FOR_AM "AccŠs direct impossible de ROWID pour les tables de type %s"
-#define MSG_NO_ROW_NODE "Le nom du Rownode n'est pas d‚fini"
-#define MSG_NO_SECTION_NAME "Nom de section manquant"
-#define MSG_NO_SEC_UPDATE "Les noms de section ne peuvent pas ˆtre modifi‚s"
-#define MSG_NO_SELECTED_DB "Aucune base de donn‚es s‚lect‚e"
-#define MSG_NO_SELF_PIVOT "Une table ne peut se pivoter elle-mˆme !"
-#define MSG_NO_SERVER_FOUND "Serveur introuvable"
-#define MSG_NO_SETPOS_YET "SetPos pas encore impl‚ment‚ pour les fichier %s"
-#define MSG_NO_SFEXIT_UNIX "Fonction %s non disponible sur Unix"
-#define MSG_NO_SOURCE " (pas de source)"
-#define MSG_NO_SPEC_COL "Pas de colonne sp‚ciales MYSQL"
-#define MSG_NO_SQL_DELETE "Delete n'est pas utilisable actuellement pour les views SQL"
-#define MSG_NO_SUB_VAL "Pas de sous-value d'un tableau de type %d"
-#define MSG_NO_SUCH_INDEX "La table %s n'a pas l'index %s"
-#define MSG_NO_SUCH_SERVER "Serveur %s introuvable"
-#define MSG_NO_SUCH_TABLE "Table %s pas dans la base de donn‚es"
-#define MSG_NO_TABCOL_DATA "Pas de donn‚es pour la table %s colonne %s"
-#define MSG_NO_TABLE_COL "Aucune colonne trouv‚e pour %s"
-#define MSG_NO_TABLE_DEL "Delete non autoris‚ pour les tables %s "
-#define MSG_NO_TABLE_DESC "Pas de bloc descriptif de table"
-#define MSG_NO_TABLE_INDEX "La table %s n'a pas d'index"
-#define MSG_NO_TABLE_LIST "Pas de liste de tables"
-#define MSG_NO_TAB_DATA "Pas de donn‚es pour la table %s"
-#define MSG_NO_TERM_IN_TOK "Les non-terminaux ne sont pas utilisables dans les rŠgles de Token"
-#define MSG_NO_TOKEN_DB "DB introuvable pour la colonne TOKEN %s"
-#define MSG_NO_UNIX_CATINFO "Pas d'info catalogue sous Unix"
-#define MSG_NO_UPDEL_JOIN "Pas de jointure de tables ODBC pour Update/Delete"
-#define MSG_NO_VCT_DELETE "D‚l‚tion Partielle non impl‚ment‚e pour les fichiers VCT"
-#define MSG_NO_VIEW_COLDEF "Colonne d‚finition impossible pour les views"
-#define MSG_NO_VIEW_SORT "La View fonctionnelle %s ne peut pas ˆtre tri‚e ou jointe"
-#define MSG_NO_ZIP_DELETE "Delete sur fichier Zip non encore implement‚"
-#define MSG_NO_ZIP_DIR_ACC "AccŠs directe des tables ZDOS non encore implement‚"
-#define MSG_NULL_COL_VALUE "La colonne n'a pas de valeur"
-#define MSG_NULL_ENTRY "InitLang, entr‚e nulle %d %s"
-#define MSG_NULL_QUERY "Requˆte vide"
-#define MSG_NUMVAL_NOMATCH "Disparit‚ de Numval pour %s"
-#define MSG_N_FULL_PARSES "%d significations"
-#define MSG_ODBC_READ_ONLY "ODBC est actuellement en lecture seulement"
-#define MSG_OFFSET_NOT_SUPP "Offset non support‚ pour ce type de sous requˆte"
-#define MSG_ONE_LANG_YET "Un langage est d‚j… en ‚dition"
-#define MSG_ONE_PARAM_ONLY "Un seul paramŠtre autoris‚"
-#define MSG_ONLY_LOG10_IMPL "Seul Log10 est implement‚"
-#define MSG_ON_LANGUAGE "Langage %.8s version %d niveau %d ‚ditable"
-#define MSG_OPENING "Ouverture"
-#define MSG_OPENING_QUERY "Ouverture de la requˆte"
-#define MSG_OPEN_EMPTY_FILE "Ouverture du fichier vide %s: %s"
-#define MSG_OPEN_ERROR "Erreur d'ouverture %d en mode %d sur %s: "
-#define MSG_OPEN_ERROR_IS "Erreur … l'ouverture de %s: %s"
-#define MSG_OPEN_ERROR_ON "Erreur d'ouverture sur %s"
-#define MSG_OPEN_MODE_ERROR "Erreur d'ouverture(%s) %d sur %s"
-#define MSG_OPEN_SORT_ERROR "Erreur logique de tri dans QUERY Open"
-#define MSG_OPEN_STRERROR "Erreur … l'ouverture: %s"
-#define MSG_OPEN_W_ERROR "Erreur … l'ouverture de %s en ‚criture"
-#define MSG_OPTBLK_RD_ERR "Erreur … la lecture d'un bloc optimisation: %s"
-#define MSG_OPTBLK_WR_ERR "Erreur … l'‚criture d'un bloc optimisation: %s"
-#define MSG_OPTIMIZING "Optimisation de "
-#define MSG_OPT_BMAP_RD_ERR "Erreur en lecture des bitmaps d'optimisation: %s"
-#define MSG_OPT_BMAP_WR_ERR "Erreur en ‚criture des bitmaps d'optimisation: %s"
-#define MSG_OPT_CANCELLED "Optimisation interrompue par l'utilisateur"
-#define MSG_OPT_DVAL_RD_ERR "Erreur en lecture des valeurs distinctes: %s"
-#define MSG_OPT_DVAL_WR_ERR "Erreur en ‚criture des valeurs distinctes: %s"
-#define MSG_OPT_HEAD_RD_ERR "Erreur en lecture de l'entˆte du fichier opt: %s"
-#define MSG_OPT_HEAD_WR_ERR "Erreur en ‚criture de l'entˆte du fichier opt: %s"
-#define MSG_OPT_INIT "Optimisation initialis‚e"
-#define MSG_OPT_LOGIC_ERR "Erreur logique dans SetBitmap, i=%d"
-#define MSG_OPT_MAX_RD_ERR "Erreur en lecture des valeurs maxi: %s"
-#define MSG_OPT_MAX_WR_ERR "Erreur en ‚criture des valeurs maxi: %s"
-#define MSG_OPT_MIN_RD_ERR "Erreur en lecture des valeurs mini: %s"
-#define MSG_OPT_MIN_WR_ERR "Erreur en ‚criture des valeurs mini: %s"
-#define MSG_OPT_NOT_MATCH "Le fichier opt %s n'est pas … jour"
-#define MSG_OP_RES_TOO_LONG "R‚sultat trop long pour l'op‚rateur=%d"
-#define MSG_ORDER_OUT_RANGE "Tri: Order %d hors limite"
-#define MSG_ORDER_TWICE "Un mˆme ‚l‚ment est tri‚ deux fois"
-#define MSG_PAGE_ERROR "Erreur de pagination"
-#define MSG_PARM_CNT_MISS "Disparit‚ du nombre de ParamŠtres"
-#define MSG_PARSE_NULL_SEM "S‚mantique nulle"
-#define MSG_PARSING_QUERY "Analyse de la requˆte"
-#define MSG_PIX_ERROR "Pix %s erreur rŠgle no=%u\n"
-#define MSG_PIX_TEST_ERROR "RŠgle=%u: pix-TEST pas dans le premier noeud\n"
-#define MSG_PLG_READ_ONLY "PLG est actuellement en lecture seulement"
-#define MSG_PLM_NULL_SFP "TABPLM ReadDB: Sfp est NULL"
-#define MSG_PLUG_NOT_INIT "Plug n'est pas initialis‚\n"
-#define MSG_PLUG_NOT_RUN "Plug n'est pas en marche"
-#define MSG_PNODE_RULE "(Noeud %d rŠgle %d) "
-#define MSG_POS_TOO_LONG "%s trop long (>%d)"
-#define MSG_PREC_VBLP_NULL "ARRAY SetPrecision: Vblp est NULL"
-#define MSG_PRIV_INSTR "Instruction privil‚gi‚e"
-#define MSG_PROCADD_ERROR "Erreur %d sur l'adresse de %s"
-#define MSG_PROCESS_SUBQRY "Sub-Query en cours de traitement"
-#define MSG_PROC_WOULD_LOOP "Bouclage du traitement (maxres=%d maxlin=%d)"
-#define MSG_PROGRESS_INFO "Informations sur le traitement en cours"
-#define MSG_PROMPT_CANCEL "Relance annul‚e"
-#define MSG_PROMPT_NIY "Prompt non impl‚ment‚ pour cette configuration"
-#define MSG_PTR_NOT_FOUND "Pointeur introuvable Num=%d ti1=%d"
-#define MSG_PXDEF_IS_NULL "Pxdef est NULL"
-#define MSG_QRY_READ_ONLY "Les views QRY sont en lecture seulement"
-#define MSG_QUERY_CANCELLED "Requˆte interrompue par l'utilisateur"
-#define MSG_QUERY_NOT_EXEC "Requˆte non ex‚cut‚e"
-#define MSG_QUERY_SAVED "Requˆte %s sauvegard‚e"
-#define MSG_QUOTE_IN_QUOTE "Appostrophe dans un champ entre appostrophe ligne %d"
-#define MSG_RANGE_NIY "Range pas encore impl‚ment‚ pour %s"
-#define MSG_RANGE_NO_JOIN "Range non compatible avec les index de jointure"
-#define MSG_RC_READING "rc=%d en lecture de la table %s"
-#define MSG_READB_BAD_INIT "%s ReadDB appel‚ avec Init=0"
-#define MSG_READCOL_ERROR "SQLCOL: erreur dans ReadColumn"
-#define MSG_READING "Lecture"
-#define MSG_READING_FROM "Lecture de %s"
-#define MSG_READING_RECORD "Erreur en lecture de l'enregistrement %d de %s"
-#define MSG_READY "Prˆt"
-#define MSG_READ_ERROR "Erreur en lecture sur %s: %s"
-#define MSG_READ_ERROR_RC "Erreur en lecture, rc=%d"
-#define MSG_READ_MEM_ERROR "Lecture m‚moire %d: taille=%d"
-#define MSG_READ_ONLY "Cette table prot‚g‚e en lecture seule ne peut ˆtre modifi‚e"
-#define MSG_READ_SEEK_ERROR "Erreur de recherche en lecture: %s"
-#define MSG_READ_SEG_ERROR "Lecture segment %d: taille=%d"
-#define MSG_RECEIVED "Re‡u %c\n"
-#define MSG_RECORD_ERROR "Erreur … la lecture de l'enregistrement %d de %s"
-#define MSG_RECORD_NO_SEP "Enregistrement sans s‚parateur"
-#define MSG_REC_SKIPPED " (%d lignes erronn‚es saut‚es par l'option MaxErr)"
-#define MSG_REDUCE_INDEX "Réduction de l'index"
-#define MSG_REGISTER_ERR "Enregistrement NS impossible, pr‚fix='%s' et href='%s'"
-#define MSG_REMOTE_CONN_ERR "La connection ‚loign‚e a ‚chou‚"
-#define MSG_REMOVE_ERROR "Erreur en supprimant %s: %s"
-#define MSG_REMOVE_NOT_IMPL "Remove non impl‚ment‚ pour TDB non Table"
-#define MSG_RENAME_ERROR "Erreur renommant %s en %s: %s"
-#define MSG_RENUM_RULES "Renum‚rotez les rŠgles et r‚entrez ADD (rŠgle sauvegard‚e dans la zone tampon)"
-#define MSG_REORDER_INDEX "Reclassement de l'index"
-#define MSG_REQU_ARG_NUM "La fonction %s doit avoir %d arguments"
-#define MSG_RESET_TO "%s remis … %d"
-#define MSG_RES_NOT_UNIQUE "Le r‚sultat n'est pas unique"
-#define MSG_RET_FROM_LANG "Retour au language %s version %d.%d du language %s version %d.%d"
-#define MSG_ROWID_NOT_IMPL "RowNumber non impl‚ment‚ pour les tables de type %s"
-#define MSG_ROWS_SELECTED "%d lignes s‚lectionn‚es en %.2lf sec"
-#define MSG_ROWS_TRUNCATED " (tronqu‚ par MAXRES, LIMIT, FREQ ou AreaSize)"
-#define MSG_ROW_ARGNB_ERR "ROW: disparit‚ du nombre d'arguments (%d,%d)"
-#define MSG_RPC_SERVER_ERR "Erreur logique dans TABMUL::MakeCol"
-#define MSG_RSC_ALLOC_ERROR "Erreur d'allocation m‚moire dans Rescol %s"
-#define MSG_RULE_ENTERED "RŠgle %d entr‚e"
-#define MSG_RULE_SUBSET_ERR "Erreur d'initialisation de la zone RŠgles"
-#define MSG_SAVING_INDEX "Sauvegarde du fichier index"
-#define MSG_SCAN_NOT_IMP "Scan non impl‚ment‚"
-#define MSG_SEC_KEY_FIRST "Les sections et cl‚s doivent ˆtre ins‚r‚es en premier"
-#define MSG_SEC_NAME_FIRST "Le nom de section doit ˆtre en tˆte de liste en insertion"
-#define MSG_SEC_NOT_FOUND "Section %s absente de %s"
-#define MSG_SEEK_ERROR "Seek erreur dans CopyHeader"
-#define MSG_SEMANTIC_TREE "Arbre s‚mantique"
-#define MSG_SEM_BAD_REF "Sem @%d r‚f‚rence un argument de type non 0 ou 1"
-#define MSG_SEM_UNKNOWN "inconnue, rc=%d"
-#define MSG_SEP_IN_FIELD "Le champ %d contient le caractŠre s‚parateur"
-#define MSG_SEQUENCE_ERROR "HSTMT: Allocation hors s‚quence"
-#define MSG_SETEOF_ERROR "Erreur %d dans SetEndOfFile"
-#define MSG_SETRECPOS_NIY "SetRecpos non impl‚ment‚ pour ce type de table"
-#define MSG_SET_LOCALE "Locale fix‚e … %s"
-#define MSG_SET_NULL_DOM "Valeur %d donn‚e … un domaine nul"
-#define MSG_SET_OP_NOT_IMPL "Op‚rateurs ensemblistes non impl‚ment‚s"
-#define MSG_SET_STR_TRUNC "SetValue: ChaŒne de caractŠres tronqu‚e"
-#define MSG_SEVERAL_TREES "Jointure non sp‚cifi‚e pour certaines tables"
-#define MSG_SFP_ERROR "Erreur sur SetFilePointer: %s"
-#define MSG_SFUNC_NOT_IMPL "Fonction scalaire %s non impl‚ment‚e"
-#define MSG_SHARED_LIB_ERR "Erreur au chargement de la librairie partag‚e %s: %s"
-#define MSG_SINGLE_STEP "Pas … pas"
-#define MSG_SLEEP "J'ai dormi %d milliseconds"
-#define MSG_SMART_SORTING "R‚cup‚ration des lignes tri‚es (passage %d de %d)"
-#define MSG_SMART_SORT_ERR "Erreur logique 1 dans Smart Sort"
-#define MSG_SORTING "Tri en cours"
-#define MSG_SORTING_INDEX "Tri de l'index"
-#define MSG_SORTING_VAL "Tri de %d valeurs"
-#define MSG_SORT_JOIN_INDEX "Tri de l'index de jointure"
-#define MSG_SPCOL_READONLY "La colonne sp‚ciale %s est en lecture seulement"
-#define MSG_SPEC_CMD_SEP "Les commandes sp‚ciales doivent ˆtre ex‚cut‚es s‚par‚ment"
-#define MSG_SQL_BAD_TYPE "RephraseSQL: type %d non support‚"
-#define MSG_SQL_BLOCK_MISM "CheckColumn: bloc SQL courant non correspondant"
-#define MSG_SQL_CONF_ERROR "Erreur SQL: SQL_CONFORMANCE"
-#define MSG_SQL_READ_ONLY "Les views SQL sont actuellement en lecture seulement"
-#define MSG_SRCH_CLOSE_ERR "Erreur … la fermeture de l'Handle de recherche"
-#define MSG_SRC_TABLE_UNDEF "La table source n'est pas d‚finie"
-#define MSG_STACK_ERROR "Erreur sur la pile, i=%d\n"
-#define MSG_STACK_OVERFLOW "Parser: D‚bordement de la pile\n"
-#define MSG_STRG_NOT_FOUND "ChaŒne introuvable"
-#define MSG_STRING_INV_LIST "Liste invalide pour SemString"
-#define MSG_STRING_TOO_BIG "ChaŒne trop grande pour le domaine %s"
-#define MSG_SUBALLOC_ERROR "Pas assez de m‚moire en zone %p pour allouer %d (utilis‚=%d libre=%d)"
-#define MSG_SUBAL_HUGE_ERR "Pas assez de m‚moire en zone huge %p pour allouer %d"
-#define MSG_SUBARG_NOSEM "Argument @ ou sous-phrase de niveau %d pointe sur un noeud sans Sem"
-#define MSG_SUBARG_OUTRANGE "Argument @ ou sous-phrase de niveau %d hors limite"
-#define MSG_SUBQRY_ONEITEM "Une Sub-Query ne doit avoir qu'une s‚lection"
-#define MSG_SUBSET_ERROR "SubSet erreur dans LoadDB"
-#define MSG_SUB_OPEN_YET "Subquery d‚j… ouverte"
-#define MSG_SUB_RES_TOO_LNG "R‚sultat trop long pour SUBSTR"
-#define MSG_SYNTAX_ERROR "Erreur de syntaxe"
-#define MSG_SYSTEM_ERROR "Erreur systŠme %d"
-#define MSG_S_ACCESS_DENIED "%s: accŠs non autoris‚"
-#define MSG_S_ERROR "%s erreur"
-#define MSG_S_ERROR_NUM "%s: erreur=%d"
-#define MSG_S_INTRUPT_ERROR "%s: erreur interruption"
-#define MSG_S_INVALID_PARM "%s: paramŠtre invalide"
-#define MSG_S_INV_ADDRESS "%s: adresse invalide"
-#define MSG_S_UNKNOWN_ERROR "%s: erreur de code %u inconnu"
-#define MSG_TABDIR_READONLY "Les tables DIR sont en lecture seulement"
-#define MSG_TABLE_ALREADY "La table %s existe d‚j…"
-#define MSG_TABLE_ALTERED "Table %s %s alt‚r‚e"
-#define MSG_TABLE_CREATED "%s table %s cr‚‚e"
-#define MSG_TABLE_DROPPED "Table %s supprim‚e"
-#define MSG_TABLE_MULT_JOIN "Utilisation multiple de la table %s pour jointure"
-#define MSG_TABLE_NOT_IN_DB "La table %s n'existe pas dans %s"
-#define MSG_TABLE_NOT_OPT "Table non optimisable"
-#define MSG_TABLE_NO_INDEX "La table %s n'est pas indexable"
-#define MSG_TABLE_NO_OPT "La table %s n'existe pas ou de type non optimisable"
-#define MSG_TABLE_READ_ONLY "Les tables %s sont en lecture seulement "
-#define MSG_TABMUL_READONLY "Les tables multiples sont en lecture seulement"
-#define MSG_TAB_NOT_LOADED " (certaines tables n'ont put ˆtre charg‚es)"
-#define MSG_TAB_NOT_SPEC "Table non specifi‚e"
-#define MSG_TB_VW_NOTIN_DB "Table ou view %s pas dans la base de donn‚es"
-#define MSG_TDB_NXT_NOT_NUL "Tdb.Next non NULL"
-#define MSG_TDB_USE_ERROR "Erreur, Tdbp->Use=%d"
-#define MSG_TOO_MANY_COLS "Trop de colonnes"
-#define MSG_TOO_MANY_COLTAB "Trop de colonnes dans %s (%d)"
-#define MSG_TOO_MANY_FIELDS "Trop de champs ligne %d de %s"
-#define MSG_TOO_MANY_JUMPS "Trop de niveaux de saut"
-#define MSG_TOO_MANY_KEYS "Trop de cl‚s (%d)"
-#define MSG_TOO_MANY_POS "Trop de pos_codes"
-#define MSG_TOO_MANY_TABLES "Trop de tables (%d)"
-#define MSG_TOPSEM_ERROR "Erreur inconnue dans TopSem"
-#define MSG_TO_BLK_IS_NULL "To Blk est nul"
-#define MSG_TO_FTR_NOT_NULL "Set.To_Ftr n'est pas nul"
-#define MSG_TO_PIX_NOT_NULL "Set.To_Pix n'est pas nul"
-#define MSG_TO_SEM_NOT_NULL "Set.To_Sem n'est pas nul"
-#define MSG_TRUNCATE_ERROR "Erreur en troncation: %s"
-#define MSG_TRUNC_BY_ESTIM "Tronqu‚ par l'option Estimate"
-#define MSG_TYPES_ERROR "Erreur sur Types(%d)"
-#define MSG_TYPE_CONV_ERROR "Type non convertible dans une expression"
-#define MSG_TYPE_DEF_MISM "Disparit‚ entre type et d‚finition"
-#define MSG_TYPE_MISMATCH "Cl‚ et source ne sont pas du mˆme type"
-#define MSG_TYPE_RECFM_MISM "Disparit‚ entre Type et Recfm"
-#define MSG_TYPE_TO_VERIFY "Type … v‚rifier: %d"
-#define MSG_TYPE_VALUE_ERR "Colonne %s: disparit‚ type(%s)/valeur(%s)"
-#define MSG_UNBALANCE_QUOTE "Appostrophe en trop ligne %d"
-#define MSG_UNDEFINED_AM "COLBLK %s: m‚thode d'accŠs ind‚finie"
-#define MSG_UNDEFINED_PATH "Chemin d'accŠs ind‚fini pour Plgcnx.ini"
-#define MSG_UNDEF_COL_COUNT "Count sur colonne non d‚finie"
-#define MSG_UNKNOWN_DOMAIN "Domaine inconnu %s"
-#define MSG_UNKNOWN_ERROR "Erreur inconnue"
-#define MSG_UNKNOWN_EXCPT "Exception non r‚pertori‚e"
-#define MSG_UNKNOWN_NAME "Nom inconnu: %.8s"
-#define MSG_UNKNOWN_PATH "Chemin d'accŠs inconnu pour Plgcnx.ini"
-#define MSG_UNKNOWN_POS "Nom pos_code inconnu: %s"
-#define MSG_UNKNOWN_SEM "Sem %.8s inconnue, rc=%d"
-#define MSG_UNKNOWN_SYNONYM "Synonyme inconnu"
-#define MSG_UNKNW_QRY_TYPE "ReadDB: type de requˆte inconnu"
-#define MSG_UNKN_ERR_CODE "Erreur de code %d inconnu"
-#define MSG_UNLOADABLE " inchargeable: "
-#define MSG_UNLOADABLE_PRM "%s inchargeable: %s"
-#define MSG_UNMATCH_FIL_ARG "Argument de filtre d‚pareill‚"
-#define MSG_UNQ_COL_SEV_TAB "La colonne %s non qualifi‚e est dans plusieurs tables"
-#define MSG_UNRESOLVED_ARG "?Argument manquant: %s non r‚solu en %d ligne %d"
-#define MSG_UPDATE_ERROR "Erreur en Update sur %s"
-#define MSG_UPDATING_ROWS "Mise … jour des lignes"
-#define MSG_UPD_ZIP_NOT_IMP "Mise … jour des tables ZDOS non encore implement‚"
-#define MSG_UP_LANGUAGE "Bloc langage %.8s version %d niveau %d charg‚"
-#define MSG_USED_FREE_MEM "Sarea: utilis‚ %d, libre %d"
-#define MSG_USETEMP_IS "Usetemp est : %s"
-#define MSG_USETEMP_RESET ". Usetemp remis … Auto"
-#define MSG_USETEMP_SET "Usetemp fix‚ … %s"
-#define MSG_USE_NO_MATCH "Use non correspondant : Use=%d, ti2=%d, ti3=%d"
-#define MSG_USING_INDEX " (Index‚ par"
-#define MSG_VALIST_MISMATCH "Disparit‚ des listes de valeurs"
-#define MSG_VALSTR_TOO_LONG "Valeur %s trop longue pour une chaŒne de longueur %d"
-#define MSG_VALTYPE_NOMATCH "Disparit‚ types de valeur"
-#define MSG_VALUE_ERROR "Colonne %s: bloc valeur nul"
-#define MSG_VALUE_NOT_ALLOC "Valeur non allou‚e pour la colonne R%d %s"
-#define MSG_VALUE_TOO_BIG "Valeur %lld trop grande pour la colonne %s"
-#define MSG_VALUE_TOO_LONG "Valeur %s trop longue pour la colonne %s de longueur %d"
-#define MSG_VAL_ALLOC_ERR "Allocation impossible du noeud valeur"
-#define MSG_VAL_TOO_LONG "Valeur %s trop longue pour le champ %s"
-#define MSG_VIEW_ALREADY "La VIEW %s existe d‚j…"
-#define MSG_VIEW_CREATED "%s view %s cr‚‚e"
-#define MSG_VIEW_DROPPED "View %s supprim‚e"
-#define MSG_VIEW_NOT_IN_DB "%s n'est pas une View de %s"
-#define MSG_VIR_NO_DELETE "Delete impossible sur les tables %s"
-#define MSG_VIR_READ_ONLY "Les tables virtuelles %s sont en lecture seulement"
-#define MSG_VM_LANG "Langage au format VM, non support‚"
-#define MSG_VOID_FIRST_ARG "Le premier argument ne doit pas ˆtre vide"
-#define MSG_VOID_IN_STRING "Erreur: chaŒne IN vide"
-#define MSG_VOID_ORDER_LIST "Liste de tri vide, erreur systŠme ?"
-#define MSG_VOID_POS_DICT "Dictionnaire interne du langage vide"
-#define MSG_VOID_QUERY "Requˆte vide %s"
-#define MSG_WORK_AREA "Espace de travail: %s"
-#define MSG_WORK_TOO_SMALL "Zone de travail trop petite, accroŒtre AreaSize"
-#define MSG_WRITE_ERROR "Erreur … l'‚criture de %s"
-#define MSG_WRITE_SEEK_ERR "Erreur de recherche en ‚criture: %s"
-#define MSG_WRITE_STRERROR "Erreur en ‚criture sur %s: %s"
-#define MSG_WRITING "Ecriture"
-#define MSG_WRITING_ERROR "Erreur … l'‚criture de %s: %s"
-#define MSG_WRITING_QUERY "Erreur … l'‚criture de la requˆte: "
-#define MSG_WRONG_ARG_NUM "La fonction %s ne prend pas %d arguments"
-#define MSG_WRONG_COL_NUM "Num‚ro de colonne %d trop grand pour %s"
-#define MSG_WRONG_DB_LIST "Liste des bases de donn‚es incorrecte ou vide"
-#define MSG_WRONG_FUNCTION "Mauvaise fonction %d"
-#define MSG_WRONG_OP_PARM "Mauvais op‚rateur ou paramŠtres pour %s"
-#define MSG_WRONG_PARMS "Mauvais paramŠtres pour %s"
-#define MSG_WRONG_PASSWORD "Mot de passe ill‚gal pour %s"
-#define MSG_WRONG_TYPE "type non support‚"
-#define MSG_WRONG_USERFILE "La Userfile a une mauvaise taille %d"
-#define MSG_WS_CONV_ERR "Erreur de convertion de %s en WS"
-#define MSG_XCOL_MISMATCH "La colonne %s ne correspond pas … l'index"
-#define MSG_XDB_DEL_ERROR "Erreur en supprimant des entr‚es du fichier XDB"
-#define MSG_XFILE_READERR "Erreur %d en lisant le fichier index"
-#define MSG_XFILE_TOO_SMALL "Le fichier index est plus petit que la taille de l'index"
-#define MSG_XFILE_WRITERR "Erreur en ‚crivant le fichier index: %s"
-#define MSG_XMLTAB_INIT_ERR "Erreur d'initialisation de la table XML"
-#define MSG_XML_INIT_ERROR "Erreur d'initialisation du nouveau fichier XML"
-#define MSG_XPATH_CNTX_ERR "Le nouveau contexte XPath ne peut ˆtre cr‚‚"
-#define MSG_XPATH_EVAL_ERR "Impossible d'‚valuer l'emplacement xpath '%s'"
-#define MSG_XPATH_NOT_SUPP "Xpath non support‚ colonne %s"
-#define MSG_X_ARG_ADDED "%d arguments ajout‚s"
-#define MSG_X_ARG_SET "%d arguments ont ‚t‚ initialis‚s"
-#define MSG_X_ON_TAB " %s sur %s("
-#define MSG_ZERO_DIVIDE "Division par z‚ro dans une expression"
diff --git a/storage/connect/ha_connect.cc b/storage/connect/ha_connect.cc
index a8a0658f0db..7be82db2e30 100644
--- a/storage/connect/ha_connect.cc
+++ b/storage/connect/ha_connect.cc
@@ -540,11 +540,7 @@ extern "C" const char *msglang(void)
#else // !XMSG && !NEWMSG
extern "C" const char *msglang(void)
{
-#if defined(FRENCH)
- return "french";
-#else // DEFAULT
return "english";
-#endif // DEFAULT
} // end of msglang
#endif // !XMSG && !NEWMSG
@@ -1443,7 +1439,7 @@ PCSZ ha_connect::GetStringOption(PCSZ opname, PCSZ sdef)
: table->s->table_charset;
if (chif)
- opval= (char*)chif->csname;
+ opval= (char*)chif->cs_name.str;
} else
opval= GetStringTableOption(xp->g, options, opname, NULL);
@@ -1607,7 +1603,7 @@ void *ha_connect::GetColumnOption(PGLOBAL g, void *field, PCOLINFO pcf)
// Now get column information
pcf->Name= (char*)fp->field_name.str;
- chset = (char*)fp->charset()->name;
+ chset= (char*)fp->charset()->coll_name.str;
if (fop && fop->special) {
pcf->Fieldfmt= (char*)fop->special;
@@ -1618,15 +1614,15 @@ void *ha_connect::GetColumnOption(PGLOBAL g, void *field, PCOLINFO pcf)
pcf->Scale= 0;
pcf->Opt= (fop) ? (int)fop->opt : 0;
- if (fp->field_length >= 0) {
+// if (fp->field_length >= 0) {
pcf->Length= fp->field_length;
// length is bytes for Connect, not characters
if (!strnicmp(chset, "utf8", 4))
pcf->Length /= 3;
- } else
- pcf->Length= 256; // BLOB?
+// } else
+// pcf->Length= 256; // BLOB?
pcf->Precision= pcf->Length;
@@ -2586,11 +2582,9 @@ bool ha_connect::MakeKeyWhere(PGLOBAL g, PSTRG qry, OPVAL vop, char q,
qry->Append('\'');
if (kpart->key_part_flag & HA_VAR_LENGTH_PART) {
- String varchar;
- uint var_length= uint2korr(ptr);
-
- varchar.set_quick((char*)ptr + HA_KEY_BLOB_LENGTH,
- var_length, &my_charset_bin);
+ uint var_length= uint2korr(ptr);
+ String varchar((char*) ptr + HA_KEY_BLOB_LENGTH,
+ var_length, &my_charset_bin);
qry->Append(varchar.ptr(), varchar.length(), nq);
} else {
char strbuff[MAX_FIELD_WIDTH];
@@ -3108,7 +3102,7 @@ PCFIL ha_connect::CheckCond(PGLOBAL g, PCFIL filp, const Item *cond)
{
strColumn.length(0);
strColumn.qs_append(STRING_WITH_LEN("`"));
- strColumn.qs_append(fnm);
+ strColumn.qs_append(fnm, strlen(fnm));
strColumn.append(STRING_WITH_LEN("`"));
}
@@ -3490,11 +3484,11 @@ bool ha_connect::get_error_message(int error, String* buf)
if (trace(1))
htrc("GEM(%d): %s\n", error, g->Message);
-
- buf->append(ErrConvString(g->Message, strlen(g->Message),
- &my_charset_latin1).ptr());
+ buf->append(ErrConvString(g->Message,
+ strlen(g->Message),
+ &my_charset_latin1).lex_cstring());
} else
- buf->append("Cannot retrieve error message");
+ buf->append(STRING_WITH_LEN("Cannot retrieve error message"));
DBUG_RETURN(false);
} // end of get_error_message
@@ -5432,10 +5426,10 @@ static bool add_field(String* sql, TABTYPE ttp, const char* field_name, int typ,
bool q, error = false;
const char* type = PLGtoMYSQLtype(typ, dbf, var);
- error |= sql->append('`');
- error |= sql->append(field_name);
- error |= sql->append("` ");
- error |= sql->append(type);
+ error|= sql->append('`');
+ error|= sql->append(field_name, strlen(field_name));
+ error|= sql->append(STRING_WITH_LEN("` "));
+ error|= sql->append(type, strlen(type));
if (typ == TYPE_STRING ||
(len && typ != TYPE_DATE && (typ != TYPE_DOUBLE || dec >= 0))) {
@@ -5456,20 +5450,20 @@ static bool add_field(String* sql, TABTYPE ttp, const char* field_name, int typ,
} // endif len
if (v == 'U')
- error |= sql->append(" UNSIGNED");
+ error |= sql->append(STRING_WITH_LEN(" UNSIGNED"));
else if (v == 'Z')
- error |= sql->append(" ZEROFILL");
+ error |= sql->append(STRING_WITH_LEN(" ZEROFILL"));
if (key && *key) {
- error |= sql->append(" ");
- error |= sql->append(key);
+ error |= sql->append(' ');
+ error |= sql->append(key, strlen(key));
} // endif key
if (tm)
error |= sql->append(STRING_WITH_LEN(" NOT NULL"), system_charset_info);
if (dft && *dft) {
- error |= sql->append(" DEFAULT ");
+ error |= sql->append(STRING_WITH_LEN(" DEFAULT "));
if (typ == TYPE_DATE)
q = (strspn(dft, "0123456789 -:/") == strlen(dft));
@@ -5477,40 +5471,40 @@ static bool add_field(String* sql, TABTYPE ttp, const char* field_name, int typ,
q = !IsTypeNum(typ);
if (q) {
- error |= sql->append("'");
+ error |= sql->append(STRING_WITH_LEN("'"));
error |= sql->append_for_single_quote(dft, strlen(dft));
- error |= sql->append("'");
+ error |= sql->append('\'');
} else
- error |= sql->append(dft);
+ error |= sql->append(dft, strlen(dft));
} // endif dft
if (xtra && *xtra) {
- error |= sql->append(" ");
- error |= sql->append(xtra);
+ error |= sql->append(' ');
+ error |= sql->append(xtra, strlen(xtra));
} // endif rem
if (rem && *rem) {
- error |= sql->append(" COMMENT '");
+ error |= sql->append(STRING_WITH_LEN(" COMMENT '"));
error |= sql->append_for_single_quote(rem, strlen(rem));
- error |= sql->append("'");
+ error |= sql->append(STRING_WITH_LEN("'"));
} // endif rem
if (fmt && *fmt) {
- switch (ttp) {
- case TAB_MONGO:
- case TAB_BSON:
- case TAB_JSON: error |= sql->append(" JPATH='"); break;
- case TAB_XML: error |= sql->append(" XPATH='"); break;
- default: error |= sql->append(" FIELD_FORMAT='");
- } // endswitch ttp
+ switch (ttp) {
+ case TAB_MONGO:
+ case TAB_BSON:
+ case TAB_JSON: error |= sql->append(STRING_WITH_LEN(" JPATH='")); break;
+ case TAB_XML: error |= sql->append(STRING_WITH_LEN(" XPATH='")); break;
+ default: error |= sql->append(STRING_WITH_LEN(" FIELD_FORMAT='"));
+ } // endswitch ttp
error |= sql->append_for_single_quote(fmt, strlen(fmt));
- error |= sql->append("'");
+ error |= sql->append('\'');
} // endif flag
if (flag) {
- error |= sql->append(" FLAG=");
+ error |= sql->append(STRING_WITH_LEN(" FLAG="));
error |= sql->append_ulonglong(flag);
} // endif flag
@@ -5546,7 +5540,7 @@ static int init_table_share(THD* thd,
if (vull != opt->def_value) {
oom|= sql->append(' ');
- oom|= sql->append(opt->name);
+ oom|= sql->append(opt->name, strlen(opt->name));
oom|= sql->append('=');
oom|= sql->append_ulonglong(vull);
} // endif vull
@@ -5557,8 +5551,8 @@ static int init_table_share(THD* thd,
if (vstr) {
oom|= sql->append(' ');
- oom|= sql->append(opt->name);
- oom|= sql->append("='");
+ oom|= sql->append(opt->name, strlen(opt->name));
+ oom|= sql->append(STRING_WITH_LEN("='"));
oom|= sql->append_for_single_quote(vstr, strlen(vstr));
oom|= sql->append('\'');
} // endif vstr
@@ -5569,9 +5563,12 @@ static int init_table_share(THD* thd,
if (vull != opt->def_value) {
oom|= sql->append(' ');
- oom|= sql->append(opt->name);
+ oom|= sql->append(opt->name, strlen(opt->name));
oom|= sql->append('=');
- oom|= sql->append(vull ? "YES" : "NO");
+ if (vull)
+ oom|= sql->append("YES", 3);
+ else
+ oom|= sql->append("NO", 2);
} // endif vull
break;
@@ -5586,7 +5583,7 @@ static int init_table_share(THD* thd,
if (create_info->connect_string.length) {
oom|= sql->append(' ');
- oom|= sql->append("CONNECTION='");
+ oom|= sql->append(STRING_WITH_LEN("CONNECTION='"));
oom|= sql->append_for_single_quote(create_info->connect_string.str,
create_info->connect_string.length);
oom|= sql->append('\'');
@@ -5598,8 +5595,8 @@ static int init_table_share(THD* thd,
if (create_info->default_table_charset) {
oom|= sql->append(' ');
- oom|= sql->append("CHARSET=");
- oom|= sql->append(create_info->default_table_charset->csname);
+ oom|= sql->append(STRING_WITH_LEN("CHARSET="));
+ oom|= sql->append(create_info->default_table_charset->cs_name);
if (oom)
return HA_ERR_OUT_OF_MEM;
@@ -6470,6 +6467,7 @@ int ha_connect::create(const char *name, TABLE *table_arg,
TABLE *st= table; // Probably unuseful
THD *thd= ha_thd();
LEX_CSTRING cnc= table_arg->s->connect_string;
+ myf utf8_flag= thd->get_utf8_flag();
#if defined(WITH_PARTITION_STORAGE_ENGINE)
partition_info *part_info= table_arg->part_info;
#else // !WITH_PARTITION_STORAGE_ENGINE
@@ -6529,7 +6527,8 @@ int ha_connect::create(const char *name, TABLE *table_arg,
const CHARSET_INFO *data_charset;
if (!(data_charset= get_charset_by_csname(options->data_charset,
- MY_CS_PRIMARY, MYF(0)))) {
+ MY_CS_PRIMARY,
+ MYF(utf8_flag)))) {
my_error(ER_UNKNOWN_CHARACTER_SET, MYF(0), options->data_charset);
DBUG_RETURN(HA_ERR_INTERNAL_ERROR);
} // endif charset
diff --git a/storage/connect/jdbconn.cpp b/storage/connect/jdbconn.cpp
index fa3937a5d80..0ba1f56aa50 100644
--- a/storage/connect/jdbconn.cpp
+++ b/storage/connect/jdbconn.cpp
@@ -117,7 +117,7 @@ int TranslateJDBCType(int stp, char *tn, int prec, int& len, char& v)
else
len = MY_MIN(abs(len), GetConvSize());
- // Pass through
+ /* fall through */
case 12: // VARCHAR
if (tn && !stricmp(tn, "TEXT"))
// Postgresql returns 12 for TEXT
@@ -128,14 +128,14 @@ int TranslateJDBCType(int stp, char *tn, int prec, int& len, char& v)
if (len == 0x7FFFFFFF)
len = GetConvSize();
- // Pass through
+ /* fall through */
case -9: // NVARCHAR (unicode)
// Postgresql can return this when size is unknown
if (len == 0x7FFFFFFF)
len = GetConvSize();
v = 'V';
- // Pass through
+ /* fall through */
case 1: // CHAR
case -15: // NCHAR (unicode)
case -8: // ROWID
@@ -194,7 +194,7 @@ int TranslateJDBCType(int stp, char *tn, int prec, int& len, char& v)
break;
} // endif tn
- // Pass through
+ /* fall through */
case 0: // NULL
case -2: // BINARY
case -4: // LONGVARBINARY
@@ -294,7 +294,7 @@ public:
} // endif name
- // If it was not specified, set schema as the passed db name
+ // If it was not specified, set schema as the passed db name
if (db && !m_part[1].length)
lex_string_set(&m_part[1], db, strlen(db));
@@ -772,7 +772,6 @@ void JDBConn::AddJars(PSTRG jpop, char sep)
/***********************************************************************/
bool JDBConn::Connect(PJPARM sop)
{
- int irc = RC_FX;
bool err = false;
jint rc;
PGLOBAL& g = m_G;
@@ -1093,7 +1092,7 @@ void JDBConn::SetColumnValue(int rank, PSZ name, PVAL val)
break;
case 0: // NULL
val->SetNull(true);
- // passthru
+ /* fall through */
default:
val->Reset();
} // endswitch Type
diff --git a/storage/connect/jsonudf.cpp b/storage/connect/jsonudf.cpp
index 0baaa70b496..b09838beb97 100644
--- a/storage/connect/jsonudf.cpp
+++ b/storage/connect/jsonudf.cpp
@@ -11,7 +11,7 @@
#include <mysqld.h>
#include <mysql.h>
#include <sql_error.h>
-#include <stdio.h>
+#include <m_string.h>
#include "jsonudf.h"
@@ -1475,16 +1475,16 @@ static PBSON MakeBinResult(PGLOBAL g, UDF_ARGS *args, PJSON top, ulong len, int
if ((bsnp->Filename = (char*)args->args[0])) {
bsnp->Filename = MakePSZ(g, args, 0);
- strncpy(bsnp->Msg, bsnp->Filename, BMX);
+ strmake(bsnp->Msg, bsnp->Filename, BMX-1);
} else
- strncpy(bsnp->Msg, "null filename", BMX);
+ strmake(bsnp->Msg, "null filename", BMX-1);
} else if (IsJson(args, 0) == 3) {
PBSON bsp = (PBSON)args->args[0];
if (bsp->Filename) {
bsnp->Filename = bsp->Filename;
- strncpy(bsnp->Msg, bsp->Filename, BMX);
+ strmake(bsnp->Msg, bsp->Filename, BMX-1);
bsnp->Pretty = bsp->Pretty;
} else
strcpy(bsnp->Msg, "Json Binary item");
@@ -4767,7 +4767,7 @@ char *jbin_array(UDF_INIT *initid, UDF_ARGS *args, char *result,
bsp = NULL;
if (!bsp && (bsp = JbinAlloc(g, args, initid->max_length, NULL)))
- strncpy(bsp->Msg, g->Message, BMX);
+ strmake(bsp->Msg, g->Message, BMX-1);
// Keep result of constant function
g->Xchk = (initid->const_item) ? bsp : NULL;
@@ -4838,7 +4838,7 @@ char *jbin_array_add_values(UDF_INIT *initid, UDF_ARGS *args, char *result,
} else
if ((bsp = JbinAlloc(g, args, initid->max_length, NULL)))
- strncpy(bsp->Msg, g->Message, BMX);
+ strmake(bsp->Msg, g->Message, BMX-1);
// Keep result of constant function
g->Xchk = (initid->const_item) ? bsp : NULL;
@@ -5060,7 +5060,7 @@ char *jbin_object(UDF_INIT *initid, UDF_ARGS *args, char *result,
} else
if ((bsp = JbinAlloc(g, args, initid->max_length, NULL)))
- strncpy(bsp->Msg, g->Message, BMX);
+ strmake(bsp->Msg, g->Message, BMX-1);
// Keep result of constant function
g->Xchk = (initid->const_item) ? bsp : NULL;
@@ -5116,7 +5116,7 @@ char *jbin_object_nonull(UDF_INIT *initid, UDF_ARGS *args, char *result,
} else
if ((bsp = JbinAlloc(g, args, initid->max_length, NULL)))
- strncpy(bsp->Msg, g->Message, BMX);
+ strmake(bsp->Msg, g->Message, BMX-1);
// Keep result of constant function
g->Xchk = (initid->const_item) ? bsp : NULL;
@@ -5175,7 +5175,7 @@ char *jbin_object_key(UDF_INIT *initid, UDF_ARGS *args, char *result,
} else
if ((bsp = JbinAlloc(g, args, initid->max_length, NULL)))
- strncpy(bsp->Msg, g->Message, BMX);
+ strmake(bsp->Msg, g->Message, BMX-1);
// Keep result of constant function
g->Xchk = (initid->const_item) ? bsp : NULL;
diff --git a/storage/connect/messages.h b/storage/connect/messages.h
index b55ec39b235..91e04f3d472 100644
--- a/storage/connect/messages.h
+++ b/storage/connect/messages.h
@@ -1,13 +1,5 @@
/**************************************************************************/
/* NLS messsages definition. */
/**************************************************************************/
-#if defined(FRENCH)
-#if defined(CPX)
-#include "frmsg1.h"
-#else /* not CPX */
-#include "frmsg2.h"
-#endif /* CPX */
-#else /* not FRENCH */
#include "engmsg.h"
-#endif /* FRENCH */
/* ---------------------------------------------------------------------- */
diff --git a/storage/connect/mycat.cc b/storage/connect/mycat.cc
index ebd0cd7bae7..c4c2ade787d 100644
--- a/storage/connect/mycat.cc
+++ b/storage/connect/mycat.cc
@@ -517,7 +517,7 @@ PTABDEF MYCAT::MakeTableDesc(PGLOBAL g, PTABLE tablep, LPCSTR am)
tdp = new(g) MGODEF;
break;
} // endif enabled
- // fall through
+ /* fall through */
#endif // JAVA_SUPPORT || CMGO_SUPPORT
default:
snprintf(g->Message, sizeof(g->Message), MSG(BAD_TABLE_TYPE), am, name);
diff --git a/storage/connect/myconn.cpp b/storage/connect/myconn.cpp
index 579ca07616e..4c16a7fc1aa 100644
--- a/storage/connect/myconn.cpp
+++ b/storage/connect/myconn.cpp
@@ -646,7 +646,7 @@ int MYSQLC::PrepareSQL(PGLOBAL g, const char *stmt)
int MYSQLC::BindParams(PGLOBAL g, MYSQL_BIND *bind)
{
if (!m_DB) {
- strcpy(g->Message, "MySQL not connected");
+ strcpy(g->Message, "MariaDB not connected");
return RC_FX;
} else
assert(m_Stmt);
diff --git a/storage/connect/mysql-test/connect/r/alter.result b/storage/connect/mysql-test/connect/r/alter.result
index cfcb66fc1ad..09f4584a75e 100644
--- a/storage/connect/mysql-test/connect/r/alter.result
+++ b/storage/connect/mysql-test/connect/r/alter.result
@@ -20,12 +20,12 @@ CREATE INDEX xd ON t1(d);
DROP INDEX xd ON t1;
ALTER TABLE t1 ADD INDEX xc (c), ADD INDEX xd (d);
SHOW INDEX FROM t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
-t1 1 xc 1 c A NULL NULL NULL XINDEX
-t1 1 xd 1 d A NULL NULL NULL XINDEX
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment Ignored
+t1 1 xc 1 c A NULL NULL NULL XINDEX NO
+t1 1 xd 1 d A NULL NULL NULL XINDEX NO
ALTER TABLE t1 DROP INDEX xc, DROP INDEX xd;
SHOW INDEX FROM t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment Ignored
#
# Testing modifying columns inward table (not in-place)
#
@@ -92,9 +92,9 @@ t1 CREATE TABLE `t1` (
KEY `xd` (`d`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_swedish_ci
SHOW INDEX FROM t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
-t1 1 xc 1 c A NULL NULL NULL BTREE
-t1 1 xd 1 d A NULL NULL NULL BTREE
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment Ignored
+t1 1 xc 1 c A NULL NULL NULL BTREE NO
+t1 1 xd 1 d A NULL NULL NULL BTREE NO
SELECT * FROM t1;
c d
1 One
@@ -110,9 +110,9 @@ t1 CREATE TABLE `t1` (
KEY `xd` (`d`)
) ENGINE=CONNECT DEFAULT CHARSET=latin1 COLLATE=latin1_swedish_ci `TABLE_TYPE`=DBF
SHOW INDEX FROM t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
-t1 1 xc 1 c A NULL NULL NULL XINDEX
-t1 1 xd 1 d A NULL NULL NULL XINDEX
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment Ignored
+t1 1 xc 1 c A NULL NULL NULL XINDEX NO
+t1 1 xd 1 d A NULL NULL NULL XINDEX NO
SELECT * FROM t1;
c d
1 One
@@ -142,15 +142,15 @@ line
#
ALTER TABLE t1 ADD INDEX xc (c), ADD INDEX xd (d);
SHOW INDEX FROM t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
-t1 1 xc 1 c A NULL NULL NULL XINDEX
-t1 1 xd 1 d A NULL NULL NULL XINDEX
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment Ignored
+t1 1 xc 1 c A NULL NULL NULL XINDEX NO
+t1 1 xd 1 d A NULL NULL NULL XINDEX NO
SELECT d FROM t1 WHERE c = 2;
d
Two
ALTER TABLE t1 DROP INDEX xc, DROP INDEX xd;
SHOW INDEX FROM t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment Ignored
#
# Other alterations do not modify the file
#
diff --git a/storage/connect/mysql-test/connect/r/bson.result b/storage/connect/mysql-test/connect/r/bson.result
index 985c55f5db7..a9567fe47b3 100644
--- a/storage/connect/mysql-test/connect/r/bson.result
+++ b/storage/connect/mysql-test/connect/r/bson.result
@@ -191,8 +191,8 @@ INDEX IX(ISBN)
)
ENGINE=CONNECT TABLE_TYPE=BSON FILE_NAME='bib0.json' LRECL=320 OPTION_LIST='Pretty=0';
SHOW INDEX FROM t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
-t1 1 IX 1 ISBN A NULL NULL NULL XINDEX
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment Ignored
+t1 1 IX 1 ISBN A NULL NULL NULL XINDEX NO
SELECT * FROM t1;
ISBN Language Subject AuthorFN AuthorLN Title Translation TranslatorFN TranslatorLN Publisher Location Year
9782212090819 fr applications Jean-Michel Bernadac Construire une application XML NULL NULL NULL Eyrolles Paris 1999
@@ -536,6 +536,6 @@ INDEX IX(ISBN)
)
ENGINE=CONNECT TABLE_TYPE=BSON FILE_NAME='bib0.json' LRECL=320 OPTION_LIST='Pretty=0';
SHOW INDEX FROM t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
-t1 1 IX 1 ISBN A NULL NULL NULL XINDEX
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment Ignored
+t1 1 IX 1 ISBN A NULL NULL NULL XINDEX NO
DROP TABLE t1;
diff --git a/storage/connect/mysql-test/connect/r/dbf.result b/storage/connect/mysql-test/connect/r/dbf.result
index d8744ef3b70..65d894a0c24 100644
--- a/storage/connect/mysql-test/connect/r/dbf.result
+++ b/storage/connect/mysql-test/connect/r/dbf.result
@@ -34,7 +34,7 @@ END//
CREATE PROCEDURE test.dbf_header(in fname VARCHAR(1024)) DETERMINISTIC
BEGIN
DECLARE content BLOB;
-DECLARE offset INT;
+DECLARE `offset` INT;
DECLARE fieldno INT;
SELECT '--------';
SELECT LOAD_FILE(fname) INTO content;
@@ -45,11 +45,11 @@ SELECT CONV(HEX(REVERSE(SUBSTRING(content,9,2))),16,10) AS FirstRecPos;
SELECT CONV(HEX(REVERSE(SUBSTRING(content,11,2))),16,10) AS RecLength;
SELECT HEX(REVERSE(SUBSTRING(content,29,2))) AS TableFlags;
SELECT HEX(REVERSE(SUBSTRING(content,30,1))) AS CodePageMark;
-SET offset=33;
+SET `offset`=33;
SET fieldno=0;
-WHILE SUBSTR(content, offset, 1) <> 0x0D AND offset + 32 < LENGTH(content) DO
-CALL dbf_field(fieldno, SUBSTRING(content, offset, 32));
-SET offset=offset + 32;
+WHILE SUBSTR(content, `offset`, 1) <> 0x0D AND `offset` + 32 < LENGTH(content) DO
+CALL dbf_field(fieldno, SUBSTRING(content, `offset`, 32));
+SET `offset`=`offset` + 32;
SET fieldno=fieldno + 1;
END WHILE;
SELECT '--------';
diff --git a/storage/connect/mysql-test/connect/r/json.result b/storage/connect/mysql-test/connect/r/json.result
index a8749dd7420..55b1bb8b8e5 100644
--- a/storage/connect/mysql-test/connect/r/json.result
+++ b/storage/connect/mysql-test/connect/r/json.result
@@ -191,8 +191,8 @@ INDEX IX(ISBN)
)
ENGINE=CONNECT TABLE_TYPE=JSON FILE_NAME='bib0.json' LRECL=320 OPTION_LIST='Pretty=0';
SHOW INDEX FROM t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
-t1 1 IX 1 ISBN A NULL NULL NULL XINDEX
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment Ignored
+t1 1 IX 1 ISBN A NULL NULL NULL XINDEX NO
SELECT * FROM t1;
ISBN Language Subject AuthorFN AuthorLN Title Translation TranslatorFN TranslatorLN Publisher Location Year
9782212090819 fr applications Jean-Michel Bernadac Construire une application XML NULL NULL NULL Eyrolles Paris 1999
@@ -536,6 +536,6 @@ INDEX IX(ISBN)
)
ENGINE=CONNECT TABLE_TYPE=JSON FILE_NAME='bib0.json' LRECL=320 OPTION_LIST='Pretty=0';
SHOW INDEX FROM t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
-t1 1 IX 1 ISBN A NULL NULL NULL XINDEX
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment Ignored
+t1 1 IX 1 ISBN A NULL NULL NULL XINDEX NO
DROP TABLE t1;
diff --git a/storage/connect/mysql-test/connect/r/part_file.result b/storage/connect/mysql-test/connect/r/part_file.result
index 3dabd946b50..79a7cac0f29 100644
--- a/storage/connect/mysql-test/connect/r/part_file.result
+++ b/storage/connect/mysql-test/connect/r/part_file.result
@@ -99,8 +99,8 @@ PARTITION `1` VALUES LESS THAN(10),
PARTITION `2` VALUES LESS THAN(50),
PARTITION `3` VALUES LESS THAN(MAXVALUE));
SHOW INDEX FROM t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
-t1 0 PRIMARY 1 id A NULL NULL NULL XINDEX
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment Ignored
+t1 0 PRIMARY 1 id A NULL NULL NULL XINDEX NO
INSERT INTO t1(id,msg) VALUES(4, 'four');
SELECT * FROM dr1 ORDER BY fname, ftype;
fname ftype
@@ -294,8 +294,8 @@ part3 .txt
#
CREATE INDEX XID ON t1(id);
SHOW INDEX FROM t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
-t1 1 XID 1 id A NULL NULL NULL XINDEX
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment Ignored
+t1 1 XID 1 id A NULL NULL NULL XINDEX NO
SELECT * FROM dr1 ORDER BY fname, ftype;
fname ftype
part1 .fnx
@@ -309,7 +309,7 @@ id select_type table partitions type possible_keys key key_len ref rows Extra
1 SIMPLE t1 1 ref XID XID 4 const 1
DROP INDEX XID ON t1;
SHOW INDEX FROM t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment Ignored
SELECT * FROM dr1 ORDER BY fname, ftype;
fname ftype
part1 .txt
@@ -317,8 +317,8 @@ part2 .txt
part3 .txt
ALTER TABLE t1 ADD PRIMARY KEY (id);
SHOW INDEX FROM t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
-t1 0 PRIMARY 1 id A NULL NULL NULL XINDEX
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment Ignored
+t1 0 PRIMARY 1 id A NULL NULL NULL XINDEX NO
SELECT * FROM dr1 ORDER BY fname, ftype;
fname ftype
part1 .fnx
@@ -332,7 +332,7 @@ id select_type table partitions type possible_keys key key_len ref rows Extra
1 SIMPLE t1 1 const PRIMARY PRIMARY 4 const 1
ALTER TABLE t1 DROP PRIMARY KEY;
SHOW INDEX FROM t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment Ignored
SELECT * FROM dr1 ORDER BY fname, ftype;
fname ftype
part1 .txt
diff --git a/storage/connect/mysql-test/connect/r/part_table.result b/storage/connect/mysql-test/connect/r/part_table.result
index ee17a1d32b9..0cd4f0115a4 100644
--- a/storage/connect/mysql-test/connect/r/part_table.result
+++ b/storage/connect/mysql-test/connect/r/part_table.result
@@ -111,8 +111,8 @@ Warning 1105 Data repartition in 1 is unchecked
Warning 1105 Data repartition in 2 is unchecked
Warning 1105 Data repartition in 3 is unchecked
SHOW INDEX FROM t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
-t1 0 PRIMARY 1 id NULL NULL NULL NULL REMOTE
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment Ignored
+t1 0 PRIMARY 1 id NULL NULL NULL NULL REMOTE NO
INSERT INTO t1 VALUES(4, 'four');
INSERT INTO t1 VALUES(40, 'forty');
INSERT INTO t1 VALUES(72,'seventy two');
diff --git a/storage/connect/mysql-test/connect/t/dbf.test b/storage/connect/mysql-test/connect/t/dbf.test
index b798b1a2bc5..ca5124f1a81 100644
--- a/storage/connect/mysql-test/connect/t/dbf.test
+++ b/storage/connect/mysql-test/connect/t/dbf.test
@@ -34,7 +34,7 @@ END//
CREATE PROCEDURE test.dbf_header(in fname VARCHAR(1024)) DETERMINISTIC
BEGIN
DECLARE content BLOB;
- DECLARE offset INT;
+ DECLARE `offset` INT;
DECLARE fieldno INT;
SELECT '--------';
SELECT LOAD_FILE(fname) INTO content;
@@ -45,11 +45,11 @@ BEGIN
SELECT CONV(HEX(REVERSE(SUBSTRING(content,11,2))),16,10) AS RecLength;
SELECT HEX(REVERSE(SUBSTRING(content,29,2))) AS TableFlags;
SELECT HEX(REVERSE(SUBSTRING(content,30,1))) AS CodePageMark;
- SET offset=33;
+ SET `offset`=33;
SET fieldno=0;
- WHILE SUBSTR(content, offset, 1) <> 0x0D AND offset + 32 < LENGTH(content) DO
- CALL dbf_field(fieldno, SUBSTRING(content, offset, 32));
- SET offset=offset + 32;
+ WHILE SUBSTR(content, `offset`, 1) <> 0x0D AND `offset` + 32 < LENGTH(content) DO
+ CALL dbf_field(fieldno, SUBSTRING(content, `offset`, 32));
+ SET `offset`=`offset` + 32;
SET fieldno=fieldno + 1;
END WHILE;
SELECT '--------';
diff --git a/storage/connect/noconst.c b/storage/connect/noconst.c
index 043eae7c54e..830a849491f 100644
--- a/storage/connect/noconst.c
+++ b/storage/connect/noconst.c
@@ -5,11 +5,11 @@
#include <mysqld.h>
#include <string.h>
-#if defined(__WIN__)
+#if defined(_WIN32)
#define DllExport __declspec( dllexport )
-#else // !__WIN__
+#else // !_WIN32
#define DllExport
-#endif // !__WIN__
+#endif // !_WIN32
extern "C" {
DllExport my_bool noconst_init(UDF_INIT*, UDF_ARGS*, char*);
diff --git a/storage/connect/odbconn.cpp b/storage/connect/odbconn.cpp
index b0026860054..09140712de8 100644
--- a/storage/connect/odbconn.cpp
+++ b/storage/connect/odbconn.cpp
@@ -125,17 +125,20 @@ int TranslateSQLType(int stp, int prec, int& len, char& v, bool& w)
switch (stp) {
case SQL_WVARCHAR: // (-9)
w = true;
+ /* fall through */
case SQL_VARCHAR: // 12
v = 'V';
type = TYPE_STRING;
break;
case SQL_WCHAR: // (-8)
w = true;
+ /* fall through */
case SQL_CHAR: // 1
type = TYPE_STRING;
break;
case SQL_WLONGVARCHAR: // (-10)
w = true;
+ /* fall through */
case SQL_LONGVARCHAR: // (-1)
if (GetTypeConv() == TPC_YES || GetTypeConv() == TPC_FORCE) {
v = 'V';
@@ -2355,6 +2358,7 @@ int ODBConn::GetCatInfo(CATPARM *cap)
break;
case CAT_SPC:
ThrowDBX("SQLSpecialColumns not available yet");
+ break;
default:
ThrowDBX("Invalid SQL function id");
} // endswitch infotype
diff --git a/storage/connect/plgdbsem.h b/storage/connect/plgdbsem.h
index 370bf69ffa0..4371f90a21d 100644
--- a/storage/connect/plgdbsem.h
+++ b/storage/connect/plgdbsem.h
@@ -14,11 +14,7 @@
/***********************************************************************/
/* DB Constant definitions. */
/***********************************************************************/
-#if defined(FRENCH)
-#define DEFAULT_LOCALE "French"
-#else // !FRENCH
#define DEFAULT_LOCALE "English"
-#endif // !FRENCH
#define DOS_MAX_PATH 144 /* Must be the same across systems */
#define DOS_BUFF_LEN 100 /* Number of lines in binary file buffer */
diff --git a/storage/connect/rcmsg.c b/storage/connect/rcmsg.c
index 4cd443d88bb..e2fd08ba866 100644
--- a/storage/connect/rcmsg.c
+++ b/storage/connect/rcmsg.c
@@ -32,17 +32,6 @@ const char *GetMsgid(int id)
const char *p = NULL;
// This conditional until a real fix is found for MDEV-7304
-#if defined(FRENCH)
- if (!stricmp(msglang(), "french"))
- switch (id) {
-#include "frids.h"
-#if defined(NEWMSG)
-#include "frcas.h"
-#endif // NEWMSG
- } // endswitch(id)
-
- else // English
-#endif // FRENCH
switch (id) {
#include "enids.h"
#if defined(NEWMSG)
diff --git a/storage/connect/reldef.cpp b/storage/connect/reldef.cpp
index 144d31735d6..114071b35fb 100644
--- a/storage/connect/reldef.cpp
+++ b/storage/connect/reldef.cpp
@@ -365,7 +365,8 @@ bool TABDEF::Define(PGLOBAL g, PCATLG cat,
Read_Only = GetBoolCatInfo("ReadOnly", false);
const char *data_charset_name= GetStringCatInfo(g, "Data_charset", NULL);
m_data_charset= data_charset_name ?
- get_charset_by_csname(data_charset_name, MY_CS_PRIMARY, 0):
+ get_charset_by_csname(data_charset_name, MY_CS_PRIMARY,
+ MYF(MY_UTF8_IS_UTF8MB3)):
NULL;
csname = GetStringCatInfo(g, "Table_charset", NULL);
diff --git a/storage/connect/tabjson.cpp b/storage/connect/tabjson.cpp
index ec76d82d917..968253ec8d1 100644
--- a/storage/connect/tabjson.cpp
+++ b/storage/connect/tabjson.cpp
@@ -1068,7 +1068,6 @@ bool TDBJSN::OpenDB(PGLOBAL g)
/*********************************************************************/
/* Lrecl is Ok. */
/*********************************************************************/
-
MODE mode = Mode;
// Buffer must be allocated in g->Sarea
diff --git a/storage/connect/tabutil.cpp b/storage/connect/tabutil.cpp
index f0f6bb58db6..02908927397 100644
--- a/storage/connect/tabutil.cpp
+++ b/storage/connect/tabutil.cpp
@@ -285,7 +285,7 @@ PQRYRES TabColumns(PGLOBAL g, THD *thd, const char *db,
crp->Kdata->SetValue((fmt) ? fmt : (char*) "", i);
crp = crp->Next; // New (charset)
- fld = (char *)fp->charset()->name;
+ fld = (char *)fp->charset()->coll_name.str;
crp->Kdata->SetValue(fld, i);
// Add this item
diff --git a/storage/connect/tabxml.cpp b/storage/connect/tabxml.cpp
index 3bd2cfbf6cd..a5957178b60 100644
--- a/storage/connect/tabxml.cpp
+++ b/storage/connect/tabxml.cpp
@@ -12,9 +12,8 @@
/* Include required compiler header files. */
/***********************************************************************/
#include "my_global.h"
-#include <stdio.h>
+#include <m_string.h>
#include <fcntl.h>
-#include <errno.h>
#if defined(_WIN32)
#include <io.h>
#include <winsock2.h>
@@ -252,10 +251,11 @@ PQRYRES XMLColumns(PGLOBAL g, char *db, char *tab, PTOS topt, bool info)
more:
if (vp->atp) {
- size_t z = sizeof(colname) - 1;
- strncpy(colname, vp->atp->GetName(g), z);
- colname[z] = 0;
- strncat(xcol->Name, colname, XLEN(xcol->Name));
+ size_t z = sizeof(colname) - 1;
+ size_t xlen= strlen(xcol->Name);
+ strmake(colname, vp->atp->GetName(g), z);
+ strmake(xcol->Name + xlen, colname,
+ sizeof(xcol->Name) - 1 - xlen);
switch (vp->atp->GetText(g, buf, sizeof(buf))) {
case RC_INFO:
@@ -272,11 +272,13 @@ PQRYRES XMLColumns(PGLOBAL g, char *db, char *tab, PTOS topt, bool info)
strncat(fmt, colname, XLEN(fmt));
} else {
+ size_t xlen;
if (tdp->Usedom && node->GetType() != 1)
continue;
- strncpy(colname, node->GetName(g), sizeof(colname));
- strncat(xcol->Name, colname, XLEN(xcol->Name));
+ xlen= strlen(xcol->Name);
+ strmake(colname, node->GetName(g), sizeof(colname)-1);
+ strmake(xcol->Name + xlen, colname, sizeof(xcol->Name) - 1 - xlen);
if (j)
strncat(fmt, colname, XLEN(fmt));