set textmerge 命令

请参阅

指定是否对文本合并分隔符括起的字段、内存变量、数组元素、函数或表达式进行计算,并允许指定文本合并输出。

语法

SET TEXTMERGE
[ON | OFF]
[TO [FileName] [ADDITIVE]]
[WINDOW WindowName]
[SHOW | NOSHOW]

参数
ON

指定对文本合并分隔符括起的字段、内存变量、数组元素、函数或表达式进行计算。而且当它们放在 \ 或 \\ 之后或 TEXT 和 ENDTEXT 之间时将其输出。
下面的短程序示例说明了当 SET TEXTMERGE 设置为 ON 时如何计算变量 gcTodayDate 和函数 DATE( ) 和 TIME( ) 的值。之所以对变量 gcTodayDate、DATE( ) 和 TIME( ) 进行计算是因为它们用文本合并分隔符括了起来并且 SET TEXTMERGE 的设置为 ON。

CLEAR
SET TALK OFF
STORE 'Today is: ' TO gcTodayDate
SET TEXTMERGE ON
\<<gcTodayDate>>
\\<<DATE( )>>
\The time is:
\\ <<TIME( )>>


下面是上述程序在一月一日运行的结果:

Today is: 01/01/95
The time is: 10:55:19


OFF

(默认值)指定对文本合并分隔符括起的字段、内存变量、数组元素、函数或表达式同括起它们的文本合并分隔符一起不作变化地输出。请注意在 SET TEXTMERGE 设置为 OFF 时与前面示例的输出结果有何不同。

CLEAR
SET TALK OFF
STORE 'Today is: ' TO gcTodayDate
SET TEXTMERGE OFF
\<<gcTodayDate>>
\\<<DATE( )>>
\The time is:
\\ <<TIME( )>>


程序的输出结果为:

<<gcTodayDate>><<DATE( )>>
The time is: <<TIME( )>>


TO [FileName]

指定 \、\\ 和 TEXT ... ENDTEXT 产生的结果不输出到默认的 Visual FoxPro 主窗口中,而是直接输出到文本文件中。可以指定 FileName 把结果输出到某一文本文件中。如果指定的文件不存在,则创建新文件。如果指定的文件已经存在且 SET SAFETY 设置为 ON 时,可以选择改写已有文件。
以低级方式打开文本文件,文件句柄保存在 _TEXT 系统内存变量中。可以用不带参数的 SET TEXTMERGE TO 命令来关闭该文件。如果另一个文件的句柄先前已保存在 _TEXT 中,则关闭此文件。

ADDITIVE

指定 \、\\ 和 TEXT ... ENDTEXT 产生的输出追加在已有文件的后面。
有关将文本合并输出到文件的详细内容,请参阅 _TEXT。

WINDOW WindowName

指定 \、\\ 和 TEXT ... ENDTEXT 产生的结果不输出到默认的 Visual FoxPro 主窗口中,而是直接输出到用户自定义窗口中。WindowName 指定接收输出结果的窗口名。这一窗口必须在接收输出结果前用 DEFINE WINDOW 创建,可以不是活动窗口或可见窗口。

SHOW | NOSHOW

(默认值) SHOW 显示文本合并结果。
NOSHOW 不显示文本合并结果。
默认情况下, 由 \、\\ 和 TEXT ... ENDTEXT 产生的输出结果发送到 Visual FoxPro 主窗口或活动的用户自定义窗口。

说明

\、\\ 和 TEXT ... ENDTEXT 命令用表、内存变量、数组元素、以及函数和表达式的计算结果替换文本中的内容。如果字段、内存变量、数组元素、函数或表达式用文本合并分隔符(默认为 << 和 >>)括起来了,可以计算它们的值然后以文本形式替换其内容。这一文本合并功能可以用于产生信件、程序和创建程序的模板。
SET TEXTMERGE 确定用文本合并分隔符括起来的字段、内存变量、数组元素、函数或表达式的计算方式。它还可以直接将替换的结果输出到 Visual FoxPro 主窗口、用户自定义窗口或文件中。

附注
可以用备注字段嵌套被替换文本。如果备注字段中包含有当前文本合并分隔符括起来的字段名、内存变量、数组元素、函数或表达式,则计算它们的值,并随备注字段的内容一起输出。备注字段的名称也必须用文本合并分隔符括起来。