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

📄 uemployeecard.pas

📁 说明: 比较简单的人事档案管理程序,包含了人事档案的大部分功能,做人事档案的兄弟可以看看. 本程序类型:delphi7 + Access2000 桌面数据库 初始用户名/密码:admin
💻 PAS
字号:
unit UEmployeeCard;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, Grids, DBGridEh, PrnDbgeh, RpDefine, RpRave, RpBase, RpFiler,
  RpRender, RpRenderCanvas, RpRenderPreview, RpCon, RpConDS, StdCtrls,
  Buttons, RpSystem, RpRenderPrinter, Menus, RpRenderRTF, RpRenderHTML,
  RpRenderPDF;

type
  TForm_EmployeeCard = class(TForm)
    RvProject1:TRvProject;
    RvDataSetConnection1:TRvDataSetConnection;
    RvRenderPreview1:TRvRenderPreview;
    RvNDRWriter1:TRvNDRWriter;
    ScrollBox1:TScrollBox;
    BTNextPage:TBitBtn;
    BTPrvPage:TBitBtn;
    BTPinterSet:TBitBtn;
    BTPrinting:TBitBtn;
    NowPage:TEdit;
    LBPage:TLabel;
    RvRenderPrinter1:TRvRenderPrinter;
    BitBtn1:TBitBtn;
    BitBtn2:TBitBtn;
    BitBtn4:TBitBtn;
    PrinterSetupDialog1:TPrinterSetupDialog;
    BBOutToFile:TBitBtn;
    Label1:TLabel;
    PopupMenu1:TPopupMenu;
    N1:TMenuItem;
    N2:TMenuItem;
    N3:TMenuItem;
    N4:TMenuItem;
    N5:TMenuItem;
    N6:TMenuItem;
    N7:TMenuItem;
    N8:TMenuItem;
    N9:TMenuItem;
    N10:TMenuItem;
    N11:TMenuItem;
    HTML1:TMenuItem;
    PDF1:TMenuItem;
    RTF1:TMenuItem;
    SaveDlg:TSaveDialog;
    RvRenderPDF1:TRvRenderPDF;
    RvRenderHTML1:TRvRenderHTML;
    RvRenderRTF1:TRvRenderRTF;
    BitBtn3: TBitBtn;
    procedure FormShow(Sender:TObject);
    procedure BTNextPageClick(Sender:TObject);
    procedure BTPrvPageClick(Sender:TObject);
    procedure BitBtn1Click(Sender:TObject);
    procedure BitBtn2Click(Sender:TObject);
    procedure BitBtn3Click(Sender:TObject);
    procedure BTPrintingClick(Sender:TObject);
    procedure BitBtn4Click(Sender:TObject);
    procedure BTPinterSetClick(Sender:TObject);
    procedure N1Click(Sender:TObject);
    procedure N2Click(Sender:TObject);
    procedure N4Click(Sender:TObject);
    procedure N5Click(Sender:TObject);
    procedure N6Click(Sender:TObject);
    procedure HTML1Click(Sender:TObject);
    procedure PDF1Click(Sender:TObject);
    procedure RTF1Click(Sender:TObject);
    procedure BBOutToFileClick(Sender: TObject);
  private
    { Private declarations }
    NDRStream:TMemoryStream;
  public
    { Public declarations }
  end;

var
  Form_EmployeeCard:TForm_EmployeeCard;

implementation
uses Umain,UOutputFile;
{$R *.dfm}

procedure TForm_EmployeeCard.FormShow(Sender:TObject);
begin
  rvproject1.Engine := RvNDRWriter1;
  //设置RAVE文件的路径
  RvNDRWriter1.FileName := Form_Main.AppPath + 'data\demo.ndr';
  //建立内存流
  NDRStream := TMemoryStream.Create;
  //输出报表数据
  RvProject1.Execute;
  //将报表数据调入内存流中供预览
  NDRStream.LoadFromFile(Form_main.AppPath + 'data\demo.ndr');
  //预览相应的报表,使用的是相应的内存流。
  RvRenderPreview1.Render(NDRStream);
  rvrenderprinter1.NDRStream := NDRStream;
  // ShowButton();
  //直接跳转到当前指定的记录
  RvRenderPreview1.RenderPage(form_main.ADOQDBGrid.RecNo);
  NowPage.Text := inttostr(form_main.ADOQDBGrid.RecNo);
  LBPage.Caption := inttostr(form_main.ADOQDBGrid.RecNo) + '/' +
    inttostr(form_main.ADOQDBGrid.RecordCount);
end;

procedure TForm_EmployeeCard.BTNextPageClick(Sender:TObject);
begin
  RvRenderPreview1.NextPage;
  if strtoint(NowPage.Text) >= form_main.ADOQDBGrid.RecordCount then
    NowPage.Text := '1'
  else
    NowPage.Text := inttostr(strtoint(NowPage.Text) + 1);
end;

procedure TForm_EmployeeCard.BTPrvPageClick(Sender:TObject);
begin
  RvRenderPreview1.PrevPage;
  if strtoint(NowPage.Text) <= 1 then
    NowPage.Text := inttostr(form_main.ADOQDBGrid.RecordCount)
  else
    NowPage.Text := inttostr(strtoint(NowPage.Text) - 1);
end;

procedure TForm_EmployeeCard.BitBtn1Click(Sender:TObject);
begin
  RvRenderPreview1.ZoomIn;
end;

procedure TForm_EmployeeCard.BitBtn2Click(Sender:TObject);
begin
  RvRenderPreview1.ZoomOut;
end;

procedure TForm_EmployeeCard.BitBtn3Click(Sender:TObject);
begin
{
   RvRenderPreview1.ZoomPageWidthFactor:=1;
   RvRenderPreview1.ZoomPageFactor:=1;
   }
end;

procedure TForm_EmployeeCard.BTPrintingClick(Sender:TObject);
begin

  rvrenderprinter1.RenderPage(Form_Main.ADOQDBGrid.RecNo);
end;

procedure TForm_EmployeeCard.BitBtn4Click(Sender:TObject);
begin
  rvrenderprinter1.Render(NDRStream);
end;

procedure TForm_EmployeeCard.BTPinterSetClick(Sender:TObject);
begin
  PrinterSetupDialog1.Execute;
//  RvRenderPreview1.
end;

procedure TForm_EmployeeCard.N1Click(Sender:TObject);
begin
  BTPrvPageClick(sender);
end;

procedure TForm_EmployeeCard.N2Click(Sender:TObject);
begin
  BTNextPageClick(Sender);
end;

procedure TForm_EmployeeCard.N4Click(Sender:TObject);
begin
  BTPinterSetClick(Sender);
end;

procedure TForm_EmployeeCard.N5Click(Sender:TObject);
begin
  BTPrintingClick(Sender);
end;

procedure TForm_EmployeeCard.N6Click(Sender:TObject);
begin
  BitBtn4Click(Sender);
end;

procedure TForm_EmployeeCard.HTML1Click(Sender:TObject);
begin
  try
    saveDlg.InitialDir := Form_Main.AppPath;
    saveDlg.Filter := '*.HTML|*.html|*.HTML|*.html';
    Savedlg.DefaultExt := '.html';
    if (savedlg.Execute = true) then
    begin
      RvRenderHTML1.OutputFileName := savedlg.FileName;
      RvRenderHTML1.Render(NDRstream);
      showMessage('保存成功!');
    end;
  except // wrap up
    showMessage('保存失败!');
  end; // try/finally
end;

procedure TForm_EmployeeCard.PDF1Click(Sender:TObject);
begin
  try
    saveDlg.InitialDir := Form_Main.AppPath;
    saveDlg.Filter := '*.pdf|*.pdf';
    Savedlg.DefaultExt := '.pdf';
    if (savedlg.Execute = true) then
    begin
      RvRenderPDF1.OutputFileName := savedlg.FileName;
      RvRenderPDF1.Render(NDRstream);
      showMessage('保存成功!');
    end;
  except // wrap up
    showMessage('保存失败!');
  end; // try/finally
end;

procedure TForm_EmployeeCard.RTF1Click(Sender:TObject);
begin
  try
    saveDlg.InitialDir := Form_Main.AppPath;
    saveDlg.Filter := 'rtf文件|*.rtf';
    Savedlg.DefaultExt := '.rtf';
    if (savedlg.Execute = true) then
    begin
      RvRenderrtf1.OutputFileName := savedlg.FileName;
      RvRenderrtf1.Render(NDRstream);
      showMessage('保存成功!');
    end;
  except // wrap up
    showMessage('保存失败!');
  end; // try/finally
end;

procedure TForm_EmployeeCard.BBOutToFileClick(Sender: TObject);
var i:integer;
begin
Form_OutputFile:=TForm_OutputFile.Create(self);
Form_OutputFile.ShowModal;
case strtoint(Form_OutputFile.Edit1.Text) of
1: HTML1Click(Sender);
2: PDF1Click(sender);
3: RTF1Click(sender);
end;
end;

end.

⌨️ 快捷键说明

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