📄 report_date.pas
字号:
unit report_date;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
ppBands, ppCache, ppClass, ppDB, ppDBPipe, ppDBBDE, Db, ppComm, ppRelatv,
ppProd, ppReport, ADODB, Mask, StdCtrls, ExtCtrls, ppCtrls, ppPrnabl;
type
Treport_sb = class(TForm)
ADODataSet1: TADODataSet;
ppReport1: TppReport;
DataSource1: TDataSource;
ppBDEPipeline1: TppBDEPipeline;
ppHeaderBand1: TppHeaderBand;
ppDetailBand1: TppDetailBand;
ppFooterBand1: TppFooterBand;
RadioGroup1: TRadioGroup;
Edit2: TEdit;
ComboBox1: TComboBox;
Edit3: TEdit;
StaticText1: TStaticText;
Label1: TLabel;
Edit1: TMaskEdit;
Button1: TButton;
Button2: TButton;
Label2: TLabel;
ppLabel1: TppLabel;
ppLine1: TppLine;
ppLine2: TppLine;
ppLine3: TppLine;
ppLabel2: TppLabel;
ppLine6: TppLine;
ppLine7: TppLine;
ppLine8: TppLine;
ppLabel3: TppLabel;
ppLabel4: TppLabel;
ppLine9: TppLine;
ppLine10: TppLine;
ppLine11: TppLine;
ppLine12: TppLine;
ppLabel5: TppLabel;
ppLabel6: TppLabel;
ppLine13: TppLine;
ppLine14: TppLine;
ppLine15: TppLine;
ppLine16: TppLine;
ppLabel7: TppLabel;
ppLine4: TppLine;
ppLabel8: TppLabel;
ppLabel9: TppLabel;
ppLabel10: TppLabel;
ppLabel11: TppLabel;
ppLine5: TppLine;
ppLine18: TppLine;
ppLine19: TppLine;
ppLine20: TppLine;
ppLine21: TppLine;
ppLine22: TppLine;
ppLine23: TppLine;
ppLine24: TppLine;
ppLine25: TppLine;
ppLine26: TppLine;
ppLine27: TppLine;
ppDBText1: TppDBText;
ppDBText2: TppDBText;
ppDBText3: TppDBText;
ppDBText4: TppDBText;
ppDBText5: TppDBText;
ppDBText6: TppDBText;
ppDBText7: TppDBText;
ppDBText8: TppDBText;
ppDBText9: TppDBText;
ppDBText10: TppDBText;
ADODataSet1name: TStringField;
ADODataSet1prof: TStringField;
ADODataSet1reltel4: TStringField;
ADODataSet1mustdays: TBCDField;
ADODataSet1factdays: TBCDField;
ADODataSet1leavehave: TBCDField;
procedure RadioGroup1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure ppReport1PreviewFormCreate(Sender: TObject);
procedure Edit2Exit(Sender: TObject);
procedure Edit1KeyPress(Sender: TObject; var Key: Char);
procedure FormKeyPress(Sender: TObject; var Key: Char);
procedure Edit2KeyPress(Sender: TObject; var Key: Char);
procedure Edit3KeyPress(Sender: TObject; var Key: Char);
private
{ Private declarations }
public
{ Public declarations }
end;
var
report_sb: Treport_sb;
implementation
uses datamol;
{$R *.DFM}
procedure Treport_sb.RadioGroup1Click(Sender: TObject);
var
qry:tadoquery;
begin
case radiogroup1.ItemIndex of
0:
begin
combobox1.visible:=false;
edit2.visible:=false;
edit3.visible:=false;
statictext1.Visible:=false;
end;
1:
begin
combobox1.visible:=true;
combobox1.SetFocus;
edit2.Visible:=false;
edit3.visible:=false;
qry:=tadoquery.Create(self);
qry.Connection:=datamod.Database1;
qry.SQL.Text:='select * from pub05010 order by dno';
qry.Open;
statictext1.Visible:=false;
while not qry.Eof do
begin
combobox1.Items.Add(qry.fieldbyname('dept').asstring);
qry.Next;
end;
qry.Close;
combobox1.text:=combobox1.items[0];
end;
2:
begin
edit2.Visible:=true;
edit2.SetFocus;
edit3.visible:=true;
combobox1.Visible:=false;
statictext1.Visible:=true;
end;
end;
end;
procedure Treport_sb.Button2Click(Sender: TObject);
begin
close;
end;
procedure Treport_sb.Button1Click(Sender: TObject);
begin
adodataset1.close;
case radiogroup1.itemindex of
0:
adodataset1.CommandText:='select c.name,c.prof,c.provname,c.reltel4,b.mustdays,b.factdays,b.leavehave From per24010 c join '+
' (select a1.workno,mustdays,factdays,leavehave from sal21010 a1 join per24010 b1 '+
' on a1.workno=b1.workno and b1.reltel4=''国外'')b on b.workno=c.workno and c.reltel4=''国外'' '+
' join sal21010 on b.workno=sal21010.workno '+
' where sal21010.tax<>0 and sal21010.tax is not null and sal21010.monthy='''+edit1.text+'''';
1:
adodataset1.CommandText:='select c.name,c.prof,c.provname,c.reltel4,b.mustdays,b.factdays,b.leavehave From per24010 c join '+
' (select a1.workno,mustdays,factdays,leavehave from sal21010 a1 join per24010 b1 '+
' on a1.workno=b1.workno and b1.reltel4=''国外'')b on b.workno=c.workno and c.reltel4=''国外'' '+
' join sal21010 on b.workno=sal21010.workno '+
' where sal21010.tax<>0 and sal21010.tax is not null '+
' and c.dept='''+combobox1.text+''' and sal21010.monthy='''+edit1.text+'''';
2:
adodataset1.CommandText:='select c.name,c.prof,c.provname,c.reltel4,b.mustdays,b.factdays,b.leavehave From per24010 c join '+
' (select a1.workno,mustdays,factdays,leavehave from sal21010 a1 join per24010 b1 '+
' on a1.workno=b1.workno and b1.reltel4=''国外'')b on b.workno=c.workno and c.reltel4=''国外'' '+
' join sal21010 on b.workno=sal21010.workno '+
' where sal21010.tax<>0 and sal21010.tax is not null and sal21010.monthy='''+edit1.text+''' '+
' and c.workno between '''+edit1.text+''' and '''+edit2.text+'''';
end;
adodataset1.Open;
ppreport1.Print;
end;
procedure Treport_sb.ppReport1PreviewFormCreate(Sender: TObject);
begin
tppReport(Sender).PreviewForm.WindowState:=wsMaximized
end;
procedure Treport_sb.Edit2Exit(Sender: TObject);
begin
edit3.text:=edit2.Text;
end;
procedure Treport_sb.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
if key=#13 then
selectnext(activecontrol,true,true);
end;
procedure Treport_sb.FormKeyPress(Sender: TObject; var Key: Char);
begin
if key=#13 then
selectnext(activecontrol,true,true);
end;
procedure Treport_sb.Edit2KeyPress(Sender: TObject; var Key: Char);
begin
if key=#13 then
selectnext(activecontrol,true,true);
end;
procedure Treport_sb.Edit3KeyPress(Sender: TObject; var Key: Char);
begin
if key=#13 then
selectnext(activecontrol,true,true);
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -