J'ai une application Web qui fonctionne correctement (Java/Servlet/Jsp) que j'aimerais améliorer l'expérience de l'utilisateur final et ce qu'ils retirent de l'utilisation de l'application. L'application Web capture des données d'entreprise via des formulaires html et les stocke dans une base de données Oracle. Il a une bonne validation de saisie des données de formulaire. J'affiche les données dans des pages html. Mais je veux de meilleures capacités de rapport de mes données, je ne veux pas que ce soit juste un référentiel.
Par exemple, j'ai un planificateur Out Of Plant. Les employés saisissent les dates auxquelles ils seront en voyage d'affaires ou en vacances, en fonction de juré, etc. données sous forme de liste ou sur un calendrier. Cela fonctionne bien, mais maintenant je veux ajouter plus de filtres. Que se passe-t-il si quelqu'un souhaite voir uniquement les événements de voyage d'affaires par les seuls employés du département 123. Ou que se passe-t-il si l'utilisateur souhaite afficher les événements de vacances et de fonction de jury? Y a-t-il quelque chose de mieux à utiliser que des widgets de formulaire html, des donws, des cases à cocher et des champs de recherche?
C'est le dilema de toutes mes applications Web. Je collecte des données et souhaite un excellent moyen de présenter ces données à l'utilisateur final en tant qu'informations, pas seulement des données.
Est-ce un travail pour jquery, ajax, BIRT, etc ... ?? Il est également souhaitable d'avoir un moyen facile de créer des diagrammes à barres et des graphiques d'une requête que je conçois avec les filtres d'utilisateur final appliqués. Oh et bien sûr, la haute direction aime les documents Excel. Pour le moment, je peux cracher Excel en spécifiant l'en-tête de réponse dans le servlet Java.
BTW, c'est un one man show, je suis programmeur et designer.
La bibliothèque ExtJS a un contrôle de grille très puissant, qui permet de réorganiser et de masquer les colonnes, de rechercher, de trier etc. Et ça a l'air bien aussi. ExtJS comprend également des contrôles pour les graphiques, mais je préfère utiliser Flot à la place, car c'est du JavaScript pur et IMO plus flexible.
Je ne suis pas très familier avec Java, mais vous devriez vérifier Google Charts API comme un moyen possible d'implémenter facilement vos graphiques. En ce qui concerne certaines de vos autres questions sur l'interface utilisateur, consultez cette question sur bibliothèques de modèles d'interface utilisateur et sites Web . Vous devriez y trouver quelque chose qui sera utile ou inspirant.
Si vous avez une certaine flexibilité dans la livraison, vous pouvez utiliser une technologie RIA comme Adobe Flex pour développer même des widgets/composants (sinon une application complète). Sinon, vos autres options utilisent jQuery, CSS et d'autres technologies purement Web comme celle-ci pour atteindre le "facteur cool" mais qui génère ses propres défis en matière de compatibilité entre navigateurs (quelque chose que Flex et Flash Player vous protégeraient). La boîte à outils Dojo est également une option intéressante, mais elle a également son propre ensemble de défis.
Vous pouvez consulter Google Chart et l'API de visualisation. Ils sont très orientés javascript, donc tout ce que vous avez à vous soucier est de savoir comment obtenir les données de votre base de données et remplir les tableaux nécessaires et cela montre de très bons graphiques. Oui, l'affichage des graphiques ajoute des cloches et des sifflets.
Il existe également un moteur de graphique flash open source http://teethgrinder.co.uk/open-flash-chart/index.php
Consultez également dashboardzone.com pour obtenir des idées sur la façon de présenter vos données sous forme de graphiques.
Semblable à l'API Google Charts, je recommanderais Highcharts C'est assez flashy - à ne pas confondre avec être fait en flash - et peut être un excellent moyen de visualiser les données dont vous disposez. Il s'agit d'une autre bibliothèque de graphiques JavaScript qui utilise SVG lorsqu'il est disponible et une méthode alternative pour IE. Dans les deux cas, il s'agit principalement de HTML, JavaScript et CSS simples. Highcharts est un logiciel sous licence et ce n'est pas un "service" dans le cloud. Ce qui correspondrait probablement mieux à vos besoins que l'API Google Charts. Pour obtenir des informations sur les licences: http://www.highcharts.com/license