J'ai été une fois demandé de faire quelque chose de similaire. J'ai refusé. Quelqu'un d'autre a essayé cela et c'est devenu un échec complet. C'est parce que votre conception est basée sur la structure d'une feuille de calcul. Quand j'ai été rappelé pour m'aider dans ce projet, j'ai donné un coup de pied dans le grand code, qui restera fermé jusqu'à ce que l'Enfer gèle! J'ai ensuite commencé à analyser les feuilles Excel, à extraire la logique métier et à les écrire comme documentation. Cela m'a permis de créer un bon design pour mettre en place la première version d'un nouveau projet, qui n'était pas basé sur la feuille Excel, juste sur la logique métier de la feuille.
Ne soyez pas tenté de tomber dans ce piège! Cela semble trop facile mais en réalité, c'est trop cher en tant que solution à cause de tous les problèmes que vous rencontrerez!
Si votre client a vraiment besoin de quelque chose à utiliser très rapidement, commencez par .NET (VS2008 avec les derniers service packs ou mieux) et SQL Server. Commencez par créer une structure de base de données simple pour contenir les guillemets. Ajoutez autant de relations que nécessaire. Ensuite, en utilisant VS2008, créez un nouveau projet basé sur l'application Web "Dynamic Data
Entities" qui utilisera Entity Framework pour se connecter à la base de données. Assurez-vous que le framework d'entité est connecté à votre base de données et que toutes les données lui sont fournies. (En y ajoutant un "ADO.NET Entity Data Model".) Compilez-le, mettez-le sur le serveur web et la version 0.1 devrait être prête. Cela permettra à votre client de continuer la saisie de données, bien que d'une manière un peu primitive, tout en maintenant l'intégrité des données de tout cela. Il n'est toujours pas suffisant d'exposer à l'extérieur du monde, mais il est plus facile de se débarrasser de la partie des données de la feuille de calcul Excel. (Et techniquement, il devrait être possible d'ajouter un service RESTful autour du modèle d'entité dans une heure pour permettre à Excel de lire les données d'un service Web à la place.)
Lorsque cette page d'accueil a été créée, votre client peut obtenir Utilisé pour la saisie de données à travers les pages Web pendant que vous avez le temps d'analyser un peu plus leur feuille de calcul pour optimiser le modèle de données et pour créer une logique personnalisée et de meilleures pages pour la saisie des données.
Fondamentalement, c'est l'approche que j'ai utilisée. Mon client avait des données dans des feuilles Excel qui étaient exportées vers une base de données Access qui était utilisée comme données en lecture seule pour les utilisateurs de son application. Il a utilisé Excel pour garder les données à jour. Mais lorsque plusieurs utilisateurs ont commencé à conserver les données dans la même feuille Excel, il a eu de gros problèmes, perdant l'intégrité et les données des feuilles Excel plusieurs fois. J'ai d'abord créé un modèle de données simple autour des données Excel avec l'Entity framework/DDS pour faciliter la saisie des données, puis j'ai pu optimiser la structure de la base de données pendant que le client continuait à modifier les données.Parfois, je mettrais à jour la structure de base de données, j'ajouterais plus de relations et restructurerais les données pour les optimiser et à un moment donné j'ajoutais la fonctionnalité de service RESTful pour que le client puisse obtenir les données en XML via une simple requête web. Maintenant, le client a complètement oublié la feuille Excel et utilise le site Web à temps plein. Il a accepté le fait que le transformer en quelque site Web de fantaisie coûtera beaucoup de temps mais la situation actuelle est tout à fait acceptable.
Cette approche a réussi là où les tentatives précédentes ont échoué simplement parce que je me concentrais uniquement sur les données, rien de plus. Maintenant, je peux tout améliorer en utilisant de petites étapes. Mais première étape: analyser la feuille Excel et vider les données dans une base de données. Le framework Entity vous permettra de créer rapidement des sites simples sans trop d'efforts.
@Alex: Cela confirme également mon processus de réflexion. Jusqu'à ce que le formulaire Web soit entièrement développé, le personnel peut toujours utiliser sa feuille de calcul :) – SidC