IBM Books

Net.Data 管理与程序设计指南,OS/2、Windows NT 以及 UNIX 版

循环结构

在 Net.Data 宏中使用 WHILE 块来执行循环。类似于 IF 块,WHILE 块也 提供测试一个或多个条件的能力,然后基于条件测试的结果执行一个语句块。 与 IF 不同的是, 基于条件测试的结果,语句块可被执行多次。

可以在 HTML 块、REPORT 块、ROW 块 MACRO_FUNCTION 块和 HTML IF 块中指定 WHILE 块,并可以 嵌套它们。Net.Data 参考中的语言结构章中显示了 WHILE 块的语法。

Net.Data 处理 WHILE 块的方式与处理 IF 块的方式精确相同,只在每此通过循环时重新估计 条件列表。 而且与任何条件循环结构相同,如果条件编码不正确的话,就有可能进入死循环。

例子:该例显示具有一个 WHILE 块的宏文件:

%DEFINE loopCounter = "1"


%HTML(build_table) {
%WHILE (loopCounter <= "100") {
%{ generate table tag and column headings %}
%IF (loopCounter == "1")
<TABLE BORDER>
<TR>
<TH>Item #
<TH>Description
%ENDIF

%{ generate individual rows %}
<TR>
<TD>$(loopCounter)
<TD>@getDescription(loopCounter)

%{ generate end table tag %}
%IF (loopCounter == "100")
%ENDIF

%{ increment loop counter %}
@dtw_add(loopCounter, "1", loopCounter)
%}
%}


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