22b61607c6
* feat: Created doctype for GSTR3B report and added boilerplate code * feat: Updated gst_fields and patches for gst_category * feat: Functions for calculating itc amount * fix: Patched eligibility_for_itc_field * fix: Updated set_category for gst * fix: Function for setting iter_state supplies * fix: Changed route to regional module, minor fix in inster_state_supply grouping and fixes in print format * fix(style): Added missing semicolon and removed unused imports * fix: Patch field only if column is available * fix: Make custom fields only for india sepecific company * fix: Add intro to gstr3b report * fix: Updated patch in patches.txt * fix: Update patches.txt * fix: Update patch to set GST Category * fix: Add fields for nil rated and non gst in item master * fix: Added logic for nil rated and non gst inward flow * fix: Initial test case for GSTR3B Report * fix: Codacy fixes * fix: Test Case fixes * fix: Add link for gstr_3b_report in accounting module * fix: Updated report template * fix: Changes in GSTR3B Report doctype * fix: Added function to get missing field invoices * fix: Added more test cases * fix: Item not found error in test case * fix: Key error in state numbers * fix: Changes in GSTR3b Doctype * fix: Changed functions to method * fix: Minor fix in patch * fix: Add gst_ctegory in GST Reports * fix: Minor fixes in patch and itc_mapping * fix: Query to patch itc field * fix: Patch registered customers and fix for multiple gst accounts * fix: Test case * fix: Total taxable calculation logic fix and template enhancement * fix: Calculate txval seperately * fix: itc amount calculation fix and patch improvement * fix: Updated test_cases for itc calculation * fix: Missing field query * fix: Multiple minor fixes inreport * fix: Added transalations in GSTR3B-Form * fix: Use double underscore for translation * fix: GST fields ordering fix * fix: Print form precision fix and get_period function fix
600 lines
13 KiB
Python
600 lines
13 KiB
Python
from __future__ import unicode_literals
|
|
from frappe import _
|
|
import frappe
|
|
|
|
|
|
def get_data():
|
|
config = [
|
|
{
|
|
"label": _("Masters and Accounts"),
|
|
"items": [
|
|
{
|
|
"type": "doctype",
|
|
"name": "Item",
|
|
"onboard": 1,
|
|
},
|
|
{
|
|
"type": "doctype",
|
|
"name": "Customer",
|
|
"description": _("Customer database."),
|
|
"onboard": 1,
|
|
},
|
|
{
|
|
"type": "doctype",
|
|
"name": "Supplier",
|
|
"description": _("Supplier database."),
|
|
"onboard": 1,
|
|
},
|
|
{
|
|
"type": "doctype",
|
|
"name": "Company",
|
|
"description": _("Company (not Customer or Supplier) master."),
|
|
"onboard": 1,
|
|
},
|
|
{
|
|
"type": "doctype",
|
|
"name": "Account",
|
|
"icon": "fa fa-sitemap",
|
|
"label": _("Chart of Accounts"),
|
|
"route": "#Tree/Account",
|
|
"description": _("Tree of financial accounts."),
|
|
"onboard": 1,
|
|
},
|
|
{
|
|
"type": "doctype",
|
|
"name": "Journal Entry",
|
|
"description": _("Accounting journal entries."),
|
|
"onboard": 1,
|
|
},
|
|
{
|
|
"type": "doctype",
|
|
"name": "Opening Invoice Creation Tool",
|
|
"description": _("Create Opening Sales and Purchase Invoices")
|
|
},
|
|
]
|
|
},
|
|
{
|
|
"label": _("Billing"),
|
|
"items": [
|
|
{
|
|
"type": "doctype",
|
|
"name": "Sales Invoice",
|
|
"description": _("Bills raised to Customers."),
|
|
"onboard": 1,
|
|
},
|
|
{
|
|
"type": "doctype",
|
|
"name": "Purchase Invoice",
|
|
"description": _("Bills raised by Suppliers."),
|
|
"onboard": 1
|
|
},
|
|
{
|
|
"type": "doctype",
|
|
"name": "Payment Request",
|
|
"description": _("Payment Request"),
|
|
},
|
|
{
|
|
"type": "doctype",
|
|
"name": "Payment Entry",
|
|
"description": _("Bank/Cash transactions against party or for internal transfer")
|
|
},
|
|
|
|
# Reports
|
|
{
|
|
"type": "report",
|
|
"name": "Ordered Items To Be Billed",
|
|
"is_query_report": True,
|
|
"reference_doctype": "Sales Invoice"
|
|
},
|
|
{
|
|
"type": "report",
|
|
"name": "Delivered Items To Be Billed",
|
|
"is_query_report": True,
|
|
"reference_doctype": "Sales Invoice"
|
|
},
|
|
{
|
|
"type": "report",
|
|
"name": "Purchase Order Items To Be Billed",
|
|
"is_query_report": True,
|
|
"reference_doctype": "Purchase Invoice"
|
|
},
|
|
{
|
|
"type": "report",
|
|
"name": "Received Items To Be Billed",
|
|
"is_query_report": True,
|
|
"reference_doctype": "Purchase Invoice"
|
|
},
|
|
]
|
|
|
|
},
|
|
{
|
|
"label": _("Settings"),
|
|
"icon": "fa fa-cog",
|
|
"items": [
|
|
{
|
|
"type": "doctype",
|
|
"name": "Accounts Settings",
|
|
"description": _("Default settings for accounting transactions.")
|
|
},
|
|
{
|
|
"type": "doctype",
|
|
"name": "Fiscal Year",
|
|
"description": _("Financial / accounting year.")
|
|
},
|
|
{
|
|
"type": "doctype",
|
|
"name": "Currency",
|
|
"description": _("Enable / disable currencies.")
|
|
},
|
|
{
|
|
"type": "doctype",
|
|
"name": "Currency Exchange",
|
|
"description": _("Currency exchange rate master.")
|
|
},
|
|
{
|
|
"type": "doctype",
|
|
"name": "Payment Gateway Account",
|
|
"description": _("Setup Gateway accounts.")
|
|
},
|
|
{
|
|
"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": "Auto Repeat",
|
|
"label": _("Auto Repeat"),
|
|
"description": _("To make recurring documents")
|
|
},
|
|
{
|
|
"type": "doctype",
|
|
"name": "C-Form",
|
|
"description": _("C-Form records"),
|
|
"country": "India"
|
|
},
|
|
{
|
|
"type": "doctype",
|
|
"name": "Cheque Print Template",
|
|
"description": _("Setup cheque dimensions for printing")
|
|
},
|
|
]
|
|
},
|
|
{
|
|
"label": _("Financial Statements"),
|
|
"items": [
|
|
{
|
|
"type": "report",
|
|
"name": "General Ledger",
|
|
"doctype": "GL Entry",
|
|
"is_query_report": True,
|
|
},
|
|
{
|
|
"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": "Trial Balance",
|
|
"doctype": "GL Entry",
|
|
"is_query_report": True,
|
|
},
|
|
{
|
|
"type": "report",
|
|
"name": "Balance Sheet",
|
|
"doctype": "GL Entry",
|
|
"is_query_report": True
|
|
},
|
|
{
|
|
"type": "report",
|
|
"name": "Cash Flow",
|
|
"doctype": "GL Entry",
|
|
"is_query_report": True
|
|
},
|
|
{
|
|
"type": "report",
|
|
"name": "Profit and Loss Statement",
|
|
"doctype": "GL Entry",
|
|
"is_query_report": True
|
|
},
|
|
{
|
|
"type": "report",
|
|
"name": "Consolidated Financial Statement",
|
|
"doctype": "GL Entry",
|
|
"is_query_report": True
|
|
},
|
|
]
|
|
},
|
|
{
|
|
"label": _("Banking and Payments"),
|
|
"items": [
|
|
{
|
|
"type": "doctype",
|
|
"label": _("Bank"),
|
|
"name": "Bank",
|
|
},
|
|
{
|
|
"type": "doctype",
|
|
"label": _("Bank Account"),
|
|
"name": "Bank Account",
|
|
},
|
|
{
|
|
"type": "doctype",
|
|
"label": _("Bank Statement Transaction Entry List"),
|
|
"name": "Bank Statement Transaction Entry",
|
|
"route": "#List/Bank Statement Transaction Entry",
|
|
},
|
|
{
|
|
"type": "doctype",
|
|
"label": _("Bank Statement Transaction Entry Report"),
|
|
"name": "Bank Statement Transaction Entry",
|
|
"route": "#Report/Bank Statement Transaction Entry",
|
|
},
|
|
{
|
|
"type": "doctype",
|
|
"label": _("Bank Statement Settings"),
|
|
"name": "Bank Statement Settings",
|
|
},
|
|
|
|
{
|
|
"type": "doctype",
|
|
"label": _("Update Bank Transaction Dates"),
|
|
"name": "Bank Reconciliation",
|
|
"description": _("Update bank payment dates with journals.")
|
|
},
|
|
{
|
|
"type": "doctype",
|
|
"label": _("Match Payments with Invoices"),
|
|
"name": "Payment Reconciliation",
|
|
"description": _("Match non-linked Invoices and Payments.")
|
|
},
|
|
{
|
|
"type": "report",
|
|
"name": "Bank Reconciliation Statement",
|
|
"is_query_report": True,
|
|
"doctype": "Journal Entry"
|
|
},
|
|
{
|
|
"type": "report",
|
|
"name": "Bank Clearance Summary",
|
|
"is_query_report": True,
|
|
"doctype": "Journal Entry"
|
|
},
|
|
{
|
|
"type": "doctype",
|
|
"name": "Bank Guarantee",
|
|
"doctype": "Bank Guarantee"
|
|
},
|
|
]
|
|
},
|
|
{
|
|
"label": _("Cost Center and Budgeting"),
|
|
"items": [
|
|
{
|
|
"type": "doctype",
|
|
"name": "Cost Center",
|
|
"icon": "fa fa-sitemap",
|
|
"label": _("Chart of Cost Centers"),
|
|
"route": "#Tree/Cost Center",
|
|
"description": _("Tree of financial Cost Centers."),
|
|
},
|
|
{
|
|
"type": "doctype",
|
|
"name": "Budget",
|
|
"description": _("Define budget for a financial year.")
|
|
},
|
|
{
|
|
"type": "report",
|
|
"name": "Budget Variance Report",
|
|
"is_query_report": True,
|
|
"doctype": "Cost Center"
|
|
},
|
|
{
|
|
"type": "doctype",
|
|
"name": "Monthly Distribution",
|
|
"description": _("Seasonality for setting budgets, targets etc.")
|
|
},
|
|
{
|
|
"type": "doctype",
|
|
"name": "Period Closing Voucher",
|
|
"description": _("Close Balance Sheet and book Profit or Loss.")
|
|
},
|
|
]
|
|
},
|
|
{
|
|
"label": _("Taxes"),
|
|
"items": [
|
|
{
|
|
"type": "doctype",
|
|
"name": "Tax Category",
|
|
"description": _("Tax Category for overriding tax rates.")
|
|
},
|
|
{
|
|
"type": "doctype",
|
|
"name": "Sales Taxes and Charges Template",
|
|
"description": _("Tax template for selling transactions.")
|
|
},
|
|
{
|
|
"type": "doctype",
|
|
"name": "Purchase Taxes and Charges Template",
|
|
"description": _("Tax template for buying transactions.")
|
|
},
|
|
{
|
|
"type": "doctype",
|
|
"name": "Item Tax Template",
|
|
"description": _("Tax template for item tax rates.")
|
|
},
|
|
{
|
|
"type": "doctype",
|
|
"name": "Tax Rule",
|
|
"description": _("Tax Rule for transactions.")
|
|
},
|
|
{
|
|
"type": "doctype",
|
|
"name": "Tax Withholding Category",
|
|
"description": _("Tax Withholding rates to be applied on transactions.")
|
|
},
|
|
]
|
|
},
|
|
{
|
|
"label": _("Subscription Management"),
|
|
"icon": "fa fa-microchip ",
|
|
"items": [
|
|
{
|
|
"type": "doctype",
|
|
"name": "Subscriber",
|
|
},
|
|
{
|
|
"type": "doctype",
|
|
"name": "Subscription Plan",
|
|
},
|
|
{
|
|
"type": "doctype",
|
|
"name": "Subscription"
|
|
},
|
|
{
|
|
"type": "doctype",
|
|
"name": "Subscription Settings"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"label": _("Key Reports"),
|
|
"items": [
|
|
{
|
|
"type": "report",
|
|
"name": "Gross Profit",
|
|
"doctype": "Sales 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": "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"
|
|
},
|
|
{
|
|
"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": "Profitability Analysis",
|
|
"doctype": "GL Entry",
|
|
"is_query_report": True,
|
|
},
|
|
{
|
|
"type": "report",
|
|
"name": "Customer Ledger Summary",
|
|
"doctype": "Sales Invoice",
|
|
"is_query_report": True,
|
|
},
|
|
{
|
|
"type": "report",
|
|
"name": "Supplier Ledger Summary",
|
|
"doctype": "Sales Invoice",
|
|
"is_query_report": True,
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"label": _("Other Reports"),
|
|
"icon": "fa fa-table",
|
|
"items": [
|
|
{
|
|
"type": "report",
|
|
"name": "Trial Balance for Party",
|
|
"doctype": "GL Entry",
|
|
"is_query_report": True,
|
|
},
|
|
{
|
|
"type": "report",
|
|
"name": "Payment Period Based On Invoice Date",
|
|
"is_query_report": True,
|
|
"doctype": "Journal Entry"
|
|
},
|
|
{
|
|
"type": "report",
|
|
"name": "Sales Partners Commission",
|
|
"is_query_report": True,
|
|
"doctype": "Sales Invoice"
|
|
},
|
|
{
|
|
"type": "report",
|
|
"name": "Accounts Receivable Summary",
|
|
"doctype": "Sales Invoice",
|
|
"is_query_report": True
|
|
},
|
|
{
|
|
"type": "report",
|
|
"name": "Accounts Payable Summary",
|
|
"doctype": "Purchase Invoice",
|
|
"is_query_report": True
|
|
},
|
|
{
|
|
"type": "report",
|
|
"is_query_report": True,
|
|
"name": "Customer Credit Balance",
|
|
"doctype": "Customer"
|
|
},
|
|
{
|
|
"type": "report",
|
|
"is_query_report": True,
|
|
"name": "Sales Payment Summary",
|
|
"doctype": "Sales Invoice"
|
|
},
|
|
{
|
|
"type": "report",
|
|
"is_query_report": True,
|
|
"name": "Address And Contacts",
|
|
"doctype": "Address"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"label": _("Share Management"),
|
|
"icon": "fa fa-microchip ",
|
|
"items": [
|
|
{
|
|
"type": "doctype",
|
|
"name": "Shareholder",
|
|
"description": _("List of available Shareholders with folio numbers")
|
|
},
|
|
{
|
|
"type": "doctype",
|
|
"name": "Share Transfer",
|
|
"description": _("List of all share transactions"),
|
|
},
|
|
{
|
|
"type": "report",
|
|
"name": "Share Ledger",
|
|
"doctype": "Share Transfer",
|
|
"is_query_report": True
|
|
},
|
|
{
|
|
"type": "report",
|
|
"name": "Share Balance",
|
|
"doctype": "Share Transfer",
|
|
"is_query_report": True
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"label": _("Help"),
|
|
"icon": "fa fa-facetime-video",
|
|
"items": [
|
|
{
|
|
"type": "help",
|
|
"label": _("Chart of Accounts"),
|
|
"youtube_id": "DyR-DST-PyA"
|
|
},
|
|
{
|
|
"type": "help",
|
|
"label": _("Opening Accounting Balance"),
|
|
"youtube_id": "kdgM20Q-q68"
|
|
},
|
|
{
|
|
"type": "help",
|
|
"label": _("Setting up Taxes"),
|
|
"youtube_id": "nQ1zZdPgdaQ"
|
|
}
|
|
]
|
|
}
|
|
]
|
|
|
|
gst = {
|
|
"label": _("Goods and Services Tax (GST India)"),
|
|
"items": [
|
|
{
|
|
"type": "doctype",
|
|
"name": "GST Settings",
|
|
},
|
|
{
|
|
"type": "doctype",
|
|
"name": "GST HSN Code",
|
|
},
|
|
{
|
|
"type": "report",
|
|
"name": "GSTR-1",
|
|
"is_query_report": True
|
|
},
|
|
{
|
|
"type": "report",
|
|
"name": "GSTR-2",
|
|
"is_query_report": True
|
|
},
|
|
{
|
|
"type": "doctype",
|
|
"name": "GSTR 3B Report",
|
|
},
|
|
{
|
|
"type": "report",
|
|
"name": "GST Sales Register",
|
|
"is_query_report": True
|
|
},
|
|
{
|
|
"type": "report",
|
|
"name": "GST Purchase Register",
|
|
"is_query_report": True
|
|
},
|
|
{
|
|
"type": "report",
|
|
"name": "GST Itemised Sales Register",
|
|
"is_query_report": True
|
|
},
|
|
{
|
|
"type": "report",
|
|
"name": "GST Itemised Purchase Register",
|
|
"is_query_report": True
|
|
},
|
|
]
|
|
}
|
|
|
|
|
|
countries = frappe.get_all("Company", fields="country")
|
|
countries = [country["country"] for country in countries]
|
|
if "India" in countries:
|
|
config.insert(7, gst)
|
|
domains = frappe.get_active_domains()
|
|
return config
|