2010-05-01 2 views
5

Lorsque je connecte Access 2007 à SQL Server (par jeu d'enregistrements ADO ou par table liée), je n'ai plus de listes de cases à cocher (des valeurs de filtre disponibles) dans la fiche filtres de colonne.MS Access Database Case à cocher Liste des filtres manquants sur le backend SQL Server

Cette fonctionnalité est-elle disponible uniquement avec MDB/ACCDB et/ou DAO?

+0

La seule liste de cases à cocher dans l'affichage de feuille de données que je connaisse est le champ à valeurs multiples disponible au format ACCDB. Il n'est pas pris en charge dans SQL Server autant que je sache, et ne devrait pas être utilisé par quiconque n'en a pas besoin pour la compatibilité Sharepoint. –

+0

Cela n'a rien à voir avec les champs à plusieurs valeurs. C'est la liste de cases à cocher que vous voyez qui montre toutes les valeurs disponibles dans une colonne lorsque vous FILTRAGEZ une feuille de données. Dans une vue de feuille de données, à côté de chaque en-tête de colonne, il y a une flèche. Si vous cliquez dessus, vous obtenez un choix de filtres ainsi que toutes les valeurs disponibles en supposant qu'il n'y a pas trop de valeurs différentes (par exemple, un champ de localisation mais pas un champ de montant en dollars). Caractéristique très importante et précieuse. – pghcpa

Répondre

7

Je pense que la case à cocher dans l'affichage des fiches techniques des tables Access natives est régie par la propriété "Display Control" dans la conception de la table. Je ne me souviens pas de ce qui est disponible lorsque la table est dans SQL Server. Si vous fournissez un formulaire dans "Affichage feuille de données", vous devez être en mesure de lier un contrôle case à cocher à la colonne SQL Server.

Modifier: Je crois que j'ai mal compris votre question hier. Si vous cliquez sur le bouton Office, sélectionnez Base de données actuelle, puis cochez la case "Champs ODBC" sous "Options de recherche de filtre" ... est-ce que cela fait ce que vous voulez?

+0

Vous l'avez cloué! Merci. Personne d'autre ne connaissait la réponse à cela sur d'autres forums. – pghcpa

+3

Pour Access 2010, accédez à l'onglet Fichier> Options> Base de données actuelle puis faites défiler jusqu'à "Options de recherche de filtre ..." –

+0

OUI! J'ai coché la case ODBC Fields et j'ai résolu ce problème! MERCI BEAUCOUP! – sergiol

1

Je sais que nous rompons le protocole en n'ouvrant pas une nouvelle question, mais je vais y répondre quand même pour que ce fil soit complet. C'est une réponse plus complète que les précédentes.

Je pense que j'ai ce sujet cloué maintenant. Les filtres de recherche ne fonctionneront pas avec une source d'enregistrements qui n'est pas un objet Access et ils ne fonctionnent pas directement dans les tableurs liés.

Vous devez créer une requête de la table liée, par exemple: Sélectionnez * dans tblOrders et utilisez cette requête comme source d'enregistrements pour obtenir les filtres de recherche. Cependant, j'ai également trouvé une approche plus flexible. Je crée des requêtes passthrough à SQL/Server et l'utilise comme ma source d'enregistrements. Puis, dans le code, je mis le SQL des requêtes intercommunication comme ceci:

Currentdb.QueryDefs("qpstOrders").SQL="Select * from Orders where OrderID =" & Me.OrderID 

Dans le cas actuel de mon sous-formulaire, je change la requête à la volée pour passer l'enregistrement approprié - ou il peut juste être une requête plus générique. Les filtres de recherche fonctionnent très bien de cette manière et l'interaction avec SQL/Server est très rapide.

+0

Personne ne verra jamais cela. C'est une excellente information, mais comme elle n'a pas été posée comme une vraie question, personne ne la trouvera jamais. –

Questions connexes