2014-05-21 3 views
0

내가 지속적인 인덱스 ADODataSet를 생성하지만, 정보를 주문하고 있지 않다, 내 코드는 다음과 같다 : 내가 잘못 뭐하는 거지ADODataSet IndexDef에서 작동하지 않습니까?

ADODataSetInforArtic.IndexDefs.Clear; 
case ComboBoxOrden.AsValue of 
    0: begin 
     with ADODataSetInforArtic.IndexDefs.AddIndexDef do 
     begin 
     Name := 'DenomArtic'; 
     Fields := 'DenomArtic'; 
     if ComboBoxOrden.Buttons.Image1.Id = 59 then 
      Options := [ixDescending]; 
     ADODataSetInforArtic.IndexName := Name; 
     end; 
    end; 

? 내가하는 보고서이므로이 방법을 사용합니다. 그리드가없는 것은 정보를 주문할 필드를 선택하는 콤보와 오름차순 또는 내림차순을 선택할 수있는 또 다른 버튼입니다. 내가 지연에 대한

+0

정확히 무엇이 효과가 있습니까? 나는 완벽하게 작동하는 매우 유사한 코드를 가지고 있으며, 위의 코드로 어떤 문제가 있는지 정확히 설명하지 못했습니다. 당신이 묻고있는 것을 더 분명하게하기 위해 [편집]하십시오. 감사. –

+0

보고서가 어떻게 생성되는지는 말하지 않습니다. 일부보고 엔진은 데이터 자체를 정렬 할 수 있으므로 인덱스를 재정의하는 것이 좋습니다. 임시로 그리드를 폼에 추가하려고 했으므로 인덱스가 사용되는지 여부를 확인할 수 있습니다. – MartynA

+0

호기심에서, ComboBox에는'.AsValue'와'Buttons'가 무엇입니까? –

답변

1

죄송 델파이 XE2 안부를 사용 .... 이 작동하지 않습니다 이해가 안 돼요, 내가 그렇게 독립 프로그래머 스페인어 (JfControls)에 의해 개발 된 내 프로젝트에서 사용하는 구성 요소는 크게 개발을 촉진 더 심미적으로 귀엽다. 내 앞의 코드는 ADODataset에서 작동하지 않았는지 이해가 안 ... 정렬 속성을 사용하여

ADODataSet.Sort := 'CodigDenom DESC'; 

를 내 문제를 해결했다. indexData는 ClientDataSet에서 훌륭하게 작동합니다.

또한 내 보고서에 사용합니다. ReportBuilder

감사합니다.