Merge branch 'master' into responsive

This commit is contained in:
Rushabh Mehta
2013-04-22 12:14:41 +05:30
5 changed files with 73 additions and 35 deletions

View File

@@ -35,8 +35,9 @@ class DocType:
self.check_credit_limit()
self.check_pl_account()
def on_update(self,adv_adj, cancel, update_outstanding = 'Yes'):
def on_update(self, adv_adj, cancel, update_outstanding = 'Yes'):
self.validate_account_details(adv_adj)
self.validate_cost_center()
self.check_freezing_date(adv_adj)
self.check_negative_balance(adv_adj)
@@ -97,21 +98,36 @@ class DocType:
from tabAccount where name=%s""", self.doc.account, as_dict=1)
if ret and ret[0]["group_or_ledger"]=='Group':
msgprint(_("Account: ") + self.doc.account + _(" is not a ledger"), raise_exception=1)
msgprint(_("Account") + ": " + self.doc.account + _(" is not a ledger"), raise_exception=1)
if ret and ret[0]["docstatus"]==2:
msgprint(_("Account: ") + self.doc.account + _(" is not active"), raise_exception=1)
msgprint(_("Account") + ": " + self.doc.account + _(" is not active"), raise_exception=1)
# Account has been freezed for other users except account manager
if ret and ret[0]["freeze_account"]== 'Yes' and not adv_adj \
and not 'Accounts Manager' in webnotes.user.get_roles():
msgprint(_("Account: ") + self.doc.account + _(" has been freezed. \
msgprint(_("Account") + ": " + self.doc.account + _(" has been freezed. \
Only Accounts Manager can do transaction against this account"), raise_exception=1)
if ret and ret[0]["company"] != self.doc.company:
msgprint(_("Account: ") + self.doc.account + _(" does not belong to the company: ") +
self.doc.company, raise_exception=1)
msgprint(_("Account") + ": " + self.doc.account + _(" does not belong to the company") \
+ ": " + self.doc.company, raise_exception=1)
def validate_cost_center(self):
if not hasattr(self, "cost_center_company"):
self.cost_center_company = {}
def _get_cost_center_company():
if not self.cost_center_company.get(self.doc.cost_center):
self.cost_center_company[self.doc.cost_center] = webnotes.conn.get_value("Cost Center",
self.doc.cost_center, "company_name")
return self.cost_center_company[self.doc.cost_center]
if self.doc.cost_center and _get_cost_center_company() != self.doc.company:
msgprint(_("Cost Center") + ": " + self.doc.cost_center \
+ _(" does not belong to the company") + ": " + self.doc.company, raise_exception=True)
def check_freezing_date(self, adv_adj):
"""
Nobody can do GL Entries where posting date is before freezing date

View File

@@ -1,68 +1,68 @@
[
{
"owner": "harshada@webnotestech.com",
"creation": "2012-12-04 17:49:20",
"docstatus": 0,
"creation": "2012-07-03 13:30:49",
"modified": "2013-04-19 10:59:05",
"modified_by": "Administrator",
"modified": "2012-12-04 16:33:37"
"owner": "harshada@webnotestech.com"
},
{
"name": "__common__",
"allow_rename": 1,
"autoname": "field:mode_of_payment",
"module": "Accounts",
"doctype": "DocType",
"document_type": "Master"
"document_type": "Master",
"module": "Accounts",
"name": "__common__"
},
{
"doctype": "DocField",
"name": "__common__",
"parent": "Mode of Payment",
"doctype": "DocField",
"parentfield": "fields",
"parenttype": "DocType",
"permlevel": 0,
"parentfield": "fields"
"read_only": 0
},
{
"parent": "Mode of Payment",
"read": 1,
"doctype": "DocPerm",
"cancel": 1,
"name": "__common__",
"amend": 0,
"create": 1,
"submit": 0,
"write": 1,
"doctype": "DocPerm",
"name": "__common__",
"parent": "Mode of Payment",
"parentfield": "permissions",
"parenttype": "DocType",
"role": "Accounts Manager",
"report": 1,
"permlevel": 0,
"parentfield": "permissions"
"read": 1,
"report": 1,
"role": "Accounts Manager",
"submit": 0,
"write": 1
},
{
"name": "Mode of Payment",
"doctype": "DocType"
"doctype": "DocType",
"name": "Mode of Payment"
},
{
"oldfieldtype": "Data",
"doctype": "DocField",
"label": "Mode of Payment",
"oldfieldname": "mode_of_payment",
"fieldname": "mode_of_payment",
"fieldtype": "Data",
"label": "Mode of Payment",
"oldfieldname": "mode_of_payment",
"oldfieldtype": "Data",
"reqd": 1
},
{
"doctype": "DocField",
"label": "Company",
"fieldname": "company",
"fieldtype": "Link",
"label": "Company",
"options": "Company"
},
{
"description": "Default Bank / Cash account will be automatically updated in POS Invoice when this mode is selected.",
"doctype": "DocField",
"label": "Default Account",
"fieldname": "default_account",
"fieldtype": "Link",
"label": "Default Account",
"options": "Account"
},
{