⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 untps_query.pas

📁 适合行业为眼镜业
💻 PAS
📖 第 1 页 / 共 2 页
字号:
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 + -