亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? inv_undeliveryontime.pas

?? 文件包含程序源原文件
?? PAS
?? 第 1 頁 / 共 2 頁
字號(hào):
unit Inv_UnDeliveryOnTime;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, ExtCtrls, ComCtrls, EnhLV, GLLV, Buttons, InvDef, ComObj,
  xlsConst, ClipBrd, dpConst;

type
  TfrmUnDelivery = class(TForm)
    Panel1: TPanel;
    Panel2: TPanel;
    stsBarCnt: TStatusBar;
    tabsGroup: TTabControl;
    Panel3: TPanel;
    ListView: TGradLineListView;
    edtSulier: TLabeledEdit;
    edtMoldID: TLabeledEdit;
    edtMatCode: TLabeledEdit;
    cbxSuplier: TComboBox;
    edtSuplierName: TEdit;
    cbxMatClass: TComboBox;
    edtMatClass: TLabeledEdit;
    edtMatClassName: TEdit;
    edtEDate: TDateTimePicker;
    lblFDate: TLabel;
    btnQuery: TBitBtn;
    btnClose: TBitBtn;
    btnExcel: TBitBtn;
    rdoGroupBy: TRadioGroup;
    procedure FormCreate(Sender: TObject);
    procedure FormShow(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure tabsGroupChange(Sender: TObject);
    procedure rdoGroupByClick(Sender: TObject);
    procedure btnQueryClick(Sender: TObject);
    procedure cbxSuplierDropDown(Sender: TObject);
    procedure cbxSuplierChange(Sender: TObject);
    procedure cbxMatClassDropDown(Sender: TObject);
    procedure cbxMatClassChange(Sender: TObject);
    procedure btnCloseClick(Sender: TObject);
    procedure btnExcelClick(Sender: TObject);
    procedure edtSulierChange(Sender: TObject);
    procedure edtMatClassChange(Sender: TObject);
  private
    { Private declarations }
    //////////////////////////////////////////////////////
    procedure Read_UnDeliveryInfoList;
    Function  Set_QueryedList(sList: TList): TList;
    procedure CreateTabs_ByGroup(rdoIndex: integer; sList: TList);
    procedure Set_QryList_FromTabs(iTab: integer; FGroupList: TList);
    Function  CheckViewData(lcPA: Pointer; rdoTitleIndex,TabIndex: integer): boolean;

    procedure SetListView;
    function  SetListColumn(sListView: TGradLineListView): Integer;
    procedure MakeItemCaption(Item: TListItem);

    Procedure SetMultilingual;
  public
    { Public declarations }
    Procedure PrintProc;
    Function  CopyToClipBoard(var RecCnt, ColCnt: Integer): string;
    
  end;

var
  frmUnDelivery: TfrmUnDelivery;
  FUnDeliveryList,
  FQueryList: TList;
  FListViewClear,
  FOnMakeItemCaption,
  FOnCloseForm: Boolean;
  FSelectedItem: TListItem;
  FColCnt: Integer;
  iShiZaiKubun: integer;

  /////////////////////
  FGroupValue: array[0..120000] of variant;  //-- TabControl tabs group value

implementation

uses InvDM, Main;

{$R *.dfm}

procedure TfrmUnDelivery.FormCreate(Sender: TObject);
begin
  Top    := frmMain.Height;
  Left   := 0;
  Width  := Screen.Width;
  Height := Screen.Height-(frmMain.Height+stsBarCnt.Height+8);

  FUnDeliveryList := TList.Create;
  FUnDeliveryList.Clear;

  FQueryList := TList.Create;
  FQueryList.Clear;

  SetMultilingual;
end;

procedure TfrmUnDelivery.FormShow(Sender: TObject);
begin
  Top    := frmMain.Height;
  Left   := 0;
  Width  := Screen.Width;
  Height := Screen.Height-(frmMain.Height+stsBarCnt.Height+8);

  rdoGroupBy.ItemIndex := 4;
  
  edtSulier.Text := '';
  edtSuplierName.Text := '';
  cbxSuplier.Text     := '';
  edtMatClass.Text    := '';
  edtMatClassName.Text := '';
  cbxMatClass.Text     := '';
  edtMoldID.Text       := '';
  edtMatCode.Text     := '';

  case frmMain.IniData.warningdays of
    0: edtEDate.Date := Now+3;
    1: edtEDate.Date := Now+7;
    2: edtEDate.Date := Now+14;
    3: edtEDate.Date := Now;
    else edtEDate.Date := Now;
  end;

  Read_UnDeliveryInfoList;
end;

procedure TfrmUnDelivery.FormClose(Sender: TObject; var Action: TCloseAction);
begin
  dm_inventory.Read_MatGuageInfo(FUnDeliveryList);
  dm_inventory.ListFreeMemory(FQueryList);
  Action := caFree;
end;

///////////////////////////////////////////////////////////////////////////////////
procedure TfrmUnDelivery.Read_UnDeliveryInfoList;
var tmpf,tmpe: string;
begin
  tmpf := '2000/01/01 00:00:00';
  tmpe := formatdatetime('yyyy/mm/dd',edtEDate.Date)+' 23:59:59';

  dm_Inventory.Read_UnDeliveryOnTimeInfo(FUnDeliveryList,tmpf,tmpe);
  Set_QueryedList(FQueryList);
  CreateTabs_ByGroup(rdoGroupBy.ItemIndex,FQueryList);
  tabsGroupChange(Self);
end;

Function  TfrmUnDelivery.Set_QueryedList(sList: TList): TList;
  function SetQryCheck(lcP: PUnDeliveryOnTime): Boolean;
  var i: Integer;
      WMtlCode: array[0..1] of string;
      WDate: array[0..1] of TDateTime;
  begin
    Result := True;

    if (trim(edtSulier.Text)<>'') then
      if not (IntToStr(lcp^.hatchu_saki) = trim(edtSulier.Text)) then begin
      result := false;
      exit;
    end;

    //--
    WDate[0] := strToDatetime('2000/01/01 00:00');
    WDate[1] := strToDatetime(formatdatetime('yy/mm/dd',edtEDate.Date)+' 23:59:59');
    if ((WDate[0] > 2)and(formatdatetime('yy/mm/dd',WDate[0]) > formatdatetime('yy/mm/dd',lcP^.knr_shitei)))or
       ((WDate[1] > 2)and(formatdatetime('yy/mm/dd',WDate[1]) < formatdatetime('yy/mm/dd',lcP^.knr_shitei)))then begin
      Result := False;
      Exit;
    end;

    if trim(edtMoldID.Text)<>'' then
      if NOT(dm_Inventory.GetOrderRID(trim(edtMoldID.Text))=lcp^.seihin_rec_id) then begin
        result := false;
        exit;
      end;

    if trim(edtMatCode.Text)<>'' then begin
      if not(dm_inventory.GetMaterialCode(lcp^.shizai_rec_id)=trim(edtMatCode.Text))then begin
        result := false;
        exit;
      end;
   end;
   
  iShiZaiKubun := dm_inventory.GetShiZaiKubunID(trim(edtMatClass.Text));
  if (trim(edtMatClass.Text)<>'') then
    if not (dm_inventory.Get_KubunRecID_FromShiZai(lcp^.shizai_rec_id) = iShiZaiKubun) then begin
      result := false;
      exit;
    end;
  end;
var
  ix: integer;
  lcpA: PUnDeliveryOnTime;
begin
   sList.Clear;
   for ix := 0 to FUnDeliveryList.Count - 1 do
   begin
     lcpA := FUnDeliveryList[ix];
     if not SetQryCheck(lcpA) then continue;
     sList.Add(lcpA);
   end;
   result := sList
end;

procedure TfrmUnDelivery.CreateTabs_ByGroup(rdoIndex: integer; sList: TList);
var tmpTabIndex: integer;
    i,j: integer;
    lcp: PUnDeliveryOnTime;
    tmpGroupTitle: variant;
    iGroupFind: Boolean;
begin
  tmpTabIndex := 0;
  tabsGroup.Tabs.Clear;

  for i := 0 to sList.Count - 1 do
  begin
    lcp := sList[i];
    if lcp = nil then continue;

    case rdoIndex of
      0: tmpGroupTitle := dm_inventory.GetShigenName(lcp^.hatchu_saki);
      1: tmpGroupTitle := dm_inventory.GetOrderNo(lcp^.seihin_rec_id);
      2: tmpGroupTitle := FormatDatetime('yy/mm/dd',lcp^.knr_shitei);
      3: tmpGroupTitle := dm_inventory.GetMaterialCode(lcp^.shizai_rec_id);
      4: tmpGroupTitle := 'ALL';
      else tmpGroupTitle := 'ALL';
    end;

    //-- 判斷是否有找到抬頭信息
    iGroupFind := false;
    for j := 0 to tmpTabIndex - 1 do
    begin
      try
        if tmpGroupTitle = FGroupValue[j] then begin
          iGroupFind := true;
          break;
        end;
      except
      end;
    end;

    if not iGroupFind then begin   //-- 沒找到當(dāng)前資料的抬頭則新增tabs
      FGroupValue[tmpTabIndex] := tmpGroupTitle;
      inc(tmpTabIndex);

      tabsGroup.Tabs.Add(tmpGroupTitle);
    end;

  end;
  //////////////////////////////////////////////
  //-- tabsGroup.TabIndex value
  if tmpTabIndex >0 then tabsGroup.TabIndex := 0
  else tabsGroup.TabIndex := -1;
end;

procedure TfrmUnDelivery.Set_QryList_FromTabs(iTab: integer; FGroupList: TList);
  function SetQryCheck(lcP: PUnDeliveryOnTime): Boolean;
  var i: Integer;
      WMtlCode: array[0..1] of string;
      WDate: array[0..1] of TDateTime;
  begin
    Result := True;

    if (trim(edtSulier.Text)<>'') then
      if not (IntToStr(lcp^.hatchu_saki) = trim(edtSulier.Text)) then begin
      result := false;
      exit;
    end;
    
    //--
    WDate[0] := strToDatetime('2000/01/01 00:00');
    WDate[1] := strToDatetime(formatdatetime('yy/mm/dd',edtEDate.Date)+' 23:59:59');
    if ((WDate[0] > 2)and(formatdatetime('yy/mm/dd',WDate[0]) > formatdatetime('yy/mm/dd',lcP^.knr_shitei)))or
       ((WDate[1] > 2)and(formatdatetime('yy/mm/dd',WDate[1]) < formatdatetime('yy/mm/dd',lcP^.knr_shitei)))then begin
      Result := False;
      Exit;
    end;

    if trim(edtMoldID.Text)<>'' then
      if NOT(dm_Inventory.GetOrderRID(trim(edtMoldID.Text))=lcp^.seihin_rec_id) then begin
        result := false;
        exit;
      end;

   if trim(edtMatCode.Text)<>'' then begin
      if not(dm_inventory.GetMaterialCode(lcp^.shizai_rec_id)=trim(edtMatCode.Text))then begin
        result := false;
        exit;
      end;
   end;

  iShiZaiKubun := dm_inventory.GetShiZaiKubunID(trim(edtMatClass.Text));
  if (trim(edtMatClass.Text)<>'') then
    if not (dm_inventory.Get_KubunRecID_FromShiZai(lcp^.shizai_rec_id) = iShiZaiKubun) then begin
      result := false;
      exit;
    end;
  end;
var i,j: integer;
    lcP,lcPA: PUnDeliveryOnTime;
    iView: Boolean;
    iBool: Boolean;
begin
  if FUnDeliveryList = nil then exit;
  if FUnDeliveryList.Count = 0 then exit;
  FQueryList.Clear;

  for i := 0 to FUnDeliveryList.Count-1 do begin
    lcP := FUnDeliveryList.Items[i];
    if not SetQryCheck(lcp) then continue;
    iView := CheckViewData(lcP, rdoGroupBy.ItemIndex, TabsGroup.TabIndex);
    if not iView then Continue;
    FQueryList.Add(lcP);
  end;
end;

Function  TfrmUnDelivery.CheckViewData(lcPA: Pointer; rdoTitleIndex,TabIndex: integer): boolean;
var
  TmpV: Variant;
  lcp: PUnDeliveryOnTime;
begin

      Result := False;

      if lcPA=Nil then Exit;
      lcp := LcpA;
      if (rdoTitleIndex<0) or (TabIndex<0) then Exit;

      if rdoTitleIndex = 4 then
      begin
           Result:=True;
           Exit;
      end;

    case rdoTitleIndex of
      0: TmpV := dm_inventory.GetShigenName(lcp^.hatchu_saki);
      1: TmpV := dm_inventory.GetOrderNo(lcp^.seihin_rec_id);
      2: TmpV := FormatDatetime('yy/mm/dd',lcp^.knr_shitei);
      3: TmpV := dm_inventory.GetMaterialCode(lcp^.shizai_rec_id);
      4: TmpV := 'ALL';
      else TmpV := 'ALL';
    end;
    try
      if TmPV = FGroupValue[TabIndex] then Result:=True;
    except
      Result:=False;
    end;
end;

procedure TfrmUnDelivery.SetListView;
var i,j: Integer;
    lcP: PUnDeliveryOnTime;
    Item: TListItem;
begin
  Screen.Cursor  := crHourGlass;
  with ListView.Items do begin
    BeginUpdate;
    Clear;
    EndUpdate;
  end;

  SetListColumn(ListView);
  //--
  ListView.Items.BeginUpdate;

  //FQueryList.Sort(TListSortCompare(@ListSortCompare));

  FOnMakeItemCaption := True;
  try
    for i := 0 to FQueryList.Count-1 do begin
      lcP  := FQueryList.Items[i];
      Item := ListView.Items.Add;
      for j := 0 to FColCnt-1 do Item.Subitems.Add('');
      lcP^.ITEM := Item;
      Item.Data := lcP;
      MakeItemCaption(Item);
    end;

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
一区二区三区影院| 91丨porny丨在线| 欧美亚洲动漫精品| 一区二区三区日本| 日本精品视频一区二区三区| 欧美精品一区二区久久婷婷| 福利视频网站一区二区三区| 国产精品美女久久久久久久久| 亚洲国产精品天堂| 亚洲最新在线观看| 一区二区三区91| 国产午夜精品一区二区三区视频| 欧美男男青年gay1069videost| www.成人在线| 99re视频精品| 色一区在线观看| 欧美午夜在线一二页| 91精品国产全国免费观看| 777午夜精品视频在线播放| 欧美色网站导航| 91麻豆精品国产91久久久| 欧美日韩精品一区二区三区| 欧美一区二区不卡视频| 国产日韩欧美a| 中文字幕一区二区三区蜜月| 一区二区欧美在线观看| 一区二区三区四区亚洲| 欧美高清在线一区二区| 国产农村妇女毛片精品久久麻豆| 日本va欧美va精品| 欧美日韩精品一区二区三区蜜桃| 日韩欧美中文字幕精品| 一区二区视频在线看| 日产国产高清一区二区三区| 成人午夜在线播放| 丰满少妇在线播放bd日韩电影| 亚洲图片欧美一区| 亚洲国产一区二区三区青草影视| 成人免费毛片a| 午夜伦欧美伦电影理论片| 亚洲女女做受ⅹxx高潮| 国产成人精品午夜视频免费| 国产日韩精品一区二区三区 | 粉嫩蜜臀av国产精品网站| 国产精品欧美久久久久无广告| 一本到不卡免费一区二区| 日本免费新一区视频| 亚洲三级久久久| 精品美女被调教视频大全网站| 色悠久久久久综合欧美99| 日本在线不卡视频一二三区| 国产日产欧美精品一区二区三区| 日本韩国精品在线| 国产成人亚洲综合色影视 | 日韩一区有码在线| 日韩精品专区在线| 91视频91自| 国产成人精品三级麻豆| 日精品一区二区| 欧美高清在线精品一区| 日韩一二三区视频| 日本韩国视频一区二区| 成人午夜视频在线观看| 蜜臀精品一区二区三区在线观看 | 欧美精品一区二区高清在线观看 | 一区在线中文字幕| 欧美剧情片在线观看| 成人av电影免费在线播放| 亚洲精品亚洲人成人网| 国产精品日韩精品欧美在线| 欧美一级一级性生活免费录像| 一本到高清视频免费精品| 久久99久久精品| 五月婷婷激情综合| 亚洲尤物视频在线| 中文字幕不卡的av| 久久久久久久性| 日韩久久精品一区| 日韩写真欧美这视频| 欧美日韩亚洲另类| 欧美激情一区二区三区不卡 | 国产精品美女久久久久久 | 成人av影视在线观看| 美女www一区二区| 美腿丝袜在线亚洲一区| 亚洲欧洲一区二区三区| 国产清纯在线一区二区www| 在线综合视频播放| 欧美视频在线播放| 正在播放亚洲一区| 4hu四虎永久在线影院成人| 欧美日本乱大交xxxxx| 欧美日韩一区国产| 欧美高清视频一二三区| 欧美区视频在线观看| 91精选在线观看| 精品人在线二区三区| 精品99一区二区| 2020国产成人综合网| 中文字幕av一区二区三区免费看| 久久婷婷色综合| 欧美国产精品一区| 亚洲国产日韩一级| 国产一区二区免费看| 91色乱码一区二区三区| 欧美一区二区视频网站| 国产日产欧美精品一区二区三区| 亚洲男女毛片无遮挡| 日本亚洲天堂网| 成人综合婷婷国产精品久久蜜臀| 在线视频观看一区| 日韩欧美高清一区| 中文字幕佐山爱一区二区免费| 亚洲风情在线资源站| 国产麻豆成人精品| 欧美三级午夜理伦三级中视频| 精品国产3级a| 国产精品2024| 欧美乱妇15p| 国产精品久久久久永久免费观看 | 日本欧美一区二区| 成人av网站在线观看| 欧美一区二区在线视频| 综合网在线视频| 精品一区二区三区不卡| 色成年激情久久综合| 久久久影视传媒| 丝袜国产日韩另类美女| 成人国产精品视频| 日韩欧美精品在线视频| 亚洲一区影音先锋| 国产成人av影院| 日韩你懂的电影在线观看| 亚洲在线观看免费| 99精品视频在线播放观看| 欧美电视剧在线观看完整版| 亚洲最新在线观看| 91在线播放网址| 国产精品全国免费观看高清| 久久国产欧美日韩精品| 精品一区二区精品| 91精品中文字幕一区二区三区| 亚洲色图视频网| av激情成人网| 中文字幕av一区 二区| 久久se精品一区精品二区| 欧美日本一道本在线视频| 亚洲免费在线看| 91在线一区二区三区| 亚洲国产精品99久久久久久久久| 久久草av在线| 欧美不卡123| 久久不见久久见免费视频7| 555www色欧美视频| 日韩影视精彩在线| 欧美日韩一区三区| 午夜电影网一区| 欧美精品少妇一区二区三区 | 蜜桃精品视频在线| 欧美一区二区人人喊爽| 五月激情六月综合| 欧美精品一级二级三级| 无吗不卡中文字幕| 欧美日本国产视频| 视频一区国产视频| 日韩欧美色电影| 激情综合五月婷婷| 日韩精品一区二区三区视频| 91麻豆swag| 亚洲日本护士毛茸茸| 在线观看不卡一区| 亚洲高清久久久| 91麻豆精品国产自产在线 | 亚洲成人黄色影院| 欧美妇女性影城| 久久精品国产一区二区三区免费看 | 精品国产123| 国产成人小视频| 亚洲色欲色欲www| 欧美系列在线观看| 男男gaygay亚洲| 337p日本欧洲亚洲大胆精品| 国产高清视频一区| 亚洲毛片av在线| 欧美日韩mp4| 国产在线精品一区在线观看麻豆| 国产欧美日韩在线观看| 91麻豆国产福利在线观看| 午夜欧美视频在线观看| 精品美女一区二区三区| 成人av在线观| 日韩精品一级中文字幕精品视频免费观看 | 欧美一区二区久久久| 国产乱子轮精品视频| 亚洲欧美在线视频| 欧美一区二区三区白人| 国产99久久精品| 亚洲超碰97人人做人人爱| 精品日韩一区二区三区| 99精品视频中文字幕|