2008-10-30 24 views
0

J'essaie d'exporter un rapport Crystal dans un fichier texte, tout en préservant les caractères Unicode qui s'y trouvent. Par défaut, Crystal Reports semble exporter vers un fichier texte ANSI.Comment exporter un rapport Crystal dans un fichier texte Unicode?

est ici une version très simplifiée de ce que je fais:

Dim objCRReport As CRAXDRT.Report 
[...] 
objCRReport.ExportOptions.FormatType = 8 'crEFTText 
objCRReport.ExportOptions.DestinationType = 1 'crEDTDiskFile 
objCRReport.ExportOptions.DiskFileName = "C:\reportInTextFormat.txt" 
objCRReport.Export blnPromptUser 

Comme il crée un fichier au format ANSI, je perds des caractères spéciaux qui ont été trouvés dans le rapport. Ces caractères sont tous très bien lorsque vous affichez le rapport Crystal directement.

S'il vous plaît noter que je faisant référence au "Crystal Reports 9 ActiveX Designer Runtime Library" spécifiquement.

Répondre

1

Je ai essayé de pré-créer un fichier Unicode avec le même nom avant à l'exportation, en espérant que le code Crystal remarquerait le fichier, et ajouter à lui plutôt que de créer un fichier ANSI , mais malheureusement ce n'est pas le cas. J'ai alors pensé que je pourrais contourner ce problème (style ninja) en exportant juste dans un fichier RTF (qui préserve les caractères), puis en lisant le contenu de ce RTF (moins le formating). Je créerais moi-même un fichier texte Unicode, en y écrivant le contenu RTF. Malheureusement, pour y parvenir, j'ai dû utiliser un RichTextBox, mais j'ai rencontré beaucoup de problèmes avec ça. Je pense que j'aurais plus de succès dans VB.Net, mais malheureusement je suis coincé avec VB6 pour cette tâche.

Après avoir essayé ces approches, je l'ai trouvé an article qui semble suggérer que Crystal Reports 9 prend en charge exporter vers un fichier texte Unicode, mais je dois encore voir fonctionner. Il mentionne que le moteur d'impression le supporte, donc je vais regarder plus en profondeur pour voir si je peux l'invoquer, au cas où le .export ne le ferait pas lui-même (ce dont je doute).

Il se trouve en cristal relies heavily on the printer driver for Unicode support, donc je décidé d'examiner cela. Active le pilote d'imprimante avait pour supporter Unicode, et ce était le cas sur mon environnement de test. Bien que cela ait été intéressant à découvrir, cela n'a pas résolu mon problème - j'avais déjà un pilote d'imprimante compatible. Donc, finalement: après quelques jours d'essayer de trouver une solution à cela, mon patron a décidé qu'il était temps de réduire nos pertes, et nous avons plutôt prévu une nouvelle conception de la fonctionnalité, sans impliquer Crystal Report à Exportations de texte Je suis toujours, cependant, très intéressé par la façon d'exporter vers un fichier texte Unicode avec Crystal - alors s'il vous plaît répondez si vous savez comment.

+0

Votre deuxième lien est cassé. Il y a un "https //" redondant dedans. –

+0

Merci, Mike. Corrigé –

Questions connexes