Hi Swapnil, You may want to consider having the following modifications:
1) Item Issuance & Shipment Receipt entities: Add columns (i.e. InventoryTransferHeaderId & InventoryTransferId ) to support inventory transfer with shipment. 2) Inventory Transfer Adjustment entity: For the tax. 3) Inventory Transfer Header entity: For group transfer (as discussed earlier) Regards, James Yong On 2017-10-19 19:12, Swapnil Shah <swapnil.s...@hotwaxsystems.com> wrote: > Let me try adding few more insights/details with regard to stock transfer > flow. > > > > As we are referring to intra-organizational goods movement i.e., so > movement of goods would be for and within the same business entity. Here > are few pointers (if it can help in assessing any kind of technical > trade-off that needs to be made with respect to current implementation) : > > - Stock Transfer per se are going to involve goods exchange but there is > no real time money exchange involved between shipper and receiver as they > are both the very same business entity in the legal sense. So business > might not be necessarily interested in generating any sales or purchase > invoice against such transactions. Nor will there be any real time payment > or invoice settlement required at either end. > - In financial terms there are tax implications but its applicability > varies depending upon the laws of the land or country/state-specific tax > regulations. For example: > - In US the very same item transferred in certain state might be > taxable at certain rate but totally exempted or taxed at > different rate in > another (someone with better understanding of US or EUR tax > regulations can > throw more light and let us know if currently intra-company > goods transfer > are even taxable or not) > - In India, the tax implications in the case of goods transfer is now > shifted on the supply of goods. As a result: > - For inter-state transfer *there is tax liability and in this > case, only a separate âTax Invoiceâ* needs to be issued along > with > stock transfer note and supporting document (depending on the > inter-state > regulations while crossing the state borders) > - For intra-state transfers if business entity is having single > registration for originating and receiving branches with tax > authority then *there > is no tax liability and hence no Tax Invoice *needs to be issue. > Only Delivery Note should suffice to transfer the goods. > - For intra-state transfers if business entity is having different > registration for originating and receiving branches with tax > authority then *there > is tax liability and in this case, only a separate âTax Invoiceâ* > needs to be issued along with stock transfer note. > - Any kind of applicable tax (if any) needs to be paid to the state > only and a separate Tax Invoice needs to be generated in this case. > - The transfer shipment needs to follow certain status transitioning > i.e. âRequestedâ Ã âIn-reviewâ Ã âShippedâ (from originating > facility) Ã > âIn-transitâ Ã âReceivedâ (at destination facility). As it needs > to be > tracked internally. > - The deemed transaction value and tax liability against the transferred > goods should hit the accounting books against appropriate GL accounts per > store and a separate GL account against the tax authority (in accordance > with business rules). > - Later at some point of time we may also like to systemically build the > Transfer Requirement Planning and consolidate all the individual > product-wise transfer ad-hoc or planned requests/requirement for a common > destination facility (i.e., once any feature like > https://issues.apache.org/jira/browse/OFBIZ-6964 gets implemented) > > > > I hope it should help to come up with a generic enough solution that can > work across geographies with required level of flexibility. > > > > Thanks, > > Swapnil > > > > -----Original Message----- > From: James Yong [mailto:jamesy...@apache.org] > Sent: Wednesday, October 18, 2017 9:56 PM > To: dev@ofbiz.apache.org > Subject: Re: RE: Quantity missing for inventory transfer records > > > > Hi Vaibhav, > > > > My random thoughts on the possible implementation: > > > > We can have a new InventoryTransferHeader (ITH) entity as mentioned earlier > to manage group transfer. > > > > Having Quality attribute to InventoryTransfer entity is reasonable since we > may have an approval process before actual transfer. > > > > User doing inventory transfer can have an Shipment option to enable > shipment. > > > > When inventory transfer is approval and Shipment option is selected, a > corresponding Sales Order (SO) and Purchase Order (PO) will be created. > > > > You may want to use a different Order Type for these transfer SO & PO. > > > > No direct changes are allowed for transfer SO & PO. Changes can only be > made at ITH and the associated Inventory Transfer entities. > > > > There should be an attribute in SO & PO to link to ITH. > > > > There is also a need to enhance the reservation function of SO to specify > the inventory item id for reservation. > > > > Regards, > > James Yong > > > > On 2017-10-16 23:05, Vaibhav Jain <vaibhav.j...@hotwaxsystems.com> wrote: > > > Hello Swapnil/James, > > > > > > There are many dependencies of inventory transfer in Business > > > Requirements > > > like: > > > > > > 1. In Inventory transfer generally, there is more than one product in > > > any inventory transfer. > > > 2. Inventory transfer should have an association with Shipment which is > > > missing. > > > 3. Inventory transfer should have an association with Accounting which > > > is missing. > > > 4. Tax should be calculated(Applicable in India after GST) on inventory > > > transfer. > > > 5. If the tax is exempted then need "Stock transferring" documentation. > > > 6. Tracking of Transferred inventory. > > > 7. Tracking of associated peoples(Picker, Packer, driver) with the > > > respective transfer order. > > > > > > Most of the attribute of inventory transfer is belongs to Order > > > management system. Hence we should have a flow to create a "Transfer > > > Order" for inventory transfer. > > > > > > Inventory Transfer can be treated as "Receive product". Business does > > > not have workflows to receive the product directly i.e. PO should be > > > created to receive the product. If anyone wants to surpass the PO > > > workflow and want to receive the product then "Receive product" is > > > useful. Same for inventory transfer we should have a flow of transfer > > > order and inventory transfer can be used like "Receive Product" workflow. > > > > > > Please share your thoughts > > > > > > Thanks & Regards > > > > > > Vaibhav Jain > > > Hotwax Systems, > > > vaibhav.j...@hotwaxsystems.com > > > > > > On Mon, Oct 16, 2017 at 7:02 PM, Swapnil Shah < > > > swapnil.s...@hotwaxsystems.com> wrote: > > > > > > > Yes James, > > > > ITH should work. I would prefer to have ITH tightly coupled with > > > > InventoryTransfer(IT) i.e. even in case of single item transfer > > > > create corresponding entries in ITH and IT both to maintain data > > > > integrity. Also, We can try tying up Inventory Transfer with > > > > Shipment through ITH itself or a separate entity e.g., > InventoryTransferShipment. > > > > > > > > Thanks & Regards, > > > > Swapnil > > > > > > > > -----Original Message----- > > > > From: James Yong [mailto:jamesy...@apache.org <jamesy...@apache.org>] > > > > Sent: Sunday, October 15, 2017 9:26 PM > > > > To: dev@ofbiz.apache.org > > > > Subject: Re: RE: Quantity missing for inventory transfer records > > > > > > > > Hi Swapnil, > > > > > > > > Another possible solution is to have an header entity, e.g. > > > > InventoryTransferHeader (ITH), containing additional or common info > > > > related to the group transfer. > > > > For group transfer, ITH is created and each InventoryTransfer will > > > > contain a FK to ITH. > > > > For single transfer, ITH can be empty. > > > > > > > > Regards, > > > > James Yong > > > > > > > > On 2017-10-14 18:59, Swapnil Shah <swapnil.s...@hotwaxsystems.com> > wrote: > > > > > Folks, > > > > > One very frequent use case that we encounter is that any transfer > > > > > request initiated from one facility to another is generally for > > > > > multiple products as they all need to go in a single shipment > > > > > against transfer request so as to be cost effective. > > > > > > > > > > Current schema has the limitation that any given inventory > > > > > transfer can only be for single inventory item (and hence only one > product). > > > > > Would it make sense and be feasible if we enhance the existing > > > > > design such that multiple products/inventory can be tied with a > > > > > single transfer > > > > > (InventoryTransferId) request (possibly by having > > > > > InventoryTransferId > > > > > + InventoryItemId as PK) and shipment is tied up with it as well. > > > > > + Of > > > > > course by leaving a proper audit trail via InventoryItemDetail etc. > > > > > > > > > > Let's share any further thoughts or similar business cases and > > > > > then we can try to support it if it is generic enough. > > > > > > > > > > Thanks & Regards, > > > > > Swapnil > > > > > > > > > > -----Original Message----- > > > > > From: James Yong [mailto:jamesy...@apache.org <jamesy...@apache.org>] > > > > > Sent: Friday, October 13, 2017 9:36 PM > > > > > To: dev@ofbiz.apache.org > > > > > Subject: Re: Quantity missing for inventory transfer records > > > > > > > > > > Hi all, > > > > > > > > > > It is better to add InventoryTransferId column to Inventory Item > > > > > Detail > > > > > (IID) table so that we easily link the IID record to the Inventory > > > > > Transfer table. > > > > > > > > > > What do you think? > > > > > > > > > > Regards, > > > > > James Yong > > > > > > > > > > On 2017-10-13 23:18, "James Yong"<jamesy...@apache.org> wrote: > > > > > > Hi Suraj, > > > > > > > > > > > > Shouldn't the transfer detail be stored at Inventory Item Detail > > > > table? > > > > > > > > > > > > Regards, > > > > > > James Yong > > > > > > > > > > > > On 2017-10-13 16:44, Suraj Khurana > > > > > > <suraj.khur...@hotwaxsystems.com> > > > > > wrote: > > > > > > > Hello, > > > > > > > > > > > > > > While creating inventory transfers, a new inventory item is > > > > > > > created and successfully gets updated after completing > > > > > > > inventory > > > > transfer. > > > > > > > As per current implementation, we don't store transferred > > > > > > > quantity anywhere in *InventoryTransfer *entity and quantity > > > > > > > is only available on the newly created inventory item. Problem > > > > > > > is, it gets deluded on time being and user won't get exact > > > > > > > quantity for which > > > > > inventory transfer was initialized. > > > > > > > > > > > > > > IMO, we should maintain transferred quantity at > > > > > > > *InventoryTransfer *entity as well for proper history maintenance > of records. > > > > > > > > > > > > > > Please share your thoughts on this. > > > > > > > > > > > > > > -- > > > > > > > Thanks and Regards, > > > > > > > *Suraj Khurana* | Sr. Enterprise Software Engineer *HotWax > > > > > > > Commerce* by *HotWax Systems* Plot no. 80, Scheme no. 78, > > > > > > > Vijay Nagar, Indore, M.P. India 452010 > > > > > > > > > > > > > > > > > > > > > > > > > >