아래 try .. except문에서 0으로 나누게 되면 에러가 나는데요 그렇게 되면 그냥 넘어가라고
try...except문을 넣었는데....
컴이(정확히 프로그램이) 블랙으로 변합니다. 엔터치면 프로그램은 죽고 윈도우는 살아나고...
많은 소스의 일부분이데 고수님들 무엇이 문제 일까요...
with TAB5021 do begin
if FindKey([no]) then begin
Edit;
with TABbyclcd do begin
if findkey([flnm])then begin
try ///=======>여기 try구문 시작
fm_cpr := self.findcomponent('cp'+ ii) as TKNumberEdit;
if fm_cpr.Value = 0 then
TAB5021.FieldByName('T_' + flnm2 + '04').asfloat :=
TRUNC((FieldByName('by_cprp').asfloat/
TAB5021.FieldByName('T_' + flnm2 + '02').asfloat) * 100) else
if fm_cpr.Value > 0 then
TAB5021.FieldByName('T_' + flnm2 + '04').asfloat :=
TRUNC((fm_cpr.Value/TAB5021.FieldByName('T_' + flnm2 + '02').asfloat) * 100);
Except
//try문이 에러나면 그냥 조횽히 넘어감....
end;
end;
end;
Post;
end;
end;
try .. except 문을 쓰셨서도 말이죠..
연산시 계산하려는 값이 divide by zero 가 되지 않도록 검증해주셔야 합니다.
그럼..