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

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

?? threadp.pas

?? 中國移動大客戶管理系統
?? PAS
?? 第 1 頁 / 共 2 頁
字號:
                //線程同步調用
                P_i :=i;
                P_j :=lj;
                P_bz :=2;
                //
                P_value :=ppname[temp1];
                if P_value='' then
                P_value :='無法分類';
                Synchronize(RunUpdate);
                If Terminated Then Exit;
              End;
              If UPPERcase(querytj.Fields.Fields[i].DisplayName) = uppercase('TypeNo') Then
              begin
                //線程同步調用
                P_i :=i;
                P_j :=lj;
                P_bz :=2;
                P_value :=TypeName[strtoint(temp[i])];
                if P_value='' then//當數組里沒有這個數據,臟數據的存在或者說是99
                P_value :='無法分類';
                Synchronize(RunUpdate);
                If Terminated Then Exit;
              end;
            end
            else
              begin//當類型號有空時
                P_i :=i;
                P_j :=lj;
                P_bz :=2;
                P_value :='無法分類';
                Synchronize(RunUpdate);
              end;
            li :=i;
            If Terminated Then Exit;
        End;//For i := 0 To P_FieldCount - 2 Do

        //加上數值
        If querytj2.SQL.Text <> '' Then
        Begin
          querytj3.First;
          While Not querytj3.Eof Do
          Begin
            If Terminated Then Exit;
            if P_INDISEQBz then
            begin
              //速度慢,以后改
              If querytj2.Locate
                (querytj2.Fields.Fields[0].DisplayName+';'+
                 querytj2.Fields.Fields[1].DisplayName,
                 VarArrayOf([querytj3.Fields.Fields[0].AsString
                 ,querytj3.Fields.Fields[2].AsString]), []) Then
              begin
                //線程同步調用
                P_i :=li+1;    //列數,此時的li為統計類型詳細項目數
                P_j :=lj;       //lj=2
                P_bz :=3;
                P_value :=querytj2.fieldbyname('sl').asstring;
                Synchronize(RunUpdate);

                If Terminated Then Exit;
              end
              Else
                begin
                  //線程同步調用
                  P_i :=li+1;
                  P_j :=lj;
                  P_bz :=3;
                  P_value :='0';
                  Synchronize(RunUpdate);
                  If Terminated Then Exit;
                end;

            end
            else
              begin
                //速度慢,以后改
                If querytj2.Locate
                  (querytj2.Fields.Fields[querytj2.Fields.count - 2].DisplayName,
                   querytj3.Fields.Fields[0].AsString, []) Then
                begin
                  //線程同步調用
                  P_i :=li+1;    //列數,此時的li為統計類型詳細項目數
                  P_j :=lj;       //lj=2
                  P_bz :=3;
                  P_value :=querytj2.fieldbyname('sl').asstring;
                  Synchronize(RunUpdate);

                  If Terminated Then Exit;
                end
                Else
                  begin
                    //線程同步調用
                    P_i :=li+1;
                    P_j :=lj;
                    P_bz :=3;
                    P_value :='0';
                    Synchronize(RunUpdate);
                    If Terminated Then Exit;
                  end;
                end;


            li := li + 1;
            If Terminated Then Exit;
            querytj3.Next;
          End;//While Not querytj3.Eof Do
        End;//If querytj2.SQL.Text <> '' Then
        //一行的合計
        If tital = 0 Then
        Begin
          If Terminated Then Exit;
          //合計數值
          If (querytj.fieldbyname('sl').asstring = '') Or (querytj.fieldbyname('sl').asstring = null) Then
          begin
            P_i :=li+2;
            P_j :=lj;//lj為2開始
            P_bz :=3;
            P_value :='0';
            Synchronize(RunUpdate);
          end
          Else
            begin
              //線程同步調用
              P_i :=li+2;
              P_j :=lj;
              P_bz :=3;
              P_value :=querytj.fieldbyname('sl').asstring;
              Synchronize(RunUpdate);
              If Terminated Then Exit;
            end;
        End;
        //算出其他的數值,一行的其他
        lsum :=0;
        for i :=P_FieldCount - 1 to li do
        begin
          lsum :=lsum +Sheet.Cells[i,lj].asinteger;
        end;
        lsum :=Sheet.Cells[li+2,lj].asinteger-lsum;
        P_i :=li+1;
        P_j :=lj;
        P_bz :=3;
        P_value :=inttostr(lsum);
        Synchronize(RunUpdate);

        lj := lj + 1;//行數加
        If Terminated Then Exit;
        querytj.Next;
      End;//While Not querytj.eof Do

      //第一列第一行的合計
      //線程同步調用
      P_add :=false;
      P_i :=0;
      P_j :=Sheet.RowCount-1;
      P_bz :=1;
      P_value :='合計';
      P_count :=P_FieldCount;
      Synchronize(RunUpdate);
      P_add :=true;

      If Terminated Then Exit;

      If querytj2.SQL.Text <> '' Then //總行數,總字段數,總的列數
        GetTotal(P_j, P_FieldCount - 1, Sheet.ColCount)
      Else
        GetTotal(P_j, P_FieldCount - 1, P_FieldCount);
      //修復個錯誤
      for i:=0 to Sheet.ColCount-2 do
      begin
        if i<>P_FieldCount - 1 then
        begin
          P_i :=i;
          P_j :=0;
          P_bz :=3;
          P_value :='';
          Synchronize(RunUpdate);
        end;
      end;
    Except
      P_Exception :=ExceptObject as Exception;
      Synchronize(ShowError);
      P_Result :=false;
      //self.DoTerminate;
    End; // try/except
  end;
  Application.ProcessMessages;
  ReleaseMutex(ZqsMutex);
End;

Procedure TDrawThread.GetTotal(i, j, k: integer);
Var
  i1, j1, sum: integer;
Begin
  For i1 := j To k - 1 Do//列數
  Begin
    sum := 0;
    if P_INDISEQBz then
    begin
      For j1 := 3 To i - 1 Do//行數
      Begin
        If Terminated Then Exit;
        If Sheet.Cells[i1, j1].Asstring <> '' Then
          Sum := sum + Sheet.Cells[i1, j1].Asinteger
      End;
    end
      else
      begin
        For j1 := 2 To i - 1 Do//行數
        Begin
          If Terminated Then Exit;
          If Sheet.Cells[i1, j1].Asstring <> '' Then
            Sum := sum + Sheet.Cells[i1,j1].Asinteger
        End;
      end;
    P_i :=i1;
    P_j :=i;
    P_bz :=3;
    P_value :=inttostr(sum);
    Synchronize(RunUpdate);
    If Terminated Then Exit;
  End;
End;

Function TDrawThread.GetName(s: String): String;
Begin
  If uppercase(s) = uppercase('CityNo') Then
    Result := '地市'
  Else If uppercase(s) = uppercase('off_no_home') Then
    Result := '局向'
  Else If uppercase(s) = uppercase('GradeNo') Then
    Result := '星級'
  Else If uppercase(s) = uppercase('SJ') Then
    Result := '時間'
  Else If uppercase(s) = uppercase('CustAtt') Then
    Result := '性質'
  Else If uppercase(s) = uppercase('ProductNO') Then
    Result := '品牌'
  Else If uppercase(s) = uppercase('SL') Then
    Result := '數量'
  Else If uppercase(s) = uppercase('Sex') Then
    Result := '性別'
  Else If uppercase(s) = uppercase('INDISEQ') Then
    Result := '喜好'
  Else If uppercase(s) = uppercase('ZTDM') Then
    Result := '狀態'
  Else If uppercase(s) = uppercase('YWDM') Then
    Result := '業務'
  Else If uppercase(s) = uppercase('GROUPCALLING') Then
    Result := '行業'
  Else If uppercase(s) = uppercase('bdmx') Then
    Result := '變動明細'
  Else If UpperCase(s) = Uppercase('GROUPCALLING') Then
    Result := '企業類型'
  Else If UpperCase(s) = UpperCase('IndiCode') Then
    Result := '喜好'
  Else If UpperCase(s) = UpperCase('Typeno') Then
    Result := '類型'
  Else If UpperCase(s) = UpperCase('FunType') Then
    Result := '業務功能'
  Else
    Result := '';
  If Terminated Then Exit;
End;

Function To_CityNo(pCityNo:String):Integer;
Begin   
   To_CityNo:=StrToInt(Copy(pCityNo,3,1));
End;

Procedure TDrawThread.initialize;
Var
  query: Tquery;
  i: integer;
Begin
    query := Tquery.Create(Application);
    query.DatabaseName := database;

    query.Close;
    query.SQL.Text := 'select * from T_D_City where CityNo is not null';
    query.Open;
    query.First;
    While Not query.Eof Do
    Begin
      cityname[To_CityNo(Query.FieldByName('CityNo').AsString)] := Query.FieldByName('CityName').AsString;
      query.next;
    End;
    query.Close;
    query.SQL.Text := 'select * from T_D_County where CityNo Is Not Null And Off_no_home Is Not Null';
    query.Open;
    query.First;
    While Not query.Eof Do
    Begin
      offname[To_CityNo(Query.FieldByName('CityNo').AsString), Query.FieldByName('off_no_home').Asinteger] :=Query.FieldByName('home_name').AsString;
      query.next;
    End;
    query.Close;
    query.SQL.Text := 'Select * From T_D_Grade where GradeNo Is Not Null';
    query.Open;
    query.First;
    While Not query.Eof Do
    Begin
      starname[Query.FieldByName('GradeNo').Asinteger] := Query.FieldByName('DESCRIPTION').AsString;
      query.next;
    End;

    query.Close;
    query.SQL.Text := 'select * from T_D_Config where Upper(Par_Name)=''CUSTATT''';
    query.Open;
    query.First;
    While Not query.Eof Do
    Begin
      lbname[Query.FieldByName('Par_Values').Asinteger] := Query.FieldByName('Par_Desc').AsString;
      query.next;
    End;
    query.Close;
    query.SQL.Text := 'Select * From T_D_Config Where Upper(Par_Name)=''BRANDNAME''';
    query.Open;
    query.First;
    While Not query.Eof Do
    Begin
      i := ord(Query.FieldByName('Par_Values').asstring[1]);
      ppname[i] := Query.FieldByName('Par_Desc').AsString;
      query.next;
    End;
    query.Close;
    query.SQL.Text := 'Select * From T_D_Config Where Upper(Par_Name)=''SEX''';
    query.Open;
    query.First;
    While Not query.Eof Do
    Begin
      If UpperCase(Query.FieldByName('Par_Values').AsString)='F' Then
         XBName[0]:=Query.FieldByName('Par_Desc').AsString;
      If UpperCase(Query.FieldByName('Par_Values').AsString)='M' Then
         XBName[1]:=Query.FieldByName('Par_Desc').AsString;
      If UpperCase(Query.FieldByName('Par_Values').AsString)='O' Then
         XBName[2]:=Query.FieldByName('Par_Desc').AsString;
      query.next;
    End;
    query.Close;
    query.SQL.Text := 'Select * From T_D_Config Where Upper(Par_Name)=''GROUPTYPE''';
    query.Open;
    query.First;
    While Not query.Eof Do
    Begin
      TypeName[Query.FieldByName('Par_Values').Asinteger] := Query.FieldByName('Par_Desc').AsString;
      query.next;
    End;
    query.Free;

End;

//
//    P_i,P_j,P_Bz :integer;
//    P_value :string;
procedure TDrawThread.RunUpdate;
begin
  Sheet.Cells[P_i, P_j].Font.name := '宋體';
  Sheet.Cells[P_i, P_j].Font.size := 12;
  Sheet.Cells[P_i, P_j].VertAlign := vaCenter;
  Sheet.Cells[P_i, P_j].HorzAlign := haCenter;
  case P_Bz of
  0:Sheet.Cells[P_i, P_j].Color := clBtnShadow;
  1:Sheet.Cells[P_i, P_j].Color := clGrayText;
  2:Sheet.Cells[P_i, P_j].Color := clBtnFace;
  3:Sheet.Cells[P_i, P_j].Color := clWindow;
  end;

   Sheet.Cells[P_i, P_j].Borders[sAround] := XLSideBorder(clblack, slSingle);
   Sheet.Cells[P_i, P_j].AsString :=P_Value;
  //如果有幾個類型詳細項目就加大寬度
  if not P_add then
  Sheet.Cells[P_i, P_j].Width := P_count - 1;
end;

procedure TDrawThread.ShowError;
begin
  application.ShowException(P_Exception);
end;

procedure TDrawThread.RunModify;
begin
  if P_str='city' then//列并
  begin
    if P_J >1 then
    if P_value=Sheet.Cells[P_I, P_J - 1].asstring then
    Sheet.Cells[P_I, P_J - 1].Height := Sheet.Cells[P_I, P_J - 1].Height + 1;
  end
  else
  if P_str='off_no_home' then
  begin
    if (P_J >1) and (P_I >0) then
      if P_CityName=Sheet.Cells[P_I-1, P_J-1].asstring then
        if P_value=Sheet.Cells[P_I, P_J - 1].asstring then
          begin
            Sheet.Cells[P_I, P_J - 1].Height := Sheet.Cells[P_I, P_J - 1].Height + 1;
          end;
  end
  else
    if P_str='INDISEQ' then//行合并,前面向后
    begin
      if P_i >P_FieldCount -1 then
      if P_value=Sheet.Cells[P_I -1, P_J].asstring then
      Sheet.Cells[P_I -1, P_J].Width := Sheet.Cells[P_I -1, P_J].Width + 1;
    end
    else
      if P_str='INDISEQBZ' then//列并
      begin
        Sheet.Cells[P_I, P_J].Height := Sheet.Cells[P_I, P_J].Height + 1;
      end;
end;

procedure TDrawThread.inisheet;
var i,j:dword;
begin
   for i:=0 to sheet.ColCount -1 do
   for j:=0 to sheet.rowCount-1 do
    (sheet.cells[i,j].Borders [saround]:=xlsideborder(clblack ,slnone));
   sheet.ColCount :=0;
   sheet.RowCount :=0;
end;


