qemptotal5.pas
来自「感应IC卡电脑考勤、门禁、售饭一卡通管理系统是基于我公司开发生产的ESW型智能卡」· PAS 代码 · 共 167 行
PAS
167 行
unit QEmpTotal5;
interface
uses MultiFilter,
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
Grids, DBGrids, StdCtrls, Buttons, ExtCtrls, Db, Mask, DBCtrls,
Provider, DBClient, ObeyTable, jpeg, MyGrid, FormStore, AdoCodeEd, ComCtrls,
MacroQuery, PivotTable, ADOQry, ADODB, AdoMacroQry, AdoPivotTbl,
StoreForm;
type
TfrmQEmpTotal5 = class(TForm)
Panel1: TPanel;
Label1: TLabel;
Image1: TImage;
StoreForm1: TStoreForm;
MyGrid4: TMyGrid;
qryBrowse0: TAdoPivotTbl;
qryBrowse0Code: TStringField;
qryBrowse0LName: TStringField;
qryBrowse0TreeLevel: TSmallintField;
qryBrowse0PyRs: TIntegerField;
qryBrowse0LzRs: TIntegerField;
qryBrowse0BzRs: TIntegerField;
qryBrowse0SjRs: TIntegerField;
qryBrowse0Name: TStringField;
qryBrowse0CqZrs: TIntegerField;
qryBrowse0CqYcqRs: TIntegerField;
qryBrowse0CqLzRs: TIntegerField;
qryBrowse0CqSjRs: TIntegerField;
qryBrowse0CqKgRs: TIntegerField;
qryBrowse0CqSdRs: TIntegerField;
qryBrowse0CqGxRs: TIntegerField;
qryCqzk: TADOQry;
qryCqzkCode: TStringField;
qryCqzkZrs: TIntegerField;
qryCqzkYcqRs: TIntegerField;
qryCqzkLzrs: TIntegerField;
qryCqzkSjRs: TIntegerField;
qryCqzkKgRs: TIntegerField;
qryCqzkSdRs: TIntegerField;
qryCqzkGxRs: TIntegerField;
DataSource1: TDataSource;
Label2: TLabel;
Label3: TLabel;
cmdExit: TBitBtn;
cmdPrint: TBitBtn;
dpDate0: TDateTimePicker;
cmdQuery: TBitBtn;
panDept: TPanel;
RadioButton1: TRadioButton;
RadioButton2: TRadioButton;
RadioButton3: TRadioButton;
qryBrowse :TClientDataSet;
qryBrowseCode: TStringField;
qryBrowseLName: TStringField;
qryBrowseTreeLevel: TSmallintField;
qryBrowsePyRs: TIntegerField;
qryBrowseLzRs: TIntegerField;
qryBrowseBzRs: TIntegerField;
qryBrowseSjRs: TIntegerField;
qryBrowseName: TStringField;
qryBrowseCqZrs: TIntegerField;
qryBrowseCqYcqRs: TIntegerField;
qryBrowseCqLzRs: TIntegerField;
qryBrowseCqSjRs: TIntegerField;
qryBrowseCqKgRs: TIntegerField;
qryBrowseCqSdRs: TIntegerField;
qryBrowseCqGxRs: TIntegerField;
procedure cmdExitClick(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure cmdPrintClick(Sender: TObject);
procedure RadioButton1Click(Sender: TObject);
procedure cmdQueryClick(Sender: TObject);
private
public
{ Public declarations }
end;
var
frmQEmpTotal5: TfrmQEmpTotal5;
implementation
uses RptExcel, SelfFunc, Main;
{$R *.DFM}
procedure TfrmQEmpTotal5.cmdExitClick(Sender: TObject);
begin
Close;
end;
procedure TfrmQEmpTotal5.FormCreate(Sender: TObject);
begin
Image1.Picture.Assign(frmMain.imgTitle.Picture);
dpDate0.Date :=Date() -1;
//if FileExists('QEmpTotal5.sql') then qryBrowse.SQL.LoadFromFile('QEmpTotal5.sql');
end;
procedure TfrmQEmpTotal5.cmdPrintClick(Sender: TObject);
begin
frmRptExcel.PrintRpt(Self.Caption, qryBrowse);
end;
procedure TfrmQEmpTotal5.RadioButton1Click(Sender: TObject);
var tn :integer;
begin
tn :=GetRdsIndex(panDept);
if tn < 2 then
qryBrowse.Filter :='TreeLevel <=' +IntToStr(tn +1)
else qryBrowse.Filter :='';
end;
procedure TfrmQEmpTotal5.cmdQueryClick(Sender: TObject);
var i :integer;
TempProvider :TDataSetProvider;
tsFName :string;
oFieldDef :TFieldDef;
oField :TField;
begin
with qryCqZk do
begin
Close;
Parameters[0].Value :=dpDate0.Date;
Open;
end;
with qryBrowse0 do
begin
Close;
ParamByN('sDate').Value :=''''+ DateToStr(dpDate0.Date) +'''';
Open;
end;
TempProvider := TDataSetProvider.Create(Self);
TempProvider.DataSet := qryBrowse0;
qryBrowse.Close;
for i :=0 to qryBrowse0.FieldDefs.Count -1 do
begin
tsFName :=qryBrowse0.FieldDefs[i].Name;
if qryBrowse.FindField(tsFName) <>nil then Continue;
oFieldDef :=qryBrowse.FieldDefs.AddFieldDef;
oFieldDef.Assign(qryBrowse0.FieldDefs[i]);
oField :=oFieldDef.CreateField(qryBrowse);
oField.DisplayLabel :=qryBrowse0.FieldByName(tsFName).DisplayLabel;
end;
qryBrowse.Data := TempProvider.Data;
TempProvider.Free;
while not qryBrowse.Eof do
begin
if qryCqZk.Locate('Code',qryBrowseCode.Value,[]) then
begin
qryBrowse.Edit;
for i :=1 to qryCqZk.FieldCount -1 do
qryBrowse.FieldByName('Cq'+ qryCqZk.Fields[i].FieldName).Value
:=qryCqZk.Fields[i].Value;
qryBrowse.Post;
end;
qryBrowse.Next;
end;
end;
end.
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?