?? ufrm_sales_report.pas
字號(hào):
unit Ufrm_sales_report;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ufrm_level1, ExtCtrls, StdCtrls, Buttons, DB, DBTables, ppDB,
ppDBPipe, ppDBBDE, ppBands, ppClass, ppCtrls, ppPrnabl, ppCache, ppComm,
ppRelatv, ppProd, ppReport, dxCntner, dxEditor, dxExEdtr, dxEdLib,
dxDBELib, ppVar, ppModule, raCodMod, DateUtils;
type
// Tfrm_sales_report = class(Tfrm_level1)
Tfrm_sales_report = class(Tfrm_level1)
Panel2: TPanel;
Panel1: TPanel;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
BitBtn1: TBitBtn;
BitBtn2: TBitBtn;
rep: TppReport;
ppBDEPipeline1: TppBDEPipeline;
qy_rep: TQuery;
ds_rep: TDataSource;
Label4: TLabel;
dxButtonEdit1: TdxButtonEdit;
dxButtonEdit2: TdxButtonEdit;
dxDateEdit1: TdxDateEdit;
dxDateEdit2: TdxDateEdit;
Label5: TLabel;
dxButtonEdit3: TdxButtonEdit;
dxButtonEdit4: TdxButtonEdit;
Label6: TLabel;
qy_repSHIPNO: TStringField;
qy_repSHIPDATE: TDateTimeField;
qy_repSALESMAN: TStringField;
qy_repCUSTNO: TStringField;
qy_repACTI: TStringField;
qy_repOWUS: TStringField;
qy_repGRUP: TStringField;
qy_repCRET: TDateTimeField;
qy_repMODU: TStringField;
qy_repMODT: TDateTimeField;
qy_repSHIPNO_1: TStringField;
qy_repSHIPITEM: TIntegerField;
qy_repGOODSNO: TStringField;
qy_repSHIPQTY: TFloatField;
qy_repPRICE: TFloatField;
qy_repCURRENCY: TStringField;
qy_repACTI_1: TStringField;
qy_repOWUS_1: TStringField;
qy_repGRUP_1: TStringField;
qy_repCRET_1: TDateTimeField;
qy_repMODU_1: TStringField;
qy_repMODT_1: TDateTimeField;
qy_repD_SN: TFloatField;
qy_repAMOUNT: TFloatField;
ppTitleBand1: TppTitleBand;
ppLabel1: TppLabel;
ppHeaderBand1: TppHeaderBand;
ppLabel2: TppLabel;
ppLabel4: TppLabel;
ppLabel5: TppLabel;
ppLabel6: TppLabel;
ppLabel8: TppLabel;
ppLabel9: TppLabel;
ppLabel10: TppLabel;
ppLine1: TppLine;
ppLine2: TppLine;
ppSystemVariable1: TppSystemVariable;
ppSystemVariable2: TppSystemVariable;
ppLabel3: TppLabel;
ppLabel7: TppLabel;
ppDetailBand1: TppDetailBand;
ppDBText1: TppDBText;
ppDBText2: TppDBText;
ppDBText3: TppDBText;
ppDBText4: TppDBText;
ppDBText5: TppDBText;
ppDBText6: TppDBText;
ppDBText7: TppDBText;
ppDBCalc1: TppDBCalc;
ppFooterBand1: TppFooterBand;
ppLine3: TppLine;
ppSystemVariable3: TppSystemVariable;
raCodeModule1: TraCodeModule;
Query1: TQuery;
procedure dxButtonEdit1ButtonClick(Sender: TObject;
AbsoluteIndex: Integer);
procedure BitBtn2Click(Sender: TObject);
procedure qy_repCalcFields(DataSet: TDataSet);
procedure BitBtn1Click(Sender: TObject);
procedure dxButtonEdit2ButtonClick(Sender: TObject;
AbsoluteIndex: Integer);
procedure dxButtonEdit1Change(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure dxDateEdit1Change(Sender: TObject);
procedure dxButtonEdit3ButtonClick(Sender: TObject;
AbsoluteIndex: Integer);
procedure dxButtonEdit4ButtonClick(Sender: TObject;
AbsoluteIndex: Integer);
procedure dxButtonEdit3Change(Sender: TObject);
// procedure BitBtn1Click(Sender: TObject);
private
{ Private declarations }
function select_textone(xCaption,sSQL,xDataBaseName: string;iFindKey:integer; iColWidth: array of Integer):string;
public
{ Public declarations }
end;
var
frm_sales_report: Tfrm_sales_report;
implementation
uses uSelect_Form, ufrm_report, udm;
{$R *.dfm}
function Tfrm_sales_report.select_textOne(xCaption: string;sSQL: string;xDataBaseName: string;iFindKey:integer; iColWidth: array of Integer):string;
var
i: Integer;
begin
Result := '';
Select_Form := TSelect_Form.Create(Application);
try
with Select_Form,Select_Form.Query1 do begin
DatabaseName := xDataBaseName;
Caption := xCaption;
SQL.Clear;
Open;
if Length(iColWidth) > 0 then
begin
for i:=0 to High(iColWidth) do
if iColWidth[i]=0 then
DBGrid1.Columns[i].Visible := False
else
DBGrid1.Columns[i].Width := iColWidth[i];
end;
if NOT Query1.CanModify then
begin
DBNavPlus1.Width:=Trunc(DBNavPlus1.Width/2);
end;
if ShowModal = mrOk then
result := Query1.fields[ifindKey].AsString;
end;//end of with
finally
Select_Form.Free;
end;//end of try
end;
procedure Tfrm_sales_report.dxButtonEdit1ButtonClick(Sender: TObject;
AbsoluteIndex: Integer);
var s :string ;
begin
inherited;
S := 'SELECT T_SHIPHEAD.SHIPNO SHIPPING_NO FROM T_SHIPHEAD WHERE 0=0 ';
dxButtonEdit1.Text :=select_textOne('Select ShipNO',s,'JXC_CSD',0,[]);
end;
procedure Tfrm_sales_report.BitBtn2Click(Sender: TObject);
begin
inherited;
self.Close ;
end;
procedure Tfrm_sales_report.qy_repCalcFields(DataSet: TDataSet);
begin
inherited;
qy_rep.FieldByName('AMOUNT').AsFloat := qy_rep.fieldByname('SHIPQTY').AsFloat * qy_rep.fieldbyname('PRICE').AsFloat ;
end;
procedure Tfrm_sales_report.BitBtn1Click(Sender: TObject);
var sql:string;
l_wc1,l_wc2,l_wc3 :string ;
begin
inherited;
if (dxButtonEdit1.Text <> '') AND (dxButtonEdit2.Text <> '' ) then
l_wc1 := ' A.SHIPNO BETWEEN '+#39+ dxButtonEdit1.Text+#39+' AND '+#39+dxButtonEdit2.Text + #39 ;
if ( dxDateEdit1.Text <> '') and (dxDateEdit2.Text <> '' ) then
l_wc2 := ' A.SHIPDATE BETWEEN '+#39+dxDateEdit1.Text+#39+' AND '+#39+dxDateEdit2.Text + #39 ;
if ( dxButtonEdit3.Text <> '') and (dxButtonEdit4.Text <> '' ) then
l_wc2 := ' A.CUSTNO BETWEEN '+#39+dxButtonEdit3.Text+#39+' AND '+#39+dxButtonEdit4.Text + #39 ;
sql := ' SELECT * FROM T_SHIPHEAD A ,T_SHIPLIST B WHERE A.SHIPNO = B.SHIPNO ' ;
if l_wc1 <> '' then
sql := sql + ' AND '+ l_wc1 ;
if l_wc2 <> '' then
sql := sql + ' AND '+ l_wc2 ;
if l_wc3 <> '' then
sql := sql + ' AND '+ l_wc3 ;
qy_rep.Close ;
qy_rep.SQL.Clear ;
qy_rep.SQL.Add(sql) ;
try qy_rep.Open ;
except ;
end ;
Application.CreateForm(Tfrm_report, frm_report);
frm_report.ppViewer1.Report:=rep;
frm_report.ShowModal;
frm_report.Free;
end;
procedure Tfrm_sales_report.dxButtonEdit2ButtonClick(Sender: TObject;
AbsoluteIndex: Integer);
var s:string;
begin
inherited;
S := 'SELECT T_SHIPHEAD.SHIPNO SHIPPING_NO FROM T_SHIPHEAD WHERE 0=0 ';
dxButtonEdit1.Text :=select_textOne('Select ShipNO',s,'JXC_CSD',0,[]);
end;
procedure Tfrm_sales_report.dxButtonEdit1Change(Sender: TObject);
begin
inherited;
if dxButtonEdit2.Text = '' then
dxButtonEdit2.Text := dxButtonEdit1.Text ;
end;
procedure Tfrm_sales_report.FormCreate(Sender: TObject);
begin
inherited;
query1.DatabaseName := dm.connection.DatabaseName;
query1.SQL.Clear ;
query1.SQL.Add('SELECT MIN(SHIPDATE) FROM T_SHIPHEAD ');
try query1.Open ;
if not query1.Eof then
dxDateEdit1.date := query1.Fields[0].AsDateTime ;
except
end;
query1.close;
// dxDateEdit1.Date := today ;
dxDateEdit2.Date := today ;
Label1.Caption := Label1.Caption + ' ';
Label2.Caption := Label2.Caption + ' ';
Label3.Caption := Label3.Caption + ' ';
end;
procedure Tfrm_sales_report.dxDateEdit1Change(Sender: TObject);
begin
inherited;
if (dxDateEdit2.Text = '') or (dxDateEdit1.Date > dxDateEdit2.Date) then
dxDateEdit2.Date := dxDateEdit1.Date ;
end;
procedure Tfrm_sales_report.dxButtonEdit3ButtonClick(Sender: TObject;
AbsoluteIndex: Integer);
var s:string;
begin
inherited;
S := 'SELECT T_SHIPHEAD.CUSTNO 客戶編號(hào) FROM T_SHIPHEAD WHERE 0=0 ';
dxButtonEdit3.Text :=select_textOne('選擇客戶編號(hào)',s,'JXC_CSD',0,[]);
end;
procedure Tfrm_sales_report.dxButtonEdit4ButtonClick(Sender: TObject;
AbsoluteIndex: Integer);
var s:string ;
begin
inherited;
S := 'SELECT T_SHIPHEAD.CUSTNO 客戶編號(hào) FROM T_SHIPHEAD WHERE 0=0 ';
dxButtonEdit4.Text :=select_textOne('選擇客戶編號(hào)',s,'JXC_CSD',0,[]);
end;
procedure Tfrm_sales_report.dxButtonEdit3Change(Sender: TObject);
begin
inherited;
if dxButtonEdit4.Text = '' then
dxButtonEdit4.Text := dxButtonEdit3.Text;
end;
end.
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -