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

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

?? dmunit.pas

?? 根據(jù)客戶(hù)對(duì)銷(xiāo)售人員回款返利和業(yè)績(jī)返利的功能需求所開(kāi)發(fā)
?? PAS
字號(hào):
unit dmUnit;

interface

uses
  SysUtils, Classes, DB, ADODB,Dialogs,FORMs,windows;

type
  Tdm = class(TDataModule)
    ADOConnection1: TADOConnection;
    ADOConnection2: TADOConnection;
    cdsPSWD: TADOQuery;
    cdsPSWDCOMPNO: TStringField;
    cdsPSWDUSR: TStringField;
    cdsPSWDNAME: TStringField;
    cdsPSWDPWD: TStringField;
    cdsPSWDMNG: TStringField;
    cdsPSWDE_DAT: TDateTimeField;
    cdsPSWDDEP: TStringField;
    cdsPSWDB_DAT: TDateTimeField;
    cdsPSWDREM: TStringField;
    cdsPSWDSPC_CTL: TStringField;
    cdsPSWDALL_CMP: TStringField;
    cdsPSWDCOMP_BOSS: TStringField;
    cdsPSWDMOD: TBlobField;
    cdsPSWDNO_DESKTOP: TStringField;
    cdsPSWDISSHOW: TStringField;
    cdsPSWDDEP_UP: TStringField;
    cdsPSWDISMAIL: TStringField;
    cdsPSWDE_MAIL: TStringField;
    cdsPSWDISGROUP: TStringField;
    cdsPSWDISSALM: TStringField;
    cdsPSWDISCUST: TStringField;
    cdsPSWDISYG: TStringField;
    cdsPSWDUPD_DD: TDateTimeField;
    cdsPSWDPWD_CHG: TStringField;
    cdsPSWDEXPIRE_ID: TStringField;
    cdsPSWDPWD_NOTCHG: TStringField;
    cdsPSWDLANG_ID: TStringField;
    cdsPSWDEXPIRE_DD: TDateTimeField;
    cdsPSWDHOSTNAME: TWideStringField;
    cdsCOMP: TADOQuery;
    cdsCOMPCOMPNO: TStringField;
    cdsCOMPNAME: TStringField;
    DataSource1: TDataSource;
    cdsPSWDdisUser: TStringField;
    qryQuery: TADOQuery;
    qryQuery1: TADOQuery;
    ADOQuery1: TADOQuery;
    ado1: TADOQuery;
    ado2: TADOQuery;
    procedure cdsPSWDCalcFields(DataSet: TDataSet);
  private
    { Private declarations }
  public
    COMPNO,USR:String;
    Login:Boolean;
    COMP_BOSS:Boolean;
    ComputerName:string;
    zt:String;//賬套
      function Enc(Str:String):String;//字符加密函數(shù)  這是用的一個(gè)異或加密
      function Dec(Str:String):String;//字符解密函數(shù)
     Function F_formatStr(const s:string;iLength:integer):string;
     function EncryptionEngine(Src, Key: String; Encrypt: Boolean): string;
     function MakePWD(szBPWD: String): String;
     procedure getQuery(sql:string);
      procedure qryExecute(sql:String);
      function setLengthStr(i,width:integer):string;//數(shù)據(jù),長(zhǎng)度
       function getSubString(s:string;pos:integer):string;
       function getQty1(prd_no:string;qty:double):double;
           function  GetAutoNo(table :String;PKField: String;Search:String): string;
            Procedure getSearch(var vForm:TFORM;qry:TADOQuery;initSql,FieldA_TIME,FieldB_TIME,S_Caption,FieldA,TitleA,FieldB,TitleB:String);
    { Public declarations }
  end;

var
  dm: Tdm;

  const

      XorKey:array[0..7] of Byte=($B2,$09,$AA,$55,$93,$6D,$84,$47); //字符串加密用


implementation

uses frmSearchUnit;

{$R *.dfm}

{ Tdm }

function Tdm.Dec(Str: String): String;
var
 i,j:Integer;
begin
 Result:='';
 j:=0;
 for i:=1 to Length(Str) div 2 do
   begin
     Result:=Result+Char(StrToInt('$'+Copy(Str,i*2-1,2)) xor XorKey[j]);
     j:=(j+1) mod 8;
   end;

end;

function Tdm.Enc(Str: String): String;
var
 i,j:Integer;
begin
 Result:='';
 j:=0;
 for i:=1 to Length(Str) do
   begin
     Result:=Result+IntToHex(Byte(Str[i]) xor XorKey[j],2);
     j:=(j+1) mod 8;
   end;
end;

procedure Tdm.cdsPSWDCalcFields(DataSet: TDataSet);
begin
 cdsPswd.FieldByName('disUser').AsString:=F_formatStr(cdsPswdUSR.AsString,10)+'      '+f_formatStr(cdsPswdName.AsString,10);
end;

function Tdm.F_formatStr(const s: string; iLength: integer): string;
var
  tempS:string;
  i:integer;
begin
  tempS:=s;
  if length(s)>iLength then
    temps:=copy(s,1,iLength)
  else
    begin
      for i:=length(s) to iLength-1 do
        temps:=temps+' ';
    end;
  result:=temps;  
end;

function Tdm.EncryptionEngine(Src, Key: String; Encrypt: Boolean): string;
var
  KeyLen    :Integer;
  KeyPos    :Integer;
  offset    :Integer;
  dest      :string;
  SrcPos    :Integer;
  SrcAsc    :Integer;
  TmpSrcAsc :Integer;
  Range     :Integer;
begin
  KeyLen:=Length(Key);
  if KeyLen = 0 then key:='sunlike.com';
  KeyPos:=0;
  Range:=256;
  if Encrypt then
  begin
      Randomize;
      offset:=Random(Range);
      dest:=format('%1.2x',[offset]);
      for SrcPos := 1 to Length(Src) do
      begin
           SrcAsc:=(Ord(Src[SrcPos]) + offset) MOD 255;
           if KeyPos < KeyLen then KeyPos:= KeyPos + 1 else KeyPos:=1;
           SrcAsc:= SrcAsc xor Ord(Key[KeyPos]);
           dest:=dest + format('%1.2x',[SrcAsc]);
           offset:=SrcAsc;
      end;
  end
  else
  begin
      try
        offset:=StrToInt('$'+ copy(src,1,2));
        SrcPos:=3;
        repeat
              SrcAsc:=StrToInt('$'+ copy(src,SrcPos,2));
              if KeyPos < KeyLen Then KeyPos := KeyPos + 1 else KeyPos := 1;
              TmpSrcAsc := SrcAsc xor Ord(Key[KeyPos]);
              if TmpSrcAsc <= offset then
                   TmpSrcAsc := 255 + TmpSrcAsc - offset
              else
                   TmpSrcAsc := TmpSrcAsc - offset;
              dest := dest + chr(TmpSrcAsc);
              offset:=srcAsc;
              SrcPos:=SrcPos + 2;
        until SrcPos >= Length(Src);
      except
      end;
  end;
  Result:=dest;

end;

function Tdm.MakePWD(szBPWD: String): String;
var
     Loopi, iLenght : Integer;
begin
  szBPWD:=UpperCase(szBPWD);
  iLenght:= Length(szBPWD);
  for Loopi  :=1 to iLenght do
    szBPWD[Loopi] := Char(Integer(szBPWD[Loopi]) + Loopi + 30);

  if (iLenght mod 2) = 1 then
    szBPWD[iLenght]:= Char(Integer(szBPWD[iLenght]) - iLenght - 30);
  Result := szBPWD;
end;

procedure Tdm.getQuery(sql: string);
begin
 qryQuery.Active:=False;
  qryQuery.SQL.Clear;
  qryQuery.SQL.Add(sql);
  qryQuery.Active:=True;
end;

procedure Tdm.qryExecute(sql: String);
begin
  adoquery1.Active:=False;
  adoQuery1.SQL.Clear;
  adoQuery1.SQL.Add(sql);
  try
    adoQuery1.ExecSQL;

  except
     showMessage(sql);
  end;
end;

function Tdm.setLengthStr(i, width: integer): string;
var
  j,k:integer;
  s:string;
begin
  s:=intToStr(i);
  for k:=1 to width do
    s:='0'+s;
  {for j:=length(s) to width do
    s:='0'+s; }
  result:=s;  


end;

function Tdm.getSubString(s: string; pos: integer): string;
var
  temp:String;
  ch:char;
  i,j:Integer;
begin
   j:=0;
   temp:='';
   for i:=0 to length(s) do
     begin
       if s[i]=';' then
         inc(j);
       if i>pos then
         begin
           if j=pos then
            temp:=temp+s[i];
          end;
     end;
   result:=temp;

end;

function Tdm.getQty1(prd_no: string; qty: double): double;
VAR
  sql,t1,t2:STRING;
  r:double;
