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

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

?? matbalain.pas

?? 文件包含程序源原文件
?? PAS
?? 第 1 頁 / 共 4 頁
字號:
unit MatBalaIn;

interface

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

type
  TfrmMatBalaIn = class(TTabForm)
    pnlInput: TPanel;
    lblindate: TLabel;
    lblCode: TLabel;
    lblName: TLabel;
    lblRemarks: TLabel;
    lblpaper: TLabel;
    lblUType: TLabel;
    lblInGuage: TLabel;
    lblunitPrice: TLabel;
    lblINQuantity: TLabel;
    lblINAmount: TLabel;
    lblStockID: TLabel;
    edtDate: TEdit;
    edtMatCode: TEdit;
    edtMatName: TEdit;
    edtNote: TEdit;
    edtINPaperNo: TEdit;
    edtPrice: TEx2NumEdit;
    edtWeight: TEx2NumEdit;
    Panel4: TPanel;
    btnNew: TBitBtn;
    Panel9: TPanel;
    cbxStk: TComboBox;
    edtStkID: TEdit;
    edtStkName: TEdit;
    Panel5: TPanel;
    Panel1: TPanel;
    btnDelete: TBitBtn;
    cbxGuage: TComboBox;
    edtGuageID: TEx2NumEdit;
    edtGuageName: TEdit;
    Panel2: TPanel;
    btnSave: TBitBtn;
    lblIsspaper: TLabel;
    edtIssPaperNO: TEdit;
    Panel3: TPanel;
    ckbNew: TCheckBox;
    rdoGroupBy: TRadioGroup;
    tabsGroup: TTabControl;
    Panel11: TPanel;
    Panel7: TPanel;
    btnPaper: TBitBtn;
    ListViewMatIN: TGradLineListView;
    Panel6: TPanel;
    btnGuageDef: TSpeedButton;
    lblTPrice: TLabel;
    procedure FormCreate(Sender: TObject);
    procedure FormShow(Sender: TObject);
    procedure FormDestroy(Sender: TObject);
    procedure FormCloseQuery(Sender: TObject; var CanClose: Boolean);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);

    procedure TabControlChanging(Sender: TObject; var AllowChange: Boolean);
    procedure ControlChange(Sender: TObject);

    procedure ControlExit(Sender: TObject);
    procedure edtNoteKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState);
    procedure edtDateKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState);

    procedure btnNewClick(Sender: TObject);
    procedure btnSaveClick(Sender: TObject);
    procedure btnDeleteClick(Sender: TObject);
    procedure ckbNewClick(Sender: TObject);
    procedure btnExitClick(Sender: TObject);

    procedure rdoGroupByClick(Sender: TObject);
    procedure tabsGroupChange(Sender: TObject);
    procedure cbxGuageDropDown(Sender: TObject);
    procedure cbxStkChange(Sender: TObject);
    procedure btnPaperClick(Sender: TObject);
    procedure btnMatQryClick(Sender: TObject);

    procedure cbxGuageChange(Sender: TObject);
    procedure btnGuageDefClick(Sender: TObject);
    procedure edtGuageNameExit(Sender: TObject);



  private
    { Private declarations }

    function  ReturnValueToVariable(lcP: PINVENTORY; CtrlList: PCONTROL_LIST; Msg: Boolean): Boolean;
    procedure SetData(Item: Pointer);
    procedure SetNull;
    function  ErrorCheck(Item: PINVENTORY): Integer;
    function  UpdateProc(UpdateListList: TList): Boolean;
    procedure UpdateCheck;
    procedure SetCopy;

    //////////////////////////////////////////////////////
    //////////////////////////////////////////////////////
    //////////////////////////////////////////////////////
    procedure Read_IOChangedList;
    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 }
    default_suplier: integer;
    default_issuepaper: string;
    FOutSelected: PINVENTORY;

    procedure SetNew(Index: Integer);
    function  RECExists(RecID: LongInt): Boolean;

    Procedure Excel_StockInList(sList: TList);

  protected
    { Protected }
    function  GetTabCaption(Item: Pointer): string; override;
    procedure SetKomoku(Item: Pointer); override;

  end;

