IBM Books

Net.Data 参考


Net.Data 宏文件语法

Net.Data 宏是一个普通文本文件,它由一系列 Net.Data 宏语言结构组成:

每个 语句由一个或多个语言结构组成,而语言结构由关键字、特殊字符、字符串、名称 和变量所组成。 以下图例描述了一个在语法上有效的 Net.Data 宏的总体结构。 请 参阅Net.Data 宏语言结构,以了解总体结构中每个元素的详细语法。

   .-------------------------.
   V                         |
>>----+-------------------+--+-----html 块---------------------->
      +-注解块------------+
      +-定义语句----------+
      +-定义块------------+
      +-函数块------------+
      +-宏条件块----------+
      +-macro_function 块-+
      +-包含语句----------+
      +-include_url 语句--+
      '-消息块------------'
 
      .---------------------------------------.
      V                                       |
>--------+-------------------+---+---------+--+----------------><
         +-注解块------------+   '-html 块-'
         +-定义语句----------+
         +-定义块------------+
         +-函数块------------+
         +-宏条件块----------+
         +-macro_function 块-+
         +-包含语句----------+
         +-include_url 语句--+
         '-消息块------------'
 

Net.Data 宏包括两部分:声明部分和 HTML 部分。 您可以以任何顺序多次使用 这些部分。

图 1显示宏文件的声明和 HTML 部分。

图 1. 宏文件结构


Figure dtwa1107 not displayed.

声明或者 HTML 部分中使用的变量和函数必须在变量引用或函数调用之前先定义。

图 2演示一个宏的各个部分。声明部分包含 DEFINE 和 FUNCTION 定义块。 HTML 块作为输入和输出块。

图 2. 宏文件模板格式

%{ **********************        定义块         ************************%}
%DEFINE{
   page_title="Net.Data macro Template"
%}
 
%{ **********************      函数定义块       ************************%}
%FUNCTION(DTW_REXX) rexx1 (IN input) returns(result)
    { %EXEC{ompsamp.cmd %}
%}
 
%FUNCTION(DTW_REXX) today () RETURNS(result)
  {
      result = date()
%}
 
%{ **********************    HTML 块:输入      ************************%}
%HTML(INPUT) {
<html>
<head>
<title>$(page_title)<title>
</head><body>
<h1>Input Form</h1>
Today is @today()
 
<FORM  METHOD="post" ACTION="output">
输入一些数据传送给一个 REXX 程序:
<INPUT NAME="input_data" TYPE="text" SIZE="30">
<p>
<INPUT TYPE="submit" VALUE="Enter">
 
< hr>
<p>[<a href="/">Home page]
</body></html>
%}
 
%{ **********************    HTML 块:输出      ************************%}
%HTML (OUTPUT) {
<html>
<head>
<title>$(page_title)</title>
</head><body>
<h1>Output Page</h1>
<p>@rexx1(input_data)
<p><hr>
<p>[<a href="/">Home page</a> |
<a href="input">Previous page</a>]
</body></html>
%}
 

Net.Data 宏语言是一种自由形式的语言,允许您灵活地编写自己的宏。除非特别说明,否则将忽略额外的空格字符。每 个 Net.Data 宏语言结构都将在以下章节中描述,还包括用于定义这些结构的其它成分。Net.Data 宏语言支持 DB2 WWW Connection 语言成分,以提供向后兼容 能力。尽管附录 A. DB2 WWW Connection中描述了这些语言成份,但仍建议使用 Net.Data 语言 结构。

这些例子描述了在宏文件中使用语言结构、变量、函数和其它成分的几种方法。可以从 Net.Data Web 页中下载示例和演示程序,获取更有扩展性的例子:


[ 页的顶部 | 上一页 | 下一页 | 目录 | 索引 ]