ASP.NET, SQL Server et XML
Remplir des formulaires HTML avec ASP.NET, SQL Server et des champs XML.
Nous avons développé une application ASP.NET dont le but est de remplir des tables contenant des champs de type XML sous SQL Server.
Utiliser des champs XML est très utile quand vous devez stocker des dossiers en base de données et que les champs changent fréquemment ou quand les dossiers sont de types différents, non homogènes, et que vous ne souhaitez pas modifier trop souvent vos tables. Vous pouvez enregistrer sous une forme relationnelle les données supposées ne pas trop changer et ajouter un ou plusieurs champs XML pour stocker les données variables.
La difficulté est alors de pouvoir développer simplement et rapidement des formulaires permettant de stocker et d'afficher les données XML sans avoir à trop se soucier de la complexité du format XML. C'est le but que nous souhaitions atteindre.
Nous avions au préalable développé une application pour une fondation médicale (pour des demandes d'aides ou de subventions effectuées par des chercheurs) qui n'utilisait pas le format XML mais utilisait php et des tables relationnelles stockée dans Postgresql (cette application est utilisée depuis quelques années et donne entière satisfaction, ayant permis de gérer plus de 6000 dossiers durant cette période). Nous devions souvent modifier les structures des tables (la plupart du temps en ajoutant des champs ou en changeant la destination de champs existants) et le besoin d'un système plus souple se fit alors sentir. Nous avons donc porté cette application pour utiliser asp.net et SQL server qui offre un type de données XML natif.
Fonctionnement de l'application:
On commence par ouvrir des sessions de demandes pendant lesquelles les
demandeurs pourront remplir un dossier (il reçoivent par mail un
code leur permettant de remplir leur dossier et de reprendre une session
de saisie lorsque celle-ci n'a pas été effectuée en
une seule fois). Les formulaires HTML à remplir dépendent
du type de demande effectuée.
Lorsque les saisies sont terminées des experts examinent et notent
les dossiers sur internet.
Puis les dossiers sont acceptés ou refuses lors d'une reunion compte
tenu des avis des experts.
La vie du dossier après l'acceptation (jusqu'à la génératoin
d'écritures comptables) est gérée par une application
access qui peut-être adaptée à moindre coût.
Cette application permet d'imprimer des rapports, d'envoyer simplement des
email au demandeurs, de gérer une liste d'experts, d'ouvrir des sessions
de demandes
La structure des formulaires HTML est gardée aussi simple que possible
afin de pouvoir être modifiée facilement.
Cette application pourrait être simplement adaptée à
d'autres besoins (entièrement ou en partie).
Un peu de technique:
Les formulaires HTML utilisent une assemblée .net commune contenant
les routines que nous avons pu développer. Ces formulaires ont tous
la même structure globale commune.
Ils contiennent au début la liste des champs qui devront être
lus lors de l'ouverture du formulaire et enregistrés lors de sa validation.
Les données provenant de champs xml sont définies par leur
chemin xpath. Les requêtes de sélection et de mise à
jour sont générées automatiquement.
Des contrôles Javascript client utilisant une bibliothèque
commune de fonction sont effectués avant la validation de chaque
formulaire.
La navigation entre les différents formulaires constituant le dossier
est réalisée par l'intermédiaire d'une barre de navigation
standard.
Contactez nous pour plus d'informations :