diff --git a/erpnext/__init__.py b/erpnext/__init__.py index 4c66d937c9..edc4c9be99 100644 --- a/erpnext/__init__.py +++ b/erpnext/__init__.py @@ -4,7 +4,6 @@ import frappe __version__ = '8.3.1' - def get_default_company(user=None): '''Get default company for user''' from frappe.defaults import get_user_default_as_list diff --git a/erpnext/accounts/doctype/sales_invoice/sales_invoice_dashboard.py b/erpnext/accounts/doctype/sales_invoice/sales_invoice_dashboard.py index bc9d76646b..bfe00ef94a 100644 --- a/erpnext/accounts/doctype/sales_invoice/sales_invoice_dashboard.py +++ b/erpnext/accounts/doctype/sales_invoice/sales_invoice_dashboard.py @@ -11,7 +11,8 @@ def get_data(): 'Sales Invoice': 'return_against' }, 'internal_links': { - 'Sales Order': ['items', 'sales_order'] + 'Sales Order': ['items', 'sales_order'], + 'Delivery Note': ['items', 'delivery_note'] }, 'transactions': [ { diff --git a/erpnext/accounts/report/accounts_receivable/accounts_receivable.html b/erpnext/accounts/report/accounts_receivable/accounts_receivable.html index b798d2b228..853b805135 100644 --- a/erpnext/accounts/report/accounts_receivable/accounts_receivable.html +++ b/erpnext/accounts/report/accounts_receivable/accounts_receivable.html @@ -1,9 +1,3 @@ -{% var letterhead= filters.letter_head || (frappe.get_doc(":Company", filters.company) && frappe.get_doc(":Company", filters.company).default_letter_head) || frappe.defaults.get_default("letter_head"); %} -{% if(letterhead) { %} -
- {%= frappe.boot.letter_heads[letterhead].header %} -
-{% } %}

{%= __(report.report_name) %}

{%= filters.customer || filters.supplier %}

diff --git a/erpnext/accounts/report/general_ledger/general_ledger.html b/erpnext/accounts/report/general_ledger/general_ledger.html index 0a2522568e..91cc3c990e 100644 --- a/erpnext/accounts/report/general_ledger/general_ledger.html +++ b/erpnext/accounts/report/general_ledger/general_ledger.html @@ -1,9 +1,3 @@ -{% var letterhead= filters.letter_head || (frappe.get_doc(":Company", filters.company) && frappe.get_doc(":Company", filters.company).default_letter_head) || frappe.defaults.get_default("letter_head"); %} -{% if(letterhead) { %} -
- {%= frappe.boot.letter_heads[letterhead].header %} -
-{% } %}

{%= __("Statement of Account") %}

{% if (filters.party_name) { %} diff --git a/erpnext/docs/assets/img/setup/email/email-alert-set-property.png b/erpnext/docs/assets/img/setup/email/email-alert-set-property.png new file mode 100644 index 0000000000..658b1494e6 Binary files /dev/null and b/erpnext/docs/assets/img/setup/email/email-alert-set-property.png differ diff --git a/erpnext/docs/user/manual/en/setting-up/email/email-alerts.md b/erpnext/docs/user/manual/en/setting-up/email/email-alerts.md index 9ec3073706..8d239ea9bb 100644 --- a/erpnext/docs/user/manual/en/setting-up/email/email-alerts.md +++ b/erpnext/docs/user/manual/en/setting-up/email/email-alerts.md @@ -42,6 +42,7 @@ Email alerts allow you to set conditions according to the field data in your doc The above example will send an Email Alert when a Task is saved with the status "Open" and the Expected End Date for the Task is the date on or before the date on which it was saved on. + ### Setting a Message You can use both Jinja Tags (`{% raw %}{{ doc.[field_name] }}{% endraw %}`) and HTML tags in the message textbox. @@ -64,6 +65,17 @@ You can use both Jinja Tags (`{% raw %}{{ doc.[field_name] }}{% endraw %}`) and --- +### Setting a Value after the Alert is Set + +Sometimes to make sure that the email alert is not sent multiple times, you can +define a custom property (via Customize Form) like "Email Alert Sent" and then +set this property after the alert is sent by setting the **Set Property After Alert** +field. + +Then you can use that as a condition in the **Condition** rules to ensure emails are not sent multiple times + +Setting Property in Email Alert + ### Example 1. Defining the Criteria