看一下标准的OPPT是如何determine organization的:
查看Transaction Type OPPT的配置,找到Organization Data Profile:
SPRO->CRM->Transactions->Basic Settings->Define Transaction Types
可以看到对应的Organizational Model Determin. Rule为10000144, 而Responsibilities Determin. Rule没有配。
参考CR100上的解释:
Organizational Model Rule是需要根据search的结果来确定Organizational Unit. Responsibilities Rule是直接指定对应的Organizational Unit.
查看Determination Rule:
SPRO->CRM->Master Data->Organizational Management->Organizational Data Determination->Maintain Determination Rules
找到对应的10000144的rule:
可以看到对应的determination用的FM是CRM_ORGMAN_ORGOBJECTS_FIND_4
点击Container tab可以看到rule 10000144配置的parameter:
前两个是针对Sales Transaction的,后两个是Service Transaction,根据解释FM CRM_ORGMAN_ORGOBJECTS_FIND_4是根据BP的Sales Area来查找对应的Organizational Unit。
进入CRM_ORGMAN_ORGOBJECTS_FIND_4的代码:
从Container里面拿到BP Number, 在根据BP Number拿到对应的GUID:
还有一个更抽象的查询Org的API FM: CRM_ORGMAN_DETERMINE_ORGOBJS,该API返回sales areas结果集。