Merge pull request #5799 from nabinhait/fix104
Fixes
diff --git a/erpnext/accounts/doctype/account/chart_of_accounts/verified/in_standard_chart_of_accounts.json b/erpnext/accounts/doctype/account/chart_of_accounts/verified/in_standard_chart_of_accounts.json
index 375828c..c7a8045 100644
--- a/erpnext/accounts/doctype/account/chart_of_accounts/verified/in_standard_chart_of_accounts.json
+++ b/erpnext/accounts/doctype/account/chart_of_accounts/verified/in_standard_chart_of_accounts.json
@@ -37,19 +37,24 @@
"Capital Equipments": {
"account_type": "Fixed Asset"
},
- "Computers": {
+ "Electronic Equipments": {
"account_type": "Fixed Asset"
},
- "Furniture and Fixture": {
+ "Furnitures and Fixtures": {
"account_type": "Fixed Asset"
},
"Office Equipments": {
"account_type": "Fixed Asset"
},
- "Plant and Machinery": {
+ "Plants and Machineries": {
"account_type": "Fixed Asset"
},
- "Accumulated Depreciations": {}
+ "Buildings": {
+ "account_type": "Fixed Asset"
+ },
+ "Accumulated Depreciations": {
+ "account_type": "Accumulated Depreciation"
+ }
},
"Investments": {
"is_group": 1
@@ -72,67 +77,37 @@
},
"Stock Adjustment": {
"account_type": "Stock Adjustment"
- },
- "account_type": "Expense Account"
- },
- "account_type": "Expense Account"
+ }
+ }
},
"Indirect Expenses": {
- "Administrative Expenses": {
- "account_type": "Expense Account"
- },
- "Commission on Sales": {
- "account_type": "Expense Account"
- },
+ "Administrative Expenses": {},
+ "Commission on Sales": {},
"Depreciation": {
- "account_type": "Expense Account"
+ "account_type": "Depreciation"
},
- "Entertainment Expenses": {
- "account_type": "Expense Account"
- },
+ "Entertainment Expenses": {},
"Freight and Forwarding Charges": {
"account_type": "Chargeable"
},
- "Legal Expenses": {
- "account_type": "Expense Account"
- },
- "Marketing Expenses": {
- "account_type": "Chargeable"
- },
- "Miscellaneous Expenses": {
- "account_type": "Chargeable"
- },
- "Office Maintenance Expenses": {
- "account_type": "Expense Account"
- },
- "Office Rent": {
- "account_type": "Expense Account"
- },
- "Postal Expenses": {
- "account_type": "Expense Account"
- },
- "Print and Stationary": {
- "account_type": "Expense Account"
- },
+ "Legal Expenses": {},
+ "Marketing Expenses": {},
+ "Miscellaneous Expenses": {},
+ "Office Maintenance Expenses": {},
+ "Office Rent": {},
+ "Postal Expenses": {},
+ "Print and Stationary": {},
"Rounded Off": {
- "account_type": "Expense Account"
+ "account_type": "Round Off"
},
- "Salary": {
- "account_type": "Expense Account"
- },
- "Sales Expenses": {
- "account_type": "Expense Account"
- },
- "Telephone Expenses": {
- "account_type": "Expense Account"
- },
- "Travel Expenses": {
- "account_type": "Expense Account"
- },
- "Utility Expenses": {
- "account_type": "Expense Account"
- },
- "account_type": "Expense Account"
+ "Salary": {},
+ "Sales Expenses": {},
+ "Telephone Expenses": {},
+ "Travel Expenses": {},
+ "Utility Expenses": {},
+ "Write Off": {},
+ "Exchange Gain/Loss": {},
+ "Gain/Loss on Asset Disposal": {}
},
"root_type": "Expense"
},
diff --git a/erpnext/accounts/doctype/account/chart_of_accounts/verified/standard_chart_of_accounts.py b/erpnext/accounts/doctype/account/chart_of_accounts/verified/standard_chart_of_accounts.py
index 386b229..5824704 100644
--- a/erpnext/accounts/doctype/account/chart_of_accounts/verified/standard_chart_of_accounts.py
+++ b/erpnext/accounts/doctype/account/chart_of_accounts/verified/standard_chart_of_accounts.py
@@ -41,18 +41,24 @@
_("Capital Equipments"): {
"account_type": "Fixed Asset"
},
- _("Computers"): {
+ _("Electronic Equipments"): {
"account_type": "Fixed Asset"
},
- _("Furniture and Fixture"): {
+ _("Furnitures and Fixtures"): {
"account_type": "Fixed Asset"
},
_("Office Equipments"): {
"account_type": "Fixed Asset"
},
- _("Plant and Machinery"): {
+ _("Plants and Machineries"): {
"account_type": "Fixed Asset"
},
+ _("Buildings"): {
+ "account_type": "Fixed Asset"
+ },
+ _("Softwares"): {
+ "account_type": "Fixed Asset"
+ },
_("Accumulated Depreciation"): {
"account_type": "Accumulated Depreciation"
}
@@ -109,7 +115,10 @@
_("Sales Expenses"): {},
_("Telephone Expenses"): {},
_("Travel Expenses"): {},
- _("Utility Expenses"): {}
+ _("Utility Expenses"): {},
+ _("Write Off"): {},
+ _("Exchange Gain/Loss"): {},
+ _("Gain/Loss on Asset Disposal"): {}
},
"root_type": "Expense"
},
diff --git a/erpnext/accounts/doctype/asset/asset.py b/erpnext/accounts/doctype/asset/asset.py
index 1118766..b28aaa9 100644
--- a/erpnext/accounts/doctype/asset/asset.py
+++ b/erpnext/accounts/doctype/asset/asset.py
@@ -15,8 +15,8 @@
def validate(self):
self.status = self.get_status()
self.validate_item()
+ self.set_missing_values()
self.validate_asset_values()
- self.set_depreciation_settings()
self.make_depreciation_schedule()
self.validate_expected_value_after_useful_life()
# Validate depreciation related accounts
@@ -41,10 +41,18 @@
frappe.throw(_("Item {0} must be a Fixed Asset Item").format(self.item_code))
elif item.is_stock_item:
frappe.throw(_("Item {0} must be a non-stock item").format(self.item_code))
+
+ def set_missing_values(self):
+ if self.item_code:
+ item_details = get_item_details(self.item_code)
+ for field, value in item_details.items():
+ if not self.get(field):
+ self.set(field, value)
+
+ self.value_after_depreciation = (flt(self.gross_purchase_amount) -
+ flt(self.opening_accumulated_depreciation))
def validate_asset_values(self):
- self.value_after_depreciation = flt(self.gross_purchase_amount) - flt(self.opening_accumulated_depreciation)
-
if flt(self.expected_value_after_useful_life) >= flt(self.gross_purchase_amount):
frappe.throw(_("Expected Value After Useful Life must be less than Gross Purchase Amount"))
@@ -77,15 +85,6 @@
if (flt(self.value_after_depreciation) > flt(self.expected_value_after_useful_life)
and not self.next_depreciation_date):
frappe.throw(_("Please set Next Depreciation Date"))
-
-
-
- def set_depreciation_settings(self):
- asset_category = frappe.get_doc("Asset Category", self.asset_category)
-
- for field in ("depreciation_method", "total_number_of_depreciations", "frequency_of_depreciation"):
- if not self.get(field):
- self.set(field, asset_category.get(field))
def make_depreciation_schedule(self):
self.schedules = []
diff --git a/erpnext/accounts/doctype/journal_entry/journal_entry.py b/erpnext/accounts/doctype/journal_entry/journal_entry.py
index 96b95f9..6f25220 100644
--- a/erpnext/accounts/doctype/journal_entry/journal_entry.py
+++ b/erpnext/accounts/doctype/journal_entry/journal_entry.py
@@ -519,7 +519,7 @@
if (d.party_type, d.party) not in party_balance:
party_balance[(d.party_type, d.party)] = get_balance_on(party_type=d.party_type,
- party=d.party, date=self.posting_date)
+ party=d.party, date=self.posting_date, company=self.company)
d.account_balance = account_balance[d.account]
d.party_balance = party_balance[(d.party_type, d.party)]
@@ -553,6 +553,7 @@
"account_currency": account_details.account_currency,
"account_type": account_details.account_type
})
+ else: return frappe._dict()
@frappe.whitelist()
def get_payment_entry_against_order(dt, dn, amount=None, debit_in_account_currency=None, journal_entry=False, bank_account=None):
@@ -754,7 +755,7 @@
account = get_party_account(party_type, party, company)
account_balance = get_balance_on(account=account)
- party_balance = get_balance_on(party_type=party_type, party=party)
+ party_balance = get_balance_on(party_type=party_type, party=party, company=company)
return {
"account": account,
diff --git a/erpnext/accounts/doctype/payment_entry/payment_entry.py b/erpnext/accounts/doctype/payment_entry/payment_entry.py
index 5ed14d5..28978cd 100644
--- a/erpnext/accounts/doctype/payment_entry/payment_entry.py
+++ b/erpnext/accounts/doctype/payment_entry/payment_entry.py
@@ -77,7 +77,7 @@
if self.party:
if not self.party_balance:
self.party_balance = get_balance_on(party_type=self.party_type,
- party=self.party, date=self.posting_date)
+ party=self.party, date=self.posting_date, company=self.company)
if not self.party_account:
party_account = get_party_account(self.party_type, self.party, self.company)
@@ -251,7 +251,7 @@
self.unallocated_amount = party_amount - self.total_allocated_amount
def set_difference_amount(self):
- base_unallocated_amount = self.unallocated_amount * \
+ base_unallocated_amount = flt(self.unallocated_amount) * \
(self.source_exchange_rate if self.payment_type=="Receive" else self.target_exchange_rate)
base_party_amount = flt(self.base_total_allocated_amount) + flt(base_unallocated_amount)
@@ -669,9 +669,10 @@
"outstanding_amount": outstanding_amount,
"allocated_amount": outstanding_amount
})
-
+
pe.setup_party_account_field()
pe.set_missing_values()
- pe.set_exchange_rate()
- pe.set_amounts()
+ if bank:
+ pe.set_exchange_rate()
+ pe.set_amounts()
return pe
\ No newline at end of file
diff --git a/erpnext/accounts/utils.py b/erpnext/accounts/utils.py
index 2d1b2db..635197f 100644
--- a/erpnext/accounts/utils.py
+++ b/erpnext/accounts/utils.py
@@ -53,7 +53,7 @@
throw(_("{0} '{1}' not in Fiscal Year {2}").format(label, formatdate(date), fiscal_year))
@frappe.whitelist()
-def get_balance_on(account=None, date=None, party_type=None, party=None, in_account_currency=True):
+def get_balance_on(account=None, date=None, party_type=None, party=None, company=None, in_account_currency=True):
if not account and frappe.form_dict.get("account"):
account = frappe.form_dict.get("account")
if not date and frappe.form_dict.get("date"):
@@ -110,6 +110,9 @@
if party_type and party:
cond.append("""gle.party_type = "%s" and gle.party = "%s" """ %
(frappe.db.escape(party_type), frappe.db.escape(party, percent=False)))
+
+ if company:
+ cond.append("""gle.company = "%s" """ % (frappe.db.escape(company, percent=False)))
if account or (party_type and party):
if in_account_currency:
diff --git a/erpnext/manufacturing/doctype/production_order/production_order.js b/erpnext/manufacturing/doctype/production_order/production_order.js
index c3ec2b1..d42f735 100644
--- a/erpnext/manufacturing/doctype/production_order/production_order.js
+++ b/erpnext/manufacturing/doctype/production_order/production_order.js
@@ -179,6 +179,7 @@
}
}
+ frm.fields_dict.source_warehouse.get_query = company_filter;
frm.fields_dict.fg_warehouse.get_query = company_filter;
frm.fields_dict.wip_warehouse.get_query = company_filter;
},
diff --git a/erpnext/stock/doctype/landed_cost_purchase_receipt/landed_cost_purchase_receipt.json b/erpnext/stock/doctype/landed_cost_purchase_receipt/landed_cost_purchase_receipt.json
index bc8eaef..d65da88 100644
--- a/erpnext/stock/doctype/landed_cost_purchase_receipt/landed_cost_purchase_receipt.json
+++ b/erpnext/stock/doctype/landed_cost_purchase_receipt/landed_cost_purchase_receipt.json
@@ -20,7 +20,7 @@
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
- "in_list_view": 0,
+ "in_list_view": 1,
"label": "Receipt Document Type",
"length": 0,
"no_copy": 0,
@@ -124,7 +124,7 @@
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
- "in_list_view": 1,
+ "in_list_view": 0,
"label": "Posting Date",
"length": 0,
"no_copy": 0,
@@ -173,7 +173,7 @@
"issingle": 0,
"istable": 1,
"max_attachments": 0,
- "modified": "2016-07-11 03:28:01.870042",
+ "modified": "2016-07-20 10:49:34.228751",
"modified_by": "Administrator",
"module": "Stock",
"name": "Landed Cost Purchase Receipt",
@@ -182,5 +182,6 @@
"quick_entry": 0,
"read_only": 0,
"read_only_onload": 0,
+ "sort_order": "ASC",
"track_seen": 0
}
\ No newline at end of file