📄 qemptotal5.pas
字号:
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 + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -