📄 cstm.pas
字号:
qcst.insert;
editdbedit2.SetFocus ;
DisableBtn;
btn_save.Enabled :=true;
btn_cancel.Enabled :=true;
btn_save1.Enabled :=true;
btn_cancel1.Enabled :=true;
btn_delete2.Enabled:=true;
btn_addnew2.Enabled:=true;
btn_edit2.Enabled :=true;
//给下面审核栏默认值:
qcst.fieldbyname('办事处').AsString :=myoffice;
//日期:
Present:= Now;
qcst.fieldbyname('录入日期').AsDateTime :=present;
//人名:
with queryuse do begin
if active then close;
unprepare;
sql.Clear;
sql.Add('select 主管,审核,录入 from pub_z_client');
prepare;
open;
last;
qcst.fieldbyname('主管').AsString:=fieldbyname('主管').AsString;
qcst.fieldbyname('审核').AsString:=fieldbyname('审核').AsString;
qcst.fieldbyname('录入').AsString:=fieldbyname('录入').AsString;
end;
end;
procedure TFrm_cstm.btn_saveClick(Sender: TObject);
begin
if (DBEdit2.Text='') or (DBEdit2.Text=null) then
begin
application.MessageBox('客户号不能为空!','提示',MB_OK);
exit;
end;
if (editDBEdit2.Text='') or (editDBEdit2.Text=null)then
begin
application.MessageBox('客户名称均不能为空!','提示',MB_OK);
exit;
end;
if not isedit then
begin
ADOQuery1.Active :=false;
ADOQuery1.SQL.Clear ;
ADOQuery1.SQL.Add ('select 客户名称 from pub_z_client where 客户号='''+trim(DbEdit2.Text) +'''');
ADOQuery1.Active :=true;
end;
if not ADOQuery1.Eof then
begin
showmessage ( ' 数据库中已有该客户号,请从新输入!');
exit;
end;
ADOQuery1.Active :=false;
with data.zxjxdata do begin
if not DatabaseJxw.intransaction then DatabaseJxw.starttransaction;
try
qcst.Post ;
//qcst.ApplyUpdates;
qperson.ApplyUpdates ;
DatabaseJxw.commit;
// qcst.CommitUpdates ;
// qperson.CommitUpdates ;
//锁住所有文本框
LockEdit;
//使按钮有效
EnableBtn ;
btn_save.Enabled :=false;
btn_cancel.Enabled :=false;
btn_save1.Enabled :=false;
btn_cancel1.Enabled :=false;
except
DatabaseJxw.Rollback;
raise;
end;
end;
{ qcst.Close ;
qcst.Open ;
qperson.Close ;
qperson.Open ;
}
end;
procedure TFrm_cstm.btn_editClick(Sender: TObject);
begin
qcst.Edit ;
isedit:=true;
kehuhao:=dbedit2.Field.CurValue ;
//让文本框可以编辑
UnlockEdit;
//使一些按钮失效
DisableBtn;
btn_save.Enabled :=true;
btn_cancel.Enabled :=true;
btn_save1.Enabled :=true;
btn_cancel1.Enabled :=true;
btn_addnew2.Enabled:=true;
if qperson.RecordCount>0 then
begin
btn_edit2.Enabled :=true;
btn_delete2.Enabled:=true;
end;
end;
procedure TFrm_cstm.btn_cancelClick(Sender: TObject);
begin
qcst.Cancel ;
lockedit;
enablebtn;
btn_cancel.Enabled :=false;
btn_save.Enabled :=false;
btn_cancel1.Enabled :=false;
btn_save1.Enabled :=false;
end;
procedure TFrm_cstm.btn_deleteClick(Sender: TObject);
begin
if qcst.RecordCount <>0 then
qcst.Delete
else
begin
showmessage('没有记录可以删除!');
exit;
end;
// qcst.ApplyUpdates;
lockedit;
enablebtn;
btn_delete.Enabled :=true;
btn_save.Enabled :=false;
btn_delete1.Enabled :=true;
btn_save1.Enabled :=false;
end;
//***************以上是按纽操作。*********************
procedure TFrm_cstm.FormCreate(Sender: TObject);
begin
with queryuse do begin
if active then close;
unprepare;
sql.Clear;
sql.Add('select 办事处名称 from pub_z_office');
prepare;
open;
if findfirst then begin
while not eof do begin
DBComboBox1.Items.Add(fieldbyname('办事处名称').AsString);
next;
end;
end;
end;
if not qcst.Active then qcst.open;
lockedit;
enablebtn;
btn_delete.Enabled :=true;
btn_save.Enabled :=false;
btn_delete1.Enabled :=true;
btn_save1.Enabled :=false;
dbgrid1.readonly :=true;
end;
procedure TFrm_cstm.qcstAfterScroll(DataSet: TDataSet);
begin
with qperson do begin
if active then close;
unprepare;
parambyname('khh').AsString:=qcst.fieldbyname('客户号').asstring;
prepare;
open;
end;
end;
procedure TFrm_cstm.btn_addnew2Click(Sender: TObject);
begin
// if qpreson.last
qperson.Append;
qperson.FieldByName('客户号').AsString:=qcst.fieldbyname('客户号').asstring;
qperson.FieldByName('录入日期').AsString:=qcst.fieldbyname('录入日期').asstring;
qperson.FieldByName('办事处').AsString:=qcst.fieldbyname('办事处').asstring;
dbgrid1.readonly :=false;
end;
procedure TFrm_cstm.btn_delete2Click(Sender: TObject);
begin
if qperson.RecordCount <>0 then
qperson.Delete;
qperson.ApplyUpdates;
end;
procedure TFrm_cstm.btn_first1Click(Sender: TObject);
begin
btn_firstClick(btn_first);
end;
procedure TFrm_cstm.btn_prev1Click(Sender: TObject);
begin
btn_prev1Click(btn_prev);
end;
procedure TFrm_cstm.btn_next1Click(Sender: TObject);
begin
btn_nextClick(btn_next);
end;
procedure TFrm_cstm.btn_last1Click(Sender: TObject);
begin
btn_lastClick(btn_last);
end;
procedure TFrm_cstm.btn_addnew1Click(Sender: TObject);
begin
btn_addnewClick(btn_addnew);
end;
procedure TFrm_cstm.btn_edit1Click(Sender: TObject);
begin
btn_editClick(btn_edit);
end;
procedure TFrm_cstm.btn_cancel1Click(Sender: TObject);
begin
btn_cancelClick(btn_cancel);
end;
procedure TFrm_cstm.btn_save1Click(Sender: TObject);
begin
btn_saveClick(btn_save);
end;
procedure TFrm_cstm.btn_delete1Click(Sender: TObject);
begin
btn_deleteClick(btn_delete);
end;
procedure TFrm_cstm.btn_edit2Click(Sender: TObject);
begin
if qperson.RecordCount <>0 then
begin
qperson.Edit;
dbgrid1.Enabled :=true;
end;
end;
procedure TFrm_cstm.btn_qryClick(Sender: TObject);
begin
//unit_wxp.WhichForm:=1;
//Application.CreateForm(TFrm_search, Frm_search);
//frm_search.Showmodal ;
Application.CreateForm(TForm_search, Form_search);
form_search.TransADO:= qcst ;
unit_wxp.WhichForm:=30;
form_search.Showmodal ;
end;
procedure TFrm_cstm.btn_brsClick(Sender: TObject);
begin
with qcst do begin
if active then close;
sql.Clear;
sql.Add('select * from pub_z_client');
open;
Filtered :=false;
// DBGrid2.DataSource :=dscst;
end;
end;
procedure TFrm_cstm.btn_prtClick(Sender: TObject);
begin
frp_cstm:=Tfrp_cstm.Create(application);
frp_cstm.QuickRep1.Preview;
frp_cstm.free;
end;
procedure TFrm_cstm.FormKeyPress(Sender: TObject; var Key: Char);
begin
if Key = #13 then
begin
Key := #0;
Perform(WM_NEXTDLGCTL, 0, 0);
end;
end;
procedure TFrm_cstm.FormDestroy(Sender: TObject);
begin
frm_cstm:=nil
end;
procedure TFrm_cstm.qcstAfterOpen(DataSet: TDataSet);
begin
label34.caption:=inttostr(qcst.RecordCount ) ;
end;
procedure TFrm_cstm.DBEdit2Exit(Sender: TObject);
begin
if not((isedit) and (dbedit2.Field.CurValue= kehuhao)) then
begin
ADOQuery1.Active :=false;
ADOQuery1.SQL.Clear ;
ADOQuery1.SQL.Add ('select 客户名称 from pub_z_client where 客户号='''+trim(DbEdit2.Text) +'''');
ADOQuery1.Active :=true;
if not ADOQuery1.Eof then
showmessage ( ' 数据库中已有该客户号,请重新输入!');
ADOQuery1.Active :=false;
end;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -