create custom flds for bullows account
diff --git a/erpnext/patches/april_2012/create_custom_field_bullows.py b/erpnext/patches/april_2012/create_custom_field_bullows.py
new file mode 100644
index 0000000..40e9185
--- /dev/null
+++ b/erpnext/patches/april_2012/create_custom_field_bullows.py
@@ -0,0 +1,195 @@
+field_list = [
+['Customer', 'customer_code'],
+['Customer', 'address_of_consignee'],
+['Customer', 'tin_no'],
+['Customer', 'cst_no'],
+['Customer', 'consignee_ec_code'],
+['Customer', 'consignee_sales_tax_no'],
+['Customer', 'ecc_no'],
+['Customer', 'location_detail'],
+['Delivery Note', 'is_billable'],
+['Delivery Note', 'pin_code'],
+['Delivery Note', 'address_of_consignee'],
+['Delivery Note', 'location_code'],
+['Delivery Note', 'your_order_number'],
+['Delivery Note', 'so_number'],
+['Delivery Note', 'insurance'],
+['Delivery Note', 'branch'],
+['Delivery Note', 'freight'],
+['Delivery Note', 'ecc_no'],
+['Delivery Note', 'cst_no'],
+['Delivery Note', 'tin_no'],
+['Delivery Note', 'special_instructions'],
+['Delivery Note', 'payment_terms'],
+['Delivery Note', 'consignee_ec_code'],
+['Delivery Note', 'consignee_sales_tax_no'],
+['Delivery Note', 'excise_amount_in_words'],
+['Delivery Note', 'consignee_name'],
+['Delivery Note', 'vendor_code'],
+['Delivery Note Detail', 'category'],
+['Delivery Note Detail', 'sale_type'],
+['Delivery Note Detail', 'rt_code'],
+['DocType Mapper', 'sales_type'],
+['Indent', 'estimated_miscellaneous_item_cost'],
+['Indent', 'project_name'],
+['Indent Detail', 'estimated_miscellaneous_item_cost'],
+['Indent Detail', 'material'],
+['Indent Detail', 'technical_specification'],
+['Indent Detail', 'weight_per_unit'],
+['Indent Detail', 'source_of_supply'],
+['Indent Detail', 'drawing_size'],
+['Indent Detail', 'total_surface_area_both_sides'],
+['Indent Detail', 'remark'],
+['Indent Detail', 'estimated_cost'],
+['Indent Detail', 'prefered_make'],
+['Indent Detail', 'presales_quotation_ref'],
+['Indent Detail', 'presales_qutation_value'],
+['Item', 'drawing_number'],
+['Item', 'source_of_supply'],
+['Item', 'chapter_id'],
+['Item', 'matgrpcomm'],
+['Item Group', 'show_in_catalogue'],
+['Journal Voucher Detail', 'foxpro_ref'],
+['Journal Voucher Detail', 'due_date'],
+['Journal Voucher Detail', 'remark'],
+['Leave Control Panel', 'date'],
+['PO Detail', 'indent_number'],
+['PO Detail', 'indent_date'],
+['PO Detail', 'disc_per'],
+['PO Detail', 'is_scrapped_item'],
+['PO Detail', 'list_price'],
+['PO Detail', 'excise_benifit_amount'],
+['PO Detail', 'diff'],
+['Project', 'completion_date_for_delivery'],
+['Project', 'completion_date_for_ere_n_comm'],
+['Project', 'offer_number'],
+['Project', 'estimated_cost_bo'],
+['Project', 'sales_person'],
+['Project', 'total_estimated_cost'],
+['Project', 'additional_excise_amt'],
+['Project Milestone', 'start_date'],
+['Project Milestone', 'end_date'],
+['Project Milestone', 'milestone_start_date'],
+['Project Milestone', 'milestone_end_date'],
+['Purchase Order', 'transport'],
+['Purchase Order', 'estimated_cost'],
+['Purchase Order', 'test_certificate_required'],
+['Purchase Order', 'vendor_reference'],
+['Purchase Order', 'octroi'],
+['Purchase Order', 'mode_of_dispatch'],
+['Purchase Order', 'transportation_required'],
+['Purchase Order', 'header_indent_no'],
+['Purchase Order', 'header_indent_date'],
+['Purchase Order', 'inspection'],
+['Purchase Order', 'delivery_schedule'],
+['Purchase Order', 'originated_by'],
+['Purchase Order', 'insurance'],
+['Purchase Receipt', 'incoming_qty_in_kgs'],
+['Purchase Receipt', 'approved'],
+['Purchase Receipt', 'against_rc_1'],
+['Purchase Receipt', 'against_rc_2'],
+['Purchase Receipt', 'against_rc_3'],
+['Purchase Receipt', 'transaction_date'],
+['Purchase Receipt Detail', 'list_price'],
+['Purchase Receipt Detail', 'disc_per'],
+['Receivable Voucher', 'category'],
+['Receivable Voucher', 'is_billable'],
+['Receivable Voucher', 'sale_type'],
+['Receivable Voucher', 'so_number'],
+['Receivable Voucher', 'address_of_consignee'],
+['Receivable Voucher', 'your_order_number'],
+['Receivable Voucher', 'name_of_excisable_goods'],
+['Receivable Voucher', 'cst_no'],
+['Receivable Voucher', 'tin_no'],
+['Receivable Voucher', 'consignee_ec_code'],
+['Receivable Voucher', 'ecc_no'],
+['Receivable Voucher', 'excise_amount_in_words'],
+['Receivable Voucher', 'payment_terms'],
+['Receivable Voucher', 'consignee_sales_tax_no'],
+['Receivable Voucher', 'consignee_name'],
+['Receivable Voucher', 'excise_amount'],
+['RV Detail', 'chapter_id'],
+['RV Detail', 'sale_type'],
+['RV Tax Detail', 'is_excise_account'],
+['Sales Order', 'vendor_code'],
+['Sales Order', 'estimated_cost'],
+['Sales Order', 'is_billable'],
+['Sales Order', 'against_form'],
+['Sales Order', 'order_category'],
+['Sales Order', 'pin_code'],
+['Sales Order', 'offer_number'],
+['Sales Order', 'inspection'],
+['Sales Order', 'freight'],
+['Sales Order', 'insurance'],
+['Sales Order', 'special_instructions'],
+['Sales Order', 'mode_of_dispatch'],
+['Sales Order', 'branch'],
+['Sales Order', 'address_of_consignee'],
+['Sales Order', 'so_number'],
+['Sales Order', 'payment_terms'],
+['Sales Order', 'location_code'],
+['Sales Order', 'your_order_number'],
+['Sales Order', 'name_of_excisable_goods'],
+['Sales Order', 'consignee_sales_tax_no'],
+['Sales Order', 'tin_no'],
+['Sales Order', 'consignee_ec_code'],
+['Sales Order', 'cst_no'],
+['Sales Order', 'ecc_no'],
+['Sales Order', 'excise_amount_in_words'],
+['Sales Order', 'authorised_signatory'],
+['Sales Order', 'consignee_name'],
+['Sales Order', 'c_form_applicable'],
+['Sales Order Detail', 'billed_qty'],
+['Sales Order Detail', 'category'],
+['Sales Order Detail', 'sale_type'],
+['Sales Order Detail', 'rt_code'],
+['Stock Entry', 'supplier_code'],
+['Stock Entry', 'po_number_and__date'],
+['Stock Entry', 'memo_no_and_date'],
+['Stock Entry', 'indent_no_and_date'],
+['Stock Entry', 'mode_of_dispatch'],
+['Stock Entry', 'special_instruction'],
+['Stock Entry', 'invoice_ref_1'],
+['Stock Entry', 'invoice_ref_2'],
+['Stock Entry', 'invoice_ref_3'],
+['Stock Entry', 'invoice_ref_4'],
+['Stock Entry', 'invoice_ref_5'],
+['Stock Entry', 'invoice_ref_date_1'],
+['Stock Entry', 'invoice_ref_date_2'],
+['Stock Entry', 'invoice_ref_date_3'],
+['Stock Entry', 'invoice_ref_date_4'],
+['Stock Entry', 'invoice_ref_date_5'],
+['Stock Entry', 'approved'],
+['Supplier', 'supplier_code'],
+['Supplier', 'pan_no'],
+['Ticket', 'reason'],
+['Ticket', 'document_num'],
+['Ticket', 'ticket_by'],
+['Ticket', 'ticket_by_email'],
+['Warehouse', 'country'],
+]
+
+
+import webnotes
+from webnotes.model.code import get_obj
+from webnotes.model.doc import Document
+
+def execute():
+ import webnotes.model.sync
+ webnotes.model.sync.sync('core', 'custom_field')
+ for f in field_list:
+ res = webnotes.conn.sql("""SELECT name FROM `tabCustom Field`
+ WHERE dt=%s AND fieldname=%s""", (f[0], f[1]))
+ if res: continue
+ docfield = webnotes.conn.sql("""SELECT * FROM `tabDocField`
+ WHERE parent=%s AND fieldname=%s""", (f[0], f[1]), as_dict=1)
+ if not docfield: continue
+ custom_field = docfield[0]
+
+ # scrub custom field dict
+ custom_field['dt'] = custom_field['parent']
+ del custom_field['parent']
+
+ d = Document('Custom Field', fielddata=custom_field)
+ d.name = custom_field['dt'] + '-' + custom_field['fieldname']
+ d.save(1, ignore_fields=1)