End.

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久久青草欧美一区二区三区| 欧美丰满美乳xxx高潮www| 日本一区二区三级电影在线观看| 国产在线精品免费| 国产精品午夜电影| 一本到不卡免费一区二区| 亚洲一区在线电影| 日韩免费视频线观看| 国产河南妇女毛片精品久久久| 中文av字幕一区| 欧洲av在线精品| 九色综合狠狠综合久久| 久久你懂得1024| 色成年激情久久综合| 日韩av网站免费在线| 2020日本不卡一区二区视频| www.亚洲色图| 亚洲午夜激情网站| 久久综合av免费| 色综合欧美在线| 美女视频黄a大片欧美| 中文字幕精品一区二区三区精品 | 中文字幕五月欧美| 欧美日韩精品福利| 岛国精品一区二区| 日韩主播视频在线| 日本一二三四高清不卡| 欧美日韩一区成人| 国产v日产∨综合v精品视频| 亚洲国产成人av网| 国产女主播一区| 欧美一区二区在线免费播放 | 美脚の诱脚舐め脚责91| 国产精品视频一二三| 欧美丰满嫩嫩电影| 99riav一区二区三区| 久久99蜜桃精品| 一区二区三区精品在线| 国产视频一区二区三区在线观看| 精品视频123区在线观看| 国产成人午夜片在线观看高清观看| 亚洲自拍偷拍网站| 国产精品人人做人人爽人人添| 欧美日韩电影在线播放| 91在线视频18| 国产麻豆视频一区二区| 日本美女视频一区二区| 亚洲欧美国产77777| 日本一区二区三级电影在线观看| 欧美电影在线免费观看| 色婷婷av一区| 成人久久18免费网站麻豆 | 欧美国产一区在线| 日韩一区二区三区视频在线观看| 色偷偷久久人人79超碰人人澡| 国产精品综合av一区二区国产馆| 日本不卡一区二区| 亚洲二区在线视频| 亚洲一区二区三区在线| 亚洲视频小说图片| 中文字幕日韩一区| 中文字幕精品三区| 国产视频一区在线播放| 久久综合九色欧美综合狠狠| 日韩三区在线观看| 91精品欧美一区二区三区综合在| 欧美色图片你懂的| 欧美在线视频全部完| 91电影在线观看| 色综合天天综合色综合av| 91免费视频大全| 91色.com| 在线观看网站黄不卡| 在线视频欧美精品| 欧美三级日韩在线| 欧美日本韩国一区二区三区视频 | 免费高清视频精品| 秋霞午夜av一区二区三区| 香蕉久久一区二区不卡无毒影院 | 日韩一区二区三区视频在线| 欧美疯狂做受xxxx富婆| 制服丝袜在线91| 欧美精品一区二区三区一线天视频 | 欧美精品一区二区高清在线观看| 欧美一区二区三区精品| 日韩美女视频一区二区在线观看| 日韩精品一区二区三区在线| 久久色在线视频| 欧美国产1区2区| 亚洲欧美日韩在线播放| 亚洲观看高清完整版在线观看| 日韩黄色小视频| 韩国女主播一区| 不卡电影免费在线播放一区| 一本久久a久久免费精品不卡| 欧美色综合网站| 欧美一区二区三区四区五区 | 一本到高清视频免费精品| 欧美伊人久久久久久久久影院 | 欧美一区二区女人| 久久综合狠狠综合久久激情| 国产精品区一区二区三区| 亚洲女性喷水在线观看一区| 亚洲国产精品一区二区久久| 裸体健美xxxx欧美裸体表演| 粉嫩一区二区三区在线看| 91久久国产最好的精华液| 日韩欧美的一区| 国产精品福利在线播放| 日韩电影在线免费观看| 国产精品一品视频| 欧美性感一区二区三区| 精品国产sm最大网站免费看| 中文字幕一区二区三区av| 视频在线观看一区| 成人av小说网| 日韩三级在线观看| 亚洲精品欧美专区| 韩国理伦片一区二区三区在线播放| 91在线视频免费91| 精品乱人伦小说| 亚洲精品日日夜夜| 高清国产一区二区三区| 欧美天堂一区二区三区| 国产嫩草影院久久久久| 日韩综合一区二区| 99re视频精品| 久久蜜臀中文字幕| 丝袜亚洲精品中文字幕一区| 成人深夜视频在线观看| 欧美一区二区精品在线| 中文字幕一区二区三中文字幕| 蜜臀av一区二区在线观看 | 欧美中文字幕一区| 中文字幕精品—区二区四季| 另类专区欧美蜜桃臀第一页| 欧美亚州韩日在线看免费版国语版| 久久中文娱乐网| 美国av一区二区| 欧美美女一区二区三区| 亚洲久草在线视频| 成人动漫一区二区三区| 久久―日本道色综合久久| 午夜成人免费电影| 欧美在线看片a免费观看| 国产精品系列在线| 国产精品一区三区| 日韩三区在线观看| 日韩国产欧美在线观看| 欧美在线一区二区三区| 亚洲精品中文在线| 91麻豆成人久久精品二区三区| 国产亚洲一区二区在线观看| 激情综合网天天干| 精品对白一区国产伦| 久久国产精品一区二区| 日韩一区二区精品葵司在线| 日韩电影在线一区二区| 欧美久久一二区| 三级一区在线视频先锋| 欧美浪妇xxxx高跟鞋交| 五月婷婷久久丁香| 91精品国产综合久久蜜臀| 偷拍日韩校园综合在线| 91 com成人网| 麻豆精品视频在线观看视频| 日韩欧美成人一区| 精品一区二区久久久| 久久午夜免费电影| 国产麻豆成人精品| 国产精品天干天干在观线| 不卡一区二区中文字幕| 亚洲你懂的在线视频| 日本乱人伦aⅴ精品| 五月天一区二区三区| 日韩午夜av一区| 国产在线精品免费| 中文字幕在线不卡一区二区三区| 成人av午夜影院| 一区二区在线观看av| 欧美浪妇xxxx高跟鞋交| 韩国av一区二区| 国产精品久久一卡二卡| 色婷婷综合久久久中文字幕| 午夜伊人狠狠久久| 亚洲精品一线二线三线无人区| 高清视频一区二区| 一区二区三区在线免费播放 | 国内精品伊人久久久久av一坑| 国产亚洲美州欧州综合国| 大桥未久av一区二区三区中文| 成人免费在线视频观看| 欧美精品xxxxbbbb| 国产一区二区影院| 亚洲猫色日本管| 日韩精品中文字幕在线不卡尤物| 高清不卡在线观看| 亚洲第一成年网| 欧美极品少妇xxxxⅹ高跟鞋 | 在线亚洲免费视频|