如果您选择使用平面文件(普通文本文件)作为数据源,则使用平面文件接口 (FFI) 及其 关联的函数来打开、关闭、读取、写入或删除 Web 服务器上的文件。文件语言支持根据 Web 客户的请求,通过浏览器使用 FFI 函数来读取或写入 Web 服务器 上的文件。 FFI 将文件看作记录文件,每个记录都等价于 Net.Data 宏表格变量中的一行, 而记录中的每个值则等价于 Net.Data 宏表格变量中的一个字段值。FFI 从文件中将记录读至一个 Net.Data 宏表格的行中,并将行从表格写至记录中。
参见 Net.Data 参考一书,以获取有关 FFI 内部函数 的描述和语法。
验证初始化文件中有以下配置语句,并且是在一行上:
ENVIRONMENT (DTW_FILE) DTWFILE ( OUT RETURN_CODE )
参见环境配置语句,以进一步了解 Net.Data 初始化文件和语言环境 ENVIRONMENT 语句。
与调用其它函数一样调用 FFI 函数。使用 DEFINE 语句来定义与您想要传递的参数类似的变量,例如:
%DEFINE{ myFile = "c:/private/myfile" myTable = %TABLE myWait = "1500" myRows = "2" %}
然后用一个函数调用语句来调用该函数;例如:
@DTWF_UPDATE(myFile, "Delimited", "|", myTable, myWait, myRows)
在此例中,Net.Data 将 ffi001.dat 文件的内容读入一个 Net.Data 表格并将此表格的 内容写入 tmp.dat 文件。最后,Net.Data 将删除 tmp.dat 文件。
%DEFINE{ mytable = %TABLE(ALL) myfile = "/usr/lpp/netdata/ffi//ffi001.dat" tmpfile = "/usr/lpp/netdata/ffi/tmp.dat" %} %HTML (report){ @DTWF_READ(myfile, "ASCIITEXT", " ", mytable) @DTW_TB_TABLE(mytable) @DTWF_WRITE(tmpfile, "ASCIITEXT", " ", mytable) @DTW_TB_TABLE(mytable) @DTWF_REMOVE(tmpfile) %}