2011-01-12 6 views
0

ExpressQuantumGrid에 대한 DevExpress 기술 자료 항목 Excel-Exports from a cxGrid formats FMTBCD-Fields with a currency-Symbol에 따르면 TFloatField 유형의 계산 된 필드를 사용하여 통화 기호가 Excel로 내보내 지도록 FMTBCD 필드를 내보내는 것이 필요합니다 . 기술 자료의 예제 코드는 예상대로 작동합니다.ExpressQuantumGrid 통화 기호 및 형식이없는 FMTBCD 필드의 Excel 내보내기

그러나 계산 된 필드에 대해 내 보낸 파일에 2 자리 10 진수 정밀도를 추가해야합니다.

  • 나는 "0.00"= DisplayFormat와 속성 = CalcEdit을 사용하려고하지만 수출 내가 계산 필드의 DisplayFormat을 설정하려고

  • 그리드 컬럼의 DisplayFormat을 사용하지 않고, 내보내기에서 데이터 필드의 DisplayFormat을 사용하지 않습니다.

버전 6.54를 사용합니다. (지원 케이스도 열어 둡니다.)

+0

vtFloat와 같은 유형의 cxSpinEdit 속성을 설정하려고 했습니까? – ComputerSaysNo

+0

예, cxSpinEdit가 차이를 만들지 않았습니다. – mjn

답변

1

통화 기호없이 통화 값을 내보내려는 비슷한 문제가있었습니다. 결국 내가 할 수있는 유일한 방법은 소스 코드를 수정하는 것이 었습니다.

나는 cxGridExportLink.pas 사본을 프로젝트 특정 디렉토리에 넣었습니다. 그런 다음 (.입니다 버전을 확실하지 내가 지금 구독 번호 (53)를 사용하고 있습니다) 라인 767을 변경하지만 다음 라인 :

if (IsCurrencyItem(AItem)... 
    ... then 
    VarCast(Result, AValue, varCurrency); // <--- This line 

내가 varDouble에 varCurrency을 변경하고 내 프로그램을 재건. 동일한 디렉토리에 cxVer.inc의 사본이 필요합니다.

이것은 2 자리 10 진수 요구 사항에 영향을 미칠 수 있지만 발견 한 유일한 방법이며 현재까지는 잘 작동합니다.

관련 문제