⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 pay510_01.pas.svn-base

📁 这是一个功能齐全的,代码完整的ERP企业信息管理系统,现在上传和大家分享
💻 SVN-BASE
📖 第 1 页 / 共 2 页
字号:
  else if ParName='PRNNM' then ParValue:=GetDBString('COM00006007')  //列印人員
  else if ParName='REPNM' then ParValue:=AReportTitle

  else if ParName='H150_002' then ParValue:=GetDBString('PAY51001005')  //员工编号
  else if ParName='H150_003' then ParValue:=GetDBString('PAY51001016')  //员工姓名
  else if ParName='P160A_003' then ParValue:=GetDBString('PAY51001010')  //类别名称
  else if ParName='P510A_004' then ParValue:=GetDBString('PAY51001008')  //生效日期
  else if ParName='P150_009' then ParValue:=GetDBString('PAY51001011')  //加项减项
  else if ParName='P150_002' then ParValue:=GetDBString('PAY51001012')  //项目编号
  else if ParName='P150_003' then ParValue:=GetDBString('PAY51001013')  //项目名称
  else if ParName='P510B_003' then ParValue:=GetDBString('PAY51001014')  //项目金额
  else if ParName='P510B_004' then ParValue:=GetDBString('PAY51001015')  //选择
end;

procedure TPay510_01Form.ActFirstExecute(Sender: TObject);
begin
  inherited;
//最前
  if qryHrm150.IsEmpty then Exit;
  qryHrm150.First;
  ActFirst.Enabled:=False;
  ActPrior.Enabled:=False;
  ActNext.Enabled:=True;
  ActLast.Enabled:=True;
end;

procedure TPay510_01Form.ActPriorExecute(Sender: TObject);
begin
  inherited;
//上移
  if qryHrm150.IsEmpty then Exit;
  qryHrm150.Prior;
  ActNext.Enabled:=not qryHrm150.Eof;
  ActLast.Enabled:=not qryHrm150.Eof;
  ActFirst.Enabled:=not qryHrm150.Bof;
  ActPrior.Enabled:=not qryHrm150.Bof;
end;

procedure TPay510_01Form.ActNextExecute(Sender: TObject);
begin
  inherited;
//下移
  if qryHrm150.IsEmpty then Exit;
  qryHrm150.Next;
  ActNext.Enabled:=not qryHrm150.Eof;
  ActLast.Enabled:=not qryHrm150.Eof;
  ActFirst.Enabled:=not qryHrm150.Bof;
  ActPrior.Enabled:=not qryHrm150.Bof;
end;

procedure TPay510_01Form.ActLastExecute(Sender: TObject);
begin
  inherited;
//最后
  if qryHrm150.IsEmpty then Exit;
  qryHrm150.Last;
  ActNext.Enabled:=False;
  ActLast.Enabled:=False;
  ActFirst.Enabled:=True;
  ActPrior.Enabled:=True;
end;

procedure TPay510_01Form.ActInsertExecute(Sender: TObject);
begin
  inherited;
//新增
  SetButtonState(True);
  qryPay510A.Insert;
  qryPay510AP510A_002.Value:=qryHrm150H150_001.Value;
  qryPay510AP510A_003.Value:=qryPay160AP160A_001.Value;
  qryPay510AP510A_004.Value:=Date;
  edtEmpID.Text:=qryHrm150H150_002.AsString;
  edtEmpID.SetFocus;
end;

procedure TPay510_01Form.ActUpdateExecute(Sender: TObject);
begin
  inherited;
//修改
  if qryPay510A.IsEmpty then
  begin
    ShowMsg('UMS10000002');  //表记录为空,操作无效
    Abort;
  end;
  SetButtonState(True);
  qryPay510A.Edit;
  edtEmpID.SetFocus;
end;

procedure TPay510_01Form.ActDeleteExecute(Sender: TObject);
begin
  inherited;
