Commit Graph

57963 Commits

Author SHA1 Message Date
Mohd Haris
3c4e3de09b fix: restrict Party Type/Party to Receivable/Payable accounts in Journal Entry
Journal Entry validation only checked party details when an account was
of type Receivable/Payable, but never restricted setting a Party Type or
Party against accounts of other types. This regressed v14 behavior where
party info could only be captured for Receivable/Payable accounts.

Add a branch to validate_party() that throws when a Party Type or Party
is set on an account that is not Receivable/Payable, with a clear message.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-14 21:54:07 +05:30
Frappe PR Bot
054b20a2ae chore(release): Bumped to Version 16.22.0
# [16.22.0](https://github.com/frappe/erpnext/compare/v16.21.1...v16.22.0) (2026-06-10)

### Bug Fixes

* **accounts:** include asset items in purchase receipt validation ([#55150](https://github.com/frappe/erpnext/issues/55150)) ([0984c86](0984c86583))
* Add authorization checks on internal functions (backport [#55709](https://github.com/frappe/erpnext/issues/55709)) ([#55726](https://github.com/frappe/erpnext/issues/55726)) ([2ae6451](2ae6451f10))
* add company filter to Budget Against dimension options ([bfc6f44](bfc6f44fb0))
* add custom dimensions filters in Gross and Net profit report (backport [#55110](https://github.com/frappe/erpnext/issues/55110)) ([#55584](https://github.com/frappe/erpnext/issues/55584)) ([5d7e69d](5d7e69d8cf))
* Add likely missing escapes (backport [#55574](https://github.com/frappe/erpnext/issues/55574)) ([#55581](https://github.com/frappe/erpnext/issues/55581)) ([6a503f8](6a503f834c))
* aggregate child cost center data in Budget Variance Report ([4f2611c](4f2611cbe8))
* allow specific methods to run ([c9a5b00](c9a5b0026e))
* bypass project permission check when updating consumed material … (backport [#55645](https://github.com/frappe/erpnext/issues/55645)) ([#55707](https://github.com/frappe/erpnext/issues/55707)) ([4471666](4471666c8c))
* **cheque_print_template:** print format creation from cheque print template requires system manager (backport [#55708](https://github.com/frappe/erpnext/issues/55708)) ([#55712](https://github.com/frappe/erpnext/issues/55712)) ([38dd298](38dd2982f3))
* disallow BOM finished good item in secondary items table (backport [#55710](https://github.com/frappe/erpnext/issues/55710)) ([#55719](https://github.com/frappe/erpnext/issues/55719)) ([ecd3a19](ecd3a19912))
* do not allow to make changes in SABB after submit ([a03e3bf](a03e3bfe9f))
* don't allow to submit job card with hold status ([b4c850d](b4c850da1c))
* drop ignore_permissions handling from add_ac ([c0cf9aa](c0cf9aa1a7))
* duplicating a Customer/Supplier shouldn't inherit the source's primary contact and address (backport [#55421](https://github.com/frappe/erpnext/issues/55421)) ([#55609](https://github.com/frappe/erpnext/issues/55609)) ([808e51d](808e51db19))
* handle multi-select stock ageing filters ([#55775](https://github.com/frappe/erpnext/issues/55775)) ([e48ffe6](e48ffe6ef0))
* handle separator rows in financial statement formatter ([d8afc00](d8afc00ab5))
* include CRM Deal in `quotation to` filters ([f7e6542](f7e6542bcd))
* item report view ([7dfae51](7dfae51044))
* **item:** format integer numeric variant attributes without decimals (backport [#55561](https://github.com/frappe/erpnext/issues/55561)) ([#55564](https://github.com/frappe/erpnext/issues/55564)) ([fffba84](fffba84868))
* linter issue ([dd83705](dd837052ef))
* minor fixes in report print formats ([#55151](https://github.com/frappe/erpnext/issues/55151)) ([80f7aff](80f7aff3f9))
* move Company filter at the start ([3fb6437](3fb6437d26))
* naming series issue ([6eecf07](6eecf0701e))
* prevent double rounding in inclusive tax calculations (backport [#52512](https://github.com/frappe/erpnext/issues/52512)) ([#55570](https://github.com/frappe/erpnext/issues/55570)) ([37b61f0](37b61f06ae))
* prevent leakage of party-derived fields in cross doctype transactions (backport [#55336](https://github.com/frappe/erpnext/issues/55336)) ([#55579](https://github.com/frappe/erpnext/issues/55579)) ([7904385](7904385b90))
* prevent negative amounts in common party JE on return invoices (backport [#55034](https://github.com/frappe/erpnext/issues/55034)) ([#55064](https://github.com/frappe/erpnext/issues/55064)) ([9eb0e3c](9eb0e3c82e))
* prevent selling items from sample retention warehouse (backport [#55613](https://github.com/frappe/erpnext/issues/55613)) ([#55634](https://github.com/frappe/erpnext/issues/55634)) ([84d205f](84d205f553))
* **process statement of accounts:** validate pdf_name and validate permission before triggering send_auto_email (backport [#55781](https://github.com/frappe/erpnext/issues/55781)) ([#55783](https://github.com/frappe/erpnext/issues/55783)) ([e15879a](e15879acd1))
* **profit-and-loss-statement-report:** margin calculation the report showing null% for empty cell ([04fe76b](04fe76bf83))
* **profit-and-loss-statement:** margin calculation the report showing null% for empty cell ([b3d3f13](b3d3f13fc5))
* **profit-loss-report:** handle zero base values and prevent null% display ([90ac065](90ac065930))
* remove item name from update items dialog item code column (backport [#55718](https://github.com/frappe/erpnext/issues/55718)) ([#55723](https://github.com/frappe/erpnext/issues/55723)) ([497c3a5](497c3a5e83))
* restrict already invoiced qty in intercompany purchase invoice ([#55768](https://github.com/frappe/erpnext/issues/55768)) ([e90a6ec](e90a6ecf1c))
* **selling:** consider delivered qty (backport [#55597](https://github.com/frappe/erpnext/issues/55597)) ([#55607](https://github.com/frappe/erpnext/issues/55607)) ([142ab3c](142ab3ce2a))
* simplify New Zealand sales accounts ([93de14c](93de14c421))
* skip empty spacer rows in compute_growth_view_data (P&L growth view) ([18afcf0](18afcf0c01))
* spelling of Payment Reconciliation in sidebar (backport [#55599](https://github.com/frappe/erpnext/issues/55599)) ([#55602](https://github.com/frappe/erpnext/issues/55602)) ([40cf77e](40cf77e7f0))
* sql injection ([02a29a8](02a29a85a7))
* Stock Reservation blocks Subcontracting operation within the same Work Order ([1c0dace](1c0dace3d6))
* **stock:** add validation for work order seial nos and batch nos (backport [#55604](https://github.com/frappe/erpnext/issues/55604)) ([#55605](https://github.com/frappe/erpnext/issues/55605)) ([7de77a8](7de77a8916))
* **stock:** change valuation rate column label in stock ledger entry/report (backport [#55323](https://github.com/frappe/erpnext/issues/55323)) ([#55394](https://github.com/frappe/erpnext/issues/55394)) ([c6560be](c6560be58d))
* **stock:** set stock received but not billed account for purchase ([#55149](https://github.com/frappe/erpnext/issues/55149)) ([90667b2](90667b2de2))
* **subscription:** bill on creation and keep status in sync with invoices (backport [#55615](https://github.com/frappe/erpnext/issues/55615)) ([#55701](https://github.com/frappe/erpnext/issues/55701)) ([0f069e1](0f069e13da))
* **subscription:** correct billing/deferred bugs and tighten guards (backport [#55554](https://github.com/frappe/erpnext/issues/55554)) ([#55610](https://github.com/frappe/erpnext/issues/55610)) ([dee7bd8](dee7bd8d64))
* **taxes:** add category and add_deduct_tax fields to tax entries (backport [#55753](https://github.com/frappe/erpnext/issues/55753)) ([#55773](https://github.com/frappe/erpnext/issues/55773)) ([9a6fae9](9a6fae9fdd))
* update add_total_row_account to control blank row addition ([e8a6933](e8a6933ff3))
* update formatter to handle blank rows in financial statements ([f657503](f657503ea3))
* update items respects workflow "Only Allow Edit For" role ([#55667](https://github.com/frappe/erpnext/issues/55667)) ([76b9b6a](76b9b6a34e))
* use new_doc with field allowlist in CRM integration endpoints ([d941ccf](d941ccfe3c))
* **UX:** Accounts settings cleanup (backport [#55470](https://github.com/frappe/erpnext/issues/55470)) ([#55603](https://github.com/frappe/erpnext/issues/55603)) ([3917415](3917415368))
* **UX:** stock settings form cleanup ([f6f542f](f6f542fadc))
* validate fg and materials qty in the disassemble entry ([4453c10](4453c1072a))
* work order status should be in process if material transfer is skipped (backport [#55641](https://github.com/frappe/erpnext/issues/55641) to version-16-hotfix) ([#55642](https://github.com/frappe/erpnext/issues/55642)) ([32011c3](32011c3364))

### Features

* add item where used report ([#55714](https://github.com/frappe/erpnext/issues/55714)) ([8f85cce](8f85cce4cf))
* add New Zealand chart of accounts ([107a446](107a446d98))
* added cost of goods sold (backport [#54974](https://github.com/frappe/erpnext/issues/54974)) ([#55552](https://github.com/frappe/erpnext/issues/55552)) ([20af709](20af7093ac))
* create sales invoice from pick list (backport [#55594](https://github.com/frappe/erpnext/issues/55594)) ([#55635](https://github.com/frappe/erpnext/issues/55635)) ([743afc9](743afc972d))
* item prices list view ([#54853](https://github.com/frappe/erpnext/issues/54853)) ([12c1940](12c1940e0b))
* show non stock items and secondary items in work order (backport [#55631](https://github.com/frappe/erpnext/issues/55631)) ([#55636](https://github.com/frappe/erpnext/issues/55636)) ([3f983c9](3f983c9e4d))

### Performance Improvements

* batch status check for on-hold/closed documents, remove N+1 queries (backport [#54798](https://github.com/frappe/erpnext/issues/54798)) ([#55573](https://github.com/frappe/erpnext/issues/55573)) ([0274afe](0274afe560))
* **transaction:** exit early before backend query (backport [#55556](https://github.com/frappe/erpnext/issues/55556)) ([#55558](https://github.com/frappe/erpnext/issues/55558)) ([6a1c384](6a1c384f9b))
v16.22.0
2026-06-10 00:25:19 +00:00
Mihir Kandoi
03f6b7a50e Merge pull request #55764 from frappe/version-16-hotfix 2026-06-10 05:53:43 +05:30
mergify[bot]
e15879acd1 fix(process statement of accounts): validate pdf_name and validate permission before triggering send_auto_email (backport #55781) (#55783)
Co-authored-by: Diptanil Saha <diptanil@frappe.io>
fix(process statement of accounts): validate pdf_name and validate permission before triggering send_auto_email (#55781)
2026-06-09 19:11:44 +00:00
rohitwaghchaure
01e90830f1 Merge pull request #55766 from rohitwaghchaure/fixed-github-55621-v16
fix: Stock Reservation blocks Subcontracting operation within the same work order
2026-06-09 20:00:20 +05:30
Rohit Waghchaure
1c0dace3d6 fix: Stock Reservation blocks Subcontracting operation within the same Work Order 2026-06-09 19:40:45 +05:30
Mihir Kandoi
e48ffe6ef0 fix: handle multi-select stock ageing filters (#55775) 2026-06-09 13:52:32 +00:00
MochaMind
8ff6fc5fea chore: sync translations to version-16-hotfix (#55739) 2026-06-09 13:19:55 +00:00
Pandiyan P
e90a6ecf1c fix: restrict already invoiced qty in intercompany purchase invoice (#55768) 2026-06-09 13:16:22 +00:00
mergify[bot]
9a6fae9fdd fix(taxes): add category and add_deduct_tax fields to tax entries (backport #55753) (#55773)
Co-authored-by: Lakshit Jain <ljain112@gmail.com>
fix(taxes): add category and add_deduct_tax fields to tax entries (#55753)
2026-06-09 12:59:13 +00:00
mergify[bot]
7904385b90 fix: prevent leakage of party-derived fields in cross doctype transactions (backport #55336) (#55579)
Co-authored-by: Nabin Hait <nabinhait@gmail.com>
Co-authored-by: Lakshit Jain <ljain112@gmail.com>
fix: prevent leakage of party-derived fields in cross doctype transactions (#55336)
2026-06-09 18:03:26 +05:30
rohitwaghchaure
f0e51b35a6 Merge pull request #55762 from frappe/mergify/bp/version-16-hotfix/pr-55760
fix: don't allow to submit job card with hold status (backport #55760)
2026-06-09 15:15:39 +05:30
rohitwaghchaure
60a270acd4 chore: fix conflicts
Removed validation for completed quantity matching in job card.
2026-06-09 14:56:39 +05:30
Rohit Waghchaure
b4c850da1c fix: don't allow to submit job card with hold status
(cherry picked from commit 9c23229cbf)

# Conflicts:
#	erpnext/manufacturing/doctype/job_card/job_card.py
2026-06-09 09:01:09 +00:00
ruthra kumar
9b1cdd0e8f Merge pull request #55729 from frappe/mergify/bp/version-16-hotfix/pr-55486
Validations in CRM-api endpoints (backport #55486)
2026-06-09 10:31:49 +05:30
rohitwaghchaure
26a19bf372 Merge pull request #55752 from frappe/mergify/bp/version-16-hotfix/pr-55748
fix: sql injection (backport #55748)
2026-06-09 09:49:00 +05:30
Rohit Waghchaure
02a29a85a7 fix: sql injection
(cherry picked from commit bd0acf4413)
2026-06-09 03:58:34 +00:00
rohitwaghchaure
6e7a96eae9 Merge pull request #55744 from frappe/mergify/bp/version-16-hotfix/pr-55737
fix: allow specific methods to run (backport #55737)
2026-06-09 09:27:46 +05:30
Rohit Waghchaure
dd837052ef fix: linter issue 2026-06-08 23:17:29 +05:30
rohitwaghchaure
95818ec71d chore: fix conflicts
Removed redundant quantity assignments and completion time logging from job card processing.
2026-06-08 20:08:16 +05:30
rohitwaghchaure
3d1327cfe5 chore: fix conflicts 2026-06-08 20:06:44 +05:30
rohitwaghchaure
b617f1302d chore: fix conflicts 2026-06-08 20:05:46 +05:30
Rohit Waghchaure
c9a5b0026e fix: allow specific methods to run
(cherry picked from commit 8db1eb0d27)

# Conflicts:
#	erpnext/manufacturing/doctype/job_card/job_card.py
2026-06-08 14:18:26 +00:00
rohitwaghchaure
c5434e39d8 Merge pull request #55740 from rohitwaghchaure/fixed-support-67770-3-v16
fix: validate fg and materials qty in the disassemble entry
2026-06-08 19:30:34 +05:30
Rohit Waghchaure
4453c1072a fix: validate fg and materials qty in the disassemble entry 2026-06-08 17:42:04 +05:30
MochaMind
8e930d0ef1 chore: update POT file (#55691) 2026-06-08 11:15:28 +00:00
rohitwaghchaure
e6f6f2c173 Merge pull request #55735 from frappe/mergify/bp/version-16-hotfix/pr-55716
fix: do not allow to make changes in SABB after submit (backport #55716)
2026-06-08 16:02:51 +05:30
mergify[bot]
2ae6451f10 fix: Add authorization checks on internal functions (backport #55709) (#55726)
* fix: Add authorization checks on internal functions (#55709)

(cherry picked from commit ba936eefab)

# Conflicts:
#	erpnext/accounts/doctype/pos_profile/pos_profile.py
#	erpnext/accounts/doctype/purchase_invoice/purchase_invoice.py
#	erpnext/buying/report/supplier_quotation_comparison/supplier_quotation_comparison.py
#	erpnext/support/doctype/issue/issue.py

* chore: conflicts

---------

Co-authored-by: Ankush Menat <ankush@frappe.io>
2026-06-08 10:16:12 +00:00
mergify[bot]
497c3a5e83 fix: remove item name from update items dialog item code column (backport #55718) (#55723)
Co-authored-by: Mihir Kandoi <kandoimihir@gmail.com>
Co-authored-by: Abdullah <frappe@LAPTOP-4E788RM4.localdomain>
fix: remove item name from update items dialog item code column (#55718)
2026-06-08 15:42:38 +05:30
rohitwaghchaure
5efeb2af18 chore: fix conflicts
Removed unused import for StockReconciliationItem.
2026-06-08 15:30:48 +05:30
Rohit Waghchaure
a03e3bfe9f fix: do not allow to make changes in SABB after submit
(cherry picked from commit e36426e235)

# Conflicts:
#	erpnext/stock/doctype/stock_reconciliation/stock_reconciliation.py
2026-06-08 09:56:18 +00:00
Shllokkk
d941ccfe3c fix: use new_doc with field allowlist in CRM integration endpoints
(cherry picked from commit e460e83516)
2026-06-08 09:41:26 +00:00
mergify[bot]
ecd3a19912 fix: disallow BOM finished good item in secondary items table (backport #55710) (#55719)
Co-authored-by: Mihir Kandoi <kandoimihir@gmail.com>
Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
fix: disallow BOM finished good item in secondary items table (#55710)
2026-06-08 13:40:59 +05:30
Mihir Kandoi
8f85cce4cf feat: add item where used report (#55714) 2026-06-08 07:52:23 +00:00
mergify[bot]
38dd2982f3 fix(cheque_print_template): print format creation from cheque print template requires system manager (backport #55708) (#55712)
* fix(cheque_print_template): print format creation from cheque print template requires system manager (#55708)

(cherry picked from commit faf92b1368)

# Conflicts:
#	erpnext/accounts/doctype/cheque_print_template/cheque_print_template.py

* chore: resolved conflicts

---------

Co-authored-by: Diptanil Saha <diptanil@frappe.io>
2026-06-08 07:48:24 +00:00
mergify[bot]
4471666c8c fix: bypass project permission check when updating consumed material … (backport #55645) (#55707)
* fix: bypass project permission check when updating consumed material cost

(cherry picked from commit 4b0b7adeee)

# Conflicts:
#	erpnext/stock/doctype/stock_entry/stock_entry.py

* chore: resolve conflicts

---------

Co-authored-by: pandiyan <pandiyanpalani37@gmail.com>
Co-authored-by: Mihir Kandoi <kandoimihir@gmail.com>
2026-06-08 07:11:04 +00:00
ruthra kumar
c1b47bd561 Merge pull request #55704 from frappe/mergify/bp/version-16-hotfix/pr-55665
fix: drop ignore_permissions handling from add_ac (backport #55665)
2026-06-08 12:09:44 +05:30
mergify[bot]
c6560be58d fix(stock): change valuation rate column label in stock ledger entry/report (backport #55323) (#55394)
Co-authored-by: Sudharsanan11 <sudharsananashok1975@gmail.com>
Co-authored-by: Sudharsanan Ashok <135326972+Sudharsanan11@users.noreply.github.com>
2026-06-08 11:54:00 +05:30
kaulith
76b9b6a34e fix: update items respects workflow "Only Allow Edit For" role (#55667) 2026-06-08 11:52:59 +05:30
Shllokkk
c0cf9aa1a7 fix: drop ignore_permissions handling from add_ac
(cherry picked from commit 37d2adc74b)
2026-06-08 06:15:15 +00:00
mergify[bot]
0f069e13da fix(subscription): bill on creation and keep status in sync with invoices (backport #55615) (#55701)
* fix(subscription): bill on creation and keep status in sync with invoices (#55615)

(cherry picked from commit bb36e956ac)

# Conflicts:
#	erpnext/accounts/doctype/sales_invoice/sales_invoice.py
#	erpnext/accounts/utils.py

* fix(subscription): resolve cherry-pick conflicts for version-16-hotfix backport

---------

Co-authored-by: Jatin3128 <140256508+Jatin3128@users.noreply.github.com>
Co-authored-by: Jatin3128 <jatinsarna8@gmail.com>
2026-06-08 07:33:08 +05:30
mergify[bot]
a761a98e3a ci: add review comments on gettext files (backport #55699) (#55700)
Co-authored-by: Raffael Meyer <14891507+barredterra@users.noreply.github.com>
2026-06-07 23:27:29 +00:00
mergify[bot]
a9926871d6 chore: remove unused whitelisted method from project (backport #55648) (#55673)
Co-authored-by: Diptanil Saha <diptanil@frappe.io>
2026-06-07 23:16:02 +05:30
Nabin Hait
0785fa0257 Merge pull request #55698 from frappe/mergify/bp/version-16-hotfix/pr-55101
fix: handle blank rows in financial statement formatter (backport #55101)
2026-06-07 22:55:44 +05:30
Nabin Hait
86ee17614c Merge pull request #55697 from frappe/mergify/bp/version-16-hotfix/pr-54684
fix(profit-loss-report): handle zero base values and prevent null% display (backport #54684)
2026-06-07 22:55:34 +05:30
Abdeali Chharchhoda
f657503ea3 fix: update formatter to handle blank rows in financial statements
(cherry picked from commit 814c11200a)
2026-06-07 16:58:49 +00:00
Abdeali Chharchhoda
e8a6933ff3 fix: update add_total_row_account to control blank row addition
(cherry picked from commit f7c744350c)
2026-06-07 16:58:49 +00:00
Abdeali Chharchhoda
d8afc00ab5 fix: handle separator rows in financial statement formatter
(cherry picked from commit cf597361f6)
2026-06-07 16:58:49 +00:00
Ahmed Reda Abukhatwa
18afcf0c01 fix: skip empty spacer rows in compute_growth_view_data (P&L growth view)
(cherry picked from commit 3592c3086d)
2026-06-07 16:56:54 +00:00
Ahmed Reda Abukhatwa
90ac065930 fix(profit-loss-report): handle zero base values and prevent null% display
(cherry picked from commit 7335011814)
2026-06-07 16:56:54 +00:00