commit
0a75fa09ef
@ -33,7 +33,8 @@ class TestPaymentTool(unittest.TestCase):
|
|||||||
|
|
||||||
jv_against_so1 = self.create_against_jv(jv_test_records[0], {
|
jv_against_so1 = self.create_against_jv(jv_test_records[0], {
|
||||||
"account": "_Test Customer 3 - _TC",
|
"account": "_Test Customer 3 - _TC",
|
||||||
"against_sales_order": so1.name
|
"against_sales_order": so1.name,
|
||||||
|
"is_advance": "Yes"
|
||||||
})
|
})
|
||||||
|
|
||||||
|
|
||||||
@ -45,7 +46,8 @@ class TestPaymentTool(unittest.TestCase):
|
|||||||
jv_against_so2 = self.create_against_jv(jv_test_records[0], {
|
jv_against_so2 = self.create_against_jv(jv_test_records[0], {
|
||||||
"account": "_Test Customer 3 - _TC",
|
"account": "_Test Customer 3 - _TC",
|
||||||
"against_sales_order": so2.name,
|
"against_sales_order": so2.name,
|
||||||
"credit": 1000
|
"credit": 1000,
|
||||||
|
"is_advance": "Yes"
|
||||||
})
|
})
|
||||||
po = self.create_voucher(po_test_records[1], {
|
po = self.create_voucher(po_test_records[1], {
|
||||||
"supplier": "_Test Supplier 1"
|
"supplier": "_Test Supplier 1"
|
||||||
|
@ -387,7 +387,7 @@ class AccountsController(TransactionBase):
|
|||||||
|
|
||||||
res = frappe.db.sql("""
|
res = frappe.db.sql("""
|
||||||
select
|
select
|
||||||
t1.name as jv_no, t1.remark, t2.%s as amount, t2.name as jv_detail_no
|
t1.name as jv_no, t1.remark, t2.%s as amount, t2.name as jv_detail_no, `against_%s` as against_order
|
||||||
from
|
from
|
||||||
`tabJournal Voucher` t1, `tabJournal Voucher Detail` t2
|
`tabJournal Voucher` t1, `tabJournal Voucher Detail` t2
|
||||||
where
|
where
|
||||||
@ -400,7 +400,7 @@ class AccountsController(TransactionBase):
|
|||||||
and ifnull(t2.against_purchase_order, '') = ''
|
and ifnull(t2.against_purchase_order, '') = ''
|
||||||
) %s)
|
) %s)
|
||||||
order by t1.posting_date""" %
|
order by t1.posting_date""" %
|
||||||
(dr_or_cr, '%s', cond),
|
(dr_or_cr, against_order_field, '%s', cond),
|
||||||
tuple([account_head] + so_list), as_dict= True)
|
tuple([account_head] + so_list), as_dict= True)
|
||||||
|
|
||||||
self.set(parentfield, [])
|
self.set(parentfield, [])
|
||||||
@ -411,7 +411,7 @@ class AccountsController(TransactionBase):
|
|||||||
"jv_detail_no": d.jv_detail_no,
|
"jv_detail_no": d.jv_detail_no,
|
||||||
"remarks": d.remark,
|
"remarks": d.remark,
|
||||||
"advance_amount": flt(d.amount),
|
"advance_amount": flt(d.amount),
|
||||||
"allocate_amount": 0
|
"allocated_amount": flt(d.amount) if d.against_order else 0
|
||||||
})
|
})
|
||||||
|
|
||||||
def validate_advance_jv(self, advance_table_fieldname, against_order_field):
|
def validate_advance_jv(self, advance_table_fieldname, against_order_field):
|
||||||
|
@ -78,6 +78,7 @@ def setup_account(args=None):
|
|||||||
frappe.db.commit()
|
frappe.db.commit()
|
||||||
|
|
||||||
except:
|
except:
|
||||||
|
if args:
|
||||||
traceback = frappe.get_traceback()
|
traceback = frappe.get_traceback()
|
||||||
for hook in frappe.get_hooks("setup_wizard_exception"):
|
for hook in frappe.get_hooks("setup_wizard_exception"):
|
||||||
frappe.get_attr(hook)(traceback, args)
|
frappe.get_attr(hook)(traceback, args)
|
||||||
|
@ -4,7 +4,7 @@
|
|||||||
from __future__ import unicode_literals
|
from __future__ import unicode_literals
|
||||||
import frappe
|
import frappe
|
||||||
from frappe import _
|
from frappe import _
|
||||||
from frappe.utils import flt
|
from frappe.utils import flt, cint
|
||||||
|
|
||||||
def execute(filters=None):
|
def execute(filters=None):
|
||||||
if not filters: filters = {}
|
if not filters: filters = {}
|
||||||
@ -57,6 +57,7 @@ def get_stock_ledger_entries(filters):
|
|||||||
conditions, as_dict=1)
|
conditions, as_dict=1)
|
||||||
|
|
||||||
def get_item_warehouse_batch_map(filters):
|
def get_item_warehouse_batch_map(filters):
|
||||||
|
float_precision = cint(frappe.db.get_default("float_precision")) or 3
|
||||||
sle = get_stock_ledger_entries(filters)
|
sle = get_stock_ledger_entries(filters)
|
||||||
iwb_map = {}
|
iwb_map = {}
|
||||||
|
|
||||||
@ -67,14 +68,14 @@ def get_item_warehouse_batch_map(filters):
|
|||||||
}))
|
}))
|
||||||
qty_dict = iwb_map[d.item_code][d.warehouse][d.batch_no]
|
qty_dict = iwb_map[d.item_code][d.warehouse][d.batch_no]
|
||||||
if d.posting_date < filters["from_date"]:
|
if d.posting_date < filters["from_date"]:
|
||||||
qty_dict.opening_qty += flt(d.actual_qty)
|
qty_dict.opening_qty += flt(d.actual_qty, float_precision)
|
||||||
elif d.posting_date >= filters["from_date"] and d.posting_date <= filters["to_date"]:
|
elif d.posting_date >= filters["from_date"] and d.posting_date <= filters["to_date"]:
|
||||||
if flt(d.actual_qty) > 0:
|
if flt(d.actual_qty) > 0:
|
||||||
qty_dict.in_qty += flt(d.actual_qty)
|
qty_dict.in_qty += flt(d.actual_qty, float_precision)
|
||||||
else:
|
else:
|
||||||
qty_dict.out_qty += abs(flt(d.actual_qty))
|
qty_dict.out_qty += abs(flt(d.actual_qty, float_precision))
|
||||||
|
|
||||||
qty_dict.bal_qty += flt(d.actual_qty)
|
qty_dict.bal_qty += flt(d.actual_qty, float_precision)
|
||||||
|
|
||||||
return iwb_map
|
return iwb_map
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user