📄 auditingpd.pas
字号:
unit AuditingPD;
interface
uses
Windows, Graphics, Controls, Forms, SysUtils, Dialogs, ExtFunc,
SUIDBCtrls, ExtCtrls, SUIButton, StdCtrls, SUIComboBox, SUIEdit,
ComCtrls, SUISideChannel, Classes, SUIForm, DB, ADODB, Grids, DBGrids,
DBGridEh;
type
TFrmAuditingPD = class(TForm)
suiForm1: TsuiForm;
q: TADOQuery;
DataSource1: TDataSource;
g: TDBGridEh;
btnAuditing: TsuiButton;
btnUnAuditing: TsuiButton;
btnAuditingAll: TsuiButton;
btnUnAuditingAll: TsuiButton;
btnOK: TsuiButton;
tq: TADOQuery;
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure FormShow(Sender: TObject);
procedure gColEnter(Sender: TObject);
procedure btnAuditingClick(Sender: TObject);
procedure btnUnAuditingClick(Sender: TObject);
procedure btnAuditingAllClick(Sender: TObject);
procedure btnUnAuditingAllClick(Sender: TObject);
procedure gDrawColumnCell(Sender: TObject; const Rect: TRect;
DataCol: Integer; Column: TColumnEh; State: TGridDrawState);
private
{ Private declarations }
public
Auditinged,UnAuditinged,AuditingAlled,UnAuditingAlled:Boolean;
end;
var
FrmAuditingPD: TFrmAuditingPD;
implementation
uses DataModule;
{$R *.dfm}
procedure TFrmAuditingPD.FormClose(Sender: TObject; var Action: TCloseAction);
begin
q.Close;
tq.Close;
end;
procedure TFrmAuditingPD.FormShow(Sender: TObject);
begin
Auditinged:=false;
UnAuditinged:=false;
AuditingAlled:=false;
UnAuditingAlled:=false;
q.Connection:=DM.adoc;
tq.Connection:=DM.adoc;
q.Close;
q.SQL.Clear;
q.SQL.Add('select * from V_Credence where [year]='+IntToStr(DM.AccountYear)+' and [Month]='+IntToStr(DM.AccountMonth)+' order by [Year],[Month],Number,RecNo');
q.Open;
if q.RecordCount>0 then
begin
btnAuditingAll.Enabled:=true;
btnUnAuditingAll.Enabled:=true;
end;
btnAuditing.Enabled:=((q.FieldByName('AuditingOperator').AsString=''));
btnUnAuditing.Enabled:=not btnAuditing.Enabled;
end;
procedure TFrmAuditingPD.gColEnter(Sender: TObject);
begin
btnAuditing.Enabled:=((q.FieldByName('AuditingOperator').AsString=''));
btnUnAuditing.Enabled:=not btnAuditing.Enabled;
end;
procedure TFrmAuditingPD.btnAuditingClick(Sender: TObject);
var
Num:integer;
RecNo:integer;
begin
Num:=q.FieldByName('Number').AsInteger;
RecNo:=q.RecNo;
tq.Close;
tq.SQL.Clear;
tq.SQL.Add('update Credence set AuditingOperator_id='+IntToStr(DM.UserID)+' where [Year]='+IntToStr(DM.AccountYear)+' and [Month]='+IntToStr(DM.AccountMonth)+' and Number='+IntToStr(Num));
tq.ExecSQL;
tq.Close;
q.Requery;
q.RecNo:=RecNo;
btnAuditing.Enabled:=false;
btnUnAuditing.Enabled:=true;
btnAuditingAll.Enabled:=true;
btnUnAuditingAll.Enabled:=true;
Auditinged:=true; //做过审核通过凭证,用于记录 Log
end;
procedure TFrmAuditingPD.btnUnAuditingClick(Sender: TObject);
var
Num:integer;
RecNo:integer;
begin
Num:=q.FieldByName('Number').AsInteger;
RecNo:=q.RecNo;
tq.Close;
tq.SQL.Clear;
tq.SQL.Add('update Credence set AuditingOperator_id=null where [Year]='+IntToStr(DM.AccountYear)+' and [Month]='+IntToStr(DM.AccountMonth)+' and Number='+IntToStr(Num));
tq.ExecSQL;
tq.Close;
q.Requery;
q.RecNo:=RecNo;
btnAuditing.Enabled:=true;
btnUnAuditing.Enabled:=false;
btnAuditingAll.Enabled:=true;
btnUnAuditingAll.Enabled:=true;
UnAuditinged:=true; //做过取消审核通过凭证,用于记录 Log
end;
procedure TFrmAuditingPD.btnAuditingAllClick(Sender: TObject);
var
RecNo:integer;
begin
if Frm_MsgBox('系统信息','确信要成批审核尚未审核通过的凭证吗?',MsgBox_YESNO)=mrNo then Exit;
RecNo:=q.RecNo;
tq.Close;
tq.SQL.Clear;
tq.SQL.Add('update Credence set AuditingOperator_id='+IntToStr(DM.UserID)+' where [Year]='+IntToStr(DM.AccountYear)+' and [Month]='+IntToStr(DM.AccountMonth)+' and AuditingOperator_id is null');
tq.ExecSQL;
tq.Close;
q.Requery;
q.RecNo:=RecNo;
btnAuditing.Enabled:=false;
btnUnAuditing.Enabled:=true;
btnAuditingAll.Enabled:=false;
btnUnAuditingAll.Enabled:=true;
AuditingAlled:=true; //做过成批审核通过凭证,用于记录 Log
end;
procedure TFrmAuditingPD.btnUnAuditingAllClick(Sender: TObject);
var
RecNo:integer;
begin
if Frm_MsgBox('系统信息','确信要成批取消已经审核通过的凭证吗?',MsgBox_YESNO)=mrNo then Exit;
RecNo:=q.RecNo;
tq.Close;
tq.SQL.Clear;
tq.SQL.Add('update Credence set AuditingOperator_id=null where [Year]='+IntToStr(DM.AccountYear)+' and [Month]='+IntToStr(DM.AccountMonth));
tq.ExecSQL;
tq.Close;
q.Requery;
q.RecNo:=RecNo;
btnAuditing.Enabled:=true;
btnUnAuditing.Enabled:=false;
btnAuditingAll.Enabled:=true;
btnUnAuditingAll.Enabled:=false;
UnAuditingAlled:=true; //做过成批取消审核通过凭证,用于记录 Log
end;
procedure TFrmAuditingPD.gDrawColumnCell(Sender: TObject;
const Rect: TRect; DataCol: Integer; Column: TColumnEh;
State: TGridDrawState);
var
oldcolor:tcolor;
oldpm:tpenmode;
oldFontColor:TColor;
begin
oldpm:= g.Canvas.pen.mode;
oldcolor:= g.Canvas.Brush.color;
oldFontColor:=g.Canvas.Font.Color;
if (q.FieldByName('RecNo').AsInteger=1) then {设定变色的行的条件}
begin
g.Canvas.Brush.color:=$00E8E8E8;
g.Canvas.pen.mode:=pmmask;
end;
if ((column.FieldName='J_Money') and (q.FieldByName('J_Money').AsCurrency<0)) or
((column.FieldName='D_Money') and (q.FieldByName('D_Money').AsCurrency<0)) then
g.Canvas.Font.Color:=RGB(255,0,0);
if ((column.FieldName='Year') or (column.FieldName='Month')
or (column.FieldName='Number') or (column.FieldName='DateTime')
or (column.FieldName='AccessoryNum') or (column.FieldName='MakeOperator')
or (column.FieldName='AuditingOperator'))
and (q.FieldByName('RecNo').AsInteger<>1) then
g.Canvas.Font.Color:=RGB(255,255,255);
g.DefaultDrawColumnCell (Rect,DataCol, Column, State);
g.Canvas.Brush.color:=oldcolor;
g.Canvas.pen.mode:=oldpm;
g.Canvas.Font.Color:=oldFontColor;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -