Commit Graph

166 Commits

Author SHA1 Message Date
Ankush Menat
d130233ffc test: fix expected test failures 2022-02-21 18:02:40 +05:30
Ankush Menat
102fff24c8 refactor: convert query to QB and make creation optional 2022-02-21 18:02:40 +05:30
Ankush Menat
ab926521bd fix: correct incoming rate for batched items 2022-02-21 18:02:40 +05:30
Ankush Menat
342d09a671 feat: get_valuation_rate batch wise
This function is used to show valuation rate on frontend and also as
fallback in case values aren't available. Add "batch_no" param to get
batch specific valuation rates.

Co-Authored-By: Alan Tom <2.alan.tom@gmail.com>
2022-02-21 18:02:40 +05:30
Ankush Menat
ce0514c8db feat: batch wise valuation rates
start with most used case: negative inventory isn't enabled

- simple addition of qty and value when new batch qty is added
- fetch outgoing rate from stock movement of specific batch
2022-02-21 18:02:40 +05:30
Ankush Menat
eb8b424722
feat: item-wise negative stock setting (#29761) 2022-02-12 13:08:28 +05:30
Ankush Menat
f089d39675 refactor: better method name
Co-authored-by: gavin <gavin18d@gmail.com>
2022-02-06 20:12:15 +05:30
Ankush Menat
97e18a1cd0 feat: allow selecting LIFO valuation 2022-02-06 20:12:11 +05:30
Ankush Menat
b855030e7c refactor: valuation class to allow extending 2022-02-06 20:12:11 +05:30
Marica
dbda10e092
Merge pull request #28987 from ankush/fix/srvaluation
fix: incorrect serial no valuation
2022-01-17 16:55:21 +05:30
Ankush Menat
66bf21f143
fix(patch): sle.serial_no = "\n" causes incorrect queue (#29306)
This happens due to old data.
2022-01-16 20:45:59 +05:30
Ankush Menat
82ea958730
fix: ignore cancelled SLEs (#29303) 2022-01-16 20:19:04 +05:30
Ankush Menat
b0cf6195e9
fix: only add stock queue if FIFO (#29302) 2022-01-16 13:02:23 +05:30
Ankush Menat
b9642a1036 fix: incorrect incoming rate computation for sr no 2022-01-16 12:39:34 +05:30
Ankush Menat
ff9a6e8e89 fix: correct bin qty on backdated transactions
When making a backdated transactions current balance qty depends on
evaluation of whole ledger inbetween, instead of doing that just fetch
the last sle's qty_after_transaction when future transactions are
detected against SLE

fix: don't update bin's actual_qty

1. it's already updated by repost_current_voucher
2. update if future sle exists
2021-12-20 20:05:49 +05:30
Ankush Menat
107b404105 chore: rename FifoValuation to FIFOValuation 2021-12-20 13:20:03 +05:30
Ankush Menat
a00d8d02b2 refactor: outgoing rate and defaults for remove_stock 2021-12-20 13:20:03 +05:30
Ankush Menat
4b29fb6d08 refactor: move Fifo Valuation to a new class 2021-12-20 13:20:03 +05:30
Ankush Menat
5eba57528c fix: check future negative stock for batches
batch's ledger is only maintained in form of `actual_qty` on batch's
SLEs. To validate if batch has any negative qty in future, cumulative
total of `actual_qty` is required to ensure it never goes negative.
2021-12-08 15:52:40 +05:30
Ankush Menat
cef84c25a7 refactor: simplify the way SLEs are submitted 2021-12-03 14:51:25 +05:30
Ankush Menat
97060c45e9 refactor: replace misleading variable name 2021-12-03 14:51:25 +05:30
Ankush Menat
aa024fc9da fix: ignore permissions while creating repost
If user reached this code then they already have permission to create
stock transaction, hence ignore permission checks while
creating/cancelling repost item valuation entries.
2021-11-22 12:40:18 +05:30
Ankush Menat
8fe5feb6a4 chore: remove all six compat code 2021-11-05 11:16:29 +05:30
Ankush Menat
6098e92ba9 chore: remove utf-8 compat code 2021-11-05 11:16:29 +05:30
Ankush Menat
f7ffe04a4b fix: use warehouse to find company 2021-11-01 14:13:56 +05:30
Ankush Menat
a0727b2e82 fix: pass company while fetching valuation rate
If company is not supplied and valuation rate is 0, then default
company is used for checking if perpetual inventory is enabled or not.
This makes little sense as different companies can have different
setting for perpetual inventory.
2021-11-01 14:13:56 +05:30
Ankush Menat
4ebae7c5dc
Merge branch 'develop' into optimize-get-item-details 2021-10-12 20:39:49 +05:30
Ankush Menat
7bafa11d57
fix: undo changes to allow negative stock flag 2021-10-12 20:39:10 +05:30
Deepesh Garg
6f107da165
perf: Add indexes in stock queries and speed up bin updation #27758
perf: Add indexes in stock queries and speed up bin updation
2021-10-12 20:15:55 +05:30
Saqib Ansari
c7fc609236 perf: skip insertion of stock ledger entry 2021-10-12 13:30:40 +05:30
rohitwaghchaure
e6a1ad8016
fix: not able to submit stock entry with 350 items (#27523) 2021-09-15 20:42:47 +05:30
Frappe PR Bot
d4d5e2786f
fix: Maintain same rate in Stock Ledger until stock become positive (#27227) (#27478)
* fix: Maintain same rate in Stock Ledger until stock become positive

* fix: Maintain same rate in Stock Ledger until stock become positive

(cherry picked from commit 10754831c33b3459d5a45c98f875afa48a444627)

Co-authored-by: Nabin Hait <nabinhait@gmail.com>
2021-09-15 17:07:58 +05:30
Chillar Anand
915b34391c
chore: Clean up imports (#27302)
* chore: Added isort to pre-commit config

* chore: Sort imports with isort

* chore: Clean up imports with pycln

* chore: Sort imports with isort

* chore: Fix import issues

* chore: Clean up sider issues

* chore: Remove import errors from flake8 ignore list

* chore: Clean up lint issues
2021-09-02 16:44:59 +05:30
Ankush Menat
c1d986a0c6
fix: revert "refactor: simplify initialize_previous_data" (#27270)
This reverts commit 2f5624e588541103adb4a3170f2886590dcee42e.
2021-08-31 19:43:42 +05:30
Ankush Menat
e7109c18db
fix: negative qty validation on stock reco cancellation (#27170)
* test: negative stock validation on SR cancel

* fix: negative stock setting ignored in stock reco

In stock reconcilation cancellation negative stock setting is ignored as
`db.get_value` is returning string `'0'` which is not casted to int/bool
for further logic. This causes negative qty, which evantually gets
caught by reposting but by design this should stop cancellation.

* test: typo and minor refactor
2021-08-26 16:40:45 +05:30
rohitwaghchaure
fe4540d74d
fix: allow to change rate manually in case of stand-alone credit note (#27036)
Co-authored-by: Marica <maricadsouza221197@gmail.com>
2021-08-26 12:52:36 +05:30
Ankush
9152715f90
perf: various minor perf fixes for ledger postings (#26775)
* perf: only validate if voucher is journal entry

* perf: optimize merge GLE

- Order fields such that comparison will fail faster
- Break out of loops if not matched

* perf: don't try to match SLE if count mismatch

* refactor: simplify initialize_previous_data

* perf: use cache for fetching valuation_method

These are set only once fields

* refactor: simplify get_future_stock_vouchers

* refactor: simplify get_voucherwise_gl_entries

* perf: fetch only required fields for GL comparison

`select *` fetches all fields, output of this function is only used for
comparing.

* perf: reorder conditions in PL cost center check

* perf: reduce query while validating new gle

* perf: use cache for validating warehouse props

These properties don't change often, no need to query everytime.

* perf: use cached stock settings to validate SLE

* docs: update misleading docstring

Co-authored-by: Marica <maricadsouza221197@gmail.com>
2021-08-11 11:17:50 +05:30
rohitwaghchaure
31fe5f5b92
fix: added progress bar in repost item valuation (#26680) 2021-08-02 11:01:30 +05:30
Nabin Hait
97bce3af9a refactor: Optimized code for reposting item valuation 2021-07-12 13:33:08 +05:30
marination
8c441263f8 fix: Sider 2021-07-05 21:59:04 +05:30
marination
4038977e2e fix: Handle Stock Reco cancellation and limit reposting
- Handled cancellation of reco with and without prior SLE
- Repost / Recalculate balance qty only till next stock reco
2021-07-05 21:58:57 +05:30
marination
8418c4bfe0 fix: Include Stock Reco logic in update_qty_in_future_sle 2021-07-05 21:58:50 +05:30
Rohit Waghchaure
e5fb23972a fix: available qty for consumption 2021-06-20 15:28:25 +05:30
Rohit Waghchaure
4d81d45a0e fix: time out while submitting the stock transactions with more than 50 items 2021-06-19 16:15:08 +05:30
Ankush Menat
9891780f5a
perf(minor): remove unnecessary comprehensions (port #25645) 2021-06-11 18:40:22 +05:30
Ankush Menat
4dcac4ae81
refactor(minor): Use identity instead of equality
Ignore false positive.
2021-05-21 13:49:58 +05:30
Ankush Menat
9979cf5fcc
fix: wrong quantity after transaction for parallel stock transactions
When two transactions are inserted parallelly then previous SLE could be
incorrect for some of them. Locking SLE table would prevent reading from
it till transaction is complete.
2021-05-21 12:31:06 +05:30
Rohit Waghchaure
bb3e5d00f4 fix: allow to receive same serial numbers multiple times 2021-05-06 12:38:35 +05:30
rohitwaghchaure
00ea336b52
fix: stock ledger entry created against draft stock entry (#25540) 2021-05-01 13:53:39 +05:30
rohitwaghchaure
1bdc457777
Merge pull request #25304 from ankush/fix_sl_rounding
fix(stock_ledger): round off values near to zero
2021-04-15 14:44:09 +05:30