var
  frmMatBalaIn: TfrmMatBalaIn;
  FExitSkip: boolean;
  MatRID: LongInt;

  //////////////////////
  FMatIOList,
  FQueryList: TList;
  FListViewClear,
  FOnMakeItemCaption: Boolean;
  FSelectedItem: TListItem;
  FColCnt: Integer;

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

implementation

uses Main, InvDM, QryMaterial, QryOrderDelivery, InSuplier;

{$R *.dfm}

procedure TfrmMatBalaIn.FormCreate(Sender: TObject);
var ix: integer;
    View: TINVENTORY;
begin
  inherited;   
  Top  := 0;
  Left := frmMain.Width;

  /////////////////////////////
  FMatIOList := TList.Create;
  FMatIOList.Clear;

  FQueryList := TList.Create;
  FQueryList.Clear;

  IX := 0;
  InitCtrlList(edtIssPaperNO,  IX, Longint(@View.ISS_PAPERNO)-Longint(@View),    nil,nil);
  Inc(IX);
  InitCtrlList(edtINPaperNo,   IX, Longint(@View.PAPERNO)-Longint(@View),    nil,nil);
  Inc(IX);
  InitCtrlList(edtStkID,       IX, Longint(@View.stk_id)-Longint(@View),   nil,nil);
  Inc(IX);
  InitCtrlList(edtDate,        IX, Longint(@View.date)-Longint(@View),    nil,nil);
  Inc(IX);
  InitCtrlList(edtMatCode,     IX, Longint(@View.MAT_RID)-Longint(@View),    nil,nil);
  Inc(IX);
  InitCtrlList(edtMatName,     IX, Longint(@View.MAT_NM)-Longint(@View),    nil,nil);
  Inc(IX);
  InitCtrlList(edtGuageID,     IX,  Longint(@View.GUAGE_ID)-Longint(@View),    nil,nil);
  Inc(IX);
  InitCtrlList(edtPrice,       IX, Longint(@View.UNT_PRICE)-Longint(@View),    nil,nil);
  Inc(IX);
  InitCtrlList(edtWeight,      IX, Longint(@View.QUANTITY)-Longint(@View),    nil,nil);
  Inc(IX);
  InitCtrlList(edtNote,        99, Longint(@View.NOTE)-Longint(@View),    nil,nil);
  PostCtrlList;

  SetMultilingual;
  SetNull;
end;

procedure TfrmMatBalaIn.FormShow(Sender: TObject);
begin
  Top  := 0;
  Left := frmMain.Width;

  TabControl.Tabs.Clear;
  SetNew(-1);
  if TabControl.Tabs.Count > 0 then SelectTabIndex(0);

  //////////////////////////////////////////////////////
  sFDate := Now;
  sEDate := Now+1;
  dm_Inventory.Read_IOHistory(FMatIOList,trim(edtStkID.Text),4,sFDate,sEDate);
  Set_QueryedList(FQueryList);
  CreateTabs_ByGroup(rdoGroupBy.ItemIndex,FQueryList);
  tabsGroupChange(Self);
end;

procedure TfrmMatBalaIn.FormDestroy(Sender: TObject);
begin
//
end;

procedure TfrmMatBalaIn.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
var UpdateListList, List: TList;
begin
  UpdateListList := GetUpdateListList;
  if (UpdateListList.Count>0)then begin
    List := UpdateListList[0];
    if (List.Count=0) then Exit;
    if ErrorCheck(Selected) <> 0 then begin
      CanClose := False;
      Exit;
    end;
    UpdateProc(UpdateListList);
    TabControl.Tabs.Clear;
  end;
  dm_Inventory.Delete_NullMaterial;
end;

procedure TfrmMatBalaIn.FormClose(Sender: TObject; var Action: TCloseAction);
begin
  //frmInvHistory.ReReadProc(True);
  dm_Inventory.ListFreeMemory(FMatIOList);
  Action := caHide;
end;

