📄 kqmsunit.pas
字号:
unit KqMsUnit;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, GridsEh, DBGridEh, StdCtrls, Buttons, ExtCtrls, PrnDbgeh,prvieweh,printers,DBGridEHImpExp;
type
TKqMsForm = class(TForm)
Panel1: TPanel;
Panel2: TPanel;
Label1: TLabel;
ComboBox1: TComboBox;
BitBtn2: TBitBtn;
BitBtn1: TBitBtn;
BitBtn3: TBitBtn;
DBGridEh1: TDBGridEh;
SaveDialog1: TSaveDialog;
PrintDBGridEh1: TPrintDBGridEh;
BitBtn4: TBitBtn;
procedure kqmsNewll;
procedure kqmsQxnewll;
procedure formcreate(Sender: TObject);
procedure BitBtn2Click(Sender: TObject);
procedure BitBtn1Click(Sender: TObject);
procedure BitBtn3Click(Sender: TObject);
procedure combobox1change(Sender: TObject);
procedure BitBtn4Click(Sender: TObject);
private
{ Private declarations }
dbegin,dend:string;
public
{ Public declarations }
end;
var
KqMsForm: TKqMsForm;
implementation
uses dm,kqunit, GrqxUnit;
{$R *.dfm}
procedure Tkqmsform.kqmsNewll;
begin
combobox1.Items.Add('全部');
dmdata.BjqlADOTable.Active:=false;
dmdata.BjqlADOTable.Active:=true;
dmdata.BjqlADOTable.First;
while not dmdata.BjqlADOTable.eof do
begin
combobox1.Items.Add(dmdata.BjqlADOTable['QL']);
dmdata.BjqlADOTable.Next;
end;
combobox1.ItemIndex:=0;
end;
procedure tkqmsform.kqmsQxnewll;
begin
if combobox1.Text = '全部' then
begin
with dmdata.kqQxADOQuery do
begin
close;
sql.Clear;
sql.Add('select a.ms_id,a.ql_id,a.rq,a.sl,a.qxhm,a.jxhm,a.kqbm,a.qt,b.ql from t_kqb as a,t_bjql as b where (a.ql_id=b.km)and (kqbm = ''库存'')and(qt=0)and(RQ >=:a)and(rq <=:b) order by a.ms_id');
parameters.ParamByName('a').Value:=strtodate(dbegin);
parameters.ParamByName('b').Value:=strtodate(dend);
open;
end;
end
else
begin
with dmdata.bjqlADOQuery do
begin
close;
sql.Clear;
sql.Add('select * from T_Bjql where (QL = :a)');
parameters.ParamByName('a').Value:=trim(combobox1.Text);
open;
end;
with dmdata.kqQxADOQuery do
begin
close;
sql.Clear;
sql.Add('select a.ms_id,a.ql_id,a.rq,a.sl,a.qxhm,a.jxhm,a.kqbm,a.qt,b.ql from t_kqb as a,t_bjql as b where (a.ql_id=b.km)and (kqbm = ''库存'')and(qt=0)and(RQ >=:a)and(rq <=:b)and (ql_id = :c) order by a.ms_id');
parameters.ParamByName('a').Value:=strtodate(dbegin);
parameters.ParamByName('b').Value:=strtodate(dend);
parameters.ParamByName('c').Value:=dmdata.bjqlADOQuery.fieldbyname('km').AsString;
open;
end;
end;
end;
procedure TKqMsForm.formcreate(Sender: TObject);
var
yy,mm,dd:word;
begin
dbegin:=trim(kqform.ComboBox2.Text);
dend:=trim(kqform.ComboBox3.Text);
kqmsNewll;
kqmsQxnewll;
decodedate(dmdata.ADOTable_T_user.fieldbyname('date').AsDateTime,yy,mm,dd);
printdbgrideh1.PageHeader.CenterText.Add(dmdata.ADOTable_T_user.fieldbyname('dh').AsString);
printdbgrideh1.Title.Add('票据库存查询');
printdbgrideh1.PageFooter.RightText.Add('制表人:'+dmdata.ADOTable_T_user.fieldbyname('name').AsString+' 打印日期:'+DateToStr(Now));
printdbgrideh1.PageFooter.CenterText.add('第&[Page]页 共&[Pages]页');
printdbgrideh1.PageFooter.LeftText.Add('查询日期:'+'('+dbegin+' — '+dend+')');
Caption:=Caption+' - '+kqform.ComboBox1.Text;
kqform.Close;
end;
procedure TKqMsForm.BitBtn2Click(Sender: TObject);
begin
if printdbgrideh1.PrinterSetupDialog = true then
printdbgrideh1.Print;
end;
procedure TKqMsForm.BitBtn1Click(Sender: TObject);
begin
printerpreview.Orientation:=poLandscape;
printdbgrideh1.Preview;
end;
procedure TKqMsForm.BitBtn3Click(Sender: TObject);
var
ExpClass:TDBGridEhExportClass;
Ext:String;
begin
SaveDialog1.FileName :='file1';
//if (ActiveControl is TDBGridEH) then
if saveDialog1.Execute then
begin
case SaveDialog1.FilterIndex of
1: begin ExpClass := TDBGridEhExportAsText; Ext := 'txt'; end;
2: begin ExpClass := TDBGridEhExportAsCSV; Ext := 'csv'; end;
3: begin ExpClass := TDBGridEhExportAsHTML; Ext := 'htm'; end;
4: begin ExpClass := TDBGridEhExportAsRTF; Ext := 'rtf'; end;
5: begin ExpClass := TDBGridEhExportAsXLS; Ext := 'xls'; end;
else
ExpClass := nil; Ext := '';
end;
if ExpClass <> nil then
begin
if UpperCase(Copy(SaveDialog1.FileName,Length(SaveDialog1.FileName)-2,3)) <> UpperCase(Ext) then
SaveDialog1.FileName := SaveDialog1.FileName+'.'+Ext;
SaveDBGridEhToExportFile(ExpClass,DBGridEh1,SaveDialog1.FileName,true);
end;
end;
end;
procedure TKqMsForm.combobox1change(Sender: TObject);
begin
kqmsQxnewll;
end;
procedure TKqMsForm.BitBtn4Click(Sender: TObject);
begin
close;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -