A voir également:
- Delphi 4 : pb avec les exceptions !
- Telecharger delphi 7 - Télécharger - Langages
- Code gta 4 ps4 - Guide
- Control center 4 - Télécharger - Divers Utilitaires
- 4 gb en go ✓ - Forum Jeux vidéo
- Groupe de 4 personnes connus ✓ - Forum Loisirs / Divertissements
3 réponses
try
// ton code ou application.processmessages
except
on E:Exception do showmessage (' date pas bonne!!! ')
end;
// ton code ou application.processmessages
except
on E:Exception do showmessage (' date pas bonne!!! ')
end;
peux tu me décrire de maniére trés présice le type de connexion que tu utilises (BDE, ..) ainsi que les composants (TDBEdit,Tdatasource,CLX dbexpress...) .
ce sera plus simple pour te donner une réponse claire
au fait l'exception qui est levée est-elle de type EconvertError ?
@+
A.N
ce sera plus simple pour te donner une réponse claire
au fait l'exception qui est levée est-elle de type EconvertError ?
@+
A.N
Voici les éléments de mon application (simplifié à l'extrême)
J'utilise Delphi 4 SP2 et BDE pour accès à une base interne Paradox.
J'ai un TDataModule.
A l'intérieur j'ai un TTable relié à ma table de type Paradox que j'ai créé avec le module de base de données livré avec Delphi.
Dans ce TTable j'ai ajouter des champs persistants de type TField : un pour chaque champ.
Parmi ces champs j'ai donc un champ qui contient une date représenté par un objet TFieldDate.
Propriété du TFieldDate :
EDitMask : !99/99/00;1;_
FieldKind : fkData
Bien ...
Ensuite j'ai une fiche TForm toute bête avec à l'intérieur un TDataSource relié à mon TTable du TDataModule que j'ai déclaré dans la clause uses de l'implementation.
Le TDataSource est autoedit.
A l'intérieur j'ai 2 autres contrôles :
1 bouton standard TButton et 1 objet TDBEdit relié à mon TDataSource et à mon champ date de ma table.
Le code de mon bouton fait uniquement un post.
Il n'y a aucun code associé à mon TDBEdit.
L'exception est bien en effet de type EconvertError lorsque j'entre pas exemple 40/01/01
Ensuite j'ai le message classique de Delphi : celui que j'aimerais personnaliser donc.
Cela dit si ce n'est pas possible je ne vais pas en mourrir ... :)
Encore merci
@+
Philippe
J'utilise Delphi 4 SP2 et BDE pour accès à une base interne Paradox.
J'ai un TDataModule.
A l'intérieur j'ai un TTable relié à ma table de type Paradox que j'ai créé avec le module de base de données livré avec Delphi.
Dans ce TTable j'ai ajouter des champs persistants de type TField : un pour chaque champ.
Parmi ces champs j'ai donc un champ qui contient une date représenté par un objet TFieldDate.
Propriété du TFieldDate :
EDitMask : !99/99/00;1;_
FieldKind : fkData
Bien ...
Ensuite j'ai une fiche TForm toute bête avec à l'intérieur un TDataSource relié à mon TTable du TDataModule que j'ai déclaré dans la clause uses de l'implementation.
Le TDataSource est autoedit.
A l'intérieur j'ai 2 autres contrôles :
1 bouton standard TButton et 1 objet TDBEdit relié à mon TDataSource et à mon champ date de ma table.
Le code de mon bouton fait uniquement un post.
Il n'y a aucun code associé à mon TDBEdit.
L'exception est bien en effet de type EconvertError lorsque j'entre pas exemple 40/01/01
Ensuite j'ai le message classique de Delphi : celui que j'aimerais personnaliser donc.
Cela dit si ce n'est pas possible je ne vais pas en mourrir ... :)
Encore merci
@+
Philippe
j'ai fais quelques tests et .. je n'ai pas reussit à prendre à la main pour remplacer le msg 'xxx-xxx' is not a valid date and time
mais voici une solution pour contouner le probléme :
tu peux créer une procédure qui va executer du sql (INSERT ou UPDATE) en récupérant les informations dont tu as besoin .. en particulier la date.
ainsi tu pourras gérer toi méme les messages d'erreur
try
//ton sql (INSERT ou UPDATE)
except
on E:EDBEngineError do showmessage ('les informations ne sont pas correctes')
end;
mais voici une solution pour contouner le probléme :
tu peux créer une procédure qui va executer du sql (INSERT ou UPDATE) en récupérant les informations dont tu as besoin .. en particulier la date.
ainsi tu pourras gérer toi méme les messages d'erreur
try
//ton sql (INSERT ou UPDATE)
except
on E:EDBEngineError do showmessage ('les informations ne sont pas correctes')
end;
15 oct. 2001 Ã 22:17
Je le place où ce code ??
Parce que je ne sais pas à quel niveau Delphi génère cette exception.
En + le pb c'est que je n'appelle aucun code, ce serait plutôt l'inverse , Delphi qui appelle mon code via les évenements entres autres et donc c'est lui qui à la main.
@+
Philippe