Net.Data 根據路徑架構陳述式的設定,來決定 Net.Data 巨集所使用之檔案和可執行程式的位置。路徑陳述式如下:
這些路徑陳述式識別 Net.Data 在嘗試尋找下列檔案時所搜尋的一個或多個目錄: 巨集、可執行檔、文字檔、以及併入檔。 您需要的路徑陳述式視巨集使用的 Net.Data 功能而定。
更新準則:
許多一般準則適用於路徑陳述式。例外狀況將會在每一路徑陳述式的說明中提到。
下列幾節說明每一個路徑陳述式的目的和語法, 並提供有效路徑陳述式的範例。
MACRO_PATH 架構陳述式識別 Net.Data 搜尋 Net.Data 巨集的目錄。 例如,設定下列 URL 是將要求具有路徑和檔案名稱為 /macro/sqlm.d2w 的 Net.Data 巨集:
http://server/cgi-bin/db2www/macro/sqlm.d2w/report
語法:
MACRO_PATH [=] path1;path2;...;pathn
等號 (=) 是可選用性的,由方括弧([)表示。
Net.Data 會將路徑 /macro/sqlm.d2w 附加到 MACRO_PATH 架構陳述式的路徑中 (從左到右), 直到 Net.Data 找到巨集或搜尋過所有路徑為止。 關於呼叫 Net.Data 巨集的資訊, 請參閱"呼叫 Net.Data"。
範例: 下列範例顯示在起始設定檔中的 MACRO PATH 陳述式以及呼叫 Net.Data 的相關鏈結。
Net.Data 起始設定檔:
MACRO_PATH /u/user1/macros;/usr/lpp/netdata/macros;
HTML 鏈結:
<A HREF="http://server/cgi-bin/db2www/query.d2w/input">Submit another query.</A>
如果在目錄 /u/user1/macros 中找到檔案 query.d2w, 則完整的路徑為 /u/user1/macros/query.d2w。
如果在 MACRO_PATH 陳述式中設定的目錄中找不到檔案,則 Net.Data 將在根 (/) 目錄中搜尋檔案。 例如,如果提出下列的 URL:
http://myserver/cgi-bin/db2www/myfile.txt/report
且在 MACRO_PATH 中設定的任何目錄中找不到檔案 myfile.txt,Net.Data 會嘗試在根 (/) 目錄中尋找檔案:
/myfile.txt
EXEC_PATH 架構陳述式會識別一個或多個目錄,Net.Data 將搜尋它 (它們) 來取得 EXEC 陳述式或可執行變數呼叫的外部程式。 一旦找到該程式,則會將外部程式的名稱附加到路徑設定中, 形成完整的檔名以便傳遞給語言環境準備執行。
語法:
EXEC_PATH [=] path1;path2;...;pathn
範例: 下列範例顯示在起始設定檔中的 EXEC PATH 陳述式, 以及巨集中呼叫外部程式的 EXEC 陳述式。
Net.Data 起始設定檔:
EXEC_PATH /qsys.lib/programs.lib;/qsys.lib/rexx.lib/rexxpgms.file;
Net.Data 巨集:
%FUNCTION(DTW_REXX) myFunction() {
%EXEC{ myFunction.mbr %}
%}
如果在 /qsys.lib/rexx.lib/rexxpgms.file 目錄中找到檔案 myFunction.mbr, 則程式的完整名稱為 /qsys.lib/rexx.lib/rexxpgms.file/myFunction.mbr。
如果在 EXEC_PATH 陳述式中設定的目錄中找不到檔案:
%EXEC{/qsys.lib/programs.lib/rpg1.pgm %}
Net.Data 將在 /qsys.lib/programs.lib 目錄中搜尋檔案 rpg1.pgm。
%EXEC { rpg1.pgm %}
Net.Data 將嘗試在現行工作目錄中尋找檔案 rpg1.pgm。
INCLUDE_PATH 架構陳述式定義 Net.Data 搜尋的一或多個目錄, 以便找出 Net.Data 巨集中 INCLUDE 陳述式所設定的檔案。 一旦找到該檔,Net.Data 會將此併入檔名稱附加在路徑規格中, 以產生完整的併入檔名稱。
語法:
INCLUDE_PATH [=] path1;path2;...;pathn
範例 1: 下列範例顯示起始設定檔中的 INCLUDE_PATH 陳述式, 以及設定併入檔的 INCLUDE 陳述式。
Net.Data 起始設定檔:
INCLUDE_PATH /u/user1/includes;/usr/lpp/netdata/includes;
Net.Data 巨集:
%INCLUDE "myInclude.txt"
如果在 /u/user1/includes 目錄中找到了檔案 myInclude.txt, 則併入檔的完整名稱為 /u/user1/includes/myInclude.txt。
範例 2:下列範例顯示 INCLUDE_PATH 陳述式以及具有次目錄名稱的 INCLUDE 檔。
Net.Data 起始設定檔:
INCLUDE_PATH /u/user1/includes;/usr/lpp/netdata/includes;
Net.Data 巨集:
%INCLUDE "OE/oeheader.inc"
將在目錄 /u/user1/includes/OE 與 /usr/lpp/netdata/includes/OE 中搜尋併入檔。 如果在 /usr/lpp/netdata/includes/OE 找到此檔案,則併入檔的完整名稱是 /usr/lpp/netdata/includes/OE/oeheader.inc。
如果在 INCLUDE_PATH 陳述式中設定的目錄中找不到檔案:
%INCLUDE "/u/user1/includes/oeheader.inc
Net.Data 將在 /u/user1/includes 目錄中搜尋檔案 oeheader.inc。
%INCLUDE "oeheader.inc"
Net.Data 將嘗試在現行工作目錄中尋找檔案 oeheader.inc。
FFI_PATH 架構陳述式定義 Net.Data 搜尋的一或多個目錄, 以便找出被純本文檔介面 (FFI) 函數參考到的純本文檔。
語法:
FFI_PATH [=] path1;path2;...;pathn
範例: 下列範例顯示在起始設定檔中的 FFI_PATH 陳述式。
Net.Data 起始設定檔:
FFI_PATH /u/user1/ffi;/usr/lpp/netdata/ffi;
當呼叫 FFI 語言環境時,Net.Data 會尋找 FFI_PATH 陳述式設定的路徑。
因為 FFI_PATH 陳述式是用來對不在路徑陳述式的目錄中的那些檔案提供安全保護, 所以對找不到的 FFI 檔案將有特別的規定。請參閱 Net.Data 參考手冊中 FFI 內建函數段落。
HTML_PATH 架構陳述式會設定一個目錄,讓 Net.Data 將大型物件 (LOB) 寫入其中。這個路徑陳述式只接受一個目錄路徑。
HTML_PATH 須指定不在 QSYS.LIB 檔案系統的 IFS 目錄。
語法:
HTML_PATH [=] path
範例: 下列範例顯示在起始設定檔中的 HTML PATH 陳述式。
Net.Data 起始設定檔:
HTML_PATH /db2/lobs
當查詢傳回一個 LOB 時, Net.Data 會將之儲存到 HTML_PATH 架構陳述式所設定的目錄中。
執行效能要訣: 由於 LOB 會快速消耗資源, 所以在使用 LOB 時,需考慮到系統限制問題。 詳細資訊,請參閱"使用大型物件"。
DTW_JAVA_CLASSPATH 架構陳述式可指定用來找出 Java 類別的路徑。 目錄是以冒號來分隔。
語法:
DTW_JAVA_CLASSPATH [=] path
範例:下列範例顯示在起始設定檔中的 DTW_JAVA_CLASSPATH 陳述式。
Net.Data 起始設定檔:
DTW_JAVA_CLASSPATH /directory1/directory2:/QIBM/ProdData/Java400