procedure TfrmMatBalaIn.ControlChange(Sender: TObject);
var CtrlList: PCONTROL_LIST;
    lcP:  PINVENTORY;
    WRID: LongInt;
    PInputID: string;
    View: TINVENTORY;
begin
  if OnTabChange then Exit;
  if Selected = nil then Exit;
  lcP := Selected;
  try    CtrlList := GetCtrlListTarget(Sender as TWinControl);
  except
    Exit;
  end;

  if CtrlList = nil then Exit;
  if not FOnUndo then SetUndoBuffer(Sender as TWinControl);
  SetUpdateList(lcP^.REC_ID, CtrlList^.Address, CtrlList^.UpdateIndex, 0, lcP);

  //////////////////////////////////
  if Sender = edtStkID then begin
    edtStkName.Text := dm_Inventory.GetStockName(trim(edtStkID.Text));
  end;

  if Sender = edtMatCode then begin
      WRID             := dm_Inventory.GetMaterialRID(TEdit(Sender).Text);
      edtMatName.Text  := dm_Inventory.GetMaterialName(WRID);
      lblUType.Caption := dm_Inventory.GetUnitTypeName(WRID);
      
      //////////////////////////
      lcp^.MAT_RID := WRID;
      edtGuageName.Text := dm_Inventory.Get_GuageName(WRID,Trunc(edtGuageID.Value));
      SetTabCaption(lcP);
  end;

  if Sender = edtGuageID then begin
    edtGuageName.Text := dm_Inventory.Get_GuageName(lcp^.MAT_RID,Trunc(edtGuageID.Value));
    lcp^.GUAGE_ID := trunc(edtGuageID.Value);
    SetUpdateList(lcP^.REC_ID, @lcP^.GUAGE_ID, LongInt(@View.GUAGE_ID)-LongInt(@View), 0, lcP);
  end;

  /////////////////////////////////
  if (Sender = edtPrice)or(Sender = edtWeight) then
  begin
    lblTPrice.Caption := FormatFloat('#,##0.00', (RoundTo(edtPrice.Value,-2) * RoundTo(edtWeight.Value,-2)));
    lcp^.UNT_PRICE := trunc(RoundTo(edtPrice.Value,-2));
    SetUpdateList(lcP^.REC_ID, @lcP^.UNT_PRICE, LongInt(@View.UNT_PRICE)-LongInt(@View), 0, lcP);
    lcp^.TTL_PRICE := trunc(RoundTo(edtWeight.Value,-2));
    SetUpdateList(lcP^.REC_ID, @lcP^.TTL_PRICE, LongInt(@View.TTL_PRICE)-LongInt(@View), 0, lcP);
  end;
  /////////////////////////////////
end;

procedure TfrmMatBalaIn.ControlExit(Sender: TObject);
var CtrlList: PCONTROL_LIST;
    lcP: Pointer;
begin
  if FExitSkip then Exit;
  if Selected = nil then Exit;
  lcP := Selected;
  try
    CtrlList := GetCtrlListTarget(Sender as TWinControl);
  except
    Exit;
  end;

  if (CtrlList = nil)or((CtrlList<>nil)and(CtrlList^.Address=nil)) then Exit;
  if not ReturnValueToVariable(lcP, CtrlList, True) then
  begin
    ReturnValueFromTag(CtrlList);
    try
      CtrlList^.Target.SetFocus;
    except
      Exit;
    end;
  end;
end;

procedure TfrmMatBalaIn.edtDateKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState);
var WDate: TDateTime;
begin
  if (Key=VK_RETURN)and(ssShift in Shift)then
    if not(dm_Inventory.DateErrorCheck(edtDate.Text, WDate)) then begin
      Key := 0;
      edtNote.SetFocus;
      Exit;
    end;
  ControlKeyDown(Sender, Key, Shift);
end;

procedure TfrmMatBalaIn.edtNoteKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState);
var WK: Word;
begin
  WK := Key;
  ControlKeyDown(Sender, Key, Shift);
  if (WK=VK_RETURN)and not(ssShift in Shift) then
    if ckbNew.Checked then begin
      FExitSkip := True;
      try
        btnNewClick(Sender);
      finally
        FExitSkip := False;
      end;
    end;
end;

procedure TfrmMatBalaIn.TabControlChanging(Sender: TObject;
  var AllowChange: Boolean);
begin
  inherited;
  AllowChange := True;
  if ErrorCheck(Selected) <> 0 then AllowChange := False
  else UpdateCheck;
end;

{**********************************************************************************}
{**********************************************************************************}
function  TfrmMatBalaIn.ReturnValueToVariable(lcP: PINVENTORY; CtrlList: PCONTROL_LIST; Msg: Boolean): Boolean;
procedure TotalPriceProc;
  var View: TINVENTORY;
  begin
    Double(CtrlList^.Address^):=(CtrlList^.Target as TEx2NumEdit).Value;
    lcP^.TTL_PRICE := RoundTo(lcP^.UNT_PRICE,-2) * RoundTo(lcP^.QUANTITY,-2);
    lblTPrice.Caption := FormatFloat('#,##0.00', RoundTo(lcP^.TTL_PRICE,-2));
    SetUpdateList(lcP^.REC_ID, @lcP^.TTL_PRICE, LongInt(@View.TTL_PRICE)-LongInt(@View), 0, lcP);

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
视频在线观看一区| 欧亚洲嫩模精品一区三区| 色综合久久综合中文综合网| 51午夜精品国产| 国产精品乱人伦一区二区| 日本欧美一区二区| 欧美私人免费视频| 综合婷婷亚洲小说| 国产福利精品一区二区| 日韩午夜激情免费电影| 亚洲国产视频直播| 色网综合在线观看| 国产精品三级电影| 国产精品69毛片高清亚洲| 日韩欧美一二区| 日韩一区精品视频| 欧美午夜精品一区二区蜜桃| 亚洲天天做日日做天天谢日日欢| 91视频在线看| 久久久影视传媒| 另类人妖一区二区av| 欧美精品国产精品| 亚洲午夜久久久久久久久电影网| 成人欧美一区二区三区小说| 久久99精品国产麻豆婷婷| 欧美日韩一区精品| 亚洲线精品一区二区三区| 97久久精品人人爽人人爽蜜臀| 在线亚洲+欧美+日本专区| 亚洲欧美激情在线| 色视频一区二区| 亚洲天堂a在线| 91亚洲午夜精品久久久久久| 亚洲人吸女人奶水| 91丨九色丨尤物| 亚洲综合色成人| 欧美亚洲国产一区在线观看网站| 欧美一区二区三区播放老司机| 日韩写真欧美这视频| 极品尤物av久久免费看| 欧美一区二区三区男人的天堂| 国产精品久久久久影院| 成人av小说网| 亚洲欧美另类综合偷拍| 欧美情侣在线播放| 老汉av免费一区二区三区 | 99久久综合色| 亚洲色图欧洲色图婷婷| 日本福利一区二区| 日韩av网站免费在线| 精品欧美一区二区久久| 国产91露脸合集magnet| 亚洲婷婷综合久久一本伊一区| 老司机免费视频一区二区三区| 本田岬高潮一区二区三区| 国产精品电影一区二区| 欧美在线不卡视频| 日韩专区中文字幕一区二区| 日韩免费观看高清完整版| 国产一区二区不卡| 一区二区三区**美女毛片| 91精品国产欧美一区二区18| 国产成人精品一区二区三区四区| 欧美一区二区黄色| 成人性生交大片免费看视频在线| 91精品国产欧美日韩| 风流少妇一区二区| 亚洲一区在线观看网站| 精品福利av导航| 欧洲av在线精品| 国产精品一区二区久久精品爱涩| 日韩欧美一级精品久久| 成人aa视频在线观看| 亚洲自拍偷拍网站| 国产色婷婷亚洲99精品小说| 欧美唯美清纯偷拍| 9色porny自拍视频一区二区| 性久久久久久久| 亚洲欧洲在线观看av| 日韩欧美高清dvd碟片| 色狠狠一区二区| 国产精品一区二区久激情瑜伽| 久久久综合激的五月天| 欧美男男青年gay1069videost| 亚洲精品久久久久久国产精华液| 成人黄色免费短视频| 蜜桃在线一区二区三区| 亚洲欧洲精品成人久久奇米网| 成人国产精品免费观看视频| 污片在线观看一区二区| 日韩毛片视频在线看| 国产亚洲综合色| 欧美一区二区视频网站| 91福利国产精品| 成人黄色国产精品网站大全在线免费观看| 日韩免费观看高清完整版在线观看| 日韩成人精品在线| 一区二区三区 在线观看视频| 欧美中文字幕亚洲一区二区va在线| 亚洲一二三区在线观看| 中文字幕一区二区三中文字幕| 99在线视频精品| 国产资源精品在线观看| 美女国产一区二区三区| 午夜激情久久久| 午夜精品福利一区二区蜜股av | 一本色道综合亚洲| 国产东北露脸精品视频| 国产一区二区不卡老阿姨| 九九国产精品视频| 久久国产婷婷国产香蕉| 久久精品99久久久| 精品在线播放免费| 免费av成人在线| 久久国产精品区| 国产一区二区日韩精品| 国产一区二区三区不卡在线观看| 国产精品麻豆网站| 国产精品久久久久7777按摩| 中文字幕av在线一区二区三区| 一本到高清视频免费精品| 91在线观看地址| 色噜噜狠狠成人网p站| 欧美日韩午夜影院| 4438x成人网最大色成网站| 51午夜精品国产| 久久亚洲精精品中文字幕早川悠里| 91论坛在线播放| 欧美三级电影在线看| 欧美日韩精品一区二区天天拍小说 | 偷拍一区二区三区四区| 亚洲一区二区综合| 奇米在线7777在线精品| 久久99蜜桃精品| 岛国精品在线观看| 色婷婷av一区二区三区之一色屋| 国产激情偷乱视频一区二区三区| 亚洲一二三四区不卡| 婷婷综合在线观看| 国产一区二区美女诱惑| 99在线精品免费| 911国产精品| 国产欧美视频一区二区三区| 亚洲精品高清在线| 欧美aaa在线| bt欧美亚洲午夜电影天堂| 日本韩国一区二区三区视频| 91精品国产入口| 久久精品男人的天堂| 亚洲资源在线观看| 国内一区二区在线| 91免费观看视频在线| 欧美一区二视频| 中文字幕亚洲综合久久菠萝蜜| 久久嫩草精品久久久精品一| 亚洲欧美福利一区二区| 日韩va亚洲va欧美va久久| 精品在线观看视频| 欧美怡红院视频| 久久久久综合网| 丝袜美腿亚洲一区二区图片| 成人激情免费视频| 精品国产一区二区在线观看| 亚洲精品国产a久久久久久| 国产一区不卡精品| 欧美一区二区三区在线观看视频| 欧美日韩综合在线| 国产精品欧美久久久久一区二区| 久久综合狠狠综合久久综合88| 欧美一区二区三区系列电影| 亚洲国产精华液网站w| 日韩中文字幕亚洲一区二区va在线 | 尤物视频一区二区| 国产成人av影院| 日韩欧美www| 日日摸夜夜添夜夜添精品视频| 午夜精品在线看| 99re热这里只有精品视频| 久久亚洲捆绑美女| 久久97超碰国产精品超碰| 在线播放欧美女士性生活| 怡红院av一区二区三区| 不卡在线观看av| 中国色在线观看另类| 国产一区二区美女| 久久亚洲捆绑美女| 激情五月播播久久久精品| 91精品黄色片免费大全| 亚洲h在线观看| 欧美视频一区二区三区| 亚洲婷婷国产精品电影人久久| 亚洲成人精品在线观看| 色婷婷久久一区二区三区麻豆| 欧美羞羞免费网站| 伊人夜夜躁av伊人久久| 色综合天天性综合| 亚洲精品国产品国语在线app| 日韩影视精彩在线| 欧美一级黄色大片| 久色婷婷小香蕉久久|