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

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

?? constunt.pas

?? 倉庫管理Delphi源碼、軟件方案,學(xué)習(xí)實(shí)用兩不誤
?? PAS
?? 第 1 頁 / 共 2 頁
字號:
unit ConstUnt;

interface

uses
  Db, ADODB, Sysutils, Classes, Forms, IniFiles, Windows;

type

  TFieldSq = 1..18;

  TLogonInf = class
    private
      FdbJbda: TADOConnection;
      FdbCkgl: TADOConnection;
      FLogoned: Boolean;
      FUserName: ShortString;
      FPassWord: ShortString;
      FTabNameIndex: Integer;
      FFieldNameIndex: Integer;
      FOpratorIndex: Integer;
      FLinkIndex: Integer;
      FNewPassWord: ShortString;
      FFunctionLst: TStringList;
      FFieldTypeLst: TStringList;



    private
      function DBConnection: Boolean;
      function GetWorkPath: ShortString;
      function GetAllUser: TStringList;
      function GetPWDCorrect: Boolean;
      function GetGhsLst: TStringList;
      function GetJldwLst: TStringList;
      function GetCklbLst: TStringList;
      function GetHwlbLst: TStringList;
      function GetPpcdLst: TStringList;
      function GetKhmcLst: TStringList;
      function GetShrmLst: TStringList;
      function GetHwggLst: TStringList;
      function GetYsfsLst: TStringList;
      function GetShdzLst: TStringList;
      function GetJhrmLst: TStringList;
      function GetTabEnNameLst: TStringList;
      function GetTabCnNameLst: TStringList;
      function GetFieldCnNameLst: TStringList;
      function GetOpratorCnLst: TStringList;

      function GetLinkCnLst: TStringList;
      function GetAllRecord(const TabName, FieldName: ShortString)
        : TStringList;
      function GetCnFieldName(const EnFieldName: ShortString)
        : ShortString;
      function GetChangePwd: Boolean;

      procedure SetLogoned(Value: Boolean);
      procedure SetUserName(Value: ShortString);
      procedure SetPassWord(Value: ShortString);
      procedure SetTabNameIndex(Value: Integer);
      procedure SetFieldNameIndex(Value: Integer);
      procedure SetOpratorIndex(Value: Integer);
      procedure SetLinkIndex(Value: Integer);
      procedure SetNewPassWord(Value: ShortString);

    protected
      constructor Create; virtual;

    public
      destructor Destroy; override;

    published

      property WorkPath: ShortString read GetWorkPath;
      property Logoned: Boolean read FLogoned write SetLogoned;
      property dbJbda: TADOConnection read FdbJbda;
      property dbCkgl: TADOConnection read FdbCkgl;
      property DBTryConnection: Boolean read DBConnection;
      property AllUser: TStringList read GetAllUser;
      property UserName: ShortString read FUserName write SetUserName;
      property PassWord: ShortString read FPassWord write SetPassWord;
      property PWDCorrect: Boolean read GetPWDCorrect;
      property GhsLst: TStringList read GetGhsLst;
      property JldwLst: TStringList read GetJldwLst;
      property CklbLst: TStringList read GetCklbLst;
      property HwlbLst: TStringList read GetHwlbLst;
      property PpcdLst: TStringList read GetPpcdLst;
      property KhmcLst: TStringList read GetKhmcLst;
      property ShrmLst: TStringList read GetShrmLst;
      property HwggLst: TStringList read GetHwggLst;
      property YsfsLst: TStringList read GetYsfsLst;
      property ShdzLst: TStringList read GetShdzLst;
      property JhrmLst: TStringList read GetJhrmLst;
      property TabEnNameLst: TStringList read GetTabEnNameLst;
      property TabCnNameLst: TStringList read GetTabCnNameLst;
      property CnOpratorLst: TStringList read GetOpratorCnLst;
      property CnLinkLst: TStringList read GetLinkCnLst;
      property TabNameIndex: Integer read FTabNameIndex write
        SetTabNameIndex;
      property FieldNameIndex: Integer read FFieldNameIndex write
        SetFieldNameIndex;
      property OpratorIndex: Integer read FOpratorIndex write
        SetOpratorIndex;
      property LinkIndex: Integer read FLinkIndex write SetLinkIndex;
      property FieldNameLst: TStringList read GetFieldCnNameLst;
      property FieldTypeLst: TStringList read FFieldTypeLst;
      property ChangePwd: Boolean read GetChangePwd;
      property NewPassWord: ShortString write SetNewPassWord;
      property FunctionLst: TStringList read FFunctionLst;

    public
      function GetNextPzh(const TabName, VDate: ShortString)
        : ShortString;
      function UpdateLog(const Content: string): Boolean;
      function UpdateKc(const Ck, Hwlb, Hwgg, Hwdw, Hwcd: string;
        const Hwsl, Dj: Double): Boolean;

      procedure Ckpd(const PdBeginTime, PdEndTime: string);//倉庫盤點(diǎn)
      function Sjbf(const TargetDir: ShortString): Boolean; //數(shù)據(jù)備份
      function Sjhf(const FileNames: TStringList): Boolean; //數(shù)據(jù)恢復(fù)

      procedure DeletePdData(const TableName: string);

      function GetEnFieldName(const CnFieldName: string): string;



  end;

