Commit Graph

42317 Commits

Author SHA1 Message Date
Deepesh Garg
b16ab818c5
Merge pull request #31264 from ankush/internal_trasfer_precision_loss
fix: internal transfer GLE validation
2022-06-21 14:31:18 +05:30
marination
4cf2225a29 chore: Implement Log clearing interface in BOM Update Log
- Implement Log clearing interface in BOM Update Log
- Add additional info in sidebar: Log clearing only happens for 'Update Cost' type logs
- 'Replace BOM' logs have important info and is used in BOM timeline, so we'll let users decide if they wanna keep or discard it
2022-06-21 14:10:59 +05:30
Sagar Sharma
912d26361d
Merge branch 'develop' into fixed-transferred-materials-are-not-consumed 2022-06-21 13:23:37 +05:30
Marica
5ae8f5d4b8
Merge branch 'develop' into bom-update-log-cleanup-perf 2022-06-21 11:01:03 +05:30
Deepesh Garg
f572c20009
Merge branch 'develop' into internal_trasfer_precision_loss 2022-06-21 10:45:02 +05:30
Deepesh Garg
e0e2616054
Merge pull request #31350 from deepeshgarg007/sales_exchange_rate_validation
fix: Conversion rate validation for multi-currency invoices
2022-06-21 09:09:38 +05:30
Deepesh Garg
46e6c2cd0f Merge branch 'develop' of https://github.com/frappe/erpnext into sales_exchange_rate_validation 2022-06-20 22:00:49 +05:30
Deepesh Garg
8f37393044 test: Add test case 2022-06-20 22:00:32 +05:30
marination
0320b59ea6 chore: Clear Progress section for completed logs & on_submit UX
- Delete `BOM Update Batch` table on 'Completed' log, to save space
- Hide Progress section on 'Completed' log
- Enqueue `on_submit` for 'Update Cost' job, getting leaf boms could take time for huge DBs. Users have to wait for screen to unfreeze.
- Add error handling to `process_boms_cost_level_wise` (Called via cron job and on submit, both in background)
2022-06-20 16:25:34 +05:30
Deepesh Garg
9aea017990
Merge pull request #31136 from ruthra-kumar/refactor_payment_reconciliation_tool
refactor: Payment Reconciliation tool will use Payment Ledger
2022-06-17 21:40:47 +05:30
Conor
ea28ed1bb3
refactor: if() to CASE WHEN (#31360)
* refactor: if() to CASE WHEN

* fix: remove duplicate order by

* fix: remove extraneous table

* style: reformat to black spec

Co-authored-by: Ankush Menat <ankush@frappe.io>
2022-06-17 21:17:48 +05:30
Deepesh Garg
4a90cd6d54
Merge branch 'develop' into refactor_payment_reconciliation_tool 2022-06-17 21:10:48 +05:30
Deepesh Garg
a0cab761b8
Merge pull request #31396 from deepeshgarg007/quotation_lost_update
fix: Quotation lost update
2022-06-17 21:09:03 +05:30
Deepesh Garg
e457288dba chore: fix condition 2022-06-17 18:56:53 +05:30
Deepesh Garg
02f9441e1a fix: Quotation lost update 2022-06-17 18:54:42 +05:30
Nihantra C. Patel
0097a2b60c
Update bank_clearance_summary.py 2022-06-17 18:35:11 +05:30
ruthra kumar
3a238b4daa docs: specification of payment ledger 2022-06-17 17:57:07 +05:30
ruthra kumar
7312f22f35 refactor: update voucher outstanding from payment ledger
Outstanding amount is updated from payment ledger, only for
receivable/payable accounts. For remaining account types, update happens
from GL Entry.
2022-06-17 17:57:07 +05:30
ruthra kumar
524c175cf0 refactor: delink gl entry from reconciliation 2022-06-17 17:57:07 +05:30
ruthra kumar
ae8aa8f3e7 refactor: 'get outstanding invoices' popup in payment entry
Payment entry has option to select outstanding invoices using a popup
form. This change refactors the pop to use payment ledger to fetch +ve
outstanding invoices.
2022-06-17 17:57:07 +05:30
ruthra kumar
8c87674c62 refactor: outstanding_invoice function and helper class
outstanding invoice function has been refactored to use payment ledger
2022-06-17 17:57:07 +05:30
ruthra kumar
9cdc388c97 test: payment reconciliation tool
unit test cases for partial reconciliation, return invoice against
invoice, invoice against journals and journal against journal have
been added
2022-06-17 17:57:07 +05:30
ruthra kumar
65f47bca31 refactor: payment reconciliation tool
PR uses payment ledger for outstanding invoice and unreconcilied
cr/dr notes.
2022-06-17 17:57:07 +05:30
ruthra kumar
7b383880c6 feat: helper class for quering Payment Ledger 2022-06-17 17:57:07 +05:30
ruthra kumar
05467ffce2
test: use fixture for payment entry test cases (#31390)
refactor: use fixture for payment entry test cases
2022-06-17 17:23:29 +05:30
Conor
74a782d81d
refactor: DB independent quoting and truthy/falsy values (#31358)
* refactor: DB independent quoting and truthy/falsy values

* style: reformat to black spec

* fix: ifnull -> coalesce

* fix: coalesce -> Coalesce

* fix: revert pypika comparison

* refactor: convert queries to QB

* fix: incorrect value types for query

`=` query makes no sense with list of values

* fix: remove warehouse docstatus condition

* fix: keep using base rate as rate

Co-authored-by: Ankush Menat <ankush@frappe.io>
2022-06-17 17:01:27 +05:30
Marica
d6078aa911
fix: Respect system precision for user facing balance qty values (#30837)
* fix: Respect system precision for user facing balance qty values

- `get_precision` -> `set_precision`
- Use system wide currency precision for `stock_value`
- Round of qty defiiciency as per user defined precision (system flt precision), so that it is WYSIWYG for users

* fix: Consider system precision when validating future negative qty

* test: Immediate Negative Qty precision test

- Test for Immediate Negative Qty precision
- Stock Entry Negative Qty message: Format available qty in system precision
- Pass `stock_uom` as confugrable option in `make_item`

* test: Future Negative Qty validation with precision

* fix: Use `get_field_precision` for currency precision as it used to

- `get_field_precision` defaults to number format for precision (maintain old behaviour)
- Don't pass `currency` to `get_field_precision` as its not used anymore
2022-06-17 15:13:13 +05:30
Ankush Menat
74007c8e91
fix(UX): hide irrelevant UOM fields (#31392)
fix(UX): hide UOM-related fields if they are inconsequential
2022-06-17 15:10:21 +05:30
rohitwaghchaure
2ec133df6d
Merge branch 'develop' into fixed-transferred-materials-are-not-consumed 2022-06-17 15:02:07 +05:30
Ankush Menat
10583eb3ce
fix: UOM handling for transaction without item (#31389)
If invoice is made without item code then UOM, Stock UOM and
conversion_factor all need to be manually added, this is confusing and
leads missing them out leads to errors.

Simplest solution:

- if either UOM exists then set both to same uom conversion factor to
- also set conversion factor based on UOM conversions
2022-06-17 12:13:27 +05:30
Sagar Vora
1a3997a566
fix: transaction date gets unset in material request (#31327)
* fix: set date correctly in material request

* fix: use only `transaction_date` in `get_item_details`
2022-06-16 22:33:47 +05:30
Ankush Menat
6f2086d770
test: verify that all patches exist in patches.txt (#31371)
* chore: delete orphaned patches

* test: orphan/missing entries in patches.txt


[skip ci]
2022-06-16 22:15:06 +05:30
Jingxuan He
b4a93da9f3
chore: Fix a potential variable misuse bug (#31372)
* Fix a potential variable misuse bug

* chore: Separate check (separate line) for empty table in Pricing Rule

* chore: Code readability & check for field in row (now row itself)

Co-authored-by: marination <maricadsouza221197@gmail.com>
2022-06-16 12:16:59 +05:30
Ankush Menat
86919d2a6d
test: silent test failure in stock assertions (#31377)
If actual values are not present then test is silently passing, # of
actual values should be at least equal to expected values.
2022-06-15 21:19:09 +05:30
Ankush Menat
5c6f22f275
refactor: simpler batching for GLE reposting (#31374)
* refactor: simpler batching for GLE reposting

* test: add "actual" test for chunked GLE reposting
2022-06-15 19:30:26 +05:30
Marica
d9c6b7218a
chore: Sponsor credit for BOM Update Tool perf 2022-06-15 18:57:39 +05:30
Rushabh Mehta
c0f9b34ede
fix(minor): move variants to separate tab (#31354)
* fix(minor): move variants to separate tab

* fix(minor): variants tab

* fix(minor): add counts

Co-authored-by: Deepesh Garg <deepeshgarg6@gmail.com>
Co-authored-by: Ankush Menat <ankush@frappe.io>
2022-06-15 16:08:05 +05:30
Ankush Menat
276267d5a6
fix: remove agriculture module from patch (#31369) 2022-06-15 15:26:05 +05:30
Marica
c83b4043b8
Merge pull request #31353 from marination/so-to-wo-bom
fix: Pick Template BOM if variant BOM absent in WO popup from SO
2022-06-15 14:37:15 +05:30
Ankush Menat
94ad66e55b
chore: revert naming to default (#31364) 2022-06-15 13:35:42 +05:30
Deepesh Garg
be14a7e657
Merge pull request #31365 from ruthra-kumar/add_gl_migration_to_patch
chore: add gl to payment ledger migarion to patches
2022-06-15 13:20:10 +05:30
ruthra kumar
538faf3639 chore: add gl to payment ledger migarion to patches 2022-06-15 13:17:06 +05:30
Marica
fafdaff4d4
Merge branch 'develop' into so-to-wo-bom 2022-06-15 12:58:13 +05:30
Conor
b8f728a40a
refactor: use CURRENT_DATE instead of CURDATE() (#31356)
* refactor: use CURRENT_DATE instead of CURDATE()

* style: reformat to black spec

* refactor: use QB for auto_close queries

Co-authored-by: Ankush Menat <ankush@frappe.io>
2022-06-15 12:07:33 +05:30
Nihantra C. Patel
37e9622426
fix: Spelling mistake in quotation depend on (#31362)
Update quotation.json
2022-06-15 12:02:57 +05:30
Conor
2a9105f26f
refactor: DB independent capitalization of test cases (#31359) 2022-06-15 11:24:24 +05:30
rohitwaghchaure
a4c2c3e02f
Merge branch 'develop' into fixed-transferred-materials-are-not-consumed 2022-06-15 09:41:01 +05:30
Marica
639e4c5714
Merge branch 'develop' into so-to-wo-bom 2022-06-14 18:22:11 +05:30
Ankush Menat
2535d5edd0
perf: GLE reposting with progress and chunking (#31343)
If stock voucher count goes >1000 then fetching all gles and reposting
them all at once requires much more memory and can cause crash.

- This PR ensures that GLE reposting is done in chunks of 100 vouchers.
- This PR also starts keeping track of how many such chunks were
  processed so in future progress is resumed in event of timeout.
2022-06-14 18:20:33 +05:30
marination
9f2d325e67 fix: Pick Template BOM if variant BOM absent in WO popup from SO
- Use `get_default_bom` in sales_order.py (reduce duplicate utility functions)
- Remove redundant if else in `get_work_order_items`
- `get_default_bom`: If no BOM and template exists try to fetch template BOM
- test: `get_work_order_items` via SO and if right BOM is picked
2022-06-14 17:20:44 +05:30