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

📄 untlimitgoods.pas

📁 适合行业为眼镜业
💻 PAS
📖 第 1 页 / 共 2 页
字号:
unit Untlimitgoods;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, fm_Base, DB, StdCtrls, Buttons, Grids, DBGrids, ExtCtrls, Menus,
  DBClient;
  /////////////////////// 定义数据集合
type Tsendrequirement =record  //需求
  codes:string;
  copy_date:string;
  part:string;
  storage:string;
  shop:string;
  Transactor:string;
  Condense:string;
  R_Remark:string;
end;
/////////////
////////////////////////////
type
  Tfmlimitgoods = class(TfmBase)
    Panel1: TPanel;
    Label1: TLabel;
    LblSort: TLabel;
    ComboBox1: TComboBox;
    edtTime: TEdit;
    DBGrid1: TDBGrid;
    Panel2: TPanel;
    btnExit: TBitBtn;
    btnpagedown: TBitBtn;
    BtnSort: TBitBtn;
    BitBtn1: TBitBtn;
    ds_warn_limit: TDataSource;
    edtRecNo: TEdit;
    PopupMenu1: TPopupMenu;
    Ngoods: TMenuItem;
    Nbatch: TMenuItem;
    btnauto: TBitBtn;
    cdsmasterdata: TClientDataSet;
    cdsdetaildata: TClientDataSet;
    procedure btnExitClick(Sender: TObject);
    procedure BtnSortClick(Sender: TObject);
    procedure FormShow(Sender: TObject);
    procedure BitBtn1Click(Sender: TObject);
    procedure btnpagedownClick(Sender: TObject);
    procedure btnautoMouseDown(Sender: TObject; Button: TMouseButton;
      Shift: TShiftState; X, Y: Integer);
    procedure btnautoClick(Sender: TObject);
    procedure NgoodsClick(Sender: TObject);
    procedure NbatchClick(Sender: TObject);
    procedure DBGrid1TitleClick(Column: TColumn);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
  private
    { Private declarations }
    managerid:string;
    senddata:tsendrequirement;
    LocalCount:integer;
    procedure readdata;
  public
    { Public declarations }
    tempsql,tables,tj:string;
    btnmode:integer;
  end;

var
  fmlimitgoods: Tfmlimitgoods;

implementation

uses func, untdatadm,fm_SetColumn, Udlgstock, Data;

{$R *.dfm}
procedure Tfmlimitgoods.readdata;
var
  t_sql:widestring;
  quedata:olevariant;
begin
  dmmain.cdsquery.Close;
  dmmain.cdsquery.Data:=null;
  quedata:=null;
   screen.Cursor := crhourglass;
   //关掉与DBGRID 的互动
   dmmain.cdsquery.DisableControls;
   tables:=' * from [Vwaning_limit]'; //表明
   tempsql:= 'select top 20 ';
   T_sql := tempsql+tables+tj;
  try
  if dmmain.cdsquery.Active then dmmain.cdsquery.Close;
  dmmain.cdsquery.Data:=null;
  quedata:=adisp.GetRecord(t_sql);
   if not varisnull(quedata) then
    begin
      dmmain.cdsquery.Data:=quedata;
      dmmain.cdsquery.Open;
      quedata:=null;
      ///ydy add
       dmmain.cdsquery.Last;
       edtRecNo.Text := '当前已下载: '+inttostr(dmmain.cdsquery.recordcount)+'条';

    //重新打开
      dmmain.cdsquery.EnableControls;
      dbgrid1.Refresh;
      //得到此次查询的键值
     LocalCount := GetKeyFieldValue('id',dmmain.cdsquery);   //传入具体字段

    end else
    begin
       //不再有数据
        dmmain.cdsquery.EnableControls;        //ydy  必须要
       btnpagedown.Enabled := false;
       screen.Cursor :=  crdefault;
      exit;
    end;
  except
    dmmain.cdsquery.EnableControls;
    dbgrid1.Refresh;
  end;
  dbgrid1.Refresh;
  screen.Cursor :=  crdefault;

end;
procedure Tfmlimitgoods.btnExitClick(Sender: TObject);
begin
  inherited;
  close;
end;

procedure Tfmlimitgoods.BtnSortClick(Sender: TObject);
begin
  inherited;
  if not DBGrid1.DataSource.DataSet.Active then  exit;
  with TfmSetColumn.Create(Self) do
  try
    showmodal;
  finally
    free;
  end;
end;

procedure Tfmlimitgoods.FormShow(Sender: TObject);
var
  sql:widestring;
begin
  inherited;
  dbgCur:=dbgrid1;
  combobox1.ItemIndex:=0;
  if btnmode=2 then
  begin
    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:=true;  //配送单菜单为真
      ngoods.Enabled:=false; // 商品需求为假
    end;
    except

    end;
    btnauto.Enabled:=true;
  end;
  readdata;
end;

procedure Tfmlimitgoods.BitBtn1Click(Sender: TObject);
begin
  inherited;
  dlgstock:=tdlgstock.Create(self);
  dlgstock.showmode:=2;
  dlgstock.ShowModal;
  dlgstock.Free;
end;

procedure Tfmlimitgoods.btnpagedownClick(Sender: TObject);
var
  i:Integer;
  t_sql,str1,strend:wideString;
  quedata:olevariant;
  lStart, lEnd : Integer;
begin
  inherited;
  if not dmmain.cdsquery.Active then exit;

    screen.Cursor := crhourglass;
   dmmain.cdsquery.DisableControls;
    if combobox1.Text = '全部' then
    begin
      tempsql:='select'
    end else
    begin
      tempsql:='select top ' + trim(ComboBox1.Text);
    end;
    T_sql := tempsql+tables+tj;
    str1 := ' and  id > '+ inttostr(localcount);
    strend := T_sql + str1;
  try
   quedata:=adisp.GetRecord(strend);
    if not varisnull(quedata) then
    begin
     if dmmain.cdsquery.Active then dmmain.cdsquery.Close;
      dmmain.cdsquery.Open;
      dmmain.cdsquery.AppendData(quedata,true);
      quedata:=null;
      ///ydy add
       dmmain.cdsquery.Last;
      dmmain.cdsquery.EnableControls;
      //得到此次查询的键值
      LocalCount := GetKeyFieldValue('id',dmmain.cdsquery);   //传入具体字段
    edtRecNo.Text := '当前共有'+inttostr(dmmain.cdsquery.recordcount) +'条';
    end else
    begin
       //不再有数据
        dmmain.cdsquery.EnableControls;        //ydy  必须要
       btnpagedown.Enabled := false;
       screen.Cursor :=  crdefault;
      exit;
    end;
  except
    dmmain.cdsquery.EnableControls;
    dbgrid1.Refresh;
  end;
  dbgrid1.Refresh;
  screen.Cursor :=  crdefault;

end;

procedure Tfmlimitgoods.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 Tfmlimitgoods.btnautoClick(Sender: TObject);
var
 p:Tpoint;
begin
  inherited;
  GetCursorPos(P);
  btnautoMouseDown(sender,mbLeft,[ssLeft],p.x,p.Y);

end;

procedure Tfmlimitgoods.NgoodsClick(Sender: TObject);
var
   x:integer;
   BookmarkList: TBookmarkList;
   TempBookmark: TBookmark;
   temp,make:string;
begin
  inherited;
  ///写商品需求表;
  if dmmain.CDSquery.IsEmpty then
  begin
    Application.MessageBox('没有商品!',pchar(application.Title),mb_iconinformation);
    exit;
  end;
  try
   DBGrid1.Datasource.Dataset.DisableControls;  //
   temp:='select max(right(stock_no,4)) from goods_requirement where copy_date='+''''+formatdatetime('yyyy''-''mm''-''dd',date)+''''+' and part_no='+''''+trim(Handle_Part)+'''';
   make:='SQ-'+trim(Handle_Part);   //5-11 编码中用部门编号
   senddata.codes:=setcode(temp,make);
   senddata.copy_date:=formatdatetime('yyyy''-''mm''-''dd',date);
   senddata.part:=trim(Handle_Part);

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -