196 lines
		
	
	
		
			6.7 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			196 lines
		
	
	
		
			6.7 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
| 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)
 |