【vfp开源代码栏目提醒】:网学会员为广大网友收集整理了,怎样设定报表的数据源 - 编程语言,希望对大家有所帮助!
怎样设定报表的数据源 我想编程控制报表的输出。
想知道怎么样在程序里设定报表的数据源。
由于数据源名称不固定,所以要这么做0report 前选定工作区就行了如: select
工作区 report 报表...怎样在程序里生成一张临时表 sqlexec 好像是用来连接其他数据源的 我想在程式里执行一条 select into 语句生成表 请问该怎么做。
SELECT 字段 FROM 原表 WHERE 条件 INTO CURSOR 临时表名 select 临时表名 打印... 这条语句我当然知道 可是怎么执行 在
vfp 里怎么执行 根据 MODIFY REPORT 或 CREATE REPORT 创建的报表定义文件显示或打印报表。
语法 REPORT FORM FileName1 ENVIRONMENT Scope FOR lExpression1 WHILE lExpression2 HEADING cHeadingText NOCONSOLE NOOPTIMIZE PLAIN RANGE nStartPage nEndPage PREVIEW IN WINDOW WindowName IN SCREEN NOWAIT TO PRINTER PROMPT TO FILE FileName2 ASCII NAME ObjectName SUMMARY 参数描述 FileName1 指定报表定义文件的名称。
显示“打开”对话框,从中可选择报表文件。
ENVIRONMENT 包括此子句是为了提供与 2.x 版本报表的向后兼容性。
要恢复与 VisualFoxPro报表相关的数据环境,应把数据环境 AutoOpenTables 属性设置为默认值“真”.T.。
若要确保在报表打印完后关闭报表环境,应把数据环境 AutoCloseTables 属性设置为默认值“真”.T.。
对于从早期 FoxPro 版本转换过来的报表,即便 AutoOpenTables 属性设置为“假”.F.,包含 ENVIRONMENT 也会打开并恢复数据环境中的所有表和关系。
当创建或修改报表时,可以用报表定义文件保存当前 Visual FoxPro 数据环境。
保存 Visual FoxPro 数据环境,实际上是在报表定义表中添加了一些附加的记录,保存下列信息:所有打开的表和索引文件、索引顺序以及表之间关系。
Scope 指定要包含在报表中的记录范围。
只有在指定范围内的记录才包括在报表中。
Scope 子句有:ALL、NEXT nRecords、RECORD nRecordNumber 和 REST。
有关 scope 子句的详细内容,请参阅帮助中的 Scope 子句和语言概述。
REPORT 的默认范围是所有记录ALL。
FOR lExpression1 只有使表达式 lExpression1 的计算值为“真”.T. 的记录,才打印其中的数据。
包括 FOR 可以筛选出不想打印的记录。
如果 lExpression1 是一个可优化表达式,Rushmore 将优化 REPORT FOR命令。
为获得最佳运行性能,应在 FOR 表达式中使用可优化表达式。
详细内容,请参阅稍后的 SET OPTIMIZE 命令与《Microsoft Visual FoxPro6.0 中文版程序员指南》第十五章“优化应用程序”中的“掌握 Rushmore 技术”。
WHILE lExpression2 指定一个逻辑表达式 lExpression2 作为打印数据的条件。
只要 lExpression2 条件计算为“真” .T. ,就打印记录中的数据,直至遇到使表达式不为“真”.T. 的记录为止。
HEADING cHeadingText 指定放在报表每页上的附加标题文本。
如果既包括 HEADING 又包括了 PLAIN,应把 PLAIN 子句放在前面。
NOCONSOLE 当打印报表或将报表传输到一个文件时,不在 Visual FoxPro 主窗口或用户自定义窗口中显示有关信息。
NOOPTIMIZE 若要关闭对 report 命令的 Rushmore 优化,应包括 NOOPTIMIZE 子句。
详细内容,请参阅稍后的 SET OPTIMIZE 命令与《Microsoft Visual FoxPro6.0 中文版程序员指南》第十五章“优化应用程序”中的“掌握 Rushmore 技术”。
PLAIN 指定只在报表开始位置出现的页标题。
RANGE nStartPage nEndPage 指定要打印的页码范围。
nStartPage 指定了要打印的第一页;nEndPage 指定了要打印的最后一页。
如果省略 nEndPage,则要打印的最后一页默认为 9999。
PREVIEW IN WINDOW WindowName IN SCREEN 以页面预览模式显示报表,而不把报表送到打印机中打印。
要打印报表,必须发出带 TOPRINTER 子句的 report 命令。
请注意:当命令中包括 PREVIEW 子句时,忽略系统变量。
使用可选的 WINDOW 或 IN WINDOW 子句中,您可以指定一个窗口WindowName,报表输出到这个窗口中。
该窗口可由 DEFINE WINDOW 命令定义。
如果包含 WINDOW 子句,则使用 WindowName 指定的窗口的特性例如标题、大小等等进行预览。
如果包含了 IN WINDOW 子句, 则在 WindowName 指定的窗口中预览报表。
包含可选的 IN SCREEN 子句,表明报表预览窗口位于 Visual FoxPro 主窗口中,并且不能移动到外面去。
可以在命令中包括可选的 NOWAIT 子句。
这时,Visual FoxPro 能够在运行程序时不等待关闭页面预览窗口就继续执行
程序。
也就是说,当页面窗口打开时,VisualFoxPro 继续运行程序。
在已发布的应用程序中,应确保可以得到“查看”菜单。
关掉打印预览工具栏时,如果没有“查看”菜单,将无法恢复“打印预览”工具栏。
TO PRINTER PROMPT 把报表输送到打印机打印。
在 Visual FoxPro 中, 命令中可以包括可选的 PROMPT 子句, 在打印开始前显示设置打印机的对话框。
可调整的打印设置项取决于当前安装的打印机驱动程序。
PROMPT 子句应紧跟在 TO PRINTER 子句之后。
TO FILE FileName2 ASCII 在 Visual FoxPro 中,指定报表要送往的文本文件。
将报表送往文本文件时,使用当前打印机驱动程序。
包含 TO FILE 子句创建的文件具有默认扩展名 .TXT。
在 Visual FoxPro 中,可以在命令中包括可选 ASCII 子句,用报表定义文件创建一个 ASCII 文本文件。
没有 ASCII 子句时,则按 PostScript 或其他打印机
代码格式将报表写到文本文件中。
报表定义中任何图像、线条、矩形以及圆角矩形都不出现在ASCII 文件中。
在 ASCII 文本文件的每一页中,列和行的数目由
系统变量 _ASCIICOLS 和_ASCIIROWS 的内容确定。
_ASCIICOLS 和 _ASCIIROWS 的默认值分别为80 列和 63 行。
这些值对应于标准的纵向页。
NAME ObjectName 给报表的数据环境指定一个对象变量名。
数据环境和数据环境中的对象都有一些属性和方法,例如 AddObject ,这些属性和方法可在运行时设置或调用。
对象变量则提供了存取这些属性和方法的途径。
如果不指定 NAME 子句,Visual FoxPro 则使用报表文件的名称作为默认对象变量名,此默认名也可以在事件
代码中引用。
SUMMARY 不打印细节行,只打印总计和分类总计信息。
说明 报表定义文件的默认扩展名是 .FRX。
如果报表定义文件不在默认目录中,文件名中必须包括文件的路径。
Top8 楼 gu1dai(异域苍穹.百年飞行)回复于 2004-12-08 15:00:05 得分 0 我是这样要求的 程序执行过程中生成一张临时表(这在
vfp 中的语句怎么写) 然后 sele 这张表 然后 report 我问的是
vfp 程序里怎么执行 sql 语句 比如程式如下 skpthisform.text1.value use school lsqlselect into tmp_school from school 在这里这个
sql 语句怎么执行 怎么都答得牛头不对马嘴阿 还是在
vfp 中直接执行不了 sql 语句 不可能,
vfp 肯定能直接执行 sql 语句,肯定不是这样的。
VFP 自带表操作功能SQL 用
VFP 语法直接写如: select into cursor tmp_school from school 之后: select tmp_school report ....