IBM Books

Net.Data 语言环境参考


Perl 语言环境

Perl 语言环境能够解释在 Net.Data 宏的一个 FUNCTION 块中指定的在线 Perl 脚本, 或者它能处理存储在服务器上单独文件中的外部 Perl 脚本。对外部 Perl 脚本的调用在 FUNCTION 块 中是由一个 EXEC 语句来标识的,例如:

%EXEC{ perl-script-name [optional parameters] %}

Perl 语言环境不能直接传递或检索 Net.Data 变量,因此 Perl 脚本以这种方式来使用它们:

以下示例显示了 Net.Data 如何从一个宏文件传递变量。

%FUNCTION(DTW_PERL) today() RETURNS(result) {
  $date = `date`;
  chop $date;
  open(DTW, "> $ENV{DTWPIPE}") || die "Could not open: $!";
  print DTW "result = \"$date\"\n";
%}
%HTML(INPUT) {
  @today()
%}

如果 Perl 脚本位于一个名为 today.prl 的外部文件中,那么这个函数可以按下一个 例子来编写:

%FUNCTION(DTW_PERL) today() RETURNS(result) {
  %EXEC { today.prl %}
%}

Perl 语言环境程序通过 Net.Data 名称来访问表格参数的值。表格 T 的列标题 为 T_N_i,字段值为 T_V_i_j。表格 T 中的行数与列数分别是 T_ROWS 和 T_COLS。

REPORT 和 MESSAGE 块在所有 FUNCTION 部分都是允许的。它们由 Net.Data 来处理,而不是由 语言环境来处理。当然,Perl 程序可以将文本写入标准输出流,并直接处理输出的 HTML 格式。

权限技巧:请确保 Web 服务器对于此语言环境所引用的任何 外部的可执行文件都具有访问权限,包括 Perl 解释程序正确的版本号。请参阅 Net.Data 管理和程序设计指南的 配置一章中关于指定 Web 服务器对 Net.Data 文件的访问权限这一部分,以获取更多信息。


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