📄 mfvalim.pas
字号:
unit MfValiM;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
ComCtrls, Grids, DBGrids, StdCtrls, Mask, Buttons,adodb,db,Comobj,
DBCtrls, Spin, ExtCtrls, ToolWin, ImgList;
type
TMfVali = class(TForm)
Panel1: TPanel;
DBGrid3: TDBGrid;
DBGrid1: TDBGrid;
CoolBar1: TCoolBar;
ToolBar1: TToolBar;
ToolButton1: TToolButton;
Panel2: TPanel;
Label4: TLabel;
DBEdit1: TDBEdit;
ImageList1: TImageList;
Panel3: TPanel;
Panel4: TPanel;
Label2: TLabel;
Edit1: TEdit;
ReBtn: TBitBtn;
VaBtn: TBitBtn;
CaBtn: TBitBtn;
procedure ReBtnClick(Sender: TObject);
procedure Edit1KeyPress(Sender: TObject; var Key: Char);
procedure Edit1Change(Sender: TObject);
procedure CaBtnClick(Sender: TObject);
procedure VaBtnClick(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure ToolButton1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
MfVali: TMfVali;
implementation
{$R *.DFM}
uses datamz2, Main,ValiConn2M, datamz;
procedure TMfVali.ReBtnClick(Sender: TObject);
begin
if (dbedit1.Text='') or (dbedit1.Text=null) or
(MainForm.dbedit1.Text='') or (MainForm.dbedit1.Text=null)then
begin
showmessage('复核用户应该先登录!');
exit;
end;
if dbedit1.Text=MainForm.dbedit1.Text then
begin
showmessage('确认用户与复核用户不能是同一个人!');
exit;
end;
with datamzf2.XyMzXmValiQuery1 do
begin
active:=false;
sql.Clear;
sql.Add('select xm_name,hz_name,sk_man,hj_date,ys_money ');
sql.add('from MzYpSf,XmId ');
sql.add('where MzYpSf.xm_id=XmId.xm_id and ');
sql.add('XmId.xy_iden=1 and ');
sql.add('MzYpSf.hj_id=:hjid');
Parameters.ParamByName('hjid').Value := edit1.text;
end;
with datamzf2.XyMzvaliQuery1 do
begin
active:=false;
sql.Clear;
sql.Add('select yp_name,yp_spec,');
sql.add('yp_unit,yp_batch,yp_amou,ls_price');
sql.add('from XyMzVali,XyId');
sql.add('where XyMzVali.yp_id=XyId.yp_id and ');
sql.add('XyMzVali.hj_id=:hjid');
Parameters.ParamByName('hjid').Value := edit1.text;
end;
try
datamzf2.XyMzXmValiQuery1.Active:=true;
datamzf2.XyMzvaliQuery1.active:=true;
if (datamzf2.XyMzValiQuery1.RecordCount<=0)
or (datamzf2.XyMzXmValiQuery1.RecordCount<=0) then
begin
showmessage('未发现相关纪录!');
datamzf2.XyMzXmValiQuery1.Active:=false;
datamzf2.XyMzValiQuery1.Active:=false;
edit1.SetFocus;
exit;
end;
datamzf2.XyMzvaliSource1.Enabled:=true;
datamzf2.XyMzXmvaliSource1.Enabled:=true;
Cabtn.Enabled:=true;
Vabtn.enabled:=true;
Rebtn.enabled:=false;
edit1.Enabled:=false;
Vabtn.SetFocus;
except
on E1:EOleException do
showmessage(E1.message);
on E:EDatabaseError do
showmessage(E.message);
else
showmessage('发现异常,操作被取消!');
end;
end;
procedure TMfVali.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
case key of
#13:
if Rebtn.Enabled=true then
rebtn.SetFocus;
#48..#57:;
#8:;
else
key:=#0;
end
end;
procedure TMfVali.Edit1Change(Sender: TObject);
var
p:pchar;
s:string[20];
begin
s:=edit1.text;
p:=@s;
if strlen(p)>0 then
rebtn.enabled:=true
else
rebtn.enabled:=false;
end;
procedure TMfVali.CaBtnClick(Sender: TObject);
var
ms:integer;
begin
ms:=Application.messagebox('确定放弃确认此处方?','提示',MB_OKCANCEL);
if ms=1 then
begin
datamzf2.XyMzvaliQuery1.active:=false;
datamzf2.XyMzXmValiQuery1.Active:=false;
Cabtn.Enabled:=false;
Vabtn.enabled:=false;
Rebtn.enabled:=true;
edit1.Enabled:=true;
edit1.SetFocus;
end;
end;
procedure TMfVali.VaBtnClick(Sender: TObject);
var
ms:integer;
begin
ms:=Application.messagebox('确定确认此处方?','提示',MB_OKCANCEL);
if ms=1 then
begin
with datamzf2.XyMzXmvaliQuery1 do
begin
active:=false;
sql.Clear;
sql.Add('update MzYpSf ');
sql.add('set qr_man=:UserName ');
sql.add(',mf_iden=1');
sql.add('where hj_id=:hjid');
Parameters.ParamByName('UserName').Value := mainform.dbedit1.text;
Parameters.ParamByName('hjid').Value := edit1.text;
datamzf2.XyMzXmValiSource1.Enabled:=false;
end;
with datamzf2.XyMzvaliQuery1 do
begin
active:=false;
sql.Clear;
sql.Add('update XyMzVali ');
sql.add('set qr_man=:UserName,');
sql.add('fh_man=:UserName1, ');
sql.add('mf_iden=1 ');
sql.add('where XyMzVali.hj_id=:hjid');
Parameters.ParamByName('UserName').Value := MainForm.dbedit1.text;
Parameters.ParamByName('hjid').Value := edit1.text;
Parameters.ParamByName('UserName1').Value := dbedit1.text;
datamzf2.XyMzvaliSource1.Enabled:=false;
Cabtn.Enabled:=false;
Vabtn.enabled:=false;
Rebtn.enabled:=true;
edit1.Enabled:=true;
edit1.SetFocus;
end;
datamzf.XyMzValiConnection.BeginTrans;
try
datamzf2.XyMzValiQuery1.ExecSQL;
datamzf2.XyMzXmValiQuery1.ExecSQL;
datamzf.XyMzValiConnection.CommitTrans;
showmessage('确认成功!');
except
on E1:EOleException do
begin
datamzf.XyMzValiConnection.RollbackTrans;
showmessage(E1.message);
end;
on E:EDatabaseError do
begin
datamzf.XyMzValiConnection.RollbackTrans;
showmessage(E.message);
end;
else
begin
datamzf.XyMzValiConnection.RollbackTrans;
showmessage('发现异常,操作被取消!');
end;
end;
end;
end;
procedure TMfVali.FormClose(Sender: TObject; var Action: TCloseAction);
begin
datamzf2.XyMzvaliQuery1.active:=false;
datamzf2.XyMzXmValiQuery1.Active:=false;
datamzf2.XyMzLsConnection1.Connected:=false;
MfVali.Release;
end;
procedure TMfVali.ToolButton1Click(Sender: TObject);
begin
valiconn2.ShowModal;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -