Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Arguments lors de l'ouverture d'un formulaire...

1 réponse
Avatar
François
Bonjour à tous,

Voilà la situation :
Un formulaire contient la liste des commandes d'un client (dans un
sous-formulaire en mode continu).
Quand on clique sur une commande, ou qu'on la modifie, un formulaire
"Détails commande" s'ouvre avec... le détail des commandes.

Je souhaite que lorsqu'on ajoute une nouvelle commande dans le
sous-formulaire, le même formulaire "Détails commande" s'ouvre avec les
champs clés (n°client, n°commande, date commande) déjà remplis dans le
formulaire.

Quelle est la méthode la plus "élégante" pour faire cela ?

- conditionwhere de la méthode OpenForm ? Bien pour afficher l'existant,
mais dans le cas d'une nouvelle commande ?

- parser openargs (méthode OpenForm). Pas trop mal pour une nouvelle
commande mais moins propre pour afficher l'existant (le détail des
commandes a une clé triple, pas simple avec FindRecord...)

- ??? la troisième voie. Mais aujourd'hui, je sèche dessus. Quelqu'un
aurait-il une/des pistes ?

D'avance, merci

François.

1 réponse

Avatar
?Lo»Paris?
François wrote:
Bonjour à tous,

Voilà la situation :
Un formulaire contient la liste des commandes d'un client (dans un
sous-formulaire en mode continu).
Quand on clique sur une commande, ou qu'on la modifie, un formulaire
"Détails commande" s'ouvre avec... le détail des commandes.

Je souhaite que lorsqu'on ajoute une nouvelle commande dans le
sous-formulaire, le même formulaire "Détails commande" s'ouvre avec
les champs clés (n°client, n°commande, date commande) déjà remplis
dans le formulaire.

Quelle est la méthode la plus "élégante" pour faire cela ?

- conditionwhere de la méthode OpenForm ? Bien pour afficher
l'existant, mais dans le cas d'une nouvelle commande ?

- parser openargs (méthode OpenForm). Pas trop mal pour une nouvelle
commande mais moins propre pour afficher l'existant (le détail des
commandes a une clé triple, pas simple avec FindRecord...)

- ??? la troisième voie. Mais aujourd'hui, je sèche dessus. Quelqu'un
aurait-il une/des pistes ?

D'avance, merci

François.


Salut François,

Avec OpenArg ça le fait :

Private Sub Form_Load()
If (Me.OpenArgs = "NOUVEAU") Then
Me!Date = form_MonForm!Date
'[.....]
End If
End Sub

Évidement c'est champs devront être verrouillées

Salutations

--
°Laurent°