Table1의 Type은 ttDefault이구요...
Query.....
------------------------------------------------------------------------
Close;
Sql.Clear;
Sql.Add('select T.IO_GIJUN ');
Sql.Add(' ,T.IO_JUKYO3 ');
Sql.Add(' ,T.AC_CHECK ');
Sql.Add(' ,T.TAX_GUBUN ');
Sql.Add(' from JAJEA_TAX T ');
Sql.Add('where T.TAX_DATE between :x0 and :x1 ');
//중간 생략...
Open;
end;
Table1.Close;
Table1.FieldDefs:=Query1.FieldDefs;
Table1.CreateTable;
BatchMove1.execute;
Query1.Close;
Table1.Open;
DBGrid1.DataSource:=DataSource1;
DBGrid1.SetFocus;
-----------------------------------------------------------------------------
이렇게 할당하는데요...
가져오는 데이타 중에서 T.TAX_GUBUN 필드의 값은 정수형으로 "42301"식의
값이거든요...
그런데 Table의 같은 컬럼에는 '1'이라고 되어있구요... 필드타입도
자동증가형으로 잡혀요... 연계처리가 안되서
Dbase 타입으로 하면 정상적으로 가져오는데...
paradox형의 테이블일때만 그러는데... 어떻게 해야 할지....좀 갈쳐주세요...
> Table1의 Type은 ttDefault이구요...
> Query.....
> ------------------------------------------------------------------------
> Close;
> Sql.Clear;
> Sql.Add('select T.IO_GIJUN ');
> Sql.Add(' ,T.IO_JUKYO3 ');
> Sql.Add(' ,T.AC_CHECK ');
> Sql.Add(' ,T.TAX_GUBUN ');
> Sql.Add(' from JAJEA_TAX T ');
> Sql.Add('where T.TAX_DATE between :x0 and :x1 ');
> //중간 생략...
> Open;
> end;
> Table1.Close;
> Table1.FieldDefs:=Query1.FieldDefs;
> Table1.CreateTable;
> BatchMove1.execute;
> Query1.Close;
> Table1.Open;
> DBGrid1.DataSource:=DataSource1;
> DBGrid1.SetFocus;
> -----------------------------------------------------------------------------
> 이렇게 할당하는데요...
> 가져오는 데이타 중에서 T.TAX_GUBUN 필드의 값은 정수형으로 "42301"식의
> 값이거든요...
> 그런데 Table의 같은 컬럼에는 '1'이라고 되어있구요... 필드타입도
> 자동증가형으로 잡혀요... 연계처리가 안되서
> Dbase 타입으로 하면 정상적으로 가져오는데...
> paradox형의 테이블일때만 그러는데... 어떻게 해야 할지....좀 갈쳐주세요...
말씀하신 대로
Table1.FieldDefs:=Query1.FieldDefs; 부분에서
필드타입이 정확히 할당되지 않고 T.TAX_GUBUN 가 자동증가 필드로 정의되어
발생하는 에러 같습니다.
그러므로 Table1.FieldDefs:=Query1.FieldDefs 방법을 사용하지 마시고
직접 Table1.FieldDefs를 정확히 정의하시어 사용하시면 될 것도 같습니다.