Q&A

  • [잘문]마이다스 + MTS 프로그램 작성 에러 도와주세여..
안녕하세요..

글을 읽어 주셔서 감사합니다.

다름이 아니오라 제가 마이다스 + MTS 프로그램의 서버 클라이언트 프로그램을

만드는데 클라이언트 프로그램에서 버튼을 클릭하면 에러가 나는데 "Invalid variant operation"이 남니다 왜 그럴까여? 고수님 한수 부탁 드리겠습니다.



클라이언트 프로그램

=============================

procedure TForm1.Button1Click(Sender: TObject);

var

bMine : Boolean;

sMessage : String;

v : Variant;

begin

v := varArrayCreate([1,2],varVariant);

v[1] := myOBJ.VerifyLogin(eID.text, ePWD.text);

ShowMessage(v[1] + '님 어서오십시요');

Form2 := TForm2.Create(Self);

Visible := False;

Form2.ShowModal;

Form2.Free;

close;

end;



서버 프로그램

=============================

function TMTSModule.VerifyLogin(UserID, Passwd: OleVariant): OleVariant;

var

ID, PWD : String;

v : Variant;

f : textfile;

begin

ID := UserID;

PWD := Passwd;

assignFile(f,'d:hansdebug.txt');

rewrite(f);

writeln(f,'UserID = '+ ID);

writeln(f,'Passwd = '+ Pwd);

try

with Query1 do

begin

if Active then Close;



SQL.clear;

Writeln(f, 'open 전0');

SQL.Add(' SELECT FUS001PASSWD , FUS001USERNM');

SQL.Add(' FROM TUS001USER ');

SQL.Add(' WHERE FUS001USERID = :p1 ');

ParamByName('p1').AsString := ID;



Writeln(f, 'open 전'); <== 여기까지 나오다가 에러가 나는데 도대체

이유를 모르겠습니다.

open;



Writeln(f, 'open 후');

if EOF then

begin

v := '등록되지 않은 사용자 입니다.';

writeln(f,'등록되지 않은 사용자 입니다.');

closeFile(f);

result := v;

end

else if Fields[0].AsString <> PWD then

begin

v := '암호가 일치하지 않습니다.';

writeln(f,'암호가 일치하지 않습니다.');

closeFile(f);

result := v;

end

else

begin

v := Fields[1].AsString;

writeln(f,Fields[1].AsString);

closeFile(f);

result := v;

end;

close;

end;

SetComplete

except

begin

SetAbort;

writeln(f,'에러 발생');

closefile(F);

end;

end

end;





0  COMMENTS