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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? invuserprivilege.pas

?? 文件包含程序源原文件
?? PAS
字號:
unit InvUserPrivilege;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, ExtCtrls, ComCtrls, Buttons, invDef, Ex2nmedt;

type
  TfrmUser = class(TForm)
    Panel1: TPanel;
    Panel2: TPanel;
    Panel3: TPanel;
    ListviewUser: TListView;
    Panel4: TPanel;
    Panel5: TPanel;
    edtPassWord: TLabeledEdit;
    GroupBox1: TGroupBox;
    GroupBox2: TGroupBox;
    chkbom: TCheckBox;
    chkstk: TCheckBox;
    chkmatin: TCheckBox;
    chkmatout: TCheckBox;
    chkothin: TCheckBox;
    chkothout: TCheckBox;
    chkiohis: TCheckBox;
    chkrpt: TCheckBox;
    chkInvoice: TCheckBox;
    chkUndelivery: TCheckBox;
    chkincheck: TCheckBox;
    chkparams: TCheckBox;
    chkiotype: TCheckBox;
    chkpaperno: TCheckBox;
    chkinvguage: TCheckBox;
    chkdataexp: TCheckBox;
    chkexprpt: TCheckBox;
    SpeedButton1: TSpeedButton;
    btnUpdate: TSpeedButton;
    SpeedButton3: TSpeedButton;
    SpeedButton4: TSpeedButton;
    chkrtnmana: TCheckBox;
    chkuserprivi: TCheckBox;
    cbxUser: TComboBox;
    edtUserName: TEdit;
    edtUserID: TEx2NumEdit;
    Label2: TLabel;
    stsBarCnt: TStatusBar;
    Panel6: TPanel;
    procedure FormCreate(Sender: TObject);
    procedure FormShow(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure SpeedButton1Click(Sender: TObject);
    procedure btnUpdateClick(Sender: TObject);
    procedure SpeedButton3Click(Sender: TObject);
    procedure SpeedButton4Click(Sender: TObject);
    procedure ListviewUserChange(Sender: TObject; Item: TListItem; Change: TItemChange);
    procedure cbxUserDropDown(Sender: TObject);
    procedure cbxUserChange(Sender: TObject);
  private
    { Private declarations }
    Procedure Read_UserPriviListView(sListView: TListView);

    function  SetListColumn(listView: TListView): Integer;
    function  SetListView(lstView: TListView): Integer;
    procedure ClearListView(lstView: TListView);

    procedure MakeItemCaption(Item: TListItem);
    procedure Set_currItem(Item: TListItem);
    procedure SetNull;

  public
    { Public declarations }
    Procedure NewUserPrivilege(ListView: TListView);
    Procedure Update_UserPrivilege(ListView: TListView);
    procedure Delete_UserPrivilege(ListView: TListView);

    Function  GetIntValueofBool(ibool: Boolean): integer;
    Function  GetBoolofInteger(iValue: Integer): Boolean;
  end;

var
  frmUser: TfrmUser;

  FUserPrivilegeList: TList;
  FSelectedItem: TListItem;
  FOnMakeItemCaption,
  FListViewClear,
  FOnCloseForm: Boolean;
  FColCnt: integer;

implementation

uses InvDM, Main;

{$R *.dfm}

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

  FUserPrivilegeList := TList.Create;
  FUserPrivilegeList.Clear;
  
end;

procedure TfrmUser.FormShow(Sender: TObject);
begin
  FOnCloseForm := false;
  Read_UserPriviListView(ListviewUser);


end;

procedure TfrmUser.FormClose(Sender: TObject; var Action: TCloseAction);
begin
  FOnCloseForm := true;
  dm_inventory.ListFreeMemory(FUserPrivilegeList);
end;

Procedure TfrmUser.Read_UserPriviListView(sListView: TListView);
var SaveCursor: TCursor;
begin
  dm_inventory.ListFreeMemory(FUserPrivilegeList);
  
  SaveCursor := Screen.Cursor;
  Screen.Cursor := crSqlWait;

  try
    dm_inventory.Read_UserPrivilegeList(FUserPrivilegeList);

    FListViewClear:=True;

    FColCnt := SetListColumn(sListView); //--

    sListView.Selected := nil;

    if SetListView(sListView) > 0 then
    begin
      sListView.TopItem.Selected := True;
      sListView.TopItem.Focused := True;
      sListView.SetFocus;
      FSelectedItem := sListView.TopItem;
      Set_currItem(FSelectedItem);
    end;

    FListViewClear := False;

  finally
    Screen.Cursor := SaveCursor;
  end;
end;

function  TfrmUser.SetListColumn(listView: TListView): Integer;
var
  Column: TListColumn;
  Count: Integer;
begin
  ListView.Columns.Clear;
  ListView.Items.BeginUpdate;               //--
  ListView.RowSelect := False;
  Count := 0;
  try
    Column := ListView.Columns.Add;
      Column.Caption := '員工工號';
      Column.Width   := ListView.Font.Size * 12;
      Inc(Count);

      Column := ListView.Columns.Add;
      Column.Caption := '用戶名稱';
      Column.Width   := ListView.Font.Size * 16;
      Inc(Count);

      Column := ListView.Columns.Add;
      Column.Caption := '用戶密碼';
      Column.Width   := ListView.Font.Size * 14;
      Column.Alignment := taLeftJustify;
      Inc(Count);
  finally
    ListView.RowSelect := True;
    ListView.Items.EndUpdate;               //--
  end;
  Result := Count;
end;

function  TfrmUser.SetListView(lstView: TListView): Integer;
var
  i, j, ItemCount: Integer;
  lcP: PUserPrivilege;
  Item: TListItem;
begin
  ItemCount := 0;
  FListViewClear := True;

  ClearListView(lstView);

  FListViewClear := False;
  LockWindowUpdate(lstView.Handle);
  try
    for i := 0 to FUserPrivilegeList.Count - 1 do begin
      lcP := FUserPrivilegeList[i];

      Item := lstView.Items.Add;
      for j := 0 to FColCnt - 2 do
        Item.Subitems.Add('');

      lcP^.item := Item;
      Item.Data := lcP;

      MakeItemCaption(Item);
      Inc(ItemCount);
   end;
  finally
    LockWindowUpdate(0);
    stsBarCnt.Panels[0].Text := '符合條件的記錄有:'+ IntToStr(lstView.Items.Count)+' 條';
  end;
  Result := ItemCount;
end;

procedure TfrmUser.ClearListView(lstView: TListView);
begin
  lstView.Items.BeginUpdate;
  try
    lstView.Items.Clear;
  finally
    lstView.Items.EndUpdate;
  end;
end;

procedure TfrmUser.MakeItemCaption(Item: TListItem);
var
  lcP: PUserPrivilege;
begin
  if Item = nil then Exit;

  lcP := Item.Data;
  if lcP = nil then Exit;

  FOnMakeItemCaption := True; //--

  Item.Caption     := IntToStr(lcP^.user_id);
  Item.SubItems[0] := dm_inventory.Get_EmpName(inttostr(lcp^.user_id));
  Item.SubItems[1] := lcp^.password;

  FOnMakeItemCaption := False;
end;

procedure TfrmUser.Set_currItem(Item: TListItem);
var
  lcp: PUserPrivilege;
begin 
  if (Item = nil) or ((item = nil) and (Item.Data <> nil)) then
  begin
    SetNull;
    exit;
  end
  else begin
    FSelectedItem := nil;
    FSelectedItem := Item;
    lcp := Item.Data;

    edtUserID.Value   := lcp^.user_id;
    edtUserName.Text  := dm_inventory.Get_EmpName(inttostr(lcp^.user_id));
    edtPassWord.Text  := lcp^.password;

    chkbom.Checked  := (lcp^.bom_func=1);
  chkstk.Checked    := (lcp^.stk_func=1);
  chkmatin.Checked  := (lcp^.matin_func=1);
  chkmatout.Checked := (lcp^.matout_func=1);
  chkothin.Checked  := (lcp^.othin_func=1);
  chkothout.Checked := (lcp^.othout_func=1);
  chkiohis.Checked  := (lcp^.iohis_func=1);
  chkrpt.Checked    := (lcp^.rpt_func=1);
  chkInvoice.Checked := (lcp^.invoice_func=1);
  chkUndelivery.Checked := (lcp^.undelivery_func=1);
  chkincheck.Checked    := (lcp^.incheck_func=1);
  chkrtnmana.Checked    := (lcp^.rtnmana_func=1);
  chkparams.Checked     := (lcp^.params_func=1);
  chkiotype.Checked     := (lcp^.iotype_func=1);
  chkpaperno.Checked    := (lcp^.paperno_func=1);
  chkinvguage.Checked   := (lcp^.invguage_func=1);
  chkdataexp.Checked    := (lcp^.dataexport_func=1);
  chkexprpt.Checked     := (lcp^.expdatarpt_func=1);
  chkuserprivi.Checked  := (lcp^.userprivilege_func=1);
  end;
end;

procedure TfrmUser.SetNull;
begin
  FSelectedItem := nil;
  edtUserID.Value   := 0;
  edtUserName.Text  := '';
  cbxUser.Text      := '';
  edtPassWord.Text  := '';
  chkbom.Checked    := false;
  chkstk.Checked    := false;
  chkmatin.Checked  := false;
  chkmatout.Checked := false;
  chkothin.Checked  := false;
  chkothout.Checked := false;
  chkiohis.Checked  := false;
  chkrpt.Checked    := false;
  chkInvoice.Checked := false;
  chkUndelivery.Checked := false;
  chkincheck.Checked    := false;
  chkrtnmana.Checked    := false;
  chkparams.Checked     := false;
  chkiotype.Checked     := false;
  chkpaperno.Checked    := false;
  chkinvguage.Checked   := false;
  chkdataexp.Checked    := false;
  chkexprpt.Checked     := false;
  chkuserprivi.Checked  := false;  
end;

//////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////////
Procedure TfrmUser.NewUserPrivilege(ListView: TListView);
var
  lcpNew: PUserPrivilege;
  j: integer;
  Item: TListItem;
begin
  New(lcpNew);
  ZeroMemory(lcpNew, sizeof(TUserPrivilege));
  SetNull;

  lcpNew^.paperno   := dm_inventory.Get_AutoPaperNo('User Privilege Information');
  lcpNew^.user_id   := 0;
  lcpNew^.user_name := '';
  lcpNew^.password  := '';
  lcpNew^.rec_date  := Now;

  if not dm_inventory.isExists_UserID(lcpNew) then
  begin
    dm_inventory.Insert_UserPrivilege(lcpNew);

    with listView do
    begin
      Item := ListView.Items.Add;
      for j := 0 to FColCnt - 2 do
        Item.Subitems.Add('');
        lcPNew^.item := Item;
        Item.Data := lcPNew;
    end;
    MakeItemCaption(Item);
    Set_currItem(Item);
    Item.Selected := true;
  end
  else begin
    MessageDlg('this User is Repeat!',mtError,[mbOK],0);
    Item := ListView.TopItem;
    FSelectedItem := Item;
    Set_currItem(Item);
    Item.Selected := true;    
    Exit;
  end;
end;

Procedure TfrmUser.Update_UserPrivilege(ListView: TListView);
var
  lcpUpd: PUserPrivilege;
  Item: TListItem;
begin
  if FSelectedItem = nil then exit;
  if FSelectedItem.Selected then lcpUpd := FSelectedItem.Data;

  lcpUpd^.user_id      := trunc(edtUserID.Value);
  lcpUpd^.password     := trim(edtPassWord.Text);
  lcpUpd^.bom_func     := GetIntValueofBool(chkbom.Checked);
  lcpUpd^.stk_func           := GetIntValueofBool(chkstk.Checked);
  lcpUpd^.matin_func         := GetIntValueofBool(chkmatin.Checked);
  lcpUpd^.matout_func        := GetIntValueofBool(chkmatout.Checked);
  lcpUpd^.othin_func         := GetIntValueofBool(chkothin.Checked);
  lcpUpd^.othout_func        := GetIntValueofBool(chkothout.Checked);
  lcpUpd^.iohis_func         := GetIntValueofBool(chkiohis.Checked);
  lcpUpd^.rpt_func           := GetIntValueofBool(chkrpt.Checked);
  lcpUpd^.invoice_func       := GetIntValueofBool(chkInvoice.Checked);
  lcpUpd^.undelivery_func    := GetIntValueofBool(chkUndelivery.Checked);
  lcpUpd^.incheck_func       := GetIntValueofBool(chkincheck.Checked);
  lcpUpd^.rtnmana_func       := GetIntValueofBool(chkrtnmana.Checked);
  lcpUpd^.params_func        := GetIntValueofBool(chkparams.Checked);
  lcpUpd^.iotype_func        := GetIntValueofBool(chkiotype.Checked);
  lcpUpd^.paperno_func       := GetIntValueofBool(chkpaperno.Checked);
  lcpUpd^.invguage_func      := GetIntValueofBool(chkinvguage.Checked);
  lcpUpd^.dataexport_func    := GetIntValueofBool(chkdataexp.Checked);
  lcpUpd^.expdatarpt_func    := GetIntValueofBool(chkexprpt.Checked);
  lcpUpd^.userprivilege_func := GetIntValueofBool(chkuserprivi.Checked);

  dm_inventory.Update_UserPrivilege(lcpUpd);

  with listView do
  begin
    listView.Selected.Data := lcpUpd;
    Item := listView.Selected;
    MakeItemCaption(Item);
    Set_currItem(Item);
    Item.Selected := true;
  end;
end;

procedure TfrmUser.Delete_UserPrivilege(ListView: TListView);
var
  lcpDel: PUserPrivilege;
  Item: TListItem;
begin
  if FSelectedItem = nil then exit;
  if FSelectedItem.Selected then lcpDel := FSelectedItem.Data;

  dm_inventory.Delete_UserPrivilege(lcpDel);
  with listView do
  begin
    listView.Selected.Delete;
    IF ListView.Items.Count >0 then
    Item := listView.TopItem
    else Item := Nil;
    if Item = Nil then exit;
    Item.Selected := true;
    MakeItemCaption(Item);
    Set_currItem(Item);
  end;
end;

//////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////////

procedure TfrmUser.SpeedButton1Click(Sender: TObject);
begin
  NewUserPrivilege(ListviewUser);
end;

procedure TfrmUser.btnUpdateClick(Sender: TObject);
begin
  Update_UserPrivilege(ListviewUser);//
end;

procedure TfrmUser.SpeedButton3Click(Sender: TObject);
begin
  Delete_UserPrivilege(ListviewUser);
end;

procedure TfrmUser.SpeedButton4Click(Sender: TObject);
begin
  close;
end;

procedure TfrmUser.ListviewUserChange(Sender: TObject; Item: TListItem; Change: TItemChange);
begin
  if FOnCloseForm then exit;
  if Item.Data = nil then
  begin
    setNull;
    exit;
  end
  else Set_currItem(ListviewUser.Selected);
end;

////////////////////////////////////////////////////////////////////////////
Function  TfrmUser.GetIntValueofBool(ibool: Boolean): integer;
begin
  result := 0;
  if iBool then result := 1 else result := 0;
end;

Function  TfrmUser.GetBoolofInteger(iValue: Integer): Boolean;
begin
  result := false;
  if iValue=1 then result := true else result := false; 
end;



procedure TfrmUser.cbxUserDropDown(Sender: TObject);
begin
  dm_inventory.Read_EmpInfoToCbx(cbxUser);
end;

procedure TfrmUser.cbxUserChange(Sender: TObject);
begin
  edtUserID.Value    := StrToIntDef(Get_PosBeforeStr(cbxUser.Text,'_'),0);
  edtUserName.Text   := Get_PosAfterStr(cbxUser.Text,'_');
  edtUserID.SetFocus;
end;

end.

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产高清亚洲一区| 天天做天天摸天天爽国产一区| 精品一区二区三区免费观看| 日韩女优毛片在线| 国产精品18久久久久久久久久久久| 精品久久久久久最新网址| 国产成人午夜精品影院观看视频 | 日韩欧美综合在线| 九色|91porny| 中文字幕不卡在线| 91福利视频网站| 日韩经典中文字幕一区| 精品福利二区三区| 91网站在线播放| 日本欧美肥老太交大片| 久久久久综合网| 一本在线高清不卡dvd| 日韩影院免费视频| 久久精品亚洲精品国产欧美| 99久精品国产| 蜜臀av性久久久久蜜臀aⅴ四虎| 国产无一区二区| 91国内精品野花午夜精品| 久草精品在线观看| 一二三区精品福利视频| www久久精品| 91老师片黄在线观看| 日韩电影在线观看网站| 中文字幕av一区 二区| 欧美日韩另类国产亚洲欧美一级| 狠狠色丁香婷综合久久| 亚洲综合男人的天堂| 欧美精品一区二区三区很污很色的| 99国产麻豆精品| 久久国产免费看| 一区二区免费看| 久久精品视频网| 91精品国产入口| 99国产精品视频免费观看| 激情av综合网| 亚洲a一区二区| 国产精品国产三级国产aⅴ无密码| 91精品国产综合久久小美女| 色综合久久中文综合久久牛| 韩国一区二区在线观看| 亚洲成国产人片在线观看| 国产亚洲短视频| 91精品国产综合久久久久久| 色综合天天综合网国产成人综合天| 久久精品国产精品亚洲综合| 亚洲第一狼人社区| 亚洲精选在线视频| 中文字幕日韩欧美一区二区三区| 精品国产一区二区三区四区四| 精品视频在线免费看| 99久久精品99国产精品| 东方aⅴ免费观看久久av| 美女网站色91| 老司机精品视频导航| 石原莉奈一区二区三区在线观看| 亚洲日本在线天堂| 国产精品久久久久7777按摩 | 国产欧美精品区一区二区三区| 欧美一区二区三区视频在线观看| 在线亚洲免费视频| 91看片淫黄大片一级| 99国产精品久久| 99国产精品久| 色综合久久久久久久久| www.成人网.com| 成人高清免费在线播放| 丁香六月久久综合狠狠色| 国产久卡久卡久卡久卡视频精品| 久久成人免费网| 国产精品99久久久| 国产成人av影院| 成人性生交大片免费看视频在线 | 午夜国产不卡在线观看视频| 亚洲一区二区高清| 亚洲国产裸拍裸体视频在线观看乱了 | 中文字幕永久在线不卡| 日韩一区欧美一区| 亚洲欧美综合色| 亚洲免费在线观看| 亚洲狠狠爱一区二区三区| 亚洲国产精品久久人人爱| 亚洲成人久久影院| 免费在线视频一区| 激情久久久久久久久久久久久久久久| 麻豆国产精品视频| 国产精品1024久久| 99国产精品国产精品久久| 欧美在线视频全部完| 在线不卡一区二区| 精品国产网站在线观看| 国产欧美日韩精品a在线观看| 成人欧美一区二区三区小说| 亚洲尤物在线视频观看| 日韩va亚洲va欧美va久久| 另类欧美日韩国产在线| 成人一区二区三区视频| 欧美在线小视频| 精品va天堂亚洲国产| 国产精品沙发午睡系列990531| 亚洲欧洲国产专区| 蜜桃一区二区三区在线| 丁香婷婷综合激情五月色| 欧美在线看片a免费观看| 日韩欧美亚洲一区二区| 国产精品伦理一区二区| 亚洲h精品动漫在线观看| 国产精品1区二区.| 欧美日本乱大交xxxxx| 久久久久久毛片| 亚洲va欧美va人人爽午夜| 国产一区二区三区在线观看免费视频| 成人精品国产福利| 91麻豆精品久久久久蜜臀| 国产日本一区二区| 青娱乐精品在线视频| 成人一区二区三区视频在线观看| 欧美日韩视频专区在线播放| 国产欧美日韩卡一| 蜜桃视频在线观看一区| 99国产精品视频免费观看| 精品国产乱码久久久久久免费 | 天天操天天综合网| 成人高清视频免费观看| 欧美大片一区二区三区| 亚洲精品网站在线观看| 国产乱色国产精品免费视频| 欧美性一二三区| 亚洲国产高清在线| 老司机精品视频线观看86| 欧美私人免费视频| 1024成人网色www| 国产精品一区不卡| 日韩欧美国产高清| 亚洲va国产天堂va久久en| 91在线看国产| 国产午夜精品美女毛片视频| 理论电影国产精品| 欧美一区二视频| 午夜久久久久久| 日本韩国欧美一区| 国产精品乱码妇女bbbb| 九九热在线视频观看这里只有精品| 欧美日韩精品二区第二页| 亚洲女人****多毛耸耸8| 国产99久久久国产精品免费看| 精品久久久久久久久久久久久久久| 亚洲妇熟xx妇色黄| 91成人看片片| 一区二区三区成人在线视频| 色综合久久综合网| 亚洲人成精品久久久久久| 成人av网站大全| 国产精品女同一区二区三区| 国产精品69毛片高清亚洲| 久久久亚洲高清| 国产精品一区2区| 国产无一区二区| 欧美日韩国产精品成人| 亚洲国产日韩一级| 欧美日韩你懂的| 日韩综合在线视频| 69堂成人精品免费视频| 欧美aaa在线| 精品国产一区二区亚洲人成毛片 | 国产亚洲视频系列| 国产精品综合视频| 国产欧美日韩在线视频| 国产精品亚洲综合一区在线观看| 国产亚洲精品bt天堂精选| 精品国产乱码久久久久久闺蜜| 日韩精品免费专区| 欧美一区二区精品久久911| 美国一区二区三区在线播放| 欧美大白屁股肥臀xxxxxx| 国产美女精品在线| 国产精品乱人伦一区二区| 色婷婷激情久久| 三级在线观看一区二区| 26uuu国产在线精品一区二区| 国产精品自在欧美一区| 中文字幕一区三区| 91福利国产精品| 精品午夜一区二区三区在线观看| 久久人人97超碰com| 99久久99久久免费精品蜜臀| 亚洲福利视频三区| 精品欧美一区二区在线观看| 国产91色综合久久免费分享| 亚洲欧美激情插| 日韩午夜中文字幕| 成人av在线播放网站| 亚洲电影在线播放| 久久色在线观看| 一本一道久久a久久精品| 免费成人深夜小野草|