Q&A

  • 에러에 대해서
안녕하세요?

참고로 저는 왕초보입니다. 다음 에러에 대해서 해결방법을 부탁드립니다.

에러는 'Invalid variant type conversion'

에러가 나는 부분 소스는 다음과 같습니다.


var
  insum, outsum : real;

begin
  dm.kyongjo.first;
  insum := 0;
  outsum := 0;
  while not dm.kyongjo.eof do
  begin
    if dm.kyongjo.FieldByName('입출').text = '入' then
      insum := insum + DM.kyongjo.FieldByName('경조사비').value
    else
      outsum := outsum + DM.kyongjo.FieldByName('경조사비').value;
    DM.kyongjo.moveby(1);
  end;
  dm.kyongjo.first;
end;
1  COMMENTS
  • Profile
    윤수아 2003.10.25 03:54
    insum := insum + DM.kyongjo.FieldByName('경조사비').value
    outsum := outsum + DM.kyongjo.FieldByName('경조사비').value

    이게 문제인 것 같네요..

    경조사비 필드의 데이타형을 확인해보시고요...

    real := real + Variant 에서 Variant에 Conversion될수 없는 데이타가 들어 있음 에러납니다..

    var
      a:String;
      b:variant;
      c:real;
    begin
      a := '1';
      b := a;
      C := C + b;

    일케 하면 에러 안 납니다. 그러나

    var
      a:String;
      b:variant;
      c:real;
    begin
      a := 'a';
      b := a;
      C := C + b;

    일케하면 에러 납니다.