Genero 語言從2.0版開始,提供2個與環境變數互動的function。
讀取環境變數fgl_getenv
Sample: CALL fgl_getenv("windir") RETURNING ls_string
依照上述的語法,我們即可將系統內的環境變數值讀進來使用,這些對於需要跨程式連結的需求上,有很大的幫助,因為可以不用再靠著寫暫存檔或變數檔的方法,達到不同的兩支程式﹝PID不同﹞互拋簡易資料的工作。從而避免了若『沒有讀寫權』之類的尷尬事件發生。
設定環境變數fgl_setenv
Sample: CALL fgl_setenv("windir","C:\windows")
程式開發人員,可以利用這樣的語法,『即時的』改變現在執行的環境變數值﹝立即套用生效﹞,當然也可搭配上面的fgl_getenv,作出兩支獨立程式互串執行時拋接簡單變數的功用。
原廠文件內特別提到,當使用fgl_setenv時要特別注意,不要去異動一些系統需要用的環境變數﹝應該是指fglserver之類的﹞,以免造成程式的異常中止情形發生。
搭配RUN指令使用
當在程式內使用CALL fgl_setenv設定,又於接下來的程式段使用RUN來執行下一支作業﹝不管有沒有WITHOUT WAITING﹞,系統都會把設定的參數傳入並套用。
註:RUN…WITHOUT WAITING和『沒有WITHOUT WAITING』都一樣是用folk新process的方式啟動,只是一個不會等,一個會等…