문제

나는 내부에서 발견되는 유니 코드 문자를 보존하는 동시에 Crystal 보고서를 텍스트 파일로 내보내려고 노력하고 있습니다. 기본적으로 Crystal Reports는 ANSI 텍스트 파일로 내보내는 것으로 보입니다.

다음은 내가하는 일의 매우 단순화 된 버전입니다.

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

ANSI 형식으로 파일을 생성하므로 보고서 내에서 발견 된 특수 문자를 잃습니다. Crystal Report를 직접 볼 때이 캐릭터는 모두 괜찮습니다.

"Crystal Reports 9 ActiveX Designer Runtime 라이브러리"를 구체적으로 언급하고 있습니다.

도움이 되었습니까?

해결책

같은 이름의 유니 코드 파일을 사전 제작하려고했다고 지적하고 싶습니다. 이전의 내보내기에 결정 코드가 파일을 알아 차리고 ANSI 파일을 작성하는 대신 파일에 추가되기를 희망하지만 불행히도 그렇지 않습니다.

그런 다음 RTF 파일 (캐릭터를 보존하는)으로 내보내면이 RTF의 내용을 읽음 으로써이 문제 (닌자 스타일)를 얻을 수 있다고 생각했습니다. 그런 다음 RTF 내용을 작성하여 유니 코드 텍스트 파일을 직접 작성합니다. 불행히도, 이것을 달성하기 위해, 나는 RichTextBox를 사용해야했지만 그 문제에 많은 문제가 발생했습니다. 나는 vb.net에서 더 많은 성공을 거둘 것이라고 생각하지만 불행히도이 작업을 위해 VB6에 갇혀 있습니다.

그 접근법을 시도한 후 나는 발견했다 기사 그것은 Crystal 보고서 9를 제안하는 것 같습니다 지원합니다 유니 코드 텍스트 파일로 내보내지 만 아직 작동하는 것을 보지 못했습니다. 그것은 인쇄 엔진이 그것을 지원한다고 언급하므로,. 출입구가 그렇게하지 않는 경우를 대비하여 그것을 호출 할 수 있는지 더 깊게 보게 될 것입니다 (의심스러운).

그것은 결정이 나옵니다 유니 코드 지원을 위해 프린터 드라이버에 크게 의존합니다, 그래서 나는 그것을 조사하기로 결정했습니다. 프린터 드라이버가 나타납니다 가졌다 유니 코드를 지원합니다 ~였다 내 테스트 환경의 사례. 이것이 흥미로 웠지만 내 문제를 해결하지 못했습니다. 이미 호환 프린터 드라이버가있었습니다.

그래서 마지막으로 : 며칠 동안 이에 대한 해결책을 찾으려고 노력한 후, 상사는 손실을 줄일 때가되었다고 결정했고, 대신 텍스트 수출에 Crystal 보고서를 포함시키지 않고도 기능의 재 설계를 계획했습니다. 그러나 여전히 Crystal이있는 유니 코드 텍스트 파일로 내보내는 방법에 관심이 많으므로 방법을 알고 있으면 대답하십시오.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top