使用Query_Find可以啟用EBS的手電筒功能,步驟如下:
1、修改QUERY_FIND的BLOCK,CANVAS,WINDOW 名字,沒改也無妨
2、修改 NEW 按扭 的TRIGGER
pointer53 發表在 痞客邦 留言(0) 人氣(753)
在FORM開發中不管是FORM級還是BLOCK級或者ITEM級的TRIGGER,不要把代碼直接寫到TRIGGER中,要使用PROGRAM UNIT來創建相應的TRIGGER,舉例如下:
FORM級和BLOCK級可以按照下面格式在PROGRAM UNIT中創建PACKAGE:
PACKAGE BODY FORM_NAME/BLOCK_NAME IS
PROCEDURE EVENT_HANDLER( EVENT IN VARCHAR2) IS
BEGIN
IF EVENT = 'WHEN-NEW-FORM-INSTANCE' THEN
XXXXXXXX;
ELSIF EVENT = 'PRE-FORM' THEN
XXXXXXXX;
ELSE
APP_EXCEPTION.INVALID_ARGUMENT('EVENT_HANDLER', 'EVENT', EVENT);
END IF;
END EVENT_HANDLER;
END FORM_NAME/BLOCK_NAME;
ITEM級的可以按照下面的格式:
PACKAGE BODY BLOCK_NAME IS
PROCEDURE ITEM_NAME( EVENT IN VARCHAR2) IS
BEGIN
IF EVENT = 'WHEN-NEW-ITEM-INSTANCE' THEN
XXXXXXXX;
ELSE
APP_EXCEPTION.INVALID_ARGUMENT('ITEM_NAME', 'EVENT', EVENT);
END IF;
END ITEM_NAME;
END BLOCK_NAME;
pointer53 發表在 痞客邦 留言(0) 人氣(43)
DECLARE
ora_err NUMBER;
rg_id RECORDGROUP;
BEGIN
pointer53 發表在 痞客邦 留言(0) 人氣(103)
get_form_property(name,property); 返回指定的forms的屬性值;get_group_date_cell(group column id,row number); 指定一個記錄組單元的日期值,單元是一個行/列交叉點get_group_number_cell(group column id,row number); 指定一個記錄組單元的數字值,單元是一個行/列交叉點get_group_row_count(group name); 標識指定記錄組中的行號
get_group_selection(name,selection number); 標識指定記錄組中行的數字位置
get_group_selection_count(name); 指定自動標定為選中行的總數
get_item_property(name,property); 返回項屬性值
get_list_element_count(list name); 指定下接列表框內的值的總個數
get_list_element_label(list name,list_index); 標識選中的下拉列表框內項的標識名稱
get_list_element_value(list name,list_index); 標識選中的下拉列表框內項的實際值
get_lov_property(name,property); 標識不同的數值屬性設定列表
get_menu_item_property(menu name,property); 標識選中的菜單項的狀態。選項為:checked,enabled和labeld
get_message; 顯示當前的信息
get_parameter_list(list name); 為指定的列表定義參數列表ID
get_parameter_attr(listname,參數名,參數類型,數值); 標識被選參數列表中參數的類型的數值。參數類型為:
data_parameter:表示此值是組的我稱;
text_parameter:表明參數值是一個實際數據值
get_radio_button_property(item name,button name,property); 標識選中的圓形按鈕屬性.
get_record_property(record number,block name,property); 標識指定記錄的狀態。被支持的屬性為:status.不同的狀態值是:new,changed,query,insert
get_view_property(view name,property); 標識指定視圖屬性的值。屬性為:display_x_pos,display_y_pos,height,
visible,width,window_name,x_pos_on_canvas,y_pos_on_canvas
get_window_property(window name,property); 標識指定窗口屬性的值,屬性為:height,remove_on_exit,title,visible,
width,window_handle,window_size,window_state,x_pos;
go_block(name); 定位到指定的塊
go_item(name); 定位到指定的項
go_form(name); 定位到指定的form
go_record(記錄號); 定位到指定的記錄
help; 顯示當前項的提示信息
hide_menu 在字符模式平台上操作時,使當前菜單消失
hide_view(name) 使指定的視圖消失
hide_window(name); 使指定的窗口消失
host(系統命令,屏幕操作); 執行指定的操作系統命令
id_null(對像id); 若指定的對象是有效的則返回真,事則返回假
image_zoom(image_id,zoom類型,zoomfactor); 改變由zoomin/out產生的可視圖像大小,它的類型有:adjust_tofit,
selection_rectangle,zoom_in_factor,zoom_percent,zoom的係數是百分比.
insert_record 將當前記錄添回到數據庫中
issue_rollbaco(savepoint名); 執行rollback命令,savepoint name是指數據被提交的最後時間
issue_savepoint(savepoint名); 執行一個保存動作
item_enabled(菜單名,項名); 當菜單項有效時返回一個真值,不則值為假
last_record; 顯示記錄緩存中最後記錄
list_value(參數值) 顯示當前項值的列表。參數值是:on_restrict,它告訴form不要
使用自動查找和完整模式;與其相反的是restrict.
lock_record; 鎖定數據庫中的相應行.
logon(用戶名,口令顯示登錄屏幕錯誤信息) 使form連接到oracle數據庫上。在登錄屏幕參數設定上設定true會
使oracle在子程序連接數據庫失敗時顯示登錄屏幕.
logon_screen; 顯示數據庫登錄民幕
logout; 退出數據庫登錄;
main_menu; 顯示應用主菜單
menu_clear_field; 刪除當前項到光標右邊的字符
menu_next_field; 移動光標到輸入參數值對話框中下一項上.
menu_parameter; 顯示輸入參數值對話框中所有當前菜單參數的值
menu_previous_field; 移動光標到輸入參數值對話框中前一項上.
menu_redisplay; 在菜單刷新屏幕
menu_show_keys; 顯示功能鍵對話框
message(信息字符,返迴響應); 在信息欄上放置指定信息,它有兩個參數:acknowledge
顯示一個提醒操作者不可忽視的模塊;no_acknowledge
告訴oracle兩個信息被送出後不需要返迴響應;
message_code; 指定當前生成信息的個數
message_text; 指定當前生成信息的文字
message_type; 指定當前生成信息的類型
move_window(window name,x,y); 移動窗口
name_in(variable); 為指定變量定義數值
next_block; 移動到下一個塊
next_form; 移動到下一個form
next_item; 移動到下一個項
next_key; 移動到下一個關鍵字項,這個關鍵字必須是光標可移向的,有效的
next_menu_item; 移動到下一個菜單項
next_record; 移動到下一條記錄
next_set; 從數據庫獲取下一記錄集並將光標指向第一個記錄
paste_region; 粘貼剪切板內容到光標處
pause; 停止form進程直到用戶按下一個功能鍵
populate_group(組名); 執行記錄組查詢,返回一個數字表明成功(0),非(0)表失敗
populate_group_with_query(記錄組id或名稱查詢) 用查詢結果重置記錄組的一個記錄行
populate_list(list name,record group id); 用指定記錄組的數值來重置下拉列表
post; 從form傳送數據到數據庫,無須提交
previous_block; 移動光標到前一個塊
previous_form; 移動光標到前一個form
previous_item; 移動光標到前一個項
previous_menu; 移動光標到前一個菜單
previous_menu_item; 移動光標到前一個菜單項
previous_record; 移動光標到前一條記錄
print; 執行當前窗口的屏幕打印
query_parameter(parameter literal); 顯示包含指定參數值的query parameter對話框
read_image_file(文件名,文件類型,項名); 顯示forms圖像項所對應的文件
redisplay; 清除現存屏幕並重新啟動屏幕
replace_content_view(window name,view name); 在當前窗口中改變畫板_視圖的內容
replace_menu(菜單文件名,菜單類型,初始化菜單名, 用新菜單代替當前菜單
組名,use_file);
rest_group_selection(record group id或record group name); 取消組中行記錄的當前選定
resize_window(window id,寬,高); 改窗口大小到指定的設置
retrieve_list(list name,record group name); 保存當前列表到指定的記錄組中
run_product(oracle產品,文件,通訊style,executi on style,location, 啟動指定的oracle軟件產品並執行文件communications
list ,display); 設定為:synchronous告訴oracle在新軟件關閉後返回form控制
asynchronous告訴oracle立即返回forms控制,執行設定是:batch,
runtime.定位設定決定了產品要執行的文件的位置;list或name
變量決定了要傳給產品的參數列表。display變量指定了由
graphics生成的forms圖表的名稱.
scroll_down; 從記錄緩存中顯示下一個記錄集
scroll_up; 從主錄緩存中顯示前一個記錄集
scroll_view(view name,x,y); 修改x,y畫板坐標屬性設定來重設視圖的位置
select_all; 全選當前項中的文本
set_alert_property(alert name,alert_message_text,message); 修改顯示於報警提示中的文字信息。報警信息屬性是
alert_message_text(第二個參數);
set_application_property(property,setting); 改變當前應用的屬性。屬性為:cursor_style.其值為:
busy,crosshair,default,help,insertion
set_block_property(block name,property,value); 改變塊屬性
set_canvas_property(canvas name,property,value或[x,y]); 改變畫板屬性
set_form_property(form name,property,value); 改變form屬性
set_group_char_cell(組列名或id,行號,數值); 改變一個字符組單元的值
set_group_data_cell(組列名或id,行號,數值); 改變一個數據組單元的值
set_group_number_cell(組列名或id,行號,數值); 改變一個數字組單元的值
set_group_selection(記錄組名或id,行號); 選中或定位到指定的記錄組的一行
set_input_focus(菜單); 改變輸入點到當前的form菜單上
set_item_property(項名,屬性,值或[x,y]); 改變項屬性
set_lov_property(名稱,屬性,值或[x,y]); 改變值列表屬性
set_menu_item_property(菜單項id,屬性,值); 改變菜單項屬性
set_parameter_attr(列表或名稱,參數,參數類型,值); 改變參數列表中指定的參數的類型和數值.
set_record_property(記錄號,塊名,屬性,數值); 改變指定記錄的狀態屬性,屬性值為:changed_status,i
insert_status,new_status,query_status
set_relation_property(relation id工名稱,屬性,數值); 改變指定關係的屬性
set_view_property(view name,property ,vlalue[x,y]); 修改view的屬性
set_timer(計時器id,毫秒,反覆); 修改計時器的設定.
set_window_property(name,property,value[x,y]); 修改窗口的屬性
show_alert(name); 啟動指定的警報器並返回對應所選按鈕的數值
show_ackground_menu; 展示背景菜單
show_editor(編輯器名字,text in[x,y]optional,tex tount,result); 在指定位置啟動編輯器,將一串文字偉入/出編輯器
show_keys; 展現form功能鍵對話框
show_lov(name,[x,y]); 顯示指定的數值列表,這個內置子程序返回一個布爾值,它將被作為等式的一部分(比如:a=show_lov(lov_name)
show_menu; 激活並顯示當前菜單
show_view(name); 顯示指定的畫板或視圖
show_window(name,[x,y]); 在x,y坐標上顯示指定的窗口
synchronize; 僅在如下兩個條件滿足時允許oracle修改顯示:已經完成對新畫板或視圖的定位並form是處於項的級別之上
terminate; 停止向form或對話框輸入數據.
unset_group_selection(記錄組名,行號) 取消由set_group_selection所作的行的選定
up; 從記錄緩存中顯示前一個記錄
update_record; 使form通過form的修改進行數據庫更改
user_exit(表達式,錯誤文字); 啟用包含在表達式參數中的用戶退出程序
validate(參數); 使form執行基於參數範圍的有效的過程.參數為:
default_scope,form_scope,record_scope,item_scope
vbx.fire_event(itemname,事件,參數表list id或名稱) 為vbx控件進行事件的啟動
vbx.get_property(item name或名稱,屬性); 標識vbx控件屬性的值
vbx.get_value_property(name,屬性); 標識vbx控件的vbx控制屬性值
vbx.invoke_method(name,方法名,w,x,y,z); 執行包含在項的方法名中的中間項
vbx.set_value_property(name,屬性); 更改指定的vbx控件數值屬性
where_display; 更改where菜單光標移動選項的數值,值為on,off
write_image_file(圖像文件,文件類型,名稱) 從oracle forms的圖像項存放圖像到文件中
pointer53 發表在 痞客邦 留言(0) 人氣(1,404)
go_block('block_name');
fisrst_record;
loop
--執行所要的工作
exit when (:system.last_record='TRUE');
next_record;
end loop;
pointer53 發表在 痞客邦 留言(0) 人氣(14)
一、建立序列
CREATE SEQUENCE X_SEQ_MainTain_No
MINVALUE 1
MAXVALUE 99999999999
START WITH 1
INCREMENT BY 1
NOCYCLE
CACHE 20
ORDER ;
MINVALUE 1 --最小值
MAXVALUE 99999999999 --最大值
START WITH 1 --起始數值
INCREMENT BY 1 --每次增加1
NOCYCLE --一直累加不循環
CACHE 20 --緩衝快取
ORDER ; --不知道
二、呼叫序列
定義完成SEQUENCE,就可使用CURRVAL,NEXTVAL
pointer53 發表在 痞客邦 留言(0) 人氣(26)
Create_Record
|
建立一筆空資料錄
|
Delete_Record
|
刪除資料錄,不用Commit
|
Update_Record
|
更新資料錄
|
Up
|
按'上'
|
Down
|
按'下'
|
Next_Record
|
下一筆
|
Go_Record(n)
|
到....第N筆
|
First_Record
|
回到第一筆
|
Last_Record
|
到最後一筆
|
Duplicate_Record
|
複製上一筆的資料
|
Set_Record_Property
|
設定資料錄屬性
|
Get_Record_Property
|
取得資料錄屬性
|
|
|
|
|
pointer53 發表在 痞客邦 留言(0) 人氣(68)
Message_Name 上限30個字元
Message 上限1800個字元(unicode應該是600字元??)
FND_MESSAGE.CLEAR |
清除訊息堆疊 |
FND_MESSAGE.ERASE |
清除視窗的狀態列 |
FND_MESSAGE.GET |
取得在訊息堆疊中設置好的訊息 |
FND_MESSAGE.RETRIEVE |
取得一條資料庫中的等待資訊 |
FND_MESSAGE.SET_NAME |
從Dictionary中獲取訊息,並放入訊息堆疊中 FND_MESSAGE.SET_NAME(value IN varchar2,value IN varchar2); 範例:FND_MESSAGE.SET_NAME('FND','ACCT_IP_LOCK_ERR'); FND_MESSAGE.SHOW; 則會出現訊息提示"使用者在此 IP 地址多次登入失敗, 該使用者已被鎖定."(ZHT語系) 評語:找Name太麻煩了~自己寫比較快~ |
FND_MESSAGE.SET_TOKEN |
??? |
FND_MESSAGE.SET_STRING |
將字串放入訊息堆疊中,等待提取 範例:FND_MESSAGE.Set_String('等候提取'); |
★顯示 |
|
FND_MESSAGE.DEBUG |
顯示Icon為"備註"的對話框,不用Set_string設定,立即顯示字串,簡便快速~( ̄▽ ̄)~( ̄▽ ̄)~ FND_MESSAGE.DEBUG(value IN varchar2) 範例:FND_MESSAGE.DEBUG('資料新增完成'); |
FND_MESSAGE.SHOW |
顯示Icon為"備註"的對話框(Set_string設定內容) 範例:FND_MESSAGE.Set_string('小本本圖示'); FND_MESSAGE.Show; |
FND_MESSAGE.ERROR |
顯示Icon為"錯誤"的對話框(Set_string設定內容) 範例:FND_MESSAGE.Set_string('大紅鈴圖示'); FND_MESSAGE.Error; |
FND_MESSAGE.HINT |
訊息只顯示在狀態列,不彈出對話框(Set_string設定內容) 範例:FND_MESSAGE.Set_string('狀態列顯示'); FND_MESSAGE.Hint; |
★等候使用者回應 |
|
FND_MESSAGE.WARN |
顯示"是/否"對話框,Icon為"警告"(Set_string設定內容) 回傳Bealoon型別 範例:FND_MESSAGE.Set_string('是否核准?'); if FND_MESSAGE.WARN then --真 else --假 end if; |
FND_MESSAGE.QUESTION |
顯示"是/否/放棄"對話框,不要的用Null取代,Icon預設為"決定"(Set_string設定內容) 該function回傳值為Number型別,Icon的形式有:STOP,CAUTION, QUESTION, NOTE, FILE,default為QUESTION FND_MESSAGE.QUESTION(BUTTON1 in varchar2 default 'YES', BUTTON2 in varchar2 default 'NO', BUTTON3 in varchar2 default 'CANCEL', DEFAULT_BTN in number default 1, CANCEL_BTN in number default 3, ICON in varchar2 default 'question'); 範例:fnd_message.set_string('是否寫入資料?'); v_1:=fnd_message.question;
|
|
|
|
|
pointer53 發表在 痞客邦 留言(0) 人氣(2,212)
1.Table中建立5個Who Columns
CREATED_BY |
NUMBER |
CREATION_DATE |
DATE |
LAST_UPDATED_BY |
NUMBER |
LAST_UPDATE_DATE |
DATE |
LAST_UPDATE_LOGIN |
NUMBER |
pointer53 發表在 痞客邦 留言(0) 人氣(145)
(1)在parameter中加上
CHART_OF_ACCOUNTS_ID number
ORG_NAME char
ORG_CODE char
ORG_ID number 四個參數
(2)在form level 的trigger中的pre—form中加上FND_ORG.CHOOSE_ORG;
(選擇性加入)
(3)在form level 的trigger中的when—new—form—instance中加上
APP_WINDOW.SET_TITLE('ADJ_RECEIVE',:PARAMETER.ORG_CODE);
其中ADJ_RECEIVE是window 的名字,用於設置window的title
注意:必須在INV等RESP下才有作用,如GL、AP..等RESP則不會有作用。
pointer53 發表在 痞客邦 留言(0) 人氣(68)