Sales Order Based Delivery Chalan Feature
Technical documentation
08/09/2024
Requirement Overview¶
This feature assists clients who cannot issue tax invoices directly from sales orders by enabling the conversion of sales orders into delivery chalans, which can then be converted into sales tax invoices, making the client’s work more easier.
Database Change¶
- Introduce a setting Enable_SOINDL to display the sales order number in the delivery chalan and control the flow of sales orders into the delivery chalan.
- Setting Enable_SOINDL = 0
- Hide the Sales Order field in the delivery chalan.
- Setting Enable_SOINDL = 1
- Show the Sales Order field in the delivery chalan.
- Partial Delivery is supported both by quantity and item wise but sales order will expire once delivery is done.
- Setting Enable_SOINDL = 2
- Show the Sales Order field in the delivery chalan.
- Full or Partial Delivery is supported both by quantity and item wise but sales order will expire only when all the SO quantity is delivered.
- Setting Enable_SOINDL = 0
UI Design¶
Functional Requirement¶
Requirement 1: Create the SO NO. field (Sales Order Number ) below the Ref No in the delivery chalan and also create the delivery person field below the cost center as shown in the figure.- SO NO . : Users must be able to select sales orders from a sales order selection box when clicking on Enter in the SO NO. field.Sales Order Selection Box needs to be filtered as per setting.
- Delivery Person : The system should allow users to manually enter a delivery person in the delivery person field. Each time the user saves the delivery challan, the entered data should be saved in the DISPENSEBY column in the table INVMAIN. If the user wants to use the same delivery person as before, it should be available in a dropdown menu.
Requirement 2 : If the user tick on Load Full SO Detail and select the Sales Order No then all the SO details should be filled automatically
OR ,
If the user unticks on Load Full SO Detail then when the user selects the Sales Order Number from the Selection Box ,Quantity Change popup box should load all data exactly as it appears in the selected sales order. It should allow the user to change the quantity and the changed quantity should validate the Sales Order quantity and the user can select items individually from the selected SO.
Note : Please add Sales Order Qty and Delivery Qty in the Quantity Change Pop Up Box.
- The data should be stored in the table INVMAIN.
- The inventory details should be saved in INVPROD AND INVPROD_SUMMARY
- The selected Sales Order Number should be stored in the REFORDBILL column of the INVMAIN table.
- Sales Order Backlog data should be stored in the RMD_ORDERDELIVERY table .
- In case of ENABLE_SOINDL = 1 then
- If the delivery chalan is saved with full or partial sales order quantity , then the selected sales order should expire and should not be listed in the Sales Order selection box.
- In case of setting ENABLE_SOINDL = 2
- If the delivery chalan is saved with full Sales Order Quantity,the selected sales order should expire and should not be listed in the Sales Order selection box.
- If the delivery chalan is saved with partial Sales Order Quantity,the selected sales order should not expire and should be listed in the Sales Order selection box till the SO quantity is fully delivered or SO is forcefully Closed.
Note : The workflow for a sales order based on a delivery challan is identical to the workflow for a sales order based on a tax invoice.