下列簡單巨集含有會在單一異動中執行的多個 HTML 區塊:
@dtw_static()
%define a = "0"
%define(transient) b = "0"
%define handle = ""
@dtw_rtvhandle(handle)
%html(report) {
@dtw_accept(handle)
a = $(a)<br>
b = $(b)<br>
@dtw_add(a, "2", a)
@dtw_add(b, "2", b)
<a href="/cgi-bin/db2www/$(handle)/qsys.lib/mylib.lib/macros.file/pcgi1.mbr/report2">
click here to continue</a><br>
<a href="/cgi-bin/db2www/$(handle)/qsys.lib/mylib.lib/macros.file/pcgi1.mbr/quit">
click here to quit</a><br>
%}
%html(report2) {
@dtw_accept(handle)
a = $(a)<br>
b = $(b)<br>
@dtw_add(a, "2", a)
@dtw_add(b, "2", b)
<a href="/cgi-bin/db2www/$(handle)/qsys.lib/mylib.lib/macros.file/pcgi1.mbr/report3">
Click here to continue</a><br>
<a href="/cgi-bin/db2www/$(handle)/qsys.lib/mylib.lib/macros.file/pcgi1.mbr/quit">
Click here to quit</a><br>
%}
%html(report3) {
@dtw_accept(handle)
a = $(a)<br>
b = $(b)<br>
@dtw_add(a, "2", a)
@dtw_add(b, "2", b)
<a href="/cgi-bin/db2www/$(handle)/qsys.lib/mylib.lib/macros.file/pcgi1.mbr/quit">
Click here to quit</a><br>
%}
%html(quit) {
@dtw_terminate()
a = $(a)<br>
b = $(b)<br>
done
%}
假定第一個呼叫是要呼叫 HTML 區塊 report,則 Net.Data 將:
在第一個頁面輸出傳送到瀏覽器之後,使用者可以選擇要繼續異動或退出。 如果他們選擇繼續,Web 伺服器將呼叫 URL:
/cgi-bin/db2www/$(handle)/qsys.lib/mylib.lib/macros.file/pcgi1.mbr/report2
Web 伺服器會將異動 handle 識別為 Net.Data 在 HTTP 表頭中設定的 handle。 它會呼叫 Net.Data 作為持續 CGI 程式,表示巨集呼叫是現行異動的一部份。
當呼叫 HTML 區塊 report2 時,Net.Data 將:
在第兩個頁面傳送到瀏覽器之後,使用者可以選擇要繼續異動或退出。 如果他們選擇退出,Web 伺服器將呼叫下列 URL:
/cgi-bin/db2www/$(handle)/qsys.lib/mylib.lib/macros.file/pcgi1.mbr/quit
Web 伺服器會將異動 handle 識別為 Net.Data 在 HTTP 表頭中設定的 handle, 且會呼叫 Net.Data 作為持續 CGI 程式,表示巨集呼叫是現行異動的一部份。
當呼叫 HTML 區塊 quit 時,Net.Data 將: