深入浅出Oracle之常用接口开发参考(6)

2018-12-17 16:29

Oracle ERP最佳技术实践 Doc Ref:

June 25, 2008

RETURN VARCHAR2 IS l_count NUMBER;

ref_null_exception EXCEPTION;

BEGIN

IF p_cust_ref IS NULL OR p_addr_ref IS NULL THEN RAISE ref_null_exception; END IF;

SELECT COUNT(*) INTO l_count

FROM hz_cust_accounts.orig_system_reference WHERE orig_system_reference = p_cust_ref;

IF l_count = 0 THEN RETURN 'I'; END IF;

IF p_site_use_code IS NULL THEN RETURN 'U'; END IF;

SELECT COUNT(*) INTO l_count

FROM ra_customers cs, ra_addresses ad, ra_site_uses su WHERE cs.customer_id = ad.customer_id AND ad.address_id = su.address_id

AND cs.orig_system_reference = p_cust_ref AND ad.orig_system_reference = p_addr_ref AND su.site_use_code = p_site_use_code;

IF l_count = 0 THEN RETURN 'I'; END IF;

RETURN 'U'; END;

ra_customer_profiles_int_all表的insert_update_flag判断如下:

FUNCTION get_cust_prof_iface_flag(p_cust_ref IN VARCHAR2,

p_addr_ref IN VARCHAR2) RETURN VARCHAR2 IS l_count NUMBER;

ref_null_exception EXCEPTION; BEGIN

IF p_cust_ref IS NULL THEN RAISE ref_null_exception; END IF;

SELECT COUNT(*) INTO l_count

FROM hz_cust_accounts

WHERE orig_system_reference = p_cust_ref;

IF l_count = 0 THEN RETURN 'I'; END IF;

IF p_addr_ref IS NULL THEN SELECT COUNT(*) INTO l_count

FROM hz_cust_accounts cs, hz_customer_profiles cp WHERE cs.orig_system_reference = p_cust_ref AND cp.site_use_id IS NULL

AND cs.cust_account_id = cp.cust_account_id; ELSE

SELECT COUNT(*) INTO l_count

FROM ra_customers cs, ar_customer_profiles cp, ra_addresses ad WHERE cs.customer_id = cp.customer_id AND cp.customer_id = ad.customer_id

AND cs.orig_system_reference = p_cust_ref 接口开发参考

AR Customers客户【Open Interface】File Ref: 37325617.doc (v. DRAFT 1A )

Company Confidential - For internal use only

21 of 164

Oracle ERP最佳技术实践

AND ad.orig_system_reference = p_addr_ref AND cp.site_use_id IS NOT NULL; END IF;

IF l_count = 0 THEN RETURN 'I'; END IF;

RETURN 'U'; END;

Doc Ref:

June 25, 2008

ra_contact_phones_int_all表的insert_update_flag判断如下:

FUNCTION get_cust_contact_iface_flag(p_phone_ref IN VARCHAR2, p_contact_ref IN VARCHAR2) RETURN VARCHAR2 IS l_count NUMBER;

ref_null_exception EXCEPTION; BEGIN

SELECT COUNT(*) INTO l_count

FROM hz_cust_account_roles cont

WHERE cont.orig_system_reference = p_contact_ref; IF l_count > 0 THEN RETURN 'U'; END IF;

SELECT COUNT(*) INTO l_count

FROM hz_contact_points phone

WHERE phone.orig_system_reference = p_phone_ref; IF l_count > 0 THEN RETURN 'U'; END IF;

RETURN 'I'; END;

补丁

11.5.9需要打Patch 3606744和3558213,否则Statement和Dunning类型的Site Use导不进去。 直接更新表

不是所以字段都可以从Interface进去;以HZ_Cust_Site_Uses_all为例,导入之后需要直接Update如下比较重要的字段:

payment_term_id/order_type_id/warehouse_id/territory_id/primary_salesrep_id 更新HZ_Cust_Site_Uses_all的Primary_flag的时候注意同时更新hz_cust_acct_sites_all的bill_to_flag和ship_to_flag为P(Primary)或者Y

接口开发参考

File Ref: 37325617.doc (v. DRAFT 1A )

AR Customers客户【Open Interface】 22 of 164

Company Confidential - For internal use only

Oracle ERP最佳技术实践 Doc Ref:

June 25, 2008

5. AR Transactions应收发票【Open Interface、Open API】

5.1. 快速参考

AutoInvoice支持invoices、debit memos、 credit memos、on–account credits。 接口表之间的关系和其他接口不同,不是通过ID关联,而是通过描述性弹性域Line Transaction Flexfield定义;这些字段的值组合不能和正式表重复。 接口给ID还是Name,要根据Transaction Source上的定义,不能随便给。 account_class = 'REC' and latest_rec_flag = 'Y'的ra_cust_trx_line_gl_dist_all是没有customer_trx_line_id的。