(*
  - 字符串資源
*)
resourcestring

  AppTitle             = '倉庫管理系統(tǒng)';
  DBConnectionString   = 'Provider=Microsoft.Jet.OLEDB.4.0;'
                         + 'Password="";Data Source=%s;'
                         + 'Persist Security Info=True';

  SaveError            = '保存數(shù)據(jù)中發(fā)生錯(cuò)誤,請重試!';
  FTPFailMsg           = 'FTP站點(diǎn)連接不成功,請稍后重試!';
  AbnormityError       = '操作中異常出錯(cuò),請重試!';
  UserNameIsEmptyError = '用戶名為空,請重輸!';
  NotExistsUser        = '用戶名不存在,請重新輸入!';
  PassWordError        = '輸入%s密碼不正確,請重試!';
  PassWordNotSame      = '兩次密碼輸入不一致!';
  SendPrompt           = '確認(rèn)將報(bào)告單報(bào)送[%s]嗎?';
  GDateFormat          = 'YYYYMMDD';
  DateTimeFormat       = 'YYYY-MM-DD HH24:MI:SS';
  GSptStr              = '__^#$%@';
  NotFound             = '沒有找到符合條件的!';
  NotExistPrt          = '打印模板文件%s不存在,請檢查!';
  NotSaveInf           = '是否保存對"%s"內(nèi)容的更改?';
  DBConnectFail        = '無法與數(shù)據(jù)庫服務(wù)器連接,請查看%s!';
  ChnagePwdSuccess     = '%s的密碼修改已經(jīng)修改,請記住新密碼!';
  UserNameIsEmpty      = '請選取用戶再進(jìn)行%s操作!';
  SelLocation          = '選取備份數(shù)據(jù)位置';
  SjbfComplete         = '數(shù)據(jù)備份完全無損完成!';
  SjhfComplete         = '數(shù)據(jù)恢復(fù)完全無損恢復(fù)!';
  ReLogon              = '您需要重新登陸系統(tǒng)嗎?';
  CloseInf             = '你真的退出倉庫管理系統(tǒng)嗎?';
  NoFind               = '對不起,沒有找到相關(guān)數(shù)據(jù)!';
  ErrCondition         = '請檢查您所選取的條件!';


