fix: misc fixes in demo data
- Generate demo data field copy - absolute imports - remove whitelisting where it's not required - telemetry - banner copy - move to background - clear bootinfo after setup
This commit is contained in:
parent
f2eb3d0f94
commit
3a21c90d10
@ -78,7 +78,11 @@ demo_master_doctypes = [
|
|||||||
"customer",
|
"customer",
|
||||||
"supplier",
|
"supplier",
|
||||||
]
|
]
|
||||||
demo_transaction_doctypes = ["purchase_invoice", "sales_invoice", "payment_entry", "journal_entry"]
|
demo_transaction_doctypes = [
|
||||||
|
"purchase_invoice",
|
||||||
|
"sales_invoice",
|
||||||
|
"payment_entry",
|
||||||
|
]
|
||||||
|
|
||||||
jinja = {
|
jinja = {
|
||||||
"methods": [
|
"methods": [
|
||||||
|
@ -40,7 +40,12 @@ erpnext.setup.slides_settings = [
|
|||||||
{ fieldname: 'fy_start_date', label: __('Financial Year Begins On'), fieldtype: 'Date', reqd: 1 },
|
{ fieldname: 'fy_start_date', label: __('Financial Year Begins On'), fieldtype: 'Date', reqd: 1 },
|
||||||
// end date should be hidden (auto calculated)
|
// end date should be hidden (auto calculated)
|
||||||
{ fieldname: 'fy_end_date', label: __('End Date'), fieldtype: 'Date', reqd: 1, hidden: 1 },
|
{ fieldname: 'fy_end_date', label: __('End Date'), fieldtype: 'Date', reqd: 1, hidden: 1 },
|
||||||
{ fieldname: 'setup_demo', label: __('Generate dummy data for demo'), fieldtype: 'Check'},
|
{ fieldtype: "Section Break" },
|
||||||
|
{
|
||||||
|
fieldname: 'setup_demo',
|
||||||
|
label: __('Generate Demo Data for Exploration'),
|
||||||
|
fieldtype: 'Check',
|
||||||
|
description: 'If checked, we will create demo data for you to explore the system. This demo data can be erased later.'},
|
||||||
],
|
],
|
||||||
|
|
||||||
onload: function (slide) {
|
onload: function (slide) {
|
||||||
|
@ -2,15 +2,19 @@ $(document).on("toolbar_setup", function() {
|
|||||||
if (frappe.boot.sysdefaults.demo_company) {
|
if (frappe.boot.sysdefaults.demo_company) {
|
||||||
erpnext.setup_clear_button();
|
erpnext.setup_clear_button();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// for first load
|
||||||
|
frappe.realtime.on("demo_data_complete", () => {
|
||||||
|
erpnext.setup_clear_button();
|
||||||
|
})
|
||||||
});
|
});
|
||||||
|
|
||||||
erpnext.setup_clear_button = function() {
|
erpnext.setup_clear_button = function() {
|
||||||
let message_string = __('Demo data is setup, use this button to clear before starting actual transactions');
|
let message_string = __("Demo data is present on the system, erase data before starting real usage.");
|
||||||
let $floatingBar = $(`
|
let $floatingBar = $(`
|
||||||
<div class="flex justify-content-center" style="width: 100%;">
|
<div class="flex justify-content-center" style="width: 100%;">
|
||||||
<div class="flex justify-content-center flex-col shadow rounded p-2"
|
<div class="flex justify-content-center flex-col shadow rounded p-2"
|
||||||
style="
|
style="
|
||||||
width: 50%;
|
|
||||||
background-color: #e0f2fe;
|
background-color: #e0f2fe;
|
||||||
position: fixed;
|
position: fixed;
|
||||||
bottom: 20px;
|
bottom: 20px;
|
||||||
@ -34,7 +38,7 @@ erpnext.setup_clear_button = function() {
|
|||||||
margin-right: 10px
|
margin-right: 10px
|
||||||
"
|
"
|
||||||
>
|
>
|
||||||
Clear
|
Clear Demo Data
|
||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -54,4 +58,4 @@ erpnext.setup_clear_button = function() {
|
|||||||
}
|
}
|
||||||
})
|
})
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
@ -13,15 +13,26 @@ from erpnext.accounts.utils import get_fiscal_year
|
|||||||
from erpnext.setup.setup_wizard.operations.install_fixtures import create_bank_account
|
from erpnext.setup.setup_wizard.operations.install_fixtures import create_bank_account
|
||||||
|
|
||||||
|
|
||||||
@frappe.whitelist()
|
|
||||||
def setup_demo_data():
|
def setup_demo_data():
|
||||||
company = create_demo_company()
|
from frappe.utils.telemetry import capture
|
||||||
process_masters()
|
|
||||||
make_transactions(company)
|
capture("demo_data_creation_started", "erpnext")
|
||||||
|
try:
|
||||||
|
company = create_demo_company()
|
||||||
|
process_masters()
|
||||||
|
make_transactions(company)
|
||||||
|
frappe.cache.delete_keys("bootinfo")
|
||||||
|
frappe.publish_realtime("demo_data_complete")
|
||||||
|
except Exception:
|
||||||
|
frappe.log_error("Failed to create demo data")
|
||||||
|
capture("demo_data_creation_failed", "erpnext", properties={"exception": frappe.get_traceback()})
|
||||||
|
raise
|
||||||
|
capture("demo_data_creation_completed", "erpnext")
|
||||||
|
|
||||||
|
|
||||||
@frappe.whitelist()
|
@frappe.whitelist()
|
||||||
def clear_demo_data():
|
def clear_demo_data():
|
||||||
|
frappe.only_for("System Manager")
|
||||||
company = frappe.db.get_single_value("Global Defaults", "demo_company")
|
company = frappe.db.get_single_value("Global Defaults", "demo_company")
|
||||||
create_transaction_deletion_record(company)
|
create_transaction_deletion_record(company)
|
||||||
clear_masters()
|
clear_masters()
|
||||||
|
@ -5,8 +5,8 @@
|
|||||||
import frappe
|
import frappe
|
||||||
from frappe import _
|
from frappe import _
|
||||||
|
|
||||||
from ..demo import setup_demo_data
|
from erpnext.setup.demo import setup_demo_data
|
||||||
from .operations import install_fixtures as fixtures
|
from erpnext.setup.setup_wizard.operations import install_fixtures as fixtures
|
||||||
|
|
||||||
|
|
||||||
def get_setup_stages(args=None):
|
def get_setup_stages(args=None):
|
||||||
@ -40,7 +40,7 @@ def get_setup_stages(args=None):
|
|||||||
{
|
{
|
||||||
"status": _("Setting up demo data"),
|
"status": _("Setting up demo data"),
|
||||||
"fail_msg": _("Failed to setup demo data"),
|
"fail_msg": _("Failed to setup demo data"),
|
||||||
"tasks": [{"fn": setup_demo, "args": args, "fail_msg": _("Failed to login")}],
|
"tasks": [{"fn": setup_demo, "args": args, "fail_msg": _("Failed to setup demo data")}],
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"status": _("Wrapping up"),
|
"status": _("Wrapping up"),
|
||||||
@ -71,7 +71,7 @@ def fin(args):
|
|||||||
|
|
||||||
def setup_demo(args):
|
def setup_demo(args):
|
||||||
if args.get("setup_demo"):
|
if args.get("setup_demo"):
|
||||||
setup_demo_data()
|
frappe.enqueue(setup_demo_data, enqueue_after_commit=True)
|
||||||
|
|
||||||
|
|
||||||
def login_as_first_user(args):
|
def login_as_first_user(args):
|
||||||
|
Loading…
x
Reference in New Issue
Block a user