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

📄 pj_tk.pas

📁 汽配前台收费,一个具有详细功能的小系统
💻 PAS
📖 第 1 页 / 共 2 页
字号:
procedure Tfrm_pj_tk1.CancelInit;
begin
  qe_pj_add.Cancel;
  //
  pe_bh.Enabled := True;
  pe_info.Enabled := True;
  pe_image.Visible := True;
  pe_edit.Visible := False;
  //
  EnabledComponent(dsBrowse);
end;

procedure Tfrm_pj_tk1.EditInit;
var
  int_ck_sum: Double;
  int_sy_sum: Double;
  int_fk_sum: Double;
  int_xz_sum: Double;
begin
  int_ck_sum := qe_pj_add.FieldByName('pj_ck_sum').Value;
  int_sy_sum := qe_pj_add.FieldByName('pj_sy_sum').Value;
  int_fk_sum := qe_pj_add.FieldByName('pj_fk_sum').Value;
  int_xz_sum := qe_pj_add.FieldByName('pj_xz_sum').Value;
  //
  if (int_ck_sum < 0.01) and (int_fk_sum < 0.01) then begin
    MessageBox(Handle, '该配件未曾从仓库领料', '沈阳信德', MB_ICONQUESTION or MB_OK);
    Exit;
  end else begin
    if (int_ck_sum < int_sy_sum) and (int_xz_sum > 0.01) then begin
      MessageBox(Handle, '该配件存在新增数量,不能退库', '沈阳信德', MB_ICONQUESTION or MB_OK);
      Exit;
    end;
  end;
  //
  pe_bh.Enabled := False;
  pe_info.Enabled := False;
  pe_image.Visible := False;
  pe_edit.Visible := True;
  //
  cmd_edit.Enabled := False;
  cmd_save.Enabled := False;
  cmd_cancel.Enabled := True;
  cmd_del.Enabled := False;
  cmd_print.Enabled := False;
  cmd_print1.Enabled := False;
  //
  txt_kind.Text := Trim(qe_pj_add.FieldByName('pj_kind').AsString);
  txt_gg.Text := Trim(qe_pj_add.FieldByName('pj_gg').AsString);
  txt_name.Text := Trim(qe_pj_add.FieldByName('pj_name').AsString);
  txt_unit.Text := Trim(qe_pj_add.FieldByName('pj_unit').AsString);
  txt_ck_sum.Text := FloatToStr(qe_pj_add.FieldByName('pj_ck_sum').Value);
  txt_fk_sum.Text := FloatToStr(qe_pj_add.FieldByName('pj_fk_sum').Value);
  //
  cur_sum := qe_pj_add.FieldByName('pj_fk_sum').Value;
  cur_sum1 := qe_pj_add.FieldByName('pj_ck_sum').Value;
  //
  qe_pj_add.Edit;
  txt_fk_sum.SetFocus;
end;

procedure Tfrm_pj_tk1.ExeDelandInit;
var
  intSum: Double;
  intsum1: Double;
begin
  if MessageBox(Handle, '确实要删除当前记录?', '沈阳信德', MB_ICONQUESTION or MB_OKCANCEL) = ID_OK then begin
    intSum := qe_pj_add.FieldByName('pj_ck_sum').Value;
    intSum1 := qe_pj_add.FieldByName('pj_fk_sum').Value;
    if (intSum > 0.01) or (intSum1 > 0.01) then begin
      MessageBox(Handle, '配件已经出库或者配件尚有预退库数量,不能删除', '沈阳信德', MB_ICONQUESTION or MB_OK);
      Exit;
    end;
    sp_del_from_pj_add.ParamByName('@ipj_id').Value := qe_pj_add.FieldByName('pj_id').AsInteger;
    sp_del_from_pj_add.ExecProc;
    //
    qe_pj_add.Close;
    qe_pj_add.Open;
    qe_pj_add.First;
  end;
  //
  EnabledComponent(dsBrowse);
end;

procedure Tfrm_pj_tk1.QueryResult;
var
  intResult: integer;
begin
  intResult := 0;
  //
  qe_jy1.Close;
  qe_jy1.ParamByName('ibh').Value := Trim(combo_bh.Text);
  qe_jy1.Open;
  qe_jy1.First;
  //
  if (qe_jy1.Bof) and (qe_jy1.Eof) then begin
    MessageBox(Handle, '未找到此委托编号相关的登记信息', '沈阳信德', MB_ICONQUESTION or MB_OK);
    intResult := 1;
  end;
  //
  if intResult = 0 then begin
    qe_pj_add.Close;
    qe_pj_add.ParamByName('ibh').Value := Trim(combo_bh.Text);
    qe_pj_add.Open;
    qe_pj_add.First;
    //
    cur_bh := Trim(combo_bh.Text);
    cur_cph := Trim(qe_jy1.FieldByName('dj_cph').AsString);
    cur_cx := Trim(qe_jy1.FieldByName('dj_cx').AsString);
    cur_cz := Trim(qe_jy1.FieldByName('dj_cz').AsString);
    cur_dph := Trim(qe_jy1.FieldByName('dj_dph').AsString);
    //
    EnabledComponent(dsBrowse);
  end else if intResult = 1 then begin
    qe_pj_add.Close;
    qe_jy1.Close;
    //
    cmd_edit.Enabled := False;
    cmd_save.Enabled := False;
    cmd_cancel.Enabled := False;
    cmd_del.Enabled := False;
    cmd_print.Enabled := False;
    cmd_print1.Enabled := False;
  end;
