?? pzsh.pas
字號:
unit pzsh;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ExtCtrls, Grids, DBGrids, DB, StdCtrls, Buttons;
type
TForm5 = class(TForm)
Panel1: TPanel;
Panel2: TPanel;
Label1: TLabel;
ComboBox1: TComboBox;
SpeedButton1: TSpeedButton;
CheckBox1: TCheckBox;
Label2: TLabel;
DataSource1: TDataSource;
DBGrid1: TDBGrid;
Panel3: TPanel;
Label3: TLabel;
Edit1: TEdit;
ComboBox2: TComboBox;
Label4: TLabel;
Panel4: TPanel;
BitBtn1: TBitBtn;
BitBtn2: TBitBtn;
BitBtn3: TBitBtn;
procedure FormShow(Sender: TObject);
procedure BitBtn2Click(Sender: TObject);
procedure SpeedButton1Click(Sender: TObject);
procedure ComboBox2KeyPress(Sender: TObject; var Key: Char);
procedure BitBtn1Click(Sender: TObject);
procedure Edit1KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure BitBtn1MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
procedure BitBtn1MouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form5: TForm5;
implementation
uses DataModal4;
{$R *.dfm}
procedure TForm5.FormShow(Sender: TObject);
begin
BitBtn2.OnClick(Sender);
end;
procedure TForm5.BitBtn2Click(Sender: TObject);
begin
CheckBox1.Checked := False;
ComboBox2.Text := '';
DataSource1.DataSet := Nil;
BitBtn1.Enabled := False;
ComboBox1.Clear;
Edit1.Clear;
with Da.ADOQuery1 do
begin
Close;
SQL.Clear;
SQL.Add('select 憑證號 from 憑證表 where 是否通過 = ''否''');
Open;
end;
if Da.ADOQuery1.RecordCount>0 then
while Not Da.ADOQuery1.Eof do
begin
ComboBox1.Items.Add(Da.ADOQuery1.FieldByName('憑證號').Value);
Da.ADOQuery1.Next;
end;
end;
procedure TForm5.SpeedButton1Click(Sender: TObject);
begin
if CheckBox1.Checked = False then
begin
with Da.ADOQuery2 do
begin
Close;
SQL.Clear;
SQL.Add('select * from 憑證明細表 where 憑證號 = :a');
Parameters.ParamByName('a').Value := Trim(ComboBox1.Text);
Open;
end;
if Da.ADOQuery2.RecordCount>0 then
begin
DataSource1.DataSet := da.ADOQuery2;
BitBtn1.Enabled := True;
end
else
begin
BitBtn1.Enabled := False;
Application.MessageBox('該憑證數據不存在。','提示',64);
DataSource1.DataSet := Nil;
end;
end
else
begin
with Da.ADOQuery2 do
begin
Close;
SQL.Clear;
SQL.Add('select * from 憑證明細表 where 憑證號 in ( Select 憑證號 from 憑證表 where 是否通過 = ''否'')');
Open;
end;
if Da.ADOQuery2.RecordCount>0 then
begin
DataSource1.DataSet := da.ADOQuery2;
BitBtn1.Enabled := True;
end
else
begin
BitBtn1.Enabled := False;
Application.MessageBox('該憑證數據不存在。','提示',64);
DataSource1.DataSet := Nil;
end;
end;
end;
procedure TForm5.ComboBox2KeyPress(Sender: TObject; var Key: Char);
begin
Key := #0;
end;
procedure TForm5.BitBtn1Click(Sender: TObject);
begin
if (Trim(Edit1.Text)<>'')and(Trim(ComboBox2.Text)<>'') then
if Trim(ComboBox2.Text)='是' then
begin
Try
Da.ADOConnection1.BeginTrans;
Da.ADOQuery2.First;
while Not Da.ADOQuery2.Eof do
begin
with da.ADOQuery1 do
begin
Close;
SQL.Clear;
SQL.Add('update 憑證表 set 審核人 = :a , 是否通過 = ''是'' where 憑證號 = :b');
Parameters.ParamByName('a').Value := Trim(Edit1.Text);
Parameters.ParamByName('b').Value := Trim(Da.ADOQuery2.FieldByName('憑證號').Value);
ExecSQL;
end;
Da.ADOQuery2.Next;
end;
Da.ADOConnection1.CommitTrans;
Application.MessageBox('操作成功,審核通過。','提示',64);
BitBtn1.Enabled := False;
BitBtn2.OnClick(Sender);
Except
Da.ADOConnection1.RollbackTrans;
Application.MessageBox('操作失敗。','提示',64);
end;
end
else if Trim(ComboBox2.Text)='否' then
begin
while Not Da.ADOQuery2.Eof do
begin
with da.ADOQuery1 do
begin
Close;
SQL.Clear;
SQL.Add('update 憑證表 set 審核人 = :a where 憑證號 = :b');
Parameters.ParamByName('a').Value := Trim(Edit1.Text);
Parameters.ParamByName('b').Value := Trim(Da.ADOQuery2.FieldByName('憑證號').Value);
ExecSQL;
end;
Da.ADOQuery2.Next;
end;
Application.MessageBox('操作成功,審核沒有通過。','提示',64);
BitBtn1.Enabled := False;
BitBtn2.OnClick(Sender);
end;
end;
procedure TForm5.Edit1KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if Key = VK_ReTurn then
if Trim(Edit1.Text)<>'' then
ComboBox2.SetFocus;
end;
procedure TForm5.BitBtn1MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
TBitBtn(Sender).Font.Color := clRed;
end;
procedure TForm5.BitBtn1MouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
TBitBtn(Sender).Font.Color := clBlue;
end;
end.
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -