Net.Data 管理与程序设计指南,OS/2、Windows NT 以及 UNIX 版
使用 at (@) 字符后跟 FUNCTION 块名称或
MACRO_FUNCTION 块名称来从 Net.Data 宏中调用一个函数:
@function_name([ argument,... ])
- function_name
- 这是 FUNCTION 块的名称
或要调用的 MACRO_FUNCTION 块。除非是内部函数,否则必须在 Net.Data 宏中已定义函数。
- argument
- 这是定义的变量、字面量字符串、变量引用或函数调用的名称。函数调用上
的变元与 FUNCTION 块或 MACRO_FUNCTION 块上的参数相匹配,
在处理 FUNCTION 块或 MACRO_FUNCTION 块时,对每个参数指定
对应的变元值。变元与对应的参数必须具有相同数目和类型。
Net.Data 用以下顺序来处理与一个函数调用相关联的 FUNCTION 块
、MACRO_FUNCTION 块或内部函数。
- Net.Data 在 FUNCTION 块的可执行语句节中处理变量引用和函数调用。Net.Data 用
变量的当前值来代替所有变量引用,并用函数调用的返回值来执行和代替所有函数调用。
变量引用和函数调用是以被指定的顺序进行处理的。在该步骤中,Net.Data 不处理内部函数或 MACRO_FUNCTION 块。
- 本机语言处理器处理可执行语句节。
对于 FUNCTION 块,处理器对应于 FUNCTION 块上特定的语言环境,例如 SQL、REXX 或 Perl。 对于 MACRO_FUNCTION 块,Net.Data 起语言处理器的作用,并执行可执行语句。 内部函
数不具有可执行语句。Net.Data 用函数名来处理内部函数。
Net.Data 将函数的参数传送给本机语言处理器。
Net.Data 只将 IN 和 INOUT 参数的值传送给本机语言处理器,并只从本机语言处理器接受 OUT 和
INOUT 参数的返回值。
- Net.Data 根据来自语言处理器的返回消息和返回码来设置隐式的 RETURN_CODE 和
DTW_DEFAULT_MESSAGE 变量。Net.Data 不为 MACRO_FUNCTION 块设
置这些变量。
- 如果 FUNCTION 块包含一个 REPORT 块,或指
定要生成的缺省报表,Net.Data 将使用任何引用的输出参数的新值来处理报表节。
Net.Data 不为内部函数生成报表。
- 如果 FUNCTION 块包含一个局部 MESSAGE 块,Net.Data 将处理 MESSAGE 块。当以下条
件之一发生时,Net.Data 处理全局 MESSAGE 块:
- 已指定一个全局 MESSAGE 块,但是局部 MESSAGE 块未处理返回码。
- 调用了一个内部函数。
- Net.Data 用函数的返回值来代替函数调用。
对于 FUNCTION 块,此值是下面的某一个:
- RETURNS 参数值
- 用 RETURNS 关键字来代替 FUNCTION 块。
- 空字符串 ("")
- 在 RETURN_CODE 是零时,不带 RETURNS 关键字来代替 FUNCTION 块。
- RETURN_CODE
- 在 RETURN_CODE 非零时,不带 RETURNS 关键字来代替 FUNCTION 块。
对于 MACRO_FUNCTION 块,以处理可执行语句的结果代替函数调用
。
对于内部函数,值取决于内部函数的格式。
[ 页的顶部 | 上一页 | 下一页 | 目录 | 索引 ]