您可以使用 HTML 表来动态地定制 Net.Data 宏的执行。这些表允许用户提供输入值, 而这些值将影响宏的执行和 Net.Data 构建的 Web 页面的内容。
以下例子构建在HTML 链中监视器列表的例子上,它使得浏览器前的用户可以 使用一个简单的 HTML 表来选择要求显示信息的产品类型。
<H1>Hardware Query Form</H1> <HR> <FORM METHOD=POST ACTION="/cgi-bin/db2www/equiplst.d2w/report"> <P>What type of hardware do you want to see? <MENU> <LI><INPUT TYPE="RADIO" NAME="hdware" VALUE="MON" checked> Monitors <LI><INPUT TYPE="RADIO" NAME="hdware" VALUE="PNT"> Pointing devices <LI><INPUT TYPE="RADIO" NAME="hdware" VALUE="PRT"> Printers <LI><INPUT TYPE="RADIO" NAME="hdware" VALUE="SCN"> Scanners </MENU> <INPUT TYPE="SUBMIT" VALUE="Submit"> </FORM>
当浏览器前的用户作出了他们的选择并单击“提交”按钮之后,Web 服务器将处理 调用 Net.Data 的 FORM 标记的 ACTION 参数。然后,Net.Data 将执行 equiplst.d2w 宏 中的 Report 块:
%DEFINE DATABASE="MNS97" %HTML(input)%{ %} %FUNCTION(DTW_SQL) myQuery(){ SELECT MODNO, COST, DESCRIP FROM EQPTABLE WHERE TYPE='$(hdware)' %REPORT{ <H3>Here is the list you requested</H3> %ROW{ <HR> $(N1): $(V1), $(N2): $(V2) <P>$(N3): $(V3) %} %} %} %HTML (report){ @myQuery() %}
在上述例子中,SQL 语句中 TYPE=$(hdware) 的值是从 HTML 表的输入中获得的。
请参阅 Net.Data 参考以获取对于 ROW 块中所使用变量的详细描述。