//删除
  if qryPay510A.IsEmpty then
  begin
    ShowMsg('UMS10000002');  //表记录为空,操作无效
    Abort;
  end;

  if ShowDialog('UMS10000008')=IDYES then  //确定要删除此记录吗?
  begin
    SYSDM.qryQuery.Close;
    SYSDM.qryQuery.SQL.Clear;
    SYSDM.qryQuery.SQL.Add('delete from PAY510B where P510B_001='+qryPay510AP510A_001.AsString);
    SYSDM.qryQuery.ExecSQL;
    qryPay510A.Delete;
  end;
end;

procedure TPay510_01Form.ActSaveExecute(Sender: TObject);
var
  ANo:Integer;
  AEmpNo:Integer;
  ADate:TDateTime;
begin
  inherited;
//保存
  if trim(edtEmpID.Text)='' then
  begin
    ShowMsg('UMS10000071');  //员工编号不能为空
    edtEmpID.SetFocus;
    Abort;
  end;
  if edtDate.Text='' then
  begin
    ShowMsg('UMS10000235');  //生效日期不能为空
    edtDate.SetFocus;
    Abort;
  end;
  if cbClass.Text='' then
  begin
    ShowMsg('UMS10000236');  //薪资类别不能为空
    cbClass.SetFocus;
    Abort;
  end;
  AEmpNo:=qryPay510A.FieldByName('P510A_002').Value;
  ADate:=qryPay510A.FieldByName('P510A_004').Value;
  if (AOldEmpNo<>AEmpNo) or (AOldDate<>ADate) then
  begin
    if IsExists('select 1 from PAY510A where P510A_002='+IntToStr(AEmpNo)+' and P510A_004='+GetDateString(ADate)) then
    begin
      ShowMsg('UMS10000239');  //薪资结构已存在,请重新输入
      edtEmpID.SetFocus;
      Abort;
    end;
  end;
  try
    qryPay510A.Post;
  except
    ShowMsg(SYSDM.ADOC.Errors[0].Description,1);
    Abort;
  end;
  qryPay510A.Refresh;
  ANo:=qryPay510A.FieldByName('P510A_001').Value;
  //删除旧数据
  SYSDM.qryQuery.Close;
  SYSDM.qryQuery.SQL.Clear;
  SYSDM.qryQuery.SQL.Add('delete from PAY510B where P510B_001='+IntToStr(ANo));
  SYSDM.qryQuery.ExecSQL;

  adsPay510.DisableControls;
  adsPay510.First;
  while not adsPay510.Eof do
  begin
    qryPay510B.Append;
    qryPay510B.FieldByName('P510B_001').Value:=ANo;
    qryPay510B.FieldByName('P510B_002').Value:=adsPay510.FieldByName('P150_001').Value;
    qryPay510B.FieldByName('P510B_003').Value:=adsPay510.FieldByName('P510B_003').Value;
    qryPay510B.FieldByName('P510B_004').Value:=adsPay510.FieldByName('P510B_004').Value;
    qryPay510B.Post;
    adsPay510.Next;
  end;
  adsPay510.EnableControls;
  SetButtonState(False);
end;

procedure TPay510_01Form.ActCancelExecute(Sender: TObject);
begin
  inherited;
//取消
  qryPay510A.CancelUpdates;
  SetButtonState(False);
end;

procedure TPay510_01Form.ActRefreshExecute(Sender: TObject);
begin
  inherited;
//刷新
  qryHrm150.Close;
  qryHrm150.Open;
end;

procedure TPay510_01Form.ActLocateExecute(Sender: TObject);
begin
  inherited;
//查找
  if qryHrm150.IsEmpty then
  begin
    ShowMsg('UMS10000002');  //表记录为空,操作无效
    Abort;
  end;
  LocateDialog(dsHrm150);
end;

procedure TPay510_01Form.ActSearchExecute(Sender: TObject);
begin
  inherited;
//查询
  FilterDialog(dsHrm150);
end;

procedure TPay510_01Form.ActPrintExecute(Sender: TObject);
begin
  inherited;
//打印
  SelectReport(qryPay510A,AProgramID,AReportName,ReportGetValue);
  ActRefresh.Execute;
end;

procedure TPay510_01Form.ActExportExecute(Sender: TObject);
begin
  inherited;
//导出到Excel
  if qryPay510A.IsEmpty then
  begin
    ShowMsg('UMS10000002');  //表记录为空,操作无效
    Abort;
  end;
  SaveToExcel(dxDBGrid2);
end;

procedure TPay510_01Form.ActSetExecute(Sender: TObject);
begin
  inherited;
//设置
  Pay510_02Form:=TPay510_02Form.Create(Application);
  Pay510_02Form.ShowModal;
  qryHrm150.Refresh;
  qryPay510A.Refresh;
end;

procedure TPay510_01Form.ActExitExecute(Sender: TObject);
begin
  inherited;
//退出
  Close;
end;

procedure TPay510_01Form.qryPay510BP150_009GetText(Sender: TField;
  var Text: String; DisplayText: Boolean);
begin
  inherited;
  if qryPay510B.IsEmpty then Exit;
  case Sender.AsInteger of
    0:Text:=AType[0];  //加项
    1:Text:=AType[1];  //减项
    2:Text:=AType[2];  //合计
  end;
end;

procedure TPay510_01Form.qryHrm150AfterScroll(DataSet: TDataSet);
begin
  inherited;
  if ActSave.Enabled then Exit;
  qryPay510A.Close;
  qryPay510A.SQL.Clear;
  qryPay510A.SQL.Add('select * from PAY510A where P510A_002='+qryHrm150H150_001.AsString+' order by P510A_004 desc');
  qryPay510A.Open;
  qryPay510AAfterScroll(qryPay510A);
end;

procedure TPay510_01Form.qryPay510AAfterScroll(DataSet: TDataSet);
begin
  inherited;
  if qryPay510A.IsEmpty then
  begin
    edtEmpID.Text:='';
    SetPayItem(0);
    AOldEmpNo:=0;
    AOldDate:=0;
  end else
  begin
    edtEmpID.Text:=qryPay510AH150_002.AsString;
    SetPayItem(qryPay510AP510A_003.Value);
    AOldEmpNo:=qryPay510A.FieldByName('P510A_002').AsInteger;
    AOldDate:=qryPay510A.FieldByName('P510A_004').AsDateTime;
  end;
end;

procedure TPay510_01Form.sbEmpClick(Sender: TObject);
begin
  inherited;
//员工编号
  if not edtEmpID.Focused then edtEmpID.SetFocus;
  if ActSave.Enabled then
  begin
    HwSelDataForm:=THwSelDataForm.Create(Application);
    HwSelDataForm.OpenSelData(qryHrm150,nil);
    if HwSelDataForm.ShowModal=1 then
    begin
      edtEmpID.Text:=qryHrm150.FieldByName('H150_002').AsString;
      qryPay510AP510A_002.Value:=qryHrm150.FieldByName('H150_001').Value;
    end;
  end;
end;

procedure TPay510_01Form.edtEmpIDExit(Sender: TObject);
begin
  inherited;
//员工编号
  if (ActSave.Enabled) and (trim(edtEmpID.Text)<>'') then
  begin
    if qryHrm150.Locate('H150_002',edtEmpID.Text,[loCaseInsensitive]) then
    begin
      qryPay510AP510A_002.Value:=qryHrm150.FieldByName('H150_001').Value;
    end else
    begin
      ShowMsg('UMS10000042');  //无效的员工编号
      edtEmpID.SetFocus;
      Abort;
    end;
  end;
end;

procedure TPay510_01Form.PageControl1Changing(Sender: TObject;
  var AllowChange: Boolean);
begin
  inherited;
  if qryPay510A.State in [dsInsert, dsEdit] then AllowChange:=False;
end;

procedure TPay510_01Form.qryPay510AP510A_003Change(Sender: TField);
begin
  inherited;
  SetPayItem(qryPay510AP510A_003.Value);
end;

procedure TPay510_01Form.adsPay510P150_009GetText(Sender: TField;
  var Text: String; DisplayText: Boolean);
begin
  inherited;
  if adsPay510.IsEmpty then Exit;
  case Sender.AsInteger of
    0:Text:=AType[0];  //加项
    1:Text:=AType[1];  //减项
    2:Text:=AType[2];  //合计
  end;
end;

initialization
  RegisterClass(TPay510_01Form);

finalization
  UnRegisterClass(TPay510_01Form);

end.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -