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

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

?? invaccountage.pas

?? 文件包含程序源原文件
?? PAS
?? 第 1 頁 / 共 2 頁
字號:

    Column := ListView.Columns.Add;
    Column.Width     := ListView.Font.Size * 10;
    Column.Alignment := taRightJustify;
    Column.Caption   := '2年期';
    Inc(FColumnCount);

    Column := ListView.Columns.Add;
    Column.Width     := ListView.Font.Size * 10;
    Column.Alignment := taRightJustify;
    Column.Caption   := '3年期';
    Inc(FColumnCount);

    Column := ListView.Columns.Add;
    Column.Width     := ListView.Font.Size * 10;
    Column.Alignment := taRightJustify;
    Column.Caption   := '4年期';
    Inc(FColumnCount);

    Column := ListView.Columns.Add;
    Column.Width     := ListView.Font.Size * 10;
    Column.Alignment := taRightJustify;
    Column.Caption   := '5年期';
    Inc(FColumnCount);

    Column := ListView.Columns.Add;
    Column.Width     := ListView.Font.Size * 10;
    Column.Alignment := taRightJustify;
    Column.Caption   := '5年以上';
    Inc(FColumnCount);
  end;
end;

procedure TfrmAccountAge.Read_InvAgeInfo;
begin
  SetListColumn(rdogrpView.ItemIndex);
  dm_inventory.Read_InvAgeInfo(FInvAgeList, rdogrpView.ItemIndex);
  Screen.Cursor  := crHourGlass;
  try
    SetListView(rdogrpView.ItemIndex);
  finally
    Screen.Cursor := crDefault;
  end;
end;

procedure TfrmAccountAge.SetListView(iMode: integer);
var i, j: Integer;
    lcP: PInvAgeInfo;
    Item: TListItem;
    Tmp: string;
begin
  Screen.Cursor  := crHourGlass;
  with ListView.Items do begin
    BeginUpdate;
    Clear;
    EndUpdate;
  end;
  //////////////////////////////////
  ListView.Items.BeginUpdate;
  try
    FInvAgeList.Sort(TListSortCompare(@ListSortCompare));
    for i:=0 to FInvAgeList.Count-1 do begin
      lcP  := FInvAgeList.Items[i];

      if not Set_QryCondition(lcp) then continue;
      Item := ListView.Items.Add;
      for j:=0 to FColumnCount-1 do Item.Subitems.Add('');
      Item.Data := lcP;
      MakeItemCaption(Item, iMode);
    end;
  finally
    ListView.Items.EndUpdate;
    ListView.Items.EndUpdate;
    if ListView.Items.Count > 0 then
    begin
      ListView.TopItem.Selected := True;
      ListView.Selected.Selected := true;
    end;
    Screen.Cursor := crDefault;
    stsBarCnt.Panels[0].Text := '符合條件的記錄有:'+ IntToStr(ListView.Items.Count)+' 條';
  end;
end;

function TfrmAccountAge.Set_QryCondition(lcP: PInvAgeInfo): Boolean;
var
  iMatAttr: Integer;
  WMtlCode: array[0..1] of string;
  WDate: array[0..1] of TDateTime;
begin
  Result := True;
  //////////////////////
  if chkStkLess0.Checked then begin
    if RoundTo(lcp^.curr_qty,-2)<=0.00 then
    begin
      result := false;
      exit;
    end;
  end;

  if trim(edtMatCode.Text)<>'' then
      if NOT(dm_Inventory.GetMaterialRID(trim(edtMatCode.Text))=lcp^.mat_rec_id) then
      begin
        result := false;
        exit;
      end;
end;

procedure TfrmAccountAge.MakeItemCaption(Item: TListItem; iMode: integer);
var lcP: PInvAgeInfo;
begin
  if Item = nil then Exit;
  if Item.Data = nil then Exit;
  lcP := Item.Data;

  Item.Caption      := dm_inventory.GetMaterialCode(lcP^.mat_rec_id);
  Item.SubItems[00] := dm_inventory.GetMaterialName(lcp^.mat_rec_id);
  Item.SubItems[01] := IntToStr(lcp^.guage_id);
  Item.SubItems[02] := dm_inventory.Get_GuageName(lcp^.mat_rec_id, lcp^.guage_id);
  Item.SubItems[03] := dm_inventory.GetUnitTypeName(lcP^.mat_rec_id);
  Item.SubItems[04] := FormatFloat('#,##0.00', lcP^.curr_qty);
  Item.SubItems[05] := FormatFloat('#,##0.00', lcP^.curr_amount);
  Item.SubItems[06] := FormatFloat('#,##0.00', lcP^.Month1);
  Item.SubItems[07] := FormatFloat('#,##0.00', lcP^.Month2);
  Item.SubItems[08] := FormatFloat('#,##0.00', lcP^.Month3);
  Item.SubItems[09] := FormatFloat('#,##0.00', lcP^.Month4);
  Item.SubItems[10] := FormatFloat('#,##0.00', lcP^.Month5);
  Item.SubItems[11] := FormatFloat('#,##0.00', lcP^.Month6);
  if (iMode=0) then begin
    Item.SubItems[12] := FormatFloat('#,##0.00', lcP^.Month7);
    Item.SubItems[13] := FormatFloat('#,##0.00', lcP^.Month8);
    Item.SubItems[14] := FormatFloat('#,##0.00', lcP^.Month9);
    Item.SubItems[15] := FormatFloat('#,##0.00', lcP^.Month10);
    Item.SubItems[16] := FormatFloat('#,##0.00', lcP^.Month11);
    Item.SubItems[17] := FormatFloat('#,##0.00', lcP^.Month12);
    Item.SubItems[18] := FormatFloat('#,##0.00', lcP^.Month13);
    Item.SubItems[19] := FormatFloat('#,##0.00', lcP^.Month14);
    Item.SubItems[20] := FormatFloat('#,##0.00', lcP^.Month15);
    Item.SubItems[21] := FormatFloat('#,##0.00', lcP^.Month16);
    Item.SubItems[22] := FormatFloat('#,##0.00', lcP^.Month17);
    Item.SubItems[23] := FormatFloat('#,##0.00', lcP^.Month18);
    Item.SubItems[24] := FormatFloat('#,##0.00', lcP^.Month19);
    Item.SubItems[25] := FormatFloat('#,##0.00', lcP^.Month20);
    Item.SubItems[26] := FormatFloat('#,##0.00', lcP^.Month21);
    Item.SubItems[27] := FormatFloat('#,##0.00', lcP^.Month22);
    Item.SubItems[28] := FormatFloat('#,##0.00', lcP^.Month23);
    Item.SubItems[29] := FormatFloat('#,##0.00', lcP^.Month24);
    Item.SubItems[30] := FormatFloat('#,##0.00', lcP^.Month_mass24);
  end;
end;

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

procedure TfrmAccountAge.ListViewColumnClick(Sender: TObject; Column: TListColumn);
  ////////////////////////////////////////
  function StrToFloatEx(S: string): Double;
  begin
    S := StringReplace(S, ',', '', [rfReplaceAll]);
    S := StringReplace(S, '\', '', [rfReplaceAll]);
    try    Result := StrToFloat(S);
    except Result := 0;
    end;
  end;
var WSB_Pos: Integer;
begin
  if ListView.Items.Count = 0 then Exit;
  WSB_Pos := GetScrollPos(ListView.Handle, SB_HORZ);
  ListSortKey := Column.Index + 1;
  with ListView do
    case ListSortKey of
      1: if Items[0].Caption < Items[Items.Count-1].Caption then
           ListSortKey := ListSortKey * -1;
      6..7: //--
         if StrToFloatEx(Items[0].SubItems[ListSortKey-2]) <
            StrToFloatEx(Items[Items.Count-1].SubItems[ListSortKey-2]) then
           ListSortKey := ListSortKey * -1;
    else if Items[0].SubItems[ListSortKey-2] <
            Items[Items.Count-1].SubItems[ListSortKey-2] then
           ListSortKey := ListSortKey * -1;
    end;
  FInvAgeList.Sort(TListSortCompare(@ListSortCompare));
  SetListView(rdogrpView.ItemIndex);
  ListView.Scroll(WSB_Pos, 0);
end;

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

procedure TfrmAccountAge.BitBtn1Click(Sender: TObject);
begin
  Screen.Cursor := crHourGlass;
  Read_InvAgeInfo;
  Screen.Cursor := crDefault;
end;

{*********************************************************************}
procedure TfrmAccountAge.PrintProc;
var
  V: OleVariant;
  RecCnt, ColCnt: Integer;
  i,k,L: Integer;
  S,AreaS,DD: string;
  ireport,isheet: integer;
begin
  try
    V := CreateOleObject('Excel.Application');
  except
    MessageDlg('Excel Application is Created Error!', mtError, [mbOk], 0);
    Exit;
  end;
  V.Visible := True;
  V.WorkBooks.Add;
  V.WorkBooks[1].Activate;

  V.WorkSheets[1].Activate;
  V.WorkSheets[1].Name := 'InventoryAcountYear';
  V.ActiveSheet.Cells[1, 2].Value := '  ' +'庫存帳齡分析表';

  RecCnt := 0;
  ColCnt := 0;
  ClipBoard.asText := CopyToClipBoard(RecCnt, ColCnt);

  //--
  V.ActiveSheet.PageSetUp.Orientation := xlPortrait;    //xlLandscape;(縱向)
  V.ActiveSheet.PageSetUp.PrintTitleRows := '$1:$3';        //--
  V.ActiveSheet.PageSetUp.RightHeader :=                    //--
                '&9 '+FormatDateTime('yyyy/mm/dd hh:nn', Now) + ' ' +
                 'Print Date';
  V.ActiveSheet.PageSetUp.CenterFooter := '&9&P/&N Page';  //--
  V.ActiveSheet.PageSetUp.Order := xlOverThenDown;          //--

  //page format
  V.ActiveSheet.PageSetUp.LeftMargin   := V.InchesToPoints(10/25.4); // 15mm
  V.ActiveSheet.PageSetUp.RightMargin  := V.InchesToPoints(10/25.4); // 15mm
  V.ActiveSheet.PageSetUp.TopMargin    := V.InchesToPoints(15/25.4); // 15mm
  V.ActiveSheet.PageSetUp.BottomMargin := V.InchesToPoints(15/25.4); // 15mm
  V.ActiveSheet.PageSetUp.HeaderMargin := V.InchesToPoints(10/25.4); // 10mm
  V.ActiveSheet.PageSetUp.FooterMargin := V.InchesToPoints(10/25.4); // 10mm

  //-- report title caption stytle
  V.ActiveSheet.Cells.Font.Size := 9;
  V.ActiveSheet.Cells[1, 1].HorizontalAlignment := xlLeft;
  V.ActiveSheet.Cells[1, 1].Font.Size := 16;
  V.ActiveSheet.Cells[1, 1].Font.Bold := True;
  V.ActiveSheet.Cells[1, 1].Font.Italic := True;
  V.ActiveSheet.Rows[3].HorizontalAlignment := xlCenter;
  V.ActiveSheet.Rows[3].Font.Size := 11;
  V.ActiveSheet.Rows[3].Font.Bold := True;

  ///--
  V.ActiveSheet.Columns[3].NumberFormatLocal := '@';    //--
  V.ActiveSheet.Columns[6].NumberFormatLocal := '@';      //--
  V.ActiveSheet.Columns[7].NumberFormatLocal := '@';      //--
  V.ActiveSheet.Columns[8].NumberFormatLocal := '@';      //--
  V.ActiveSheet.Columns[9].NumberFormatLocal := '@';      //--
  V.ActiveSheet.Columns[10].NumberFormatLocal := '@';      //--

  //--
  k := Ord('A')+(ColCnt-1);     //Chr(Ord('A')+(ColCnt-1))   A->65 Z->89

  //showMessage(inttostr(ord('A')));

  if K > 90 then begin
    L := (K-89);
    AreaS := 'A'+chr(64+L);
  end
  else begin
    AreaS := Chr(Ord('A')+(ColCnt-1));
  end;

  S := 'A3:'+AreaS+IntToStr(RecCnt+3);

  V.ActiveSheet.Range[S].Borders[xlDiagonalDown].LineStyle := xlNone;
  V.ActiveSheet.Range[S].Borders[xlDiagonalUp].LineStyle   := xlNone;
  V.ActiveSheet.Range[S].Borders[xlEdgeLeft].LineStyle  := xlContinuous;
  V.ActiveSheet.Range[S].Borders[xlEdgeLeft].Weight     := xlThin;
  V.ActiveSheet.Range[S].Borders[xlEdgeLeft].ColorIndex := xlAutomatic;
  V.ActiveSheet.Range[S].Borders[xlEdgeTop].LineStyle  := xlContinuous;
  V.ActiveSheet.Range[S].Borders[xlEdgeTop].Weight     := xlThin;
  V.ActiveSheet.Range[S].Borders[xlEdgeTop].ColorIndex := xlAutomatic;
  V.ActiveSheet.Range[S].Borders[xlEdgeBottom].LineStyle  := xlContinuous;
  V.ActiveSheet.Range[S].Borders[xlEdgeBottom].Weight     := xlThin;
  V.ActiveSheet.Range[S].Borders[xlEdgeBottom].ColorIndex := xlAutomatic;
  V.ActiveSheet.Range[S].Borders[xlEdgeRight].LineStyle  := xlContinuous;
  V.ActiveSheet.Range[S].Borders[xlEdgeRight].Weight     := xlThin;
  V.ActiveSheet.Range[S].Borders[xlEdgeRight].ColorIndex := xlAutomatic;
  V.ActiveSheet.Range[S].Borders[xlInsideVertical].LineStyle  := xlDot;
  V.ActiveSheet.Range[S].Borders[xlInsideVertical].Weight     := xlThin;
  V.ActiveSheet.Range[S].Borders[xlInsideVertical].ColorIndex := xlAutomatic;
  V.ActiveSheet.Range[S].Borders[xlInsideHorizontal].LineStyle  := xlDot;
  V.ActiveSheet.Range[S].Borders[xlInsideHorizontal].Weight     := xlThin;
  V.ActiveSheet.Range[S].Borders[xlInsideHorizontal].ColorIndex := xlAutomatic;

  S := 'A3:'+AreaS+'3';

  V.ActiveSheet.Range[S].Borders[xlDiagonalDown].LineStyle := xlNone;
  V.ActiveSheet.Range[S].Borders[xlDiagonalUp].LineStyle   := xlNone;
  V.ActiveSheet.Range[S].Borders[xlEdgeLeft].LineStyle  := xlContinuous;
  V.ActiveSheet.Range[S].Borders[xlEdgeLeft].Weight     := xlThin;
  V.ActiveSheet.Range[S].Borders[xlEdgeLeft].ColorIndex := xlAutomatic;
  V.ActiveSheet.Range[S].Borders[xlEdgeTop].LineStyle  := xlContinuous;
  V.ActiveSheet.Range[S].Borders[xlEdgeTop].Weight     := xlThin;
  V.ActiveSheet.Range[S].Borders[xlEdgeTop].ColorIndex := xlAutomatic;
  V.ActiveSheet.Range[S].Borders[xlEdgeBottom].LineStyle  := xlContinuous;
  V.ActiveSheet.Range[S].Borders[xlEdgeBottom].Weight     := xlThin;
  V.ActiveSheet.Range[S].Borders[xlEdgeBottom].ColorIndex := xlAutomatic;
  V.ActiveSheet.Range[S].Borders[xlEdgeRight].LineStyle  := xlContinuous;
  V.ActiveSheet.Range[S].Borders[xlEdgeRight].Weight     := xlThin;
  V.ActiveSheet.Range[S].Borders[xlEdgeRight].ColorIndex := xlAutomatic;

  //--
  V.ActiveSheet.Cells[3, 1].PasteSpecial;
  V.ActiveSheet.Cells[3, 1].Select;

  //--
  //DD := 'A:'+Chr(Ord('A')+(ColCnt-1));
  DD := 'A:'+AreaS;
  V.ActiveSheet.Columns[DD].EntireColumn.AutoFit;

  for i:=1 to ColCnt do
    V.ActiveSheet.Columns[i].ColumnWidth := V.ActiveSheet.Columns[i].ColumnWidth + 2;
  if frmMain.IniData.isExcelPrint then V.Print;
end;

///////////////////////////////////////////////////////////////////
function TfrmAccountAge.CopyToClipBoard(var RecCnt, ColCnt: Integer): string;
var i, j: Integer;
    Buf: string;
begin
  RecCnt := 0; ColCnt := 0;
  Buf := '';
  for i:=0 to FColumnCount-1 do begin
    Buf := Buf + ListView.Column[i].Caption + #9;
    Inc(ColCnt);
  end;
  Buf := Buf + #13#10;
  for i:=0 to ListView.Items.Count-1 do begin
    for j:=0 to FColumnCount-1 do
      if j = 0 then Buf := Buf + Trim(ListView.Items[i].Caption) + #9
      else Buf := Buf + Trim(ListView.Items[i].SubItems[j-1]) + #9;
    Buf := Buf + #13#10;
    Inc(RecCnt);
  end;
  Result := Buf;
end;

procedure TfrmAccountAge.btnCloseClick(Sender: TObject);
begin
  if ListView.Items.Count > 0 then PrintProc;
end;

end.

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久久99精品久久久久婷婷| av在线不卡观看免费观看| 日本久久电影网| 亚洲免费av高清| 成人丝袜18视频在线观看| 日韩欧美卡一卡二| 免费成人你懂的| 欧美一区二区日韩| 久久久久久9999| 国产精品1024久久| 欧美经典一区二区| 91麻豆蜜桃一区二区三区| 国产精品福利一区| 欧美一级黄色大片| 国产成人超碰人人澡人人澡| 中文字幕一区二区视频| 欧美喷潮久久久xxxxx| 美洲天堂一区二卡三卡四卡视频| 久久亚洲精品国产精品紫薇| 国产精品1024久久| 日韩精品一二三| 亚洲欧美另类久久久精品2019| 在线播放一区二区三区| 99久久精品国产毛片| 婷婷综合另类小说色区| 欧美国产精品劲爆| 欧美tickling网站挠脚心| 欧美羞羞免费网站| 99精品国产99久久久久久白柏| 日本在线播放一区二区三区| 亚洲精品大片www| 久久久久国产成人精品亚洲午夜| 色悠久久久久综合欧美99| 国产精品资源在线观看| 日韩高清中文字幕一区| 亚洲一区精品在线| 亚洲图片激情小说| 亚洲免费av网站| 亚洲一区二区三区在线播放| 亚洲精品老司机| 亚洲精品国产第一综合99久久| 亚洲欧美成人一区二区三区| 亚洲欧洲av在线| 久久久久久久久99精品| 欧美日韩中文另类| 欧美午夜精品一区二区三区| 成人精品视频.| 国产乱码字幕精品高清av| 久久99在线观看| 秋霞午夜鲁丝一区二区老狼| 午夜私人影院久久久久| 一区二区视频在线| 亚洲一区二区精品3399| 亚洲一线二线三线视频| 亚洲成人在线网站| 午夜一区二区三区视频| 秋霞成人午夜伦在线观看| 日韩精品视频网| 国产呦萝稀缺另类资源| 成人涩涩免费视频| 色哟哟国产精品免费观看| 欧美日韩一区久久| 日韩精品中文字幕一区二区三区 | 久久激情综合网| 国产黄人亚洲片| 成人激情电影免费在线观看| 在线观看一区二区视频| 日韩欧美国产精品一区| 国产精品福利一区二区三区| 丝袜国产日韩另类美女| 色乱码一区二区三区88| 欧美成人性战久久| 欧美情侣在线播放| 久久亚洲二区三区| 五月综合激情网| 91蜜桃免费观看视频| 91精品国产色综合久久ai换脸| 中文字幕日韩av资源站| 久久国产视频网| 欧美伦理影视网| 综合久久久久久| 国产a视频精品免费观看| 日韩欧美亚洲国产精品字幕久久久| 亚洲免费色视频| www.亚洲色图| 国产精品久久久久7777按摩| 久久精品国产精品亚洲综合| 欧洲一区二区三区在线| 国产精品拍天天在线| 国产精品亚洲成人| 久久色视频免费观看| 日韩av网站在线观看| 欧美丰满少妇xxxbbb| 亚洲永久免费视频| 欧美日韩国产一级二级| 亚洲精品视频一区二区| 99精品在线免费| 亚洲精品视频一区二区| 91福利视频在线| 日韩精品久久理论片| 91麻豆精品国产自产在线| 三级欧美韩日大片在线看| 91麻豆精品国产91久久久久| 日韩精品久久理论片| 精品国产一区二区精华| 精彩视频一区二区| 国产精品久久久99| 欧美性受极品xxxx喷水| 免费在线观看日韩欧美| 国产欧美精品日韩区二区麻豆天美| 91在线观看美女| 午夜视频在线观看一区二区三区| 精品欧美一区二区在线观看| 成人国产免费视频| 亚洲国产人成综合网站| 日韩写真欧美这视频| 99九九99九九九视频精品| 天堂成人国产精品一区| 久久久久国产免费免费| 欧美午夜影院一区| 国产高清精品在线| 亚洲成人动漫在线免费观看| 国产亚洲欧美日韩俺去了| 欧美性欧美巨大黑白大战| 国产成人精品影院| 理论片日本一区| 亚洲成人黄色小说| 最新热久久免费视频| 久久综合成人精品亚洲另类欧美| 精品视频1区2区| av不卡在线观看| 国产精品中文字幕欧美| 美腿丝袜亚洲一区| 午夜精品福利一区二区三区蜜桃| 中文字幕中文在线不卡住| 日韩一区二区免费视频| 日本高清不卡aⅴ免费网站| 国产1区2区3区精品美女| 免费日本视频一区| 捆绑调教美女网站视频一区| 亚洲综合小说图片| 亚洲黄色片在线观看| 欧美激情一区二区三区不卡| 久久新电视剧免费观看| 26uuu久久天堂性欧美| 日韩精品中文字幕一区二区三区| 91麻豆精品国产91久久久久久久久 | 精品国产乱码久久久久久浪潮| 91.com在线观看| 久久免费精品国产久精品久久久久| 日韩一区二区三区高清免费看看| 精品少妇一区二区三区日产乱码| 欧美一区二区网站| 欧美成人一区二区三区片免费| 久久综合久久鬼色| 国产精品美女久久久久久| 国产欧美久久久精品影院| 亚洲免费看黄网站| 亚洲第一电影网| 成人免费毛片a| 欧美色综合网站| 久久婷婷国产综合国色天香| 亚洲老妇xxxxxx| 麻豆免费精品视频| 95精品视频在线| 欧美一级午夜免费电影| 国产精品亲子伦对白| 日日夜夜一区二区| 91天堂素人约啪| 日韩欧美中文字幕精品| 国产精品视频麻豆| 午夜视频在线观看一区| 成人国产精品视频| 欧美xxxxxxxxx| 图片区日韩欧美亚洲| 成人h动漫精品| 欧美白人最猛性xxxxx69交| 亚洲人成在线观看一区二区| 久久精品国产亚洲高清剧情介绍 | 成人黄色小视频| 91精品国产综合久久福利| 亚洲一区av在线| 99视频一区二区三区| 久久免费国产精品| 极品美女销魂一区二区三区 | 91美女片黄在线| 欧美激情在线观看视频免费| 激情成人综合网| 欧美成人性战久久| 国产在线麻豆精品观看| 欧美一二三在线| 日韩综合在线视频| 日韩女优电影在线观看| 天堂va蜜桃一区二区三区漫画版| 欧美三级日韩在线| 亚洲综合色噜噜狠狠| 欧美日韩在线三级| 丝袜美腿亚洲色图| 久久综合一区二区| 国产.欧美.日韩|