From c7d64cf5a84d3e86b52cd4c50b70ae237214ccc8 Mon Sep 17 00:00:00 2001 From: Nijil Date: Sun, 20 Nov 2011 00:22:41 +0530 Subject: [PATCH] almost --- .../purchase_common/purchase_common.js | 26 +++++++++++++------ 1 file changed, 18 insertions(+), 8 deletions(-) diff --git a/erpnext/buying/doctype/purchase_common/purchase_common.js b/erpnext/buying/doctype/purchase_common/purchase_common.js index c17623521c..d652779d3f 100644 --- a/erpnext/buying/doctype/purchase_common/purchase_common.js +++ b/erpnext/buying/doctype/purchase_common/purchase_common.js @@ -130,6 +130,11 @@ cur_frm.cscript.discount_rate = function(doc, cdt, cdn) { // Calculate Amount cur_frm.cscript.calc_amount(doc, 4); } +//==================== Purchase Ref Rate ================================================================ +cur_frm.cscript.purchase_ref_rate = function(doc, cdt, cdn) { + // Calculate Amount + cur_frm.cscript.calc_amount(doc, 4); +} //====================== Calculate Amount ============================================================ @@ -251,25 +256,30 @@ cur_frm.cscript.calc_amount = function(doc, n) { set_multiple(tname, cl[i].name, {'purchase_rate': flt(doc.conversion_rate) * flt(cl[i].import_rate) }, fname); set_multiple(tname, cl[i].name, {'amount': flt(flt(cl[i].qty) * flt(doc.conversion_rate) * flt(cl[i].import_rate))}, fname); set_multiple(tname, cl[i].name, {'import_amount': flt(flt(cl[i].qty) * flt(cl[i].import_rate))}, fname); + if(cl[i].import_ref_rate){ + set_multiple(tname, cl[i].name, {'purchase_ref_rate':flt(cl[i].import_ref_rate)*flt(doc.conversion_rate)}, fname); + } //dicount value should be changed } if(n == 2){ set_multiple(tname, cl[i].name, {'amount': flt(flt(cl[i].qty) * flt(cl[i].purchase_rate)), 'import_rate': flt(flt(cl[i].purchase_rate) / flt(doc.conversion_rate)) }, fname); set_multiple(tname, cl[i].name, {'import_amount': flt(flt(cl[i].qty) * flt(cl[i].purchase_rate) / flt(doc.conversion_rate))}, fname); - //discount value should be changed + set_multiple(tname, cl[i].name, {'purchase_ref_rate':flt(cl[i].import_ref_rate)*flt(doc.conversion_rate)}, fname); + //discount value should be changed } if(n == 3){ set_multiple(tname, cl[i].name, {'purchase_rate': flt(flt(cl[i].amount) / flt(cl[i].qty)) }, fname); set_multiple(tname, cl[i].name, {'import_rate': flt(flt(cl[i].purchase_rate) / flt(doc.conversion_rate))}, fname); set_multiple(tname, cl[i].name, {'import_amount': flt(flt(cl[i].qty) * flt(cl[i].purchase_rate) / flt(doc.conversion_rate))}, fname); } - if( n==4){ - if(cl[i].purchase_ref_rate && !cl[i].import_ref_rate ){ - set_multiple(tname, cl[i].name, {' - } - - - + if( n==4){ + set_multiple(tname, cl[i].name, {'import_ref_rate': flt(flt(cl[i].purchase_ref_rate) / flt(doc.conversion_rate))}, fname); + set_multiple(tname, cl[i].name, {'purchase_rate':flt( flt(cl[i].purchase_ref_rate) - flt(flt(cl[i].purchase_ref_rate)*flt(cl[i].discount_rate)/100) )}, fname); + set_multiple(tname, cl[i].name, {'import_rate': flt(flt(cl[i].purchase_rate) / flt(doc.conversion_rate))}, fname); + set_multiple(tname, cl[i].name, {'amount':flt(flt(cl[i].qty) * flt(cl[i].purchase_rate))}, fname); + set_multiple(tname, cl[i].name, {'import_amount': flt(flt(cl[i].qty) * flt(cl[i].purchase_rate) / flt(doc.conversion_rate))}, fname); + + } if (n != 3){ net_total += flt(flt(cl[i].qty) * flt(cl[i].purchase_rate)); net_total_import += flt(flt(cl[i].qty) * flt(cl[i].import_rate));