[
https://issues.apache.org/jira/browse/OFBIZ-12424?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17451807#comment-17451807
]
Pierre Smits commented on OFBIZ-12424:
--------------------------------------
Vis-a-vis this and PartyRelationship records of the 'From Party', there is no
need to move/remove such records. Any PartyRelationship record has lifespan
fields (fromDate and thruDate). Deactivating the 'From Party' should set the
end of the lifespan of the PartyRelationship records.
Such record can then be the basis for the new PartyRelationship record for the
new 'From Party' and there should be a check whether such PartyRelationship
record already exists. And if it already exists it should not override the
original fromDate value.
> Link Party feature stop the EECA rules globally
> -----------------------------------------------
>
> Key: OFBIZ-12424
> URL: https://issues.apache.org/jira/browse/OFBIZ-12424
> Project: OFBiz
> Issue Type: Bug
> Affects Versions: Release Branch 18.12, Release Branch 17.12, Trunk
> Reporter: Rohit Koushal
> Assignee: Rohit Koushal
> Priority: Major
> Attachments: OFBIZ-12424.patch, image-2021-12-01-17-18-37-279.png,
> image-2021-12-01-17-20-21-196.png, image-2021-12-01-18-18-40-267.png
>
>
> In the Link Party Feature({_}*partymgr > profile > Link Party*{_}) there is a
> code that stops EECA rules globally in the system and as a result it caused
> major issues in the process which are driven from EECA's.
> *PartyServices.java*
> {code:java}
> public static Map<String, Object> linkParty(DispatchContext dctx, Map<String,
> ? extends Object> context) {
> Delegator delegator = dctx.getDelegator();
> Locale locale = (Locale) context.get("locale");
> delegator.setEntityEcaHandler(null);
> .
> .
> .
> } {code}
>
> In the above code you can see that we are updating EntityEcaHandler on
> delegator object to null.
> *GenericDelegator.java*
> {code:java}
> protected void evalRules(String event, String currentOperation, GenericEntity
> value, boolean isError) throws GenericEntityException {
> if (entityEcaHandler == null) {
> return;
> }
> entityEcaHandler.evalRules(currentOperation, eventMap, event, value,
> isError);
> } {code}
> On any DB operation(find, create and store) using delegator above method run
> and due to null EntityEcaHandler object it won't execute any EECA's globally
> in the system
--
This message was sent by Atlassian Jira
(v8.20.1#820001)