BEGIN


        r:=0;
        sql:='select FORMULA from prdt where prd_no='''+PRD_NO+'''';
        ado1.Active:=False;
        ado1.SQL.Clear;
        ado1.SQL.Add(sql);
        ado1.Active:=True;
        if ado1.Fields[0].AsString<>'' then
          begin
            t1:=ado1.Fields[0].AsString;

            t2:=dm.getSubString(ado1.Fields[0].asstring,5);
            t2:=copy(t2,12,length(t2));
            sql:='select '+formatFloat('0.00000',qty)+t2+'.00';
            ado2.Active:=False;
            ado2.SQL.Clear;
            ado2.SQL.Add(sql);
            ado2.Active:=true;
            r:=ado2.Fields[0].AsFloat;
          end;

     result:=r;
end;
 

function Tdm.GetAutoNo(table, PKField, Search: String): string;

begin
    dm.getQuery('SELECT MAX(right('+PKField+',4)) AS AutoNO FROM '+table+' Where ' + PKField +' LIKE  ''' + Search + '%'' AND ISNUMERIC(right('+PKField+',4))=1');
     //CommandText:='SELECT MAX(right('+PKField+',4)) AS AutoNO FROM '+table+' Where ' + PKField +' LIKE  ''' + Search + '%'' AND ISNUMERIC(right('+PKField+',4))=1';
     //Open;
     if not dm.qryQuery.Fields[0].IsNull then
            result:=Search+FormatFloat('0000',dm.qryQuery.Fields[0].AsInteger+1)
     else
            result:=Search+'0001';
end;

procedure Tdm.getSearch(var vForm: TFORM; qry: TADOQuery; initSql,
  FieldA_TIME, FieldB_TIME, S_Caption, FieldA, TitleA, FieldB,
  TitleB: String);
begin
 if qry.State in [dsInsert,dsEdit] then
    begin
      if Application.MessageBox('數(shù)據(jù)已經(jīng)修改,是否放棄保存','放棄保存?', MB_ICONINFORMATION +MB_YESNO)=IDNO then exit
      else
        qry.Cancel;
    end;
  if vForm=nil  then
    begin
     vForm:=tfrmSearch.create(self);
     (vForm as TfrmSearch).dsSource.DataSet:=qry;
     (vForm as TfrmSearch).DBGrid1.Columns[0].FieldName:=FieldA;
     (vForm as TfrmSearch).DBGrid1.Columns[1].FieldName:=FieldB;
     (vForm as TfrmSearch).DBGrid1.Columns[0].Title.Caption:=TitleA;
     (vForm as TfrmSearch).DBGrid1.Columns[1].Title.Caption:=TitleB;
     (vForm as TfrmSearch).initSql:=initSql;
     (vForm as TfrmSearch).FieldA:=FieldA;
     (vForm as TfrmSearch).FieldB:=FieldB;
     (vForm as TfrmSearch).FieldA_TIME:=FieldA_TIME;
     (vForm as TfrmSearch).S_Caption:=s_Caption;
     (vForm as TfrmSearch).S_DD.Date :=now;
     (vForm as TfrmSearch).E_DD.Date :=now;
   end;

     (vForm as TfrmSearch).show;
end;

