OVH Cloud OVH Cloud

pbm ajout automatique d'enregistrement dasn formulaire

7 réponses
Avatar
kimai
Bonjour,

Je me permets de reposer une question qui me bloque=20
depuis 3 jours (veuillez m'excuser si cela vous semble=20
inconvenant)

Voila ma base de donn=E9es :
T_foret(ID_FORET,nom_foret)
T_peuplement(ID_PEU,nom_peu,id_foret)
T_intervention(ID_INTERVENTION,date_int) et=20
T_lien_intervention_peuplement(ID_INTERVENTION,ID_PEU)
J'ai fais des relations entre chaque cl=E9 (cl=E9 =3D mot en=20
majuscule)

Ainsi, une foret contient plusieurs peuplements, on peut=20
effectuer plusieurs interventions sur un m=EAme peuplement,=20
et une intervention peut concerner plusieurs peuplements.

J'ai un formulaire g=E9n=E9ral bas=E9 sur T_foret, avec deux=20
onglets:
-onglet peuplement qui me permet de d=E9crire les=20
peuplements de la foret (sous_formulaire tableau)
-onglet intervention dans lequel j'aimerais d=E9crire=20
toutes les interventions r=E9alis=E9es sur la foret de cete=20
mani=E8re : j'aimerais avoir dans ce sous-
formulaire "SF_intervention" un tableau des peuplements=20
pour la foret en cours (donc rentr=E9s dans l'onglet=20
pr=E9c=E9dent)dans lequel je pourrais choisir (case =E0 cocher=20
ou bouton) les peuplements de CETTE foret concern=E9s par=20
l'intervention.

J'ai essay=E9 de baser "SF_intervention" sur une requ=EAte
R(id_intervention,date_int, T_peuplement.id_foret) avec=20
id_foret en champ de liaison, et d'y ins=E9rer un=20
sous_formulaire bas=E9 sur T_lien_intervention_peuplement,=20
mais je rencontre ce pbm:

Lorsque j'ajoute une nouvelle intervention, Access me=20
cr=E9e automatiquement un nouveau peuplement dans=20
T_peuplement, alors que je veux choisir le peuplement=20
parmi ceux d=E9crits pour cette foret.

J'esp=E8re que vous pourrez m'aider,
Merci d'avance
Mike

7 réponses

Avatar
joyeux atchoum
S'lt

Desolé je n'ai pas reussi à tout suivre (me suis un peu paumé dans la
description :=) )

Mais j'echangerai "interventions" et "peuplements"
Un form lié a T_foret
Un sousform lié à T_peuplement (relation pere/fils : id_foret)
Un sousousform lié à T_intervention (relation pere/fils : id_Peu)

Il n'y a pas de lien direct entre les forets et les interventions d'où
peut etre la raison de cette creation d'enregistrement

ja;)
qui espere avoir suivi le pb
Avatar
kimai
Waou, je suis épaté par ton courage !!! J'ai relu mon
message apres l'avoir envoyé...il est assez imbitable....

Bon, malheureusement j'ai essayé toutes les solutions que
tu t'es cassé la tête à me proposer, sans succeès. Par
exemple, j’ai essayé toutes les combinaisons des deux
paramètres dataentry et allow additions (dataentry
= "entrée données" ;-D), mais soit mon sous-formulaire
basé sur la table de lien est grisé donc innaccessible,
soit il ne l’est pas mais mon pbm persiste...

J'ai vérifié mes relations, ce sont juste les liens
entre les clés primaires et étrangère de mes trois
tables : pas d'intégrité référentielle (pour l'instant
dans la phase de prog)

Je crois que je vais supprimer les indésirables, même si
je n'aime pas cette solution de correction (c'est pas très
propre !)

Es ce que cela t'aiderai que je t'envoie ma base ???
Si oui, je te la mettrais sur mon FTP
Voila
Merci encore et
A +


-----Message d'origine-----
Dans l'article <00cd01c35062$f776c900$,
kimai vous

avez dit...

Merci d'avoir répondu !! Je précise mon problème :

Si j'inverse comme tu me propose un formulaire basé
sur "T_peuplemet" (id_foret en lien) qui contient un
sous_formulaire basé sur "Intervention" (cad sur 1
requête


qui prend la clé double
de "T_lien_intervention_peuplement", plus les champs
de "T_intervention" pour permettre le lien pere-fils
avec


id_peuplement), et bien alors il m'est impossible de
rentrer plusieurs peuplements pour une seule et même
intervention (comme mon mpd le permettait avec la
table "T_lien_intervention_peuplement"). Et c'est
vraiment


ce que j'aimerais faire


Oki, ben je vais pas trop m'avancer mais ton modéle est
peut etre pas

optimum pour tes besoins.

En plus
détaillé, lorsque je clique sur le sous-
formulaire "T_lien..." (qui contient deux champs
id_intervention et id_peuplement), access remplit
automatiquement id_intervention grâce au lien pere-
fils,


mais remplit aussi id_peuplement avec le numéro auto.


ben si j'ai bien suivi ce id_peuplement est la clef
etrangere qui fait

reference à T_peuplement ?
à ce moment tu peux verifier tes tables :
valeur par defaut : null pour les clefs etrangeres
verifier le comportement de tes relations

ou bien avoir bien mis ton (sous)form
ajout donnée = faux
dataentry = faux (trou de mémoire pour le nom fr)

Puis, quand je sélectionne le peuplement grâce à ma
liste


déroulante, j'arrive à remplacer ce nouveau numéro par
celui du peuplement, sauf que pour autant le peuplement
qui a été créé contre mon gré n'est pas suppprimé.


A priori si tu parametres bien tes tables,form, tu ne
devrais pas à

avoir à faire de suppression

Peut-être pourrais-je supprimer automatiquement ce
nouvel enregistrement ? Comment faire en VBA svp ?


si malgré tout tu dois passer par une suppression
tu dois mettre à jour ton form : me.requery
et utiliser la commande docmd.runsql SQL
avec SQL qui est ta requete de suppression

(mais je pense que tu peux t'en dispenser) quand meme
faudrait avoir

l'avis des autres

Merci beaucoup pour l'aide, en espérant que ce LONG
message ait été plus clair que le premier...
sisi ;=)


ja;)
qui a lu jusqu'au bout le post et essayé de repondre pas
trop betement

(c'est ma saison)
.




Avatar
kimai \(toujours :-D\)
SALUT !!!!!

Je craque !!!!!!!

Je vais t'envoyer ma base, si tu es toujours d'accord.

Les onglets qui nous intéressessnt :
-l'onglet interventions
-l'onglet peuplement

J'ai deux problèmes (Dans l'onglet 'interventions')
-celui dont on a moultement parlé hier, je ne l'ai pas
résolu avec 1 supression : je lance une requête
suppression a chaque fois qu'on entre dans le sous-
formulaire (tu verras, ca marche, mais c'est moche : la
liste déroulante "saute", se ractualise, puis on peut
recliquer dessus...)

-et un autre : dans ce fameux sous_formulaire
intervention, lorsque je rentre plusieurs peuplements (il
faut cliquer sur le deuxième peupl puis réutiliser la
liste déroulante), que je change de foret (ou que je ferme
et que je réouvre mon form), l'intervention qui est
concernée est répétée autant de fois qu'il y a de peupl
pour cette intervention !!!!!!

AU SECOURS
(c'est dur d'être stagiare sans pro sous la main : vive
les forums !!!)

Mon ftp ou je mets la base:
ftp://micha228:/
(si ca marche pas, dis le moi, et je t'enverrai un mail)
Merci d'avance


-----Message d'origine-----
S'lt

Waou, je suis épaté par ton courage !!! J'ai relu mon
message apres l'avoir envoyé...il est assez
imbitable....



;=)

Je crois que je vais supprimer les indésirables, même
si


je n'aime pas cette solution de correction (c'est pas
très


propre !)


ça s'ameliore toujours par la suite :)

Es ce que cela t'aiderai que je t'envoie ma base ???
Si oui, je te la mettrais sur mon FTP


Si tu veux mais je ne suis pas un pro, alors il bien
possible que je

n'arrive pas à te proposer quelquechose de tres
interressant


ja;)
qui espere que tu trouvera une solution plus propre par
la suite

.




Avatar
joyeux atchoum
S'lt

Je craque !!!!!!!
Je vais t'envoyer ma base, si tu es toujours d'accord.


Je regarde mais je ne te garanti rien

Les onglets qui nous intéressessnt :
-l'onglet interventions
-l'onglet peuplement

J'ai deux problèmes (Dans l'onglet 'interventions')
-celui dont on a moultement parlé hier. je lance une requête
suppression a chaque fois qu'on entre dans le sous-
formulaire (tu verras, ca marche, mais c'est moche


tu peux ameliorer un peu si tu utilise la commande echo
docmd.echo false '//Gele mise à jour ecran
'//tes commandes de supp
docmd.echo true '// degele ecran

(c'est dur d'être stagiare sans pro sous la main : vive
les forums !!!)


suis d'accord heureusement qu'il y a les forums et les pro avec
autrement j'aurais ete bien mal barré il y a peine 4 mois

Mon ftp ou je mets la base:
ftp://micha228:/
(si ca marche pas, dis le moi, et je t'enverrai un mail)


ça marche
je vais regarder ça

ja;)
qui vient de finir son stage il y à la fin du mois dernier ;)

Avatar
joyeux atchoum
Sl't

Merci !!!

On fonctionne par mail plutot que par le forum pour ne pas
encombrer le forum ??


oki
bon un mail :

J'essaye de regarder maintenant autrement demain matin
je te tiens au courant

ja;)
qui est en pleine mise à jour de données

Avatar
joyeux atchoum
S'lt

je viens de regarder ta base
- Pour le premier point, c'est bien ce que je pensais une erreur de
definition de table

dans la table de jointure A_intervention_peuplement
tu as comme valeur par defaut 0
d'où la creation d'un enregistrement nouveau (vu que autoincrement
commence à 1)

donc si tu mets tes valeurs par defaut à null tu n'auras plus ce pb de
creation, ta requete de suppresion devient inutile

- Pour le deuxiement point
j'ai pas vraiment compris ton pb
j'ai rajouté des info à partir de la liste de choix
navigué entre les forets
le sous form semble se mettre à jour correctement

Au passage (en rapport au premier point), je te suggere de mettre à
null les valeurs par defaut dans tes tables de jointure
cela peux eviter des surprises
je ne sais pas ce qu'en diraient les pro mais je ne pense pas dire trop
de betise avec ce conseil ;)

voili
ja;)
qui remercie à sont tour tout les MVP ;=)
Avatar
joyeux atchoum
S'lt

| Et tous les non-MVP qui répondent et donnent leurs conseils,
| même si peut-être, de façon moins régulière.
| ;-)

atchaaaaâahhh


à tes souhaits, meme si le rbume des foins c'est fini ;=)

oups pardon, probablement une lecture allergogène


;)

ja;)
qui n'avait strictement rien à faire si ce n'est glander et mettre à
jour manuellement prés de 200 enregistrements divers et variés