⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 untrptmonth.pas

📁 是分布式粮库程序,是采用Delphi实现的
💻 PAS
字号:
unit UntRptMonth;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, DB, DBTables;

type
  TfrmRptMonth = class(TForm)
    Label1: TLabel;
    Label2: TLabel;
    cbxYear: TComboBox;
    cbxMonth: TComboBox;
    btnReport: TButton;
    btnExit: TButton;
    qryTmp: TQuery;
    procedure btnExitClick(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure FormShow(Sender: TObject);
    procedure btnReportClick(Sender: TObject);
  private
    { Private declarations }
    sgUnitName:string;
    wYear,wMonth,wDay:Word;
  public
    { Public declarations }
    XlsObject : OLEVariant;
  end;

var
  frmRptMonth: TfrmRptMonth;

implementation
uses uRpt4;

{$R *.dfm}

procedure TfrmRptMonth.btnExitClick(Sender: TObject);
begin
  close;
end;

procedure TfrmRptMonth.FormCreate(Sender: TObject);
begin
  sgUnitName:='城东分公司';
end;

procedure TfrmRptMonth.FormShow(Sender: TObject);
begin
   DecodeDate(now,wYear,wMonth,wDay);
   cbxYear.ItemIndex:=wYear-1990;
   cbxMonth.ItemIndex:=wMonth-1;
end;

procedure TfrmRptMonth.btnReportClick(Sender: TObject);
var
  i,j,iLen:integer;
  sCellText,sStr1,sStr2,sValue:string;
begin
  XLS_Create;
  CopyFile(PChar(GetCurrentDir+'\报表\杭州市粮食收储有限公司库存粮油收支月报表.xls'),PChar(GetCurrentDir+'\报表\Temp.xls'),False);
  XLS_Open(GetCurrentDir+'\报表\Temp.xls');
  try
    for j:=1 to 100 do
    begin
      //sStr1:=XLS_ReadCell(1,j);
      //sStr2:=XLS_readCell(2,j);
      for i:=1 to 50 do
      begin
        sCellText:=XLS_ReadCell(i,j);
        if copy(sCellText,1,1)='_' then
        begin
          if sCellText='_UnitName' then
            XLS_FillCell(i,j,sgUnitName,-1)
          else if  sCellText='_DateTime' then
            XLS_FillCell(i,j,datetimetostr(now),-1)
          else if sCellText='_YearMonth' then
            XLS_FillCell(i,j,inttostr(wYear)+'年'+inttostr(wMonth)+'月',-1);
        end
        else if copy(sCellText,1,1)='#' then
        begin
          iLen:=length(sCellText);
          sCellText:=copy(sCellText,2,iLen-1);
          qryTmp.Active := false;
          qryTmp.SQL.Clear;
          qryTmp.SQL.Add(sStr1+sCellText+sStr2);
          qryTmp.Active := true;
          svalue:=qryTmp.Fields[0].AsString;
          XLS_FillCell(i,j,svalue,0);
        end;

      end;
      SCELLTEXT:='';
    end;
  Except
     showmessage(inttostr(i)+'::::'+inttostr(j));
  end;
  XLS_Show;
end;

end.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -