fix!: require sender and message for contact us page (#34707)
* fix: require sender and message for contact us page
* refactor: dont override frappe.send_message from client side
used override_whitelisted_method hook for the same
(cherry picked from commit f193393f57)
Co-authored-by: Ritwik Puri <ritwikpuri5678@gmail.com>
* fix: Taxes aren't discounted on early payment discount
- Deductions in payment entry must be split into income loss and tax loss
- Compute total discount in percentage, makes discounting different amounts proportionately easier
(cherry picked from commit 768c3a4927)
* fix: Recalculate difference amount after setting deductions
(cherry picked from commit 75ec0a0a85)
* fix: Set deductions in base currency
- Use field precision to get more accurate values
(cherry picked from commit dc2998f544)
* fix: Back update discounted amount in Invoice based on discount type
- Discount value was always trated as a percentage on back updation
(cherry picked from commit 2ae5834290)
* test: PE from SI with early payment discount amount & PE assertions in discount % test
(cherry picked from commit c217bb2018)
* fix: Set deduction amount in company currency on Doctype
- Even via JS, deductions amount is always in company currency
- Since there is nothing dynamic about this field, set it in the doctype spec itself
- fixed: Inconsistency between label currency and field currency formatted value
(cherry picked from commit 7f2e7badff)
* fix: Don't add to deductions if amount is 0
- misc: better docstring
(cherry picked from commit f02fc8acf0)
* fix: Paid amount must be discounted considering accounting currency
- Accounting is in the same currency if party currency and company currency is the same
- If accounting is in the same currency, paid and recvd amount is in the base currency
- Then, discount amount must also be in the base currency as it is deducted from paid amount
- Received amount must be in base currency if not multi currency
- cleanup: Deductions setting broken into smaller functions
(cherry picked from commit 761f68d7bf)
* fix: Multi-currency SI with base currency PE
- Return total discount loss in base currency
- Allocate payment based on terms: Set allocated amount in references table in base currency if accounting is in that currency
- Allocate payment based on terms: While back updating set paid amount (payment schedule) in transaction currency always
- minor: discount msgprint in correct currency
(cherry picked from commit b09c2381ca)
* test: Multi currency SI with multi-currency accounting and single currency accounting + Early payment discount
(cherry picked from commit 9abf0ef615)
# Conflicts:
# erpnext/accounts/doctype/payment_entry/test_payment_entry.py
* fix: Handle rounding more gracefully
- Round off pending discount loss to avoid miniscule losses rounded to 0.0 that are added in deductions
- Use base amounts to calculate base losses instead of using conversion factor which increases rounding error
- Round of total base loss instead of individual income and tax losses to reduce rounding error
- Use default round off account for pending rounding loss in deductions
(cherry picked from commit caa1a3dccf)
* fix: Provision to apply early payment discount if payment is recorded late
- Party could have paid on time but payment is recorded late
- Prompt for reference date so that discount is applied while mapping
- Prompt only if discount in payment schedule of valid doctypes
- test: Reference date and impact on PE
- `make_payment_entry` (JS) must be able to access `this`
(cherry picked from commit d6d0163514)
# Conflicts:
# erpnext/accounts/doctype/payment_entry/payment_entry.py
# erpnext/accounts/doctype/purchase_invoice/purchase_invoice.js
# erpnext/buying/doctype/purchase_order/purchase_order.js
# erpnext/public/js/controllers/transaction.js
* feat: Make Tax loss booking optional
- Checkbox in Accounts Settings
- Apply checkbox in PE deductions setting logic
- Adjust tests
(cherry picked from commit 216a46bd66)
# Conflicts:
# erpnext/accounts/doctype/accounts_settings/accounts_settings.json
* fix: Merge conflicts
* fix: 'Donation' does not have `company_currency` field
- Make sure check uses this field only for eligible documents
---------
Co-authored-by: marination <maricadsouza221197@gmail.com>
* chore: auto fill asset name and available for use date
(cherry picked from commit af3e807607)
# Conflicts:
# erpnext/assets/doctype/asset/asset.json
* Update asset.json
---------
Co-authored-by: anandbaburajan <anandbaburajan@gmail.com>
fix: Party Name in SOA print when viewed from Customer/Supplier master (#34597)
fix: Party Name in SOA print when viewd from Customer/Supplier master
(cherry picked from commit 50c1172f29)
Co-authored-by: Deepesh Garg <deepeshgarg6@gmail.com>
* fix: searchfield not working for cuctsomer, supplier as per customize form
(cherry picked from commit 46d148defd)
* test: added test case to validate seachfields for customer, supplier
(cherry picked from commit 5f84993bae)
* fix: not able to select customer / supplier
---------
Co-authored-by: Rohit Waghchaure <rohitw1991@gmail.com>
* fix: report GL for invoice when advance has different exchange rate
If deferred revenue/expense is enabled for any item, don't repost.
* test: cancelling advance should remove exchange gain/loss
If there are no deferred revenue/expense cancelling advance should
cancel the exchange gain/loss booked due to different exchange rates
of payment and its linked invoice
* fix: incorrect schedule after repair for WDV and DD
* chore: only fix schedules for assets with calc_depr true
* fix: incorrect schedule after repair for straight line and manual
2 New test cases added.
1. Standalone Cr notes will be reported as normal Invoices
2. Cr notes against an Invoice will not overallocate qty if there are
multiple instances of same item
(cherry picked from commit cc61daeec4)