end;

procedure Tfrm_pj_tk1.ControlChange(Sender: TObject);
begin
  if qe_pj_add.State = dsEdit then
    EnabledComponent(dsEdit);
end;

procedure Tfrm_pj_tk1.ControlKeypress(Sender: TObject; var Key: Char);
begin
  if not (((Key >= '0') and (Key <= '9')) or (Ord(Key) = 8) or (Ord(Key) = 46) or (Ord(Key) = 13)) then
    Key := Chr(0);
end;

procedure Tfrm_pj_tk1.ControlKeypress1(Sender: TObject; var Key: Char);
begin
  if Ord(Key) = 13 then QueryResult;
end;

procedure Tfrm_pj_tk1.EnabledComponent(intState: TDataSetState);
begin
  case intState of
    dsBrowse: begin
                cmd_save.Enabled := False;
                cmd_cancel.Enabled := False;
                cmd_del.Enabled := True;
                cmd_print.Enabled := True;
                cmd_print1.Enabled := True;
                cmd_edit.Enabled := True;
                //
                if (qe_pj_add.Bof) and (qe_pj_add.Eof) then begin
                  cmd_del.Enabled := False;
                  cmd_print.Enabled := False;
                  cmd_print1.Enabled := False;
                  cmd_edit.Enabled := False;
                end;
              end;
    dsEdit  : begin
                cmd_save.Enabled := True;
                cmd_cancel.Enabled := True;
                cmd_del.Enabled := False;
                cmd_print.Enabled := False;
                cmd_edit.Enabled := False;
                cmd_print1.Enabled := False;
              end;
  end;
end;

procedure Tfrm_pj_tk1.cmd_qClick(Sender: TObject);
begin
  QueryResult;
end;

procedure Tfrm_pj_tk1.cmd_editClick(Sender: TObject);
begin
  EditInit;
end;

procedure Tfrm_pj_tk1.cmd_saveClick(Sender: TObject);
var
  intResult: integer;
begin
  intResult := RuleCheck;
  if intResult = 1 then
    Exit
  else begin
    qe_pj_add.Post;
    SaveInit;
  end;
end;

procedure Tfrm_pj_tk1.cmd_cancelClick(Sender: TObject);
begin
  CancelInit;
end;

procedure Tfrm_pj_tk1.cmd_delClick(Sender: TObject);
begin
  ExeDelandInit;
end;

procedure Tfrm_pj_tk1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
  Action := caFree;
end;

procedure Tfrm_pj_tk1.FormDestroy(Sender: TObject);
begin
  qe_pj_add := nil;
  qe_jy := nil;
  qe_jy1 := nil;
  //
  frm_pj_tk1 := nil;
end;

procedure Tfrm_pj_tk1.FormCloseQuery(Sender: TObject;
  var CanClose: Boolean);
var
  intResult: integer;
begin
  CanClose := True;
  //
  if (qe_pj_add.State = dsEdit) then begin
    if cmd_save.Enabled then begin
      intResult := MessageBox(Handle, '记录正被编辑, 是否在关闭窗体前保存所作修改?', '沈阳信德', MB_YESNOCANCEL or MB_ICONQUESTION);
      if intResult = ID_YES then begin
        intResult := RuleCheck;
        if intResult = 1 then begin
          CanClose := False;
          Exit;
        end;
        qe_pj_add.Post;
        CanClose := True;
      end else if intResult = ID_NO then begin
        qe_pj_add.Cancel;
        CanClose := True;
      end else if intResult = ID_CANCEL then
        CanClose := False;
    end;
  end;
  //
  if CanClose then begin
    qe_pj_add.Close;
    qe_jy.Close;
    qe_jy1.Close;
    //
    frm_main.mu_yw_gl_tk.Enabled := True;
    frm_main.current_handle := 0;
    //
    frm_main.Tag := 1; //标识窗体能否关闭; 1-能关闭;2-不能关闭;
  end;
end;

procedure Tfrm_pj_tk1.FormShow(Sender: TObject);
begin
  qe_pj_add.Close;
  InitBHList;
  //
  frm_main.mu_yw_gl_tk.Enabled := False;
  //
  frm_main.current_handle := Handle;
  //
  cmd_edit.Enabled := False;
  cmd_save.Enabled := False;
  cmd_cancel.Enabled := False;
  cmd_del.Enabled := False;
  cmd_print.Enabled := False;
  cmd_print1.Enabled := False;
  //
  combo_bh.SetFocus;
end;

procedure Tfrm_pj_tk1.cmd_printClick(Sender: TObject);
begin
  ImportInit;
end;

procedure Tfrm_pj_tk1.cmd_print1Click(Sender: TObject);
begin
  PrintInit;
end;

procedure Tfrm_pj_tk1.combo_bhChange(Sender: TObject);
begin
  QueryResult;
end;

end.

⌨️ 快捷键说明

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