Oracle EBS中的“客户”、"客户地点"、‘订单’之间的关系
2012-01-27 21:53
351 查看
什么是“客户”
按系统的结构,一个客户,下面有多个地点。过去一直理解为,客户的名称必须为客户“集团”的名称,各分公司、子公司因当建立为不同的客户地址。其实没有必要这个样子。
一个客户可以理解为是一个对方的业务实体(OU),只要是独立核算的,独立业务往来的都可能 是一个客户。也就是“分公司”、“子公司”都应当建立为独立的客户。
通过设置客户关系(也可以通过系统选项把条件放的更松),可以实现一个子公司订购产品,一个子公司收单付款,再由另一个子公司收货,甚至再继续交付最终使用用户这样多方业务往来的情境。
并且在AR模块中,系统的标准报表,都是统计到客户层的,而非客户地点层。所以将客户理解为大的集团现在我个人 理解并不是很合适,而正确的应当是一个独立的业务实体(子公司)。
2、常见的地点用途
首先必不可少的是客户收单方、收货方。
收单方按订单上的字段理解为"Invoice to",也就是收“发票”的单位。收货方字段为“ship to ”,还有一个翻译为最终收获方“deliver to”,按英文的字面理解。在复杂业务情况下,货物一般不直接送到客户公司中,可能是送到码头、车站。那这个码头、车站……就应当是ship to,也就是交货地点,我方要负责送达的地点。(这也是shipping模块中直接看到的),而送到地点后,收货客户就是“deliver to”,也就是货物最后要送达的地方
另外还有一个“标识地址”的功能,一个客户可以有多个地址,但只能将一个地址设置为“标识地址”。这就是这个客户最直接的地址。如果客户是一家公司,那就是公司总部的地址。
3、如何由订单关联到客户地址、客户名称
今天做报表时折腾了好久,总算简单的理清了一下,不过还没有仔细考虑各表的用途。
客户地址的关联关系为:oe_order_headers_all -> hz_cust_site_uses_all -> hz_cust_acct_sites_all -> hz_party_sites -> hz_locations
客户名称的关联关系为:oe_order_headers_all -> hz_cust_accounts -> HZ_PARTIES
销售订单到客户收货地址的关联
oe_order_headers_all -> hz_cust_site_uses_all -> hz_cust_acct_sites_all -> hz_party_sites -> hz_locations -> hz_parties
销售订单到客户收货地址的关联
oe_order_headers_all -> hz_cust_site_uses_all -> hz_cust_acct_sites_all -> hz_party_sites -> hz_locations -> hz_parties
select ooh.order_number,hps.party_id,hp.party_number, hp.party_name, hps.party_site_id,hps.party_site_number, hl.location_id,hl.country,hl.address1,hl.address2,hl.address3, hl.address4 from oe_order_headers_all ooh, hz_cust_site_uses_all hcsua, hz_cust_acct_sites_all hcasa, hz_party_sites hps, hz_locations hl, hz_parties hp where ooh.ship_to_org_id = hcsua.site_use_id AND hcsua.cust_acct_site_id = hcasa.cust_acct_site_id AND hcasa.party_site_id = hps.party_site_id
AND hl.location_id = hps.location_id and hps.party_id = hp.party_id and ooh.order_number = '50064'
----收单地址
select ooh.order_number, hps.party_id, hp.party_number, hp.party_name, hps.party_site_id, hps.party_site_number, hl.location_id, hl.country, hl.address1, hl.address2, hl.address3, hl.address4 from oe_order_headers_all ooh, hz_cust_site_uses_all hcsua, hz_cust_acct_sites_all hcasa, hz_party_sites hps, hz_locations hl,hz_parties hp where ooh.invoice_to_org_id = hcsua.site_use_id(+) AND hcsua.cust_acct_site_id = hcasa.cust_acct_site_id(+) AND hcasa.party_site_id = hps.party_site_id(+) AND hl.location_id(+) = hps.location_id and hps.party_id = hp.party_id and ooh.order_number = '50064'
hz_cust_site_uses_all 上面的site_user_code = BILL_TO 代表是收单方,primary_flag等于Y就是主要收单方
按系统的结构,一个客户,下面有多个地点。过去一直理解为,客户的名称必须为客户“集团”的名称,各分公司、子公司因当建立为不同的客户地址。其实没有必要这个样子。
一个客户可以理解为是一个对方的业务实体(OU),只要是独立核算的,独立业务往来的都可能 是一个客户。也就是“分公司”、“子公司”都应当建立为独立的客户。
通过设置客户关系(也可以通过系统选项把条件放的更松),可以实现一个子公司订购产品,一个子公司收单付款,再由另一个子公司收货,甚至再继续交付最终使用用户这样多方业务往来的情境。
并且在AR模块中,系统的标准报表,都是统计到客户层的,而非客户地点层。所以将客户理解为大的集团现在我个人 理解并不是很合适,而正确的应当是一个独立的业务实体(子公司)。
2、常见的地点用途
首先必不可少的是客户收单方、收货方。
收单方按订单上的字段理解为"Invoice to",也就是收“发票”的单位。收货方字段为“ship to ”,还有一个翻译为最终收获方“deliver to”,按英文的字面理解。在复杂业务情况下,货物一般不直接送到客户公司中,可能是送到码头、车站。那这个码头、车站……就应当是ship to,也就是交货地点,我方要负责送达的地点。(这也是shipping模块中直接看到的),而送到地点后,收货客户就是“deliver to”,也就是货物最后要送达的地方
另外还有一个“标识地址”的功能,一个客户可以有多个地址,但只能将一个地址设置为“标识地址”。这就是这个客户最直接的地址。如果客户是一家公司,那就是公司总部的地址。
3、如何由订单关联到客户地址、客户名称
今天做报表时折腾了好久,总算简单的理清了一下,不过还没有仔细考虑各表的用途。
客户地址的关联关系为:oe_order_headers_all -> hz_cust_site_uses_all -> hz_cust_acct_sites_all -> hz_party_sites -> hz_locations
客户名称的关联关系为:oe_order_headers_all -> hz_cust_accounts -> HZ_PARTIES
销售订单到客户收货地址的关联
oe_order_headers_all -> hz_cust_site_uses_all -> hz_cust_acct_sites_all -> hz_party_sites -> hz_locations -> hz_parties
销售订单到客户收货地址的关联
oe_order_headers_all -> hz_cust_site_uses_all -> hz_cust_acct_sites_all -> hz_party_sites -> hz_locations -> hz_parties
select ooh.order_number,hps.party_id,hp.party_number, hp.party_name, hps.party_site_id,hps.party_site_number, hl.location_id,hl.country,hl.address1,hl.address2,hl.address3, hl.address4 from oe_order_headers_all ooh, hz_cust_site_uses_all hcsua, hz_cust_acct_sites_all hcasa, hz_party_sites hps, hz_locations hl, hz_parties hp where ooh.ship_to_org_id = hcsua.site_use_id AND hcsua.cust_acct_site_id = hcasa.cust_acct_site_id AND hcasa.party_site_id = hps.party_site_id
AND hl.location_id = hps.location_id and hps.party_id = hp.party_id and ooh.order_number = '50064'
----收单地址
select ooh.order_number, hps.party_id, hp.party_number, hp.party_name, hps.party_site_id, hps.party_site_number, hl.location_id, hl.country, hl.address1, hl.address2, hl.address3, hl.address4 from oe_order_headers_all ooh, hz_cust_site_uses_all hcsua, hz_cust_acct_sites_all hcasa, hz_party_sites hps, hz_locations hl,hz_parties hp where ooh.invoice_to_org_id = hcsua.site_use_id(+) AND hcsua.cust_acct_site_id = hcasa.cust_acct_site_id(+) AND hcasa.party_site_id = hps.party_site_id(+) AND hl.location_id(+) = hps.location_id and hps.party_id = hp.party_id and ooh.order_number = '50064'
hz_cust_site_uses_all 上面的site_user_code = BILL_TO 代表是收单方,primary_flag等于Y就是主要收单方
相关文章推荐
- Oracle EBS中的“客户”、"客户地点"、‘订单’之间的关系
- 无法解决 equal to 操作中 "Chinese_PRC_CI_AS" 和 "Chinese_PRC_BIN" 之间的排序规则冲
- smarty内的赋值变量默认必须以"$"开头,且变量与括号之间不能有空格
- 关于郑州与开封两市之间的"郑开高速路"的看法
- 剖析IT职业教育与学员之间的"定位"关系!! 推荐
- SAP S4 BP事务代码的业务伙伴和供应商,客户之间的表关系
- 无法解决 equal to 操作中 "SQL_Latin1_General_CP1_CI_AS" 和 "Chinese_PRC_CI_AS" 之间的排序规则冲突
- 基本类型和包装类之间的"=="和equals()方法
- BOS打开单据的时候出现:无法解决 equal to 运算中 "Chinese_PRC_CS_AS" 和 "Chinese_PRC_CI_AS" 之间的排序规则冲突。
- "Chinese_PRC_CI_AS" 和 "Chinese_PRC_90_CI_AI" 之间的排序规则冲突问题
- IBM大型主机技术-"探索者的艰辛" 时间:2006-12-16日 星期六下午 14:30地点:2教307
- hibernate的一对多双向关联映射----客户和订单关系
- sql:无法解决 equal to 操作中 "Chinese_PRC_CI_AS" 和 "Chinese_Taiwan_Stroke_CI_AS" 之间的排序规则冲突。
- "方-位-角"与"转-角"关系图
- 无法解决 equal to 运算中 "Chinese_PRC_CI_AS" 和 "Chinese_PRC_90_CI_AI" 之间的排序规则冲突。的解决方法
- "基础连接已经关闭: 未能为 SSL/TLS 安全通道建立信任关系"证书验证失败的解决过程(3)
- Item 38:通过组合表示"拥有"或"以...实现"的关系
- 作为项目经理,如何处理好与不同类型客户之间的关系?
- 无法解决 equal to 运算中 "Chinese_Simplified_Pinyin_100_CI_AS" 和 "Chinese_PRC_CI_AS" 之间的排序规则冲突
- abap-SD-客户主数据 "订单组合标志" 引发的错误