Browse Source

Auto fetch default bank account for jv of type Bank Voucher

develop
Anand Doshi 13 years ago
parent
commit
962c2aa80d
  1. 13
      erpnext/accounts/__init__.py
  2. 16
      erpnext/accounts/doctype/journal_voucher/journal_voucher.js
  3. 11
      erpnext/accounts/doctype/payable_voucher/payable_voucher.js
  4. 9
      erpnext/accounts/doctype/receivable_voucher/receivable_voucher.js

13
erpnext/accounts/__init__.py

@ -0,0 +1,13 @@
import webnotes
def get_default_bank_account():
"""
Get default bank account for a company
"""
company = webnotes.form_dict.get('company')
if not company: return
res = webnotes.conn.sql("""\
SELECT default_bank_account FROM `tabCompany`
WHERE name=%s AND docstatus<2""", company)
if res: return res[0][0]

16
erpnext/accounts/doctype/journal_voucher/journal_voucher.js

@ -152,3 +152,19 @@ cur_frm.cscript['View Ledger Entry'] = function(doc,cdt,cdn){
}
loadreport('GL Entry','General Ledger', callback);
}
cur_frm.cscript.voucher_type = function(doc, cdt, cdn) {
if(doc.voucher_type == 'Bank Voucher' && cstr(doc.company)) {
var children = getchildren('Journal Voucher Detail', doc.name, 'entries');
if(!children || children.length==0) {
$c('accounts.get_default_bank_account', {company: doc.company }, function(r, rt) {
if(!r.exc) {
var jvd = LocalDB.add_child(doc, 'Journal Voucher Detail', 'entries');
jvd.account = cstr(r.message);
refresh_field('entries');
}
});
}
}
}

11
erpnext/accounts/doctype/payable_voucher/payable_voucher.js

@ -200,8 +200,12 @@ cur_frm.cscript.allocated_amount = function(doc,cdt,cdn){
// Make Journal Voucher
// --------------------
cur_frm.cscript['Make Bank Voucher'] = function(doc, dt, dn) {
cur_frm.cscript.make_jv(cur_frm.doc);
cur_frm.cscript['Make Bank Voucher'] = function() {
$c('accounts.get_default_bank_account', { company: cur_frm.doc.company }, function(r, rt) {
if(!r.exc) {
cur_frm.cscript.make_jv(cur_frm.doc, null, null, r.message);
}
});
}
@ -324,7 +328,7 @@ var calc_total_advance = function(doc,cdt,cdn) {
// Make JV
// --------
cur_frm.cscript.make_jv = function(doc, dt, dn, det) {
cur_frm.cscript.make_jv = function(doc, dt, dn, bank_account) {
var jv = LocalDB.create('Journal Voucher');
jv = locals['Journal Voucher'][jv];
jv.voucher_type = 'Bank Voucher';
@ -342,6 +346,7 @@ cur_frm.cscript.make_jv = function(doc, dt, dn, det) {
// credit to bank
var d1 = LocalDB.add_child(jv, 'Journal Voucher Detail', 'entries');
d1.account = bank_account;
d1.credit = doc.outstanding_amount;
loaddoc('Journal Voucher', jv.name);

9
erpnext/accounts/doctype/receivable_voucher/receivable_voucher.js

@ -277,7 +277,11 @@ cur_frm.cscript['Make Delivery Note'] = function() {
// Make Bank Voucher Button
// -------------------------
cur_frm.cscript['Make Bank Voucher'] = function(doc, dt, dn) {
cur_frm.cscript.make_jv(cur_frm.doc);
$c('accounts.get_default_bank_account', { company: cur_frm.doc.company }, function(r, rt) {
if(!r.exc) {
cur_frm.cscript.make_jv(cur_frm.doc, null, null, r.message);
}
});
}
@ -402,7 +406,7 @@ cur_frm.cscript.calc_adjustment_amount = function(doc,cdt,cdn) {
// Make Journal Voucher
// --------------------
cur_frm.cscript.make_jv = function(doc, dt, dn) {
cur_frm.cscript.make_jv = function(doc, dt, dn, bank_account) {
var jv = LocalDB.create('Journal Voucher');
jv = locals['Journal Voucher'][jv];
jv.voucher_type = 'Bank Voucher';
@ -420,6 +424,7 @@ cur_frm.cscript.make_jv = function(doc, dt, dn) {
// credit to bank
var d1 = LocalDB.add_child(jv, 'Journal Voucher Detail', 'entries');
d1.account = bank_account;
d1.debit = doc.outstanding_amount;
loaddoc('Journal Voucher', jv.name);

Loading…
Cancel
Save