Commit Graph

55577 Commits

Author SHA1 Message Date
mergify[bot]
ff6c8bbb44 fix(project): improved access control for project users (backport #56675) (#57180)
Co-authored-by: Diptanil Saha <diptanil@frappe.io>
2026-07-15 15:38:46 +05:30
Mihir Kandoi
93931ac91b Merge pull request #57043 from aerele/fix/apply-user-permissions-via-build-match-conditions
fix: apply user permissions via build_match_conditions
2026-07-15 14:37:21 +05:30
mergify[bot]
6b23b007a4 fix: permission issue (backport #57112) (#57142)
* fix: permission issue (#57112)

(cherry picked from commit 1fd2faa68d)

# Conflicts:
#	erpnext/controllers/stock_controller.py

* chore: fix conflicts

---------

Co-authored-by: rohitwaghchaure <rohitw1991@gmail.com>
2026-07-15 14:34:44 +05:30
ervishnucs
202f52271c fix: apply user permissions via build_match_conditions 2026-07-15 13:16:30 +05:30
mergify[bot]
654890dce8 Revert "chore: remove unused whitelisted method from project" (backport #56660) (#57177)
Co-authored-by: Diptanil Saha <diptanil@frappe.io>
2026-07-15 07:18:42 +00:00
Mihir Kandoi
218f783a26 Merge pull request #57172 from frappe/mergify/bp/version-15-hotfix/pr-57137
feat: add on hold status to project (backport #57137)
2026-07-15 11:35:07 +05:30
Poovitha Palanivelu
5e2e15436d feat: add on hold status to project
(cherry picked from commit 672fadaa78)
2026-07-15 05:47:00 +00:00
Mihir Kandoi
f179c91036 Merge pull request #57167 from frappe/mergify/bp/version-15-hotfix/pr-57164
fix: set correct currency in supplier quotation net rate field (backport #57164)
2026-07-15 11:04:57 +05:30
Mihir Kandoi
30ab2dba6e fix: set correct currency in supplier quotation net rate field
(cherry picked from commit 27672851cd)
2026-07-15 05:16:55 +00:00
Mihir Kandoi
82f2af3a0e Merge pull request #57128 from frappe/mergify/bp/version-15-hotfix/pr-57126
fix(manufacturing): preserve job card transferred quantity (backport #57126)
2026-07-14 13:59:48 +05:30
Sudharsanan11
1bbeec6bfa test(manufacturing): cover transferred quantity across job cards
(cherry picked from commit fd6c9a71cd)
2026-07-14 08:11:06 +00:00
Sudharsanan11
fc4ac7a441 fix(manufacturing): preserve job card transferred quantity
(cherry picked from commit d7e9321746)
2026-07-14 08:11:06 +00:00
Mihir Kandoi
3913b9631f Merge pull request #57104 from frappe/mergify/bp/version-15-hotfix/pr-57091
fix(stock): show qty (company) and qty (warehouse) in sales transactions  (backport #57091)
2026-07-14 12:43:29 +05:30
Mihir Kandoi
9de9228cb9 Merge pull request #57117 from frappe/mergify/bp/version-15-hotfix/pr-57116
fix(stock): fix sqlparse token limit in get_bundle_wise_serial_nos (backport #57116)
2026-07-14 12:33:51 +05:30
Afsal Syed
dcff9164c4 test(stock): add unit test for get_bundle_wise_serial_nos query
(cherry picked from commit e748bf512b)
2026-07-14 12:09:41 +05:30
Sudharsanan11
aa4cc4c97d test(stock): assert qty (company) and qty (warehouse) on item details 2026-07-14 11:51:54 +05:30
Sudharsanan11
8086542885 fix(stock): show qty (company) and qty (warehouse) in sales transactions 2026-07-14 11:51:54 +05:30
Afsal Syed
cc457433fe fix(stock): fix sqlparse token limit in get_bundle_wise_serial_nos
(cherry picked from commit 4544a6c935)
2026-07-14 05:59:56 +00:00
Khushi Rawat
687fed031b Merge pull request #57110 from khushi8112/backport-55276-to-v15-hotfix
fix(asset): allow asset repair creation for fully depreciated assets (backport #55276)
2026-07-14 00:48:06 +05:30
Khushi Rawat
e4d2a960d2 fix(asset): allow asset repair creation for fully depreciated assets (backport #55276) 2026-07-14 00:30:06 +05:30
Mihir Kandoi
ce62ef3e2e Merge pull request #57102 from frappe/mergify/bp/version-15-hotfix/pr-57089
fix: allow barcode scan to add and increment items in pick list (backport #57089)
2026-07-13 21:28:03 +05:30
pandiyan
bb5be10372 fix: allow barcode scan to add and increment items in pick list
- allow new rows on scan when pick manually is enabled, since only
  then are scanned rows not subject to being overridden by
  set_item_locations on save
- stop capping picked qty at the default demand qty (1) for rows
  added by the scanner itself, so repeat scans of the same barcode
  keep incrementing the row instead of failing with "maximum
  quantity scanned"
- ignore barcode uom when matching an existing row if new rows
  aren't allowed, since there's no alternate-uom row to fall back to

(cherry picked from commit 3ece4a615d)
2026-07-13 15:32:46 +00:00
ruthra kumar
fcd0350652 refactor: rename synced to snapshot report (backport #56706) (#57094)
* refactor: rename execute_synced_report to execute_snapshot_report

Match the framework rename of the standard report entry point in the
trial balance, P&L, balance sheet, and general ledger reports.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
(cherry picked from commit ba7b6a47c5)

* refactor: rename feature toggle in report master

(cherry picked from commit 981e90e4da)

# Conflicts:
#	erpnext/accounts/report/accounts_payable/accounts_payable.json
#	erpnext/accounts/report/accounts_receivable/accounts_receivable.json
#	erpnext/accounts/report/profit_and_loss_statement/profit_and_loss_statement.json
#	erpnext/accounts/report/trial_balance/trial_balance.json

---------

Co-authored-by: ruthra kumar <ruthra@erpnext.com>
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-13 16:36:35 +05:30
ruthra kumar
1489258ea0 refactor: rename feature toggle in report master
(cherry picked from commit 981e90e4da)

# Conflicts:
#	erpnext/accounts/report/accounts_payable/accounts_payable.json
#	erpnext/accounts/report/accounts_receivable/accounts_receivable.json
#	erpnext/accounts/report/profit_and_loss_statement/profit_and_loss_statement.json
#	erpnext/accounts/report/trial_balance/trial_balance.json
2026-07-13 16:08:50 +05:30
ruthra kumar
674704cbfd refactor: rename execute_synced_report to execute_snapshot_report
Match the framework rename of the standard report entry point in the
trial balance, P&L, balance sheet, and general ledger reports.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
(cherry picked from commit ba7b6a47c5)
2026-07-13 10:35:28 +00:00
mergify[bot]
a6a887f833 feat: faster (synced) financial statements using duckdb (backport #56304) (#57093)
* refactor: reports on duckdb

(cherry picked from commit adb768505a)

* feat(trial-balance): implement execute_duckdb with full parity to normal report

Replaces the placeholder stub with 8 focused functions that mirror the
normal execute() flow using parameterized DuckDB SQL queries: account
fetch, period GL entries, opening balances (with Period Closing Voucher
path), and all filters (cost center, project, finance book, accounting
dimensions). Reuses existing pure-Python processing functions unchanged.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
(cherry picked from commit b1c8e2cb5c)

* refactor(trial-balance): execute_duckdb only reads GL Entry from duckdb

Replaces the previous over-engineered stub with 7 short functions.
Account data, Account Closing Balance, and all metadata come from
frappe.db as normal; only tabGL Entry is read from the duckdb_conn.

Reuses get_opening_balance() for Account Closing Balance unchanged,
reuses all downstream compute helpers (calculate_values, prepare_data,
etc.) unchanged.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
(cherry picked from commit 55862f98f4)

* refactor: maintain sync dependency in report master

(cherry picked from commit 5c536b8ad1)

# Conflicts:
#	erpnext/accounts/report/accounts_payable/accounts_payable.json
#	erpnext/accounts/report/accounts_receivable/accounts_receivable.json
#	erpnext/accounts/report/general_ledger/general_ledger.json
#	erpnext/accounts/report/trial_balance/trial_balance.json

* refactor: DB agnostic method names

(cherry picked from commit f40cd41801)

* feat(general-ledger): implement execute_synced_report with full parity to normal report

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
(cherry picked from commit 6b4895bcc9)

# Conflicts:
#	erpnext/accounts/report/general_ledger/general_ledger.json

* feat(balance-sheet): implement execute_synced_report with full parity to normal report

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
(cherry picked from commit bb19540816)

# Conflicts:
#	erpnext/accounts/report/balance_sheet/balance_sheet.json

* feat(profit-and-loss): implement execute_synced_report with full parity to normal report

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
(cherry picked from commit 6a93baacf0)

# Conflicts:
#	erpnext/accounts/report/profit_and_loss_statement/profit_and_loss_statement.json

* refactor: synced reports should be enabled on sites based on requirements

(cherry picked from commit 963bbc8729)

# Conflicts:
#	erpnext/accounts/report/general_ledger/general_ledger.json

* chore: resolve conflicts

---------

Co-authored-by: ruthra kumar <ruthra@erpnext.com>
Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-07-13 16:03:26 +05:30
ruthra kumar
e8cdad1c6b Merge pull request #57082 from frappe/mergify/bp/version-15-hotfix/pr-56628
fix(journal-entry): fetch outstanding on foreign currency (backport #56628)
2026-07-13 13:05:57 +05:30
mergify[bot]
808109abc0 feat(opening invoice creation tool): add project to opening invoice child row (backport #54662) (#56400)
Co-authored-by: Ravibharathi <131471282+ravibharathi656@users.noreply.github.com>
Co-authored-by: Diptanil Saha <diptanil@frappe.io>
2026-07-13 07:08:33 +00:00
SowmyaArunachalam
ace51fccfa fix(journal-entry): fetch outstanding on foreign currency
(cherry picked from commit 07f641c48c)
2026-07-13 07:07:36 +00:00
Mihir Kandoi
8bd35d2255 Merge pull request #57074 from frappe/mergify/bp/version-15-hotfix/pr-57073
fix: make represents company field in purchase invoice ignore user pe… (backport #57073)
2026-07-13 12:13:49 +05:30
Mihir Kandoi
80548a1282 Merge pull request #56986 from frappe/mergify/bp/version-15-hotfix/pr-56915
feat(stock): support partial transfer from pick list (backport #56915)
2026-07-13 11:57:34 +05:30
Mihir Kandoi
94d1fd6c42 chore: resolve conflicts 2026-07-13 11:54:45 +05:30
Sudharsanan11
001f3a36ab chore(stock): merge version-15-hotfix into pick list partial-transfer backport 2026-07-13 09:11:06 +05:30
Mihir Kandoi
b7f276989d fix: make represents company field in purchase invoice ignore user permissions
(cherry picked from commit 6729a53fee)

# Conflicts:
#	erpnext/accounts/doctype/purchase_invoice/purchase_invoice.json
2026-07-12 18:39:09 +00:00
Shllokkk
2e72d22328 Merge pull request #55720 from frappe/mergify/bp/version-15-hotfix/pr-55627
fix(inactive_customers): add allowlist for doctype filter and migrate… (backport #55627)
2026-07-12 13:44:24 +05:30
mergify[bot]
cfc546cf3f fix(accounts): retain invoice table on opening invoice creation error (backport #56353) (#57057)
Co-authored-by: diptanilsaha <diptanil@frappe.io>
Co-authored-by: Pandiyan P <pandiyanpalani37@gmail.com>
2026-07-12 07:46:00 +00:00
Shllokkk
ede2a68afd fix: set customer group in inactive customers report test setup 2026-07-12 12:56:41 +05:30
Shllokkk
29179240cf Merge branch 'version-15-hotfix' into mergify/bp/version-15-hotfix/pr-55627 2026-07-12 10:53:10 +05:30
mergify[bot]
bd6269918f fix: remove incorrect Payable account_type from Customer Deposits in Philippines CoA (backport #57018) (#57060)
Co-authored-by: Raghav Ruia <168326921+raghavisruia@users.noreply.github.com>
2026-07-11 17:58:53 +00:00
mergify[bot]
1cb4307578 fix: update events order by date asc (backport #56963) (#57055)
Co-authored-by: Pandiyan P <pandiyanpalani37@gmail.com>
Co-authored-by: nareshkannasln <nareshkannashanmugam@gmail.com>
2026-07-11 18:45:22 +05:30
mergify[bot]
3e2a734414 fix: map stock_qty in apply_price_list_on_item (backport #56869) (#57051)
* fix: map stock_qty in apply_price_list_on_item (#56869)

(cherry picked from commit 199eeff22c)

# Conflicts:
#	erpnext/stock/get_item_details.py

* chore: resolve conflicts

---------

Co-authored-by: Vishnu Priya Baskaran <145791817+ervishnucs@users.noreply.github.com>
Co-authored-by: diptanilsaha <diptanil@frappe.io>
2026-07-11 10:13:42 +00:00
mergify[bot]
0f6b2b68fa fix: fetch payment entry reference amounts from invoice (backport #56928) (#57041)
Co-authored-by: Vishnu Priya Baskaran <145791817+ervishnucs@users.noreply.github.com>
2026-07-10 11:50:22 +00:00
mergify[bot]
8688f1f51a fix: display outstanding amount using company default currency (backport #56785) (#57008)
Co-authored-by: S Sakthivel Murugan <s.sakthivelmurugan2003@gmail.com>
Co-authored-by: Vishnu Priya Baskaran <145791817+ervishnucs@users.noreply.github.com>
Co-authored-by: Diptanil Saha <diptanil@frappe.io>
2026-07-10 10:25:47 +00:00
mergify[bot]
9d654b7890 fix(stock): correct stock ageing value for moving average and lifo items (backport #56693) (#57016)
fix(stock): correct stock ageing value for moving average and lifo items (#56693)

* fix(stock): recompute moving average item slots

* test(stock): add test to validate the stock value of moving average items

* fix(stock): support lifo valuation in stock ageing report

lifo items were aged as fifo (oldest consumed first), so the report kept the
newest lots on hand and reported the wrong stock value and average age. prefetch
each item's valuation method (it can't be resolved mid-stream without breaking the
unbuffered cursor) and consume from the tail for lifo items. also reuse that shared
lookup in the moving average revaluation pass. scoped to plain items; batch, serial
and same-voucher repack legs stay on fifo.

* test(stock): add test for lifo consumption in stock ageing report

(cherry picked from commit 9cb6610b9e)

# Conflicts:
#	erpnext/stock/report/stock_ageing/stock_ageing.py

Co-authored-by: Sudharsanan Ashok <135326972+Sudharsanan11@users.noreply.github.com>
2026-07-10 15:44:39 +05:30
ruthra kumar
755e151764 Merge pull request #57022 from frappe/mergify/bp/version-15-hotfix/pr-56801
refactor: reversing exchange rate revaluation journals (backport #56801)
2026-07-10 13:19:01 +05:30
Mihir Kandoi
f14615e826 Merge pull request #57027 from aerele/backport-56913-version-15-hotfix
fix: make trend report based-on and group-by column labels translatable
2026-07-10 12:44:09 +05:30
Mihir Kandoi
12b826484b Merge pull request #57021 from aerele/backport-56923-version-15-hotfix
perf: avoid per-row Warehouse doc fetches in auto reorder job
2026-07-10 12:44:02 +05:30
Mihir Kandoi
9c0ea9ffbb Merge pull request #57019 from aerele/backport-56932-version-15-hotfix
fix: validate planned end date is not before planned start date in wo…
2026-07-10 12:43:01 +05:30
ruthra kumar
c89f9720bc chore: resolve conflicts 2026-07-10 12:33:53 +05:30
pandiyan
d2d5fae033 fix: make trend report based-on and group-by column labels translatable
based_wise_columns_query() and group_wise_column() built column labels as
raw strings, so headers like Item, Item Name, Customer, Supplier, and
Territory never went through the _() translation function and stayed in
English regardless of the user's language, while period and total columns
translated fine. Build these as column dicts with an explicit _()-wrapped
label instead, so they're translated the same way as the rest of the report.

(cherry picked from commit 015fa68fc0)
2026-07-10 12:01:56 +05:30