[Utilis. Avertis] Types de données et interface utilisateur intelligente: vos solutions ?
Bonjour,
Prenons un exemple conceptuel de création d'une application
Cahier des charges:
- Statistiques épidémiologiques
- Fournisseur de donnés externe
- Interface utilisateur de sélection de critères
- ...
Modélisation:
- Données
- id_Individu
- id_individu.DateNaissance
- id_individu.DateNaissance.type
- ...
- id_Affection
- ...
- ...
Création de la BD:
- créer les tables
- créer les champs (des tables)
- définir le type de champs
- ...
Création interface utilisateur, modules...
Test:
(suivant le modèle: Données ->Intervention Utilisateur ->Traitement ->résultat
- Exemple de problèmes Type de Données conceptuels:
- Erreur: Id_Individu.DateNaissance.Type incompatible avec les données
- Données: 00/00/1959
- Infos auprès du fournisseur de données : "Certains pays ont des registres nationaux ne précisant pas le jour et même parfois le mois de naissance.
- solution 1
- si 00/00/yyyy mettre 01/01
- Acceptable: Non
- Raisons : perturbation de statistiques basées sur le mois de naissance
- Exemple (non il ne s'agit pas d' horoscope) ;) Corrélation entre les affections allergiques saisonnières et la date de naissance.
- solution 2
- Créer un champ YYYY, un champ MM et un champ DD
- Conclusion:
- Typer les données en situation réelle n'est pas aisé.
. - Exemple de problèmes Type de Données et interface Utilisateur :
- Erreur: incompatibilité de Type (de données)
- But: Augmenter la productivité
- Outils de développements: CREATION D'UNE INTERFACE "INTELLIGENTE"
- solution 1
- Agir sur l'événement avant mise à jour
- Acceptable : non
- Pourquoi : impossible de modifier un champ pendant la mise à jour.
- solution 2
- Agir sur l'événement après mise à jour
- Accettable: non
- Pourquoi : impossible de mettre à jour si erreur de type( de données)
- Autres solutions
- Formulaires indépendants
- Tables temporaires
- EN CONNAISSEZ VOUS D'AUTRES ?
Question:
Lorsque la source d'une [zone de saisie de texte] est liée à un champ dont le type n'est pas texte, quels sont les moyens d'automatiser la correction d'une saisie générant une erreur de type ?
exemple: - contrôle.lbl= "cotez ce travail sur dix, entrez un chiffre de un à dix:"
- source contrôle.Type = integer
- données saisies = "huit" ou 80% ou 8/10 ...
- Traitement automatisé : "huit"=>8 "80%"="8/10"=>8 Me.contrôle=8
(PS:Je travaille sur access depuis 20 ans (inutile de me réinventer l'eau chaude), restez concis , merci)
D'avance, merci de m'avoir lu jusqu'ici
Alain.
To cancel or Not to cancel ...
Bonjour,
Tout d'abord merci pour cette réponse.
La problématique du code étant
Code:
Forms!Products!UnitPrice = curOriginalValue
qui ne peut être modifiée QU'APRES update.
Citation:
Vous pouvez aussi appeler cette procédure à partir de l'événement BeforeUpdate du contrôle qui contient les données à valider.
devrait en réalité être:
Vous pouvez seulement appeler cette procédure à partir des événements AfterUpdate et postérieus du contrôle qui contient les données à valider (et donc avant la sauvegarde de l'enregistrement)
Il est cependant décevant de ne pouvoir utiliser que UNDO (ou cancel) sur un événement BeforeUpdate.
Il reste les procédures "keydowm" et la surveillance du survol de la souris vers un autre contrôle pour agir avant que la procédure update ne "cancel pas toute notre créativité":mouarf:
Point positif à l'actif d' Access c'est une meilleur gestion des saisies : (Par exemple : les anciennes versions n'acceptaient pas la saisie de date sous forme "01-03-2012", provoquant un message d'erreur.) les versions >2000 transforment le "01-03-2012" en 01/03/2012 . Preuve qu'il y a quand même moyen d'agir avant la mise à jour.
Alain