[perpetual accounting] [minor] patch for intial setup
This commit is contained in:
parent
fd6a650e12
commit
4af2dbf84d
@ -269,7 +269,7 @@ def create_stock_in_hand_jv(reverse=False):
|
||||
"posting_date": today,
|
||||
"fiscal_year": fiscal_year,
|
||||
"voucher_type": "Journal Entry",
|
||||
"user_remark": (_("Auto Inventory Accounting") + ": " +
|
||||
"user_remark": (_("Perpetual Accounting") + ": " +
|
||||
(_("Disabled") if reverse else _("Enabled")) + ". " +
|
||||
_("Journal Entry for inventory that is received but not yet invoiced"))
|
||||
},
|
||||
@ -297,14 +297,14 @@ def create_stock_in_hand_jv(reverse=False):
|
||||
|
||||
msgprint(_("""These adjustment vouchers book the difference between \
|
||||
the total value of received items and the total value of invoiced items, \
|
||||
as a required step to use Auto Inventory Accounting.
|
||||
as a required step to use Perpetual Accounting.
|
||||
This is an approximation to get you started.
|
||||
You will need to submit these vouchers after checking if the values are correct.
|
||||
For more details, read: \
|
||||
<a href="http://erpnext.com/auto-inventory-accounting" target="_blank">\
|
||||
Auto Inventory Accounting</a>"""))
|
||||
Perpetual Accounting</a>"""))
|
||||
|
||||
webnotes.msgprint("""Please refresh the system to get effect of Auto Inventory Accounting""")
|
||||
webnotes.msgprint("""Please refresh the system to get effect of Perpetual Accounting""")
|
||||
|
||||
|
||||
def get_stock_rbnb_value(company):
|
||||
|
@ -2,8 +2,12 @@ import webnotes
|
||||
from webnotes.utils import cint
|
||||
|
||||
def execute():
|
||||
import patches.march_2013.p08_create_aii_accounts
|
||||
patches.march_2013.p08_create_aii_accounts.execute()
|
||||
|
||||
copy_perpetual_accounting_settings()
|
||||
set_missing_cost_center()
|
||||
|
||||
|
||||
def set_missing_cost_center():
|
||||
reload_docs = [
|
||||
@ -17,8 +21,7 @@ def set_missing_cost_center():
|
||||
if cint(webnotes.defaults.get_global_default("perpetual_accounting")):
|
||||
for dt in ["Serial No", "Stock Reconciliation", "Stock Entry"]:
|
||||
webnotes.conn.sql("""update `tab%s` t1, tabCompany t2
|
||||
set t1.cost_center=t2.stock_adjustment_cost_center
|
||||
where t1.company = t2.name""" % dt)
|
||||
set t1.cost_center=t2.cost_center where t1.company = t2.name""" % dt)
|
||||
|
||||
def copy_perpetual_accounting_settings():
|
||||
webnotes.reload_doc("accounts", "doctype", "accounts_settings")
|
||||
|
@ -8,7 +8,6 @@ def execute():
|
||||
create_chart_of_accounts_if_not_exists()
|
||||
add_group_accounts()
|
||||
add_ledger_accounts()
|
||||
add_aii_cost_center()
|
||||
set_default_accounts()
|
||||
|
||||
def set_default_accounts():
|
||||
@ -79,26 +78,7 @@ def add_accounts(accounts_to_add, check_fn=None):
|
||||
"company": company
|
||||
})
|
||||
account.insert()
|
||||
|
||||
def add_aii_cost_center():
|
||||
for company, abbr in webnotes.conn.sql("""select name, abbr from `tabCompany`"""):
|
||||
if not webnotes.conn.sql("""select name from `tabCost Center` where cost_center_name =
|
||||
'Auto Inventory Accounting' and company = %s""", company):
|
||||
parent_cost_center = webnotes.conn.get_value("Cost Center",
|
||||
{"parent_cost_center['']": '', "company": company})
|
||||
|
||||
if not parent_cost_center:
|
||||
webnotes.errprint("Company " + company + "does not have a root cost center")
|
||||
continue
|
||||
|
||||
cc = webnotes.bean({
|
||||
"doctype": "Cost Center",
|
||||
"cost_center_name": "Auto Inventory Accounting",
|
||||
"parent_cost_center": parent_cost_center,
|
||||
"group_or_ledger": "Ledger",
|
||||
"company": company
|
||||
})
|
||||
cc.insert()
|
||||
|
||||
|
||||
def create_chart_of_accounts_if_not_exists():
|
||||
for company in webnotes.conn.sql("select name from `tabCompany`"):
|
||||
|
@ -122,5 +122,5 @@ $.extend(erpnext.complete_setup, {
|
||||
|
||||
fy_start_list: ['', '1st Jan', '1st Apr', '1st Jul', '1st Oct'],
|
||||
|
||||
domains: ['', "Manufacturing", "Retail", "Distribution", "Services"],
|
||||
domains: ['', "Manufacturing", "Retail", "Distribution", "Services", "Other"],
|
||||
});
|
@ -5,7 +5,7 @@ from __future__ import unicode_literals
|
||||
import webnotes
|
||||
from webnotes import _, msgprint
|
||||
|
||||
from webnotes.utils import cstr
|
||||
from webnotes.utils import cstr, cint
|
||||
from webnotes.model.doc import Document
|
||||
from webnotes.model.code import get_obj
|
||||
import webnotes.defaults
|
||||
@ -58,11 +58,15 @@ class DocType:
|
||||
|
||||
def create_default_warehouses(self):
|
||||
for whname in ("Stores", "Work In Progress", "Finished Goods"):
|
||||
webnotes.bean({
|
||||
wh = {
|
||||
"doctype":"Warehouse",
|
||||
"warehouse_name": whname,
|
||||
"company": self.doc.name
|
||||
}).insert()
|
||||
}
|
||||
if cint(webnotes.defaults.get_global_default("perpetual_accounting")):
|
||||
wh.update({"account": "Stock In Hand - " + self.doc.abbr})
|
||||
|
||||
webnotes.bean(wh).insert()
|
||||
|
||||
def create_default_web_page(self):
|
||||
if not webnotes.conn.get_value("Website Settings", None, "home_page"):
|
||||
@ -242,8 +246,8 @@ class DocType:
|
||||
"default_expense_account": "Cost of Goods Sold",
|
||||
"receivables_group": "Accounts Receivable",
|
||||
"payables_group": "Accounts Payable",
|
||||
"default_cash_account": "Cash",
|
||||
"stock_received_but_not_billed": "Stock Received But Not Billed",
|
||||
"stock_in_hand_account": "Stock In Hand",
|
||||
"stock_adjustment_account": "Stock Adjustment",
|
||||
"expenses_included_in_valuation": "Expenses Included In Valuation"
|
||||
}
|
||||
@ -253,9 +257,6 @@ class DocType:
|
||||
if not self.doc.fields.get(a) and webnotes.conn.exists("Account", account_name):
|
||||
webnotes.conn.set(self.doc, a, account_name)
|
||||
|
||||
if not self.doc.stock_adjustment_cost_center:
|
||||
webnotes.conn.set(self.doc, "stock_adjustment_cost_center", self.doc.cost_center)
|
||||
|
||||
def create_default_cost_center(self):
|
||||
cc_list = [
|
||||
{
|
||||
@ -272,14 +273,15 @@ class DocType:
|
||||
},
|
||||
]
|
||||
for cc in cc_list:
|
||||
cc.update({"doctype": "Cost Center"})
|
||||
cc_bean = webnotes.bean(cc)
|
||||
cc_bean.ignore_permissions = True
|
||||
if webnotes.conn.exists("Cost Center", cc.cost_center_name + ' - ' + self.doc.abbr):
|
||||
cc.update({"doctype": "Cost Center"})
|
||||
cc_bean = webnotes.bean(cc)
|
||||
cc_bean.ignore_permissions = True
|
||||
|
||||
if cc.get("cost_center_name") == self.doc.name:
|
||||
cc_bean.ignore_mandatory = True
|
||||
if cc.get("cost_center_name") == self.doc.name:
|
||||
cc_bean.ignore_mandatory = True
|
||||
|
||||
cc_bean.insert()
|
||||
cc_bean.insert()
|
||||
|
||||
webnotes.conn.set(self.doc, "cost_center", "Main - " + self.doc.abbr)
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user