oracle form執行后左上角沒出現oracle標記,oracle form學習筆記

新增form步驟

打開模板TEMPLATE,將其改成自己所要的名稱,刪除Data Blacks中的BLOCKNAME,DETAILBLOCK,刪除Canvases中的BLOCKNAME,刪除Windows中的BLOCKNAME,新增自己的Windows,Canvases,DateBlacks,在form級別的PRE-FORM中將Blockname改成自己新增的window,若區分ORG,則將FND_ORG.CHOOSE_ORG;加入BLOCK的上一行,在Program_unit中打開APP_CUSTOM,修改其中的為自己的window,在triggers的when_new_item_instance中加入app_window.set_title('',:parameter.org_code),將org加入form的title.

1.在Form的title上加上Org_code

在Form級的WHEN-NEW-FORM-INSTANCE這個trigger中加入app_window.set_title('QUERY_FIND',:parameter.org_code);即可。

2.查看彈性欄位數據來源的路徑:system administrator-->application-->flexfield-->descriptive-->segment

3.初始化view

begin

dbms_application_info.set_client_info(188);

end;

對需要user_id才能訪問的view,需要先初始化一個合法的user_id進去

begin

fnd_global.apps_initialize(26872,56536,401);

end;

4.常用代碼

fnd_message.debug('show message'); --show出的提示窗口

raise form_trigger_failure;? --配合show message使用,中斷Form的執行

在Form open/close的時候對界面的設定

例:在close_window下寫入,來控制多window的Form在關閉子窗口時切回到那個block上去

if (wnd = 'QUERY_FIND') then???????? --當query_find這個window關閉的時候

app_window.close_first_window;???? --關閉第一個window,即為關閉這個window

elsif (wnd = 'APPROVER_UPDATE') then? --當approve_update這個window關閉時

go_block('QUERY_FIND');???????????? --go_block到query_find這個block上去

end if;

在open_window下寫入以下代碼,來控制新window打開的方式

if (wnd = 'UPDATE_USER') then?? --當window? UPDATE_USER被打開時

APP_WINDOW.SET_WINDOW_POSITION('UPDATE_USER', 'CASCADE', 'APPROVER_UPDATE'); --設定UPDATE_USER這個window在APPROVER_UPDATE這個window的左上角稍偏下點,具體詳見下面的介紹

SET_WINDOW_PROPERTY('UPDATE_USER', VISIBLE, PROPERTY_TRUE);

GO_BLOCK('UPDATE_USER');?? --指定要顯示的block

elsif (wnd = 'ACT') then

APP_WINDOW.SET_WINDOW_POSITION('ACT', 'CASCADE', 'APPROVER_UPDATE');

SET_WINDOW_PROPERTY('ACT', VISIBLE, PROPERTY_TRUE);

GO_BLOCK('ACT');

end if;

app_window.set_window_position詳解

procedure APP_WINDOW.SET_WINDOW_POSITION(

child_window varchar2,

style varchar2,

parent_window varchar2 default NULL);

說明:說明子窗口的顯示位置

參數:child_window? 指定位置的子窗體名稱

style???????? 子窗口的定位類型

parent_window 子窗口的上階窗口名稱

style:CASCADE????? 多個窗口從左上向右下排列

RIGHT,BELOW? 子窗口在父窗口的右邊或者下方,且父窗口不會覆蓋子窗口

OVERLAP????? 子窗口和父窗口重疊,對齊父窗口左邊,但向下位移0.3

CENTER?????? 子窗口在父窗口的中間顯示

FIRST_WINDOW 顯示在toolbar的下方,通常是主窗口

處理查詢時候,如果查詢界面欄位不下條件,就表示這個欄位為空值

方法:在顯示記錄的block下的KEY-EXEQRY這個trigger下做判斷,然后將最終的where條件賦值給這個block的default_where里面去。代碼如下

declare

v_default_where varchar2(400);? --定義變量用來存放這個block的初始where條件

V_WHERE VARCHAR2(2000);???????? --定義變量用來存放新的where條件

begin

