Access - Intégrer un NuméroAuto qui tient compte d'une condition d'application

cs_helo2204 Messages postés 6 Date d'inscription mercredi 17 août 2005 Statut Membre Dernière intervention 2 mai 2006 - 24 oct. 2005 à 12:14
tbbuim1 Messages postés 940 Date d'inscription jeudi 20 février 2003 Statut Membre Dernière intervention 3 février 2011 - 26 oct. 2005 à 14:14
Bonjour,

J'ai une base de donnée avec des produits au poids et des pdt à la pièce.

Je voudrais intégrer dans mes formulaire un champs qui contienne un Numéro automatique incrémentiel qui ne s'applique que si les produits sont au poids.

Je ne sais pas où rentrer ma condition ???

Merci d'avance

5 réponses

tbbuim1 Messages postés 940 Date d'inscription jeudi 20 février 2003 Statut Membre Dernière intervention 3 février 2011 9
24 oct. 2005 à 17:46
??????????

Pourrais tu faire donner un exemple du résultat que tu veux obtenir?

Car d'après ce que tu dis, je comprends ça:

Imaginons que tu listes tes produits, le 1er n'est pas au poid donc rien

le 2eme l'est donc on a N°1

ensuite le 3 eme aussi donc N°2

le 4eme l'est donc rien

le 5eme l'est dont N°3...



c ça?

Si c'est le cas, je te conseil de baser ton formulaire sur 1 requête de jointure de type 2



Tu fais une 1ere requête qui affiche tous les produits qui sont au
poids, tu les insère dans une table temporaire identique à ta table de
base mais contenant un champ n° auto. tu fais alors une requête avec
les 2 tables. Avec à gauche la table d'origine et à droite la table
temporaire, tu lis les 2 tables avec le nom du produit ou quelque chose
qui fasse que le lien est unique (référence produit par exemple) et tu
appliques la jointure de type 2.

Tu choisi d'afficher le NumAuto de la table tempo et tous les produits
de la table d'origine. tu verras alors que les produits ne figurant pas
dans ta table temporaire n'auront pas de n° dans le champ numéroauto (c
grace au type de la jointure qui joint tous les enregistrements de la
table produits et seuleument ceux de la table tempo dont les champs
correspondent)



tu n'as plus qu'à associé cette requête à ton formulaire et ça fera ce
que j'ai énoncé plus haut. Il n'y aura de n° que pour ceux dont le
poids correspond à ton critère.
TBBUIM
0
cs_helo2204 Messages postés 6 Date d'inscription mercredi 17 août 2005 Statut Membre Dernière intervention 2 mai 2006
24 oct. 2005 à 17:58
Merci beaucoup, dernière petite question :
Est-ce un problème si ma table comporte déjà un n°auto ?
0
tbbuim1 Messages postés 940 Date d'inscription jeudi 20 février 2003 Statut Membre Dernière intervention 3 février 2011 9
26 oct. 2005 à 11:56
Non, mais dans ce cas, tu dois faire comme si yen avait pas et ne pas le prendre en compte dans tes requêtes.

TBBUIM
0
cs_helo2204 Messages postés 6 Date d'inscription mercredi 17 août 2005 Statut Membre Dernière intervention 2 mai 2006
26 oct. 2005 à 12:12
Autre problème .... je dois rentrer certains de ces N° manuellement. Pour ce faire je ne peux pas être en N° Auto. Si je me mets en Numérique par ex, après je ne peux pas la faire passer en n° auto.

J'ai donc essayé de mettre ce champs en Numérique et de rentrer comme "valeur par défaut" :

VraiFaux([AchatUnité]"Kg";DMax([CodeBalance],10_Produits, (1+(DMax[CodeBalance],10_Produits);0)))

Mais ça ne fonctionne pas ...

Merci pour ton aide
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
tbbuim1 Messages postés 940 Date d'inscription jeudi 20 février 2003 Statut Membre Dernière intervention 3 février 2011 9
26 oct. 2005 à 14:14
Je sais, c pourquoi je t'ai dis de créé une table temporaire contenant
un champ numéroauto. Car lorsque tu entreras toutes tes données dedans,
il numérotera automatiquement les éléments entrés.

Tu ne peux pas transformer un champ num en numéroauto!

Tu es obligé de passer par une table temporaire dans ton cas.

Ou alors abandonner l'idée de numéroauto et de gérer l'incrémentation toi même.

en récupérant le n° le plus grand par exemple et en mettant + 1

avec DMax par exemple
TBBUIM
0
Rejoignez-nous