You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@ofbiz.apache.org by Anil Patel <an...@hotwaxmedia.com> on 2009/06/03 08:13:55 UTC

deletePartyRelationship removes record and not set thruDate

Hi,
deletePartyRelationship service defined in PartyServices.xml file  
between line 806 and 812 removes record from database.  
PartyRelationship entity has thruDate. When entity has such field I  
expect to expire record instead of removing it.

Like in case of SFA, We create a Lead and then later a Lead is  
converted to Account. In lead conversion process I'll like to expire  
old PartyRelationship (of type LEAD_OWNER) and create new relationship  
of type ACCOUNT. This will preserve history.

I am wondering if its ok to change implementation of  
deletePartyRelationship method. If no body has any objections I'll  
modify it to set thruDate instead of removing record.

Regards
Anil Patel


Re: deletePartyRelationship removes record and not set thruDate

Posted by Jacopo Cappellato <ja...@hotwaxmedia.com>.
I also think it is fine to have low level services that do the CRUD  
operation; sometimes it may be useful to actually delete a record  
(even if there is an expiration date field); as David is suggesting,  
for the SFA I would use the update service or just create an  
expirePartyRelationship service and link it to the "Delete" button/link.
I agree with Anil that keeping history of party relationships in the  
SFA application is a good thing.

Jacopo


On Jun 3, 2009, at 8:36 AM, David E Jones wrote:

>
> Most of the lower level services named with "delete" do actually  
> remove records. Usually the thruDate is set through the "update"  
> service.
>
> What is shown in the UI is a totally different story... and there  
> sometimes "Delete" buttons actually call an update service and just  
> set a thruDate.
>
> The old ContactMech services are a bit of an exception to this, but  
> the only ones I can think of off the top of my head.
>
> -David
>
>
> On Jun 3, 2009, at 12:13 AM, Anil Patel wrote:
>
>> Hi,
>> deletePartyRelationship service defined in PartyServices.xml file  
>> between line 806 and 812 removes record from database.  
>> PartyRelationship entity has thruDate. When entity has such field I  
>> expect to expire record instead of removing it.
>>
>> Like in case of SFA, We create a Lead and then later a Lead is  
>> converted to Account. In lead conversion process I'll like to  
>> expire old PartyRelationship (of type LEAD_OWNER) and create new  
>> relationship of type ACCOUNT. This will preserve history.
>>
>> I am wondering if its ok to change implementation of  
>> deletePartyRelationship method. If no body has any objections I'll  
>> modify it to set thruDate instead of removing record.
>>
>> Regards
>> Anil Patel
>>
>


Re: deletePartyRelationship removes record and not set thruDate

Posted by David E Jones <da...@hotwaxmedia.com>.
Most of the lower level services named with "delete" do actually  
remove records. Usually the thruDate is set through the "update"  
service.

What is shown in the UI is a totally different story... and there  
sometimes "Delete" buttons actually call an update service and just  
set a thruDate.

The old ContactMech services are a bit of an exception to this, but  
the only ones I can think of off the top of my head.

-David


On Jun 3, 2009, at 12:13 AM, Anil Patel wrote:

> Hi,
> deletePartyRelationship service defined in PartyServices.xml file  
> between line 806 and 812 removes record from database.  
> PartyRelationship entity has thruDate. When entity has such field I  
> expect to expire record instead of removing it.
>
> Like in case of SFA, We create a Lead and then later a Lead is  
> converted to Account. In lead conversion process I'll like to expire  
> old PartyRelationship (of type LEAD_OWNER) and create new  
> relationship of type ACCOUNT. This will preserve history.
>
> I am wondering if its ok to change implementation of  
> deletePartyRelationship method. If no body has any objections I'll  
> modify it to set thruDate instead of removing record.
>
> Regards
> Anil Patel
>