在應用程序中,系統提示信息為用戶提供參考信息,幫助用戶正確使用系統。但運行Oracle form時,屏幕下方信息行的提示信息卻是英文。當有兩個以上信息等待在信息行上顯示時,這些英文信息還會以窗口方式出現在屏幕中央。如何避免這種情況呢? 筆者在實踐中總結出解決此類問題的兩種方法,希望能給初學者提供一些參考。
一、壓縮系統信息,禁止系統信息顯示在信息行上
Oracle form將每個信息定義了重要級別,用於表明該信息是重要還是不重要。共有如下六個等級:
重要級別 意 義
0 所有信息
5 重申明顯的條件
10 操作人員產生了一個過程錯誤
15 操作人員試圖執行form未設計的動作
20 由於觸發子問題或某些其他突出問題不能繼續動作
25 可能引起form不正確完成任務的一個條件
〉25 開發人員不能壓縮的信息
開發人員可壓縮的最大信息級別為25,使用如下語句禁止系統信息顯示:
system.massege—level:=′25′;
禁止顯示信息級別不大於25的系統信息:
system.suppress—working:=′TRUE′;
禁止顯示系統處理一個動作時的工作信息
注意:這種方法只能屏蔽信息級別小於等於25的系統信息。
二、截獲系統信息,轉換為漢字提示信息
Oracle form中有兩個觸發子on—erro和on—message,分別在顯示系統錯誤信息和通知信息(告訴操作人員當前處理狀態或給出上下文相關的信息)時觸發,在觸發子中插入pl/sql代碼實現漢字提示信息替換英文提示信息。例如:在on—erro觸發子中插入以下編碼:
Begin
If erro—code=40202 and error—type=′FRM′
Then message(′字段值必須鍵入!′); bell;
End if;
End;
這樣,當有“form--40202”號錯誤時,系統信息行的提示信息會由原來的英文“field must be enterd”變為漢字“字段值必須鍵入!”,用戶不用再為不認識的提示犯愁了。