const
  MsgI     = '提示';
  MsgW     = '警告';
  MsgE     = '錯(cuò)誤';
  MsgQ     = '詢問';
  Msg1IBTN = MB_OK + MB_ICONINFORMATION;
  Msg1WBTN = MB_OK + MB_ICONWARNING;
  Msg2IBTN = MB_YESNO + MB_ICONINFORMATION;
  Msg2QBTN = MB_YESNO + MB_ICONQUESTION;
  Msg2WBTN = MB_YESNO + MB_ICONWARNING;
  Msg3QBTN = MB_YESNOCANCEL + MB_ICONQUESTION;
  Msg3WBTN = MB_YESNO + MB_ICONWARNING;

var
  LogonInf: TLogonInf;


function GetTableMaxValue(const DBConnection: TADOConnection;
  const TableName: ShortString; const FieldName: ShortString = 'bh')
    : Word;
const

  En_Oprator: array[0..5] of string =
   (
   '>',
   '<',
   '=',
   '>=',
   '<=',
   '<>'
   );

  Cn_Oprator: array[0..5] of string =
   (
   '大于',
   '小于',
   '等于',
   '大于等于',
   '小于等于',
   '不等于'

   );

  En_Link: array[0..2] of string =
   (
   '   ',
   'and',
   'or '
   );

  Cn_Link: array[0..2] of string =
   (
   '無',
   '與',
   '或'
   );


implementation

const
  CkEnTab: array[0..6] of string =
    (
    'rk', 'ck', 'tk', 'dk', 'gh', 'pd', 'jc'
    );
  CkCNTab: array[0..6] of string =
    (
    '入庫', '出庫', '退庫', '調(diào)庫', '歸還', '盤點(diǎn)', '借出'
    );

  En_FieldName: array[0..47] of string =
    (
    'bh',
    'shr',
    'hplb',
    'cd',
    'gg',
    'jldw',
    'rkrq',
    'pzh',
    'ghs',
    'cfck',
    'rkdj',
    'rksl',
    'rkze',
    'mem',
    'czy',
    'ckrq',
    'khmz',
    'chck',
    'shdz',
    'yxfs',
    'ckdj',
    'cksl',
    'ckze',
    'tkrq',
    'ghbm',
    'tkdj',
    'tksl',
    'tkze',
    'dkrq',
    'dcck',
    'drck',
    'dkdj',
    'djsl',
    'dkze',
    'jcrq',
    'jhr',
    'jcck',
    'jcsl',
    'hhrq',
    'hhr',
    'ghck',
    'ghsl',
    'whsl',
    'pdrq',
    'pdck',
    'pky',
    'dj',
    'ze'
    );

  Cn_FieldName: array[0..47] of string =
    (
    '編號',
    '送貨人',
    '貨品類別',
    '品牌/產(chǎn)地',
    '規(guī)格',
    '計(jì)量單位',
    '入庫日期',
    '憑證號',
    '供貨商',
    '存放倉庫',
    '入庫單價(jià)',
    '入庫數(shù)量',
    '入庫總額',
    '備注',
    '操作員',
    '出庫日期',
    '客戶名稱',
    '出貨倉庫',
    '收貨地址',
    '運(yùn)輸方式',
    '出庫單價(jià)',
    '出庫數(shù)量',
    '出庫總額',
    '退庫日期',
    '供貨部門',
    '退庫單價(jià)',
    '退庫數(shù)量',
    '退庫總額',
    '調(diào)庫日期',
    '調(diào)出倉庫',
    '調(diào)入倉庫',
    '調(diào)庫單價(jià)',
    '調(diào)庫數(shù)量',
    '調(diào)庫總額',
    '借貨日期',
    '借貨人',
    '借出倉庫',
    '借出數(shù)量',
    '還貨日期',
    '還貨人',
    '歸還倉庫',
    '歸還數(shù)量',
    '未還數(shù)量',
    '盤點(diǎn)日期',
    '盤點(diǎn)倉庫',
    '盤虧/贏',
    '單價(jià)',
    '總額'
    );

      
function GetTableMaxValue(const DBConnection: TADOConnection;
  const TableName: ShortString; const FieldName: ShortString = 'bh')
    : Word;
begin
  with TADOQuery.Create(nil) do
    try
      Connection := DBConnection;
      Close;
      SQL.Clear;
      SQL.Add('select max(%s) from %s');
      SQL.Text := Format(SQL.Text, [FieldName, TableName]);
      Open;
      Result := Fields[0].AsInteger + 1;
      Close;
    finally
      Free;
    end;    
end;

function TLogonInf.GetAllUser: TStringList;
begin
  Result := TStringList.Create;
  Result.Clear;
  with TADOQuery.Create(nil) do
    try
      Connection := FdbJbda;    
      Close;
      SQL.Clear;
      SQL.Add('select name from czy');
      Open;
      while not Eof do
      begin
        Result.Add(Format('%s', [Fields[0].AsString]));
        Next;
      end;
      Close;  

    finally
      Free;
    end;
end;


function TLogonInf.DBConnection: Boolean;
begin
  Result := True;
  with TIniFile.Create(WorkPath + 'infor.ini') do
    try
      try
        FdbJbda := TADOConnection.Create(nil);
        FdbCkgl := TADOConnection.Create(nil);
        FdbJbda.ConnectionString := Format(DBConnectionString,
          [workpath+'JBDA.MDB']);
        FdbCkgl.ConnectionString := Format(DBConnectionString,
          [workpath+'ckgl.mdb']);
        FdbJbda.LoginPrompt := False;
        FdbCkgl.LoginPrompt := False;
        FdbJbda.Connected := True;
        FdbCkgl.Connected := True;
      except
        MessageBox(0, PChar(Format(DBConnectFail, ['本地庫'])),
          MsgI, Msg1IBTN);
        FdbJbda.Free;
        FdbCkgl.Free;
        Result := False;
      end;
    finally
      Free;
    end;
end;

function TLogonInf.GetWorkPath: ShortString;
begin
  Result := ExtractFilePath(Application.ExeName);
end;

procedure TLogonInf.SetLogoned(Value: Boolean);
begin
  FLogoned := Value;
end;

constructor TLogonInf.Create;
begin
end;

destructor TLogonInf.Destroy;
begin
  FdbJbda.Connected := False;
  FdbCkgl.Connected := False;
  FdbJbda.Free;
  FdbCkgl.Free;
end;


procedure TLogonInf.SetUserName(Value: ShortString);
begin
  FUserName := Value;
end;

procedure TLogonInf.SetPassWord(Value: ShortString);
begin
  FPassWord := Value;
end;

function TLogonInf.GetPWDCorrect: Boolean;
var
  I: Byte;
  FieldSqStr,teststr: string;
