# Dotnet > Gnral Dotnet > Dveloppement Office System > InfoPath >  Infopath, requete SQL lente

## Haziel

Bonjour  tous,
J'ai conus un formulaire infopath qui recupre les valeurs des differents champs de plusieurs tables SQL serveur 2005.

Je passe actuellement par un webservice qui m'execute des procedures stockes sur le serveur SQL pour me renvoyer ces valeurs dans infopath.

Sharepoint et le formulaire sont hebergs sur un autre serveur, le serveur Web.

Tout ceci fonctionne trs bien mais c'est assez lent.

Je travail sur des tables avec plusieurs millions de lignes.

J'ai egalement un BDC dans sharepoint qui me fait la meme requete pour trouver un client par exemple.
C'etait egalement assez lent.

Dans le BDC, je peux directement appeler une procedure stocke, ce que j'ai fais et la difference se fait sentir
Ma recherche est pratiquement instantanne par rapport au Select qui etait utilis avant.

Tout ca pour vous demander si en faisant appel aux procedures stockes directement dans infopath, cela accelererai-t-il la recherche ?

Si oui comment faire appel  une procedure stocke dans infopath ?

J'ai deja un debut de code trouv sur internet mais je code en C# et l'exemple est en jscript.



```

```

Pourriez vous m'indiquer les assembly  ajouter (using System.Xml.linq, etc...)
Car pour Xdocument je n'ai pas acces  la fonction QueryAdapter.

De plus ce code est sur un evenement OnClick.
Est-il possible de l'executer autrement ? je souhaiterai l'executer lorsqu un champs texte ou un menu deroulant est modifier.

Je souhaite surtout accelerer l'utilisation de mon formulaire.

D'avance Merci  vous

----------


## billout rm

Bonjour,

Tu utilise quelle version de Visual Studio et quelle version d'infopath?
Si tu es en 2003, il faut que tu travailles sur le thisXDocument.QueryAdapter alors...


Pour ne pas mettre le code uniquement sur le click:
 - Clic droit sur ton champ,
 - Va dans validation de donnes,
 - Choisi un vnement et clique sur modifier.

Tu auras ainsi accs aux vnements du champ tel que OnBeforeChange, OnAfterChange...

Bonne journe.

----------


## Haziel

Je suis sur Infopath 2007 et VS 2008 (sql server 2005 pour info)

J'essaye actuellement de manipuler les donnes que je reois par une seul requte SQL qui me rcupre tout puis les filtrer par les DataSet plutt que de faire Plusieurs requtes SQL.

Je ne parviens pas  le faire pour le moment.
Je cre un dataview qui me filtre les donnes mais je ne comprends pas comment l'afficher...

Mes filtres se basent sur un nclient, qui me rcupre les infos client, puis ces factures et enfin les produits par factures.

Les infos client ainsi que les factures c'est ok par infopath.
Je veux maintenant choisir une facture (dans un menu deroulant) et me remplir un autre menu droulant avec les produits de la factures.

J'y parviens bien par procdures stockes via web service mais pour optimiser la rapidit du formulaire il serait intressant de pouvoir filtrer des donnes que j'ai deja dans les donnes du formulaire.

----------

