Non y apas de solution c'est beaucoup trop grand.
Pour ta question subsidaire c'est au niveau de ce qu'on te renvoit qui doit être morcellé car si tu le fait dans Infopath ca ne va qu'un petit peu amélioré car il faudra bien que tu attende le retour de ta bdd a un moment ou a un autre (mode asynchrone ou synchrone).
Infopath 2007, Langage: C#2.0 (Modèle Objet 2003)
merci de lire ceci