Dephi H2077提示信息 赋给'xxx'的值从未使用过
看一下代码:
procedure TfraModuleCPCK.AutoCPRK; begin var TypeDJ:=0; if DeptID=0 then TypeDJ:=StrToInt(dm.GetSNPrefix('其他入库','ID')) else TypeDJ:=StrToInt(dm.GetSNPrefix('产品入库','ID')); var fq := TFDQuery.Create(nil); fq.Connection := Dm.FDConnection1; with fq do begin try ... FieldByName('单据类型').AsInteger := TypeDJ; ... finally Free; end; end; end;
上面的代码提示:
[dcc32 提示] ufraModuleCPCK.pas(540): H2077 赋给'TypeDJ'的值从未使用过
为什么明明有被使用到还会有这个提示呢?
尝试修改为:
with fq do begin try begin var TypeDJ :=0; if DeptID = 0 then TypeDJ := StrToInt(Dm.GetSNPrefix('其他入库', 'ID')) else TypeDJ := StrToInt(Dm.GetSNPrefix('产品入库', 'ID'));
...
问题依旧.
尝试提升声明到过程的begin之前,问题得已解决.
procedure TfraModuleCPCK.AutoCPRK; var TypeDJ:=0; begin ...
原因:
不要在with这个BUG圣体中使用内联声明!

浙公网安备 33010602011771号