Raffael Meyer
Raffael Meyer
Consider this scenario: we want to delete **Data Import Logs** to reduce the database size. When we use `frappe.delete_doc`, it creates a **Deleted Document** and a "Deleted" **Comment**. When we...
This report shows the aggregated perms a user has on a DocType, considering all of their roles. It differs from "Permitted Documents For User" in that it shows permissions per...
Second attempt at #26893 ~Do not add the empty state of "Multiselect" fields to the filters object.~ This would cause an empty filter to be printed, which is not what...
Introduced via: https://github.com/frappe/erpnext/pull/33874 ### Problem When marking a **Quotation** row as _Is Alternative_, the row is completely ignored in code. E.g. the row amount does not get updated, the tax...
The fields were previously mentioned as untranslated field names. Now we show translated field titles. The structure of def `validate_sales_order_references` and `validate_sales_invoice_references` was very similar, just a different title for...
### Before (a). If the `language` parameter is provided, return the text for this language. If this doesn't exist, return `None`. (b.) If the `language` parameter is not provided, return...
Some link fields have a special format: if an _Item Name_ (e.g. "Apple") field is found next to an _Item Code_ link field (e.g. "123"), the link is formatted as...