안녕하세요..
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의 차이점도 가르쳐 주시면 고맙겠습니다.
그럼 좋은 하루 되세요