📄 cl_dj.pas
字号:
end;
end;
procedure Tfrm_cl_dj.cb_bxClick(Sender: TObject);
begin
if qe_cl.State = dsEdit then
EnabledComponent(dsEdit)
else if qe_cl.State = dsInsert then
EnabledComponent(dsInsert);
//
if (qe_cl.State = dsEdit) or (qe_cl.State = dsInsert) then begin
if cb_bx.Checked then begin
lbl_kind.Caption := '保险类型:';
combo_wx_kind.Visible := False;
combo_bx_kind.Visible := True;
combo_bx_kind.ItemIndex := -1;
combo_bx_kind.SetFocus;
end else begin
lbl_kind.Caption := '维修类型:';
combo_wx_kind.Visible := True;
combo_bx_kind.Visible := False;
combo_wx_kind.ItemIndex := -1;
combo_wx_kind.SetFocus;
end;
end;
end;
procedure Tfrm_cl_dj.cmd_newClick(Sender: TObject);
var
intResult: integer;
begin
if (qe_cl.State = dsInsert) and (cmd_save.Enabled) then begin
intResult := RuleCheck;
if intResult = 1 then
Exit
else begin
controlDj(dsInsert);
qe_cl.Post;
qe_cl.Close;
qe_cl.Open;
qe_cl.Last;
end;
end else begin
if qe_cl.State = dsInsert then
qe_cl.Cancel;
end;
//
NewInit;
end;
procedure Tfrm_cl_dj.cmd_editClick(Sender: TObject);
begin
EditInit;
end;
procedure Tfrm_cl_dj.cmd_saveClick(Sender: TObject);
var
intResult: integer;
begin
intResult := RuleCheck;
if intResult = 1 then
Exit
else if intResult = 0 then begin
if qe_cl.State = dsInsert then begin
controlDj(dsInsert);
qe_cl.Post;
qe_cl.Close;
qe_cl.Open;
qe_cl.Last;
end else if qe_cl.State = dsEdit then begin
controlDj(dsEdit);
qe_cl.Post;
end;
end;
//
SaveInit;
end;
procedure Tfrm_cl_dj.cmd_cancelClick(Sender: TObject);
begin
CancelInit;
end;
procedure Tfrm_cl_dj.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Action := caFree;
end;
procedure Tfrm_cl_dj.FormShow(Sender: TObject);
begin
qe_cl.Close;
qe_cl.ParamByName('iczr').Value := frm_main.user_name;
qe_cl.Open;
qe_cl.First;
//
qe_bx.Close;
qe_bx.Open;
qe_bx.First;
while not qe_bx.Eof do begin
combo_bx_kind.Items.Add(Trim(qe_bx.FieldByName('kind_name').AsString));
qe_bx.Next;
end;
qe_bx.Close;
//
EnabledComponent(dsBrowse);
//
frm_main.mu_yw_gl_dj.Enabled := False;
frm_main.cmd_dj.Enabled := False;
//
frm_main.current_handle := Handle;
end;
procedure Tfrm_cl_dj.FormCloseQuery(Sender: TObject;
var CanClose: Boolean);
var
intResult: integer;
begin
CanClose := True;
//
if (qe_cl.State = dsEdit) or (qe_cl.State = dsInsert) 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;
if qe_cl.State = dsInsert then
controlDj(dsInsert)
else if qe_cl.State = dsEdit then
controlDj(dsEdit);
qe_cl.Post;
CanClose := True;
end else if intResult = ID_NO then begin
qe_cl.Cancel;
CanClose := True;
end else if intResult = ID_CANCEL then
CanClose := False;
end;
end;
//
if CanClose then begin
sp_update_mode_for_cl_dj.ParamByName('@idj_czr').Value := frm_main.user_name;
sp_update_mode_for_cl_dj.ExecProc;
//
qe_cl.Close;
qe_jy.Close;
qe_bx.Close;
//
frm_main.mu_yw_gl_dj.Enabled := True;
frm_main.cmd_dj.Enabled := True;
frm_main.current_handle := 0;
//
frm_main.Tag := 1; //标识窗体能否关闭; 1-能关闭;2-不能关闭;
end;
end;
procedure Tfrm_cl_dj.FormDestroy(Sender: TObject);
begin
qe_cl := nil;
qe_jy := nil;
qe_bx := nil;
//
frm_cl_dj := nil;
end;
procedure Tfrm_cl_dj.cmd_printClick(Sender: TObject);
var
intPos: integer;
intPos1: integer;
cur_yj: Double;
begin
combo_p.Items.Clear;
combo_p.items.Assign(Printer.Printers);
if combo_p.Items.Count = 0 then begin
MessageBox(Handle, '没有可用的打印机,请添加打印机', '沈阳信德', MB_ICONQUESTION or MB_OK);
Exit;
end;
if not Assigned(frm_yj_select) then begin
frm_yj_select := Tfrm_yj_select.Create(Application);
frm_yj_select.ShowModal;
end;
//
if frm_log.yj_jsfs = - 1 then Exit;
//
cur_yj := StrToFloat(Trim(txt_yj.Text));
cur_yj := Int(cur_yj) + Round((Frac(cur_yj)*100))/100;
//
qe_jy.Close;
qe_jy.SQL.Clear;
qe_jy.SQL.Add('SELECT * FROM CL_DJ WHERE DJ_BH = ''' + Trim(txt_dj_bh.Caption) + ''' AND DJ_ZF_BS = 0');
qe_jy.Open;
qe_jy.First;
if (qe_jy.Bof) and (qe_jy.Eof) then begin
MessageBox(Handle, '该登记已经作废,请按<刷新登记>刷新当前登记', '沈阳信德', MB_ICONQUESTION or MB_OK);
Exit;
end;
intPos := qe_jy.FieldByName('dj_yj_jsbs').AsInteger;
intPos1 := qe_jy.FieldByName('dj_yj_print').AsInteger;
qe_jy.Close;
if intPos = 0 then begin
sp_up_cl_dj.ParamByName('@ibh').Value := Trim(txt_dj_bh.Caption);
sp_up_cl_dj.Prepare;
sp_up_cl_dj.ExecProc;
sp_up_cl_dj.UnPrepare;
sp_insert_into_day.ParamByName('@idate').Value := frm_log.controlDate(DateToStr(Date()));
sp_insert_into_day.ParamByName('@izy').Value := '(押金)-' + Trim(txt_cph.Text) + '-' + Trim(txt_cx.Text) + '收款';
if frm_log.yj_jsfs = 1 then
sp_insert_into_day.ParamByName('@ikm').Value := '现金'
else
sp_insert_into_day.ParamByName('@ikm').Value := '银行存款';
sp_insert_into_day.ParamByName('@ijf').Value := cur_yj;
sp_insert_into_day.ParamByName('@idf').Value := 0;
sp_insert_into_day.ParamByName('@izy_id').Value := 4;
sp_insert_into_day.ParamByName('@idj_bh').Value := Trim(txt_dj_bh.Caption);
sp_insert_into_day.ExecProc;
//
YJ_BH := SetNewBH1(4);
frm_print.pc_main.ActivePageIndex := 0;
frm_print.lbl_date.Caption := frm_log.controlDate(DateToStr(Date()));
if frm_log.yj_jsfs = 1 then
frm_print.lbl_fs.Caption := '现金'
else
frm_print.lbl_fs.Caption := '支票';
frm_print.lbl_cap.Caption := frm_log.cur_gs_name;
frm_print.lbl_tel.Caption := frm_log.cur_gs_tel;
frm_print.lbl_addr.Caption := frm_log.cur_gs_addr;
frm_print.lbl_bh.Caption := 'YJ' + YJ_BH;
frm_print.lbl_jnr.Caption := Trim(txt_cz.Text);
frm_print.lbl_dw.Caption := Trim(txt_czdw.Text);
frm_print.lbl_cph.Caption := Trim(txt_cph.Text);
frm_print.lbl_cx.Caption := Trim(txt_cx.Text);
frm_print.lbl_dx.Caption := frm_log.shiftNum(cur_yj);
frm_print.lbl_xx.Caption := frm_log.ControlNum(FloatToStr(cur_yj)) + '元';
frm_print.lbl_czr.Caption := frm_main.user_name;
frm_print.qr_yj.Print;
end else begin
if intPos1 = 1 then begin
MessageBox(Handle, '押金凭证已经打印,要想重新打印请通知财务员', '沈阳信德', MB_ICONQUESTION or MB_OK);
Exit;
end else begin
sp_up_cl_dj.ParamByName('@ibh').Value := Trim(txt_dj_bh.Caption);
sp_up_cl_dj.ExecProc;
frm_print.pc_main.ActivePageIndex := 0;
frm_print.lbl_date.Caption := frm_log.controlDate(DateToStr(Date()));
if frm_log.yj_jsfs = 1 then
frm_print.lbl_fs.Caption := '现金'
else
frm_print.lbl_fs.Caption := '支票';
frm_print.lbl_cap.Caption := frm_log.cur_gs_name;
frm_print.lbl_tel.Caption := frm_log.cur_gs_tel;
frm_print.lbl_addr.Caption := frm_log.cur_gs_addr;
frm_print.lbl_bh.Caption := 'YJ' + YJ_BH;
frm_print.lbl_jnr.Caption := Trim(txt_cz.Text);
frm_print.lbl_dw.Caption := Trim(txt_czdw.Text);
frm_print.lbl_cph.Caption := Trim(txt_cph.Text);
frm_print.lbl_cx.Caption := Trim(txt_cx.Text);
frm_print.lbl_dx.Caption := frm_log.shiftNum(cur_yj);
frm_print.lbl_xx.Caption := frm_log.ControlNum(FloatToStr(cur_yj)) + '元';
frm_print.lbl_czr.Caption := frm_main.user_name;
frm_print.qr_yj.Print;
end;
end;
end;
procedure Tfrm_cl_dj.qe_clAfterScroll(DataSet: TDataSet);
begin
if qe_cl.State = dsBrowse then begin
txt_dj_bh.Caption := Trim(qe_cl.FieldByName('dj_bh').AsString);
txt_cph.Text := Trim(qe_cl.FieldByName('dj_cph').AsString);
txt_cx.Text := Trim(qe_cl.FieldByName('dj_cx').AsString);
txt_dph.Text := Trim(qe_cl.FieldByName('dj_dph').AsString);
txt_fdjh.Text := Trim(qe_cl.FieldByName('dj_fdjh').AsString);
txt_cz.Text := Trim(qe_cl.FieldByName('dj_cz').AsString);
txt_czdw.Text := Trim(qe_cl.FieldByName('dj_czdw').AsString);
txt_tel.Text := Trim(qe_cl.FieldByName('dj_tel').AsString);
txt_addr.Text := Trim(qe_cl.FieldByName('dj_addr').AsString);
txt_dj_time.EditText := Trim(qe_cl.FieldByName('dj_time').AsString);
txt_jc_time.EditText := Trim(qe_cl.FieldByName('dj_jctime').AsString);
//
if qe_cl.FieldByName('dj_bx_bs').AsInteger = 1 then begin
cb_bx.Checked := True;
lbl_kind.Caption := '保险类型:';
combo_bx_kind.ItemIndex := combo_bx_kind.Items.IndexOf(Trim(qe_cl.FieldByName('dj_bx_kind').AsString));
combo_wx_kind.Visible := False;
combo_bx_kind.Visible := True;
end else begin
cb_bx.Checked := False;
lbl_kind.Caption := '维修类型:';
combo_wx_kind.ItemIndex := combo_wx_kind.Items.IndexOf(Trim(qe_cl.FieldByName('dj_wx_kind').AsString));
combo_wx_kind.Visible := True;
combo_bx_kind.Visible := False;
end;
//
if qe_cl.FieldByName('dj_yj_bs').AsInteger = 1 then begin
cb_yj.Checked := True;
txt_yj.Text := FloatToStr(qe_cl.FieldByName('dj_yj_zf').Value);
end else begin
cb_yj.Checked := False;
txt_yj.Text := '';
end;
//
EnabledComponent(dsBrowse);
end;
end;
procedure Tfrm_cl_dj.qe_clEditError(DataSet: TDataSet; E: EDatabaseError;
var Action: TDataAction);
begin
Action := daAbort;
MessageBox(Handle, '其他用户正在编辑该记录,不能编辑', '沈阳信德', MB_ICONQUESTION or MB_OK);
//
CancelInit;
end;
procedure Tfrm_cl_dj.cmd_refreshClick(Sender: TObject);
begin
qe_cl.Close;
qe_cl.Open;
qe_cl.First;
//
EnabledComponent(dsBrowse);
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -