OVH Cloud OVH Cloud

MAJ après Absence dans liste

18 réponses
Avatar
Sassa01
Bonjour,
J'ai téléchargé depuis le site de Raymond les éléments qui devraient me
permettre de procéder à des ajouts dans une liste modifiable.....mais je n'y
parviens pas même en piochant sur des fils précédents trouvés avec Google.
Pour la création de nouvelles vedettes pour un bd de mes disques, tout
fonctionne parfaitement (ouverture du formulaire de création, ajout de la
vedette,) mais la mise à jour ne se fait pas quand je reviens au formulaire
comportant la liste déroulante. Voici ce que j'ai mis dans la procédure
évènementielle "Après MAJ" de la liste déroulante :

Private Sub Modifiable17_AfterUpdate()
' Rechercher l'enregistrement correspondant au contrôle.
Dim rs As Object

Set rs = Me.Recordset.Clone
rs.FindFirst "[Id_Vedette] = " & Str(Nz(Me![Modifiable17], 0))
Me![Vedette01] = Me!Vedette01
Me![Prénom] = Me!Prénom
Me![Instrument] = Me!Instrument

If Not rs.EOF Then Me.Bookmark = rs.Bookmark
End Sub

Dans "Absence dans liste" j'ai mis ceci :
Private Sub Modifiable17_NotInList(NewData As String, Response As Integer)
If MsgBox("cette Vedette n'existe pas, voulez-vous la créer ?", vbYesNo,
"Pas dans la liste") = vbYes Then
Me.Vedette01.Undo
DoCmd.OpenForm "Fl_Saisie nouvelle Vedette", , , , acFormAdd,
acDialog, Me.Name
Me.Vedette01.Requery
Response = acDataErrContinue
Else
Response = acDataErrContinue
End If
End Sub

Quelqu'un peut-il m'aider SVP ? Merci

François

8 réponses

1 2
Avatar
Eric
Bonjour Raymond,

Je crois que je suis passé à coté du problème.
Je voyais ca comme ca:
Un formulaire de saisie des données relatives à ses cds dans lequel il y
avait une liste déroulante sur le champ Id_Vedette auquel sont associés les
champs Prenom_Vedette, Instrument_Vedette (ou qq chose du genre) plus les
autres champs du cd. Et je voyais ce formulaire en Entrée de données
Donc pour moi si la vedette etait absente de la liste, il n'etait pas
possible d'avoir des enregistrements de cds. (Et je ne voyais pas l'interêt
de la proc AfterUpdate)
Par contre si elle est dans la liste, la relation 1 a plusieurs permet de
récupérer automatiquement les infos associés à l'Id_Vedette.

Donc si je ne me trompe pas, son formulaire est un formulaire de
consultation/Modification qui à partir de sa liste déroulante visualise les
enregistrements. Si le nom saisi dans la liste n'existe pas, on crée
l'auteur et on bascule en entrée de données. C'est ca ?

Suis pas sur d'etre très clair et suis certainement dans les brumes du
Grand Nord (soupir...)

A+
Eric

PS: je vais aller voir ta proc sur ton site, car suis tres embrouillé
Avatar
Raymond [mvp]
La procédure est dans la base comptoir page:
http://access.seneque.free.fr/bases_exemples.htm

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


"Eric" a écrit dans le message de
news:
Bonjour Raymond,

Je crois que je suis passé à coté du problème.
Je voyais ca comme ca:
Un formulaire de saisie des données relatives à ses cds dans lequel il y
avait une liste déroulante sur le champ Id_Vedette auquel sont associés
les

champs Prenom_Vedette, Instrument_Vedette (ou qq chose du genre) plus les
autres champs du cd. Et je voyais ce formulaire en Entrée de données
Donc pour moi si la vedette etait absente de la liste, il n'etait pas
possible d'avoir des enregistrements de cds. (Et je ne voyais pas
l'interêt

de la proc AfterUpdate)
Par contre si elle est dans la liste, la relation 1 a plusieurs permet de
récupérer automatiquement les infos associés à l'Id_Vedette.

Donc si je ne me trompe pas, son formulaire est un formulaire de
consultation/Modification qui à partir de sa liste déroulante visualise
les

enregistrements. Si le nom saisi dans la liste n'existe pas, on crée
l'auteur et on bascule en entrée de données. C'est ca ?

Suis pas sur d'etre très clair et suis certainement dans les brumes du
Grand Nord (soupir...)

A+
Eric

PS: je vais aller voir ta proc sur ton site, car suis tres embrouillé







Avatar
Eric
Raymond

0 - Ok pour ta procédure, c'est ce que tu m'expliquais dans le post
précédent.

1 - J'ai remarqué que si je tape un nom dans la liste, à l'ouverture du
formulaire, et qu'il n'existe pas, je saisis bien le client mais la 1ere
commande lui est attribuée. C'est tout le problème des formulaires qui font
Consultation, Modification et Ajout avec possibilité de modifier le client.

2 - je comprends la raison de ta procédure After_Update sur la liste. C'est
par cette procédure que tu affectes les champs Destinataire,... de la table
des commandes.

J'ai une idée pour le point 1, je peux la formuler ?

Eric
Avatar
Sassa01
Rebonjour Eric,
Oui ! bien sûr. Mais la façon dont tu parles de la base l'as-tu eue
maintenant ?
François

"Eric" a écrit dans le message de
news:
Raymond

0 - Ok pour ta procédure, c'est ce que tu m'expliquais dans le post
précédent.

1 - J'ai remarqué que si je tape un nom dans la liste, à l'ouverture du
formulaire, et qu'il n'existe pas, je saisis bien le client mais la 1ere
commande lui est attribuée. C'est tout le problème des formulaires qui
font

Consultation, Modification et Ajout avec possibilité de modifier le
client.


2 - je comprends la raison de ta procédure After_Update sur la liste.
C'est

par cette procédure que tu affectes les champs Destinataire,... de la
table

des commandes.

J'ai une idée pour le point 1, je peux la formuler ?

Eric


Avatar
Eric
"Sassa01" écrivait news:c6t70e$o51$
reader4.wanadoo.fr:

Rebonjour Eric,
Oui ! bien sûr. Mais la façon dont tu parles de la base l'as-tu eue
maintenant ?
François

re,

Non François, je n'ai pas toujours reçu ta base. Tu l'as bien envoyé a
et en format ZIP ou RAR ?

Eric

Avatar
Raymond [mvp]
Le problème c'est que je pars de la base comptoir et qu'il ne faut pas que
je la modifie trop sinon le lecteur va être perdu par rapport à l'autre. le
but de cette saisie de commande , je pense, est de montrer toutes les
possibilités de saisie avec un formulaire simple. le but n'est pas de faire
une appli parfaite qui fonctionne dans les règles de l'art mais une appli de
démo.

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


"Eric" a écrit dans le message de
news:
Raymond

0 - Ok pour ta procédure, c'est ce que tu m'expliquais dans le post
précédent.

1 - J'ai remarqué que si je tape un nom dans la liste, à l'ouverture du
formulaire, et qu'il n'existe pas, je saisis bien le client mais la 1ere
commande lui est attribuée. C'est tout le problème des formulaires qui
font

Consultation, Modification et Ajout avec possibilité de modifier le
client.


2 - je comprends la raison de ta procédure After_Update sur la liste.
C'est

par cette procédure que tu affectes les champs Destinataire,... de la
table

des commandes.

J'ai une idée pour le point 1, je peux la formuler ?

Eric


Avatar
Sassa01
Re,
Bon j'ai peut-être fait une mauvaise manoeuvre : je ne comprends pas. Je
tela faire parvenir à nouveau.
Je revenais vers toi et Raymond, parce que je voulais vous dire que j'avais
obtenu un résultat avec un exemple piqué dans le grenier d'Hervé Inizan (je
crois..). Dans ce cas l'élément manquant de la liste déroulante est créé
dans le formulaire de consultation-Modification (et non dans le formulaire
de création de la Vedette). Donc dans la liste déroulante : élément
manquant...Voulez-vous créer ? OK et tu saisie le nom de la vedette dans la
liste déroulante, puis dans le champ nom, puis Prénom, puis le reste...Il se
trouve parfaitement créé et utilisable normalement dans la liste du
formulaire. Par contre il est créé 2 fois dans la table (et la requête
Vedette correspondante) : une fois par la liste et une fois par les champs.
C'est pour cette raison que je préfère passer par l'ouverture du formulaire
de création. J'espère que j'ai été suffisamment clair (?). A suivre..
François
"Eric" a écrit dans le message de
news:
"Sassa01" écrivait news:c6t70e$o51$
reader4.wanadoo.fr:

Rebonjour Eric,
Oui ! bien sûr. Mais la façon dont tu parles de la base l'as-tu eue
maintenant ?
François

re,

Non François, je n'ai pas toujours reçu ta base. Tu l'as bien envoyé a
et en format ZIP ou RAR ?

Eric



Avatar
Eric
Suis absent cet après-midi, donc je verrai ca ce soir. Si prob envoies une
copie à l'adresse suivante : toujours en RAR ou ZIP.

A+
Eric
1 2