需要開啟Oracle的審計功能,例如:
從事南充服務(wù)器托管,服務(wù)器租用,云主機,虛擬主機,申請域名,CDN,網(wǎng)絡(luò)代維等服務(wù)。
alter system set audit_trail=db scope=spfile;
shutdown immediate
startup
然后設(shè)置對某用戶的select審計:
audit select any table by username by access;
或者設(shè)置某個表的審計:
audit select on tablename by username by access;
最后查詢dba_audit_trail即可
1.創(chuàng)建Product Family
Product Family用于管理幾個功能相近的Product(也可以立即為模塊),統(tǒng)一管理客戶化的Webservice接口
begin
-- Call the procedure
ad_pa_insert_package.insert_ad_pm_product_info(x_product_abbreviation = 'os_xxx',
x_pseudo_product_flag = 'N',
x_product_family_flag = 'Y',
x_application_short_name = NULL,
x_product_name = 'Oracle Xxx Suite',
x_product_family_abbreviation = NULL,
x_product_family_name = NULL,
x_aru_update_date = to_char(SYSDATE,'yyyy-mm-dd
hh24:mi:ss'),
x_currdate = to_char(SYSDATE,'yyyy-mm-dd
hh24:mi:ss'),
x_last_updated_by = -1,
x_created_by = -1);
COMMIT;
end;
2.注冊Product,即注冊Xxx University(cux)應(yīng)用到產(chǎn)品家族中
begin
ad_pa_insert_package.insert_ad_pm_product_info(x_product_abbreviation = 'cux',
x_pseudo_product_flag = 'N',
x_product_family_flag = 'N',
x_application_short_name = 'CUX',
x_product_name = 'Xxx University',
x_product_family_abbreviation = NULL,
x_product_family_name = NULL,
x_aru_update_date = to_char(SYSDATE,'yyyy-mm-dd hh24:mi:ss'),
x_currdate = to_char(SYSDATE,'yyyy-mm-dd hh24:mi:ss'),
x_last_updated_by = -1,
x_created_by = -1);
COMMIT;
end;
3.關(guān)聯(lián)Xxx University應(yīng)用到產(chǎn)品家族Oracle Xxx Suite下
begin
-- Call the procedure
ad_pa_insert_package.insert_ad_pm_prod_family_map(x_product_abbreviation = 'cux',
x_product_family_abbreviation = 'os_xxx',
x_aru_update_date = TO_CHAR(SYSDATE,'yyyy-mm-dd hh24:mi:ss'),
x_currdate = TO_CHAR(SYSDATE,'yyyy-mm-dd hh24:mi:ss'),
x_last_updated_by = -1,
x_created_by = -1);
COMMIT;
end;
4.增加一個BUSINESS_ENTITY的lookup code(應(yīng)用開發(fā)員職責(zé)-應(yīng)用產(chǎn)品 - 代碼-Oracle Application Object),這個Lookup會用在下
一步的API中的@rep:category BUSINESS_ENTITY
這里增加的code為ORACLESEEKER
5.編寫PL/SQL API Specification
CREATE OR REPLACE PACKAGE CUX_SUPPLIER_PKG AS
/* $Header: $ */
/*#
* This package using maintain the supplier information
* @rep:scope public
* @reproduct CUX
* @rep:lifecycle active
* @rep:displayname Supplier Approve result
* @rep:compatibility S
* @rep:category BUSINESS_ENTITY ORACLESEEKER
*/
/*#
* insert approve result
* @param apply_id apply id
* @param node_id node id
* @param node_name node name
* @param approver_id approver id
* @param approver_name approver name
* @param approve_result approve result
* @param approve_opinion approve opinion
* @param approve_date approve date
* @return a varchar
* @rep:scope public
* @rep:lifecycle active
* @rep:displayname insert supplier approve result Webservice
*/
FUNCTION f_insert_approve_result(apply_id IN NUMBER,
node_id IN NUMBER,
node_name IN VARCHAR2,
approver_id IN NUMBER,
approver_name IN VARCHAR2,
approve_result IN NUMBER,
approve_opinion IN VARCHAR2,
approve_date IN DATE) RETURN VARCHAR2;
END CUX_SUPPLIER_PKG;
需要注意Package中的注釋并不是隨便填寫的,每一個注釋都會對應(yīng)到Oracle Integration Repositoy接口的說明上去,對于要注冊成
Webservice的PL/SQL API必須按照要求來填寫。
注釋標(biāo)簽具體的含義需要參考《Oracle E-Business Suite Integrated SOA Gateway Developer's Guide》
6.驗證PLSQL接口文件,并生成ildt文件
將編寫好的PLSQL聲明定義保存為.pls文件(PAUL_ITEM_PKG.pls),并將其上傳到服務(wù)器應(yīng)用$CUX_TOP/patch/115/sql目錄下,然后執(zhí)行下
邊的命令生成ildt文件
/usr/bin/perl $FND_TOP/bin/irep_parser.pl -g -v -username=sysadmin
cuxatch/115/sql:CUX_SUPPLIER_PKG.pls:12.0=CUX_SUPPLIER_PKG.pls
7.將iLDT文件上傳到Oracle Integration Repositoy
FNDLOAD apps/apps 0 Y UPLOAD $FND_TOP/patch/115/import/wfirep.lct CUX_SUPPLIER_PKG_pls.ildt
8.在對應(yīng)的Product Family和Product下就能看到你的接口
9.在Web服務(wù)調(diào)用的時候,需要有一個應(yīng)用數(shù)據(jù)庫用戶來連接EBS數(shù)據(jù)庫,因此需要創(chuàng)建一個具備一定權(quán)限的用戶,而為了簡化設(shè)置的麻煩
,Oracle提供了一個內(nèi)建的用戶 ASADMIN ,只要啟用它并重置密碼就可以了。
以sysadmin登錄Oracle EBS,切換到 User Management 職責(zé),進入Users頁面,查找出asadmin用戶,通過修改密碼的方式激活asadmin,
并確保此用戶擁有Apps Schema Connect Role職責(zé)。
由于asadmin的密碼已經(jīng)被重置,因此中間服務(wù)器的文件配置$INST_TOP/ora/10.1.3/j2ee/oafm/config/system-jazn-data.xml 中對應(yīng)的
密碼也需要修改,由于配置中的密碼已被加密,我們無法提供加密后的密碼,使用過OC4J的同事應(yīng)該都知道,Oracle提供了一種重置這里
密碼的方便方法,就是采用明文密碼,在密碼前添加一個警號(!),然后重啟應(yīng)用服務(wù)器后自動會重新加密。打開system-jazn-data.xml
文件后, 找到
user
nameASADMIN/name
display-nameDefault Apps SOA User/display-name
descriptionUsed by SOAProvider for DB connection/description
credentials{903}qMgAeO1AjQjwOJ6rIB41Sx049uG0xzhs/credentials
/user
只要將credentials的值更改為自己的密碼,如我的密碼設(shè)置為11111,就設(shè)置為 credentials!11111/credentials。修改完成后重啟
oamf,簡單的方法就是重啟Oracle EBS應(yīng)用服務(wù)。
附重啟命令:
cd $INST_TOP/admin/scripts
01、關(guān)閉應(yīng)用 sh adstpall.sh apps/apps
02、重啟應(yīng)用 sh adstrtal.sh apps/apps
03、關(guān)閉DB
04、重啟DB
05、啟動并發(fā)管理器 adcmctl.sh start apps/apps
10.為集成接口創(chuàng)建授權(quán)
發(fā)布到Oracle Integration Repositoy中的Web服務(wù)能夠被訪問必須有相應(yīng)的權(quán)限才可以,這也是受到AOL安全模型限制的一個體現(xiàn)。
登錄EBS后切換到Integrated SOA Gateway職責(zé),在 Integration Repositoy 中找出已經(jīng)上傳好的客戶化集成接口,選擇接口過程和方法
后點擊Create Grant 按鈕
選擇授權(quán)類型:All Users、Group of Users 和 Specific USer,下面設(shè)置為最后一種方式
11.完成以上工作后,點擊Generate WSDL按鈕來生成集成接口對應(yīng)的Web服務(wù)WSDL信息
成功完成后可以看到如下Web服務(wù)的狀態(tài)為:Generated
點擊 Deploy 按鈕來發(fā)布Web服務(wù)到中間服務(wù)器中,發(fā)布后Web服務(wù)的狀態(tài)為: Deployed
-----------------------------------------------
12.如果在測試中報java.security.PrivilegedActionException: javax.xml.soap.SOAPException: Message send failed: For input
string: ""
執(zhí)行以下操作:
cd $ORA_CONFIG_HOME/10.1.3/j2ee/forms/config/oc4j.properties
注釋代理服務(wù)
#http.proxyHost=
#http.proxyPort=
重啟服務(wù)
13.如果填寫信息提交后會報出 wsse:FailedAuthentication 這樣的錯誤信息,這是由于提交的Soap消息中并沒有包括Oracle
Integration Repository要求的AOL安全認(rèn)證,即沒有Oracle EBS系統(tǒng)要求的用戶、職責(zé)、安全組和語言信息,也就是沒有進行Oracle
EBS的環(huán)境初始化
wsdl文件路徑/ebsr12/test/inst/apps/TEST_scmdev/soa/PLSQL/4343
此問題可以通過修改wsdl文件來解決
01刪除CUX_SUPPLIER_PKG_soap.wsdl中
element name="SOAHeader"
complexType
sequence
element name="Responsibility" minOccurs="0" type="string"/
element name="RespApplication" minOccurs="0" type="string"/
element name="SecurityGroup" minOccurs="0" type="string"/
element name="NLSLanguage" minOccurs="0" type="string"/
element name="Org_Id" minOccurs="0" type="string"/
/sequence
/complexType
/element
02刪除CUX_SUPPLIER_PKG_soap_http.wsdl中
element name="SOAHeader"
complexType
sequence
element name="Responsibility" minOccurs="0" type="string"/
element name="RespApplication" minOccurs="0" type="string"/
element name="SecurityGroup" minOccurs="0" type="string"/
element name="NLSLanguage" minOccurs="0" type="string"/
element name="Org_Id" minOccurs="0" type="string"/
/sequence
/complexType
/element
修改后點擊invoke,如出現(xiàn)“處理服務(wù)時出錯”,進行如下處理
/ebsr12/test/inst/apps/TEST_scmdev/soa/PLSQL/4343/F_INSERT_APPROVE_RESULT.wsdl
查看這個文件的內(nèi)容
jcaperation
PackageName=”O(jiān)RACLESEEKER_DEPT_PKG”
ProcedureName=”ADD_DEPARTMENT”
IRepInternalName=”PLSQL:ORACLESEEKER_DEPT_PKG:ADD_DEPARTMENT”
IRepOverloadSeq=”1〃
InteractionSpec=”oracle.tip.adapter.apps.AppsStoredProcedureInteractionSpec”
/jcaperation
打開財務(wù)軟件——進入到財務(wù)軟件的主頁面——點擊“財務(wù)會計”點擊“財務(wù)會計”模塊之后——點擊其下的“總賬”點擊“總賬”之后——點擊其下的子功能“憑證處理”點擊子功能“憑證處理”之后——點擊其下的明細(xì)功能“01002憑證查詢
這個首先年初余額結(jié)轉(zhuǎn)方式必須選擇明細(xì)結(jié)轉(zhuǎn),不然賬齡分析會不準(zhǔn)確。 其次這個功能應(yīng)該在往來管理-賬齡分析,可以設(shè)置截止日期、賬齡區(qū)間。 另外提示最好經(jīng)常做自動核對工作,已清理核銷部分就不會出現(xiàn)在賬齡分析表中。
解決方案請按下列步驟操作:1、打開【出納管理】→【銀行存款對賬單】; 2、彈出【銀行存款對賬單】的過濾窗口,在【科目】及【幣別】的下拉菜單中分別選擇科目及幣別,在【期間】的單選框中選擇具體期間或日期,在最下方的復(fù)選框中勾選需要顯示的項目,單擊【確定】; 3、單擊需要取消的銀行存款對賬單,再單擊工具條上的【刪除】按鈕,或者右鍵單擊單據(jù)后選擇【刪除】。 注意已經(jīng)勾對的對賬單不能被刪除。
操作如下:
A、建立操作人員分配權(quán)限,并分配帳套權(quán)限,同時設(shè)置操作員密碼。
1、建立操作員,分配權(quán)限
2、分配帳套權(quán)限
B、設(shè)置帳套啟用時間以及科目編碼結(jié)構(gòu)。
C、編寫會計科目以及輔助核算科目
D、填寫初始數(shù)據(jù),試算平衡后,關(guān)閉初始化,
F、設(shè)置憑證格式,進入下階段的憑證填制工作
G、憑證填制后,要審核-記賬-期末結(jié)賬,才能進入下個期間的記賬。
2、常用查詢操作
A、科目匯總
B、總賬
C、單位科目統(tǒng)計表
D、單位科目匯總表
3、備份數(shù)據(jù)庫