begin
  for I := Low(TFieldSq) to High(TFieldSq) do
    FieldSqStr := FieldSqStr + '[' + IntToStr(I) + '], ';
  FieldSqStr := Copy(FieldSqStr, 1, Length(FieldSqStr) - 2);

  with TADOQuery.Create(nil) do
    try
      Connection := FdbJbda;
      Close;
      SQL.Clear;
      SQL.Add('select name, mm, %s from czy where name = '''
        + FUserName + #39);
      SQL.Text := Format(SQL.Text, [FieldSqStr]);
      Open;
      Result := Fields[1].AsString = FPassWord;
      if Result then
      begin
        FFunctionLst := TStringList.Create;
        FFunctionLst.Clear;
        for I := 2 to FieldCount - 1 do  begin
          teststr:=Fields [i].AsString ;
          FFunctionLst.Add(Fields[I].AsString);
          end;
      end;
      Close;    
    finally
      Free;
    end;
end;

function TLogonInf.GetGhsLst: TStringList;
begin
  Result := GetAllRecord('ghs', 'ghsname');
end;

function TLogonInf.GetJldwLst: TStringList;
begin
  Result := GetAllRecord('jldw', 'jldw');
end;

function TLogonInf.GetCklbLst: TStringList;
begin
  Result := GetAllRecord('cklb', 'cklb');
end;

function TLogonInf.GetHwlbLst: TStringList;
begin
  Result := GetAllRecord('hwlb', 'hwlb');
end;

function TLogonInf.GetPpcdLst: TStringList;
begin
  Result := GetAllRecord('ghs', 'dz');
end;

function TLogonInf.GetKhmcLst: TStringList;
begin
  Result := GetAllRecord('kh', 'khname');
end;

function TLogonInf.GetShrmLst: TStringList;
begin
  Result := TStringList.Create;

  with TADOQuery.Create(nil) do
    try

      Connection := FdbCkgl;
      Prepared;
      Close;
      SQL.Clear;
      SQL.Add('select shr from rk group by shr');
      Open;
      while not Eof do
      begin

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
粗大黑人巨茎大战欧美成人| 99精品桃花视频在线观看| 亚洲老妇xxxxxx| 亚洲色图制服丝袜| 国产精品每日更新在线播放网址| 久久免费看少妇高潮| 国产欧美日韩在线| 国产色产综合色产在线视频| 国产亚洲va综合人人澡精品| 国产亚洲欧美激情| 欧美一激情一区二区三区| 精品视频在线视频| 日韩女优毛片在线| 久久久不卡影院| 亚洲精选一二三| 国产高清在线精品| 欧美探花视频资源| 国产精品女主播在线观看| 亚洲精品免费在线播放| 美腿丝袜亚洲色图| 欧美色电影在线| 国产精品婷婷午夜在线观看| 天天综合天天综合色| 大胆欧美人体老妇| 日韩一卡二卡三卡四卡| 亚洲综合久久av| 国产一区二区三区av电影| 日本道在线观看一区二区| 91精品国产综合久久国产大片| 18成人在线观看| 久久精品99国产精品日本| 欧美色精品在线视频| 亚洲精品写真福利| 9i在线看片成人免费| 久久这里只精品最新地址| 男人的j进女人的j一区| 欧美日韩精品欧美日韩精品一| 国产精品国产精品国产专区不片| 成人午夜视频在线观看| 国产视频911| 91免费版在线| 亚洲一级片在线观看| 精品视频在线免费观看| 亚州成人在线电影| 99re这里只有精品6| 国产精品久久久久久久久免费樱桃 | 欧美剧情电影在线观看完整版免费励志电影 | 久久久久久黄色| 精品在线观看免费| 成人黄色网址在线观看| 国产欧美精品国产国产专区| 成人小视频免费在线观看| 亚洲欧美日韩一区| 欧美一卡2卡3卡4卡| 成人激情免费网站| 亚洲国产日韩a在线播放性色| 欧美一区二区性放荡片| 成人aaaa免费全部观看| 亚洲国产视频a| 国产精品成人一区二区三区夜夜夜| 欧美午夜片在线观看| 国产一区二区女| 午夜亚洲国产au精品一区二区| 欧美精品一区二区三| 在线观看国产一区二区| jlzzjlzz亚洲女人18| 国产精品77777| 蜜臂av日日欢夜夜爽一区| 亚洲蜜臀av乱码久久精品| 中文字幕一区二区5566日韩| 久久综合久久综合九色| 欧美一个色资源| 日韩女优电影在线观看| 91精品一区二区三区久久久久久 | 性感美女久久精品| 亚洲一区二区三区激情| 国产精品福利影院| 中文av字幕一区| 久久久蜜桃精品| 欧美成人伊人久久综合网| 日韩欧美卡一卡二| 国产日韩视频一区二区三区| 久久精品在这里| 亚洲一二三四区不卡| 香蕉成人伊视频在线观看| 韩国一区二区三区| aaa亚洲精品| 欧美一区二区三区免费在线看| 日韩欧美国产午夜精品| 国产精品久久久久天堂| 亚洲国产精品天堂| 国产凹凸在线观看一区二区| 色久综合一二码| www国产成人| 午夜视频一区二区三区| 国产精品系列在线观看| 在线精品视频一区二区| 日韩视频免费观看高清完整版 | 日韩一区在线看| 秋霞电影网一区二区| 不卡视频一二三四| 久久综合久久99| 日本不卡视频在线| 欧美影院精品一区| 中文字幕中文字幕一区| 韩国av一区二区三区在线观看| 91久久精品一区二区三区| 国产精品天天摸av网| 精品无人区卡一卡二卡三乱码免费卡| 欧美偷拍一区二区| 亚洲婷婷国产精品电影人久久| 国产久卡久卡久卡久卡视频精品| 欧美情侣在线播放| 日韩综合小视频| 欧美一区二区视频网站| 午夜精品一区在线观看| 欧美在线免费播放| 日本不卡视频在线观看| 91香蕉视频污在线| 亚洲国产精品一区二区久久恐怖片| 欧美中文字幕一二三区视频| 亚洲精品国产无套在线观| 色94色欧美sute亚洲线路一久| 国产精品电影一区二区| 日本精品免费观看高清观看| 丝袜美腿一区二区三区| 2023国产精品自拍| 99国产精品久久久久久久久久久| 亚洲欧美日韩综合aⅴ视频| 国产在线一区二区综合免费视频| 99久久免费国产| 视频一区二区欧美| 久久久久久久久久久电影| 在线精品亚洲一区二区不卡| 日韩成人dvd| 1024成人网| 久久亚洲春色中文字幕久久久| 91亚洲精品久久久蜜桃| 蜜桃一区二区三区四区| 国产精品美女一区二区在线观看| 色噜噜狠狠色综合中国| 亚洲一区二区三区视频在线播放 | 国精产品一区一区三区mba桃花| 久久久一区二区三区| 欧美日韩在线播放| 国产91对白在线观看九色| 午夜欧美大尺度福利影院在线看| 中文字幕一区二区三区色视频| 精品国产91久久久久久久妲己| 6080国产精品一区二区| 欧美性淫爽ww久久久久无| av电影在线观看完整版一区二区| 日本久久电影网| 免费看日韩a级影片| 99精品一区二区| 国产一区二区三区免费| 午夜成人在线视频| 日韩高清在线一区| 五月综合激情婷婷六月色窝| 亚洲一线二线三线视频| 一区二区在线观看免费视频播放| 亚洲欧美日韩在线| 亚洲国产精品天堂| 精品影视av免费| 国产a久久麻豆| 欧美四级电影在线观看| 日韩女优电影在线观看| 欧美大尺度电影在线| 日韩免费观看高清完整版 | 97精品国产97久久久久久久久久久久| 国产精品123| 欧美日韩专区在线| 欧美一区二区三区在线观看视频 | 久久综合九色综合久久久精品综合 | 日韩中文字幕不卡| 经典三级一区二区| 欧美日韩一区久久| 中文字幕精品综合| 美国毛片一区二区三区| 色香色香欲天天天影视综合网| 欧美猛男gaygay网站| 亚洲欧洲精品成人久久奇米网| 免费在线看一区| 欧美性感一区二区三区| 国产日产欧美一区二区三区 | 国产精品国产精品国产专区不蜜| 丝袜美腿亚洲综合| 4438成人网| 美女视频黄 久久| 在线不卡中文字幕| 亚洲va国产天堂va久久en| 欧美在线免费观看视频| 亚洲午夜久久久| 在线观看一区二区精品视频| 国产精品国产三级国产普通话99 | 亚洲欧美日韩国产成人精品影院| 国产91精品一区二区| 中文字幕日韩一区| 欧美亚洲一区二区在线| 日韩专区中文字幕一区二区|