Mon tableau de dossiers doivent satisfaire à deux conditions:Comment puis-je appliquer plusieurs textes de validation de table à la même table dans Access?
- Les entrées du champ
ClosingDate
ne peut pas correspondre à une date antérieure à ce qui est dans le domaineRequestDate
. - Une valeur
BidBond
peut être fournie si, et seulement si, le champType
de l'enregistrement est réglé sur "Tender"
Les deux règles résultant de validation multi-terrain sont:
1. ([ClosingDate] Is Null) Or ([ClosingDate] >= [RequestDate])
2. ([Type]="Tender") Or ([BidBond] Is Null)
Si La règle 1 est enfreinte, le texte de validation doit être "La date de clôture ne peut pas être antérieure à la demande." "
Si les données entrées tombent en faute de Règle 2, "Les liens de soumission ne peuvent être affectés qu'aux appels d'offres. "devrait saluer l'utilisateur.
Je sais que je peux combiner les deux règles de validation avec une clause And
, mais comment pourrais-je spécifier deux textes de validation différents en fonction de la règle de validation est violée?
@HansUp: Je pense également que les utilisateurs ne devraient pas voir les tables ou les requêtes. Cependant, je préférerais que la validation de la table soit la clé de la validation du formulaire plutôt que d'utiliser une solution de «pansement» en demandant au formulaire d'effectuer une vérification de validation indépendante. – Zaid
Aucun argument sur ce point, Zaid. Mais je ne vois toujours pas comment le faire comme tu veux ... on peut le faire avec un formulaire. – HansUp
@Zaid: vos instincts sont bons, mais tout simplement pas possible avec un back-up Jet/ACE jusqu'à A2007. A partir de A2010, il y a des macros de données au niveau de la table, qui sonnent icky (les "macros" ne sont pas les plus expérimentées que les développeurs d'Access sont susceptibles de respecter), mais elles sont incroyablement puissantes. cela s'appliquera à n'importe quel utilisateur de la table. Mais avant A2010, cela peut seulement être fait au niveau de l'application, pas au niveau du moteur. –