ra_interface_distributions_all这个表可以不插,让系统自动生成分配行。

如果没有销售员,可以提供一条salesrep_id=-3的No Sales Person记录给接口。这个要看AR System Option Miscellaneous上的设置是否要求销售员。 如果对Payment Schedule信息“不满意”,可以Update或者Insert表ar_payment_schedules_all。

由Accounting Rule生成的收入确认行不会生成。 11.5.10开始提供API。

参考点 功能导航 并发请求 接口表 API 错误信息表 接口Form 接口Report Debug Profile 详细例子 官方文档 数据验证包

内容 N: AR/Transactions/Transactions N: AR/Requests/Autoinvoice Master Program ra_interface_lines_all/ra_interface_salescredits_all/ra_interface_distributions AR_INVOICE_API_PUB ra_interface_errors_all N: AR/Control/Autoinvoice/Interface Lines N: AR/Control/Autoinvoice/Interface Exceptions AR: Enable Debug Message Output oracle_iface_scripts_pkg.ra_trx_iface 115arug.pdf Oracle Receivables User Guide 115arapi.pdf Oracle Receivables API User Notes 5.2. 开发参考

接口表、错误信息表 Table List:

接口表 ra_interface_lines_all ra_interface_salescredits_all ra_interface_distributions ra_interface_errors_all 接口开发参考

File Ref: 37325617.doc (v. DRAFT 1A )

数据表 说明 错误信息表 AR Transactions应收发票【Open Interface、Open API】 23 of 164

Company Confidential - For internal use only

Oracle ERP最佳技术实践 Doc Ref:

June 25, 2008

Table Relation: 接口表之间的关系和其他接口不同,不是通过ID关联,而是通过描述性弹性域Line Transaction Flexfield定义;这些字段的值组合不能和正式表重复 并发程序Autoinvoice Master Program N: AR/Requests/Autoinvoice Master Program

参数 Number of Instances Batch Source Id Batch Source Name Default Date Base Due Date on Trx Date Ord Id

说明 隐藏参数 Y 经营单位ID,必须给 5.3. 关键字段(参数)+最简单例子

关键字段

ra_interface_lines_all

字段 batch_source_name 5个who字段 说明 必须 习惯上都给 Open Inerface最简单例子(更新数量和需求日期)(11.5.10.2 VIS环境测试通过) 脚本如下:

5.4. 已知问题

接口开发参考

File Ref: 37325617.doc (v. DRAFT 1A )

AR Transactions应收发票【Open Interface、Open API】 24 of 164

Company Confidential - For internal use only

Oracle ERP最佳技术实践 Doc Ref:

June 25, 2008

6. BOM Bills物料清单【Open Interface、Open API】

6.1. 快速参考

与Items接口一样,经常用来做期初数据导入,是每个功能顾问和技术顾问必需熟练使用的接口之一。

该接口可以实现物料清单的新建、更新和Common。如果想留下痕迹,可以考虑改用ECO。

参考点 功能导航 并发请求 接口表 API 错误信息表 接口Form 接口Report Debug Profile 详细例子 官方文档 数据验证包

内容 N: BOM/Bills/Bills Bill and Routing Interface N: BOM/Bills/Import bom_bill_of_mtls_interface bom_inventory_comps_interface bom_bo_pub.process_bom mtl_interface_errors N/A N/A MRP:Debug Mode oracle_iface_scripts_pkg.bom_bom_iface 115mfgapi.pdf:Oracle Manufacturing APIs and Open Interfaces Manual BOM_Validate_Bom_Component、 BOM_BO_PVT、BOM_VAL_TO_ID 6.2. 开发参考

接口表、错误信息表 Table List:

接口表 bom_bill_of_mtls_interface bom_inventory_comps_interface mtl_interface_errors 数据表 bom_bill_of_materials bom_inventory_components 说明 头表视图;可单独使用,如在做Common的时候 组件表视图,可单独使用 错误信息表 Table Relation:

bom_bill_of_mtls_interface.organization_id =

bom_inventory_comps_interface.organization_id AND

bom_bill_of_mtls_interface.item_number =

bom_inventory_comps_interface.assembly_item_number AND

nvl(bom_bill_of_mtls_interface.alternate_bom_designator,chr(0)) = nvl(bom_inventory_comps_interface.alternate_bom_designator,chr(0))

mtl_interface_errors

SELECT t.error_message, t.entity_identifier, i.transaction_type,

接口开发参考

File Ref: 37325617.doc (v. DRAFT 1A )

BOM Bills物料清单【Open Interface、Open API】 25 of 164

Company Confidential - For internal use only


深入浅出Oracle之常用接口开发参考(6).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:lesson 4

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: