2020年2月18日 星期二

4gl triggers all column events between source and target ( before field, after field ...)

測試畫面有五個欄位,  FIELD01 到 FIELD05 ,  輸入的程式如下
    INPUT BY NAME
          g_aa.FIELD01, g_aa.FIELD02, g_aa.FIELD03, g_aa.FIELD04, g_aa.FIELD05
           WITHOUT DEFAULTS
        after field FIELD01
            display "after FIELD01"
        after field FIELD02
            display "after FIELD02"
        after field FIELD03
            display "after FIELD03"          
        after field FIELD04
            display "after FIELD04"
        after field FIELD05
            display "after FIELD05"
    end input
在其他程式的經驗中如果目前是在 FIELD01 上我用滑鼠直接點選FIELD05時. 只會觸發 FIELD01 的 after field (只以after field 來解說發生的狀況). 但是有些裝況下我希望能觸發FIELD01~FIELD04 的after field , 這時可設定參數.
 OPTIONS FIELD ORDER  { CONSTRAINED | UNCONSTRAINED | FORM }

 OPTIONS FIELD ORDER CONSTRAINED


    INPUT BY NAME....
....
....
END INPUT


如加上新的參數後(CONSTRAINED ) 當你的focus 由 FIELD01 直接到 FIELD03 時.. FIELD01, FIELD02 的after field 都會被觸發,

相關說明請看 genero 網站如下.
https://4js.com/online_documentation/fjs-fgl-3.00.05-manual-html/c_fgl_programs_012.html


另一個有關的設定是在PROFILE , 
Dialog.fieldOrder = {true|false}

https://4js.com/online_documentation/fjs-fgl-3.00.05-manual-html/c_fgl_prog_dialogs_fglprofile.html

我沒有時間把其他的東西測完. 之後有空再說