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

📄 vfp7-9.htm

📁 visual foxpro教程
💻 HTM
📖 第 1 页 / 共 2 页
字号:
<html>

<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>第九节 设计一个报表</title>
<meta name="GENERATOR" content="Microsoft FrontPage 3.0">
<link rel="stylesheet" href="../../../cpcw.css"></head>

<body background="../../bg.gif">
<table width="85%" border="0" align="center">
  <tr bgcolor="#FFFFFF"> 
    <td> 
      <p align="center"><font color="#008000"><strong><font color="red">第九节 设计一个报表</font></strong></font></p>
      <p>&nbsp;&nbsp;&nbsp;   报表向导给我们提供了经营式、帐务式、简报式、带区式、随意式等多种报表布局样式。其中称为帐务式的报表布局是我们常用到的,它比较符合我们的习惯。它是一种用表格封闭的表格式报表。我们在报表设计器提供的功能来建立一个这种帐务式一对多分组报表。</p>
      <p>&nbsp;&nbsp;<font color="#008000"> <em><strong>新建一个空白报表布局。</strong></em></font></p>
      <p>&nbsp;&nbsp;&nbsp;   从“文件”菜单中选择“新建”,在“新建”窗口中选择“报表”,并单击“新建文件”按钮。出现空白报表设计器。</p>
      <p><em>&nbsp;&nbsp;&nbsp; <font color="#008000"><strong>为了更好地进行设计,先定制一下设计环境</strong>。</font></em></p>
      <p>&nbsp;&nbsp;&nbsp;   单击“显示”菜单中的“工具栏”,从中选择所需的工具栏。</p>
      <p>&nbsp;&nbsp;&nbsp;   单击“显示”菜单中的“网格线”。在报表设计器中出现网格线。</p>
      <p>&nbsp;&nbsp;&nbsp;   单击“格式”菜单中的“设置网格线刻度”,在“设置网格线刻度”对话框中选择“系统默认值”,设置水平、垂直刻度均为 
        1。这时发现网格变小了。</p>
      <p>&nbsp;&nbsp;&nbsp;   单击“显示”菜单中选择“显示位置”,在最下面的“状态条”中将显示鼠标的水平、垂直位置。</p>
      <p><strong><em>&nbsp;&nbsp; <font color="#008000">添加数据源、设置报表排序输出</font></em></strong></p>
      &nbsp;&nbsp;&nbsp;   激活数据环境窗口,把职工表和评估表添加进去。职工表和评估表在原数据库中已经建立一对多关系:评估表是父表,职工表是子表。如要对所选择的父表记录进行排序输出,事先必须在所要排序的表中对要排序的字段进行索引。在这里对父表中的“技术职务”字段进行索引排序。相应地,子表中也就应该对技术职务进行排序。教职工数据库已经对这些字段进行了索引,这里不必设置了。如要改成对其他字段的排序,则需在表设计器中为数据库表建立相应的索引。
      <p align="left">&nbsp;&nbsp;&nbsp;   打开数据环境设计器,右键分别单击数据环境设计器中的“表”窗口,从弹出的快捷菜单中单击“属性”命令。在随后出现的“属性”窗口中选择“全部”或“数据”选项卡,修改 
        &nbsp; Order 属性值为“技术职务”。如职表中属性更改如下图:</p>
      <p align="center"><img src="d7-9-1.jpg" width="240" height="340"
alt="d7-9-1.jpg (244854 字节)"></p>
      <p align="left">&nbsp;&nbsp;&nbsp;   由于这是个一对多报表,还需要修改数据环境设计器中的OneToMany 
        的属性值。在“属性”窗口上部的下拉框中选择Relationl,这时会发现 ChildAlias 的值为“职工表”,ParentAlias 的值为“评估表”。将 
        OneToMany 的值设置为 “.T.-真”。如下图:</p>
      <p align="center"><img src="d7-9-2.jpg" width="242" height="341"
alt="d7-9-2.jpg (248302 字节)"></p>
      <p align="left">&nbsp;&nbsp;&nbsp; <font color="#008000"><em><strong>使用“快速报表”快速设置报表布局</strong></em></font></p>
      <p align="left"><em><strong>&nbsp;&nbsp;&nbsp; </strong></em>  为了快速创建一个初步的报表布局,我们使用快速报表功能。在“报表设计器”窗口,选择“报表”菜单的“快速报表”命令。在“快速报表”对话框中,选择“行布局”,单击“字段”按钮。在“字段选择器”窗口中选择需要的字段,如我们只选择职工表中的编号、姓名、出生年月、工作时间、聘任时间等。</p>
      <p align="left">&nbsp;&nbsp;&nbsp;   单击“确定”按钮,回到“快速报表”对话框,再单击“确定”按钮。这样一个快速报表布局完成了。</p>
      <blockquote> 
        <p align="left">如下图:</p>
        <p align="center"><img src="d7-9-3.jpg" width="455" height="180"
  alt="d7-9-3.jpg (246294 字节)"></p>
      </blockquote>
      <p align="left"><em><strong>&nbsp;&nbsp;&nbsp; <font color="#008000">报表数据分组</font></strong></em></p>
      <p align="left"><em><strong>&nbsp;&nbsp;&nbsp; </strong></em>  从报表设计器快捷菜单或从“报表”菜单中选择“数据分组”命令。在“数据分组”对话框中的分组表达式文本框内输入或按其后三点式按钮从“表达式生成器”中生成表达式:职工表.技术职务,表示根据子表职工表的技术职务进行分组报表。还可根据需要在“数据分组”对话框中选择其他选项。</p>
      <p align="center"><img src="d7-9-4.jpg" width="359" height="366"
