2009-01-09 4 views
0

Est-ce que quelqu'un connaît un outil de reporting qui permet de contrôler le travail d'impression page par page? Plus précisément, je dois pouvoir insérer des séquences d'échappement dans l'imprimante.Rapports d'entreprise avec contrôle d'impression par page

Le plus proche que j'ai trouvé est ActiveReports. Il fournit une interface comme ceci:

SystemPrinter sp = new SystemPrinter(); 
sp.StartJob("jobname"); 
foreach(Page pg in rpt.Pages) { 
    sp.Escape("escape_characters"); 
    sp.StartPage(); 
    pg.Draw(sp.Graphics, rect); //render page to printer 
    sp.EndPage(); 
} 
sp.EndJob(); 

Le problème est que leur fonction d'échappement a un bug connu et ne passe pas correctement les caractères d'échappement à l'imprimante.

Une interface similaire à celle-ci est idéale, mais pas nécessaire. Les exigences minimales que j'ai à traiter est d'envoyer différentes commandes à l'imprimante sur une base par page. Je travaille aussi en .NET. Toute suggestion serait appréciée. Merci.

Répondre

1

Désolé, le meilleur avec lequel j'ai travaillé est ActiveReports. S'il y a un bug connu, alors signalez-le définitivement. J'ai trouvé qu'ils ont un soutien décent.

+0

Oui, ils ont déjà été notifiés. Le problème est qu'ils n'ont pas d'estimation du moment où le problème sera résolu. En attendant, je cherche d'autres options. Bon de savoir que leur soutien n'est pas horrible. Merci pour l'info. –

1

Je suis sûr que vous constaterez qu'ActiveReports est le seul rédacteur de rapports qui offre un tel contrôle extensible sur les travaux d'impression, en particulier en fournissant un support d'évasion. Sûrement, si je me trompe, quelqu'un me corrigera. Quel est le bug avec Escape que vous rencontrez? Il est également à noter que Windows lui-même a commencé à introduire des limitations à l'évasion depuis que Windows 9x a été introduit et Microsoft a découragé l'utilisation des échappements depuis le démarrage de Windows 9x. Juste une source de Microsoft qui mentionne cela est KB125692. Quoi qu'il en soit, dites-moi en plus sur les problèmes auxquels vous êtes confrontés en matière d'évasion et j'essaierai de résoudre le problème ou de vous trouver une solution de contournement.

-scott

+0

Le bogue est que si j'exécute un rapport et que j'imprime dans un fichier avec l'appel Escape() commenté, puis de nouveau avec le dans, puis exécute un diff sur les fichiers résultants, la séquence d'échappement que je passe n'est pas là, et là est pas de changement à l'impression qui en résulte. –

Questions connexes