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

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

?? constunt.pas

?? 倉(cāng)庫(kù)管理Delphi源碼、軟件方案,學(xué)習(xí)實(shí)用兩不誤
?? PAS
?? 第 1 頁(yè) / 共 2 頁(yè)
字號(hào):
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);//倉(cāng)庫(kù)盤點(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             = '倉(cāng)庫(kù)管理系統(tǒng)';
  DBConnectionString   = 'Provider=Microsoft.Jet.OLEDB.4.0;'
                         + 'Password="";Data Source=%s;'
                         + 'Persist Security Info=True';

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


const
  MsgI     = '提示';
  MsgW     = '警告';
  MsgE     = '錯(cuò)誤';
  MsgQ     = '詢問(wèn)';
  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 =
   (
   '無(wú)',
   '與',
   '或'
   );


implementation

const
  CkEnTab: array[0..6] of string =
    (
    'rk', 'ck', 'tk', 'dk', 'gh', 'pd', 'jc'
    );
  CkCNTab: array[0..6] of string =
    (
    '入庫(kù)', '出庫(kù)', '退庫(kù)', '調(diào)庫(kù)', '歸還', '盤點(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 =
    (
    '編號(hào)',
    '送貨人',
    '貨品類別',
    '品牌/產(chǎn)地',
    '規(guī)格',
    '計(jì)量單位',
    '入庫(kù)日期',
    '憑證號(hào)',
    '供貨商',
    '存放倉(cāng)庫(kù)',
    '入庫(kù)單價(jià)',
    '入庫(kù)數(shù)量',
    '入庫(kù)總額',
    '備注',
    '操作員',
    '出庫(kù)日期',
    '客戶名稱',
    '出貨倉(cāng)庫(kù)',
    '收貨地址',
    '運(yùn)輸方式',
    '出庫(kù)單價(jià)',
    '出庫(kù)數(shù)量',
    '出庫(kù)總額',
    '退庫(kù)日期',
    '供貨部門',
    '退庫(kù)單價(jià)',
    '退庫(kù)數(shù)量',
    '退庫(kù)總額',
    '調(diào)庫(kù)日期',
    '調(diào)出倉(cāng)庫(kù)',
    '調(diào)入倉(cāng)庫(kù)',
    '調(diào)庫(kù)單價(jià)',
    '調(diào)庫(kù)數(shù)量',
    '調(diào)庫(kù)總額',
    '借貨日期',
    '借貨人',
    '借出倉(cāng)庫(kù)',
    '借出數(shù)量',
    '還貨日期',
    '還貨人',
    '歸還倉(cāng)庫(kù)',
    '歸還數(shù)量',
    '未還數(shù)量',
    '盤點(diǎn)日期',
    '盤點(diǎn)倉(cāng)庫(kù)',
    '盤虧/贏',
    '單價(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, ['本地庫(kù)'])),
          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

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
中文字幕亚洲欧美在线不卡| 91久久线看在观草草青青| 亚洲欧美综合另类在线卡通| 精品视频在线免费观看| 国产成人综合亚洲网站| 亚洲已满18点击进入久久| 日韩欧美亚洲一区二区| 成人av一区二区三区| 亚洲一区二区av电影| 久久精品亚洲一区二区三区浴池| 99久久精品国产观看| 免费三级欧美电影| 久久久综合网站| 色婷婷一区二区三区四区| 日本伊人色综合网| 中文字幕一区二区视频| 日韩免费观看高清完整版在线观看| 99久久久精品| 图片区小说区国产精品视频| 国产日产欧美一区二区视频| 欧美疯狂做受xxxx富婆| 欧美中文字幕一区二区三区| 国产不卡免费视频| 国产乱码精品一区二区三区av | 国产91精品在线观看| 亚洲日本一区二区| 日本一区免费视频| 3atv在线一区二区三区| 欧美系列一区二区| 97精品电影院| 色综合天天综合网天天狠天天| 国产一本一道久久香蕉| 蜜臀av国产精品久久久久| 亚洲一区二区四区蜜桃| 26uuu亚洲综合色欧美| 精品日本一线二线三线不卡| 欧美日韩精品福利| 欧美日韩电影在线播放| 91亚洲永久精品| 91免费版pro下载短视频| 国产成人鲁色资源国产91色综| 精品一区二区三区免费视频| 午夜视频在线观看一区二区三区| 亚洲女子a中天字幕| 国产精品丝袜一区| 日韩一区二区三区免费看| 91精品国产综合久久精品性色| 色狠狠色狠狠综合| 欧美日韩国产高清一区二区三区| 91在线小视频| 欧美日韩午夜影院| 欧美日韩在线播放| 91精品免费在线观看| 51精品国自产在线| 日韩美女视频在线| 欧美α欧美αv大片| 欧美成人猛片aaaaaaa| 日韩欧美一区二区免费| 精品国产区一区| xfplay精品久久| 久久久久国产精品麻豆ai换脸| 日韩欧美国产小视频| 久久午夜电影网| 国产精品三级在线观看| 中文字幕乱码亚洲精品一区 | 亚洲精品自拍动漫在线| 亚洲三级小视频| 一级日本不卡的影视| 亚洲综合999| 亚洲成av人片在www色猫咪| 亚洲成人综合在线| 美女性感视频久久| 狠狠色狠狠色综合| 国产91精品一区二区麻豆网站| 成人免费视频视频在线观看免费| 成人黄色片在线观看| 一本一本久久a久久精品综合麻豆 一本一道波多野结衣一区二区 | 蓝色福利精品导航| 国产精品一区二区三区乱码| 成人激情免费电影网址| 91在线国产观看| 欧美视频在线播放| 精品女同一区二区| 国产丝袜美腿一区二区三区| 国产精品久久久久久妇女6080| 亚洲精品一二三| 日韩黄色在线观看| 国产九九视频一区二区三区| 99麻豆久久久国产精品免费| 在线视频欧美精品| 日韩一区二区中文字幕| 欧美国产日韩精品免费观看| 亚洲精品v日韩精品| 日韩综合小视频| 久久99国产精品免费| 丁香天五香天堂综合| 99视频热这里只有精品免费| 95精品视频在线| 欧美电影一区二区三区| 久久久精品蜜桃| 亚洲综合色噜噜狠狠| 琪琪久久久久日韩精品| 懂色av一区二区三区免费观看| 欧美日韩免费高清一区色橹橹 | 视频一区在线播放| 韩日精品视频一区| 色综合一个色综合| 日韩三级高清在线| 亚洲男人的天堂一区二区| 麻豆精品精品国产自在97香蕉| 成人激情免费电影网址| 日韩一区二区在线免费观看| 国产精品大尺度| 另类小说色综合网站| 91丝袜国产在线播放| 欧美丝袜丝交足nylons| 久久这里只有精品首页| 亚洲另类春色校园小说| 国内精品不卡在线| 欧美日韩一本到| 国产精品视频一区二区三区不卡| 五月开心婷婷久久| 91在线观看下载| 久久久久99精品国产片| 亚洲一区二区三区四区在线观看| 国产精品一品二品| 精品久久久三级丝袜| 亚洲在线中文字幕| 99久久婷婷国产综合精品 | 国产精品进线69影院| 免费人成在线不卡| 欧美三级蜜桃2在线观看| 国产精品国产三级国产| 国产一区二区不卡| 欧美一区二区三区在线电影| 亚洲一级二级在线| 91天堂素人约啪| 国产精品嫩草影院av蜜臀| 久久不见久久见免费视频7| 欧美高清精品3d| 性感美女久久精品| 精品视频在线视频| 亚洲欧美综合另类在线卡通| 成人av手机在线观看| 久久嫩草精品久久久久| 黄色日韩三级电影| 欧美成人一区二区| 日本午夜精品一区二区三区电影| 欧美色老头old∨ideo| 一区二区三区四区在线播放| fc2成人免费人成在线观看播放| 欧美高清一级片在线观看| 国产在线播放一区| 久久综合久久99| 国产一区二区久久| 久久亚洲二区三区| 久草中文综合在线| 91精品国产品国语在线不卡| 亚洲一二三四在线| 91精品国产综合久久久久| 天天综合网天天综合色| 制服视频三区第一页精品| 亚洲18女电影在线观看| 欧美二区三区91| 老司机午夜精品99久久| 久久综合久久综合九色| 精品在线观看视频| 欧美成人综合网站| 国产尤物一区二区| 日本一区二区三区视频视频| 成人性生交大片免费看在线播放| 中文字幕在线视频一区| 99精品久久只有精品| 亚洲自拍另类综合| 欧美一区二区三区视频| 久久精品二区亚洲w码| 久久精品亚洲国产奇米99| 国产精品一区二区久激情瑜伽| 中文字幕精品一区二区精品绿巨人| 91影视在线播放| 香蕉影视欧美成人| 久久久久久久久99精品| 91网站黄www| 午夜电影一区二区三区| 精品久久一区二区三区| 成人国产精品免费观看视频| 亚洲一线二线三线视频| 日韩欧美视频在线| kk眼镜猥琐国模调教系列一区二区| 一区二区三国产精华液| 99re热这里只有精品视频| 奇米精品一区二区三区四区| 久久青草欧美一区二区三区| 91小视频免费观看| 日韩电影一区二区三区| 久久―日本道色综合久久| 色8久久人人97超碰香蕉987| 久久精品久久久精品美女| 国产欧美日韩精品一区| 欧美三级欧美一级|