📄 untps_query.pas
字号:
unit Untps_query;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, fm_Base, DB, Grids, DBGrids, StdCtrls, ExtCtrls, Buttons, Menus,
FR_PTabl, FR_View, DBClient;
/////////////////////// 定义数据集合
type Tsendrequirement =record //需求
codes:string;
copy_date:string;
part:string;
storage:string;
shop:string;
Transactor:string;
Condense:string;
R_Remark:string;
end;
/////////////
////////////////////////////
type
Tfmps_query = class(TfmBase)
Panel1: TPanel;
Label1: TLabel;
dsps_query: TDataSource;
Label2: TLabel;
cmbtop: TComboBox;
PopupMenu1: TPopupMenu;
nbatch: TMenuItem;
Ngoods: TMenuItem;
cdsmasterdata: TClientDataSet;
cdsdetaildata: TClientDataSet;
Panel2: TPanel;
DBGrid1: TDBGrid;
DBGrid2: TDBGrid;
Panel3: TPanel;
btnauto: TBitBtn;
btnprint: TBitBtn;
BitBtn1: TBitBtn;
BitBtn2: TBitBtn;
BitBtn3: TBitBtn;
BitBtn4: TBitBtn;
btnpagedown: TBitBtn;
BitBtn7: TBitBtn;
procedure BitBtn7Click(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure btnpagedownClick(Sender: TObject);
procedure BitBtn3Click(Sender: TObject);
procedure BitBtn4Click(Sender: TObject);
procedure BitBtn1Click(Sender: TObject);
procedure btnautoClick(Sender: TObject);
procedure btnautoMouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
procedure nbatchClick(Sender: TObject);
procedure NgoodsClick(Sender: TObject);
procedure DBGrid1TitleClick(Column: TColumn);
procedure DBGrid2TitleClick(Column: TColumn);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure BitBtn2Click(Sender: TObject);
private
{ Private declarations }
senddata:tsendrequirement;
managerid:string;//配送仓库
flag,LocalCount:integer;
public
{ Public declarations }
tj:string;
tempsql,tables:string;
buttonflag:integer;//查询模式;
end;
var
fmps_query: Tfmps_query;
implementation
uses untdatadm, func, Untdlgselect, Data, fm_SetColumn;
{$R *.dfm}
procedure Tfmps_query.BitBtn7Click(Sender: TObject);
begin
inherited;
close;
end;
procedure Tfmps_query.FormShow(Sender: TObject);
var
sql:widestring;
begin
inherited;
dbgCur:=dbgrid1;
flag:=0;
tempsql:='select top 1000';
tables:=' * from Vgetgoodsplan';
dmmain.CDSquery.Close;
dmmain.CDSquery.Data:=null;
cmbtop.ItemIndex:=0;
sql:='select managerid from STOCK_Manager where storageid='+''''+trim(shopid)+'''';
dmmain.CDSexecsql.Close;
dmmain.CDSexecsql.Data:=null;
try
dmmain.CDSexecsql.Data:=adisp.execSql(sql);
dmmain.CDSexecsql.Open;
if not dmmain.CDSexecsql.IsEmpty then
begin
managerid:=trim(dmmain.CDSexecsql.fieldbyname('managerid').AsString );
nbatch.Enabled:=false; //配送单菜单为真
ngoods.Enabled:=true; // 商品需求为假
end;
except
application.MessageBox('服务器发生故障!',pchar(application.Title),mb_iconwarning);
exit;
end;
btnauto.Enabled:=true;
end;
procedure Tfmps_query.btnpagedownClick(Sender: TObject);
var
temp:widestring;
datas:oleVariant;
begin
inherited;
datas:=null;
if not dmmain.cDSquery.Active then exit;
screen.Cursor := crhourglass;
//关掉与DBGRID 的互动
dmmain.cdsquery.DisableControls;
if buttonflag=1 then
begin
temp:=tempsql+tables+tj+' and id>'+inttostr(localcount);
end else
begin
temp:=tempsql+tables+tj+' and id>'+inttostr(localcount);
end;
dmmain.CDSquery.Close;
try
datas:=adisp.GetRecord(temp);
except
application.MessageBox('服务器发生故障!',pchar(application.Title),mb_iconwarning);
exit;
end;
if not varisnull(datas) then
begin
dmmain.CDSquery.Open;
dmmain.CDSquery.AppendData(datas,true);
dmmain.cdsquery.Last;
dmmain.cdsquery.EnableControls;
//得到此次查询的键值
try
LocalCount := GetKeyFieldValue('id',dmmain.cdsquery); //传入具体字段
except
end;
end else
begin
//不再有数据
dmmain.cdsquery.EnableControls; //ydy 必须要
btnpagedown.Enabled := false;
screen.Cursor := crdefault;
exit;
end;
dmmain.cdsquery.EnableControls;
dbgrid1.Refresh;
screen.Cursor := crdefault;
datas:=null;
end;
procedure Tfmps_query.BitBtn3Click(Sender: TObject);
var
temp:widestring;
datas:olevariant;
begin
inherited;
dbgCur:=dbgrid2;
dmmain.CDSquery.EnableConstraints;
buttonflag:=1;
screen.Cursor := crHourGlass;
dbgrid1.Visible:=false;
dbgrid2.Visible :=true;
dbgCur:=dbgrid2;
tj:='';
tables:=' * from VPSSQ where 1=1 and storage_no='+''''+trim(shopid)+'''';
temp:=tempsql+tables;//'select top 100 * from VPSSQ where 1=1 and storage_no='+''''+trim(shopid)+'''';//
dmmain.CDSquery.Close;
dmmain.CDSquery.Data:=null;
dmmain.CDSquery.IndexName:='';
dmmain.CDSquery.IndexDefs.Clear;
datas:=null;
try
datas:=adisp.GetRecord(temp);
if not varisnull(datas) then
begin
dmmain.CDSquery.Data:=datas;
dmmain.CDSquery.Open;
datas:=null;
end else
begin
application.MessageBox('没有门店申请的商品数据!',pchar(application.Title),mb_iconinformation);
screen.Cursor := crdefault;
exit;
end;
except
application.MessageBox('服务器发生故障!',pchar(application.Title),mb_iconwarning);
exit;
end;
dmmain.CDSquery.Last;
try
LocalCount := GetKeyFieldValue('id',dmmain.cdsquery); //传入具体字段
except
end;
dbgrid2.Refresh;
screen.Cursor := crdefault;
end;
procedure Tfmps_query.BitBtn4Click(Sender: TObject);
var
temp:widestring;
datas:olevariant;
begin
inherited;
dbgCur:=dbgrid1;
buttonflag:=0;
screen.Cursor := crHourGlass;
dbgrid1.Visible:=true;
dbgrid2.Visible :=false;
tj:=' and storage_no='+''''+trim(shopid)+'''';
dbgCur:=dbgrid1;
tables:=' id,VCOfficeID,goods_no,goods_name,stock_amount,NQty, NSendQty, totalamount,saleamount from [vpssq] where 1=1 ';//+tj+' group by VCOfficeID,goods_no,goods_name,stock_amount,NQty, NSendQty, totalamount,id';
temp:=tempsql+tables+tj+' group by VCOfficeID,goods_no,goods_name,stock_amount,NQty, NSendQty, totalamount,id,saleamount';
dmmain.CDSquery.Close;
dmmain.CDSquery.Data:=null;
dmmain.CDSquery.IndexName:='';
dmmain.CDSquery.IndexDefs.Clear;
datas:=null;
try
datas:=adisp.GetRecord(temp);
if not varisnull(datas) then
begin
dmmain.CDSquery.Data:=datas;
dmmain.CDSquery.Open;
datas:=null;
end else
begin
application.MessageBox('没有门店申请的商品数据!',pchar(application.Title),mb_iconinformation);
screen.Cursor := crdefault;
exit;
end;
except
application.MessageBox('服务器发生故障!',pchar(application.Title),mb_iconwarning);
exit;
end;
dmmain.CDSquery.Last;
LocalCount := GetKeyFieldValue('id',dmmain.cdsquery); //传入具体字段
screen.Cursor := crdefault;
end;
procedure Tfmps_query.BitBtn1Click(Sender: TObject);
begin
inherited;
dlgps_select:=tdlgps_select.Create(self);
dlgps_select.ShowModal;
dlgps_select.Free;
end;
procedure Tfmps_query.btnautoClick(Sender: TObject);
var
p:Tpoint;
begin
inherited;
GetCursorPos(P);
btnautoMouseDown(sender,mbLeft,[ssLeft],p.x,p.Y);
end;
procedure Tfmps_query.btnautoMouseDown(Sender: TObject;
Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
var
p:Tpoint;
begin
inherited;
GetCursorPos(P);
PopupMenu1.Popup(p.x,p.y);
end;
procedure Tfmps_query.nbatchClick(Sender: TObject);
var
x,i:integer;
BookmarkList: TBookmarkList;
TempBookmark: TBookmark;
temp,make:string;
Fb,Scomp:boolean;
GoodsNO,GoodsMoney:tstringlist;
begin
inherited;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -