diff --git a/erpnext/accounts/DocType Mapper/Purchase Order-Payable Voucher/Purchase Order-Payable Voucher.txt b/erpnext/accounts/DocType Mapper/Purchase Order-Payable Voucher/Purchase Order-Payable Voucher.txt index 4bb3141d4d..159b5bb3f7 100644 --- a/erpnext/accounts/DocType Mapper/Purchase Order-Payable Voucher/Purchase Order-Payable Voucher.txt +++ b/erpnext/accounts/DocType Mapper/Purchase Order-Payable Voucher/Purchase Order-Payable Voucher.txt @@ -5,7 +5,7 @@ { 'creation': '2010-08-08 17:09:35', 'docstatus': 0, - 'modified': '2012-02-06 15:25:06', + 'modified': '2012-02-07 13:28:31', 'modified_by': u'Administrator', 'owner': u'Administrator' }, @@ -116,6 +116,15 @@ 'to_field': u'total_tax' }, + # Field Mapper Detail + { + 'doctype': u'Field Mapper Detail', + 'from_field': u'conversion_rate', + 'map': u'Yes', + 'match_id': 0, + 'to_field': u'conversion_rate' + }, + # Table Mapper Detail { 'doctype': u'Table Mapper Detail', diff --git a/erpnext/patches/jan_mar_2012/map_conversion_rate.py b/erpnext/patches/jan_mar_2012/map_conversion_rate.py new file mode 100644 index 0000000000..1a00bded62 --- /dev/null +++ b/erpnext/patches/jan_mar_2012/map_conversion_rate.py @@ -0,0 +1,51 @@ +import webnotes +from webnotes.model.code import get_obj +from webnotes.model.doc import addchild + +def execute(): + """ + * Maps conversion rate in doctype mapper PO-PR + * Maps conversion rate in doctype mapper PO-PV + """ + args = [ + { + 'parent': 'Purchase Order-Purchase Receipt', + 'map': [{ + 'from_table': 'Purchase Order', + 'to_table': 'Purchase Receipt', + 'fields': [['conversion_rate', 'conversion_rate', 'Yes']] + }] + }, + { + 'parent': 'Purchase Order-Payable Voucher', + 'map': [{ + 'from_table': 'Purchase Order', + 'to_table': 'Payable Voucher', + 'fields': [['conversion_rate', 'conversion_rate', 'Yes']] + }] + }, + ] + + for a in args: + for m in a['map']: + match_id = webnotes.conn.sql("""\ + SELECT match_id FROM `tabTable Mapper Detail` + WHERE parent=%s AND from_table=%s AND to_table=%s\ + """, (a['parent'], m['from_table'], m['to_table']))[0][0] + for f in m['fields']: + res = webnotes.conn.sql("""\ + SELECT name FROM `tabField Mapper Detail` + WHERE parent=%s AND from_field=%s AND to_field=%s + AND match_id=%s""", (a['parent'], f[0], f[1], match_id)) + if not res: + max_idx = webnotes.conn.sql("""\ + SELECT IFNULL(MAX(idx), 0) FROM `tabField Mapper Detail` + WHERE parent=%s""", a['parent'])[0][0] + obj = get_obj('DocType Mapper', a['parent']) + c = addchild(obj.doc, 'field_mapper_details', 'Field Mapper Detail', obj.doclist) + c.from_field = f[0] + c.to_field = f[1] + c.fields['map'] = f[2] + c.match_id = match_id + c.idx = max_idx + 1 + c.save() diff --git a/erpnext/patches/patch_list.py b/erpnext/patches/patch_list.py index f5698130da..262b7f7a5a 100644 --- a/erpnext/patches/patch_list.py +++ b/erpnext/patches/patch_list.py @@ -65,4 +65,9 @@ patch_list = [ 'patch_file': 'deploy_packing_slip', 'description': "Delete old packing slip fields & print format & deploy new doctypes related to Packing Slip" }, + { + 'patch_module': 'patches.jan_mar_2012', + 'patch_file': 'map_conversion_rate', + 'description': "Maps conversion rate in doctype mappers PO-PR and PO-PV" + }, ] diff --git a/erpnext/selling/doctype/customer/customer.js b/erpnext/selling/doctype/customer/customer.js index 23d007b50f..7e689dd7e6 100644 --- a/erpnext/selling/doctype/customer/customer.js +++ b/erpnext/selling/doctype/customer/customer.js @@ -12,7 +12,17 @@ cur_frm.cscript.onload = function(doc,dt,dn){ } // make address, contact, shipping, history list body cur_frm.cscript.make_hl_body(); - //cur_frm.cscript.make_sl_body(); + //cur_frm.cscript.make_sl_body(); + + cur_frm.cscript.load_defaults(doc, dt, dn); +} + +cur_frm.cscript.load_defaults = function(doc, dt, dn) { + doc = locals[doc.doctype][doc.name]; + if(!(doc.__islocal && doc.lead_name)) { return; } + + var fields_to_refresh = LocalDB.set_default_values(doc); + if(fields_to_refresh) { refresh_many(fields_to_refresh); } } cur_frm.add_fetch('lead_name', 'company_name', 'customer_name'); diff --git a/erpnext/stock/DocType Mapper/Purchase Order-Purchase Receipt/Purchase Order-Purchase Receipt.txt b/erpnext/stock/DocType Mapper/Purchase Order-Purchase Receipt/Purchase Order-Purchase Receipt.txt index b26cd03a18..3c50836af5 100644 --- a/erpnext/stock/DocType Mapper/Purchase Order-Purchase Receipt/Purchase Order-Purchase Receipt.txt +++ b/erpnext/stock/DocType Mapper/Purchase Order-Purchase Receipt/Purchase Order-Purchase Receipt.txt @@ -5,233 +5,217 @@ { 'creation': '2010-08-08 17:09:35', 'docstatus': 0, - 'modified': '2012-01-05 11:21:23', - 'modified_by': 'Administrator', - 'owner': 'Administrator' + 'modified': '2012-02-07 13:28:20', + 'modified_by': u'Administrator', + 'owner': u'Administrator' }, # These values are common for all Table Mapper Detail { - 'doctype': 'Table Mapper Detail', + 'doctype': u'Table Mapper Detail', 'name': '__common__', - 'parent': 'Purchase Order-Purchase Receipt', - 'parentfield': 'table_mapper_details', - 'parenttype': 'DocType Mapper' + 'parent': u'Purchase Order-Purchase Receipt', + 'parentfield': u'table_mapper_details', + 'parenttype': u'DocType Mapper' }, # These values are common for all Field Mapper Detail { - 'doctype': 'Field Mapper Detail', + 'doctype': u'Field Mapper Detail', + 'map': u'Yes', 'name': '__common__', - 'parent': 'Purchase Order-Purchase Receipt', - 'parentfield': 'field_mapper_details', - 'parenttype': 'DocType Mapper' + 'parent': u'Purchase Order-Purchase Receipt', + 'parentfield': u'field_mapper_details', + 'parenttype': u'DocType Mapper' }, # These values are common for all DocType Mapper { 'doctype': u'DocType Mapper', - 'from_doctype': 'Purchase Order', - 'module': 'Stock', + 'from_doctype': u'Purchase Order', + 'module': u'Stock', 'name': '__common__', 'ref_doc_submitted': 1, - 'to_doctype': 'Purchase Receipt' + 'to_doctype': u'Purchase Receipt' }, # DocType Mapper, Purchase Order-Purchase Receipt { 'doctype': u'DocType Mapper', - 'name': 'Purchase Order-Purchase Receipt' + 'name': u'Purchase Order-Purchase Receipt' }, # Field Mapper Detail { - 'checking_operator': '=', - 'doctype': 'Field Mapper Detail', - 'from_field': 'supplier', - 'map': 'Yes', + 'checking_operator': u'=', + 'doctype': u'Field Mapper Detail', + 'from_field': u'supplier', 'match_id': 0, - 'to_field': 'supplier' + 'to_field': u'supplier' }, # Field Mapper Detail { - 'checking_operator': '=', - 'doctype': 'Field Mapper Detail', - 'from_field': 'company', - 'map': 'Yes', + 'checking_operator': u'=', + 'doctype': u'Field Mapper Detail', + 'from_field': u'company', 'match_id': 0, - 'to_field': 'company' + 'to_field': u'company' }, # Field Mapper Detail { - 'checking_operator': '=', - 'doctype': 'Field Mapper Detail', - 'from_field': 'currency', - 'map': 'Yes', + 'checking_operator': u'=', + 'doctype': u'Field Mapper Detail', + 'from_field': u'currency', 'match_id': 0, - 'to_field': 'currency' + 'to_field': u'currency' }, # Field Mapper Detail { - 'doctype': 'Field Mapper Detail', - 'from_field': 'name', - 'map': 'Yes', + 'doctype': u'Field Mapper Detail', + 'from_field': u'name', 'match_id': 1, - 'to_field': 'prevdoc_detail_docname' + 'to_field': u'prevdoc_detail_docname' }, # Field Mapper Detail { - 'doctype': 'Field Mapper Detail', - 'from_field': 'parent', - 'map': 'Yes', + 'doctype': u'Field Mapper Detail', + 'from_field': u'parent', 'match_id': 1, - 'to_field': 'prevdoc_docname' + 'to_field': u'prevdoc_docname' }, # Field Mapper Detail { - 'doctype': 'Field Mapper Detail', - 'from_field': 'parenttype', - 'map': 'Yes', + 'doctype': u'Field Mapper Detail', + 'from_field': u'parenttype', 'match_id': 1, - 'to_field': 'prevdoc_doctype' + 'to_field': u'prevdoc_doctype' }, # Field Mapper Detail { - 'checking_operator': '=', - 'doctype': 'Field Mapper Detail', - 'from_field': 'item_code', - 'map': 'Yes', + 'checking_operator': u'=', + 'doctype': u'Field Mapper Detail', + 'from_field': u'item_code', 'match_id': 1, - 'to_field': 'item_code' + 'to_field': u'item_code' }, # Field Mapper Detail { - 'doctype': 'Field Mapper Detail', - 'from_field': 'eval:(flt(obj.qty) - flt(obj.received_qty)) ', - 'map': 'Yes', + 'doctype': u'Field Mapper Detail', + 'from_field': u'eval:(flt(obj.qty) - flt(obj.received_qty)) ', 'match_id': 1, - 'to_field': 'received_qty' + 'to_field': u'received_qty' }, # Field Mapper Detail { - 'doctype': 'Field Mapper Detail', - 'from_field': 'eval:(flt(obj.qty) - flt(obj.received_qty)) ', - 'map': 'Yes', + 'doctype': u'Field Mapper Detail', + 'from_field': u'eval:(flt(obj.qty) - flt(obj.received_qty)) ', 'match_id': 1, - 'to_field': 'qty' + 'to_field': u'qty' }, # Field Mapper Detail { - 'doctype': 'Field Mapper Detail', - 'from_field': 'eval:(flt(obj.qty) - flt(obj.received_qty)) * flt(obj.conversion_factor)', - 'map': 'Yes', + 'doctype': u'Field Mapper Detail', + 'from_field': u'eval:(flt(obj.qty) - flt(obj.received_qty)) * flt(obj.conversion_factor)', 'match_id': 1, - 'to_field': 'stock_qty' + 'to_field': u'stock_qty' }, # Field Mapper Detail { - 'doctype': 'Field Mapper Detail', - 'from_field': 'eval:(flt(obj.qty) - flt(obj.received_qty)) * flt(obj.import_rate)', - 'map': 'Yes', + 'doctype': u'Field Mapper Detail', + 'from_field': u'eval:(flt(obj.qty) - flt(obj.received_qty)) * flt(obj.import_rate)', 'match_id': 1, - 'to_field': 'import_amount' + 'to_field': u'import_amount' }, # Field Mapper Detail { - 'doctype': 'Field Mapper Detail', - 'from_field': 'eval:(flt(obj.qty) - flt(obj.received_qty)) * flt(obj.purchase_rate)', - 'map': 'Yes', + 'doctype': u'Field Mapper Detail', + 'from_field': u'eval:(flt(obj.qty) - flt(obj.received_qty)) * flt(obj.purchase_rate)', 'match_id': 1, - 'to_field': 'amount' + 'to_field': u'amount' }, # Field Mapper Detail { - 'doctype': 'Field Mapper Detail', - 'from_field': 'schedule_date', - 'map': 'Yes', + 'doctype': u'Field Mapper Detail', + 'from_field': u'schedule_date', 'match_id': 1, - 'to_field': 'schedule_date' + 'to_field': u'schedule_date' }, # Field Mapper Detail { - 'doctype': 'Field Mapper Detail', - 'from_field': 'net_total', - 'map': 'Yes', + 'doctype': u'Field Mapper Detail', + 'from_field': u'net_total', 'match_id': 0, - 'to_field': 'net_total' + 'to_field': u'net_total' }, # Field Mapper Detail { - 'doctype': 'Field Mapper Detail', - 'from_field': 'grand_total', - 'map': 'Yes', + 'doctype': u'Field Mapper Detail', + 'from_field': u'grand_total', 'match_id': 0, - 'to_field': 'grand_total' + 'to_field': u'grand_total' }, # Field Mapper Detail { - 'doctype': 'Field Mapper Detail', - 'from_field': 'total_tax', - 'map': 'Yes', + 'doctype': u'Field Mapper Detail', + 'from_field': u'total_tax', 'match_id': 0, - 'to_field': 'total_tax' + 'to_field': u'total_tax' }, # Field Mapper Detail { - 'doctype': 'Field Mapper Detail', - 'from_field': 'transaction_date', - 'map': 'No', + 'doctype': u'Field Mapper Detail', + 'from_field': u'conversion_rate', 'match_id': 0, - 'to_field': 'transaction_date' + 'to_field': u'conversion_rate' }, # Table Mapper Detail { - 'doctype': 'Table Mapper Detail', - 'from_field': 'po_details', - 'from_table': 'PO Detail', + 'doctype': u'Table Mapper Detail', + 'from_field': u'po_details', + 'from_table': u'PO Detail', 'match_id': 1, - 'reference_doctype_key': 'prevdoc_doctype', - 'reference_key': 'prevdoc_detail_docname', - 'to_field': 'purchase_receipt_details', - 'to_table': 'Purchase Receipt Detail', - 'validation_logic': 'docstatus=1 and qty > ifnull(received_qty,0)' + 'reference_doctype_key': u'prevdoc_doctype', + 'reference_key': u'prevdoc_detail_docname', + 'to_field': u'purchase_receipt_details', + 'to_table': u'Purchase Receipt Detail', + 'validation_logic': u'docstatus=1 and qty > ifnull(received_qty,0)' }, # Table Mapper Detail { - 'doctype': 'Table Mapper Detail', - 'from_table': 'Purchase Order', + 'doctype': u'Table Mapper Detail', + 'from_table': u'Purchase Order', 'match_id': 0, - 'reference_key': 'prevdoc_docname', - 'to_table': 'Purchase Receipt', - 'validation_logic': 'docstatus = 1' + 'reference_key': u'prevdoc_docname', + 'to_table': u'Purchase Receipt', + 'validation_logic': u'docstatus = 1' }, # Table Mapper Detail { - 'doctype': 'Table Mapper Detail', - 'from_field': 'purchase_tax_details', - 'from_table': 'Purchase Tax Detail', + 'doctype': u'Table Mapper Detail', + 'from_field': u'purchase_tax_details', + 'from_table': u'Purchase Tax Detail', 'match_id': 2, - 'to_field': 'purchase_tax_details', - 'to_table': 'Purchase Tax Detail', - 'validation_logic': 'docstatus = 1' + 'to_field': u'purchase_tax_details', + 'to_table': u'Purchase Tax Detail', + 'validation_logic': u'docstatus = 1' } -] +] \ No newline at end of file