Q&A

  • 동적으로 계산 필드 만들기....
안녕하세요..

ADO로 엑셀을 불러오는데

앞에다가 RowNum을 만들어 넣어야 합니다.

디자인에서 ADOQuery를 더블클릭해서 CalcField 만들면....쉽지만

필드가 워낙에 다양한 괸계로 동적으로

만들어 주어야 합니다.

그래서 동적으로 만들어 넣으면....

쿼리 Open시 딴 필드가 나오지 않고... 계산 필드만 보입니다.

또한 동적으로 생성하면 필드가 DataSet이 없다는 에러가 나옵니다.

대강 이렇게 코딩했습니다.

QueryBeforeOpen

var
  if1 : TIntegerField;
beg
  if1 := TIntegerField.Create(DalaSet);

  with if1 do be  
     Calculated := TRUE;
     FieldName := 'RecNo';
     FieldType := Integer;
  end;

  DataSet.Feidls.Add(if);
end

이렇게 한다음 Open하면 일단 필드는 있는데 정작

DataBinding할때 DataSet이 없다고 에러 뜹니다.

OnCalcField는

FieldByName('RecNo') := 3; 이런식으로 해 줬구요..

급히 도움을 청합니다. 도대체 어디가 이상한건지.. 알수가 없네요

그리고 Fields와 FieldDefs의 차이점도 가르쳐 주시면 고맙겠습니다.

그럼 좋은 하루 되세요






0  COMMENTS