v_default_where:=get_block_property(:SYSTEM.CURSOR_BLOCK,DEFAULT_WHERE);--獲取此block初始的where條件

V_WHERE:=v_default_where;?? --將初始的where條件賦值給V_WHERE這個變量中

if v_default_where is null then?? --當初始條件為空時,并條件的時候不需要加'where','and'之類

if :QUERY_FIND.EMP_CLASS_CODE is null then???? --如果查詢界面的那個欄位為空

V_WHERE:=V_WHERE || ' EMP_CLASS_CODE is null';? --將查詢條件并上此欄位is null

else

V_WHERE:=V_WHERE || ' EMP_CLASS_CODE='||:QUERY_FIND.EMP_CLASS_CODE;--查詢界面的欄位有值就用欄位等于的sql查詢語句

end if;

else?????? --當初始條件不為空,并查詢條件時需要加'and'

if :QUERY_FIND.EMP_CLASS_CODE is null then

V_WHERE:=V_WHERE || ' and EMP_CLASS_CODE is null';

else

V_WHERE:=V_WHERE || ' and EMP_CLASS_CODE='||:QUERY_FIND.EMP_CLASS_CODE;

end if;

end if;

set_block_property(:SYSTEM.CURSOR_BLOCK,DEFAULT_WHERE,V_WHERE);?--將新的查詢條件賦值給這個block的default_where進行查詢

clear_record; /*清空,否則Form下次查詢的時候會把前一次的條件帶入*/

EXECUTE_QUERY;? --執行查詢命令

set_block_property(:SYSTEM.CURSOR_BLOCK,DEFAULT_WHERE,v_default_where);? --將原默認的default_where值重新恢復回去

end;

取消lov的驗證

set_record_property(:system.trigger_record,:system.trigger_block, STATUS,QUERY_STATUS);

常用于界面上的欄位值來源于select ....into...而此欄位又有綁定lov的情況下,防止以查詢方式進入界面,沒做任何操作就需要保存;或者界面上欄位在Table中只記錄id,用name查找時,直接用select name into 欄位。

設置欄位屬性值

app_item_property.set_property('ACT.NEW_ACT',Required,PROPERTY_TRUE);

ACT.NEW_ACT?? block的欄位

Required????? 屬性名稱

PROPERTY_TRUE 屬性值

調用block的trigger

APP_RECORD.FOR_ALL_RECORDS('ACT_LIST','SELECT_COUNT');

ACT_LIST?????? block名稱

SELECT_COUNT?? trigger名稱

5.當一個window上有多個canvas的時候,往往會造成某個canvas不顯示,解決此方法可用

show_view('canvas')命令,其中canvas為需要顯示的canvas名稱。

注意:當使用show_view來顯示canvas時,焦點會回到之前的canvas上,這樣在show? canvas_stacked的時候就不會有問題,但在show新打開的window的時候就會造成要顯示的window閃一下就跑到之前的window的后面去,解決此問題可以調用

app_custom.open_window('ACT_LIST'); 來show你要的window,其中ACT_LIST為block名稱。

6.彈出yes or no的詢問對話框

FND_MESSAGE.SET_STRING('此核流程中已有核人T,是否⑵h除再}u?');

v_ques_no := FND_MESSAGE.QUESTION('YES','NO',NULL);

if v_ques_no=1 then

del_lines(p_head_id);

add_lines(p_head_id,p_organization_id);

else

null;

end if;

7.單擊按鈕使得下一個要彈出的界面值清空

go_block('');

clear_block(no_validate);

8.FND_STANDARD.SET_WHO;? 插入建立者,建立日期,最后更新者,最后更新日前,最后登陸人等信息

9.清空block中資料

app_find.clear;清除當前block的值,不可用go_block('');的方式清除其他的block

app_find.clear_detail('');清除指定block的值

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/533186.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/533186.shtml
英文地址,請注明出處:http://en.pswp.cn/news/533186.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

linux 建oracle分區表,Oracle 10g 11g分區表創建舉例

