[ 
https://issues.apache.org/jira/browse/OFBIZ-5352?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13797065#comment-13797065
 ] 

Christian Carlow commented on OFBIZ-5352:
-----------------------------------------

I was thinking the same thing (soft delete) like is done for OrderItem.  Extra 
logic would be needed for handling the associated Shipment.

Invoice items are created for all of a Shipment's issued items when the 
statusId is changed to "Pick" or "Pack".  If one of those itemIssuance invoices 
are deleted (cancelled) then should the Shipment statusId be changed back to 
"Input"?  Doing so would mean adding logic to prevent duplicating already 
invoiced shipment items if the statusId were changed back to "Pick" or "Pack".  

It doesn't seem like the Shipment statusId should necessarily be dependent on 
whether all itemIssances have been invoiced or not.  However it does seem that 
there should be some logic to prevent a Shipment from being assigned a statusId 
of "Shipped" if not all of the Shipment's issued items have been invoiced 
unless there is some case where issued items should be shipped without 
necessarily having been invoiced but I cannot think of one.



> Invoice Item Removal doesn't work when billing records exist
> ------------------------------------------------------------
>
>                 Key: OFBIZ-5352
>                 URL: https://issues.apache.org/jira/browse/OFBIZ-5352
>             Project: OFBiz
>          Issue Type: Bug
>    Affects Versions: Release Branch 12.04
>            Reporter: Christian Carlow
>
> Invoice Items cannot be removed if the billing records have been created for 
> the item.  Billing records in tables such as orderItemBilling are created 
> when a Shipment statusId is changed to Pick or Pack which triggers the 
> invoice to be created.
> For such cases, after clicking the "Remove" button for an item on the Invoice 
> Items page, a primary key violation error occurs due to the invoice item 
> being referenced in orderItemBilling.  
> It seems the "removeInvoiceItem" service in InvoiceServices.xml should be 
> improved to delete billing records or any other records that would prevent 
> the invoice item from being removed.  
> The shipmentItemBilling table may also cause a primary key violation so it 
> should be handled also.
> It also seems that the billing information should be displayed and that is 
> should be able to be edited.  It seems that picking/packing a shipment is the 
> only way to associate an orderItem with an invoiceItem. 
> Shouldn't there exist a way to associate an invoice item with an order item 
> through some invoice editor?  Perhaps this should be a separate issue as an 
> Improvement.



--
This message was sent by Atlassian JIRA
(v6.1#6144)

Reply via email to