Fixed moduleview language issue
This commit is contained in:
parent
7e1b75a705
commit
08ef467fc6
@ -1,307 +1,308 @@
|
||||
from frappe import _
|
||||
|
||||
data = [
|
||||
{
|
||||
"label": _("Documents"),
|
||||
"icon": "icon-star",
|
||||
"items": [
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Journal Voucher",
|
||||
"description": _("Accounting journal entries.")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Sales Invoice",
|
||||
"description": _("Bills raised to Customers.")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Purchase Invoice",
|
||||
"description": _("Bills raised by Suppliers.")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Customer",
|
||||
"description": _("Customer database.")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Supplier",
|
||||
"description": _("Supplier database.")
|
||||
},
|
||||
{
|
||||
"type": "page",
|
||||
"name": "Accounts Browser",
|
||||
"icon": "icon-sitemap",
|
||||
"label": _("Chart of Accounts"),
|
||||
"route": "Accounts Browser/Account",
|
||||
"description": _("Tree of finanial accounts."),
|
||||
"doctype": "Account",
|
||||
},
|
||||
]
|
||||
},
|
||||
{
|
||||
"label": _("Tools"),
|
||||
"icon": "icon-wrench",
|
||||
"items": [
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Bank Reconciliation",
|
||||
"description": _("Update bank payment dates with journals.")
|
||||
},
|
||||
# {
|
||||
# "type": "doctype",
|
||||
# "name": "Payment to Invoice Matching Tool",
|
||||
# "description": _("Match non-linked Invoices and Payments.")
|
||||
# },
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Period Closing Voucher",
|
||||
"description": _("Close Balance Sheet and book Profit or Loss.")
|
||||
},
|
||||
]
|
||||
},
|
||||
{
|
||||
"label": _("Setup"),
|
||||
"icon": "icon-cog",
|
||||
"items": [
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Fiscal Year",
|
||||
"description": _("Financial / accounting year.")
|
||||
},
|
||||
{
|
||||
"type": "page",
|
||||
"name": "Accounts Browser",
|
||||
"icon": "icon-sitemap",
|
||||
"label": _("Chart of Accounts"),
|
||||
"route": "Accounts Browser/Account",
|
||||
"description": _("Tree of finanial accounts."),
|
||||
"doctype": "Account",
|
||||
},
|
||||
{
|
||||
"type": "page",
|
||||
"name": "Accounts Browser",
|
||||
"icon": "icon-sitemap",
|
||||
"label": _("Chart of Cost Centers"),
|
||||
"route": "Accounts Browser/Cost Center",
|
||||
"description": _("Tree of finanial Cost Centers."),
|
||||
"doctype": "Cost Center",
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Accounts Settings",
|
||||
"description": _("Default settings for accounting transactions.")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Sales Taxes and Charges Master",
|
||||
"description": _("Tax template for selling transactions.")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Purchase Taxes and Charges Master",
|
||||
"description": _("Tax template for buying transactions.")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "POS Setting",
|
||||
"label": _("Point-of-Sale Setting"),
|
||||
"description": _("Rules to calculate shipping amount for a sale")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Shipping Rule",
|
||||
"description": _("Rules for adding shipping costs.")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Pricing Rule",
|
||||
"description": _("Rules for applying pricing and discount.")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Currency",
|
||||
"description": _("Enable / disable currencies.")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Currency Exchange",
|
||||
"description": _("Currency exchange rate master.")
|
||||
},
|
||||
{
|
||||
"type":"doctype",
|
||||
"name": "Budget Distribution",
|
||||
"description": _("Seasonality for setting budgets.")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name":"Terms and Conditions",
|
||||
"label": _("Terms and Conditions Template"),
|
||||
"description": _("Template of terms or contract.")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name":"Mode of Payment",
|
||||
"description": _("e.g. Bank, Cash, Credit Card")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name":"C-Form",
|
||||
"description": _("C-Form records"),
|
||||
"country": "India"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"label": _("Main Reports"),
|
||||
"icon": "icon-table",
|
||||
"items": [
|
||||
{
|
||||
"type": "report",
|
||||
"name":"General Ledger",
|
||||
"doctype": "GL Entry",
|
||||
"is_query_report": True,
|
||||
},
|
||||
{
|
||||
"type": "page",
|
||||
"name": "trial-balance",
|
||||
"label": _("Trial Balance"),
|
||||
"icon": "icon-table"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"name": "Accounts Receivable",
|
||||
"doctype": "Sales Invoice",
|
||||
"is_query_report": True
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"name": "Accounts Payable",
|
||||
"doctype": "Purchase Invoice",
|
||||
"is_query_report": True
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"name": "Sales Register",
|
||||
"doctype": "Sales Invoice",
|
||||
"is_query_report": True
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"name": "Purchase Register",
|
||||
"doctype": "Purchase Invoice",
|
||||
"is_query_report": True
|
||||
},
|
||||
{
|
||||
"type": "page",
|
||||
"name": "financial-analytics",
|
||||
"label": _("Financial Analytics"),
|
||||
"icon": "icon-bar-chart",
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"name": "Gross Profit",
|
||||
"doctype": "Sales Invoice",
|
||||
"is_query_report": True
|
||||
},
|
||||
]
|
||||
},
|
||||
{
|
||||
"label": _("Standard Reports"),
|
||||
"icon": "icon-list",
|
||||
"items": [
|
||||
{
|
||||
"type": "report",
|
||||
"name": "Bank Reconciliation Statement",
|
||||
"is_query_report": True,
|
||||
"doctype": "Journal Voucher"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"name": "Ordered Items To Be Billed",
|
||||
"is_query_report": True,
|
||||
"doctype": "Sales Invoice"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"name": "Delivered Items To Be Billed",
|
||||
"is_query_report": True,
|
||||
"doctype": "Sales Invoice"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"name": "Purchase Order Items To Be Billed",
|
||||
"is_query_report": True,
|
||||
"doctype": "Purchase Invoice"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"name": "Received Items To Be Billed",
|
||||
"is_query_report": True,
|
||||
"doctype": "Purchase Invoice"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"name": "Bank Clearance Summary",
|
||||
"is_query_report": True,
|
||||
"doctype": "Journal Voucher"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"name": "Payment Period Based On Invoice Date",
|
||||
"is_query_report": True,
|
||||
"doctype": "Journal Voucher"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"name": "Sales Partners Commission",
|
||||
"is_query_report": True,
|
||||
"doctype": "Sales Invoice"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"name": "Customer Account Head",
|
||||
"is_query_report": True,
|
||||
"doctype": "Account"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"name": "Supplier Account Head",
|
||||
"is_query_report": True,
|
||||
"doctype": "Account"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"name": "Item-wise Sales Register",
|
||||
"is_query_report": True,
|
||||
"doctype": "Sales Invoice"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"name": "Item-wise Purchase Register",
|
||||
"is_query_report": True,
|
||||
"doctype": "Purchase Invoice"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"name": "Budget Variance Report",
|
||||
"is_query_report": True,
|
||||
"doctype": "Cost Center"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"name": "Purchase Invoice Trends",
|
||||
"is_query_report": True,
|
||||
"doctype": "Purchase Invoice"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"name": "Sales Invoice Trends",
|
||||
"is_query_report": True,
|
||||
"doctype": "Sales Invoice"
|
||||
},
|
||||
]
|
||||
},
|
||||
]
|
||||
def get_data():
|
||||
return [
|
||||
{
|
||||
"label": _("Documents"),
|
||||
"icon": "icon-star",
|
||||
"items": [
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Journal Voucher",
|
||||
"description": _("Accounting journal entries.")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Sales Invoice",
|
||||
"description": _("Bills raised to Customers.")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Purchase Invoice",
|
||||
"description": _("Bills raised by Suppliers.")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Customer",
|
||||
"description": _("Customer database.")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Supplier",
|
||||
"description": _("Supplier database.")
|
||||
},
|
||||
{
|
||||
"type": "page",
|
||||
"name": "Accounts Browser",
|
||||
"icon": "icon-sitemap",
|
||||
"label": _("Chart of Accounts"),
|
||||
"route": "Accounts Browser/Account",
|
||||
"description": _("Tree of finanial accounts."),
|
||||
"doctype": "Account",
|
||||
},
|
||||
]
|
||||
},
|
||||
{
|
||||
"label": _("Tools"),
|
||||
"icon": "icon-wrench",
|
||||
"items": [
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Bank Reconciliation",
|
||||
"description": _("Update bank payment dates with journals.")
|
||||
},
|
||||
# {
|
||||
# "type": "doctype",
|
||||
# "name": "Payment to Invoice Matching Tool",
|
||||
# "description": _("Match non-linked Invoices and Payments.")
|
||||
# },
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Period Closing Voucher",
|
||||
"description": _("Close Balance Sheet and book Profit or Loss.")
|
||||
},
|
||||
]
|
||||
},
|
||||
{
|
||||
"label": _("Setup"),
|
||||
"icon": "icon-cog",
|
||||
"items": [
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Fiscal Year",
|
||||
"description": _("Financial / accounting year.")
|
||||
},
|
||||
{
|
||||
"type": "page",
|
||||
"name": "Accounts Browser",
|
||||
"icon": "icon-sitemap",
|
||||
"label": _("Chart of Accounts"),
|
||||
"route": "Accounts Browser/Account",
|
||||
"description": _("Tree of finanial accounts."),
|
||||
"doctype": "Account",
|
||||
},
|
||||
{
|
||||
"type": "page",
|
||||
"name": "Accounts Browser",
|
||||
"icon": "icon-sitemap",
|
||||
"label": _("Chart of Cost Centers"),
|
||||
"route": "Accounts Browser/Cost Center",
|
||||
"description": _("Tree of finanial Cost Centers."),
|
||||
"doctype": "Cost Center",
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Accounts Settings",
|
||||
"description": _("Default settings for accounting transactions.")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Sales Taxes and Charges Master",
|
||||
"description": _("Tax template for selling transactions.")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Purchase Taxes and Charges Master",
|
||||
"description": _("Tax template for buying transactions.")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "POS Setting",
|
||||
"label": _("Point-of-Sale Setting"),
|
||||
"description": _("Rules to calculate shipping amount for a sale")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Shipping Rule",
|
||||
"description": _("Rules for adding shipping costs.")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Pricing Rule",
|
||||
"description": _("Rules for applying pricing and discount.")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Currency",
|
||||
"description": _("Enable / disable currencies.")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Currency Exchange",
|
||||
"description": _("Currency exchange rate master.")
|
||||
},
|
||||
{
|
||||
"type":"doctype",
|
||||
"name": "Budget Distribution",
|
||||
"description": _("Seasonality for setting budgets.")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name":"Terms and Conditions",
|
||||
"label": _("Terms and Conditions Template"),
|
||||
"description": _("Template of terms or contract.")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name":"Mode of Payment",
|
||||
"description": _("e.g. Bank, Cash, Credit Card")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name":"C-Form",
|
||||
"description": _("C-Form records"),
|
||||
"country": "India"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"label": _("Main Reports"),
|
||||
"icon": "icon-table",
|
||||
"items": [
|
||||
{
|
||||
"type": "report",
|
||||
"name":"General Ledger",
|
||||
"doctype": "GL Entry",
|
||||
"is_query_report": True,
|
||||
},
|
||||
{
|
||||
"type": "page",
|
||||
"name": "trial-balance",
|
||||
"label": _("Trial Balance"),
|
||||
"icon": "icon-table"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"name": "Accounts Receivable",
|
||||
"doctype": "Sales Invoice",
|
||||
"is_query_report": True
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"name": "Accounts Payable",
|
||||
"doctype": "Purchase Invoice",
|
||||
"is_query_report": True
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"name": "Sales Register",
|
||||
"doctype": "Sales Invoice",
|
||||
"is_query_report": True
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"name": "Purchase Register",
|
||||
"doctype": "Purchase Invoice",
|
||||
"is_query_report": True
|
||||
},
|
||||
{
|
||||
"type": "page",
|
||||
"name": "financial-analytics",
|
||||
"label": _("Financial Analytics"),
|
||||
"icon": "icon-bar-chart",
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"name": "Gross Profit",
|
||||
"doctype": "Sales Invoice",
|
||||
"is_query_report": True
|
||||
},
|
||||
]
|
||||
},
|
||||
{
|
||||
"label": _("Standard Reports"),
|
||||
"icon": "icon-list",
|
||||
"items": [
|
||||
{
|
||||
"type": "report",
|
||||
"name": "Bank Reconciliation Statement",
|
||||
"is_query_report": True,
|
||||
"doctype": "Journal Voucher"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"name": "Ordered Items To Be Billed",
|
||||
"is_query_report": True,
|
||||
"doctype": "Sales Invoice"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"name": "Delivered Items To Be Billed",
|
||||
"is_query_report": True,
|
||||
"doctype": "Sales Invoice"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"name": "Purchase Order Items To Be Billed",
|
||||
"is_query_report": True,
|
||||
"doctype": "Purchase Invoice"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"name": "Received Items To Be Billed",
|
||||
"is_query_report": True,
|
||||
"doctype": "Purchase Invoice"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"name": "Bank Clearance Summary",
|
||||
"is_query_report": True,
|
||||
"doctype": "Journal Voucher"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"name": "Payment Period Based On Invoice Date",
|
||||
"is_query_report": True,
|
||||
"doctype": "Journal Voucher"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"name": "Sales Partners Commission",
|
||||
"is_query_report": True,
|
||||
"doctype": "Sales Invoice"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"name": "Customer Account Head",
|
||||
"is_query_report": True,
|
||||
"doctype": "Account"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"name": "Supplier Account Head",
|
||||
"is_query_report": True,
|
||||
"doctype": "Account"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"name": "Item-wise Sales Register",
|
||||
"is_query_report": True,
|
||||
"doctype": "Sales Invoice"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"name": "Item-wise Purchase Register",
|
||||
"is_query_report": True,
|
||||
"doctype": "Purchase Invoice"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"name": "Budget Variance Report",
|
||||
"is_query_report": True,
|
||||
"doctype": "Cost Center"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"name": "Purchase Invoice Trends",
|
||||
"is_query_report": True,
|
||||
"doctype": "Purchase Invoice"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"name": "Sales Invoice Trends",
|
||||
"is_query_report": True,
|
||||
"doctype": "Sales Invoice"
|
||||
},
|
||||
]
|
||||
},
|
||||
]
|
||||
|
@ -1,169 +1,170 @@
|
||||
from frappe import _
|
||||
|
||||
data = [
|
||||
{
|
||||
"label": _("Documents"),
|
||||
"icon": "icon-star",
|
||||
"items": [
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Supplier",
|
||||
"description": _("Supplier database."),
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Material Request",
|
||||
"description": _("Request for purchase."),
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Supplier Quotation",
|
||||
"description": _("Quotations received from Suppliers."),
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Purchase Order",
|
||||
"description": _("Purchase Orders given to Suppliers."),
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Contact",
|
||||
"description": _("All Contacts."),
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Address",
|
||||
"description": _("All Addresses."),
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Item",
|
||||
"description": _("All Products or Services."),
|
||||
},
|
||||
]
|
||||
},
|
||||
{
|
||||
"label": _("Setup"),
|
||||
"icon": "icon-cog",
|
||||
"items": [
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Buying Settings",
|
||||
"description": _("Default settings for buying transactions.")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Supplier Type",
|
||||
"description": _("Supplier Type master.")
|
||||
},
|
||||
{
|
||||
"type": "page",
|
||||
"name": "Sales Browser",
|
||||
"icon": "icon-sitemap",
|
||||
"label": _("Item Group Tree"),
|
||||
"link": "Sales Browser/Item Group",
|
||||
"description": _("Tree of Item Groups."),
|
||||
"doctype": "Item Group",
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name":"Terms and Conditions",
|
||||
"label": _("Terms and Conditions Template"),
|
||||
"description": _("Template of terms or contract.")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Purchase Taxes and Charges Master",
|
||||
"description": _("Tax template for buying transactions.")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Price List",
|
||||
"description": _("Price List master.")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Item Price",
|
||||
"description": _("Multiple Item prices."),
|
||||
"route": "Report/Item Price"
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Pricing Rule",
|
||||
"description": _("Rules for applying pricing and discount.")
|
||||
},
|
||||
]
|
||||
},
|
||||
{
|
||||
"label": _("Main Reports"),
|
||||
"icon": "icon-table",
|
||||
"items": [
|
||||
{
|
||||
"type": "page",
|
||||
"name": "purchase-analytics",
|
||||
"label": _("Purchase Analytics"),
|
||||
"icon": "icon-bar-chart",
|
||||
},
|
||||
]
|
||||
},
|
||||
{
|
||||
"label": _("Standard Reports"),
|
||||
"icon": "icon-list",
|
||||
"items": [
|
||||
{
|
||||
"type": "report",
|
||||
"is_query_report": True,
|
||||
"name": "Items To Be Requested",
|
||||
"doctype": "Item"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"is_query_report": True,
|
||||
"name": "Requested Items To Be Ordered",
|
||||
"doctype": "Material Request"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"is_query_report": True,
|
||||
"name": "Material Requests for which Supplier Quotations are not created",
|
||||
"doctype": "Material Request"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"is_query_report": True,
|
||||
"name": "Purchase In Transit",
|
||||
"doctype": "Purchase Order"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"is_query_report": True,
|
||||
"name": "Item-wise Purchase History",
|
||||
"doctype": "Item"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"is_query_report": True,
|
||||
"name": "Item-wise Last Purchase Rate",
|
||||
"doctype": "Item"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"is_query_report": True,
|
||||
"name": "Purchase Order Trends",
|
||||
"doctype": "Purchase Order"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"is_query_report": True,
|
||||
"name": "Supplier Addresses And Contacts",
|
||||
"doctype": "Supplier"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"is_query_report": True,
|
||||
"name": "Supplier-Wise Sales Analytics",
|
||||
"doctype": "Stock Ledger Entry"
|
||||
}
|
||||
]
|
||||
},
|
||||
]
|
||||
def get_data():
|
||||
return [
|
||||
{
|
||||
"label": _("Documents"),
|
||||
"icon": "icon-star",
|
||||
"items": [
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Supplier",
|
||||
"description": _("Supplier database."),
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Material Request",
|
||||
"description": _("Request for purchase."),
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Supplier Quotation",
|
||||
"description": _("Quotations received from Suppliers."),
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Purchase Order",
|
||||
"description": _("Purchase Orders given to Suppliers."),
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Contact",
|
||||
"description": _("All Contacts."),
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Address",
|
||||
"description": _("All Addresses."),
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Item",
|
||||
"description": _("All Products or Services."),
|
||||
},
|
||||
]
|
||||
},
|
||||
{
|
||||
"label": _("Setup"),
|
||||
"icon": "icon-cog",
|
||||
"items": [
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Buying Settings",
|
||||
"description": _("Default settings for buying transactions.")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Supplier Type",
|
||||
"description": _("Supplier Type master.")
|
||||
},
|
||||
{
|
||||
"type": "page",
|
||||
"name": "Sales Browser",
|
||||
"icon": "icon-sitemap",
|
||||
"label": _("Item Group Tree"),
|
||||
"link": "Sales Browser/Item Group",
|
||||
"description": _("Tree of Item Groups."),
|
||||
"doctype": "Item Group",
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name":"Terms and Conditions",
|
||||
"label": _("Terms and Conditions Template"),
|
||||
"description": _("Template of terms or contract.")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Purchase Taxes and Charges Master",
|
||||
"description": _("Tax template for buying transactions.")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Price List",
|
||||
"description": _("Price List master.")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Item Price",
|
||||
"description": _("Multiple Item prices."),
|
||||
"route": "Report/Item Price"
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Pricing Rule",
|
||||
"description": _("Rules for applying pricing and discount.")
|
||||
},
|
||||
]
|
||||
},
|
||||
{
|
||||
"label": _("Main Reports"),
|
||||
"icon": "icon-table",
|
||||
"items": [
|
||||
{
|
||||
"type": "page",
|
||||
"name": "purchase-analytics",
|
||||
"label": _("Purchase Analytics"),
|
||||
"icon": "icon-bar-chart",
|
||||
},
|
||||
]
|
||||
},
|
||||
{
|
||||
"label": _("Standard Reports"),
|
||||
"icon": "icon-list",
|
||||
"items": [
|
||||
{
|
||||
"type": "report",
|
||||
"is_query_report": True,
|
||||
"name": "Items To Be Requested",
|
||||
"doctype": "Item"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"is_query_report": True,
|
||||
"name": "Requested Items To Be Ordered",
|
||||
"doctype": "Material Request"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"is_query_report": True,
|
||||
"name": "Material Requests for which Supplier Quotations are not created",
|
||||
"doctype": "Material Request"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"is_query_report": True,
|
||||
"name": "Purchase In Transit",
|
||||
"doctype": "Purchase Order"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"is_query_report": True,
|
||||
"name": "Item-wise Purchase History",
|
||||
"doctype": "Item"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"is_query_report": True,
|
||||
"name": "Item-wise Last Purchase Rate",
|
||||
"doctype": "Item"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"is_query_report": True,
|
||||
"name": "Purchase Order Trends",
|
||||
"doctype": "Purchase Order"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"is_query_report": True,
|
||||
"name": "Supplier Addresses And Contacts",
|
||||
"doctype": "Supplier"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"is_query_report": True,
|
||||
"name": "Supplier-Wise Sales Analytics",
|
||||
"doctype": "Stock Ledger Entry"
|
||||
}
|
||||
]
|
||||
},
|
||||
]
|
||||
|
@ -1,197 +1,198 @@
|
||||
from frappe import _
|
||||
|
||||
data = [
|
||||
{
|
||||
"label": _("Documents"),
|
||||
"icon": "icon-star",
|
||||
"items": [
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Employee",
|
||||
"description": _("Employee records."),
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Salary Slip",
|
||||
"description": _("Monthly salary statement."),
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Leave Application",
|
||||
"description": _("Applications for leave."),
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Attendance",
|
||||
"description": _("Attendance record."),
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Expense Claim",
|
||||
"description": _("Claims for company expense."),
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Appraisal",
|
||||
"description": _("Performance appraisal."),
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Job Applicant",
|
||||
"description": _("Applicant for a Job."),
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Job Opening",
|
||||
"description": _("Opening for a Job."),
|
||||
},
|
||||
]
|
||||
},
|
||||
{
|
||||
"label": _("Tools"),
|
||||
"icon": "icon-wrench",
|
||||
"items": [
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Salary Manager",
|
||||
"label": _("Process Payroll"),
|
||||
"description":_("Generate Salary Slips"),
|
||||
"hide_count": True
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Upload Attendance",
|
||||
"description":_("Upload attendance from a .csv file"),
|
||||
"hide_count": True
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Leave Control Panel",
|
||||
"label": _("Leave Allocation Tool"),
|
||||
"description":_("Allocate leaves for the year."),
|
||||
"hide_count": True
|
||||
},
|
||||
]
|
||||
},
|
||||
{
|
||||
"label": _("Setup"),
|
||||
"icon": "icon-cog",
|
||||
"items": [
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "HR Settings",
|
||||
"description": _("Settings for HR Module")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Employee",
|
||||
"description": _("Employee master.")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Employment Type",
|
||||
"description": _("Types of employment (permanent, contract, intern etc.).")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Branch",
|
||||
"description": _("Organization branch master.")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Department",
|
||||
"description": _("Organization unit (department) master.")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Designation",
|
||||
"description": _("Employee designation (e.g. CEO, Director etc.).")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Salary Structure",
|
||||
"description": _("Salary template master.")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Earning Type",
|
||||
"description": _("Salary components.")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Deduction Type",
|
||||
"description": _("Tax and other salary deductions.")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Leave Allocation",
|
||||
"description": _("Allocate leaves for a period.")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name":"Leave Type",
|
||||
"description": _("Type of leaves like casual, sick etc."),
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Holiday List",
|
||||
"description": _("Holiday master.")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Leave Block List",
|
||||
"description": _("Block leave applications by department.")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Appraisal Template",
|
||||
"description": _("Template for performance appraisals.")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Expense Claim Type",
|
||||
"description": _("Types of Expense Claim.")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Jobs Email Settings",
|
||||
"description": _("Setup incoming server for jobs email id. (e.g. jobs@example.com)")
|
||||
},
|
||||
]
|
||||
},
|
||||
{
|
||||
"label": _("Standard Reports"),
|
||||
"icon": "icon-list",
|
||||
"items": [
|
||||
{
|
||||
"type": "report",
|
||||
"is_query_report": True,
|
||||
"name": "Employee Leave Balance",
|
||||
"doctype": "Leave Application"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"is_query_report": True,
|
||||
"name": "Employee Birthday",
|
||||
"doctype": "Employee"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"name": "Employee Information",
|
||||
"doctype": "Employee"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"is_query_report": True,
|
||||
"name": "Monthly Salary Register",
|
||||
"doctype": "Salary Slip"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"is_query_report": True,
|
||||
"name": "Monthly Attendance Sheet",
|
||||
"doctype": "Attendance"
|
||||
},
|
||||
]
|
||||
},
|
||||
]
|
||||
def get_data():
|
||||
return [
|
||||
{
|
||||
"label": _("Documents"),
|
||||
"icon": "icon-star",
|
||||
"items": [
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Employee",
|
||||
"description": _("Employee records."),
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Salary Slip",
|
||||
"description": _("Monthly salary statement."),
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Leave Application",
|
||||
"description": _("Applications for leave."),
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Attendance",
|
||||
"description": _("Attendance record."),
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Expense Claim",
|
||||
"description": _("Claims for company expense."),
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Appraisal",
|
||||
"description": _("Performance appraisal."),
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Job Applicant",
|
||||
"description": _("Applicant for a Job."),
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Job Opening",
|
||||
"description": _("Opening for a Job."),
|
||||
},
|
||||
]
|
||||
},
|
||||
{
|
||||
"label": _("Tools"),
|
||||
"icon": "icon-wrench",
|
||||
"items": [
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Salary Manager",
|
||||
"label": _("Process Payroll"),
|
||||
"description":_("Generate Salary Slips"),
|
||||
"hide_count": True
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Upload Attendance",
|
||||
"description":_("Upload attendance from a .csv file"),
|
||||
"hide_count": True
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Leave Control Panel",
|
||||
"label": _("Leave Allocation Tool"),
|
||||
"description":_("Allocate leaves for the year."),
|
||||
"hide_count": True
|
||||
},
|
||||
]
|
||||
},
|
||||
{
|
||||
"label": _("Setup"),
|
||||
"icon": "icon-cog",
|
||||
"items": [
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "HR Settings",
|
||||
"description": _("Settings for HR Module")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Employee",
|
||||
"description": _("Employee master.")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Employment Type",
|
||||
"description": _("Types of employment (permanent, contract, intern etc.).")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Branch",
|
||||
"description": _("Organization branch master.")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Department",
|
||||
"description": _("Organization unit (department) master.")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Designation",
|
||||
"description": _("Employee designation (e.g. CEO, Director etc.).")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Salary Structure",
|
||||
"description": _("Salary template master.")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Earning Type",
|
||||
"description": _("Salary components.")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Deduction Type",
|
||||
"description": _("Tax and other salary deductions.")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Leave Allocation",
|
||||
"description": _("Allocate leaves for a period.")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name":"Leave Type",
|
||||
"description": _("Type of leaves like casual, sick etc."),
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Holiday List",
|
||||
"description": _("Holiday master.")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Leave Block List",
|
||||
"description": _("Block leave applications by department.")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Appraisal Template",
|
||||
"description": _("Template for performance appraisals.")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Expense Claim Type",
|
||||
"description": _("Types of Expense Claim.")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Jobs Email Settings",
|
||||
"description": _("Setup incoming server for jobs email id. (e.g. jobs@example.com)")
|
||||
},
|
||||
]
|
||||
},
|
||||
{
|
||||
"label": _("Standard Reports"),
|
||||
"icon": "icon-list",
|
||||
"items": [
|
||||
{
|
||||
"type": "report",
|
||||
"is_query_report": True,
|
||||
"name": "Employee Leave Balance",
|
||||
"doctype": "Leave Application"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"is_query_report": True,
|
||||
"name": "Employee Birthday",
|
||||
"doctype": "Employee"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"name": "Employee Information",
|
||||
"doctype": "Employee"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"is_query_report": True,
|
||||
"name": "Monthly Salary Register",
|
||||
"doctype": "Salary Slip"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"is_query_report": True,
|
||||
"name": "Monthly Attendance Sheet",
|
||||
"doctype": "Attendance"
|
||||
},
|
||||
]
|
||||
},
|
||||
]
|
||||
|
@ -1,78 +1,79 @@
|
||||
from frappe import _
|
||||
|
||||
data = [
|
||||
{
|
||||
"label": _("Documents"),
|
||||
"icon": "icon-star",
|
||||
"items": [
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "BOM",
|
||||
"description": _("Bill of Materials (BOM)"),
|
||||
"label": _("Bill of Material")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Production Order",
|
||||
"description": _("Orders released for production."),
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Item",
|
||||
"description": _("All Products or Services."),
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Workstation",
|
||||
"description": _("Where manufacturing operations are carried out."),
|
||||
},
|
||||
def get_data():
|
||||
return [
|
||||
{
|
||||
"label": _("Documents"),
|
||||
"icon": "icon-star",
|
||||
"items": [
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "BOM",
|
||||
"description": _("Bill of Materials (BOM)"),
|
||||
"label": _("Bill of Material")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Production Order",
|
||||
"description": _("Orders released for production."),
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Item",
|
||||
"description": _("All Products or Services."),
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Workstation",
|
||||
"description": _("Where manufacturing operations are carried out."),
|
||||
},
|
||||
|
||||
]
|
||||
},
|
||||
{
|
||||
"label": _("Tools"),
|
||||
"icon": "icon-wrench",
|
||||
"items": [
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Production Planning Tool",
|
||||
"description": _("Generate Material Requests (MRP) and Production Orders."),
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "BOM Replace Tool",
|
||||
"description": _("Replace Item / BOM in all BOMs"),
|
||||
},
|
||||
]
|
||||
},
|
||||
{
|
||||
"label": _("Standard Reports"),
|
||||
"icon": "icon-list",
|
||||
"items": [
|
||||
{
|
||||
"type": "report",
|
||||
"is_query_report": True,
|
||||
"name": "Open Production Orders",
|
||||
"doctype": "Production Order"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"is_query_report": True,
|
||||
"name": "Production Orders in Progress",
|
||||
"doctype": "Production Order"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"is_query_report": True,
|
||||
"name": "Issued Items Against Production Order",
|
||||
"doctype": "Production Order"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"is_query_report": True,
|
||||
"name": "Completed Production Orders",
|
||||
"doctype": "Production Order"
|
||||
},
|
||||
]
|
||||
},
|
||||
]
|
||||
]
|
||||
},
|
||||
{
|
||||
"label": _("Tools"),
|
||||
"icon": "icon-wrench",
|
||||
"items": [
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Production Planning Tool",
|
||||
"description": _("Generate Material Requests (MRP) and Production Orders."),
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "BOM Replace Tool",
|
||||
"description": _("Replace Item / BOM in all BOMs"),
|
||||
},
|
||||
]
|
||||
},
|
||||
{
|
||||
"label": _("Standard Reports"),
|
||||
"icon": "icon-list",
|
||||
"items": [
|
||||
{
|
||||
"type": "report",
|
||||
"is_query_report": True,
|
||||
"name": "Open Production Orders",
|
||||
"doctype": "Production Order"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"is_query_report": True,
|
||||
"name": "Production Orders in Progress",
|
||||
"doctype": "Production Order"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"is_query_report": True,
|
||||
"name": "Issued Items Against Production Order",
|
||||
"doctype": "Production Order"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"is_query_report": True,
|
||||
"name": "Completed Production Orders",
|
||||
"doctype": "Production Order"
|
||||
},
|
||||
]
|
||||
},
|
||||
]
|
||||
|
@ -1,66 +1,67 @@
|
||||
from frappe import _
|
||||
|
||||
data = [
|
||||
{
|
||||
"label": _("Documents"),
|
||||
"icon": "icon-star",
|
||||
"items": [
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Task",
|
||||
"description": _("Project activity / task."),
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Project",
|
||||
"description": _("Project master."),
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Time Log",
|
||||
"description": _("Time Log for tasks."),
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Time Log Batch",
|
||||
"description": _("Batch Time Logs for billing."),
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Activity Type",
|
||||
"description": _("Types of activities for Time Sheets"),
|
||||
},
|
||||
]
|
||||
},
|
||||
{
|
||||
"label": _("Tools"),
|
||||
"icon": "icon-wrench",
|
||||
"items": [
|
||||
{
|
||||
"type": "report",
|
||||
"route": "Gantt/Task",
|
||||
"doctype": "Task",
|
||||
"name": "Gantt Chart",
|
||||
"description": _("Gantt chart of all tasks.")
|
||||
},
|
||||
]
|
||||
},
|
||||
{
|
||||
"label": _("Standard Reports"),
|
||||
"icon": "icon-list",
|
||||
"items": [
|
||||
{
|
||||
"type": "report",
|
||||
"is_query_report": True,
|
||||
"name": "Daily Time Log Summary",
|
||||
"doctype": "Time Log"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"is_query_report": True,
|
||||
"name": "Project wise Stock Tracking",
|
||||
"doctype": "Project"
|
||||
},
|
||||
]
|
||||
},
|
||||
]
|
||||
def get_data():
|
||||
return [
|
||||
{
|
||||
"label": _("Documents"),
|
||||
"icon": "icon-star",
|
||||
"items": [
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Task",
|
||||
"description": _("Project activity / task."),
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Project",
|
||||
"description": _("Project master."),
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Time Log",
|
||||
"description": _("Time Log for tasks."),
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Time Log Batch",
|
||||
"description": _("Batch Time Logs for billing."),
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Activity Type",
|
||||
"description": _("Types of activities for Time Sheets"),
|
||||
},
|
||||
]
|
||||
},
|
||||
{
|
||||
"label": _("Tools"),
|
||||
"icon": "icon-wrench",
|
||||
"items": [
|
||||
{
|
||||
"type": "report",
|
||||
"route": "Gantt/Task",
|
||||
"doctype": "Task",
|
||||
"name": "Gantt Chart",
|
||||
"description": _("Gantt chart of all tasks.")
|
||||
},
|
||||
]
|
||||
},
|
||||
{
|
||||
"label": _("Standard Reports"),
|
||||
"icon": "icon-list",
|
||||
"items": [
|
||||
{
|
||||
"type": "report",
|
||||
"is_query_report": True,
|
||||
"name": "Daily Time Log Summary",
|
||||
"doctype": "Time Log"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"is_query_report": True,
|
||||
"name": "Project wise Stock Tracking",
|
||||
"doctype": "Project"
|
||||
},
|
||||
]
|
||||
},
|
||||
]
|
||||
|
@ -1,265 +1,266 @@
|
||||
from frappe import _
|
||||
|
||||
data = [
|
||||
{
|
||||
"label": _("Documents"),
|
||||
"icon": "icon-star",
|
||||
"items": [
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Lead",
|
||||
"description": _("Database of potential customers."),
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Customer",
|
||||
"description": _("Customer database."),
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Opportunity",
|
||||
"description": _("Potential opportunities for selling."),
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Quotation",
|
||||
"description": _("Quotes to Leads or Customers."),
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Sales Order",
|
||||
"description": _("Confirmed orders from Customers."),
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Contact",
|
||||
"description": _("All Contacts."),
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Address",
|
||||
"description": _("All Addresses."),
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Item",
|
||||
"description": _("All Products or Services."),
|
||||
},
|
||||
]
|
||||
},
|
||||
{
|
||||
"label": _("Tools"),
|
||||
"icon": "icon-wrench",
|
||||
"items": [
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "SMS Center",
|
||||
"description":_("Send mass SMS to your contacts"),
|
||||
},
|
||||
]
|
||||
},
|
||||
{
|
||||
"label": _("Setup"),
|
||||
"icon": "icon-cog",
|
||||
"items": [
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Selling Settings",
|
||||
"description": _("Default settings for selling transactions.")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Campaign",
|
||||
"description": _("Sales campaigns."),
|
||||
},
|
||||
{
|
||||
"type": "page",
|
||||
"label": _("Customer Group"),
|
||||
"name": "Sales Browser",
|
||||
"icon": "icon-sitemap",
|
||||
"link": "Sales Browser/Customer Group",
|
||||
"description": _("Manage Customer Group Tree."),
|
||||
"doctype": "Customer Group",
|
||||
},
|
||||
{
|
||||
"type": "page",
|
||||
"label": _("Territory"),
|
||||
"name": "Sales Browser",
|
||||
"icon": "icon-sitemap",
|
||||
"link": "Sales Browser/Territory",
|
||||
"description": _("Manage Territory Tree."),
|
||||
"doctype": "Territory",
|
||||
},
|
||||
{
|
||||
"type": "page",
|
||||
"label": _("Sales Person"),
|
||||
"name": "Sales Browser",
|
||||
"icon": "icon-sitemap",
|
||||
"link": "Sales Browser/Sales Person",
|
||||
"description": _("Manage Sales Person Tree."),
|
||||
"doctype": "Sales Person",
|
||||
},
|
||||
{
|
||||
"type": "page",
|
||||
"name": "Sales Browser",
|
||||
"icon": "icon-sitemap",
|
||||
"label": _("Item Group Tree"),
|
||||
"link": "Sales Browser/Item Group",
|
||||
"description": _("Tree of Item Groups."),
|
||||
"doctype": "Item Group",
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name":"Terms and Conditions",
|
||||
"label": _("Terms and Conditions Template"),
|
||||
"description": _("Template of terms or contract.")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Sales Taxes and Charges Master",
|
||||
"description": _("Tax template for selling transactions.")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Shipping Rule",
|
||||
"description": _("Rules for adding shipping costs.")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Price List",
|
||||
"description": _("Price List master.")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Item Price",
|
||||
"description": _("Multiple Item prices."),
|
||||
"route": "Report/Item Price"
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Pricing Rule",
|
||||
"description": _("Rules for applying pricing and discount.")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Sales BOM",
|
||||
"description": _("Bundle items at time of sale."),
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Sales Email Settings",
|
||||
"description": _("Setup incoming server for sales email id. (e.g. sales@example.com)")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Industry Type",
|
||||
"description": _("Track Leads by Industry Type.")
|
||||
},
|
||||
]
|
||||
},
|
||||
{
|
||||
"label": _("Main Reports"),
|
||||
"icon": "icon-table",
|
||||
"items": [
|
||||
{
|
||||
"type": "page",
|
||||
"name": "sales-analytics",
|
||||
"label": _("Sales Analytics"),
|
||||
"icon": "icon-bar-chart",
|
||||
},
|
||||
{
|
||||
"type": "page",
|
||||
"name": "sales-funnel",
|
||||
"label": _("Sales Funnel"),
|
||||
"icon": "icon-bar-chart",
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"is_query_report": True,
|
||||
"name": "Customer Acquisition and Loyalty",
|
||||
"doctype": "Customer",
|
||||
"icon": "icon-bar-chart",
|
||||
},
|
||||
]
|
||||
},
|
||||
{
|
||||
"label": _("Standard Reports"),
|
||||
"icon": "icon-list",
|
||||
"items": [
|
||||
{
|
||||
"type": "report",
|
||||
"is_query_report": True,
|
||||
"name": "Lead Details",
|
||||
"doctype": "Lead"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"is_query_report": True,
|
||||
"name": "Customer Addresses And Contacts",
|
||||
"doctype": "Contact"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"is_query_report": True,
|
||||
"name": "Ordered Items To Be Delivered",
|
||||
"doctype": "Sales Order"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"is_query_report": True,
|
||||
"name": "Sales Person-wise Transaction Summary",
|
||||
"doctype": "Sales Order"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"is_query_report": True,
|
||||
"name": "Item-wise Sales History",
|
||||
"doctype": "Item"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"is_query_report": True,
|
||||
"name": "Territory Target Variance (Item Group-Wise)",
|
||||
"route": "query-report/Territory Target Variance Item Group-Wise",
|
||||
"doctype": "Territory"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"is_query_report": True,
|
||||
"name": "Sales Person Target Variance (Item Group-Wise)",
|
||||
"route": "query-report/Sales Person Target Variance Item Group-Wise",
|
||||
"doctype": "Sales Person",
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"is_query_report": True,
|
||||
"name": "Customers Not Buying Since Long Time",
|
||||
"doctype": "Sales Order"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"is_query_report": True,
|
||||
"name": "Quotation Trend",
|
||||
"doctype": "Quotation"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"is_query_report": True,
|
||||
"name": "Sales Order Trends",
|
||||
"doctype": "Sales Order"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"is_query_report": True,
|
||||
"name": "Available Stock for Packing Items",
|
||||
"doctype": "Item",
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"is_query_report": True,
|
||||
"name": "Pending SO Items For Purchase Request",
|
||||
"doctype": "Sales Order"
|
||||
},
|
||||
]
|
||||
},
|
||||
]
|
||||
def get_data():
|
||||
return [
|
||||
{
|
||||
"label": _("Documents"),
|
||||
"icon": "icon-star",
|
||||
"items": [
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Lead",
|
||||
"description": _("Database of potential customers."),
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Customer",
|
||||
"description": _("Customer database."),
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Opportunity",
|
||||
"description": _("Potential opportunities for selling."),
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Quotation",
|
||||
"description": _("Quotes to Leads or Customers."),
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Sales Order",
|
||||
"description": _("Confirmed orders from Customers."),
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Contact",
|
||||
"description": _("All Contacts."),
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Address",
|
||||
"description": _("All Addresses."),
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Item",
|
||||
"description": _("All Products or Services."),
|
||||
},
|
||||
]
|
||||
},
|
||||
{
|
||||
"label": _("Tools"),
|
||||
"icon": "icon-wrench",
|
||||
"items": [
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "SMS Center",
|
||||
"description":_("Send mass SMS to your contacts"),
|
||||
},
|
||||
]
|
||||
},
|
||||
{
|
||||
"label": _("Setup"),
|
||||
"icon": "icon-cog",
|
||||
"items": [
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Selling Settings",
|
||||
"description": _("Default settings for selling transactions.")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Campaign",
|
||||
"description": _("Sales campaigns."),
|
||||
},
|
||||
{
|
||||
"type": "page",
|
||||
"label": _("Customer Group"),
|
||||
"name": "Sales Browser",
|
||||
"icon": "icon-sitemap",
|
||||
"link": "Sales Browser/Customer Group",
|
||||
"description": _("Manage Customer Group Tree."),
|
||||
"doctype": "Customer Group",
|
||||
},
|
||||
{
|
||||
"type": "page",
|
||||
"label": _("Territory"),
|
||||
"name": "Sales Browser",
|
||||
"icon": "icon-sitemap",
|
||||
"link": "Sales Browser/Territory",
|
||||
"description": _("Manage Territory Tree."),
|
||||
"doctype": "Territory",
|
||||
},
|
||||
{
|
||||
"type": "page",
|
||||
"label": _("Sales Person"),
|
||||
"name": "Sales Browser",
|
||||
"icon": "icon-sitemap",
|
||||
"link": "Sales Browser/Sales Person",
|
||||
"description": _("Manage Sales Person Tree."),
|
||||
"doctype": "Sales Person",
|
||||
},
|
||||
{
|
||||
"type": "page",
|
||||
"name": "Sales Browser",
|
||||
"icon": "icon-sitemap",
|
||||
"label": _("Item Group Tree"),
|
||||
"link": "Sales Browser/Item Group",
|
||||
"description": _("Tree of Item Groups."),
|
||||
"doctype": "Item Group",
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name":"Terms and Conditions",
|
||||
"label": _("Terms and Conditions Template"),
|
||||
"description": _("Template of terms or contract.")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Sales Taxes and Charges Master",
|
||||
"description": _("Tax template for selling transactions.")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Shipping Rule",
|
||||
"description": _("Rules for adding shipping costs.")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Price List",
|
||||
"description": _("Price List master.")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Item Price",
|
||||
"description": _("Multiple Item prices."),
|
||||
"route": "Report/Item Price"
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Pricing Rule",
|
||||
"description": _("Rules for applying pricing and discount.")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Sales BOM",
|
||||
"description": _("Bundle items at time of sale."),
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Sales Email Settings",
|
||||
"description": _("Setup incoming server for sales email id. (e.g. sales@example.com)")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Industry Type",
|
||||
"description": _("Track Leads by Industry Type.")
|
||||
},
|
||||
]
|
||||
},
|
||||
{
|
||||
"label": _("Main Reports"),
|
||||
"icon": "icon-table",
|
||||
"items": [
|
||||
{
|
||||
"type": "page",
|
||||
"name": "sales-analytics",
|
||||
"label": _("Sales Analytics"),
|
||||
"icon": "icon-bar-chart",
|
||||
},
|
||||
{
|
||||
"type": "page",
|
||||
"name": "sales-funnel",
|
||||
"label": _("Sales Funnel"),
|
||||
"icon": "icon-bar-chart",
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"is_query_report": True,
|
||||
"name": "Customer Acquisition and Loyalty",
|
||||
"doctype": "Customer",
|
||||
"icon": "icon-bar-chart",
|
||||
},
|
||||
]
|
||||
},
|
||||
{
|
||||
"label": _("Standard Reports"),
|
||||
"icon": "icon-list",
|
||||
"items": [
|
||||
{
|
||||
"type": "report",
|
||||
"is_query_report": True,
|
||||
"name": "Lead Details",
|
||||
"doctype": "Lead"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"is_query_report": True,
|
||||
"name": "Customer Addresses And Contacts",
|
||||
"doctype": "Contact"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"is_query_report": True,
|
||||
"name": "Ordered Items To Be Delivered",
|
||||
"doctype": "Sales Order"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"is_query_report": True,
|
||||
"name": "Sales Person-wise Transaction Summary",
|
||||
"doctype": "Sales Order"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"is_query_report": True,
|
||||
"name": "Item-wise Sales History",
|
||||
"doctype": "Item"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"is_query_report": True,
|
||||
"name": "Territory Target Variance (Item Group-Wise)",
|
||||
"route": "query-report/Territory Target Variance Item Group-Wise",
|
||||
"doctype": "Territory"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"is_query_report": True,
|
||||
"name": "Sales Person Target Variance (Item Group-Wise)",
|
||||
"route": "query-report/Sales Person Target Variance Item Group-Wise",
|
||||
"doctype": "Sales Person",
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"is_query_report": True,
|
||||
"name": "Customers Not Buying Since Long Time",
|
||||
"doctype": "Sales Order"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"is_query_report": True,
|
||||
"name": "Quotation Trend",
|
||||
"doctype": "Quotation"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"is_query_report": True,
|
||||
"name": "Sales Order Trends",
|
||||
"doctype": "Sales Order"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"is_query_report": True,
|
||||
"name": "Available Stock for Packing Items",
|
||||
"doctype": "Item",
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"is_query_report": True,
|
||||
"name": "Pending SO Items For Purchase Request",
|
||||
"doctype": "Sales Order"
|
||||
},
|
||||
]
|
||||
},
|
||||
]
|
||||
|
@ -1,129 +1,127 @@
|
||||
from frappe import _
|
||||
from frappe.widgets.moduleview import add_setup_section
|
||||
|
||||
data = [
|
||||
{
|
||||
"label": _("Settings"),
|
||||
"icon": "icon-wrench",
|
||||
"items": [
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Global Defaults",
|
||||
"label": _("Global Settings"),
|
||||
"description": _("Set Default Values like Company, Currency, Current Fiscal Year, etc."),
|
||||
"hide_count": True
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"label": _("Printing and Branding"),
|
||||
"icon": "icon-print",
|
||||
"items": [
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Letter Head",
|
||||
"description": _("Letter Heads for print templates.")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Print Heading",
|
||||
"description": _("Titles for print templates e.g. Proforma Invoice.")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Terms and Conditions",
|
||||
"description": _("Standard contract terms for Sales or Purchase.")
|
||||
},
|
||||
]
|
||||
},
|
||||
{
|
||||
"label": _("Customize"),
|
||||
"icon": "icon-glass",
|
||||
"items": [
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Features Setup",
|
||||
"description": _("Show / Hide features like Serial Nos, POS etc.")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Authorization Rule",
|
||||
"description": _("Create rules to restrict transactions based on values.")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Notification Control",
|
||||
"label": _("Email Notifications"),
|
||||
"description": _("Automatically compose message on submission of transactions.")
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"label": _("Email"),
|
||||
"icon": "icon-envelope",
|
||||
"items": [
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Email Digest",
|
||||
"description": _("Create and manage daily, weekly and monthly email digests.")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Support Email Settings",
|
||||
"description": _("Setup incoming server for support email id. (e.g. support@example.com)")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Sales Email Settings",
|
||||
"description": _("Setup incoming server for sales email id. (e.g. sales@example.com)")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Jobs Email Settings",
|
||||
"description": _("Setup incoming server for jobs email id. (e.g. jobs@example.com)")
|
||||
},
|
||||
]
|
||||
},
|
||||
{
|
||||
"label": _("Masters"),
|
||||
"icon": "icon-star",
|
||||
"items": [
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Company",
|
||||
"description": _("Company (not Customer or Supplier) master.")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Item",
|
||||
"description": _("Item master.")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Customer",
|
||||
"description": _("Customer master.")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Supplier",
|
||||
"description": _("Supplier master.")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Contact",
|
||||
"description": _("Contact master.")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Address",
|
||||
"description": _("Address master.")
|
||||
},
|
||||
]
|
||||
},
|
||||
]
|
||||
|
||||
def get_data():
|
||||
out = list(data)
|
||||
data = [
|
||||
{
|
||||
"label": _("Settings"),
|
||||
"icon": "icon-wrench",
|
||||
"items": [
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Global Defaults",
|
||||
"label": _("Global Settings"),
|
||||
"description": _("Set Default Values like Company, Currency, Current Fiscal Year, etc."),
|
||||
"hide_count": True
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"label": _("Printing and Branding"),
|
||||
"icon": "icon-print",
|
||||
"items": [
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Letter Head",
|
||||
"description": _("Letter Heads for print templates.")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Print Heading",
|
||||
"description": _("Titles for print templates e.g. Proforma Invoice.")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Terms and Conditions",
|
||||
"description": _("Standard contract terms for Sales or Purchase.")
|
||||
},
|
||||
]
|
||||
},
|
||||
{
|
||||
"label": _("Customize"),
|
||||
"icon": "icon-glass",
|
||||
"items": [
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Features Setup",
|
||||
"description": _("Show / Hide features like Serial Nos, POS etc.")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Authorization Rule",
|
||||
"description": _("Create rules to restrict transactions based on values.")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Notification Control",
|
||||
"label": _("Email Notifications"),
|
||||
"description": _("Automatically compose message on submission of transactions.")
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"label": _("Email"),
|
||||
"icon": "icon-envelope",
|
||||
"items": [
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Email Digest",
|
||||
"description": _("Create and manage daily, weekly and monthly email digests.")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Support Email Settings",
|
||||
"description": _("Setup incoming server for support email id. (e.g. support@example.com)")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Sales Email Settings",
|
||||
"description": _("Setup incoming server for sales email id. (e.g. sales@example.com)")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Jobs Email Settings",
|
||||
"description": _("Setup incoming server for jobs email id. (e.g. jobs@example.com)")
|
||||
},
|
||||
]
|
||||
},
|
||||
{
|
||||
"label": _("Masters"),
|
||||
"icon": "icon-star",
|
||||
"items": [
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Company",
|
||||
"description": _("Company (not Customer or Supplier) master.")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Item",
|
||||
"description": _("Item master.")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Customer",
|
||||
"description": _("Customer master.")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Supplier",
|
||||
"description": _("Supplier master.")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Contact",
|
||||
"description": _("Contact master.")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Address",
|
||||
"description": _("Address master.")
|
||||
},
|
||||
]
|
||||
},
|
||||
]
|
||||
|
||||
for module, label, icon in (
|
||||
("accounts", _("Accounts"), "icon-money"),
|
||||
@ -133,6 +131,6 @@ def get_data():
|
||||
("hr", _("Human Resources"), "icon-group"),
|
||||
("support", _("Support"), "icon-phone")):
|
||||
|
||||
add_setup_section(out, "erpnext", module, label, icon)
|
||||
add_setup_section(data, "erpnext", module, label, icon)
|
||||
|
||||
return out
|
||||
return data
|
||||
|
@ -1,263 +1,264 @@
|
||||
from frappe import _
|
||||
|
||||
data = [
|
||||
{
|
||||
"label": _("Documents"),
|
||||
"icon": "icon-star",
|
||||
"items": [
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Material Request",
|
||||
"description": _("Requests for items."),
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Stock Entry",
|
||||
"description": _("Record item movement."),
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Delivery Note",
|
||||
"description": _("Shipments to customers."),
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Purchase Receipt",
|
||||
"description": _("Goods received from Suppliers."),
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Item",
|
||||
"description": _("All Products or Services."),
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Warehouse",
|
||||
"description": _("Where items are stored."),
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Serial No",
|
||||
"description": _("Single unit of an Item."),
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Batch",
|
||||
"description": _("Batch (lot) of an Item."),
|
||||
},
|
||||
]
|
||||
},
|
||||
{
|
||||
"label": _("Tools"),
|
||||
"icon": "icon-wrench",
|
||||
"items": [
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Stock Reconciliation",
|
||||
"description": _("Upload stock balance via csv.")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Installation Note",
|
||||
"description": _("Installation record for a Serial No.")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Packing Slip",
|
||||
"description": _("Split Delivery Note into packages.")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Quality Inspection",
|
||||
"description": _("Incoming quality inspection.")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Landed Cost Wizard",
|
||||
"description": _("Distribute transport overhead across items."),
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Stock UOM Replace Utility",
|
||||
"description": _("Change UOM for an Item."),
|
||||
},
|
||||
]
|
||||
},
|
||||
{
|
||||
"label": _("Setup"),
|
||||
"icon": "icon-cog",
|
||||
"items": [
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Stock Settings",
|
||||
"description": _("Default settings for stock transactions.")
|
||||
},
|
||||
{
|
||||
"type": "page",
|
||||
"name": "Sales Browser",
|
||||
"icon": "icon-sitemap",
|
||||
"label": _("Item Group Tree"),
|
||||
"link": "Sales Browser/Item Group",
|
||||
"description": _("Tree of Item Groups."),
|
||||
"doctype": "Item Group",
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "UOM",
|
||||
"label": _("Unit of Measure") + " (UOM)",
|
||||
"description": _("e.g. Kg, Unit, Nos, m")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Warehouse",
|
||||
"description": _("Warehouses.")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Brand",
|
||||
"description": _("Brand master.")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Price List",
|
||||
"description": _("Price List master.")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Item Price",
|
||||
"description": _("Multiple Item prices."),
|
||||
"route": "Report/Item Price"
|
||||
},
|
||||
]
|
||||
},
|
||||
{
|
||||
"label": _("Main Reports"),
|
||||
"icon": "icon-table",
|
||||
"items": [
|
||||
{
|
||||
"type": "report",
|
||||
"is_query_report": True,
|
||||
"name": "Stock Ledger",
|
||||
"doctype": "Item",
|
||||
},
|
||||
{
|
||||
"type": "page",
|
||||
"name": "stock-balance",
|
||||
"label": _("Stock Balance"),
|
||||
"icon": "icon-table",
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"is_query_report": True,
|
||||
"name": "Stock Projected Qty",
|
||||
"doctype": "Item",
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"is_query_report": True,
|
||||
"name": "Stock Ageing",
|
||||
"doctype": "Item",
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"is_query_report": True,
|
||||
"name": "Item-wise Price List Rate",
|
||||
"doctype": "Item Price",
|
||||
},
|
||||
{
|
||||
"type": "page",
|
||||
"name": "stock-analytics",
|
||||
"label": _("Stock Analytics"),
|
||||
"icon": "icon-bar-chart"
|
||||
},
|
||||
]
|
||||
},
|
||||
{
|
||||
"label": _("Standard Reports"),
|
||||
"icon": "icon-list",
|
||||
"items": [
|
||||
{
|
||||
"type": "report",
|
||||
"is_query_report": True,
|
||||
"name": "Ordered Items To Be Delivered",
|
||||
"doctype": "Delivery Note"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"is_query_report": True,
|
||||
"name": "Purchase Order Items To Be Received",
|
||||
"doctype": "Purchase Receipt"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"name": "Item Shortage Report",
|
||||
"route": "Report/Bin/Item Shortage Report",
|
||||
"doctype": "Purchase Receipt"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"is_query_report": True,
|
||||
"name": "Serial No Service Contract Expiry",
|
||||
"doctype": "Serial No"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"name": "Serial No Status",
|
||||
"doctype": "Serial No"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"name": "Serial No Warranty Expiry",
|
||||
"doctype": "Serial No"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"is_query_report": True,
|
||||
"name": "Purchase In Transit",
|
||||
"doctype": "Purchase Order"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"is_query_report": True,
|
||||
"name": "Requested Items To Be Transferred",
|
||||
"doctype": "Material Request"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"is_query_report": True,
|
||||
"name": "Batch-Wise Balance History",
|
||||
"doctype": "Batch"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"is_query_report": True,
|
||||
"name": "Warehouse-Wise Stock Balance",
|
||||
"doctype": "Warehouse"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"is_query_report": True,
|
||||
"name": "Item Prices",
|
||||
"doctype": "Price List"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"is_query_report": True,
|
||||
"name": "Itemwise Recommended Reorder Level",
|
||||
"doctype": "Item"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"is_query_report": True,
|
||||
"name": "Delivery Note Trends",
|
||||
"doctype": "Delivery Note"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"is_query_report": True,
|
||||
"name": "Purchase Receipt Trends",
|
||||
"doctype": "Purchase Receipt"
|
||||
},
|
||||
]
|
||||
},
|
||||
]
|
||||
def get_data():
|
||||
return [
|
||||
{
|
||||
"label": _("Documents"),
|
||||
"icon": "icon-star",
|
||||
"items": [
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Material Request",
|
||||
"description": _("Requests for items."),
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Stock Entry",
|
||||
"description": _("Record item movement."),
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Delivery Note",
|
||||
"description": _("Shipments to customers."),
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Purchase Receipt",
|
||||
"description": _("Goods received from Suppliers."),
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Item",
|
||||
"description": _("All Products or Services."),
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Warehouse",
|
||||
"description": _("Where items are stored."),
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Serial No",
|
||||
"description": _("Single unit of an Item."),
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Batch",
|
||||
"description": _("Batch (lot) of an Item."),
|
||||
},
|
||||
]
|
||||
},
|
||||
{
|
||||
"label": _("Tools"),
|
||||
"icon": "icon-wrench",
|
||||
"items": [
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Stock Reconciliation",
|
||||
"description": _("Upload stock balance via csv.")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Installation Note",
|
||||
"description": _("Installation record for a Serial No.")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Packing Slip",
|
||||
"description": _("Split Delivery Note into packages.")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Quality Inspection",
|
||||
"description": _("Incoming quality inspection.")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Landed Cost Wizard",
|
||||
"description": _("Distribute transport overhead across items."),
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Stock UOM Replace Utility",
|
||||
"description": _("Change UOM for an Item."),
|
||||
},
|
||||
]
|
||||
},
|
||||
{
|
||||
"label": _("Setup"),
|
||||
"icon": "icon-cog",
|
||||
"items": [
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Stock Settings",
|
||||
"description": _("Default settings for stock transactions.")
|
||||
},
|
||||
{
|
||||
"type": "page",
|
||||
"name": "Sales Browser",
|
||||
"icon": "icon-sitemap",
|
||||
"label": _("Item Group Tree"),
|
||||
"link": "Sales Browser/Item Group",
|
||||
"description": _("Tree of Item Groups."),
|
||||
"doctype": "Item Group",
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "UOM",
|
||||
"label": _("Unit of Measure") + " (UOM)",
|
||||
"description": _("e.g. Kg, Unit, Nos, m")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Warehouse",
|
||||
"description": _("Warehouses.")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Brand",
|
||||
"description": _("Brand master.")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Price List",
|
||||
"description": _("Price List master.")
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Item Price",
|
||||
"description": _("Multiple Item prices."),
|
||||
"route": "Report/Item Price"
|
||||
},
|
||||
]
|
||||
},
|
||||
{
|
||||
"label": _("Main Reports"),
|
||||
"icon": "icon-table",
|
||||
"items": [
|
||||
{
|
||||
"type": "report",
|
||||
"is_query_report": True,
|
||||
"name": "Stock Ledger",
|
||||
"doctype": "Item",
|
||||
},
|
||||
{
|
||||
"type": "page",
|
||||
"name": "stock-balance",
|
||||
"label": _("Stock Balance"),
|
||||
"icon": "icon-table",
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"is_query_report": True,
|
||||
"name": "Stock Projected Qty",
|
||||
"doctype": "Item",
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"is_query_report": True,
|
||||
"name": "Stock Ageing",
|
||||
"doctype": "Item",
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"is_query_report": True,
|
||||
"name": "Item-wise Price List Rate",
|
||||
"doctype": "Item Price",
|
||||
},
|
||||
{
|
||||
"type": "page",
|
||||
"name": "stock-analytics",
|
||||
"label": _("Stock Analytics"),
|
||||
"icon": "icon-bar-chart"
|
||||
},
|
||||
]
|
||||
},
|
||||
{
|
||||
"label": _("Standard Reports"),
|
||||
"icon": "icon-list",
|
||||
"items": [
|
||||
{
|
||||
"type": "report",
|
||||
"is_query_report": True,
|
||||
"name": "Ordered Items To Be Delivered",
|
||||
"doctype": "Delivery Note"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"is_query_report": True,
|
||||
"name": "Purchase Order Items To Be Received",
|
||||
"doctype": "Purchase Receipt"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"name": "Item Shortage Report",
|
||||
"route": "Report/Bin/Item Shortage Report",
|
||||
"doctype": "Purchase Receipt"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"is_query_report": True,
|
||||
"name": "Serial No Service Contract Expiry",
|
||||
"doctype": "Serial No"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"name": "Serial No Status",
|
||||
"doctype": "Serial No"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"name": "Serial No Warranty Expiry",
|
||||
"doctype": "Serial No"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"is_query_report": True,
|
||||
"name": "Purchase In Transit",
|
||||
"doctype": "Purchase Order"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"is_query_report": True,
|
||||
"name": "Requested Items To Be Transferred",
|
||||
"doctype": "Material Request"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"is_query_report": True,
|
||||
"name": "Batch-Wise Balance History",
|
||||
"doctype": "Batch"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"is_query_report": True,
|
||||
"name": "Warehouse-Wise Stock Balance",
|
||||
"doctype": "Warehouse"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"is_query_report": True,
|
||||
"name": "Item Prices",
|
||||
"doctype": "Price List"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"is_query_report": True,
|
||||
"name": "Itemwise Recommended Reorder Level",
|
||||
"doctype": "Item"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"is_query_report": True,
|
||||
"name": "Delivery Note Trends",
|
||||
"doctype": "Delivery Note"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"is_query_report": True,
|
||||
"name": "Purchase Receipt Trends",
|
||||
"doctype": "Purchase Receipt"
|
||||
},
|
||||
]
|
||||
},
|
||||
]
|
||||
|
@ -1,74 +1,75 @@
|
||||
from frappe import _
|
||||
|
||||
data = [
|
||||
{
|
||||
"label": _("Documents"),
|
||||
"icon": "icon-star",
|
||||
"items": [
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Support Ticket",
|
||||
"description": _("Support queries from customers."),
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Customer Issue",
|
||||
"description": _("Customer Issue against Serial No."),
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Maintenance Schedule",
|
||||
"description": _("Plan for maintenance visits."),
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Maintenance Visit",
|
||||
"description": _("Visit report for maintenance call."),
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Newsletter",
|
||||
"description": _("Newsletters to contacts, leads."),
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Communication",
|
||||
"description": _("Communication log."),
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Serial No",
|
||||
"description": _("Single unit of an Item."),
|
||||
},
|
||||
]
|
||||
},
|
||||
{
|
||||
"label": _("Setup"),
|
||||
"icon": "icon-cog",
|
||||
"items": [
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Support Email Settings",
|
||||
"description": _("Setup incoming server for support email id. (e.g. support@example.com)")
|
||||
},
|
||||
]
|
||||
},
|
||||
{
|
||||
"label": _("Standard Reports"),
|
||||
"icon": "icon-list",
|
||||
"items": [
|
||||
{
|
||||
"type": "page",
|
||||
"name": "support-analytics",
|
||||
"label": _("Support Analytics"),
|
||||
"icon": "icon-bar-chart"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"name": "Maintenance Schedules",
|
||||
"is_query_report": True,
|
||||
"doctype": "Maintenance Schedule"
|
||||
},
|
||||
]
|
||||
},
|
||||
]
|
||||
def get_data():
|
||||
return [
|
||||
{
|
||||
"label": _("Documents"),
|
||||
"icon": "icon-star",
|
||||
"items": [
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Support Ticket",
|
||||
"description": _("Support queries from customers."),
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Customer Issue",
|
||||
"description": _("Customer Issue against Serial No."),
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Maintenance Schedule",
|
||||
"description": _("Plan for maintenance visits."),
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Maintenance Visit",
|
||||
"description": _("Visit report for maintenance call."),
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Newsletter",
|
||||
"description": _("Newsletters to contacts, leads."),
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Communication",
|
||||
"description": _("Communication log."),
|
||||
},
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Serial No",
|
||||
"description": _("Single unit of an Item."),
|
||||
},
|
||||
]
|
||||
},
|
||||
{
|
||||
"label": _("Setup"),
|
||||
"icon": "icon-cog",
|
||||
"items": [
|
||||
{
|
||||
"type": "doctype",
|
||||
"name": "Support Email Settings",
|
||||
"description": _("Setup incoming server for support email id. (e.g. support@example.com)")
|
||||
},
|
||||
]
|
||||
},
|
||||
{
|
||||
"label": _("Standard Reports"),
|
||||
"icon": "icon-list",
|
||||
"items": [
|
||||
{
|
||||
"type": "page",
|
||||
"name": "support-analytics",
|
||||
"label": _("Support Analytics"),
|
||||
"icon": "icon-bar-chart"
|
||||
},
|
||||
{
|
||||
"type": "report",
|
||||
"name": "Maintenance Schedules",
|
||||
"is_query_report": True,
|
||||
"doctype": "Maintenance Schedule"
|
||||
},
|
||||
]
|
||||
},
|
||||
]
|
||||
|
Loading…
x
Reference in New Issue
Block a user