A voir également:
- [access]interdire doublons encodage formulair
- Encodage ascii - Guide
- Supprimer les doublons excel - Guide
- Doublons photos - Guide
- Supprimer les doublons photos gratuit - Télécharger - Nettoyage
- Acer quick access - Forum Logiciels
7 réponses
zenon
Messages postés
726
Date d'inscription
jeudi 30 septembre 2004
Statut
Membre
Dernière intervention
13 février 2010
180
26 févr. 2006 à 17:12
26 févr. 2006 à 17:12
Tu peux faire la même chose en VB sans être limité par le nombre de caractères.
La fct DCount est effectivement une bonne idée.
Tant pis pour la structure...
La fct DCount est effectivement une bonne idée.
Tant pis pour la structure...
zenon
Messages postés
726
Date d'inscription
jeudi 30 septembre 2004
Statut
Membre
Dernière intervention
13 février 2010
180
25 févr. 2006 à 10:06
25 févr. 2006 à 10:06
Pourrais-tu en dire plus quant à la structure de tes tables?
Je ne trouve pas logique de déplacer les enregistrements d'une table à l'autre.
Ne serait-il pas plus simple d'extraire les dates libres à l'aide d'une requête pour n'afficher que les chalets libres.
Si tu fais de la location saisonnière comme la dénomination "chalet" me le fait penser (à moins que tu ne sois Suisse? (lol)) ne penses-tu pas illogique de faire d'un formulaire "client" le formulaire principal? ne serait-il pas plus simple de partir d'un tableau affichant tous les chalets libres par date puis, une fois le choix du chalet et de la date effectués d'encoder les données du client...
Je ferais une table "chalets" reprenant la description des chalets,
une table "location" reprenant les dates de location, une clé externe N°de client et une clé externe N°de chalet et une table "clients" reprenant les coordonnées des clients.
A mon avis avec ça tu as tout;
Je ne trouve pas logique de déplacer les enregistrements d'une table à l'autre.
Ne serait-il pas plus simple d'extraire les dates libres à l'aide d'une requête pour n'afficher que les chalets libres.
Si tu fais de la location saisonnière comme la dénomination "chalet" me le fait penser (à moins que tu ne sois Suisse? (lol)) ne penses-tu pas illogique de faire d'un formulaire "client" le formulaire principal? ne serait-il pas plus simple de partir d'un tableau affichant tous les chalets libres par date puis, une fois le choix du chalet et de la date effectués d'encoder les données du client...
Je ferais une table "chalets" reprenant la description des chalets,
une table "location" reprenant les dates de location, une clé externe N°de client et une clé externe N°de chalet et une table "clients" reprenant les coordonnées des clients.
A mon avis avec ça tu as tout;
Bonjour
Merci d’avoir répondu
Je suis d’accord ,les tables chalet client et location sont faites comme ca
Je déplace les enregistrements de la table location pour les archivés dans une autre table.
Le formulaire location reprend chaque client avec le chalet qu’il loue les dates entrée ,de sortie, les charges et le prix a payer
Moi je voulais que la personne qui encode les dates de la location ne puisse pas encoder une date qui existe déjà pour un chalet ,normalement elle se base sur la table archive pour voir les date occupées mais si elle se trompe elle fera une deuxiéme reservation ?
Je ne sais pas si j’ai bien explique mon probléme
Merci
Merci d’avoir répondu
Je suis d’accord ,les tables chalet client et location sont faites comme ca
Je déplace les enregistrements de la table location pour les archivés dans une autre table.
Le formulaire location reprend chaque client avec le chalet qu’il loue les dates entrée ,de sortie, les charges et le prix a payer
Moi je voulais que la personne qui encode les dates de la location ne puisse pas encoder une date qui existe déjà pour un chalet ,normalement elle se base sur la table archive pour voir les date occupées mais si elle se trompe elle fera une deuxiéme reservation ?
Je ne sais pas si j’ai bien explique mon probléme
Merci
zenon
Messages postés
726
Date d'inscription
jeudi 30 septembre 2004
Statut
Membre
Dernière intervention
13 février 2010
180
26 févr. 2006 à 16:30
26 févr. 2006 à 16:30
Je pense avoir bien compris, mais si tu laissais tous les enregistrements dans la même table, ce serait plus facile de n'afficher dans le formulaire dans lequel tu encodes les nouvelles locations que les périodes libres.
On pourrait par exemple créer un formulaire principal reprenant les chalets avec un sous-formulaire affichant les périodes disponibles et/ou un formulaire de recherche par dates affichant tous les chalets libres à la période voulue. On pourrait ajouter d'autres critères comme la capacité d'accueil...
Si les locations sont encodées dans une table distincte, ce n'est plus possible. On peut tout au plus écrire une procédure VB pour vérifier si le chalet est libre et afficher un message d'erreur si ce n'est pas le cas.
En fait, dès qu'une période est réservée, elle disparait des possibilités de location et si on veut afficher toutes les réservations, il suffit d'appliquer une requête sélection à la table pour n'afficher que les enregistrements où les dates ne sont pas Null. Comme la table contient une référence au N°de chalet et au N°Client toutes les données peuvent être retrouvées et on n'a pas besoins d'une table archives.
On pourrait par exemple créer un formulaire principal reprenant les chalets avec un sous-formulaire affichant les périodes disponibles et/ou un formulaire de recherche par dates affichant tous les chalets libres à la période voulue. On pourrait ajouter d'autres critères comme la capacité d'accueil...
Si les locations sont encodées dans une table distincte, ce n'est plus possible. On peut tout au plus écrire une procédure VB pour vérifier si le chalet est libre et afficher un message d'erreur si ce n'est pas le cas.
En fait, dès qu'une période est réservée, elle disparait des possibilités de location et si on veut afficher toutes les réservations, il suffit d'appliquer une requête sélection à la table pour n'afficher que les enregistrements où les dates ne sont pas Null. Comme la table contient une référence au N°de chalet et au N°Client toutes les données peuvent être retrouvées et on n'a pas besoins d'une table archives.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Merci de vos réponse
J'essaie de resoudre le prob sans changer ma structure ,pour moi toute les dates sont libres sauf celle dans ma table archive
Je pensais faire une macro qui compare la date d'entrée et le chalet que l'on entre dans le formulaire et les comparer au enregistrement dans la table archive.
J'ai utilisé la condition
CpteDom("[Date d'entrée]";"Archive dates";"[Date d'entrée]=Forms![CLIENTS+ SFormulairelocation]![LOCATION Sous-formulaire1]![Date d'entrée]")>0
action bte message
dans la macro pour savoir si la date est déja prise cela fonctionne mais si j'essaie d'ajouter la condition pour le chalet je n'est pas assez de caractere (texte trop long)
une idée?
Merci
J'essaie de resoudre le prob sans changer ma structure ,pour moi toute les dates sont libres sauf celle dans ma table archive
Je pensais faire une macro qui compare la date d'entrée et le chalet que l'on entre dans le formulaire et les comparer au enregistrement dans la table archive.
J'ai utilisé la condition
CpteDom("[Date d'entrée]";"Archive dates";"[Date d'entrée]=Forms![CLIENTS+ SFormulairelocation]![LOCATION Sous-formulaire1]![Date d'entrée]")>0
action bte message
dans la macro pour savoir si la date est déja prise cela fonctionne mais si j'essaie d'ajouter la condition pour le chalet je n'est pas assez de caractere (texte trop long)
une idée?
Merci
Bonjour,
Je crois que le VB est la meilleur solution ,mais comme je n’y connais pas grand chose en prog j’ ai converti ma macro ,qui fonctionne seulement avec les dates ,en VB
Mais je n’arrive pas a la transformer avec le deuxième critère le nomchalet
Voila ma macro convertie sans modif
Si quelqu’un a une idée
Merci
Option Compare Database
'------------------------------------------------------------
' verification_doublon_date
'
'------------------------------------------------------------
Function verification_doublon_date()
On Error GoTo verification_doublon_date_Err
If (DCount("[Date d'entrée]", "Archive dates", "[Date d'entrée]=[Formulaires]![CLIENTS+ SFormulaire]![LOCATION Sous-formulaire1]![Date d'entrée]") > 0) Then
Beep
MsgBox "attention doublon", vbOKOnly, ""
End If
verification_doublon_date_Exit:
Exit Function
verification_doublon_date_Err:
MsgBox Error$
Resume verification_doublon_date_Exit
End Function
Je crois que le VB est la meilleur solution ,mais comme je n’y connais pas grand chose en prog j’ ai converti ma macro ,qui fonctionne seulement avec les dates ,en VB
Mais je n’arrive pas a la transformer avec le deuxième critère le nomchalet
Voila ma macro convertie sans modif
Si quelqu’un a une idée
Merci
Option Compare Database
'------------------------------------------------------------
' verification_doublon_date
'
'------------------------------------------------------------
Function verification_doublon_date()
On Error GoTo verification_doublon_date_Err
If (DCount("[Date d'entrée]", "Archive dates", "[Date d'entrée]=[Formulaires]![CLIENTS+ SFormulaire]![LOCATION Sous-formulaire1]![Date d'entrée]") > 0) Then
Beep
MsgBox "attention doublon", vbOKOnly, ""
End If
verification_doublon_date_Exit:
Exit Function
verification_doublon_date_Err:
MsgBox Error$
Resume verification_doublon_date_Exit
End Function