1.3. 創建其他類型分區表1.3.1. 用多列分區鍵創建范圍分區表SQL> create table aning_mutilcol_range2 (aning_id number,3 aning_name varchar2(100),4 aning_year number,5 aning_month number,6 aning_day number,7 aning_amount number8 )9 partition by range (aning_y…

php carbon 連續日期,日期及時間處理包 Carbon 在 Laravel 中的簡單使用

在編寫 PHP 應用時經常需要處理日期和時間,這篇文章帶你了解一下 Carbon – 繼承自 PHP DateTime 類的 API 擴展,它使得處理日期和時間更加簡單。Laravel 中默認使用的時間處理類就是 Carbon。namespace Carbon;class Carbon extends \DateTime{// code …

chmod g s oracle,chmod

chmod(1)名稱chmod - 更改文件的權限模式用法概要chmod [-fR] absolute-mode file...chmod [-fR] symbolic-mode-list file...chmod [-fR] acl_operation file...chmod [-fR] [- named_attribute]...attribute_specification_list file...描述chmod 實用程序可更改或分配文件的…

linux lzo 壓縮文件,Linux常用壓縮和解壓命令

.tar 解包 tar xvf filename.tar.tar 打包 tar cvf filename.tar dirname.gz 解壓1 gunzip filename.gz.gz 解壓2 gzip -d filename.gz.gz 壓縮 gzip filename.tar.gz 和 .tgz 解壓 tar zxvf filename.tar.gz.tar.gz 和 .tgz 壓縮 tar zcvf filename.tar.gz dirname.bz2 解壓1 …

linux進程cpu時間片,能講一下在Linux系統中時間片是怎么分配的還有優先級的具體算法是...

該樓層疑似違規已被系統折疊 隱藏此樓查看此樓圖 1 RT-Linux結構RT -Linux的關鍵技術是通過軟件來模擬硬件的中斷控制器。當Linux系統要封鎖CPU的中斷時時,RT-Linux中的實時子系統會截取到這個請求,把它記錄下來,而實際上并不真正封鎖硬件中斷…

linux中進行遠程服務器連機可以采用telnet,端口號為,使用telnet測試指定端口的連通性...

原標題:使用telnet測試指定端口的連通性telnet 是一個閹割版的 ssh ,它數據不加密,數據容易被盜竊,也容易受中間人攻擊,所以默認情況下 telnet 端口是必須要被關閉的。telnet為用戶提供了在本地計算機上完成遠程主機工…

linux xd命令,看Linux文件的內容:用cat,less,more,head,tail,nl,od,xxd,gv,xdvi命令

使用命令在Linux系統中查看文件的內容是Linux管理員的基本技能之一,在Linux中,有許多應用程序以不同的方式顯示文件內容。您可以使用cat、less、more、head、tail、nl、od、xxd、gv、xdvi命令來查看文本文件或任何其他文件。為了對此進行測試&#xff0c…

linux遠程拷貝免手動輸入密碼,scp遠程拷貝避免輸入密碼

使用scp遠程拷貝文件到指定服務器上,在客戶端生成密鑰放在需要驗證的服務器上,這樣再次連接后直接登陸,避免輸入密碼。設定場景我們需要將tomcat服務器(client1)192.168.30.20 上的catalina.out日志文件,每天使用指定用戶拷貝到日…

玩轉linux文件描述符和重定向,玩轉Linux文件描述符和重定向

本文介紹linux中文件描述符與重定向的相關知識,文件描述符是與文件輸入、輸出相關聯的整數,它們用來跟蹤已打開的文件。有需要的朋友參考下。原文出處:linux下的文件描述符是與文件輸入、輸出相關聯的整數。它們用來跟蹤已打開的文件。最常見…

linux哪個指令可以設定使用者的密碼,linux期末考試練習題 2

一、單項選擇題1、下面不是對Linux操作系統特點描述的是()A、良好的可移植性B、單用戶C、多用戶D、設備獨立性2、查看創建目錄命令mkdir的幫助文檔可以使用()A、mkdir -hB、man mkdirC、help mkdirD、info mkdir3、用標準的輸出重定向(>)像”>file01”能使文件file01的數…

linux腳本格式模板,Linux Shell 常見的命令行格式簡明總結

#在后臺執行 cmd 指令cmd &#命令序列. 在同一行執行多個命令cmd1 ; cmd2#在當前 shell 中以一組的形式執行多個命令{ cmd1 ; cmd2 ; }#在子 shell 中以一組的形式執行多個命令(cmd1 ; cmd2)#管道. 以 cmd1 的執行輸出作為 cmd2 的輸入cmd1 | cmd2#命令替換. 以 cmd2 的執行…

linux怎么用命令打開wine,Linux系統運維:10分鐘教你如何使用Wine在Linux下玩魔獸世界...

本文主要向大家介紹了Linux系統運維的如何使用Wine在Linux下玩魔獸世界,通過具體的步驟向大家展現,希望對大家學習Linux系統運維有所幫助。目標:在 Linux 中運行魔獸世界發行版:適用于幾乎所有的 Linux 發行版。要求:具…

linux中如何查看某個端口是否被占用,LINUX中如何查看某個端口是否被占用

之前查詢端口是否被占用一直搞不明白,問了好多人,終于搞懂了,現在總結下:1.netstat -anp |grep 端口號如下,我以3306為例,netstat -anp |grep 3306(此處備注下,我是以普通用戶操作&#…

linux實現自己的write函數,Linux 內核源碼閱讀 - write 系統調用的實現

最近在看write系統調用的實現,雖然還有一下細節不是很清楚,但是大致的實現機理還是有一定的理解了。總結如下:這里假設最普通的情況,不考慮Direct IO 的情況。從全家的高度看,要往一個文件中寫入內容,需要一…

linux7.0使用教程,CentOS7.0使用手冊精編.pdf

CentOS7.0 手冊第一部分:顯卡驅動安裝篇 (針對單顯卡而言)或許CentOS7.0 版本是遇到的裝顯卡驅動最煩的一個,相比Ubuntu 、CentOS7.0 之前版本(如:CentOS6.5、CentOS6.4 )而言,操作步驟如下:由于筆者我的顯卡是華碩圣騎…

linux中s權限大小寫的區別,Linux中的權限

1.文件與目錄權限1)UID與GIDUIDUID是一個數值,是Linux系統中唯一的用戶標識,用于區別不同的用戶。在系統內部管理進程和文件保護時使用UID字段。在Linux系統中,注冊名和UID都可以用于標識用戶,只不過對于系統來說UID更為重要&…

linux中shell自動對齊代碼,linux – Shell編程 – 如何printf像表一樣對齊我的輸出?...

如何printf像表格一樣對齊我的輸出?Title AuthorBaokyBook Baoky2Use basename commandUse basename command .. Baoky我的部分代碼是這樣的titlelength${#title};首先我獲得標題長度,然后我就像這樣打印titlespaceexpr 60 - titlelength;printf "%s %${titles…

linux的安裝組和管理組的區別嗎,Linux用戶和組管理

Linux用戶和組管理安裝上下文:進程以其發起者的身份運行;進程對文件的訪問權限,取決于發起此進程的用戶的權限;系統用戶:為了能夠讓那后臺進程或服務類進程以非管理員的身份運行,通常需要為此創建多個普通用…

在linux下vcd光盤提取,linux下抓取Vcd的視頻文件[Linux安全]

贊助商鏈接本文“linux下抓取Vcd的視頻文件[Linux安全]”是由七道奇為您精心收集,來源于網絡轉載,文章版權歸文章作者所有,本站不對其觀點以及內容做任何評價,請讀者自行判斷,以下是其具體內容:LP的瑜伽碟需…

Linux清mysql磁盤,mysql與linux ~ 磁盤分析與調優

一 簡介 談談磁盤IO的問題二 目的:如何進行IO性能問題的排查二 linux角度一 機械硬盤基本定義尋道時間,表示磁頭在不同磁道之間移動的時間(最耗時)。旋轉延遲,表示在磁道找到時,中軸帶動盤面旋轉到合適的扇區開頭處。傳輸時間,表…