?? unitdetailform.pas
字號(hào):
unit UnitDetailForm;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Grids, DBGrids, DB, ADODB;
type
TDetailForm = class(TForm)
DBGrid1: TDBGrid;
DataSource1: TDataSource;
ADOQuery1: TADOQuery;
ADOQuery2: TADOQuery;
ADOQuery1GoodsNo: TWideStringField;
ADOQuery1InDate: TWideStringField;
ADOQuery1InRemark: TWideStringField;
ADOQuery1GoodsOwner: TWideStringField;
ADOQuery1OutDate: TWideStringField;
ADOQuery1CustName: TWideStringField;
ADOQuery1CustTel: TWideStringField;
ADOQuery1CustAddr: TWideStringField;
ADOQuery1CustRemark: TWideStringField;
ADOQuery1OutRemark: TWideStringField;
ADOQuery1GoodsName: TWideStringField;
ADOQuery1GoodsType: TWideStringField;
ADOQuery2GoodsNo: TWideStringField;
ADOQuery2ServiceDate: TWideStringField;
ADOQuery2ServiceRemark: TWideStringField;
ADOQuery2GoodsName: TWideStringField;
ADOQuery2GoodsType: TWideStringField;
ADOQuery2InDate: TWideStringField;
ADOQuery2InRemark: TWideStringField;
ADOQuery2GoodsOwner: TWideStringField;
ADOQuery2OutDate: TWideStringField;
ADOQuery2CustName: TWideStringField;
ADOQuery2CustTel: TWideStringField;
ADOQuery2CustAddr: TWideStringField;
ADOQuery2CustRemark: TWideStringField;
ADOQuery2OutRemark: TWideStringField;
ADOQuery3: TADOQuery;
WideStringField3: TWideStringField;
WideStringField4: TWideStringField;
WideStringField5: TWideStringField;
WideStringField6: TWideStringField;
WideStringField7: TWideStringField;
WideStringField8: TWideStringField;
WideStringField9: TWideStringField;
WideStringField10: TWideStringField;
WideStringField11: TWideStringField;
WideStringField12: TWideStringField;
WideStringField13: TWideStringField;
WideStringField14: TWideStringField;
ADOQuery3CallDate: TWideStringField;
ADOQuery3CallRemark: TWideStringField;
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure FormKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure DBGrid1DblClick(Sender: TObject);
procedure FormCreate(Sender: TObject);
private
{ Private declarations }
FiFlag: integer;
FselectColumn, FselectCurDate, FselectGoodsOwner, FselectGoodsName, FselectGoodsType: string;
public
{ Public declarations }
constructor Create(AOwner: TComponent; iFlag: integer; selectColumn,
selectCurDate, selectGoodsOwner, selectGoodsName, selectGoodsType: string);
end;
implementation
uses UnitDM;
{$R *.dfm}
constructor TDetailForm.Create(AOwner: TComponent; iFlag: integer;
selectColumn, selectCurDate, selectGoodsOwner, selectGoodsName,
selectGoodsType: string);
begin
FiFlag := iFlag;
FselectColumn := Trim(selectColumn);
FselectCurDate := Trim(selectCurDate);
FselectGoodsOwner := Trim(selectGoodsOwner);
FselectGoodsName := Trim(selectGoodsName);
FselectGoodsType := Trim(selectGoodsType);
inherited Create(AOwner);
end;
procedure TDetailForm.FormClose(Sender: TObject; var Action: TCloseAction);
begin
ADOQuery1.Close;
ADOQuery2.Close;
ADOQuery3.Close;
Action := caFree;
end;
procedure TDetailForm.FormKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if Key=27 then Close;
end;
procedure TDetailForm.DBGrid1DblClick(Sender: TObject);
begin
Close;
end;
procedure TDetailForm.FormCreate(Sender: TObject);
var
sql1: string;
begin
ADOQuery1.Close;
ADOQuery2.Close;
ADOQuery3.Close;
case FiFlag of
0://采購(gòu)表
begin
sql1 := ' select A.*,B.GoodsName,B.GoodsType from Tab_Goods A '
+ ' left join Tab_GoodsNo B on A.GoodsNo=B.GoodsNo '
+ ' where 1=1 ';
if FselectGoodsName<>'' then
sql1 := sql1 + ' and B.GoodsName=''' + FselectGoodsName + ''' ';
if FselectGoodsType<>'' then
sql1 := sql1 + ' and B.GoodsType=''' + FselectGoodsType + ''' ';
if FselectColumn='button1' then//當(dāng)期
begin
if FselectCurDate<>'' then
sql1 := sql1 + ' and A.InDate>=''' + FselectCurDate + ''' and A.InDate<=''' + FselectCurDate + ''' ';
end
else if FselectColumn='button2' then//上期
begin
if FselectCurDate<>'' then
sql1 := sql1 + ' and A.InDate<''' + FselectCurDate + ''' ';
end
else if FselectColumn='button3' then//累計(jì)
begin
end;
sql1 := sql1 + ' order by A.InDate, B.GoodsName, B.GoodsType ';
DataSource1.DataSet := ADOQuery1;
ADOQuery1.SQL.Text := sql1;
ADOQuery1.Open;
end;
1://庫(kù)存表
begin
sql1 := ' select A.*,B.GoodsName,B.GoodsType from Tab_Goods A '
+ ' left join Tab_GoodsNo B on A.GoodsNo=B.GoodsNo '
+ ' where A.IsSale=0 ';
if FselectGoodsOwner<>'' then
sql1 := sql1 + ' and A.GoodsOwner=''' + FselectGoodsOwner + ''' ';
if FselectGoodsName<>'' then
sql1 := sql1 + ' and B.GoodsName=''' + FselectGoodsName + ''' ';
if FselectGoodsType<>'' then
sql1 := sql1 + ' and B.GoodsType=''' + FselectGoodsType + ''' ';
if FselectColumn='button1' then//當(dāng)期
begin
if FselectCurDate<>'' then
sql1 := sql1 + ' and A.InDate>=''' + FselectCurDate + ''' and A.InDate<=''' + FselectCurDate + ''' ';
end
else if FselectColumn='button2' then//上期
begin
if FselectCurDate<>'' then
sql1 := sql1 + ' and A.InDate<''' + FselectCurDate + ''' ';
end
else if FselectColumn='button3' then//累計(jì)
begin
end;
sql1 := sql1 + ' order by A.InDate, B.GoodsName, B.GoodsType ';
DataSource1.DataSet := ADOQuery1;
ADOQuery1.SQL.Text := sql1;
ADOQuery1.Open;
end;
2://銷(xiāo)售表
begin
sql1 := ' select A.*,B.GoodsName,B.GoodsType from Tab_Goods A '
+ ' left join Tab_GoodsNo B on A.GoodsNo=B.GoodsNo '
+ ' where A.IsSale=1 ';
if FselectGoodsOwner<>'' then
sql1 := sql1 + ' and A.GoodsOwner=''' + FselectGoodsOwner + ''' ';
if FselectGoodsName<>'' then
sql1 := sql1 + ' and B.GoodsName=''' + FselectGoodsName + ''' ';
if FselectGoodsType<>'' then
sql1 := sql1 + ' and B.GoodsType=''' + FselectGoodsType + ''' ';
if FselectColumn='button1' then//當(dāng)期
begin
if FselectCurDate<>'' then
sql1 := sql1 + ' and A.OutDate>=''' + FselectCurDate + ''' and A.OutDate<=''' + FselectCurDate + ''' ';
end
else if FselectColumn='button2' then//上期
begin
if FselectCurDate<>'' then
sql1 := sql1 + ' and A.OutDate<''' + FselectCurDate + ''' ';
end
else if FselectColumn='button3' then//累計(jì)
begin
end;
sql1 := sql1 + ' order by A.OutDate,B.GoodsName, B.GoodsType ';
DataSource1.DataSet := ADOQuery1;
ADOQuery1.SQL.Text := sql1;
ADOQuery1.Open;
end;
3://售后表
begin
sql1 := ' select X.*,Y.* from '
+ ' ( '
+ ' select A.*,B.GoodsName,B.GoodsType from Tab_Service A '
+ ' left join Tab_GoodsNo B on A.GoodsNo=B.GoodsNo '
+ ' ) X, Tab_Goods Y '
+ ' where X.GoodsNo=Y.GoodsNo ';
if FselectGoodsName<>'' then
sql1 := sql1 + ' and X.GoodsName=''' + FselectGoodsName + ''' ';
if FselectGoodsType<>'' then
sql1 := sql1 + ' and X.GoodsType=''' + FselectGoodsType + ''' ';
if FselectColumn='button1' then//當(dāng)期
begin
if FselectCurDate<>'' then
sql1 := sql1 + ' and A.ServiceDate>=''' + FselectCurDate + ''' and A.ServiceDate<=''' + FselectCurDate + ''' ';
end
else if FselectColumn='button2' then//上期
begin
if FselectCurDate<>'' then
sql1 := sql1 + ' and A.ServiceDate<''' + FselectCurDate + ''' ';
end
else if FselectColumn='button3' then//累計(jì)
begin
end;
sql1 := sql1 + ' order by X.ServiceDate,X.GoodsName,X.GoodsType ';
DataSource1.DataSet := ADOQuery2;
ADOQuery2.SQL.Text := sql1;
ADOQuery2.Open;
end;
4://回訪表
begin
sql1 := ' select X.*,Y.* from '
+ ' ( '
+ ' select A.*,B.GoodsName,B.GoodsType from Tab_Call A '
+ ' left join Tab_GoodsNo B on A.GoodsNo=B.GoodsNo '
+ ' ) X, Tab_Goods Y '
+ ' where X.GoodsNo=Y.GoodsNo ';
if FselectGoodsName<>'' then
sql1 := sql1 + ' and X.GoodsName=''' + FselectGoodsName + ''' ';
if FselectGoodsType<>'' then
sql1 := sql1 + ' and X.GoodsType=''' + FselectGoodsType + ''' ';
if FselectColumn='button1' then//當(dāng)期
begin
if FselectCurDate<>'' then
sql1 := sql1 + ' and A.CallDate>=''' + FselectCurDate + ''' and A.CallDate<=''' + FselectCurDate + ''' ';
end
else if FselectColumn='button2' then//上期
begin
if FselectCurDate<>'' then
sql1 := sql1 + ' and A.CallDate<''' + FselectCurDate + ''' ';
end
else if FselectColumn='button3' then//累計(jì)
begin
end;
sql1 := sql1 + ' order by X.CallDate,X.GoodsName,X.GoodsType ';
DataSource1.DataSet := ADOQuery3;
ADOQuery3.SQL.Text := sql1;
ADOQuery3.Open;
end;
end;
end;
end.
?? 快捷鍵說(shuō)明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -