sGzx.Value+'' = ''+GzxFzjsDlg.Expression.Text);
if DataFrm.TgzxjsSubQuery.AsString 〈〉 '''' then
DataFrm.DynamicQuery.SQL.Add('' Where ''+DataFrm.TgzxjsSubQuery.AsString) ;
DataFrm.DynamicQuery.ExecSQL;
finally
MyPromptFrm.Close;
end;
DataFrm.Tgz.Refresh;
end;
end;
end;
{下面的过程是在用户按下“执行批量计算”按钮后执行的,它的任务是对工资项
计算定义表中所定义的、并且批量处理标志为真的所有工资字段根据批量处理顺序、
条件表达式和计算表达式进行重新计算}
procedure TGzxFzjsDlg.Button1Click(Sender: TObject);
begin
if DataFrm.Sgzxjs.State IN [dsEdit,dsInsert] then
ShowMessage(''记录正在编辑或插入状态,现退回!'')
else
begin
if Data.Confirm(''真的需要执行批量工资项赋值吗?'') then
begin
MyPromptFrm.Show;
MyPromptFrm.Update;
try
DataFrm.Tgzxjs.First;
while not DataFrm.Tgzxjs.Eof do
begin
if DataFrm.TgzxjsIsCurrent.Value = 1 then
begin
DataFrm.DynamicQuery.Close;
DataFrm.DynamicQuery.SQL.Clear;
DataFrm.DynamicQuery.SQL.Add(''UPDATE 工资表 SET ''+DataFrm.TgzxjsGzx.Value+'' = ''+GzxFzjsDlg.Expression.Text);
if DataFrm.TgzxjsSubQuery.AsString 〈〉 '''' then
DataFrm.DynamicQuery.SQL.Add('' Where ''+DataFrm.TgzxjsSubQuery.AsString) ;
DataFrm.DynamicQuery.ExecSQL;
end;
if DataFrm.TgzxjsGzx.Value = ''#37'' then
Gz.JsSds;
DataFrm.Tgzxjs.Next;
end;
finally
MyPromptFrm.Close;
end;
DataFrm.Tgz.Refresh;
end;
end;
end;
end.