How to transfer stock of one item to another item?

Suggestion:
For transfering stock from one item to another item user can use Receipt Back flush.
This option we can user multiple purpose, like structure conversion one material transfer as other item code or grade. When underground tanker having multiple AR not convert to one AR no using Solvent Type. For scrap generating we can use. For job-work related activity control we can use this option.
Logic:
Back Flush Type:
There are 4 below types, by default system is set type as ‘Solvent’
1.Solvent
This type is use solvent stored in tanks.
Note: 1.1) Lot no and quantity will not be editable where back flush type selected as solvent.
1.2) QC required is populated from site item master as QC required field value.
1.3) System will allow that item code where parent code and unit of item master same as header item code’s parent code and unit.
1.4) Quarantine material will not be allocated
2. Structure Conversion
This type is use for material transfer one code to another code. For this type both code’s parent code should be same. And if the header and detail items UOM is different the UOM conversion master must be required.
Note: 2.1) Quantity is not editable where back flush type selected as solvent.
2.2) QC required is populated from site item master as QC required field value.
2.3) Location code should be quarantine location code, if QC required is yes else approved location code.
3. Job Work
This type is use for job work related transactions.
Note: 3.1) QC required set from site item master as QC required field value.
3.2) BOM code is set from the site item master , if bill of material code is defined for the item code in site item master.
4. Scrap generation
This transaction is used for scrap Inventory generation.
Note: 4.1) Item code defined as “Scrap” will be accepted
4.2) System should allow that item code where units of item master same as header item code’s unit.
4.3) QC required set from site item master as QC required field value.
4.4) Location code set as quarantine location code, if QC required is -yes else approved location code.

Item Code: Select the required item code.

BOM: If back flush type selected as Job Work then system will set the

BOM code: from site item master field is BOM Code, else enter the required BOM code.

Lot No: If the back flush type selected as Scrap Generation or Job Work then system will allow to enter the Lot No else system will not allow to enter the Lot No.

Lot Sl: By default system will set as ‘1S’.

Quantity: If user has selected back flush type as ‘Job Work’ then only system will allow to enter the quantity else system will calculated the quantity from whatever quantity entered in details.

QC Reqd: System will set from site item master field value is QC Reqd.
Location If QC Reqd selected as ‘Yes’ then enter the location code from quarantine group else enter the location code from approved group of the locations.

Mfg Date: If user has selected back flush type as Job Work or Scrap Generation then only allow to edit the same.
1) If user has selected back flush type as Solvent then system will set the Mfg Date from stock which lot no expiry date is less that lot no Mfg date will set and not allow to edit.
2) If user has select back flush type as ‘Structure Conversion’ the system will set Mfg. Date from stock for which item entered in detail.

Grade: By default system will set as ‘LC’.

Exp Date: If user has selected back flush type as Job Work or Scrap Generation then system will set as Mfg Date + item master’s Shelf Life field value is shelf life.
1) If user has selected back flush type as Solvent then the system will set the Exp Date from stock which lot no expiry date is less that lot no Mfg date will be set .
2) If user has select back flush type as ‘Structure Conversion’ the system will set Exp. Date from stock for which item entered in detail.

Site Code Mfg: System will set from stock for which lot no enter in detail in case of user has selected back flush type as Solvent or Structure Conversion.
1) If user has selected back flush type as Scrap Generation or Job Work then user has to enter the same.
2) If item master having supplier sours as Manufacturing then only value is required else N/A.

Amount: System will calculate auto from what ever items are entered in details. (Sum of Quantity * Rate of details records) and not allow to edit.

In Details tab:

Item Code: Enter required item code.

Unit: Item Set unit from Item master for selected item code – not editable

Location: Enter the location code which item’s location having a stock else click on stock button and drop down the required data from stock window.

Unit Doc: Set unit from header for selected item code in header – not editable

Lot No: Enter the Lot No which item’s Lot No having a stock else click on stock button and drop down the required data from stock window.
Lot Sl: Enter the Lot Sl which item’s Lot Sl having a stock else click on stock button and drop down the required data from stock window.