2009-10-19 7 views
2

Je cherche à ajouter des rapports/formulaires personnalisés à une application Web. Je souhaite que les utilisateurs puissent télécharger un fichier de définition/modèle de rapport, puis pouvoir imprimer un document PDF ou Word (l'un ou l'autre ne devant pas nécessairement être les deux) pour chacun de leurs widgets basé sur le modèle ils ont téléchargé. Je ne peux rien installer sur le serveur et je recherche une solution open source/gratuite. Source de données - Les données seront sous la forme d'une base de données ou d'un ensemble de données que l'application récupère elle-même. L'outil de rapport ne sera pas en mesure de se connecter à une base de données.Modèle .Net Modèle de moteur/rapport

+0

Où les données pour les rapports viennent, et quelles installations de rapports avez-vous besoin? J'entends par là le regroupement, les en-têtes et pieds de page du rapport, les en-têtes de page + les pieds de page, etc. –

+0

Je n'aurai besoin d'aucune fonctionnalité d'en-tête/pied de page. Le regroupement serait bien mais n'est pas requis. –

Répondre

0

Nous sommes très satisfaits de la bibliothèque gratuite StringTemplate.Net pour générer des rapports HTML (ou tout autre format texte). Le langage de création de modèles est assez simple pour que quiconque comprend HTML doive adapter les modèles. Les rapports HTML peuvent être affichés directement dans l'application avec le WebBrowser control, et nous utilisons un commercial library pour convertir le HTML en PDF si vous le souhaitez.

Un exemple StringTemplate de la 5 minute introduction:

<html> 
    <head> 
     <title>$title$</title> 
    </head> 
    <body> 
     <p>Hello again, $name$ !</p> 
     <p>Greetings to your friends $friends; separator=", "$</p> 
    </body> 
</html> 

Nous avons également utilisé Microsoft ReportViewer avant. Cela a l'avantage de venir avec un contrôle de spectateur pour WinForms et WebForms, l'exportation vers pdf et Excel, une fonction de recherche, l'intégration de SQL Server et des options d'impression avancées. Mais AFAIK, il nécessite Visual Studio pour créer/personnaliser des rapports avec le concepteur de rapports ; il ne prend pas vraiment en charge la personnalisation des rapports par les utilisateurs finaux. Il semble être plus orienté vers le programmeur glisser-déposer travaillant dans un environnement avec une pile microsoft complète (IIS, ASP.NET, SQL Server).

+0

J'ai regardé le ReportViewer mais j'ai trouvé qu'il manquait car je ne pouvais pas vraiment faire de formulaire avec. Si je voulais simplement lui transmettre un DataTable avec un seul enregistrement, puis utiliser cet enregistrement pour remplir un formulaire, il ne fonctionnait pas, car je suis habitué à utiliser Crystal Reports où vous pouvez incorporer un champ/paramètre dans un bloc de texte . –

0

Je développe une bibliothèque .net destinée à faire ce travail. Cela fonctionne avec les fichiers RTF. Vous fournissez le modèle et les données et génère le rapport RTF. Il inclut un langage de programmation propriétaire (très petit mais puissant :)) incluant des boucles pour les données (avec et sans conditions) et une phrase "IF ELSE ENDIF" qui lui permet de générer conditionnellement des parties d'un document. Il est également capable d'utiliser les variables fournies par le programmeur, en plus des données. J'effectue un panoramique pour inclure de nombreuses autres fonctionnalités telles que les fonctions de formatage, les événements, etc Ce sera un produit commercial (vraiment très bon marché), et même s'il est encore en développement et nécessite beaucoup plus de tests, je suis assez heureux avec ça jusqu'à présent. Si vous êtes intéressé à en entendre parler, restez en contact. Cordialement,

Gonzalo

+0

Lancez un lien et je vais essayer.Oh, et utilisez quelque chose comme IronRuby au lieu d'un langage de programmation personnalisé. –

+0

Bonjour runxc1 Bret Ferrier, Ce n'est pas encore envoyé à l'instant. Si vous me fournissez votre boîte e-mail, je vous enverrai une version bêta dès que possible. Je ne sais pas ce qu'est IronRuby. Je vais vérifier, merci. Quoi qu'il en soit, dans mon cas, il n'y a que deux phrases de flux de contrôle: IF et SCAN. Vous écrivez leurs expressions conditionnelles comme s'il s'agissait de C#. Envoyez-moi un courriel à desarrollo (point) uruguay (at) gmail (dot) com. Cordialement, Gonzalo –

+0

J'utilise gmail et mon email est juste runxc1. –

0

Juste vérifiais mes réponses et a trouvé celui-ci. C'est peut-être un peu tard mais je ne manquerais pas l'occasion de vous dire que j'ai finalement uploadé NTemplates en codeplex.

Vérifiez ntemplates.codeplex.com.

Meilleures salutations,

Gonzalo

Questions connexes