* feat: add `Has Serial No` and `Has Batch No` fields in SRE
* chore: set `Has Serial No` and `Has Batch No` while creating SRE
* feat: add field `Reserved Serial and Batch` in SRE
* fix(ux): hide `Amend` button on cancelled SRE
* fix: add validation for SRE amended doc
* fix(ux): hide `Reserved Serial and Batch` Table for non-serial/batch item
* fix(ux): set `Display Depends On` for `Has Serial No` and `Has Batch No` in SRE
* fix(ux): make `serial_no` and `batch_no` fields read-only based on `has_serial_no` and `has_batch_no`
* chore: remove table `Serial and Batch Entry` fieldlabel
* fix(ux): set warehouse for new row
* fix(ux): make qty field read-only for serial item
* fix(ux): set rows qty to `1` before making the field read-only
* chore: add filters for serial no
* chore: add filters for batch no
* chore: don't show Serial NO if already selected
* chore: hide rate related fields
* feat: add field `Reservation Based On` in SRE
* chore: make `Reserved Qty` field editable in SCR
* chore: add method to get total reserved qty against a voucher
* fix: add validation for `Reserved Qty`
* fix: update SRE status and Voucher's Reserved Qty
* chore: enable `Track Changes` in SRE
* fix: add validation to prevent delivered SRE to get updated
* fix(ux): make fields `Reserved Qty` and `Reservation Based On` read-only for delivered SRE
* fix: consider voucher's delivered qty while calculating max reserved qty
* fix: add UOM validation for SRE Reserved Qty
* fix: SRE warehouse mismatch error in DN
* fix: auto cancel SRE on update if item is fully delivered for the SO
* fix: skip SRE creation for group warehouse
* feat: add `Set Warehouse` field in SO stock reservation dialog
* fix(ux): hide `Add Row` button in SO stock reservation dialog
* fix: group warehouse validation in SO
* fix(ux): don't show Batch No if already selected
* feat: add field `Auto Reserve Serial and Batch Nos` in `Stock Settings`
* refactor: SRE reserved qty validation
* feat: auto serial and batch reservation
* chore: add section for `Serial and Batch Reservation` in `Stock Settings`
* fix: make SRE sb_entries warehouse mandatory
* fix(ux): unreserved qty calculation
* fix: add validation for `Reserved Qty` against `Batch`
* refactor: combine `get_available_qty_to_reserve()` and `get_available_qty_to_reserve_batch()`
* fix: validate disabled batch
* fix: add validation to validate serial nos availability
* fix: update row qty if `Partial Reservation` is enabled
* fix: ignore reserved serial nos while getting available serial nos
* fix: add validation to prevent repeat batches
* fix(ux): add validation for duplicate Serial No
* fix: don't allow to update SRE with delivered stock
* fix: ignore reserved serial and batch if reservation based on is not Serial and Batch
* fix(ux): stock un-reservation confirmation before `Update Items`
* chore: return list instead os set
* feat: add field `Delivered Qty` in `Serial and Batch Entry`
* feat: option to get SO reserved stock in Delivery Note
* fix: ignore reserved batches while getting available batches
* chore: `conflicts`
* fix: incorrect available qty
* fix: 'str' object has no attribute 'nodes_'
* fix: `linter`
* fix(ux): hide `Get Items From > Stock Reservation` if Stock Reservation is disabled
* fix(ux): add `depends_on` for `Auto Reserve Serial and Batch Nos`
* fix(ux): hide Stock Reservation field description in submitted SO
* fix(ux): confirm before unreserve stock
* feat: option to create DN for reserved stock from SO
* fix: update delivered qty in SRE sb_entries
* fix: Delivery Note (Reserved Stock) based on Delivery Date
* fix(ux): SO `Update Items` confirmation on `Update` button click
* feat: add dialog box to select SRE to unreserve
* fix: `ZeroDivisionError` while saving the DN (Reserved Stock)
* fix: don't allow to create Pick List if stock is reserved against SO
* fix(ux): hide Create > Pick List button for SO with reserved stock
* refactor: map reserved stock by default in DN
* refactor: code cleanup and comments
* fix: don't allow Stock Reservation against SO having Pick List
* refactor: `create_stock_reservation_entries()`
* feat: add fields to hold Pick List ref in SRE
* feat: add field `Stock Reserved Qty` in Pick List Item
* feat: provision to reserve stock from Pick List against Sales Order
* fix: don't allow to update SRE if created against a Pick List
* fix(ux): confirm before unreserve stock in Pick List
* fix: don't allow to update Pick List having reserved stock
* fix: circular dependency while cancelling the DN created from Pick List with Reserved Stock
* chore: update `Max Reserve Qty` err msg to be more descriptive
* refactor: rename field `Reserve Stock on Sales Order Submission`
* fix: msg on partial reservation if disabled in stock settings
* chore: add field description for `Enable Stock Reservation`
* fix(test): `test_stock_reservation_against_sales_order`
* fix(test): `test_stock_reservation_against_sales_order`
* test: add test cases for serial and batch reservation
* fix: batch stock levels qty
* refactor: method `get_sre_reserved_qty_for_item_and_warehouse`
* feat: show `Reserved Stock` in item master stock levels
* feat: Reserved Stock Report
* fix(ux): SO stock reservation dialogs width
* refactor: get previous values from `_doc_before_save` instead of db
* fix(ux): make `Reservation Based On` read-only if created against Pick List
* feat: option to open `Reserved Stock` report from Sales Order
* fix(ux): Sales Order - Reserve and Unreserve dialog box
* fix: decrease SRE Delivered Qty on DN cancel
* fix(ux): hide `Unreserve` button once reserved stock is delivered
* chore: `linter`
* fix(test): `test_reserved_stock_report`
* test: add test case for DN cancellation
* chore: rename field `Auto Reserve Stock on Sales Order Submission`
* fix: `Insufficient Stock` error msg
- Consider negative opening stock in logic and neutralise it with +ve stock
- minor code refactor: class for FIFOSlots to generate chronological FIFO queue
mysql is generally smart enough to figure out which index is better
based on cardinality of index. While posting sort index is better for
low item high # of SLE scenario it's bad for high item variety each with
lower count of SLEs.
* refactor: shows opening balance from filtered from_date
* refactor: opening balance considered from filtered from_date in stock ledger
* fix: check if stock reco is opening and misc cleanups
* feat: Reposting logic for future finished/transferred item
* feat: added fields to identify needs to recalculate rate while reposting
* refactor: Set rate for outgoing and finished items
* refactor: Arranged fields in Stock Entry item table and added fields to identify finished and scrap item
* refactor: Arranged fields in Stock Entry item table and added fields to identify finished and scrap item
* refactor: Get outgoing rate for purchase return
* refactor: Get incoming rate for sales return
* test: Added tests for reposting valuation of transferred/finished/returned items
* feat: added incoming rate field in DN, SI and Packed Item table
* feat: get incoming rate for returned item
* fix: no error while getting valuation rate in stock entry
* fix: update stock ledger for DN and SI
* feat: update item valuation rate in PR and PI based on supplied items cost
* feat: SLE reposting logic for sales return and subcontracted item with test cases
* feat: update qty in future sle
* feat: repost future sle and gle via Repost Item Valuation
* fix: Skip unwanted function calling while reposting
* fix: repost sle for specific item and warehouse
* test: Modified tests for backdated stock reco
* fix: ignore cancelled sle in few methods
* feat: role allowed to do backdated entry
* feat: Show reposting status on stock valuation related reports
* fix: minor fixes
* fix: fixed sider issues
* fix: serial no fix related to immutable ledger
* fix: Test cases fixes related to perpetual inventory
* fix: Test cases fixed
* fix: Fixed reposting on cancel and test cases
* feat: Restart reposting item valuation
* refactor: Code cleanup using small functions and test case fixes
* fix: minor fixes
* fix: Raise on error while reposting item valuation
* fix: minor fix
* fix: Tests fixed
* fix: skip some validation ig gle made from reposting
* fix: test fixes
* fix: debugging stock and account validation
* fix: debugging stock and account validation
* fix: debugging travis for stock and account sync validation
* fix: debugging travis
* fix: debugging travis
* fix: debugging travis
* feat: Add stock ageing data to stock balance report
* fix: Use fifo queue warehouse wise
* fix: "Stock Ledger Entry" get query
* fix: Remove unwanted quotes in item details query
* fix: Check if no SLE was passed
* fix: Codacy
* fix: Add logic to include additional UOM columns
* fix: Show stock ageing data optionally