Commit Graph

32470 Commits

Author SHA1 Message Date
ruthra kumar
219855311d fix: wrong amount fetched in payment reconciliation tool
- fetch amount on account currency for outstanding invoices and
- unreconcilied dr/cr notes
- fix currency field name in payment ledger entry creation
2022-07-01 12:47:07 +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
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
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
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
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
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
Deepesh Garg
5b2ba087a3 Merge branch 'develop' of https://github.com/frappe/erpnext into quotation_issues 2022-06-14 10:50:47 +05:30
Deepesh Garg
fb3da124e5 chore: linting issues 2022-06-14 10:50:38 +05:30
Conor
00ef499739
refactor: use db independent offset syntax (#31345)
* chore: use db independent offset syntax

* fix: typo

* style: reformat code to black spec

Co-authored-by: Ankush Menat <ankush@frappe.io>
2022-06-14 10:49:07 +05:30
Marica
f5ebaed191
Merge branch 'develop' into subcontract-supplied-items 2022-06-13 18:32:43 +05:30
marination
b8f468cb4f test: PO Supplied Qty reset on cancel/submit 2022-06-13 18:31:35 +05:30
marination
fa1d9d548e fix: Supplied Qty not updated on Stock Entry cancel
- Loop over PO supplied items and update them as data from SE will exclude a row if supplied qty becomes 0 on cancel
- Use DB API insteaf of raw SQL
2022-06-13 17:59:03 +05:30
Ankush Menat
883598d59a chore: delete BOT
RIP
2022-06-13 16:24:48 +05:30
Ankush Menat
697fbe946a
Merge pull request #31337 from gavindsouza/get_fiscal_years-refactor
refactor: get_fiscal_years API
2022-06-13 14:56:33 +05:30
Gavin D'souza
e9af68e947 test: Remove deprecated as_tuple kwarg in FrappeTestAPI.post 2022-06-13 14:26:59 +05:30
Gavin D'souza
5f8cd34da5 fix: Use newer PyPDF2 APIs
Depends on https://github.com/frappe/frappe/pull/17127
2022-06-13 12:43:08 +05:30
Gavin D'souza
0727d1d99b refactor: get_fiscal_years API
* Optimize fiscal year options generation
* Don't pass unrequired criterions / values to prepared query
* Use QB notation for raw query
2022-06-13 12:43:08 +05:30
Deepesh Garg
ea276a7b86
Merge branch 'develop' into refactor_ar/ap_report 2022-06-13 12:34:47 +05:30
Marica
d3d0ade89f
chore: Accidental '=' instead of comma in French translation (#31335) 2022-06-13 11:54:12 +05:30