alt="d7-9-4.jpg (18410 字节)"></p>
      <p align="left"><font color="#008000"><strong><em>&nbsp;&nbsp; 添加组标头、组注脚带区控件---设置分组标题和分组总计</em></strong></font></p>
      <p align="left"><strong><em>&nbsp;&nbsp;&nbsp; </em></strong>  对报表数据进行分组后,报表设计器中增加了“组标头”和“组注脚”两个空白带区,我们需要加入报表控件。</p>
      <p align="left">&nbsp;&nbsp;&nbsp;   由于父表中的一条记录对应于子表中的多条记录,分组标题的域控件应该来源于父表字段。拖动“组标头1”带区分隔栏,空出一个区域。数据环境设计器中,将父表评估表的“技术职务”和“评估条件”字段分别拖动到“组标头1”带区适当位置。</p>
      <p align="left">&nbsp;&nbsp;&nbsp;   拖动“组注脚1”带区分隔栏,空出一个区域。用“报表控件”工具栏中的域控件按钮在“组注脚1”带区中加入一个说明性域控件。在“报表表达式”对话框中按“表达式”框后的三点按钮进入“表达式生成器”,在其中生成表达式如下图所示:</p>
      <p align="center"><img src="d7-9-8.jpg" width="459" height="412"
alt="d7-9-8.jpg (568614 字节)"></p>
      <p align="left">&nbsp;&nbsp;&nbsp;   在上面说明性域控件后再用域控件按钮加入一个计算平均值域控件。在“表达式”框中选择或输入表达式:职工表.考核成绩。单击“格式”框后的三点式按钮,设置为数值型、格式为 
        99.99 。并选择“溢出时伸展”选项。如下图:</p>
      <p align="center">&nbsp;&nbsp;&nbsp; <img src="d7-9-5.jpg" width="472" height="329"
alt="d7-9-5.jpg (465918 字节)"></p>
      <p align="left">&nbsp;&nbsp;&nbsp;   单击“报表表达式”中的“计算”:按钮进入“计算字段”对话框,在其中选择“平均值”选项。如下图:</p>
      <p align="center"><img src="d7-9-6.jpg" width="263" height="286"
alt="d7-9-6.jpg (226566 字节)"></p>
      <p align="left">&nbsp;&nbsp;&nbsp;&nbsp;   按“确定”按钮,返回“报表表达式”窗口。按“确定”按钮退出“报表表达式”窗口。这样,我们就在组注脚带区加入了“分组小计”域控件。 
        &nbsp;&nbsp;&nbsp; </p>
      <p align="left">&nbsp;&nbsp;&nbsp; <font color="#008000"><em><strong>设计报表标题、合计</strong></em></font></p>
      <p align="left"><em><strong>&nbsp;&nbsp; </strong></em>  选择“报表”菜单的中“标题/总结”选项,在“标题/总结”对话框中选择“标题带区”、“新页”、“总结带区”。如下图: 
        &nbsp;&nbsp;&nbsp; </p>
      <p align="center"><img src="d7-9-7.jpg" width="242" height="200"
alt="d7-9-7.jpg (145654 字节)"></p>
      <p align="left">&nbsp;&nbsp;&nbsp;   报表设计器中出现“标题”和“总结”空白带区。我们用标签控件在“标题”带区加入报表标题:技术职务人员考核一览表,并和第五节一样设置字体为“隶书”、“规则”、“二号”。</p>
      <p align="left">&nbsp;&nbsp;&nbsp;   添加统计总人数控件。用“报表控件”工具栏的“域控件”在“总结”带区添加一个域控件,在弹出“报表表达式”对话框中生成表达式:[参加考核总人数:]+STR(RECOUNT(),3,0) 
        。</p>
      <p align="left">&nbsp;&nbsp;&nbsp;   总平均考核成绩控件我们用报表变量来设计。 选择“报表”菜单中的“变量”选项,出现“报表变量”窗中,如下图:</p>
      <p align="center"><img src="d7-9-9.JPG" width="377" height="419"
alt="d7-9-9.JPG (474362 字节)"></p>
      <p align="left">&nbsp;&nbsp;&nbsp;   在“变量”框中输入变量名“AVERAGE”。单击“要存储的值”框后的三点按钮,在随后弹出的“表达式生成器”中选择“职工表.考核成绩”,并按“确定”按钮返回。选择“计算”框中的“平均值”选项。选择“报表输出后释放”选项。这样,我们就定义了变量AVERAGE的值是职工表考核成绩的平均值。</p>

⌨️ 快捷键说明

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