|
FORUMS PROFESSIONNELS WINDEV, WEBDEV et WINDEV Mobile |
| | | | | |
| Gestion de l'erreur de doublon |
| Débuté par jean-francois, 14 sep. 2006 12:32 - 4 réponses |
| |
| | | |
|
| |
| Posté le 14 septembre 2006 - 12:32 |
Salut à tous,
- J'ai l'objet ONGLET avec plusieurs Volets. - Dans un volet j'ai inséré une table liée à un fichier. - Le fichier comporte une clé composée unique.
Si je descends au bas de la table pour ajouter une ligne à la table et que je saisis les colonnes (champs) composant la clé composée de telle sorte de créer un doublon, je reçois un message d'erreur (normal) fatale (peut-être pas normal) et le programme s'arrête.
J'aimerais intercepter cette erreur, mais voila j'ai essayé plein de chose, mais aucun résultat.
Est-ce que quelqu'un pourrait m'aider en m'indiquant OU je dois insérer mon code pour intercepter cette erreur fatale
Merci d'avance,
Jean-François
ci-après le message d'erreur récupéré ----------------------------------------------------------------------------------------------- Erreur à la ligne 38 du traitement Procédure locale _InitTablesSansRubrique. Vous avez appelé la fonction ConstruitTableFichier. Fichier <> inconnu dans l'analyse <C:\Mes Projets\Planning_ETE\Planning_ETE.wdd>, ou requête ou vue non initialisée.
Informations techniques
Projet : Planning_ETE
Dump de l'erreur du module <WD100HF.DLL> <10.00Edh>.
- Appel WL : Traitement de <Doublon.PROCEDURE._InitTablesSansRubrique>, ligne <38>, thread <0> Fonction <ConstruitTableFichier>, n° de syntaxe <1>
- Niveau : erreur fatale (EL_FATAL)
- Code erreur : 70018
- Code erreur WD55 : 18
- Pas de code d'erreur système
- Pas de message d'erreur système
- Que s'est-il passé ? Fichier <> inconnu dans l'analyse <C:\Mes Projets\Planning_ETE\Planning_ETE.wdd>, ou requête ou vue non initialisée.
- Infos de debug : iehf01 Fonction (1,105)
- Infos attachées : EIT_PATHWDD : <C:\Mes Projets\Planning_ETE\Planning_ETE.wdd> EIT_LOGICALTABLENAME : <> EIT_DATEHEURE : 14/09/2006 10:36:46 EIT_PILEWL : Procédure locale _InitTablesSansRubrique (Doublon.PROCEDURE._InitTablesSansRubrique), ligne 38 Procédure locale InitTables (Doublon.PROCEDURE.InitTables), ligne 8 Déclarations globales de Doublon (Doublon), ligne 17
- Identifiant dans le .err : 70116
Assistance
- Vérifiez que le fichier est bien décrit dans l'analyse en cours - S'il s'agit d'un fichier décrit en dynamique, vérifiez que ce fichier a bien été déclaré avant par HDéclare, HDéclareExterne ou HDécritFichier - S'il s'agit d'une requête du projet ou d'une requête SQL, vérifiez que cette requête a été déclarée avant par HExécuteRequête pour une requête du projet ou par HExécuteRequêteSQL pour une requête SQL.
----------------------------------------------------------------------------------------------- |
| |
| |
| | | |
|
| | |
| |
| Posté le 14 septembre 2006 - 15:06 |
Bonjour,
Votre description ne correspond pas au message que vous avez fourni. Vous décrivez l'ajout d'un enregistrement, alors que l'erreur concerne le chargement d'une source de données dont le nom n'est pas renseignée, dans un table avec la fonction "ConstruitTableFichier". Je vous encourage à suite le traitement en pas à pas à l'aide du Débogueur, vous devriez repérer l'appel de la fonction "ConstruitTableFichier" qui en reçoit pas les bon paramètres.
Elian Lacroix Mail : elian.lacroix@gmail.com http://elianlacroix.blogspot.com/
"Jean-François Marschall" <jean-francois@marschall.lu> a écrit dans le message de news: 450912f7$1@news.pcsoft.fr...
Salut à tous,
- J'ai l'objet ONGLET avec plusieurs Volets. - Dans un volet j'ai inséré une table liée à un fichier. - Le fichier comporte une clé composée unique.
Si je descends au bas de la table pour ajouter une ligne à la table et que je saisis les colonnes (champs) composant la clé composée de telle sorte de créer un doublon, je reçois un message d'erreur (normal) fatale (peut-être pas normal) et le programme s'arrête.
J'aimerais intercepter cette erreur, mais voila j'ai essayé plein de chose, mais aucun résultat.
Est-ce que quelqu'un pourrait m'aider en m'indiquant OU je dois insérer mon code pour intercepter cette erreur fatale
Merci d'avance,
Jean-François
ci-après le message d'erreur récupéré ----------------------------------------------------------------------------------------------- Erreur à la ligne 38 du traitement Procédure locale _InitTablesSansRubrique. Vous avez appelé la fonction ConstruitTableFichier. Fichier <> inconnu dans l'analyse <C:\Mes Projets\Planning_ETE\Planning_ETE.wdd>, ou requête ou vue non initialisée.
Informations techniques
Projet : Planning_ETE
Dump de l'erreur du module <WD100HF.DLL> <10.00Edh>.
- Appel WL : Traitement de <Doublon.PROCEDURE._InitTablesSansRubrique>, ligne <38>, thread <0> Fonction <ConstruitTableFichier>, n° de syntaxe <1>
- Niveau : erreur fatale (EL_FATAL)
- Code erreur : 70018
- Code erreur WD55 : 18
- Pas de code d'erreur système
- Pas de message d'erreur système
- Que s'est-il passé ? Fichier <> inconnu dans l'analyse <C:\Mes Projets\Planning_ETE\Planning_ETE.wdd>, ou requête ou vue non initialisée.
- Infos de debug : iehf01 Fonction (1,105)
- Infos attachées : EIT_PATHWDD : <C:\Mes Projets\Planning_ETE\Planning_ETE.wdd> EIT_LOGICALTABLENAME : <> EIT_DATEHEURE : 14/09/2006 10:36:46 EIT_PILEWL : Procédure locale _InitTablesSansRubrique (Doublon.PROCEDURE._InitTablesSansRubrique), ligne 38 Procédure locale InitTables (Doublon.PROCEDURE.InitTables), ligne 8 Déclarations globales de Doublon (Doublon), ligne 17
- Identifiant dans le .err : 70116
Assistance
- Vérifiez que le fichier est bien décrit dans l'analyse en cours - S'il s'agit d'un fichier décrit en dynamique, vérifiez que ce fichier a bien été déclaré avant par HDéclare, HDéclareExterne ou HDécritFichier - S'il s'agit d'une requête du projet ou d'une requête SQL, vérifiez que cette requête a été déclarée avant par HExécuteRequête pour une requête du projet ou par HExécuteRequêteSQL pour une requête SQL.
-----------------------------------------------------------------------------------------------
|
| |
| |
| | | |
|
| | |
| |
| Posté le 14 septembre 2006 - 15:20 |
Salut,
Je me réponds à moi même, puisque j'ai fini par trouver une solution qui me convient
Dans le code d'initialisation du projet j'ai mis la ligne suivante :
//Interception des doublons HSurErreur(MALADIES,hErrDoublon,"Doublon_Maladies")
J'ai créé la procédure suivante
PROCEDURE Doublon_Maladies() Erreur("Vous avez déjà saisi cette année pour les Maladies de cet ouvrier!","","Veuillez svp corriger la ligne") RENVOYER opFinTraitement
------------------
et le tour est joué. Le programme me renvoie directement dans ma table dans la ligne que j'étais en train de traiter.
@+, JF |
| |
| |
| | | |
|
| | |
| |
| Posté le 14 septembre 2006 - 15:20 |
Merci bien pour ta réponse.
Je fut tout naturellement très dérouté en voyant le message d'erreur que je recevais, car toutes les procédures incluses dans le message d'erreur ne sont pas des procédures que j'ai écrites. Je pense que se sont des procédures internes à Windev.
Toujours est-il que j'ai trouvé une solution que j'ai postée il y a quelques instants sur ce forum, pour aider éventuellement d'autres Windeviens.
@+, JF |
| |
| |
| | | |
|
| | |
| |
| Posté le 03 septembre 2016 - 01:16 |
Bonjour, J'ai rencontré un problème similaire avec W21 dans un tableenregistre() . Le message d'erreur était : ---------------------- Erreur à la ligne 21 du traitement Déclarations globales de Doublon. Vous avez appelé la fonction ConstruitTableFichier. La source de données <> n'est pas initialisée. - S'il s'agit d'un fichier de données, le fichier n'a pas été trouvé dans l'analyse <C:\Mes Projets\deronne\deronne.wdd> ou n'a pas été décrit avec les fonctions HDéclare / HDéclareExterne. - S'il s'agit d'une requête ou d'une vue, l'exécution a peut-être échoué. Pour récupérer l'erreur correspondante, testez le résultat des fonctions HExécuteRequête / HExécuteRequêteSQL / HCréeVue. -------------------------- Comme je n'utilise pas l'instruction construittablefichier dans mon script, je pense que c'est une instruction utilisée par WD pour délivrer un vrai message d'erreur de doublon.
J'ai mis la solution de Jean-François Marschall en pratique. J'attends de voir si le plantage persiste mais j'ai bon espoir. |
| |
| |
| | | |
|
| | | | |
| | |
| | |
| |
|
|
|