end.

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日韩av一区二区在线影视| 91在线国内视频| 国产盗摄女厕一区二区三区| 91蜜桃视频在线| 欧美亚洲高清一区二区三区不卡| 欧美三级日韩三级国产三级| 日韩你懂的在线播放| 亚洲精品一二三区| 激情综合网激情| 欧美久久久久久蜜桃| 久久人人超碰精品| 日韩高清在线一区| 成人av网站免费| 欧美日韩亚洲综合一区| 亚洲精品v日韩精品| 风间由美中文字幕在线看视频国产欧美| 欧美亚洲高清一区| 国产精品国模大尺度视频| 久久精品国产在热久久| 欧美一区二区三区成人| 日韩高清在线电影| 在线成人免费视频| 日日摸夜夜添夜夜添精品视频 | 免费欧美高清视频| 五月天激情综合| 欧美一级二级在线观看| 久热成人在线视频| 色综合久久88色综合天天 | 亚洲一区二区av在线| 国产蜜臀97一区二区三区| 国产传媒日韩欧美成人| 亚洲青青青在线视频| 欧美本精品男人aⅴ天堂| 91美女片黄在线观看| 一区二区在线观看免费| 欧美综合欧美视频| 青娱乐精品视频| wwww国产精品欧美| 9色porny自拍视频一区二区| 国产欧美一区二区三区网站| 成人avav影音| 亚洲综合成人网| 欧美日韩一级黄| 精品一区二区精品| 欧美激情中文不卡| 色综合天天综合色综合av| 亚洲午夜免费福利视频| 日韩免费看的电影| 成人国产在线观看| 亚洲人精品午夜| 欧美在线视频不卡| 国产精品99久久久久久久女警| 国产精品丝袜一区| gogogo免费视频观看亚洲一| 一区二区三区鲁丝不卡| 精品国产乱码91久久久久久网站| av在线免费不卡| 日韩国产精品91| 中文字幕在线免费不卡| 日韩小视频在线观看专区| 国产成人综合亚洲91猫咪| 一区二区三区中文字幕电影| 精品国产一区二区三区久久久蜜月 | 日韩一区在线免费观看| 欧美日本国产一区| 不卡av免费在线观看| 免费成人性网站| 亚洲韩国一区二区三区| 日韩毛片精品高清免费| 国产精品欧美精品| 国产精品久久三区| 国产精品美女久久久久高潮| 久久日一线二线三线suv| 欧美一区二区三区在线观看视频| 欧美视频在线观看一区二区| 黄色资源网久久资源365| 久久精品国内一区二区三区| 国产一级精品在线| 高清在线不卡av| 色噜噜狠狠色综合中国| 欧美一级高清大全免费观看| 久久久久久久久久久久电影| 日韩精品中文字幕在线一区| 91麻豆精品久久久久蜜臀| 7777精品伊人久久久大香线蕉| 欧美日韩电影一区| 欧美一区二区三区免费在线看| 日韩欧美视频一区| 欧美精彩视频一区二区三区| 国产精品欧美一区喷水| 午夜欧美大尺度福利影院在线看| 亚洲电影一级片| 国产自产视频一区二区三区| 99这里只有久久精品视频| av亚洲精华国产精华精| 欧美女孩性生活视频| 欧美videos中文字幕| 国产精品女同一区二区三区| 一区二区三区久久| 国产精品综合久久| 欧美色手机在线观看| 国产丝袜欧美中文另类| 亚洲韩国精品一区| 国产伦理精品不卡| 91麻豆精品国产91久久久久久久久| 日韩一区二区三区视频| 亚洲免费色视频| 国产乱码一区二区三区| 欧美区一区二区三区| 国产精品国产三级国产有无不卡 | 欧美日韩一区二区不卡| 国产网站一区二区| 蜜臀av性久久久久蜜臀aⅴ| 色播五月激情综合网| 中文字幕精品一区| 高清国产一区二区| 国产肉丝袜一区二区| 精品午夜一区二区三区在线观看| 欧美综合色免费| 亚洲国产精品久久久久婷婷884 | 亚洲精品国产一区二区三区四区在线 | 日韩激情在线观看| 成人av手机在线观看| 国产精品久久777777| 91免费版在线| 一区二区三区高清在线| 99re成人精品视频| 一区二区三区中文字幕电影| 91国产福利在线| 亚洲国产另类精品专区| 91精品国产综合久久精品图片| 久久精品久久99精品久久| 日韩免费高清电影| 成人精品gif动图一区| 亚洲精品欧美在线| 欧美高清视频不卡网| 奇米影视7777精品一区二区| 欧美草草影院在线视频| 成人免费的视频| 日韩高清不卡一区| 欧美国产视频在线| 欧美三级电影在线观看| 狠狠色丁香婷综合久久| 亚洲乱码中文字幕| 欧美高清www午色夜在线视频| 黄网站免费久久| 亚洲午夜私人影院| 国产欧美精品区一区二区三区 | 亚洲精品伦理在线| 精品99久久久久久| 在线中文字幕不卡| 日本一不卡视频| 亚洲日本欧美天堂| 国产校园另类小说区| 91精品久久久久久久久99蜜臂| 成人a免费在线看| 精品一二线国产| 亚洲一级二级在线| 国产精品人成在线观看免费| 欧美哺乳videos| 日韩一区二区免费电影| 一本一道综合狠狠老| 不卡区在线中文字幕| 成人在线一区二区三区| 久久精品国产免费| 精品在线观看免费| 玖玖九九国产精品| 久久国产成人午夜av影院| 日本一不卡视频| 久久精品国产色蜜蜜麻豆| 久久99九九99精品| 国精品**一区二区三区在线蜜桃 | 欧美性一区二区| 欧美日本高清视频在线观看| 在线不卡中文字幕播放| 91精品免费观看| 精品国产91乱码一区二区三区 | 美女一区二区久久| 极品少妇一区二区三区精品视频| 久久不见久久见免费视频1| 国产毛片精品一区| 日本伦理一区二区| 久久亚洲精品国产精品紫薇 | 国产一区二区三区香蕉| 99国产精品久久久久久久久久| 色综合久久综合| 精品国产在天天线2019| 久久综合网色—综合色88| 中文字幕亚洲区| 日本成人在线看| 波多野结衣亚洲一区| 91精品麻豆日日躁夜夜躁| 国产欧美日韩在线| 爽好久久久欧美精品| 国产东北露脸精品视频| 欧美疯狂做受xxxx富婆| 国产精品久久久久一区| 老汉av免费一区二区三区| 日本丰满少妇一区二区三区| 国产日韩欧美高清在线|