The restructuring of the entity to make it more flexible sounds fine.
The first question though would whether or not anyone is using this.
If so it's a bit of a pain because data migration is needed for the
update.
The pattern for this sort of update would be:
1. change the entity name from OrderItemAssociation to
OldOrderItemAssociation
2. set the table name on the entity to ORDER_ITEM_ASSOCIATION
3. create a service to move data from the OldOrderItemAssociation
entity to the new OrderItemAssoc entity
-David
On Dec 5, 2006, at 12:25 AM, Jacopo Cappellato wrote:
Hi,
I really think we should refactor the OrderItemAssociation entity,
in order to make it more generic.
Right now the entity has the following fields:
<field name="salesOrderId" type="id-ne"/>
<field name="soItemSeqId" type="id-ne"/>
<field name="purchaseOrderId" type="id-ne"/>
<field name="poItemSeqId" type="id-ne"/>
I think that we should at least modify them in this way:
<field name="orderId" type="id-ne"/>
<field name="orderItemSeqId" type="id-ne"/>
<field name="orderIdTo" type="id-ne"/>
<field name="orderItemSeqIdTo" type="id-ne"/>
<field name="orderItemAssocTypeId" type="id-ne"/>
We should also rename it to "OrderItemAssoc" and create the new
entity "OrderItemAssocType".
In this way we could link not just a sales order to a purchase
order, but also two sales orders together (for example a
replacement order).
I think we should also add the ability to associate sub-item
quantities, maybe adding an OrderItemAssoc.quantity field and
adding two OrderItemAssoc.shipGroupSeqId and
OrderItemAssoc.shipGroupSeqIdTo.
So the final entity should look like:
OrderItemAssoc
<field name="orderId" type="id-ne"/> PK
<field name="orderItemSeqId" type="id-ne"/> PK
<field name="shipGroupSeqId" type="id-ne"/> PK
<field name="orderIdTo" type="id-ne"/> PK
<field name="orderItemSeqIdTo" type="id-ne"/> PK
<field name="shipGroupSeqIdTo" type="id-ne"/> PK
<field name="orderItemAssocTypeId" type="id-ne"/> PK
<field name="quantity" type="floating-point"/>
Does it make sense?
If it's ok for all of you, I could take care of this migration
since I'm working on the return of type "replacement" and on drop
shipments and I'll need some of this features soon.
Jacopo