OVH Cloud OVH Cloud

Activation du numeroauto

6 réponses
Avatar
jean-claude
Bonjour à tous.
Un formulaire avec un numero auto qui sert de père pour un sous-formulaire
qui a un numero en tant que fils.

Mais, lorsque s'ouvre les deux, je n'ai aucun information à entrer, la date
est date() et je dois passer directement dans le sous-formulaire pour entrer
des données.
Malheureusement le numeroauto n'est pas activé car je n'ai rien saisi dans
le formulaire principal et c'est alors la panique dans le sous-formulaire.

Comment activer le numero auto avant d'entrer dans le sous-formulaire et
ainsi d'avoir la liaison?

Merci d'avance

6 réponses

Avatar
Raymond [mvp]
Bonjour.

si on réfléchit sur le numéroauto.
un numéroauto ne peut être utilisé qu'en tant que clé primaire, sinon il n'a
aucune utilité. un numéroauto, meme en incrément est un numéro aléatoire car
il peut y avoir des trous. un numéro auto ne peut pas être un champ père
vers un champ fils qui est lui-même clé primaire dans une autre table, ce
qui donnerait une relation 1:1 avec deux numéroauto, impossible. Il faut
revoir tes champs, tes clés et tes relations.

--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access.vba.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"jean-claude" a écrit dans le message de news:
417b5319$0$28198$
Bonjour à tous.
Un formulaire avec un numero auto qui sert de père pour un sous-formulaire
qui a un numero en tant que fils.

Mais, lorsque s'ouvre les deux, je n'ai aucun information à entrer, la
date est date() et je dois passer directement dans le sous-formulaire pour
entrer des données.
Malheureusement le numeroauto n'est pas activé car je n'ai rien saisi dans
le formulaire principal et c'est alors la panique dans le sous-formulaire.

Comment activer le numero auto avant d'entrer dans le sous-formulaire et
ainsi d'avoir la liaison?

Merci d'avance





Avatar
jean-claude
Merci Raymond, mais j'ai mal posé ma question.

Comment puis-je sur un nouvel enregistrement aller directement dans mon
sous-formulaire sans avoir à saisir un champ dans le formulaire pour activer
ma clé numéroauto.

Actuellement, si je vais dans mon sous-formulaire, ma clé primaire reste sur
NuméroAuto....donc...pas de liaison tout ce que je saisi ne sera pas lié
(champs père et fils). C'est la première fois que j'ai ce problème car avant
j'avais toujours quelques champs à saisir dans le formulaire avant d'aller
dans le sous-formulaire
Ai-je mieux poser ma question?

Sinon j'essaie à nouveau :-)

amitiés


"Raymond [mvp]" a écrit dans le message de
news:
Bonjour.

si on réfléchit sur le numéroauto.
un numéroauto ne peut être utilisé qu'en tant que clé primaire, sinon il
n'a aucune utilité. un numéroauto, meme en incrément est un numéro
aléatoire car il peut y avoir des trous. un numéro auto ne peut pas être
un champ père vers un champ fils qui est lui-même clé primaire dans une
autre table, ce qui donnerait une relation 1:1 avec deux numéroauto,
impossible. Il faut revoir tes champs, tes clés et tes relations.

--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access.vba.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"jean-claude" a écrit dans le message de news:
417b5319$0$28198$
Bonjour à tous.
Un formulaire avec un numero auto qui sert de père pour un
sous-formulaire qui a un numero en tant que fils.

Mais, lorsque s'ouvre les deux, je n'ai aucun information à entrer, la
date est date() et je dois passer directement dans le sous-formulaire
pour entrer des données.
Malheureusement le numeroauto n'est pas activé car je n'ai rien saisi
dans le formulaire principal et c'est alors la panique dans le
sous-formulaire.

Comment activer le numero auto avant d'entrer dans le sous-formulaire et
ainsi d'avoir la liaison?

Merci d'avance









Avatar
Raymond [mvp]
ça va mieux.

