[fix] [minor] recreate gl entries when using auto inventory accounting to fix bug introduced due to commit - 5dd6b1d082d180133813c1c661d5e72076a19491
This commit is contained in:
parent
9283b6c59d
commit
215c901a0d
@ -99,6 +99,8 @@ class SellingController(StockController):
|
|||||||
for item in self.doclist.get({"parentfield": self.fname}):
|
for item in self.doclist.get({"parentfield": self.fname}):
|
||||||
if item.item_code in self.stock_items or \
|
if item.item_code in self.stock_items or \
|
||||||
(item_sales_bom and item_sales_bom.get(item.item_code)):
|
(item_sales_bom and item_sales_bom.get(item.item_code)):
|
||||||
|
|
||||||
|
buying_amount = 0
|
||||||
if item.item_code in self.stock_items:
|
if item.item_code in self.stock_items:
|
||||||
buying_amount = get_buying_amount(self.doc.doctype, self.doc.name,
|
buying_amount = get_buying_amount(self.doc.doctype, self.doc.name,
|
||||||
item.name, stock_ledger_entries.get((item.item_code,
|
item.name, stock_ledger_entries.get((item.item_code,
|
||||||
@ -108,6 +110,7 @@ class SellingController(StockController):
|
|||||||
self.doc.doctype, self.doc.name, item.name, stock_ledger_entries,
|
self.doc.doctype, self.doc.name, item.name, stock_ledger_entries,
|
||||||
item_sales_bom)
|
item_sales_bom)
|
||||||
|
|
||||||
|
# buying_amount >= 0.01 so that gl entry doesn't get created for such small amounts
|
||||||
item.buying_amount = buying_amount >= 0.01 and buying_amount or 0
|
item.buying_amount = buying_amount >= 0.01 and buying_amount or 0
|
||||||
webnotes.conn.set_value(item.doctype, item.name, "buying_amount",
|
webnotes.conn.set_value(item.doctype, item.name, "buying_amount",
|
||||||
item.buying_amount)
|
item.buying_amount)
|
||||||
|
@ -257,4 +257,5 @@ patch_list = [
|
|||||||
"execute:webnotes.reload_doc('accounts', 'Print Format', 'POS Invoice') # 2013-08-16",
|
"execute:webnotes.reload_doc('accounts', 'Print Format', 'POS Invoice') # 2013-08-16",
|
||||||
"patches.august_2013.p06_fix_sle_against_stock_entry",
|
"patches.august_2013.p06_fix_sle_against_stock_entry",
|
||||||
"execute:webnotes.bean('Style Settings').save() #2013-08-20",
|
"execute:webnotes.bean('Style Settings').save() #2013-08-20",
|
||||||
|
"patches.september_2013.p01_fix_buying_amount_gl_entries",
|
||||||
]
|
]
|
0
patches/september_2013/__init__.py
Normal file
0
patches/september_2013/__init__.py
Normal file
31
patches/september_2013/p01_fix_buying_amount_gl_entries.py
Normal file
31
patches/september_2013/p01_fix_buying_amount_gl_entries.py
Normal file
@ -0,0 +1,31 @@
|
|||||||
|
# Copyright (c) 2013, Web Notes Technologies Pvt. Ltd.
|
||||||
|
# License: GNU General Public License v3. See license.txt
|
||||||
|
|
||||||
|
from __future__ import unicode_literals
|
||||||
|
import webnotes
|
||||||
|
import webnotes.defaults
|
||||||
|
from webnotes.utils import cint
|
||||||
|
|
||||||
|
def execute():
|
||||||
|
if not cint(webnotes.defaults.get_global_default("auto_inventory_accounting")):
|
||||||
|
return
|
||||||
|
|
||||||
|
# fix delivery note
|
||||||
|
for dn in webnotes.conn.sql_list("""select name from `tabDelivery Note` where docstatus=1
|
||||||
|
and posting_date >= "2013-08-06" """):
|
||||||
|
recreate_gl_entries("Delivery Note", dn)
|
||||||
|
|
||||||
|
# fix sales invoice
|
||||||
|
for si in webnotes.conn.sql_list("""select name from `tabSales Invoice` where docstatus=1
|
||||||
|
and update_stock=1 and posting_date >= "2013-08-06" """):
|
||||||
|
recreate_gl_entries("Sales Invoice", si)
|
||||||
|
|
||||||
|
def recreate_gl_entries(doctype, name):
|
||||||
|
# remove gl entries
|
||||||
|
webnotes.conn.sql("""delete from `tabGL Entry` where voucher_type=%s
|
||||||
|
and voucher_no=%s""", (doctype, name))
|
||||||
|
|
||||||
|
# calculate buying amount and make gl entries
|
||||||
|
bean = webnotes.bean(doctype, name)
|
||||||
|
bean.run_method("set_buying_amount")
|
||||||
|
bean.run_method("make_gl_entries")
|
Loading…
x
Reference in New Issue
Block a user