OVH Cloud OVH Cloud

Access-MSDE Pb urgent!

3 réponses
Avatar
Alex
Bonjour,
J'aimerai Filtrer la source d'un sous-Formulaire à partir d'une liste
déroulante dans un formulaire principal.
Sous le moteur Jet pas de problème :
Source du sous-formulaire : SELECT champs, FROM Table WHERE
Table.Champs=Formulaires!NomForm!NomControl;
Mais sous MSDE ? il faut passer par une procédure stockée? mais alors
comment paramétrer la procédure à l'aide de la liste déroulante?....

Merci pour votre aide

3 réponses

Avatar
Benoit
Bonjour,

Une piste : sur l'événement changement, il faut redéfinir le code de la
requête soit en
mettant la clause Where au niveau de la requête soit en mettant un paramètre
à une procédure stockée :
CurrentDb.QueryDefs("nom_requete").SQL = "SELECT ... WHERE table.col = ' " &
Formulaires!NomForm!NomControl & "' "

CurrentDb.QueryDefs("nom_requete").SQL = "Execute nom_proc '" & paramètre
&"'"

Par contre si sous formulaire, je crois qu'il est nécessaire d'utiliser un
recordset car ACCESS n'accepte
pas forcément comme source une requête SQL directe.

--
Benoit

"Alex" a écrit dans le message de news:
%
Bonjour,
J'aimerai Filtrer la source d'un sous-Formulaire à partir d'une liste
déroulante dans un formulaire principal.
Sous le moteur Jet pas de problème :
Source du sous-formulaire : SELECT champs, FROM Table WHERE
Table.Champs=Formulaires!NomForm!NomControl;
Mais sous MSDE ? il faut passer par une procédure stockée? mais alors
comment paramétrer la procédure à l'aide de la liste déroulante?....

Merci pour votre aide



Avatar
Alex
Merci, mais avec une base sqlServeur il faut utilser le modèle d'objet ADO

"Benoit" a écrit dans le message de news:

Bonjour,

Une piste : sur l'événement changement, il faut redéfinir le code de la
requête soit en
mettant la clause Where au niveau de la requête soit en mettant un
paramètre
à une procédure stockée :
CurrentDb.QueryDefs("nom_requete").SQL = "SELECT ... WHERE table.col = ' "
& Formulaires!NomForm!NomControl & "' "

CurrentDb.QueryDefs("nom_requete").SQL = "Execute nom_proc '" & paramètre
&"'"

Par contre si sous formulaire, je crois qu'il est nécessaire d'utiliser un
recordset car ACCESS n'accepte
pas forcément comme source une requête SQL directe.

--
Benoit

"Alex" a écrit dans le message de news:
%
Bonjour,
J'aimerai Filtrer la source d'un sous-Formulaire à partir d'une liste
déroulante dans un formulaire principal.
Sous le moteur Jet pas de problème :
Source du sous-formulaire : SELECT champs, FROM Table WHERE
Table.Champs=Formulaires!NomForm!NomControl;
Mais sous MSDE ? il faut passer par une procédure stockée? mais alors
comment paramétrer la procédure à l'aide de la liste déroulante?....

Merci pour votre aide







Avatar
Alex
J'ai résolu mon problème
On peut filtrer un formulaire basé sur une procédure stockée grace à la
propriété Input parameters.


"Benoit" a écrit dans le message de news:

Bonjour,

Une piste : sur l'événement changement, il faut redéfinir le code de la
requête soit en
mettant la clause Where au niveau de la requête soit en mettant un
paramètre
à une procédure stockée :
CurrentDb.QueryDefs("nom_requete").SQL = "SELECT ... WHERE table.col = ' "
& Formulaires!NomForm!NomControl & "' "

CurrentDb.QueryDefs("nom_requete").SQL = "Execute nom_proc '" & paramètre
&"'"

Par contre si sous formulaire, je crois qu'il est nécessaire d'utiliser un
recordset car ACCESS n'accepte
pas forcément comme source une requête SQL directe.

--
Benoit

"Alex" a écrit dans le message de news:
%
Bonjour,
J'aimerai Filtrer la source d'un sous-Formulaire à partir d'une liste
déroulante dans un formulaire principal.
Sous le moteur Jet pas de problème :
Source du sous-formulaire : SELECT champs, FROM Table WHERE
Table.Champs=Formulaires!NomForm!NomControl;
Mais sous MSDE ? il faut passer par une procédure stockée? mais alors
comment paramétrer la procédure à l'aide de la liste déroulante?....

Merci pour votre aide