Bonjour à tous,
J'ai conçus un formulaire infopath qui recupère les valeurs des differents champs de plusieurs tables SQL serveur 2005.
Je passe actuellement par un webservice qui m'execute des procedures stockées sur le serveur SQL pour me renvoyer ces valeurs dans infopath.
Sharepoint et le formulaire sont hebergés sur un autre serveur, le serveur Web.
Tout ceci fonctionne très 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 stockée, ce que j'ai fais et la difference se fait sentir
Ma recherche est pratiquement instantannée par rapport au Select qui etait utilisé avant.
Tout ca pour vous demander si en faisant appel aux procedures stockées directement dans infopath, cela accelererai-t-il la recherche ?
Si oui comment faire appel à une procedure stockée 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...)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 var nclient = XDocument.DOM.selectSingleNode("/dfs:myFields/my:nclient").text; //Set the Command for the Query Adapter of the Data Source. Incorporate the //parameter values that you want to use. XDocument.QueryAdapter.Command = 'execute "dbo"."GetClient" ' + nclient; //Query the Data Source. XDocument.Query();
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
Partager