tu ne peux saisir un enregistrement en sous-formulaire que si un
enregistrement existe dans le formulaire principal. tu ne peux pas créer un
enregistrement "fils" sans avoir le "père". le champ fils sera
automatiquement créé pas access lors de la saisie dans le sous-formulaire.

--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access.vba.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"jean-claude" a écrit dans le message de news:
417b5e01$0$18250$
Merci Raymond, mais j'ai mal posé ma question.

Comment puis-je sur un nouvel enregistrement aller directement dans mon
sous-formulaire sans avoir à saisir un champ dans le formulaire pour
activer ma clé numéroauto.

Actuellement, si je vais dans mon sous-formulaire, ma clé primaire reste
sur NuméroAuto....donc...pas de liaison tout ce que je saisi ne sera pas
lié (champs père et fils). C'est la première fois que j'ai ce problème car
avant j'avais toujours quelques champs à saisir dans le formulaire avant
d'aller dans le sous-formulaire
Ai-je mieux poser ma question?

Sinon j'essaie à nouveau :-)

amitiés


Avatar
jean-claude
Merci,

Donc je suis obligé de créer un champ bison dans le formulaire pour
commencer l'enregistrement.

Merci encore et bonne journée

"Raymond [mvp]" a écrit dans le message de
news:
ça va mieux.

tu ne peux saisir un enregistrement en sous-formulaire que si un
enregistrement existe dans le formulaire principal. tu ne peux pas créer
un enregistrement "fils" sans avoir le "père". le champ fils sera
automatiquement créé pas access lors de la saisie dans le sous-formulaire.

--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access.vba.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"jean-claude" a écrit dans le message de news:
417b5e01$0$18250$
Merci Raymond, mais j'ai mal posé ma question.

Comment puis-je sur un nouvel enregistrement aller directement dans mon
sous-formulaire sans avoir à saisir un champ dans le formulaire pour
activer ma clé numéroauto.

Actuellement, si je vais dans mon sous-formulaire, ma clé primaire reste
sur NuméroAuto....donc...pas de liaison tout ce que je saisi ne sera pas
lié (champs père et fils). C'est la première fois que j'ai ce problème
car avant j'avais toujours quelques champs à saisir dans le formulaire
avant d'aller dans le sous-formulaire
Ai-je mieux poser ma question?

Sinon j'essaie à nouveau :-)

amitiés






Avatar
3stone
Salut,

"jean-claude"
Donc je suis obligé de créer un champ bison dans le formulaire pour
commencer l'enregistrement.



Non, tu peux "forcer" la génération du numéroauto...

' appel d'un nouvel enregistrement
DoCmd.GoToRecord Record:¬NewRec

' ou
' tester si nouvel enregistrement dans l'événement "Sur activation"
If Me.NewRecord Then

'ensuite
Me.UnChamp.SetFocus
' forcer la génération du numéro auto-incrémenté
Me.Dirty = True


et sans "réellement" saisir, tu obtiens ton numauto!


--
A+
Pierre (3stone) Access MVP
~~~~~~~~~~~~~~~~~~~~~~~
http://users.skynet.be/mpfa
http://users.skynet.be/accesshome

Avatar
jean-claude
Merci Pierre,

Cest ce que j'ai réussi à faire.

Je te remercie encore et te souhaite une bonne journée

Entendu: sur 20 amis, 19 disent du mal de moi. Le vingtième dit du bien sur
moi, mais mal

"3stone" a écrit dans le message de news:

Salut,

"jean-claude"
Donc je suis obligé de créer un champ bison dans le formulaire pour
commencer l'enregistrement.



Non, tu peux "forcer" la génération du numéroauto...

' appel d'un nouvel enregistrement
DoCmd.GoToRecord Record:¬NewRec

' ou
' tester si nouvel enregistrement dans l'événement "Sur activation"
If Me.NewRecord Then

'ensuite
Me.UnChamp.SetFocus
' forcer la génération du numéro auto-incrémenté
Me.Dirty = True


et sans "réellement" saisir, tu obtiens ton numauto!


--
A+
Pierre (3stone) Access MVP
~~~~~~~~~~~~~~~~~~~~~~~
http://users.skynet.be/mpfa
http://users.skynet.be/accesshome