直書改數字
[格式]--[亞洲方式配置]--[橫向文字]--[確定]即可改變
上標
上標(格式>字形>效果>上標)
改成標籤格式
工具-->信件與郵件-->合併列印-->選取文件類型-->標籤選項(選size)-->選擇收件者-->瀏覽(選word文件)-->安排標籤-->其他項(按順序插入資料)-->更新所有標籤-->完成合併
要從第X頁開始設定頁碼
到要分節的那一頁低最後一個enter-->插分隔設定-->分節符號類型(選下一頁)-->頁首頁尾(連結到前一個,取消同前)-->更改頁碼格式-->插入頁碼
word中「pt」轉「公分」
工具-->選項-->一般-->度量單位(下拉公分pt互換)
雙行字
1.格式-->亞洲方式配置-->組排文字(六個字元以內)
2.格式-->亞洲方式配置-->並列文字(超過六個字元)
網路上文字複製不要有表格
表格-->轉換-->表格轉文字-->勾選「段落點」
把所有↓的enter(強迫分行)改成一般低
取代-->更多-->指定方式-->將「^l 為手動分行符號」取代為「^p 為段落標記」
enter的符號該去哪裡調
工具列的 工具-->選項-->檢視-->格式化標記-->段落標記
打勾即可出現,取消打勾即隱藏
其他PPT、Excell相關答客問
Excell表格之中,如何讓橫表格變成直表格
反白你要複製的地方-->複製-->選擇性貼上-->點選轉置-->ok
ppt轉成word檔
檔案-->傳送-->word-->挑選版面設置-->OK
轉換語系
影音布落格
享樂生活資訊區
2008年6月19日 星期四
2008年6月16日 星期一
ORACEL Applications
1. 在oracle applications 11i 中如何快速獲得上次查詢的SQL 語句方法:我們不必使用SQL Trace 來獲得,有一個簡單的辦法,即:幫助->診斷->檢查->在"塊"中輸入"system",在"字段"輸入" last_query ",然後把鼠標移動到"值",你就可以看到你所要的SQL 語句,簡單吧!
2. 如何更改Applications 中LOG 的存放位置方法:(以AIX 為例)在11i 中默認LOG 的存放位置是各個模塊下log 目錄,例如FND模塊log 的存放目錄就是$FND_TOP/log/,可能有些用戶想統一管理log,可以採取下面這種方法得到解決:更改applprod 用戶(用于啟動FormSever,ReportServer 和並發管理器等)的.profile,增加兩行:APPLCSF=/u10/oracle/prodcomnexport APPLCSF然後重新以applprod 登錄,重新啟動FormSever,ReportServer 和並發管理器等(一般有個shell 文件,例如start.sh),至于為什麼能起作用?原因很簡單,Applications 首先查看APPLCSF 環境變量是否設置,一旦設置,所有的log 均存放在$APPLCSF/log;否則就存放在各個模塊的log 目錄
3. 如何清除一些歷史數據?方法:Applications 11i 的許多模塊都提供清除相關歷史數據,例如fnd 模塊提供"清除過時的工作流運行時數據"的並發請求,你可以清除OM 模塊的舊的工作流的歷史數據(目前我們系統中每隔3 個月自動清除);fnd 模塊提供"匯總和清除並發請求統計",你可以清除提交並發請求產生的log(目前我們系統每隔7 天自動清除)。大家有興趣可以去研究一下其他模塊的提供的清除歷史數據的並發請求,畢竟系統用了一階段,數據量劇增,給備份,硬件和整個系統性能都會有很大的影響,做一些必要的清除工作也許能解決燃眉之急,而且能減少整個硬件的投資
4. 如何獲得某個Forms 文件的版本號?方法:當你跟蹤iTAR 時,Oracle 工程師有時會叫你提供某個Forms 版本,你可以採用如下方法獲得(以AIX 為例):Strings filenamegrep Header#adident Header
5.如何獲得Oracle Applications快捷鍵的定義?解答:CTRL+K,通過它,你可以了解到Oracle Applications快捷鍵的定義,從而加快操作的速度
6.如何更改APPLSYS用戶的密碼?解答:在以前版本中,更改APPLSYS的密碼相當的麻煩,既要更改Applications層的密碼,又要更改數據庫的密碼,而且順序還不能亂,挺麻煩。11i版本引入新的工具FNDCPASS(位于$FND_TOP/bin),你可以輕鬆更改APPLSYS的密碼:$FNDCPASS apps/apps 0 Y system/manager SYSTEM APPLSYS WELCOME上述語句把APPLSYS的密碼改為WELCOME,當然你可以利用它更改各個模塊數據庫的密碼,例如:$FNDCPASS apps/apps 0 Y system/manager orACLE GL GL1上述語句把GL的密碼改為GL1,同時,你也可以更改Applications層用戶的密碼:$FNDCPASS apps/apps 0 Y system/manager USER VISION WELCOME上述語句把VISION用戶的密碼改為WELCOME
1、如何設置Oracle Form上的字體?
將c:Program FilesOracleJInitiator 1.3.1.25lib下
font.properties.zhfont.properties.zh.5.0 font.properties.zh.5.1 中的dialog.0和dialog.1字體互換 如下dialog.0=Arial,DEFAULT_CHARSETdialog.1=u5b8bu4f53,DEFAULT_CHARSET如果是win 2003系統,把font.properties.zh.5.1 改名字
font.properties.zh.5.2
2、如何設置Form的色彩?
在Profile裡設置:Java Color Scheme
3、如何定義自助個人主頁登錄模式?
Profile裡定義:Self Service Personal Home Page mode
同時打開多個職責的Form,如果選擇僅限于結構,會以網頁方式打開功能,然後如
果先後打開多個職責則後打開的職責會替換掉新的職責,保證僅有三個窗口存在。
如果選擇:個人主頁,則可以同時打開多個職責。沒發現選擇:具有結構的個人主
頁 與“僅限于結構”有太大的區別,只是在一登錄系統時感覺上像是“個人主頁
”方式。
4、Form Export文件時,系統自動加擴展名為:.XLS?
Profile裡定義:%MIME hange it to 'applicationExcel'
5、不重啟AP或DB,直接重啟並發管理器的方法?
telnet 服務器切換到應用用戶adcmctl.sh stop apps/appsadcmctl.sh start apps/apps
6、Oracle EBS有哪些默認的登錄名及密碼?
sysadmin/sysadminmfg/welcomeoperations/welcomeservices/welcomemrc/welcomehrms/welocme
7、如何將Sql&plus的輸出信息轉換為英文?
修改注冊表:HKEY_LOCAL_MACHINESOFTWAREOracle----NLS_LANG
將SIMPLIFIED CHINESE_CHINA.ZHS16GBK替換為AMERICAN_CHINA.UTF8
8、如何強制關閉任務管理器(Windows)的進程?
ntsd -c q -p PID
9、10g_client下載地址?
http://download.oracle.com/otn/nt/oracle10g/10g_win32_db.zip
http://download.oracle.com/otn/nt/oracle10g/10g_win32_client.zip
10、如何查詢視圖裡的數據?
首先在Toad中運行如下語句:
begindbms_application_info.set_client_info(106);end;
P.S.106指的ORG_ID,也可以是SOB_ID,根據需要設置。
轉換結果oracle Applications 11i 技術支持經驗雜談如何獲得Oracle Applications快捷鍵的定義?解答:CTRL+K,通過它,你可以了解到Oracle Applications快捷鍵的定義,從而加快操作的速度oracle Applications表和視圖的一些命名規則?解答:一般來說,在Applications中所有的表的命名都是相當規範,通過名字,一般你都可以知道這個表是做什麼用,而且你還可以通過查看FND_TABLES和FND_COLUMNS來獲得表的詳細信息。除此之外,還有一些規則,例如以TL結尾表示帶有語言信息的表,V結尾表示一般的視圖,VL表示帶有語言信息的視圖,以V$開頭代表動態性能試圖,以FND開頭是屬于Application Object Library模塊的,以AR,RA開頭是屬于Oracle Receivables模塊的,以MTL開頭是屬于庫存模塊的,以AP開頭是屬于應收模塊的,以GL開頭是屬于總帳模塊的,以FA開頭是屬于資產模塊的,以OE開頭的是屬于訂單模塊的,以WSH開頭是屬于發運模塊的,以WIP開頭是屬于在制車間模塊的,以IBE開頭是屬于網上商店的,etc如何獲得有關當前FORM的名、版本及其其他相關信息?解答:幫助->關于Oracle Applications(這對于更改FORM和向metalink提交TAR時特別有用),當然你也可以通過unix命令來獲得FORM的頭信息,例如( 以AIX為例):$strings FNDSCAUS grep Header如何獲得當前FORM相應的表或者視圖信息?解答:幫助->歷史紀錄,當然有可能存在“無歷史紀錄”或者“歷史紀錄”菜單是灰的,你可以通過CTRL+F11進行查詢,然後再進行查看;有時這種方法也不可行,你可以嘗試使用這種方法,同樣按CTRL+F11,然後幫助->診斷->檢查,在“塊”中輸入SYSTEM,在字段輸入LAST_QUERY,你就可以獲得有關查詢的信息;如果實在沒辦法的話,你可以使用TRACE來獲得,幫助->診斷->跟蹤,然後進行必要的操作,在UNIX操作系統下以數據庫用戶登錄,例如oraprod,然後執行下列的語句:$cd $ORACLE_HOME/admin/udump $ll lthead 查看時間最接近的語句$tkprof filename out_filename explain=apps/apps sys=no如何獲得客戶端跟服務器端之間網絡的狀況?解答:以系統管理員身份登錄,應用->網絡測試( 也許你會經常聽到客戶的怨言,說為什麼速度太慢,這也許不是服務器端的問題,經常的情況是網絡狀況不好,你可以通過這種方法來驗證)如何修正監控用戶的不準確的數據呢?解答:以系統管理員身份登錄,請求->運行,提交“清除登錄審計數據”,參數可以設定為當天,然後在計劃選項中設定“定期”,開始日期設定為晚上11點左右,同時使“設置每次運行的日期增量參數”有效,這樣參數就會每天自動增加(也許系統管理員有時會向你抱怨,說監控用戶時,很多用戶都已經正常退出,但是仍然在系統中存在,而且已經存在很長一段時間。其實這部分數據是不準確,你必須定期的清除這些審計的數據,才能反映真實的情況)如何定期清理並發請求產生的數據(包括log和out文件)呢?方法:提交並發請求“清除並發請求和(或)管理器數據”,設定實體為“所有”,模式為“使用期限”,模式值為“7”,報表為“是”,清除其他為“是”,這樣的意思是:清除7天以前並發請求和管理數據的報表和日志(由于並發請求所產生的報表文件佔用的空間比較大,定期做這樣的清理是很有必要的)
如何定義只讀的FORMS?解答:對某些FORMS,有時需要限制用戶的訪問,比如說不允許修改FORMS。我們可以採用這種方法來解決,以系統管理員職責登錄,應用->功能,如下圖輸入:點擊“表單”,在參數中輸入“QUERY_ONLY=YES”,其他輸入如下圖所示:這樣你就可以在菜單中添加這個“只讀用戶”的功能表單如何更改APPLSYS用戶的密碼?解答:在以前版本中,更改APPLSYS的密碼相當的麻煩,既要更改Applications層的密碼,又要更改數據庫的密碼,而且順序還不能亂,挺麻煩。11i版本引入新的工具FNDCPASS(位于$FND_TOP/bin),你可以輕鬆更改APPLSYS的密碼:$FNDCPASS apps/apps 0 Y system/manager SYSTEM APPLSYS WELCOME上述語句把APPLSYS的密碼改為WELCOME,當然你可以利用它更改各個模塊數據庫的密碼,例如:$FNDCPASS apps/apps 0 Y system/manager orACLE GL GL1上述語句把GL的密碼改為GL1,同時,你也可以更改Applications層用戶的密碼:$FNDCPASS apps/apps 0 Y system/manager USER VISION WELCOME上述語句把VISION用戶的密碼改為WELCOME如何卸載Oracle Applications的部分模塊?解答:mount光驅,把11i的光盤放入,運行adunload(位于$AD_TOP/bin下),例如:$ adunload.sh product=ar 卸載AR模塊$ adunload.sh product=gl directory=forms/ZHS filename=GLSTUOM.fmx怎樣往已經安裝好的系統添加新的模塊?解答:如果你有圖形終端,你可以直接運行x windows,否則你可以用XWIN-32、Reflection之類終端仿真登錄,設置display屬性和訪問權限,例如:$ export DISPLAY=192.168.42.88:0.0$ xhost + 允許所有的主機訪問然後運行adlicmgr.sh,安裝你要安裝的新模塊,然後更新APPLFULL和APPLSHAR的路徑,接著重新應用最新的相關補丁,重新實施新安裝模塊如何仿真Oracle Applications的用戶?解答:使用fnd_global.apps_initialize(user_id,resp_id,resp_appl_id),其中user_id,resp_id,resp_appl_id可以通過這種方法獲得:幫助->診斷->檢查,在塊中選擇$PROFILES,在字段選擇USER_ID可以獲得USER_ID,同樣方法可以獲得RESP_ID,RESP_APPL_ID(可能有時你需要在Oracle Applications環境外運行一些PL/SQL語句,但是這些語句中需要訪問系統相關的環境變量,例如view,這樣你可以使用上述方法達到你的目的)怎樣kill在監控用戶列表中處于inactive的用戶?解答:執行下列語句Select SUBSTR(d.user_name,1,30) "User Name" , a.pid , b.sid , b.serial# FROM v$process a, v$session b, fnd_logins c, fnd_user d Where a.pid = c.pid AND c.pid = &PID AND d.user_name = UPPER('&USER_NAME') AND d.user_id = c.user_id AND a.addr = b.paddr AND c.end_time IS NULL其中&PID輸入“Oracle進程”列,&USER_NAME輸入“用戶名”欄,根據獲得的SID和SERIAL#,是用以下語句來KILL SESSION:Alter SYSTEM KILL SESSION ‘[SID],[SERIAL#]’ 如何自定義並發請求?解答:如果你為一些模塊寫SQL類型的並發請求,你就必須知道如何為它定義並發請求。下面以test.sql為例,談談如何定義OM模塊的並發請求。首先,把test.sql放到$ONT_TOP/sql目錄下;然後以系統管理員職責登錄,並發->程序->可執行,在窗體上輸入可執行為“Test only”,簡稱為“tst”,應用選擇“Oracle order Management”,執行方法選擇“SQL*Plus”,在可執行名輸入“test”(這裡的名稱就是test.sql去掉.sql),保存關閉,如下圖所示:並發->程序->定義,輸入程序名稱為“Test Report”,簡稱“tstr”,應用選擇“Oracle order Management”,可執行欄中,在名稱選擇“tst”,保存即OK,如下圖所示:
這樣你就可以在OM模塊相關職責中,提交“Test Report”這個報表了。
如何將二次開發的FORMS融合進Applications系統呢?解答:首先為二次開發的系統建立數據庫表空間,然後創建訪問用戶CUX,為CUX用戶分配權限,在unix系統下指定CUX_TOP的目錄,並在CUX_TOP目錄創建跟其他模塊相同的目錄結構,同時在環境變量文件中設定CUX_TOP環境變量(記得必須在重啟系統前運行環境變量文件),把TEST.fmb放在AU_TOP/forms/ZHS目錄下,進入這個目錄,使用f60gen進行編譯:$ f60gen module=TESt.fmb userid=apps/apps
2. 如何更改Applications 中LOG 的存放位置方法:(以AIX 為例)在11i 中默認LOG 的存放位置是各個模塊下log 目錄,例如FND模塊log 的存放目錄就是$FND_TOP/log/,可能有些用戶想統一管理log,可以採取下面這種方法得到解決:更改applprod 用戶(用于啟動FormSever,ReportServer 和並發管理器等)的.profile,增加兩行:APPLCSF=/u10/oracle/prodcomnexport APPLCSF然後重新以applprod 登錄,重新啟動FormSever,ReportServer 和並發管理器等(一般有個shell 文件,例如start.sh),至于為什麼能起作用?原因很簡單,Applications 首先查看APPLCSF 環境變量是否設置,一旦設置,所有的log 均存放在$APPLCSF/log;否則就存放在各個模塊的log 目錄
3. 如何清除一些歷史數據?方法:Applications 11i 的許多模塊都提供清除相關歷史數據,例如fnd 模塊提供"清除過時的工作流運行時數據"的並發請求,你可以清除OM 模塊的舊的工作流的歷史數據(目前我們系統中每隔3 個月自動清除);fnd 模塊提供"匯總和清除並發請求統計",你可以清除提交並發請求產生的log(目前我們系統每隔7 天自動清除)。大家有興趣可以去研究一下其他模塊的提供的清除歷史數據的並發請求,畢竟系統用了一階段,數據量劇增,給備份,硬件和整個系統性能都會有很大的影響,做一些必要的清除工作也許能解決燃眉之急,而且能減少整個硬件的投資
4. 如何獲得某個Forms 文件的版本號?方法:當你跟蹤iTAR 時,Oracle 工程師有時會叫你提供某個Forms 版本,你可以採用如下方法獲得(以AIX 為例):Strings filenamegrep Header#adident Header
5.如何獲得Oracle Applications快捷鍵的定義?解答:CTRL+K,通過它,你可以了解到Oracle Applications快捷鍵的定義,從而加快操作的速度
6.如何更改APPLSYS用戶的密碼?解答:在以前版本中,更改APPLSYS的密碼相當的麻煩,既要更改Applications層的密碼,又要更改數據庫的密碼,而且順序還不能亂,挺麻煩。11i版本引入新的工具FNDCPASS(位于$FND_TOP/bin),你可以輕鬆更改APPLSYS的密碼:$FNDCPASS apps/apps 0 Y system/manager SYSTEM APPLSYS WELCOME上述語句把APPLSYS的密碼改為WELCOME,當然你可以利用它更改各個模塊數據庫的密碼,例如:$FNDCPASS apps/apps 0 Y system/manager orACLE GL GL1上述語句把GL的密碼改為GL1,同時,你也可以更改Applications層用戶的密碼:$FNDCPASS apps/apps 0 Y system/manager USER VISION WELCOME上述語句把VISION用戶的密碼改為WELCOME
1、如何設置Oracle Form上的字體?
將c:Program FilesOracleJInitiator 1.3.1.25lib下
font.properties.zhfont.properties.zh.5.0 font.properties.zh.5.1 中的dialog.0和dialog.1字體互換 如下dialog.0=Arial,DEFAULT_CHARSETdialog.1=u5b8bu4f53,DEFAULT_CHARSET如果是win 2003系統,把font.properties.zh.5.1 改名字
font.properties.zh.5.2
2、如何設置Form的色彩?
在Profile裡設置:Java Color Scheme
3、如何定義自助個人主頁登錄模式?
Profile裡定義:Self Service Personal Home Page mode
同時打開多個職責的Form,如果選擇僅限于結構,會以網頁方式打開功能,然後如
果先後打開多個職責則後打開的職責會替換掉新的職責,保證僅有三個窗口存在。
如果選擇:個人主頁,則可以同時打開多個職責。沒發現選擇:具有結構的個人主
頁 與“僅限于結構”有太大的區別,只是在一登錄系統時感覺上像是“個人主頁
”方式。
4、Form Export文件時,系統自動加擴展名為:.XLS?
Profile裡定義:%MIME hange it to 'applicationExcel'
5、不重啟AP或DB,直接重啟並發管理器的方法?
telnet 服務器切換到應用用戶adcmctl.sh stop apps/appsadcmctl.sh start apps/apps
6、Oracle EBS有哪些默認的登錄名及密碼?
sysadmin/sysadminmfg/welcomeoperations/welcomeservices/welcomemrc/welcomehrms/welocme
7、如何將Sql&plus的輸出信息轉換為英文?
修改注冊表:HKEY_LOCAL_MACHINESOFTWAREOracle----NLS_LANG
將SIMPLIFIED CHINESE_CHINA.ZHS16GBK替換為AMERICAN_CHINA.UTF8
8、如何強制關閉任務管理器(Windows)的進程?
ntsd -c q -p PID
9、10g_client下載地址?
http://download.oracle.com/otn/nt/oracle10g/10g_win32_db.zip
http://download.oracle.com/otn/nt/oracle10g/10g_win32_client.zip
10、如何查詢視圖裡的數據?
首先在Toad中運行如下語句:
begindbms_application_info.set_client_info(106);end;
P.S.106指的ORG_ID,也可以是SOB_ID,根據需要設置。
轉換結果oracle Applications 11i 技術支持經驗雜談如何獲得Oracle Applications快捷鍵的定義?解答:CTRL+K,通過它,你可以了解到Oracle Applications快捷鍵的定義,從而加快操作的速度oracle Applications表和視圖的一些命名規則?解答:一般來說,在Applications中所有的表的命名都是相當規範,通過名字,一般你都可以知道這個表是做什麼用,而且你還可以通過查看FND_TABLES和FND_COLUMNS來獲得表的詳細信息。除此之外,還有一些規則,例如以TL結尾表示帶有語言信息的表,V結尾表示一般的視圖,VL表示帶有語言信息的視圖,以V$開頭代表動態性能試圖,以FND開頭是屬于Application Object Library模塊的,以AR,RA開頭是屬于Oracle Receivables模塊的,以MTL開頭是屬于庫存模塊的,以AP開頭是屬于應收模塊的,以GL開頭是屬于總帳模塊的,以FA開頭是屬于資產模塊的,以OE開頭的是屬于訂單模塊的,以WSH開頭是屬于發運模塊的,以WIP開頭是屬于在制車間模塊的,以IBE開頭是屬于網上商店的,etc如何獲得有關當前FORM的名、版本及其其他相關信息?解答:幫助->關于Oracle Applications(這對于更改FORM和向metalink提交TAR時特別有用),當然你也可以通過unix命令來獲得FORM的頭信息,例如( 以AIX為例):$strings FNDSCAUS grep Header如何獲得當前FORM相應的表或者視圖信息?解答:幫助->歷史紀錄,當然有可能存在“無歷史紀錄”或者“歷史紀錄”菜單是灰的,你可以通過CTRL+F11進行查詢,然後再進行查看;有時這種方法也不可行,你可以嘗試使用這種方法,同樣按CTRL+F11,然後幫助->診斷->檢查,在“塊”中輸入SYSTEM,在字段輸入LAST_QUERY,你就可以獲得有關查詢的信息;如果實在沒辦法的話,你可以使用TRACE來獲得,幫助->診斷->跟蹤,然後進行必要的操作,在UNIX操作系統下以數據庫用戶登錄,例如oraprod,然後執行下列的語句:$cd $ORACLE_HOME/admin/udump $ll lthead 查看時間最接近的語句$tkprof filename out_filename explain=apps/apps sys=no如何獲得客戶端跟服務器端之間網絡的狀況?解答:以系統管理員身份登錄,應用->網絡測試( 也許你會經常聽到客戶的怨言,說為什麼速度太慢,這也許不是服務器端的問題,經常的情況是網絡狀況不好,你可以通過這種方法來驗證)如何修正監控用戶的不準確的數據呢?解答:以系統管理員身份登錄,請求->運行,提交“清除登錄審計數據”,參數可以設定為當天,然後在計劃選項中設定“定期”,開始日期設定為晚上11點左右,同時使“設置每次運行的日期增量參數”有效,這樣參數就會每天自動增加(也許系統管理員有時會向你抱怨,說監控用戶時,很多用戶都已經正常退出,但是仍然在系統中存在,而且已經存在很長一段時間。其實這部分數據是不準確,你必須定期的清除這些審計的數據,才能反映真實的情況)如何定期清理並發請求產生的數據(包括log和out文件)呢?方法:提交並發請求“清除並發請求和(或)管理器數據”,設定實體為“所有”,模式為“使用期限”,模式值為“7”,報表為“是”,清除其他為“是”,這樣的意思是:清除7天以前並發請求和管理數據的報表和日志(由于並發請求所產生的報表文件佔用的空間比較大,定期做這樣的清理是很有必要的)
如何定義只讀的FORMS?解答:對某些FORMS,有時需要限制用戶的訪問,比如說不允許修改FORMS。我們可以採用這種方法來解決,以系統管理員職責登錄,應用->功能,如下圖輸入:點擊“表單”,在參數中輸入“QUERY_ONLY=YES”,其他輸入如下圖所示:這樣你就可以在菜單中添加這個“只讀用戶”的功能表單如何更改APPLSYS用戶的密碼?解答:在以前版本中,更改APPLSYS的密碼相當的麻煩,既要更改Applications層的密碼,又要更改數據庫的密碼,而且順序還不能亂,挺麻煩。11i版本引入新的工具FNDCPASS(位于$FND_TOP/bin),你可以輕鬆更改APPLSYS的密碼:$FNDCPASS apps/apps 0 Y system/manager SYSTEM APPLSYS WELCOME上述語句把APPLSYS的密碼改為WELCOME,當然你可以利用它更改各個模塊數據庫的密碼,例如:$FNDCPASS apps/apps 0 Y system/manager orACLE GL GL1上述語句把GL的密碼改為GL1,同時,你也可以更改Applications層用戶的密碼:$FNDCPASS apps/apps 0 Y system/manager USER VISION WELCOME上述語句把VISION用戶的密碼改為WELCOME如何卸載Oracle Applications的部分模塊?解答:mount光驅,把11i的光盤放入,運行adunload(位于$AD_TOP/bin下),例如:$ adunload.sh product=ar 卸載AR模塊$ adunload.sh product=gl directory=forms/ZHS filename=GLSTUOM.fmx怎樣往已經安裝好的系統添加新的模塊?解答:如果你有圖形終端,你可以直接運行x windows,否則你可以用XWIN-32、Reflection之類終端仿真登錄,設置display屬性和訪問權限,例如:$ export DISPLAY=192.168.42.88:0.0$ xhost + 允許所有的主機訪問然後運行adlicmgr.sh,安裝你要安裝的新模塊,然後更新APPLFULL和APPLSHAR的路徑,接著重新應用最新的相關補丁,重新實施新安裝模塊如何仿真Oracle Applications的用戶?解答:使用fnd_global.apps_initialize(user_id,resp_id,resp_appl_id),其中user_id,resp_id,resp_appl_id可以通過這種方法獲得:幫助->診斷->檢查,在塊中選擇$PROFILES,在字段選擇USER_ID可以獲得USER_ID,同樣方法可以獲得RESP_ID,RESP_APPL_ID(可能有時你需要在Oracle Applications環境外運行一些PL/SQL語句,但是這些語句中需要訪問系統相關的環境變量,例如view,這樣你可以使用上述方法達到你的目的)怎樣kill在監控用戶列表中處于inactive的用戶?解答:執行下列語句Select SUBSTR(d.user_name,1,30) "User Name" , a.pid , b.sid , b.serial# FROM v$process a, v$session b, fnd_logins c, fnd_user d Where a.pid = c.pid AND c.pid = &PID AND d.user_name = UPPER('&USER_NAME') AND d.user_id = c.user_id AND a.addr = b.paddr AND c.end_time IS NULL其中&PID輸入“Oracle進程”列,&USER_NAME輸入“用戶名”欄,根據獲得的SID和SERIAL#,是用以下語句來KILL SESSION:Alter SYSTEM KILL SESSION ‘[SID],[SERIAL#]’ 如何自定義並發請求?解答:如果你為一些模塊寫SQL類型的並發請求,你就必須知道如何為它定義並發請求。下面以test.sql為例,談談如何定義OM模塊的並發請求。首先,把test.sql放到$ONT_TOP/sql目錄下;然後以系統管理員職責登錄,並發->程序->可執行,在窗體上輸入可執行為“Test only”,簡稱為“tst”,應用選擇“Oracle order Management”,執行方法選擇“SQL*Plus”,在可執行名輸入“test”(這裡的名稱就是test.sql去掉.sql),保存關閉,如下圖所示:並發->程序->定義,輸入程序名稱為“Test Report”,簡稱“tstr”,應用選擇“Oracle order Management”,可執行欄中,在名稱選擇“tst”,保存即OK,如下圖所示:
這樣你就可以在OM模塊相關職責中,提交“Test Report”這個報表了。
如何將二次開發的FORMS融合進Applications系統呢?解答:首先為二次開發的系統建立數據庫表空間,然後創建訪問用戶CUX,為CUX用戶分配權限,在unix系統下指定CUX_TOP的目錄,並在CUX_TOP目錄創建跟其他模塊相同的目錄結構,同時在環境變量文件中設定CUX_TOP環境變量(記得必須在重啟系統前運行環境變量文件),把TEST.fmb放在AU_TOP/forms/ZHS目錄下,進入這個目錄,使用f60gen進行編譯:$ f60gen module=TESt.fmb userid=apps/apps
ORACEL FORM應用
例如:有一張工資單,當某個員工的工資超過5000時,用戶需要系統能用紅色來指示員工的姓名和工資.
實現方法:我新做一張form,按常規建好block和item建一個visual attributes v1(background color=red).在相應的block level上新建一個post-query trigger並编寫代碼如下:我們新做一張form,按常規建好block和item並建一個visual attributes v1(background color=red).在相應的block level上新建一個post-query trigger並編寫代碼如下:
--如果工資(block.item1)大於5000 --如果工資(block.item1)大於5000 if :block.item1 > 5000 then if :block.item1 > 5000 then --指示出相應的員工姓名(block.item2) --指示出相應的員工姓名(block.item2)
set_item_instance_property('block.item2',To_Number(:SYSTEM.TRIGGER_RECORD),VISUAL_ATTRIBUTE,'v1');
--指示出相應的工資(block.item3) --指示出相應的工資(block.item3)
set_item_instance_property('block.item3',To_Number(:SYSTEM.TRIGGER_RECORD),VISUAL_ATTRIBUTE,'v1'); end if; end if;
實現方法:我新做一張form,按常規建好block和item建一個visual attributes v1(background color=red).在相應的block level上新建一個post-query trigger並编寫代碼如下:我們新做一張form,按常規建好block和item並建一個visual attributes v1(background color=red).在相應的block level上新建一個post-query trigger並編寫代碼如下:
--如果工資(block.item1)大於5000 --如果工資(block.item1)大於5000 if :block.item1 > 5000 then if :block.item1 > 5000 then --指示出相應的員工姓名(block.item2) --指示出相應的員工姓名(block.item2)
set_item_instance_property('block.item2',To_Number(:SYSTEM.TRIGGER_RECORD),VISUAL_ATTRIBUTE,'v1');
--指示出相應的工資(block.item3) --指示出相應的工資(block.item3)
set_item_instance_property('block.item3',To_Number(:SYSTEM.TRIGGER_RECORD),VISUAL_ATTRIBUTE,'v1'); end if; end if;
2008年6月9日 星期一
ORACLE DBA
查詢request id
SELECT req.request_id, fcp.user_concurrent_program_name, usr.user_name, req.request_date, TRUNC(SYSDATE) - TRUNC(request_date) days, req.logfile_name, req.outfile_name FROM applsys.fnd_concurrent_requests req, apps.fnd_concurrent_programs_vl fcp, applsys.fnd_user usrWHERE req.concurrent_program_id = fcp.concurrent_program_id AND req.requested_by = usr.user_id AND fcp.user_concurrent_program_name LIKE 'Cost Manager%'ORDER BY fcp.user_concurrent_program_name
SELECT req.request_id, fcp.user_concurrent_program_name, usr.user_name, req.request_date, TRUNC(SYSDATE) - TRUNC(request_date) days, req.logfile_name, req.outfile_name FROM applsys.fnd_concurrent_requests req, apps.fnd_concurrent_programs_vl fcp, applsys.fnd_user usrWHERE req.concurrent_program_id = fcp.concurrent_program_id AND req.requested_by = usr.user_id AND fcp.user_concurrent_program_name LIKE 'Cost Manager%'ORDER BY fcp.user_concurrent_program_name
2008年6月8日 星期日
Oracle XML Publisher
1.ref metalink doc 422508.1
Download and Install Oracle XML Publisher Desktop (Business User)(Optional)
2.設計好的word template 要upload 至DB中
3.Run Report時: 輸入參數, Printer, Copy, 可選到template4.Run XML Report Publisher, View Out, 即可看到結果
4.文件參考
Oracle XML Publisher Administration and Developer's Guide , ref E05321_01 Oracle XML Publisher Report Designer's Guide, ref E05320_01
Download and Install Oracle XML Publisher Desktop (Business User)(Optional)
2.設計好的word template 要upload 至DB中
3.Run Report時: 輸入參數, Printer, Copy, 可選到template4.Run XML Report Publisher, View Out, 即可看到結果
4.文件參考
Oracle XML Publisher Administration and Developer's Guide , ref E05321_01 Oracle XML Publisher Report Designer's Guide, ref E05320_01
SQL優化過程中常見Oracle HINT的用法
在SQL語句優化過程中,我們經常會用到hint,現總結一下在SQL優化過程中常見Oracle HINT的用法:
1. /*+ALL_ROWS*/
表明對語句塊選擇基於開銷的優化方法,並獲得最佳吞吐量,使資源消耗最小化.
例如:
SELECT /*+ALL+_ROWS*/ EMP_NO,EMP_NAM,DAT_IN FROM BSEMPMS WHERE EMP_NO='SCOTT';
2. /*+FIRST_ROWS*/
表明對語句塊選擇基於開銷的優化方法,並獲得最佳響應時間,使資源消耗最小化.
例如:
SELECT /*+FIRST_ROWS*/ EMP_NO,EMP_NAM,DAT_IN FROM BSEMPMS WHERE EMP_NO='SCOTT';
3. /*+CHOOSE*/
表明如果數據字典中有訪問表的統計信息,將基於開銷的優化方法,並獲得最佳的吞吐量;
表明如果數據字典中沒有訪問表的統計信息,將基於規則開銷的優化方法;
例如:
SELECT /*+CHOOSE*/ EMP_NO,EMP_NAM,DAT_IN FROM BSEMPMS WHERE EMP_NO='SCOTT';
4. /*+RULE*/
表明對語句塊選擇基於規則的優化方法.
例如:
SELECT /*+ RULE */ EMP_NO,EMP_NAM,DAT_IN FROM BSEMPMS WHERE EMP_NO='SCOTT';
5. /*+FULL(TABLE)*/
表明對錶選擇全局掃描的方法.
例如:
SELECT /*+FULL(A)*/ EMP_NO,EMP_NAM FROM BSEMPMS A WHERE EMP_NO='SCOTT';
6. /*+ROWID(TABLE)*/
提示明確表明對指定表根據ROWID進行訪問.
例如:
SELECT /*+ROWID(BSEMPMS)*/ * FROM BSEMPMS WHERE ROWID>='AAAAAAAAAAAAAA'
AND EMP_NO='SCOTT';
7. /*+CLUSTER(TABLE)*/
提示明確表明對指定表選擇簇掃描的訪問方法,它只對簇對像有效.
例如:
SELECT /*+CLUSTER */ BSEMPMS.EMP_NO,DPT_NO FROM BSEMPMS,BSDPTMS
WHERE DPT_NO='TEC304' AND BSEMPMS.DPT_NO=BSDPTMS.DPT_NO;
8. /*+INDEX(TABLE INDEX_NAME)*/
表明對錶選擇索引的掃描方法.
例如:
SELECT /*+INDEX(BSEMPMS SEX_INDEX) USE SEX_INDEX BECAUSE THERE ARE FEWMALE BSEMPMS */ FROM BSEMPMS WHERE SEX='M';
9. /*+INDEX_ASC(TABLE INDEX_NAME)*/
表明對錶選擇索引升序的掃描方法.
例如:
SELECT /*+INDEX_ASC(BSEMPMS PK_BSEMPMS) */ FROM BSEMPMS WHERE DPT_NO='SCOTT';
10. /*+INDEX_COMBINE*/
為指定表選擇位圖訪問路經,如果INDEX_COMBINE中沒有提供作為參數的索引,將選擇出位圖索引的布爾組合方式.
例如:
SELECT /*+INDEX_COMBINE(BSEMPMS SAL_BMI HIREDATE_BMI)*/ * FROM BSEMPMS
WHERE SAL<5000000 emp_no="SCOTT" sex="M" dpt_no="V.DPT_NO">V.AVG_SAL;
20. /*+NO_MERGE(TABLE)*/
對於有可合併的視圖不再合併.
例如:
SELECT /*+NO_MERGE(V) */ A.EMP_NO,A.EMP_NAM,B.DPT_NO FROM BSEMPMS A (SELECT DPT_NO,AVG(SAL) AS AVG_SAL FROM BSEMPMS B GROUP BY DPT_NO) V WHERE A.DPT_NO=V.DPT_NO AND A.SAL>V.AVG_SAL;
21. /*+ORDERED*/
根據表出現在FROM中的順序,ORDERED使ORACLE依此順序對其連接.
例如:
SELECT /*+ORDERED*/ A.COL1,B.COL2,C.COL3 FROM TABLE1 A,TABLE2 B,TABLE3 C WHERE A.COL1=B.COL1 AND B.COL1=C.COL1;
22. /*+USE_NL(TABLE)*/
將指定表與嵌套的連接的行源進行連接,並把指定表作為內部表.
例如:
SELECT /*+ORDERED USE_NL(BSEMPMS)*/ BSDPTMS.DPT_NO,BSEMPMS.EMP_NO,BSEMPMS.EMP_NAM FROM BSEMPMS,BSDPTMS WHERE BSEMPMS.DPT_NO=BSDPTMS.DPT_NO;
23. /*+USE_MERGE(TABLE)*/
將指定的表與其他行源通過合併排序連接方式連接起來.
例如:
SELECT /*+USE_MERGE(BSEMPMS,BSDPTMS)*/ * FROM BSEMPMS,BSDPTMS WHERE BSEMPMS.DPT_NO=BSDPTMS.DPT_NO;
24. /*+USE_HASH(TABLE)*/
將指定的表與其他行源通過哈希連接方式連接起來.
例如:
SELECT /*+USE_HASH(BSEMPMS,BSDPTMS)*/ * FROM BSEMPMS,BSDPTMS WHERE BSEMPMS.DPT_NO=BSDPTMS.DPT_NO;
25. /*+DRIVING_SITE(TABLE)*/
強制與ORACLE所選擇的位置不同的表進行查詢執行.
例如:
SELECT /*+DRIVING_SITE(DEPT)*/ * FROM BSEMPMS,DEPT@BSDPTMS WHERE BSEMPMS.DPT_NO=DEPT.DPT_NO;
26. /*+LEADING(TABLE)*/
將指定的表作為連接次序中的首表.
27. /*+CACHE(TABLE)*/
當進行全表掃描時,CACHE提示能夠將表的檢索塊放置在緩衝區緩存中最近最少列表LRU的最近使用端
例如:
SELECT /*+FULL(BSEMPMS) CAHE(BSEMPMS) */ EMP_NAM FROM BSEMPMS;
28. /*+NOCACHE(TABLE)*/
當進行全表掃描時,CACHE提示能夠將表的檢索塊放置在緩衝區緩存中最近最少列表LRU的最近使用端
例如:
SELECT /*+FULL(BSEMPMS) NOCAHE(BSEMPMS) */ EMP_NAM FROM BSEMPMS;
29. /*+APPEND*/
直接插入到表的最後,可以提高速度.
insert /*+append*/ into test1 select * from test4 ;
30. /*+NOAPPEND*/
通過在插入語句生存期內停止並行模式來啟動常規插入.
insert /*+noappend*/ into test1 select * from test4 ;
1. /*+ALL_ROWS*/
表明對語句塊選擇基於開銷的優化方法,並獲得最佳吞吐量,使資源消耗最小化.
例如:
SELECT /*+ALL+_ROWS*/ EMP_NO,EMP_NAM,DAT_IN FROM BSEMPMS WHERE EMP_NO='SCOTT';
2. /*+FIRST_ROWS*/
表明對語句塊選擇基於開銷的優化方法,並獲得最佳響應時間,使資源消耗最小化.
例如:
SELECT /*+FIRST_ROWS*/ EMP_NO,EMP_NAM,DAT_IN FROM BSEMPMS WHERE EMP_NO='SCOTT';
3. /*+CHOOSE*/
表明如果數據字典中有訪問表的統計信息,將基於開銷的優化方法,並獲得最佳的吞吐量;
表明如果數據字典中沒有訪問表的統計信息,將基於規則開銷的優化方法;
例如:
SELECT /*+CHOOSE*/ EMP_NO,EMP_NAM,DAT_IN FROM BSEMPMS WHERE EMP_NO='SCOTT';
4. /*+RULE*/
表明對語句塊選擇基於規則的優化方法.
例如:
SELECT /*+ RULE */ EMP_NO,EMP_NAM,DAT_IN FROM BSEMPMS WHERE EMP_NO='SCOTT';
5. /*+FULL(TABLE)*/
表明對錶選擇全局掃描的方法.
例如:
SELECT /*+FULL(A)*/ EMP_NO,EMP_NAM FROM BSEMPMS A WHERE EMP_NO='SCOTT';
6. /*+ROWID(TABLE)*/
提示明確表明對指定表根據ROWID進行訪問.
例如:
SELECT /*+ROWID(BSEMPMS)*/ * FROM BSEMPMS WHERE ROWID>='AAAAAAAAAAAAAA'
AND EMP_NO='SCOTT';
7. /*+CLUSTER(TABLE)*/
提示明確表明對指定表選擇簇掃描的訪問方法,它只對簇對像有效.
例如:
SELECT /*+CLUSTER */ BSEMPMS.EMP_NO,DPT_NO FROM BSEMPMS,BSDPTMS
WHERE DPT_NO='TEC304' AND BSEMPMS.DPT_NO=BSDPTMS.DPT_NO;
8. /*+INDEX(TABLE INDEX_NAME)*/
表明對錶選擇索引的掃描方法.
例如:
SELECT /*+INDEX(BSEMPMS SEX_INDEX) USE SEX_INDEX BECAUSE THERE ARE FEWMALE BSEMPMS */ FROM BSEMPMS WHERE SEX='M';
9. /*+INDEX_ASC(TABLE INDEX_NAME)*/
表明對錶選擇索引升序的掃描方法.
例如:
SELECT /*+INDEX_ASC(BSEMPMS PK_BSEMPMS) */ FROM BSEMPMS WHERE DPT_NO='SCOTT';
10. /*+INDEX_COMBINE*/
為指定表選擇位圖訪問路經,如果INDEX_COMBINE中沒有提供作為參數的索引,將選擇出位圖索引的布爾組合方式.
例如:
SELECT /*+INDEX_COMBINE(BSEMPMS SAL_BMI HIREDATE_BMI)*/ * FROM BSEMPMS
WHERE SAL<5000000 emp_no="SCOTT" sex="M" dpt_no="V.DPT_NO">V.AVG_SAL;
20. /*+NO_MERGE(TABLE)*/
對於有可合併的視圖不再合併.
例如:
SELECT /*+NO_MERGE(V) */ A.EMP_NO,A.EMP_NAM,B.DPT_NO FROM BSEMPMS A (SELECT DPT_NO,AVG(SAL) AS AVG_SAL FROM BSEMPMS B GROUP BY DPT_NO) V WHERE A.DPT_NO=V.DPT_NO AND A.SAL>V.AVG_SAL;
21. /*+ORDERED*/
根據表出現在FROM中的順序,ORDERED使ORACLE依此順序對其連接.
例如:
SELECT /*+ORDERED*/ A.COL1,B.COL2,C.COL3 FROM TABLE1 A,TABLE2 B,TABLE3 C WHERE A.COL1=B.COL1 AND B.COL1=C.COL1;
22. /*+USE_NL(TABLE)*/
將指定表與嵌套的連接的行源進行連接,並把指定表作為內部表.
例如:
SELECT /*+ORDERED USE_NL(BSEMPMS)*/ BSDPTMS.DPT_NO,BSEMPMS.EMP_NO,BSEMPMS.EMP_NAM FROM BSEMPMS,BSDPTMS WHERE BSEMPMS.DPT_NO=BSDPTMS.DPT_NO;
23. /*+USE_MERGE(TABLE)*/
將指定的表與其他行源通過合併排序連接方式連接起來.
例如:
SELECT /*+USE_MERGE(BSEMPMS,BSDPTMS)*/ * FROM BSEMPMS,BSDPTMS WHERE BSEMPMS.DPT_NO=BSDPTMS.DPT_NO;
24. /*+USE_HASH(TABLE)*/
將指定的表與其他行源通過哈希連接方式連接起來.
例如:
SELECT /*+USE_HASH(BSEMPMS,BSDPTMS)*/ * FROM BSEMPMS,BSDPTMS WHERE BSEMPMS.DPT_NO=BSDPTMS.DPT_NO;
25. /*+DRIVING_SITE(TABLE)*/
強制與ORACLE所選擇的位置不同的表進行查詢執行.
例如:
SELECT /*+DRIVING_SITE(DEPT)*/ * FROM BSEMPMS,DEPT@BSDPTMS WHERE BSEMPMS.DPT_NO=DEPT.DPT_NO;
26. /*+LEADING(TABLE)*/
將指定的表作為連接次序中的首表.
27. /*+CACHE(TABLE)*/
當進行全表掃描時,CACHE提示能夠將表的檢索塊放置在緩衝區緩存中最近最少列表LRU的最近使用端
例如:
SELECT /*+FULL(BSEMPMS) CAHE(BSEMPMS) */ EMP_NAM FROM BSEMPMS;
28. /*+NOCACHE(TABLE)*/
當進行全表掃描時,CACHE提示能夠將表的檢索塊放置在緩衝區緩存中最近最少列表LRU的最近使用端
例如:
SELECT /*+FULL(BSEMPMS) NOCAHE(BSEMPMS) */ EMP_NAM FROM BSEMPMS;
29. /*+APPEND*/
直接插入到表的最後,可以提高速度.
insert /*+append*/ into test1 select * from test4 ;
30. /*+NOAPPEND*/
通過在插入語句生存期內停止並行模式來啟動常規插入.
insert /*+noappend*/ into test1 select * from test4 ;
訂閱:
文章 (Atom)