IBM Books

OS/400 版的 Net.Data 管理與程式設計手冊

迴路結構

使用 WHILE 區塊,於 Net.Data 巨集中執行迴路。如同 IF 區塊, WHILE 區塊提供測試數個條件, 然後基於條件測試的結果,來執行陳述式區塊的能力。 不像 IF 區塊,陳述式區塊可基於條件測試的結果,不限次數地執行。

您可以在 HTML 區塊、REPORT 區塊、ROW 區塊、 MACRO_FUNCTION 區塊及 IF 區塊內指定 WHILE 區塊, 並且可以使用巢狀。 有關 WHILE 區塊的語法, 請參閱 Net.Data 參考手冊中語言結構一章。

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>說明
%ENDIF

%{ 產生個別橫列 %}
<TR>
<TD>$(loopCounter)
<TD>@getDescription(loopCounter)

%{ 產生結束表格標籤 %}
%IF (loopCounter == "100")
%ENDIF

%{ 增加迴路計數 %}
@dtw_add(loopCounter, "1", loopCounter)
%}
%}


[ 頁面頂端 | 前一頁 | 下一頁 | 目錄 | 索引 ]