Précédent   Forum des professionnels en informatique > Bases de données > Firebird > Installation
Installation Forum d'entraide sur l'installation et la configuration du serveur Firebird
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 13/10/2004, 16h57   #1
Rédacteur
 
Inscription : janvier 2004
Messages : 2 123
Détails du profil
Informations personnelles :
Âge : 31

Informations forums :
Inscription : janvier 2004
Messages : 2 123
Points : 1 977
Points : 1 977
Par défaut [FB] Gestion des erreurs et application francophone

Bonjour.

Lors de la manipulation d'une base de donnée (requete, etc ...), il est nécessaire de gérer les exceptions afin de connaitre le type d'erreur et agir en conséquent.

Ex :
Lorsque j'utilisais ADO, je pouvais récupérer un numéro d'erreur avec
Code :
Connection1.Errors[INDEX].SQLState
et selon le numéro je traitais l'erreur de telle ou telle manière.

Or avec FireBird (et composant IBX), je n'arrive pas a trouver de code d'erreur numérique, ni même d'ailleur à rajouter une exception de type EIB****. Je suis obligé de passer a chaque fois par une exception de type Exception.

Donc, pour être un peu plus précis dans ma question :

Comment peut-on différencier les exceptions IBX via l'application (en Delphi)?

Petite question supplémentaire :
Existe-t-il un moyen de traduire les exceptions en Francais (car les utilisateurs ne sont pas forcément de bon anglophone) ?

exemple :
Your user name and password are not defined. Ask your database administrator ....
->
Votre nom d'utilisateur et votre motde passe ne sont pas définis. Demandez à votre administrateur ...

Ainsi, il ne serait pas nécessaire de traduire chaque erreur qui risque de se produire.

Merci,
__________________
Ancien pseudo : yobenzen

Recherche un emploi de Chef de Projet ou Développeur en Normandie
Delphi/Oracle/Interbase
Migration vers symfony

CV :
- LinkedIn
- Viadeo
Benjamin GAGNEUX est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/10/2004, 17h35   #2
Membre émérite
 
Avatar de Andry
 
Inscription : juillet 2002
Messages : 1 109
Détails du profil
Informations personnelles :
Localisation : Madagascar

Informations forums :
Inscription : juillet 2002
Messages : 1 109
Points : 949
Points : 949
Envoyer un message via MSN à Andry
J'ai dejà vu quelques part un doc qui traites des erreurs Interbase. Essaie de regarder dans les manuels livré avec.
Je cherche et je le post ici si je me rapelle.

A+
__________________
On progresse .....
Andry est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/10/2004, 17h41   #3
Rédacteur
 
Inscription : janvier 2004
Messages : 2 123
Détails du profil
Informations personnelles :
Âge : 31

Informations forums :
Inscription : janvier 2004
Messages : 2 123
Points : 1 977
Points : 1 977
Je te remercie, c'est sympa
Je vais voir aussi de mon coté (peut etre aussi dans le code source, je vais essayer de trouver cela car pour l'instant je n'ai que des DCU et donc impossible d'utiliser EIB***).
__________________
Ancien pseudo : yobenzen

Recherche un emploi de Chef de Projet ou Développeur en Normandie
Delphi/Oracle/Interbase
Migration vers symfony

CV :
- LinkedIn
- Viadeo
Benjamin GAGNEUX est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/10/2004, 18h15   #4
Membre Expert
 
Avatar de Barbibulle
 
Frédéric
Inscription : octobre 2002
Messages : 1 722
Détails du profil
Informations personnelles :
Nom : Frédéric
Âge : 42

Informations forums :
Inscription : octobre 2002
Messages : 1 722
Points : 2 025
Points : 2 025
Il est possible de traduire tous les messages provenant d'interbase/firebird.

Ceux ci sont dans le fichier : interbase.msg (pour interbase et firebird 1.0) et firebird.msg pour firebird > 1.5

Pour le traduire je vous recommande d'utiliser un des editeur existant.
Il y en a un dans IBExpert (Menu outils / Traduire les messages d'interbase) mais je l'ai vu également dans IBMannager.

Si une personne courageuse et généreuse veut bien traduire et mettre à disposition de la communauté une traduction. Merci à lui.
Barbibulle est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/10/2004, 18h30   #5
Rédacteur
 
Inscription : janvier 2004
Messages : 2 123
Détails du profil
Informations personnelles :
Âge : 31

Informations forums :
Inscription : janvier 2004
Messages : 2 123
Points : 1 977
Points : 1 977
C'est intéressant...

Mais 2899 entrées à traduire ca fait beaucoup...
Je vais faire une recherche afin de voir si cela n'existe pas déjà et je vous tiens au courant.

Mais alors comment récupérer le numéro d'erreur ?
__________________
Ancien pseudo : yobenzen

Recherche un emploi de Chef de Projet ou Développeur en Normandie
Delphi/Oracle/Interbase
Migration vers symfony

CV :
- LinkedIn
- Viadeo
Benjamin GAGNEUX est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/10/2004, 20h03   #6
Membre du Club
 
Inscription : mai 2003
Messages : 140
Détails du profil
Informations forums :
Inscription : mai 2003
Messages : 140
Points : 66
Points : 66
Pour les exceptions sous builder c++, il est possible de 'catcher' les erreurs de type EIBError et le code des erreurs se trouvent dans le fichier IBErrorCodes.hpp.
Code :
1
2
3
4
5
6
7
8
9
10
11
try 
{
    Database->Connected = true;
} 
catch(EIBError &e) 
{
  IF (e.IBErrorCode == isc_login)  // isc_login se trouve dans IBErrorCodes.hpp
  {
      // Erreur de login
  }
}
Ca ne marche pas sous delphi ?
__________________
Les deux mots les plus brefs et les plus anciens, oui et non, sont ceux qui exigent le plus de réflexion. "Pythagore"
Sitting Bull est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/10/2004, 20h16   #7
Rédacteur
 
Inscription : janvier 2004
Messages : 2 123
Détails du profil
Informations personnelles :
Âge : 31

Informations forums :
Inscription : janvier 2004
Messages : 2 123
Points : 1 977
Points : 1 977
Si ca y est !
Merci,

en fait, je ne savais pas que la gestion d'erreur se fait avec le fichier IB.pas dans uses(include sous C++) et non pas les IBDatabase et autres des composants.

Ca marche impeccable !
Il ne reste plus qu'a traduire le fichier FireBird.msg...
__________________
Ancien pseudo : yobenzen

Recherche un emploi de Chef de Projet ou Développeur en Normandie
Delphi/Oracle/Interbase
Migration vers symfony

CV :
- LinkedIn
- Viadeo
Benjamin GAGNEUX est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/02/2006, 12h25   #8
Candidat au titre de Membre du Club
 
Inscription : juillet 2003
Messages : 24
Détails du profil
Informations personnelles :
Âge : 41

Informations forums :
Inscription : juillet 2003
Messages : 24
Points : 13
Points : 13
Bonjour,

La traduction du fichier firebird.msg est fournie dans la distribution Linux de FireBird. Le fichier s'appelle fr_FR.msg. Il suffit de le renommer en firebird.msg pour avoir les messages en français.
ZeKlubb est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/02/2006, 17h33   #9
Membre Expert
 
Avatar de NoisetteProd
 
Inscription : janvier 2003
Messages : 1 912
Détails du profil
Informations forums :
Inscription : janvier 2003
Messages : 1 912
Points : 1 925
Points : 1 925
Envoyer un message via MSN à NoisetteProd
Effectivement, d'ailleurs, yobenzen à indiqué cette astuce dans la http://interbase.developpez.com/faq/?page=2A#MSG_ERR_FB
__________________
Fais cogiter ta Noisette !!

Participez à la page SOURCES Delphi !

Découvrez le Défi Delphi

Mon Mail
NoisetteProd est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/05/2006, 14h29   #10
Invité de passage
 
Inscription : mai 2006
Messages : 2
Détails du profil
Informations forums :
Inscription : mai 2006
Messages : 2
Points : 1
Points : 1
Dans quelle Release trouve t'on ce fameux fichier fr_FR.msg
Moi pas trouver.......
KITEMAN29 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/05/2006, 14h54   #11
Inscrit
 
Inscription : mai 2004
Messages : 759
Détails du profil
Informations forums :
Inscription : mai 2004
Messages : 759
Points : 288
Points : 288
Citation:
La traduction du fichier firebird.msg est fournie dans la distribution Linux de FireBird. Le fichier s'appelle fr_FR.msg. Il suffit de le renommer en firebird.msg pour avoir les messages en français.
juste un peu de lecture ! je vient juste de le telecharger
devalender est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 14h11.


 
 
 
 
Partenaires

Hébergement Web