diff --git a/accounts/DocType Mapper/Delivery Note-Sales Invoice/Delivery Note-Sales Invoice.txt b/accounts/DocType Mapper/Delivery Note-Sales Invoice/Delivery Note-Sales Invoice.txt
index 72f326b..e2f6422 100644
--- a/accounts/DocType Mapper/Delivery Note-Sales Invoice/Delivery Note-Sales Invoice.txt
+++ b/accounts/DocType Mapper/Delivery Note-Sales Invoice/Delivery Note-Sales Invoice.txt
@@ -1,188 +1,147 @@
-# DocType Mapper, Delivery Note-Sales Invoice
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-04-03 12:49:42',
-		'docstatus': 0,
-		'modified': '2012-04-03 12:49:43',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all Table Mapper Detail
-	{
-		'doctype': u'Table Mapper Detail',
-		'name': '__common__',
-		'parent': u'Delivery Note-Sales Invoice',
-		'parentfield': u'table_mapper_details',
-		'parenttype': u'DocType Mapper'
-	},
-
-	# These values are common for all Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'name': '__common__',
-		'parent': u'Delivery Note-Sales Invoice',
-		'parentfield': u'field_mapper_details',
-		'parenttype': u'DocType Mapper'
-	},
-
-	# These values are common for all DocType Mapper
-	{
-		'doctype': u'DocType Mapper',
-		'from_doctype': u'Delivery Note',
-		'module': u'Accounts',
-		'name': '__common__',
-		'ref_doc_submitted': 1,
-		'to_doctype': u'Sales Invoice'
-	},
-
-	# DocType Mapper, Delivery Note-Sales Invoice
-	{
-		'doctype': u'DocType Mapper',
-		'name': u'Delivery Note-Sales Invoice'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'eval: obj.basic_rate and (flt(obj.amount) - flt(obj.billed_amt)) / flt(obj.basic_rate) or obj.qty',
-		'map': u'Yes',
-		'match_id': 1,
-		'to_field': u'qty'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'parent',
-		'map': u'Yes',
-		'match_id': 1,
-		'to_field': u'delivery_note'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'name',
-		'map': u'Yes',
-		'match_id': 1,
-		'to_field': u'dn_detail'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'prevdoc_docname',
-		'map': u'Yes',
-		'match_id': 1,
-		'to_field': u'sales_order'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'prevdoc_detail_docname',
-		'map': u'Yes',
-		'match_id': 1,
-		'to_field': u'so_detail'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'eval: flt(obj.amount) - flt(obj.billed_amt)',
-		'map': u'Yes',
-		'match_id': 1,
-		'to_field': u'amount'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'eval: (flt(obj.amount) - flt(obj.billed_amt)) * flt(obj.export_rate)/flt(obj.basic_rate)',
-		'map': u'Yes',
-		'match_id': 1,
-		'to_field': u'export_amount'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'naming_series',
-		'map': u'No',
-		'match_id': 0,
-		'to_field': u'naming_series'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'incentives',
-		'map': u'No',
-		'match_id': 3,
-		'to_field': u'incentives'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'serial_no',
-		'map': u'Yes',
-		'match_id': 1,
-		'to_field': u'serial_no'
-	},
-
-	# Field Mapper Detail
-	{
-		'checking_operator': u'=',
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'export_rate',
-		'map': u'Yes',
-		'match_id': 1,
-		'to_field': u'export_rate'
-	},
-
-	# Table Mapper Detail
-	{
-		'doctype': u'Table Mapper Detail',
-		'from_table': u'Delivery Note',
-		'match_id': 0,
-		'to_table': u'Sales Invoice',
-		'validation_logic': u'docstatus=1'
-	},
-
-	# Table Mapper Detail
-	{
-		'doctype': u'Table Mapper Detail',
-		'from_field': u'delivery_note_details',
-		'from_table': u'Delivery Note Item',
-		'match_id': 1,
-		'to_field': u'entries',
-		'to_table': u'Sales Invoice Item',
-		'validation_logic': u'(ifnull(amount, 0) = 0 or amount > ifnull(billed_amt, 0)) and docstatus = 1'
-	},
-
-	# Table Mapper Detail
-	{
-		'doctype': u'Table Mapper Detail',
-		'from_field': u'other_charges',
-		'from_table': u'Sales Taxes and Charges',
-		'match_id': 2,
-		'to_field': u'other_charges',
-		'to_table': u'Sales Taxes and Charges',
-		'validation_logic': u'name is not null'
-	},
-
-	# Table Mapper Detail
-	{
-		'doctype': u'Table Mapper Detail',
-		'from_field': u'sales_team',
-		'from_table': u'Sales Team',
-		'match_id': 3,
-		'to_field': u'sales_team',
-		'to_table': u'Sales Team',
-		'validation_logic': u'name is not null'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-04-03 12:49:42", 
+  "modified_by": "Administrator", 
+  "modified": "2012-04-03 12:49:43"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Delivery Note-Sales Invoice", 
+  "doctype": "Table Mapper Detail", 
+  "parenttype": "DocType Mapper", 
+  "parentfield": "table_mapper_details"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Delivery Note-Sales Invoice", 
+  "doctype": "Field Mapper Detail", 
+  "parenttype": "DocType Mapper", 
+  "parentfield": "field_mapper_details"
+ }, 
+ {
+  "name": "__common__", 
+  "to_doctype": "Sales Invoice", 
+  "module": "Accounts", 
+  "doctype": "DocType Mapper", 
+  "ref_doc_submitted": 1, 
+  "from_doctype": "Delivery Note"
+ }, 
+ {
+  "name": "Delivery Note-Sales Invoice", 
+  "doctype": "DocType Mapper"
+ }, 
+ {
+  "map": "Yes", 
+  "match_id": 1, 
+  "to_field": "qty", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "eval: obj.basic_rate and (flt(obj.amount) - flt(obj.billed_amt)) / flt(obj.basic_rate) or obj.qty"
+ }, 
+ {
+  "map": "Yes", 
+  "match_id": 1, 
+  "to_field": "delivery_note", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "parent"
+ }, 
+ {
+  "map": "Yes", 
+  "match_id": 1, 
+  "to_field": "dn_detail", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "name"
+ }, 
+ {
+  "map": "Yes", 
+  "match_id": 1, 
+  "to_field": "sales_order", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "prevdoc_docname"
+ }, 
+ {
+  "map": "Yes", 
+  "match_id": 1, 
+  "to_field": "so_detail", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "prevdoc_detail_docname"
+ }, 
+ {
+  "map": "Yes", 
+  "match_id": 1, 
+  "to_field": "amount", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "eval: flt(obj.amount) - flt(obj.billed_amt)"
+ }, 
+ {
+  "map": "Yes", 
+  "match_id": 1, 
+  "to_field": "export_amount", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "eval: (flt(obj.amount) - flt(obj.billed_amt)) * flt(obj.export_rate)/flt(obj.basic_rate)"
+ }, 
+ {
+  "map": "No", 
+  "match_id": 0, 
+  "to_field": "naming_series", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "naming_series"
+ }, 
+ {
+  "map": "No", 
+  "match_id": 3, 
+  "to_field": "incentives", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "incentives"
+ }, 
+ {
+  "map": "Yes", 
+  "match_id": 1, 
+  "to_field": "serial_no", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "serial_no"
+ }, 
+ {
+  "map": "Yes", 
+  "match_id": 1, 
+  "to_field": "export_rate", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "export_rate", 
+  "checking_operator": "="
+ }, 
+ {
+  "match_id": 0, 
+  "doctype": "Table Mapper Detail", 
+  "from_table": "Delivery Note", 
+  "to_table": "Sales Invoice", 
+  "validation_logic": "docstatus=1"
+ }, 
+ {
+  "match_id": 1, 
+  "to_field": "entries", 
+  "doctype": "Table Mapper Detail", 
+  "from_field": "delivery_note_details", 
+  "from_table": "Delivery Note Item", 
+  "to_table": "Sales Invoice Item", 
+  "validation_logic": "(ifnull(amount, 0) = 0 or amount > ifnull(billed_amt, 0)) and docstatus = 1"
+ }, 
+ {
+  "match_id": 2, 
+  "to_field": "other_charges", 
+  "doctype": "Table Mapper Detail", 
+  "from_field": "other_charges", 
+  "from_table": "Sales Taxes and Charges", 
+  "to_table": "Sales Taxes and Charges", 
+  "validation_logic": "name is not null"
+ }, 
+ {
+  "match_id": 3, 
+  "to_field": "sales_team", 
+  "doctype": "Table Mapper Detail", 
+  "from_field": "sales_team", 
+  "from_table": "Sales Team", 
+  "to_table": "Sales Team", 
+  "validation_logic": "name is not null"
+ }
 ]
\ No newline at end of file
diff --git a/accounts/DocType Mapper/Project-Sales Invoice/Project-Sales Invoice.txt b/accounts/DocType Mapper/Project-Sales Invoice/Project-Sales Invoice.txt
index 8d87fda..dd5705d 100644
--- a/accounts/DocType Mapper/Project-Sales Invoice/Project-Sales Invoice.txt
+++ b/accounts/DocType Mapper/Project-Sales Invoice/Project-Sales Invoice.txt
@@ -1,64 +1,49 @@
-# DocType Mapper, Project-Sales Invoice
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2010-09-01 15:47:59',
-		'docstatus': 0,
-		'modified': '2012-04-03 12:49:50',
-		'modified_by': u'Administrator',
-		'owner': u'ashwini@webnotestech.com'
-	},
-
-	# These values are common for all Table Mapper Detail
-	{
-		'doctype': u'Table Mapper Detail',
-		'from_table': u'Project',
-		'match_id': 0,
-		'name': '__common__',
-		'parent': u'Project-Sales Invoice',
-		'parentfield': u'table_mapper_details',
-		'parenttype': u'DocType Mapper',
-		'to_table': u'Sales Invoice',
-		'validation_logic': u'name is not null'
-	},
-
-	# These values are common for all Field Mapper Detail
-	{
-		'checking_operator': u'=',
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'customer',
-		'map': u'Yes',
-		'match_id': 0,
-		'name': '__common__',
-		'parent': u'Project-Sales Invoice',
-		'parentfield': u'field_mapper_details',
-		'parenttype': u'DocType Mapper',
-		'to_field': u'customer'
-	},
-
-	# These values are common for all DocType Mapper
-	{
-		'doctype': 'DocType Mapper',
-		'from_doctype': u'Project',
-		'module': u'Accounts',
-		'name': '__common__',
-		'to_doctype': u'Sales Invoice'
-	},
-
-	# DocType Mapper, Project-Sales Invoice
-	{
-		'doctype': 'DocType Mapper',
-		'name': u'Project-Sales Invoice'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail'
-	},
-
-	# Table Mapper Detail
-	{
-		'doctype': u'Table Mapper Detail'
-	}
+ {
+  "owner": "ashwini@webnotestech.com", 
+  "docstatus": 0, 
+  "creation": "2010-09-01 15:47:59", 
+  "modified_by": "Administrator", 
+  "modified": "2012-04-03 12:49:50"
+ }, 
+ {
+  "match_id": 0, 
+  "parent": "Project-Sales Invoice", 
+  "name": "__common__", 
+  "doctype": "Table Mapper Detail", 
+  "parenttype": "DocType Mapper", 
+  "from_table": "Project", 
+  "to_table": "Sales Invoice", 
+  "validation_logic": "name is not null", 
+  "parentfield": "table_mapper_details"
+ }, 
+ {
+  "map": "Yes", 
+  "match_id": 0, 
+  "parent": "Project-Sales Invoice", 
+  "name": "__common__", 
+  "to_field": "customer", 
+  "doctype": "Field Mapper Detail", 
+  "parenttype": "DocType Mapper", 
+  "checking_operator": "=", 
+  "from_field": "customer", 
+  "parentfield": "field_mapper_details"
+ }, 
+ {
+  "name": "__common__", 
+  "to_doctype": "Sales Invoice", 
+  "module": "Accounts", 
+  "doctype": "DocType Mapper", 
+  "from_doctype": "Project"
+ }, 
+ {
+  "name": "Project-Sales Invoice", 
+  "doctype": "DocType Mapper"
+ }, 
+ {
+  "doctype": "Field Mapper Detail"
+ }, 
+ {
+  "doctype": "Table Mapper Detail"
+ }
 ]
\ No newline at end of file
diff --git a/accounts/DocType Mapper/Purchase Order-Purchase Invoice/Purchase Order-Purchase Invoice.txt b/accounts/DocType Mapper/Purchase Order-Purchase Invoice/Purchase Order-Purchase Invoice.txt
index 0e54457..ce45824 100644
--- a/accounts/DocType Mapper/Purchase Order-Purchase Invoice/Purchase Order-Purchase Invoice.txt
+++ b/accounts/DocType Mapper/Purchase Order-Purchase Invoice/Purchase Order-Purchase Invoice.txt
@@ -1,158 +1,123 @@
-# DocType Mapper, Purchase Order-Purchase Invoice
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2010-08-08 17:09:35',
-		'docstatus': 0,
-		'modified': '2012-04-03 12:49:50',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all Table Mapper Detail
-	{
-		'doctype': u'Table Mapper Detail',
-		'name': '__common__',
-		'parent': u'Purchase Order-Purchase Invoice',
-		'parentfield': u'table_mapper_details',
-		'parenttype': u'DocType Mapper'
-	},
-
-	# These values are common for all Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'name': '__common__',
-		'parent': u'Purchase Order-Purchase Invoice',
-		'parentfield': u'field_mapper_details',
-		'parenttype': u'DocType Mapper'
-	},
-
-	# These values are common for all DocType Mapper
-	{
-		'doctype': u'DocType Mapper',
-		'from_doctype': u'Purchase Order',
-		'module': u'Accounts',
-		'name': '__common__',
-		'ref_doc_submitted': 1,
-		'to_doctype': u'Purchase Invoice'
-	},
-
-	# DocType Mapper, Purchase Order-Purchase Invoice
-	{
-		'doctype': u'DocType Mapper',
-		'name': u'Purchase Order-Purchase Invoice'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'eval: flt(obj.qty) - flt(obj.billed_qty)',
-		'map': u'Yes',
-		'match_id': 1,
-		'to_field': u'qty'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'purchase_rate',
-		'map': u'Yes',
-		'match_id': 1,
-		'to_field': u'rate'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'eval: (flt(obj.qty) - flt(obj.billed_qty)) * flt(obj.purchase_rate)',
-		'map': u'Yes',
-		'match_id': 1,
-		'to_field': u'amount'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'eval: (flt(obj.qty) - flt(obj.billed_qty)) * flt(obj.import_rate)',
-		'map': u'Yes',
-		'match_id': 1,
-		'to_field': u'import_amount'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'parent',
-		'map': u'Yes',
-		'match_id': 1,
-		'to_field': u'purchase_order'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'name',
-		'map': u'Yes',
-		'match_id': 1,
-		'to_field': u'po_detail'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'naming_series',
-		'map': u'No',
-		'match_id': 0,
-		'to_field': u'naming_series'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'total_tax',
-		'map': u'Yes',
-		'match_id': 0,
-		'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',
-		'from_table': u'Purchase Order',
-		'match_id': 0,
-		'to_table': u'Purchase Invoice',
-		'validation_logic': u'docstatus =1'
-	},
-
-	# Table Mapper Detail
-	{
-		'doctype': u'Table Mapper Detail',
-		'from_field': u'po_details',
-		'from_table': u'Purchase Order Item',
-		'match_id': 1,
-		'to_field': u'entries',
-		'to_table': u'Purchase Invoice Item',
-		'validation_logic': u'ifnull(billed_qty,0)  < qty and docstatus = 1'
-	},
-
-	# Table Mapper Detail
-	{
-		'doctype': u'Table Mapper Detail',
-		'from_field': u'purchase_tax_details',
-		'from_table': u'Purchase Taxes and Charges',
-		'match_id': 2,
-		'to_field': u'purchase_tax_details',
-		'to_table': u'Purchase Taxes and Charges',
-		'validation_logic': u'docstatus =1'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2010-08-08 17:09:35", 
+  "modified_by": "Administrator", 
+  "modified": "2012-04-03 12:49:50"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Purchase Order-Purchase Invoice", 
+  "doctype": "Table Mapper Detail", 
+  "parenttype": "DocType Mapper", 
+  "parentfield": "table_mapper_details"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Purchase Order-Purchase Invoice", 
+  "doctype": "Field Mapper Detail", 
+  "parenttype": "DocType Mapper", 
+  "parentfield": "field_mapper_details"
+ }, 
+ {
+  "name": "__common__", 
+  "to_doctype": "Purchase Invoice", 
+  "module": "Accounts", 
+  "doctype": "DocType Mapper", 
+  "ref_doc_submitted": 1, 
+  "from_doctype": "Purchase Order"
+ }, 
+ {
+  "name": "Purchase Order-Purchase Invoice", 
+  "doctype": "DocType Mapper"
+ }, 
+ {
+  "map": "Yes", 
+  "match_id": 1, 
+  "to_field": "qty", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "eval: flt(obj.qty) - flt(obj.billed_qty)"
+ }, 
+ {
+  "map": "Yes", 
+  "match_id": 1, 
+  "to_field": "rate", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "purchase_rate"
+ }, 
+ {
+  "map": "Yes", 
+  "match_id": 1, 
+  "to_field": "amount", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "eval: (flt(obj.qty) - flt(obj.billed_qty)) * flt(obj.purchase_rate)"
+ }, 
+ {
+  "map": "Yes", 
+  "match_id": 1, 
+  "to_field": "import_amount", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "eval: (flt(obj.qty) - flt(obj.billed_qty)) * flt(obj.import_rate)"
+ }, 
+ {
+  "map": "Yes", 
+  "match_id": 1, 
+  "to_field": "purchase_order", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "parent"
+ }, 
+ {
+  "map": "Yes", 
+  "match_id": 1, 
+  "to_field": "po_detail", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "name"
+ }, 
+ {
+  "map": "No", 
+  "match_id": 0, 
+  "to_field": "naming_series", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "naming_series"
+ }, 
+ {
+  "map": "Yes", 
+  "match_id": 0, 
+  "to_field": "total_tax", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "total_tax"
+ }, 
+ {
+  "map": "Yes", 
+  "match_id": 0, 
+  "to_field": "conversion_rate", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "conversion_rate"
+ }, 
+ {
+  "match_id": 0, 
+  "doctype": "Table Mapper Detail", 
+  "from_table": "Purchase Order", 
+  "to_table": "Purchase Invoice", 
+  "validation_logic": "docstatus =1"
+ }, 
+ {
+  "match_id": 1, 
+  "to_field": "entries", 
+  "doctype": "Table Mapper Detail", 
+  "from_field": "po_details", 
+  "from_table": "Purchase Order Item", 
+  "to_table": "Purchase Invoice Item", 
+  "validation_logic": "ifnull(billed_qty,0)  < qty and docstatus = 1"
+ }, 
+ {
+  "match_id": 2, 
+  "to_field": "purchase_tax_details", 
+  "doctype": "Table Mapper Detail", 
+  "from_field": "purchase_tax_details", 
+  "from_table": "Purchase Taxes and Charges", 
+  "to_table": "Purchase Taxes and Charges", 
+  "validation_logic": "docstatus =1"
+ }
 ]
\ No newline at end of file
diff --git a/accounts/DocType Mapper/Purchase Receipt-Purchase Invoice/Purchase Receipt-Purchase Invoice.txt b/accounts/DocType Mapper/Purchase Receipt-Purchase Invoice/Purchase Receipt-Purchase Invoice.txt
index 75b188b..f6c87e2 100644
--- a/accounts/DocType Mapper/Purchase Receipt-Purchase Invoice/Purchase Receipt-Purchase Invoice.txt
+++ b/accounts/DocType Mapper/Purchase Receipt-Purchase Invoice/Purchase Receipt-Purchase Invoice.txt
@@ -1,185 +1,144 @@
-# DocType Mapper, Purchase Receipt-Purchase Invoice
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2010-08-08 17:09:35',
-		'docstatus': 0,
-		'modified': '2012-04-03 12:49:50',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all Table Mapper Detail
-	{
-		'doctype': u'Table Mapper Detail',
-		'name': '__common__',
-		'parent': u'Purchase Receipt-Purchase Invoice',
-		'parentfield': u'table_mapper_details',
-		'parenttype': u'DocType Mapper'
-	},
-
-	# These values are common for all Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'name': '__common__',
-		'parent': u'Purchase Receipt-Purchase Invoice',
-		'parentfield': u'field_mapper_details',
-		'parenttype': u'DocType Mapper'
-	},
-
-	# These values are common for all DocType Mapper
-	{
-		'doctype': u'DocType Mapper',
-		'from_doctype': u'Purchase Receipt',
-		'module': u'Accounts',
-		'name': '__common__',
-		'ref_doc_submitted': 1,
-		'to_doctype': u'Purchase Invoice'
-	},
-
-	# DocType Mapper, Purchase Receipt-Purchase Invoice
-	{
-		'doctype': u'DocType Mapper',
-		'name': u'Purchase Receipt-Purchase Invoice'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'eval: flt(obj.qty) - flt(obj.billed_qty)',
-		'map': u'Yes',
-		'match_id': 1,
-		'to_field': u'qty'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'purchase_rate',
-		'map': u'Yes',
-		'match_id': 1,
-		'to_field': u'rate'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'eval: (flt(obj.qty) - flt(obj.billed_qty)) * flt(obj.purchase_rate)',
-		'map': u'Yes',
-		'match_id': 1,
-		'to_field': u'amount'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'eval: (flt(obj.qty) - flt(obj.billed_qty)) * flt(obj.import_rate)',
-		'map': u'Yes',
-		'match_id': 1,
-		'to_field': u'import_amount'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'parent',
-		'map': u'Yes',
-		'match_id': 1,
-		'to_field': u'purchase_receipt'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'prevdoc_docname',
-		'map': u'Yes',
-		'match_id': 1,
-		'to_field': u'purchase_order'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'name',
-		'map': u'Yes',
-		'match_id': 1,
-		'to_field': u'pr_detail'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'prevdoc_detail_docname',
-		'map': u'Yes',
-		'match_id': 1,
-		'to_field': u'po_detail'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'naming_series',
-		'map': u'No',
-		'match_id': 0,
-		'to_field': u'naming_series'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'net_total',
-		'map': u'Yes',
-		'match_id': 0,
-		'to_field': u'net_total'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'grand_total',
-		'map': u'Yes',
-		'match_id': 0,
-		'to_field': u'grand_total'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'total_tax',
-		'map': u'Yes',
-		'match_id': 0,
-		'to_field': u'total_tax'
-	},
-
-	# Table Mapper Detail
-	{
-		'doctype': u'Table Mapper Detail',
-		'from_field': u'purchase_receipt_details',
-		'from_table': u'Purchase Receipt Item',
-		'match_id': 1,
-		'to_field': u'entries',
-		'to_table': u'Purchase Invoice Item',
-		'validation_logic': u'ifnull(billed_qty,0)  < qty'
-	},
-
-	# Table Mapper Detail
-	{
-		'doctype': u'Table Mapper Detail',
-		'from_table': u'Purchase Receipt',
-		'match_id': 0,
-		'to_table': u'Purchase Invoice',
-		'validation_logic': u'docstatus=1'
-	},
-
-	# Table Mapper Detail
-	{
-		'doctype': u'Table Mapper Detail',
-		'from_field': u'purchase_tax_details',
-		'from_table': u'Purchase Taxes and Charges',
-		'match_id': 2,
-		'to_field': u'purchase_tax_details',
-		'to_table': u'Purchase Taxes and Charges',
-		'validation_logic': u'docstatus=1'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2010-08-08 17:09:35", 
+  "modified_by": "Administrator", 
+  "modified": "2012-04-03 12:49:50"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Purchase Receipt-Purchase Invoice", 
+  "doctype": "Table Mapper Detail", 
+  "parenttype": "DocType Mapper", 
+  "parentfield": "table_mapper_details"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Purchase Receipt-Purchase Invoice", 
+  "doctype": "Field Mapper Detail", 
+  "parenttype": "DocType Mapper", 
+  "parentfield": "field_mapper_details"
+ }, 
+ {
+  "name": "__common__", 
+  "to_doctype": "Purchase Invoice", 
+  "module": "Accounts", 
+  "doctype": "DocType Mapper", 
+  "ref_doc_submitted": 1, 
+  "from_doctype": "Purchase Receipt"
+ }, 
+ {
+  "name": "Purchase Receipt-Purchase Invoice", 
+  "doctype": "DocType Mapper"
+ }, 
+ {
+  "map": "Yes", 
+  "match_id": 1, 
+  "to_field": "qty", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "eval: flt(obj.qty) - flt(obj.billed_qty)"
+ }, 
+ {
+  "map": "Yes", 
+  "match_id": 1, 
+  "to_field": "rate", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "purchase_rate"
+ }, 
+ {
+  "map": "Yes", 
+  "match_id": 1, 
+  "to_field": "amount", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "eval: (flt(obj.qty) - flt(obj.billed_qty)) * flt(obj.purchase_rate)"
+ }, 
+ {
+  "map": "Yes", 
+  "match_id": 1, 
+  "to_field": "import_amount", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "eval: (flt(obj.qty) - flt(obj.billed_qty)) * flt(obj.import_rate)"
+ }, 
+ {
+  "map": "Yes", 
+  "match_id": 1, 
+  "to_field": "purchase_receipt", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "parent"
+ }, 
+ {
+  "map": "Yes", 
+  "match_id": 1, 
+  "to_field": "purchase_order", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "prevdoc_docname"
+ }, 
+ {
+  "map": "Yes", 
+  "match_id": 1, 
+  "to_field": "pr_detail", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "name"
+ }, 
+ {
+  "map": "Yes", 
+  "match_id": 1, 
+  "to_field": "po_detail", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "prevdoc_detail_docname"
+ }, 
+ {
+  "map": "No", 
+  "match_id": 0, 
+  "to_field": "naming_series", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "naming_series"
+ }, 
+ {
+  "map": "Yes", 
+  "match_id": 0, 
+  "to_field": "net_total", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "net_total"
+ }, 
+ {
+  "map": "Yes", 
+  "match_id": 0, 
+  "to_field": "grand_total", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "grand_total"
+ }, 
+ {
+  "map": "Yes", 
+  "match_id": 0, 
+  "to_field": "total_tax", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "total_tax"
+ }, 
+ {
+  "match_id": 1, 
+  "to_field": "entries", 
+  "doctype": "Table Mapper Detail", 
+  "from_field": "purchase_receipt_details", 
+  "from_table": "Purchase Receipt Item", 
+  "to_table": "Purchase Invoice Item", 
+  "validation_logic": "ifnull(billed_qty,0)  < qty"
+ }, 
+ {
+  "match_id": 0, 
+  "doctype": "Table Mapper Detail", 
+  "from_table": "Purchase Receipt", 
+  "to_table": "Purchase Invoice", 
+  "validation_logic": "docstatus=1"
+ }, 
+ {
+  "match_id": 2, 
+  "to_field": "purchase_tax_details", 
+  "doctype": "Table Mapper Detail", 
+  "from_field": "purchase_tax_details", 
+  "from_table": "Purchase Taxes and Charges", 
+  "to_table": "Purchase Taxes and Charges", 
+  "validation_logic": "docstatus=1"
+ }
 ]
\ No newline at end of file
diff --git a/accounts/DocType Mapper/Sales Order-Sales Invoice/Sales Order-Sales Invoice.txt b/accounts/DocType Mapper/Sales Order-Sales Invoice/Sales Order-Sales Invoice.txt
index aa1cc3c..4b6257b 100644
--- a/accounts/DocType Mapper/Sales Order-Sales Invoice/Sales Order-Sales Invoice.txt
+++ b/accounts/DocType Mapper/Sales Order-Sales Invoice/Sales Order-Sales Invoice.txt
@@ -1,190 +1,149 @@
-# DocType Mapper, Sales Order-Sales Invoice
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-04-03 12:49:42',
-		'docstatus': 0,
-		'modified': '2012-04-03 12:49:42',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all Table Mapper Detail
-	{
-		'doctype': u'Table Mapper Detail',
-		'name': '__common__',
-		'parent': u'Sales Order-Sales Invoice',
-		'parentfield': u'table_mapper_details',
-		'parenttype': u'DocType Mapper'
-	},
-
-	# These values are common for all Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'name': '__common__',
-		'parent': u'Sales Order-Sales Invoice',
-		'parentfield': u'field_mapper_details',
-		'parenttype': u'DocType Mapper'
-	},
-
-	# These values are common for all DocType Mapper
-	{
-		'doctype': u'DocType Mapper',
-		'from_doctype': u'Sales Order',
-		'module': u'Accounts',
-		'name': '__common__',
-		'ref_doc_submitted': 1,
-		'to_doctype': u'Sales Invoice'
-	},
-
-	# DocType Mapper, Sales Order-Sales Invoice
-	{
-		'doctype': u'DocType Mapper',
-		'name': u'Sales Order-Sales Invoice'
-	},
-
-	# Field Mapper Detail
-	{
-		'checking_operator': u'=',
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'customer',
-		'map': u'Yes',
-		'match_id': 0,
-		'to_field': u'customer'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'eval: obj.basic_rate and (flt(obj.amount) - flt(obj.billed_amt))/flt(obj.basic_rate) or obj.qty',
-		'map': u'Yes',
-		'match_id': 1,
-		'to_field': u'qty'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'parent',
-		'map': u'Yes',
-		'match_id': 1,
-		'to_field': u'sales_order'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'name',
-		'map': u'Yes',
-		'match_id': 1,
-		'to_field': u'so_detail'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'eval:flt(obj.amount) - flt(obj.billed_amt)',
-		'map': u'Yes',
-		'match_id': 1,
-		'to_field': u'amount'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'eval: (flt(obj.amount) - flt(obj.billed_amt))* flt(obj.export_rate)/flt(obj.basic_rate)',
-		'map': u'Yes',
-		'match_id': 1,
-		'to_field': u'export_amount'
-	},
-
-	# Field Mapper Detail
-	{
-		'checking_operator': u'=',
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'project_name',
-		'map': u'Yes',
-		'match_id': 0,
-		'to_field': u'project_name'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'reserved_warehouse',
-		'map': u'Yes',
-		'match_id': 1,
-		'to_field': u'warehouse'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'naming_series',
-		'map': u'No',
-		'match_id': 0,
-		'to_field': u'naming_series'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'incentives',
-		'map': u'No',
-		'match_id': 3,
-		'to_field': u'incentives'
-	},
-
-	# Field Mapper Detail
-	{
-		'checking_operator': u'=',
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'export_rate',
-		'map': u'Yes',
-		'match_id': 1,
-		'to_field': u'export_rate'
-	},
-
-	# Table Mapper Detail
-	{
-		'doctype': u'Table Mapper Detail',
-		'from_table': u'Sales Order',
-		'match_id': 0,
-		'to_table': u'Sales Invoice',
-		'validation_logic': u'docstatus=1'
-	},
-
-	# Table Mapper Detail
-	{
-		'doctype': u'Table Mapper Detail',
-		'from_field': u'sales_order_detail',
-		'from_table': u'Sales Order Item',
-		'match_id': 1,
-		'to_field': u'entries',
-		'to_table': u'Sales Invoice Item',
-		'validation_logic': u'(ifnull(amount, 0) = 0 or amount > ifnull(billed_amt, 0)) and docstatus = 1'
-	},
-
-	# Table Mapper Detail
-	{
-		'doctype': u'Table Mapper Detail',
-		'from_field': u'other_charges',
-		'from_table': u'Sales Taxes and Charges',
-		'match_id': 2,
-		'to_field': u'other_charges',
-		'to_table': u'Sales Taxes and Charges',
-		'validation_logic': u'name is not null'
-	},
-
-	# Table Mapper Detail
-	{
-		'doctype': u'Table Mapper Detail',
-		'from_field': u'sales_team',
-		'from_table': u'Sales Team',
-		'match_id': 3,
-		'to_field': u'sales_team',
-		'to_table': u'Sales Team',
-		'validation_logic': u'name is not null'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-04-03 12:49:42", 
+  "modified_by": "Administrator", 
+  "modified": "2012-04-03 12:49:42"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Sales Order-Sales Invoice", 
+  "doctype": "Table Mapper Detail", 
+  "parenttype": "DocType Mapper", 
+  "parentfield": "table_mapper_details"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Sales Order-Sales Invoice", 
+  "doctype": "Field Mapper Detail", 
+  "parenttype": "DocType Mapper", 
+  "parentfield": "field_mapper_details"
+ }, 
+ {
+  "name": "__common__", 
+  "to_doctype": "Sales Invoice", 
+  "module": "Accounts", 
+  "doctype": "DocType Mapper", 
+  "ref_doc_submitted": 1, 
+  "from_doctype": "Sales Order"
+ }, 
+ {
+  "name": "Sales Order-Sales Invoice", 
+  "doctype": "DocType Mapper"
+ }, 
+ {
+  "map": "Yes", 
+  "match_id": 0, 
+  "to_field": "customer", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "customer", 
+  "checking_operator": "="
+ }, 
+ {
+  "map": "Yes", 
+  "match_id": 1, 
+  "to_field": "qty", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "eval: obj.basic_rate and (flt(obj.amount) - flt(obj.billed_amt))/flt(obj.basic_rate) or obj.qty"
+ }, 
+ {
+  "map": "Yes", 
+  "match_id": 1, 
+  "to_field": "sales_order", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "parent"
+ }, 
+ {
+  "map": "Yes", 
+  "match_id": 1, 
+  "to_field": "so_detail", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "name"
+ }, 
+ {
+  "map": "Yes", 
+  "match_id": 1, 
+  "to_field": "amount", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "eval:flt(obj.amount) - flt(obj.billed_amt)"
+ }, 
+ {
+  "map": "Yes", 
+  "match_id": 1, 
+  "to_field": "export_amount", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "eval: (flt(obj.amount) - flt(obj.billed_amt))* flt(obj.export_rate)/flt(obj.basic_rate)"
+ }, 
+ {
+  "map": "Yes", 
+  "match_id": 0, 
+  "to_field": "project_name", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "project_name", 
+  "checking_operator": "="
+ }, 
+ {
+  "map": "Yes", 
+  "match_id": 1, 
+  "to_field": "warehouse", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "reserved_warehouse"
+ }, 
+ {
+  "map": "No", 
+  "match_id": 0, 
+  "to_field": "naming_series", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "naming_series"
+ }, 
+ {
+  "map": "No", 
+  "match_id": 3, 
+  "to_field": "incentives", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "incentives"
+ }, 
+ {
+  "map": "Yes", 
+  "match_id": 1, 
+  "to_field": "export_rate", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "export_rate", 
+  "checking_operator": "="
+ }, 
+ {
+  "match_id": 0, 
+  "doctype": "Table Mapper Detail", 
+  "from_table": "Sales Order", 
+  "to_table": "Sales Invoice", 
+  "validation_logic": "docstatus=1"
+ }, 
+ {
+  "match_id": 1, 
+  "to_field": "entries", 
+  "doctype": "Table Mapper Detail", 
+  "from_field": "sales_order_detail", 
+  "from_table": "Sales Order Item", 
+  "to_table": "Sales Invoice Item", 
+  "validation_logic": "(ifnull(amount, 0) = 0 or amount > ifnull(billed_amt, 0)) and docstatus = 1"
+ }, 
+ {
+  "match_id": 2, 
+  "to_field": "other_charges", 
+  "doctype": "Table Mapper Detail", 
+  "from_field": "other_charges", 
+  "from_table": "Sales Taxes and Charges", 
+  "to_table": "Sales Taxes and Charges", 
+  "validation_logic": "name is not null"
+ }, 
+ {
+  "match_id": 3, 
+  "to_field": "sales_team", 
+  "doctype": "Table Mapper Detail", 
+  "from_field": "sales_team", 
+  "from_table": "Sales Team", 
+  "to_table": "Sales Team", 
+  "validation_logic": "name is not null"
+ }
 ]
\ No newline at end of file
diff --git a/accounts/GL Mapper/Purchase Invoice with write off/Purchase Invoice with write off.txt b/accounts/GL Mapper/Purchase Invoice with write off/Purchase Invoice with write off.txt
index acbe877..05abfff 100644
--- a/accounts/GL Mapper/Purchase Invoice with write off/Purchase Invoice with write off.txt
+++ b/accounts/GL Mapper/Purchase Invoice with write off/Purchase Invoice with write off.txt
@@ -1,131 +1,112 @@
-# GL Mapper, Purchase Invoice with write off
 [
-
-	# These values are common in all dictionaries
-	{
-		u'creation': '2012-04-30 19:55:05',
-		u'docstatus': 0,
-		u'modified': '2012-10-03 11:08:09',
-		u'modified_by': u'Administrator',
-		u'owner': u'Administrator'
-	},
-
-	# These values are common for all GL Mapper
-	{
-		'doc_type': u'Purchase Invoice with write off',
-		u'doctype': u'GL Mapper',
-		u'name': u'__common__'
-	},
-
-	# These values are common for all GL Mapper Detail
-	{
-		u'doctype': u'GL Mapper Detail',
-		u'name': u'__common__',
-		'parent': u'Purchase Invoice with write off',
-		'parentfield': u'fields',
-		'parenttype': u'GL Mapper'
-	},
-
-	# GL Mapper, Purchase Invoice with write off
-	{
-		u'doctype': u'GL Mapper',
-		u'name': u'Purchase Invoice with write off'
-	},
-
-	# GL Mapper Detail
-	{
-		'account': u'expense_head',
-		'against': u'parent:credit_to',
-		'aging_date': u'parent:aging_date',
-		'company': u'parent:company',
-		'cost_center': u'cost_center',
-		'credit': u'value:0',
-		'debit': u'amount',
-		u'doctype': u'GL Mapper Detail',
-		'fiscal_year': u'parent:fiscal_year',
-		'is_opening': u'parent:is_opening',
-		'posting_date': u'parent:posting_date',
-		'remarks': u'parent:remarks',
-		'table_field': u'entries',
-		'transaction_date': u'parent:voucher_date',
-		'voucher_no': u'parent:name',
-		'voucher_type': u'parent:doctype'
-	},
-
-	# GL Mapper Detail
-	{
-		'account': u'account_head',
-		'against': u'parent:credit_to',
-		'aging_date': u'parent:aging_date',
-		'company': u'parent:company',
-		'cost_center': u'cost_center',
-		'credit': u"value:d.fields.get('category') != 'Valuation' and d.fields.get('add_deduct_tax') == 'Deduct' and d.fields.get('tax_amount') or 0",
-		'debit': u"value:d.fields.get('category') != 'Valuation' and d.fields.get('add_deduct_tax') == 'Add' and d.fields.get('tax_amount') or 0",
-		u'doctype': u'GL Mapper Detail',
-		'fiscal_year': u'parent:fiscal_year',
-		'is_opening': u'parent:is_opening',
-		'posting_date': u'parent:posting_date',
-		'remarks': u'parent:remarks',
-		'table_field': u'purchase_tax_details',
-		'transaction_date': u'parent:voucher_date',
-		'voucher_no': u'parent:name',
-		'voucher_type': u'parent:doctype'
-	},
-
-	# GL Mapper Detail
-	{
-		'account': u'tax_code',
-		'against': u'credit_to',
-		'aging_date': u'aging_date',
-		'company': u'company',
-		'credit': u'ded_amount',
-		'debit': u'value:0',
-		u'doctype': u'GL Mapper Detail',
-		'fiscal_year': u'fiscal_year',
-		'is_opening': u'is_opening',
-		'posting_date': u'posting_date',
-		'remarks': u'remarks',
-		'transaction_date': u'voucher_date',
-		'voucher_no': u'name',
-		'voucher_type': u'doctype'
-	},
-
-	# GL Mapper Detail
-	{
-		'account': u'credit_to',
-		'against': u'against_expense_account',
-		'against_voucher': u'name',
-		'against_voucher_type': u"value:'Purchase Invoice'",
-		'aging_date': u'aging_date',
-		'company': u'company',
-		'credit': u'total_amount_to_pay',
-		'debit': u'value:0',
-		u'doctype': u'GL Mapper Detail',
-		'fiscal_year': u'fiscal_year',
-		'is_opening': u'is_opening',
-		'posting_date': u'posting_date',
-		'remarks': u'remarks',
-		'transaction_date': u'voucher_date',
-		'voucher_no': u'name',
-		'voucher_type': u'doctype'
-	},
-
-	# GL Mapper Detail
-	{
-		'account': u'write_off_account',
-		'against': u'credit_to',
-		'aging_date': u'aging_date',
-		'company': u'company',
-		'cost_center': u'write_off_cost_center',
-		'credit': u'write_off_amount',
-		'debit': u'value:0',
-		u'doctype': u'GL Mapper Detail',
-		'fiscal_year': u'fiscal_year',
-		'is_opening': u'is_opening',
-		'posting_date': u'posting_date',
-		'remarks': u'remarks',
-		'transaction_date': u'voucher_date',
-		'voucher_no': u'name',
-		'voucher_type': u'doctype'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-04-30 19:55:05", 
+  "modified_by": "Administrator", 
+  "modified": "2012-10-03 11:08:09"
+ }, 
+ {
+  "doc_type": "Purchase Invoice with write off", 
+  "name": "__common__", 
+  "doctype": "GL Mapper"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Purchase Invoice with write off", 
+  "doctype": "GL Mapper Detail", 
+  "parenttype": "GL Mapper", 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "Purchase Invoice with write off", 
+  "doctype": "GL Mapper"
+ }, 
+ {
+  "account": "expense_head", 
+  "doctype": "GL Mapper Detail", 
+  "company": "parent:company", 
+  "debit": "amount", 
+  "fiscal_year": "parent:fiscal_year", 
+  "against": "parent:credit_to", 
+  "aging_date": "parent:aging_date", 
+  "credit": "value:0", 
+  "table_field": "entries", 
+  "transaction_date": "parent:voucher_date", 
+  "voucher_type": "parent:doctype", 
+  "is_opening": "parent:is_opening", 
+  "remarks": "parent:remarks", 
+  "posting_date": "parent:posting_date", 
+  "voucher_no": "parent:name", 
+  "cost_center": "cost_center"
+ }, 
+ {
+  "account": "account_head", 
+  "doctype": "GL Mapper Detail", 
+  "company": "parent:company", 
+  "debit": "value:d.fields.get('category') != 'Valuation' and d.fields.get('add_deduct_tax') == 'Add' and d.fields.get('tax_amount') or 0", 
+  "fiscal_year": "parent:fiscal_year", 
+  "against": "parent:credit_to", 
+  "aging_date": "parent:aging_date", 
+  "credit": "value:d.fields.get('category') != 'Valuation' and d.fields.get('add_deduct_tax') == 'Deduct' and d.fields.get('tax_amount') or 0", 
+  "table_field": "purchase_tax_details", 
+  "transaction_date": "parent:voucher_date", 
+  "voucher_type": "parent:doctype", 
+  "is_opening": "parent:is_opening", 
+  "remarks": "parent:remarks", 
+  "posting_date": "parent:posting_date", 
+  "voucher_no": "parent:name", 
+  "cost_center": "cost_center"
+ }, 
+ {
+  "account": "tax_code", 
+  "doctype": "GL Mapper Detail", 
+  "company": "company", 
+  "debit": "value:0", 
+  "fiscal_year": "fiscal_year", 
+  "against": "credit_to", 
+  "aging_date": "aging_date", 
+  "credit": "ded_amount", 
+  "transaction_date": "voucher_date", 
+  "voucher_type": "doctype", 
+  "is_opening": "is_opening", 
+  "remarks": "remarks", 
+  "posting_date": "posting_date", 
+  "voucher_no": "name"
+ }, 
+ {
+  "account": "credit_to", 
+  "doctype": "GL Mapper Detail", 
+  "credit": "total_amount_to_pay", 
+  "against_voucher_type": "value:'Purchase Invoice'", 
+  "company": "company", 
+  "debit": "value:0", 
+  "fiscal_year": "fiscal_year", 
+  "against": "against_expense_account", 
+  "aging_date": "aging_date", 
+  "against_voucher": "name", 
+  "transaction_date": "voucher_date", 
+  "voucher_type": "doctype", 
+  "is_opening": "is_opening", 
+  "remarks": "remarks", 
+  "posting_date": "posting_date", 
+  "voucher_no": "name"
+ }, 
+ {
+  "account": "write_off_account", 
+  "doctype": "GL Mapper Detail", 
+  "company": "company", 
+  "debit": "value:0", 
+  "fiscal_year": "fiscal_year", 
+  "against": "credit_to", 
+  "aging_date": "aging_date", 
+  "credit": "write_off_amount", 
+  "transaction_date": "voucher_date", 
+  "voucher_type": "doctype", 
+  "is_opening": "is_opening", 
+  "remarks": "remarks", 
+  "posting_date": "posting_date", 
+  "voucher_no": "name", 
+  "cost_center": "write_off_cost_center"
+ }
 ]
\ No newline at end of file
diff --git a/accounts/GL Mapper/Purchase Invoice/Purchase Invoice.txt b/accounts/GL Mapper/Purchase Invoice/Purchase Invoice.txt
index 61851d9..1251165 100644
--- a/accounts/GL Mapper/Purchase Invoice/Purchase Invoice.txt
+++ b/accounts/GL Mapper/Purchase Invoice/Purchase Invoice.txt
@@ -1,112 +1,95 @@
-# GL Mapper, Purchase Invoice
 [
-
-	# These values are common in all dictionaries
-	{
-		u'creation': '2012-04-30 19:55:04',
-		u'docstatus': 0,
-		u'modified': '2012-10-03 11:07:26',
-		u'modified_by': u'Administrator',
-		u'owner': u'Administrator'
-	},
-
-	# These values are common for all GL Mapper
-	{
-		'doc_type': u'Purchase Invoice',
-		u'doctype': u'GL Mapper',
-		u'name': u'__common__'
-	},
-
-	# These values are common for all GL Mapper Detail
-	{
-		u'doctype': u'GL Mapper Detail',
-		u'name': u'__common__',
-		'parent': u'Purchase Invoice',
-		'parentfield': u'fields',
-		'parenttype': u'GL Mapper'
-	},
-
-	# GL Mapper, Purchase Invoice
-	{
-		u'doctype': u'GL Mapper',
-		u'name': u'Purchase Invoice'
-	},
-
-	# GL Mapper Detail
-	{
-		'account': u'expense_head',
-		'against': u'parent:credit_to',
-		'aging_date': u'parent:aging_date',
-		'company': u'parent:company',
-		'cost_center': u'cost_center',
-		'credit': u'value:0',
-		'debit': u'amount',
-		u'doctype': u'GL Mapper Detail',
-		'fiscal_year': u'parent:fiscal_year',
-		'is_opening': u'parent:is_opening',
-		'posting_date': u'parent:posting_date',
-		'remarks': u'parent:remarks',
-		'table_field': u'entries',
-		'transaction_date': u'parent:voucher_date',
-		'voucher_no': u'parent:name',
-		'voucher_type': u'parent:doctype'
-	},
-
-	# GL Mapper Detail
-	{
-		'account': u'account_head',
-		'against': u'parent:credit_to',
-		'aging_date': u'parent:aging_date',
-		'company': u'parent:company',
-		'cost_center': u'cost_center',
-		'credit': u"value:d.fields.get('category') != 'Valuation' and d.fields.get('add_deduct_tax') == 'Deduct' and d.fields.get('tax_amount') or 0",
-		'debit': u"value:d.fields.get('category') != 'Valuation' and d.fields.get('add_deduct_tax') == 'Add' and d.fields.get('tax_amount') or 0",
-		u'doctype': u'GL Mapper Detail',
-		'fiscal_year': u'parent:fiscal_year',
-		'is_opening': u'parent:is_opening',
-		'posting_date': u'parent:posting_date',
-		'remarks': u'parent:remarks',
-		'table_field': u'purchase_tax_details',
-		'transaction_date': u'parent:voucher_date',
-		'voucher_no': u'parent:name',
-		'voucher_type': u'parent:doctype'
-	},
-
-	# GL Mapper Detail
-	{
-		'account': u'tax_code',
-		'against': u'credit_to',
-		'aging_date': u'aging_date',
-		'company': u'company',
-		'credit': u'ded_amount',
-		'debit': u'value:0',
-		u'doctype': u'GL Mapper Detail',
-		'fiscal_year': u'fiscal_year',
-		'is_opening': u'is_opening',
-		'posting_date': u'posting_date',
-		'remarks': u'remarks',
-		'transaction_date': u'voucher_date',
-		'voucher_no': u'name',
-		'voucher_type': u'doctype'
-	},
-
-	# GL Mapper Detail
-	{
-		'account': u'credit_to',
-		'against': u'against_expense_account',
-		'against_voucher': u'name',
-		'against_voucher_type': u"value:'Purchase Invoice'",
-		'aging_date': u'aging_date',
-		'company': u'company',
-		'credit': u'total_amount_to_pay',
-		'debit': u'value:0',
-		u'doctype': u'GL Mapper Detail',
-		'fiscal_year': u'fiscal_year',
-		'is_opening': u'is_opening',
-		'posting_date': u'posting_date',
-		'remarks': u'remarks',
-		'transaction_date': u'voucher_date',
-		'voucher_no': u'name',
-		'voucher_type': u'doctype'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-04-30 19:55:04", 
+  "modified_by": "Administrator", 
+  "modified": "2012-10-03 11:07:26"
+ }, 
+ {
+  "doc_type": "Purchase Invoice", 
+  "name": "__common__", 
+  "doctype": "GL Mapper"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Purchase Invoice", 
+  "doctype": "GL Mapper Detail", 
+  "parenttype": "GL Mapper", 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "Purchase Invoice", 
+  "doctype": "GL Mapper"
+ }, 
+ {
+  "account": "expense_head", 
+  "doctype": "GL Mapper Detail", 
+  "company": "parent:company", 
+  "debit": "amount", 
+  "fiscal_year": "parent:fiscal_year", 
+  "against": "parent:credit_to", 
+  "aging_date": "parent:aging_date", 
+  "credit": "value:0", 
+  "table_field": "entries", 
+  "transaction_date": "parent:voucher_date", 
+  "voucher_type": "parent:doctype", 
+  "is_opening": "parent:is_opening", 
+  "remarks": "parent:remarks", 
+  "posting_date": "parent:posting_date", 
+  "voucher_no": "parent:name", 
+  "cost_center": "cost_center"
+ }, 
+ {
+  "account": "account_head", 
+  "doctype": "GL Mapper Detail", 
+  "company": "parent:company", 
+  "debit": "value:d.fields.get('category') != 'Valuation' and d.fields.get('add_deduct_tax') == 'Add' and d.fields.get('tax_amount') or 0", 
+  "fiscal_year": "parent:fiscal_year", 
+  "against": "parent:credit_to", 
+  "aging_date": "parent:aging_date", 
+  "credit": "value:d.fields.get('category') != 'Valuation' and d.fields.get('add_deduct_tax') == 'Deduct' and d.fields.get('tax_amount') or 0", 
+  "table_field": "purchase_tax_details", 
+  "transaction_date": "parent:voucher_date", 
+  "voucher_type": "parent:doctype", 
+  "is_opening": "parent:is_opening", 
+  "remarks": "parent:remarks", 
+  "posting_date": "parent:posting_date", 
+  "voucher_no": "parent:name", 
+  "cost_center": "cost_center"
+ }, 
+ {
+  "account": "tax_code", 
+  "doctype": "GL Mapper Detail", 
+  "company": "company", 
+  "debit": "value:0", 
+  "fiscal_year": "fiscal_year", 
+  "against": "credit_to", 
+  "aging_date": "aging_date", 
+  "credit": "ded_amount", 
+  "transaction_date": "voucher_date", 
+  "voucher_type": "doctype", 
+  "is_opening": "is_opening", 
+  "remarks": "remarks", 
+  "posting_date": "posting_date", 
+  "voucher_no": "name"
+ }, 
+ {
+  "account": "credit_to", 
+  "doctype": "GL Mapper Detail", 
+  "credit": "total_amount_to_pay", 
+  "against_voucher_type": "value:'Purchase Invoice'", 
+  "company": "company", 
+  "debit": "value:0", 
+  "fiscal_year": "fiscal_year", 
+  "against": "against_expense_account", 
+  "aging_date": "aging_date", 
+  "against_voucher": "name", 
+  "transaction_date": "voucher_date", 
+  "voucher_type": "doctype", 
+  "is_opening": "is_opening", 
+  "remarks": "remarks", 
+  "posting_date": "posting_date", 
+  "voucher_no": "name"
+ }
 ]
\ No newline at end of file
diff --git a/accounts/Print Format/Cheque Printing Format/Cheque Printing Format.txt b/accounts/Print Format/Cheque Printing Format/Cheque Printing Format.txt
index e3355ec..19456a9 100755
--- a/accounts/Print Format/Cheque Printing Format/Cheque Printing Format.txt
+++ b/accounts/Print Format/Cheque Printing Format/Cheque Printing Format.txt
@@ -1,28 +1,21 @@
-# Print Format, Cheque Printing Format
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-04-11 13:16:56',
-		'docstatus': 0,
-		'modified': '2012-04-13 12:24:20',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all Print Format
-	{
-		'doc_type': u'Journal Voucher',
-		'doctype': 'Print Format',
-		'html': u'<!--  p.big {line-height: 200%}  .noborder td { border: 0px solid #fff; }   -->\n<div style="position: relative;">\n<h3><script>doc.company</script><br /> <br /> \n<hr />\nPAYMENT ADVICE</h3>\n<table class="noborder" style="width: 100%;">\n<tbody>\n<tr>\n<td style="vertical-align: top;" width="50%">To :<br />\n<script type="text/javascript">// <![CDATA[\ndoc.pay_to_recd_from\n// ]]></script>\n</td>\n<td width="50%">\n<table class="noborder" width="100%">\n<tbody>\n<tr>\n<td width="30%">Voucher No :</td>\n<td width="70%">\n<script type="text/javascript">// <![CDATA[\ndoc.name\n// ]]></script>\n</td>\n</tr>\n<tr>\n<td width="30%">Voucher Date :</td>\n<td width="70%">\n<script type="text/javascript">// <![CDATA[\ndate.str_to_user(doc.voucher_date)\n// ]]></script>\n</td>\n</tr>\n<tr>\n<td width="30%">Cheque No :</td>\n<td width="70%">\n<script type="text/javascript">// <![CDATA[\ndate.str_to_user(doc.cheque_no)\n// ]]></script>\n</td>\n</tr>\n<tr>\n<td width="30%">Cheque Date :</td>\n<td width="70%">\n<script type="text/javascript">// <![CDATA[\ndate.str_to_user(doc.cheque_date)\n// ]]></script>\n</td>\n</tr>\n</tbody>\n</table>\n</td>\n</tr>\n</tbody>\n</table>\n<br /> <strong>We are pleased to enclose our cheque in full/part Settlement of your under noted bills</strong> <br /> \n<hr />\n<table class="noborder" width="100%">\n<tbody>\n<tr>\n<td width="70%">&nbsp;</td>\n<td width="15%">Total :</td>\n<td class="pos_left" width="15%">\n<script type="text/javascript">// <![CDATA[\ndoc.total_amount\n// ]]></script>\n</td>\n</tr>\n<tr>\n<td colspan="3">Narration :\n<script type="text/javascript">// <![CDATA[\nreplace_newlines(doc.remark)\n// ]]></script>\n<br /><br /><br /></td>\n</tr>\n</tbody>\n</table>\n<div style="position: absolute; top: 14cm; left: 0cm;">Prepared By</div>\n<div style="position: absolute; top: 14cm; left: 5.5cm;">Authorised Signatory</div>\n<div style="position: absolute; top: 14cm; left: 11cm;">Received Payment as Above</div>\n<div style="position: absolute; top: 16.4cm; left: 5.9cm;"><strong>_____________</strong></div>\n<div style="position: absolute; top: 16.7cm; left: 6cm;"><strong>A/c Payee</strong></div>\n<div style="position: absolute; top: 16.7cm; left: 5.9cm;"><strong>_____________</strong></div>\n<div style="position: absolute; top: 16.9cm; left: 12cm;">\n<script type="text/javascript">// <![CDATA[\ndate.str_to_user(doc.cheque_date)\n// ]]></script>\n</div>\n<div style="position: absolute; top: 17.9cm; left: 1cm;">\n<script type="text/javascript">// <![CDATA[\ndoc.pay_to_recd_from\n// ]]></script>\n</div>\n<div style="position: absolute; top: 18.6cm; left: 1cm; width: 7cm;">\n<script type="text/javascript">// <![CDATA[\ndoc.total_amount_in_words\n// ]]></script>\n</div>\n<div style="position: absolute; top: 19.7cm; left: 12cm;">\n<script type="text/javascript">// <![CDATA[\ndoc.total_amount\n// ]]></script>\n</div>\n</div>',
-		'module': u'Accounts',
-		'name': '__common__',
-		'standard': u'Yes'
-	},
-
-	# Print Format, Cheque Printing Format
-	{
-		'doctype': 'Print Format',
-		'name': u'Cheque Printing Format'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-04-11 13:16:56", 
+  "modified_by": "Administrator", 
+  "modified": "2012-04-13 12:24:20"
+ }, 
+ {
+  "doc_type": "Journal Voucher", 
+  "name": "__common__", 
+  "module": "Accounts", 
+  "doctype": "Print Format", 
+  "html": "<!--  p.big {line-height: 200%}  .noborder td { border: 0px solid #fff; }   -->\n<div style=\"position: relative;\">\n<h3><script>doc.company</script><br /> <br /> \n<hr />\nPAYMENT ADVICE</h3>\n<table class=\"noborder\" style=\"width: 100%;\">\n<tbody>\n<tr>\n<td style=\"vertical-align: top;\" width=\"50%\">To :<br />\n<script type=\"text/javascript\">// <![CDATA[\ndoc.pay_to_recd_from\n// ]]></script>\n</td>\n<td width=\"50%\">\n<table class=\"noborder\" width=\"100%\">\n<tbody>\n<tr>\n<td width=\"30%\">Voucher No :</td>\n<td width=\"70%\">\n<script type=\"text/javascript\">// <![CDATA[\ndoc.name\n// ]]></script>\n</td>\n</tr>\n<tr>\n<td width=\"30%\">Voucher Date :</td>\n<td width=\"70%\">\n<script type=\"text/javascript\">// <![CDATA[\ndate.str_to_user(doc.voucher_date)\n// ]]></script>\n</td>\n</tr>\n<tr>\n<td width=\"30%\">Cheque No :</td>\n<td width=\"70%\">\n<script type=\"text/javascript\">// <![CDATA[\ndate.str_to_user(doc.cheque_no)\n// ]]></script>\n</td>\n</tr>\n<tr>\n<td width=\"30%\">Cheque Date :</td>\n<td width=\"70%\">\n<script type=\"text/javascript\">// <![CDATA[\ndate.str_to_user(doc.cheque_date)\n// ]]></script>\n</td>\n</tr>\n</tbody>\n</table>\n</td>\n</tr>\n</tbody>\n</table>\n<br /> <strong>We are pleased to enclose our cheque in full/part Settlement of your under noted bills</strong> <br /> \n<hr />\n<table class=\"noborder\" width=\"100%\">\n<tbody>\n<tr>\n<td width=\"70%\">&nbsp;</td>\n<td width=\"15%\">Total :</td>\n<td class=\"pos_left\" width=\"15%\">\n<script type=\"text/javascript\">// <![CDATA[\ndoc.total_amount\n// ]]></script>\n</td>\n</tr>\n<tr>\n<td colspan=\"3\">Narration :\n<script type=\"text/javascript\">// <![CDATA[\nreplace_newlines(doc.remark)\n// ]]></script>\n<br /><br /><br /></td>\n</tr>\n</tbody>\n</table>\n<div style=\"position: absolute; top: 14cm; left: 0cm;\">Prepared By</div>\n<div style=\"position: absolute; top: 14cm; left: 5.5cm;\">Authorised Signatory</div>\n<div style=\"position: absolute; top: 14cm; left: 11cm;\">Received Payment as Above</div>\n<div style=\"position: absolute; top: 16.4cm; left: 5.9cm;\"><strong>_____________</strong></div>\n<div style=\"position: absolute; top: 16.7cm; left: 6cm;\"><strong>A/c Payee</strong></div>\n<div style=\"position: absolute; top: 16.7cm; left: 5.9cm;\"><strong>_____________</strong></div>\n<div style=\"position: absolute; top: 16.9cm; left: 12cm;\">\n<script type=\"text/javascript\">// <![CDATA[\ndate.str_to_user(doc.cheque_date)\n// ]]></script>\n</div>\n<div style=\"position: absolute; top: 17.9cm; left: 1cm;\">\n<script type=\"text/javascript\">// <![CDATA[\ndoc.pay_to_recd_from\n// ]]></script>\n</div>\n<div style=\"position: absolute; top: 18.6cm; left: 1cm; width: 7cm;\">\n<script type=\"text/javascript\">// <![CDATA[\ndoc.total_amount_in_words\n// ]]></script>\n</div>\n<div style=\"position: absolute; top: 19.7cm; left: 12cm;\">\n<script type=\"text/javascript\">// <![CDATA[\ndoc.total_amount\n// ]]></script>\n</div>\n</div>", 
+  "standard": "Yes"
+ }, 
+ {
+  "name": "Cheque Printing Format", 
+  "doctype": "Print Format"
+ }
 ]
\ No newline at end of file
diff --git a/accounts/Print Format/Form 16A Print Format/Form 16A Print Format.txt b/accounts/Print Format/Form 16A Print Format/Form 16A Print Format.txt
index 4da5443..2e5436b 100644
--- a/accounts/Print Format/Form 16A Print Format/Form 16A Print Format.txt
+++ b/accounts/Print Format/Form 16A Print Format/Form 16A Print Format.txt
@@ -1,27 +1,20 @@
-# Print Format, Form 16A Print Format
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2010-09-27 17:30:34',
-		'docstatus': 0,
-		'modified': '2011-10-19 14:19:27',
-		'modified_by': 'Administrator',
-		'owner': 'Administrator'
-	},
-
-	# These values are common for all Print Format
-	{
-		'doctype': 'Print Format',
-		'html': '<html>\n  <script>\n     function get_letter_head() {\n\t// add letter head\n\tvar cp = locals[\'Control Panel\'][\'Control Panel\'];\n\tif(doc.letter_head)\n\t\tvar lh= cstr(_p.letter_heads[doc.letter_head]);\n\telse if(cp.letter_head)\n\t\tvar lh= cp.letter_head;\n\telse \n\t\tvar lh= \'\';\n\t\t\n\treturn lh;\n}\n  </script>\n<body>\n<table border = "1" style=\'border-collapse: collapse;\'>\n <tr>\n   <td>\n    <div style="border-bottom: 1px solid; padding-bottom: 5px; width:100%"><script>get_letter_head()</script></div>\n   </td>\n </tr>\n <tr>\n   <td colspan = "3"><h1 align = "center"><b>FORM No. 16 A</b></h1>\n   <p align="right">Certificate No:<script>doc.name</script></p>\n   <p align = "center">[See rule 31 (1)(b)]</p>\n   <h2 align = "center"><b>Certifiction of deduction of tax at source under section 203 of the Income-tax Act, 1961</b></h2>\n   <p>[For interest on securities; dividends; interests other than \'interests on securities\';winnings from lottery or crossword puzzle;\n      winnings from horse race; payments to contractors and sub-contractors;insurance comission;payments to\n      \n      non-resident sportsmen/ sports associations;payments in respect of deposits under National Savings Scheme:\n      payments on account of repurchase of units by Mutual Fund or Unit Trust of India; commission, remuneration or prize\n     \n      on sale of lottery tickets; comission or brokerage;rent;fees for professional or technical services;royalty and any sum \n      under section 28(va);income in respect of units; payment of compensation on acquisition of certain immovable property;\n\n      other sums under section 195; income in respect of units of non-residents referred to in section 196A; income from units\n      referred to in section 196B;income from foreign currency bonds or shares of an Indian Company referred to in section</p>\n      196C; income of Foreign Institutional Investors from securities referred to in section 196D]\n   </td> \n  </tr>\n\n  <tr>\n    <td width="30%">Name and address of person deducing tax</td>\n    <td width="40%">Acknowledgement No.s of all quarterly statements of TDS under sub-section(3) of section 200 as provided by TIN Facilitation Centre or NSDL web-site</td>\n    <td width="30%">Name and address of the person to whom payment is made or in whose account it is credited</td>\n  </tr>\n  \n  <tr>\n    <td>\n      <table>\n        <tr><script>doc.company</script></tr><br><br>\n        <tr><script>replace_newlines(doc.company_address)</script></tr>\n      </table>\n    </td>\n    <td>\n      <script>print_table(\'Form 16A\', doc.name, \'form_16A_ack_details\',\'Form 16A Ack Detail\',  [\'quarter\',\'ack_no\'], [\'Quarter\' , \'Acknowledgement No.\'] , [\'40%\',\'60%\']).innerHTML</script>\n    </td>\n    <td>\n      <table>\n        <tr><script>doc.party_name</script></tr><br><br>\n        <tr><script>replace_newlines(doc.party_address)</script></tr>\n      </table>\n    </td>\n  </tr>\n  \n  <tr>\n    <td>\n      <table>\n        <tr><b>Registration Details OF THE DEDUCTOR</b></tr><br>\n        <tr><script>replace_newlines(doc.registration_details)</script></tr>\n      </table>\n    </td>\n    \n    <td>\n      <table>\n        <tr><b><center>NATURE OF PAYMENT</center></b></tr><br><br>\n        <tr><b><center><script>doc.tds_category</script></center></b></tr>\n        \n      </table>\n    </td>\n    \n    <td>\n      <table>\n        <tr><b>PAN NO. OF THE PAYEE</b></tr><br>\n        <tr><script>doc.pan_number</script></tr>\n        \n      </table>\n    </td>\n  </tr>\n  \n  <tr>\n    <td align = "center" colspan ="3"><b>DETAILS OF PAYMENT, TAX DEDUCTION AND DEPOSIT OF TAX INTO CENTRAL GOVERNMENT ACCOUNT</b>\n    <p align = "center">(The deductor is to provide transaction wise details of tax deducted and deposited)</p>\n  </tr>\n  \n  <tr>\n    <td colspan="3">\n      <script>print_table(\'Form 16A\', doc.name, \'form_16A_tax_details\',\'Form 16A Tax Detail\', [\'SR\',\'amount_paid\', \'date_of_payment\',\'tds_main\',\'surcharge\',\'cess_on_tds\',\'total_tax_deposited\',\'cheque_no\',\'bsr_code\',\'tax_deposited_date\',\'challan_no\'], [\'S No.\' , \'Amount paid / credited\',\'Date of payment / credit\',\'TDS (Rs.)\',\'Surcharge (Rs.)\',\'Cess on TDS(Rs.)\',\'Total Tax Deposited (Rs.)\',\'Cheque/DD no.(if any)\',\'BSR code on bank branch\', \'Date on which tax deposited(dd/mm/yy)\',\'Transfer Voucher/Challan Identification no.\'] ,  [\'3%\', \'10%\',\'10%\', \'10%\',\'10%\',\'6%\',\'10%\' ,\'10%\',\'7%\' ,\'10%\',\'7%\',\'7%\'] ).innerHTML</script>\n    </td>\n  </tr>\n  \n  <tr>\n    <td colspan="3">\n      Certified that a sum of Rs. <script>doc.total_amount</script> has been deducted at source and paid to the credit of the Central Government as per details given above <br><br><br><br>\n      <p align="right"> Signature of person responsible for deduction of tax \n    </td>\n  </tr>\n  \n  <tr>\n    <td colspan="3">\n      <table width="100%" border="0">\n        <tr>\n          <td width="50%">Place: <script>doc.place</script></td>\n          <td width="50%" align="right">Full Name: <script>doc.full_name</script></td>\n        </tr>\n        <tr>\n          <td width="50%">Date: <script>date.str_to_user(doc.dt)</script></td>\n          <td width="50%" align="right">Designation: <script>doc.designation</script></td>\n        </tr>\n      </table>\n    </td>\n  </tr>\n  \n</table>\n</body>\n</html>',
-		'module': 'Accounts',
-		'name': '__common__',
-		'standard': 'Yes'
-	},
-
-	# Print Format, Form 16A Print Format
-	{
-		'doctype': 'Print Format',
-		'name': 'Form 16A Print Format'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2010-09-27 17:30:34", 
+  "modified_by": "Administrator", 
+  "modified": "2011-10-19 14:19:27"
+ }, 
+ {
+  "name": "__common__", 
+  "module": "Accounts", 
+  "standard": "Yes", 
+  "html": "<html>\n  <script>\n     function get_letter_head() {\n\t// add letter head\n\tvar cp = locals['Control Panel']['Control Panel'];\n\tif(doc.letter_head)\n\t\tvar lh= cstr(_p.letter_heads[doc.letter_head]);\n\telse if(cp.letter_head)\n\t\tvar lh= cp.letter_head;\n\telse \n\t\tvar lh= '';\n\t\t\n\treturn lh;\n}\n  </script>\n<body>\n<table border = \"1\" style='border-collapse: collapse;'>\n <tr>\n   <td>\n    <div style=\"border-bottom: 1px solid; padding-bottom: 5px; width:100%\"><script>get_letter_head()</script></div>\n   </td>\n </tr>\n <tr>\n   <td colspan = \"3\"><h1 align = \"center\"><b>FORM No. 16 A</b></h1>\n   <p align=\"right\">Certificate No:<script>doc.name</script></p>\n   <p align = \"center\">[See rule 31 (1)(b)]</p>\n   <h2 align = \"center\"><b>Certifiction of deduction of tax at source under section 203 of the Income-tax Act, 1961</b></h2>\n   <p>[For interest on securities; dividends; interests other than 'interests on securities';winnings from lottery or crossword puzzle;\n      winnings from horse race; payments to contractors and sub-contractors;insurance comission;payments to\n      \n      non-resident sportsmen/ sports associations;payments in respect of deposits under National Savings Scheme:\n      payments on account of repurchase of units by Mutual Fund or Unit Trust of India; commission, remuneration or prize\n     \n      on sale of lottery tickets; comission or brokerage;rent;fees for professional or technical services;royalty and any sum \n      under section 28(va);income in respect of units; payment of compensation on acquisition of certain immovable property;\n\n      other sums under section 195; income in respect of units of non-residents referred to in section 196A; income from units\n      referred to in section 196B;income from foreign currency bonds or shares of an Indian Company referred to in section</p>\n      196C; income of Foreign Institutional Investors from securities referred to in section 196D]\n   </td> \n  </tr>\n\n  <tr>\n    <td width=\"30%\">Name and address of person deducing tax</td>\n    <td width=\"40%\">Acknowledgement No.s of all quarterly statements of TDS under sub-section(3) of section 200 as provided by TIN Facilitation Centre or NSDL web-site</td>\n    <td width=\"30%\">Name and address of the person to whom payment is made or in whose account it is credited</td>\n  </tr>\n  \n  <tr>\n    <td>\n      <table>\n        <tr><script>doc.company</script></tr><br><br>\n        <tr><script>replace_newlines(doc.company_address)</script></tr>\n      </table>\n    </td>\n    <td>\n      <script>print_table('Form 16A', doc.name, 'form_16A_ack_details','Form 16A Ack Detail',  ['quarter','ack_no'], ['Quarter' , 'Acknowledgement No.'] , ['40%','60%']).innerHTML</script>\n    </td>\n    <td>\n      <table>\n        <tr><script>doc.party_name</script></tr><br><br>\n        <tr><script>replace_newlines(doc.party_address)</script></tr>\n      </table>\n    </td>\n  </tr>\n  \n  <tr>\n    <td>\n      <table>\n        <tr><b>Registration Details OF THE DEDUCTOR</b></tr><br>\n        <tr><script>replace_newlines(doc.registration_details)</script></tr>\n      </table>\n    </td>\n    \n    <td>\n      <table>\n        <tr><b><center>NATURE OF PAYMENT</center></b></tr><br><br>\n        <tr><b><center><script>doc.tds_category</script></center></b></tr>\n        \n      </table>\n    </td>\n    \n    <td>\n      <table>\n        <tr><b>PAN NO. OF THE PAYEE</b></tr><br>\n        <tr><script>doc.pan_number</script></tr>\n        \n      </table>\n    </td>\n  </tr>\n  \n  <tr>\n    <td align = \"center\" colspan =\"3\"><b>DETAILS OF PAYMENT, TAX DEDUCTION AND DEPOSIT OF TAX INTO CENTRAL GOVERNMENT ACCOUNT</b>\n    <p align = \"center\">(The deductor is to provide transaction wise details of tax deducted and deposited)</p>\n  </tr>\n  \n  <tr>\n    <td colspan=\"3\">\n      <script>print_table('Form 16A', doc.name, 'form_16A_tax_details','Form 16A Tax Detail', ['SR','amount_paid', 'date_of_payment','tds_main','surcharge','cess_on_tds','total_tax_deposited','cheque_no','bsr_code','tax_deposited_date','challan_no'], ['S No.' , 'Amount paid / credited','Date of payment / credit','TDS (Rs.)','Surcharge (Rs.)','Cess on TDS(Rs.)','Total Tax Deposited (Rs.)','Cheque/DD no.(if any)','BSR code on bank branch', 'Date on which tax deposited(dd/mm/yy)','Transfer Voucher/Challan Identification no.'] ,  ['3%', '10%','10%', '10%','10%','6%','10%' ,'10%','7%' ,'10%','7%','7%'] ).innerHTML</script>\n    </td>\n  </tr>\n  \n  <tr>\n    <td colspan=\"3\">\n      Certified that a sum of Rs. <script>doc.total_amount</script> has been deducted at source and paid to the credit of the Central Government as per details given above <br><br><br><br>\n      <p align=\"right\"> Signature of person responsible for deduction of tax \n    </td>\n  </tr>\n  \n  <tr>\n    <td colspan=\"3\">\n      <table width=\"100%\" border=\"0\">\n        <tr>\n          <td width=\"50%\">Place: <script>doc.place</script></td>\n          <td width=\"50%\" align=\"right\">Full Name: <script>doc.full_name</script></td>\n        </tr>\n        <tr>\n          <td width=\"50%\">Date: <script>date.str_to_user(doc.dt)</script></td>\n          <td width=\"50%\" align=\"right\">Designation: <script>doc.designation</script></td>\n        </tr>\n      </table>\n    </td>\n  </tr>\n  \n</table>\n</body>\n</html>", 
+  "doctype": "Print Format"
+ }, 
+ {
+  "name": "Form 16A Print Format", 
+  "doctype": "Print Format"
+ }
 ]
\ No newline at end of file
diff --git a/accounts/Print Format/POS Invoice/POS Invoice.txt b/accounts/Print Format/POS Invoice/POS Invoice.txt
index 82eeaf0..edd5f11 100644
--- a/accounts/Print Format/POS Invoice/POS Invoice.txt
+++ b/accounts/Print Format/POS Invoice/POS Invoice.txt
@@ -1,28 +1,21 @@
-# Print Format, POS Invoice
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2011-12-21 11:08:55',
-		'docstatus': 0,
-		'modified': '2012-03-20 12:29:49',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all Print Format
-	{
-		'doc_type': u'Sales Invoice',
-		'doctype': 'Print Format',
-		'html': u'<html>\n<head>\n<!--Other charges function-->\n<script>\nvar make_row = function(title,val,bold){\nvar bstart = \'<b>\'; var bend = \'</b>\';\nreturn \'<tr><td style="width:50%">\'+(bold?bstart:\'\')+title+(bold?bend:\'\')+\'</td>\'\n        +\'<td style="width:20%">\'+doc.currency+\'</td>\'\n        +\'<td style="width:30%;text-align:right">\'+(val?val:\'0.00\')+\'</td>\'\n        +\'</tr>\'\n}\nvar make_row1 = function(title,val,bold){\n    var bstart = \'<b>\'; var bend = \'</b>\';\n    \n    return \'<tr style="font-family:courier new; line-height:150%"><td style="width:50%">\'+(bold?bstart:\'\')+title+(bold?bend:\'\')+\'</td>\'\n            +\'<td style="width:50%;text-align:right">\'+(bold?bstart:\'\')+(val?val:\'0.00\')+(bold?bend:\'\')+\'</td>\'\n            +\'</tr>\'\n}\n\nfunction get_letter_head() {\n    // add letter head\n    var cp = wn.boot.control_panel;\n    if(doc.letter_head)\n        var lh= cstr(_p.letter_heads[doc.letter_head]);\n    else if(cp.letter_head)\n        var lh= cp.letter_head;\n    else \n        var lh= \'\';\n        \n    return lh;\n}\n\nfunction get_tax_details(){\n    var cl = getchildren(\'Sales Taxes and Charges\',doc.name,\'other_charges\');\n    var out = \'\';\n\n    out += \'<div><table style="float: right;">\';\n    for(var i=0;i<cl.length;i++){\n        if(cl[i].tax_amount) {\n            out += make_row1(cl[i].description,fmt_money(convert_rate(cl[i].tax_amount)),0);\n        }\n    }\n    out += make_row1(\'TOTAL\',doc.currency + " " + fmt_money(convert_rate(doc.grand_total)),1);\n    out +=\'</table></div>\';\n    return out;\n}\n\nfunction convert_rate(val){    \n    var new_val = flt(val)/flt(doc.conversion_rate);\n    return new_val;\n}\n</script>\n<style>\n    table, td, tr, div, span {\n        font-family: courier new;\n        line-height: 200%;\n    }\n</style>\n</head>\n\n<body>\n<table width="100%" style="font-family: courier new; line-height:200%">\n<tr>\n    <td align="left">NO: <script>doc.name</script></td>\n    <td align="right">DATE: <script>date.str_to_user(doc.posting_date)</script></td>\n</tr>\n<tr>\n    <td>M/s <script>doc.contact_display</script></td>\n</tr>\n</table>\n<!--Item Table-->\n<div>\n<script>\nvar t = print_table(\'Sales Invoice\', doc.name, \'entries\', \'Sales Invoice Item\',\n        [\'description\',\'qty\',\'export_rate\',\'export_amount\'], [\'ITEM\', \'QTY\',\'RATE\',\'AMOUNT\'],\n        [\'35%\',\'20%\',\'20%\',\'25%\']);\nif(t.appendChild) { // single\n    out = t.innerHTML.replace(/style="/gi,\'style="font-family:courier new;line-height:150%;\');\n} else { //multiple\n    out = \'<table class="None" border="0px" width="100%" style="border:0px; font-family:courier-new">\';\n\n    for(var i=0;i<t.length;i++) {\n        if(i==0) {\n            out += \'<tr>\' + t[i].childNodes[0].childNodes[0].childNodes[0].innerHTML\n                .replace(/style="border: 1px solid rgb\\(0, 0, 0\\);/gi,\'style="font-family:courier new;\')\n                + \'</tr>\';\n        }\n        out += \'<tr>\' + t[i].childNodes[0].childNodes[0].childNodes[1].innerHTML\n                .replace(/style="border: 1px solid rgb\\(0, 0, 0\\);/gi,\'style="font-family:courier new;\')\n                + \'</tr>\';\n    }\n    out += \'</table>\';\n}\nout;\n</script>\n</div>\n<!--Tax table-->\n<div><script>get_tax_details();</script></div><br />\n<table style="font-family:courier new;">\n    <tr><td><b><script>doc.terms</script></b></td></tr>\n    <tr><td nowrap><b>For <script>doc.company</script></b></td></tr>\n    <tr><td>&nbsp;</td></tr>\n    <tr><td nowrap><b>Signatory</b></td></tr>\n</table>\n</body>\n</html>\n',
-		'module': u'Accounts',
-		'name': '__common__',
-		'standard': u'Yes'
-	},
-
-	# Print Format, POS Invoice
-	{
-		'doctype': 'Print Format',
-		'name': u'POS Invoice'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2011-12-21 11:08:55", 
+  "modified_by": "Administrator", 
+  "modified": "2012-03-20 12:29:49"
+ }, 
+ {
+  "doc_type": "Sales Invoice", 
+  "name": "__common__", 
+  "module": "Accounts", 
+  "doctype": "Print Format", 
+  "html": "<html>\n<head>\n<!--Other charges function-->\n<script>\nvar make_row = function(title,val,bold){\nvar bstart = '<b>'; var bend = '</b>';\nreturn '<tr><td style=\"width:50%\">'+(bold?bstart:'')+title+(bold?bend:'')+'</td>'\n        +'<td style=\"width:20%\">'+doc.currency+'</td>'\n        +'<td style=\"width:30%;text-align:right\">'+(val?val:'0.00')+'</td>'\n        +'</tr>'\n}\nvar make_row1 = function(title,val,bold){\n    var bstart = '<b>'; var bend = '</b>';\n    \n    return '<tr style=\"font-family:courier new; line-height:150%\"><td style=\"width:50%\">'+(bold?bstart:'')+title+(bold?bend:'')+'</td>'\n            +'<td style=\"width:50%;text-align:right\">'+(bold?bstart:'')+(val?val:'0.00')+(bold?bend:'')+'</td>'\n            +'</tr>'\n}\n\nfunction get_letter_head() {\n    // add letter head\n    var cp = wn.boot.control_panel;\n    if(doc.letter_head)\n        var lh= cstr(_p.letter_heads[doc.letter_head]);\n    else if(cp.letter_head)\n        var lh= cp.letter_head;\n    else \n        var lh= '';\n        \n    return lh;\n}\n\nfunction get_tax_details(){\n    var cl = getchildren('Sales Taxes and Charges',doc.name,'other_charges');\n    var out = '';\n\n    out += '<div><table style=\"float: right;\">';\n    for(var i=0;i<cl.length;i++){\n        if(cl[i].tax_amount) {\n            out += make_row1(cl[i].description,fmt_money(convert_rate(cl[i].tax_amount)),0);\n        }\n    }\n    out += make_row1('TOTAL',doc.currency + \" \" + fmt_money(convert_rate(doc.grand_total)),1);\n    out +='</table></div>';\n    return out;\n}\n\nfunction convert_rate(val){    \n    var new_val = flt(val)/flt(doc.conversion_rate);\n    return new_val;\n}\n</script>\n<style>\n    table, td, tr, div, span {\n        font-family: courier new;\n        line-height: 200%;\n    }\n</style>\n</head>\n\n<body>\n<table width=\"100%\" style=\"font-family: courier new; line-height:200%\">\n<tr>\n    <td align=\"left\">NO: <script>doc.name</script></td>\n    <td align=\"right\">DATE: <script>date.str_to_user(doc.posting_date)</script></td>\n</tr>\n<tr>\n    <td>M/s <script>doc.contact_display</script></td>\n</tr>\n</table>\n<!--Item Table-->\n<div>\n<script>\nvar t = print_table('Sales Invoice', doc.name, 'entries', 'Sales Invoice Item',\n        ['description','qty','export_rate','export_amount'], ['ITEM', 'QTY','RATE','AMOUNT'],\n        ['35%','20%','20%','25%']);\nif(t.appendChild) { // single\n    out = t.innerHTML.replace(/style=\"/gi,'style=\"font-family:courier new;line-height:150%;');\n} else { //multiple\n    out = '<table class=\"None\" border=\"0px\" width=\"100%\" style=\"border:0px; font-family:courier-new\">';\n\n    for(var i=0;i<t.length;i++) {\n        if(i==0) {\n            out += '<tr>' + t[i].childNodes[0].childNodes[0].childNodes[0].innerHTML\n                .replace(/style=\"border: 1px solid rgb\\(0, 0, 0\\);/gi,'style=\"font-family:courier new;')\n                + '</tr>';\n        }\n        out += '<tr>' + t[i].childNodes[0].childNodes[0].childNodes[1].innerHTML\n                .replace(/style=\"border: 1px solid rgb\\(0, 0, 0\\);/gi,'style=\"font-family:courier new;')\n                + '</tr>';\n    }\n    out += '</table>';\n}\nout;\n</script>\n</div>\n<!--Tax table-->\n<div><script>get_tax_details();</script></div><br />\n<table style=\"font-family:courier new;\">\n    <tr><td><b><script>doc.terms</script></b></td></tr>\n    <tr><td nowrap><b>For <script>doc.company</script></b></td></tr>\n    <tr><td>&nbsp;</td></tr>\n    <tr><td nowrap><b>Signatory</b></td></tr>\n</table>\n</body>\n</html>\n", 
+  "standard": "Yes"
+ }, 
+ {
+  "name": "POS Invoice", 
+  "doctype": "Print Format"
+ }
 ]
\ No newline at end of file
diff --git a/accounts/Print Format/Payment Receipt Voucher/Payment Receipt Voucher.txt b/accounts/Print Format/Payment Receipt Voucher/Payment Receipt Voucher.txt
index 4b56d72..bd9a52e 100755
--- a/accounts/Print Format/Payment Receipt Voucher/Payment Receipt Voucher.txt
+++ b/accounts/Print Format/Payment Receipt Voucher/Payment Receipt Voucher.txt
@@ -1,28 +1,21 @@
-# Print Format, Payment Receipt Voucher
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-04-11 13:16:56',
-		'docstatus': 0,
-		'modified': '2012-04-13 12:24:59',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all Print Format
-	{
-		'doc_type': u'Journal Voucher',
-		'doctype': 'Print Format',
-		'html': u'<div style="position: relative;">\n<h3 align="center"><script>doc.company</script>\n</div>\n\n<font size="4">\n<table class=\'simpletable\'>\n<tr>\n<td><b> Receipt No.: </b></td>\n<td><script>doc.name</script></td>\n</tr>\n<tr>\n<td><b> Date : </b></td>\n<td><script>date.str_to_user(doc.voucher_date)</script></td>\n</tr>      \n<tr>\n<td><b> Remark: </b></td>\n<td><script> doc.remark </script></td>\n</tr>\n<tr>\n<td><b> Received From: </b></td>\n<td><b><script> doc.pay_to_rec_from </script></b></td>\n</tr>\n</table>\n<br>\n\n<div><b><script>doc.total_amount</script></b> </td></div><br>\n<div style="text-align:left"><b><script>doc.total_amount_in_words</script></b></div><br>\n<div>This receipt is issued subject to realization of the Cheque</div>\n</font>\n<br>\n<table class="noborder">\n<tr>\n<td style = "text-align = right;"><h3>For <script>doc.company</script>,</h3><br><div>(Authorised Signatory)</div></td>\n</tr>\n</table>',
-		'module': u'Accounts',
-		'name': '__common__',
-		'standard': u'Yes'
-	},
-
-	# Print Format, Payment Receipt Voucher
-	{
-		'doctype': 'Print Format',
-		'name': u'Payment Receipt Voucher'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-04-11 13:16:56", 
+  "modified_by": "Administrator", 
+  "modified": "2012-04-13 12:24:59"
+ }, 
+ {
+  "doc_type": "Journal Voucher", 
+  "name": "__common__", 
+  "module": "Accounts", 
+  "doctype": "Print Format", 
+  "html": "<div style=\"position: relative;\">\n<h3 align=\"center\"><script>doc.company</script>\n</div>\n\n<font size=\"4\">\n<table class='simpletable'>\n<tr>\n<td><b> Receipt No.: </b></td>\n<td><script>doc.name</script></td>\n</tr>\n<tr>\n<td><b> Date : </b></td>\n<td><script>date.str_to_user(doc.voucher_date)</script></td>\n</tr>      \n<tr>\n<td><b> Remark: </b></td>\n<td><script> doc.remark </script></td>\n</tr>\n<tr>\n<td><b> Received From: </b></td>\n<td><b><script> doc.pay_to_rec_from </script></b></td>\n</tr>\n</table>\n<br>\n\n<div><b><script>doc.total_amount</script></b> </td></div><br>\n<div style=\"text-align:left\"><b><script>doc.total_amount_in_words</script></b></div><br>\n<div>This receipt is issued subject to realization of the Cheque</div>\n</font>\n<br>\n<table class=\"noborder\">\n<tr>\n<td style = \"text-align = right;\"><h3>For <script>doc.company</script>,</h3><br><div>(Authorised Signatory)</div></td>\n</tr>\n</table>", 
+  "standard": "Yes"
+ }, 
+ {
+  "name": "Payment Receipt Voucher", 
+  "doctype": "Print Format"
+ }
 ]
\ No newline at end of file
diff --git a/accounts/Print Format/Sales Invoice Classic/Sales Invoice Classic.txt b/accounts/Print Format/Sales Invoice Classic/Sales Invoice Classic.txt
index 2f6ae86..eba8fb9 100644
--- a/accounts/Print Format/Sales Invoice Classic/Sales Invoice Classic.txt
+++ b/accounts/Print Format/Sales Invoice Classic/Sales Invoice Classic.txt
@@ -1,28 +1,21 @@
-# Print Format, Sales Invoice Classic
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-05-16 14:07:31',
-		'docstatus': 0,
-		'modified': '2012-06-04 16:02:12',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all Print Format
-	{
-		'doc_type': u'Sales Invoice',
-		'doctype': 'Print Format',
-		'html': u'<!--\n\tSample Print Format for ERPNext\n\tPlease use at your own discretion\n\tFor suggestions and contributions:\n\t\thttps://github.com/webnotes/erpnext-print-templates\n\n\tFreely usable under MIT license\n-->\n\n<!-- Style Settings -->\n<style>\n\t/*\n\t\tcommon style for whole page\n\t\tThis should include:\n\t\t+ page size related settings\n\t\t+ font family settings\n\t\t+ line spacing settings\n\t*/\n\t@media screen {\n\t\tbody {\n\t\t\twidth: 8.3in;\n\t\t}\n\t}\n\n\thtml, body, div, span, td {\n\t\tfont-family: "Georgia", serif;\n\t\tfont-size: 12px;\n\t}\n\n\tbody {\n\t\tpadding: 10px;\n\t\tmargin: auto;\n\t\tfont-size: 12px;\n\t\tline-height: 150%;\n\t}\n\n\t.common {\n\t\tfont-family: "Georgia", serif !important;\n\t\tfont-size: 12px;\n\t\tpadding: 10px 0px;\n\t}\n\n\ttable {\n\t\tborder-collapse: collapse;\n\t\twidth: 100%;\n\t\tvertical-align: top;\n\t}\n\n\ttable td {\n\t\tpadding: 2px 0px;\n\t}\n\t\n\ttable h1, h2, h3, h4, h5, h6 {\n\t\tpadding: 0px;\n\t\tmargin: 0px;\n\t}\n\n\ttable.header-table td {\n\t\tvertical-align: top;\n\t}\n\n\ttable.header-table thead {\n\t\tborder-bottom: 1px solid black;\n\t}\n\n\ttable.header-table h3 {\n\t\tcolor: gray;\n\t}\n\n\ttable.header-table thead td {\n\t\tpadding: 5px 0px;\n\t}\n\n\tdiv.page-body table td:nth-child(6),\n\tdiv.page-body table td:nth-child(7) {\n\t\ttext-align: right;\n\t}\n\n\ttable.footer-table td {\n\t\tvertical-align: top;\n\t}\n\n\ttable.footer-table td table td:nth-child(2),\n\ttable.footer-table td table td:nth-child(3) {\n\t\ttext-align: right;\n\t}\n</style>\n\n\n<!-- Javascript -->\n<script>\n\tsi_std = {\n\t\tprint_item_table: function() {\n\t\t\tvar table = print_table(\n\t\t\t\t\'Sales Invoice\',\n\t\t\t\tdoc.name,\n\t\t\t\t\'entries\',\n\t\t\t\t\'Sales Invoice Item\',\n\t\t\t\t[// Here specify the table columns to be displayed\n\t\t\t\t\t\'SR\', \'item_name\', \'description\', \'qty\', \'stock_uom\',\n\t\t\t\t\t\'export_rate\', \'export_amount\'\n\t\t\t\t],\n\t\t\t\t[// Here specify the labels of column headings\n\t\t\t\t\t\'Sr\', \'Item Name\', \'Description\', \'Qty\',\n\t\t\t\t\t\'UoM\', \'Basic Rate\', \'Amount\'\n\t\t\t\t],\n\t\t\t\t[// Here specify the column widths\n\t\t\t\t\t\'3%\', \'20%\', \'37%\', \'5%\',\n\t\t\t\t\t\'5%\', \'15%\', \'15%\'\n\t\t\t\t],\n\t\t\t\tnull,\n\t\t\t\tnull,\n\t\t\t\t{\n\t\t\t\t\t\'description\' : function(data_row) {\n\t\t\t\t\t\tif(data_row.adj_rate) {\n\t\t\t\t\t\t\tvar to_append = \'<div style="padding-left: 15px;"><i>Discount: \' + \n\t\t\t\t\t\t\t\tdata_row.adj_rate + \'% on \' + doc.currency + \' \' +\n\t\t\t\t\t\t\t\tfmt_money(data_row.ref_rate) + \'</i></div>\';\n\t\t\t\t\t\t\tif(data_row.description.indexOf(to_append)==-1) {\n\t\t\t\t\t\t\t\treturn data_row.description + to_append;\n\t\t\t\t\t\t\t} else { return data_row.description; }\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\treturn data_row.description;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t);\n\n\t\t\t// This code takes care of page breaks\n\t\t\tif(table.appendChild) {\n\t\t\t\tout = table.innerHTML;\n\t\t\t} else {\n\t\t\t\tout = \'\';\n\t\t\t\tfor(var i=0; i < (table.length-1); i++) {\n\t\t\t\t\tout += table[i].innerHTML + \n\t\t\t\t\t\t\'<div style = "page-break-after: always;" \\\n\t\t\t\t\t\tclass = "page_break"></div>\\\n\t\t\t\t\t\t<div class="page-settings"></div>\';\n\t\t\t\t}\n\t\t\t\tout += table[table.length-1].innerHTML;\n\t\t\t}\n\t\t\treturn out;\n\t\t},\n\n\n\t\tprint_other_charges: function(parent) {\n\t\t\tvar oc = getchildren(\'Sales Taxes and Charges\', doc.name, \'other_charges\');\n\t\t\tvar rows = \'<table width=100%>\\n\';\n\t\t\tfor(var i=0; i<oc.length; i++) {\n\t\t\t\tif(!oc[i].included_in_print_rate) {\n\t\t\t\t\trows +=\n\t\t\t\t\t\t\'<tr>\\n\' +\n\t\t\t\t\t\t\t\'\\t<td>\' + oc[i].description + \'</td>\\n\' +\n\t\t\t\t\t\t\t\'\\t<td></td>\\n\' +\n\t\t\t\t\t\t\t\'\\t<td width=38%>\' + fmt_money(oc[i].tax_amount) + \'</td>\\n\' +\n\t\t\t\t\t\t\'</tr>\\n\';\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn rows + \'</table>\\n\';\n\t\t}\n\t};\n</script>\n\n\n<!-- Page Layout Settings -->\n<div class=\'common page-header\'>\n\t<!-- \n\t\tPage Header will contain\n\t\t\t+ table 1\n\t\t\t\t+ table 1a\n\t\t\t\t\t- Name\n\t\t\t\t\t- Address\n\t\t\t\t\t- Contact\n\t\t\t\t\t- Mobile No\n\t\t\t\t+ table 1b\n\t\t\t\t\t- Voucher Date\n\t\t\t\t\t- Due Date\n\t-->\n\t<table class=\'header-table\' cellspacing=0>\n\t\t<thead>\n\t\t\t<tr><td><script>\'<h1>\' + (doc.select_print_heading || \'Invoice\') + \'</h1>\'</script></td></tr>\n\t\t\t<tr><td><h3><script>cur_frm.docname</script></h3></td></tr>\n\t\t</thead>\n\t\t<tbody>\n\t\t\t<tr>\n\t\t\t\t<td width=60%><table width=100% cellspacing=0><tbody>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td width=39%><b>Name</b></td>\n\t\t\t\t\t\t<td><script>doc.customer_name</script></td>\n\t\t\t\t\t</tr>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td><b>Address</b></td>\n\t\t\t\t\t\t<td><script>replace_newlines(doc.address_display)</script></td>\n\t\t\t\t\t</tr>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td><b>Contact</b></td>\n\t\t\t\t\t\t<td><script>doc.contact_display</script></td>\n\t\t\t\t\t</tr>\n\t\t\t\t</tbody></table></td>\n\t\t\t\t<td><table width=100% cellspacing=0><tbody>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td width=40%><b>Invoice Date</b></td>\n\t\t\t\t\t\t<td><script>date.str_to_user(doc.posting_date)</script></td>\n\t\t\t\t\t<tr>\n                    <tr>\n    \t\t\t\t\t<td width=40%><script>\n                            (doc.convert_into_recurring_invoice && doc.recurring_id)\n                            ?"<b>Invoice Period</b>"\n                            :"";\n    \t\t\t\t\t</script></td>\n\t\t\t\t\t\t<td><script>\n                            (doc.convert_into_recurring_invoice && doc.recurring_id)\n                            ?(date.str_to_user(doc.invoice_period_from_date) +\n                                \' to \' + date.str_to_user(doc.invoice_period_to_date))\n                            :"";\n                        </script></td>\n\t\t\t\t\t<tr>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td><b>Due Date</b></td>\n\t\t\t\t\t\t<td><script>date.str_to_user(doc.due_date)</script></td>\n\t\t\t\t\t<tr>\t\t\t\t\t\n\t\t\t\t</tbody></table></td>\n\t\t\t</tr>\n\t\t</tbody>\n\t\t<tfoot>\n\t\t\n\t\t</tfoot>\n\t</table>\n</div>\n<div class=\'common page-body\'>\n\t<!-- \n\t\tPage Body will contain\n\t\t\t+ table 2\n\t\t\t\t- Sales Invoice Data\n\t-->\n\t<script>si_std.print_item_table()</script>\n</div>\n<div class=\'common page-footer\'>\n\t<!-- \n\t\tPage Footer will contain\n\t\t\t+ table 3\n\t\t\t\t- Terms and Conditions\n\t\t\t\t- Total Rounded Amount Calculation\n\t\t\t\t- Total Rounded Amount in Words\n\t-->\n\t<table class=\'footer-table\' width=100% cellspacing=0>\n\t\t<thead>\n\t\t\t\n\t\t</thead>\n\t\t<tbody>\n\t\t\t<tr>\n\t\t\t\t<td width=60% style=\'padding-right: 10px;\'>\n\t\t\t\t\t<b>Terms, Conditions &amp; Other Information:</b><br />\n\t\t\t\t\t<script>doc.terms</script>\n\t\t\t\t</td>\n\t\t\t\t<td>\n\t\t\t\t\t<table cellspacing=0 width=100%><tbody>\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td>Net Total</td>\n\t\t\t\t\t\t\t<td></td>\n\t\t\t\t\t\t\t<td width=38%><script>\n\t\t\t\t\t\t\t\tfmt_money(doc.net_total/doc.conversion_rate)\n\t\t\t\t\t\t\t</script></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr><td colspan=3><script>si_std.print_other_charges()</script></td></tr>\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td>Grand Total</td>\n\t\t\t\t\t\t\t<td></td>\n\t\t\t\t\t\t\t<td><script>\n\t\t\t\t\t\t\t\tfmt_money(doc.grand_total_export)\n\t\t\t\t\t\t\t</script></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr style=\'font-weight: bold\'>\n\t\t\t\t\t\t\t<td>Rounded Total</td>\n\t\t\t\t\t\t\t<td><script>doc.currency</script></td>\n\t\t\t\t\t\t\t<td><script>\n\t\t\t\t\t\t\t\tfmt_money(doc.rounded_total_export)\n\t\t\t\t\t\t\t</script></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t</tbody></table>\n\t\t\t\t\t<br /><b>In Words</b><br />\n\t\t\t\t\t<i><script>doc.in_words_export</script></i>\n\t\t\t\t</td>\n\t\t\t</tr>\t\t\n\t\t</tbody>\n\t\t<tfoot>\n\t\t\n\t\t</tfoot>\n\t</table>\n</div>\n',
-		'module': u'Accounts',
-		'name': '__common__',
-		'standard': u'Yes'
-	},
-
-	# Print Format, Sales Invoice Classic
-	{
-		'doctype': 'Print Format',
-		'name': u'Sales Invoice Classic'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-05-16 14:07:31", 
+  "modified_by": "Administrator", 
+  "modified": "2012-06-04 16:02:12"
+ }, 
+ {
+  "doc_type": "Sales Invoice", 
+  "name": "__common__", 
+  "module": "Accounts", 
+  "doctype": "Print Format", 
+  "html": "<!--\n\tSample Print Format for ERPNext\n\tPlease use at your own discretion\n\tFor suggestions and contributions:\n\t\thttps://github.com/webnotes/erpnext-print-templates\n\n\tFreely usable under MIT license\n-->\n\n<!-- Style Settings -->\n<style>\n\t/*\n\t\tcommon style for whole page\n\t\tThis should include:\n\t\t+ page size related settings\n\t\t+ font family settings\n\t\t+ line spacing settings\n\t*/\n\t@media screen {\n\t\tbody {\n\t\t\twidth: 8.3in;\n\t\t}\n\t}\n\n\thtml, body, div, span, td {\n\t\tfont-family: \"Georgia\", serif;\n\t\tfont-size: 12px;\n\t}\n\n\tbody {\n\t\tpadding: 10px;\n\t\tmargin: auto;\n\t\tfont-size: 12px;\n\t\tline-height: 150%;\n\t}\n\n\t.common {\n\t\tfont-family: \"Georgia\", serif !important;\n\t\tfont-size: 12px;\n\t\tpadding: 10px 0px;\n\t}\n\n\ttable {\n\t\tborder-collapse: collapse;\n\t\twidth: 100%;\n\t\tvertical-align: top;\n\t}\n\n\ttable td {\n\t\tpadding: 2px 0px;\n\t}\n\t\n\ttable h1, h2, h3, h4, h5, h6 {\n\t\tpadding: 0px;\n\t\tmargin: 0px;\n\t}\n\n\ttable.header-table td {\n\t\tvertical-align: top;\n\t}\n\n\ttable.header-table thead {\n\t\tborder-bottom: 1px solid black;\n\t}\n\n\ttable.header-table h3 {\n\t\tcolor: gray;\n\t}\n\n\ttable.header-table thead td {\n\t\tpadding: 5px 0px;\n\t}\n\n\tdiv.page-body table td:nth-child(6),\n\tdiv.page-body table td:nth-child(7) {\n\t\ttext-align: right;\n\t}\n\n\ttable.footer-table td {\n\t\tvertical-align: top;\n\t}\n\n\ttable.footer-table td table td:nth-child(2),\n\ttable.footer-table td table td:nth-child(3) {\n\t\ttext-align: right;\n\t}\n</style>\n\n\n<!-- Javascript -->\n<script>\n\tsi_std = {\n\t\tprint_item_table: function() {\n\t\t\tvar table = print_table(\n\t\t\t\t'Sales Invoice',\n\t\t\t\tdoc.name,\n\t\t\t\t'entries',\n\t\t\t\t'Sales Invoice Item',\n\t\t\t\t[// Here specify the table columns to be displayed\n\t\t\t\t\t'SR', 'item_name', 'description', 'qty', 'stock_uom',\n\t\t\t\t\t'export_rate', 'export_amount'\n\t\t\t\t],\n\t\t\t\t[// Here specify the labels of column headings\n\t\t\t\t\t'Sr', 'Item Name', 'Description', 'Qty',\n\t\t\t\t\t'UoM', 'Basic Rate', 'Amount'\n\t\t\t\t],\n\t\t\t\t[// Here specify the column widths\n\t\t\t\t\t'3%', '20%', '37%', '5%',\n\t\t\t\t\t'5%', '15%', '15%'\n\t\t\t\t],\n\t\t\t\tnull,\n\t\t\t\tnull,\n\t\t\t\t{\n\t\t\t\t\t'description' : function(data_row) {\n\t\t\t\t\t\tif(data_row.adj_rate) {\n\t\t\t\t\t\t\tvar to_append = '<div style=\"padding-left: 15px;\"><i>Discount: ' + \n\t\t\t\t\t\t\t\tdata_row.adj_rate + '% on ' + doc.currency + ' ' +\n\t\t\t\t\t\t\t\tfmt_money(data_row.ref_rate) + '</i></div>';\n\t\t\t\t\t\t\tif(data_row.description.indexOf(to_append)==-1) {\n\t\t\t\t\t\t\t\treturn data_row.description + to_append;\n\t\t\t\t\t\t\t} else { return data_row.description; }\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\treturn data_row.description;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t);\n\n\t\t\t// This code takes care of page breaks\n\t\t\tif(table.appendChild) {\n\t\t\t\tout = table.innerHTML;\n\t\t\t} else {\n\t\t\t\tout = '';\n\t\t\t\tfor(var i=0; i < (table.length-1); i++) {\n\t\t\t\t\tout += table[i].innerHTML + \n\t\t\t\t\t\t'<div style = \"page-break-after: always;\" \\\n\t\t\t\t\t\tclass = \"page_break\"></div>\\\n\t\t\t\t\t\t<div class=\"page-settings\"></div>';\n\t\t\t\t}\n\t\t\t\tout += table[table.length-1].innerHTML;\n\t\t\t}\n\t\t\treturn out;\n\t\t},\n\n\n\t\tprint_other_charges: function(parent) {\n\t\t\tvar oc = getchildren('Sales Taxes and Charges', doc.name, 'other_charges');\n\t\t\tvar rows = '<table width=100%>\\n';\n\t\t\tfor(var i=0; i<oc.length; i++) {\n\t\t\t\tif(!oc[i].included_in_print_rate) {\n\t\t\t\t\trows +=\n\t\t\t\t\t\t'<tr>\\n' +\n\t\t\t\t\t\t\t'\\t<td>' + oc[i].description + '</td>\\n' +\n\t\t\t\t\t\t\t'\\t<td></td>\\n' +\n\t\t\t\t\t\t\t'\\t<td width=38%>' + fmt_money(oc[i].tax_amount) + '</td>\\n' +\n\t\t\t\t\t\t'</tr>\\n';\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn rows + '</table>\\n';\n\t\t}\n\t};\n</script>\n\n\n<!-- Page Layout Settings -->\n<div class='common page-header'>\n\t<!-- \n\t\tPage Header will contain\n\t\t\t+ table 1\n\t\t\t\t+ table 1a\n\t\t\t\t\t- Name\n\t\t\t\t\t- Address\n\t\t\t\t\t- Contact\n\t\t\t\t\t- Mobile No\n\t\t\t\t+ table 1b\n\t\t\t\t\t- Voucher Date\n\t\t\t\t\t- Due Date\n\t-->\n\t<table class='header-table' cellspacing=0>\n\t\t<thead>\n\t\t\t<tr><td><script>'<h1>' + (doc.select_print_heading || 'Invoice') + '</h1>'</script></td></tr>\n\t\t\t<tr><td><h3><script>cur_frm.docname</script></h3></td></tr>\n\t\t</thead>\n\t\t<tbody>\n\t\t\t<tr>\n\t\t\t\t<td width=60%><table width=100% cellspacing=0><tbody>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td width=39%><b>Name</b></td>\n\t\t\t\t\t\t<td><script>doc.customer_name</script></td>\n\t\t\t\t\t</tr>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td><b>Address</b></td>\n\t\t\t\t\t\t<td><script>replace_newlines(doc.address_display)</script></td>\n\t\t\t\t\t</tr>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td><b>Contact</b></td>\n\t\t\t\t\t\t<td><script>doc.contact_display</script></td>\n\t\t\t\t\t</tr>\n\t\t\t\t</tbody></table></td>\n\t\t\t\t<td><table width=100% cellspacing=0><tbody>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td width=40%><b>Invoice Date</b></td>\n\t\t\t\t\t\t<td><script>date.str_to_user(doc.posting_date)</script></td>\n\t\t\t\t\t<tr>\n                    <tr>\n    \t\t\t\t\t<td width=40%><script>\n                            (doc.convert_into_recurring_invoice && doc.recurring_id)\n                            ?\"<b>Invoice Period</b>\"\n                            :\"\";\n    \t\t\t\t\t</script></td>\n\t\t\t\t\t\t<td><script>\n                            (doc.convert_into_recurring_invoice && doc.recurring_id)\n                            ?(date.str_to_user(doc.invoice_period_from_date) +\n                                ' to ' + date.str_to_user(doc.invoice_period_to_date))\n                            :\"\";\n                        </script></td>\n\t\t\t\t\t<tr>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td><b>Due Date</b></td>\n\t\t\t\t\t\t<td><script>date.str_to_user(doc.due_date)</script></td>\n\t\t\t\t\t<tr>\t\t\t\t\t\n\t\t\t\t</tbody></table></td>\n\t\t\t</tr>\n\t\t</tbody>\n\t\t<tfoot>\n\t\t\n\t\t</tfoot>\n\t</table>\n</div>\n<div class='common page-body'>\n\t<!-- \n\t\tPage Body will contain\n\t\t\t+ table 2\n\t\t\t\t- Sales Invoice Data\n\t-->\n\t<script>si_std.print_item_table()</script>\n</div>\n<div class='common page-footer'>\n\t<!-- \n\t\tPage Footer will contain\n\t\t\t+ table 3\n\t\t\t\t- Terms and Conditions\n\t\t\t\t- Total Rounded Amount Calculation\n\t\t\t\t- Total Rounded Amount in Words\n\t-->\n\t<table class='footer-table' width=100% cellspacing=0>\n\t\t<thead>\n\t\t\t\n\t\t</thead>\n\t\t<tbody>\n\t\t\t<tr>\n\t\t\t\t<td width=60% style='padding-right: 10px;'>\n\t\t\t\t\t<b>Terms, Conditions &amp; Other Information:</b><br />\n\t\t\t\t\t<script>doc.terms</script>\n\t\t\t\t</td>\n\t\t\t\t<td>\n\t\t\t\t\t<table cellspacing=0 width=100%><tbody>\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td>Net Total</td>\n\t\t\t\t\t\t\t<td></td>\n\t\t\t\t\t\t\t<td width=38%><script>\n\t\t\t\t\t\t\t\tfmt_money(doc.net_total/doc.conversion_rate)\n\t\t\t\t\t\t\t</script></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr><td colspan=3><script>si_std.print_other_charges()</script></td></tr>\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td>Grand Total</td>\n\t\t\t\t\t\t\t<td></td>\n\t\t\t\t\t\t\t<td><script>\n\t\t\t\t\t\t\t\tfmt_money(doc.grand_total_export)\n\t\t\t\t\t\t\t</script></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr style='font-weight: bold'>\n\t\t\t\t\t\t\t<td>Rounded Total</td>\n\t\t\t\t\t\t\t<td><script>doc.currency</script></td>\n\t\t\t\t\t\t\t<td><script>\n\t\t\t\t\t\t\t\tfmt_money(doc.rounded_total_export)\n\t\t\t\t\t\t\t</script></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t</tbody></table>\n\t\t\t\t\t<br /><b>In Words</b><br />\n\t\t\t\t\t<i><script>doc.in_words_export</script></i>\n\t\t\t\t</td>\n\t\t\t</tr>\t\t\n\t\t</tbody>\n\t\t<tfoot>\n\t\t\n\t\t</tfoot>\n\t</table>\n</div>\n", 
+  "standard": "Yes"
+ }, 
+ {
+  "name": "Sales Invoice Classic", 
+  "doctype": "Print Format"
+ }
 ]
\ No newline at end of file
diff --git a/accounts/Print Format/Sales Invoice Modern/Sales Invoice Modern.txt b/accounts/Print Format/Sales Invoice Modern/Sales Invoice Modern.txt
index 1146503..5cfefc2 100644
--- a/accounts/Print Format/Sales Invoice Modern/Sales Invoice Modern.txt
+++ b/accounts/Print Format/Sales Invoice Modern/Sales Invoice Modern.txt
@@ -1,28 +1,21 @@
-# Print Format, Sales Invoice Modern
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-05-16 14:07:31',
-		'docstatus': 0,
-		'modified': '2012-06-04 16:01:46',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all Print Format
-	{
-		'doc_type': u'Sales Invoice',
-		'doctype': 'Print Format',
-		'html': u'<!--\n\tSample Print Format for ERPNext\n\tPlease use at your own discretion\n\tFor suggestions and contributions:\n\t\thttps://github.com/webnotes/erpnext-print-templates\n\n\tFreely usable under MIT license\n-->\n\n<!-- Style Settings -->\n<style>\n\t/*\n\t\tcommon style for whole page\n\t\tThis should include:\n\t\t+ page size related settings\n\t\t+ font family settings\n\t\t+ line spacing settings\n\t*/\n\t@media screen {\n\t\tbody {\n\t\t\twidth: 8.3in;\n\t\t}\n\t}\n\n\thtml, body, div, span, td {\n\t\tfont-family: "Helvetica", "Arial", sans-serif;\n\t\tfont-size: 12px;\n\t}\n\n\tbody {\n\t\tpadding: 10px;\n\t\tmargin: auto;\n\t\tfont-size: 12px;\n\t\tline-height: 150%;\n\t}\n\n\t.common {\n\t\tfont-family: "Helvetica", "Arial", sans-serif !important;\n\t\tfont-size: 12px;\n\t\tpadding: 10px 0px;\n\t}\n\n\ttable {\n\t\tborder-collapse: collapse;\n\t\twidth: 100%;\n\t\tvertical-align: top;\n\t\tborder-style: none !important;\n\t}\n\n\ttable td {\n\t\tpadding: 2px 0px;\n\t\tborder-style: none !important;\n\t}\n\t\n\ttable h1, h2, h3, h4, h5, h6 {\n\t\tpadding: 0px;\n\t\tmargin: 0px;\n\t}\n\n\ttable.header-table td {\n\t\tvertical-align: top;\n\t}\n\n\ttable.header-table h1 {\n\t\ttext-transform: uppercase;\n\t\tcolor: white;\n\t\tfont-size: 55px;\n\t\tfont-style: italic;\n\t}\n\n\ttable.header-table thead tr:nth-child(1) div {\n\t\theight: 24px;\n\t\tbackground-color: #696969;\n\t\tvertical-align: middle;\n\t\tpadding: 12px 0px 0px 0px;\n\t\twidth: 100%;\n\t}\n\n\tdiv.page-body table td:nth-child(6),\n\tdiv.page-body table td:nth-child(7) {\n\t\ttext-align: right;\n\t}\n\n\tdiv.page-body table tr td {\n\t\tbackground-color: #DCDCDC !important;\n\t}\n\n\tdiv.page-body table tr:nth-child(1) td {\n\t\tbackground-color: #696969 !important;\n\t\tcolor: white !important;\n\t}\n\n\ttable.footer-table td {\n\t\tvertical-align: top;\n\t}\n\n\ttable.footer-table td table td:nth-child(2),\n\ttable.footer-table td table td:nth-child(3) {\n\t\ttext-align: right;\n\t}\n\n\ttable.footer-table tfoot td {\n\t\tbackground-color: #696969;\n\t\theight: 10px;\n\t}\n\n\t.imp-details {\n\t\tbackground-color: #DCDCDC;\n\t}\n</style>\n\n\n<!-- Javascript -->\n<script>\n\tsi_std = {\n\t\tprint_item_table: function() {\n\t\t\tvar table = print_table(\n\t\t\t\t\'Sales Invoice\',\n\t\t\t\tdoc.name,\n\t\t\t\t\'entries\',\n\t\t\t\t\'Sales Invoice Item\',\n\t\t\t\t[// Here specify the table columns to be displayed\n\t\t\t\t\t\'SR\', \'item_name\', \'description\', \'qty\', \'stock_uom\',\n\t\t\t\t\t\'export_rate\', \'export_amount\'\n\t\t\t\t],\n\t\t\t\t[// Here specify the labels of column headings\n\t\t\t\t\t\'Sr\', \'Item Name\', \'Description\', \'Qty\',\n\t\t\t\t\t\'UoM\', \'Basic Rate\', \'Amount\'\n\t\t\t\t],\n\t\t\t\t[// Here specify the column widths\n\t\t\t\t\t\'3%\', \'20%\', \'37%\', \'5%\',\n\t\t\t\t\t\'5%\', \'15%\', \'15%\'\n\t\t\t\t],\n\t\t\t\tnull,\n\t\t\t\tnull,\n\t\t\t\t{\n\t\t\t\t\t\'description\' : function(data_row) {\n\t\t\t\t\t\tif(data_row.adj_rate) {\n\t\t\t\t\t\t\tvar to_append = \'<div style="padding-left: 15px;"><i>Discount: \' + \n\t\t\t\t\t\t\t\tdata_row.adj_rate + \'% on \' + doc.currency + \' \' +\n\t\t\t\t\t\t\t\tfmt_money(data_row.ref_rate) + \'</i></div>\';\n\t\t\t\t\t\t\tif(data_row.description.indexOf(to_append)==-1) {\n\t\t\t\t\t\t\t\treturn data_row.description + to_append;\n\t\t\t\t\t\t\t} else { return data_row.description; }\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\treturn data_row.description;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t);\n\n\t\t\t// This code takes care of page breaks\n\t\t\tif(table.appendChild) {\n\t\t\t\tout = table.innerHTML;\n\t\t\t} else {\n\t\t\t\tout = \'\';\n\t\t\t\tfor(var i=0; i < (table.length-1); i++) {\n\t\t\t\t\tout += table[i].innerHTML + \n\t\t\t\t\t\t\'<div style = "page-break-after: always;" \\\n\t\t\t\t\t\tclass = "page_break"></div>\\\n\t\t\t\t\t\t<div class="page-settings"></div>\';\n\t\t\t\t}\n\t\t\t\tout += table[table.length-1].innerHTML;\n\t\t\t}\n\t\t\treturn out;\n\t\t},\n\n\n\t\tprint_other_charges: function(parent) {\n\t\t\tvar oc = getchildren(\'Sales Taxes and Charges\', doc.name, \'other_charges\');\n\t\t\tvar rows = \'<table width=100%>\\n\';\n\t\t\tfor(var i=0; i<oc.length; i++) {\n\t\t\t\tif(!oc[i].included_in_print_rate) {\n\t\t\t\t\trows +=\n\t\t\t\t\t\t\'<tr>\\n\' +\n\t\t\t\t\t\t\t\'\\t<td>\' + oc[i].description + \'</td>\\n\' +\n\t\t\t\t\t\t\t\'\\t<td></td>\\n\' +\n\t\t\t\t\t\t\t\'\\t<td width=38%>\' + fmt_money(oc[i].tax_amount) + \'</td>\\n\' +\n\t\t\t\t\t\t\'</tr>\\n\';\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn rows + \'</table>\\n\';\n\t\t}\n\t};\n</script>\n\n\n<!-- Page Layout Settings -->\n<div class=\'common page-header\'>\n\t<!-- \n\t\tPage Header will contain\n\t\t\t+ table 1\n\t\t\t\t+ table 1a\n\t\t\t\t\t- Name\n\t\t\t\t\t- Address\n\t\t\t\t\t- Contact\n\t\t\t\t\t- Mobile No\n\t\t\t\t+ table 1b\n\t\t\t\t\t- Voucher Date\n\t\t\t\t\t- Due Date\n\t-->\n\t<table class=\'header-table\' cellspacing=0>\n\t\t<thead>\n\t\t\t<tr><td colspan=2><div><script>\'<h1>\' + (doc.select_print_heading || \'Invoice\') + \'</h1>\'</script></div></td></tr>\n\t\t\t<tr><td colspan=2><div style="height:15px"></div></td></tr>\n\t\t</thead>\n\t\t<tbody>\n\t\t\t<tr>\n\t\t\t\t<td width=60%><table width=100% cellspacing=0><tbody>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td width=39%><b>Name</b></td>\n\t\t\t\t\t\t<td><script>doc.customer_name</script></td>\n\t\t\t\t\t</tr>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td><b>Address</b></td>\n\t\t\t\t\t\t<td><script>replace_newlines(doc.address_display)</script></td>\n\t\t\t\t\t</tr>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td><b>Contact</b></td>\n\t\t\t\t\t\t<td><script>doc.contact_display</script></td>\n\t\t\t\t\t</tr>\n\t\t\t\t</tbody></table></td>\n\t\t\t\t<td><table width=100% cellspacing=0><tbody>\n\t\t\t\t\t<tr class=\'imp-details\'>\n\t\t\t\t\t\t<td><b>Invoice No.</b></td>\n\t\t\t\t\t\t<td><script>cur_frm.docname</script></td>\n\t\t\t\t\t</tr>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td width=40%><b>Invoice Date</b></td>\n\t\t\t\t\t\t<td><script>date.str_to_user(doc.posting_date)</script></td>\n\t\t\t\t\t<tr>\n                    <tr>\n        \t\t\t\t<td width=40%><script>\n                            (doc.convert_into_recurring_invoice && doc.recurring_id)\n                            ?"<b>Invoice Period</b>"\n                            :"";\n    \t\t\t\t\t</script></td>\n\t\t\t\t\t\t<td><script>\n                            (doc.convert_into_recurring_invoice && doc.recurring_id)\n                            ?(date.str_to_user(doc.invoice_period_from_date) +\n                                \' to \' + date.str_to_user(doc.invoice_period_to_date))\n                            :"";\n                        </script></td>\n\t\t\t\t\t<tr>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td><b>Due Date</b></td>\n\t\t\t\t\t\t<td><script>date.str_to_user(doc.due_date)</script></td>\n\t\t\t\t\t<tr>\t\t\t\t\t\n\t\t\t\t</tbody></table></td>\n\t\t\t</tr>\n\t\t</tbody>\n\t\t<tfoot>\n\t\t\n\t\t</tfoot>\n\t</table>\n</div>\n<div class=\'common page-body\'>\n\t<!-- \n\t\tPage Body will contain\n\t\t\t+ table 2\n\t\t\t\t- Sales Invoice Data\n\t-->\n\t<script>si_std.print_item_table()</script>\n</div>\n<div class=\'common page-footer\'>\n\t<!-- \n\t\tPage Footer will contain\n\t\t\t+ table 3\n\t\t\t\t- Terms and Conditions\n\t\t\t\t- Total Rounded Amount Calculation\n\t\t\t\t- Total Rounded Amount in Words\n\t-->\n\t<table class=\'footer-table\' width=100% cellspacing=0>\n\t\t<thead>\n\t\t\t\n\t\t</thead>\n\t\t<tbody>\n\t\t\t<tr>\n\t\t\t\t<td width=60% style=\'padding-right: 10px;\'>\n\t\t\t\t\t<b>Terms, Conditions &amp; Other Information:</b><br />\n\t\t\t\t\t<script>doc.terms</script>\n\t\t\t\t</td>\n\t\t\t\t<td>\n\t\t\t\t\t<table cellspacing=0 width=100%><tbody>\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td>Net Total</td>\n\t\t\t\t\t\t\t<td></td>\n\t\t\t\t\t\t\t<td width=38%><script>\n\t\t\t\t\t\t\t\tfmt_money(doc.net_total/doc.conversion_rate)\n\t\t\t\t\t\t\t</script></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr><td colspan=3><script>si_std.print_other_charges()</script></td></tr>\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td>Grand Total</td>\n\t\t\t\t\t\t\t<td></td>\n\t\t\t\t\t\t\t<td><script>\n\t\t\t\t\t\t\t\tfmt_money(doc.grand_total_export)\n\t\t\t\t\t\t\t</script></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr style=\'font-weight: bold\' class=\'imp-details\'>\n\t\t\t\t\t\t\t<td>Rounded Total</td>\n\t\t\t\t\t\t\t<td><script>doc.currency</script></td>\n\t\t\t\t\t\t\t<td><script>\n\t\t\t\t\t\t\t\tfmt_money(doc.rounded_total_export)\n\t\t\t\t\t\t\t</script></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t</tbody></table>\n\t\t\t\t\t<br /><b>In Words</b><br />\n\t\t\t\t\t<i><script>doc.in_words_export</script></i>\n\t\t\t\t</td>\n\t\t\t</tr>\t\t\n\t\t</tbody>\n\t\t<tfoot>\n\t\t\t<tr><td colspan=2><div></div></td><tr>\n\t\t</tfoot>\n\t</table>\n</div>\n',
-		'module': u'Accounts',
-		'name': '__common__',
-		'standard': u'Yes'
-	},
-
-	# Print Format, Sales Invoice Modern
-	{
-		'doctype': 'Print Format',
-		'name': u'Sales Invoice Modern'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-05-16 14:07:31", 
+  "modified_by": "Administrator", 
+  "modified": "2012-06-04 16:01:46"
+ }, 
+ {
+  "doc_type": "Sales Invoice", 
+  "name": "__common__", 
+  "module": "Accounts", 
+  "doctype": "Print Format", 
+  "html": "<!--\n\tSample Print Format for ERPNext\n\tPlease use at your own discretion\n\tFor suggestions and contributions:\n\t\thttps://github.com/webnotes/erpnext-print-templates\n\n\tFreely usable under MIT license\n-->\n\n<!-- Style Settings -->\n<style>\n\t/*\n\t\tcommon style for whole page\n\t\tThis should include:\n\t\t+ page size related settings\n\t\t+ font family settings\n\t\t+ line spacing settings\n\t*/\n\t@media screen {\n\t\tbody {\n\t\t\twidth: 8.3in;\n\t\t}\n\t}\n\n\thtml, body, div, span, td {\n\t\tfont-family: \"Helvetica\", \"Arial\", sans-serif;\n\t\tfont-size: 12px;\n\t}\n\n\tbody {\n\t\tpadding: 10px;\n\t\tmargin: auto;\n\t\tfont-size: 12px;\n\t\tline-height: 150%;\n\t}\n\n\t.common {\n\t\tfont-family: \"Helvetica\", \"Arial\", sans-serif !important;\n\t\tfont-size: 12px;\n\t\tpadding: 10px 0px;\n\t}\n\n\ttable {\n\t\tborder-collapse: collapse;\n\t\twidth: 100%;\n\t\tvertical-align: top;\n\t\tborder-style: none !important;\n\t}\n\n\ttable td {\n\t\tpadding: 2px 0px;\n\t\tborder-style: none !important;\n\t}\n\t\n\ttable h1, h2, h3, h4, h5, h6 {\n\t\tpadding: 0px;\n\t\tmargin: 0px;\n\t}\n\n\ttable.header-table td {\n\t\tvertical-align: top;\n\t}\n\n\ttable.header-table h1 {\n\t\ttext-transform: uppercase;\n\t\tcolor: white;\n\t\tfont-size: 55px;\n\t\tfont-style: italic;\n\t}\n\n\ttable.header-table thead tr:nth-child(1) div {\n\t\theight: 24px;\n\t\tbackground-color: #696969;\n\t\tvertical-align: middle;\n\t\tpadding: 12px 0px 0px 0px;\n\t\twidth: 100%;\n\t}\n\n\tdiv.page-body table td:nth-child(6),\n\tdiv.page-body table td:nth-child(7) {\n\t\ttext-align: right;\n\t}\n\n\tdiv.page-body table tr td {\n\t\tbackground-color: #DCDCDC !important;\n\t}\n\n\tdiv.page-body table tr:nth-child(1) td {\n\t\tbackground-color: #696969 !important;\n\t\tcolor: white !important;\n\t}\n\n\ttable.footer-table td {\n\t\tvertical-align: top;\n\t}\n\n\ttable.footer-table td table td:nth-child(2),\n\ttable.footer-table td table td:nth-child(3) {\n\t\ttext-align: right;\n\t}\n\n\ttable.footer-table tfoot td {\n\t\tbackground-color: #696969;\n\t\theight: 10px;\n\t}\n\n\t.imp-details {\n\t\tbackground-color: #DCDCDC;\n\t}\n</style>\n\n\n<!-- Javascript -->\n<script>\n\tsi_std = {\n\t\tprint_item_table: function() {\n\t\t\tvar table = print_table(\n\t\t\t\t'Sales Invoice',\n\t\t\t\tdoc.name,\n\t\t\t\t'entries',\n\t\t\t\t'Sales Invoice Item',\n\t\t\t\t[// Here specify the table columns to be displayed\n\t\t\t\t\t'SR', 'item_name', 'description', 'qty', 'stock_uom',\n\t\t\t\t\t'export_rate', 'export_amount'\n\t\t\t\t],\n\t\t\t\t[// Here specify the labels of column headings\n\t\t\t\t\t'Sr', 'Item Name', 'Description', 'Qty',\n\t\t\t\t\t'UoM', 'Basic Rate', 'Amount'\n\t\t\t\t],\n\t\t\t\t[// Here specify the column widths\n\t\t\t\t\t'3%', '20%', '37%', '5%',\n\t\t\t\t\t'5%', '15%', '15%'\n\t\t\t\t],\n\t\t\t\tnull,\n\t\t\t\tnull,\n\t\t\t\t{\n\t\t\t\t\t'description' : function(data_row) {\n\t\t\t\t\t\tif(data_row.adj_rate) {\n\t\t\t\t\t\t\tvar to_append = '<div style=\"padding-left: 15px;\"><i>Discount: ' + \n\t\t\t\t\t\t\t\tdata_row.adj_rate + '% on ' + doc.currency + ' ' +\n\t\t\t\t\t\t\t\tfmt_money(data_row.ref_rate) + '</i></div>';\n\t\t\t\t\t\t\tif(data_row.description.indexOf(to_append)==-1) {\n\t\t\t\t\t\t\t\treturn data_row.description + to_append;\n\t\t\t\t\t\t\t} else { return data_row.description; }\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\treturn data_row.description;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t);\n\n\t\t\t// This code takes care of page breaks\n\t\t\tif(table.appendChild) {\n\t\t\t\tout = table.innerHTML;\n\t\t\t} else {\n\t\t\t\tout = '';\n\t\t\t\tfor(var i=0; i < (table.length-1); i++) {\n\t\t\t\t\tout += table[i].innerHTML + \n\t\t\t\t\t\t'<div style = \"page-break-after: always;\" \\\n\t\t\t\t\t\tclass = \"page_break\"></div>\\\n\t\t\t\t\t\t<div class=\"page-settings\"></div>';\n\t\t\t\t}\n\t\t\t\tout += table[table.length-1].innerHTML;\n\t\t\t}\n\t\t\treturn out;\n\t\t},\n\n\n\t\tprint_other_charges: function(parent) {\n\t\t\tvar oc = getchildren('Sales Taxes and Charges', doc.name, 'other_charges');\n\t\t\tvar rows = '<table width=100%>\\n';\n\t\t\tfor(var i=0; i<oc.length; i++) {\n\t\t\t\tif(!oc[i].included_in_print_rate) {\n\t\t\t\t\trows +=\n\t\t\t\t\t\t'<tr>\\n' +\n\t\t\t\t\t\t\t'\\t<td>' + oc[i].description + '</td>\\n' +\n\t\t\t\t\t\t\t'\\t<td></td>\\n' +\n\t\t\t\t\t\t\t'\\t<td width=38%>' + fmt_money(oc[i].tax_amount) + '</td>\\n' +\n\t\t\t\t\t\t'</tr>\\n';\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn rows + '</table>\\n';\n\t\t}\n\t};\n</script>\n\n\n<!-- Page Layout Settings -->\n<div class='common page-header'>\n\t<!-- \n\t\tPage Header will contain\n\t\t\t+ table 1\n\t\t\t\t+ table 1a\n\t\t\t\t\t- Name\n\t\t\t\t\t- Address\n\t\t\t\t\t- Contact\n\t\t\t\t\t- Mobile No\n\t\t\t\t+ table 1b\n\t\t\t\t\t- Voucher Date\n\t\t\t\t\t- Due Date\n\t-->\n\t<table class='header-table' cellspacing=0>\n\t\t<thead>\n\t\t\t<tr><td colspan=2><div><script>'<h1>' + (doc.select_print_heading || 'Invoice') + '</h1>'</script></div></td></tr>\n\t\t\t<tr><td colspan=2><div style=\"height:15px\"></div></td></tr>\n\t\t</thead>\n\t\t<tbody>\n\t\t\t<tr>\n\t\t\t\t<td width=60%><table width=100% cellspacing=0><tbody>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td width=39%><b>Name</b></td>\n\t\t\t\t\t\t<td><script>doc.customer_name</script></td>\n\t\t\t\t\t</tr>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td><b>Address</b></td>\n\t\t\t\t\t\t<td><script>replace_newlines(doc.address_display)</script></td>\n\t\t\t\t\t</tr>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td><b>Contact</b></td>\n\t\t\t\t\t\t<td><script>doc.contact_display</script></td>\n\t\t\t\t\t</tr>\n\t\t\t\t</tbody></table></td>\n\t\t\t\t<td><table width=100% cellspacing=0><tbody>\n\t\t\t\t\t<tr class='imp-details'>\n\t\t\t\t\t\t<td><b>Invoice No.</b></td>\n\t\t\t\t\t\t<td><script>cur_frm.docname</script></td>\n\t\t\t\t\t</tr>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td width=40%><b>Invoice Date</b></td>\n\t\t\t\t\t\t<td><script>date.str_to_user(doc.posting_date)</script></td>\n\t\t\t\t\t<tr>\n                    <tr>\n        \t\t\t\t<td width=40%><script>\n                            (doc.convert_into_recurring_invoice && doc.recurring_id)\n                            ?\"<b>Invoice Period</b>\"\n                            :\"\";\n    \t\t\t\t\t</script></td>\n\t\t\t\t\t\t<td><script>\n                            (doc.convert_into_recurring_invoice && doc.recurring_id)\n                            ?(date.str_to_user(doc.invoice_period_from_date) +\n                                ' to ' + date.str_to_user(doc.invoice_period_to_date))\n                            :\"\";\n                        </script></td>\n\t\t\t\t\t<tr>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td><b>Due Date</b></td>\n\t\t\t\t\t\t<td><script>date.str_to_user(doc.due_date)</script></td>\n\t\t\t\t\t<tr>\t\t\t\t\t\n\t\t\t\t</tbody></table></td>\n\t\t\t</tr>\n\t\t</tbody>\n\t\t<tfoot>\n\t\t\n\t\t</tfoot>\n\t</table>\n</div>\n<div class='common page-body'>\n\t<!-- \n\t\tPage Body will contain\n\t\t\t+ table 2\n\t\t\t\t- Sales Invoice Data\n\t-->\n\t<script>si_std.print_item_table()</script>\n</div>\n<div class='common page-footer'>\n\t<!-- \n\t\tPage Footer will contain\n\t\t\t+ table 3\n\t\t\t\t- Terms and Conditions\n\t\t\t\t- Total Rounded Amount Calculation\n\t\t\t\t- Total Rounded Amount in Words\n\t-->\n\t<table class='footer-table' width=100% cellspacing=0>\n\t\t<thead>\n\t\t\t\n\t\t</thead>\n\t\t<tbody>\n\t\t\t<tr>\n\t\t\t\t<td width=60% style='padding-right: 10px;'>\n\t\t\t\t\t<b>Terms, Conditions &amp; Other Information:</b><br />\n\t\t\t\t\t<script>doc.terms</script>\n\t\t\t\t</td>\n\t\t\t\t<td>\n\t\t\t\t\t<table cellspacing=0 width=100%><tbody>\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td>Net Total</td>\n\t\t\t\t\t\t\t<td></td>\n\t\t\t\t\t\t\t<td width=38%><script>\n\t\t\t\t\t\t\t\tfmt_money(doc.net_total/doc.conversion_rate)\n\t\t\t\t\t\t\t</script></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr><td colspan=3><script>si_std.print_other_charges()</script></td></tr>\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td>Grand Total</td>\n\t\t\t\t\t\t\t<td></td>\n\t\t\t\t\t\t\t<td><script>\n\t\t\t\t\t\t\t\tfmt_money(doc.grand_total_export)\n\t\t\t\t\t\t\t</script></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr style='font-weight: bold' class='imp-details'>\n\t\t\t\t\t\t\t<td>Rounded Total</td>\n\t\t\t\t\t\t\t<td><script>doc.currency</script></td>\n\t\t\t\t\t\t\t<td><script>\n\t\t\t\t\t\t\t\tfmt_money(doc.rounded_total_export)\n\t\t\t\t\t\t\t</script></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t</tbody></table>\n\t\t\t\t\t<br /><b>In Words</b><br />\n\t\t\t\t\t<i><script>doc.in_words_export</script></i>\n\t\t\t\t</td>\n\t\t\t</tr>\t\t\n\t\t</tbody>\n\t\t<tfoot>\n\t\t\t<tr><td colspan=2><div></div></td><tr>\n\t\t</tfoot>\n\t</table>\n</div>\n", 
+  "standard": "Yes"
+ }, 
+ {
+  "name": "Sales Invoice Modern", 
+  "doctype": "Print Format"
+ }
 ]
\ No newline at end of file
diff --git a/accounts/Print Format/Sales Invoice Spartan/Sales Invoice Spartan.txt b/accounts/Print Format/Sales Invoice Spartan/Sales Invoice Spartan.txt
index 77e6ef3..f910a29 100644
--- a/accounts/Print Format/Sales Invoice Spartan/Sales Invoice Spartan.txt
+++ b/accounts/Print Format/Sales Invoice Spartan/Sales Invoice Spartan.txt
@@ -1,28 +1,21 @@
-# Print Format, Sales Invoice Spartan
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-05-16 14:07:31',
-		'docstatus': 0,
-		'modified': '2012-06-04 16:01:09',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all Print Format
-	{
-		'doc_type': u'Sales Invoice',
-		'doctype': 'Print Format',
-		'html': u'<!--\n\tSample Print Format for ERPNext\n\tPlease use at your own discretion\n\tFor suggestions and contributions:\n\t\thttps://github.com/webnotes/erpnext-print-templates\n\n\tFreely usable under MIT license\n-->\n\n<!-- Style Settings -->\n<style>\n\t/*\n\t\tcommon style for whole page\n\t\tThis should include:\n\t\t+ page size related settings\n\t\t+ font family settings\n\t\t+ line spacing settings\n\t*/\n\t@media screen {\n\t\tbody {\n\t\t\twidth: 8.3in;\n\t\t}\n\t}\n\n\thtml, body, div, span, td {\n\t\tfont-family: "Arial", sans-serif;\n\t\tfont-size: 12px;\n\t}\n\n\tbody {\n\t\tpadding: 10px;\n\t\tmargin: auto;\n\t\tfont-size: 12px;\n\t\tline-height: 150%;\n\t}\n\n\t.common {\n\t\tfont-family: "Arial", sans-serif !important;\n\t\tfont-size: 12px;\n\t\tpadding: 0px;\n\t}\n\n\ttable {\n\t\twidth: 100% !important;\n\t\tvertical-align: top;\n\t}\n\n\ttable td {\n\t\tpadding: 2px 0px;\n\t}\n\n\ttable, td {\n\t\tborder-collapse: collapse !important;\n\t\tpadding: 0px;\n\t\tmargin: 0px !important;\n\t}\n\t\n\ttable h1, h2, h3, h4, h5, h6 {\n\t\tpadding: 0px;\n\t\tmargin: 0px;\n\t}\n\n\ttable.header-table td {\n\t\tvertical-align: top;\n\t}\n\n\ttable.header-table h3 {\n\t\tcolor: gray;\n\t}\n\n\ttable.header-table thead td {\n\t\tpadding: 5px;\n\t}\n\n\ttable.header-table > thead,\n\ttable.header-table > tbody > tr > td,\n\ttable.footer-table > tbody > tr > td {\n\t\tborder: 1px solid black;\n\t\tpadding: 5px;\n\t}\n\n\ttable.footer-table > tbody,\n\ttable.header-table > thead {\n\t\tborder-bottom: 3px solid black;\n\t}\n\n\ttable.header-table > thead {\n\t\tborder-top: 3px solid black;\n\t}\n\n\tdiv.page-body table td:nth-child(6),\n\tdiv.page-body table td:nth-child(7) {\n\t\ttext-align: right;\n\t}\n\n\tdiv.page-body td {\n\t\tbackground-color: white !important;\n\t\tborder: 1px solid black !important;\n\t}\n\n\ttable.footer-table td {\n\t\tvertical-align: top;\n\t}\n\n\ttable.footer-table td table td:nth-child(2),\n\ttable.footer-table td table td:nth-child(3) {\n\t\ttext-align: right;\n\t}\n</style>\n\n\n<!-- Javascript -->\n<script>\n\tsi_std = {\n\t\tprint_item_table: function() {\n\t\t\tvar table = print_table(\n\t\t\t\t\'Sales Invoice\',\n\t\t\t\tdoc.name,\n\t\t\t\t\'entries\',\n\t\t\t\t\'Sales Invoice Item\',\n\t\t\t\t[// Here specify the table columns to be displayed\n\t\t\t\t\t\'SR\', \'item_name\', \'description\', \'qty\', \'stock_uom\',\n\t\t\t\t\t\'export_rate\', \'export_amount\'\n\t\t\t\t],\n\t\t\t\t[// Here specify the labels of column headings\n\t\t\t\t\t\'Sr\', \'Item Name\', \'Description\', \'Qty\',\n\t\t\t\t\t\'UoM\', \'Basic Rate\', \'Amount\'\n\t\t\t\t],\n\t\t\t\t[// Here specify the column widths\n\t\t\t\t\t\'3%\', \'20%\', \'37%\', \'5%\',\n\t\t\t\t\t\'5%\', \'15%\', \'15%\'\n\t\t\t\t],\n\t\t\t\tnull,\n\t\t\t\tnull,\n\t\t\t\t{\n\t\t\t\t\t\'description\' : function(data_row) {\n\t\t\t\t\t\tif(data_row.adj_rate) {\n\t\t\t\t\t\t\tvar to_append = \'<div style="padding-left: 15px;"><i>Discount: \' + \n\t\t\t\t\t\t\t\tdata_row.adj_rate + \'% on \' + doc.currency + \' \' +\n\t\t\t\t\t\t\t\tfmt_money(data_row.ref_rate) + \'</i></div>\';\n\t\t\t\t\t\t\tif(data_row.description.indexOf(to_append)==-1) {\n\t\t\t\t\t\t\t\treturn data_row.description + to_append;\n\t\t\t\t\t\t\t} else { return data_row.description; }\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\treturn data_row.description;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t);\n\n\t\t\t// This code takes care of page breaks\n\t\t\tif(table.appendChild) {\n\t\t\t\tout = table.innerHTML;\n\t\t\t} else {\n\t\t\t\tout = \'\';\n\t\t\t\tfor(var i=0; i < (table.length-1); i++) {\n\t\t\t\t\tout += table[i].innerHTML + \n\t\t\t\t\t\t\'<div style = "page-break-after: always;" \\\n\t\t\t\t\t\tclass = "page_break"></div>\\\n\t\t\t\t\t\t<div class="page-settings"></div>\';\n\t\t\t\t}\n\t\t\t\tout += table[table.length-1].innerHTML;\n\t\t\t}\n\t\t\treturn out;\n\t\t},\n\n\n\t\tprint_other_charges: function(parent) {\n\t\t\tvar oc = getchildren(\'Sales Taxes and Charges\', doc.name, \'other_charges\');\n\t\t\tvar rows = \'<table width=100%>\\n\';\n\t\t\tfor(var i=0; i<oc.length; i++) {\n\t\t\t\tif(!oc[i].included_in_print_rate) {\n\t\t\t\t\trows +=\n\t\t\t\t\t\t\'<tr>\\n\' +\n\t\t\t\t\t\t\t\'\\t<td>\' + oc[i].description + \'</td>\\n\' +\n\t\t\t\t\t\t\t\'\\t<td></td>\\n\' +\n\t\t\t\t\t\t\t\'\\t<td width=38%>\' + fmt_money(oc[i].tax_amount) + \'</td>\\n\' +\n\t\t\t\t\t\t\'</tr>\\n\';\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn rows + \'</table>\\n\';\n\t\t}\n\t};\n</script>\n\n\n<!-- Page Layout Settings -->\n<div class=\'common page-header\'>\n\t<!-- \n\t\tPage Header will contain\n\t\t\t+ table 1\n\t\t\t\t+ table 1a\n\t\t\t\t\t- Name\n\t\t\t\t\t- Address\n\t\t\t\t\t- Contact\n\t\t\t\t\t- Mobile No\n\t\t\t\t+ table 1b\n\t\t\t\t\t- Voucher Date\n\t\t\t\t\t- Due Date\n\t-->\n\t<table class=\'header-table\' cellspacing=0>\n\t\t<thead>\n\t\t\t<tr><td colspan=2><script>\'<h1>\' + (doc.select_print_heading || \'Invoice\') + \'</h1>\'</script></td></tr>\n\t\t\t<tr><td colspan=2><h3><script>cur_frm.docname</script></h3></td></tr>\n\t\t</thead>\n\t\t<tbody>\n\t\t\t<tr>\n\t\t\t\t<td width=60%><table width=100% cellspacing=0><tbody>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td width=39%><b>Name</b></td>\n\t\t\t\t\t\t<td><script>doc.customer_name</script></td>\n\t\t\t\t\t</tr>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td><b>Address</b></td>\n\t\t\t\t\t\t<td><script>replace_newlines(doc.address_display)</script></td>\n\t\t\t\t\t</tr>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td><b>Contact</b></td>\n\t\t\t\t\t\t<td><script>doc.contact_display</script></td>\n\t\t\t\t\t</tr>\n\t\t\t\t</tbody></table></td>\n\t\t\t\t<td><table width=100% cellspacing=0><tbody>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td width=40%><b>Invoice Date</b></td>\n\t\t\t\t\t\t<td><script>date.str_to_user(doc.posting_date)</script></td>\n\t\t\t\t\t<tr>\n                    <tr>\n        \t\t\t\t<td width=40%><script>\n                            (doc.convert_into_recurring_invoice && doc.recurring_id)\n                            ?"<b>Invoice Period</b>"\n                            :"";\n    \t\t\t\t\t</script></td>\n\t\t\t\t\t\t<td><script>\n                            (doc.convert_into_recurring_invoice && doc.recurring_id)\n                            ?(date.str_to_user(doc.invoice_period_from_date) +\n                                \' to \' + date.str_to_user(doc.invoice_period_to_date))\n                            :"";\n                        </script></td>\n\t\t\t\t\t<tr>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td><b>Due Date</b></td>\n\t\t\t\t\t\t<td><script>date.str_to_user(doc.due_date)</script></td>\n\t\t\t\t\t<tr>\t\t\t\t\t\n\t\t\t\t</tbody></table></td>\n\t\t\t</tr>\n\t\t</tbody>\n\t\t<tfoot>\n\t\t\n\t\t</tfoot>\n\t</table>\n</div>\n<div class=\'common page-body\'>\n\t<!-- \n\t\tPage Body will contain\n\t\t\t+ table 2\n\t\t\t\t- Sales Invoice Data\n\t-->\n\t<script>si_std.print_item_table()</script>\n</div>\n<div class=\'common page-footer\'>\n\t<!-- \n\t\tPage Footer will contain\n\t\t\t+ table 3\n\t\t\t\t- Terms and Conditions\n\t\t\t\t- Total Rounded Amount Calculation\n\t\t\t\t- Total Rounded Amount in Words\n\t-->\n\t<table class=\'footer-table\' width=100% cellspacing=0>\n\t\t<thead>\n\t\t\t\n\t\t</thead>\n\t\t<tbody>\n\t\t\t<tr>\n\t\t\t\t<td width=60% style=\'padding-right: 10px;\'>\n\t\t\t\t\t<b>Terms, Conditions &amp; Other Information:</b><br />\n\t\t\t\t\t<script>doc.terms</script>\n\t\t\t\t</td>\n\t\t\t\t<td>\n\t\t\t\t\t<table cellspacing=0 width=100%><tbody>\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td>Net Total</td>\n\t\t\t\t\t\t\t<td></td>\n\t\t\t\t\t\t\t<td width=38%><script>\n\t\t\t\t\t\t\t\tfmt_money(doc.net_total/doc.conversion_rate)\n\t\t\t\t\t\t\t</script></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr><td colspan=3><script>si_std.print_other_charges()</script></td></tr>\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td>Grand Total</td>\n\t\t\t\t\t\t\t<td></td>\n\t\t\t\t\t\t\t<td><script>\n\t\t\t\t\t\t\t\tfmt_money(doc.grand_total_export)\n\t\t\t\t\t\t\t</script></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr style=\'font-weight: bold\'>\n\t\t\t\t\t\t\t<td>Rounded Total</td>\n\t\t\t\t\t\t\t<td><script>doc.currency</script></td>\n\t\t\t\t\t\t\t<td><script>\n\t\t\t\t\t\t\t\tfmt_money(doc.rounded_total_export)\n\t\t\t\t\t\t\t</script></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t</tbody></table>\n\t\t\t\t\t<br /><b>In Words</b><br />\n\t\t\t\t\t<i><script>doc.in_words_export</script></i>\n\t\t\t\t</td>\n\t\t\t</tr>\t\t\n\t\t</tbody>\n\t\t<tfoot>\n\t\t\n\t\t</tfoot>\n\t</table>\n</div>\n',
-		'module': u'Accounts',
-		'name': '__common__',
-		'standard': u'Yes'
-	},
-
-	# Print Format, Sales Invoice Spartan
-	{
-		'doctype': 'Print Format',
-		'name': u'Sales Invoice Spartan'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-05-16 14:07:31", 
+  "modified_by": "Administrator", 
+  "modified": "2012-06-04 16:01:09"
+ }, 
+ {
+  "doc_type": "Sales Invoice", 
+  "name": "__common__", 
+  "module": "Accounts", 
+  "doctype": "Print Format", 
+  "html": "<!--\n\tSample Print Format for ERPNext\n\tPlease use at your own discretion\n\tFor suggestions and contributions:\n\t\thttps://github.com/webnotes/erpnext-print-templates\n\n\tFreely usable under MIT license\n-->\n\n<!-- Style Settings -->\n<style>\n\t/*\n\t\tcommon style for whole page\n\t\tThis should include:\n\t\t+ page size related settings\n\t\t+ font family settings\n\t\t+ line spacing settings\n\t*/\n\t@media screen {\n\t\tbody {\n\t\t\twidth: 8.3in;\n\t\t}\n\t}\n\n\thtml, body, div, span, td {\n\t\tfont-family: \"Arial\", sans-serif;\n\t\tfont-size: 12px;\n\t}\n\n\tbody {\n\t\tpadding: 10px;\n\t\tmargin: auto;\n\t\tfont-size: 12px;\n\t\tline-height: 150%;\n\t}\n\n\t.common {\n\t\tfont-family: \"Arial\", sans-serif !important;\n\t\tfont-size: 12px;\n\t\tpadding: 0px;\n\t}\n\n\ttable {\n\t\twidth: 100% !important;\n\t\tvertical-align: top;\n\t}\n\n\ttable td {\n\t\tpadding: 2px 0px;\n\t}\n\n\ttable, td {\n\t\tborder-collapse: collapse !important;\n\t\tpadding: 0px;\n\t\tmargin: 0px !important;\n\t}\n\t\n\ttable h1, h2, h3, h4, h5, h6 {\n\t\tpadding: 0px;\n\t\tmargin: 0px;\n\t}\n\n\ttable.header-table td {\n\t\tvertical-align: top;\n\t}\n\n\ttable.header-table h3 {\n\t\tcolor: gray;\n\t}\n\n\ttable.header-table thead td {\n\t\tpadding: 5px;\n\t}\n\n\ttable.header-table > thead,\n\ttable.header-table > tbody > tr > td,\n\ttable.footer-table > tbody > tr > td {\n\t\tborder: 1px solid black;\n\t\tpadding: 5px;\n\t}\n\n\ttable.footer-table > tbody,\n\ttable.header-table > thead {\n\t\tborder-bottom: 3px solid black;\n\t}\n\n\ttable.header-table > thead {\n\t\tborder-top: 3px solid black;\n\t}\n\n\tdiv.page-body table td:nth-child(6),\n\tdiv.page-body table td:nth-child(7) {\n\t\ttext-align: right;\n\t}\n\n\tdiv.page-body td {\n\t\tbackground-color: white !important;\n\t\tborder: 1px solid black !important;\n\t}\n\n\ttable.footer-table td {\n\t\tvertical-align: top;\n\t}\n\n\ttable.footer-table td table td:nth-child(2),\n\ttable.footer-table td table td:nth-child(3) {\n\t\ttext-align: right;\n\t}\n</style>\n\n\n<!-- Javascript -->\n<script>\n\tsi_std = {\n\t\tprint_item_table: function() {\n\t\t\tvar table = print_table(\n\t\t\t\t'Sales Invoice',\n\t\t\t\tdoc.name,\n\t\t\t\t'entries',\n\t\t\t\t'Sales Invoice Item',\n\t\t\t\t[// Here specify the table columns to be displayed\n\t\t\t\t\t'SR', 'item_name', 'description', 'qty', 'stock_uom',\n\t\t\t\t\t'export_rate', 'export_amount'\n\t\t\t\t],\n\t\t\t\t[// Here specify the labels of column headings\n\t\t\t\t\t'Sr', 'Item Name', 'Description', 'Qty',\n\t\t\t\t\t'UoM', 'Basic Rate', 'Amount'\n\t\t\t\t],\n\t\t\t\t[// Here specify the column widths\n\t\t\t\t\t'3%', '20%', '37%', '5%',\n\t\t\t\t\t'5%', '15%', '15%'\n\t\t\t\t],\n\t\t\t\tnull,\n\t\t\t\tnull,\n\t\t\t\t{\n\t\t\t\t\t'description' : function(data_row) {\n\t\t\t\t\t\tif(data_row.adj_rate) {\n\t\t\t\t\t\t\tvar to_append = '<div style=\"padding-left: 15px;\"><i>Discount: ' + \n\t\t\t\t\t\t\t\tdata_row.adj_rate + '% on ' + doc.currency + ' ' +\n\t\t\t\t\t\t\t\tfmt_money(data_row.ref_rate) + '</i></div>';\n\t\t\t\t\t\t\tif(data_row.description.indexOf(to_append)==-1) {\n\t\t\t\t\t\t\t\treturn data_row.description + to_append;\n\t\t\t\t\t\t\t} else { return data_row.description; }\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\treturn data_row.description;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t);\n\n\t\t\t// This code takes care of page breaks\n\t\t\tif(table.appendChild) {\n\t\t\t\tout = table.innerHTML;\n\t\t\t} else {\n\t\t\t\tout = '';\n\t\t\t\tfor(var i=0; i < (table.length-1); i++) {\n\t\t\t\t\tout += table[i].innerHTML + \n\t\t\t\t\t\t'<div style = \"page-break-after: always;\" \\\n\t\t\t\t\t\tclass = \"page_break\"></div>\\\n\t\t\t\t\t\t<div class=\"page-settings\"></div>';\n\t\t\t\t}\n\t\t\t\tout += table[table.length-1].innerHTML;\n\t\t\t}\n\t\t\treturn out;\n\t\t},\n\n\n\t\tprint_other_charges: function(parent) {\n\t\t\tvar oc = getchildren('Sales Taxes and Charges', doc.name, 'other_charges');\n\t\t\tvar rows = '<table width=100%>\\n';\n\t\t\tfor(var i=0; i<oc.length; i++) {\n\t\t\t\tif(!oc[i].included_in_print_rate) {\n\t\t\t\t\trows +=\n\t\t\t\t\t\t'<tr>\\n' +\n\t\t\t\t\t\t\t'\\t<td>' + oc[i].description + '</td>\\n' +\n\t\t\t\t\t\t\t'\\t<td></td>\\n' +\n\t\t\t\t\t\t\t'\\t<td width=38%>' + fmt_money(oc[i].tax_amount) + '</td>\\n' +\n\t\t\t\t\t\t'</tr>\\n';\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn rows + '</table>\\n';\n\t\t}\n\t};\n</script>\n\n\n<!-- Page Layout Settings -->\n<div class='common page-header'>\n\t<!-- \n\t\tPage Header will contain\n\t\t\t+ table 1\n\t\t\t\t+ table 1a\n\t\t\t\t\t- Name\n\t\t\t\t\t- Address\n\t\t\t\t\t- Contact\n\t\t\t\t\t- Mobile No\n\t\t\t\t+ table 1b\n\t\t\t\t\t- Voucher Date\n\t\t\t\t\t- Due Date\n\t-->\n\t<table class='header-table' cellspacing=0>\n\t\t<thead>\n\t\t\t<tr><td colspan=2><script>'<h1>' + (doc.select_print_heading || 'Invoice') + '</h1>'</script></td></tr>\n\t\t\t<tr><td colspan=2><h3><script>cur_frm.docname</script></h3></td></tr>\n\t\t</thead>\n\t\t<tbody>\n\t\t\t<tr>\n\t\t\t\t<td width=60%><table width=100% cellspacing=0><tbody>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td width=39%><b>Name</b></td>\n\t\t\t\t\t\t<td><script>doc.customer_name</script></td>\n\t\t\t\t\t</tr>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td><b>Address</b></td>\n\t\t\t\t\t\t<td><script>replace_newlines(doc.address_display)</script></td>\n\t\t\t\t\t</tr>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td><b>Contact</b></td>\n\t\t\t\t\t\t<td><script>doc.contact_display</script></td>\n\t\t\t\t\t</tr>\n\t\t\t\t</tbody></table></td>\n\t\t\t\t<td><table width=100% cellspacing=0><tbody>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td width=40%><b>Invoice Date</b></td>\n\t\t\t\t\t\t<td><script>date.str_to_user(doc.posting_date)</script></td>\n\t\t\t\t\t<tr>\n                    <tr>\n        \t\t\t\t<td width=40%><script>\n                            (doc.convert_into_recurring_invoice && doc.recurring_id)\n                            ?\"<b>Invoice Period</b>\"\n                            :\"\";\n    \t\t\t\t\t</script></td>\n\t\t\t\t\t\t<td><script>\n                            (doc.convert_into_recurring_invoice && doc.recurring_id)\n                            ?(date.str_to_user(doc.invoice_period_from_date) +\n                                ' to ' + date.str_to_user(doc.invoice_period_to_date))\n                            :\"\";\n                        </script></td>\n\t\t\t\t\t<tr>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td><b>Due Date</b></td>\n\t\t\t\t\t\t<td><script>date.str_to_user(doc.due_date)</script></td>\n\t\t\t\t\t<tr>\t\t\t\t\t\n\t\t\t\t</tbody></table></td>\n\t\t\t</tr>\n\t\t</tbody>\n\t\t<tfoot>\n\t\t\n\t\t</tfoot>\n\t</table>\n</div>\n<div class='common page-body'>\n\t<!-- \n\t\tPage Body will contain\n\t\t\t+ table 2\n\t\t\t\t- Sales Invoice Data\n\t-->\n\t<script>si_std.print_item_table()</script>\n</div>\n<div class='common page-footer'>\n\t<!-- \n\t\tPage Footer will contain\n\t\t\t+ table 3\n\t\t\t\t- Terms and Conditions\n\t\t\t\t- Total Rounded Amount Calculation\n\t\t\t\t- Total Rounded Amount in Words\n\t-->\n\t<table class='footer-table' width=100% cellspacing=0>\n\t\t<thead>\n\t\t\t\n\t\t</thead>\n\t\t<tbody>\n\t\t\t<tr>\n\t\t\t\t<td width=60% style='padding-right: 10px;'>\n\t\t\t\t\t<b>Terms, Conditions &amp; Other Information:</b><br />\n\t\t\t\t\t<script>doc.terms</script>\n\t\t\t\t</td>\n\t\t\t\t<td>\n\t\t\t\t\t<table cellspacing=0 width=100%><tbody>\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td>Net Total</td>\n\t\t\t\t\t\t\t<td></td>\n\t\t\t\t\t\t\t<td width=38%><script>\n\t\t\t\t\t\t\t\tfmt_money(doc.net_total/doc.conversion_rate)\n\t\t\t\t\t\t\t</script></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr><td colspan=3><script>si_std.print_other_charges()</script></td></tr>\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td>Grand Total</td>\n\t\t\t\t\t\t\t<td></td>\n\t\t\t\t\t\t\t<td><script>\n\t\t\t\t\t\t\t\tfmt_money(doc.grand_total_export)\n\t\t\t\t\t\t\t</script></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr style='font-weight: bold'>\n\t\t\t\t\t\t\t<td>Rounded Total</td>\n\t\t\t\t\t\t\t<td><script>doc.currency</script></td>\n\t\t\t\t\t\t\t<td><script>\n\t\t\t\t\t\t\t\tfmt_money(doc.rounded_total_export)\n\t\t\t\t\t\t\t</script></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t</tbody></table>\n\t\t\t\t\t<br /><b>In Words</b><br />\n\t\t\t\t\t<i><script>doc.in_words_export</script></i>\n\t\t\t\t</td>\n\t\t\t</tr>\t\t\n\t\t</tbody>\n\t\t<tfoot>\n\t\t\n\t\t</tfoot>\n\t</table>\n</div>\n", 
+  "standard": "Yes"
+ }, 
+ {
+  "name": "Sales Invoice Spartan", 
+  "doctype": "Print Format"
+ }
 ]
\ No newline at end of file
diff --git a/accounts/doctype/bank_reconciliation/bank_reconciliation.txt b/accounts/doctype/bank_reconciliation/bank_reconciliation.txt
index f1d0b9f..9914b48 100644
--- a/accounts/doctype/bank_reconciliation/bank_reconciliation.txt
+++ b/accounts/doctype/bank_reconciliation/bank_reconciliation.txt
@@ -1,167 +1,134 @@
-# DocType, Bank Reconciliation
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:35:40',
-		'docstatus': 0,
-		'modified': '2012-03-27 14:35:40',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'_last_update': u'1294312169',
-		'allow_copy': 1,
-		'allow_email': 1,
-		'allow_print': 1,
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'hide_heading': 1,
-		'hide_toolbar': 1,
-		'issingle': 1,
-		'module': u'Accounts',
-		'name': '__common__',
-		'read_only': 1,
-		'section_style': u'Simple',
-		'server_code_error': u' ',
-		'show_in_menu': 0,
-		'version': 12
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'Bank Reconciliation',
-		'parentfield': u'fields',
-		'parenttype': u'DocType'
-	},
-
-	# These values are common for all DocPerm
-	{
-		'doctype': u'DocPerm',
-		'name': '__common__',
-		'parent': u'Bank Reconciliation',
-		'parentfield': u'permissions',
-		'parenttype': u'DocType',
-		'read': 1
-	},
-
-	# DocType, Bank Reconciliation
-	{
-		'doctype': 'DocType',
-		'name': u'Bank Reconciliation'
-	},
-
-	# DocPerm
-	{
-		'amend': 0,
-		'cancel': 0,
-		'create': 1,
-		'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'Accounts User',
-		'submit': 0,
-		'write': 1
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm',
-		'permlevel': 1,
-		'role': u'All'
-	},
-
-	# DocPerm
-	{
-		'create': 1,
-		'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'Accounts Manager',
-		'write': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'head_html',
-		'fieldtype': u'HTML',
-		'label': u'Head HTML',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'description': u'Select account head of the bank where cheque was deposited.',
-		'doctype': u'DocField',
-		'fieldname': u'bank_account',
-		'fieldtype': u'Link',
-		'label': u'Bank Account',
-		'options': u'Account',
-		'permlevel': 0,
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'from_date',
-		'fieldtype': u'Date',
-		'label': u'From Date',
-		'permlevel': 0,
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'to_date',
-		'fieldtype': u'Date',
-		'label': u'To Date',
-		'permlevel': 0,
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'doctype': u'DocField',
-		'fieldname': u'get_non_reconciled_entries',
-		'fieldtype': u'Button',
-		'label': u'Get Non Reconciled Entries',
-		'options': u'get_details',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'doctype': u'DocField',
-		'fieldname': u'entries',
-		'fieldtype': u'Table',
-		'label': u'Entries',
-		'options': u'Bank Reconciliation Detail',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'update_clearance_date',
-		'fieldtype': u'Button',
-		'label': u'Update Clearance Date',
-		'options': u'update_details',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'total_amount',
-		'fieldtype': u'Currency',
-		'label': u'Total Amount',
-		'permlevel': 1
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-03-27 14:35:40", 
+  "modified_by": "Administrator", 
+  "modified": "2012-03-27 14:35:40"
+ }, 
+ {
+  "section_style": "Simple", 
+  "allow_print": 1, 
+  "module": "Accounts", 
+  "doctype": "DocType", 
+  "server_code_error": " ", 
+  "read_only": 1, 
+  "allow_email": 1, 
+  "hide_heading": 1, 
+  "issingle": 1, 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "_last_update": "1294312169", 
+  "show_in_menu": 0, 
+  "version": 12, 
+  "hide_toolbar": 1, 
+  "allow_copy": 1
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Bank Reconciliation", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Bank Reconciliation", 
+  "read": 1, 
+  "doctype": "DocPerm", 
+  "parenttype": "DocType", 
+  "parentfield": "permissions"
+ }, 
+ {
+  "name": "Bank Reconciliation", 
+  "doctype": "DocType"
+ }, 
+ {
+  "amend": 0, 
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "submit": 0, 
+  "write": 1, 
+  "role": "Accounts User", 
+  "cancel": 0, 
+  "permlevel": 0
+ }, 
+ {
+  "role": "All", 
+  "permlevel": 1, 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "write": 1, 
+  "role": "Accounts Manager", 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Head HTML", 
+  "fieldname": "head_html", 
+  "fieldtype": "HTML", 
+  "permlevel": 0
+ }, 
+ {
+  "description": "Select account head of the bank where cheque was deposited.", 
+  "doctype": "DocField", 
+  "label": "Bank Account", 
+  "permlevel": 0, 
+  "fieldname": "bank_account", 
+  "fieldtype": "Link", 
+  "reqd": 1, 
+  "options": "Account"
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "From Date", 
+  "fieldname": "from_date", 
+  "fieldtype": "Date", 
+  "reqd": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "To Date", 
+  "fieldname": "to_date", 
+  "fieldtype": "Date", 
+  "reqd": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Get Non Reconciled Entries", 
+  "permlevel": 0, 
+  "fieldname": "get_non_reconciled_entries", 
+  "fieldtype": "Button", 
+  "options": "get_details"
+ }, 
+ {
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Entries", 
+  "permlevel": 0, 
+  "fieldname": "entries", 
+  "fieldtype": "Table", 
+  "options": "Bank Reconciliation Detail"
+ }, 
+ {
+  "doctype": "DocField", 
+  "options": "update_details", 
+  "fieldname": "update_clearance_date", 
+  "fieldtype": "Button", 
+  "label": "Update Clearance Date", 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Total Amount", 
+  "fieldname": "total_amount", 
+  "fieldtype": "Currency", 
+  "permlevel": 1
+ }
 ]
\ No newline at end of file
diff --git a/accounts/doctype/bank_reconciliation_detail/bank_reconciliation_detail.txt b/accounts/doctype/bank_reconciliation_detail/bank_reconciliation_detail.txt
index e3688b4..cc3bb68 100644
--- a/accounts/doctype/bank_reconciliation_detail/bank_reconciliation_detail.txt
+++ b/accounts/doctype/bank_reconciliation_detail/bank_reconciliation_detail.txt
@@ -1,131 +1,106 @@
-# DocType, Bank Reconciliation Detail
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:35:41',
-		'docstatus': 0,
-		'modified': '2012-03-27 14:35:41',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'istable': 1,
-		'module': u'Accounts',
-		'name': '__common__',
-		'section_style': u'Tray',
-		'show_in_menu': 0,
-		'version': 5
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'no_copy': 0,
-		'parent': u'Bank Reconciliation Detail',
-		'parentfield': u'fields',
-		'parenttype': u'DocType',
-		'search_index': 0
-	},
-
-	# DocType, Bank Reconciliation Detail
-	{
-		'doctype': 'DocType',
-		'name': u'Bank Reconciliation Detail'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'voucher_id',
-		'fieldtype': u'Link',
-		'label': u'Voucher ID',
-		'oldfieldname': u'voucher_id',
-		'oldfieldtype': u'Link',
-		'options': u'Journal Voucher',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'against_account',
-		'fieldtype': u'Data',
-		'label': u'Against Account',
-		'oldfieldname': u'against_account',
-		'oldfieldtype': u'Data',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		'description': u'The date at which current entry will get or has actually executed.',
-		'doctype': u'DocField',
-		'fieldname': u'posting_date',
-		'fieldtype': u'Date',
-		'label': u'Posting Date',
-		'oldfieldname': u'posting_date',
-		'oldfieldtype': u'Date',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'cheque_number',
-		'fieldtype': u'Data',
-		'label': u'Cheque Number',
-		'oldfieldname': u'cheque_number',
-		'oldfieldtype': u'Data',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'cheque_date',
-		'fieldtype': u'Date',
-		'label': u'Cheque Date',
-		'oldfieldname': u'cheque_date',
-		'oldfieldtype': u'Date',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'debit',
-		'fieldtype': u'Currency',
-		'label': u'Debit',
-		'oldfieldname': u'debit',
-		'oldfieldtype': u'Currency',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'credit',
-		'fieldtype': u'Currency',
-		'label': u'Credit',
-		'oldfieldname': u'credit',
-		'oldfieldtype': u'Currency',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'clearance_date',
-		'fieldtype': u'Date',
-		'label': u'Clearance Date',
-		'oldfieldname': u'clearance_date',
-		'oldfieldtype': u'Date',
-		'permlevel': 0
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-03-27 14:35:41", 
+  "modified_by": "Administrator", 
+  "modified": "2012-03-27 14:35:41"
+ }, 
+ {
+  "section_style": "Tray", 
+  "istable": 1, 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "module": "Accounts", 
+  "doctype": "DocType", 
+  "version": 5, 
+  "show_in_menu": 0
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Bank Reconciliation Detail", 
+  "no_copy": 0, 
+  "search_index": 0, 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "Bank Reconciliation Detail", 
+  "doctype": "DocType"
+ }, 
+ {
+  "oldfieldtype": "Link", 
+  "doctype": "DocField", 
+  "label": "Voucher ID", 
+  "oldfieldname": "voucher_id", 
+  "permlevel": 0, 
+  "fieldname": "voucher_id", 
+  "fieldtype": "Link", 
+  "options": "Journal Voucher"
+ }, 
+ {
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Against Account", 
+  "oldfieldname": "against_account", 
+  "fieldname": "against_account", 
+  "fieldtype": "Data", 
+  "permlevel": 1
+ }, 
+ {
+  "description": "The date at which current entry will get or has actually executed.", 
+  "oldfieldtype": "Date", 
+  "doctype": "DocField", 
+  "label": "Posting Date", 
+  "oldfieldname": "posting_date", 
+  "fieldname": "posting_date", 
+  "fieldtype": "Date", 
+  "permlevel": 1
+ }, 
+ {
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Cheque Number", 
+  "oldfieldname": "cheque_number", 
+  "fieldname": "cheque_number", 
+  "fieldtype": "Data", 
+  "permlevel": 1
+ }, 
+ {
+  "oldfieldtype": "Date", 
+  "doctype": "DocField", 
+  "label": "Cheque Date", 
+  "oldfieldname": "cheque_date", 
+  "fieldname": "cheque_date", 
+  "fieldtype": "Date", 
+  "permlevel": 1
+ }, 
+ {
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Debit", 
+  "oldfieldname": "debit", 
+  "fieldname": "debit", 
+  "fieldtype": "Currency", 
+  "permlevel": 1
+ }, 
+ {
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Credit", 
+  "oldfieldname": "credit", 
+  "fieldname": "credit", 
+  "fieldtype": "Currency", 
+  "permlevel": 1
+ }, 
+ {
+  "oldfieldtype": "Date", 
+  "doctype": "DocField", 
+  "label": "Clearance Date", 
+  "oldfieldname": "clearance_date", 
+  "fieldname": "clearance_date", 
+  "fieldtype": "Date", 
+  "permlevel": 0
+ }
 ]
\ No newline at end of file
diff --git a/accounts/doctype/budget_control/budget_control.txt b/accounts/doctype/budget_control/budget_control.txt
index a08762f..b27e65f 100644
--- a/accounts/doctype/budget_control/budget_control.txt
+++ b/accounts/doctype/budget_control/budget_control.txt
@@ -1,31 +1,24 @@
-# DocType, Budget Control
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:35:41',
-		'docstatus': 0,
-		'modified': '2012-03-27 14:35:41',
-		'modified_by': u'Administrator',
-		'owner': u'nabin@webnotestech.com'
-	},
-
-	# These values are common for all DocType
-	{
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'issingle': 1,
-		'module': u'Accounts',
-		'name': '__common__',
-		'section_style': u'Simple',
-		'server_code_error': u' ',
-		'show_in_menu': 0,
-		'version': 23
-	},
-
-	# DocType, Budget Control
-	{
-		'doctype': 'DocType',
-		'name': u'Budget Control'
-	}
+ {
+  "owner": "nabin@webnotestech.com", 
+  "docstatus": 0, 
+  "creation": "2012-03-27 14:35:41", 
+  "modified_by": "Administrator", 
+  "modified": "2012-03-27 14:35:41"
+ }, 
+ {
+  "section_style": "Simple", 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "module": "Accounts", 
+  "show_in_menu": 0, 
+  "version": 23, 
+  "server_code_error": " ", 
+  "doctype": "DocType", 
+  "issingle": 1
+ }, 
+ {
+  "name": "Budget Control", 
+  "doctype": "DocType"
+ }
 ]
\ No newline at end of file
diff --git a/accounts/doctype/budget_detail/budget_detail.txt b/accounts/doctype/budget_detail/budget_detail.txt
index f9f287a..7e28e81 100644
--- a/accounts/doctype/budget_detail/budget_detail.txt
+++ b/accounts/doctype/budget_detail/budget_detail.txt
@@ -1,94 +1,77 @@
-# DocType, Budget Detail
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:35:41',
-		'docstatus': 0,
-		'modified': '2012-03-27 14:35:41',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'autoname': u'CBD/.######',
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'istable': 1,
-		'module': u'Accounts',
-		'name': '__common__',
-		'section_style': u'Tray',
-		'show_in_menu': 0,
-		'version': 6
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'Budget Detail',
-		'parentfield': u'fields',
-		'parenttype': u'DocType'
-	},
-
-	# DocType, Budget Detail
-	{
-		'doctype': 'DocType',
-		'name': u'Budget Detail'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'account',
-		'fieldtype': u'Link',
-		'in_filter': 1,
-		'label': u'Account',
-		'oldfieldname': u'account',
-		'oldfieldtype': u'Link',
-		'options': u'Account',
-		'permlevel': 0,
-		'reqd': 1,
-		'search_index': 1,
-		'trigger': u'Client'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'budget_allocated',
-		'fieldtype': u'Currency',
-		'label': u'Budget Allocated',
-		'oldfieldname': u'budget_allocated',
-		'oldfieldtype': u'Currency',
-		'permlevel': 0,
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'actual',
-		'fieldtype': u'Currency',
-		'label': u'Actual',
-		'oldfieldname': u'actual',
-		'oldfieldtype': u'Currency',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'fiscal_year',
-		'fieldtype': u'Select',
-		'in_filter': 1,
-		'label': u'Fiscal Year',
-		'oldfieldname': u'fiscal_year',
-		'oldfieldtype': u'Select',
-		'options': u'link:Fiscal Year',
-		'permlevel': 0,
-		'reqd': 1,
-		'search_index': 1
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-03-27 14:35:41", 
+  "modified_by": "Administrator", 
+  "modified": "2012-03-27 14:35:41"
+ }, 
+ {
+  "section_style": "Tray", 
+  "istable": 1, 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "module": "Accounts", 
+  "doctype": "DocType", 
+  "version": 6, 
+  "autoname": "CBD/.######", 
+  "show_in_menu": 0
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Budget Detail", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "Budget Detail", 
+  "doctype": "DocType"
+ }, 
+ {
+  "search_index": 1, 
+  "doctype": "DocField", 
+  "label": "Account", 
+  "oldfieldname": "account", 
+  "trigger": "Client", 
+  "fieldname": "account", 
+  "fieldtype": "Link", 
+  "oldfieldtype": "Link", 
+  "reqd": 1, 
+  "options": "Account", 
+  "permlevel": 0, 
+  "in_filter": 1
+ }, 
+ {
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Budget Allocated", 
+  "oldfieldname": "budget_allocated", 
+  "fieldname": "budget_allocated", 
+  "fieldtype": "Currency", 
+  "reqd": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Actual", 
+  "oldfieldname": "actual", 
+  "fieldname": "actual", 
+  "fieldtype": "Currency", 
+  "permlevel": 1
+ }, 
+ {
+  "search_index": 1, 
+  "doctype": "DocField", 
+  "label": "Fiscal Year", 
+  "oldfieldname": "fiscal_year", 
+  "options": "link:Fiscal Year", 
+  "fieldname": "fiscal_year", 
+  "fieldtype": "Select", 
+  "oldfieldtype": "Select", 
+  "reqd": 1, 
+  "permlevel": 0, 
+  "in_filter": 1
+ }
 ]
\ No newline at end of file
diff --git a/accounts/doctype/budget_distribution/budget_distribution.txt b/accounts/doctype/budget_distribution/budget_distribution.txt
index ab8a6c8..c376e5a 100644
--- a/accounts/doctype/budget_distribution/budget_distribution.txt
+++ b/accounts/doctype/budget_distribution/budget_distribution.txt
@@ -1,160 +1,129 @@
-# DocType, Budget Distribution
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-07-03 13:30:50',
-		'docstatus': 0,
-		'modified': '2012-07-11 14:37:30',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'allow_trash': 1,
-		'autoname': u'field:distribution_id',
-		'colour': u'White:FFF',
-		'description': u'**Budget Distribution** helps you distribute your budget across months if you have seasonality in your business.\n\nTo distribute a budget using this distribution, set this **Budget Distribution** in the **Cost Center**',
-		'doctype': 'DocType',
-		'module': u'Accounts',
-		'name': '__common__',
-		'name_case': u'Title Case',
-		'section_style': u'Simple',
-		'server_code_error': u' ',
-		'show_in_menu': 0,
-		'version': 1
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'Budget Distribution',
-		'parentfield': u'fields',
-		'parenttype': u'DocType'
-	},
-
-	# These values are common for all DocPerm
-	{
-		'doctype': u'DocPerm',
-		'name': '__common__',
-		'parent': u'Budget Distribution',
-		'parentfield': u'permissions',
-		'parenttype': u'DocType',
-		'read': 1
-	},
-
-	# DocType, Budget Distribution
-	{
-		'doctype': 'DocType',
-		'name': u'Budget Distribution'
-	},
-
-	# DocPerm
-	{
-		'cancel': 1,
-		'create': 1,
-		'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'System Manager',
-		'write': 1
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm',
-		'permlevel': 1,
-		'role': u'System Manager',
-		'write': 1
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm',
-		'permlevel': 2,
-		'role': u'System Manager'
-	},
-
-	# DocPerm
-	{
-		'amend': 0,
-		'cancel': 1,
-		'create': 1,
-		'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'Accounts Manager',
-		'submit': 0,
-		'write': 1
-	},
-
-	# DocPerm
-	{
-		'amend': 0,
-		'cancel': 0,
-		'create': 0,
-		'doctype': u'DocPerm',
-		'permlevel': 1,
-		'role': u'Accounts Manager',
-		'submit': 0,
-		'write': 1
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm',
-		'permlevel': 2,
-		'role': u'Accounts Manager'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'description': u'Name of the Budget Distribution',
-		'doctype': u'DocField',
-		'fieldname': u'distribution_id',
-		'fieldtype': u'Data',
-		'label': u'Distribution Name',
-		'oldfieldname': u'distribution_id',
-		'oldfieldtype': u'Data',
-		'permlevel': 0,
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'fiscal_year',
-		'fieldtype': u'Select',
-		'in_filter': 1,
-		'label': u'Fiscal Year',
-		'oldfieldname': u'fiscal_year',
-		'oldfieldtype': u'Select',
-		'options': u'link:Fiscal Year',
-		'permlevel': 0,
-		'search_index': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'budget_distribution_details',
-		'fieldtype': u'Table',
-		'label': u'Budget Distribution Details',
-		'oldfieldname': u'budget_distribution_details',
-		'oldfieldtype': u'Table',
-		'options': u'Budget Distribution Detail',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'trash_reason',
-		'fieldtype': u'Small Text',
-		'label': u'Trash Reason',
-		'oldfieldname': u'trash_reason',
-		'oldfieldtype': u'Small Text',
-		'permlevel': 1
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-07-03 13:30:50", 
+  "modified_by": "Administrator", 
+  "modified": "2012-07-11 14:37:30"
+ }, 
+ {
+  "section_style": "Simple", 
+  "description": "**Budget Distribution** helps you distribute your budget across months if you have seasonality in your business.\n\nTo distribute a budget using this distribution, set this **Budget Distribution** in the **Cost Center**", 
+  "module": "Accounts", 
+  "allow_trash": 1, 
+  "server_code_error": " ", 
+  "autoname": "field:distribution_id", 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "doctype": "DocType", 
+  "show_in_menu": 0, 
+  "name_case": "Title Case", 
+  "version": 1
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Budget Distribution", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Budget Distribution", 
+  "read": 1, 
+  "doctype": "DocPerm", 
+  "parenttype": "DocType", 
+  "parentfield": "permissions"
+ }, 
+ {
+  "name": "Budget Distribution", 
+  "doctype": "DocType"
+ }, 
+ {
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "write": 1, 
+  "role": "System Manager", 
+  "cancel": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "write": 1, 
+  "role": "System Manager", 
+  "permlevel": 1, 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "role": "System Manager", 
+  "permlevel": 2, 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "amend": 0, 
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "submit": 0, 
+  "write": 1, 
+  "role": "Accounts Manager", 
+  "cancel": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "amend": 0, 
+  "create": 0, 
+  "doctype": "DocPerm", 
+  "submit": 0, 
+  "write": 1, 
+  "role": "Accounts Manager", 
+  "cancel": 0, 
+  "permlevel": 1
+ }, 
+ {
+  "role": "Accounts Manager", 
+  "permlevel": 2, 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "description": "Name of the Budget Distribution", 
+  "oldfieldtype": "Data", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Distribution Name", 
+  "oldfieldname": "distribution_id", 
+  "fieldname": "distribution_id", 
+  "fieldtype": "Data", 
+  "reqd": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "search_index": 1, 
+  "doctype": "DocField", 
+  "label": "Fiscal Year", 
+  "oldfieldname": "fiscal_year", 
+  "permlevel": 0, 
+  "fieldname": "fiscal_year", 
+  "fieldtype": "Select", 
+  "oldfieldtype": "Select", 
+  "options": "link:Fiscal Year", 
+  "in_filter": 1
+ }, 
+ {
+  "oldfieldtype": "Table", 
+  "doctype": "DocField", 
+  "label": "Budget Distribution Details", 
+  "oldfieldname": "budget_distribution_details", 
+  "permlevel": 0, 
+  "fieldname": "budget_distribution_details", 
+  "fieldtype": "Table", 
+  "options": "Budget Distribution Detail"
+ }, 
+ {
+  "oldfieldtype": "Small Text", 
+  "doctype": "DocField", 
+  "label": "Trash Reason", 
+  "oldfieldname": "trash_reason", 
+  "fieldname": "trash_reason", 
+  "fieldtype": "Small Text", 
+  "permlevel": 1
+ }
 ]
\ No newline at end of file
diff --git a/accounts/doctype/budget_distribution_detail/budget_distribution_detail.txt b/accounts/doctype/budget_distribution_detail/budget_distribution_detail.txt
index 0acfdbc..5c7d099 100644
--- a/accounts/doctype/budget_distribution_detail/budget_distribution_detail.txt
+++ b/accounts/doctype/budget_distribution_detail/budget_distribution_detail.txt
@@ -1,64 +1,51 @@
-# DocType, Budget Distribution Detail
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-07-03 13:30:47',
-		'docstatus': 0,
-		'modified': '2012-07-11 14:32:16',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'autoname': u'BDD/.#####',
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'istable': 1,
-		'module': u'Accounts',
-		'name': '__common__',
-		'section_style': u'Tray',
-		'server_code_error': u' ',
-		'show_in_menu': 0,
-		'version': 1
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'Budget Distribution Detail',
-		'parentfield': u'fields',
-		'parenttype': u'DocType'
-	},
-
-	# DocType, Budget Distribution Detail
-	{
-		'doctype': 'DocType',
-		'name': u'Budget Distribution Detail'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'month',
-		'fieldtype': u'Data',
-		'label': u'Month',
-		'oldfieldname': u'month',
-		'oldfieldtype': u'Data',
-		'permlevel': 2,
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'percentage_allocation',
-		'fieldtype': u'Currency',
-		'label': u'Percentage Allocation',
-		'oldfieldname': u'percentage_allocation',
-		'oldfieldtype': u'Currency',
-		'permlevel': 0
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-07-03 13:30:47", 
+  "modified_by": "Administrator", 
+  "modified": "2012-07-11 14:32:16"
+ }, 
+ {
+  "section_style": "Tray", 
+  "istable": 1, 
+  "module": "Accounts", 
+  "server_code_error": " ", 
+  "doctype": "DocType", 
+  "autoname": "BDD/.#####", 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "show_in_menu": 0, 
+  "version": 1
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Budget Distribution Detail", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "Budget Distribution Detail", 
+  "doctype": "DocType"
+ }, 
+ {
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Month", 
+  "oldfieldname": "month", 
+  "fieldname": "month", 
+  "fieldtype": "Data", 
+  "reqd": 1, 
+  "permlevel": 2
+ }, 
+ {
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Percentage Allocation", 
+  "oldfieldname": "percentage_allocation", 
+  "fieldname": "percentage_allocation", 
+  "fieldtype": "Currency", 
+  "permlevel": 0
+ }
 ]
\ No newline at end of file
diff --git a/accounts/doctype/c_form/c_form.txt b/accounts/doctype/c_form/c_form.txt
index b404204..7d5d130 100644
--- a/accounts/doctype/c_form/c_form.txt
+++ b/accounts/doctype/c_form/c_form.txt
@@ -1,229 +1,181 @@
-# DocType, C-Form
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2011-12-14 11:40:47',
-		'docstatus': 0,
-		'modified': '2012-04-06 17:29:50',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'_last_update': u'1333712835',
-		'allow_attach': 1,
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'max_attachments': 3,
-		'module': u'Accounts',
-		'name': '__common__',
-		'section_style': u'Simple',
-		'show_in_menu': 0,
-		'version': 19
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'C-Form',
-		'parentfield': u'fields',
-		'parenttype': u'DocType',
-		'permlevel': 0
-	},
-
-	# These values are common for all DocPerm
-	{
-		'doctype': u'DocPerm',
-		'name': '__common__',
-		'parent': u'C-Form',
-		'parentfield': u'permissions',
-		'parenttype': u'DocType',
-		'read': 1
-	},
-
-	# DocType, C-Form
-	{
-		'doctype': 'DocType',
-		'name': u'C-Form'
-	},
-
-	# DocPerm
-	{
-		'create': 1,
-		'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'Accounts User',
-		'write': 1
-	},
-
-	# DocPerm
-	{
-		'create': 1,
-		'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'Accounts Manager',
-		'submit': 0,
-		'write': 1
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm',
-		'permlevel': 1,
-		'role': u'All'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'column_break0',
-		'fieldtype': u'Column Break',
-		'permlevel': 0,
-		'width': u'50%'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'naming_series',
-		'fieldtype': u'Select',
-		'label': u'Series',
-		'options': u'\nC-FORM/',
-		'permlevel': 0,
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'c_form_no',
-		'fieldtype': u'Data',
-		'label': u'C-Form No',
-		'permlevel': 0,
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'received_date',
-		'fieldtype': u'Date',
-		'label': u'Received Date',
-		'permlevel': 0,
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'customer',
-		'fieldtype': u'Link',
-		'label': u'Customer',
-		'options': u'Customer',
-		'permlevel': 0,
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'column_break1',
-		'fieldtype': u'Column Break',
-		'permlevel': 0,
-		'width': u'50%'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'company',
-		'fieldtype': u'Select',
-		'label': u'Company',
-		'options': u'link:Company',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'fiscal_year',
-		'fieldtype': u'Select',
-		'label': u'Fiscal Year',
-		'options': u'link:Fiscal Year',
-		'permlevel': 0,
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'quarter',
-		'fieldtype': u'Select',
-		'label': u'Quarter',
-		'options': u'\nI\nII\nIII\nIV',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'total_amount',
-		'fieldtype': u'Currency',
-		'label': u'Total Amount',
-		'permlevel': 0,
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'state',
-		'fieldtype': u'Select',
-		'label': u'State',
-		'options': u"link:State\ncountry='India'",
-		'permlevel': 0,
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'section_break0',
-		'fieldtype': u'Section Break',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'invoice_details',
-		'fieldtype': u'Table',
-		'label': u'Invoice Details',
-		'options': u'C-Form Invoice Detail',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'total_invoiced_amount',
-		'fieldtype': u'Currency',
-		'label': u'Total Invoiced Amount',
-		'permlevel': 1,
-		'print_hide': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'file_list',
-		'fieldtype': u'Text',
-		'hidden': 1,
-		'label': u'File List',
-		'permlevel': 0,
-		'print_hide': 1
-	}
-]
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2011-12-14 11:40:47", 
+  "modified_by": "Administrator", 
+  "modified": "2012-04-06 17:29:50"
+ }, 
+ {
+  "section_style": "Simple", 
+  "allow_attach": 1, 
+  "module": "Accounts", 
+  "doctype": "DocType", 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "_last_update": "1333712835", 
+  "show_in_menu": 0, 
+  "max_attachments": 3, 
+  "version": 19
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "C-Form", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "C-Form", 
+  "read": 1, 
+  "doctype": "DocPerm", 
+  "parenttype": "DocType", 
+  "parentfield": "permissions"
+ }, 
+ {
+  "name": "C-Form", 
+  "doctype": "DocType"
+ }, 
+ {
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "write": 1, 
+  "role": "Accounts User", 
+  "permlevel": 0
+ }, 
+ {
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "submit": 0, 
+  "write": 1, 
+  "role": "Accounts Manager", 
+  "permlevel": 0
+ }, 
+ {
+  "role": "All", 
+  "permlevel": 1, 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "doctype": "DocField", 
+  "width": "50%", 
+  "fieldname": "column_break0", 
+  "fieldtype": "Column Break", 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Series", 
+  "permlevel": 0, 
+  "fieldname": "naming_series", 
+  "fieldtype": "Select", 
+  "reqd": 1, 
+  "options": "\nC-FORM/"
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "C-Form No", 
+  "fieldname": "c_form_no", 
+  "fieldtype": "Data", 
+  "reqd": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Received Date", 
+  "fieldname": "received_date", 
+  "fieldtype": "Date", 
+  "reqd": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Customer", 
+  "permlevel": 0, 
+  "fieldname": "customer", 
+  "fieldtype": "Link", 
+  "reqd": 1, 
+  "options": "Customer"
+ }, 
+ {
+  "doctype": "DocField", 
+  "width": "50%", 
+  "fieldname": "column_break1", 
+  "fieldtype": "Column Break", 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "permlevel": 0, 
+  "fieldname": "company", 
+  "fieldtype": "Select", 
+  "label": "Company", 
+  "options": "link:Company"
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Fiscal Year", 
+  "permlevel": 0, 
+  "fieldname": "fiscal_year", 
+  "fieldtype": "Select", 
+  "reqd": 1, 
+  "options": "link:Fiscal Year"
+ }, 
+ {
+  "doctype": "DocField", 
+  "permlevel": 0, 
+  "fieldname": "quarter", 
+  "fieldtype": "Select", 
+  "label": "Quarter", 
+  "options": "\nI\nII\nIII\nIV"
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Total Amount", 
+  "fieldname": "total_amount", 
+  "fieldtype": "Currency", 
+  "reqd": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "State", 
+  "permlevel": 0, 
+  "fieldname": "state", 
+  "fieldtype": "Select", 
+  "reqd": 1, 
+  "options": "link:State\ncountry='India'"
+ }, 
+ {
+  "doctype": "DocField", 
+  "fieldname": "section_break0", 
+  "fieldtype": "Section Break", 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "permlevel": 0, 
+  "fieldname": "invoice_details", 
+  "fieldtype": "Table", 
+  "label": "Invoice Details", 
+  "options": "C-Form Invoice Detail"
+ }, 
+ {
+  "print_hide": 0, 
+  "doctype": "DocField", 
+  "label": "Total Invoiced Amount", 
+  "fieldname": "total_invoiced_amount", 
+  "fieldtype": "Currency", 
+  "permlevel": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "doctype": "DocField", 
+  "label": "File List", 
+  "fieldname": "file_list", 
+  "fieldtype": "Text", 
+  "hidden": 1, 
+  "permlevel": 0
+ }
+]
\ No newline at end of file
diff --git a/accounts/doctype/c_form_invoice_detail/c_form_invoice_detail.txt b/accounts/doctype/c_form_invoice_detail/c_form_invoice_detail.txt
index 367d8c1..d61d32c 100644
--- a/accounts/doctype/c_form_invoice_detail/c_form_invoice_detail.txt
+++ b/accounts/doctype/c_form_invoice_detail/c_form_invoice_detail.txt
@@ -1,91 +1,72 @@
-# DocType, C-Form Invoice Detail
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:35:41',
-		'docstatus': 0,
-		'modified': '2012-03-27 14:35:41',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'istable': 1,
-		'module': u'Accounts',
-		'name': '__common__',
-		'section_style': u'Simple',
-		'show_in_menu': 0,
-		'version': 5
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'C-Form Invoice Detail',
-		'parentfield': u'fields',
-		'parenttype': u'DocType'
-	},
-
-	# DocType, C-Form Invoice Detail
-	{
-		'doctype': 'DocType',
-		'name': u'C-Form Invoice Detail'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'invoice_no',
-		'fieldtype': u'Link',
-		'label': u'Invoice No',
-		'options': u'Sales Invoice',
-		'permlevel': 0,
-		'width': u'160px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'invoice_date',
-		'fieldtype': u'Date',
-		'label': u'Invoice Date',
-		'permlevel': 1,
-		'width': u'120px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'territory',
-		'fieldtype': u'Link',
-		'label': u'Territory',
-		'options': u'Territory',
-		'permlevel': 1,
-		'width': u'120px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'net_total',
-		'fieldtype': u'Currency',
-		'label': u'Net Total',
-		'permlevel': 1,
-		'width': u'120px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'grand_total',
-		'fieldtype': u'Currency',
-		'label': u'Grand Total',
-		'permlevel': 1,
-		'width': u'120px'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-03-27 14:35:41", 
+  "modified_by": "Administrator", 
+  "modified": "2012-03-27 14:35:41"
+ }, 
+ {
+  "section_style": "Simple", 
+  "istable": 1, 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "module": "Accounts", 
+  "doctype": "DocType", 
+  "version": 5, 
+  "show_in_menu": 0
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "C-Form Invoice Detail", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "C-Form Invoice Detail", 
+  "doctype": "DocType"
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Invoice No", 
+  "width": "160px", 
+  "options": "Sales Invoice", 
+  "fieldname": "invoice_no", 
+  "fieldtype": "Link", 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Invoice Date", 
+  "width": "120px", 
+  "fieldname": "invoice_date", 
+  "fieldtype": "Date", 
+  "permlevel": 1
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Territory", 
+  "width": "120px", 
+  "options": "Territory", 
+  "fieldname": "territory", 
+  "fieldtype": "Link", 
+  "permlevel": 1
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Net Total", 
+  "width": "120px", 
+  "fieldname": "net_total", 
+  "fieldtype": "Currency", 
+  "permlevel": 1
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Grand Total", 
+  "width": "120px", 
+  "fieldname": "grand_total", 
+  "fieldtype": "Currency", 
+  "permlevel": 1
+ }
 ]
\ No newline at end of file
diff --git a/accounts/doctype/fiscal_year/fiscal_year.txt b/accounts/doctype/fiscal_year/fiscal_year.txt
index 23ccc85..c34f8a2 100644
--- a/accounts/doctype/fiscal_year/fiscal_year.txt
+++ b/accounts/doctype/fiscal_year/fiscal_year.txt
@@ -1,134 +1,109 @@
-# DocType, Fiscal Year
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-07-03 13:30:47',
-		'docstatus': 0,
-		'modified': '2012-07-11 14:56:41',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'_last_update': u'1322549700',
-		'allow_trash': 1,
-		'autoname': u'field:year',
-		'colour': u'White:FFF',
-		'description': u'**Fiscal Year** represents a Financial Year. All accounting entries and other major transactions are tracked against **Fiscal Year**.',
-		'doctype': 'DocType',
-		'document_type': u'Master',
-		'module': u'Accounts',
-		'name': '__common__',
-		'section_style': u'Tabbed',
-		'server_code_error': u' ',
-		'show_in_menu': 0,
-		'version': 1
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'Fiscal Year',
-		'parentfield': u'fields',
-		'parenttype': u'DocType'
-	},
-
-	# These values are common for all DocPerm
-	{
-		'cancel': 1,
-		'create': 1,
-		'doctype': u'DocPerm',
-		'name': '__common__',
-		'parent': u'Fiscal Year',
-		'parentfield': u'permissions',
-		'parenttype': u'DocType',
-		'permlevel': 0,
-		'read': 1,
-		'role': u'System Manager',
-		'write': 1
-	},
-
-	# DocType, Fiscal Year
-	{
-		'doctype': 'DocType',
-		'name': u'Fiscal Year'
-	},
-
-	# DocPerm
-	{
-		'amend': 0,
-		'doctype': u'DocPerm',
-		'submit': 0
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'year_details',
-		'fieldtype': u'Section Break',
-		'label': u'Fiscal Year Details',
-		'oldfieldtype': u'Section Break',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'trash_reason',
-		'fieldtype': u'Small Text',
-		'label': u'Trash Reason',
-		'oldfieldname': u'trash_reason',
-		'oldfieldtype': u'Small Text',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'description': u'For e.g. 2012, 2012-13',
-		'doctype': u'DocField',
-		'fieldname': u'year',
-		'fieldtype': u'Data',
-		'label': u'Year Name',
-		'oldfieldname': u'year',
-		'oldfieldtype': u'Data',
-		'permlevel': 0,
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'year_start_date',
-		'fieldtype': u'Date',
-		'label': u'Year Start Date',
-		'oldfieldname': u'year_start_date',
-		'oldfieldtype': u'Date',
-		'permlevel': 0,
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'default': u'No',
-		'description': u'Entries are not allowed against this Fiscal Year if the year is closed.',
-		'doctype': u'DocField',
-		'fieldname': u'is_fiscal_year_closed',
-		'fieldtype': u'Select',
-		'label': u'Year Closed',
-		'oldfieldname': u'is_fiscal_year_closed',
-		'oldfieldtype': u'Select',
-		'options': u'\nNo\nYes',
-		'permlevel': 0,
-		'reqd': 0
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-07-03 13:30:47", 
+  "modified_by": "Administrator", 
+  "modified": "2012-07-11 14:56:41"
+ }, 
+ {
+  "section_style": "Tabbed", 
+  "description": "**Fiscal Year** represents a Financial Year. All accounting entries and other major transactions are tracked against **Fiscal Year**.", 
+  "module": "Accounts", 
+  "doctype": "DocType", 
+  "allow_trash": 1, 
+  "server_code_error": " ", 
+  "document_type": "Master", 
+  "autoname": "field:year", 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "_last_update": "1322549700", 
+  "show_in_menu": 0, 
+  "version": 1
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Fiscal Year", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Fiscal Year", 
+  "read": 1, 
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "write": 1, 
+  "cancel": 1, 
+  "parenttype": "DocType", 
+  "role": "System Manager", 
+  "permlevel": 0, 
+  "parentfield": "permissions"
+ }, 
+ {
+  "name": "Fiscal Year", 
+  "doctype": "DocType"
+ }, 
+ {
+  "amend": 0, 
+  "doctype": "DocPerm", 
+  "submit": 0
+ }, 
+ {
+  "doctype": "DocPerm"
+ }, 
+ {
+  "oldfieldtype": "Section Break", 
+  "doctype": "DocField", 
+  "label": "Fiscal Year Details", 
+  "fieldname": "year_details", 
+  "fieldtype": "Section Break", 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Small Text", 
+  "doctype": "DocField", 
+  "label": "Trash Reason", 
+  "oldfieldname": "trash_reason", 
+  "fieldname": "trash_reason", 
+  "fieldtype": "Small Text", 
+  "permlevel": 1
+ }, 
+ {
+  "description": "For e.g. 2012, 2012-13", 
+  "oldfieldtype": "Data", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Year Name", 
+  "oldfieldname": "year", 
+  "fieldname": "year", 
+  "fieldtype": "Data", 
+  "reqd": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Date", 
+  "doctype": "DocField", 
+  "label": "Year Start Date", 
+  "oldfieldname": "year_start_date", 
+  "fieldname": "year_start_date", 
+  "fieldtype": "Date", 
+  "reqd": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "description": "Entries are not allowed against this Fiscal Year if the year is closed.", 
+  "default": "No", 
+  "oldfieldtype": "Select", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Year Closed", 
+  "oldfieldname": "is_fiscal_year_closed", 
+  "options": "\nNo\nYes", 
+  "fieldname": "is_fiscal_year_closed", 
+  "fieldtype": "Select", 
+  "reqd": 0, 
+  "permlevel": 0
+ }
 ]
\ No newline at end of file
diff --git a/accounts/doctype/gl_control/gl_control.txt b/accounts/doctype/gl_control/gl_control.txt
index d75ff16..7e0710c 100644
--- a/accounts/doctype/gl_control/gl_control.txt
+++ b/accounts/doctype/gl_control/gl_control.txt
@@ -1,31 +1,24 @@
-# DocType, GL Control
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:35:42',
-		'docstatus': 0,
-		'modified': '2012-03-27 14:35:42',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'issingle': 1,
-		'module': u'Accounts',
-		'name': '__common__',
-		'section_style': u'Simple',
-		'server_code_error': u' ',
-		'show_in_menu': 0,
-		'version': 288
-	},
-
-	# DocType, GL Control
-	{
-		'doctype': 'DocType',
-		'name': u'GL Control'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-03-27 14:35:42", 
+  "modified_by": "Administrator", 
+  "modified": "2012-03-27 14:35:42"
+ }, 
+ {
+  "section_style": "Simple", 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "module": "Accounts", 
+  "show_in_menu": 0, 
+  "version": 288, 
+  "server_code_error": " ", 
+  "doctype": "DocType", 
+  "issingle": 1
+ }, 
+ {
+  "name": "GL Control", 
+  "doctype": "DocType"
+ }
 ]
\ No newline at end of file
diff --git a/accounts/doctype/gl_entry/gl_entry.txt b/accounts/doctype/gl_entry/gl_entry.txt
index 9c8b5dd..76fc101 100644
--- a/accounts/doctype/gl_entry/gl_entry.txt
+++ b/accounts/doctype/gl_entry/gl_entry.txt
@@ -1,302 +1,249 @@
-# DocType, GL Entry
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:35:42',
-		'docstatus': 0,
-		'modified': '2012-03-27 14:35:42',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'_last_update': u'1319016431',
-		'autoname': u'GL.#######',
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'in_create': 1,
-		'module': u'Accounts',
-		'name': '__common__',
-		'search_fields': u'voucher_no,account,posting_date,against_voucher',
-		'section_style': u'Simple',
-		'server_code_error': u' ',
-		'show_in_menu': 0,
-		'version': 103
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'GL Entry',
-		'parentfield': u'fields',
-		'parenttype': u'DocType',
-		'permlevel': 0
-	},
-
-	# These values are common for all DocPerm
-	{
-		'create': 0,
-		'doctype': u'DocPerm',
-		'name': '__common__',
-		'parent': u'GL Entry',
-		'parentfield': u'permissions',
-		'parenttype': u'DocType',
-		'read': 1,
-		'write': 0
-	},
-
-	# DocType, GL Entry
-	{
-		'doctype': 'DocType',
-		'name': u'GL Entry'
-	},
-
-	# DocPerm
-	{
-		'amend': 0,
-		'cancel': 0,
-		'doctype': u'DocPerm',
-		'role': u'Accounts User',
-		'submit': 0
-	},
-
-	# DocPerm
-	{
-		'amend': 0,
-		'cancel': 0,
-		'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'Accounts Manager',
-		'submit': 0
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'System Manager'
-	},
-
-	# DocField
-	{
-		'description': u'The date at which current entry will get or has actually executed.',
-		'doctype': u'DocField',
-		'fieldname': u'posting_date',
-		'fieldtype': u'Date',
-		'in_filter': 1,
-		'label': u'Posting Date',
-		'oldfieldname': u'posting_date',
-		'oldfieldtype': u'Date',
-		'search_index': 1
-	},
-
-	# DocField
-	{
-		'description': u'The date at which current entry is made in system.',
-		'doctype': u'DocField',
-		'fieldname': u'transaction_date',
-		'fieldtype': u'Date',
-		'label': u'Transaction Date',
-		'oldfieldname': u'transaction_date',
-		'oldfieldtype': u'Date'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'aging_date',
-		'fieldtype': u'Date',
-		'in_filter': 1,
-		'label': u'Aging Date',
-		'oldfieldname': u'aging_date',
-		'oldfieldtype': u'Date',
-		'search_index': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'account',
-		'fieldtype': u'Link',
-		'in_filter': 1,
-		'label': u'Account',
-		'oldfieldname': u'account',
-		'oldfieldtype': u'Link',
-		'options': u'Account',
-		'search_index': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'cost_center',
-		'fieldtype': u'Link',
-		'in_filter': 1,
-		'label': u'Cost Center',
-		'oldfieldname': u'cost_center',
-		'oldfieldtype': u'Link',
-		'options': u'Cost Center',
-		'search_index': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'debit',
-		'fieldtype': u'Currency',
-		'label': u'Debit Amt',
-		'oldfieldname': u'debit',
-		'oldfieldtype': u'Currency'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'credit',
-		'fieldtype': u'Currency',
-		'label': u'Credit Amt',
-		'oldfieldname': u'credit',
-		'oldfieldtype': u'Currency'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'against',
-		'fieldtype': u'Text',
-		'in_filter': 1,
-		'label': u'Against',
-		'oldfieldname': u'against',
-		'oldfieldtype': u'Text'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'against_voucher',
-		'fieldtype': u'Data',
-		'in_filter': 1,
-		'label': u'Against Voucher',
-		'oldfieldname': u'against_voucher',
-		'oldfieldtype': u'Data',
-		'search_index': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'against_voucher_type',
-		'fieldtype': u'Data',
-		'in_filter': 0,
-		'label': u'Against Voucher Type',
-		'oldfieldname': u'against_voucher_type',
-		'oldfieldtype': u'Data',
-		'search_index': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'voucher_type',
-		'fieldtype': u'Select',
-		'in_filter': 1,
-		'label': u'Voucher Type',
-		'oldfieldname': u'voucher_type',
-		'oldfieldtype': u'Select',
-		'options': u'Journal Voucher\nSales Invoice\nPurchase Invoice',
-		'search_index': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'voucher_no',
-		'fieldtype': u'Data',
-		'in_filter': 1,
-		'label': u'Voucher No',
-		'oldfieldname': u'voucher_no',
-		'oldfieldtype': u'Data',
-		'search_index': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'remarks',
-		'fieldtype': u'Text',
-		'in_filter': 1,
-		'label': u'Remarks',
-		'no_copy': 1,
-		'oldfieldname': u'remarks',
-		'oldfieldtype': u'Text',
-		'search_index': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'is_cancelled',
-		'fieldtype': u'Select',
-		'in_filter': 1,
-		'label': u'Is Cancelled',
-		'oldfieldname': u'is_cancelled',
-		'oldfieldtype': u'Select',
-		'options': u'No\nYes',
-		'search_index': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'is_opening',
-		'fieldtype': u'Select',
-		'in_filter': 1,
-		'label': u'Is Opening',
-		'oldfieldname': u'is_opening',
-		'oldfieldtype': u'Select',
-		'options': u'No\nYes',
-		'search_index': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'is_advance',
-		'fieldtype': u'Select',
-		'in_filter': 0,
-		'label': u'Is Advance',
-		'oldfieldname': u'is_advance',
-		'oldfieldtype': u'Select',
-		'options': u'No\nYes',
-		'search_index': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'fiscal_year',
-		'fieldtype': u'Select',
-		'in_filter': 1,
-		'label': u'Fiscal Year',
-		'oldfieldname': u'fiscal_year',
-		'oldfieldtype': u'Select',
-		'options': u'link:Fiscal Year',
-		'search_index': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'company',
-		'fieldtype': u'Link',
-		'in_filter': 1,
-		'label': u'Company',
-		'oldfieldname': u'company',
-		'oldfieldtype': u'Link',
-		'options': u'Company',
-		'search_index': 0
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-03-27 14:35:42", 
+  "modified_by": "Administrator", 
+  "modified": "2012-03-27 14:35:42"
+ }, 
+ {
+  "section_style": "Simple", 
+  "in_create": 1, 
+  "search_fields": "voucher_no,account,posting_date,against_voucher", 
+  "module": "Accounts", 
+  "doctype": "DocType", 
+  "server_code_error": " ", 
+  "autoname": "GL.#######", 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "_last_update": "1319016431", 
+  "show_in_menu": 0, 
+  "version": 103
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "GL Entry", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "permlevel": 0, 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "GL Entry", 
+  "read": 1, 
+  "create": 0, 
+  "doctype": "DocPerm", 
+  "write": 0, 
+  "parenttype": "DocType", 
+  "parentfield": "permissions"
+ }, 
+ {
+  "name": "GL Entry", 
+  "doctype": "DocType"
+ }, 
+ {
+  "amend": 0, 
+  "cancel": 0, 
+  "role": "Accounts User", 
+  "doctype": "DocPerm", 
+  "submit": 0
+ }, 
+ {
+  "amend": 0, 
+  "doctype": "DocPerm", 
+  "submit": 0, 
+  "role": "Accounts Manager", 
+  "cancel": 0, 
+  "permlevel": 0
+ }, 
+ {
+  "role": "System Manager", 
+  "permlevel": 0, 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "description": "The date at which current entry will get or has actually executed.", 
+  "search_index": 1, 
+  "doctype": "DocField", 
+  "label": "Posting Date", 
+  "oldfieldname": "posting_date", 
+  "fieldname": "posting_date", 
+  "fieldtype": "Date", 
+  "oldfieldtype": "Date", 
+  "in_filter": 1
+ }, 
+ {
+  "description": "The date at which current entry is made in system.", 
+  "oldfieldtype": "Date", 
+  "doctype": "DocField", 
+  "label": "Transaction Date", 
+  "oldfieldname": "transaction_date", 
+  "fieldname": "transaction_date", 
+  "fieldtype": "Date"
+ }, 
+ {
+  "search_index": 0, 
+  "doctype": "DocField", 
+  "label": "Aging Date", 
+  "oldfieldname": "aging_date", 
+  "fieldname": "aging_date", 
+  "fieldtype": "Date", 
+  "oldfieldtype": "Date", 
+  "in_filter": 1
+ }, 
+ {
+  "search_index": 1, 
+  "doctype": "DocField", 
+  "label": "Account", 
+  "oldfieldname": "account", 
+  "fieldname": "account", 
+  "fieldtype": "Link", 
+  "oldfieldtype": "Link", 
+  "options": "Account", 
+  "in_filter": 1
+ }, 
+ {
+  "search_index": 0, 
+  "doctype": "DocField", 
+  "label": "Cost Center", 
+  "oldfieldname": "cost_center", 
+  "fieldname": "cost_center", 
+  "fieldtype": "Link", 
+  "oldfieldtype": "Link", 
+  "options": "Cost Center", 
+  "in_filter": 1
+ }, 
+ {
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Debit Amt", 
+  "oldfieldname": "debit", 
+  "fieldname": "debit", 
+  "fieldtype": "Currency"
+ }, 
+ {
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Credit Amt", 
+  "oldfieldname": "credit", 
+  "fieldname": "credit", 
+  "fieldtype": "Currency"
+ }, 
+ {
+  "oldfieldtype": "Text", 
+  "doctype": "DocField", 
+  "label": "Against", 
+  "oldfieldname": "against", 
+  "fieldname": "against", 
+  "fieldtype": "Text", 
+  "in_filter": 1
+ }, 
+ {
+  "search_index": 0, 
+  "doctype": "DocField", 
+  "label": "Against Voucher", 
+  "oldfieldname": "against_voucher", 
+  "fieldname": "against_voucher", 
+  "fieldtype": "Data", 
+  "oldfieldtype": "Data", 
+  "in_filter": 1
+ }, 
+ {
+  "search_index": 0, 
+  "doctype": "DocField", 
+  "label": "Against Voucher Type", 
+  "oldfieldname": "against_voucher_type", 
+  "fieldname": "against_voucher_type", 
+  "fieldtype": "Data", 
+  "oldfieldtype": "Data", 
+  "in_filter": 0
+ }, 
+ {
+  "search_index": 0, 
+  "doctype": "DocField", 
+  "label": "Voucher Type", 
+  "oldfieldname": "voucher_type", 
+  "fieldname": "voucher_type", 
+  "fieldtype": "Select", 
+  "oldfieldtype": "Select", 
+  "options": "Journal Voucher\nSales Invoice\nPurchase Invoice", 
+  "in_filter": 1
+ }, 
+ {
+  "search_index": 1, 
+  "doctype": "DocField", 
+  "label": "Voucher No", 
+  "oldfieldname": "voucher_no", 
+  "fieldname": "voucher_no", 
+  "fieldtype": "Data", 
+  "oldfieldtype": "Data", 
+  "in_filter": 1
+ }, 
+ {
+  "no_copy": 1, 
+  "search_index": 0, 
+  "doctype": "DocField", 
+  "label": "Remarks", 
+  "oldfieldname": "remarks", 
+  "fieldname": "remarks", 
+  "fieldtype": "Text", 
+  "oldfieldtype": "Text", 
+  "in_filter": 1
+ }, 
+ {
+  "search_index": 0, 
+  "doctype": "DocField", 
+  "label": "Is Cancelled", 
+  "oldfieldname": "is_cancelled", 
+  "fieldname": "is_cancelled", 
+  "fieldtype": "Select", 
+  "oldfieldtype": "Select", 
+  "options": "No\nYes", 
+  "in_filter": 1
+ }, 
+ {
+  "search_index": 0, 
+  "doctype": "DocField", 
+  "label": "Is Opening", 
+  "oldfieldname": "is_opening", 
+  "fieldname": "is_opening", 
+  "fieldtype": "Select", 
+  "oldfieldtype": "Select", 
+  "options": "No\nYes", 
+  "in_filter": 1
+ }, 
+ {
+  "search_index": 0, 
+  "doctype": "DocField", 
+  "label": "Is Advance", 
+  "oldfieldname": "is_advance", 
+  "fieldname": "is_advance", 
+  "fieldtype": "Select", 
+  "oldfieldtype": "Select", 
+  "options": "No\nYes", 
+  "in_filter": 0
+ }, 
+ {
+  "search_index": 0, 
+  "doctype": "DocField", 
+  "label": "Fiscal Year", 
+  "oldfieldname": "fiscal_year", 
+  "fieldname": "fiscal_year", 
+  "fieldtype": "Select", 
+  "oldfieldtype": "Select", 
+  "options": "link:Fiscal Year", 
+  "in_filter": 1
+ }, 
+ {
+  "search_index": 0, 
+  "doctype": "DocField", 
+  "label": "Company", 
+  "oldfieldname": "company", 
+  "fieldname": "company", 
+  "fieldtype": "Link", 
+  "oldfieldtype": "Link", 
+  "options": "Company", 
+  "in_filter": 1
+ }
 ]
\ No newline at end of file
diff --git a/accounts/doctype/journal_voucher_detail/journal_voucher_detail.txt b/accounts/doctype/journal_voucher_detail/journal_voucher_detail.txt
index 972c125..7bf9e36 100644
--- a/accounts/doctype/journal_voucher_detail/journal_voucher_detail.txt
+++ b/accounts/doctype/journal_voucher_detail/journal_voucher_detail.txt
@@ -1,187 +1,158 @@
-# DocType, Journal Voucher Detail
 [
-
-	# These values are common in all dictionaries
-	{
-		u'creation': '2012-05-03 18:41:39',
-		u'docstatus': 0,
-		u'modified': '2012-10-02 16:47:37',
-		u'modified_by': u'Administrator',
-		u'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'autoname': u'JVD.######',
-		'colour': u'White:FFF',
-		u'doctype': u'DocType',
-		'istable': 1,
-		'module': u'Accounts',
-		u'name': u'__common__',
-		'section_style': u'Tray',
-		'server_code_error': u' ',
-		'show_in_menu': 0,
-		'version': 1
-	},
-
-	# These values are common for all DocField
-	{
-		u'doctype': u'DocField',
-		u'name': u'__common__',
-		'parent': u'Journal Voucher Detail',
-		'parentfield': u'fields',
-		'parenttype': u'DocType'
-	},
-
-	# DocType, Journal Voucher Detail
-	{
-		u'doctype': u'DocType',
-		u'name': u'Journal Voucher Detail'
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'account',
-		'fieldtype': u'Link',
-		'in_filter': 1,
-		'label': u'Account',
-		'oldfieldname': u'account',
-		'oldfieldtype': u'Link',
-		'options': u'Account',
-		'permlevel': 0,
-		'reqd': 1,
-		'search_index': 1,
-		'trigger': u'Client',
-		'width': u'250px'
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'debit',
-		'fieldtype': u'Currency',
-		'label': u'Debit',
-		'oldfieldname': u'debit',
-		'oldfieldtype': u'Currency',
-		'permlevel': 0,
-		'trigger': u'Client'
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'credit',
-		'fieldtype': u'Currency',
-		'label': u'Credit',
-		'oldfieldname': u'credit',
-		'oldfieldtype': u'Currency',
-		'permlevel': 0,
-		'trigger': u'Client'
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'cost_center',
-		'fieldtype': u'Link',
-		'in_filter': 1,
-		'label': u'Cost Center',
-		'oldfieldname': u'cost_center',
-		'oldfieldtype': u'Link',
-		'options': u'Cost Center',
-		'permlevel': 0,
-		'search_index': 0,
-		'width': u'180px'
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'balance',
-		'fieldtype': u'Data',
-		'label': u'Account Balance',
-		'no_copy': 1,
-		'oldfieldname': u'balance',
-		'oldfieldtype': u'Data',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'against_voucher',
-		'fieldtype': u'Link',
-		'in_filter': 1,
-		'label': u'Against Purchase Invoice',
-		'no_copy': 1,
-		'oldfieldname': u'against_voucher',
-		'oldfieldtype': u'Link',
-		'options': u'Purchase Invoice',
-		'permlevel': 0,
-		'print_hide': 0,
-		'search_index': 1,
-		'trigger': u'Client'
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'against_invoice',
-		'fieldtype': u'Link',
-		'in_filter': 1,
-		'label': u'Against Sales Invoice',
-		'no_copy': 1,
-		'oldfieldname': u'against_invoice',
-		'oldfieldtype': u'Link',
-		'options': u'Sales Invoice',
-		'permlevel': 0,
-		'print_hide': 0,
-		'search_index': 1,
-		'trigger': u'Client'
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'against_jv',
-		'fieldtype': u'Link',
-		'in_filter': 1,
-		'label': u'Against Journal Voucher',
-		'no_copy': 1,
-		'oldfieldname': u'against_jv',
-		'oldfieldtype': u'Link',
-		'options': u'Journal Voucher',
-		'permlevel': 0,
-		'print_hide': 0,
-		'search_index': 1
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'is_advance',
-		'fieldtype': u'Select',
-		'label': u'Is Advance',
-		'no_copy': 1,
-		'oldfieldname': u'is_advance',
-		'oldfieldtype': u'Select',
-		'options': u'No\nYes',
-		'permlevel': 0,
-		'print_hide': 1
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'against_account',
-		'fieldtype': u'Text',
-		'hidden': 1,
-		'label': u'Against Account',
-		'no_copy': 1,
-		'oldfieldname': u'against_account',
-		'oldfieldtype': u'Text',
-		'permlevel': 0,
-		'print_hide': 1
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-05-03 18:41:39", 
+  "modified_by": "Administrator", 
+  "modified": "2012-10-02 16:47:37"
+ }, 
+ {
+  "section_style": "Tray", 
+  "istable": 1, 
+  "module": "Accounts", 
+  "server_code_error": " ", 
+  "doctype": "DocType", 
+  "autoname": "JVD.######", 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "show_in_menu": 0, 
+  "version": 1
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Journal Voucher Detail", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "Journal Voucher Detail", 
+  "doctype": "DocType"
+ }, 
+ {
+  "permlevel": 0, 
+  "oldfieldtype": "Link", 
+  "doctype": "DocField", 
+  "label": "Account", 
+  "oldfieldname": "account", 
+  "width": "250px", 
+  "trigger": "Client", 
+  "fieldname": "account", 
+  "fieldtype": "Link", 
+  "search_index": 1, 
+  "reqd": 1, 
+  "options": "Account", 
+  "in_filter": 1
+ }, 
+ {
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Debit", 
+  "oldfieldname": "debit", 
+  "trigger": "Client", 
+  "fieldname": "debit", 
+  "fieldtype": "Currency", 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Credit", 
+  "oldfieldname": "credit", 
+  "trigger": "Client", 
+  "fieldname": "credit", 
+  "fieldtype": "Currency", 
+  "permlevel": 0
+ }, 
+ {
+  "search_index": 0, 
+  "doctype": "DocField", 
+  "label": "Cost Center", 
+  "oldfieldname": "cost_center", 
+  "width": "180px", 
+  "options": "Cost Center", 
+  "fieldname": "cost_center", 
+  "fieldtype": "Link", 
+  "oldfieldtype": "Link", 
+  "permlevel": 0, 
+  "in_filter": 1
+ }, 
+ {
+  "no_copy": 1, 
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Account Balance", 
+  "oldfieldname": "balance", 
+  "fieldname": "balance", 
+  "fieldtype": "Data", 
+  "permlevel": 1
+ }, 
+ {
+  "print_hide": 0, 
+  "no_copy": 1, 
+  "oldfieldtype": "Link", 
+  "doctype": "DocField", 
+  "label": "Against Purchase Invoice", 
+  "oldfieldname": "against_voucher", 
+  "permlevel": 0, 
+  "trigger": "Client", 
+  "fieldname": "against_voucher", 
+  "fieldtype": "Link", 
+  "search_index": 1, 
+  "options": "Purchase Invoice", 
+  "in_filter": 1
+ }, 
+ {
+  "print_hide": 0, 
+  "no_copy": 1, 
+  "oldfieldtype": "Link", 
+  "doctype": "DocField", 
+  "label": "Against Sales Invoice", 
+  "oldfieldname": "against_invoice", 
+  "permlevel": 0, 
+  "trigger": "Client", 
+  "fieldname": "against_invoice", 
+  "fieldtype": "Link", 
+  "search_index": 1, 
+  "options": "Sales Invoice", 
+  "in_filter": 1
+ }, 
+ {
+  "print_hide": 0, 
+  "no_copy": 1, 
+  "oldfieldtype": "Link", 
+  "doctype": "DocField", 
+  "label": "Against Journal Voucher", 
+  "oldfieldname": "against_jv", 
+  "options": "Journal Voucher", 
+  "fieldname": "against_jv", 
+  "fieldtype": "Link", 
+  "search_index": 1, 
+  "permlevel": 0, 
+  "in_filter": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "no_copy": 1, 
+  "oldfieldtype": "Select", 
+  "doctype": "DocField", 
+  "label": "Is Advance", 
+  "oldfieldname": "is_advance", 
+  "permlevel": 0, 
+  "fieldname": "is_advance", 
+  "fieldtype": "Select", 
+  "options": "No\nYes"
+ }, 
+ {
+  "print_hide": 1, 
+  "no_copy": 1, 
+  "oldfieldtype": "Text", 
+  "doctype": "DocField", 
+  "label": "Against Account", 
+  "oldfieldname": "against_account", 
+  "fieldname": "against_account", 
+  "fieldtype": "Text", 
+  "hidden": 1, 
+  "permlevel": 0
+ }
 ]
\ No newline at end of file
diff --git a/accounts/doctype/mis_control/mis_control.txt b/accounts/doctype/mis_control/mis_control.txt
index ebfca08..1936fb6 100644
--- a/accounts/doctype/mis_control/mis_control.txt
+++ b/accounts/doctype/mis_control/mis_control.txt
@@ -1,31 +1,24 @@
-# DocType, MIS Control
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:35:49',
-		'docstatus': 0,
-		'modified': '2012-03-27 14:35:49',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'issingle': 1,
-		'module': u'Accounts',
-		'name': '__common__',
-		'section_style': u'Simple',
-		'server_code_error': u' ',
-		'show_in_menu': 0,
-		'version': 120
-	},
-
-	# DocType, MIS Control
-	{
-		'doctype': 'DocType',
-		'name': u'MIS Control'
-	}
-]
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-03-27 14:35:49", 
+  "modified_by": "Administrator", 
+  "modified": "2012-03-27 14:35:49"
+ }, 
+ {
+  "section_style": "Simple", 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "module": "Accounts", 
+  "show_in_menu": 0, 
+  "version": 120, 
+  "server_code_error": " ", 
+  "doctype": "DocType", 
+  "issingle": 1
+ }, 
+ {
+  "name": "MIS Control", 
+  "doctype": "DocType"
+ }
+]
\ No newline at end of file
diff --git a/accounts/doctype/multi_ledger_report_detail/multi_ledger_report_detail.txt b/accounts/doctype/multi_ledger_report_detail/multi_ledger_report_detail.txt
index 20d618b..aee2b90 100755
--- a/accounts/doctype/multi_ledger_report_detail/multi_ledger_report_detail.txt
+++ b/accounts/doctype/multi_ledger_report_detail/multi_ledger_report_detail.txt
@@ -1,51 +1,40 @@
-# DocType, Multi Ledger Report Detail
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:35:44',
-		'docstatus': 0,
-		'modified': '2012-03-27 14:35:44',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'istable': 1,
-		'module': u'Accounts',
-		'name': '__common__',
-		'section_style': u'Simple',
-		'show_in_menu': 0,
-		'version': 3
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'account',
-		'fieldtype': u'Link',
-		'label': u'Account',
-		'name': '__common__',
-		'options': u'Account',
-		'parent': u'Multi Ledger Report Detail',
-		'parentfield': u'fields',
-		'parenttype': u'DocType',
-		'permlevel': 0,
-		'reqd': 1,
-		'width': u'300px'
-	},
-
-	# DocType, Multi Ledger Report Detail
-	{
-		'doctype': 'DocType',
-		'name': u'Multi Ledger Report Detail'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-03-27 14:35:44", 
+  "modified_by": "Administrator", 
+  "modified": "2012-03-27 14:35:44"
+ }, 
+ {
+  "section_style": "Simple", 
+  "istable": 1, 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "module": "Accounts", 
+  "doctype": "DocType", 
+  "version": 3, 
+  "show_in_menu": 0
+ }, 
+ {
+  "parent": "Multi Ledger Report Detail", 
+  "reqd": 1, 
+  "name": "__common__", 
+  "doctype": "DocField", 
+  "label": "Account", 
+  "width": "300px", 
+  "parenttype": "DocType", 
+  "options": "Account", 
+  "fieldname": "account", 
+  "fieldtype": "Link", 
+  "permlevel": 0, 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "Multi Ledger Report Detail", 
+  "doctype": "DocType"
+ }, 
+ {
+  "doctype": "DocField"
+ }
 ]
\ No newline at end of file
diff --git a/accounts/doctype/payment_to_invoice_matching_tool/payment_to_invoice_matching_tool.txt b/accounts/doctype/payment_to_invoice_matching_tool/payment_to_invoice_matching_tool.txt
index 3887743..4ae813a 100644
--- a/accounts/doctype/payment_to_invoice_matching_tool/payment_to_invoice_matching_tool.txt
+++ b/accounts/doctype/payment_to_invoice_matching_tool/payment_to_invoice_matching_tool.txt
@@ -1,274 +1,217 @@
-# DocType, Payment to Invoice Matching Tool
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:35:42',
-		'docstatus': 0,
-		'modified': '2012-03-27 14:35:42',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'_last_update': u'1316509358',
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'document_type': u'Other',
-		'issingle': 1,
-		'module': u'Accounts',
-		'name': '__common__',
-		'section_style': u'Simple',
-		'show_in_menu': 1,
-		'version': 37
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'Payment to Invoice Matching Tool',
-		'parentfield': u'fields',
-		'parenttype': u'DocType'
-	},
-
-	# These values are common for all DocPerm
-	{
-		'doctype': u'DocPerm',
-		'name': '__common__',
-		'parent': u'Payment to Invoice Matching Tool',
-		'parentfield': u'permissions',
-		'parenttype': u'DocType',
-		'read': 1
-	},
-
-	# DocType, Payment to Invoice Matching Tool
-	{
-		'doctype': 'DocType',
-		'name': u'Payment to Invoice Matching Tool'
-	},
-
-	# DocPerm
-	{
-		'create': 1,
-		'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'System Manager',
-		'write': 1
-	},
-
-	# DocPerm
-	{
-		'create': 1,
-		'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'Accounts Manager',
-		'write': 1
-	},
-
-	# DocPerm
-	{
-		'create': 1,
-		'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'Accounts User',
-		'write': 1
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm',
-		'permlevel': 1,
-		'role': u'All'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'doctype': u'DocField',
-		'fieldname': u'column_break0',
-		'fieldtype': u'Column Break',
-		'permlevel': 0,
-		'width': u'50%'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'account',
-		'fieldtype': u'Link',
-		'label': u'Account',
-		'options': u'Account',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'voucher_type',
-		'fieldtype': u'Select',
-		'label': u'Voucher Type',
-		'options': u'Sales Invoice\nPurchase Invoice\nJournal Voucher',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'doctype': u'DocField',
-		'fieldname': u'voucher_no',
-		'fieldtype': u'Link',
-		'label': u'Voucher No',
-		'permlevel': 0,
-		'trigger': u'Client'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'column_break1',
-		'fieldtype': u'Column Break',
-		'permlevel': 0,
-		'width': u'50%'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'total_amount',
-		'fieldtype': u'Currency',
-		'label': u'Total Amount',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'pending_amt_to_reconcile',
-		'fieldtype': u'Currency',
-		'label': u'Pending Amt To Reconcile',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'doctype': u'DocField',
-		'fieldname': u'payment_entries',
-		'fieldtype': u'Section Break',
-		'label': u'Payment Entries',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'doctype': u'DocField',
-		'fieldname': u'column_break2',
-		'fieldtype': u'Column Break',
-		'label': u"<div class = 'field_description'>Filter payment entries based on date:</div>",
-		'permlevel': 0,
-		'width': u'50%'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'from_date',
-		'fieldtype': u'Date',
-		'label': u'From Date',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'to_date',
-		'fieldtype': u'Date',
-		'label': u'To Date',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'doctype': u'DocField',
-		'fieldname': u'column_break3',
-		'fieldtype': u'Column Break',
-		'label': u"<div class = 'field_description'>Filter payment entries based on amount:</div>",
-		'permlevel': 0,
-		'width': u'50%'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'doctype': u'DocField',
-		'fieldname': u'amt_greater_than',
-		'fieldtype': u'Data',
-		'label': u'Amount >=',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'amt_less_than',
-		'fieldtype': u'Data',
-		'label': u'Amount <=',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'section_break0',
-		'fieldtype': u'Section Break',
-		'options': u'Simple',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'pull_payment_entries',
-		'fieldtype': u'Button',
-		'label': u'Pull Payment Entries',
-		'options': u'get_payment_entries',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'ir_payment_details',
-		'fieldtype': u'Table',
-		'label': u'Payment Entries',
-		'options': u'Payment to Invoice Matching Tool Detail',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'doctype': u'DocField',
-		'fieldname': u'reconcile_html',
-		'fieldtype': u'HTML',
-		'label': u'Reconcile HTML',
-		'options': u"<div class='field_description'>Select Payment Voucher and Amount to Reconcile in the above table and then click Reconcile button</div>",
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'doctype': u'DocField',
-		'fieldname': u'reconcile',
-		'fieldtype': u'Button',
-		'label': u'Reconcile',
-		'options': u'reconcile',
-		'permlevel': 0,
-		'trigger': u'Client'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-03-27 14:35:42", 
+  "modified_by": "Administrator", 
+  "modified": "2012-03-27 14:35:42"
+ }, 
+ {
+  "section_style": "Simple", 
+  "module": "Accounts", 
+  "doctype": "DocType", 
+  "issingle": 1, 
+  "document_type": "Other", 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "_last_update": "1316509358", 
+  "show_in_menu": 1, 
+  "version": 37
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Payment to Invoice Matching Tool", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Payment to Invoice Matching Tool", 
+  "read": 1, 
+  "doctype": "DocPerm", 
+  "parenttype": "DocType", 
+  "parentfield": "permissions"
+ }, 
+ {
+  "name": "Payment to Invoice Matching Tool", 
+  "doctype": "DocType"
+ }, 
+ {
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "write": 1, 
+  "role": "System Manager", 
+  "permlevel": 0
+ }, 
+ {
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "write": 1, 
+  "role": "Accounts Manager", 
+  "permlevel": 0
+ }, 
+ {
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "write": 1, 
+  "role": "Accounts User", 
+  "permlevel": 0
+ }, 
+ {
+  "role": "All", 
+  "permlevel": 1, 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "width": "50%", 
+  "fieldname": "column_break0", 
+  "fieldtype": "Column Break", 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "options": "Account", 
+  "fieldname": "account", 
+  "fieldtype": "Link", 
+  "label": "Account", 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "options": "Sales Invoice\nPurchase Invoice\nJournal Voucher", 
+  "fieldname": "voucher_type", 
+  "fieldtype": "Select", 
+  "label": "Voucher Type", 
+  "permlevel": 0
+ }, 
+ {
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Voucher No", 
+  "trigger": "Client", 
+  "fieldname": "voucher_no", 
+  "fieldtype": "Link", 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "width": "50%", 
+  "fieldname": "column_break1", 
+  "fieldtype": "Column Break", 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Total Amount", 
+  "fieldname": "total_amount", 
+  "fieldtype": "Currency", 
+  "permlevel": 1
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Pending Amt To Reconcile", 
+  "fieldname": "pending_amt_to_reconcile", 
+  "fieldtype": "Currency", 
+  "permlevel": 1
+ }, 
+ {
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Payment Entries", 
+  "fieldname": "payment_entries", 
+  "fieldtype": "Section Break", 
+  "permlevel": 0
+ }, 
+ {
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "<div class = 'field_description'>Filter payment entries based on date:</div>", 
+  "width": "50%", 
+  "fieldname": "column_break2", 
+  "fieldtype": "Column Break", 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "From Date", 
+  "fieldname": "from_date", 
+  "fieldtype": "Date", 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "To Date", 
+  "fieldname": "to_date", 
+  "fieldtype": "Date", 
+  "permlevel": 0
+ }, 
+ {
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "<div class = 'field_description'>Filter payment entries based on amount:</div>", 
+  "width": "50%", 
+  "fieldname": "column_break3", 
+  "fieldtype": "Column Break", 
+  "permlevel": 0
+ }, 
+ {
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Amount >=", 
+  "fieldname": "amt_greater_than", 
+  "fieldtype": "Data", 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Amount <=", 
+  "fieldname": "amt_less_than", 
+  "fieldtype": "Data", 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "permlevel": 0, 
+  "fieldname": "section_break0", 
+  "fieldtype": "Section Break", 
+  "options": "Simple"
+ }, 
+ {
+  "doctype": "DocField", 
+  "options": "get_payment_entries", 
+  "fieldname": "pull_payment_entries", 
+  "fieldtype": "Button", 
+  "label": "Pull Payment Entries", 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "options": "Payment to Invoice Matching Tool Detail", 
+  "fieldname": "ir_payment_details", 
+  "fieldtype": "Table", 
+  "label": "Payment Entries", 
+  "permlevel": 0
+ }, 
+ {
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Reconcile HTML", 
+  "permlevel": 0, 
+  "fieldname": "reconcile_html", 
+  "fieldtype": "HTML", 
+  "options": "<div class='field_description'>Select Payment Voucher and Amount to Reconcile in the above table and then click Reconcile button</div>"
+ }, 
+ {
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Reconcile", 
+  "permlevel": 0, 
+  "trigger": "Client", 
+  "fieldname": "reconcile", 
+  "fieldtype": "Button", 
+  "options": "reconcile"
+ }
 ]
\ No newline at end of file
diff --git a/accounts/doctype/payment_to_invoice_matching_tool_detail/payment_to_invoice_matching_tool_detail.txt b/accounts/doctype/payment_to_invoice_matching_tool_detail/payment_to_invoice_matching_tool_detail.txt
index 7b3beb8..ab7e6bb 100644
--- a/accounts/doctype/payment_to_invoice_matching_tool_detail/payment_to_invoice_matching_tool_detail.txt
+++ b/accounts/doctype/payment_to_invoice_matching_tool_detail/payment_to_invoice_matching_tool_detail.txt
@@ -1,131 +1,104 @@
-# DocType, Payment to Invoice Matching Tool Detail
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:35:43',
-		'docstatus': 0,
-		'modified': '2012-03-27 14:35:43',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'istable': 1,
-		'module': u'Accounts',
-		'name': '__common__',
-		'section_style': u'Simple',
-		'show_in_menu': 0,
-		'version': 14
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'Payment to Invoice Matching Tool Detail',
-		'parentfield': u'fields',
-		'parenttype': u'DocType'
-	},
-
-	# DocType, Payment to Invoice Matching Tool Detail
-	{
-		'doctype': 'DocType',
-		'name': u'Payment to Invoice Matching Tool Detail'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'selected',
-		'fieldtype': u'Check',
-		'label': u'Select',
-		'permlevel': 0,
-		'reqd': 1,
-		'width': u'60px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'voucher_no',
-		'fieldtype': u'Link',
-		'label': u'Voucher No',
-		'options': u'Journal Voucher',
-		'permlevel': 1,
-		'reqd': 0,
-		'width': u'140px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'amt_due',
-		'fieldtype': u'Currency',
-		'label': u'Amt Due',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'amt_to_be_reconciled',
-		'fieldtype': u'Currency',
-		'label': u'Amt to be reconciled',
-		'permlevel': 0,
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'posting_date',
-		'fieldtype': u'Date',
-		'label': u'Posting Date',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'total_amt',
-		'fieldtype': u'Currency',
-		'label': u'Total Amt',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'against_account',
-		'fieldtype': u'Data',
-		'label': u'Against Account',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'remarks',
-		'fieldtype': u'Small Text',
-		'label': u'Remarks',
-		'permlevel': 1,
-		'width': u'200px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'voucher_detail_no',
-		'fieldtype': u'Data',
-		'hidden': 1,
-		'label': u'Voucher Detail No',
-		'no_column': 0,
-		'permlevel': 1,
-		'print_hide': 1,
-		'reqd': 0
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-03-27 14:35:43", 
+  "modified_by": "Administrator", 
+  "modified": "2012-03-27 14:35:43"
+ }, 
+ {
+  "section_style": "Simple", 
+  "istable": 1, 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "module": "Accounts", 
+  "doctype": "DocType", 
+  "version": 14, 
+  "show_in_menu": 0
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Payment to Invoice Matching Tool Detail", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "Payment to Invoice Matching Tool Detail", 
+  "doctype": "DocType"
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Select", 
+  "width": "60px", 
+  "fieldname": "selected", 
+  "fieldtype": "Check", 
+  "reqd": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "permlevel": 1, 
+  "doctype": "DocField", 
+  "label": "Voucher No", 
+  "width": "140px", 
+  "fieldname": "voucher_no", 
+  "fieldtype": "Link", 
+  "reqd": 0, 
+  "options": "Journal Voucher"
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Amt Due", 
+  "fieldname": "amt_due", 
+  "fieldtype": "Currency", 
+  "permlevel": 1
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Amt to be reconciled", 
+  "fieldname": "amt_to_be_reconciled", 
+  "fieldtype": "Currency", 
+  "reqd": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Posting Date", 
+  "fieldname": "posting_date", 
+  "fieldtype": "Date", 
+  "permlevel": 1
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Total Amt", 
+  "fieldname": "total_amt", 
+  "fieldtype": "Currency", 
+  "permlevel": 1
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Against Account", 
+  "fieldname": "against_account", 
+  "fieldtype": "Data", 
+  "permlevel": 1
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Remarks", 
+  "width": "200px", 
+  "fieldname": "remarks", 
+  "fieldtype": "Small Text", 
+  "permlevel": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "doctype": "DocField", 
+  "label": "Voucher Detail No", 
+  "fieldname": "voucher_detail_no", 
+  "fieldtype": "Data", 
+  "no_column": 0, 
+  "reqd": 0, 
+  "hidden": 1, 
+  "permlevel": 1
+ }
 ]
\ No newline at end of file
diff --git a/accounts/doctype/period_closing_voucher/period_closing_voucher.txt b/accounts/doctype/period_closing_voucher/period_closing_voucher.txt
index 2313d40..26ce545 100644
--- a/accounts/doctype/period_closing_voucher/period_closing_voucher.txt
+++ b/accounts/doctype/period_closing_voucher/period_closing_voucher.txt
@@ -1,276 +1,221 @@
-# DocType, Period Closing Voucher
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-06-11 12:09:52',
-		'docstatus': 0,
-		'modified': '2012-07-10 14:21:21',
-		'modified_by': u'Administrator',
-		'owner': u'jai@webnotestech.com'
-	},
-
-	# These values are common for all DocType
-	{
-		'_last_update': u'1311621379',
-		'autoname': u'PCE/.###',
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'is_submittable': 1,
-		'module': u'Accounts',
-		'name': '__common__',
-		'search_fields': u'posting_date, fiscal_year',
-		'section_style': u'Simple',
-		'server_code_error': u' ',
-		'show_in_menu': 0,
-		'version': 1
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'Period Closing Voucher',
-		'parentfield': u'fields',
-		'parenttype': u'DocType'
-	},
-
-	# These values are common for all DocPerm
-	{
-		'doctype': u'DocPerm',
-		'name': '__common__',
-		'parent': u'Period Closing Voucher',
-		'parentfield': u'permissions',
-		'parenttype': u'DocType',
-		'read': 1
-	},
-
-	# DocType, Period Closing Voucher
-	{
-		'doctype': 'DocType',
-		'name': u'Period Closing Voucher'
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm',
-		'permlevel': 1,
-		'role': u'System Manager'
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm',
-		'permlevel': 1,
-		'role': u'Accounts Manager'
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm',
-		'permlevel': 1,
-		'role': u'System Manager'
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm',
-		'permlevel': 1,
-		'role': u'Accounts Manager'
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm',
-		'permlevel': 1,
-		'role': u'System Manager'
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm',
-		'permlevel': 1,
-		'role': u'Accounts Manager'
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm',
-		'permlevel': 1,
-		'role': u'System Manager'
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm',
-		'permlevel': 1,
-		'role': u'Accounts Manager'
-	},
-
-	# DocPerm
-	{
-		'amend': 1,
-		'cancel': 1,
-		'create': 1,
-		'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'System Manager',
-		'submit': 1,
-		'write': 1
-	},
-
-	# DocPerm
-	{
-		'cancel': 1,
-		'create': 1,
-		'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'Accounts Manager',
-		'submit': 1,
-		'write': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'column_break0',
-		'fieldtype': u'Column Break',
-		'oldfieldtype': u'Column Break',
-		'permlevel': 0,
-		'width': u'50%'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'transaction_date',
-		'fieldtype': u'Date',
-		'label': u'Transaction Date',
-		'oldfieldname': u'transaction_date',
-		'oldfieldtype': u'Date',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'posting_date',
-		'fieldtype': u'Date',
-		'label': u'Posting Date',
-		'oldfieldname': u'posting_date',
-		'oldfieldtype': u'Date',
-		'permlevel': 0,
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'fiscal_year',
-		'fieldtype': u'Select',
-		'label': u'Closing Fiscal Year',
-		'oldfieldname': u'fiscal_year',
-		'oldfieldtype': u'Select',
-		'options': u'link:Fiscal Year',
-		'permlevel': 0,
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'amended_from',
-		'fieldtype': u'Data',
-		'label': u'Amended From',
-		'no_copy': 1,
-		'oldfieldname': u'amended_from',
-		'oldfieldtype': u'Data',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'amendment_date',
-		'fieldtype': u'Date',
-		'label': u'Amendment Date',
-		'no_copy': 1,
-		'oldfieldname': u'amendment_date',
-		'oldfieldtype': u'Date',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'company',
-		'fieldtype': u'Select',
-		'label': u'Company',
-		'oldfieldname': u'company',
-		'oldfieldtype': u'Select',
-		'options': u'link:Company',
-		'permlevel': 0,
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'column_break1',
-		'fieldtype': u'Column Break',
-		'oldfieldtype': u'Column Break',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'doctype': u'DocField',
-		'fieldname': u'closing_account_head',
-		'fieldtype': u'Link',
-		'label': u'Closing Account Head',
-		'oldfieldname': u'closing_account_head',
-		'oldfieldtype': u'Link',
-		'options': u'Account',
-		'permlevel': 0,
-		'reqd': 1,
-		'trigger': u'Client'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'coa_help',
-		'fieldtype': u'HTML',
-		'label': u'CoA Help',
-		'oldfieldtype': u'HTML',
-		'options': u'<a href="#!Accounts Browser/Account">To manage Account Head, click here</a>',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'remarks',
-		'fieldtype': u'Small Text',
-		'label': u'Remarks',
-		'oldfieldname': u'remarks',
-		'oldfieldtype': u'Small Text',
-		'permlevel': 0,
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'cancel_reason',
-		'fieldtype': u'Small Text',
-		'hidden': 1,
-		'label': u'Cancel Reason',
-		'oldfieldname': u'cancel_reason',
-		'oldfieldtype': u'Small Text',
-		'permlevel': 0,
-		'print_hide': 1,
-		'search_index': 0
-	}
+ {
+  "owner": "jai@webnotestech.com", 
+  "docstatus": 0, 
+  "creation": "2012-06-11 12:09:52", 
+  "modified_by": "Administrator", 
+  "modified": "2012-07-10 14:21:21"
+ }, 
+ {
+  "section_style": "Simple", 
+  "is_submittable": 1, 
+  "search_fields": "posting_date, fiscal_year", 
+  "module": "Accounts", 
+  "doctype": "DocType", 
+  "server_code_error": " ", 
+  "autoname": "PCE/.###", 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "_last_update": "1311621379", 
+  "show_in_menu": 0, 
+  "version": 1
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Period Closing Voucher", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Period Closing Voucher", 
+  "read": 1, 
+  "doctype": "DocPerm", 
+  "parenttype": "DocType", 
+  "parentfield": "permissions"
+ }, 
+ {
+  "name": "Period Closing Voucher", 
+  "doctype": "DocType"
+ }, 
+ {
+  "role": "System Manager", 
+  "permlevel": 1, 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "role": "Accounts Manager", 
+  "permlevel": 1, 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "role": "System Manager", 
+  "permlevel": 1, 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "role": "Accounts Manager", 
+  "permlevel": 1, 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "role": "System Manager", 
+  "permlevel": 1, 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "role": "Accounts Manager", 
+  "permlevel": 1, 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "role": "System Manager", 
+  "permlevel": 1, 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "role": "Accounts Manager", 
+  "permlevel": 1, 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "amend": 1, 
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "submit": 1, 
+  "write": 1, 
+  "role": "System Manager", 
+  "cancel": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "submit": 1, 
+  "write": 1, 
+  "role": "Accounts Manager", 
+  "cancel": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Column Break", 
+  "doctype": "DocField", 
+  "width": "50%", 
+  "fieldname": "column_break0", 
+  "fieldtype": "Column Break", 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Date", 
+  "doctype": "DocField", 
+  "label": "Transaction Date", 
+  "oldfieldname": "transaction_date", 
+  "fieldname": "transaction_date", 
+  "fieldtype": "Date", 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Date", 
+  "doctype": "DocField", 
+  "label": "Posting Date", 
+  "oldfieldname": "posting_date", 
+  "fieldname": "posting_date", 
+  "fieldtype": "Date", 
+  "reqd": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Select", 
+  "doctype": "DocField", 
+  "label": "Closing Fiscal Year", 
+  "oldfieldname": "fiscal_year", 
+  "permlevel": 0, 
+  "fieldname": "fiscal_year", 
+  "fieldtype": "Select", 
+  "reqd": 1, 
+  "options": "link:Fiscal Year"
+ }, 
+ {
+  "no_copy": 1, 
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Amended From", 
+  "oldfieldname": "amended_from", 
+  "fieldname": "amended_from", 
+  "fieldtype": "Data", 
+  "permlevel": 1
+ }, 
+ {
+  "no_copy": 1, 
+  "oldfieldtype": "Date", 
+  "doctype": "DocField", 
+  "label": "Amendment Date", 
+  "oldfieldname": "amendment_date", 
+  "fieldname": "amendment_date", 
+  "fieldtype": "Date", 
+  "permlevel": 1
+ }, 
+ {
+  "oldfieldtype": "Select", 
+  "doctype": "DocField", 
+  "label": "Company", 
+  "oldfieldname": "company", 
+  "permlevel": 0, 
+  "fieldname": "company", 
+  "fieldtype": "Select", 
+  "reqd": 1, 
+  "options": "link:Company"
+ }, 
+ {
+  "oldfieldtype": "Column Break", 
+  "doctype": "DocField", 
+  "fieldname": "column_break1", 
+  "fieldtype": "Column Break", 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Link", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Closing Account Head", 
+  "oldfieldname": "closing_account_head", 
+  "trigger": "Client", 
+  "fieldname": "closing_account_head", 
+  "fieldtype": "Link", 
+  "reqd": 1, 
+  "options": "Account", 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "HTML", 
+  "doctype": "DocField", 
+  "label": "CoA Help", 
+  "permlevel": 0, 
+  "fieldname": "coa_help", 
+  "fieldtype": "HTML", 
+  "options": "<a href=\"#!Accounts Browser/Account\">To manage Account Head, click here</a>"
+ }, 
+ {
+  "oldfieldtype": "Small Text", 
+  "doctype": "DocField", 
+  "label": "Remarks", 
+  "oldfieldname": "remarks", 
+  "fieldname": "remarks", 
+  "fieldtype": "Small Text", 
+  "reqd": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "print_hide": 1, 
+  "search_index": 0, 
+  "doctype": "DocField", 
+  "label": "Cancel Reason", 
+  "oldfieldname": "cancel_reason", 
+  "fieldname": "cancel_reason", 
+  "fieldtype": "Small Text", 
+  "oldfieldtype": "Small Text", 
+  "hidden": 1, 
+  "permlevel": 0
+ }
 ]
\ No newline at end of file
diff --git a/accounts/doctype/pos_setting/pos_setting.txt b/accounts/doctype/pos_setting/pos_setting.txt
index 1c7de5b..b50ff81 100755
--- a/accounts/doctype/pos_setting/pos_setting.txt
+++ b/accounts/doctype/pos_setting/pos_setting.txt
@@ -1,282 +1,229 @@
-# DocType, POS Setting
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-06-11 12:09:53',
-		'docstatus': 0,
-		'modified': '2012-07-16 16:27:51',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'_last_update': u'1322549700',
-		'autoname': u'POS/.####',
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'module': u'Accounts',
-		'name': '__common__',
-		'section_style': u'Simple',
-		'server_code_error': u' ',
-		'show_in_menu': 0,
-		'version': 1
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'POS Setting',
-		'parentfield': u'fields',
-		'parenttype': u'DocType',
-		'permlevel': 0
-	},
-
-	# These values are common for all DocPerm
-	{
-		'doctype': u'DocPerm',
-		'name': '__common__',
-		'parent': u'POS Setting',
-		'parentfield': u'permissions',
-		'parenttype': u'DocType',
-		'permlevel': 0,
-		'read': 1
-	},
-
-	# DocType, POS Setting
-	{
-		'doctype': 'DocType',
-		'name': u'POS Setting'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'user',
-		'fieldtype': u'Link',
-		'label': u'User',
-		'oldfieldname': u'user',
-		'oldfieldtype': u'Link',
-		'options': u'Profile'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'territory',
-		'fieldtype': u'Link',
-		'label': u'Territory',
-		'oldfieldname': u'territory',
-		'oldfieldtype': u'Link',
-		'options': u'Territory',
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'naming_series',
-		'fieldtype': u'Select',
-		'label': u'Series',
-		'no_copy': 1,
-		'oldfieldname': u'naming_series',
-		'oldfieldtype': u'Select',
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'currency',
-		'fieldtype': u'Select',
-		'label': u'Currency',
-		'oldfieldname': u'currency',
-		'oldfieldtype': u'Select',
-		'options': u'link:Currency',
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'default': u'1',
-		'doctype': u'DocField',
-		'fieldname': u'conversion_rate',
-		'fieldtype': u'Float',
-		'label': u'Conversion Rate',
-		'oldfieldname': u'conversion_rate',
-		'oldfieldtype': u'Currency',
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'price_list_name',
-		'fieldtype': u'Select',
-		'label': u'Price List',
-		'oldfieldname': u'price_list_name',
-		'oldfieldtype': u'Select',
-		'options': u'link:Price List',
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'company',
-		'fieldtype': u'Link',
-		'label': u'Company',
-		'oldfieldname': u'company',
-		'oldfieldtype': u'Link',
-		'options': u'Company',
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'column_break0',
-		'fieldtype': u'Column Break',
-		'oldfieldtype': u'Column Break'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'customer_account',
-		'fieldtype': u'Link',
-		'label': u'Customer Account',
-		'oldfieldname': u'customer_account',
-		'oldfieldtype': u'Link',
-		'options': u'Account',
-		'reqd': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'cash_bank_account',
-		'fieldtype': u'Link',
-		'label': u'Cash/Bank Account',
-		'oldfieldname': u'cash_bank_account',
-		'oldfieldtype': u'Link',
-		'options': u'Account',
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'income_account',
-		'fieldtype': u'Link',
-		'label': u'Income Account',
-		'oldfieldname': u'income_account',
-		'oldfieldtype': u'Link',
-		'options': u'Account',
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'warehouse',
-		'fieldtype': u'Link',
-		'label': u'Warehouse',
-		'oldfieldname': u'warehouse',
-		'oldfieldtype': u'Link',
-		'options': u'Warehouse',
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'cost_center',
-		'fieldtype': u'Link',
-		'label': u'Cost Center',
-		'oldfieldname': u'cost_center',
-		'oldfieldtype': u'Link',
-		'options': u'Cost Center',
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'charge',
-		'fieldtype': u'Link',
-		'label': u'Charge',
-		'oldfieldname': u'charge',
-		'oldfieldtype': u'Link',
-		'options': u'Sales Taxes and Charges Master'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'letter_head',
-		'fieldtype': u'Select',
-		'label': u'Letter Head',
-		'oldfieldname': u'letter_head',
-		'oldfieldtype': u'Select',
-		'options': u'link:Letter Head',
-		'print_hide': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'tc_name',
-		'fieldtype': u'Link',
-		'label': u'Terms and Conditions',
-		'oldfieldname': u'tc_name',
-		'oldfieldtype': u'Link',
-		'options': u'Terms and Conditions'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'select_print_heading',
-		'fieldtype': u'Select',
-		'in_filter': 0,
-		'label': u'Select Print Heading',
-		'oldfieldname': u'select_print_heading',
-		'oldfieldtype': u'Select',
-		'options': u'link:Print Heading'
-	},
-
-	# DocPerm
-	{
-		'create': 1,
-		'doctype': u'DocPerm',
-		'role': u'System Manager',
-		'submit': 0,
-		'write': 1
-	},
-
-	# DocPerm
-	{
-		'create': 1,
-		'doctype': u'DocPerm',
-		'role': u'System Manager',
-		'write': 1
-	},
-
-	# DocPerm
-	{
-		'create': 1,
-		'doctype': u'DocPerm',
-		'role': u'Accounts Manager',
-		'write': 1
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm',
-		'role': u'Accounts User'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-06-11 12:09:53", 
+  "modified_by": "Administrator", 
+  "modified": "2012-07-16 16:27:51"
+ }, 
+ {
+  "section_style": "Simple", 
+  "module": "Accounts", 
+  "doctype": "DocType", 
+  "autoname": "POS/.####", 
+  "show_in_menu": 0, 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "_last_update": "1322549700", 
+  "server_code_error": " ", 
+  "version": 1
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "POS Setting", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "permlevel": 0, 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "POS Setting", 
+  "read": 1, 
+  "doctype": "DocPerm", 
+  "parenttype": "DocType", 
+  "permlevel": 0, 
+  "parentfield": "permissions"
+ }, 
+ {
+  "name": "POS Setting", 
+  "doctype": "DocType"
+ }, 
+ {
+  "oldfieldtype": "Link", 
+  "doctype": "DocField", 
+  "label": "User", 
+  "oldfieldname": "user", 
+  "fieldname": "user", 
+  "fieldtype": "Link", 
+  "options": "Profile"
+ }, 
+ {
+  "oldfieldtype": "Link", 
+  "doctype": "DocField", 
+  "label": "Territory", 
+  "oldfieldname": "territory", 
+  "fieldname": "territory", 
+  "fieldtype": "Link", 
+  "reqd": 1, 
+  "options": "Territory"
+ }, 
+ {
+  "no_copy": 1, 
+  "oldfieldtype": "Select", 
+  "doctype": "DocField", 
+  "label": "Series", 
+  "oldfieldname": "naming_series", 
+  "fieldname": "naming_series", 
+  "fieldtype": "Select", 
+  "reqd": 1
+ }, 
+ {
+  "oldfieldtype": "Select", 
+  "doctype": "DocField", 
+  "label": "Currency", 
+  "oldfieldname": "currency", 
+  "fieldname": "currency", 
+  "fieldtype": "Select", 
+  "reqd": 1, 
+  "options": "link:Currency"
+ }, 
+ {
+  "default": "1", 
+  "oldfieldtype": "Currency", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Conversion Rate", 
+  "oldfieldname": "conversion_rate", 
+  "fieldname": "conversion_rate", 
+  "fieldtype": "Float", 
+  "reqd": 1
+ }, 
+ {
+  "oldfieldtype": "Select", 
+  "doctype": "DocField", 
+  "label": "Price List", 
+  "oldfieldname": "price_list_name", 
+  "fieldname": "price_list_name", 
+  "fieldtype": "Select", 
+  "reqd": 1, 
+  "options": "link:Price List"
+ }, 
+ {
+  "oldfieldtype": "Link", 
+  "doctype": "DocField", 
+  "label": "Company", 
+  "oldfieldname": "company", 
+  "fieldname": "company", 
+  "fieldtype": "Link", 
+  "reqd": 1, 
+  "options": "Company"
+ }, 
+ {
+  "oldfieldtype": "Column Break", 
+  "fieldname": "column_break0", 
+  "fieldtype": "Column Break", 
+  "doctype": "DocField"
+ }, 
+ {
+  "oldfieldtype": "Link", 
+  "doctype": "DocField", 
+  "label": "Customer Account", 
+  "oldfieldname": "customer_account", 
+  "fieldname": "customer_account", 
+  "fieldtype": "Link", 
+  "reqd": 0, 
+  "options": "Account"
+ }, 
+ {
+  "oldfieldtype": "Link", 
+  "doctype": "DocField", 
+  "label": "Cash/Bank Account", 
+  "oldfieldname": "cash_bank_account", 
+  "fieldname": "cash_bank_account", 
+  "fieldtype": "Link", 
+  "reqd": 1, 
+  "options": "Account"
+ }, 
+ {
+  "oldfieldtype": "Link", 
+  "doctype": "DocField", 
+  "label": "Income Account", 
+  "oldfieldname": "income_account", 
+  "fieldname": "income_account", 
+  "fieldtype": "Link", 
+  "reqd": 1, 
+  "options": "Account"
+ }, 
+ {
+  "oldfieldtype": "Link", 
+  "doctype": "DocField", 
+  "label": "Warehouse", 
+  "oldfieldname": "warehouse", 
+  "fieldname": "warehouse", 
+  "fieldtype": "Link", 
+  "reqd": 1, 
+  "options": "Warehouse"
+ }, 
+ {
+  "oldfieldtype": "Link", 
+  "doctype": "DocField", 
+  "label": "Cost Center", 
+  "oldfieldname": "cost_center", 
+  "fieldname": "cost_center", 
+  "fieldtype": "Link", 
+  "reqd": 1, 
+  "options": "Cost Center"
+ }, 
+ {
+  "oldfieldtype": "Link", 
+  "doctype": "DocField", 
+  "label": "Charge", 
+  "oldfieldname": "charge", 
+  "fieldname": "charge", 
+  "fieldtype": "Link", 
+  "options": "Sales Taxes and Charges Master"
+ }, 
+ {
+  "print_hide": 1, 
+  "oldfieldtype": "Select", 
+  "doctype": "DocField", 
+  "label": "Letter Head", 
+  "oldfieldname": "letter_head", 
+  "fieldname": "letter_head", 
+  "fieldtype": "Select", 
+  "options": "link:Letter Head"
+ }, 
+ {
+  "oldfieldtype": "Link", 
+  "doctype": "DocField", 
+  "label": "Terms and Conditions", 
+  "oldfieldname": "tc_name", 
+  "fieldname": "tc_name", 
+  "fieldtype": "Link", 
+  "options": "Terms and Conditions"
+ }, 
+ {
+  "oldfieldtype": "Select", 
+  "doctype": "DocField", 
+  "label": "Select Print Heading", 
+  "oldfieldname": "select_print_heading", 
+  "fieldname": "select_print_heading", 
+  "fieldtype": "Select", 
+  "options": "link:Print Heading", 
+  "in_filter": 0
+ }, 
+ {
+  "write": 1, 
+  "create": 1, 
+  "role": "System Manager", 
+  "doctype": "DocPerm", 
+  "submit": 0
+ }, 
+ {
+  "write": 1, 
+  "create": 1, 
+  "role": "System Manager", 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "write": 1, 
+  "create": 1, 
+  "role": "Accounts Manager", 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "role": "Accounts User", 
+  "doctype": "DocPerm"
+ }
 ]
\ No newline at end of file
diff --git a/accounts/doctype/purchase_invoice_item/purchase_invoice_item.txt b/accounts/doctype/purchase_invoice_item/purchase_invoice_item.txt
index 56e2cb6..836f808 100755
--- a/accounts/doctype/purchase_invoice_item/purchase_invoice_item.txt
+++ b/accounts/doctype/purchase_invoice_item/purchase_invoice_item.txt
@@ -40,12 +40,12 @@
  }, 
  {
   "oldfieldtype": "Data", 
+  "search_index": 0, 
   "doctype": "DocField", 
   "label": "Item Name", 
   "oldfieldname": "item_name", 
   "fieldname": "item_name", 
   "fieldtype": "Data", 
-  "search_index": 0, 
   "reqd": 1, 
   "permlevel": 0, 
   "in_filter": 0
@@ -140,6 +140,7 @@
  }, 
  {
   "print_hide": 1, 
+  "permlevel": 0, 
   "oldfieldtype": "Link", 
   "doctype": "DocField", 
   "label": "Expense Head", 
@@ -149,7 +150,6 @@
   "fieldname": "expense_head", 
   "fieldtype": "Link", 
   "reqd": 1, 
-  "permlevel": 0
  }, 
  {
   "print_hide": 1, 
@@ -200,35 +200,35 @@
   "label": "Item Group", 
   "oldfieldname": "item_group", 
   "permlevel": 1, 
+  "options": "Item Group", 
   "fieldname": "item_group", 
   "fieldtype": "Link", 
   "search_index": 1, 
   "hidden": 1, 
-  "options": "Item Group", 
   "in_filter": 1
  }, 
  {
   "print_hide": 1, 
   "oldfieldtype": "Link", 
+  "search_index": 1, 
   "doctype": "DocField", 
   "label": "Pur Order", 
   "oldfieldname": "purchase_order", 
   "options": "Purchase Order", 
   "fieldname": "purchase_order", 
   "fieldtype": "Link", 
-  "search_index": 1, 
   "permlevel": 1, 
   "in_filter": 1
  }, 
  {
   "print_hide": 1, 
   "oldfieldtype": "Data", 
+  "search_index": 1, 
   "doctype": "DocField", 
   "label": "Purchase Order Item", 
   "oldfieldname": "po_detail", 
   "fieldname": "po_detail", 
   "fieldtype": "Data", 
-  "search_index": 1, 
   "hidden": 1, 
   "permlevel": 1, 
   "in_filter": 1
@@ -236,25 +236,25 @@
  {
   "print_hide": 1, 
   "oldfieldtype": "Link", 
+  "search_index": 1, 
   "doctype": "DocField", 
   "label": "Pur Receipt", 
   "oldfieldname": "purchase_receipt", 
   "options": "Purchase Receipt", 
   "fieldname": "purchase_receipt", 
   "fieldtype": "Link", 
-  "search_index": 1, 
   "permlevel": 1, 
   "in_filter": 1
  }, 
  {
   "print_hide": 1, 
   "oldfieldtype": "Data", 
+  "search_index": 1, 
   "doctype": "DocField", 
   "label": "PR Detail", 
   "oldfieldname": "pr_detail", 
   "fieldname": "pr_detail", 
   "fieldtype": "Data", 
-  "search_index": 1, 
   "hidden": 1, 
   "permlevel": 1, 
   "in_filter": 1
diff --git a/accounts/doctype/purchase_taxes_and_charges/purchase_taxes_and_charges.txt b/accounts/doctype/purchase_taxes_and_charges/purchase_taxes_and_charges.txt
index 05bcb86..52f837e 100644
--- a/accounts/doctype/purchase_taxes_and_charges/purchase_taxes_and_charges.txt
+++ b/accounts/doctype/purchase_taxes_and_charges/purchase_taxes_and_charges.txt
@@ -1,239 +1,202 @@
-# DocType, Purchase Taxes and Charges
 [
-
-	# These values are common in all dictionaries
-	{
-		u'creation': '2012-09-18 11:20:24',
-		u'docstatus': 0,
-		u'modified': '2012-09-28 12:27:43',
-		u'modified_by': u'Administrator',
-		u'owner': u'wasim@webnotestech.com'
-	},
-
-	# These values are common for all DocType
-	{
-		'_last_update': u'1322549700',
-		'autoname': u'PVTD.######',
-		'colour': u'White:FFF',
-		u'doctype': u'DocType',
-		'hide_heading': 1,
-		'istable': 1,
-		'module': u'Accounts',
-		u'name': u'__common__',
-		'section_style': u'Tray',
-		'server_code_error': u' ',
-		'show_in_menu': 0,
-		'version': 1
-	},
-
-	# These values are common for all DocField
-	{
-		u'doctype': u'DocField',
-		u'name': u'__common__',
-		'parent': u'Purchase Taxes and Charges',
-		'parentfield': u'fields',
-		'parenttype': u'DocType'
-	},
-
-	# DocType, Purchase Taxes and Charges
-	{
-		u'doctype': u'DocType',
-		u'name': u'Purchase Taxes and Charges'
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'charge_type',
-		'fieldtype': u'Select',
-		'label': u'Type',
-		'oldfieldname': u'charge_type',
-		'oldfieldtype': u'Select',
-		'options': u'\nActual\nOn Net Total\nOn Previous Row Amount\nOn Previous Row Total',
-		'permlevel': 0,
-		'reqd': 1,
-		'trigger': u'Client'
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'account_head',
-		'fieldtype': u'Link',
-		'label': u'Account Head',
-		'oldfieldname': u'account_head',
-		'oldfieldtype': u'Link',
-		'options': u'Account',
-		'permlevel': 0,
-		'reqd': 1,
-		'trigger': u'Client'
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'cost_center',
-		'fieldtype': u'Link',
-		'label': u'Cost Center',
-		'oldfieldname': u'cost_center',
-		'oldfieldtype': u'Link',
-		'options': u'Cost Center',
-		'permlevel': 0,
-		'trigger': u'Client'
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'description',
-		'fieldtype': u'Small Text',
-		'label': u'Description',
-		'oldfieldname': u'description',
-		'oldfieldtype': u'Small Text',
-		'permlevel': 0,
-		'reqd': 1,
-		'width': u'300px'
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'rate',
-		'fieldtype': u'Currency',
-		'label': u'Rate',
-		'oldfieldname': u'rate',
-		'oldfieldtype': u'Currency',
-		'permlevel': 0,
-		'reqd': 0,
-		'trigger': u'Client'
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'tax_amount',
-		'fieldtype': u'Currency',
-		'label': u'Amount',
-		'oldfieldname': u'tax_amount',
-		'oldfieldtype': u'Currency',
-		'permlevel': 0,
-		'reqd': 0,
-		'trigger': u'Client'
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'total',
-		'fieldtype': u'Currency',
-		'label': u'Total',
-		'oldfieldname': u'total',
-		'oldfieldtype': u'Currency',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'row_id',
-		'fieldtype': u'Data',
-		'hidden': 0,
-		'label': u'Enter Row',
-		'oldfieldname': u'row_id',
-		'oldfieldtype': u'Data',
-		'permlevel': 0,
-		'trigger': u'Client'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'default': u'Valuation and Total',
-		u'doctype': u'DocField',
-		'fieldname': u'category',
-		'fieldtype': u'Select',
-		'label': u'Consider Tax or Charge for',
-		'oldfieldname': u'category',
-		'oldfieldtype': u'Select',
-		'options': u'Valuation and Total\nValuation\nTotal',
-		'permlevel': 0,
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'default': u'Add',
-		u'doctype': u'DocField',
-		'fieldname': u'add_deduct_tax',
-		'fieldtype': u'Select',
-		'label': u'Add or Deduct',
-		'oldfieldname': u'add_deduct_tax',
-		'oldfieldtype': u'Select',
-		'options': u'Add\nDeduct',
-		'permlevel': 0,
-		'reqd': 1,
-		'trigger': u'Client'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		u'doctype': u'DocField',
-		'fieldname': u'item_wise_tax_detail',
-		'fieldtype': u'Small Text',
-		'hidden': 1,
-		'label': u'Item Wise Tax Detail ',
-		'oldfieldname': u'item_wise_tax_detail',
-		'oldfieldtype': u'Small Text',
-		'permlevel': 1,
-		'print_hide': 1
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'parenttype',
-		'fieldtype': u'Data',
-		'hidden': 1,
-		'in_filter': 1,
-		'label': u'Parenttype',
-		'oldfieldname': u'parenttype',
-		'oldfieldtype': u'Data',
-		'permlevel': 0,
-		'print_hide': 1,
-		'search_index': 0
-	},
-
-	# DocField
-	{
-		'description': u'Cheating Field\nPlease do not delete ',
-		u'doctype': u'DocField',
-		'fieldname': u'total_tax_amount',
-		'fieldtype': u'Currency',
-		'hidden': 1,
-		'label': u'Total +Tax',
-		'no_copy': 1,
-		'oldfieldname': u'total_tax_amount',
-		'oldfieldtype': u'Currency',
-		'permlevel': 0,
-		'print_hide': 1,
-		'report_hide': 1
-	},
-
-	# DocField
-	{
-		'description': u'Cheating Field\nPlease do not delete ',
-		u'doctype': u'DocField',
-		'fieldname': u'total_amount',
-		'fieldtype': u'Currency',
-		'hidden': 1,
-		'label': u'Tax Amount',
-		'no_copy': 1,
-		'oldfieldname': u'total_amount',
-		'oldfieldtype': u'Currency',
-		'permlevel': 0,
-		'print_hide': 1,
-		'report_hide': 1
-	}
+ {
+  "owner": "wasim@webnotestech.com", 
+  "docstatus": 0, 
+  "creation": "2012-09-18 11:20:24", 
+  "modified_by": "Administrator", 
+  "modified": "2012-09-28 12:27:43"
+ }, 
+ {
+  "section_style": "Tray", 
+  "istable": 1, 
+  "module": "Accounts", 
+  "doctype": "DocType", 
+  "server_code_error": " ", 
+  "hide_heading": 1, 
+  "autoname": "PVTD.######", 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "_last_update": "1322549700", 
+  "show_in_menu": 0, 
+  "version": 1
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Purchase Taxes and Charges", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "Purchase Taxes and Charges", 
+  "doctype": "DocType"
+ }, 
+ {
+  "oldfieldtype": "Select", 
+  "doctype": "DocField", 
+  "label": "Type", 
+  "oldfieldname": "charge_type", 
+  "permlevel": 0, 
+  "trigger": "Client", 
+  "fieldname": "charge_type", 
+  "fieldtype": "Select", 
+  "reqd": 1, 
+  "options": "\nActual\nOn Net Total\nOn Previous Row Amount\nOn Previous Row Total"
+ }, 
+ {
+  "oldfieldtype": "Link", 
+  "doctype": "DocField", 
+  "label": "Account Head", 
+  "oldfieldname": "account_head", 
+  "permlevel": 0, 
+  "trigger": "Client", 
+  "fieldname": "account_head", 
+  "fieldtype": "Link", 
+  "reqd": 1, 
+  "options": "Account"
+ }, 
+ {
+  "oldfieldtype": "Link", 
+  "doctype": "DocField", 
+  "label": "Cost Center", 
+  "oldfieldname": "cost_center", 
+  "permlevel": 0, 
+  "trigger": "Client", 
+  "fieldname": "cost_center", 
+  "fieldtype": "Link", 
+  "options": "Cost Center"
+ }, 
+ {
+  "oldfieldtype": "Small Text", 
+  "doctype": "DocField", 
+  "label": "Description", 
+  "oldfieldname": "description", 
+  "width": "300px", 
+  "fieldname": "description", 
+  "fieldtype": "Small Text", 
+  "reqd": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Rate", 
+  "oldfieldname": "rate", 
+  "trigger": "Client", 
+  "fieldname": "rate", 
+  "fieldtype": "Currency", 
+  "reqd": 0, 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Amount", 
+  "oldfieldname": "tax_amount", 
+  "trigger": "Client", 
+  "fieldname": "tax_amount", 
+  "fieldtype": "Currency", 
+  "reqd": 0, 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Total", 
+  "oldfieldname": "total", 
+  "fieldname": "total", 
+  "fieldtype": "Currency", 
+  "permlevel": 1
+ }, 
+ {
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Enter Row", 
+  "oldfieldname": "row_id", 
+  "trigger": "Client", 
+  "fieldname": "row_id", 
+  "fieldtype": "Data", 
+  "hidden": 0, 
+  "permlevel": 0
+ }, 
+ {
+  "default": "Valuation and Total", 
+  "oldfieldtype": "Select", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Consider Tax or Charge for", 
+  "oldfieldname": "category", 
+  "options": "Valuation and Total\nValuation\nTotal", 
+  "fieldname": "category", 
+  "fieldtype": "Select", 
+  "reqd": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "default": "Add", 
+  "oldfieldtype": "Select", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Add or Deduct", 
+  "oldfieldname": "add_deduct_tax", 
+  "trigger": "Client", 
+  "fieldname": "add_deduct_tax", 
+  "fieldtype": "Select", 
+  "reqd": 1, 
+  "options": "Add\nDeduct", 
+  "permlevel": 0
+ }, 
+ {
+  "print_hide": 1, 
+  "oldfieldtype": "Small Text", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Item Wise Tax Detail ", 
+  "oldfieldname": "item_wise_tax_detail", 
+  "fieldname": "item_wise_tax_detail", 
+  "fieldtype": "Small Text", 
+  "hidden": 1, 
+  "permlevel": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "search_index": 0, 
+  "doctype": "DocField", 
+  "label": "Parenttype", 
+  "oldfieldname": "parenttype", 
+  "fieldname": "parenttype", 
+  "fieldtype": "Data", 
+  "oldfieldtype": "Data", 
+  "hidden": 1, 
+  "permlevel": 0, 
+  "in_filter": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "description": "Cheating Field\nPlease do not delete ", 
+  "no_copy": 1, 
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Total +Tax", 
+  "oldfieldname": "total_tax_amount", 
+  "fieldname": "total_tax_amount", 
+  "fieldtype": "Currency", 
+  "hidden": 1, 
+  "permlevel": 0, 
+  "report_hide": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "description": "Cheating Field\nPlease do not delete ", 
+  "no_copy": 1, 
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Tax Amount", 
+  "oldfieldname": "total_amount", 
+  "fieldname": "total_amount", 
+  "fieldtype": "Currency", 
+  "hidden": 1, 
+  "permlevel": 0, 
+  "report_hide": 1
+ }
 ]
\ No newline at end of file
diff --git a/accounts/doctype/purchase_taxes_and_charges_master/purchase_taxes_and_charges_master.txt b/accounts/doctype/purchase_taxes_and_charges_master/purchase_taxes_and_charges_master.txt
index 9e659ee..da33cb2 100644
--- a/accounts/doctype/purchase_taxes_and_charges_master/purchase_taxes_and_charges_master.txt
+++ b/accounts/doctype/purchase_taxes_and_charges_master/purchase_taxes_and_charges_master.txt
@@ -1,149 +1,120 @@
-# DocType, Purchase Taxes and Charges Master
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-05-15 12:14:32',
-		'docstatus': 0,
-		'modified': '2012-08-17 09:57:04',
-		'modified_by': u'Administrator',
-		'owner': u'wasim@webnotestech.com'
-	},
-
-	# These values are common for all DocType
-	{
-		'_last_update': u'1325570646',
-		'allow_trash': 1,
-		'autoname': u'field:title',
-		'colour': u'White:FFF',
-		'description': u'Standard tax template that can be applied to all Purchase Transactions. This template can contain list of tax heads and also other expense heads like "Shipping", "Insurance", "Handling" etc.\n\n#### Note\n\nThe tax rate you define here will be the standard tax rate for all **Items**. If there are **Items** that have different rates, they must be added in the **Item Tax** table in the **Item** master.\n\n#### Description of Columns\n\n1. Calculation Type: \n    - This can be on **Net Total** (that is the sum of basic amount).\n    - **On Previous Row Total / Amount** (for cumulative taxes or charges). If you select this option, the tax will be applied as a percentage of the previous row (in the tax table) amount or total.\n    - **Actual** (as mentioned).\n2. Account Head: The Account ledger under which this tax will be booked\n3. Cost Center: If the tax / charge is an income (like shipping) or expense it needs to be booked against a Cost Center.\n4. Description: Description of the tax (that will be printed in invoices / quotes).\n5. Rate: Tax rate.\n6. Amount: Tax amount.\n7. Total: Cumulative total to this point.\n8. Enter Row: If based on "Previous Row Total" you can select the row number which will be taken as a base for this calculation (default is the previous row).\n9. Consider Tax or Charge for: In this section you can specify if the tax / charge is only for valuation (not a part of total) or only for total (does not add value to the item) or for both.\n10. Add or Deduct: Whether you want to add or deduct the tax.',
-		'doctype': 'DocType',
-		'document_type': u'Master',
-		'module': u'Accounts',
-		'name': '__common__',
-		'section_style': u'Simple',
-		'server_code_error': u' ',
-		'show_in_menu': 0,
-		'version': 1
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'Purchase Taxes and Charges Master',
-		'parentfield': u'fields',
-		'parenttype': u'DocType',
-		'permlevel': 0
-	},
-
-	# These values are common for all DocPerm
-	{
-		'doctype': u'DocPerm',
-		'name': '__common__',
-		'parent': u'Purchase Taxes and Charges Master',
-		'parentfield': u'permissions',
-		'parenttype': u'DocType',
-		'read': 1
-	},
-
-	# DocType, Purchase Taxes and Charges Master
-	{
-		'doctype': 'DocType',
-		'name': u'Purchase Taxes and Charges Master'
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm',
-		'permlevel': 1,
-		'role': u'All'
-	},
-
-	# DocPerm
-	{
-		'amend': 0,
-		'cancel': 0,
-		'create': 0,
-		'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'Purchase Manager',
-		'submit': 0,
-		'write': 0
-	},
-
-	# DocPerm
-	{
-		'cancel': 1,
-		'create': 1,
-		'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'System Manager',
-		'write': 1
-	},
-
-	# DocPerm
-	{
-		'cancel': 1,
-		'create': 1,
-		'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'Purchase Master Manager',
-		'submit': 0,
-		'write': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'title',
-		'fieldtype': u'Data',
-		'in_filter': 1,
-		'label': u'Title',
-		'oldfieldname': u'title',
-		'oldfieldtype': u'Data',
-		'reqd': 1,
-		'search_index': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'is_default',
-		'fieldtype': u'Check',
-		'label': u'Default'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'company',
-		'fieldtype': u'Link',
-		'in_filter': 1,
-		'label': u'Company',
-		'options': u'Company',
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'purchase_tax_details',
-		'fieldtype': u'Table',
-		'label': u'Purchase Taxes and Charges',
-		'oldfieldname': u'purchase_tax_details',
-		'oldfieldtype': u'Table',
-		'options': u'Purchase Taxes and Charges'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'company',
-		'fieldtype': u'Link',
-		'in_filter': 1,
-		'label': u'Company',
-		'options': u'Company',
-		'reqd': 1
-	}
+ {
+  "owner": "wasim@webnotestech.com", 
+  "docstatus": 0, 
+  "creation": "2012-05-15 12:14:32", 
+  "modified_by": "Administrator", 
+  "modified": "2012-08-17 09:57:04"
+ }, 
+ {
+  "section_style": "Simple", 
+  "description": "Standard tax template that can be applied to all Purchase Transactions. This template can contain list of tax heads and also other expense heads like \"Shipping\", \"Insurance\", \"Handling\" etc.\n\n#### Note\n\nThe tax rate you define here will be the standard tax rate for all **Items**. If there are **Items** that have different rates, they must be added in the **Item Tax** table in the **Item** master.\n\n#### Description of Columns\n\n1. Calculation Type: \n    - This can be on **Net Total** (that is the sum of basic amount).\n    - **On Previous Row Total / Amount** (for cumulative taxes or charges). If you select this option, the tax will be applied as a percentage of the previous row (in the tax table) amount or total.\n    - **Actual** (as mentioned).\n2. Account Head: The Account ledger under which this tax will be booked\n3. Cost Center: If the tax / charge is an income (like shipping) or expense it needs to be booked against a Cost Center.\n4. Description: Description of the tax (that will be printed in invoices / quotes).\n5. Rate: Tax rate.\n6. Amount: Tax amount.\n7. Total: Cumulative total to this point.\n8. Enter Row: If based on \"Previous Row Total\" you can select the row number which will be taken as a base for this calculation (default is the previous row).\n9. Consider Tax or Charge for: In this section you can specify if the tax / charge is only for valuation (not a part of total) or only for total (does not add value to the item) or for both.\n10. Add or Deduct: Whether you want to add or deduct the tax.", 
+  "module": "Accounts", 
+  "doctype": "DocType", 
+  "allow_trash": 1, 
+  "server_code_error": " ", 
+  "document_type": "Master", 
+  "autoname": "field:title", 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "_last_update": "1325570646", 
+  "show_in_menu": 0, 
+  "version": 1
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Purchase Taxes and Charges Master", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "permlevel": 0, 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Purchase Taxes and Charges Master", 
+  "read": 1, 
+  "doctype": "DocPerm", 
+  "parenttype": "DocType", 
+  "parentfield": "permissions"
+ }, 
+ {
+  "name": "Purchase Taxes and Charges Master", 
+  "doctype": "DocType"
+ }, 
+ {
+  "role": "All", 
+  "permlevel": 1, 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "amend": 0, 
+  "create": 0, 
+  "doctype": "DocPerm", 
+  "submit": 0, 
+  "write": 0, 
+  "role": "Purchase Manager", 
+  "cancel": 0, 
+  "permlevel": 0
+ }, 
+ {
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "write": 1, 
+  "role": "System Manager", 
+  "cancel": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "submit": 0, 
+  "write": 1, 
+  "role": "Purchase Master Manager", 
+  "cancel": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "search_index": 0, 
+  "doctype": "DocField", 
+  "label": "Title", 
+  "oldfieldname": "title", 
+  "fieldname": "title", 
+  "fieldtype": "Data", 
+  "oldfieldtype": "Data", 
+  "reqd": 1, 
+  "in_filter": 1
+ }, 
+ {
+  "doctype": "DocField", 
+  "fieldname": "is_default", 
+  "fieldtype": "Check", 
+  "label": "Default"
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Company", 
+  "fieldname": "company", 
+  "fieldtype": "Link", 
+  "reqd": 1, 
+  "options": "Company", 
+  "in_filter": 1
+ }, 
+ {
+  "oldfieldtype": "Table", 
+  "doctype": "DocField", 
+  "label": "Purchase Taxes and Charges", 
+  "oldfieldname": "purchase_tax_details", 
+  "fieldname": "purchase_tax_details", 
+  "fieldtype": "Table", 
+  "options": "Purchase Taxes and Charges"
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Company", 
+  "fieldname": "company", 
+  "fieldtype": "Link", 
+  "reqd": 1, 
+  "options": "Company", 
+  "in_filter": 1
+ }
 ]
\ No newline at end of file
diff --git a/accounts/doctype/sales_invoice_advance/sales_invoice_advance.txt b/accounts/doctype/sales_invoice_advance/sales_invoice_advance.txt
index 5725246..bb17796 100644
--- a/accounts/doctype/sales_invoice_advance/sales_invoice_advance.txt
+++ b/accounts/doctype/sales_invoice_advance/sales_invoice_advance.txt
@@ -1,105 +1,86 @@
-# DocType, Sales Invoice Advance
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:35:40',
-		'docstatus': 0,
-		'modified': '2012-03-27 14:35:40',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'istable': 1,
-		'module': u'Accounts',
-		'name': '__common__',
-		'section_style': u'Tray',
-		'server_code_error': u' ',
-		'show_in_menu': 0,
-		'version': 24
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'no_copy': 1,
-		'parent': u'Sales Invoice Advance',
-		'parentfield': u'fields',
-		'parenttype': u'DocType'
-	},
-
-	# DocType, Sales Invoice Advance
-	{
-		'doctype': 'DocType',
-		'name': u'Sales Invoice Advance'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'journal_voucher',
-		'fieldtype': u'Link',
-		'label': u'Journal Voucher',
-		'oldfieldname': u'journal_voucher',
-		'oldfieldtype': u'Link',
-		'options': u'Journal Voucher',
-		'permlevel': 1,
-		'width': u'250px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'jv_detail_no',
-		'fieldtype': u'Data',
-		'hidden': 1,
-		'label': u'Journal Voucher Detail No',
-		'oldfieldname': u'jv_detail_no',
-		'oldfieldtype': u'Data',
-		'permlevel': 1,
-		'print_hide': 1,
-		'width': u'120px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'advance_amount',
-		'fieldtype': u'Currency',
-		'label': u'Advance amount',
-		'oldfieldname': u'advance_amount',
-		'oldfieldtype': u'Currency',
-		'permlevel': 1,
-		'width': u'120px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'allocated_amount',
-		'fieldtype': u'Currency',
-		'label': u'Allocated amount',
-		'oldfieldname': u'allocated_amount',
-		'oldfieldtype': u'Currency',
-		'permlevel': 0,
-		'trigger': u'Client',
-		'width': u'120px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'remarks',
-		'fieldtype': u'Small Text',
-		'label': u'Remarks',
-		'oldfieldname': u'remarks',
-		'oldfieldtype': u'Small Text',
-		'permlevel': 1,
-		'width': u'150px'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-03-27 14:35:40", 
+  "modified_by": "Administrator", 
+  "modified": "2012-03-27 14:35:40"
+ }, 
+ {
+  "section_style": "Tray", 
+  "istable": 1, 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "module": "Accounts", 
+  "show_in_menu": 0, 
+  "version": 24, 
+  "server_code_error": " ", 
+  "doctype": "DocType"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Sales Invoice Advance", 
+  "no_copy": 1, 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "Sales Invoice Advance", 
+  "doctype": "DocType"
+ }, 
+ {
+  "permlevel": 1, 
+  "oldfieldtype": "Link", 
+  "doctype": "DocField", 
+  "label": "Journal Voucher", 
+  "oldfieldname": "journal_voucher", 
+  "width": "250px", 
+  "fieldname": "journal_voucher", 
+  "fieldtype": "Link", 
+  "options": "Journal Voucher"
+ }, 
+ {
+  "print_hide": 1, 
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Journal Voucher Detail No", 
+  "oldfieldname": "jv_detail_no", 
+  "width": "120px", 
+  "fieldname": "jv_detail_no", 
+  "fieldtype": "Data", 
+  "hidden": 1, 
+  "permlevel": 1
+ }, 
+ {
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Advance amount", 
+  "oldfieldname": "advance_amount", 
+  "width": "120px", 
+  "fieldname": "advance_amount", 
+  "fieldtype": "Currency", 
+  "permlevel": 1
+ }, 
+ {
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Allocated amount", 
+  "oldfieldname": "allocated_amount", 
+  "width": "120px", 
+  "trigger": "Client", 
+  "fieldname": "allocated_amount", 
+  "fieldtype": "Currency", 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Small Text", 
+  "doctype": "DocField", 
+  "label": "Remarks", 
+  "oldfieldname": "remarks", 
+  "width": "150px", 
+  "fieldname": "remarks", 
+  "fieldtype": "Small Text", 
+  "permlevel": 1
+ }
 ]
\ No newline at end of file
diff --git a/accounts/doctype/sales_invoice_item/sales_invoice_item.txt b/accounts/doctype/sales_invoice_item/sales_invoice_item.txt
index da30751..19a627a 100644
--- a/accounts/doctype/sales_invoice_item/sales_invoice_item.txt
+++ b/accounts/doctype/sales_invoice_item/sales_invoice_item.txt
@@ -1,454 +1,385 @@
-# DocType, Sales Invoice Item
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-06-08 16:07:55',
-		'docstatus': 0,
-		'modified': '2012-07-09 11:00:18',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'autoname': u'INVD.######',
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'istable': 1,
-		'module': u'Accounts',
-		'name': '__common__',
-		'section_style': u'Tray',
-		'server_code_error': u' ',
-		'show_in_menu': 0,
-		'version': 1
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'Sales Invoice Item',
-		'parentfield': u'fields',
-		'parenttype': u'DocType'
-	},
-
-	# DocType, Sales Invoice Item
-	{
-		'doctype': 'DocType',
-		'name': u'Sales Invoice Item'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'barcode',
-		'fieldtype': u'Data',
-		'label': u'Barcode',
-		'permlevel': 0,
-		'print_hide': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'item_code',
-		'fieldtype': u'Link',
-		'in_filter': 1,
-		'label': u'Item',
-		'oldfieldname': u'item_code',
-		'oldfieldtype': u'Link',
-		'options': u'Item',
-		'permlevel': 0,
-		'print_hide': 0,
-		'reqd': 0,
-		'search_index': 1,
-		'trigger': u'Client'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'customer_item_code',
-		'fieldtype': u'Data',
-		'hidden': 1,
-		'label': u"Customer's Item Code",
-		'permlevel': 1,
-		'print_hide': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'item_name',
-		'fieldtype': u'Data',
-		'in_filter': 0,
-		'label': u'Item Name',
-		'oldfieldname': u'item_name',
-		'oldfieldtype': u'Data',
-		'permlevel': 0,
-		'print_hide': 1,
-		'reqd': 1,
-		'search_index': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'description',
-		'fieldtype': u'Text',
-		'label': u'Description',
-		'oldfieldname': u'description',
-		'oldfieldtype': u'Text',
-		'permlevel': 0,
-		'reqd': 1,
-		'width': u'200px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'qty',
-		'fieldtype': u'Currency',
-		'label': u'Qty',
-		'oldfieldname': u'qty',
-		'oldfieldtype': u'Currency',
-		'permlevel': 0,
-		'reqd': 0,
-		'trigger': u'Client'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'stock_uom',
-		'fieldtype': u'Data',
-		'label': u'UOM',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'doctype': u'DocField',
-		'fieldname': u'ref_rate',
-		'fieldtype': u'Currency',
-		'label': u'Price List Rate',
-		'oldfieldname': u'ref_rate',
-		'oldfieldtype': u'Currency',
-		'permlevel': 0,
-		'print_hide': 1,
-		'reqd': 0,
-		'trigger': u'Client'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'doctype': u'DocField',
-		'fieldname': u'adj_rate',
-		'fieldtype': u'Float',
-		'label': u'Discount (%)',
-		'oldfieldname': u'adj_rate',
-		'oldfieldtype': u'Float',
-		'permlevel': 0,
-		'print_hide': 1,
-		'trigger': u'Client'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'export_rate',
-		'fieldtype': u'Currency',
-		'label': u'Basic Rate',
-		'oldfieldname': u'export_rate',
-		'oldfieldtype': u'Currency',
-		'permlevel': 0,
-		'reqd': 1,
-		'trigger': u'Client'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'export_amount',
-		'fieldtype': u'Currency',
-		'label': u'Amount',
-		'oldfieldname': u'export_amount',
-		'oldfieldtype': u'Currency',
-		'permlevel': 1,
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'base_ref_rate',
-		'fieldtype': u'Currency',
-		'label': u'Price List Rate*',
-		'oldfieldname': u'base_ref_rate',
-		'oldfieldtype': u'Currency',
-		'permlevel': 1,
-		'print_hide': 1
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'doctype': u'DocField',
-		'fieldname': u'basic_rate',
-		'fieldtype': u'Currency',
-		'in_filter': 0,
-		'label': u'Basic Rate*',
-		'oldfieldname': u'basic_rate',
-		'oldfieldtype': u'Currency',
-		'permlevel': 0,
-		'print_hide': 1,
-		'reqd': 1,
-		'search_index': 0,
-		'trigger': u'Client'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'amount',
-		'fieldtype': u'Currency',
-		'label': u'Amount*',
-		'oldfieldname': u'amount',
-		'oldfieldtype': u'Currency',
-		'permlevel': 1,
-		'print_hide': 1,
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'warehouse',
-		'fieldtype': u'Link',
-		'hidden': 0,
-		'label': u'Warehouse',
-		'oldfieldname': u'warehouse',
-		'oldfieldtype': u'Link',
-		'options': u'Warehouse',
-		'permlevel': 0,
-		'print_hide': 1
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'doctype': u'DocField',
-		'fieldname': u'income_account',
-		'fieldtype': u'Link',
-		'in_filter': 1,
-		'label': u'Income Account',
-		'oldfieldname': u'income_account',
-		'oldfieldtype': u'Link',
-		'options': u'Account',
-		'permlevel': 0,
-		'print_hide': 1,
-		'reqd': 1,
-		'trigger': u'Client',
-		'width': u'120px'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'doctype': u'DocField',
-		'fieldname': u'cost_center',
-		'fieldtype': u'Link',
-		'in_filter': 1,
-		'label': u'Cost Center',
-		'oldfieldname': u'cost_center',
-		'oldfieldtype': u'Link',
-		'options': u'Cost Center',
-		'permlevel': 0,
-		'print_hide': 1,
-		'reqd': 0,
-		'trigger': u'Client',
-		'width': u'120px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'serial_no',
-		'fieldtype': u'Small Text',
-		'in_filter': 1,
-		'label': u'Serial No',
-		'oldfieldname': u'serial_no',
-		'oldfieldtype': u'Small Text',
-		'permlevel': 0,
-		'print_hide': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'batch_no',
-		'fieldtype': u'Link',
-		'label': u'Batch No',
-		'options': u'Batch',
-		'permlevel': 0,
-		'print_hide': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'item_group',
-		'fieldtype': u'Link',
-		'hidden': 1,
-		'in_filter': 1,
-		'label': u'Item Group',
-		'oldfieldname': u'item_group',
-		'oldfieldtype': u'Link',
-		'options': u'Item Group',
-		'permlevel': 1,
-		'print_hide': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'brand',
-		'fieldtype': u'Data',
-		'hidden': 1,
-		'in_filter': 1,
-		'label': u'Brand Name',
-		'oldfieldname': u'brand',
-		'oldfieldtype': u'Data',
-		'permlevel': 0,
-		'print_hide': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'actual_qty',
-		'fieldtype': u'Currency',
-		'label': u'Available Qty at Warehouse',
-		'oldfieldname': u'actual_qty',
-		'oldfieldtype': u'Currency',
-		'permlevel': 1,
-		'print_hide': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'delivered_qty',
-		'fieldtype': u'Currency',
-		'label': u'Delivered Qty',
-		'oldfieldname': u'delivered_qty',
-		'oldfieldtype': u'Currency',
-		'permlevel': 1,
-		'print_hide': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'sales_order',
-		'fieldtype': u'Link',
-		'in_filter': 1,
-		'label': u'Sales Order',
-		'oldfieldname': u'sales_order',
-		'oldfieldtype': u'Link',
-		'options': u'Sales Order',
-		'permlevel': 1,
-		'print_hide': 1,
-		'search_index': 1,
-		'trigger': u'Client'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'so_detail',
-		'fieldtype': u'Data',
-		'hidden': 1,
-		'in_filter': 1,
-		'label': u'SO Detail ',
-		'oldfieldname': u'so_detail',
-		'oldfieldtype': u'Data',
-		'permlevel': 1,
-		'print_hide': 1,
-		'search_index': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'delivery_note',
-		'fieldtype': u'Link',
-		'in_filter': 1,
-		'label': u'Delivery Note',
-		'oldfieldname': u'delivery_note',
-		'oldfieldtype': u'Link',
-		'options': u'Delivery Note',
-		'permlevel': 1,
-		'print_hide': 1,
-		'search_index': 1,
-		'trigger': u'Client'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'dn_detail',
-		'fieldtype': u'Data',
-		'hidden': 1,
-		'in_filter': 1,
-		'label': u'DN Detail',
-		'oldfieldname': u'dn_detail',
-		'oldfieldtype': u'Data',
-		'permlevel': 1,
-		'print_hide': 1,
-		'search_index': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'item_tax_rate',
-		'fieldtype': u'Small Text',
-		'hidden': 1,
-		'label': u'Item Tax Rate',
-		'oldfieldname': u'item_tax_rate',
-		'oldfieldtype': u'Small Text',
-		'permlevel': 1,
-		'print_hide': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'clear_pending',
-		'fieldtype': u'Check',
-		'hidden': 1,
-		'label': u'Clear Pending',
-		'no_copy': 1,
-		'oldfieldname': u'clear_pending',
-		'oldfieldtype': u'Check',
-		'permlevel': 1,
-		'print_hide': 1
-	},
-
-	# DocField
-	{
-		'allow_on_submit': 1,
-		'doctype': u'DocField',
-		'fieldname': u'page_break',
-		'fieldtype': u'Check',
-		'label': u'Page Break',
-		'no_copy': 1,
-		'permlevel': 0,
-		'print_hide': 1,
-		'report_hide': 1
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-06-08 16:07:55", 
+  "modified_by": "Administrator", 
+  "modified": "2012-07-09 11:00:18"
+ }, 
+ {
+  "section_style": "Tray", 
+  "istable": 1, 
+  "module": "Accounts", 
+  "server_code_error": " ", 
+  "doctype": "DocType", 
+  "autoname": "INVD.######", 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "show_in_menu": 0, 
+  "version": 1
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Sales Invoice Item", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "Sales Invoice Item", 
+  "doctype": "DocType"
+ }, 
+ {
+  "print_hide": 1, 
+  "doctype": "DocField", 
+  "label": "Barcode", 
+  "fieldname": "barcode", 
+  "fieldtype": "Data", 
+  "permlevel": 0
+ }, 
+ {
+  "print_hide": 0, 
+  "oldfieldtype": "Link", 
+  "doctype": "DocField", 
+  "label": "Item", 
+  "oldfieldname": "item_code", 
+  "permlevel": 0, 
+  "trigger": "Client", 
+  "fieldname": "item_code", 
+  "fieldtype": "Link", 
+  "search_index": 1, 
+  "reqd": 0, 
+  "options": "Item", 
+  "in_filter": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "doctype": "DocField", 
+  "label": "Customer's Item Code", 
+  "fieldname": "customer_item_code", 
+  "fieldtype": "Data", 
+  "hidden": 1, 
+  "permlevel": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "search_index": 0, 
+  "doctype": "DocField", 
+  "label": "Item Name", 
+  "oldfieldname": "item_name", 
+  "fieldname": "item_name", 
+  "fieldtype": "Data", 
+  "oldfieldtype": "Data", 
+  "reqd": 1, 
+  "permlevel": 0, 
+  "in_filter": 0
+ }, 
+ {
+  "oldfieldtype": "Text", 
+  "doctype": "DocField", 
+  "label": "Description", 
+  "oldfieldname": "description", 
+  "width": "200px", 
+  "fieldname": "description", 
+  "fieldtype": "Text", 
+  "reqd": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Qty", 
+  "oldfieldname": "qty", 
+  "trigger": "Client", 
+  "fieldname": "qty", 
+  "fieldtype": "Currency", 
+  "reqd": 0, 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "UOM", 
+  "fieldname": "stock_uom", 
+  "fieldtype": "Data", 
+  "permlevel": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "oldfieldtype": "Currency", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Price List Rate", 
+  "oldfieldname": "ref_rate", 
+  "trigger": "Client", 
+  "fieldname": "ref_rate", 
+  "fieldtype": "Currency", 
+  "reqd": 0, 
+  "permlevel": 0
+ }, 
+ {
+  "print_hide": 1, 
+  "oldfieldtype": "Float", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Discount (%)", 
+  "oldfieldname": "adj_rate", 
+  "trigger": "Client", 
+  "fieldname": "adj_rate", 
+  "fieldtype": "Float", 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Basic Rate", 
+  "oldfieldname": "export_rate", 
+  "trigger": "Client", 
+  "fieldname": "export_rate", 
+  "fieldtype": "Currency", 
+  "reqd": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Amount", 
+  "oldfieldname": "export_amount", 
+  "fieldname": "export_amount", 
+  "fieldtype": "Currency", 
+  "reqd": 1, 
+  "permlevel": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Price List Rate*", 
+  "oldfieldname": "base_ref_rate", 
+  "fieldname": "base_ref_rate", 
+  "fieldtype": "Currency", 
+  "permlevel": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "oldfieldtype": "Currency", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Basic Rate*", 
+  "oldfieldname": "basic_rate", 
+  "trigger": "Client", 
+  "fieldname": "basic_rate", 
+  "fieldtype": "Currency", 
+  "search_index": 0, 
+  "reqd": 1, 
+  "permlevel": 0, 
+  "in_filter": 0
+ }, 
+ {
+  "print_hide": 1, 
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Amount*", 
+  "oldfieldname": "amount", 
+  "fieldname": "amount", 
+  "fieldtype": "Currency", 
+  "reqd": 1, 
+  "permlevel": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "oldfieldtype": "Link", 
+  "doctype": "DocField", 
+  "label": "Warehouse", 
+  "oldfieldname": "warehouse", 
+  "permlevel": 0, 
+  "fieldname": "warehouse", 
+  "fieldtype": "Link", 
+  "hidden": 0, 
+  "options": "Warehouse"
+ }, 
+ {
+  "print_hide": 1, 
+  "permlevel": 0, 
+  "oldfieldtype": "Link", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Income Account", 
+  "oldfieldname": "income_account", 
+  "width": "120px", 
+  "trigger": "Client", 
+  "fieldname": "income_account", 
+  "fieldtype": "Link", 
+  "reqd": 1, 
+  "options": "Account", 
+  "in_filter": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "permlevel": 0, 
+  "oldfieldtype": "Link", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Cost Center", 
+  "oldfieldname": "cost_center", 
+  "width": "120px", 
+  "trigger": "Client", 
+  "fieldname": "cost_center", 
+  "fieldtype": "Link", 
+  "reqd": 0, 
+  "options": "Cost Center", 
+  "in_filter": 1
+ }, 
+ {
+  "print_hide": 0, 
+  "oldfieldtype": "Small Text", 
+  "doctype": "DocField", 
+  "label": "Serial No", 
+  "oldfieldname": "serial_no", 
+  "fieldname": "serial_no", 
+  "fieldtype": "Small Text", 
+  "permlevel": 0, 
+  "in_filter": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "doctype": "DocField", 
+  "label": "Batch No", 
+  "options": "Batch", 
+  "fieldname": "batch_no", 
+  "fieldtype": "Link", 
+  "permlevel": 0
+ }, 
+ {
+  "print_hide": 1, 
+  "oldfieldtype": "Link", 
+  "doctype": "DocField", 
+  "label": "Item Group", 
+  "oldfieldname": "item_group", 
+  "options": "Item Group", 
+  "fieldname": "item_group", 
+  "fieldtype": "Link", 
+  "hidden": 1, 
+  "permlevel": 1, 
+  "in_filter": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Brand Name", 
+  "oldfieldname": "brand", 
+  "fieldname": "brand", 
+  "fieldtype": "Data", 
+  "hidden": 1, 
+  "permlevel": 0, 
+  "in_filter": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Available Qty at Warehouse", 
+  "oldfieldname": "actual_qty", 
+  "fieldname": "actual_qty", 
+  "fieldtype": "Currency", 
+  "permlevel": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Delivered Qty", 
+  "oldfieldname": "delivered_qty", 
+  "fieldname": "delivered_qty", 
+  "fieldtype": "Currency", 
+  "permlevel": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "search_index": 1, 
+  "doctype": "DocField", 
+  "label": "Sales Order", 
+  "oldfieldname": "sales_order", 
+  "trigger": "Client", 
+  "fieldname": "sales_order", 
+  "fieldtype": "Link", 
+  "oldfieldtype": "Link", 
+  "options": "Sales Order", 
+  "permlevel": 1, 
+  "in_filter": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "search_index": 1, 
+  "doctype": "DocField", 
+  "label": "SO Detail ", 
+  "oldfieldname": "so_detail", 
+  "fieldname": "so_detail", 
+  "fieldtype": "Data", 
+  "oldfieldtype": "Data", 
+  "hidden": 1, 
+  "permlevel": 1, 
+  "in_filter": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "search_index": 1, 
+  "doctype": "DocField", 
+  "label": "Delivery Note", 
+  "oldfieldname": "delivery_note", 
+  "trigger": "Client", 
+  "fieldname": "delivery_note", 
+  "fieldtype": "Link", 
+  "oldfieldtype": "Link", 
+  "options": "Delivery Note", 
+  "permlevel": 1, 
+  "in_filter": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "search_index": 1, 
+  "doctype": "DocField", 
+  "label": "DN Detail", 
+  "oldfieldname": "dn_detail", 
+  "fieldname": "dn_detail", 
+  "fieldtype": "Data", 
+  "oldfieldtype": "Data", 
+  "hidden": 1, 
+  "permlevel": 1, 
+  "in_filter": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "oldfieldtype": "Small Text", 
+  "doctype": "DocField", 
+  "label": "Item Tax Rate", 
+  "oldfieldname": "item_tax_rate", 
+  "fieldname": "item_tax_rate", 
+  "fieldtype": "Small Text", 
+  "hidden": 1, 
+  "permlevel": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "no_copy": 1, 
+  "oldfieldtype": "Check", 
+  "doctype": "DocField", 
+  "label": "Clear Pending", 
+  "oldfieldname": "clear_pending", 
+  "fieldname": "clear_pending", 
+  "fieldtype": "Check", 
+  "hidden": 1, 
+  "permlevel": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "no_copy": 1, 
+  "allow_on_submit": 1, 
+  "doctype": "DocField", 
+  "label": "Page Break", 
+  "fieldname": "page_break", 
+  "fieldtype": "Check", 
+  "permlevel": 0, 
+  "report_hide": 1
+ }
 ]
\ No newline at end of file
diff --git a/accounts/doctype/sales_taxes_and_charges/sales_taxes_and_charges.txt b/accounts/doctype/sales_taxes_and_charges/sales_taxes_and_charges.txt
index 234907c..04b0794 100644
--- a/accounts/doctype/sales_taxes_and_charges/sales_taxes_and_charges.txt
+++ b/accounts/doctype/sales_taxes_and_charges/sales_taxes_and_charges.txt
@@ -1,223 +1,188 @@
-# DocType, Sales Taxes and Charges
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-07-04 16:40:13',
-		'docstatus': 0,
-		'modified': '2012-07-12 13:50:43',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'autoname': u'INVTD.######',
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'hide_heading': 1,
-		'istable': 1,
-		'module': u'Accounts',
-		'name': '__common__',
-		'section_style': u'Tray',
-		'server_code_error': u' ',
-		'show_in_menu': 0,
-		'version': 1
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'Sales Taxes and Charges',
-		'parentfield': u'fields',
-		'parenttype': u'DocType'
-	},
-
-	# DocType, Sales Taxes and Charges
-	{
-		'doctype': 'DocType',
-		'name': u'Sales Taxes and Charges'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'charge_type',
-		'fieldtype': u'Select',
-		'label': u'Type',
-		'oldfieldname': u'charge_type',
-		'oldfieldtype': u'Select',
-		'options': u'\nActual\nOn Net Total\nOn Previous Row Amount\nOn Previous Row Total',
-		'permlevel': 0,
-		'reqd': 1,
-		'trigger': u'Client'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'account_head',
-		'fieldtype': u'Link',
-		'label': u'Account Head',
-		'oldfieldname': u'account_head',
-		'oldfieldtype': u'Link',
-		'options': u'Account',
-		'permlevel': 0,
-		'reqd': 1,
-		'search_index': 1,
-		'trigger': u'Client'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'cost_center_other_charges',
-		'fieldtype': u'Link',
-		'label': u'Cost Center',
-		'oldfieldname': u'cost_center_other_charges',
-		'oldfieldtype': u'Link',
-		'options': u'Cost Center',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'description',
-		'fieldtype': u'Small Text',
-		'label': u'Description',
-		'oldfieldname': u'description',
-		'oldfieldtype': u'Small Text',
-		'permlevel': 0,
-		'reqd': 1,
-		'width': u'300px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'rate',
-		'fieldtype': u'Currency',
-		'label': u'Rate',
-		'oldfieldname': u'rate',
-		'oldfieldtype': u'Currency',
-		'permlevel': 0,
-		'reqd': 0,
-		'trigger': u'Client'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'tax_amount',
-		'fieldtype': u'Currency',
-		'label': u'Amount',
-		'oldfieldname': u'tax_amount',
-		'oldfieldtype': u'Currency',
-		'permlevel': 0,
-		'reqd': 0,
-		'trigger': u'Client'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'total',
-		'fieldtype': u'Currency',
-		'label': u'Total',
-		'oldfieldname': u'total',
-		'oldfieldtype': u'Currency',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'row_id',
-		'fieldtype': u'Data',
-		'hidden': 0,
-		'label': u'Enter Row',
-		'oldfieldname': u'row_id',
-		'oldfieldtype': u'Data',
-		'permlevel': 0,
-		'trigger': u'Client'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'doctype': u'DocField',
-		'fieldname': u'item_wise_tax_detail',
-		'fieldtype': u'Small Text',
-		'hidden': 1,
-		'label': u'Item Wise Tax Detail ',
-		'oldfieldname': u'item_wise_tax_detail',
-		'oldfieldtype': u'Small Text',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'parenttype',
-		'fieldtype': u'Data',
-		'hidden': 1,
-		'in_filter': 1,
-		'label': u'Parenttype',
-		'oldfieldname': u'parenttype',
-		'oldfieldtype': u'Data',
-		'permlevel': 0,
-		'print_hide': 1,
-		'search_index': 1
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'description': u'Cheating Field\nPlease do not delete ',
-		'doctype': u'DocField',
-		'fieldname': u'total_tax_amount',
-		'fieldtype': u'Currency',
-		'hidden': 1,
-		'label': u'Total Tax Amount',
-		'no_copy': 1,
-		'oldfieldname': u'total_tax_amount',
-		'oldfieldtype': u'Currency',
-		'permlevel': 0,
-		'print_hide': 1,
-		'report_hide': 1
-	},
-
-	# DocField
-	{
-		'description': u'Cheating Field\nPlease do not delete ',
-		'doctype': u'DocField',
-		'fieldname': u'total_amount',
-		'fieldtype': u'Currency',
-		'hidden': 1,
-		'label': u'Total Amount',
-		'no_copy': 1,
-		'oldfieldname': u'total_amount',
-		'oldfieldtype': u'Currency',
-		'permlevel': 0,
-		'print_hide': 1,
-		'report_hide': 1
-	},
-
-	# DocField
-	{
-		'allow_on_submit': 0,
-		'description': u'If checked, the tax amount will be considered as already included in the Print Rate / Print Amount',
-		'doctype': u'DocField',
-		'fieldname': u'included_in_print_rate',
-		'fieldtype': u'Check',
-		'label': u'Is this Tax included in Basic Rate?',
-		'no_column': 0,
-		'no_copy': 1,
-		'permlevel': 0,
-		'print_hide': 1,
-		'report_hide': 1,
-		'width': u'150px'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-07-04 16:40:13", 
+  "modified_by": "Administrator", 
+  "modified": "2012-07-12 13:50:43"
+ }, 
+ {
+  "section_style": "Tray", 
+  "istable": 1, 
+  "module": "Accounts", 
+  "doctype": "DocType", 
+  "autoname": "INVTD.######", 
+  "show_in_menu": 0, 
+  "hide_heading": 1, 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "server_code_error": " ", 
+  "version": 1
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Sales Taxes and Charges", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "Sales Taxes and Charges", 
+  "doctype": "DocType"
+ }, 
+ {
+  "oldfieldtype": "Select", 
+  "doctype": "DocField", 
+  "label": "Type", 
+  "oldfieldname": "charge_type", 
+  "permlevel": 0, 
+  "trigger": "Client", 
+  "fieldname": "charge_type", 
+  "fieldtype": "Select", 
+  "reqd": 1, 
+  "options": "\nActual\nOn Net Total\nOn Previous Row Amount\nOn Previous Row Total"
+ }, 
+ {
+  "search_index": 1, 
+  "doctype": "DocField", 
+  "label": "Account Head", 
+  "oldfieldname": "account_head", 
+  "trigger": "Client", 
+  "fieldname": "account_head", 
+  "fieldtype": "Link", 
+  "oldfieldtype": "Link", 
+  "reqd": 1, 
+  "options": "Account", 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Link", 
+  "doctype": "DocField", 
+  "label": "Cost Center", 
+  "oldfieldname": "cost_center_other_charges", 
+  "permlevel": 0, 
+  "fieldname": "cost_center_other_charges", 
+  "fieldtype": "Link", 
+  "options": "Cost Center"
+ }, 
+ {
+  "oldfieldtype": "Small Text", 
+  "doctype": "DocField", 
+  "label": "Description", 
+  "oldfieldname": "description", 
+  "width": "300px", 
+  "fieldname": "description", 
+  "fieldtype": "Small Text", 
+  "reqd": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Rate", 
+  "oldfieldname": "rate", 
+  "trigger": "Client", 
+  "fieldname": "rate", 
+  "fieldtype": "Currency", 
+  "reqd": 0, 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Amount", 
+  "oldfieldname": "tax_amount", 
+  "trigger": "Client", 
+  "fieldname": "tax_amount", 
+  "fieldtype": "Currency", 
+  "reqd": 0, 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Total", 
+  "oldfieldname": "total", 
+  "fieldname": "total", 
+  "fieldtype": "Currency", 
+  "permlevel": 1
+ }, 
+ {
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Enter Row", 
+  "oldfieldname": "row_id", 
+  "trigger": "Client", 
+  "fieldname": "row_id", 
+  "fieldtype": "Data", 
+  "hidden": 0, 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Small Text", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Item Wise Tax Detail ", 
+  "oldfieldname": "item_wise_tax_detail", 
+  "fieldname": "item_wise_tax_detail", 
+  "fieldtype": "Small Text", 
+  "hidden": 1, 
+  "permlevel": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "search_index": 1, 
+  "doctype": "DocField", 
+  "label": "Parenttype", 
+  "oldfieldname": "parenttype", 
+  "fieldname": "parenttype", 
+  "fieldtype": "Data", 
+  "oldfieldtype": "Data", 
+  "hidden": 1, 
+  "permlevel": 0, 
+  "in_filter": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "description": "Cheating Field\nPlease do not delete ", 
+  "no_copy": 1, 
+  "oldfieldtype": "Currency", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Total Tax Amount", 
+  "oldfieldname": "total_tax_amount", 
+  "fieldname": "total_tax_amount", 
+  "fieldtype": "Currency", 
+  "hidden": 1, 
+  "permlevel": 0, 
+  "report_hide": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "description": "Cheating Field\nPlease do not delete ", 
+  "no_copy": 1, 
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Total Amount", 
+  "oldfieldname": "total_amount", 
+  "fieldname": "total_amount", 
+  "fieldtype": "Currency", 
+  "hidden": 1, 
+  "permlevel": 0, 
+  "report_hide": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "description": "If checked, the tax amount will be considered as already included in the Print Rate / Print Amount", 
+  "no_copy": 1, 
+  "allow_on_submit": 0, 
+  "doctype": "DocField", 
+  "label": "Is this Tax included in Basic Rate?", 
+  "width": "150px", 
+  "fieldname": "included_in_print_rate", 
+  "fieldtype": "Check", 
+  "no_column": 0, 
+  "permlevel": 0, 
+  "report_hide": 1
+ }
 ]
\ No newline at end of file
diff --git a/accounts/doctype/sales_taxes_and_charges_master/sales_taxes_and_charges_master.txt b/accounts/doctype/sales_taxes_and_charges_master/sales_taxes_and_charges_master.txt
index 5870a46..d789d85 100644
--- a/accounts/doctype/sales_taxes_and_charges_master/sales_taxes_and_charges_master.txt
+++ b/accounts/doctype/sales_taxes_and_charges_master/sales_taxes_and_charges_master.txt
@@ -1,173 +1,142 @@
-# DocType, Sales Taxes and Charges Master
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-07-03 13:30:46',
-		'docstatus': 0,
-		'modified': '2012-07-12 13:43:32',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'_last_update': u'1322549700',
-		'allow_trash': 1,
-		'autoname': u'field:title',
-		'colour': u'White:FFF',
-		'description': u'Standard tax template that can be applied to all Sales Transactions. This template can contain list of tax heads and also other expense / income heads like "Shipping", "Insurance", "Handling" etc.\n\n#### Note\n\nThe tax rate you define here will be the standard tax rate for all **Items**. If there are **Items** that have different rates, they must be added in the **Item Tax** table in the **Item** master.\n\n#### Description of Columns\n\n1. Calculation Type: \n    - This can be on **Net Total** (that is the sum of basic amount).\n    - **On Previous Row Total / Amount** (for cumulative taxes or charges). If you select this option, the tax will be applied as a percentage of the previous row (in the tax table) amount or total.\n    - **Actual** (as mentioned).\n2. Account Head: The Account ledger under which this tax will be booked\n3. Cost Center: If the tax / charge is an income (like shipping) or expense it needs to be booked against a Cost Center.\n4. Description: Description of the tax (that will be printed in invoices / quotes).\n5. Rate: Tax rate.\n6. Amount: Tax amount.\n7. Total: Cumulative total to this point.\n8. Enter Row: If based on "Previous Row Total" you can select the row number which will be taken as a base for this calculation (default is the previous row).\n9. Is this Tax included in Basic Rate?: If you check this, it means that this tax will not be shown below the item table, but will be included in the Basic Rate in your main item table. This is useful where you want give a flat price (inclusive of all taxes) price to customers.',
-		'doctype': 'DocType',
-		'document_type': u'Master',
-		'module': u'Accounts',
-		'name': '__common__',
-		'section_style': u'Tabbed',
-		'server_code_error': u' ',
-		'show_in_menu': 0,
-		'version': 1
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'Sales Taxes and Charges Master',
-		'parentfield': u'fields',
-		'parenttype': u'DocType',
-		'permlevel': 0
-	},
-
-	# These values are common for all DocPerm
-	{
-		'doctype': u'DocPerm',
-		'name': '__common__',
-		'parent': u'Sales Taxes and Charges Master',
-		'parentfield': u'permissions',
-		'parenttype': u'DocType',
-		'read': 1
-	},
-
-	# DocType, Sales Taxes and Charges Master
-	{
-		'doctype': 'DocType',
-		'name': u'Sales Taxes and Charges Master'
-	},
-
-	# DocPerm
-	{
-		'amend': 0,
-		'cancel': 0,
-		'create': 0,
-		'doctype': u'DocPerm',
-		'permlevel': 1,
-		'role': u'Sales Master Manager',
-		'submit': 0,
-		'write': 0
-	},
-
-	# DocPerm
-	{
-		'amend': 0,
-		'cancel': 0,
-		'create': 0,
-		'doctype': u'DocPerm',
-		'permlevel': 1,
-		'role': u'Sales User',
-		'submit': 0,
-		'write': 0
-	},
-
-	# DocPerm
-	{
-		'amend': 0,
-		'cancel': 0,
-		'create': 0,
-		'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'Sales User',
-		'submit': 0,
-		'write': 0
-	},
-
-	# DocPerm
-	{
-		'amend': 0,
-		'cancel': 1,
-		'create': 1,
-		'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'Accounts Manager',
-		'submit': 0,
-		'write': 1
-	},
-
-	# DocPerm
-	{
-		'cancel': 1,
-		'create': 1,
-		'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'System Manager',
-		'write': 1
-	},
-
-	# DocPerm
-	{
-		'amend': 0,
-		'cancel': 1,
-		'create': 1,
-		'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'Sales Master Manager',
-		'submit': 0,
-		'write': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'title',
-		'fieldtype': u'Data',
-		'in_filter': 1,
-		'label': u'Title',
-		'oldfieldname': u'title',
-		'oldfieldtype': u'Data',
-		'reqd': 1,
-		'search_index': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'is_default',
-		'fieldtype': u'Check',
-		'label': u'Default'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'description': u'* Will be calculated in the transaction.',
-		'doctype': u'DocField',
-		'fieldname': u'other_charges',
-		'fieldtype': u'Table',
-		'label': u'Sales Taxes and Charges Master',
-		'oldfieldname': u'other_charges',
-		'oldfieldtype': u'Table',
-		'options': u'Sales Taxes and Charges'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'company',
-		'fieldtype': u'Link',
-		'in_filter': 1,
-		'label': u'Company',
-		'oldfieldname': u'company',
-		'oldfieldtype': u'Link',
-		'options': u'Company',
-		'reqd': 1,
-		'search_index': 0
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-07-03 13:30:46", 
+  "modified_by": "Administrator", 
+  "modified": "2012-07-12 13:43:32"
+ }, 
+ {
+  "section_style": "Tabbed", 
+  "description": "Standard tax template that can be applied to all Sales Transactions. This template can contain list of tax heads and also other expense / income heads like \"Shipping\", \"Insurance\", \"Handling\" etc.\n\n#### Note\n\nThe tax rate you define here will be the standard tax rate for all **Items**. If there are **Items** that have different rates, they must be added in the **Item Tax** table in the **Item** master.\n\n#### Description of Columns\n\n1. Calculation Type: \n    - This can be on **Net Total** (that is the sum of basic amount).\n    - **On Previous Row Total / Amount** (for cumulative taxes or charges). If you select this option, the tax will be applied as a percentage of the previous row (in the tax table) amount or total.\n    - **Actual** (as mentioned).\n2. Account Head: The Account ledger under which this tax will be booked\n3. Cost Center: If the tax / charge is an income (like shipping) or expense it needs to be booked against a Cost Center.\n4. Description: Description of the tax (that will be printed in invoices / quotes).\n5. Rate: Tax rate.\n6. Amount: Tax amount.\n7. Total: Cumulative total to this point.\n8. Enter Row: If based on \"Previous Row Total\" you can select the row number which will be taken as a base for this calculation (default is the previous row).\n9. Is this Tax included in Basic Rate?: If you check this, it means that this tax will not be shown below the item table, but will be included in the Basic Rate in your main item table. This is useful where you want give a flat price (inclusive of all taxes) price to customers.", 
+  "module": "Accounts", 
+  "doctype": "DocType", 
+  "allow_trash": 1, 
+  "server_code_error": " ", 
+  "document_type": "Master", 
+  "autoname": "field:title", 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "_last_update": "1322549700", 
+  "show_in_menu": 0, 
+  "version": 1
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Sales Taxes and Charges Master", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "permlevel": 0, 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Sales Taxes and Charges Master", 
+  "read": 1, 
+  "doctype": "DocPerm", 
+  "parenttype": "DocType", 
+  "parentfield": "permissions"
+ }, 
+ {
+  "name": "Sales Taxes and Charges Master", 
+  "doctype": "DocType"
+ }, 
+ {
+  "amend": 0, 
+  "create": 0, 
+  "doctype": "DocPerm", 
+  "submit": 0, 
+  "write": 0, 
+  "role": "Sales Master Manager", 
+  "cancel": 0, 
+  "permlevel": 1
+ }, 
+ {
+  "amend": 0, 
+  "create": 0, 
+  "doctype": "DocPerm", 
+  "submit": 0, 
+  "write": 0, 
+  "role": "Sales User", 
+  "cancel": 0, 
+  "permlevel": 1
+ }, 
+ {
+  "amend": 0, 
+  "create": 0, 
+  "doctype": "DocPerm", 
+  "submit": 0, 
+  "write": 0, 
+  "role": "Sales User", 
+  "cancel": 0, 
+  "permlevel": 0
+ }, 
+ {
+  "amend": 0, 
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "submit": 0, 
+  "write": 1, 
+  "role": "Accounts Manager", 
+  "cancel": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "write": 1, 
+  "role": "System Manager", 
+  "cancel": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "amend": 0, 
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "submit": 0, 
+  "write": 1, 
+  "role": "Sales Master Manager", 
+  "cancel": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "search_index": 0, 
+  "doctype": "DocField", 
+  "label": "Title", 
+  "oldfieldname": "title", 
+  "fieldname": "title", 
+  "fieldtype": "Data", 
+  "oldfieldtype": "Data", 
+  "reqd": 1, 
+  "in_filter": 1
+ }, 
+ {
+  "doctype": "DocField", 
+  "fieldname": "is_default", 
+  "fieldtype": "Check", 
+  "label": "Default"
+ }, 
+ {
+  "description": "* Will be calculated in the transaction.", 
+  "oldfieldtype": "Table", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Sales Taxes and Charges Master", 
+  "oldfieldname": "other_charges", 
+  "fieldname": "other_charges", 
+  "fieldtype": "Table", 
+  "options": "Sales Taxes and Charges"
+ }, 
+ {
+  "search_index": 0, 
+  "doctype": "DocField", 
+  "label": "Company", 
+  "oldfieldname": "company", 
+  "fieldname": "company", 
+  "fieldtype": "Link", 
+  "oldfieldtype": "Link", 
+  "reqd": 1, 
+  "options": "Company", 
+  "in_filter": 1
+ }
 ]
\ No newline at end of file
diff --git a/accounts/doctype/trend_analyzer_control/trend_analyzer_control.txt b/accounts/doctype/trend_analyzer_control/trend_analyzer_control.txt
index e7dc9b4..092cd6e 100755
--- a/accounts/doctype/trend_analyzer_control/trend_analyzer_control.txt
+++ b/accounts/doctype/trend_analyzer_control/trend_analyzer_control.txt
@@ -1,32 +1,25 @@
-# DocType, Trend Analyzer Control
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:35:49',
-		'docstatus': 0,
-		'modified': '2012-03-27 14:35:49',
-		'modified_by': u'Administrator',
-		'owner': u'saumil@webnotestech.com'
-	},
-
-	# These values are common for all DocType
-	{
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'in_create': 1,
-		'issingle': 1,
-		'module': u'Accounts',
-		'name': '__common__',
-		'read_only': 1,
-		'section_style': u'Simple',
-		'server_code_error': u' ',
-		'version': 11
-	},
-
-	# DocType, Trend Analyzer Control
-	{
-		'doctype': 'DocType',
-		'name': u'Trend Analyzer Control'
-	}
-]
+ {
+  "owner": "saumil@webnotestech.com", 
+  "docstatus": 0, 
+  "creation": "2012-03-27 14:35:49", 
+  "modified_by": "Administrator", 
+  "modified": "2012-03-27 14:35:49"
+ }, 
+ {
+  "section_style": "Simple", 
+  "in_create": 1, 
+  "module": "Accounts", 
+  "server_code_error": " ", 
+  "doctype": "DocType", 
+  "issingle": 1, 
+  "read_only": 1, 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "version": 11
+ }, 
+ {
+  "name": "Trend Analyzer Control", 
+  "doctype": "DocType"
+ }
+]
\ No newline at end of file
diff --git a/accounts/page/accounts_browser/accounts_browser.txt b/accounts/page/accounts_browser/accounts_browser.txt
index d3e98db..38dc643 100644
--- a/accounts/page/accounts_browser/accounts_browser.txt
+++ b/accounts/page/accounts_browser/accounts_browser.txt
@@ -1,49 +1,36 @@
-# Page, Accounts Browser
 [
-
-	# These values are common in all dictionaries
-	{
-		u'creation': '2012-06-14 15:07:28',
-		u'docstatus': 0,
-		u'modified': '2012-10-04 16:57:27',
-		u'modified_by': u'Administrator',
-		u'owner': u'Administrator'
-	},
-
-	# These values are common for all Page
-	{
-		u'doctype': u'Page',
-		'module': u'Accounts',
-		u'name': u'__common__',
-		'page_name': u'Accounts Browser',
-		'show_in_menu': 0,
-		'standard': u'Yes'
-	},
-
-	# These values are common for all Page Role
-	{
-		u'doctype': u'Page Role',
-		u'name': u'__common__',
-		'parent': u'Accounts Browser',
-		'parentfield': u'roles',
-		'parenttype': u'Page'
-	},
-
-	# Page, Accounts Browser
-	{
-		u'doctype': u'Page',
-		u'name': u'Accounts Browser'
-	},
-
-	# Page Role
-	{
-		u'doctype': u'Page Role',
-		'role': u'Accounts User'
-	},
-
-	# Page Role
-	{
-		u'doctype': u'Page Role',
-		'role': u'Accounts Manager'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-06-14 15:07:28", 
+  "modified_by": "Administrator", 
+  "modified": "2012-10-04 16:57:27"
+ }, 
+ {
+  "name": "__common__", 
+  "module": "Accounts", 
+  "show_in_menu": 0, 
+  "page_name": "Accounts Browser", 
+  "doctype": "Page", 
+  "standard": "Yes"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Accounts Browser", 
+  "doctype": "Page Role", 
+  "parenttype": "Page", 
+  "parentfield": "roles"
+ }, 
+ {
+  "name": "Accounts Browser", 
+  "doctype": "Page"
+ }, 
+ {
+  "role": "Accounts User", 
+  "doctype": "Page Role"
+ }, 
+ {
+  "role": "Accounts Manager", 
+  "doctype": "Page Role"
+ }
 ]
\ No newline at end of file
diff --git a/accounts/page/accounts_home/accounts_home.txt b/accounts/page/accounts_home/accounts_home.txt
index 28b0e72..6000241 100644
--- a/accounts/page/accounts_home/accounts_home.txt
+++ b/accounts/page/accounts_home/accounts_home.txt
@@ -1,28 +1,21 @@
-# Page, accounts-home
 [
-
-	# These values are common in all dictionaries
-	{
-		u'creation': '2012-06-14 15:07:28',
-		u'docstatus': 0,
-		u'modified': '2012-10-05 16:30:46',
-		u'modified_by': u'Administrator',
-		u'owner': u'Administrator'
-	},
-
-	# These values are common for all Page
-	{
-		u'doctype': u'Page',
-		'module': u'Accounts',
-		u'name': u'__common__',
-		'page_name': u'accounts-home',
-		'standard': u'Yes',
-		'title': u'Accounts Home'
-	},
-
-	# Page, accounts-home
-	{
-		u'doctype': u'Page',
-		u'name': u'accounts-home'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-06-14 15:07:28", 
+  "modified_by": "Administrator", 
+  "modified": "2012-10-05 16:30:46"
+ }, 
+ {
+  "name": "__common__", 
+  "title": "Accounts Home", 
+  "module": "Accounts", 
+  "doctype": "Page", 
+  "page_name": "accounts-home", 
+  "standard": "Yes"
+ }, 
+ {
+  "name": "accounts-home", 
+  "doctype": "Page"
+ }
 ]
\ No newline at end of file
diff --git a/accounts/page/financial_analytics/financial_analytics.txt b/accounts/page/financial_analytics/financial_analytics.txt
index b02144f..5572a0e 100644
--- a/accounts/page/financial_analytics/financial_analytics.txt
+++ b/accounts/page/financial_analytics/financial_analytics.txt
@@ -1,55 +1,40 @@
-# Page, financial-analytics
 [
-
-	# These values are common in all dictionaries
-	{
-		u'creation': '2012-09-18 11:05:48',
-		u'docstatus': 0,
-		u'modified': '2012-10-04 17:02:43',
-		u'modified_by': u'Administrator',
-		u'owner': u'Administrator'
-	},
-
-	# These values are common for all Page
-	{
-		u'doctype': u'Page',
-		'module': u'Accounts',
-		u'name': u'__common__',
-		'page_name': u'financial-analytics',
-		'standard': u'Yes',
-		'title': u'Financial Analytics'
-	},
-
-	# These values are common for all Page Role
-	{
-		u'doctype': u'Page Role',
-		u'name': u'__common__',
-		'parent': u'financial-analytics',
-		'parentfield': u'roles',
-		'parenttype': u'Page'
-	},
-
-	# Page, financial-analytics
-	{
-		u'doctype': u'Page',
-		u'name': u'financial-analytics'
-	},
-
-	# Page Role
-	{
-		u'doctype': u'Page Role',
-		'role': u'Analytics'
-	},
-
-	# Page Role
-	{
-		u'doctype': u'Page Role',
-		'role': u'Accounts Manager'
-	},
-
-	# Page Role
-	{
-		u'doctype': u'Page Role',
-		'role': u'Accounts User'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-09-18 11:05:48", 
+  "modified_by": "Administrator", 
+  "modified": "2012-10-04 17:02:43"
+ }, 
+ {
+  "name": "__common__", 
+  "title": "Financial Analytics", 
+  "module": "Accounts", 
+  "doctype": "Page", 
+  "page_name": "financial-analytics", 
+  "standard": "Yes"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "financial-analytics", 
+  "doctype": "Page Role", 
+  "parenttype": "Page", 
+  "parentfield": "roles"
+ }, 
+ {
+  "name": "financial-analytics", 
+  "doctype": "Page"
+ }, 
+ {
+  "role": "Analytics", 
+  "doctype": "Page Role"
+ }, 
+ {
+  "role": "Accounts Manager", 
+  "doctype": "Page Role"
+ }, 
+ {
+  "role": "Accounts User", 
+  "doctype": "Page Role"
+ }
 ]
\ No newline at end of file
diff --git a/accounts/page/financial_statements/financial_statements.txt b/accounts/page/financial_statements/financial_statements.txt
index ba212fc..152aa40 100644
--- a/accounts/page/financial_statements/financial_statements.txt
+++ b/accounts/page/financial_statements/financial_statements.txt
@@ -1,49 +1,36 @@
-# Page, Financial Statements
 [
-
-	# These values are common in all dictionaries
-	{
-		u'creation': '2012-06-14 15:07:28',
-		u'docstatus': 0,
-		u'modified': '2012-10-04 17:04:05',
-		u'modified_by': u'Administrator',
-		u'owner': u'Administrator'
-	},
-
-	# These values are common for all Page
-	{
-		u'doctype': u'Page',
-		'module': u'Accounts',
-		u'name': u'__common__',
-		'page_name': u'Financial Statements',
-		'show_in_menu': 0,
-		'standard': u'Yes'
-	},
-
-	# These values are common for all Page Role
-	{
-		u'doctype': u'Page Role',
-		u'name': u'__common__',
-		'parent': u'Financial Statements',
-		'parentfield': u'roles',
-		'parenttype': u'Page'
-	},
-
-	# Page, Financial Statements
-	{
-		u'doctype': u'Page',
-		u'name': u'Financial Statements'
-	},
-
-	# Page Role
-	{
-		u'doctype': u'Page Role',
-		'role': u'Accounts User'
-	},
-
-	# Page Role
-	{
-		u'doctype': u'Page Role',
-		'role': u'Accounts Manager'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-06-14 15:07:28", 
+  "modified_by": "Administrator", 
+  "modified": "2012-10-04 17:04:05"
+ }, 
+ {
+  "name": "__common__", 
+  "module": "Accounts", 
+  "show_in_menu": 0, 
+  "page_name": "Financial Statements", 
+  "doctype": "Page", 
+  "standard": "Yes"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Financial Statements", 
+  "doctype": "Page Role", 
+  "parenttype": "Page", 
+  "parentfield": "roles"
+ }, 
+ {
+  "name": "Financial Statements", 
+  "doctype": "Page"
+ }, 
+ {
+  "role": "Accounts User", 
+  "doctype": "Page Role"
+ }, 
+ {
+  "role": "Accounts Manager", 
+  "doctype": "Page Role"
+ }
 ]
\ No newline at end of file
diff --git a/accounts/page/general_ledger/general_ledger.txt b/accounts/page/general_ledger/general_ledger.txt
index 067f2f0..94b93e2 100644
--- a/accounts/page/general_ledger/general_ledger.txt
+++ b/accounts/page/general_ledger/general_ledger.txt
@@ -1,55 +1,40 @@
-# Page, general-ledger
 [
-
-	# These values are common in all dictionaries
-	{
-		u'creation': '2012-09-14 11:25:48',
-		u'docstatus': 0,
-		u'modified': '2012-10-04 17:00:09',
-		u'modified_by': u'Administrator',
-		u'owner': u'Administrator'
-	},
-
-	# These values are common for all Page
-	{
-		u'doctype': u'Page',
-		'module': u'Accounts',
-		u'name': u'__common__',
-		'page_name': u'general-ledger',
-		'standard': u'Yes',
-		'title': u'General Ledger'
-	},
-
-	# These values are common for all Page Role
-	{
-		u'doctype': u'Page Role',
-		u'name': u'__common__',
-		'parent': u'general-ledger',
-		'parentfield': u'roles',
-		'parenttype': u'Page'
-	},
-
-	# Page, general-ledger
-	{
-		u'doctype': u'Page',
-		u'name': u'general-ledger'
-	},
-
-	# Page Role
-	{
-		u'doctype': u'Page Role',
-		'role': u'Analytics'
-	},
-
-	# Page Role
-	{
-		u'doctype': u'Page Role',
-		'role': u'Accounts Manager'
-	},
-
-	# Page Role
-	{
-		u'doctype': u'Page Role',
-		'role': u'Accounts User'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-09-14 11:25:48", 
+  "modified_by": "Administrator", 
+  "modified": "2012-10-04 17:00:09"
+ }, 
+ {
+  "name": "__common__", 
+  "title": "General Ledger", 
+  "module": "Accounts", 
+  "doctype": "Page", 
+  "page_name": "general-ledger", 
+  "standard": "Yes"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "general-ledger", 
+  "doctype": "Page Role", 
+  "parenttype": "Page", 
+  "parentfield": "roles"
+ }, 
+ {
+  "name": "general-ledger", 
+  "doctype": "Page"
+ }, 
+ {
+  "role": "Analytics", 
+  "doctype": "Page Role"
+ }, 
+ {
+  "role": "Accounts Manager", 
+  "doctype": "Page Role"
+ }, 
+ {
+  "role": "Accounts User", 
+  "doctype": "Page Role"
+ }
 ]
\ No newline at end of file
diff --git a/accounts/page/trial_balance/trial_balance.txt b/accounts/page/trial_balance/trial_balance.txt
index 9bbd513..eafc1d2 100644
--- a/accounts/page/trial_balance/trial_balance.txt
+++ b/accounts/page/trial_balance/trial_balance.txt
@@ -1,55 +1,40 @@
-# Page, trial-balance
 [
-
-	# These values are common in all dictionaries
-	{
-		u'creation': '2012-09-18 11:05:48',
-		u'docstatus': 0,
-		u'modified': '2012-10-04 17:01:47',
-		u'modified_by': u'Administrator',
-		u'owner': u'Administrator'
-	},
-
-	# These values are common for all Page
-	{
-		u'doctype': u'Page',
-		'module': u'Accounts',
-		u'name': u'__common__',
-		'page_name': u'trial-balance',
-		'standard': u'Yes',
-		'title': u'Trial Balance'
-	},
-
-	# These values are common for all Page Role
-	{
-		u'doctype': u'Page Role',
-		u'name': u'__common__',
-		'parent': u'trial-balance',
-		'parentfield': u'roles',
-		'parenttype': u'Page'
-	},
-
-	# Page, trial-balance
-	{
-		u'doctype': u'Page',
-		u'name': u'trial-balance'
-	},
-
-	# Page Role
-	{
-		u'doctype': u'Page Role',
-		'role': u'Analytics'
-	},
-
-	# Page Role
-	{
-		u'doctype': u'Page Role',
-		'role': u'Accounts Manager'
-	},
-
-	# Page Role
-	{
-		u'doctype': u'Page Role',
-		'role': u'Accounts User'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-09-18 11:05:48", 
+  "modified_by": "Administrator", 
+  "modified": "2012-10-04 17:01:47"
+ }, 
+ {
+  "name": "__common__", 
+  "title": "Trial Balance", 
+  "module": "Accounts", 
+  "doctype": "Page", 
+  "page_name": "trial-balance", 
+  "standard": "Yes"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "trial-balance", 
+  "doctype": "Page Role", 
+  "parenttype": "Page", 
+  "parentfield": "roles"
+ }, 
+ {
+  "name": "trial-balance", 
+  "doctype": "Page"
+ }, 
+ {
+  "role": "Analytics", 
+  "doctype": "Page Role"
+ }, 
+ {
+  "role": "Accounts Manager", 
+  "doctype": "Page Role"
+ }, 
+ {
+  "role": "Accounts User", 
+  "doctype": "Page Role"
+ }
 ]
\ No newline at end of file
diff --git a/accounts/page/voucher_import_tool/voucher_import_tool.txt b/accounts/page/voucher_import_tool/voucher_import_tool.txt
index ab4b9bd..8e5ad0b 100644
--- a/accounts/page/voucher_import_tool/voucher_import_tool.txt
+++ b/accounts/page/voucher_import_tool/voucher_import_tool.txt
@@ -1,43 +1,32 @@
-# Page, voucher-import-tool
 [
-
-	# These values are common in all dictionaries
-	{
-		u'creation': '2012-10-02 18:51:49',
-		u'docstatus': 0,
-		u'modified': '2012-10-04 17:04:18',
-		u'modified_by': u'Administrator',
-		u'owner': u'Administrator'
-	},
-
-	# These values are common for all Page
-	{
-		u'doctype': u'Page',
-		'module': u'Accounts',
-		u'name': u'__common__',
-		'page_name': u'voucher-import-tool',
-		'standard': u'Yes',
-		'title': u'Voucher Import Tool'
-	},
-
-	# These values are common for all Page Role
-	{
-		u'doctype': u'Page Role',
-		u'name': u'__common__',
-		'parent': u'voucher-import-tool',
-		'parentfield': u'roles',
-		'parenttype': u'Page',
-		'role': u'Accounts Manager'
-	},
-
-	# Page, voucher-import-tool
-	{
-		u'doctype': u'Page',
-		u'name': u'voucher-import-tool'
-	},
-
-	# Page Role
-	{
-		u'doctype': u'Page Role'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-10-02 18:51:49", 
+  "modified_by": "Administrator", 
+  "modified": "2012-10-04 17:04:18"
+ }, 
+ {
+  "name": "__common__", 
+  "title": "Voucher Import Tool", 
+  "module": "Accounts", 
+  "doctype": "Page", 
+  "page_name": "voucher-import-tool", 
+  "standard": "Yes"
+ }, 
+ {
+  "parent": "voucher-import-tool", 
+  "name": "__common__", 
+  "doctype": "Page Role", 
+  "parenttype": "Page", 
+  "role": "Accounts Manager", 
+  "parentfield": "roles"
+ }, 
+ {
+  "name": "voucher-import-tool", 
+  "doctype": "Page"
+ }, 
+ {
+  "doctype": "Page Role"
+ }
 ]
\ No newline at end of file
diff --git a/accounts/search_criteria/accounts_payable/accounts_payable.txt b/accounts/search_criteria/accounts_payable/accounts_payable.txt
index 55ef6dd..7f9151c 100644
--- a/accounts/search_criteria/accounts_payable/accounts_payable.txt
+++ b/accounts/search_criteria/accounts_payable/accounts_payable.txt
@@ -1,33 +1,26 @@
-# Search Criteria, accounts_payable
 [
-
-	# These values are common in all dictionaries
-	{
-		u'creation': '2012-05-14 18:05:41',
-		u'docstatus': 0,
-		u'modified': '2012-10-17 10:51:41',
-		u'modified_by': u'Administrator',
-		u'owner': u'Administrator'
-	},
-
-	# These values are common for all Search Criteria
-	{
-		'columns': u'GL Entry\x01Posting Date,GL Entry\x01Account,GL Entry\x01Against Voucher,GL Entry\x01Voucher No',
-		'criteria_name': u'Accounts Payable',
-		'doc_type': u'GL Entry',
-		u'doctype': u'Search Criteria',
-		'filters': u'{"GL Entry\\u0001Voucher Type":[""],"GL Entry\\u0001Is Cancelled":[""],"GL Entry\\u0001Is Opening":[""],"GL Entry\\u0001Fiscal Year":[""],"Purchase Invoice\\u0001Aging Based On":["Aging Date"],"GL Entry\\u0001Range 1":"30","GL Entry\\u0001Range 2":"45","GL Entry\\u0001Range 3":"60","GL Entry\\u0001Range 4":"90"}',
-		'module': u'Accounts',
-		u'name': u'__common__',
-		'page_len': 50,
-		'sort_by': u'`tabGL Entry`.`name`',
-		'sort_order': u'DESC',
-		'standard': u'Yes'
-	},
-
-	# Search Criteria, accounts_payable
-	{
-		u'doctype': u'Search Criteria',
-		u'name': u'accounts_payable'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-05-14 18:05:41", 
+  "modified_by": "Administrator", 
+  "modified": "2012-10-17 10:51:41"
+ }, 
+ {
+  "module": "Accounts", 
+  "standard": "Yes", 
+  "sort_order": "DESC", 
+  "filters": "{\"GL Entry\\u0001Voucher Type\":[\"\"],\"GL Entry\\u0001Is Cancelled\":[\"\"],\"GL Entry\\u0001Is Opening\":[\"\"],\"GL Entry\\u0001Fiscal Year\":[\"\"],\"Purchase Invoice\\u0001Aging Based On\":[\"Aging Date\"],\"GL Entry\\u0001Range 1\":\"30\",\"GL Entry\\u0001Range 2\":\"45\",\"GL Entry\\u0001Range 3\":\"60\",\"GL Entry\\u0001Range 4\":\"90\"}", 
+  "doctype": "Search Criteria", 
+  "doc_type": "GL Entry", 
+  "name": "__common__", 
+  "sort_by": "`tabGL Entry`.`name`", 
+  "page_len": 50, 
+  "criteria_name": "Accounts Payable", 
+  "columns": "GL Entry\u0001Posting Date,GL Entry\u0001Account,GL Entry\u0001Against Voucher,GL Entry\u0001Voucher No"
+ }, 
+ {
+  "name": "accounts_payable", 
+  "doctype": "Search Criteria"
+ }
 ]
\ No newline at end of file
diff --git a/accounts/search_criteria/accounts_receivable/accounts_receivable.txt b/accounts/search_criteria/accounts_receivable/accounts_receivable.txt
index 33a5318..cfa496e 100644
--- a/accounts/search_criteria/accounts_receivable/accounts_receivable.txt
+++ b/accounts/search_criteria/accounts_receivable/accounts_receivable.txt
@@ -1,32 +1,25 @@
-# Search Criteria, accounts_receivable
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-04-03 12:49:50',
-		'docstatus': 0,
-		'modified': '2012-04-03 12:49:50',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all Search Criteria
-	{
-		'columns': u'GL Entry\x01Posting Date,GL Entry\x01Transaction Date,GL Entry\x01Account,GL Entry\x01Against Voucher,GL Entry\x01Voucher No',
-		'criteria_name': u'Accounts Receivable',
-		'doc_type': u'GL Entry',
-		'doctype': 'Search Criteria',
-		'filters': u"{'GL Entry\x01Is Cancelled':'No','GL Entry\x01Fiscal Year':'','GL Entry\x01Company':'','GL Entry\x01Range 1':'30','GL Entry\x01Range 2':'45','GL Entry\x01Range 3':'60','GL Entry\x01Range 4':'90'}",
-		'module': u'Accounts',
-		'name': '__common__',
-		'sort_by': u'`tabGL Entry`.`name`',
-		'sort_order': u'ASC',
-		'standard': u'Yes'
-	},
-
-	# Search Criteria, accounts_receivable
-	{
-		'doctype': 'Search Criteria',
-		'name': u'accounts_receivable'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-04-03 12:49:50", 
+  "modified_by": "Administrator", 
+  "modified": "2012-04-03 12:49:50"
+ }, 
+ {
+  "module": "Accounts", 
+  "standard": "Yes", 
+  "sort_order": "ASC", 
+  "filters": "{'GL Entry\u0001Is Cancelled':'No','GL Entry\u0001Fiscal Year':'','GL Entry\u0001Company':'','GL Entry\u0001Range 1':'30','GL Entry\u0001Range 2':'45','GL Entry\u0001Range 3':'60','GL Entry\u0001Range 4':'90'}", 
+  "doctype": "Search Criteria", 
+  "doc_type": "GL Entry", 
+  "name": "__common__", 
+  "sort_by": "`tabGL Entry`.`name`", 
+  "criteria_name": "Accounts Receivable", 
+  "columns": "GL Entry\u0001Posting Date,GL Entry\u0001Transaction Date,GL Entry\u0001Account,GL Entry\u0001Against Voucher,GL Entry\u0001Voucher No"
+ }, 
+ {
+  "name": "accounts_receivable", 
+  "doctype": "Search Criteria"
+ }
 ]
\ No newline at end of file
diff --git a/accounts/search_criteria/bank_clearance_report/bank_clearance_report.txt b/accounts/search_criteria/bank_clearance_report/bank_clearance_report.txt
index c329d7e..0038438 100644
--- a/accounts/search_criteria/bank_clearance_report/bank_clearance_report.txt
+++ b/accounts/search_criteria/bank_clearance_report/bank_clearance_report.txt
@@ -1,36 +1,29 @@
-# Search Criteria, bank_clearance_report
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-04-03 12:49:50',
-		'docstatus': 0,
-		'modified': '2012-04-03 12:49:50',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all Search Criteria
-	{
-		'columns': u'Journal Voucher\x01ID,Journal Voucher Detail\x01Account,Journal Voucher Detail\x01Debit,Journal Voucher Detail\x01Credit,Journal Voucher\x01Clearance Date,Journal Voucher\x01Cheque No,Journal Voucher\x01Cheque Date,Journal Voucher\x01Voucher Date,Journal Voucher\x01Posting Date,Journal Voucher Detail\x01Against Payable,Journal Voucher Detail\x01Against Receivable',
-		'criteria_name': u'Bank Clearance report',
-		'description': u'Bank Clearance report',
-		'dis_filters': u'fiscal_year',
-		'doc_type': u'Journal Voucher Detail',
-		'doctype': 'Search Criteria',
-		'filters': u"{'Journal Voucher\x01Submitted':1,'Journal Voucher\x01Voucher Type':'','Journal Voucher\x01Is Opening':'','Journal Voucher\x01Fiscal Year':'','Journal Voucher\x01Company':'','Journal Voucher\x01TDS Applicable':'','Journal Voucher\x01TDS Category':''}",
-		'module': u'Accounts',
-		'name': '__common__',
-		'page_len': 50,
-		'parent_doc_type': u'Journal Voucher',
-		'sort_by': u'ID',
-		'sort_order': u'DESC',
-		'standard': u'Yes'
-	},
-
-	# Search Criteria, bank_clearance_report
-	{
-		'doctype': 'Search Criteria',
-		'name': u'bank_clearance_report'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-04-03 12:49:50", 
+  "modified_by": "Administrator", 
+  "modified": "2012-04-03 12:49:50"
+ }, 
+ {
+  "description": "Bank Clearance report", 
+  "parent_doc_type": "Journal Voucher", 
+  "module": "Accounts", 
+  "standard": "Yes", 
+  "sort_order": "DESC", 
+  "filters": "{'Journal Voucher\u0001Submitted':1,'Journal Voucher\u0001Voucher Type':'','Journal Voucher\u0001Is Opening':'','Journal Voucher\u0001Fiscal Year':'','Journal Voucher\u0001Company':'','Journal Voucher\u0001TDS Applicable':'','Journal Voucher\u0001TDS Category':''}", 
+  "dis_filters": "fiscal_year", 
+  "doc_type": "Journal Voucher Detail", 
+  "name": "__common__", 
+  "doctype": "Search Criteria", 
+  "sort_by": "ID", 
+  "page_len": 50, 
+  "criteria_name": "Bank Clearance report", 
+  "columns": "Journal Voucher\u0001ID,Journal Voucher Detail\u0001Account,Journal Voucher Detail\u0001Debit,Journal Voucher Detail\u0001Credit,Journal Voucher\u0001Clearance Date,Journal Voucher\u0001Cheque No,Journal Voucher\u0001Cheque Date,Journal Voucher\u0001Voucher Date,Journal Voucher\u0001Posting Date,Journal Voucher Detail\u0001Against Payable,Journal Voucher Detail\u0001Against Receivable"
+ }, 
+ {
+  "name": "bank_clearance_report", 
+  "doctype": "Search Criteria"
+ }
 ]
\ No newline at end of file
diff --git a/accounts/search_criteria/bank_reconciliation_statement/bank_reconciliation_statement.txt b/accounts/search_criteria/bank_reconciliation_statement/bank_reconciliation_statement.txt
index 1518e85..4d5d5fc 100644
--- a/accounts/search_criteria/bank_reconciliation_statement/bank_reconciliation_statement.txt
+++ b/accounts/search_criteria/bank_reconciliation_statement/bank_reconciliation_statement.txt
@@ -1,36 +1,29 @@
-# Search Criteria, bank_reconciliation_statement
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-04-03 12:49:50',
-		'docstatus': 0,
-		'modified': '2012-04-03 12:49:50',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all Search Criteria
-	{
-		'add_cond': u"(`tabJournal Voucher Detail`.credit >= 0 or `tabJournal Voucher Detail`.credit is null)\n(`tabJournal Voucher`.cheque_no is not null or `tabJournal Voucher`.cheque_no != '')\n(ifnull(`tabJournal Voucher`.clearance_date, '0000-00-00') >'%(clearance_date1)s' or `tabJournal Voucher`.clearance_date is null or `tabJournal Voucher`.clearance_date = '0000-00-00')\n(`tabJournal Voucher`.posting_date <= '%(clearance_date1)s')",
-		'columns': u'Journal Voucher\x01ID,Journal Voucher\x01Posting Date,Journal Voucher\x01Cheque No,Journal Voucher\x01Cheque Date,Journal Voucher\x01Clearance Date,Journal Voucher Detail\x01Account,Journal Voucher Detail\x01Debit,Journal Voucher Detail\x01Credit,Journal Voucher Detail\x01Against Account',
-		'criteria_name': u'Bank Reconciliation Statement',
-		'dis_filters': u'clearance_date\nfiscal_year',
-		'doc_type': u'Journal Voucher Detail',
-		'doctype': 'Search Criteria',
-		'filters': u"{'Journal Voucher\x01Submitted':1,'Journal Voucher\x01Voucher Type':'','Journal Voucher\x01Is Opening':'','Journal Voucher\x01Company':'','Journal Voucher\x01TDS Applicable':'','Journal Voucher\x01TDS Category':''}",
-		'module': u'Accounts',
-		'name': '__common__',
-		'page_len': 50,
-		'parent_doc_type': u'Journal Voucher',
-		'sort_by': u'`tabJournal Voucher`.`name`',
-		'sort_order': u'DESC',
-		'standard': u'Yes'
-	},
-
-	# Search Criteria, bank_reconciliation_statement
-	{
-		'doctype': 'Search Criteria',
-		'name': u'bank_reconciliation_statement'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-04-03 12:49:50", 
+  "modified_by": "Administrator", 
+  "modified": "2012-04-03 12:49:50"
+ }, 
+ {
+  "parent_doc_type": "Journal Voucher", 
+  "module": "Accounts", 
+  "standard": "Yes", 
+  "sort_order": "DESC", 
+  "filters": "{'Journal Voucher\u0001Submitted':1,'Journal Voucher\u0001Voucher Type':'','Journal Voucher\u0001Is Opening':'','Journal Voucher\u0001Company':'','Journal Voucher\u0001TDS Applicable':'','Journal Voucher\u0001TDS Category':''}", 
+  "dis_filters": "clearance_date\nfiscal_year", 
+  "doc_type": "Journal Voucher Detail", 
+  "name": "__common__", 
+  "add_cond": "(`tabJournal Voucher Detail`.credit >= 0 or `tabJournal Voucher Detail`.credit is null)\n(`tabJournal Voucher`.cheque_no is not null or `tabJournal Voucher`.cheque_no != '')\n(ifnull(`tabJournal Voucher`.clearance_date, '0000-00-00') >'%(clearance_date1)s' or `tabJournal Voucher`.clearance_date is null or `tabJournal Voucher`.clearance_date = '0000-00-00')\n(`tabJournal Voucher`.posting_date <= '%(clearance_date1)s')", 
+  "doctype": "Search Criteria", 
+  "sort_by": "`tabJournal Voucher`.`name`", 
+  "page_len": 50, 
+  "criteria_name": "Bank Reconciliation Statement", 
+  "columns": "Journal Voucher\u0001ID,Journal Voucher\u0001Posting Date,Journal Voucher\u0001Cheque No,Journal Voucher\u0001Cheque Date,Journal Voucher\u0001Clearance Date,Journal Voucher Detail\u0001Account,Journal Voucher Detail\u0001Debit,Journal Voucher Detail\u0001Credit,Journal Voucher Detail\u0001Against Account"
+ }, 
+ {
+  "name": "bank_reconciliation_statement", 
+  "doctype": "Search Criteria"
+ }
 ]
\ No newline at end of file
diff --git a/accounts/search_criteria/budget_variance_report/budget_variance_report.txt b/accounts/search_criteria/budget_variance_report/budget_variance_report.txt
index f8df9db..2c079a0 100644
--- a/accounts/search_criteria/budget_variance_report/budget_variance_report.txt
+++ b/accounts/search_criteria/budget_variance_report/budget_variance_report.txt
@@ -1,33 +1,26 @@
-# Search Criteria, budget_variance_report
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-04-03 12:49:50',
-		'docstatus': 0,
-		'modified': '2012-04-03 12:49:50',
-		'modified_by': u'Administrator',
-		'owner': u'harshada@webnotestech.com'
-	},
-
-	# These values are common for all Search Criteria
-	{
-		'criteria_name': u'Budget Variance Report',
-		'doc_type': u'Budget Detail',
-		'doctype': 'Search Criteria',
-		'filters': u"{'Budget Detail\x01Fiscal Year':''}",
-		'module': u'Accounts',
-		'name': '__common__',
-		'page_len': 50,
-		'parent_doc_type': u'Cost Center',
-		'sort_by': u'`tabCost Center`.`lft`',
-		'sort_order': u'DESC',
-		'standard': u'Yes'
-	},
-
-	# Search Criteria, budget_variance_report
-	{
-		'doctype': 'Search Criteria',
-		'name': u'budget_variance_report'
-	}
+ {
+  "owner": "harshada@webnotestech.com", 
+  "docstatus": 0, 
+  "creation": "2012-04-03 12:49:50", 
+  "modified_by": "Administrator", 
+  "modified": "2012-04-03 12:49:50"
+ }, 
+ {
+  "parent_doc_type": "Cost Center", 
+  "module": "Accounts", 
+  "doctype": "Search Criteria", 
+  "sort_order": "DESC", 
+  "filters": "{'Budget Detail\u0001Fiscal Year':''}", 
+  "standard": "Yes", 
+  "doc_type": "Budget Detail", 
+  "name": "__common__", 
+  "sort_by": "`tabCost Center`.`lft`", 
+  "page_len": 50, 
+  "criteria_name": "Budget Variance Report"
+ }, 
+ {
+  "name": "budget_variance_report", 
+  "doctype": "Search Criteria"
+ }
 ]
\ No newline at end of file
diff --git a/accounts/search_criteria/business_associate_commission_report/business_associate_commission_report.txt b/accounts/search_criteria/business_associate_commission_report/business_associate_commission_report.txt
index aba68a8..ffc6422 100644
--- a/accounts/search_criteria/business_associate_commission_report/business_associate_commission_report.txt
+++ b/accounts/search_criteria/business_associate_commission_report/business_associate_commission_report.txt
@@ -1,36 +1,29 @@
-# Search Criteria, business_associate_commission_report
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-04-03 12:49:50',
-		'docstatus': 0,
-		'modified': '2012-04-03 12:49:50',
-		'modified_by': u'Administrator',
-		'owner': u'saumil@webnotestech.com'
-	},
-
-	# These values are common for all Search Criteria
-	{
-		'add_col': u"SUM(`tabSales Invoice`.`total_commission`) AS 'Total Commission'\nSUM(`tabSales Invoice`.`net_total`) AS 'Net Total'\n((SUM(`tabSales Invoice`.`total_commission`) / SUM(`tabSales Invoice`.`net_total`)) * 100) AS 'Average Commission Rate'",
-		'add_cond': u'`tabSales Invoice`.`net_total` > 0\n`tabSales Invoice`.`total_commission` > 0',
-		'columns': u'Sales Invoice\x01Business Associate',
-		'criteria_name': u'Business Associate Commission Report',
-		'description': u'Track total commission given to your Business Associate',
-		'doc_type': u'Sales Invoice',
-		'doctype': 'Search Criteria',
-		'filters': u"{'Sales Invoice\x01Submitted':1}",
-		'group_by': u'`tabSales Invoice`.sales_partner',
-		'module': u'Accounts',
-		'name': '__common__',
-		'page_len': 50,
-		'sort_order': u'DESC',
-		'standard': u'Yes'
-	},
-
-	# Search Criteria, business_associate_commission_report
-	{
-		'doctype': 'Search Criteria',
-		'name': u'business_associate_commission_report'
-	}
+ {
+  "owner": "saumil@webnotestech.com", 
+  "docstatus": 0, 
+  "creation": "2012-04-03 12:49:50", 
+  "modified_by": "Administrator", 
+  "modified": "2012-04-03 12:49:50"
+ }, 
+ {
+  "add_col": "SUM(`tabSales Invoice`.`total_commission`) AS 'Total Commission'\nSUM(`tabSales Invoice`.`net_total`) AS 'Net Total'\n((SUM(`tabSales Invoice`.`total_commission`) / SUM(`tabSales Invoice`.`net_total`)) * 100) AS 'Average Commission Rate'", 
+  "module": "Accounts", 
+  "standard": "Yes", 
+  "sort_order": "DESC", 
+  "filters": "{'Sales Invoice\u0001Submitted':1}", 
+  "description": "Track total commission given to your Business Associate", 
+  "doc_type": "Sales Invoice", 
+  "name": "__common__", 
+  "add_cond": "`tabSales Invoice`.`net_total` > 0\n`tabSales Invoice`.`total_commission` > 0", 
+  "doctype": "Search Criteria", 
+  "group_by": "`tabSales Invoice`.sales_partner", 
+  "page_len": 50, 
+  "criteria_name": "Business Associate Commission Report", 
+  "columns": "Sales Invoice\u0001Business Associate"
+ }, 
+ {
+  "name": "business_associate_commission_report", 
+  "doctype": "Search Criteria"
+ }
 ]
\ No newline at end of file
diff --git a/accounts/search_criteria/collection_report/collection_report.txt b/accounts/search_criteria/collection_report/collection_report.txt
index dd78dfc..781e74c 100644
--- a/accounts/search_criteria/collection_report/collection_report.txt
+++ b/accounts/search_criteria/collection_report/collection_report.txt
@@ -1,33 +1,26 @@
-# Search Criteria, collection_report
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-04-03 12:49:50',
-		'docstatus': 0,
-		'modified': '2012-04-03 12:49:50',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all Search Criteria
-	{
-		'columns': u'Journal Voucher\x01ID,Journal Voucher\x01Posting Date,Journal Voucher\x01Company,Journal Voucher\x01Cheque No,Journal Voucher\x01Cheque Date,Journal Voucher Detail\x01Account,Journal Voucher Detail\x01Credit,Journal Voucher Detail\x01Against Receivable,Journal Voucher Detail\x01Is Advance',
-		'criteria_name': u'Collection Report',
-		'doc_type': u'Journal Voucher Detail',
-		'doctype': 'Search Criteria',
-		'filters': u"{'Journal Voucher\x01Saved':1,'Journal Voucher\x01Submitted':1,'Journal Voucher\x01Voucher Type':'','Journal Voucher\x01Is Opening':'','Journal Voucher\x01Company':'','Journal Voucher\x01TDS Applicable':'','Journal Voucher\x01TDS Category':'','GL Entry\x01Range 1':'30','GL Entry\x01Range 2':'45','GL Entry\x01Range 3':'60','GL Entry\x01Range 4':'90'}",
-		'module': u'Accounts',
-		'name': '__common__',
-		'parent_doc_type': u'Journal Voucher',
-		'sort_by': u'`tabJournal Voucher`.`name`',
-		'sort_order': u'DESC',
-		'standard': u'Yes'
-	},
-
-	# Search Criteria, collection_report
-	{
-		'doctype': 'Search Criteria',
-		'name': u'collection_report'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-04-03 12:49:50", 
+  "modified_by": "Administrator", 
+  "modified": "2012-04-03 12:49:50"
+ }, 
+ {
+  "parent_doc_type": "Journal Voucher", 
+  "module": "Accounts", 
+  "doctype": "Search Criteria", 
+  "sort_order": "DESC", 
+  "filters": "{'Journal Voucher\u0001Saved':1,'Journal Voucher\u0001Submitted':1,'Journal Voucher\u0001Voucher Type':'','Journal Voucher\u0001Is Opening':'','Journal Voucher\u0001Company':'','Journal Voucher\u0001TDS Applicable':'','Journal Voucher\u0001TDS Category':'','GL Entry\u0001Range 1':'30','GL Entry\u0001Range 2':'45','GL Entry\u0001Range 3':'60','GL Entry\u0001Range 4':'90'}", 
+  "standard": "Yes", 
+  "doc_type": "Journal Voucher Detail", 
+  "name": "__common__", 
+  "sort_by": "`tabJournal Voucher`.`name`", 
+  "criteria_name": "Collection Report", 
+  "columns": "Journal Voucher\u0001ID,Journal Voucher\u0001Posting Date,Journal Voucher\u0001Company,Journal Voucher\u0001Cheque No,Journal Voucher\u0001Cheque Date,Journal Voucher Detail\u0001Account,Journal Voucher Detail\u0001Credit,Journal Voucher Detail\u0001Against Receivable,Journal Voucher Detail\u0001Is Advance"
+ }, 
+ {
+  "name": "collection_report", 
+  "doctype": "Search Criteria"
+ }
 ]
\ No newline at end of file
diff --git a/accounts/search_criteria/cost_center_wise_expense/cost_center_wise_expense.txt b/accounts/search_criteria/cost_center_wise_expense/cost_center_wise_expense.txt
index 2aed507..98e3b08 100644
--- a/accounts/search_criteria/cost_center_wise_expense/cost_center_wise_expense.txt
+++ b/accounts/search_criteria/cost_center_wise_expense/cost_center_wise_expense.txt
@@ -1,33 +1,26 @@
-# Search Criteria, cost_center_wise_expense
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-04-03 12:49:50',
-		'docstatus': 0,
-		'modified': '2012-04-03 12:49:50',
-		'modified_by': u'Administrator',
-		'owner': u'swarnalata@webnotestech.com'
-	},
-
-	# These values are common for all Search Criteria
-	{
-		'criteria_name': u'Cost Center wise Expense',
-		'dis_filters': u'fiscal_year',
-		'doc_type': u'GL Entry',
-		'doctype': 'Search Criteria',
-		'filters': u"{'GL Entry\x01Voucher Type':'','GL Entry\x01Is Cancelled':'','GL Entry\x01Fiscal Year':'','GL Entry\x01Company':''}",
-		'module': u'Accounts',
-		'name': '__common__',
-		'page_len': 50,
-		'sort_by': u'`tabGL Entry`.`name`',
-		'sort_order': u'DESC',
-		'standard': u'Yes'
-	},
-
-	# Search Criteria, cost_center_wise_expense
-	{
-		'doctype': 'Search Criteria',
-		'name': u'cost_center_wise_expense'
-	}
+ {
+  "owner": "swarnalata@webnotestech.com", 
+  "docstatus": 0, 
+  "creation": "2012-04-03 12:49:50", 
+  "modified_by": "Administrator", 
+  "modified": "2012-04-03 12:49:50"
+ }, 
+ {
+  "module": "Accounts", 
+  "standard": "Yes", 
+  "sort_order": "DESC", 
+  "filters": "{'GL Entry\u0001Voucher Type':'','GL Entry\u0001Is Cancelled':'','GL Entry\u0001Fiscal Year':'','GL Entry\u0001Company':''}", 
+  "doctype": "Search Criteria", 
+  "dis_filters": "fiscal_year", 
+  "doc_type": "GL Entry", 
+  "name": "__common__", 
+  "sort_by": "`tabGL Entry`.`name`", 
+  "page_len": 50, 
+  "criteria_name": "Cost Center wise Expense"
+ }, 
+ {
+  "name": "cost_center_wise_expense", 
+  "doctype": "Search Criteria"
+ }
 ]
\ No newline at end of file
diff --git a/accounts/search_criteria/general_ledger/general_ledger.txt b/accounts/search_criteria/general_ledger/general_ledger.txt
index 5cf15ea..939b8a3 100644
--- a/accounts/search_criteria/general_ledger/general_ledger.txt
+++ b/accounts/search_criteria/general_ledger/general_ledger.txt
@@ -1,32 +1,25 @@
-# Search Criteria, general_ledger
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-04-03 12:49:51',
-		'docstatus': 0,
-		'modified': '2012-04-03 12:49:51',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all Search Criteria
-	{
-		'criteria_name': u'General Ledger',
-		'doc_type': u'GL Entry',
-		'doctype': 'Search Criteria',
-		'filters': u"{'GL Entry\x01From Posting Date\x01lower':'','GL Entry\x01To Posting Date\x01upper':'','GL Entry\x01Voucher Type':'','GL Entry\x01Is Cancelled':'No','GL Entry\x01Is Opening':'','GL Entry\x01Fiscal Year':'','GL Entry\x01Company':''}",
-		'module': u'Accounts',
-		'name': '__common__',
-		'page_len': 50,
-		'sort_by': u'`tabGL Entry`.`name`',
-		'sort_order': u'DESC',
-		'standard': u'Yes'
-	},
-
-	# Search Criteria, general_ledger
-	{
-		'doctype': 'Search Criteria',
-		'name': u'general_ledger'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-04-03 12:49:51", 
+  "modified_by": "Administrator", 
+  "modified": "2012-04-03 12:49:51"
+ }, 
+ {
+  "module": "Accounts", 
+  "sort_order": "DESC", 
+  "filters": "{'GL Entry\u0001From Posting Date\u0001lower':'','GL Entry\u0001To Posting Date\u0001upper':'','GL Entry\u0001Voucher Type':'','GL Entry\u0001Is Cancelled':'No','GL Entry\u0001Is Opening':'','GL Entry\u0001Fiscal Year':'','GL Entry\u0001Company':''}", 
+  "standard": "Yes", 
+  "doc_type": "GL Entry", 
+  "name": "__common__", 
+  "doctype": "Search Criteria", 
+  "sort_by": "`tabGL Entry`.`name`", 
+  "page_len": 50, 
+  "criteria_name": "General Ledger"
+ }, 
+ {
+  "name": "general_ledger", 
+  "doctype": "Search Criteria"
+ }
 ]
\ No newline at end of file
diff --git a/accounts/search_criteria/invoices_overdue/invoices_overdue.txt b/accounts/search_criteria/invoices_overdue/invoices_overdue.txt
index a83d490..514afac 100644
--- a/accounts/search_criteria/invoices_overdue/invoices_overdue.txt
+++ b/accounts/search_criteria/invoices_overdue/invoices_overdue.txt
@@ -1,34 +1,27 @@
-# Search Criteria, invoices-overdue
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-04-03 12:49:51',
-		'docstatus': 0,
-		'modified': '2012-04-03 12:49:51',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all Search Criteria
-	{
-		'add_cond': u'`tabSales Invoice`.due_date<now()\n`tabSales Invoice`.outstanding_amount!=0\n`tabSales Invoice`.docstatus=1',
-		'columns': u'Sales Invoice\x01ID,Sales Invoice\x01Debit To,Sales Invoice\x01Voucher Date,Sales Invoice\x01Due Date,Sales Invoice\x01Outstanding Amount',
-		'criteria_name': u'Invoices-Overdue',
-		'doc_type': u'Sales Invoice',
-		'doctype': 'Search Criteria',
-		'filters': u"{'Sales Invoice\x01Saved':1,'Sales Invoice\x01Submitted':1,'Sales Invoice\x01Is Opening':'','Sales Invoice\x01Fiscal Year':''}",
-		'module': u'Accounts',
-		'name': '__common__',
-		'page_len': 50,
-		'sort_by': u'`tabSales Invoice`.`name`',
-		'sort_order': u'DESC',
-		'standard': u'Yes'
-	},
-
-	# Search Criteria, invoices-overdue
-	{
-		'doctype': 'Search Criteria',
-		'name': u'invoices-overdue'
-	}
-]
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-04-03 12:49:51", 
+  "modified_by": "Administrator", 
+  "modified": "2012-04-03 12:49:51"
+ }, 
+ {
+  "module": "Accounts", 
+  "standard": "Yes", 
+  "sort_order": "DESC", 
+  "filters": "{'Sales Invoice\u0001Saved':1,'Sales Invoice\u0001Submitted':1,'Sales Invoice\u0001Is Opening':'','Sales Invoice\u0001Fiscal Year':''}", 
+  "doc_type": "Sales Invoice", 
+  "name": "__common__", 
+  "add_cond": "`tabSales Invoice`.due_date<now()\n`tabSales Invoice`.outstanding_amount!=0\n`tabSales Invoice`.docstatus=1", 
+  "doctype": "Search Criteria", 
+  "sort_by": "`tabSales Invoice`.`name`", 
+  "page_len": 50, 
+  "criteria_name": "Invoices-Overdue", 
+  "columns": "Sales Invoice\u0001ID,Sales Invoice\u0001Debit To,Sales Invoice\u0001Voucher Date,Sales Invoice\u0001Due Date,Sales Invoice\u0001Outstanding Amount"
+ }, 
+ {
+  "name": "invoices-overdue", 
+  "doctype": "Search Criteria"
+ }
+]
\ No newline at end of file
diff --git a/accounts/search_criteria/itemwise_purchase_register/itemwise_purchase_register.txt b/accounts/search_criteria/itemwise_purchase_register/itemwise_purchase_register.txt
index 206985e..93977f9 100644
--- a/accounts/search_criteria/itemwise_purchase_register/itemwise_purchase_register.txt
+++ b/accounts/search_criteria/itemwise_purchase_register/itemwise_purchase_register.txt
@@ -1,36 +1,29 @@
-# Search Criteria, itemwise_purchase_register
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-04-03 12:49:51',
-		'docstatus': 0,
-		'modified': '2012-04-03 12:49:51',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all Search Criteria
-	{
-		'columns': u'Purchase Invoice\x01ID,Purchase Invoice\x01Credit To,Purchase Invoice\x01Company,Purchase Invoice Item\x01Item,Purchase Invoice Item\x01Item Name,Purchase Invoice Item\x01Expense Head,Purchase Invoice Item\x01Cost Center,Purchase Invoice Item\x01Qty,Purchase Invoice Item\x01Rate (Default Curr.),Purchase Invoice Item\x01Amount (Default Curr.)',
-		'criteria_name': u'Itemwise Purchase Register',
-		'description': u'Itemwise Purchase Register',
-		'dis_filters': u'fiscal_year',
-		'doc_type': u'Purchase Invoice Item',
-		'doctype': 'Search Criteria',
-		'filters': u"{'Purchase Invoice\x01Submitted':1,'Purchase Invoice\x01Is Opening':'No','Purchase Invoice\x01Company':'','Purchase Invoice\x01Fiscal Year':''}",
-		'module': u'Accounts',
-		'name': '__common__',
-		'page_len': 50,
-		'parent_doc_type': u'Purchase Invoice',
-		'sort_by': u'`tabPurchase Invoice`.`name`',
-		'sort_order': u'DESC',
-		'standard': u'Yes'
-	},
-
-	# Search Criteria, itemwise_purchase_register
-	{
-		'doctype': 'Search Criteria',
-		'name': u'itemwise_purchase_register'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-04-03 12:49:51", 
+  "modified_by": "Administrator", 
+  "modified": "2012-04-03 12:49:51"
+ }, 
+ {
+  "description": "Itemwise Purchase Register", 
+  "parent_doc_type": "Purchase Invoice", 
+  "module": "Accounts", 
+  "standard": "Yes", 
+  "sort_order": "DESC", 
+  "filters": "{'Purchase Invoice\u0001Submitted':1,'Purchase Invoice\u0001Is Opening':'No','Purchase Invoice\u0001Company':'','Purchase Invoice\u0001Fiscal Year':''}", 
+  "dis_filters": "fiscal_year", 
+  "doc_type": "Purchase Invoice Item", 
+  "name": "__common__", 
+  "doctype": "Search Criteria", 
+  "sort_by": "`tabPurchase Invoice`.`name`", 
+  "page_len": 50, 
+  "criteria_name": "Itemwise Purchase Register", 
+  "columns": "Purchase Invoice\u0001ID,Purchase Invoice\u0001Credit To,Purchase Invoice\u0001Company,Purchase Invoice Item\u0001Item,Purchase Invoice Item\u0001Item Name,Purchase Invoice Item\u0001Expense Head,Purchase Invoice Item\u0001Cost Center,Purchase Invoice Item\u0001Qty,Purchase Invoice Item\u0001Rate (Default Curr.),Purchase Invoice Item\u0001Amount (Default Curr.)"
+ }, 
+ {
+  "name": "itemwise_purchase_register", 
+  "doctype": "Search Criteria"
+ }
 ]
\ No newline at end of file
diff --git a/accounts/search_criteria/itemwise_sales_register/itemwise_sales_register.txt b/accounts/search_criteria/itemwise_sales_register/itemwise_sales_register.txt
index 5393e00..9819845 100644
--- a/accounts/search_criteria/itemwise_sales_register/itemwise_sales_register.txt
+++ b/accounts/search_criteria/itemwise_sales_register/itemwise_sales_register.txt
@@ -1,34 +1,27 @@
-# Search Criteria, itemwise_sales_register
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-04-03 12:49:51',
-		'docstatus': 0,
-		'modified': '2012-04-03 12:49:51',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all Search Criteria
-	{
-		'columns': u'Sales Invoice Item\x01Item,Sales Invoice Item\x01Item Name,Sales Invoice Item\x01Item Group,Sales Invoice\x01ID,Sales Invoice\x01Voucher Date,Sales Invoice\x01Posting Date,Sales Invoice\x01Debit To,Sales Invoice Item\x01Cost Center,Sales Invoice\x01Territory,Sales Invoice Item\x01Income Account,Sales Invoice Item\x01Qty,Sales Invoice Item\x01Basic Rate*,Sales Invoice Item\x01Amount*',
-		'criteria_name': u'Itemwise Sales Register',
-		'doc_type': u'Sales Invoice Item',
-		'doctype': 'Search Criteria',
-		'filters': u"{'Sales Invoice\x01Submitted':1,'Sales Invoice\x01From Posting Date\x01lower':'','Sales Invoice\x01To Posting Date\x01upper':'','Sales Invoice\x01Is Opening':'','Sales Invoice\x01Company':'','Sales Invoice\x01Fiscal Year':''}",
-		'module': u'Accounts',
-		'name': '__common__',
-		'page_len': 50,
-		'parent_doc_type': u'Sales Invoice',
-		'sort_by': u'`tabSales Invoice Item`.`income_account`',
-		'sort_order': u'DESC',
-		'standard': u'Yes'
-	},
-
-	# Search Criteria, itemwise_sales_register
-	{
-		'doctype': 'Search Criteria',
-		'name': u'itemwise_sales_register'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-04-03 12:49:51", 
+  "modified_by": "Administrator", 
+  "modified": "2012-04-03 12:49:51"
+ }, 
+ {
+  "parent_doc_type": "Sales Invoice", 
+  "module": "Accounts", 
+  "standard": "Yes", 
+  "sort_order": "DESC", 
+  "filters": "{'Sales Invoice\u0001Submitted':1,'Sales Invoice\u0001From Posting Date\u0001lower':'','Sales Invoice\u0001To Posting Date\u0001upper':'','Sales Invoice\u0001Is Opening':'','Sales Invoice\u0001Company':'','Sales Invoice\u0001Fiscal Year':''}", 
+  "doc_type": "Sales Invoice Item", 
+  "name": "__common__", 
+  "doctype": "Search Criteria", 
+  "sort_by": "`tabSales Invoice Item`.`income_account`", 
+  "page_len": 50, 
+  "criteria_name": "Itemwise Sales Register", 
+  "columns": "Sales Invoice Item\u0001Item,Sales Invoice Item\u0001Item Name,Sales Invoice Item\u0001Item Group,Sales Invoice\u0001ID,Sales Invoice\u0001Voucher Date,Sales Invoice\u0001Posting Date,Sales Invoice\u0001Debit To,Sales Invoice Item\u0001Cost Center,Sales Invoice\u0001Territory,Sales Invoice Item\u0001Income Account,Sales Invoice Item\u0001Qty,Sales Invoice Item\u0001Basic Rate*,Sales Invoice Item\u0001Amount*"
+ }, 
+ {
+  "name": "itemwise_sales_register", 
+  "doctype": "Search Criteria"
+ }
 ]
\ No newline at end of file
diff --git a/accounts/search_criteria/monthly_transaction_summary/monthly_transaction_summary.txt b/accounts/search_criteria/monthly_transaction_summary/monthly_transaction_summary.txt
index 9290041..1c6c60b 100644
--- a/accounts/search_criteria/monthly_transaction_summary/monthly_transaction_summary.txt
+++ b/accounts/search_criteria/monthly_transaction_summary/monthly_transaction_summary.txt
@@ -1,32 +1,25 @@
-# Search Criteria, monthly_transaction_summary
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-04-03 12:49:51',
-		'docstatus': 0,
-		'modified': '2012-04-03 12:49:51',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all Search Criteria
-	{
-		'columns': u'Profile\x01ID',
-		'criteria_name': u'Monthly Transaction Summary',
-		'doc_type': u'Profile',
-		'doctype': 'Search Criteria',
-		'filters': u"{'DocType\x01Period':'Monthly'}",
-		'module': u'Accounts',
-		'name': '__common__',
-		'sort_by': u'`tabProfile`.`name`',
-		'sort_order': u'DESC',
-		'standard': u'Yes'
-	},
-
-	# Search Criteria, monthly_transaction_summary
-	{
-		'doctype': 'Search Criteria',
-		'name': u'monthly_transaction_summary'
-	}
-]
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-04-03 12:49:51", 
+  "modified_by": "Administrator", 
+  "modified": "2012-04-03 12:49:51"
+ }, 
+ {
+  "module": "Accounts", 
+  "standard": "Yes", 
+  "sort_order": "DESC", 
+  "filters": "{'DocType\u0001Period':'Monthly'}", 
+  "doctype": "Search Criteria", 
+  "doc_type": "Profile", 
+  "name": "__common__", 
+  "sort_by": "`tabProfile`.`name`", 
+  "criteria_name": "Monthly Transaction Summary", 
+  "columns": "Profile\u0001ID"
+ }, 
+ {
+  "name": "monthly_transaction_summary", 
+  "doctype": "Search Criteria"
+ }
+]
\ No newline at end of file
diff --git a/accounts/search_criteria/payment_receipt_report/payment_receipt_report.txt b/accounts/search_criteria/payment_receipt_report/payment_receipt_report.txt
index d1ef6d1..2e039e2 100644
--- a/accounts/search_criteria/payment_receipt_report/payment_receipt_report.txt
+++ b/accounts/search_criteria/payment_receipt_report/payment_receipt_report.txt
@@ -1,33 +1,26 @@
-# Search Criteria, payment_receipt_report
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-04-03 12:49:51',
-		'docstatus': 0,
-		'modified': '2012-04-03 12:49:51',
-		'modified_by': u'Administrator',
-		'owner': u'jai@webnotestech.com'
-	},
-
-	# These values are common for all Search Criteria
-	{
-		'columns': u'GL Entry\x01ID,GL Entry\x01Owner,GL Entry\x01Posting Date,GL Entry\x01Account,GL Entry\x01Cost Center,GL Entry\x01Against Voucher,GL Entry\x01Voucher Type,GL Entry\x01Voucher No,GL Entry\x01Remarks,GL Entry\x01Is Cancelled,GL Entry\x01Is Opening,GL Entry\x01Fiscal Year,GL Entry\x01Company',
-		'criteria_name': u'Payment Receipt Report',
-		'doc_type': u'GL Entry',
-		'doctype': 'Search Criteria',
-		'filters': u"{'GL Entry\x01Voucher Type':'','GL Entry\x01Is Cancelled':'','GL Entry\x01Is Opening':'','GL Entry\x01Fiscal Year':''}",
-		'module': u'Accounts',
-		'name': '__common__',
-		'page_len': 50,
-		'sort_by': u'`tabGL Entry`.`name`',
-		'sort_order': u'DESC',
-		'standard': u'Yes'
-	},
-
-	# Search Criteria, payment_receipt_report
-	{
-		'doctype': 'Search Criteria',
-		'name': u'payment_receipt_report'
-	}
+ {
+  "owner": "jai@webnotestech.com", 
+  "docstatus": 0, 
+  "creation": "2012-04-03 12:49:51", 
+  "modified_by": "Administrator", 
+  "modified": "2012-04-03 12:49:51"
+ }, 
+ {
+  "module": "Accounts", 
+  "standard": "Yes", 
+  "sort_order": "DESC", 
+  "filters": "{'GL Entry\u0001Voucher Type':'','GL Entry\u0001Is Cancelled':'','GL Entry\u0001Is Opening':'','GL Entry\u0001Fiscal Year':''}", 
+  "doctype": "Search Criteria", 
+  "doc_type": "GL Entry", 
+  "name": "__common__", 
+  "sort_by": "`tabGL Entry`.`name`", 
+  "page_len": 50, 
+  "criteria_name": "Payment Receipt Report", 
+  "columns": "GL Entry\u0001ID,GL Entry\u0001Owner,GL Entry\u0001Posting Date,GL Entry\u0001Account,GL Entry\u0001Cost Center,GL Entry\u0001Against Voucher,GL Entry\u0001Voucher Type,GL Entry\u0001Voucher No,GL Entry\u0001Remarks,GL Entry\u0001Is Cancelled,GL Entry\u0001Is Opening,GL Entry\u0001Fiscal Year,GL Entry\u0001Company"
+ }, 
+ {
+  "name": "payment_receipt_report", 
+  "doctype": "Search Criteria"
+ }
 ]
\ No newline at end of file
diff --git a/accounts/search_criteria/purchase_register/purchase_register.txt b/accounts/search_criteria/purchase_register/purchase_register.txt
index cbc5c41..f4fdb36 100644
--- a/accounts/search_criteria/purchase_register/purchase_register.txt
+++ b/accounts/search_criteria/purchase_register/purchase_register.txt
@@ -1,31 +1,24 @@
-# Search Criteria, purchase_register
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-04-03 12:49:52',
-		'docstatus': 0,
-		'modified': '2012-04-03 12:49:52',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all Search Criteria
-	{
-		'add_cond': u"`tabPurchase Invoice`.is_opening != 'Yes'\n`tabPurchase Invoice`.name not like 'OP/%'",
-		'columns': u'Purchase Invoice\x01ID,Purchase Invoice\x01Voucher Date,Purchase Invoice\x01Posting Date,Purchase Invoice\x01Credit To,Purchase Invoice\x01Expense Head',
-		'criteria_name': u'Purchase Register',
-		'doc_type': u'Purchase Invoice',
-		'doctype': 'Search Criteria',
-		'filters': u"{'Purchase Invoice\x01Submitted':1}",
-		'module': u'Accounts',
-		'name': '__common__',
-		'standard': u'Yes'
-	},
-
-	# Search Criteria, purchase_register
-	{
-		'doctype': 'Search Criteria',
-		'name': u'purchase_register'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-04-03 12:49:52", 
+  "modified_by": "Administrator", 
+  "modified": "2012-04-03 12:49:52"
+ }, 
+ {
+  "doc_type": "Purchase Invoice", 
+  "name": "__common__", 
+  "add_cond": "`tabPurchase Invoice`.is_opening != 'Yes'\n`tabPurchase Invoice`.name not like 'OP/%'", 
+  "module": "Accounts", 
+  "standard": "Yes", 
+  "filters": "{'Purchase Invoice\u0001Submitted':1}", 
+  "doctype": "Search Criteria", 
+  "criteria_name": "Purchase Register", 
+  "columns": "Purchase Invoice\u0001ID,Purchase Invoice\u0001Voucher Date,Purchase Invoice\u0001Posting Date,Purchase Invoice\u0001Credit To,Purchase Invoice\u0001Expense Head"
+ }, 
+ {
+  "name": "purchase_register", 
+  "doctype": "Search Criteria"
+ }
 ]
\ No newline at end of file
diff --git a/accounts/search_criteria/sales_register/sales_register.txt b/accounts/search_criteria/sales_register/sales_register.txt
index fe436a0..b7b63f0 100644
--- a/accounts/search_criteria/sales_register/sales_register.txt
+++ b/accounts/search_criteria/sales_register/sales_register.txt
@@ -1,37 +1,30 @@
-# Search Criteria, sales_register
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-04-11 17:36:48',
-		'docstatus': 0,
-		'modified': '2012-04-18 17:41:46',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all Search Criteria
-	{
-		'add_col': u"`tabAccount`.`parent_account` AS 'Parent Account'\n`tabCustomer`.`territory` AS 'Territory'\n`tabCustomer`.`customer_details` AS 'Customer Details'",
-		'add_cond': u"ifnull(`tabSales Invoice`.`is_opening`, 'No') = 'No'\n`tabAccount`.name =`tabSales Invoice`.debit_to\n`tabCustomer`.`name` = `tabAccount`.`master_name`",
-		'add_tab': u'`tabAccount`\n`tabCustomer`',
-		'columns': u'Sales Invoice\x01ID,Sales Invoice\x01Posting Date,Sales Invoice\x01Debit To',
-		'criteria_name': u'Sales Register',
-		'dis_filters': u'fiscal_year',
-		'doc_type': u'Sales Invoice',
-		'doctype': 'Search Criteria',
-		'filters': u"{'Sales Invoice\x01Submitted':1,'Sales Invoice\x01Is Opening':''}",
-		'module': u'Accounts',
-		'name': '__common__',
-		'page_len': 50,
-		'sort_by': u'`Parent Account`',
-		'sort_order': u'DESC',
-		'standard': u'Yes'
-	},
-
-	# Search Criteria, sales_register
-	{
-		'doctype': 'Search Criteria',
-		'name': u'sales_register'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-04-11 17:36:48", 
+  "modified_by": "Administrator", 
+  "modified": "2012-04-18 17:41:46"
+ }, 
+ {
+  "add_col": "`tabAccount`.`parent_account` AS 'Parent Account'\n`tabCustomer`.`territory` AS 'Territory'\n`tabCustomer`.`customer_details` AS 'Customer Details'", 
+  "module": "Accounts", 
+  "standard": "Yes", 
+  "sort_order": "DESC", 
+  "add_tab": "`tabAccount`\n`tabCustomer`", 
+  "dis_filters": "fiscal_year", 
+  "doc_type": "Sales Invoice", 
+  "name": "__common__", 
+  "filters": "{'Sales Invoice\u0001Submitted':1,'Sales Invoice\u0001Is Opening':''}", 
+  "add_cond": "ifnull(`tabSales Invoice`.`is_opening`, 'No') = 'No'\n`tabAccount`.name =`tabSales Invoice`.debit_to\n`tabCustomer`.`name` = `tabAccount`.`master_name`", 
+  "doctype": "Search Criteria", 
+  "sort_by": "`Parent Account`", 
+  "page_len": 50, 
+  "criteria_name": "Sales Register", 
+  "columns": "Sales Invoice\u0001ID,Sales Invoice\u0001Posting Date,Sales Invoice\u0001Debit To"
+ }, 
+ {
+  "name": "sales_register", 
+  "doctype": "Search Criteria"
+ }
 ]
\ No newline at end of file
diff --git a/accounts/search_criteria/trend_analyzer/trend_analyzer.txt b/accounts/search_criteria/trend_analyzer/trend_analyzer.txt
index a1cf3e4..ab15003 100644
--- a/accounts/search_criteria/trend_analyzer/trend_analyzer.txt
+++ b/accounts/search_criteria/trend_analyzer/trend_analyzer.txt
@@ -1,33 +1,26 @@
-# Search Criteria, trend_analyzer
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-04-23 12:46:00',
-		'docstatus': 0,
-		'modified': '2012-05-04 12:49:43',
-		'modified_by': u'Administrator',
-		'owner': u'saumil@webnotestech.com'
-	},
-
-	# These values are common for all Search Criteria
-	{
-		'columns': u'Profile\x01ID,Profile\x01Owner',
-		'criteria_name': u'Trend Analyzer',
-		'doc_type': u'Profile',
-		'doctype': 'Search Criteria',
-		'filters': u'{}',
-		'module': u'Accounts',
-		'name': '__common__',
-		'page_len': 50,
-		'sort_by': u'`tabProfile`.`name`',
-		'sort_order': u'DESC',
-		'standard': u'Yes'
-	},
-
-	# Search Criteria, trend_analyzer
-	{
-		'doctype': 'Search Criteria',
-		'name': u'trend_analyzer'
-	}
+ {
+  "owner": "saumil@webnotestech.com", 
+  "docstatus": 0, 
+  "creation": "2012-04-23 12:46:00", 
+  "modified_by": "Administrator", 
+  "modified": "2012-05-04 12:49:43"
+ }, 
+ {
+  "module": "Accounts", 
+  "standard": "Yes", 
+  "sort_order": "DESC", 
+  "filters": "{}", 
+  "doctype": "Search Criteria", 
+  "doc_type": "Profile", 
+  "name": "__common__", 
+  "sort_by": "`tabProfile`.`name`", 
+  "page_len": 50, 
+  "criteria_name": "Trend Analyzer", 
+  "columns": "Profile\u0001ID,Profile\u0001Owner"
+ }, 
+ {
+  "name": "trend_analyzer", 
+  "doctype": "Search Criteria"
+ }
 ]
\ No newline at end of file
diff --git a/accounts/search_criteria/voucher_wise_tax_details/voucher_wise_tax_details.txt b/accounts/search_criteria/voucher_wise_tax_details/voucher_wise_tax_details.txt
index ac1cd4c..7e8adf3 100644
--- a/accounts/search_criteria/voucher_wise_tax_details/voucher_wise_tax_details.txt
+++ b/accounts/search_criteria/voucher_wise_tax_details/voucher_wise_tax_details.txt
@@ -1,34 +1,27 @@
-# Search Criteria, voucher_wise_tax_details
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-04-03 12:49:53',
-		'docstatus': 0,
-		'modified': '2012-04-03 12:49:53',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all Search Criteria
-	{
-		'columns': u'Sales Taxes and Charges\x01Type,Sales Taxes and Charges\x01Account Head,Sales Taxes and Charges\x01Cost Center,Sales Taxes and Charges\x01Description,Sales Taxes and Charges\x01Rate,Sales Taxes and Charges\x01Amount*,Sales Taxes and Charges\x01Total*',
-		'criteria_name': u'Voucher wise tax details',
-		'doc_type': u'Sales Taxes and Charges',
-		'doctype': 'Search Criteria',
-		'filters': u"{'Delivery Note\x01Submitted':1,'Delivery Note\x01Status':'','Delivery Note\x01Fiscal Year':''}",
-		'module': u'Accounts',
-		'name': '__common__',
-		'page_len': 50,
-		'parent_doc_type': u'Delivery Note',
-		'sort_by': u'`tabSales Taxes and Charges`.`parent`',
-		'sort_order': u'DESC',
-		'standard': u'Yes'
-	},
-
-	# Search Criteria, voucher_wise_tax_details
-	{
-		'doctype': 'Search Criteria',
-		'name': u'voucher_wise_tax_details'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-04-03 12:49:53", 
+  "modified_by": "Administrator", 
+  "modified": "2012-04-03 12:49:53"
+ }, 
+ {
+  "parent_doc_type": "Delivery Note", 
+  "module": "Accounts", 
+  "standard": "Yes", 
+  "sort_order": "DESC", 
+  "filters": "{'Delivery Note\u0001Submitted':1,'Delivery Note\u0001Status':'','Delivery Note\u0001Fiscal Year':''}", 
+  "doc_type": "Sales Taxes and Charges", 
+  "name": "__common__", 
+  "doctype": "Search Criteria", 
+  "sort_by": "`tabSales Taxes and Charges`.`parent`", 
+  "page_len": 50, 
+  "criteria_name": "Voucher wise tax details", 
+  "columns": "Sales Taxes and Charges\u0001Type,Sales Taxes and Charges\u0001Account Head,Sales Taxes and Charges\u0001Cost Center,Sales Taxes and Charges\u0001Description,Sales Taxes and Charges\u0001Rate,Sales Taxes and Charges\u0001Amount*,Sales Taxes and Charges\u0001Total*"
+ }, 
+ {
+  "name": "voucher_wise_tax_details", 
+  "doctype": "Search Criteria"
+ }
 ]
\ No newline at end of file
diff --git a/accounts/search_criteria/yearly_transaction_summary/yearly_transaction_summary.txt b/accounts/search_criteria/yearly_transaction_summary/yearly_transaction_summary.txt
index 122d1d1..9c6ad4b 100644
--- a/accounts/search_criteria/yearly_transaction_summary/yearly_transaction_summary.txt
+++ b/accounts/search_criteria/yearly_transaction_summary/yearly_transaction_summary.txt
@@ -1,32 +1,25 @@
-# Search Criteria, yearly_transaction_summary
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-04-03 12:49:53',
-		'docstatus': 0,
-		'modified': '2012-04-03 12:49:53',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all Search Criteria
-	{
-		'columns': u'Profile\x01ID',
-		'criteria_name': u'Yearly Transaction Summary',
-		'doc_type': u'Profile',
-		'doctype': 'Search Criteria',
-		'filters': u"{'DocType\x01Fiscal Year':'2009-2010','DocType\x01Company':'Alpha Company','DocType\x01Period':'Monthly'}",
-		'module': u'Accounts',
-		'name': '__common__',
-		'sort_by': u'`tabProfile`.`name`',
-		'sort_order': u'DESC',
-		'standard': u'Yes'
-	},
-
-	# Search Criteria, yearly_transaction_summary
-	{
-		'doctype': 'Search Criteria',
-		'name': u'yearly_transaction_summary'
-	}
-]
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-04-03 12:49:53", 
+  "modified_by": "Administrator", 
+  "modified": "2012-04-03 12:49:53"
+ }, 
+ {
+  "module": "Accounts", 
+  "standard": "Yes", 
+  "sort_order": "DESC", 
+  "filters": "{'DocType\u0001Fiscal Year':'2009-2010','DocType\u0001Company':'Alpha Company','DocType\u0001Period':'Monthly'}", 
+  "doctype": "Search Criteria", 
+  "doc_type": "Profile", 
+  "name": "__common__", 
+  "sort_by": "`tabProfile`.`name`", 
+  "criteria_name": "Yearly Transaction Summary", 
+  "columns": "Profile\u0001ID"
+ }, 
+ {
+  "name": "yearly_transaction_summary", 
+  "doctype": "Search Criteria"
+ }
+]
\ No newline at end of file
diff --git a/buying/DocType Mapper/Purchase Request-Purchase Order/Purchase Request-Purchase Order.txt b/buying/DocType Mapper/Purchase Request-Purchase Order/Purchase Request-Purchase Order.txt
index e4fdd93..5727a0e 100644
--- a/buying/DocType Mapper/Purchase Request-Purchase Order/Purchase Request-Purchase Order.txt
+++ b/buying/DocType Mapper/Purchase Request-Purchase Order/Purchase Request-Purchase Order.txt
@@ -1,160 +1,125 @@
-# DocType Mapper, Purchase Request-Purchase Order
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2010-08-08 17:09:34',
-		'docstatus': 0,
-		'modified': '2012-07-02 11:12:28',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all Table Mapper Detail
-	{
-		'doctype': u'Table Mapper Detail',
-		'name': '__common__',
-		'parent': u'Purchase Request-Purchase Order',
-		'parentfield': u'table_mapper_details',
-		'parenttype': u'DocType Mapper'
-	},
-
-	# These values are common for all Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'name': '__common__',
-		'parent': u'Purchase Request-Purchase Order',
-		'parentfield': u'field_mapper_details',
-		'parenttype': u'DocType Mapper'
-	},
-
-	# These values are common for all DocType Mapper
-	{
-		'doctype': u'DocType Mapper',
-		'from_doctype': u'Purchase Request',
-		'module': u'Buying',
-		'name': '__common__',
-		'ref_doc_submitted': 1,
-		'to_doctype': u'Purchase Order'
-	},
-
-	# DocType Mapper, Purchase Request-Purchase Order
-	{
-		'doctype': u'DocType Mapper',
-		'name': u'Purchase Request-Purchase Order'
-	},
-
-	# Field Mapper Detail
-	{
-		'checking_operator': u'=',
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'company',
-		'map': u'Yes',
-		'match_id': 0,
-		'to_field': u'company'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'parenttype',
-		'map': u'Yes',
-		'match_id': 1,
-		'to_field': u'prevdoc_doctype'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'parent',
-		'map': u'Yes',
-		'match_id': 1,
-		'to_field': u'prevdoc_docname'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'name',
-		'map': u'Yes',
-		'match_id': 1,
-		'to_field': u'prevdoc_detail_docname'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'uom',
-		'map': u'Yes',
-		'match_id': 1,
-		'to_field': u'stock_uom'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'eval:flt(1)',
-		'map': u'Yes',
-		'match_id': 1,
-		'to_field': u'conversion_factor'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'eval:flt(obj.qty) - flt(obj.ordered_qty)',
-		'map': u'Yes',
-		'match_id': 1,
-		'to_field': u'stock_qty'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'eval:flt(obj.qty) - flt(obj.ordered_qty)',
-		'map': u'Yes',
-		'match_id': 1,
-		'to_field': u'qty'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'schedule_date',
-		'map': u'Yes',
-		'match_id': 1,
-		'to_field': u'schedule_date'
-	},
-
-	# Field Mapper Detail
-	{
-		'checking_operator': u'>=',
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'transaction_date',
-		'map': u'No',
-		'match_id': 0,
-		'to_field': u'transaction_date'
-	},
-
-	# Table Mapper Detail
-	{
-		'doctype': u'Table Mapper Detail',
-		'from_table': u'Purchase Request',
-		'match_id': 0,
-		'reference_key': u'prevdoc_docname',
-		'to_table': u'Purchase Order',
-		'validation_logic': u'docstatus = 1'
-	},
-
-	# Table Mapper Detail
-	{
-		'doctype': u'Table Mapper Detail',
-		'from_field': u'indent_details',
-		'from_table': u'Purchase Request Item',
-		'match_id': 1,
-		'reference_doctype_key': u'prevdoc_doctype',
-		'to_field': u'po_details',
-		'to_table': u'Purchase Order Item',
-		'validation_logic': u'qty > ifnull(ordered_qty,0) and docstatus =1'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2010-08-08 17:09:34", 
+  "modified_by": "Administrator", 
+  "modified": "2012-07-02 11:12:28"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Purchase Request-Purchase Order", 
+  "doctype": "Table Mapper Detail", 
+  "parenttype": "DocType Mapper", 
+  "parentfield": "table_mapper_details"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Purchase Request-Purchase Order", 
+  "doctype": "Field Mapper Detail", 
+  "parenttype": "DocType Mapper", 
+  "parentfield": "field_mapper_details"
+ }, 
+ {
+  "name": "__common__", 
+  "to_doctype": "Purchase Order", 
+  "module": "Buying", 
+  "doctype": "DocType Mapper", 
+  "ref_doc_submitted": 1, 
+  "from_doctype": "Purchase Request"
+ }, 
+ {
+  "name": "Purchase Request-Purchase Order", 
+  "doctype": "DocType Mapper"
+ }, 
+ {
+  "map": "Yes", 
+  "match_id": 0, 
+  "to_field": "company", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "company", 
+  "checking_operator": "="
+ }, 
+ {
+  "map": "Yes", 
+  "match_id": 1, 
+  "to_field": "prevdoc_doctype", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "parenttype"
+ }, 
+ {
+  "map": "Yes", 
+  "match_id": 1, 
+  "to_field": "prevdoc_docname", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "parent"
+ }, 
+ {
+  "map": "Yes", 
+  "match_id": 1, 
+  "to_field": "prevdoc_detail_docname", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "name"
+ }, 
+ {
+  "map": "Yes", 
+  "match_id": 1, 
+  "to_field": "stock_uom", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "uom"
+ }, 
+ {
+  "map": "Yes", 
+  "match_id": 1, 
+  "to_field": "conversion_factor", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "eval:flt(1)"
+ }, 
+ {
+  "map": "Yes", 
+  "match_id": 1, 
+  "to_field": "stock_qty", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "eval:flt(obj.qty) - flt(obj.ordered_qty)"
+ }, 
+ {
+  "map": "Yes", 
+  "match_id": 1, 
+  "to_field": "qty", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "eval:flt(obj.qty) - flt(obj.ordered_qty)"
+ }, 
+ {
+  "map": "Yes", 
+  "match_id": 1, 
+  "to_field": "schedule_date", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "schedule_date"
+ }, 
+ {
+  "map": "No", 
+  "match_id": 0, 
+  "to_field": "transaction_date", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "transaction_date", 
+  "checking_operator": ">="
+ }, 
+ {
+  "reference_key": "prevdoc_docname", 
+  "match_id": 0, 
+  "doctype": "Table Mapper Detail", 
+  "from_table": "Purchase Request", 
+  "to_table": "Purchase Order", 
+  "validation_logic": "docstatus = 1"
+ }, 
+ {
+  "match_id": 1, 
+  "reference_doctype_key": "prevdoc_doctype", 
+  "to_field": "po_details", 
+  "doctype": "Table Mapper Detail", 
+  "from_field": "indent_details", 
+  "from_table": "Purchase Request Item", 
+  "to_table": "Purchase Order Item", 
+  "validation_logic": "qty > ifnull(ordered_qty,0) and docstatus =1"
+ }
 ]
\ No newline at end of file
diff --git a/buying/DocType Mapper/Purchase Request-Supplier Quotation/Purchase Request-Supplier Quotation.txt b/buying/DocType Mapper/Purchase Request-Supplier Quotation/Purchase Request-Supplier Quotation.txt
index 7d1de75..1d66116 100644
--- a/buying/DocType Mapper/Purchase Request-Supplier Quotation/Purchase Request-Supplier Quotation.txt
+++ b/buying/DocType Mapper/Purchase Request-Supplier Quotation/Purchase Request-Supplier Quotation.txt
@@ -1,115 +1,90 @@
-# DocType Mapper, Purchase Request-Supplier Quotation
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-08-02 18:36:26',
-		'docstatus': 0,
-		'modified': '2012-08-03 12:34:09',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all Table Mapper Detail
-	{
-		'doctype': u'Table Mapper Detail',
-		'name': '__common__',
-		'parent': u'Purchase Request-Supplier Quotation',
-		'parentfield': u'table_mapper_details',
-		'parenttype': u'DocType Mapper'
-	},
-
-	# These values are common for all Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'name': '__common__',
-		'parent': u'Purchase Request-Supplier Quotation',
-		'parentfield': u'field_mapper_details',
-		'parenttype': u'DocType Mapper'
-	},
-
-	# These values are common for all DocType Mapper
-	{
-		'doctype': u'DocType Mapper',
-		'from_doctype': u'Purchase Request',
-		'module': u'Buying',
-		'name': '__common__',
-		'ref_doc_submitted': 1,
-		'to_doctype': u'Supplier Quotation'
-	},
-
-	# DocType Mapper, Purchase Request-Supplier Quotation
-	{
-		'doctype': u'DocType Mapper',
-		'name': u'Purchase Request-Supplier Quotation'
-	},
-
-	# Field Mapper Detail
-	{
-		'checking_operator': u'=',
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'company',
-		'map': u'Yes',
-		'match_id': 0,
-		'to_field': u'company'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'parenttype',
-		'map': u'Yes',
-		'match_id': 1,
-		'to_field': u'prevdoc_doctype'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'parent',
-		'map': u'Yes',
-		'match_id': 1,
-		'to_field': u'prevdoc_docname'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'name',
-		'map': u'Yes',
-		'match_id': 1,
-		'to_field': u'prevdoc_detail_docname'
-	},
-
-	# Field Mapper Detail
-	{
-		'checking_operator': u'>=',
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'transaction_date',
-		'map': u'No',
-		'match_id': 0,
-		'to_field': u'transaction_date'
-	},
-
-	# Table Mapper Detail
-	{
-		'doctype': u'Table Mapper Detail',
-		'from_table': u'Purchase Request',
-		'match_id': 0,
-		'reference_key': u'prevdoc_docname',
-		'to_table': u'Supplier Quotation',
-		'validation_logic': u'docstatus = 1'
-	},
-
-	# Table Mapper Detail
-	{
-		'doctype': u'Table Mapper Detail',
-		'from_field': u'indent_details',
-		'from_table': u'Purchase Request Item',
-		'match_id': 1,
-		'reference_doctype_key': u'prevdoc_doctype',
-		'to_field': u'quotation_items',
-		'to_table': u'Supplier Quotation Item',
-		'validation_logic': u'docstatus =1'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-08-02 18:36:26", 
+  "modified_by": "Administrator", 
+  "modified": "2012-08-03 12:34:09"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Purchase Request-Supplier Quotation", 
+  "doctype": "Table Mapper Detail", 
+  "parenttype": "DocType Mapper", 
+  "parentfield": "table_mapper_details"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Purchase Request-Supplier Quotation", 
+  "doctype": "Field Mapper Detail", 
+  "parenttype": "DocType Mapper", 
+  "parentfield": "field_mapper_details"
+ }, 
+ {
+  "name": "__common__", 
+  "to_doctype": "Supplier Quotation", 
+  "module": "Buying", 
+  "doctype": "DocType Mapper", 
+  "ref_doc_submitted": 1, 
+  "from_doctype": "Purchase Request"
+ }, 
+ {
+  "name": "Purchase Request-Supplier Quotation", 
+  "doctype": "DocType Mapper"
+ }, 
+ {
+  "map": "Yes", 
+  "match_id": 0, 
+  "to_field": "company", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "company", 
+  "checking_operator": "="
+ }, 
+ {
+  "map": "Yes", 
+  "match_id": 1, 
+  "to_field": "prevdoc_doctype", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "parenttype"
+ }, 
+ {
+  "map": "Yes", 
+  "match_id": 1, 
+  "to_field": "prevdoc_docname", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "parent"
+ }, 
+ {
+  "map": "Yes", 
+  "match_id": 1, 
+  "to_field": "prevdoc_detail_docname", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "name"
+ }, 
+ {
+  "map": "No", 
+  "match_id": 0, 
+  "to_field": "transaction_date", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "transaction_date", 
+  "checking_operator": ">="
+ }, 
+ {
+  "reference_key": "prevdoc_docname", 
+  "match_id": 0, 
+  "doctype": "Table Mapper Detail", 
+  "from_table": "Purchase Request", 
+  "to_table": "Supplier Quotation", 
+  "validation_logic": "docstatus = 1"
+ }, 
+ {
+  "match_id": 1, 
+  "reference_doctype_key": "prevdoc_doctype", 
+  "to_field": "quotation_items", 
+  "doctype": "Table Mapper Detail", 
+  "from_field": "indent_details", 
+  "from_table": "Purchase Request Item", 
+  "to_table": "Supplier Quotation Item", 
+  "validation_logic": "docstatus =1"
+ }
 ]
\ No newline at end of file
diff --git a/buying/DocType Mapper/Sales Order-Purchase Request/Sales Order-Purchase Request.txt b/buying/DocType Mapper/Sales Order-Purchase Request/Sales Order-Purchase Request.txt
index 6dc79e6..500ca8f 100755
--- a/buying/DocType Mapper/Sales Order-Purchase Request/Sales Order-Purchase Request.txt
+++ b/buying/DocType Mapper/Sales Order-Purchase Request/Sales Order-Purchase Request.txt
@@ -1,116 +1,91 @@
-# DocType Mapper, Sales Order-Purchase Request
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2011-05-20 10:07:55',
-		'docstatus': 0,
-		'modified': '2012-04-03 12:49:50',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all Table Mapper Detail
-	{
-		'doctype': u'Table Mapper Detail',
-		'name': '__common__',
-		'parent': u'Sales Order-Purchase Request',
-		'parentfield': u'table_mapper_details',
-		'parenttype': u'DocType Mapper'
-	},
-
-	# These values are common for all Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'name': '__common__',
-		'parent': u'Sales Order-Purchase Request',
-		'parentfield': u'field_mapper_details',
-		'parenttype': u'DocType Mapper'
-	},
-
-	# These values are common for all DocType Mapper
-	{
-		'doctype': 'DocType Mapper',
-		'from_doctype': u'Sales Order',
-		'module': u'Buying',
-		'name': '__common__',
-		'ref_doc_submitted': 1,
-		'to_doctype': u'Purchase Request'
-	},
-
-	# DocType Mapper, Sales Order-Purchase Request
-	{
-		'doctype': 'DocType Mapper',
-		'name': u'Sales Order-Purchase Request'
-	},
-
-	# Field Mapper Detail
-	{
-		'checking_operator': u'>=',
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'transaction_date',
-		'map': u'No',
-		'match_id': 0,
-		'to_field': u'transaction_date'
-	},
-
-	# Field Mapper Detail
-	{
-		'checking_operator': u'=',
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'company',
-		'map': u'Yes',
-		'match_id': 0,
-		'to_field': u'company'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'parent',
-		'map': u'Yes',
-		'match_id': 1,
-		'to_field': u'sales_order_no'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'stock_uom',
-		'map': u'Yes',
-		'match_id': 1,
-		'to_field': u'uom'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'reserved_warehouse',
-		'map': u'Yes',
-		'match_id': 1,
-		'to_field': u'warehouse'
-	},
-
-	# Table Mapper Detail
-	{
-		'doctype': u'Table Mapper Detail',
-		'from_field': u'sales_order_details',
-		'from_table': u'Sales Order Item',
-		'match_id': 1,
-		'reference_doctype_key': u'prevdoc_doctype',
-		'reference_key': u'prevdoc_detail_docname',
-		'to_field': u'indent_details',
-		'to_table': u'Purchase Request Item',
-		'validation_logic': u'docstatus=1'
-	},
-
-	# Table Mapper Detail
-	{
-		'doctype': u'Table Mapper Detail',
-		'from_table': u'Sales Order',
-		'match_id': 0,
-		'reference_key': u'prevdoc_docname',
-		'to_table': u'Purchase Request',
-		'validation_logic': u'docstatus = 1'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2011-05-20 10:07:55", 
+  "modified_by": "Administrator", 
+  "modified": "2012-04-03 12:49:50"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Sales Order-Purchase Request", 
+  "doctype": "Table Mapper Detail", 
+  "parenttype": "DocType Mapper", 
+  "parentfield": "table_mapper_details"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Sales Order-Purchase Request", 
+  "doctype": "Field Mapper Detail", 
+  "parenttype": "DocType Mapper", 
+  "parentfield": "field_mapper_details"
+ }, 
+ {
+  "name": "__common__", 
+  "to_doctype": "Purchase Request", 
+  "module": "Buying", 
+  "doctype": "DocType Mapper", 
+  "ref_doc_submitted": 1, 
+  "from_doctype": "Sales Order"
+ }, 
+ {
+  "name": "Sales Order-Purchase Request", 
+  "doctype": "DocType Mapper"
+ }, 
+ {
+  "map": "No", 
+  "match_id": 0, 
+  "to_field": "transaction_date", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "transaction_date", 
+  "checking_operator": ">="
+ }, 
+ {
+  "map": "Yes", 
+  "match_id": 0, 
+  "to_field": "company", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "company", 
+  "checking_operator": "="
+ }, 
+ {
+  "map": "Yes", 
+  "match_id": 1, 
+  "to_field": "sales_order_no", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "parent"
+ }, 
+ {
+  "map": "Yes", 
+  "match_id": 1, 
+  "to_field": "uom", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "stock_uom"
+ }, 
+ {
+  "map": "Yes", 
+  "match_id": 1, 
+  "to_field": "warehouse", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "reserved_warehouse"
+ }, 
+ {
+  "reference_key": "prevdoc_detail_docname", 
+  "match_id": 1, 
+  "reference_doctype_key": "prevdoc_doctype", 
+  "to_field": "indent_details", 
+  "doctype": "Table Mapper Detail", 
+  "from_field": "sales_order_details", 
+  "from_table": "Sales Order Item", 
+  "to_table": "Purchase Request Item", 
+  "validation_logic": "docstatus=1"
+ }, 
+ {
+  "reference_key": "prevdoc_docname", 
+  "match_id": 0, 
+  "doctype": "Table Mapper Detail", 
+  "from_table": "Sales Order", 
+  "to_table": "Purchase Request", 
+  "validation_logic": "docstatus = 1"
+ }
 ]
\ No newline at end of file
diff --git a/buying/DocType Mapper/Supplier Quotation-Purchase Order/Supplier Quotation-Purchase Order.txt b/buying/DocType Mapper/Supplier Quotation-Purchase Order/Supplier Quotation-Purchase Order.txt
index a616266..a1c65f9 100644
--- a/buying/DocType Mapper/Supplier Quotation-Purchase Order/Supplier Quotation-Purchase Order.txt
+++ b/buying/DocType Mapper/Supplier Quotation-Purchase Order/Supplier Quotation-Purchase Order.txt
@@ -1,169 +1,132 @@
-# DocType Mapper, Supplier Quotation-Purchase Order
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-08-03 12:33:04',
-		'docstatus': 0,
-		'modified': '2012-08-06 16:45:56',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all Table Mapper Detail
-	{
-		'doctype': u'Table Mapper Detail',
-		'name': '__common__',
-		'parent': u'Supplier Quotation-Purchase Order',
-		'parentfield': u'table_mapper_details',
-		'parenttype': u'DocType Mapper',
-		'validation_logic': u'docstatus = 1'
-	},
-
-	# These values are common for all Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'name': '__common__',
-		'parent': u'Supplier Quotation-Purchase Order',
-		'parentfield': u'field_mapper_details',
-		'parenttype': u'DocType Mapper'
-	},
-
-	# These values are common for all DocType Mapper
-	{
-		'doctype': u'DocType Mapper',
-		'from_doctype': u'Supplier Quotation',
-		'module': u'Buying',
-		'name': '__common__',
-		'ref_doc_submitted': 1,
-		'to_doctype': u'Purchase Order'
-	},
-
-	# DocType Mapper, Supplier Quotation-Purchase Order
-	{
-		'doctype': u'DocType Mapper',
-		'name': u'Supplier Quotation-Purchase Order'
-	},
-
-	# Field Mapper Detail
-	{
-		'checking_operator': u'=',
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'company',
-		'map': u'Yes',
-		'match_id': 0,
-		'to_field': u'company'
-	},
-
-	# Field Mapper Detail
-	{
-		'checking_operator': u'>=',
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'transaction_date',
-		'map': u'No',
-		'match_id': 0,
-		'to_field': u'transaction_date'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'conversion_rate',
-		'map': u'Yes',
-		'match_id': 0,
-		'to_field': u'conversion_rate'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'net_total',
-		'map': u'Yes',
-		'match_id': 0,
-		'to_field': u'net_total'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'total_tax',
-		'map': u'Yes',
-		'match_id': 0,
-		'to_field': u'total_tax'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'grand_total',
-		'map': u'Yes',
-		'match_id': 0,
-		'to_field': u'grand_total'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'parent',
-		'map': u'Yes',
-		'match_id': 1,
-		'to_field': u'supplier_quotation'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'name',
-		'map': u'Yes',
-		'match_id': 1,
-		'to_field': u'supplier_quotation_item'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'uom',
-		'map': u'Yes',
-		'match_id': 1,
-		'to_field': u'stock_uom'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'eval:flt(1)',
-		'map': u'Yes',
-		'match_id': 1,
-		'to_field': u'conversion_factor'
-	},
-
-	# Table Mapper Detail
-	{
-		'doctype': u'Table Mapper Detail',
-		'from_table': u'Supplier Quotation',
-		'match_id': 0,
-		'reference_key': u'prevdoc_docname',
-		'to_table': u'Purchase Order'
-	},
-
-	# Table Mapper Detail
-	{
-		'doctype': u'Table Mapper Detail',
-		'from_field': u'quotation_details',
-		'from_table': u'Supplier Quotation Item',
-		'match_id': 1,
-		'reference_doctype_key': u'prevdoc_doctype',
-		'to_field': u'po_details',
-		'to_table': u'Purchase Order Item'
-	},
-
-	# Table Mapper Detail
-	{
-		'doctype': u'Table Mapper Detail',
-		'from_field': u'purchase_tax_details',
-		'from_table': u'Purchase Taxes and Charges',
-		'match_id': 2,
-		'to_field': u'purchase_tax_details',
-		'to_table': u'Purchase Taxes and Charges'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-08-03 12:33:04", 
+  "modified_by": "Administrator", 
+  "modified": "2012-08-06 16:45:56"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Supplier Quotation-Purchase Order", 
+  "doctype": "Table Mapper Detail", 
+  "parenttype": "DocType Mapper", 
+  "validation_logic": "docstatus = 1", 
+  "parentfield": "table_mapper_details"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Supplier Quotation-Purchase Order", 
+  "doctype": "Field Mapper Detail", 
+  "parenttype": "DocType Mapper", 
+  "parentfield": "field_mapper_details"
+ }, 
+ {
+  "name": "__common__", 
+  "to_doctype": "Purchase Order", 
+  "module": "Buying", 
+  "doctype": "DocType Mapper", 
+  "ref_doc_submitted": 1, 
+  "from_doctype": "Supplier Quotation"
+ }, 
+ {
+  "name": "Supplier Quotation-Purchase Order", 
+  "doctype": "DocType Mapper"
+ }, 
+ {
+  "map": "Yes", 
+  "match_id": 0, 
+  "to_field": "company", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "company", 
+  "checking_operator": "="
+ }, 
+ {
+  "map": "No", 
+  "match_id": 0, 
+  "to_field": "transaction_date", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "transaction_date", 
+  "checking_operator": ">="
+ }, 
+ {
+  "map": "Yes", 
+  "match_id": 0, 
+  "to_field": "conversion_rate", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "conversion_rate"
+ }, 
+ {
+  "map": "Yes", 
+  "match_id": 0, 
+  "to_field": "net_total", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "net_total"
+ }, 
+ {
+  "map": "Yes", 
+  "match_id": 0, 
+  "to_field": "total_tax", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "total_tax"
+ }, 
+ {
+  "map": "Yes", 
+  "match_id": 0, 
+  "to_field": "grand_total", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "grand_total"
+ }, 
+ {
+  "map": "Yes", 
+  "match_id": 1, 
+  "to_field": "supplier_quotation", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "parent"
+ }, 
+ {
+  "map": "Yes", 
+  "match_id": 1, 
+  "to_field": "supplier_quotation_item", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "name"
+ }, 
+ {
+  "map": "Yes", 
+  "match_id": 1, 
+  "to_field": "stock_uom", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "uom"
+ }, 
+ {
+  "map": "Yes", 
+  "match_id": 1, 
+  "to_field": "conversion_factor", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "eval:flt(1)"
+ }, 
+ {
+  "reference_key": "prevdoc_docname", 
+  "match_id": 0, 
+  "doctype": "Table Mapper Detail", 
+  "from_table": "Supplier Quotation", 
+  "to_table": "Purchase Order"
+ }, 
+ {
+  "match_id": 1, 
+  "reference_doctype_key": "prevdoc_doctype", 
+  "to_field": "po_details", 
+  "doctype": "Table Mapper Detail", 
+  "from_field": "quotation_details", 
+  "from_table": "Supplier Quotation Item", 
+  "to_table": "Purchase Order Item"
+ }, 
+ {
+  "match_id": 2, 
+  "to_field": "purchase_tax_details", 
+  "doctype": "Table Mapper Detail", 
+  "from_field": "purchase_tax_details", 
+  "from_table": "Purchase Taxes and Charges", 
+  "to_table": "Purchase Taxes and Charges"
+ }
 ]
\ No newline at end of file
diff --git a/buying/Print Format/Purchase Order Classic/Purchase Order Classic.txt b/buying/Print Format/Purchase Order Classic/Purchase Order Classic.txt
index fd074e3..5c5c8aa 100644
--- a/buying/Print Format/Purchase Order Classic/Purchase Order Classic.txt
+++ b/buying/Print Format/Purchase Order Classic/Purchase Order Classic.txt
@@ -1,28 +1,21 @@
-# Print Format, Purchase Order Classic
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2011-12-13 11:02:59',
-		'docstatus': 0,
-		'modified': '2011-12-13 13:51:41',
-		'modified_by': 'Administrator',
-		'owner': 'Administrator'
-	},
-
-	# These values are common for all Print Format
-	{
-		'doc_type': 'Purchase Order',
-		'doctype': 'Print Format',
-		'html': '<!--\n\tSample Print Format for ERPNext\n\tPlease use at your own discretion\n\tFor suggestions and contributions:\n\t\thttps://github.com/webnotes/erpnext-print-templates\n\n\tFreely usable under MIT license\n-->\n\n<!-- Style Settings -->\n<style>\n\t/*\n\t\tcommon style for whole page\n\t\tThis should include:\n\t\t+ page size related settings\n\t\t+ font family settings\n\t\t+ line spacing settings\n\t*/\n\t@media screen {\n\t\tbody {\n\t\t\twidth: 8.3in;\n\t\t}\n\t}\n\n\thtml, body, div, span, td {\n\t\tfont-family: "Georgia", serif;\n\t\tfont-size: 12px;\n\t}\n\n\tbody {\n\t\tpadding: 10px;\n\t\tmargin: auto;\n\t\tfont-size: 12px;\n\t\tline-height: 150%;\n\t}\n\n\t.common {\n\t\tfont-family: "Georgia", serif !important;\n\t\tfont-size: 12px;\n\t\tpadding: 10px 0px;\n\t}\n\n\ttable {\n\t\tborder-collapse: collapse;\n\t\twidth: 100%;\n\t\tvertical-align: top;\n\t}\n\n\ttable td {\n\t\tpadding: 2px 0px;\n\t}\n\t\n\ttable h1, h2, h3, h4, h5, h6 {\n\t\tpadding: 0px;\n\t\tmargin: 0px;\n\t}\n\n\ttable.header-table td {\n\t\tvertical-align: top;\n\t}\n\n\ttable.header-table thead {\n\t\tborder-bottom: 1px solid black;\n\t}\n\n\ttable.header-table h3 {\n\t\tcolor: gray;\n\t}\n\n\ttable.header-table thead td {\n\t\tpadding: 5px 0px;\n\t}\n\n\tdiv.page-body table td:nth-child(6),\n\tdiv.page-body table td:nth-child(7) {\n\t\ttext-align: right;\n\t}\n\n\ttable.footer-table td {\n\t\tvertical-align: top;\n\t}\n\n\ttable.footer-table td table td:nth-child(2),\n\ttable.footer-table td table td:nth-child(3) {\n\t\ttext-align: right;\n\t}\n</style>\n\n\n<!-- Javascript -->\n<script>\n\tsi_std = {\n\t\tprint_item_table: function() {\n\t\t\tvar table = print_table(\n\t\t\t\t\'Purchase Order\',\n\t\t\t\tdoc.name,\n\t\t\t\t\'po_details\',\n\t\t\t\t\'Purchase Order Item\',\n\t\t\t\t[// Here specify the table columns to be displayed\n\t\t\t\t\t\'SR\', \'item_code\', \'item_name\', \'description\', \'qty\', \'stock_uom\',\n\t\t\t\t\t\'import_rate\', \'import_amount\'\n\t\t\t\t],\n\t\t\t\t[// Here specify the labels of column headings\n\t\t\t\t\t\'Sr\', \'Item Code\', \'Item Name\', \'Description\', \'Qty\',\n\t\t\t\t\t\'UoM\', \'Basic Rate\', \'Amount\'\n\t\t\t\t],\n\t\t\t\t[// Here specify the column widths\n\t\t\t\t\t\'3%\', \'10%\', \'15%\', \'32%\', \'5%\',\n\t\t\t\t\t\'5%\', \'15%\', \'15%\'\n\t\t\t\t]\n\t\t\t);\n\n\t\t\t// This code takes care of page breaks\n\t\t\tif(table.appendChild) {\n\t\t\t\tout = table.innerHTML;\n\t\t\t} else {\n\t\t\t\tout = \'\';\n\t\t\t\tfor(var i=0; i < (table.length-1); i++) {\n\t\t\t\t\tout += table[i].innerHTML + \n\t\t\t\t\t\t\'<div style = "page-break-after: always;" \\\n\t\t\t\t\t\tclass = "page_break"></div>\\\n\t\t\t\t\t\t<div class="page-settings"></div>\';\n\t\t\t\t}\n\t\t\t\tout += table[table.length-1].innerHTML;\n\t\t\t}\n\t\t\treturn out;\n\t\t},\n\n\n\t\tprint_other_charges: function(parent) {\n\t\t\tvar oc = getchildren(\'Purchase Taxes and Charges\', doc.name, \'purchase_tax_details\');\n\t\t\tvar rows = \'<table width=100%>\\n\';\n\t\t\tfor(var i=0; i<oc.length; i++) {\n\t\t\t\trows +=\n\t\t\t\t\t\'<tr>\\n\' +\n\t\t\t\t\t\t\'\\t<td>\' + oc[i].description + \'</td>\\n\' +\n\t\t\t\t\t\t\'\\t<td></td>\\n\' +\n\t\t\t\t\t\t\'\\t<td width=38%>\' + fmt_money(oc[i].tax_amount / (doc.conversion_rate || 1)) + \'</td>\\n\' +\n\t\t\t\t\t\'</tr>\\n\';\n\t\t\t}\n\t\t\treturn rows + \'</table>\\n\';\n\t\t}\n\t};\n</script>\n\n\n<!-- Page Layout Settings -->\n<div class=\'common page-header\'>\n\t<!-- \n\t\tPage Header will contain\n\t\t\t+ table 1\n\t\t\t\t+ table 1a\n\t\t\t\t\t- Name\n\t\t\t\t\t- Address\n\t\t\t\t\t- Contact\n\t\t\t\t\t- Mobile No\n\t\t\t\t+ table 1b\n\t\t\t\t\t- Voucher Date\n\t\t\t\t\t- Due Date\n\t-->\n\t<table class=\'header-table\' cellspacing=0>\n\t\t<thead>\n\t\t\t<tr><td><script>\'<h1>\' + (doc.select_print_heading || \'Purchase Order\') + \'</h1>\'</script></td></tr>\n\t\t\t<tr><td><h3><script>cur_frm.docname</script></h3></td></tr>\n\t\t</thead>\n\t\t<tbody>\n\t\t\t<tr>\n\t\t\t\t<td width=60%><table width=100% cellspacing=0><tbody>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td width=22%><b>Name</b></td>\n\t\t\t\t\t\t<td><script>doc.supplier_name</script></td>\n\t\t\t\t\t</tr>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td><b>Address</b></td>\n\t\t\t\t\t\t<td><script>replace_newlines(doc.address_display)</script></td>\n\t\t\t\t\t</tr>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td><b>Contact</b></td>\n\t\t\t\t\t\t<td><script>doc.contact_display</script></td>\n\t\t\t\t\t</tr>\n\t\t\t\t</tbody></table></td>\n\t\t\t\t<td><table width=100% cellspacing=0><tbody>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td width=63%><b>Purchase Order Date</b></td>\n\t\t\t\t\t\t<td><script>date.str_to_user(doc.transaction_date)</script></td>\n\t\t\t\t\t<tr>\t\t\t\t\t\n\t\t\t\t</tbody></table></td>\n\t\t\t</tr>\n\t\t</tbody>\n\t\t<tfoot>\n\t\t\n\t\t</tfoot>\n\t</table>\n</div>\n<div class=\'common page-body\'>\n\t<!-- \n\t\tPage Body will contain\n\t\t\t+ table 2\n\t\t\t\t- Sales Invoice Data\n\t-->\n\t<script>si_std.print_item_table()</script>\n</div>\n<div class=\'common page-footer\'>\n\t<!-- \n\t\tPage Footer will contain\n\t\t\t+ table 3\n\t\t\t\t- Terms and Conditions\n\t\t\t\t- Total Rounded Amount Calculation\n\t\t\t\t- Total Rounded Amount in Words\n\t-->\n\t<table class=\'footer-table\' width=100% cellspacing=0>\n\t\t<thead>\n\t\t\t\n\t\t</thead>\n\t\t<tbody>\n\t\t\t<tr>\n\t\t\t\t<td width=60% style=\'padding-right: 10px;\'>\n\t\t\t\t\t<b>Terms, Conditions &amp; Other Information:</b><br />\n\t\t\t\t\t<script>doc.terms</script>\n\t\t\t\t</td>\n\t\t\t\t<td>\n\t\t\t\t\t<table cellspacing=0 width=100%><tbody>\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td>Net Total</td>\n\t\t\t\t\t\t\t<td></td>\n\t\t\t\t\t\t\t<td width=38%><script>\n\t\t\t\t\t\t\t\tfmt_money(doc.net_total_import)\n\t\t\t\t\t\t\t</script></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr><td colspan=3><script>si_std.print_other_charges()</script></td></tr>\n\t\t\t\t\t\t<tr style=\'font-weight: bold\'>\n\t\t\t\t\t\t\t<td>Grand Total</td>\n\t\t\t\t\t\t\t<td><script>doc.currency</script></td>\n\t\t\t\t\t\t\t<td><script>\n\t\t\t\t\t\t\t\tfmt_money(doc.grand_total_import)\n\t\t\t\t\t\t\t</script></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t</tbody></table>\n\t\t\t\t\t<br /><b>In Words</b><br />\n\t\t\t\t\t<i><script>doc.in_words_import</script></i>\n\t\t\t\t</td>\n\t\t\t</tr>\t\t\n\t\t</tbody>\n\t\t<tfoot>\n\t\t\n\t\t</tfoot>\n\t</table>\n</div>\n',
-		'module': 'Buying',
-		'name': '__common__',
-		'standard': 'Yes'
-	},
-
-	# Print Format, Purchase Order Classic
-	{
-		'doctype': 'Print Format',
-		'name': 'Purchase Order Classic'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2011-12-13 11:02:59", 
+  "modified_by": "Administrator", 
+  "modified": "2011-12-13 13:51:41"
+ }, 
+ {
+  "doc_type": "Purchase Order", 
+  "name": "__common__", 
+  "module": "Buying", 
+  "doctype": "Print Format", 
+  "html": "<!--\n\tSample Print Format for ERPNext\n\tPlease use at your own discretion\n\tFor suggestions and contributions:\n\t\thttps://github.com/webnotes/erpnext-print-templates\n\n\tFreely usable under MIT license\n-->\n\n<!-- Style Settings -->\n<style>\n\t/*\n\t\tcommon style for whole page\n\t\tThis should include:\n\t\t+ page size related settings\n\t\t+ font family settings\n\t\t+ line spacing settings\n\t*/\n\t@media screen {\n\t\tbody {\n\t\t\twidth: 8.3in;\n\t\t}\n\t}\n\n\thtml, body, div, span, td {\n\t\tfont-family: \"Georgia\", serif;\n\t\tfont-size: 12px;\n\t}\n\n\tbody {\n\t\tpadding: 10px;\n\t\tmargin: auto;\n\t\tfont-size: 12px;\n\t\tline-height: 150%;\n\t}\n\n\t.common {\n\t\tfont-family: \"Georgia\", serif !important;\n\t\tfont-size: 12px;\n\t\tpadding: 10px 0px;\n\t}\n\n\ttable {\n\t\tborder-collapse: collapse;\n\t\twidth: 100%;\n\t\tvertical-align: top;\n\t}\n\n\ttable td {\n\t\tpadding: 2px 0px;\n\t}\n\t\n\ttable h1, h2, h3, h4, h5, h6 {\n\t\tpadding: 0px;\n\t\tmargin: 0px;\n\t}\n\n\ttable.header-table td {\n\t\tvertical-align: top;\n\t}\n\n\ttable.header-table thead {\n\t\tborder-bottom: 1px solid black;\n\t}\n\n\ttable.header-table h3 {\n\t\tcolor: gray;\n\t}\n\n\ttable.header-table thead td {\n\t\tpadding: 5px 0px;\n\t}\n\n\tdiv.page-body table td:nth-child(6),\n\tdiv.page-body table td:nth-child(7) {\n\t\ttext-align: right;\n\t}\n\n\ttable.footer-table td {\n\t\tvertical-align: top;\n\t}\n\n\ttable.footer-table td table td:nth-child(2),\n\ttable.footer-table td table td:nth-child(3) {\n\t\ttext-align: right;\n\t}\n</style>\n\n\n<!-- Javascript -->\n<script>\n\tsi_std = {\n\t\tprint_item_table: function() {\n\t\t\tvar table = print_table(\n\t\t\t\t'Purchase Order',\n\t\t\t\tdoc.name,\n\t\t\t\t'po_details',\n\t\t\t\t'Purchase Order Item',\n\t\t\t\t[// Here specify the table columns to be displayed\n\t\t\t\t\t'SR', 'item_code', 'item_name', 'description', 'qty', 'stock_uom',\n\t\t\t\t\t'import_rate', 'import_amount'\n\t\t\t\t],\n\t\t\t\t[// Here specify the labels of column headings\n\t\t\t\t\t'Sr', 'Item Code', 'Item Name', 'Description', 'Qty',\n\t\t\t\t\t'UoM', 'Basic Rate', 'Amount'\n\t\t\t\t],\n\t\t\t\t[// Here specify the column widths\n\t\t\t\t\t'3%', '10%', '15%', '32%', '5%',\n\t\t\t\t\t'5%', '15%', '15%'\n\t\t\t\t]\n\t\t\t);\n\n\t\t\t// This code takes care of page breaks\n\t\t\tif(table.appendChild) {\n\t\t\t\tout = table.innerHTML;\n\t\t\t} else {\n\t\t\t\tout = '';\n\t\t\t\tfor(var i=0; i < (table.length-1); i++) {\n\t\t\t\t\tout += table[i].innerHTML + \n\t\t\t\t\t\t'<div style = \"page-break-after: always;\" \\\n\t\t\t\t\t\tclass = \"page_break\"></div>\\\n\t\t\t\t\t\t<div class=\"page-settings\"></div>';\n\t\t\t\t}\n\t\t\t\tout += table[table.length-1].innerHTML;\n\t\t\t}\n\t\t\treturn out;\n\t\t},\n\n\n\t\tprint_other_charges: function(parent) {\n\t\t\tvar oc = getchildren('Purchase Taxes and Charges', doc.name, 'purchase_tax_details');\n\t\t\tvar rows = '<table width=100%>\\n';\n\t\t\tfor(var i=0; i<oc.length; i++) {\n\t\t\t\trows +=\n\t\t\t\t\t'<tr>\\n' +\n\t\t\t\t\t\t'\\t<td>' + oc[i].description + '</td>\\n' +\n\t\t\t\t\t\t'\\t<td></td>\\n' +\n\t\t\t\t\t\t'\\t<td width=38%>' + fmt_money(oc[i].tax_amount / (doc.conversion_rate || 1)) + '</td>\\n' +\n\t\t\t\t\t'</tr>\\n';\n\t\t\t}\n\t\t\treturn rows + '</table>\\n';\n\t\t}\n\t};\n</script>\n\n\n<!-- Page Layout Settings -->\n<div class='common page-header'>\n\t<!-- \n\t\tPage Header will contain\n\t\t\t+ table 1\n\t\t\t\t+ table 1a\n\t\t\t\t\t- Name\n\t\t\t\t\t- Address\n\t\t\t\t\t- Contact\n\t\t\t\t\t- Mobile No\n\t\t\t\t+ table 1b\n\t\t\t\t\t- Voucher Date\n\t\t\t\t\t- Due Date\n\t-->\n\t<table class='header-table' cellspacing=0>\n\t\t<thead>\n\t\t\t<tr><td><script>'<h1>' + (doc.select_print_heading || 'Purchase Order') + '</h1>'</script></td></tr>\n\t\t\t<tr><td><h3><script>cur_frm.docname</script></h3></td></tr>\n\t\t</thead>\n\t\t<tbody>\n\t\t\t<tr>\n\t\t\t\t<td width=60%><table width=100% cellspacing=0><tbody>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td width=22%><b>Name</b></td>\n\t\t\t\t\t\t<td><script>doc.supplier_name</script></td>\n\t\t\t\t\t</tr>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td><b>Address</b></td>\n\t\t\t\t\t\t<td><script>replace_newlines(doc.address_display)</script></td>\n\t\t\t\t\t</tr>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td><b>Contact</b></td>\n\t\t\t\t\t\t<td><script>doc.contact_display</script></td>\n\t\t\t\t\t</tr>\n\t\t\t\t</tbody></table></td>\n\t\t\t\t<td><table width=100% cellspacing=0><tbody>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td width=63%><b>Purchase Order Date</b></td>\n\t\t\t\t\t\t<td><script>date.str_to_user(doc.transaction_date)</script></td>\n\t\t\t\t\t<tr>\t\t\t\t\t\n\t\t\t\t</tbody></table></td>\n\t\t\t</tr>\n\t\t</tbody>\n\t\t<tfoot>\n\t\t\n\t\t</tfoot>\n\t</table>\n</div>\n<div class='common page-body'>\n\t<!-- \n\t\tPage Body will contain\n\t\t\t+ table 2\n\t\t\t\t- Sales Invoice Data\n\t-->\n\t<script>si_std.print_item_table()</script>\n</div>\n<div class='common page-footer'>\n\t<!-- \n\t\tPage Footer will contain\n\t\t\t+ table 3\n\t\t\t\t- Terms and Conditions\n\t\t\t\t- Total Rounded Amount Calculation\n\t\t\t\t- Total Rounded Amount in Words\n\t-->\n\t<table class='footer-table' width=100% cellspacing=0>\n\t\t<thead>\n\t\t\t\n\t\t</thead>\n\t\t<tbody>\n\t\t\t<tr>\n\t\t\t\t<td width=60% style='padding-right: 10px;'>\n\t\t\t\t\t<b>Terms, Conditions &amp; Other Information:</b><br />\n\t\t\t\t\t<script>doc.terms</script>\n\t\t\t\t</td>\n\t\t\t\t<td>\n\t\t\t\t\t<table cellspacing=0 width=100%><tbody>\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td>Net Total</td>\n\t\t\t\t\t\t\t<td></td>\n\t\t\t\t\t\t\t<td width=38%><script>\n\t\t\t\t\t\t\t\tfmt_money(doc.net_total_import)\n\t\t\t\t\t\t\t</script></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr><td colspan=3><script>si_std.print_other_charges()</script></td></tr>\n\t\t\t\t\t\t<tr style='font-weight: bold'>\n\t\t\t\t\t\t\t<td>Grand Total</td>\n\t\t\t\t\t\t\t<td><script>doc.currency</script></td>\n\t\t\t\t\t\t\t<td><script>\n\t\t\t\t\t\t\t\tfmt_money(doc.grand_total_import)\n\t\t\t\t\t\t\t</script></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t</tbody></table>\n\t\t\t\t\t<br /><b>In Words</b><br />\n\t\t\t\t\t<i><script>doc.in_words_import</script></i>\n\t\t\t\t</td>\n\t\t\t</tr>\t\t\n\t\t</tbody>\n\t\t<tfoot>\n\t\t\n\t\t</tfoot>\n\t</table>\n</div>\n", 
+  "standard": "Yes"
+ }, 
+ {
+  "name": "Purchase Order Classic", 
+  "doctype": "Print Format"
+ }
 ]
\ No newline at end of file
diff --git a/buying/Print Format/Purchase Order Modern/Purchase Order Modern.txt b/buying/Print Format/Purchase Order Modern/Purchase Order Modern.txt
index 90a135e..535839f 100644
--- a/buying/Print Format/Purchase Order Modern/Purchase Order Modern.txt
+++ b/buying/Print Format/Purchase Order Modern/Purchase Order Modern.txt
@@ -1,28 +1,21 @@
-# Print Format, Purchase Order Modern
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2011-12-13 11:02:59',
-		'docstatus': 0,
-		'modified': '2011-12-13 13:53:52',
-		'modified_by': 'Administrator',
-		'owner': 'Administrator'
-	},
-
-	# These values are common for all Print Format
-	{
-		'doc_type': 'Purchase Order',
-		'doctype': 'Print Format',
-		'html': '<!--\n\tSample Print Format for ERPNext\n\tPlease use at your own discretion\n\tFor suggestions and contributions:\n\t\thttps://github.com/webnotes/erpnext-print-templates\n\n\tFreely usable under MIT license\n-->\n\n<!-- Style Settings -->\n<style>\n\t/*\n\t\tcommon style for whole page\n\t\tThis should include:\n\t\t+ page size related settings\n\t\t+ font family settings\n\t\t+ line spacing settings\n\t*/\n\t@media screen {\n\t\tbody {\n\t\t\twidth: 8.3in;\n\t\t}\n\t}\n\n\thtml, body, div, span, td {\n\t\tfont-family: "Helvetica", "Arial", sans-serif;\n\t\tfont-size: 12px;\n\t}\n\n\tbody {\n\t\tpadding: 10px;\n\t\tmargin: auto;\n\t\tfont-size: 12px;\n\t\tline-height: 150%;\n\t}\n\n\t.common {\n\t\tfont-family: "Helvetica", "Arial", sans-serif !important;\n\t\tfont-size: 12px;\n\t\tpadding: 10px 0px;\n\t}\n\n\ttable {\n\t\tborder-collapse: collapse;\n\t\twidth: 100%;\n\t\tvertical-align: top;\n\t\tborder-style: none !important;\n\t}\n\n\ttable td {\n\t\tpadding: 2px 0px;\n\t\tborder-style: none !important;\n\t}\n\t\n\ttable h1, h2, h3, h4, h5, h6 {\n\t\tpadding: 0px;\n\t\tmargin: 0px;\n\t}\n\n\ttable.header-table td {\n\t\tvertical-align: top;\n\t}\n\n\ttable.header-table h1 {\n\t\ttext-transform: uppercase;\n\t\tcolor: white;\n\t\tfont-size: 55px;\n\t\tfont-style: italic;\n\t}\n\n\ttable.header-table thead tr:nth-child(1) div {\n\t\theight: 24px;\n\t\tbackground-color: #696969;\n\t\tvertical-align: middle;\n\t\tpadding: 12px 0px 0px 0px;\n\t\twidth: 100%;\n\t}\n\n\tdiv.page-body table td:nth-child(6),\n\tdiv.page-body table td:nth-child(7) {\n\t\ttext-align: right;\n\t}\n\n\tdiv.page-body table tr td {\n\t\tbackground-color: #DCDCDC !important;\n\t}\n\n\tdiv.page-body table tr:nth-child(1) td {\n\t\tbackground-color: #696969 !important;\n\t\tcolor: white !important;\n\t}\n\n\ttable.footer-table td {\n\t\tvertical-align: top;\n\t}\n\n\ttable.footer-table td table td:nth-child(2),\n\ttable.footer-table td table td:nth-child(3) {\n\t\ttext-align: right;\n\t}\n\n\ttable.footer-table tfoot td {\n\t\tbackground-color: #696969;\n\t\theight: 10px;\n\t}\n\n\t.imp-details {\n\t\tbackground-color: #DCDCDC;\n\t}\n</style>\n\n\n<!-- Javascript -->\n<script>\n\tsi_std = {\n\t\tprint_item_table: function() {\n\t\t\tvar table = print_table(\n\t\t\t\t\'Purchase Order\',\n\t\t\t\tdoc.name,\n\t\t\t\t\'po_details\',\n\t\t\t\t\'Purchase Order Item\',\n\t\t\t\t[// Here specify the table columns to be displayed\n\t\t\t\t\t\'SR\', \'item_code\', \'item_name\', \'description\', \'qty\', \'stock_uom\',\n\t\t\t\t\t\'import_rate\', \'import_amount\'\n\t\t\t\t],\n\t\t\t\t[// Here specify the labels of column headings\n\t\t\t\t\t\'Sr\', \'Item Code\', \'Item Name\', \'Description\', \'Qty\',\n\t\t\t\t\t\'UoM\', \'Basic Rate\', \'Amount\'\n\t\t\t\t],\n\t\t\t\t[// Here specify the column widths\n\t\t\t\t\t\'3%\', \'10%\', \'15%\', \'32%\', \'5%\',\n\t\t\t\t\t\'5%\', \'15%\', \'15%\'\n\t\t\t\t]\n\t\t\t);\n\n\t\t\t// This code takes care of page breaks\n\t\t\tif(table.appendChild) {\n\t\t\t\tout = table.innerHTML;\n\t\t\t} else {\n\t\t\t\tout = \'\';\n\t\t\t\tfor(var i=0; i < (table.length-1); i++) {\n\t\t\t\t\tout += table[i].innerHTML + \n\t\t\t\t\t\t\'<div style = "page-break-after: always;" \\\n\t\t\t\t\t\tclass = "page_break"></div>\\\n\t\t\t\t\t\t<div class="page-settings"></div>\';\n\t\t\t\t}\n\t\t\t\tout += table[table.length-1].innerHTML;\n\t\t\t}\n\t\t\treturn out;\n\t\t},\n\n\n\t\tprint_other_charges: function(parent) {\n\t\t\tvar oc = getchildren(\'Purchase Taxes and Charges\', doc.name, \'purchase_tax_details\');\n\t\t\tvar rows = \'<table width=100%>\\n\';\n\t\t\tfor(var i=0; i<oc.length; i++) {\n\t\t\t\trows +=\n\t\t\t\t\t\'<tr>\\n\' +\n\t\t\t\t\t\t\'\\t<td>\' + oc[i].description + \'</td>\\n\' +\n\t\t\t\t\t\t\'\\t<td></td>\\n\' +\n\t\t\t\t\t\t\'\\t<td width=38%>\' + fmt_money(oc[i].tax_amount / (doc.conversion_rate || 1)) + \'</td>\\n\' +\n\t\t\t\t\t\'</tr>\\n\';\n\t\t\t}\n\t\t\treturn rows + \'</table>\\n\';\n\t\t}\n\t};\n</script>\n\n\n<!-- Page Layout Settings -->\n<div class=\'common page-header\'>\n\t<!-- \n\t\tPage Header will contain\n\t\t\t+ table 1\n\t\t\t\t+ table 1a\n\t\t\t\t\t- Name\n\t\t\t\t\t- Address\n\t\t\t\t\t- Contact\n\t\t\t\t\t- Mobile No\n\t\t\t\t+ table 1b\n\t\t\t\t\t- Voucher Date\n\t\t\t\t\t- Due Date\n\t-->\n\t<table class=\'header-table\' cellspacing=0>\n\t\t<thead>\n\t\t\t<tr><td colspan=2><div><script>\'<h1>\' + (doc.select_print_heading || \'Purchase Order\') + \'</h1>\'</script></div></td></tr>\n\t\t\t<tr><td colspan=2><div style="height:15px"></div></td></tr>\n\t\t</thead>\n\t\t<tbody>\n\t\t\t<tr>\n\t\t\t\t<td width=60%><table width=100% cellspacing=0><tbody>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td width=22%><b>Name</b></td>\n\t\t\t\t\t\t<td><script>doc.supplier_name</script></td>\n\t\t\t\t\t</tr>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td><b>Address</b></td>\n\t\t\t\t\t\t<td><script>replace_newlines(doc.address_display)</script></td>\n\t\t\t\t\t</tr>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td><b>Contact</b></td>\n\t\t\t\t\t\t<td><script>doc.contact_display</script></td>\n\t\t\t\t\t</tr>\n\t\t\t\t</tbody></table></td>\n\t\t\t\t<td><table width=100% cellspacing=0><tbody>\n\t\t\t\t\t<tr class=\'imp-details\'>\n\t\t\t\t\t\t<td><b>Purchase Order No.</b></td>\n\t\t\t\t\t\t<td><script>cur_frm.docname</script></td>\n\t\t\t\t\t</tr>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td width=63%><b>Purchase Order Date</b></td>\n\t\t\t\t\t\t<td><script>date.str_to_user(doc.transaction_date)</script></td>\n\t\t\t\t\t<tr>\t\t\t\t\t\n\t\t\t\t</tbody></table></td>\n\t\t\t</tr>\n\t\t</tbody>\n\t\t<tfoot>\n\t\t\n\t\t</tfoot>\n\t</table>\n</div>\n<div class=\'common page-body\'>\n\t<!-- \n\t\tPage Body will contain\n\t\t\t+ table 2\n\t\t\t\t- Sales Invoice Data\n\t-->\n\t<script>si_std.print_item_table()</script>\n</div>\n<div class=\'common page-footer\'>\n\t<!-- \n\t\tPage Footer will contain\n\t\t\t+ table 3\n\t\t\t\t- Terms and Conditions\n\t\t\t\t- Total Rounded Amount Calculation\n\t\t\t\t- Total Rounded Amount in Words\n\t-->\n\t<table class=\'footer-table\' width=100% cellspacing=0>\n\t\t<thead>\n\t\t\t\n\t\t</thead>\n\t\t<tbody>\n\t\t\t<tr>\n\t\t\t\t<td width=60% style=\'padding-right: 10px;\'>\n\t\t\t\t\t<b>Terms, Conditions &amp; Other Information:</b><br />\n\t\t\t\t\t<script>doc.terms</script>\n\t\t\t\t</td>\n\t\t\t\t<td>\n\t\t\t\t\t<table cellspacing=0 width=100%><tbody>\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td>Net Total</td>\n\t\t\t\t\t\t\t<td></td>\n\t\t\t\t\t\t\t<td width=38%><script>\n\t\t\t\t\t\t\t\tfmt_money(doc.net_total_import)\n\t\t\t\t\t\t\t</script></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr><td colspan=3><script>si_std.print_other_charges()</script></td></tr>\n\t\t\t\t\t\t<tr style=\'font-weight: bold\' class=\'imp-details\'>\n\t\t\t\t\t\t\t<td>Grand Total</td>\n\t\t\t\t\t\t\t<td><script>doc.currency</script></td>\n\t\t\t\t\t\t\t<td><script>\n\t\t\t\t\t\t\t\tfmt_money(doc.grand_total_import)\n\t\t\t\t\t\t\t</script></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t</tbody></table>\n\t\t\t\t\t<br /><b>In Words</b><br />\n\t\t\t\t\t<i><script>doc.in_words_import</script></i>\n\t\t\t\t</td>\n\t\t\t</tr>\t\t\n\t\t</tbody>\n\t\t<tfoot>\n\t\t\t<tr><td colspan=2><div></div></td><tr>\n\t\t</tfoot>\n\t</table>\n</div>\n',
-		'module': 'Buying',
-		'name': '__common__',
-		'standard': 'Yes'
-	},
-
-	# Print Format, Purchase Order Modern
-	{
-		'doctype': 'Print Format',
-		'name': 'Purchase Order Modern'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2011-12-13 11:02:59", 
+  "modified_by": "Administrator", 
+  "modified": "2011-12-13 13:53:52"
+ }, 
+ {
+  "doc_type": "Purchase Order", 
+  "name": "__common__", 
+  "module": "Buying", 
+  "doctype": "Print Format", 
+  "html": "<!--\n\tSample Print Format for ERPNext\n\tPlease use at your own discretion\n\tFor suggestions and contributions:\n\t\thttps://github.com/webnotes/erpnext-print-templates\n\n\tFreely usable under MIT license\n-->\n\n<!-- Style Settings -->\n<style>\n\t/*\n\t\tcommon style for whole page\n\t\tThis should include:\n\t\t+ page size related settings\n\t\t+ font family settings\n\t\t+ line spacing settings\n\t*/\n\t@media screen {\n\t\tbody {\n\t\t\twidth: 8.3in;\n\t\t}\n\t}\n\n\thtml, body, div, span, td {\n\t\tfont-family: \"Helvetica\", \"Arial\", sans-serif;\n\t\tfont-size: 12px;\n\t}\n\n\tbody {\n\t\tpadding: 10px;\n\t\tmargin: auto;\n\t\tfont-size: 12px;\n\t\tline-height: 150%;\n\t}\n\n\t.common {\n\t\tfont-family: \"Helvetica\", \"Arial\", sans-serif !important;\n\t\tfont-size: 12px;\n\t\tpadding: 10px 0px;\n\t}\n\n\ttable {\n\t\tborder-collapse: collapse;\n\t\twidth: 100%;\n\t\tvertical-align: top;\n\t\tborder-style: none !important;\n\t}\n\n\ttable td {\n\t\tpadding: 2px 0px;\n\t\tborder-style: none !important;\n\t}\n\t\n\ttable h1, h2, h3, h4, h5, h6 {\n\t\tpadding: 0px;\n\t\tmargin: 0px;\n\t}\n\n\ttable.header-table td {\n\t\tvertical-align: top;\n\t}\n\n\ttable.header-table h1 {\n\t\ttext-transform: uppercase;\n\t\tcolor: white;\n\t\tfont-size: 55px;\n\t\tfont-style: italic;\n\t}\n\n\ttable.header-table thead tr:nth-child(1) div {\n\t\theight: 24px;\n\t\tbackground-color: #696969;\n\t\tvertical-align: middle;\n\t\tpadding: 12px 0px 0px 0px;\n\t\twidth: 100%;\n\t}\n\n\tdiv.page-body table td:nth-child(6),\n\tdiv.page-body table td:nth-child(7) {\n\t\ttext-align: right;\n\t}\n\n\tdiv.page-body table tr td {\n\t\tbackground-color: #DCDCDC !important;\n\t}\n\n\tdiv.page-body table tr:nth-child(1) td {\n\t\tbackground-color: #696969 !important;\n\t\tcolor: white !important;\n\t}\n\n\ttable.footer-table td {\n\t\tvertical-align: top;\n\t}\n\n\ttable.footer-table td table td:nth-child(2),\n\ttable.footer-table td table td:nth-child(3) {\n\t\ttext-align: right;\n\t}\n\n\ttable.footer-table tfoot td {\n\t\tbackground-color: #696969;\n\t\theight: 10px;\n\t}\n\n\t.imp-details {\n\t\tbackground-color: #DCDCDC;\n\t}\n</style>\n\n\n<!-- Javascript -->\n<script>\n\tsi_std = {\n\t\tprint_item_table: function() {\n\t\t\tvar table = print_table(\n\t\t\t\t'Purchase Order',\n\t\t\t\tdoc.name,\n\t\t\t\t'po_details',\n\t\t\t\t'Purchase Order Item',\n\t\t\t\t[// Here specify the table columns to be displayed\n\t\t\t\t\t'SR', 'item_code', 'item_name', 'description', 'qty', 'stock_uom',\n\t\t\t\t\t'import_rate', 'import_amount'\n\t\t\t\t],\n\t\t\t\t[// Here specify the labels of column headings\n\t\t\t\t\t'Sr', 'Item Code', 'Item Name', 'Description', 'Qty',\n\t\t\t\t\t'UoM', 'Basic Rate', 'Amount'\n\t\t\t\t],\n\t\t\t\t[// Here specify the column widths\n\t\t\t\t\t'3%', '10%', '15%', '32%', '5%',\n\t\t\t\t\t'5%', '15%', '15%'\n\t\t\t\t]\n\t\t\t);\n\n\t\t\t// This code takes care of page breaks\n\t\t\tif(table.appendChild) {\n\t\t\t\tout = table.innerHTML;\n\t\t\t} else {\n\t\t\t\tout = '';\n\t\t\t\tfor(var i=0; i < (table.length-1); i++) {\n\t\t\t\t\tout += table[i].innerHTML + \n\t\t\t\t\t\t'<div style = \"page-break-after: always;\" \\\n\t\t\t\t\t\tclass = \"page_break\"></div>\\\n\t\t\t\t\t\t<div class=\"page-settings\"></div>';\n\t\t\t\t}\n\t\t\t\tout += table[table.length-1].innerHTML;\n\t\t\t}\n\t\t\treturn out;\n\t\t},\n\n\n\t\tprint_other_charges: function(parent) {\n\t\t\tvar oc = getchildren('Purchase Taxes and Charges', doc.name, 'purchase_tax_details');\n\t\t\tvar rows = '<table width=100%>\\n';\n\t\t\tfor(var i=0; i<oc.length; i++) {\n\t\t\t\trows +=\n\t\t\t\t\t'<tr>\\n' +\n\t\t\t\t\t\t'\\t<td>' + oc[i].description + '</td>\\n' +\n\t\t\t\t\t\t'\\t<td></td>\\n' +\n\t\t\t\t\t\t'\\t<td width=38%>' + fmt_money(oc[i].tax_amount / (doc.conversion_rate || 1)) + '</td>\\n' +\n\t\t\t\t\t'</tr>\\n';\n\t\t\t}\n\t\t\treturn rows + '</table>\\n';\n\t\t}\n\t};\n</script>\n\n\n<!-- Page Layout Settings -->\n<div class='common page-header'>\n\t<!-- \n\t\tPage Header will contain\n\t\t\t+ table 1\n\t\t\t\t+ table 1a\n\t\t\t\t\t- Name\n\t\t\t\t\t- Address\n\t\t\t\t\t- Contact\n\t\t\t\t\t- Mobile No\n\t\t\t\t+ table 1b\n\t\t\t\t\t- Voucher Date\n\t\t\t\t\t- Due Date\n\t-->\n\t<table class='header-table' cellspacing=0>\n\t\t<thead>\n\t\t\t<tr><td colspan=2><div><script>'<h1>' + (doc.select_print_heading || 'Purchase Order') + '</h1>'</script></div></td></tr>\n\t\t\t<tr><td colspan=2><div style=\"height:15px\"></div></td></tr>\n\t\t</thead>\n\t\t<tbody>\n\t\t\t<tr>\n\t\t\t\t<td width=60%><table width=100% cellspacing=0><tbody>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td width=22%><b>Name</b></td>\n\t\t\t\t\t\t<td><script>doc.supplier_name</script></td>\n\t\t\t\t\t</tr>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td><b>Address</b></td>\n\t\t\t\t\t\t<td><script>replace_newlines(doc.address_display)</script></td>\n\t\t\t\t\t</tr>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td><b>Contact</b></td>\n\t\t\t\t\t\t<td><script>doc.contact_display</script></td>\n\t\t\t\t\t</tr>\n\t\t\t\t</tbody></table></td>\n\t\t\t\t<td><table width=100% cellspacing=0><tbody>\n\t\t\t\t\t<tr class='imp-details'>\n\t\t\t\t\t\t<td><b>Purchase Order No.</b></td>\n\t\t\t\t\t\t<td><script>cur_frm.docname</script></td>\n\t\t\t\t\t</tr>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td width=63%><b>Purchase Order Date</b></td>\n\t\t\t\t\t\t<td><script>date.str_to_user(doc.transaction_date)</script></td>\n\t\t\t\t\t<tr>\t\t\t\t\t\n\t\t\t\t</tbody></table></td>\n\t\t\t</tr>\n\t\t</tbody>\n\t\t<tfoot>\n\t\t\n\t\t</tfoot>\n\t</table>\n</div>\n<div class='common page-body'>\n\t<!-- \n\t\tPage Body will contain\n\t\t\t+ table 2\n\t\t\t\t- Sales Invoice Data\n\t-->\n\t<script>si_std.print_item_table()</script>\n</div>\n<div class='common page-footer'>\n\t<!-- \n\t\tPage Footer will contain\n\t\t\t+ table 3\n\t\t\t\t- Terms and Conditions\n\t\t\t\t- Total Rounded Amount Calculation\n\t\t\t\t- Total Rounded Amount in Words\n\t-->\n\t<table class='footer-table' width=100% cellspacing=0>\n\t\t<thead>\n\t\t\t\n\t\t</thead>\n\t\t<tbody>\n\t\t\t<tr>\n\t\t\t\t<td width=60% style='padding-right: 10px;'>\n\t\t\t\t\t<b>Terms, Conditions &amp; Other Information:</b><br />\n\t\t\t\t\t<script>doc.terms</script>\n\t\t\t\t</td>\n\t\t\t\t<td>\n\t\t\t\t\t<table cellspacing=0 width=100%><tbody>\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td>Net Total</td>\n\t\t\t\t\t\t\t<td></td>\n\t\t\t\t\t\t\t<td width=38%><script>\n\t\t\t\t\t\t\t\tfmt_money(doc.net_total_import)\n\t\t\t\t\t\t\t</script></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr><td colspan=3><script>si_std.print_other_charges()</script></td></tr>\n\t\t\t\t\t\t<tr style='font-weight: bold' class='imp-details'>\n\t\t\t\t\t\t\t<td>Grand Total</td>\n\t\t\t\t\t\t\t<td><script>doc.currency</script></td>\n\t\t\t\t\t\t\t<td><script>\n\t\t\t\t\t\t\t\tfmt_money(doc.grand_total_import)\n\t\t\t\t\t\t\t</script></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t</tbody></table>\n\t\t\t\t\t<br /><b>In Words</b><br />\n\t\t\t\t\t<i><script>doc.in_words_import</script></i>\n\t\t\t\t</td>\n\t\t\t</tr>\t\t\n\t\t</tbody>\n\t\t<tfoot>\n\t\t\t<tr><td colspan=2><div></div></td><tr>\n\t\t</tfoot>\n\t</table>\n</div>\n", 
+  "standard": "Yes"
+ }, 
+ {
+  "name": "Purchase Order Modern", 
+  "doctype": "Print Format"
+ }
 ]
\ No newline at end of file
diff --git a/buying/Print Format/Purchase Order Spartan/Purchase Order Spartan.txt b/buying/Print Format/Purchase Order Spartan/Purchase Order Spartan.txt
index 7b0510d..04999b5 100644
--- a/buying/Print Format/Purchase Order Spartan/Purchase Order Spartan.txt
+++ b/buying/Print Format/Purchase Order Spartan/Purchase Order Spartan.txt
@@ -1,28 +1,21 @@
-# Print Format, Purchase Order Spartan
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2011-12-13 11:02:59',
-		'docstatus': 0,
-		'modified': '2011-12-13 13:55:23',
-		'modified_by': 'Administrator',
-		'owner': 'Administrator'
-	},
-
-	# These values are common for all Print Format
-	{
-		'doc_type': 'Purchase Order',
-		'doctype': 'Print Format',
-		'html': '<!--\n\tSample Print Format for ERPNext\n\tPlease use at your own discretion\n\tFor suggestions and contributions:\n\t\thttps://github.com/webnotes/erpnext-print-templates\n\n\tFreely usable under MIT license\n-->\n\n<!-- Style Settings -->\n<style>\n\t/*\n\t\tcommon style for whole page\n\t\tThis should include:\n\t\t+ page size related settings\n\t\t+ font family settings\n\t\t+ line spacing settings\n\t*/\n\t@media screen {\n\t\tbody {\n\t\t\twidth: 8.3in;\n\t\t}\n\t}\n\n\thtml, body, div, span, td {\n\t\tfont-family: "Arial", sans-serif;\n\t\tfont-size: 12px;\n\t}\n\n\tbody {\n\t\tpadding: 10px;\n\t\tmargin: auto;\n\t\tfont-size: 12px;\n\t\tline-height: 150%;\n\t}\n\n\t.common {\n\t\tfont-family: "Arial", sans-serif !important;\n\t\tfont-size: 12px;\n\t\tpadding: 0px;\n\t}\n\n\ttable {\n\t\twidth: 100% !important;\n\t\tvertical-align: top;\n\t}\n\n\ttable td {\n\t\tpadding: 2px 0px;\n\t}\n\n\ttable, td {\n\t\tborder-collapse: collapse !important;\n\t\tpadding: 0px;\n\t\tmargin: 0px !important;\n\t}\n\t\n\ttable h1, h2, h3, h4, h5, h6 {\n\t\tpadding: 0px;\n\t\tmargin: 0px;\n\t}\n\n\ttable.header-table td {\n\t\tvertical-align: top;\n\t}\n\n\ttable.header-table h3 {\n\t\tcolor: gray;\n\t}\n\n\ttable.header-table thead td {\n\t\tpadding: 5px;\n\t}\n\n\ttable.header-table > thead,\n\ttable.header-table > tbody > tr > td,\n\ttable.footer-table > tbody > tr > td {\n\t\tborder: 1px solid black;\n\t\tpadding: 5px;\n\t}\n\n\ttable.footer-table > tbody,\n\ttable.header-table > thead {\n\t\tborder-bottom: 3px solid black;\n\t}\n\n\ttable.header-table > thead {\n\t\tborder-top: 3px solid black;\n\t}\n\n\tdiv.page-body table td:nth-child(6),\n\tdiv.page-body table td:nth-child(7) {\n\t\ttext-align: right;\n\t}\n\n\tdiv.page-body td {\n\t\tbackground-color: white !important;\n\t\tborder: 1px solid black !important;\n\t}\n\n\ttable.footer-table td {\n\t\tvertical-align: top;\n\t}\n\n\ttable.footer-table td table td:nth-child(2),\n\ttable.footer-table td table td:nth-child(3) {\n\t\ttext-align: right;\n\t}\n</style>\n\n\n<!-- Javascript -->\n<script>\n\tsi_std = {\n\t\tprint_item_table: function() {\n\t\t\tvar table = print_table(\n\t\t\t\t\'Purchase Order\',\n\t\t\t\tdoc.name,\n\t\t\t\t\'po_details\',\n\t\t\t\t\'Purchase Order Item\',\n\t\t\t\t[// Here specify the table columns to be displayed\n\t\t\t\t\t\'SR\', \'item_code\', \'item_name\', \'description\', \'qty\', \'stock_uom\',\n\t\t\t\t\t\'import_rate\', \'import_amount\'\n\t\t\t\t],\n\t\t\t\t[// Here specify the labels of column headings\n\t\t\t\t\t\'Sr\', \'Item Code\', \'Item Name\', \'Description\', \'Qty\',\n\t\t\t\t\t\'UoM\', \'Basic Rate\', \'Amount\'\n\t\t\t\t],\n\t\t\t\t[// Here specify the column widths\n\t\t\t\t\t\'3%\', \'10%\', \'15%\', \'32%\', \'5%\',\n\t\t\t\t\t\'5%\', \'15%\', \'15%\'\n\t\t\t\t]\n\t\t\t);\n\n\t\t\t// This code takes care of page breaks\n\t\t\tif(table.appendChild) {\n\t\t\t\tout = table.innerHTML;\n\t\t\t} else {\n\t\t\t\tout = \'\';\n\t\t\t\tfor(var i=0; i < (table.length-1); i++) {\n\t\t\t\t\tout += table[i].innerHTML + \n\t\t\t\t\t\t\'<div style = "page-break-after: always;" \\\n\t\t\t\t\t\tclass = "page_break"></div>\\\n\t\t\t\t\t\t<div class="page-settings"></div>\';\n\t\t\t\t}\n\t\t\t\tout += table[table.length-1].innerHTML;\n\t\t\t}\n\t\t\treturn out;\n\t\t},\n\n\n\t\tprint_other_charges: function(parent) {\n\t\t\tvar oc = getchildren(\'Purchase Taxes and Charges\', doc.name, \'purchase_tax_details\');\n\t\t\tvar rows = \'<table width=100%>\\n\';\n\t\t\tfor(var i=0; i<oc.length; i++) {\n\t\t\t\trows +=\n\t\t\t\t\t\'<tr>\\n\' +\n\t\t\t\t\t\t\'\\t<td>\' + oc[i].description + \'</td>\\n\' +\n\t\t\t\t\t\t\'\\t<td></td>\\n\' +\n\t\t\t\t\t\t\'\\t<td width=38%>\' + fmt_money(oc[i].tax_amount / (doc.conversion_rate || 1)) + \'</td>\\n\' +\n\t\t\t\t\t\'</tr>\\n\';\n\t\t\t}\n\t\t\treturn rows + \'</table>\\n\';\n\t\t}\n\t};\n</script>\n\n\n<!-- Page Layout Settings -->\n<div class=\'common page-header\'>\n\t<!-- \n\t\tPage Header will contain\n\t\t\t+ table 1\n\t\t\t\t+ table 1a\n\t\t\t\t\t- Name\n\t\t\t\t\t- Address\n\t\t\t\t\t- Contact\n\t\t\t\t\t- Mobile No\n\t\t\t\t+ table 1b\n\t\t\t\t\t- Voucher Date\n\t\t\t\t\t- Due Date\n\t-->\n\t<table class=\'header-table\' cellspacing=0>\n\t\t<thead>\n\t\t\t<tr><td colspan=2><script>\'<h1>\' + (doc.select_print_heading || \'Purchase Order\') + \'</h1>\'</script></td></tr>\n\t\t\t<tr><td colspan=2><h3><script>cur_frm.docname</script></h3></td></tr>\n\t\t</thead>\n\t\t<tbody>\n\t\t\t<tr>\n\t\t\t\t<td width=60%><table width=100% cellspacing=0><tbody>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td width=22%><b>Name</b></td>\n\t\t\t\t\t\t<td><script>doc.supplier_name</script></td>\n\t\t\t\t\t</tr>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td><b>Address</b></td>\n\t\t\t\t\t\t<td><script>replace_newlines(doc.address_display)</script></td>\n\t\t\t\t\t</tr>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td><b>Contact</b></td>\n\t\t\t\t\t\t<td><script>doc.contact_display</script></td>\n\t\t\t\t\t</tr>\n\t\t\t\t</tbody></table></td>\n\t\t\t\t<td><table width=100% cellspacing=0><tbody>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td width=63%><b>Purchase Order Date</b></td>\n\t\t\t\t\t\t<td><script>date.str_to_user(doc.transaction_date)</script></td>\n\t\t\t\t\t<tr>\t\t\t\t\t\n\t\t\t\t</tbody></table></td>\n\t\t\t</tr>\n\t\t</tbody>\n\t\t<tfoot>\n\t\t\n\t\t</tfoot>\n\t</table>\n</div>\n<div class=\'common page-body\'>\n\t<!-- \n\t\tPage Body will contain\n\t\t\t+ table 2\n\t\t\t\t- Sales Invoice Data\n\t-->\n\t<script>si_std.print_item_table()</script>\n</div>\n<div class=\'common page-footer\'>\n\t<!-- \n\t\tPage Footer will contain\n\t\t\t+ table 3\n\t\t\t\t- Terms and Conditions\n\t\t\t\t- Total Rounded Amount Calculation\n\t\t\t\t- Total Rounded Amount in Words\n\t-->\n\t<table class=\'footer-table\' width=100% cellspacing=0>\n\t\t<thead>\n\t\t\t\n\t\t</thead>\n\t\t<tbody>\n\t\t\t<tr>\n\t\t\t\t<td width=60% style=\'padding-right: 10px;\'>\n\t\t\t\t\t<b>Terms, Conditions &amp; Other Information:</b><br />\n\t\t\t\t\t<script>doc.terms</script>\n\t\t\t\t</td>\n\t\t\t\t<td>\n\t\t\t\t\t<table cellspacing=0 width=100%><tbody>\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td>Net Total</td>\n\t\t\t\t\t\t\t<td></td>\n\t\t\t\t\t\t\t<td width=38%><script>\n\t\t\t\t\t\t\t\tfmt_money(doc.net_total_import)\n\t\t\t\t\t\t\t</script></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr><td colspan=3><script>si_std.print_other_charges()</script></td></tr>\n\t\t\t\t\t\t<tr style=\'font-weight: bold\'>\n\t\t\t\t\t\t\t<td>Grand Total</td>\n\t\t\t\t\t\t\t<td><script>doc.currency</script></td>\n\t\t\t\t\t\t\t<td><script>\n\t\t\t\t\t\t\t\tfmt_money(doc.grand_total_import)\n\t\t\t\t\t\t\t</script></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t</tbody></table>\n\t\t\t\t\t<br /><b>In Words</b><br />\n\t\t\t\t\t<i><script>doc.in_words_import</script></i>\n\t\t\t\t</td>\n\t\t\t</tr>\t\t\n\t\t</tbody>\n\t\t<tfoot>\n\t\t\n\t\t</tfoot>\n\t</table>\n</div>\n',
-		'module': 'Buying',
-		'name': '__common__',
-		'standard': 'Yes'
-	},
-
-	# Print Format, Purchase Order Spartan
-	{
-		'doctype': 'Print Format',
-		'name': 'Purchase Order Spartan'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2011-12-13 11:02:59", 
+  "modified_by": "Administrator", 
+  "modified": "2011-12-13 13:55:23"
+ }, 
+ {
+  "doc_type": "Purchase Order", 
+  "name": "__common__", 
+  "module": "Buying", 
+  "doctype": "Print Format", 
+  "html": "<!--\n\tSample Print Format for ERPNext\n\tPlease use at your own discretion\n\tFor suggestions and contributions:\n\t\thttps://github.com/webnotes/erpnext-print-templates\n\n\tFreely usable under MIT license\n-->\n\n<!-- Style Settings -->\n<style>\n\t/*\n\t\tcommon style for whole page\n\t\tThis should include:\n\t\t+ page size related settings\n\t\t+ font family settings\n\t\t+ line spacing settings\n\t*/\n\t@media screen {\n\t\tbody {\n\t\t\twidth: 8.3in;\n\t\t}\n\t}\n\n\thtml, body, div, span, td {\n\t\tfont-family: \"Arial\", sans-serif;\n\t\tfont-size: 12px;\n\t}\n\n\tbody {\n\t\tpadding: 10px;\n\t\tmargin: auto;\n\t\tfont-size: 12px;\n\t\tline-height: 150%;\n\t}\n\n\t.common {\n\t\tfont-family: \"Arial\", sans-serif !important;\n\t\tfont-size: 12px;\n\t\tpadding: 0px;\n\t}\n\n\ttable {\n\t\twidth: 100% !important;\n\t\tvertical-align: top;\n\t}\n\n\ttable td {\n\t\tpadding: 2px 0px;\n\t}\n\n\ttable, td {\n\t\tborder-collapse: collapse !important;\n\t\tpadding: 0px;\n\t\tmargin: 0px !important;\n\t}\n\t\n\ttable h1, h2, h3, h4, h5, h6 {\n\t\tpadding: 0px;\n\t\tmargin: 0px;\n\t}\n\n\ttable.header-table td {\n\t\tvertical-align: top;\n\t}\n\n\ttable.header-table h3 {\n\t\tcolor: gray;\n\t}\n\n\ttable.header-table thead td {\n\t\tpadding: 5px;\n\t}\n\n\ttable.header-table > thead,\n\ttable.header-table > tbody > tr > td,\n\ttable.footer-table > tbody > tr > td {\n\t\tborder: 1px solid black;\n\t\tpadding: 5px;\n\t}\n\n\ttable.footer-table > tbody,\n\ttable.header-table > thead {\n\t\tborder-bottom: 3px solid black;\n\t}\n\n\ttable.header-table > thead {\n\t\tborder-top: 3px solid black;\n\t}\n\n\tdiv.page-body table td:nth-child(6),\n\tdiv.page-body table td:nth-child(7) {\n\t\ttext-align: right;\n\t}\n\n\tdiv.page-body td {\n\t\tbackground-color: white !important;\n\t\tborder: 1px solid black !important;\n\t}\n\n\ttable.footer-table td {\n\t\tvertical-align: top;\n\t}\n\n\ttable.footer-table td table td:nth-child(2),\n\ttable.footer-table td table td:nth-child(3) {\n\t\ttext-align: right;\n\t}\n</style>\n\n\n<!-- Javascript -->\n<script>\n\tsi_std = {\n\t\tprint_item_table: function() {\n\t\t\tvar table = print_table(\n\t\t\t\t'Purchase Order',\n\t\t\t\tdoc.name,\n\t\t\t\t'po_details',\n\t\t\t\t'Purchase Order Item',\n\t\t\t\t[// Here specify the table columns to be displayed\n\t\t\t\t\t'SR', 'item_code', 'item_name', 'description', 'qty', 'stock_uom',\n\t\t\t\t\t'import_rate', 'import_amount'\n\t\t\t\t],\n\t\t\t\t[// Here specify the labels of column headings\n\t\t\t\t\t'Sr', 'Item Code', 'Item Name', 'Description', 'Qty',\n\t\t\t\t\t'UoM', 'Basic Rate', 'Amount'\n\t\t\t\t],\n\t\t\t\t[// Here specify the column widths\n\t\t\t\t\t'3%', '10%', '15%', '32%', '5%',\n\t\t\t\t\t'5%', '15%', '15%'\n\t\t\t\t]\n\t\t\t);\n\n\t\t\t// This code takes care of page breaks\n\t\t\tif(table.appendChild) {\n\t\t\t\tout = table.innerHTML;\n\t\t\t} else {\n\t\t\t\tout = '';\n\t\t\t\tfor(var i=0; i < (table.length-1); i++) {\n\t\t\t\t\tout += table[i].innerHTML + \n\t\t\t\t\t\t'<div style = \"page-break-after: always;\" \\\n\t\t\t\t\t\tclass = \"page_break\"></div>\\\n\t\t\t\t\t\t<div class=\"page-settings\"></div>';\n\t\t\t\t}\n\t\t\t\tout += table[table.length-1].innerHTML;\n\t\t\t}\n\t\t\treturn out;\n\t\t},\n\n\n\t\tprint_other_charges: function(parent) {\n\t\t\tvar oc = getchildren('Purchase Taxes and Charges', doc.name, 'purchase_tax_details');\n\t\t\tvar rows = '<table width=100%>\\n';\n\t\t\tfor(var i=0; i<oc.length; i++) {\n\t\t\t\trows +=\n\t\t\t\t\t'<tr>\\n' +\n\t\t\t\t\t\t'\\t<td>' + oc[i].description + '</td>\\n' +\n\t\t\t\t\t\t'\\t<td></td>\\n' +\n\t\t\t\t\t\t'\\t<td width=38%>' + fmt_money(oc[i].tax_amount / (doc.conversion_rate || 1)) + '</td>\\n' +\n\t\t\t\t\t'</tr>\\n';\n\t\t\t}\n\t\t\treturn rows + '</table>\\n';\n\t\t}\n\t};\n</script>\n\n\n<!-- Page Layout Settings -->\n<div class='common page-header'>\n\t<!-- \n\t\tPage Header will contain\n\t\t\t+ table 1\n\t\t\t\t+ table 1a\n\t\t\t\t\t- Name\n\t\t\t\t\t- Address\n\t\t\t\t\t- Contact\n\t\t\t\t\t- Mobile No\n\t\t\t\t+ table 1b\n\t\t\t\t\t- Voucher Date\n\t\t\t\t\t- Due Date\n\t-->\n\t<table class='header-table' cellspacing=0>\n\t\t<thead>\n\t\t\t<tr><td colspan=2><script>'<h1>' + (doc.select_print_heading || 'Purchase Order') + '</h1>'</script></td></tr>\n\t\t\t<tr><td colspan=2><h3><script>cur_frm.docname</script></h3></td></tr>\n\t\t</thead>\n\t\t<tbody>\n\t\t\t<tr>\n\t\t\t\t<td width=60%><table width=100% cellspacing=0><tbody>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td width=22%><b>Name</b></td>\n\t\t\t\t\t\t<td><script>doc.supplier_name</script></td>\n\t\t\t\t\t</tr>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td><b>Address</b></td>\n\t\t\t\t\t\t<td><script>replace_newlines(doc.address_display)</script></td>\n\t\t\t\t\t</tr>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td><b>Contact</b></td>\n\t\t\t\t\t\t<td><script>doc.contact_display</script></td>\n\t\t\t\t\t</tr>\n\t\t\t\t</tbody></table></td>\n\t\t\t\t<td><table width=100% cellspacing=0><tbody>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td width=63%><b>Purchase Order Date</b></td>\n\t\t\t\t\t\t<td><script>date.str_to_user(doc.transaction_date)</script></td>\n\t\t\t\t\t<tr>\t\t\t\t\t\n\t\t\t\t</tbody></table></td>\n\t\t\t</tr>\n\t\t</tbody>\n\t\t<tfoot>\n\t\t\n\t\t</tfoot>\n\t</table>\n</div>\n<div class='common page-body'>\n\t<!-- \n\t\tPage Body will contain\n\t\t\t+ table 2\n\t\t\t\t- Sales Invoice Data\n\t-->\n\t<script>si_std.print_item_table()</script>\n</div>\n<div class='common page-footer'>\n\t<!-- \n\t\tPage Footer will contain\n\t\t\t+ table 3\n\t\t\t\t- Terms and Conditions\n\t\t\t\t- Total Rounded Amount Calculation\n\t\t\t\t- Total Rounded Amount in Words\n\t-->\n\t<table class='footer-table' width=100% cellspacing=0>\n\t\t<thead>\n\t\t\t\n\t\t</thead>\n\t\t<tbody>\n\t\t\t<tr>\n\t\t\t\t<td width=60% style='padding-right: 10px;'>\n\t\t\t\t\t<b>Terms, Conditions &amp; Other Information:</b><br />\n\t\t\t\t\t<script>doc.terms</script>\n\t\t\t\t</td>\n\t\t\t\t<td>\n\t\t\t\t\t<table cellspacing=0 width=100%><tbody>\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td>Net Total</td>\n\t\t\t\t\t\t\t<td></td>\n\t\t\t\t\t\t\t<td width=38%><script>\n\t\t\t\t\t\t\t\tfmt_money(doc.net_total_import)\n\t\t\t\t\t\t\t</script></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr><td colspan=3><script>si_std.print_other_charges()</script></td></tr>\n\t\t\t\t\t\t<tr style='font-weight: bold'>\n\t\t\t\t\t\t\t<td>Grand Total</td>\n\t\t\t\t\t\t\t<td><script>doc.currency</script></td>\n\t\t\t\t\t\t\t<td><script>\n\t\t\t\t\t\t\t\tfmt_money(doc.grand_total_import)\n\t\t\t\t\t\t\t</script></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t</tbody></table>\n\t\t\t\t\t<br /><b>In Words</b><br />\n\t\t\t\t\t<i><script>doc.in_words_import</script></i>\n\t\t\t\t</td>\n\t\t\t</tr>\t\t\n\t\t</tbody>\n\t\t<tfoot>\n\t\t\n\t\t</tfoot>\n\t</table>\n</div>\n", 
+  "standard": "Yes"
+ }, 
+ {
+  "name": "Purchase Order Spartan", 
+  "doctype": "Print Format"
+ }
 ]
\ No newline at end of file
diff --git a/buying/doctype/purchase_common/purchase_common.txt b/buying/doctype/purchase_common/purchase_common.txt
index dc1e1f1..2d38c7e 100644
--- a/buying/doctype/purchase_common/purchase_common.txt
+++ b/buying/doctype/purchase_common/purchase_common.txt
@@ -1,31 +1,24 @@
-# DocType, Purchase Common
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:35:51',
-		'docstatus': 0,
-		'modified': '2012-03-27 14:35:51',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'issingle': 1,
-		'module': u'Buying',
-		'name': '__common__',
-		'section_style': u'Simple',
-		'server_code_error': u' ',
-		'show_in_menu': 0,
-		'version': 187
-	},
-
-	# DocType, Purchase Common
-	{
-		'doctype': 'DocType',
-		'name': u'Purchase Common'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-03-27 14:35:51", 
+  "modified_by": "Administrator", 
+  "modified": "2012-03-27 14:35:51"
+ }, 
+ {
+  "section_style": "Simple", 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "module": "Buying", 
+  "show_in_menu": 0, 
+  "version": 187, 
+  "server_code_error": " ", 
+  "doctype": "DocType", 
+  "issingle": 1
+ }, 
+ {
+  "name": "Purchase Common", 
+  "doctype": "DocType"
+ }
 ]
\ No newline at end of file
diff --git a/buying/doctype/purchase_order/purchase_order.py b/buying/doctype/purchase_order/purchase_order.py
index e52499c..7182306 100644
--- a/buying/doctype/purchase_order/purchase_order.py
+++ b/buying/doctype/purchase_order/purchase_order.py
@@ -299,7 +299,11 @@
 			
 	def add_bom(self, d):
 		#----- fetching default bom from Bill of Materials instead of Item Master --
-		bom_det = sql("select t1.item, t2.item_code, t2.qty_consumed_per_unit, t2.moving_avg_rate, t2.value_as_per_mar, t2.stock_uom, t2.name, t2.parent from `tabBOM` t1, `tabBOM Item` t2 where t2.parent = t1.name and t1.item = '%s' and ifnull(t1.is_default,0) = 1 and t1.docstatus = 1" % d.item_code)
+		bom_det = sql("""select t1.item, t2.item_code, t2.qty_consumed_per_unit, 
+			t2.moving_avg_rate, t2.value_as_per_mar, t2.stock_uom, t2.name, t2.parent 
+			from `tabBOM` t1, `tabBOM Item` t2 
+			where t2.parent = t1.name and t1.item = %s 
+				and ifnull(t1.is_default,0) = 1 and t1.docstatus = 1""", (d.item_code,))
 		
 		if not bom_det:
 			msgprint("No default BOM exists for item: %s" % d.item_code)
diff --git a/buying/doctype/purchase_order_item/purchase_order_item.txt b/buying/doctype/purchase_order_item/purchase_order_item.txt
index 552ca4a7..9f8151d 100755
--- a/buying/doctype/purchase_order_item/purchase_order_item.txt
+++ b/buying/doctype/purchase_order_item/purchase_order_item.txt
@@ -263,12 +263,12 @@
  {
   "print_hide": 1, 
   "oldfieldtype": "Date", 
+  "search_index": 0, 
   "doctype": "DocField", 
   "label": "Purchase Request Date", 
   "oldfieldname": "prevdoc_date", 
   "fieldname": "prevdoc_date", 
   "fieldtype": "Date", 
-  "search_index": 0, 
   "hidden": 1, 
   "permlevel": 1, 
   "in_filter": 1
@@ -326,11 +326,11 @@
   "label": "Item Group", 
   "oldfieldname": "item_group", 
   "permlevel": 1, 
+  "options": "Item Group", 
   "fieldname": "item_group", 
   "fieldtype": "Link", 
   "search_index": 0, 
   "hidden": 1, 
-  "options": "Item Group", 
   "in_filter": 1
  }, 
  {
@@ -361,11 +361,11 @@
  {
   "print_hide": 1, 
   "default": "0.00", 
+  "no_copy": 1, 
   "oldfieldtype": "Currency", 
   "doctype": "DocField", 
   "label": "Billed Quantity", 
   "oldfieldname": "billed_qty", 
-  "no_copy": 1, 
   "fieldname": "billed_qty", 
   "fieldtype": "Currency", 
   "hidden": 0, 
diff --git a/buying/doctype/purchase_order_item_supplied/purchase_order_item_supplied.txt b/buying/doctype/purchase_order_item_supplied/purchase_order_item_supplied.txt
index eb529c4..f9cbd04 100644
--- a/buying/doctype/purchase_order_item_supplied/purchase_order_item_supplied.txt
+++ b/buying/doctype/purchase_order_item_supplied/purchase_order_item_supplied.txt
@@ -1,144 +1,117 @@
-# DocType, Purchase Order Item Supplied
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:35:50',
-		'docstatus': 0,
-		'modified': '2012-03-27 14:35:50',
-		'modified_by': u'Administrator',
-		'owner': u'dhanalekshmi@webnotestech.com'
-	},
-
-	# These values are common for all DocType
-	{
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'hide_toolbar': 1,
-		'istable': 1,
-		'module': u'Buying',
-		'name': '__common__',
-		'section_style': u'Simple',
-		'server_code_error': u' ',
-		'show_in_menu': 0,
-		'version': 1
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'Purchase Order Item Supplied',
-		'parentfield': u'fields',
-		'parenttype': u'DocType'
-	},
-
-	# DocType, Purchase Order Item Supplied
-	{
-		'doctype': 'DocType',
-		'name': u'Purchase Order Item Supplied'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'reference_name',
-		'fieldtype': u'Data',
-		'hidden': 0,
-		'in_filter': 0,
-		'label': u'Reference Name',
-		'oldfieldname': u'reference_name',
-		'oldfieldtype': u'Data',
-		'permlevel': 1,
-		'search_index': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'bom_detail_no',
-		'fieldtype': u'Data',
-		'label': u'BOM Detail No',
-		'oldfieldname': u'bom_detail_no',
-		'oldfieldtype': u'Data',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'main_item_code',
-		'fieldtype': u'Data',
-		'label': u'Item Code',
-		'oldfieldname': u'main_item_code',
-		'oldfieldtype': u'Data',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'rm_item_code',
-		'fieldtype': u'Data',
-		'label': u'Raw Material Item Code',
-		'oldfieldname': u'rm_item_code',
-		'oldfieldtype': u'Data',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'required_qty',
-		'fieldtype': u'Currency',
-		'label': u'Required Qty',
-		'oldfieldname': u'required_qty',
-		'oldfieldtype': u'Currency',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'rate',
-		'fieldtype': u'Currency',
-		'label': u'Rate',
-		'oldfieldname': u'rate',
-		'oldfieldtype': u'Currency',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'amount',
-		'fieldtype': u'Currency',
-		'label': u'Amount',
-		'oldfieldname': u'amount',
-		'oldfieldtype': u'Currency',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'conversion_factor',
-		'fieldtype': u'Currency',
-		'hidden': 1,
-		'label': u'Conversion Factor',
-		'oldfieldname': u'conversion_factor',
-		'oldfieldtype': u'Currency',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'stock_uom',
-		'fieldtype': u'Data',
-		'label': u'Stock Uom',
-		'oldfieldname': u'stock_uom',
-		'oldfieldtype': u'Data',
-		'permlevel': 1
-	}
+ {
+  "owner": "dhanalekshmi@webnotestech.com", 
+  "docstatus": 0, 
+  "creation": "2012-03-27 14:35:50", 
+  "modified_by": "Administrator", 
+  "modified": "2012-03-27 14:35:50"
+ }, 
+ {
+  "section_style": "Simple", 
+  "istable": 1, 
+  "module": "Buying", 
+  "server_code_error": " ", 
+  "doctype": "DocType", 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "show_in_menu": 0, 
+  "version": 1, 
+  "hide_toolbar": 1
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Purchase Order Item Supplied", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "Purchase Order Item Supplied", 
+  "doctype": "DocType"
+ }, 
+ {
+  "search_index": 0, 
+  "doctype": "DocField", 
+  "label": "Reference Name", 
+  "oldfieldname": "reference_name", 
+  "fieldname": "reference_name", 
+  "fieldtype": "Data", 
+  "oldfieldtype": "Data", 
+  "hidden": 0, 
+  "permlevel": 1, 
+  "in_filter": 0
+ }, 
+ {
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "BOM Detail No", 
+  "oldfieldname": "bom_detail_no", 
+  "fieldname": "bom_detail_no", 
+  "fieldtype": "Data", 
+  "permlevel": 1
+ }, 
+ {
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Item Code", 
+  "oldfieldname": "main_item_code", 
+  "fieldname": "main_item_code", 
+  "fieldtype": "Data", 
+  "permlevel": 1
+ }, 
+ {
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Raw Material Item Code", 
+  "oldfieldname": "rm_item_code", 
+  "fieldname": "rm_item_code", 
+  "fieldtype": "Data", 
+  "permlevel": 1
+ }, 
+ {
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Required Qty", 
+  "oldfieldname": "required_qty", 
+  "fieldname": "required_qty", 
+  "fieldtype": "Currency", 
+  "permlevel": 1
+ }, 
+ {
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Rate", 
+  "oldfieldname": "rate", 
+  "fieldname": "rate", 
+  "fieldtype": "Currency", 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Amount", 
+  "oldfieldname": "amount", 
+  "fieldname": "amount", 
+  "fieldtype": "Currency", 
+  "permlevel": 1
+ }, 
+ {
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Conversion Factor", 
+  "oldfieldname": "conversion_factor", 
+  "fieldname": "conversion_factor", 
+  "fieldtype": "Currency", 
+  "hidden": 1, 
+  "permlevel": 1
+ }, 
+ {
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Stock Uom", 
+  "oldfieldname": "stock_uom", 
+  "fieldname": "stock_uom", 
+  "fieldtype": "Data", 
+  "permlevel": 1
+ }
 ]
\ No newline at end of file
diff --git a/buying/doctype/purchase_receipt_item_supplied/purchase_receipt_item_supplied.txt b/buying/doctype/purchase_receipt_item_supplied/purchase_receipt_item_supplied.txt
index 602bb25..5b5729c 100644
--- a/buying/doctype/purchase_receipt_item_supplied/purchase_receipt_item_supplied.txt
+++ b/buying/doctype/purchase_receipt_item_supplied/purchase_receipt_item_supplied.txt
@@ -1,179 +1,146 @@
-# DocType, Purchase Receipt Item Supplied
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:35:50',
-		'docstatus': 0,
-		'modified': '2012-03-27 14:35:50',
-		'modified_by': u'Administrator',
-		'owner': u'wasim@webnotestech.com'
-	},
-
-	# These values are common for all DocType
-	{
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'hide_toolbar': 0,
-		'istable': 1,
-		'module': u'Buying',
-		'name': '__common__',
-		'section_style': u'Simple',
-		'server_code_error': u' ',
-		'show_in_menu': 0,
-		'version': 17
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'Purchase Receipt Item Supplied',
-		'parentfield': u'fields',
-		'parenttype': u'DocType'
-	},
-
-	# DocType, Purchase Receipt Item Supplied
-	{
-		'doctype': 'DocType',
-		'name': u'Purchase Receipt Item Supplied'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'reference_name',
-		'fieldtype': u'Data',
-		'hidden': 0,
-		'in_filter': 0,
-		'label': u'Reference Name',
-		'oldfieldname': u'reference_name',
-		'oldfieldtype': u'Data',
-		'permlevel': 1,
-		'search_index': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'bom_detail_no',
-		'fieldtype': u'Data',
-		'label': u'BOM Detail No',
-		'oldfieldname': u'bom_detail_no',
-		'oldfieldtype': u'Data',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'main_item_code',
-		'fieldtype': u'Data',
-		'label': u'Item Code',
-		'oldfieldname': u'main_item_code',
-		'oldfieldtype': u'Data',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'rm_item_code',
-		'fieldtype': u'Data',
-		'label': u'Raw Material Item Code',
-		'oldfieldname': u'rm_item_code',
-		'oldfieldtype': u'Data',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'description',
-		'fieldtype': u'Data',
-		'label': u'Description',
-		'oldfieldname': u'description',
-		'oldfieldtype': u'Data',
-		'permlevel': 1,
-		'width': u'300px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'required_qty',
-		'fieldtype': u'Currency',
-		'label': u'Required Qty',
-		'oldfieldname': u'required_qty',
-		'oldfieldtype': u'Currency',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'consumed_qty',
-		'fieldtype': u'Currency',
-		'label': u'Consumed Qty',
-		'oldfieldname': u'consumed_qty',
-		'oldfieldtype': u'Currency',
-		'permlevel': 0,
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'rate',
-		'fieldtype': u'Currency',
-		'label': u'Rate',
-		'oldfieldname': u'rate',
-		'oldfieldtype': u'Currency',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'conversion_factor',
-		'fieldtype': u'Currency',
-		'hidden': 1,
-		'label': u'Conversion Factor',
-		'oldfieldname': u'conversion_factor',
-		'oldfieldtype': u'Currency',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'amount',
-		'fieldtype': u'Currency',
-		'label': u'Amount',
-		'oldfieldname': u'amount',
-		'oldfieldtype': u'Currency',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'stock_uom',
-		'fieldtype': u'Data',
-		'label': u'Stock Uom',
-		'oldfieldname': u'stock_uom',
-		'oldfieldtype': u'Data',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'current_stock',
-		'fieldtype': u'Currency',
-		'label': u'Current Stock',
-		'oldfieldname': u'current_stock',
-		'oldfieldtype': u'Currency',
-		'permlevel': 1
-	}
+ {
+  "owner": "wasim@webnotestech.com", 
+  "docstatus": 0, 
+  "creation": "2012-03-27 14:35:50", 
+  "modified_by": "Administrator", 
+  "modified": "2012-03-27 14:35:50"
+ }, 
+ {
+  "section_style": "Simple", 
+  "istable": 1, 
+  "module": "Buying", 
+  "server_code_error": " ", 
+  "doctype": "DocType", 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "show_in_menu": 0, 
+  "version": 17, 
+  "hide_toolbar": 0
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Purchase Receipt Item Supplied", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "Purchase Receipt Item Supplied", 
+  "doctype": "DocType"
+ }, 
+ {
+  "search_index": 0, 
+  "doctype": "DocField", 
+  "label": "Reference Name", 
+  "oldfieldname": "reference_name", 
+  "fieldname": "reference_name", 
+  "fieldtype": "Data", 
+  "oldfieldtype": "Data", 
+  "hidden": 0, 
+  "permlevel": 1, 
+  "in_filter": 0
+ }, 
+ {
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "BOM Detail No", 
+  "oldfieldname": "bom_detail_no", 
+  "fieldname": "bom_detail_no", 
+  "fieldtype": "Data", 
+  "permlevel": 1
+ }, 
+ {
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Item Code", 
+  "oldfieldname": "main_item_code", 
+  "fieldname": "main_item_code", 
+  "fieldtype": "Data", 
+  "permlevel": 1
+ }, 
+ {
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Raw Material Item Code", 
+  "oldfieldname": "rm_item_code", 
+  "fieldname": "rm_item_code", 
+  "fieldtype": "Data", 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Description", 
+  "oldfieldname": "description", 
+  "width": "300px", 
+  "fieldname": "description", 
+  "fieldtype": "Data", 
+  "permlevel": 1
+ }, 
+ {
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Required Qty", 
+  "oldfieldname": "required_qty", 
+  "fieldname": "required_qty", 
+  "fieldtype": "Currency", 
+  "permlevel": 1
+ }, 
+ {
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Consumed Qty", 
+  "oldfieldname": "consumed_qty", 
+  "fieldname": "consumed_qty", 
+  "fieldtype": "Currency", 
+  "reqd": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Rate", 
+  "oldfieldname": "rate", 
+  "fieldname": "rate", 
+  "fieldtype": "Currency", 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Conversion Factor", 
+  "oldfieldname": "conversion_factor", 
+  "fieldname": "conversion_factor", 
+  "fieldtype": "Currency", 
+  "hidden": 1, 
+  "permlevel": 1
+ }, 
+ {
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Amount", 
+  "oldfieldname": "amount", 
+  "fieldname": "amount", 
+  "fieldtype": "Currency", 
+  "permlevel": 1
+ }, 
+ {
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Stock Uom", 
+  "oldfieldname": "stock_uom", 
+  "fieldname": "stock_uom", 
+  "fieldtype": "Data", 
+  "permlevel": 1
+ }, 
+ {
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Current Stock", 
+  "oldfieldname": "current_stock", 
+  "fieldname": "current_stock", 
+  "fieldtype": "Currency", 
+  "permlevel": 1
+ }
 ]
\ No newline at end of file
diff --git a/buying/doctype/purchase_request_item/purchase_request_item.txt b/buying/doctype/purchase_request_item/purchase_request_item.txt
index 3107529..b8f1cf6 100644
--- a/buying/doctype/purchase_request_item/purchase_request_item.txt
+++ b/buying/doctype/purchase_request_item/purchase_request_item.txt
@@ -1,261 +1,222 @@
-# DocType, Purchase Request Item
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-04-11 13:17:40',
-		'docstatus': 0,
-		'modified': '2012-04-12 14:52:49',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'autoname': u'IDTD/.#####',
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'istable': 1,
-		'module': u'Buying',
-		'name': '__common__',
-		'section_style': u'Tray',
-		'server_code_error': u' ',
-		'show_in_menu': 0,
-		'version': 37
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'Purchase Request Item',
-		'parentfield': u'fields',
-		'parenttype': u'DocType'
-	},
-
-	# DocType, Purchase Request Item
-	{
-		'doctype': 'DocType',
-		'name': u'Purchase Request Item'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'schedule_date',
-		'fieldtype': u'Date',
-		'label': u'Required Date',
-		'no_copy': 1,
-		'oldfieldname': u'schedule_date',
-		'oldfieldtype': u'Date',
-		'permlevel': 0,
-		'print_hide': 0,
-		'reqd': 1,
-		'width': u'100px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'item_code',
-		'fieldtype': u'Link',
-		'in_filter': 1,
-		'label': u'Item Code',
-		'oldfieldname': u'item_code',
-		'oldfieldtype': u'Link',
-		'options': u'Item',
-		'permlevel': 0,
-		'reqd': 1,
-		'search_index': 1,
-		'trigger': u'Client',
-		'width': u'100px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'description',
-		'fieldtype': u'Text',
-		'label': u'Description',
-		'oldfieldname': u'description',
-		'oldfieldtype': u'Text',
-		'permlevel': 0,
-		'reqd': 1,
-		'width': u'250px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'warehouse',
-		'fieldtype': u'Link',
-		'label': u'Warehouse',
-		'oldfieldname': u'warehouse',
-		'oldfieldtype': u'Link',
-		'options': u'Warehouse',
-		'permlevel': 0,
-		'print_hide': 0,
-		'reqd': 0,
-		'trigger': u'Client',
-		'width': u'100px'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'default': u'0.00',
-		'doctype': u'DocField',
-		'fieldname': u'qty',
-		'fieldtype': u'Currency',
-		'label': u'Quantity',
-		'no_copy': 0,
-		'oldfieldname': u'qty',
-		'oldfieldtype': u'Currency',
-		'permlevel': 0,
-		'reqd': 1,
-		'trigger': u'Client',
-		'width': u'80px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'uom',
-		'fieldtype': u'Link',
-		'label': u'Stock UOM',
-		'no_copy': 0,
-		'oldfieldname': u'uom',
-		'oldfieldtype': u'Link',
-		'options': u'UOM',
-		'permlevel': 1,
-		'reqd': 1,
-		'width': u'70px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'lead_time_date',
-		'fieldtype': u'Date',
-		'label': u'Lead Time Date',
-		'no_copy': 1,
-		'oldfieldname': u'lead_time_date',
-		'oldfieldtype': u'Date',
-		'permlevel': 1,
-		'print_hide': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'item_name',
-		'fieldtype': u'Data',
-		'in_filter': 1,
-		'label': u'Item Name',
-		'oldfieldname': u'item_name',
-		'oldfieldtype': u'Data',
-		'permlevel': 0,
-		'reqd': 1,
-		'search_index': 1,
-		'width': u'100px'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'doctype': u'DocField',
-		'fieldname': u'item_group',
-		'fieldtype': u'Link',
-		'in_filter': 1,
-		'label': u'Item Group',
-		'no_copy': 0,
-		'oldfieldname': u'item_group',
-		'oldfieldtype': u'Link',
-		'options': u'Item Group',
-		'permlevel': 1,
-		'print_hide': 1,
-		'reqd': 0,
-		'search_index': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'brand',
-		'fieldtype': u'Link',
-		'label': u'Brand',
-		'oldfieldname': u'brand',
-		'oldfieldtype': u'Link',
-		'options': u'Brand',
-		'permlevel': 1,
-		'print_hide': 1,
-		'width': u'100px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'min_order_qty',
-		'fieldtype': u'Currency',
-		'label': u'Min Order Qty',
-		'no_copy': 1,
-		'oldfieldname': u'min_order_qty',
-		'oldfieldtype': u'Currency',
-		'permlevel': 1,
-		'print_hide': 1,
-		'reqd': 0,
-		'width': u'70px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'projected_qty',
-		'fieldtype': u'Currency',
-		'label': u'Projected Qty',
-		'no_copy': 1,
-		'oldfieldname': u'projected_qty',
-		'oldfieldtype': u'Currency',
-		'permlevel': 1,
-		'print_hide': 1,
-		'width': u'70px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'ordered_qty',
-		'fieldtype': u'Currency',
-		'label': u'Ordered Qty',
-		'no_copy': 1,
-		'oldfieldname': u'ordered_qty',
-		'oldfieldtype': u'Currency',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'sales_order_no',
-		'fieldtype': u'Link',
-		'label': u'Sales Order No',
-		'no_copy': 1,
-		'options': u'Sales Order',
-		'permlevel': 1,
-		'print_hide': 1
-	},
-
-	# DocField
-	{
-		'allow_on_submit': 1,
-		'doctype': u'DocField',
-		'fieldname': u'page_break',
-		'fieldtype': u'Check',
-		'label': u'Page Break',
-		'no_copy': 1,
-		'oldfieldname': u'page_break',
-		'oldfieldtype': u'Check',
-		'permlevel': 0,
-		'print_hide': 1
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-04-11 13:17:40", 
+  "modified_by": "Administrator", 
+  "modified": "2012-04-12 14:52:49"
+ }, 
+ {
+  "section_style": "Tray", 
+  "istable": 1, 
+  "module": "Buying", 
+  "server_code_error": " ", 
+  "doctype": "DocType", 
+  "autoname": "IDTD/.#####", 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "show_in_menu": 0, 
+  "version": 37
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Purchase Request Item", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "Purchase Request Item", 
+  "doctype": "DocType"
+ }, 
+ {
+  "print_hide": 0, 
+  "no_copy": 1, 
+  "oldfieldtype": "Date", 
+  "doctype": "DocField", 
+  "label": "Required Date", 
+  "oldfieldname": "schedule_date", 
+  "width": "100px", 
+  "fieldname": "schedule_date", 
+  "fieldtype": "Date", 
+  "reqd": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "permlevel": 0, 
+  "oldfieldtype": "Link", 
+  "doctype": "DocField", 
+  "label": "Item Code", 
+  "oldfieldname": "item_code", 
+  "width": "100px", 
+  "trigger": "Client", 
+  "fieldname": "item_code", 
+  "fieldtype": "Link", 
+  "search_index": 1, 
+  "reqd": 1, 
+  "options": "Item", 
+  "in_filter": 1
+ }, 
+ {
+  "oldfieldtype": "Text", 
+  "doctype": "DocField", 
+  "label": "Description", 
+  "oldfieldname": "description", 
+  "width": "250px", 
+  "fieldname": "description", 
+  "fieldtype": "Text", 
+  "reqd": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "print_hide": 0, 
+  "oldfieldtype": "Link", 
+  "doctype": "DocField", 
+  "label": "Warehouse", 
+  "oldfieldname": "warehouse", 
+  "width": "100px", 
+  "trigger": "Client", 
+  "fieldname": "warehouse", 
+  "fieldtype": "Link", 
+  "reqd": 0, 
+  "options": "Warehouse", 
+  "permlevel": 0
+ }, 
+ {
+  "width": "80px", 
+  "default": "0.00", 
+  "oldfieldtype": "Currency", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Quantity", 
+  "oldfieldname": "qty", 
+  "no_copy": 0, 
+  "trigger": "Client", 
+  "fieldname": "qty", 
+  "fieldtype": "Currency", 
+  "reqd": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "no_copy": 0, 
+  "oldfieldtype": "Link", 
+  "doctype": "DocField", 
+  "label": "Stock UOM", 
+  "oldfieldname": "uom", 
+  "width": "70px", 
+  "options": "UOM", 
+  "fieldname": "uom", 
+  "fieldtype": "Link", 
+  "reqd": 1, 
+  "permlevel": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "no_copy": 1, 
+  "oldfieldtype": "Date", 
+  "doctype": "DocField", 
+  "label": "Lead Time Date", 
+  "oldfieldname": "lead_time_date", 
+  "fieldname": "lead_time_date", 
+  "fieldtype": "Date", 
+  "permlevel": 1
+ }, 
+ {
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Item Name", 
+  "oldfieldname": "item_name", 
+  "width": "100px", 
+  "fieldname": "item_name", 
+  "fieldtype": "Data", 
+  "search_index": 1, 
+  "reqd": 1, 
+  "permlevel": 0, 
+  "in_filter": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "no_copy": 0, 
+  "oldfieldtype": "Link", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Item Group", 
+  "oldfieldname": "item_group", 
+  "permlevel": 1, 
+  "fieldname": "item_group", 
+  "fieldtype": "Link", 
+  "search_index": 1, 
+  "reqd": 0, 
+  "options": "Item Group", 
+  "in_filter": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "permlevel": 1, 
+  "oldfieldtype": "Link", 
+  "doctype": "DocField", 
+  "label": "Brand", 
+  "oldfieldname": "brand", 
+  "width": "100px", 
+  "fieldname": "brand", 
+  "fieldtype": "Link", 
+  "options": "Brand"
+ }, 
+ {
+  "print_hide": 1, 
+  "no_copy": 1, 
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Min Order Qty", 
+  "oldfieldname": "min_order_qty", 
+  "width": "70px", 
+  "fieldname": "min_order_qty", 
+  "fieldtype": "Currency", 
+  "reqd": 0, 
+  "permlevel": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "no_copy": 1, 
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Projected Qty", 
+  "oldfieldname": "projected_qty", 
+  "width": "70px", 
+  "fieldname": "projected_qty", 
+  "fieldtype": "Currency", 
+  "permlevel": 1
+ }, 
+ {
+  "no_copy": 1, 
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Ordered Qty", 
+  "oldfieldname": "ordered_qty", 
+  "fieldname": "ordered_qty", 
+  "fieldtype": "Currency", 
+  "permlevel": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "no_copy": 1, 
+  "doctype": "DocField", 
+  "label": "Sales Order No", 
+  "permlevel": 1, 
+  "fieldname": "sales_order_no", 
+  "fieldtype": "Link", 
+  "options": "Sales Order"
+ }, 
+ {
+  "print_hide": 1, 
+  "no_copy": 1, 
+  "oldfieldtype": "Check", 
+  "allow_on_submit": 1, 
+  "doctype": "DocField", 
+  "label": "Page Break", 
+  "oldfieldname": "page_break", 
+  "fieldname": "page_break", 
+  "fieldtype": "Check", 
+  "permlevel": 0
+ }
 ]
\ No newline at end of file
diff --git a/buying/doctype/quality_inspection/quality_inspection.txt b/buying/doctype/quality_inspection/quality_inspection.txt
index 8d4cd0a..64bc087 100644
--- a/buying/doctype/quality_inspection/quality_inspection.txt
+++ b/buying/doctype/quality_inspection/quality_inspection.txt
@@ -1,345 +1,288 @@
-# DocType, Quality Inspection
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:35:51',
-		'docstatus': 0,
-		'modified': '2012-03-27 14:45:50',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'_last_update': u'1317365120',
-		'autoname': u'QAI/.######',
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'is_submittable': 1,
-		'module': u'Buying',
-		'name': '__common__',
-		'print_outline': u'Yes',
-		'search_fields': u'item_code, report_date, purchase_receipt_no, delivery_note_no',
-		'section_style': u'Simple',
-		'server_code_error': u' ',
-		'show_in_menu': 0,
-		'version': 38
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'Quality Inspection',
-		'parentfield': u'fields',
-		'parenttype': u'DocType'
-	},
-
-	# These values are common for all DocPerm
-	{
-		'doctype': u'DocPerm',
-		'name': '__common__',
-		'parent': u'Quality Inspection',
-		'parentfield': u'permissions',
-		'parenttype': u'DocType',
-		'read': 1,
-		'role': u'Quality Manager'
-	},
-
-	# DocType, Quality Inspection
-	{
-		'doctype': 'DocType',
-		'name': u'Quality Inspection'
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm',
-		'permlevel': 1
-	},
-
-	# DocPerm
-	{
-		'amend': 1,
-		'cancel': 1,
-		'create': 1,
-		'doctype': u'DocPerm',
-		'permlevel': 0,
-		'submit': 1,
-		'write': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'qa_inspection',
-		'fieldtype': u'Section Break',
-		'label': u'QA Inspection',
-		'no_copy': 0,
-		'oldfieldtype': u'Section Break',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'column_break0',
-		'fieldtype': u'Column Break',
-		'oldfieldtype': u'Column Break',
-		'permlevel': 0,
-		'width': u'50%'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'naming_series',
-		'fieldtype': u'Select',
-		'label': u'Naming Series',
-		'no_copy': 1,
-		'options': u'\nQAI/11-12/',
-		'permlevel': 0,
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'doctype': u'DocField',
-		'fieldname': u'inspection_type',
-		'fieldtype': u'Select',
-		'in_filter': 1,
-		'label': u'Inspection Type',
-		'oldfieldname': u'inspection_type',
-		'oldfieldtype': u'Select',
-		'options': u'\nIncoming\nOutgoing\nIn Process',
-		'permlevel': 0,
-		'reqd': 1,
-		'trigger': u'Client'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'report_date',
-		'fieldtype': u'Date',
-		'in_filter': 1,
-		'label': u'Report Date',
-		'oldfieldname': u'report_date',
-		'oldfieldtype': u'Date',
-		'permlevel': 0,
-		'reqd': 1,
-		'search_index': 1
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'doctype': u'DocField',
-		'fieldname': u'item_code',
-		'fieldtype': u'Link',
-		'hidden': 0,
-		'in_filter': 1,
-		'label': u'Item Code',
-		'oldfieldname': u'item_code',
-		'oldfieldtype': u'Link',
-		'options': u'Item',
-		'permlevel': 0,
-		'reqd': 1,
-		'search_index': 1,
-		'trigger': u'Client'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'sample_size',
-		'fieldtype': u'Currency',
-		'in_filter': 0,
-		'label': u'Sample Size',
-		'oldfieldname': u'sample_size',
-		'oldfieldtype': u'Currency',
-		'permlevel': 0,
-		'reqd': 1,
-		'search_index': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'description',
-		'fieldtype': u'Small Text',
-		'in_filter': 1,
-		'label': u'Description',
-		'oldfieldname': u'description',
-		'oldfieldtype': u'Small Text',
-		'permlevel': 0,
-		'search_index': 0,
-		'width': u'300px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'column_break1',
-		'fieldtype': u'Column Break',
-		'oldfieldtype': u'Column Break',
-		'permlevel': 0,
-		'width': u'50%'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'item_serial_no',
-		'fieldtype': u'Link',
-		'hidden': 0,
-		'label': u'Item Serial No',
-		'oldfieldname': u'item_serial_no',
-		'oldfieldtype': u'Link',
-		'options': u'Serial No',
-		'permlevel': 0,
-		'print_hide': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'batch_no',
-		'fieldtype': u'Link',
-		'label': u'Batch No',
-		'oldfieldname': u'batch_no',
-		'oldfieldtype': u'Link',
-		'options': u'Batch',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'doctype': u'DocField',
-		'fieldname': u'purchase_receipt_no',
-		'fieldtype': u'Link',
-		'hidden': 0,
-		'in_filter': 1,
-		'label': u'Purchase Receipt No',
-		'oldfieldname': u'purchase_receipt_no',
-		'oldfieldtype': u'Link',
-		'options': u'Purchase Receipt',
-		'permlevel': 0,
-		'search_index': 1,
-		'trigger': u'Client'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'doctype': u'DocField',
-		'fieldname': u'delivery_note_no',
-		'fieldtype': u'Link',
-		'hidden': 0,
-		'in_filter': 1,
-		'label': u'Delivery Note No',
-		'oldfieldname': u'delivery_note_no',
-		'oldfieldtype': u'Link',
-		'options': u'Delivery Note',
-		'permlevel': 0,
-		'print_hide': 0,
-		'search_index': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'inspected_by',
-		'fieldtype': u'Data',
-		'label': u'Inspected By',
-		'oldfieldname': u'inspected_by',
-		'oldfieldtype': u'Data',
-		'permlevel': 0,
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'remarks',
-		'fieldtype': u'Text',
-		'label': u'Remarks',
-		'no_copy': 1,
-		'oldfieldname': u'remarks',
-		'oldfieldtype': u'Text',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'verified_by',
-		'fieldtype': u'Data',
-		'label': u'Verified By',
-		'oldfieldname': u'verified_by',
-		'oldfieldtype': u'Data',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'amended_from',
-		'fieldtype': u'Data',
-		'label': u'Amended From',
-		'no_copy': 1,
-		'oldfieldname': u'amended_from',
-		'oldfieldtype': u'Data',
-		'permlevel': 1,
-		'print_hide': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'amendment_date',
-		'fieldtype': u'Date',
-		'label': u'Amendment Date',
-		'no_copy': 1,
-		'oldfieldname': u'amendment_date',
-		'oldfieldtype': u'Date',
-		'permlevel': 1,
-		'print_hide': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'specification_details',
-		'fieldtype': u'Section Break',
-		'label': u'Specification Details',
-		'oldfieldtype': u'Section Break',
-		'options': u'Simple',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'get_specification_details',
-		'fieldtype': u'Button',
-		'label': u'Get Specification Details',
-		'options': u'get_item_specification_details',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'qa_specification_details',
-		'fieldtype': u'Table',
-		'label': u'Quality Inspection Readings',
-		'oldfieldname': u'qa_specification_details',
-		'oldfieldtype': u'Table',
-		'options': u'Quality Inspection Reading',
-		'permlevel': 0
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-03-27 14:35:51", 
+  "modified_by": "Administrator", 
+  "modified": "2012-03-27 14:45:50"
+ }, 
+ {
+  "section_style": "Simple", 
+  "is_submittable": 1, 
+  "search_fields": "item_code, report_date, purchase_receipt_no, delivery_note_no", 
+  "module": "Buying", 
+  "_last_update": "1317365120", 
+  "server_code_error": " ", 
+  "print_outline": "Yes", 
+  "autoname": "QAI/.######", 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "doctype": "DocType", 
+  "show_in_menu": 0, 
+  "version": 38
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Quality Inspection", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Quality Inspection", 
+  "read": 1, 
+  "doctype": "DocPerm", 
+  "parenttype": "DocType", 
+  "role": "Quality Manager", 
+  "parentfield": "permissions"
+ }, 
+ {
+  "name": "Quality Inspection", 
+  "doctype": "DocType"
+ }, 
+ {
+  "permlevel": 1, 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "amend": 1, 
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "submit": 1, 
+  "write": 1, 
+  "cancel": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "no_copy": 0, 
+  "oldfieldtype": "Section Break", 
+  "doctype": "DocField", 
+  "label": "QA Inspection", 
+  "fieldname": "qa_inspection", 
+  "fieldtype": "Section Break", 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Column Break", 
+  "doctype": "DocField", 
+  "width": "50%", 
+  "fieldname": "column_break0", 
+  "fieldtype": "Column Break", 
+  "permlevel": 0
+ }, 
+ {
+  "no_copy": 1, 
+  "doctype": "DocField", 
+  "label": "Naming Series", 
+  "permlevel": 0, 
+  "fieldname": "naming_series", 
+  "fieldtype": "Select", 
+  "reqd": 1, 
+  "options": "\nQAI/11-12/"
+ }, 
+ {
+  "oldfieldtype": "Select", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Inspection Type", 
+  "oldfieldname": "inspection_type", 
+  "trigger": "Client", 
+  "fieldname": "inspection_type", 
+  "fieldtype": "Select", 
+  "reqd": 1, 
+  "options": "\nIncoming\nOutgoing\nIn Process", 
+  "permlevel": 0, 
+  "in_filter": 1
+ }, 
+ {
+  "search_index": 1, 
+  "doctype": "DocField", 
+  "label": "Report Date", 
+  "oldfieldname": "report_date", 
+  "fieldname": "report_date", 
+  "fieldtype": "Date", 
+  "oldfieldtype": "Date", 
+  "reqd": 1, 
+  "permlevel": 0, 
+  "in_filter": 1
+ }, 
+ {
+  "oldfieldtype": "Link", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Item Code", 
+  "oldfieldname": "item_code", 
+  "permlevel": 0, 
+  "trigger": "Client", 
+  "fieldname": "item_code", 
+  "fieldtype": "Link", 
+  "search_index": 1, 
+  "reqd": 1, 
+  "hidden": 0, 
+  "options": "Item", 
+  "in_filter": 1
+ }, 
+ {
+  "search_index": 0, 
+  "doctype": "DocField", 
+  "label": "Sample Size", 
+  "oldfieldname": "sample_size", 
+  "fieldname": "sample_size", 
+  "fieldtype": "Currency", 
+  "oldfieldtype": "Currency", 
+  "reqd": 1, 
+  "permlevel": 0, 
+  "in_filter": 0
+ }, 
+ {
+  "search_index": 0, 
+  "doctype": "DocField", 
+  "label": "Description", 
+  "oldfieldname": "description", 
+  "width": "300px", 
+  "fieldname": "description", 
+  "fieldtype": "Small Text", 
+  "oldfieldtype": "Small Text", 
+  "permlevel": 0, 
+  "in_filter": 1
+ }, 
+ {
+  "oldfieldtype": "Column Break", 
+  "doctype": "DocField", 
+  "width": "50%", 
+  "fieldname": "column_break1", 
+  "fieldtype": "Column Break", 
+  "permlevel": 0
+ }, 
+ {
+  "print_hide": 0, 
+  "oldfieldtype": "Link", 
+  "doctype": "DocField", 
+  "label": "Item Serial No", 
+  "oldfieldname": "item_serial_no", 
+  "permlevel": 0, 
+  "fieldname": "item_serial_no", 
+  "fieldtype": "Link", 
+  "hidden": 0, 
+  "options": "Serial No"
+ }, 
+ {
+  "oldfieldtype": "Link", 
+  "doctype": "DocField", 
+  "label": "Batch No", 
+  "oldfieldname": "batch_no", 
+  "permlevel": 0, 
+  "fieldname": "batch_no", 
+  "fieldtype": "Link", 
+  "options": "Batch"
+ }, 
+ {
+  "oldfieldtype": "Link", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Purchase Receipt No", 
+  "oldfieldname": "purchase_receipt_no", 
+  "permlevel": 0, 
+  "trigger": "Client", 
+  "fieldname": "purchase_receipt_no", 
+  "fieldtype": "Link", 
+  "search_index": 1, 
+  "hidden": 0, 
+  "options": "Purchase Receipt", 
+  "in_filter": 1
+ }, 
+ {
+  "print_hide": 0, 
+  "oldfieldtype": "Link", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Delivery Note No", 
+  "oldfieldname": "delivery_note_no", 
+  "permlevel": 0, 
+  "fieldname": "delivery_note_no", 
+  "fieldtype": "Link", 
+  "search_index": 1, 
+  "hidden": 0, 
+  "options": "Delivery Note", 
+  "in_filter": 1
+ }, 
+ {
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Inspected By", 
+  "oldfieldname": "inspected_by", 
+  "fieldname": "inspected_by", 
+  "fieldtype": "Data", 
+  "reqd": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "no_copy": 1, 
+  "oldfieldtype": "Text", 
+  "doctype": "DocField", 
+  "label": "Remarks", 
+  "oldfieldname": "remarks", 
+  "fieldname": "remarks", 
+  "fieldtype": "Text", 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Verified By", 
+  "oldfieldname": "verified_by", 
+  "fieldname": "verified_by", 
+  "fieldtype": "Data", 
+  "permlevel": 0
+ }, 
+ {
+  "print_hide": 1, 
+  "no_copy": 1, 
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Amended From", 
+  "oldfieldname": "amended_from", 
+  "fieldname": "amended_from", 
+  "fieldtype": "Data", 
+  "permlevel": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "no_copy": 1, 
+  "oldfieldtype": "Date", 
+  "doctype": "DocField", 
+  "label": "Amendment Date", 
+  "oldfieldname": "amendment_date", 
+  "fieldname": "amendment_date", 
+  "fieldtype": "Date", 
+  "permlevel": 1
+ }, 
+ {
+  "oldfieldtype": "Section Break", 
+  "doctype": "DocField", 
+  "label": "Specification Details", 
+  "permlevel": 0, 
+  "fieldname": "specification_details", 
+  "fieldtype": "Section Break", 
+  "options": "Simple"
+ }, 
+ {
+  "doctype": "DocField", 
+  "options": "get_item_specification_details", 
+  "fieldname": "get_specification_details", 
+  "fieldtype": "Button", 
+  "label": "Get Specification Details", 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Table", 
+  "doctype": "DocField", 
+  "label": "Quality Inspection Readings", 
+  "oldfieldname": "qa_specification_details", 
+  "permlevel": 0, 
+  "fieldname": "qa_specification_details", 
+  "fieldtype": "Table", 
+  "options": "Quality Inspection Reading"
+ }
 ]
\ No newline at end of file
diff --git a/buying/doctype/quality_inspection_reading/quality_inspection_reading.txt b/buying/doctype/quality_inspection_reading/quality_inspection_reading.txt
index b356dd9..4f5480c 100644
--- a/buying/doctype/quality_inspection_reading/quality_inspection_reading.txt
+++ b/buying/doctype/quality_inspection_reading/quality_inspection_reading.txt
@@ -1,175 +1,140 @@
-# DocType, Quality Inspection Reading
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:35:52',
-		'docstatus': 0,
-		'modified': '2012-03-27 14:35:52',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'autoname': u'QASD/.#####',
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'istable': 1,
-		'module': u'Buying',
-		'name': '__common__',
-		'section_style': u'Tray',
-		'server_code_error': u' ',
-		'show_in_menu': 0,
-		'version': 2
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'Quality Inspection Reading',
-		'parentfield': u'fields',
-		'parenttype': u'DocType',
-		'permlevel': 0
-	},
-
-	# DocType, Quality Inspection Reading
-	{
-		'doctype': 'DocType',
-		'name': u'Quality Inspection Reading'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'specification',
-		'fieldtype': u'Data',
-		'label': u'Parameter',
-		'oldfieldname': u'specification',
-		'oldfieldtype': u'Data',
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'value',
-		'fieldtype': u'Data',
-		'label': u'Acceptance Criteria',
-		'oldfieldname': u'value',
-		'oldfieldtype': u'Data'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'reading_1',
-		'fieldtype': u'Data',
-		'label': u'Reading 1',
-		'oldfieldname': u'reading_1',
-		'oldfieldtype': u'Data'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'reading_2',
-		'fieldtype': u'Data',
-		'label': u'Reading 2',
-		'oldfieldname': u'reading_2',
-		'oldfieldtype': u'Data'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'reading_3',
-		'fieldtype': u'Data',
-		'label': u'Reading 3',
-		'oldfieldname': u'reading_3',
-		'oldfieldtype': u'Data'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'reading_4',
-		'fieldtype': u'Data',
-		'label': u'Reading 4',
-		'oldfieldname': u'reading_4',
-		'oldfieldtype': u'Data'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'reading_5',
-		'fieldtype': u'Data',
-		'label': u'Reading 5',
-		'oldfieldname': u'reading_5',
-		'oldfieldtype': u'Data'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'reading_6',
-		'fieldtype': u'Data',
-		'label': u'Reading 6',
-		'oldfieldname': u'reading_6',
-		'oldfieldtype': u'Data'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'reading_7',
-		'fieldtype': u'Data',
-		'label': u'Reading 7',
-		'oldfieldname': u'reading_7',
-		'oldfieldtype': u'Data'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'reading_8',
-		'fieldtype': u'Data',
-		'label': u'Reading 8',
-		'oldfieldname': u'reading_8',
-		'oldfieldtype': u'Data'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'reading_9',
-		'fieldtype': u'Data',
-		'label': u'Reading 9',
-		'oldfieldname': u'reading_9',
-		'oldfieldtype': u'Data'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'reading_10',
-		'fieldtype': u'Data',
-		'label': u'Reading 10',
-		'oldfieldname': u'reading_10',
-		'oldfieldtype': u'Data'
-	},
-
-	# DocField
-	{
-		'default': u'Accepted',
-		'doctype': u'DocField',
-		'fieldname': u'status',
-		'fieldtype': u'Select',
-		'label': u'Status',
-		'oldfieldname': u'status',
-		'oldfieldtype': u'Select',
-		'options': u'Accepted\nRejected'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-03-27 14:35:52", 
+  "modified_by": "Administrator", 
+  "modified": "2012-03-27 14:35:52"
+ }, 
+ {
+  "section_style": "Tray", 
+  "istable": 1, 
+  "module": "Buying", 
+  "server_code_error": " ", 
+  "doctype": "DocType", 
+  "autoname": "QASD/.#####", 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "show_in_menu": 0, 
+  "version": 2
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Quality Inspection Reading", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "permlevel": 0, 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "Quality Inspection Reading", 
+  "doctype": "DocType"
+ }, 
+ {
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Parameter", 
+  "oldfieldname": "specification", 
+  "fieldname": "specification", 
+  "fieldtype": "Data", 
+  "reqd": 1
+ }, 
+ {
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Acceptance Criteria", 
+  "oldfieldname": "value", 
+  "fieldname": "value", 
+  "fieldtype": "Data"
+ }, 
+ {
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Reading 1", 
+  "oldfieldname": "reading_1", 
+  "fieldname": "reading_1", 
+  "fieldtype": "Data"
+ }, 
+ {
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Reading 2", 
+  "oldfieldname": "reading_2", 
+  "fieldname": "reading_2", 
+  "fieldtype": "Data"
+ }, 
+ {
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Reading 3", 
+  "oldfieldname": "reading_3", 
+  "fieldname": "reading_3", 
+  "fieldtype": "Data"
+ }, 
+ {
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Reading 4", 
+  "oldfieldname": "reading_4", 
+  "fieldname": "reading_4", 
+  "fieldtype": "Data"
+ }, 
+ {
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Reading 5", 
+  "oldfieldname": "reading_5", 
+  "fieldname": "reading_5", 
+  "fieldtype": "Data"
+ }, 
+ {
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Reading 6", 
+  "oldfieldname": "reading_6", 
+  "fieldname": "reading_6", 
+  "fieldtype": "Data"
+ }, 
+ {
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Reading 7", 
+  "oldfieldname": "reading_7", 
+  "fieldname": "reading_7", 
+  "fieldtype": "Data"
+ }, 
+ {
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Reading 8", 
+  "oldfieldname": "reading_8", 
+  "fieldname": "reading_8", 
+  "fieldtype": "Data"
+ }, 
+ {
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Reading 9", 
+  "oldfieldname": "reading_9", 
+  "fieldname": "reading_9", 
+  "fieldtype": "Data"
+ }, 
+ {
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Reading 10", 
+  "oldfieldname": "reading_10", 
+  "fieldname": "reading_10", 
+  "fieldtype": "Data"
+ }, 
+ {
+  "default": "Accepted", 
+  "oldfieldtype": "Select", 
+  "doctype": "DocField", 
+  "label": "Status", 
+  "oldfieldname": "status", 
+  "fieldname": "status", 
+  "fieldtype": "Select", 
+  "options": "Accepted\nRejected"
+ }
 ]
\ No newline at end of file
diff --git a/buying/doctype/supplier_quotation/supplier_quotation.txt b/buying/doctype/supplier_quotation/supplier_quotation.txt
index 3b27049..db2abfa 100644
--- a/buying/doctype/supplier_quotation/supplier_quotation.txt
+++ b/buying/doctype/supplier_quotation/supplier_quotation.txt
@@ -4,7 +4,7 @@
   "docstatus": 0, 
   "creation": "2012-08-06 11:15:46", 
   "modified_by": "Administrator", 
-  "modified": "2012-08-02 18:04:35"
+  "modified": "2012-12-10 18:30:00"
  }, 
  {
   "is_submittable": 1, 
@@ -697,7 +697,7 @@
   "doctype": "DocPerm", 
   "submit": 1, 
   "write": 1, 
-  "role": "Production Manager", 
+  "role": "Manufacturing Manager", 
   "cancel": 1, 
   "permlevel": 0
  }, 
diff --git a/buying/doctype/supplier_quotation_item/supplier_quotation_item.txt b/buying/doctype/supplier_quotation_item/supplier_quotation_item.txt
index df74542..97cddf7 100644
--- a/buying/doctype/supplier_quotation_item/supplier_quotation_item.txt
+++ b/buying/doctype/supplier_quotation_item/supplier_quotation_item.txt
@@ -160,11 +160,11 @@
   "doctype": "DocField", 
   "label": "Warehouse", 
   "oldfieldname": "warehouse", 
-  "options": "Warehouse", 
   "fieldname": "warehouse", 
   "fieldtype": "Link", 
   "reqd": 0, 
   "hidden": 0, 
+  "options": "Warehouse", 
   "permlevel": 0
  }, 
  {
@@ -222,12 +222,12 @@
  {
   "print_hide": 1, 
   "oldfieldtype": "Date", 
+  "search_index": 0, 
   "doctype": "DocField", 
   "label": "Purchase Request Date", 
   "oldfieldname": "prevdoc_date", 
   "fieldname": "prevdoc_date", 
   "fieldtype": "Date", 
-  "search_index": 0, 
   "hidden": 1, 
   "permlevel": 1, 
   "in_filter": 1
@@ -265,11 +265,11 @@
   "label": "Item Group", 
   "oldfieldname": "item_group", 
   "permlevel": 1, 
+  "options": "Item Group", 
   "fieldname": "item_group", 
   "fieldtype": "Link", 
   "search_index": 0, 
   "hidden": 1, 
-  "options": "Item Group", 
   "in_filter": 1
  }, 
  {
diff --git a/buying/page/buying_home/buying_home.txt b/buying/page/buying_home/buying_home.txt
index d2d2acc..96a67f8 100644
--- a/buying/page/buying_home/buying_home.txt
+++ b/buying/page/buying_home/buying_home.txt
@@ -1,28 +1,21 @@
-# Page, buying-home
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-02-21 13:22:54',
-		'docstatus': 0,
-		'modified': '2012-02-21 13:22:54',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all Page
-	{
-		'doctype': 'Page',
-		'module': u'Buying',
-		'name': '__common__',
-		'page_name': u'buying-home',
-		'standard': u'Yes',
-		'title': u'Buying Home'
-	},
-
-	# Page, buying-home
-	{
-		'doctype': 'Page',
-		'name': u'buying-home'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-02-21 13:22:54", 
+  "modified_by": "Administrator", 
+  "modified": "2012-02-21 13:22:54"
+ }, 
+ {
+  "name": "__common__", 
+  "title": "Buying Home", 
+  "module": "Buying", 
+  "doctype": "Page", 
+  "page_name": "buying-home", 
+  "standard": "Yes"
+ }, 
+ {
+  "name": "buying-home", 
+  "doctype": "Page"
+ }
 ]
\ No newline at end of file
diff --git a/buying/page/purchase_analytics/purchase_analytics.txt b/buying/page/purchase_analytics/purchase_analytics.txt
index b0232ed..0368b8f 100644
--- a/buying/page/purchase_analytics/purchase_analytics.txt
+++ b/buying/page/purchase_analytics/purchase_analytics.txt
@@ -1,49 +1,36 @@
-# Page, purchase-analytics
 [
-
-	# These values are common in all dictionaries
-	{
-		u'creation': '2012-09-21 20:15:16',
-		u'docstatus': 0,
-		u'modified': '2012-10-04 17:24:17',
-		u'modified_by': u'Administrator',
-		u'owner': u'Administrator'
-	},
-
-	# These values are common for all Page
-	{
-		u'doctype': u'Page',
-		'module': u'Buying',
-		u'name': u'__common__',
-		'page_name': u'purchase-analytics',
-		'standard': u'Yes',
-		'title': u'Purchase Analytics'
-	},
-
-	# These values are common for all Page Role
-	{
-		u'doctype': u'Page Role',
-		u'name': u'__common__',
-		'parent': u'purchase-analytics',
-		'parentfield': u'roles',
-		'parenttype': u'Page'
-	},
-
-	# Page, purchase-analytics
-	{
-		u'doctype': u'Page',
-		u'name': u'purchase-analytics'
-	},
-
-	# Page Role
-	{
-		u'doctype': u'Page Role',
-		'role': u'Analytics'
-	},
-
-	# Page Role
-	{
-		u'doctype': u'Page Role',
-		'role': u'Purchase Manager'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-09-21 20:15:16", 
+  "modified_by": "Administrator", 
+  "modified": "2012-10-04 17:24:17"
+ }, 
+ {
+  "name": "__common__", 
+  "title": "Purchase Analytics", 
+  "module": "Buying", 
+  "doctype": "Page", 
+  "page_name": "purchase-analytics", 
+  "standard": "Yes"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "purchase-analytics", 
+  "doctype": "Page Role", 
+  "parenttype": "Page", 
+  "parentfield": "roles"
+ }, 
+ {
+  "name": "purchase-analytics", 
+  "doctype": "Page"
+ }, 
+ {
+  "role": "Analytics", 
+  "doctype": "Page Role"
+ }, 
+ {
+  "role": "Purchase Manager", 
+  "doctype": "Page Role"
+ }
 ]
\ No newline at end of file
diff --git a/buying/report/supplier_quotations/supplier_quotations.txt b/buying/report/supplier_quotations/supplier_quotations.txt
index dba7dc6..ab4f872 100644
--- a/buying/report/supplier_quotations/supplier_quotations.txt
+++ b/buying/report/supplier_quotations/supplier_quotations.txt
@@ -1,26 +1,19 @@
-# Report, Supplier Quotations
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-08-07 14:52:42',
-		'docstatus': 0,
-	  	'modified': '2012-12-03 17:10:41',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all Report
-	{
-		'doctype': 'Report',
-		'json': u'{"filters":[["Supplier Quotation","supplier","like","%%"],["Supplier Quotation Item","item_code","like","%%"]],"columns":[["name","Supplier Quotation"],["supplier","Supplier Quotation"],["item_code","Supplier Quotation Item"],["description","Supplier Quotation Item"],["qty","Supplier Quotation Item"],["currency","Supplier Quotation"],["import_rate","Supplier Quotation Item"],["import_amount","Supplier Quotation Item"]],"sort_by":"modified","sort_order":"desc","sort_by_next":"name","sort_order_next":"desc"}',
-		'name': '__common__',
-		'ref_doctype': u'Supplier Quotation'
-	},
-
-	# Report, Supplier Quotations
-	{
-		'doctype': 'Report',
-		'name': u'Supplier Quotations'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-08-07 14:52:42", 
+  "modified_by": "Administrator", 
+  "modified": "2012-12-03 17:10:41"
+ }, 
+ {
+  "name": "__common__", 
+  "ref_doctype": "Supplier Quotation", 
+  "doctype": "Report", 
+  "json": "{\"filters\":[[\"Supplier Quotation\",\"supplier\",\"like\",\"%%\"],[\"Supplier Quotation Item\",\"item_code\",\"like\",\"%%\"]],\"columns\":[[\"name\",\"Supplier Quotation\"],[\"supplier\",\"Supplier Quotation\"],[\"item_code\",\"Supplier Quotation Item\"],[\"description\",\"Supplier Quotation Item\"],[\"qty\",\"Supplier Quotation Item\"],[\"currency\",\"Supplier Quotation\"],[\"import_rate\",\"Supplier Quotation Item\"],[\"import_amount\",\"Supplier Quotation Item\"]],\"sort_by\":\"modified\",\"sort_order\":\"desc\",\"sort_by_next\":\"name\",\"sort_order_next\":\"desc\"}"
+ }, 
+ {
+  "name": "Supplier Quotations", 
+  "doctype": "Report"
+ }
 ]
\ No newline at end of file
diff --git a/buying/search_criteria/itemwise_purchase_details/itemwise_purchase_details.txt b/buying/search_criteria/itemwise_purchase_details/itemwise_purchase_details.txt
index de0f278..ac92b71 100644
--- a/buying/search_criteria/itemwise_purchase_details/itemwise_purchase_details.txt
+++ b/buying/search_criteria/itemwise_purchase_details/itemwise_purchase_details.txt
@@ -1,34 +1,27 @@
-# Search Criteria, itemwise_purchase_details
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-04-11 13:16:55',
-		'docstatus': 0,
-		'modified': '2012-04-13 11:15:06',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all Search Criteria
-	{
-		'columns': u'Purchase Order\x01ID,Purchase Order\x01Purchase Order Date,Purchase Order Item\x01Item Code,Purchase Order Item\x01Item Name,Purchase Order Item\x01Quantity,Purchase Order Item\x01Stock UOM,Purchase Order Item\x01Rate ,Purchase Order Item\x01Amount,Purchase Order\x01Net Total*,Purchase Order\x01Grand Total',
-		'criteria_name': u'Itemwise Purchase Details',
-		'doc_type': u'Purchase Order Item',
-		'doctype': 'Search Criteria',
-		'filters': u'{"Purchase Order\\u0001Submitted":1,"Purchase Order\\u0001Status":[],"Purchase Order\\u0001Fiscal Year":[]}',
-		'module': u'Buying',
-		'name': '__common__',
-		'page_len': 50,
-		'parent_doc_type': u'Purchase Order',
-		'sort_by': u'`tabPurchase Order`.`transaction_date`',
-		'sort_order': u'DESC',
-		'standard': u'Yes'
-	},
-
-	# Search Criteria, itemwise_purchase_details
-	{
-		'doctype': 'Search Criteria',
-		'name': u'itemwise_purchase_details'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-04-11 13:16:55", 
+  "modified_by": "Administrator", 
+  "modified": "2012-04-13 11:15:06"
+ }, 
+ {
+  "parent_doc_type": "Purchase Order", 
+  "module": "Buying", 
+  "standard": "Yes", 
+  "sort_order": "DESC", 
+  "filters": "{\"Purchase Order\\u0001Submitted\":1,\"Purchase Order\\u0001Status\":[],\"Purchase Order\\u0001Fiscal Year\":[]}", 
+  "doc_type": "Purchase Order Item", 
+  "name": "__common__", 
+  "doctype": "Search Criteria", 
+  "sort_by": "`tabPurchase Order`.`transaction_date`", 
+  "page_len": 50, 
+  "criteria_name": "Itemwise Purchase Details", 
+  "columns": "Purchase Order\u0001ID,Purchase Order\u0001Purchase Order Date,Purchase Order Item\u0001Item Code,Purchase Order Item\u0001Item Name,Purchase Order Item\u0001Quantity,Purchase Order Item\u0001Stock UOM,Purchase Order Item\u0001Rate ,Purchase Order Item\u0001Amount,Purchase Order\u0001Net Total*,Purchase Order\u0001Grand Total"
+ }, 
+ {
+  "name": "itemwise_purchase_details", 
+  "doctype": "Search Criteria"
+ }
 ]
\ No newline at end of file
diff --git a/buying/search_criteria/pending_po_items_to_bill/pending_po_items_to_bill.txt b/buying/search_criteria/pending_po_items_to_bill/pending_po_items_to_bill.txt
index cbdcc5c..8650d20 100644
--- a/buying/search_criteria/pending_po_items_to_bill/pending_po_items_to_bill.txt
+++ b/buying/search_criteria/pending_po_items_to_bill/pending_po_items_to_bill.txt
@@ -1,37 +1,30 @@
-# Search Criteria, pending_po_items_to_bill
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-04-03 12:49:51',
-		'docstatus': 0,
-		'modified': '2012-04-03 12:49:51',
-		'modified_by': u'Administrator',
-		'owner': u'dhanalekshmi@webnotestech.com'
-	},
-
-	# These values are common for all Search Criteria
-	{
-		'add_col': u'(CASE WHEN (`tabPurchase Order Item`.qty- ifnull(`tabPurchase Order Item`.billed_qty, 0) > 0 ) THEN (`tabPurchase Order Item`.qty-ifnull(`tabPurchase Order Item`.billed_qty, 0) ) ELSE 0 END) AS "Pending To Bill"',
-		'add_cond': u'(`tabPurchase Order Item`.qty - ifnull(`tabPurchase Order Item`.received_qty, 0) > 0 or `tabPurchase Order Item`.qty - ifnull(`tabPurchase Order Item`.billed_qty, 0) > 0)\n`tabPurchase Order`.status != "Stopped"',
-		'columns': u'Purchase Order\x01ID,Purchase Order\x01Supplier,Purchase Order\x01Supplier Name,Purchase Order\x01Status,Purchase Order\x01PO Date,Purchase Order\x01Fiscal Year,Purchase Order Item\x01Purchase Request No,Purchase Order Item\x01Item Code,Purchase Order Item\x01Item Name,Purchase Order Item\x01Description,Purchase Order Item\x01Quantity,Purchase Order Item\x01UOM,Purchase Order Item\x01Received Qty',
-		'criteria_name': u'Pending PO Items To Bill',
-		'description': u'Pending PO Items To Bill',
-		'doc_type': u'Purchase Order Item',
-		'doctype': 'Search Criteria',
-		'filters': u"{'Purchase Order\x01Saved':1,'Purchase Order\x01Submitted':1,'Purchase Order\x01Status':'','Purchase Order\x01Fiscal Year':''}",
-		'module': u'Buying',
-		'name': '__common__',
-		'page_len': 50,
-		'parent_doc_type': u'Purchase Order',
-		'sort_by': u'`tabPurchase Order`.`name`',
-		'sort_order': u'DESC',
-		'standard': u'Yes'
-	},
-
-	# Search Criteria, pending_po_items_to_bill
-	{
-		'doctype': 'Search Criteria',
-		'name': u'pending_po_items_to_bill'
-	}
+ {
+  "owner": "dhanalekshmi@webnotestech.com", 
+  "docstatus": 0, 
+  "creation": "2012-04-03 12:49:51", 
+  "modified_by": "Administrator", 
+  "modified": "2012-04-03 12:49:51"
+ }, 
+ {
+  "add_col": "(CASE WHEN (`tabPurchase Order Item`.qty- ifnull(`tabPurchase Order Item`.billed_qty, 0) > 0 ) THEN (`tabPurchase Order Item`.qty-ifnull(`tabPurchase Order Item`.billed_qty, 0) ) ELSE 0 END) AS \"Pending To Bill\"", 
+  "parent_doc_type": "Purchase Order", 
+  "module": "Buying", 
+  "standard": "Yes", 
+  "sort_order": "DESC", 
+  "filters": "{'Purchase Order\u0001Saved':1,'Purchase Order\u0001Submitted':1,'Purchase Order\u0001Status':'','Purchase Order\u0001Fiscal Year':''}", 
+  "description": "Pending PO Items To Bill", 
+  "doc_type": "Purchase Order Item", 
+  "name": "__common__", 
+  "add_cond": "(`tabPurchase Order Item`.qty - ifnull(`tabPurchase Order Item`.received_qty, 0) > 0 or `tabPurchase Order Item`.qty - ifnull(`tabPurchase Order Item`.billed_qty, 0) > 0)\n`tabPurchase Order`.status != \"Stopped\"", 
+  "doctype": "Search Criteria", 
+  "sort_by": "`tabPurchase Order`.`name`", 
+  "page_len": 50, 
+  "criteria_name": "Pending PO Items To Bill", 
+  "columns": "Purchase Order\u0001ID,Purchase Order\u0001Supplier,Purchase Order\u0001Supplier Name,Purchase Order\u0001Status,Purchase Order\u0001PO Date,Purchase Order\u0001Fiscal Year,Purchase Order Item\u0001Purchase Request No,Purchase Order Item\u0001Item Code,Purchase Order Item\u0001Item Name,Purchase Order Item\u0001Description,Purchase Order Item\u0001Quantity,Purchase Order Item\u0001UOM,Purchase Order Item\u0001Received Qty"
+ }, 
+ {
+  "name": "pending_po_items_to_bill", 
+  "doctype": "Search Criteria"
+ }
 ]
\ No newline at end of file
diff --git a/buying/search_criteria/pending_po_items_to_receive/pending_po_items_to_receive.txt b/buying/search_criteria/pending_po_items_to_receive/pending_po_items_to_receive.txt
index 185e155..a103fb5 100644
--- a/buying/search_criteria/pending_po_items_to_receive/pending_po_items_to_receive.txt
+++ b/buying/search_criteria/pending_po_items_to_receive/pending_po_items_to_receive.txt
@@ -1,37 +1,30 @@
-# Search Criteria, pending_po_items_to_receive
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-04-03 12:49:52',
-		'docstatus': 0,
-		'modified': '2012-04-03 12:49:52',
-		'modified_by': u'Administrator',
-		'owner': u'dhanalekshmi@webnotestech.com'
-	},
-
-	# These values are common for all Search Criteria
-	{
-		'add_col': u'`tabPurchase Order Item`.qty - ifnull(`tabPurchase Order Item`.received_qty, 0) AS "Pending Quantity To Receive"\n(`tabPurchase Order Item`.qty - ifnull(`tabPurchase Order Item`.received_qty, 0)) * `tabPurchase Order Item`.purchase_rate AS "Pending Amount To Receive"',
-		'add_cond': u'`tabPurchase Order Item`.qty - ifnull(`tabPurchase Order Item`.received_qty, 0) > 0 \n`tabPurchase Order`.status != "Stopped"',
-		'columns': u'Purchase Order\x01ID,Purchase Order\x01Supplier,Purchase Order\x01Supplier Name,Purchase Order\x01Status,Purchase Order\x01PO Date,Purchase Order\x01Fiscal Year,Purchase Order Item\x01Purchase Request No,Purchase Order Item\x01Item Code,Purchase Order Item\x01Item Name,Purchase Order Item\x01Description,Purchase Order Item\x01Quantity,Purchase Order Item\x01UOM,Purchase Order Item\x01Received Qty',
-		'criteria_name': u'Pending PO Items To Receive',
-		'description': u'Pending PO Items To Receive',
-		'doc_type': u'Purchase Order Item',
-		'doctype': 'Search Criteria',
-		'filters': u"{'Purchase Order\x01Saved':1,'Purchase Order\x01Submitted':1,'Purchase Order\x01Status':'','Purchase Order\x01Fiscal Year':''}",
-		'module': u'Buying',
-		'name': '__common__',
-		'page_len': 50,
-		'parent_doc_type': u'Purchase Order',
-		'sort_by': u'`tabPurchase Order`.`name`',
-		'sort_order': u'DESC',
-		'standard': u'Yes'
-	},
-
-	# Search Criteria, pending_po_items_to_receive
-	{
-		'doctype': 'Search Criteria',
-		'name': u'pending_po_items_to_receive'
-	}
+ {
+  "owner": "dhanalekshmi@webnotestech.com", 
+  "docstatus": 0, 
+  "creation": "2012-04-03 12:49:52", 
+  "modified_by": "Administrator", 
+  "modified": "2012-04-03 12:49:52"
+ }, 
+ {
+  "add_col": "`tabPurchase Order Item`.qty - ifnull(`tabPurchase Order Item`.received_qty, 0) AS \"Pending Quantity To Receive\"\n(`tabPurchase Order Item`.qty - ifnull(`tabPurchase Order Item`.received_qty, 0)) * `tabPurchase Order Item`.purchase_rate AS \"Pending Amount To Receive\"", 
+  "parent_doc_type": "Purchase Order", 
+  "module": "Buying", 
+  "standard": "Yes", 
+  "sort_order": "DESC", 
+  "filters": "{'Purchase Order\u0001Saved':1,'Purchase Order\u0001Submitted':1,'Purchase Order\u0001Status':'','Purchase Order\u0001Fiscal Year':''}", 
+  "description": "Pending PO Items To Receive", 
+  "doc_type": "Purchase Order Item", 
+  "name": "__common__", 
+  "add_cond": "`tabPurchase Order Item`.qty - ifnull(`tabPurchase Order Item`.received_qty, 0) > 0 \n`tabPurchase Order`.status != \"Stopped\"", 
+  "doctype": "Search Criteria", 
+  "sort_by": "`tabPurchase Order`.`name`", 
+  "page_len": 50, 
+  "criteria_name": "Pending PO Items To Receive", 
+  "columns": "Purchase Order\u0001ID,Purchase Order\u0001Supplier,Purchase Order\u0001Supplier Name,Purchase Order\u0001Status,Purchase Order\u0001PO Date,Purchase Order\u0001Fiscal Year,Purchase Order Item\u0001Purchase Request No,Purchase Order Item\u0001Item Code,Purchase Order Item\u0001Item Name,Purchase Order Item\u0001Description,Purchase Order Item\u0001Quantity,Purchase Order Item\u0001UOM,Purchase Order Item\u0001Received Qty"
+ }, 
+ {
+  "name": "pending_po_items_to_receive", 
+  "doctype": "Search Criteria"
+ }
 ]
\ No newline at end of file
diff --git a/buying/search_criteria/purchase_in_transit/purchase_in_transit.txt b/buying/search_criteria/purchase_in_transit/purchase_in_transit.txt
index e49ea0b..9fa5ccf 100644
--- a/buying/search_criteria/purchase_in_transit/purchase_in_transit.txt
+++ b/buying/search_criteria/purchase_in_transit/purchase_in_transit.txt
@@ -1,39 +1,32 @@
-# Search Criteria, purchase_in_transit
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-04-11 13:16:55',
-		'docstatus': 0,
-		'modified': '2012-04-13 12:06:15',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all Search Criteria
-	{
-		'add_col': u"`tabPurchase Receipt`.`posting_date` AS 'PR Posting Date'",
-		'add_cond': u"`tabPurchase Invoice Item`.`purchase_receipt`  = `tabPurchase Receipt`.`name`\n`tabPurchase Receipt`.`posting_date` >= '%(pr_posting_date)s'\n`tabPurchase Receipt`.`posting_date` <= '%(pr_posting_date1)s'\n`tabPurchase Receipt`.`posting_date` > `tabPurchase Invoice`.`posting_date`",
-		'add_tab': u'`tabPurchase Receipt`',
-		'columns': u'Purchase Invoice\x01ID,Purchase Invoice\x01Posting Date,Purchase Invoice\x01Credit To,Purchase Invoice Item\x01Qty,Purchase Invoice Item\x01Amount,Purchase Invoice Item\x01Pur Order,Purchase Invoice Item\x01Pur Receipt',
-		'criteria_name': u'Purchase in Transit',
-		'description': u'List of PR whose posting date is after PV posting date',
-		'dis_filters': u'`tabPurchase Receipt`.`pr_posting_date`',
-		'doc_type': u'Purchase Invoice Item',
-		'doctype': 'Search Criteria',
-		'filters': u'{"Purchase Invoice\\u0001Submitted":1,"Purchase Invoice\\u0001Is Opening":[""],"Purchase Invoice\\u0001Fiscal Year":[""]}',
-		'module': u'Buying',
-		'name': '__common__',
-		'page_len': 50,
-		'parent_doc_type': u'Purchase Invoice',
-		'sort_by': u'`tabPurchase Invoice`.`name`',
-		'sort_order': u'DESC',
-		'standard': u'Yes'
-	},
-
-	# Search Criteria, purchase_in_transit
-	{
-		'doctype': 'Search Criteria',
-		'name': u'purchase_in_transit'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-04-11 13:16:55", 
+  "modified_by": "Administrator", 
+  "modified": "2012-04-13 12:06:15"
+ }, 
+ {
+  "add_col": "`tabPurchase Receipt`.`posting_date` AS 'PR Posting Date'", 
+  "parent_doc_type": "Purchase Invoice", 
+  "module": "Buying", 
+  "standard": "Yes", 
+  "sort_order": "DESC", 
+  "filters": "{\"Purchase Invoice\\u0001Submitted\":1,\"Purchase Invoice\\u0001Is Opening\":[\"\"],\"Purchase Invoice\\u0001Fiscal Year\":[\"\"]}", 
+  "dis_filters": "`tabPurchase Receipt`.`pr_posting_date`", 
+  "description": "List of PR whose posting date is after PV posting date", 
+  "doc_type": "Purchase Invoice Item", 
+  "name": "__common__", 
+  "add_tab": "`tabPurchase Receipt`", 
+  "add_cond": "`tabPurchase Invoice Item`.`purchase_receipt`  = `tabPurchase Receipt`.`name`\n`tabPurchase Receipt`.`posting_date` >= '%(pr_posting_date)s'\n`tabPurchase Receipt`.`posting_date` <= '%(pr_posting_date1)s'\n`tabPurchase Receipt`.`posting_date` > `tabPurchase Invoice`.`posting_date`", 
+  "doctype": "Search Criteria", 
+  "sort_by": "`tabPurchase Invoice`.`name`", 
+  "page_len": 50, 
+  "criteria_name": "Purchase in Transit", 
+  "columns": "Purchase Invoice\u0001ID,Purchase Invoice\u0001Posting Date,Purchase Invoice\u0001Credit To,Purchase Invoice Item\u0001Qty,Purchase Invoice Item\u0001Amount,Purchase Invoice Item\u0001Pur Order,Purchase Invoice Item\u0001Pur Receipt"
+ }, 
+ {
+  "name": "purchase_in_transit", 
+  "doctype": "Search Criteria"
+ }
 ]
\ No newline at end of file
diff --git a/home/doctype/feed/feed.txt b/home/doctype/feed/feed.txt
index ad76eb0..dc22829 100644
--- a/home/doctype/feed/feed.txt
+++ b/home/doctype/feed/feed.txt
@@ -1,105 +1,80 @@
-# DocType, Feed
 [
-
-	# These values are common in all dictionaries
-	{
-		u'creation': '2012-07-03 13:29:42',
-		u'docstatus': 0,
-		u'modified': '2012-10-15 15:23:02',
-		u'modified_by': u'Administrator',
-		u'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'autoname': u'_FEED.#####',
-		'colour': u'White:FFF',
-		u'doctype': u'DocType',
-		'module': u'Home',
-		u'name': u'__common__',
-		'section_style': u'Simple',
-		'show_in_menu': 0,
-		'version': 1
-	},
-
-	# These values are common for all DocField
-	{
-		u'doctype': u'DocField',
-		u'name': u'__common__',
-		'parent': u'Feed',
-		'parentfield': u'fields',
-		'parenttype': u'DocType',
-		'permlevel': 0
-	},
-
-	# These values are common for all DocPerm
-	{
-		u'doctype': u'DocPerm',
-		u'name': u'__common__',
-		'parent': u'Feed',
-		'parentfield': u'permissions',
-		'parenttype': u'DocType',
-		'permlevel': 0,
-		'read': 1,
-		'role': u'System Manager'
-	},
-
-	# DocType, Feed
-	{
-		u'doctype': u'DocType',
-		u'name': u'Feed'
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'feed_type',
-		'fieldtype': u'Select',
-		'label': u'Feed Type'
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'doc_type',
-		'fieldtype': u'Data',
-		'label': u'Doc Type'
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'doc_name',
-		'fieldtype': u'Data',
-		'label': u'Doc Name'
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'subject',
-		'fieldtype': u'Data',
-		'label': u'Subject'
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'color',
-		'fieldtype': u'Data',
-		'label': u'Color'
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'full_name',
-		'fieldtype': u'Data',
-		'label': u'Full Name'
-	},
-
-	# DocPerm
-	{
-		u'doctype': u'DocPerm'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-07-03 13:29:42", 
+  "modified_by": "Administrator", 
+  "modified": "2012-10-15 15:23:02"
+ }, 
+ {
+  "section_style": "Simple", 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "module": "Home", 
+  "doctype": "DocType", 
+  "version": 1, 
+  "autoname": "_FEED.#####", 
+  "show_in_menu": 0
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Feed", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "permlevel": 0, 
+  "parentfield": "fields"
+ }, 
+ {
+  "parent": "Feed", 
+  "read": 1, 
+  "name": "__common__", 
+  "doctype": "DocPerm", 
+  "parenttype": "DocType", 
+  "role": "System Manager", 
+  "permlevel": 0, 
+  "parentfield": "permissions"
+ }, 
+ {
+  "name": "Feed", 
+  "doctype": "DocType"
+ }, 
+ {
+  "doctype": "DocField", 
+  "fieldname": "feed_type", 
+  "fieldtype": "Select", 
+  "label": "Feed Type"
+ }, 
+ {
+  "doctype": "DocField", 
+  "fieldname": "doc_type", 
+  "fieldtype": "Data", 
+  "label": "Doc Type"
+ }, 
+ {
+  "doctype": "DocField", 
+  "fieldname": "doc_name", 
+  "fieldtype": "Data", 
+  "label": "Doc Name"
+ }, 
+ {
+  "doctype": "DocField", 
+  "fieldname": "subject", 
+  "fieldtype": "Data", 
+  "label": "Subject"
+ }, 
+ {
+  "doctype": "DocField", 
+  "fieldname": "color", 
+  "fieldtype": "Data", 
+  "label": "Color"
+ }, 
+ {
+  "doctype": "DocField", 
+  "fieldname": "full_name", 
+  "fieldtype": "Data", 
+  "label": "Full Name"
+ }, 
+ {
+  "doctype": "DocPerm"
+ }
 ]
\ No newline at end of file
diff --git a/home/page/activity/activity.txt b/home/page/activity/activity.txt
index e7f3963..ec39d01 100644
--- a/home/page/activity/activity.txt
+++ b/home/page/activity/activity.txt
@@ -1,28 +1,21 @@
-# Page, activity
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-02-29 11:59:13',
-		'docstatus': 0,
-		'modified': '2012-02-29 12:11:46',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all Page
-	{
-		'doctype': 'Page',
-		'module': u'Home',
-		'name': '__common__',
-		'page_name': u'activity',
-		'standard': u'Yes',
-		'title': u'Activity'
-	},
-
-	# Page, activity
-	{
-		'doctype': 'Page',
-		'name': u'activity'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-02-29 11:59:13", 
+  "modified_by": "Administrator", 
+  "modified": "2012-02-29 12:11:46"
+ }, 
+ {
+  "name": "__common__", 
+  "title": "Activity", 
+  "module": "Home", 
+  "doctype": "Page", 
+  "page_name": "activity", 
+  "standard": "Yes"
+ }, 
+ {
+  "name": "activity", 
+  "doctype": "Page"
+ }
 ]
\ No newline at end of file
diff --git a/home/page/attributions/attributions.txt b/home/page/attributions/attributions.txt
index a15adb9..aea8fbb 100644
--- a/home/page/attributions/attributions.txt
+++ b/home/page/attributions/attributions.txt
@@ -1,28 +1,21 @@
-# Page, attributions
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-01 12:30:42',
-		'docstatus': 0,
-		'modified': '2012-03-01 12:30:42',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all Page
-	{
-		'doctype': 'Page',
-		'module': u'Home',
-		'name': '__common__',
-		'page_name': u'attributions',
-		'standard': u'Yes',
-		'title': u'Attributions'
-	},
-
-	# Page, attributions
-	{
-		'doctype': 'Page',
-		'name': u'attributions'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-03-01 12:30:42", 
+  "modified_by": "Administrator", 
+  "modified": "2012-03-01 12:30:42"
+ }, 
+ {
+  "name": "__common__", 
+  "title": "Attributions", 
+  "module": "Home", 
+  "doctype": "Page", 
+  "page_name": "attributions", 
+  "standard": "Yes"
+ }, 
+ {
+  "name": "attributions", 
+  "doctype": "Page"
+ }
 ]
\ No newline at end of file
diff --git a/home/page/desktop/desktop.css b/home/page/desktop/desktop.css
index f1c4fb0..88a437c 100644
--- a/home/page/desktop/desktop.css
+++ b/home/page/desktop/desktop.css
@@ -6,7 +6,7 @@
 .sprite-hr{ background-position: 0 -439px; width: 40px; height: 32px; } 
 .sprite-kb{ background-position: 0 -521px; width: 24px; height: 39px; } 
 .sprite-messages{ background-position: 0 -610px; width: 40px; height: 26px; } 
-.sprite-production{ background-position: 0 -686px; width: 40px; height: 33px; } 
+.sprite-manufacturing{ background-position: 0 -686px; width: 40px; height: 33px; } 
 .sprite-project{ background-position: 0 -769px; width: 40px; height: 22px; } 
 .sprite-report{ background-position: 0 -841px; width: 29px; height: 40px; } 
 .sprite-selling{ background-position: 0 -931px; width: 34px; height: 40px; } 
@@ -26,7 +26,7 @@
 .sprite-support{ margin-top: 8px; margin-left: 8px; } 
 .sprite-hr{ margin-top: 12px; margin-left: 8px; } 
 .sprite-project{ margin-top: 16px; margin-left: 8px; } 
-.sprite-production{ margin-top: 10px; margin-left: 8px; } 
+.sprite-manufacturing{ margin-top: 10px; margin-left: 8px; } 
 .sprite-website{ margin-top: 8px; margin-left: 8px; } 
 .sprite-setting{ margin-top: 8px; margin-left: 8px; } 
 .sprite-report{ margin-top: 8px; margin-left: 14px; } 
diff --git a/home/page/desktop/desktop.js b/home/page/desktop/desktop.js
index 75f2922..f9a3b54 100644
--- a/home/page/desktop/desktop.js
+++ b/home/page/desktop/desktop.js
@@ -33,7 +33,7 @@
 		'Support': { sprite: 'support', label: 'Support'},
 		'HR': { sprite: 'hr', label: 'Human<br />Resources'},
 		'Projects':	{ sprite: 'project', label: 'Projects'},
-		'Production': { sprite: 'production', label: 'Production'},
+		'Manufacturing': { sprite: 'manufacturing', label: 'Manufacturing'},
 		'Website': { sprite: 'website', label: 'Website'},
 		'Activity': { sprite: 'feed', label: 'Activity'},
 		'Setup': { sprite: 'setting', label: 'Setup'},
diff --git a/home/page/desktop/desktop.txt b/home/page/desktop/desktop.txt
index f1918b9..1eec626 100644
--- a/home/page/desktop/desktop.txt
+++ b/home/page/desktop/desktop.txt
@@ -1,28 +1,21 @@
-# Page, desktop
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-02-24 11:37:43',
-		'docstatus': 0,
-		'modified': '2012-02-24 11:37:43',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all Page
-	{
-		'doctype': 'Page',
-		'module': u'Home',
-		'name': '__common__',
-		'page_name': u'desktop',
-		'standard': u'Yes',
-		'title': u'Desktop'
-	},
-
-	# Page, desktop
-	{
-		'doctype': 'Page',
-		'name': u'desktop'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-02-24 11:37:43", 
+  "modified_by": "Administrator", 
+  "modified": "2012-02-24 11:37:43"
+ }, 
+ {
+  "name": "__common__", 
+  "title": "Desktop", 
+  "module": "Home", 
+  "doctype": "Page", 
+  "page_name": "desktop", 
+  "standard": "Yes"
+ }, 
+ {
+  "name": "desktop", 
+  "doctype": "Page"
+ }
 ]
\ No newline at end of file
diff --git a/hr/DocType Mapper/Appraisal Template-Appraisal/Appraisal Template-Appraisal.txt b/hr/DocType Mapper/Appraisal Template-Appraisal/Appraisal Template-Appraisal.txt
index ec2bd06..69d171f 100644
--- a/hr/DocType Mapper/Appraisal Template-Appraisal/Appraisal Template-Appraisal.txt
+++ b/hr/DocType Mapper/Appraisal Template-Appraisal/Appraisal Template-Appraisal.txt
@@ -1,47 +1,36 @@
-# DocType Mapper, Appraisal Template-Appraisal
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2010-09-01 15:47:59',
-		'docstatus': 0,
-		'modified': '2012-04-03 12:49:50',
-		'modified_by': u'Administrator',
-		'owner': u'ashwini@webnotestech.com'
-	},
-
-	# These values are common for all Table Mapper Detail
-	{
-		'doctype': u'Table Mapper Detail',
-		'from_field': u'kra_sheet',
-		'from_table': u'Appraisal Template Goal',
-		'match_id': 0,
-		'name': '__common__',
-		'parent': u'Appraisal Template-Appraisal',
-		'parentfield': u'table_mapper_details',
-		'parenttype': u'DocType Mapper',
-		'to_field': u'appraisal_details',
-		'to_table': u'Appraisal Goal',
-		'validation_logic': u'name is not Null'
-	},
-
-	# These values are common for all DocType Mapper
-	{
-		'doctype': 'DocType Mapper',
-		'from_doctype': u'Appraisal Template',
-		'module': u'HR',
-		'name': '__common__',
-		'to_doctype': u'Appraisal'
-	},
-
-	# DocType Mapper, Appraisal Template-Appraisal
-	{
-		'doctype': 'DocType Mapper',
-		'name': u'Appraisal Template-Appraisal'
-	},
-
-	# Table Mapper Detail
-	{
-		'doctype': u'Table Mapper Detail'
-	}
+ {
+  "owner": "ashwini@webnotestech.com", 
+  "docstatus": 0, 
+  "creation": "2010-09-01 15:47:59", 
+  "modified_by": "Administrator", 
+  "modified": "2012-04-03 12:49:50"
+ }, 
+ {
+  "match_id": 0, 
+  "parent": "Appraisal Template-Appraisal", 
+  "from_field": "kra_sheet", 
+  "doctype": "Table Mapper Detail", 
+  "to_table": "Appraisal Goal", 
+  "name": "__common__", 
+  "to_field": "appraisal_details", 
+  "parenttype": "DocType Mapper", 
+  "from_table": "Appraisal Template Goal", 
+  "validation_logic": "name is not Null", 
+  "parentfield": "table_mapper_details"
+ }, 
+ {
+  "name": "__common__", 
+  "to_doctype": "Appraisal", 
+  "module": "HR", 
+  "doctype": "DocType Mapper", 
+  "from_doctype": "Appraisal Template"
+ }, 
+ {
+  "name": "Appraisal Template-Appraisal", 
+  "doctype": "DocType Mapper"
+ }, 
+ {
+  "doctype": "Table Mapper Detail"
+ }
 ]
\ No newline at end of file
diff --git a/hr/DocType Mapper/Salary Structure-Salary Slip/Salary Structure-Salary Slip.txt b/hr/DocType Mapper/Salary Structure-Salary Slip/Salary Structure-Salary Slip.txt
index 855c649..2cf9075 100644
--- a/hr/DocType Mapper/Salary Structure-Salary Slip/Salary Structure-Salary Slip.txt
+++ b/hr/DocType Mapper/Salary Structure-Salary Slip/Salary Structure-Salary Slip.txt
@@ -1,131 +1,100 @@
-# DocType Mapper, Salary Structure-Salary Slip
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2010-12-14 10:33:11',
-		'docstatus': 0,
-		'modified': '2011-09-15 15:04:44',
-		'modified_by': 'Administrator',
-		'owner': 'harshada@webnotestech.com'
-	},
-
-	# These values are common for all Table Mapper Detail
-	{
-		'doctype': 'Table Mapper Detail',
-		'name': '__common__',
-		'parent': 'Salary Structure-Salary Slip',
-		'parentfield': 'table_mapper_details',
-		'parenttype': 'DocType Mapper',
-		'validation_logic': 'name is not null'
-	},
-
-	# These values are common for all Field Mapper Detail
-	{
-		'doctype': 'Field Mapper Detail',
-		'map': 'Yes',
-		'name': '__common__',
-		'parent': 'Salary Structure-Salary Slip',
-		'parentfield': 'field_mapper_details',
-		'parenttype': 'DocType Mapper'
-	},
-
-	# These values are common for all DocType Mapper
-	{
-		'doctype': 'DocType Mapper',
-		'from_doctype': 'Salary Structure',
-		'module': 'HR',
-		'name': '__common__',
-		'to_doctype': 'Salary Slip'
-	},
-
-	# DocType Mapper, Salary Structure-Salary Slip
-	{
-		'doctype': 'DocType Mapper',
-		'name': 'Salary Structure-Salary Slip'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': 'Field Mapper Detail',
-		'from_field': 'total_earning',
-		'match_id': 0,
-		'to_field': 'gross_pay'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': 'Field Mapper Detail',
-		'from_field': 'modified_value',
-		'match_id': 1,
-		'to_field': 'e_amount'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': 'Field Mapper Detail',
-		'from_field': 'd_modified_amt',
-		'match_id': 2,
-		'to_field': 'd_amount'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': 'Field Mapper Detail',
-		'from_field': 'modified_value',
-		'match_id': 1,
-		'to_field': 'e_modified_amount'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': 'Field Mapper Detail',
-		'from_field': 'depend_on_lwp',
-		'match_id': 1,
-		'to_field': 'e_depends_on_lwp'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': 'Field Mapper Detail',
-		'from_field': 'd_modified_amt',
-		'match_id': 2,
-		'to_field': 'd_modified_amount'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': 'Field Mapper Detail',
-		'from_field': 'depend_on_lwp',
-		'match_id': 2,
-		'to_field': 'd_depends_on_lwp'
-	},
-
-	# Table Mapper Detail
-	{
-		'doctype': 'Table Mapper Detail',
-		'from_table': 'Salary Structure',
-		'match_id': 0,
-		'to_table': 'Salary Slip'
-	},
-
-	# Table Mapper Detail
-	{
-		'doctype': 'Table Mapper Detail',
-		'from_field': 'earning_details',
-		'from_table': 'Salary Structure Earning',
-		'match_id': 1,
-		'to_field': 'earning_details',
-		'to_table': 'Salary Slip Earning'
-	},
-
-	# Table Mapper Detail
-	{
-		'doctype': 'Table Mapper Detail',
-		'from_field': 'deduction_details',
-		'from_table': 'Salary Structure Deduction',
-		'match_id': 2,
-		'to_field': 'deduction_details',
-		'to_table': 'Salary Slip Deduction'
-	}
+ {
+  "owner": "harshada@webnotestech.com", 
+  "docstatus": 0, 
+  "creation": "2010-12-14 10:33:11", 
+  "modified_by": "Administrator", 
+  "modified": "2011-09-15 15:04:44"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Salary Structure-Salary Slip", 
+  "doctype": "Table Mapper Detail", 
+  "parenttype": "DocType Mapper", 
+  "validation_logic": "name is not null", 
+  "parentfield": "table_mapper_details"
+ }, 
+ {
+  "map": "Yes", 
+  "name": "__common__", 
+  "parent": "Salary Structure-Salary Slip", 
+  "doctype": "Field Mapper Detail", 
+  "parenttype": "DocType Mapper", 
+  "parentfield": "field_mapper_details"
+ }, 
+ {
+  "name": "__common__", 
+  "to_doctype": "Salary Slip", 
+  "module": "HR", 
+  "doctype": "DocType Mapper", 
+  "from_doctype": "Salary Structure"
+ }, 
+ {
+  "name": "Salary Structure-Salary Slip", 
+  "doctype": "DocType Mapper"
+ }, 
+ {
+  "to_field": "gross_pay", 
+  "doctype": "Field Mapper Detail", 
+  "match_id": 0, 
+  "from_field": "total_earning"
+ }, 
+ {
+  "to_field": "e_amount", 
+  "doctype": "Field Mapper Detail", 
+  "match_id": 1, 
+  "from_field": "modified_value"
+ }, 
+ {
+  "to_field": "d_amount", 
+  "doctype": "Field Mapper Detail", 
+  "match_id": 2, 
+  "from_field": "d_modified_amt"
+ }, 
+ {
+  "to_field": "e_modified_amount", 
+  "doctype": "Field Mapper Detail", 
+  "match_id": 1, 
+  "from_field": "modified_value"
+ }, 
+ {
+  "to_field": "e_depends_on_lwp", 
+  "doctype": "Field Mapper Detail", 
+  "match_id": 1, 
+  "from_field": "depend_on_lwp"
+ }, 
+ {
+  "to_field": "d_modified_amount", 
+  "doctype": "Field Mapper Detail", 
+  "match_id": 2, 
+  "from_field": "d_modified_amt"
+ }, 
+ {
+  "to_field": "d_depends_on_lwp", 
+  "doctype": "Field Mapper Detail", 
+  "match_id": 2, 
+  "from_field": "depend_on_lwp"
+ }, 
+ {
+  "to_table": "Salary Slip", 
+  "doctype": "Table Mapper Detail", 
+  "match_id": 0, 
+  "from_table": "Salary Structure"
+ }, 
+ {
+  "match_id": 1, 
+  "to_field": "earning_details", 
+  "doctype": "Table Mapper Detail", 
+  "from_field": "earning_details", 
+  "from_table": "Salary Structure Earning", 
+  "to_table": "Salary Slip Earning"
+ }, 
+ {
+  "match_id": 2, 
+  "to_field": "deduction_details", 
+  "doctype": "Table Mapper Detail", 
+  "from_field": "deduction_details", 
+  "from_table": "Salary Structure Deduction", 
+  "to_table": "Salary Slip Deduction"
+ }
 ]
\ No newline at end of file
diff --git a/hr/doctype/appraisal/appraisal.txt b/hr/doctype/appraisal/appraisal.txt
index 525b689..8005a2c 100644
--- a/hr/doctype/appraisal/appraisal.txt
+++ b/hr/doctype/appraisal/appraisal.txt
@@ -1,350 +1,293 @@
-# DocType, Appraisal
 [
-
-	# These values are common in all dictionaries
-	{
-		u'creation': '2012-11-16 10:33:39',
-		u'docstatus': 0,
-		u'modified': '2012-11-16 15:22:59',
-		u'modified_by': u'Administrator',
-		u'owner': u'ashwini@webnotestech.com'
-	},
-
-	# These values are common for all DocType
-	{
-		'_last_update': u'1316075905',
-		'autoname': u'APRSL.#####',
-		'colour': u'White:FFF',
-		u'doctype': u'DocType',
-		'is_submittable': 1,
-		'module': u'HR',
-		u'name': u'__common__',
-		'search_fields': u'status, employee, employee_name',
-		'section_style': u'Simple',
-		'server_code_error': u' ',
-		'show_in_menu': 0,
-		'version': 1
-	},
-
-	# These values are common for all DocField
-	{
-		u'doctype': u'DocField',
-		u'name': u'__common__',
-		'parent': u'Appraisal',
-		'parentfield': u'fields',
-		'parenttype': u'DocType'
-	},
-
-	# These values are common for all DocPerm
-	{
-		u'doctype': u'DocPerm',
-		u'name': u'__common__',
-		'parent': u'Appraisal',
-		'parentfield': u'permissions',
-		'parenttype': u'DocType',
-		'read': 1
-	},
-
-	# DocType, Appraisal
-	{
-		u'doctype': u'DocType',
-		u'name': u'Appraisal'
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'employee_details',
-		'fieldtype': u'Section Break',
-		'label': u'Employee Details',
-		'oldfieldtype': u'Section Break',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'description': u'Select template from which you want to get the Goals',
-		u'doctype': u'DocField',
-		'fieldname': u'kra_template',
-		'fieldtype': u'Link',
-		'label': u'Appraisal Template',
-		'oldfieldname': u'kra_template',
-		'oldfieldtype': u'Link',
-		'options': u'Appraisal Template',
-		'permlevel': 0,
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'depends_on': u'kra_template',
-		'description': u'Select the Employee for whom you are creating the Appraisal.',
-		u'doctype': u'DocField',
-		'fieldname': u'employee',
-		'fieldtype': u'Link',
-		'in_filter': 1,
-		'label': u'For Employee',
-		'oldfieldname': u'employee',
-		'oldfieldtype': u'Link',
-		'options': u'Employee',
-		'permlevel': 0,
-		'reqd': 1,
-		'search_index': 1,
-		'trigger': u'Client'
-	},
-
-	# DocField
-	{
-		'depends_on': u'kra_template',
-		u'doctype': u'DocField',
-		'fieldname': u'employee_name',
-		'fieldtype': u'Data',
-		'in_filter': 1,
-		'label': u'For Employee Name',
-		'oldfieldname': u'employee_name',
-		'oldfieldtype': u'Data',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		'depends_on': u'kra_template',
-		u'doctype': u'DocField',
-		'fieldname': u'column_break0',
-		'fieldtype': u'Column Break',
-		'oldfieldtype': u'Column Break',
-		'permlevel': 0,
-		'width': u'50%'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'default': u'Draft',
-		'depends_on': u'kra_template',
-		u'doctype': u'DocField',
-		'fieldname': u'status',
-		'fieldtype': u'Select',
-		'in_filter': 1,
-		'label': u'Status',
-		'no_copy': 1,
-		'oldfieldname': u'status',
-		'oldfieldtype': u'Select',
-		'options': u'\nDraft\nSubmitted\nCompleted\nCancelled',
-		'permlevel': 1,
-		'reqd': 1,
-		'search_index': 1
-	},
-
-	# DocField
-	{
-		'depends_on': u'kra_template',
-		u'doctype': u'DocField',
-		'fieldname': u'start_date',
-		'fieldtype': u'Date',
-		'in_filter': 1,
-		'label': u'Start Date',
-		'oldfieldname': u'start_date',
-		'oldfieldtype': u'Date',
-		'permlevel': 0,
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'depends_on': u'kra_template',
-		u'doctype': u'DocField',
-		'fieldname': u'end_date',
-		'fieldtype': u'Date',
-		'in_filter': 1,
-		'label': u'End Date',
-		'oldfieldname': u'end_date',
-		'oldfieldtype': u'Date',
-		'permlevel': 0,
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'depends_on': u'kra_template',
-		u'doctype': u'DocField',
-		'fieldname': u'section_break0',
-		'fieldtype': u'Section Break',
-		'label': u'Goals',
-		'oldfieldtype': u'Section Break',
-		'options': u'Simple',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'allow_on_submit': 0,
-		'colour': u'White:FFF',
-		u'doctype': u'DocField',
-		'fieldname': u'appraisal_details',
-		'fieldtype': u'Table',
-		'label': u'Appraisal Goals',
-		'oldfieldname': u'appraisal_details',
-		'oldfieldtype': u'Table',
-		'options': u'Appraisal Goal',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'allow_on_submit': 0,
-		u'doctype': u'DocField',
-		'fieldname': u'calculate_total_score',
-		'fieldtype': u'Button',
-		'label': u'Calculate Total Score',
-		'oldfieldtype': u'Button',
-		'options': u'calculate_total',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'total_score',
-		'fieldtype': u'Currency',
-		'label': u'Total Score (Out of 5)',
-		'no_copy': 1,
-		'oldfieldname': u'total_score',
-		'oldfieldtype': u'Currency',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		'depends_on': u'kra_template',
-		u'doctype': u'DocField',
-		'fieldname': u'section_break1',
-		'fieldtype': u'Section Break',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'description': u'Any other comments, noteworthy effort that should go in the records.',
-		u'doctype': u'DocField',
-		'fieldname': u'comments',
-		'fieldtype': u'Text',
-		'label': u'Comments',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'depends_on': u'kra_template',
-		u'doctype': u'DocField',
-		'fieldname': u'other_details',
-		'fieldtype': u'Section Break',
-		'label': u'Other Details',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'company',
-		'fieldtype': u'Select',
-		'in_filter': 1,
-		'label': u'Company',
-		'oldfieldname': u'company',
-		'oldfieldtype': u'Link',
-		'options': u'link:Company',
-		'permlevel': 0,
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'fiscal_year',
-		'fieldtype': u'Select',
-		'in_filter': 1,
-		'label': u'Fiscal Year',
-		'oldfieldname': u'fiscal_year',
-		'oldfieldtype': u'Select',
-		'options': u'link:Fiscal Year',
-		'permlevel': 0,
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'amendment_date',
-		'fieldtype': u'Date',
-		'hidden': 1,
-		'label': u'Amendment Date',
-		'no_copy': 1,
-		'oldfieldname': u'amendment_date',
-		'oldfieldtype': u'Date',
-		'permlevel': 1,
-		'print_hide': 1,
-		'report_hide': 1,
-		'width': u'160px'
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'amended_from',
-		'fieldtype': u'Data',
-		'hidden': 1,
-		'label': u'Amended From',
-		'no_copy': 1,
-		'oldfieldname': u'amended_from',
-		'oldfieldtype': u'Data',
-		'permlevel': 1,
-		'print_hide': 1,
-		'report_hide': 1,
-		'width': u'150px'
-	},
-
-	# DocPerm
-	{
-		'create': 1,
-		u'doctype': u'DocPerm',
-		'match': u'owner',
-		'permlevel': 0,
-		'role': u'Employee',
-		'submit': 0,
-		'write': 1
-	},
-
-	# DocPerm
-	{
-		'amend': 1,
-		'cancel': 1,
-		'create': 1,
-		u'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'System Manager',
-		'submit': 1,
-		'write': 1
-	},
-
-	# DocPerm
-	{
-		'amend': 1,
-		'cancel': 1,
-		'create': 1,
-		u'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'HR User',
-		'submit': 1,
-		'write': 1
-	},
-
-	# DocPerm
-	{
-		u'doctype': u'DocPerm',
-		'permlevel': 1,
-		'role': u'All'
-	}
+ {
+  "owner": "ashwini@webnotestech.com", 
+  "docstatus": 0, 
+  "creation": "2012-11-16 10:33:39", 
+  "modified_by": "Administrator", 
+  "modified": "2012-11-16 15:22:59"
+ }, 
+ {
+  "section_style": "Simple", 
+  "is_submittable": 1, 
+  "search_fields": "status, employee, employee_name", 
+  "module": "HR", 
+  "doctype": "DocType", 
+  "server_code_error": " ", 
+  "autoname": "APRSL.#####", 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "_last_update": "1316075905", 
+  "show_in_menu": 0, 
+  "version": 1
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Appraisal", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Appraisal", 
+  "read": 1, 
+  "doctype": "DocPerm", 
+  "parenttype": "DocType", 
+  "parentfield": "permissions"
+ }, 
+ {
+  "name": "Appraisal", 
+  "doctype": "DocType"
+ }, 
+ {
+  "oldfieldtype": "Section Break", 
+  "doctype": "DocField", 
+  "label": "Employee Details", 
+  "fieldname": "employee_details", 
+  "fieldtype": "Section Break", 
+  "permlevel": 0
+ }, 
+ {
+  "description": "Select template from which you want to get the Goals", 
+  "oldfieldtype": "Link", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Appraisal Template", 
+  "oldfieldname": "kra_template", 
+  "options": "Appraisal Template", 
+  "fieldname": "kra_template", 
+  "fieldtype": "Link", 
+  "reqd": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "description": "Select the Employee for whom you are creating the Appraisal.", 
+  "search_index": 1, 
+  "colour": "White:FFF", 
+  "oldfieldtype": "Link", 
+  "label": "For Employee", 
+  "oldfieldname": "employee", 
+  "permlevel": 0, 
+  "trigger": "Client", 
+  "fieldname": "employee", 
+  "fieldtype": "Link", 
+  "depends_on": "kra_template", 
+  "reqd": 1, 
+  "options": "Employee", 
+  "in_filter": 1
+ }, 
+ {
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "For Employee Name", 
+  "oldfieldname": "employee_name", 
+  "fieldname": "employee_name", 
+  "fieldtype": "Data", 
+  "depends_on": "kra_template", 
+  "permlevel": 1, 
+  "in_filter": 1
+ }, 
+ {
+  "depends_on": "kra_template", 
+  "doctype": "DocField", 
+  "width": "50%", 
+  "fieldname": "column_break0", 
+  "fieldtype": "Column Break", 
+  "oldfieldtype": "Column Break", 
+  "permlevel": 0
+ }, 
+ {
+  "permlevel": 1, 
+  "depends_on": "kra_template", 
+  "no_copy": 1, 
+  "search_index": 1, 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Status", 
+  "oldfieldname": "status", 
+  "default": "Draft", 
+  "fieldname": "status", 
+  "fieldtype": "Select", 
+  "oldfieldtype": "Select", 
+  "reqd": 1, 
+  "options": "\nDraft\nSubmitted\nCompleted\nCancelled", 
+  "in_filter": 1
+ }, 
+ {
+  "oldfieldtype": "Date", 
+  "doctype": "DocField", 
+  "label": "Start Date", 
+  "oldfieldname": "start_date", 
+  "fieldname": "start_date", 
+  "fieldtype": "Date", 
+  "depends_on": "kra_template", 
+  "reqd": 1, 
+  "permlevel": 0, 
+  "in_filter": 1
+ }, 
+ {
+  "oldfieldtype": "Date", 
+  "doctype": "DocField", 
+  "label": "End Date", 
+  "oldfieldname": "end_date", 
+  "fieldname": "end_date", 
+  "fieldtype": "Date", 
+  "depends_on": "kra_template", 
+  "reqd": 1, 
+  "permlevel": 0, 
+  "in_filter": 1
+ }, 
+ {
+  "oldfieldtype": "Section Break", 
+  "doctype": "DocField", 
+  "label": "Goals", 
+  "permlevel": 0, 
+  "fieldname": "section_break0", 
+  "fieldtype": "Section Break", 
+  "depends_on": "kra_template", 
+  "options": "Simple"
+ }, 
+ {
+  "oldfieldtype": "Table", 
+  "colour": "White:FFF", 
+  "allow_on_submit": 0, 
+  "doctype": "DocField", 
+  "label": "Appraisal Goals", 
+  "oldfieldname": "appraisal_details", 
+  "permlevel": 0, 
+  "fieldname": "appraisal_details", 
+  "fieldtype": "Table", 
+  "options": "Appraisal Goal"
+ }, 
+ {
+  "oldfieldtype": "Button", 
+  "allow_on_submit": 0, 
+  "doctype": "DocField", 
+  "label": "Calculate Total Score", 
+  "permlevel": 0, 
+  "fieldname": "calculate_total_score", 
+  "fieldtype": "Button", 
+  "options": "calculate_total"
+ }, 
+ {
+  "no_copy": 1, 
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Total Score (Out of 5)", 
+  "oldfieldname": "total_score", 
+  "fieldname": "total_score", 
+  "fieldtype": "Currency", 
+  "permlevel": 1
+ }, 
+ {
+  "depends_on": "kra_template", 
+  "doctype": "DocField", 
+  "fieldname": "section_break1", 
+  "fieldtype": "Section Break", 
+  "permlevel": 0
+ }, 
+ {
+  "description": "Any other comments, noteworthy effort that should go in the records.", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Comments", 
+  "fieldname": "comments", 
+  "fieldtype": "Text", 
+  "permlevel": 0
+ }, 
+ {
+  "depends_on": "kra_template", 
+  "doctype": "DocField", 
+  "label": "Other Details", 
+  "fieldname": "other_details", 
+  "fieldtype": "Section Break", 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Link", 
+  "doctype": "DocField", 
+  "label": "Company", 
+  "oldfieldname": "company", 
+  "permlevel": 0, 
+  "fieldname": "company", 
+  "fieldtype": "Select", 
+  "reqd": 1, 
+  "options": "link:Company", 
+  "in_filter": 1
+ }, 
+ {
+  "oldfieldtype": "Select", 
+  "doctype": "DocField", 
+  "label": "Fiscal Year", 
+  "oldfieldname": "fiscal_year", 
+  "permlevel": 0, 
+  "fieldname": "fiscal_year", 
+  "fieldtype": "Select", 
+  "reqd": 1, 
+  "options": "link:Fiscal Year", 
+  "in_filter": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "no_copy": 1, 
+  "oldfieldtype": "Date", 
+  "doctype": "DocField", 
+  "label": "Amendment Date", 
+  "oldfieldname": "amendment_date", 
+  "width": "160px", 
+  "fieldname": "amendment_date", 
+  "fieldtype": "Date", 
+  "hidden": 1, 
+  "permlevel": 1, 
+  "report_hide": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "no_copy": 1, 
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Amended From", 
+  "oldfieldname": "amended_from", 
+  "width": "150px", 
+  "fieldname": "amended_from", 
+  "fieldtype": "Data", 
+  "hidden": 1, 
+  "permlevel": 1, 
+  "report_hide": 1
+ }, 
+ {
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "submit": 0, 
+  "write": 1, 
+  "role": "Employee", 
+  "permlevel": 0, 
+  "match": "owner"
+ }, 
+ {
+  "amend": 1, 
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "submit": 1, 
+  "write": 1, 
+  "role": "System Manager", 
+  "cancel": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "amend": 1, 
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "submit": 1, 
+  "write": 1, 
+  "role": "HR User", 
+  "cancel": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "role": "All", 
+  "permlevel": 1, 
+  "doctype": "DocPerm"
+ }
 ]
\ No newline at end of file
diff --git a/hr/doctype/appraisal_goal/appraisal_goal.txt b/hr/doctype/appraisal_goal/appraisal_goal.txt
index cdfa188..5fe775e 100644
--- a/hr/doctype/appraisal_goal/appraisal_goal.txt
+++ b/hr/doctype/appraisal_goal/appraisal_goal.txt
@@ -1,98 +1,81 @@
-# DocType, Appraisal Goal
 [
-
-	# These values are common in all dictionaries
-	{
-		u'creation': '2012-07-03 13:30:40',
-		u'docstatus': 0,
-		u'modified': '2012-11-15 17:50:24',
-		u'modified_by': u'Administrator',
-		u'owner': u'ashwini@webnotestech.com'
-	},
-
-	# These values are common for all DocType
-	{
-		'autoname': u'APRSLD.#####',
-		'colour': u'White:FFF',
-		u'doctype': u'DocType',
-		'istable': 1,
-		'module': u'HR',
-		u'name': u'__common__',
-		'section_style': u'Simple',
-		'server_code_error': u' ',
-		'version': 1
-	},
-
-	# These values are common for all DocField
-	{
-		u'doctype': u'DocField',
-		u'name': u'__common__',
-		'parent': u'Appraisal Goal',
-		'parentfield': u'fields',
-		'parenttype': u'DocType'
-	},
-
-	# DocType, Appraisal Goal
-	{
-		u'doctype': u'DocType',
-		u'name': u'Appraisal Goal'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'description': u'Key Responsibility Area',
-		u'doctype': u'DocField',
-		'fieldname': u'kra',
-		'fieldtype': u'Small Text',
-		'label': u'Goal',
-		'oldfieldname': u'kra',
-		'oldfieldtype': u'Small Text',
-		'permlevel': 0,
-		'reqd': 1,
-		'width': u'240px'
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'per_weightage',
-		'fieldtype': u'Currency',
-		'label': u'Weightage (%)',
-		'oldfieldname': u'per_weightage',
-		'oldfieldtype': u'Currency',
-		'permlevel': 0,
-		'reqd': 1,
-		'width': u'70px'
-	},
-
-	# DocField
-	{
-		'allow_on_submit': 1,
-		'colour': u'White:FFF',
-		u'doctype': u'DocField',
-		'fieldname': u'score',
-		'fieldtype': u'Currency',
-		'label': u'Score (0-5)',
-		'no_copy': 1,
-		'oldfieldname': u'score',
-		'oldfieldtype': u'Select',
-		'options': u'\n0\n1\n2\n3\n4\n5',
-		'permlevel': 0,
-		'trigger': u'Client',
-		'width': u'70px'
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'score_earned',
-		'fieldtype': u'Currency',
-		'label': u'Score Earned',
-		'no_copy': 1,
-		'oldfieldname': u'score_earned',
-		'oldfieldtype': u'Currency',
-		'permlevel': 1,
-		'width': u'70px'
-	}
+ {
+  "owner": "ashwini@webnotestech.com", 
+  "docstatus": 0, 
+  "creation": "2012-07-03 13:30:40", 
+  "modified_by": "Administrator", 
+  "modified": "2012-11-15 17:50:24"
+ }, 
+ {
+  "section_style": "Simple", 
+  "istable": 1, 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "module": "HR", 
+  "server_code_error": " ", 
+  "version": 1, 
+  "doctype": "DocType", 
+  "autoname": "APRSLD.#####"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Appraisal Goal", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "Appraisal Goal", 
+  "doctype": "DocType"
+ }, 
+ {
+  "description": "Key Responsibility Area", 
+  "oldfieldtype": "Small Text", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Goal", 
+  "oldfieldname": "kra", 
+  "width": "240px", 
+  "fieldname": "kra", 
+  "fieldtype": "Small Text", 
+  "reqd": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Weightage (%)", 
+  "oldfieldname": "per_weightage", 
+  "width": "70px", 
+  "fieldname": "per_weightage", 
+  "fieldtype": "Currency", 
+  "reqd": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "permlevel": 0, 
+  "no_copy": 1, 
+  "oldfieldtype": "Select", 
+  "colour": "White:FFF", 
+  "allow_on_submit": 1, 
+  "doctype": "DocField", 
+  "label": "Score (0-5)", 
+  "oldfieldname": "score", 
+  "width": "70px", 
+  "trigger": "Client", 
+  "fieldname": "score", 
+  "fieldtype": "Currency", 
+  "options": "\n0\n1\n2\n3\n4\n5"
+ }, 
+ {
+  "no_copy": 1, 
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Score Earned", 
+  "oldfieldname": "score_earned", 
+  "width": "70px", 
+  "fieldname": "score_earned", 
+  "fieldtype": "Currency", 
+  "permlevel": 1
+ }
 ]
\ No newline at end of file
diff --git a/hr/doctype/appraisal_template/appraisal_template.txt b/hr/doctype/appraisal_template/appraisal_template.txt
index 62a0d5b..aece5dc 100644
--- a/hr/doctype/appraisal_template/appraisal_template.txt
+++ b/hr/doctype/appraisal_template/appraisal_template.txt
@@ -1,111 +1,86 @@
-# DocType, Appraisal Template
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:35:58',
-		'docstatus': 0,
-		'modified': '2012-03-27 14:35:58',
-		'modified_by': u'Administrator',
-		'owner': u'ashwini@webnotestech.com'
-	},
-
-	# These values are common for all DocType
-	{
-		'autoname': u'field:kra_title',
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'document_type': u'Master',
-		'module': u'HR',
-		'name': '__common__',
-		'section_style': u'Simple',
-		'server_code_error': u' ',
-		'version': 3
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'Appraisal Template',
-		'parentfield': u'fields',
-		'parenttype': u'DocType',
-		'permlevel': 0
-	},
-
-	# These values are common for all DocPerm
-	{
-		'create': 1,
-		'doctype': u'DocPerm',
-		'name': '__common__',
-		'parent': u'Appraisal Template',
-		'parentfield': u'permissions',
-		'parenttype': u'DocType',
-		'permlevel': 0,
-		'read': 1,
-		'write': 1
-	},
-
-	# DocType, Appraisal Template
-	{
-		'doctype': 'DocType',
-		'name': u'Appraisal Template'
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm',
-		'role': u'System Manager'
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm',
-		'role': u'HR Manager'
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm',
-		'role': u'HR User'
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm',
-		'role': u'System Manager'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'kra_title',
-		'fieldtype': u'Data',
-		'label': u'KRA Title',
-		'oldfieldname': u'kra_title',
-		'oldfieldtype': u'Data',
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'description',
-		'fieldtype': u'Small Text',
-		'label': u'Description',
-		'oldfieldname': u'description',
-		'oldfieldtype': u'Small Text',
-		'width': u'300px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'kra_sheet',
-		'fieldtype': u'Table',
-		'label': u'Appraisal Template Goal',
-		'oldfieldname': u'kra_sheet',
-		'oldfieldtype': u'Table',
-		'options': u'Appraisal Template Goal'
-	}
+ {
+  "owner": "ashwini@webnotestech.com", 
+  "docstatus": 0, 
+  "creation": "2012-03-27 14:35:58", 
+  "modified_by": "Administrator", 
+  "modified": "2012-03-27 14:35:58"
+ }, 
+ {
+  "section_style": "Simple", 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "module": "HR", 
+  "server_code_error": " ", 
+  "version": 3, 
+  "doctype": "DocType", 
+  "autoname": "field:kra_title", 
+  "document_type": "Master"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Appraisal Template", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "permlevel": 0, 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Appraisal Template", 
+  "read": 1, 
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "write": 1, 
+  "parenttype": "DocType", 
+  "permlevel": 0, 
+  "parentfield": "permissions"
+ }, 
+ {
+  "name": "Appraisal Template", 
+  "doctype": "DocType"
+ }, 
+ {
+  "role": "System Manager", 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "role": "HR Manager", 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "role": "HR User", 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "role": "System Manager", 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "KRA Title", 
+  "oldfieldname": "kra_title", 
+  "fieldname": "kra_title", 
+  "fieldtype": "Data", 
+  "reqd": 1
+ }, 
+ {
+  "oldfieldtype": "Small Text", 
+  "doctype": "DocField", 
+  "label": "Description", 
+  "oldfieldname": "description", 
+  "width": "300px", 
+  "fieldname": "description", 
+  "fieldtype": "Small Text"
+ }, 
+ {
+  "oldfieldtype": "Table", 
+  "doctype": "DocField", 
+  "label": "Appraisal Template Goal", 
+  "oldfieldname": "kra_sheet", 
+  "fieldname": "kra_sheet", 
+  "fieldtype": "Table", 
+  "options": "Appraisal Template Goal"
+ }
 ]
\ No newline at end of file
diff --git a/hr/doctype/appraisal_template_goal/appraisal_template_goal.txt b/hr/doctype/appraisal_template_goal/appraisal_template_goal.txt
index c3e95e5..e756474 100644
--- a/hr/doctype/appraisal_template_goal/appraisal_template_goal.txt
+++ b/hr/doctype/appraisal_template_goal/appraisal_template_goal.txt
@@ -1,66 +1,53 @@
-# DocType, Appraisal Template Goal
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:35:58',
-		'docstatus': 0,
-		'modified': '2012-03-27 14:35:58',
-		'modified_by': u'Administrator',
-		'owner': u'ashwini@webnotestech.com'
-	},
-
-	# These values are common for all DocType
-	{
-		'autoname': u'KSHEET.#####',
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'istable': 1,
-		'module': u'HR',
-		'name': '__common__',
-		'section_style': u'Simple',
-		'server_code_error': u' ',
-		'version': 6
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'Appraisal Template Goal',
-		'parentfield': u'fields',
-		'parenttype': u'DocType',
-		'permlevel': 0,
-		'reqd': 1
-	},
-
-	# DocType, Appraisal Template Goal
-	{
-		'doctype': 'DocType',
-		'name': u'Appraisal Template Goal'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'description': u'Key Performance Area',
-		'doctype': u'DocField',
-		'fieldname': u'kra',
-		'fieldtype': u'Small Text',
-		'label': u'KRA',
-		'oldfieldname': u'kra',
-		'oldfieldtype': u'Small Text',
-		'width': u'200px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'per_weightage',
-		'fieldtype': u'Currency',
-		'label': u'Weightage (%)',
-		'oldfieldname': u'per_weightage',
-		'oldfieldtype': u'Currency',
-		'width': u'100px'
-	}
+ {
+  "owner": "ashwini@webnotestech.com", 
+  "docstatus": 0, 
+  "creation": "2012-03-27 14:35:58", 
+  "modified_by": "Administrator", 
+  "modified": "2012-03-27 14:35:58"
+ }, 
+ {
+  "section_style": "Simple", 
+  "istable": 1, 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "module": "HR", 
+  "server_code_error": " ", 
+  "version": 6, 
+  "doctype": "DocType", 
+  "autoname": "KSHEET.#####"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Appraisal Template Goal", 
+  "doctype": "DocField", 
+  "reqd": 1, 
+  "parenttype": "DocType", 
+  "permlevel": 0, 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "Appraisal Template Goal", 
+  "doctype": "DocType"
+ }, 
+ {
+  "description": "Key Performance Area", 
+  "oldfieldtype": "Small Text", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "KRA", 
+  "oldfieldname": "kra", 
+  "width": "200px", 
+  "fieldname": "kra", 
+  "fieldtype": "Small Text"
+ }, 
+ {
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Weightage (%)", 
+  "oldfieldname": "per_weightage", 
+  "width": "100px", 
+  "fieldname": "per_weightage", 
+  "fieldtype": "Currency"
+ }
 ]
\ No newline at end of file
diff --git a/hr/doctype/attendance_control_panel/attendance_control_panel.txt b/hr/doctype/attendance_control_panel/attendance_control_panel.txt
index 78904db..3b4e3c9 100644
--- a/hr/doctype/attendance_control_panel/attendance_control_panel.txt
+++ b/hr/doctype/attendance_control_panel/attendance_control_panel.txt
@@ -1,219 +1,174 @@
-# DocType, Attendance Control Panel
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:35:53',
-		'docstatus': 0,
-		'modified': '2012-03-27 14:35:53',
-		'modified_by': u'Administrator',
-		'owner': u'harshada@webnotestech.com'
-	},
-
-	# These values are common for all DocType
-	{
-		'_last_update': u'1294312182',
-		'allow_attach': 1,
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'issingle': 1,
-		'max_attachments': 1,
-		'module': u'HR',
-		'name': '__common__',
-		'section_style': u'Simple',
-		'server_code_error': u' ',
-		'version': 122
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'Attendance Control Panel',
-		'parentfield': u'fields',
-		'parenttype': u'DocType'
-	},
-
-	# These values are common for all DocPerm
-	{
-		'doctype': u'DocPerm',
-		'name': '__common__',
-		'parent': u'Attendance Control Panel',
-		'parentfield': u'permissions',
-		'parenttype': u'DocType',
-		'read': 1
-	},
-
-	# DocType, Attendance Control Panel
-	{
-		'doctype': 'DocType',
-		'name': u'Attendance Control Panel'
-	},
-
-	# DocPerm
-	{
-		'create': 1,
-		'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'System Manager',
-		'write': 1
-	},
-
-	# DocPerm
-	{
-		'create': 1,
-		'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'HR User',
-		'write': 1
-	},
-
-	# DocPerm
-	{
-		'create': 1,
-		'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'HR Manager',
-		'write': 1
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm',
-		'permlevel': 1,
-		'role': u'HR User'
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm',
-		'permlevel': 1,
-		'role': u'HR Manager'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'description': u"Get the template of the Attendance for which you want to import in CSV (Comma seperated values) format.\nFill data in the template. Save the template in CSV format.\nAll attendance dates inbetween 'Attendance From Date' and 'Attendance To Date' will come in the template with employees list.",
-		'doctype': u'DocField',
-		'fieldname': u'download_template',
-		'fieldtype': u'Section Break',
-		'label': u'Download Template',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'description': u'Selected Attendance date will comes in the attendance template.',
-		'doctype': u'DocField',
-		'fieldname': u'att_fr_date',
-		'fieldtype': u'Date',
-		'label': u'Attendance From Date',
-		'oldfieldname': u'attenadnce_date',
-		'oldfieldtype': u'Date',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'doctype': u'DocField',
-		'fieldname': u'get_template',
-		'fieldtype': u'Button',
-		'label': u'Get Template',
-		'oldfieldtype': u'Button',
-		'permlevel': 0,
-		'trigger': u'Client'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'column_break0',
-		'fieldtype': u'Column Break',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'description': u'All attendance dates inbetween selected Attendance From Date and Attendance To Date will come in the template with employees list.',
-		'doctype': u'DocField',
-		'fieldname': u'att_to_date',
-		'fieldtype': u'Date',
-		'label': u'Attendance To Date',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'description': u'To import attendance data, click on "Add" button, select the saved CSV file and click on "Upload".\nSelect the date format as attendance date format in CSV file.\nClick on "Import".',
-		'doctype': u'DocField',
-		'fieldname': u'upload_attendance_data',
-		'fieldtype': u'Section Break',
-		'label': u'Upload Attendance Data',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'import_date_format',
-		'fieldtype': u'Select',
-		'label': u'Import Date Format ',
-		'options': u'yyyy-mm-dd\nmm/dd/yyyy\nmm/dd/yy\ndd-mm-yyyy\ndd/mm/yyyy',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'doctype': u'DocField',
-		'fieldname': u'overwrite',
-		'fieldtype': u'Check',
-		'label': u'Overwrite',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'doctype': u'DocField',
-		'fieldname': u'import',
-		'fieldtype': u'Button',
-		'label': u'Import',
-		'permlevel': 0,
-		'trigger': u'Client'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'file_list',
-		'fieldtype': u'Text',
-		'hidden': 1,
-		'label': u'File List',
-		'permlevel': 1,
-		'print_hide': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'import_log',
-		'fieldtype': u'Section Break',
-		'label': u'Import Log',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'import_log1',
-		'fieldtype': u'HTML',
-		'label': u'Import Log1',
-		'permlevel': 0
-	}
+ {
+  "owner": "harshada@webnotestech.com", 
+  "docstatus": 0, 
+  "creation": "2012-03-27 14:35:53", 
+  "modified_by": "Administrator", 
+  "modified": "2012-03-27 14:35:53"
+ }, 
+ {
+  "section_style": "Simple", 
+  "allow_attach": 1, 
+  "module": "HR", 
+  "_last_update": "1294312182", 
+  "doctype": "DocType", 
+  "issingle": 1, 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "server_code_error": " ", 
+  "max_attachments": 1, 
+  "version": 122
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Attendance Control Panel", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Attendance Control Panel", 
+  "read": 1, 
+  "doctype": "DocPerm", 
+  "parenttype": "DocType", 
+  "parentfield": "permissions"
+ }, 
+ {
+  "name": "Attendance Control Panel", 
+  "doctype": "DocType"
+ }, 
+ {
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "write": 1, 
+  "role": "System Manager", 
+  "permlevel": 0
+ }, 
+ {
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "write": 1, 
+  "role": "HR User", 
+  "permlevel": 0
+ }, 
+ {
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "write": 1, 
+  "role": "HR Manager", 
+  "permlevel": 0
+ }, 
+ {
+  "role": "HR User", 
+  "permlevel": 1, 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "role": "HR Manager", 
+  "permlevel": 1, 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "description": "Get the template of the Attendance for which you want to import in CSV (Comma seperated values) format.\nFill data in the template. Save the template in CSV format.\nAll attendance dates inbetween 'Attendance From Date' and 'Attendance To Date' will come in the template with employees list.", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Download Template", 
+  "fieldname": "download_template", 
+  "fieldtype": "Section Break", 
+  "permlevel": 0
+ }, 
+ {
+  "description": "Selected Attendance date will comes in the attendance template.", 
+  "oldfieldtype": "Date", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Attendance From Date", 
+  "oldfieldname": "attenadnce_date", 
+  "fieldname": "att_fr_date", 
+  "fieldtype": "Date", 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Button", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Get Template", 
+  "trigger": "Client", 
+  "fieldname": "get_template", 
+  "fieldtype": "Button", 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "fieldname": "column_break0", 
+  "fieldtype": "Column Break", 
+  "permlevel": 0
+ }, 
+ {
+  "description": "All attendance dates inbetween selected Attendance From Date and Attendance To Date will come in the template with employees list.", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Attendance To Date", 
+  "fieldname": "att_to_date", 
+  "fieldtype": "Date", 
+  "permlevel": 0
+ }, 
+ {
+  "description": "To import attendance data, click on \"Add\" button, select the saved CSV file and click on \"Upload\".\nSelect the date format as attendance date format in CSV file.\nClick on \"Import\".", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Upload Attendance Data", 
+  "fieldname": "upload_attendance_data", 
+  "fieldtype": "Section Break", 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "options": "yyyy-mm-dd\nmm/dd/yyyy\nmm/dd/yy\ndd-mm-yyyy\ndd/mm/yyyy", 
+  "fieldname": "import_date_format", 
+  "fieldtype": "Select", 
+  "label": "Import Date Format ", 
+  "permlevel": 0
+ }, 
+ {
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Overwrite", 
+  "fieldname": "overwrite", 
+  "fieldtype": "Check", 
+  "permlevel": 0
+ }, 
+ {
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Import", 
+  "trigger": "Client", 
+  "fieldname": "import", 
+  "fieldtype": "Button", 
+  "permlevel": 0
+ }, 
+ {
+  "print_hide": 1, 
+  "doctype": "DocField", 
+  "label": "File List", 
+  "fieldname": "file_list", 
+  "fieldtype": "Text", 
+  "hidden": 1, 
+  "permlevel": 1
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Import Log", 
+  "fieldname": "import_log", 
+  "fieldtype": "Section Break", 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Import Log1", 
+  "fieldname": "import_log1", 
+  "fieldtype": "HTML", 
+  "permlevel": 0
+ }
 ]
\ No newline at end of file
diff --git a/hr/doctype/branch/branch.txt b/hr/doctype/branch/branch.txt
index 2bf7c21..d49e5bb 100644
--- a/hr/doctype/branch/branch.txt
+++ b/hr/doctype/branch/branch.txt
@@ -1,97 +1,76 @@
-# DocType, Branch
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:35:54',
-		'docstatus': 0,
-		'modified': '2012-03-27 14:35:54',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'allow_trash': 1,
-		'autoname': u'field:branch',
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'document_type': u'Master',
-		'module': u'HR',
-		'name': '__common__',
-		'section_style': u'Simple',
-		'server_code_error': u' ',
-		'show_in_menu': 0,
-		'version': 11
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'Branch',
-		'parentfield': u'fields',
-		'parenttype': u'DocType'
-	},
-
-	# These values are common for all DocPerm
-	{
-		'cancel': 1,
-		'create': 1,
-		'doctype': u'DocPerm',
-		'name': '__common__',
-		'parent': u'Branch',
-		'parentfield': u'permissions',
-		'parenttype': u'DocType',
-		'permlevel': 0,
-		'read': 1,
-		'write': 1
-	},
-
-	# DocType, Branch
-	{
-		'doctype': 'DocType',
-		'name': u'Branch'
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm',
-		'role': u'System Manager'
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm',
-		'role': u'HR User'
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm',
-		'role': u'HR Manager'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'trash_reason',
-		'fieldtype': u'Small Text',
-		'label': u'Trash Reason',
-		'oldfieldname': u'trash_reason',
-		'oldfieldtype': u'Small Text',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'branch',
-		'fieldtype': u'Data',
-		'label': u'Branch',
-		'oldfieldname': u'branch',
-		'oldfieldtype': u'Data',
-		'permlevel': 0,
-		'reqd': 1
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-03-27 14:35:54", 
+  "modified_by": "Administrator", 
+  "modified": "2012-03-27 14:35:54"
+ }, 
+ {
+  "section_style": "Simple", 
+  "module": "HR", 
+  "server_code_error": " ", 
+  "allow_trash": 1, 
+  "doctype": "DocType", 
+  "autoname": "field:branch", 
+  "document_type": "Master", 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "show_in_menu": 0, 
+  "version": 11
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Branch", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Branch", 
+  "read": 1, 
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "write": 1, 
+  "parenttype": "DocType", 
+  "cancel": 1, 
+  "permlevel": 0, 
+  "parentfield": "permissions"
+ }, 
+ {
+  "name": "Branch", 
+  "doctype": "DocType"
+ }, 
+ {
+  "role": "System Manager", 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "role": "HR User", 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "role": "HR Manager", 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "oldfieldtype": "Small Text", 
+  "doctype": "DocField", 
+  "label": "Trash Reason", 
+  "oldfieldname": "trash_reason", 
+  "fieldname": "trash_reason", 
+  "fieldtype": "Small Text", 
+  "permlevel": 1
+ }, 
+ {
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Branch", 
+  "oldfieldname": "branch", 
+  "fieldname": "branch", 
+  "fieldtype": "Data", 
+  "reqd": 1, 
+  "permlevel": 0
+ }
 ]
\ No newline at end of file
diff --git a/hr/doctype/deduction_type/deduction_type.txt b/hr/doctype/deduction_type/deduction_type.txt
index 4d3bbdd..43a8d62 100644
--- a/hr/doctype/deduction_type/deduction_type.txt
+++ b/hr/doctype/deduction_type/deduction_type.txt
@@ -1,109 +1,86 @@
-# DocType, Deduction Type
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:35:54',
-		'docstatus': 0,
-		'modified': '2012-03-27 14:35:54',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'allow_trash': 1,
-		'autoname': u'field:deduction_name',
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'document_type': u'Master',
-		'module': u'HR',
-		'name': '__common__',
-		'section_style': u'Simple',
-		'server_code_error': u' ',
-		'show_in_menu': 0,
-		'version': 10
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'Deduction Type',
-		'parentfield': u'fields',
-		'parenttype': u'DocType'
-	},
-
-	# These values are common for all DocPerm
-	{
-		'cancel': 1,
-		'create': 1,
-		'doctype': u'DocPerm',
-		'name': '__common__',
-		'parent': u'Deduction Type',
-		'parentfield': u'permissions',
-		'parenttype': u'DocType',
-		'permlevel': 0,
-		'read': 1,
-		'write': 1
-	},
-
-	# DocType, Deduction Type
-	{
-		'doctype': 'DocType',
-		'name': u'Deduction Type'
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm',
-		'role': u'System Manager'
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm',
-		'role': u'HR User'
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm',
-		'role': u'HR Manager'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'trash_reason',
-		'fieldtype': u'Small Text',
-		'label': u'Trash Reason',
-		'oldfieldname': u'trash_reason',
-		'oldfieldtype': u'Small Text',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'deduction_name',
-		'fieldtype': u'Data',
-		'label': u'Name',
-		'oldfieldname': u'deduction_name',
-		'oldfieldtype': u'Data',
-		'permlevel': 0,
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'description',
-		'fieldtype': u'Small Text',
-		'label': u'Description',
-		'oldfieldname': u'description',
-		'oldfieldtype': u'Small Text',
-		'permlevel': 0,
-		'width': u'300px'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-03-27 14:35:54", 
+  "modified_by": "Administrator", 
+  "modified": "2012-03-27 14:35:54"
+ }, 
+ {
+  "section_style": "Simple", 
+  "module": "HR", 
+  "server_code_error": " ", 
+  "allow_trash": 1, 
+  "doctype": "DocType", 
+  "autoname": "field:deduction_name", 
+  "document_type": "Master", 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "show_in_menu": 0, 
+  "version": 10
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Deduction Type", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Deduction Type", 
+  "read": 1, 
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "write": 1, 
+  "parenttype": "DocType", 
+  "cancel": 1, 
+  "permlevel": 0, 
+  "parentfield": "permissions"
+ }, 
+ {
+  "name": "Deduction Type", 
+  "doctype": "DocType"
+ }, 
+ {
+  "role": "System Manager", 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "role": "HR User", 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "role": "HR Manager", 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "oldfieldtype": "Small Text", 
+  "doctype": "DocField", 
+  "label": "Trash Reason", 
+  "oldfieldname": "trash_reason", 
+  "fieldname": "trash_reason", 
+  "fieldtype": "Small Text", 
+  "permlevel": 1
+ }, 
+ {
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Name", 
+  "oldfieldname": "deduction_name", 
+  "fieldname": "deduction_name", 
+  "fieldtype": "Data", 
+  "reqd": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Small Text", 
+  "doctype": "DocField", 
+  "label": "Description", 
+  "oldfieldname": "description", 
+  "width": "300px", 
+  "fieldname": "description", 
+  "fieldtype": "Small Text", 
+  "permlevel": 0
+ }
 ]
\ No newline at end of file
diff --git a/hr/doctype/department/department.txt b/hr/doctype/department/department.txt
index 8d56347..981efd9 100644
--- a/hr/doctype/department/department.txt
+++ b/hr/doctype/department/department.txt
@@ -1,97 +1,76 @@
-# DocType, Department
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:35:54',
-		'docstatus': 0,
-		'modified': '2012-03-27 14:35:54',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'allow_trash': 1,
-		'autoname': u'field:department_name',
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'document_type': u'Master',
-		'module': u'HR',
-		'name': '__common__',
-		'section_style': u'Simple',
-		'server_code_error': u' ',
-		'show_in_menu': 0,
-		'version': 7
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'Department',
-		'parentfield': u'fields',
-		'parenttype': u'DocType'
-	},
-
-	# These values are common for all DocPerm
-	{
-		'cancel': 1,
-		'create': 1,
-		'doctype': u'DocPerm',
-		'name': '__common__',
-		'parent': u'Department',
-		'parentfield': u'permissions',
-		'parenttype': u'DocType',
-		'permlevel': 0,
-		'read': 1,
-		'write': 1
-	},
-
-	# DocType, Department
-	{
-		'doctype': 'DocType',
-		'name': u'Department'
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm',
-		'role': u'System Manager'
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm',
-		'role': u'HR User'
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm',
-		'role': u'HR Manager'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'trash_reason',
-		'fieldtype': u'Small Text',
-		'label': u'Trash Reason',
-		'oldfieldname': u'trash_reason',
-		'oldfieldtype': u'Small Text',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'department_name',
-		'fieldtype': u'Data',
-		'label': u'Department',
-		'oldfieldname': u'department_name',
-		'oldfieldtype': u'Data',
-		'permlevel': 0,
-		'reqd': 1
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-03-27 14:35:54", 
+  "modified_by": "Administrator", 
+  "modified": "2012-03-27 14:35:54"
+ }, 
+ {
+  "section_style": "Simple", 
+  "module": "HR", 
+  "server_code_error": " ", 
+  "allow_trash": 1, 
+  "doctype": "DocType", 
+  "autoname": "field:department_name", 
+  "document_type": "Master", 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "show_in_menu": 0, 
+  "version": 7
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Department", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Department", 
+  "read": 1, 
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "write": 1, 
+  "parenttype": "DocType", 
+  "cancel": 1, 
+  "permlevel": 0, 
+  "parentfield": "permissions"
+ }, 
+ {
+  "name": "Department", 
+  "doctype": "DocType"
+ }, 
+ {
+  "role": "System Manager", 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "role": "HR User", 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "role": "HR Manager", 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "oldfieldtype": "Small Text", 
+  "doctype": "DocField", 
+  "label": "Trash Reason", 
+  "oldfieldname": "trash_reason", 
+  "fieldname": "trash_reason", 
+  "fieldtype": "Small Text", 
+  "permlevel": 1
+ }, 
+ {
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Department", 
+  "oldfieldname": "department_name", 
+  "fieldname": "department_name", 
+  "fieldtype": "Data", 
+  "reqd": 1, 
+  "permlevel": 0
+ }
 ]
\ No newline at end of file
diff --git a/hr/doctype/designation/designation.txt b/hr/doctype/designation/designation.txt
index 0d9ca32..3a3de37 100644
--- a/hr/doctype/designation/designation.txt
+++ b/hr/doctype/designation/designation.txt
@@ -1,97 +1,76 @@
-# DocType, Designation
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:35:54',
-		'docstatus': 0,
-		'modified': '2012-03-27 14:35:54',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'allow_trash': 1,
-		'autoname': u'field:designation_name',
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'document_type': u'Master',
-		'module': u'HR',
-		'name': '__common__',
-		'section_style': u'Simple',
-		'server_code_error': u' ',
-		'show_in_menu': 0,
-		'version': 7
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'Designation',
-		'parentfield': u'fields',
-		'parenttype': u'DocType'
-	},
-
-	# These values are common for all DocPerm
-	{
-		'cancel': 1,
-		'create': 1,
-		'doctype': u'DocPerm',
-		'name': '__common__',
-		'parent': u'Designation',
-		'parentfield': u'permissions',
-		'parenttype': u'DocType',
-		'permlevel': 0,
-		'read': 1,
-		'write': 1
-	},
-
-	# DocType, Designation
-	{
-		'doctype': 'DocType',
-		'name': u'Designation'
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm',
-		'role': u'System Manager'
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm',
-		'role': u'HR User'
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm',
-		'role': u'HR Manager'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'trash_reason',
-		'fieldtype': u'Small Text',
-		'label': u'Trash Reason',
-		'oldfieldname': u'trash_reason',
-		'oldfieldtype': u'Small Text',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'designation_name',
-		'fieldtype': u'Data',
-		'label': u'Designation',
-		'oldfieldname': u'designation_name',
-		'oldfieldtype': u'Data',
-		'permlevel': 0,
-		'reqd': 1
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-03-27 14:35:54", 
+  "modified_by": "Administrator", 
+  "modified": "2012-03-27 14:35:54"
+ }, 
+ {
+  "section_style": "Simple", 
+  "module": "HR", 
+  "server_code_error": " ", 
+  "allow_trash": 1, 
+  "doctype": "DocType", 
+  "autoname": "field:designation_name", 
+  "document_type": "Master", 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "show_in_menu": 0, 
+  "version": 7
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Designation", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Designation", 
+  "read": 1, 
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "write": 1, 
+  "parenttype": "DocType", 
+  "cancel": 1, 
+  "permlevel": 0, 
+  "parentfield": "permissions"
+ }, 
+ {
+  "name": "Designation", 
+  "doctype": "DocType"
+ }, 
+ {
+  "role": "System Manager", 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "role": "HR User", 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "role": "HR Manager", 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "oldfieldtype": "Small Text", 
+  "doctype": "DocField", 
+  "label": "Trash Reason", 
+  "oldfieldname": "trash_reason", 
+  "fieldname": "trash_reason", 
+  "fieldtype": "Small Text", 
+  "permlevel": 1
+ }, 
+ {
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Designation", 
+  "oldfieldname": "designation_name", 
+  "fieldname": "designation_name", 
+  "fieldtype": "Data", 
+  "reqd": 1, 
+  "permlevel": 0
+ }
 ]
\ No newline at end of file
diff --git a/hr/doctype/earning_type/earning_type.txt b/hr/doctype/earning_type/earning_type.txt
index f5588f1..fa89b68 100644
--- a/hr/doctype/earning_type/earning_type.txt
+++ b/hr/doctype/earning_type/earning_type.txt
@@ -1,139 +1,112 @@
-# DocType, Earning Type
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:35:54',
-		'docstatus': 0,
-		'modified': '2012-03-27 14:35:54',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'allow_trash': 1,
-		'autoname': u'field:earning_name',
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'document_type': u'Master',
-		'module': u'HR',
-		'name': '__common__',
-		'section_style': u'Simple',
-		'server_code_error': u' ',
-		'show_in_menu': 0,
-		'version': 13
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'Earning Type',
-		'parentfield': u'fields',
-		'parenttype': u'DocType'
-	},
-
-	# These values are common for all DocPerm
-	{
-		'cancel': 1,
-		'create': 1,
-		'doctype': u'DocPerm',
-		'name': '__common__',
-		'parent': u'Earning Type',
-		'parentfield': u'permissions',
-		'parenttype': u'DocType',
-		'permlevel': 0,
-		'read': 1,
-		'write': 1
-	},
-
-	# DocType, Earning Type
-	{
-		'doctype': 'DocType',
-		'name': u'Earning Type'
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm',
-		'role': u'System Manager'
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm',
-		'role': u'HR User'
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm',
-		'role': u'HR Manager'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'trash_reason',
-		'fieldtype': u'Small Text',
-		'label': u'Trash Reason',
-		'oldfieldname': u'trash_reason',
-		'oldfieldtype': u'Small Text',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'earning_name',
-		'fieldtype': u'Data',
-		'label': u'Name',
-		'oldfieldname': u'earning_name',
-		'oldfieldtype': u'Data',
-		'permlevel': 0,
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'description',
-		'fieldtype': u'Small Text',
-		'label': u'Description',
-		'oldfieldname': u'description',
-		'oldfieldtype': u'Small Text',
-		'permlevel': 0,
-		'reqd': 0,
-		'width': u'300px'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'doctype': u'DocField',
-		'fieldname': u'taxable',
-		'fieldtype': u'Select',
-		'label': u'Taxable',
-		'oldfieldname': u'taxable',
-		'oldfieldtype': u'Select',
-		'options': u'\nYes\nNo',
-		'permlevel': 0,
-		'reqd': 1,
-		'trigger': u'Client'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'depends_on': u"eval:doc.taxable=='No'",
-		'doctype': u'DocField',
-		'fieldname': u'exemption_limit',
-		'fieldtype': u'Currency',
-		'hidden': 1,
-		'label': u'Exemption Limit',
-		'oldfieldname': u'exemption_limit',
-		'oldfieldtype': u'Currency',
-		'permlevel': 0
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-03-27 14:35:54", 
+  "modified_by": "Administrator", 
+  "modified": "2012-03-27 14:35:54"
+ }, 
+ {
+  "section_style": "Simple", 
+  "module": "HR", 
+  "server_code_error": " ", 
+  "allow_trash": 1, 
+  "doctype": "DocType", 
+  "autoname": "field:earning_name", 
+  "document_type": "Master", 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "show_in_menu": 0, 
+  "version": 13
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Earning Type", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Earning Type", 
+  "read": 1, 
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "write": 1, 
+  "parenttype": "DocType", 
+  "cancel": 1, 
+  "permlevel": 0, 
+  "parentfield": "permissions"
+ }, 
+ {
+  "name": "Earning Type", 
+  "doctype": "DocType"
+ }, 
+ {
+  "role": "System Manager", 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "role": "HR User", 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "role": "HR Manager", 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "oldfieldtype": "Small Text", 
+  "doctype": "DocField", 
+  "label": "Trash Reason", 
+  "oldfieldname": "trash_reason", 
+  "fieldname": "trash_reason", 
+  "fieldtype": "Small Text", 
+  "permlevel": 1
+ }, 
+ {
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Name", 
+  "oldfieldname": "earning_name", 
+  "fieldname": "earning_name", 
+  "fieldtype": "Data", 
+  "reqd": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Small Text", 
+  "doctype": "DocField", 
+  "label": "Description", 
+  "oldfieldname": "description", 
+  "width": "300px", 
+  "fieldname": "description", 
+  "fieldtype": "Small Text", 
+  "reqd": 0, 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Select", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Taxable", 
+  "oldfieldname": "taxable", 
+  "trigger": "Client", 
+  "fieldname": "taxable", 
+  "fieldtype": "Select", 
+  "reqd": 1, 
+  "options": "\nYes\nNo", 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Currency", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Exemption Limit", 
+  "oldfieldname": "exemption_limit", 
+  "fieldname": "exemption_limit", 
+  "fieldtype": "Currency", 
+  "depends_on": "eval:doc.taxable=='No'", 
+  "hidden": 1, 
+  "permlevel": 0
+ }
 ]
\ No newline at end of file
diff --git a/hr/doctype/employee_education/employee_education.txt b/hr/doctype/employee_education/employee_education.txt
index b920fd6..aa75955 100644
--- a/hr/doctype/employee_education/employee_education.txt
+++ b/hr/doctype/employee_education/employee_education.txt
@@ -1,103 +1,82 @@
-# DocType, Employee Education
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:35:54',
-		'docstatus': 0,
-		'modified': '2012-03-27 14:35:54',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'istable': 1,
-		'module': u'HR',
-		'name': '__common__',
-		'section_style': u'Simple',
-		'server_code_error': u' ',
-		'show_in_menu': 0,
-		'version': 5
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'Employee Education',
-		'parentfield': u'fields',
-		'parenttype': u'DocType',
-		'permlevel': 0
-	},
-
-	# DocType, Employee Education
-	{
-		'doctype': 'DocType',
-		'name': u'Employee Education'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'school_univ',
-		'fieldtype': u'Small Text',
-		'label': u'School/University',
-		'oldfieldname': u'school_univ',
-		'oldfieldtype': u'Small Text'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'qualification',
-		'fieldtype': u'Data',
-		'label': u'Qualification',
-		'oldfieldname': u'qualification',
-		'oldfieldtype': u'Data',
-		'width': u'100px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'level',
-		'fieldtype': u'Select',
-		'label': u'Level',
-		'oldfieldname': u'level',
-		'oldfieldtype': u'Select',
-		'options': u'Graduate\nPost Graduate\nUnder Graduate'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'year_of_passing',
-		'fieldtype': u'Int',
-		'label': u'Year of Passing',
-		'oldfieldname': u'year_of_passing',
-		'oldfieldtype': u'Int'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'class_per',
-		'fieldtype': u'Data',
-		'label': u'Class / Percentage',
-		'oldfieldname': u'class_per',
-		'oldfieldtype': u'Data'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'maj_opt_subj',
-		'fieldtype': u'Text',
-		'label': u'Major/Optional Subjects',
-		'oldfieldname': u'maj_opt_subj',
-		'oldfieldtype': u'Text'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-03-27 14:35:54", 
+  "modified_by": "Administrator", 
+  "modified": "2012-03-27 14:35:54"
+ }, 
+ {
+  "section_style": "Simple", 
+  "istable": 1, 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "module": "HR", 
+  "show_in_menu": 0, 
+  "version": 5, 
+  "server_code_error": " ", 
+  "doctype": "DocType"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Employee Education", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "permlevel": 0, 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "Employee Education", 
+  "doctype": "DocType"
+ }, 
+ {
+  "oldfieldtype": "Small Text", 
+  "doctype": "DocField", 
+  "label": "School/University", 
+  "oldfieldname": "school_univ", 
+  "fieldname": "school_univ", 
+  "fieldtype": "Small Text"
+ }, 
+ {
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Qualification", 
+  "oldfieldname": "qualification", 
+  "width": "100px", 
+  "fieldname": "qualification", 
+  "fieldtype": "Data"
+ }, 
+ {
+  "oldfieldtype": "Select", 
+  "doctype": "DocField", 
+  "label": "Level", 
+  "oldfieldname": "level", 
+  "fieldname": "level", 
+  "fieldtype": "Select", 
+  "options": "Graduate\nPost Graduate\nUnder Graduate"
+ }, 
+ {
+  "oldfieldtype": "Int", 
+  "doctype": "DocField", 
+  "label": "Year of Passing", 
+  "oldfieldname": "year_of_passing", 
+  "fieldname": "year_of_passing", 
+  "fieldtype": "Int"
+ }, 
+ {
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Class / Percentage", 
+  "oldfieldname": "class_per", 
+  "fieldname": "class_per", 
+  "fieldtype": "Data"
+ }, 
+ {
+  "oldfieldtype": "Text", 
+  "doctype": "DocField", 
+  "label": "Major/Optional Subjects", 
+  "oldfieldname": "maj_opt_subj", 
+  "fieldname": "maj_opt_subj", 
+  "fieldtype": "Text"
+ }
 ]
\ No newline at end of file
diff --git a/hr/doctype/employee_internal_work_history/employee_internal_work_history.txt b/hr/doctype/employee_internal_work_history/employee_internal_work_history.txt
index 3dcc1ff..d16eb22 100644
--- a/hr/doctype/employee_internal_work_history/employee_internal_work_history.txt
+++ b/hr/doctype/employee_internal_work_history/employee_internal_work_history.txt
@@ -1,104 +1,83 @@
-# DocType, Employee Internal Work History
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:35:57',
-		'docstatus': 0,
-		'modified': '2012-03-27 14:35:57',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'istable': 1,
-		'module': u'HR',
-		'name': '__common__',
-		'section_style': u'Simple',
-		'show_in_menu': 0,
-		'version': 6
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'Employee Internal Work History',
-		'parentfield': u'fields',
-		'parenttype': u'DocType',
-		'permlevel': 0
-	},
-
-	# DocType, Employee Internal Work History
-	{
-		'doctype': 'DocType',
-		'name': u'Employee Internal Work History'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'branch',
-		'fieldtype': u'Select',
-		'label': u'Branch',
-		'oldfieldname': u'branch',
-		'oldfieldtype': u'Select',
-		'options': u'link:Branch'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'department',
-		'fieldtype': u'Select',
-		'label': u'Department',
-		'oldfieldname': u'department',
-		'oldfieldtype': u'Select',
-		'options': u'link:Department'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'designation',
-		'fieldtype': u'Select',
-		'label': u'Designation',
-		'oldfieldname': u'designation',
-		'oldfieldtype': u'Select',
-		'options': u'link:Designation'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'grade',
-		'fieldtype': u'Select',
-		'label': u'Grade',
-		'oldfieldname': u'grade',
-		'oldfieldtype': u'Select',
-		'options': u'link:Grade'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'from_date',
-		'fieldtype': u'Date',
-		'label': u'From Date',
-		'oldfieldname': u'from_date',
-		'oldfieldtype': u'Date'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'to_date',
-		'fieldtype': u'Date',
-		'label': u'To Date',
-		'oldfieldname': u'to_date',
-		'oldfieldtype': u'Date'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-03-27 14:35:57", 
+  "modified_by": "Administrator", 
+  "modified": "2012-03-27 14:35:57"
+ }, 
+ {
+  "section_style": "Simple", 
+  "istable": 1, 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "module": "HR", 
+  "doctype": "DocType", 
+  "version": 6, 
+  "show_in_menu": 0
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Employee Internal Work History", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "permlevel": 0, 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "Employee Internal Work History", 
+  "doctype": "DocType"
+ }, 
+ {
+  "oldfieldtype": "Select", 
+  "doctype": "DocField", 
+  "label": "Branch", 
+  "oldfieldname": "branch", 
+  "fieldname": "branch", 
+  "fieldtype": "Select", 
+  "options": "link:Branch"
+ }, 
+ {
+  "oldfieldtype": "Select", 
+  "doctype": "DocField", 
+  "label": "Department", 
+  "oldfieldname": "department", 
+  "fieldname": "department", 
+  "fieldtype": "Select", 
+  "options": "link:Department"
+ }, 
+ {
+  "oldfieldtype": "Select", 
+  "doctype": "DocField", 
+  "label": "Designation", 
+  "oldfieldname": "designation", 
+  "fieldname": "designation", 
+  "fieldtype": "Select", 
+  "options": "link:Designation"
+ }, 
+ {
+  "oldfieldtype": "Select", 
+  "doctype": "DocField", 
+  "label": "Grade", 
+  "oldfieldname": "grade", 
+  "fieldname": "grade", 
+  "fieldtype": "Select", 
+  "options": "link:Grade"
+ }, 
+ {
+  "oldfieldtype": "Date", 
+  "doctype": "DocField", 
+  "label": "From Date", 
+  "oldfieldname": "from_date", 
+  "fieldname": "from_date", 
+  "fieldtype": "Date"
+ }, 
+ {
+  "oldfieldtype": "Date", 
+  "doctype": "DocField", 
+  "label": "To Date", 
+  "oldfieldname": "to_date", 
+  "fieldname": "to_date", 
+  "fieldtype": "Date"
+ }
 ]
\ No newline at end of file
diff --git a/hr/doctype/employee_training/employee_training.txt b/hr/doctype/employee_training/employee_training.txt
index c751836..fef26f3 100644
--- a/hr/doctype/employee_training/employee_training.txt
+++ b/hr/doctype/employee_training/employee_training.txt
@@ -1,95 +1,76 @@
-# DocType, Employee Training
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:35:59',
-		'docstatus': 0,
-		'modified': '2012-03-27 14:35:59',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'istable': 1,
-		'module': u'HR',
-		'name': '__common__',
-		'section_style': u'Simple',
-		'server_code_error': u' ',
-		'show_in_menu': 0,
-		'version': 5
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'Employee Training',
-		'parentfield': u'fields',
-		'parenttype': u'DocType',
-		'permlevel': 0
-	},
-
-	# DocType, Employee Training
-	{
-		'doctype': 'DocType',
-		'name': u'Employee Training'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'institute',
-		'fieldtype': u'Small Text',
-		'label': u'Institute / Conducted By',
-		'oldfieldname': u'institute',
-		'oldfieldtype': u'Small Text',
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'nature_of_training',
-		'fieldtype': u'Small Text',
-		'label': u'Program / Seminar Title',
-		'oldfieldname': u'nature_of_training',
-		'oldfieldtype': u'Small Text',
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'duration',
-		'fieldtype': u'Data',
-		'label': u'Duration',
-		'oldfieldname': u'duration',
-		'oldfieldtype': u'Data',
-		'reqd': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'loc',
-		'fieldtype': u'Data',
-		'label': u'Location',
-		'oldfieldname': u'loc',
-		'oldfieldtype': u'Data',
-		'reqd': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'certificate',
-		'fieldtype': u'Small Text',
-		'label': u'Certificate',
-		'oldfieldname': u'certificate',
-		'oldfieldtype': u'Small Text'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-03-27 14:35:59", 
+  "modified_by": "Administrator", 
+  "modified": "2012-03-27 14:35:59"
+ }, 
+ {
+  "section_style": "Simple", 
+  "istable": 1, 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "module": "HR", 
+  "show_in_menu": 0, 
+  "version": 5, 
+  "server_code_error": " ", 
+  "doctype": "DocType"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Employee Training", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "permlevel": 0, 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "Employee Training", 
+  "doctype": "DocType"
+ }, 
+ {
+  "oldfieldtype": "Small Text", 
+  "doctype": "DocField", 
+  "label": "Institute / Conducted By", 
+  "oldfieldname": "institute", 
+  "fieldname": "institute", 
+  "fieldtype": "Small Text", 
+  "reqd": 1
+ }, 
+ {
+  "oldfieldtype": "Small Text", 
+  "doctype": "DocField", 
+  "label": "Program / Seminar Title", 
+  "oldfieldname": "nature_of_training", 
+  "fieldname": "nature_of_training", 
+  "fieldtype": "Small Text", 
+  "reqd": 1
+ }, 
+ {
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Duration", 
+  "oldfieldname": "duration", 
+  "fieldname": "duration", 
+  "fieldtype": "Data", 
+  "reqd": 0
+ }, 
+ {
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Location", 
+  "oldfieldname": "loc", 
+  "fieldname": "loc", 
+  "fieldtype": "Data", 
+  "reqd": 0
+ }, 
+ {
+  "oldfieldtype": "Small Text", 
+  "doctype": "DocField", 
+  "label": "Certificate", 
+  "oldfieldname": "certificate", 
+  "fieldname": "certificate", 
+  "fieldtype": "Small Text"
+ }
 ]
\ No newline at end of file
diff --git a/hr/doctype/employment_type/employment_type.txt b/hr/doctype/employment_type/employment_type.txt
index 5768382..137ca06 100644
--- a/hr/doctype/employment_type/employment_type.txt
+++ b/hr/doctype/employment_type/employment_type.txt
@@ -1,97 +1,76 @@
-# DocType, Employment Type
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:35:55',
-		'docstatus': 0,
-		'modified': '2012-03-27 14:35:55',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'allow_trash': 1,
-		'autoname': u'field:employee_type_name',
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'document_type': u'Master',
-		'module': u'HR',
-		'name': '__common__',
-		'section_style': u'Simple',
-		'server_code_error': u' ',
-		'show_in_menu': 0,
-		'version': 16
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'Employment Type',
-		'parentfield': u'fields',
-		'parenttype': u'DocType'
-	},
-
-	# These values are common for all DocPerm
-	{
-		'cancel': 1,
-		'create': 1,
-		'doctype': u'DocPerm',
-		'name': '__common__',
-		'parent': u'Employment Type',
-		'parentfield': u'permissions',
-		'parenttype': u'DocType',
-		'permlevel': 0,
-		'read': 1,
-		'write': 1
-	},
-
-	# DocType, Employment Type
-	{
-		'doctype': 'DocType',
-		'name': u'Employment Type'
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm',
-		'role': u'System Manager'
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm',
-		'role': u'HR User'
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm',
-		'role': u'HR Manager'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'employee_type_name',
-		'fieldtype': u'Data',
-		'label': u'Employment Type',
-		'oldfieldname': u'employee_type_name',
-		'oldfieldtype': u'Data',
-		'permlevel': 0,
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'trash_reason',
-		'fieldtype': u'Small Text',
-		'label': u'Trash Reason',
-		'oldfieldname': u'trash_reason',
-		'oldfieldtype': u'Small Text',
-		'permlevel': 1
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-03-27 14:35:55", 
+  "modified_by": "Administrator", 
+  "modified": "2012-03-27 14:35:55"
+ }, 
+ {
+  "section_style": "Simple", 
+  "module": "HR", 
+  "server_code_error": " ", 
+  "allow_trash": 1, 
+  "doctype": "DocType", 
+  "autoname": "field:employee_type_name", 
+  "document_type": "Master", 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "show_in_menu": 0, 
+  "version": 16
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Employment Type", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Employment Type", 
+  "read": 1, 
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "write": 1, 
+  "parenttype": "DocType", 
+  "cancel": 1, 
+  "permlevel": 0, 
+  "parentfield": "permissions"
+ }, 
+ {
+  "name": "Employment Type", 
+  "doctype": "DocType"
+ }, 
+ {
+  "role": "System Manager", 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "role": "HR User", 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "role": "HR Manager", 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Employment Type", 
+  "oldfieldname": "employee_type_name", 
+  "fieldname": "employee_type_name", 
+  "fieldtype": "Data", 
+  "reqd": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Small Text", 
+  "doctype": "DocField", 
+  "label": "Trash Reason", 
+  "oldfieldname": "trash_reason", 
+  "fieldname": "trash_reason", 
+  "fieldtype": "Small Text", 
+  "permlevel": 1
+ }
 ]
\ No newline at end of file
diff --git a/hr/doctype/expense_claim_type/expense_claim_type.txt b/hr/doctype/expense_claim_type/expense_claim_type.txt
index a5c09c8..72825da 100644
--- a/hr/doctype/expense_claim_type/expense_claim_type.txt
+++ b/hr/doctype/expense_claim_type/expense_claim_type.txt
@@ -1,96 +1,75 @@
-# DocType, Expense Claim Type
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:35:55',
-		'docstatus': 0,
-		'modified': '2012-03-27 14:35:55',
-		'modified_by': u'Administrator',
-		'owner': u'harshada@webnotestech.com'
-	},
-
-	# These values are common for all DocType
-	{
-		'autoname': u'field:expense_type',
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'document_type': u'Master',
-		'module': u'HR',
-		'name': '__common__',
-		'section_style': u'Simple',
-		'server_code_error': u' ',
-		'version': 5
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'Expense Claim Type',
-		'parentfield': u'fields',
-		'parenttype': u'DocType',
-		'permlevel': 0
-	},
-
-	# These values are common for all DocPerm
-	{
-		'create': 1,
-		'doctype': u'DocPerm',
-		'name': '__common__',
-		'parent': u'Expense Claim Type',
-		'parentfield': u'permissions',
-		'parenttype': u'DocType',
-		'permlevel': 0,
-		'read': 1,
-		'write': 1
-	},
-
-	# DocType, Expense Claim Type
-	{
-		'doctype': 'DocType',
-		'name': u'Expense Claim Type'
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm',
-		'role': u'System Manager'
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm',
-		'role': u'HR Manager'
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm',
-		'role': u'System Manager'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'expense_type',
-		'fieldtype': u'Data',
-		'in_filter': 0,
-		'label': u'Expense Claim Type',
-		'oldfieldname': u'expense_type',
-		'oldfieldtype': u'Data',
-		'reqd': 1,
-		'search_index': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'description',
-		'fieldtype': u'Small Text',
-		'label': u'Description',
-		'oldfieldname': u'description',
-		'oldfieldtype': u'Small Text',
-		'width': u'300px'
-	}
+ {
+  "owner": "harshada@webnotestech.com", 
+  "docstatus": 0, 
+  "creation": "2012-03-27 14:35:55", 
+  "modified_by": "Administrator", 
+  "modified": "2012-03-27 14:35:55"
+ }, 
+ {
+  "section_style": "Simple", 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "module": "HR", 
+  "server_code_error": " ", 
+  "version": 5, 
+  "doctype": "DocType", 
+  "autoname": "field:expense_type", 
+  "document_type": "Master"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Expense Claim Type", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "permlevel": 0, 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Expense Claim Type", 
+  "read": 1, 
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "write": 1, 
+  "parenttype": "DocType", 
+  "permlevel": 0, 
+  "parentfield": "permissions"
+ }, 
+ {
+  "name": "Expense Claim Type", 
+  "doctype": "DocType"
+ }, 
+ {
+  "role": "System Manager", 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "role": "HR Manager", 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "role": "System Manager", 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "search_index": 0, 
+  "doctype": "DocField", 
+  "label": "Expense Claim Type", 
+  "oldfieldname": "expense_type", 
+  "fieldname": "expense_type", 
+  "fieldtype": "Data", 
+  "oldfieldtype": "Data", 
+  "reqd": 1, 
+  "in_filter": 0
+ }, 
+ {
+  "oldfieldtype": "Small Text", 
+  "doctype": "DocField", 
+  "label": "Description", 
+  "oldfieldname": "description", 
+  "width": "300px", 
+  "fieldname": "description", 
+  "fieldtype": "Small Text"
+ }
 ]
\ No newline at end of file
diff --git a/hr/doctype/grade/grade.txt b/hr/doctype/grade/grade.txt
index 2e14d9d..df4a28b 100644
--- a/hr/doctype/grade/grade.txt
+++ b/hr/doctype/grade/grade.txt
@@ -1,98 +1,77 @@
-# DocType, Grade
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:35:57',
-		'docstatus': 0,
-		'modified': '2012-03-27 14:35:57',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'allow_trash': 1,
-		'autoname': u'field:grade_name',
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'document_type': u'Master',
-		'module': u'HR',
-		'name': '__common__',
-		'section_style': u'Simple',
-		'server_code_error': u' ',
-		'show_in_menu': 0,
-		'version': 7
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'Grade',
-		'parentfield': u'fields',
-		'parenttype': u'DocType'
-	},
-
-	# These values are common for all DocPerm
-	{
-		'cancel': 1,
-		'create': 1,
-		'doctype': u'DocPerm',
-		'name': '__common__',
-		'parent': u'Grade',
-		'parentfield': u'permissions',
-		'parenttype': u'DocType',
-		'permlevel': 0,
-		'read': 1,
-		'write': 1
-	},
-
-	# DocType, Grade
-	{
-		'doctype': 'DocType',
-		'name': u'Grade'
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm',
-		'role': u'System Manager'
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm',
-		'role': u'HR User',
-		'submit': 0
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm',
-		'role': u'HR Manager'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'trash_reason',
-		'fieldtype': u'Small Text',
-		'label': u'Trash Reason',
-		'oldfieldname': u'trash_reason',
-		'oldfieldtype': u'Small Text',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'grade_name',
-		'fieldtype': u'Data',
-		'label': u'Grade',
-		'oldfieldname': u'grade_name',
-		'oldfieldtype': u'Data',
-		'permlevel': 0,
-		'reqd': 1
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-03-27 14:35:57", 
+  "modified_by": "Administrator", 
+  "modified": "2012-03-27 14:35:57"
+ }, 
+ {
+  "section_style": "Simple", 
+  "module": "HR", 
+  "server_code_error": " ", 
+  "allow_trash": 1, 
+  "doctype": "DocType", 
+  "autoname": "field:grade_name", 
+  "document_type": "Master", 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "show_in_menu": 0, 
+  "version": 7
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Grade", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Grade", 
+  "read": 1, 
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "write": 1, 
+  "parenttype": "DocType", 
+  "cancel": 1, 
+  "permlevel": 0, 
+  "parentfield": "permissions"
+ }, 
+ {
+  "name": "Grade", 
+  "doctype": "DocType"
+ }, 
+ {
+  "role": "System Manager", 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "role": "HR User", 
+  "doctype": "DocPerm", 
+  "submit": 0
+ }, 
+ {
+  "role": "HR Manager", 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "oldfieldtype": "Small Text", 
+  "doctype": "DocField", 
+  "label": "Trash Reason", 
+  "oldfieldname": "trash_reason", 
+  "fieldname": "trash_reason", 
+  "fieldtype": "Small Text", 
+  "permlevel": 1
+ }, 
+ {
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Grade", 
+  "oldfieldname": "grade_name", 
+  "fieldname": "grade_name", 
+  "fieldtype": "Data", 
+  "reqd": 1, 
+  "permlevel": 0
+ }
 ]
\ No newline at end of file
diff --git a/hr/doctype/holiday/holiday.txt b/hr/doctype/holiday/holiday.txt
index 0d210c5..612a47a 100644
--- a/hr/doctype/holiday/holiday.txt
+++ b/hr/doctype/holiday/holiday.txt
@@ -1,60 +1,47 @@
-# DocType, Holiday
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:35:57',
-		'docstatus': 0,
-		'modified': '2012-03-27 14:35:57',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'istable': 1,
-		'module': u'HR',
-		'name': '__common__',
-		'section_style': u'Simple',
-		'server_code_error': u' ',
-		'show_in_menu': 0,
-		'version': 2
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'Holiday',
-		'parentfield': u'fields',
-		'parenttype': u'DocType',
-		'permlevel': 0
-	},
-
-	# DocType, Holiday
-	{
-		'doctype': 'DocType',
-		'name': u'Holiday'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'description',
-		'fieldtype': u'Small Text',
-		'label': u'Description',
-		'width': u'300px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'holiday_date',
-		'fieldtype': u'Date',
-		'label': u'Date',
-		'oldfieldname': u'holiday_date',
-		'oldfieldtype': u'Date'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-03-27 14:35:57", 
+  "modified_by": "Administrator", 
+  "modified": "2012-03-27 14:35:57"
+ }, 
+ {
+  "section_style": "Simple", 
+  "istable": 1, 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "module": "HR", 
+  "show_in_menu": 0, 
+  "version": 2, 
+  "server_code_error": " ", 
+  "doctype": "DocType"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Holiday", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "permlevel": 0, 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "Holiday", 
+  "doctype": "DocType"
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Description", 
+  "width": "300px", 
+  "fieldname": "description", 
+  "fieldtype": "Small Text"
+ }, 
+ {
+  "oldfieldtype": "Date", 
+  "doctype": "DocField", 
+  "label": "Date", 
+  "oldfieldname": "holiday_date", 
+  "fieldname": "holiday_date", 
+  "fieldtype": "Date"
+ }
 ]
\ No newline at end of file
diff --git a/hr/doctype/holiday_list/holiday_list.txt b/hr/doctype/holiday_list/holiday_list.txt
index ce0e49f..a4060fa 100644
--- a/hr/doctype/holiday_list/holiday_list.txt
+++ b/hr/doctype/holiday_list/holiday_list.txt
@@ -1,153 +1,124 @@
-# DocType, Holiday List
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:35:57',
-		'docstatus': 0,
-		'modified': '2012-03-27 14:35:57',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'allow_trash': 1,
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'document_type': u'Master',
-		'module': u'HR',
-		'name': '__common__',
-		'section_style': u'Simple',
-		'server_code_error': u' ',
-		'show_in_menu': 0,
-		'version': 17
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'Holiday List',
-		'parentfield': u'fields',
-		'parenttype': u'DocType'
-	},
-
-	# These values are common for all DocPerm
-	{
-		'cancel': 1,
-		'create': 1,
-		'doctype': u'DocPerm',
-		'name': '__common__',
-		'parent': u'Holiday List',
-		'parentfield': u'permissions',
-		'parenttype': u'DocType',
-		'permlevel': 0,
-		'read': 1,
-		'role': u'HR Manager',
-		'write': 1
-	},
-
-	# DocType, Holiday List
-	{
-		'doctype': 'DocType',
-		'name': u'Holiday List'
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'trash_reason',
-		'fieldtype': u'Small Text',
-		'label': u'Trash Reason',
-		'oldfieldname': u'trash_reason',
-		'oldfieldtype': u'Small Text',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'holiday_list_name',
-		'fieldtype': u'Data',
-		'label': u'Holiday List Name',
-		'oldfieldname': u'holiday_list_name',
-		'oldfieldtype': u'Data',
-		'permlevel': 0,
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'is_default',
-		'fieldtype': u'Check',
-		'label': u'Default',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'fiscal_year',
-		'fieldtype': u'Select',
-		'in_filter': 1,
-		'label': u'Fiscal Year',
-		'oldfieldname': u'fiscal_year',
-		'oldfieldtype': u'Link',
-		'options': u'link:Fiscal Year',
-		'permlevel': 0,
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'weekly_off',
-		'fieldtype': u'Select',
-		'label': u'Weekly Off',
-		'no_copy': 1,
-		'options': u'\nSunday\nMonday\nTuesday\nWednesday\nThursday\nFriday\nSaturday',
-		'permlevel': 0,
-		'print_hide': 1,
-		'report_hide': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'get_weekly_off_dates',
-		'fieldtype': u'Button',
-		'label': u'Get Weekly Off Dates',
-		'options': u'get_weekly_off_dates',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'holiday_list_details',
-		'fieldtype': u'Table',
-		'label': u'Holidays',
-		'oldfieldname': u'holiday_list_details',
-		'oldfieldtype': u'Table',
-		'options': u'Holiday',
-		'permlevel': 0,
-		'reqd': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'clear_table',
-		'fieldtype': u'Button',
-		'label': u'Clear Table',
-		'options': u'clear_table',
-		'permlevel': 0
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-03-27 14:35:57", 
+  "modified_by": "Administrator", 
+  "modified": "2012-03-27 14:35:57"
+ }, 
+ {
+  "section_style": "Simple", 
+  "module": "HR", 
+  "server_code_error": " ", 
+  "allow_trash": 1, 
+  "doctype": "DocType", 
+  "document_type": "Master", 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "show_in_menu": 0, 
+  "version": 17
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Holiday List", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "parentfield": "fields"
+ }, 
+ {
+  "parent": "Holiday List", 
+  "read": 1, 
+  "doctype": "DocPerm", 
+  "cancel": 1, 
+  "name": "__common__", 
+  "create": 1, 
+  "write": 1, 
+  "parenttype": "DocType", 
+  "role": "HR Manager", 
+  "permlevel": 0, 
+  "parentfield": "permissions"
+ }, 
+ {
+  "name": "Holiday List", 
+  "doctype": "DocType"
+ }, 
+ {
+  "doctype": "DocPerm"
+ }, 
+ {
+  "oldfieldtype": "Small Text", 
+  "doctype": "DocField", 
+  "label": "Trash Reason", 
+  "oldfieldname": "trash_reason", 
+  "fieldname": "trash_reason", 
+  "fieldtype": "Small Text", 
+  "permlevel": 1
+ }, 
+ {
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Holiday List Name", 
+  "oldfieldname": "holiday_list_name", 
+  "fieldname": "holiday_list_name", 
+  "fieldtype": "Data", 
+  "reqd": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Default", 
+  "fieldname": "is_default", 
+  "fieldtype": "Check", 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Link", 
+  "doctype": "DocField", 
+  "label": "Fiscal Year", 
+  "oldfieldname": "fiscal_year", 
+  "permlevel": 0, 
+  "fieldname": "fiscal_year", 
+  "fieldtype": "Select", 
+  "reqd": 1, 
+  "options": "link:Fiscal Year", 
+  "in_filter": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "no_copy": 1, 
+  "doctype": "DocField", 
+  "label": "Weekly Off", 
+  "permlevel": 0, 
+  "fieldname": "weekly_off", 
+  "fieldtype": "Select", 
+  "options": "\nSunday\nMonday\nTuesday\nWednesday\nThursday\nFriday\nSaturday", 
+  "report_hide": 1
+ }, 
+ {
+  "doctype": "DocField", 
+  "options": "get_weekly_off_dates", 
+  "fieldname": "get_weekly_off_dates", 
+  "fieldtype": "Button", 
+  "label": "Get Weekly Off Dates", 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Table", 
+  "doctype": "DocField", 
+  "label": "Holidays", 
+  "oldfieldname": "holiday_list_details", 
+  "permlevel": 0, 
+  "fieldname": "holiday_list_details", 
+  "fieldtype": "Table", 
+  "reqd": 0, 
+  "options": "Holiday"
+ }, 
+ {
+  "doctype": "DocField", 
+  "options": "clear_table", 
+  "fieldname": "clear_table", 
+  "fieldtype": "Button", 
+  "label": "Clear Table", 
+  "permlevel": 0
+ }
 ]
\ No newline at end of file
diff --git a/hr/doctype/leave_allocation/leave_allocation.txt b/hr/doctype/leave_allocation/leave_allocation.txt
index 7a9f915..3846354 100644
--- a/hr/doctype/leave_allocation/leave_allocation.txt
+++ b/hr/doctype/leave_allocation/leave_allocation.txt
@@ -1,266 +1,221 @@
-# DocType, Leave Allocation
 [
-
-	# These values are common in all dictionaries
-	{
-		u'creation': '2012-10-02 18:51:49',
-		u'docstatus': 0,
-		u'modified': '2012-10-17 12:51:44',
-		u'modified_by': u'Administrator',
-		u'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'_last_update': u'1317365120',
-		'autoname': u'LAL/.#####',
-		'colour': u'White:FFF',
-		u'doctype': u'DocType',
-		'is_submittable': 1,
-		'module': u'HR',
-		u'name': u'__common__',
-		'search_fields': u'employee,employee_name,leave_type,total_leaves_allocated,fiscal_year',
-		'section_style': u'Simple',
-		'server_code_error': u' ',
-		'show_in_menu': 0,
-		'version': 1
-	},
-
-	# These values are common for all DocField
-	{
-		u'doctype': u'DocField',
-		u'name': u'__common__',
-		'parent': u'Leave Allocation',
-		'parentfield': u'fields',
-		'parenttype': u'DocType'
-	},
-
-	# These values are common for all DocPerm
-	{
-		u'doctype': u'DocPerm',
-		u'name': u'__common__',
-		'parent': u'Leave Allocation',
-		'parentfield': u'permissions',
-		'parenttype': u'DocType',
-		'read': 1
-	},
-
-	# DocType, Leave Allocation
-	{
-		u'doctype': u'DocType',
-		u'name': u'Leave Allocation'
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'column_break0',
-		'fieldtype': u'Column Break',
-		'permlevel': 0,
-		'width': u'50%'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		u'doctype': u'DocField',
-		'fieldname': u'employee',
-		'fieldtype': u'Link',
-		'in_filter': 1,
-		'label': u'Employee',
-		'oldfieldname': u'employee',
-		'oldfieldtype': u'Link',
-		'options': u'Employee',
-		'permlevel': 0,
-		'reqd': 1,
-		'search_index': 1,
-		'trigger': u'Client'
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'employee_name',
-		'fieldtype': u'Data',
-		'in_filter': 1,
-		'label': u'Employee Name',
-		'permlevel': 1,
-		'search_index': 1
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		u'doctype': u'DocField',
-		'fieldname': u'leave_type',
-		'fieldtype': u'Select',
-		'in_filter': 1,
-		'label': u'Leave Type',
-		'oldfieldname': u'leave_type',
-		'oldfieldtype': u'Link',
-		'options': u'link:Leave Type',
-		'permlevel': 0,
-		'reqd': 1,
-		'search_index': 1,
-		'trigger': u'Client'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'default': u'Today',
-		u'doctype': u'DocField',
-		'fieldname': u'posting_date',
-		'fieldtype': u'Date',
-		'hidden': 0,
-		'label': u'Posting Date',
-		'no_copy': 1,
-		'oldfieldname': u'date',
-		'oldfieldtype': u'Date',
-		'permlevel': 1,
-		'reqd': 1,
-		'search_index': 0
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		u'doctype': u'DocField',
-		'fieldname': u'fiscal_year',
-		'fieldtype': u'Select',
-		'in_filter': 1,
-		'label': u'Fiscal Year',
-		'oldfieldname': u'fiscal_year',
-		'oldfieldtype': u'Data',
-		'options': u'link:Fiscal Year',
-		'permlevel': 0,
-		'reqd': 1,
-		'search_index': 1,
-		'trigger': u'Client'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		u'doctype': u'DocField',
-		'fieldname': u'description',
-		'fieldtype': u'Small Text',
-		'hidden': 0,
-		'label': u'Description',
-		'oldfieldname': u'reason',
-		'oldfieldtype': u'Small Text',
-		'permlevel': 0,
-		'width': u'300px'
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'column_break1',
-		'fieldtype': u'Column Break',
-		'permlevel': 0,
-		'width': u'50%'
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'carry_forward',
-		'fieldtype': u'Check',
-		'label': u'Carry Forward',
-		'permlevel': 0,
-		'trigger': u'Client'
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'carry_forwarded_leaves',
-		'fieldtype': u'Currency',
-		'label': u'Carry Forwarded Leaves',
-		'permlevel': 0,
-		'trigger': u'Client'
-	},
-
-	# DocField
-	{
-		'allow_on_submit': 1,
-		u'doctype': u'DocField',
-		'fieldname': u'new_leaves_allocated',
-		'fieldtype': u'Currency',
-		'label': u'New Leaves Allocated',
-		'permlevel': 0,
-		'trigger': u'Client'
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'total_leaves_allocated',
-		'fieldtype': u'Currency',
-		'label': u'Total Leaves Allocated',
-		'permlevel': 1,
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'amended_from',
-		'fieldtype': u'Data',
-		'hidden': 0,
-		'label': u'Amended From',
-		'no_copy': 1,
-		'oldfieldname': u'amended_from',
-		'oldfieldtype': u'Data',
-		'permlevel': 1,
-		'print_hide': 1
-	},
-
-	# DocField
-	{
-		'description': u'The date at which current entry is corrected in the system.',
-		u'doctype': u'DocField',
-		'fieldname': u'amendment_date',
-		'fieldtype': u'Date',
-		'hidden': 0,
-		'label': u'Amendment Date',
-		'no_copy': 1,
-		'oldfieldname': u'amendment_date',
-		'oldfieldtype': u'Date',
-		'permlevel': 1,
-		'print_hide': 1
-	},
-
-	# DocPerm
-	{
-		'amend': 1,
-		'cancel': 1,
-		'create': 1,
-		u'doctype': u'DocPerm',
-		'match': u'owner',
-		'permlevel': 0,
-		'role': u'HR User',
-		'submit': 1,
-		'write': 1
-	},
-
-	# DocPerm
-	{
-		'amend': 1,
-		'cancel': 1,
-		'create': 1,
-		u'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'HR Manager',
-		'submit': 1,
-		'write': 1
-	},
-
-	# DocPerm
-	{
-		u'doctype': u'DocPerm',
-		'permlevel': 1,
-		'role': u'All'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-10-02 18:51:49", 
+  "modified_by": "Administrator", 
+  "modified": "2012-10-17 12:51:44"
+ }, 
+ {
+  "section_style": "Simple", 
+  "is_submittable": 1, 
+  "search_fields": "employee,employee_name,leave_type,total_leaves_allocated,fiscal_year", 
+  "module": "HR", 
+  "doctype": "DocType", 
+  "server_code_error": " ", 
+  "autoname": "LAL/.#####", 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "_last_update": "1317365120", 
+  "show_in_menu": 0, 
+  "version": 1
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Leave Allocation", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Leave Allocation", 
+  "read": 1, 
+  "doctype": "DocPerm", 
+  "parenttype": "DocType", 
+  "parentfield": "permissions"
+ }, 
+ {
+  "name": "Leave Allocation", 
+  "doctype": "DocType"
+ }, 
+ {
+  "doctype": "DocField", 
+  "width": "50%", 
+  "fieldname": "column_break0", 
+  "fieldtype": "Column Break", 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Link", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Employee", 
+  "oldfieldname": "employee", 
+  "permlevel": 0, 
+  "trigger": "Client", 
+  "fieldname": "employee", 
+  "fieldtype": "Link", 
+  "search_index": 1, 
+  "reqd": 1, 
+  "options": "Employee", 
+  "in_filter": 1
+ }, 
+ {
+  "search_index": 1, 
+  "doctype": "DocField", 
+  "label": "Employee Name", 
+  "fieldname": "employee_name", 
+  "fieldtype": "Data", 
+  "permlevel": 1, 
+  "in_filter": 1
+ }, 
+ {
+  "oldfieldtype": "Link", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Leave Type", 
+  "oldfieldname": "leave_type", 
+  "permlevel": 0, 
+  "trigger": "Client", 
+  "fieldname": "leave_type", 
+  "fieldtype": "Select", 
+  "search_index": 1, 
+  "reqd": 1, 
+  "options": "link:Leave Type", 
+  "in_filter": 1
+ }, 
+ {
+  "no_copy": 1, 
+  "oldfieldtype": "Date", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Posting Date", 
+  "oldfieldname": "date", 
+  "default": "Today", 
+  "fieldname": "posting_date", 
+  "fieldtype": "Date", 
+  "search_index": 0, 
+  "reqd": 1, 
+  "hidden": 0, 
+  "permlevel": 1
+ }, 
+ {
+  "oldfieldtype": "Data", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Fiscal Year", 
+  "oldfieldname": "fiscal_year", 
+  "permlevel": 0, 
+  "trigger": "Client", 
+  "fieldname": "fiscal_year", 
+  "fieldtype": "Select", 
+  "search_index": 1, 
+  "reqd": 1, 
+  "options": "link:Fiscal Year", 
+  "in_filter": 1
+ }, 
+ {
+  "oldfieldtype": "Small Text", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Description", 
+  "oldfieldname": "reason", 
+  "width": "300px", 
+  "fieldname": "description", 
+  "fieldtype": "Small Text", 
+  "hidden": 0, 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "width": "50%", 
+  "fieldname": "column_break1", 
+  "fieldtype": "Column Break", 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Carry Forward", 
+  "trigger": "Client", 
+  "fieldname": "carry_forward", 
+  "fieldtype": "Check", 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Carry Forwarded Leaves", 
+  "trigger": "Client", 
+  "fieldname": "carry_forwarded_leaves", 
+  "fieldtype": "Currency", 
+  "permlevel": 0
+ }, 
+ {
+  "allow_on_submit": 1, 
+  "doctype": "DocField", 
+  "label": "New Leaves Allocated", 
+  "trigger": "Client", 
+  "fieldname": "new_leaves_allocated", 
+  "fieldtype": "Currency", 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Total Leaves Allocated", 
+  "fieldname": "total_leaves_allocated", 
+  "fieldtype": "Currency", 
+  "reqd": 1, 
+  "permlevel": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "no_copy": 1, 
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Amended From", 
+  "oldfieldname": "amended_from", 
+  "fieldname": "amended_from", 
+  "fieldtype": "Data", 
+  "hidden": 0, 
+  "permlevel": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "description": "The date at which current entry is corrected in the system.", 
+  "no_copy": 1, 
+  "oldfieldtype": "Date", 
+  "doctype": "DocField", 
+  "label": "Amendment Date", 
+  "oldfieldname": "amendment_date", 
+  "fieldname": "amendment_date", 
+  "fieldtype": "Date", 
+  "hidden": 0, 
+  "permlevel": 1
+ }, 
+ {
+  "amend": 1, 
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "submit": 1, 
+  "write": 1, 
+  "role": "HR User", 
+  "cancel": 1, 
+  "permlevel": 0, 
+  "match": "owner"
+ }, 
+ {
+  "amend": 1, 
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "submit": 1, 
+  "write": 1, 
+  "role": "HR Manager", 
+  "cancel": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "role": "All", 
+  "permlevel": 1, 
+  "doctype": "DocPerm"
+ }
 ]
\ No newline at end of file
diff --git a/hr/doctype/leave_control_panel/leave_control_panel.txt b/hr/doctype/leave_control_panel/leave_control_panel.txt
index 9d05ada..a3472f3 100644
--- a/hr/doctype/leave_control_panel/leave_control_panel.txt
+++ b/hr/doctype/leave_control_panel/leave_control_panel.txt
@@ -1,228 +1,181 @@
-# DocType, Leave Control Panel
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:35:59',
-		'docstatus': 0,
-		'modified': '2012-03-27 14:35:59',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'_last_update': u'1297751828',
-		'allow_copy': 1,
-		'allow_email': 1,
-		'allow_print': 1,
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'hide_heading': 0,
-		'hide_toolbar': 0,
-		'issingle': 1,
-		'module': u'HR',
-		'name': '__common__',
-		'read_only': 1,
-		'section_style': u'Simple',
-		'server_code_error': u' ',
-		'show_in_menu': 0,
-		'version': 162
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'Leave Control Panel',
-		'parentfield': u'fields',
-		'parenttype': u'DocType',
-		'permlevel': 0
-	},
-
-	# These values are common for all DocPerm
-	{
-		'doctype': u'DocPerm',
-		'name': '__common__',
-		'parent': u'Leave Control Panel',
-		'parentfield': u'permissions',
-		'parenttype': u'DocType',
-		'read': 1
-	},
-
-	# DocType, Leave Control Panel
-	{
-		'doctype': 'DocType',
-		'name': u'Leave Control Panel'
-	},
-
-	# DocPerm
-	{
-		'create': 1,
-		'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'System Manager',
-		'write': 1
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm',
-		'permlevel': 1,
-		'role': u'System Manager'
-	},
-
-	# DocPerm
-	{
-		'create': 1,
-		'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'HR User',
-		'write': 1
-	},
-
-	# DocPerm
-	{
-		'create': 1,
-		'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'HR Manager',
-		'write': 1
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm',
-		'permlevel': 1,
-		'role': u'HR User'
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm',
-		'permlevel': 1,
-		'role': u'HR Manager'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'column_break0',
-		'fieldtype': u'Column Break',
-		'width': u'50%'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'description': u'Leave blank if considered for all employee types',
-		'doctype': u'DocField',
-		'fieldname': u'employee_type',
-		'fieldtype': u'Select',
-		'label': u'Employee Type',
-		'options': u'link:Employment Type'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'description': u'Leave blank if considered for all branches',
-		'doctype': u'DocField',
-		'fieldname': u'branch',
-		'fieldtype': u'Select',
-		'label': u'Branch',
-		'options': u'link:Branch'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'description': u'Leave blank if considered for all departments',
-		'doctype': u'DocField',
-		'fieldname': u'department',
-		'fieldtype': u'Select',
-		'label': u'Department',
-		'options': u'link:Department'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'description': u'Leave blank if considered for all designations',
-		'doctype': u'DocField',
-		'fieldname': u'designation',
-		'fieldtype': u'Select',
-		'label': u'Designation',
-		'options': u'link:Designation'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'description': u'Leave blank if considered for all grades',
-		'doctype': u'DocField',
-		'fieldname': u'grade',
-		'fieldtype': u'Select',
-		'label': u'Grade',
-		'options': u'link:Grade'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'column_break1',
-		'fieldtype': u'Column Break',
-		'width': u'50%'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'fiscal_year',
-		'fieldtype': u'Select',
-		'in_filter': 1,
-		'label': u'Fiscal Year',
-		'options': u'link:Fiscal Year',
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'leave_type',
-		'fieldtype': u'Select',
-		'label': u'Leave Type',
-		'options': u'link:Leave Type',
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'description': u"Please select Carry Forward if you also want to include previous fiscal year's balance leaves to this fiscal year",
-		'doctype': u'DocField',
-		'fieldname': u'carry_forward',
-		'fieldtype': u'Check',
-		'label': u'Carry Forward'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'no_of_days',
-		'fieldtype': u'Currency',
-		'label': u'New Leaves Allocated (In Days)',
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'doctype': u'DocField',
-		'fieldname': u'allocate',
-		'fieldtype': u'Button',
-		'label': u'Allocate',
-		'options': u'allocate_leave',
-		'trigger': u'Server'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-03-27 14:35:59", 
+  "modified_by": "Administrator", 
+  "modified": "2012-03-27 14:35:59"
+ }, 
+ {
+  "section_style": "Simple", 
+  "allow_print": 1, 
+  "module": "HR", 
+  "doctype": "DocType", 
+  "server_code_error": " ", 
+  "read_only": 1, 
+  "allow_email": 1, 
+  "hide_heading": 0, 
+  "issingle": 1, 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "_last_update": "1297751828", 
+  "show_in_menu": 0, 
+  "version": 162, 
+  "hide_toolbar": 0, 
+  "allow_copy": 1
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Leave Control Panel", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "permlevel": 0, 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Leave Control Panel", 
+  "read": 1, 
+  "doctype": "DocPerm", 
+  "parenttype": "DocType", 
+  "parentfield": "permissions"
+ }, 
+ {
+  "name": "Leave Control Panel", 
+  "doctype": "DocType"
+ }, 
+ {
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "write": 1, 
+  "role": "System Manager", 
+  "permlevel": 0
+ }, 
+ {
+  "role": "System Manager", 
+  "permlevel": 1, 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "write": 1, 
+  "role": "HR User", 
+  "permlevel": 0
+ }, 
+ {
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "write": 1, 
+  "role": "HR Manager", 
+  "permlevel": 0
+ }, 
+ {
+  "role": "HR User", 
+  "permlevel": 1, 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "role": "HR Manager", 
+  "permlevel": 1, 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "width": "50%", 
+  "fieldname": "column_break0", 
+  "fieldtype": "Column Break", 
+  "doctype": "DocField"
+ }, 
+ {
+  "description": "Leave blank if considered for all employee types", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Employee Type", 
+  "fieldname": "employee_type", 
+  "fieldtype": "Select", 
+  "options": "link:Employment Type"
+ }, 
+ {
+  "description": "Leave blank if considered for all branches", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Branch", 
+  "fieldname": "branch", 
+  "fieldtype": "Select", 
+  "options": "link:Branch"
+ }, 
+ {
+  "description": "Leave blank if considered for all departments", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Department", 
+  "fieldname": "department", 
+  "fieldtype": "Select", 
+  "options": "link:Department"
+ }, 
+ {
+  "description": "Leave blank if considered for all designations", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Designation", 
+  "fieldname": "designation", 
+  "fieldtype": "Select", 
+  "options": "link:Designation"
+ }, 
+ {
+  "description": "Leave blank if considered for all grades", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Grade", 
+  "fieldname": "grade", 
+  "fieldtype": "Select", 
+  "options": "link:Grade"
+ }, 
+ {
+  "width": "50%", 
+  "fieldname": "column_break1", 
+  "fieldtype": "Column Break", 
+  "doctype": "DocField"
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Fiscal Year", 
+  "fieldname": "fiscal_year", 
+  "fieldtype": "Select", 
+  "reqd": 1, 
+  "options": "link:Fiscal Year", 
+  "in_filter": 1
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Leave Type", 
+  "fieldname": "leave_type", 
+  "fieldtype": "Select", 
+  "reqd": 1, 
+  "options": "link:Leave Type"
+ }, 
+ {
+  "description": "Please select Carry Forward if you also want to include previous fiscal year's balance leaves to this fiscal year", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Carry Forward", 
+  "fieldname": "carry_forward", 
+  "fieldtype": "Check"
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "New Leaves Allocated (In Days)", 
+  "fieldname": "no_of_days", 
+  "fieldtype": "Currency", 
+  "reqd": 1
+ }, 
+ {
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Allocate", 
+  "trigger": "Server", 
+  "fieldname": "allocate", 
+  "fieldtype": "Button", 
+  "options": "allocate_leave"
+ }
 ]
\ No newline at end of file
diff --git a/hr/doctype/leave_type/leave_type.txt b/hr/doctype/leave_type/leave_type.txt
index a6a1f2d..a2988e6 100644
--- a/hr/doctype/leave_type/leave_type.txt
+++ b/hr/doctype/leave_type/leave_type.txt
@@ -1,143 +1,114 @@
-# DocType, Leave Type
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:35:59',
-		'docstatus': 0,
-		'modified': '2012-03-27 14:35:59',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'allow_trash': 1,
-		'autoname': u'field:leave_type_name',
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'document_type': u'Master',
-		'module': u'HR',
-		'name': '__common__',
-		'section_style': u'Simple',
-		'server_code_error': u' ',
-		'show_in_menu': 0,
-		'version': 23
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'Leave Type',
-		'parentfield': u'fields',
-		'parenttype': u'DocType'
-	},
-
-	# These values are common for all DocPerm
-	{
-		'cancel': 1,
-		'create': 1,
-		'doctype': u'DocPerm',
-		'name': '__common__',
-		'parent': u'Leave Type',
-		'parentfield': u'permissions',
-		'parenttype': u'DocType',
-		'permlevel': 0,
-		'read': 1,
-		'write': 1
-	},
-
-	# DocType, Leave Type
-	{
-		'doctype': 'DocType',
-		'name': u'Leave Type'
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm',
-		'role': u'System Manager'
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm',
-		'role': u'HR User'
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm',
-		'role': u'HR Manager'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'trash_reason',
-		'fieldtype': u'Small Text',
-		'label': u'Trash Reason',
-		'oldfieldname': u'trash_reason',
-		'oldfieldtype': u'Small Text',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'leave_type_name',
-		'fieldtype': u'Data',
-		'label': u'Leave Type Name',
-		'oldfieldname': u'leave_type_name',
-		'oldfieldtype': u'Data',
-		'permlevel': 0,
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'max_days_allowed',
-		'fieldtype': u'Data',
-		'label': u'Max Days Leave Allowed',
-		'oldfieldname': u'max_days_allowed',
-		'oldfieldtype': u'Data',
-		'permlevel': 0,
-		'reqd': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'is_carry_forward',
-		'fieldtype': u'Check',
-		'label': u'Is Carry Forward',
-		'oldfieldname': u'is_carry_forward',
-		'oldfieldtype': u'Check',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'is_encash',
-		'fieldtype': u'Check',
-		'hidden': 1,
-		'label': u'Is Encash',
-		'oldfieldname': u'is_encash',
-		'oldfieldtype': u'Check',
-		'permlevel': 0,
-		'print_hide': 1,
-		'report_hide': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'is_lwp',
-		'fieldtype': u'Check',
-		'label': u'Is LWP',
-		'permlevel': 0
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-03-27 14:35:59", 
+  "modified_by": "Administrator", 
+  "modified": "2012-03-27 14:35:59"
+ }, 
+ {
+  "section_style": "Simple", 
+  "module": "HR", 
+  "server_code_error": " ", 
+  "allow_trash": 1, 
+  "doctype": "DocType", 
+  "autoname": "field:leave_type_name", 
+  "document_type": "Master", 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "show_in_menu": 0, 
+  "version": 23
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Leave Type", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Leave Type", 
+  "read": 1, 
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "write": 1, 
+  "parenttype": "DocType", 
+  "cancel": 1, 
+  "permlevel": 0, 
+  "parentfield": "permissions"
+ }, 
+ {
+  "name": "Leave Type", 
+  "doctype": "DocType"
+ }, 
+ {
+  "role": "System Manager", 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "role": "HR User", 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "role": "HR Manager", 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "oldfieldtype": "Small Text", 
+  "doctype": "DocField", 
+  "label": "Trash Reason", 
+  "oldfieldname": "trash_reason", 
+  "fieldname": "trash_reason", 
+  "fieldtype": "Small Text", 
+  "permlevel": 1
+ }, 
+ {
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Leave Type Name", 
+  "oldfieldname": "leave_type_name", 
+  "fieldname": "leave_type_name", 
+  "fieldtype": "Data", 
+  "reqd": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Max Days Leave Allowed", 
+  "oldfieldname": "max_days_allowed", 
+  "fieldname": "max_days_allowed", 
+  "fieldtype": "Data", 
+  "reqd": 0, 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Check", 
+  "doctype": "DocField", 
+  "label": "Is Carry Forward", 
+  "oldfieldname": "is_carry_forward", 
+  "fieldname": "is_carry_forward", 
+  "fieldtype": "Check", 
+  "permlevel": 0
+ }, 
+ {
+  "print_hide": 1, 
+  "oldfieldtype": "Check", 
+  "doctype": "DocField", 
+  "label": "Is Encash", 
+  "oldfieldname": "is_encash", 
+  "fieldname": "is_encash", 
+  "fieldtype": "Check", 
+  "hidden": 1, 
+  "permlevel": 0, 
+  "report_hide": 1
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Is LWP", 
+  "fieldname": "is_lwp", 
+  "fieldtype": "Check", 
+  "permlevel": 0
+ }
 ]
\ No newline at end of file
diff --git a/hr/doctype/other_income_detail/other_income_detail.txt b/hr/doctype/other_income_detail/other_income_detail.txt
index 93a9ea0..f5afa9f 100644
--- a/hr/doctype/other_income_detail/other_income_detail.txt
+++ b/hr/doctype/other_income_detail/other_income_detail.txt
@@ -1,133 +1,106 @@
-# DocType, Other Income Detail
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:35:59',
-		'docstatus': 0,
-		'modified': '2012-03-27 14:35:59',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'istable': 1,
-		'module': u'HR',
-		'name': '__common__',
-		'section_style': u'Simple',
-		'server_code_error': u' ',
-		'show_in_menu': 0,
-		'version': 6
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'Other Income Detail',
-		'parentfield': u'fields',
-		'parenttype': u'DocType'
-	},
-
-	# These values are common for all DocPerm
-	{
-		'doctype': u'DocPerm',
-		'name': '__common__',
-		'parent': u'Other Income Detail',
-		'parentfield': u'permissions',
-		'parenttype': u'DocType',
-		'read': 1,
-		'role': u'System Manager'
-	},
-
-	# DocType, Other Income Detail
-	{
-		'doctype': 'DocType',
-		'name': u'Other Income Detail'
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm',
-		'permlevel': 0,
-		'write': 1
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'particulars2',
-		'fieldtype': u'Small Text',
-		'label': u'Particulars',
-		'oldfieldname': u'particulars2',
-		'oldfieldtype': u'Small Text',
-		'permlevel': 1,
-		'reqd': 1,
-		'width': u'200px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'under_section2',
-		'fieldtype': u'Data',
-		'label': u'Under Section',
-		'oldfieldname': u'under_section2',
-		'oldfieldtype': u'Data',
-		'permlevel': 1,
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'max_limit2',
-		'fieldtype': u'Currency',
-		'label': u'Max. Limit',
-		'oldfieldname': u'max_limit2',
-		'oldfieldtype': u'Currency',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'actual_amount2',
-		'fieldtype': u'Currency',
-		'label': u'Actual Amount',
-		'oldfieldname': u'actual_amount2',
-		'oldfieldtype': u'Currency',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'eligible_amount2',
-		'fieldtype': u'Currency',
-		'label': u'Eligible Amount',
-		'oldfieldname': u'eligible_amount2',
-		'oldfieldtype': u'Currency',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'modified_amount2',
-		'fieldtype': u'Currency',
-		'label': u'Modified Amount',
-		'oldfieldname': u'modified_amount2',
-		'oldfieldtype': u'Currency',
-		'permlevel': 0
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-03-27 14:35:59", 
+  "modified_by": "Administrator", 
+  "modified": "2012-03-27 14:35:59"
+ }, 
+ {
+  "section_style": "Simple", 
+  "istable": 1, 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "module": "HR", 
+  "show_in_menu": 0, 
+  "version": 6, 
+  "server_code_error": " ", 
+  "doctype": "DocType"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Other Income Detail", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Other Income Detail", 
+  "read": 1, 
+  "doctype": "DocPerm", 
+  "parenttype": "DocType", 
+  "role": "System Manager", 
+  "parentfield": "permissions"
+ }, 
+ {
+  "name": "Other Income Detail", 
+  "doctype": "DocType"
+ }, 
+ {
+  "write": 1, 
+  "permlevel": 0, 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "permlevel": 1, 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "oldfieldtype": "Small Text", 
+  "doctype": "DocField", 
+  "label": "Particulars", 
+  "oldfieldname": "particulars2", 
+  "width": "200px", 
+  "fieldname": "particulars2", 
+  "fieldtype": "Small Text", 
+  "reqd": 1, 
+  "permlevel": 1
+ }, 
+ {
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Under Section", 
+  "oldfieldname": "under_section2", 
+  "fieldname": "under_section2", 
+  "fieldtype": "Data", 
+  "reqd": 1, 
+  "permlevel": 1
+ }, 
+ {
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Max. Limit", 
+  "oldfieldname": "max_limit2", 
+  "fieldname": "max_limit2", 
+  "fieldtype": "Currency", 
+  "permlevel": 1
+ }, 
+ {
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Actual Amount", 
+  "oldfieldname": "actual_amount2", 
+  "fieldname": "actual_amount2", 
+  "fieldtype": "Currency", 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Eligible Amount", 
+  "oldfieldname": "eligible_amount2", 
+  "fieldname": "eligible_amount2", 
+  "fieldtype": "Currency", 
+  "permlevel": 1
+ }, 
+ {
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Modified Amount", 
+  "oldfieldname": "modified_amount2", 
+  "fieldname": "modified_amount2", 
+  "fieldtype": "Currency", 
+  "permlevel": 0
+ }
 ]
\ No newline at end of file
diff --git a/hr/doctype/salary_manager/salary_manager.txt b/hr/doctype/salary_manager/salary_manager.txt
index 7c47f1c..173af8a 100644
--- a/hr/doctype/salary_manager/salary_manager.txt
+++ b/hr/doctype/salary_manager/salary_manager.txt
@@ -1,266 +1,207 @@
-# DocType, Salary Manager
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:35:59',
-		'docstatus': 0,
-		'modified': '2012-03-27 14:35:59',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'_last_update': u'1314253977',
-		'allow_copy': 1,
-		'allow_email': 1,
-		'allow_print': 1,
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'document_type': u'Other',
-		'issingle': 1,
-		'module': u'HR',
-		'name': '__common__',
-		'section_style': u'Simple',
-		'show_in_menu': 1,
-		'version': 30
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'Salary Manager',
-		'parentfield': u'fields',
-		'parenttype': u'DocType',
-		'permlevel': 0
-	},
-
-	# These values are common for all DocPerm
-	{
-		'create': 1,
-		'doctype': u'DocPerm',
-		'name': '__common__',
-		'parent': u'Salary Manager',
-		'parentfield': u'permissions',
-		'parenttype': u'DocType',
-		'permlevel': 0,
-		'read': 1,
-		'write': 1
-	},
-
-	# DocType, Salary Manager
-	{
-		'doctype': 'DocType',
-		'name': u'Salary Manager'
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm',
-		'role': u'System Manager'
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm',
-		'role': u'HR User'
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm',
-		'role': u'HR Manager'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'doctype': u'DocField',
-		'fieldname': u'document_description',
-		'fieldtype': u'HTML',
-		'label': u'Document Description',
-		'options': u'<div class="field_description">You can generate multiple salary slips based on the selected criteria, submit and mail those to the employee directly from here</div>'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'section_break0',
-		'fieldtype': u'Section Break'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'column_break0',
-		'fieldtype': u'Column Break',
-		'width': u'50%'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'company',
-		'fieldtype': u'Select',
-		'label': u'Company',
-		'options': u'link:Company',
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'branch',
-		'fieldtype': u'Link',
-		'label': u'Branch',
-		'options': u'Branch'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'department',
-		'fieldtype': u'Link',
-		'label': u'Department',
-		'options': u'Department'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'designation',
-		'fieldtype': u'Link',
-		'label': u'Designation',
-		'options': u'Designation'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'column_break1',
-		'fieldtype': u'Column Break',
-		'width': u'50%'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'grade',
-		'fieldtype': u'Select',
-		'label': u'Grade',
-		'options': u'link:Grade'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'doctype': u'DocField',
-		'fieldname': u'fiscal_year',
-		'fieldtype': u'Select',
-		'label': u'Fiscal Year',
-		'options': u'link:Fiscal Year',
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'doctype': u'DocField',
-		'fieldname': u'month',
-		'fieldtype': u'Select',
-		'label': u'Month',
-		'options': u'\n01\n02\n03\n04\n05\n06\n07\n08\n09\n10\n11\n12',
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'description': u'Check if you want to send salary slip in mail to each employee while submitting salary slip',
-		'doctype': u'DocField',
-		'fieldname': u'send_email',
-		'fieldtype': u'Check',
-		'label': u'Send Email'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'section_break1',
-		'fieldtype': u'Section Break'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'column_break2',
-		'fieldtype': u'Column Break',
-		'width': u'50%'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'description': u'Creates salary slip for above mentioned criteria.',
-		'doctype': u'DocField',
-		'fieldname': u'create_salary_slip',
-		'fieldtype': u'Button',
-		'label': u'Create Salary Slip',
-		'trigger': u'Client'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'column_break3',
-		'fieldtype': u'Column Break',
-		'width': u'25%'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'description': u'Submit all salary slips for the above selected criteria',
-		'doctype': u'DocField',
-		'fieldname': u'submit_salary_slip',
-		'fieldtype': u'Button',
-		'label': u'Submit Salary Slip',
-		'trigger': u'Client'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'column_break4',
-		'fieldtype': u'Column Break',
-		'width': u'25%'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'description': u'Create Bank Voucher for the total salary paid for the above selected criteria',
-		'doctype': u'DocField',
-		'fieldname': u'make_bank_voucher',
-		'fieldtype': u'Button',
-		'label': u'Make Bank Voucher',
-		'trigger': u'Client'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'section_break2',
-		'fieldtype': u'Section Break'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'activity_log',
-		'fieldtype': u'HTML',
-		'label': u'Activity Log'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-03-27 14:35:59", 
+  "modified_by": "Administrator", 
+  "modified": "2012-03-27 14:35:59"
+ }, 
+ {
+  "section_style": "Simple", 
+  "allow_print": 1, 
+  "module": "HR", 
+  "doctype": "DocType", 
+  "document_type": "Other", 
+  "allow_email": 1, 
+  "issingle": 1, 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "_last_update": "1314253977", 
+  "show_in_menu": 1, 
+  "version": 30, 
+  "allow_copy": 1
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Salary Manager", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "permlevel": 0, 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Salary Manager", 
+  "read": 1, 
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "write": 1, 
+  "parenttype": "DocType", 
+  "permlevel": 0, 
+  "parentfield": "permissions"
+ }, 
+ {
+  "name": "Salary Manager", 
+  "doctype": "DocType"
+ }, 
+ {
+  "role": "System Manager", 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "role": "HR User", 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "role": "HR Manager", 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Document Description", 
+  "fieldname": "document_description", 
+  "fieldtype": "HTML", 
+  "options": "<div class=\"field_description\">You can generate multiple salary slips based on the selected criteria, submit and mail those to the employee directly from here</div>"
+ }, 
+ {
+  "fieldname": "section_break0", 
+  "fieldtype": "Section Break", 
+  "doctype": "DocField"
+ }, 
+ {
+  "width": "50%", 
+  "fieldname": "column_break0", 
+  "fieldtype": "Column Break", 
+  "doctype": "DocField"
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Company", 
+  "fieldname": "company", 
+  "fieldtype": "Select", 
+  "reqd": 1, 
+  "options": "link:Company"
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Branch", 
+  "fieldname": "branch", 
+  "fieldtype": "Link", 
+  "options": "Branch"
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Department", 
+  "fieldname": "department", 
+  "fieldtype": "Link", 
+  "options": "Department"
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Designation", 
+  "fieldname": "designation", 
+  "fieldtype": "Link", 
+  "options": "Designation"
+ }, 
+ {
+  "width": "50%", 
+  "fieldname": "column_break1", 
+  "fieldtype": "Column Break", 
+  "doctype": "DocField"
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Grade", 
+  "fieldname": "grade", 
+  "fieldtype": "Select", 
+  "options": "link:Grade"
+ }, 
+ {
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Fiscal Year", 
+  "fieldname": "fiscal_year", 
+  "fieldtype": "Select", 
+  "reqd": 1, 
+  "options": "link:Fiscal Year"
+ }, 
+ {
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Month", 
+  "fieldname": "month", 
+  "fieldtype": "Select", 
+  "reqd": 1, 
+  "options": "\n01\n02\n03\n04\n05\n06\n07\n08\n09\n10\n11\n12"
+ }, 
+ {
+  "description": "Check if you want to send salary slip in mail to each employee while submitting salary slip", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Send Email", 
+  "fieldname": "send_email", 
+  "fieldtype": "Check"
+ }, 
+ {
+  "fieldname": "section_break1", 
+  "fieldtype": "Section Break", 
+  "doctype": "DocField"
+ }, 
+ {
+  "width": "50%", 
+  "fieldname": "column_break2", 
+  "fieldtype": "Column Break", 
+  "doctype": "DocField"
+ }, 
+ {
+  "description": "Creates salary slip for above mentioned criteria.", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Create Salary Slip", 
+  "trigger": "Client", 
+  "fieldname": "create_salary_slip", 
+  "fieldtype": "Button"
+ }, 
+ {
+  "width": "25%", 
+  "fieldname": "column_break3", 
+  "fieldtype": "Column Break", 
+  "doctype": "DocField"
+ }, 
+ {
+  "description": "Submit all salary slips for the above selected criteria", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Submit Salary Slip", 
+  "trigger": "Client", 
+  "fieldname": "submit_salary_slip", 
+  "fieldtype": "Button"
+ }, 
+ {
+  "width": "25%", 
+  "fieldname": "column_break4", 
+  "fieldtype": "Column Break", 
+  "doctype": "DocField"
+ }, 
+ {
+  "description": "Create Bank Voucher for the total salary paid for the above selected criteria", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Make Bank Voucher", 
+  "trigger": "Client", 
+  "fieldname": "make_bank_voucher", 
+  "fieldtype": "Button"
+ }, 
+ {
+  "fieldname": "section_break2", 
+  "fieldtype": "Section Break", 
+  "doctype": "DocField"
+ }, 
+ {
+  "doctype": "DocField", 
+  "fieldname": "activity_log", 
+  "fieldtype": "HTML", 
+  "label": "Activity Log"
+ }
 ]
\ No newline at end of file
diff --git a/hr/doctype/salary_slip_deduction/salary_slip_deduction.txt b/hr/doctype/salary_slip_deduction/salary_slip_deduction.txt
index e76a1ba..2272aea 100644
--- a/hr/doctype/salary_slip_deduction/salary_slip_deduction.txt
+++ b/hr/doctype/salary_slip_deduction/salary_slip_deduction.txt
@@ -1,104 +1,83 @@
-# DocType, Salary Slip Deduction
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:36:00',
-		'docstatus': 0,
-		'modified': '2012-03-27 14:36:00',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'istable': 1,
-		'module': u'HR',
-		'name': '__common__',
-		'section_style': u'Simple',
-		'server_code_error': u' ',
-		'show_in_menu': 0,
-		'version': 9
-	},
-
-	# These values are common for all DocField
-	{
-		'colour': u'White:FFF',
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'Salary Slip Deduction',
-		'parentfield': u'fields',
-		'parenttype': u'DocType'
-	},
-
-	# These values are common for all DocPerm
-	{
-		'create': 1,
-		'doctype': u'DocPerm',
-		'name': '__common__',
-		'parent': u'Salary Slip Deduction',
-		'parentfield': u'permissions',
-		'parenttype': u'DocType',
-		'permlevel': 0,
-		'read': 1,
-		'role': u'System Manager',
-		'write': 1
-	},
-
-	# DocType, Salary Slip Deduction
-	{
-		'doctype': 'DocType',
-		'name': u'Salary Slip Deduction'
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'd_type',
-		'fieldtype': u'Link',
-		'label': u'Type',
-		'oldfieldname': u'd_type',
-		'oldfieldtype': u'Data',
-		'options': u'Deduction Type',
-		'permlevel': 0,
-		'width': u'200px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'd_amount',
-		'fieldtype': u'Currency',
-		'label': u'Amount',
-		'oldfieldname': u'd_amount',
-		'oldfieldtype': u'Currency',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'd_modified_amount',
-		'fieldtype': u'Currency',
-		'label': u'Modified Amount',
-		'permlevel': 0,
-		'trigger': u'Client'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'd_depends_on_lwp',
-		'fieldtype': u'Check',
-		'label': u'Depends on LWP',
-		'permlevel': 0,
-		'trigger': u'Client'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-03-27 14:36:00", 
+  "modified_by": "Administrator", 
+  "modified": "2012-03-27 14:36:00"
+ }, 
+ {
+  "section_style": "Simple", 
+  "istable": 1, 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "module": "HR", 
+  "show_in_menu": 0, 
+  "version": 9, 
+  "server_code_error": " ", 
+  "doctype": "DocType"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Salary Slip Deduction", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "parentfield": "fields"
+ }, 
+ {
+  "parent": "Salary Slip Deduction", 
+  "read": 1, 
+  "name": "__common__", 
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "write": 1, 
+  "parenttype": "DocType", 
+  "role": "System Manager", 
+  "permlevel": 0, 
+  "parentfield": "permissions"
+ }, 
+ {
+  "name": "Salary Slip Deduction", 
+  "doctype": "DocType"
+ }, 
+ {
+  "doctype": "DocPerm"
+ }, 
+ {
+  "permlevel": 0, 
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Type", 
+  "oldfieldname": "d_type", 
+  "width": "200px", 
+  "fieldname": "d_type", 
+  "fieldtype": "Link", 
+  "options": "Deduction Type"
+ }, 
+ {
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Amount", 
+  "oldfieldname": "d_amount", 
+  "fieldname": "d_amount", 
+  "fieldtype": "Currency", 
+  "permlevel": 1
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Modified Amount", 
+  "trigger": "Client", 
+  "fieldname": "d_modified_amount", 
+  "fieldtype": "Currency", 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Depends on LWP", 
+  "trigger": "Client", 
+  "fieldname": "d_depends_on_lwp", 
+  "fieldtype": "Check", 
+  "permlevel": 0
+ }
 ]
\ No newline at end of file
diff --git a/hr/doctype/salary_slip_earning/salary_slip_earning.txt b/hr/doctype/salary_slip_earning/salary_slip_earning.txt
index d8c4c9b..b8ad596 100644
--- a/hr/doctype/salary_slip_earning/salary_slip_earning.txt
+++ b/hr/doctype/salary_slip_earning/salary_slip_earning.txt
@@ -1,105 +1,84 @@
-# DocType, Salary Slip Earning
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:36:00',
-		'docstatus': 0,
-		'modified': '2012-03-27 14:36:00',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'istable': 1,
-		'module': u'HR',
-		'name': '__common__',
-		'section_style': u'Simple',
-		'server_code_error': u' ',
-		'show_in_menu': 0,
-		'version': 7
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'Salary Slip Earning',
-		'parentfield': u'fields',
-		'parenttype': u'DocType'
-	},
-
-	# These values are common for all DocPerm
-	{
-		'create': 1,
-		'doctype': u'DocPerm',
-		'name': '__common__',
-		'parent': u'Salary Slip Earning',
-		'parentfield': u'permissions',
-		'parenttype': u'DocType',
-		'permlevel': 0,
-		'read': 1,
-		'role': u'System Manager',
-		'write': 1
-	},
-
-	# DocType, Salary Slip Earning
-	{
-		'doctype': 'DocType',
-		'name': u'Salary Slip Earning'
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'e_type',
-		'fieldtype': u'Link',
-		'label': u'Type',
-		'oldfieldname': u'e_type',
-		'oldfieldtype': u'Data',
-		'options': u'Earning Type',
-		'permlevel': 0,
-		'width': u'200px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'e_amount',
-		'fieldtype': u'Currency',
-		'label': u'Amount',
-		'oldfieldname': u'e_amount',
-		'oldfieldtype': u'Currency',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'doctype': u'DocField',
-		'fieldname': u'e_modified_amount',
-		'fieldtype': u'Currency',
-		'label': u'Modified Amount',
-		'permlevel': 0,
-		'trigger': u'Client'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'doctype': u'DocField',
-		'fieldname': u'e_depends_on_lwp',
-		'fieldtype': u'Check',
-		'label': u'Depends on LWP',
-		'permlevel': 0,
-		'trigger': u'Client'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-03-27 14:36:00", 
+  "modified_by": "Administrator", 
+  "modified": "2012-03-27 14:36:00"
+ }, 
+ {
+  "section_style": "Simple", 
+  "istable": 1, 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "module": "HR", 
+  "show_in_menu": 0, 
+  "version": 7, 
+  "server_code_error": " ", 
+  "doctype": "DocType"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Salary Slip Earning", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "parentfield": "fields"
+ }, 
+ {
+  "parent": "Salary Slip Earning", 
+  "read": 1, 
+  "name": "__common__", 
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "write": 1, 
+  "parenttype": "DocType", 
+  "role": "System Manager", 
+  "permlevel": 0, 
+  "parentfield": "permissions"
+ }, 
+ {
+  "name": "Salary Slip Earning", 
+  "doctype": "DocType"
+ }, 
+ {
+  "doctype": "DocPerm"
+ }, 
+ {
+  "permlevel": 0, 
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Type", 
+  "oldfieldname": "e_type", 
+  "width": "200px", 
+  "fieldname": "e_type", 
+  "fieldtype": "Link", 
+  "options": "Earning Type"
+ }, 
+ {
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Amount", 
+  "oldfieldname": "e_amount", 
+  "fieldname": "e_amount", 
+  "fieldtype": "Currency", 
+  "permlevel": 1
+ }, 
+ {
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Modified Amount", 
+  "trigger": "Client", 
+  "fieldname": "e_modified_amount", 
+  "fieldtype": "Currency", 
+  "permlevel": 0
+ }, 
+ {
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Depends on LWP", 
+  "trigger": "Client", 
+  "fieldname": "e_depends_on_lwp", 
+  "fieldtype": "Check", 
+  "permlevel": 0
+ }
 ]
\ No newline at end of file
diff --git a/hr/doctype/salary_structure_deduction/salary_structure_deduction.txt b/hr/doctype/salary_structure_deduction/salary_structure_deduction.txt
index 1815ca3..1f4d246 100644
--- a/hr/doctype/salary_structure_deduction/salary_structure_deduction.txt
+++ b/hr/doctype/salary_structure_deduction/salary_structure_deduction.txt
@@ -1,74 +1,59 @@
-# DocType, Salary Structure Deduction
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:35:54',
-		'docstatus': 0,
-		'modified': '2012-03-27 14:35:54',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'istable': 1,
-		'module': u'HR',
-		'name': '__common__',
-		'section_style': u'Simple',
-		'server_code_error': u' ',
-		'show_in_menu': 0,
-		'version': 14
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'Salary Structure Deduction',
-		'parentfield': u'fields',
-		'parenttype': u'DocType',
-		'permlevel': 0
-	},
-
-	# DocType, Salary Structure Deduction
-	{
-		'doctype': 'DocType',
-		'name': u'Salary Structure Deduction'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'd_type',
-		'fieldtype': u'Link',
-		'label': u'Type',
-		'oldfieldname': u'd_type',
-		'oldfieldtype': u'Select',
-		'options': u'Deduction Type',
-		'reqd': 1,
-		'width': u'200px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'd_modified_amt',
-		'fieldtype': u'Currency',
-		'label': u'Amount',
-		'oldfieldname': u'd_modified_amt',
-		'oldfieldtype': u'Currency'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'depend_on_lwp',
-		'fieldtype': u'Check',
-		'label': u'Depend on LWP',
-		'oldfieldname': u'depend_on_lwp',
-		'oldfieldtype': u'Check'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-03-27 14:35:54", 
+  "modified_by": "Administrator", 
+  "modified": "2012-03-27 14:35:54"
+ }, 
+ {
+  "section_style": "Simple", 
+  "istable": 1, 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "module": "HR", 
+  "show_in_menu": 0, 
+  "version": 14, 
+  "server_code_error": " ", 
+  "doctype": "DocType"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Salary Structure Deduction", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "permlevel": 0, 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "Salary Structure Deduction", 
+  "doctype": "DocType"
+ }, 
+ {
+  "oldfieldtype": "Select", 
+  "doctype": "DocField", 
+  "label": "Type", 
+  "oldfieldname": "d_type", 
+  "width": "200px", 
+  "fieldname": "d_type", 
+  "fieldtype": "Link", 
+  "reqd": 1, 
+  "options": "Deduction Type"
+ }, 
+ {
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Amount", 
+  "oldfieldname": "d_modified_amt", 
+  "fieldname": "d_modified_amt", 
+  "fieldtype": "Currency"
+ }, 
+ {
+  "oldfieldtype": "Check", 
+  "doctype": "DocField", 
+  "label": "Depend on LWP", 
+  "oldfieldname": "depend_on_lwp", 
+  "fieldname": "depend_on_lwp", 
+  "fieldtype": "Check"
+ }
 ]
\ No newline at end of file
diff --git a/hr/doctype/salary_structure_earning/salary_structure_earning.txt b/hr/doctype/salary_structure_earning/salary_structure_earning.txt
index 09ac7f5..93961d5 100644
--- a/hr/doctype/salary_structure_earning/salary_structure_earning.txt
+++ b/hr/doctype/salary_structure_earning/salary_structure_earning.txt
@@ -1,77 +1,62 @@
-# DocType, Salary Structure Earning
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:35:54',
-		'docstatus': 0,
-		'modified': '2012-03-27 14:35:54',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'hide_heading': 0,
-		'hide_toolbar': 0,
-		'istable': 1,
-		'module': u'HR',
-		'name': '__common__',
-		'section_style': u'Simple',
-		'server_code_error': u' ',
-		'show_in_menu': 0,
-		'version': 26
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'Salary Structure Earning',
-		'parentfield': u'fields',
-		'parenttype': u'DocType',
-		'permlevel': 0
-	},
-
-	# DocType, Salary Structure Earning
-	{
-		'doctype': 'DocType',
-		'name': u'Salary Structure Earning'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'e_type',
-		'fieldtype': u'Link',
-		'label': u'Type',
-		'oldfieldname': u'e_type',
-		'oldfieldtype': u'Data',
-		'options': u'Earning Type',
-		'reqd': 1,
-		'width': u'200px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'modified_value',
-		'fieldtype': u'Currency',
-		'label': u'Amount',
-		'oldfieldname': u'modified_value',
-		'oldfieldtype': u'Currency',
-		'trigger': u'Client'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'depend_on_lwp',
-		'fieldtype': u'Check',
-		'label': u'Depend on LWP',
-		'oldfieldname': u'depend_on_lwp',
-		'oldfieldtype': u'Check'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-03-27 14:35:54", 
+  "modified_by": "Administrator", 
+  "modified": "2012-03-27 14:35:54"
+ }, 
+ {
+  "section_style": "Simple", 
+  "istable": 1, 
+  "module": "HR", 
+  "doctype": "DocType", 
+  "show_in_menu": 0, 
+  "hide_heading": 0, 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "server_code_error": " ", 
+  "version": 26, 
+  "hide_toolbar": 0
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Salary Structure Earning", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "permlevel": 0, 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "Salary Structure Earning", 
+  "doctype": "DocType"
+ }, 
+ {
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Type", 
+  "oldfieldname": "e_type", 
+  "width": "200px", 
+  "fieldname": "e_type", 
+  "fieldtype": "Link", 
+  "reqd": 1, 
+  "options": "Earning Type"
+ }, 
+ {
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Amount", 
+  "oldfieldname": "modified_value", 
+  "trigger": "Client", 
+  "fieldname": "modified_value", 
+  "fieldtype": "Currency"
+ }, 
+ {
+  "oldfieldtype": "Check", 
+  "doctype": "DocField", 
+  "label": "Depend on LWP", 
+  "oldfieldname": "depend_on_lwp", 
+  "fieldname": "depend_on_lwp", 
+  "fieldtype": "Check"
+ }
 ]
\ No newline at end of file
diff --git a/hr/page/hr_home/hr_home.txt b/hr/page/hr_home/hr_home.txt
index a5a4ba9..e58fa6f 100644
--- a/hr/page/hr_home/hr_home.txt
+++ b/hr/page/hr_home/hr_home.txt
@@ -1,28 +1,21 @@
-# Page, hr-home
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-02-21 13:24:05',
-		'docstatus': 0,
-		'modified': '2012-02-21 13:24:05',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all Page
-	{
-		'doctype': 'Page',
-		'module': u'HR',
-		'name': '__common__',
-		'page_name': u'hr-home',
-		'standard': u'Yes',
-		'title': u'Human Resources Home'
-	},
-
-	# Page, hr-home
-	{
-		'doctype': 'Page',
-		'name': u'hr-home'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-02-21 13:24:05", 
+  "modified_by": "Administrator", 
+  "modified": "2012-02-21 13:24:05"
+ }, 
+ {
+  "name": "__common__", 
+  "title": "Human Resources Home", 
+  "module": "HR", 
+  "doctype": "Page", 
+  "page_name": "hr-home", 
+  "standard": "Yes"
+ }, 
+ {
+  "name": "hr-home", 
+  "doctype": "Page"
+ }
 ]
\ No newline at end of file
diff --git a/hr/search_criteria/employee_appraisals/employee_appraisals.txt b/hr/search_criteria/employee_appraisals/employee_appraisals.txt
index c338770..ce12a0e 100644
--- a/hr/search_criteria/employee_appraisals/employee_appraisals.txt
+++ b/hr/search_criteria/employee_appraisals/employee_appraisals.txt
@@ -1,33 +1,26 @@
-# Search Criteria, employee_appraisals
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-04-03 12:49:51',
-		'docstatus': 0,
-		'modified': '2012-04-03 12:49:51',
-		'modified_by': u'Administrator',
-		'owner': u'ashwini@webnotestech.com'
-	},
-
-	# These values are common for all Search Criteria
-	{
-		'columns': u'Appraisal\x01ID,Appraisal\x01Status,Appraisal\x01Employee,Appraisal\x01Employee Name,Appraisal\x01Start Date,Appraisal\x01End Date,Appraisal\x01Approver,Appraisal\x01Total Score',
-		'criteria_name': u'Employee Appraisals',
-		'doc_type': u'Appraisal',
-		'doctype': 'Search Criteria',
-		'filters': u"{'Appraisal\x01Saved':1,'Appraisal\x01Submitted':1,'Appraisal\x01Status':'','Appraisal\x01Fiscal Year':''}",
-		'module': u'HR',
-		'name': '__common__',
-		'page_len': 50,
-		'sort_by': u'`tabAppraisal`.`name`',
-		'sort_order': u'DESC',
-		'standard': u'Yes'
-	},
-
-	# Search Criteria, employee_appraisals
-	{
-		'doctype': 'Search Criteria',
-		'name': u'employee_appraisals'
-	}
+ {
+  "owner": "ashwini@webnotestech.com", 
+  "docstatus": 0, 
+  "creation": "2012-04-03 12:49:51", 
+  "modified_by": "Administrator", 
+  "modified": "2012-04-03 12:49:51"
+ }, 
+ {
+  "module": "HR", 
+  "standard": "Yes", 
+  "sort_order": "DESC", 
+  "filters": "{'Appraisal\u0001Saved':1,'Appraisal\u0001Submitted':1,'Appraisal\u0001Status':'','Appraisal\u0001Fiscal Year':''}", 
+  "doctype": "Search Criteria", 
+  "doc_type": "Appraisal", 
+  "name": "__common__", 
+  "sort_by": "`tabAppraisal`.`name`", 
+  "page_len": 50, 
+  "criteria_name": "Employee Appraisals", 
+  "columns": "Appraisal\u0001ID,Appraisal\u0001Status,Appraisal\u0001Employee,Appraisal\u0001Employee Name,Appraisal\u0001Start Date,Appraisal\u0001End Date,Appraisal\u0001Approver,Appraisal\u0001Total Score"
+ }, 
+ {
+  "name": "employee_appraisals", 
+  "doctype": "Search Criteria"
+ }
 ]
\ No newline at end of file
diff --git a/hr/search_criteria/employee_information/employee_information.txt b/hr/search_criteria/employee_information/employee_information.txt
index 84cb448..d054613 100644
--- a/hr/search_criteria/employee_information/employee_information.txt
+++ b/hr/search_criteria/employee_information/employee_information.txt
@@ -1,33 +1,26 @@
-# Search Criteria, employee_information
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-04-03 12:49:51',
-		'docstatus': 0,
-		'modified': '2012-04-03 12:49:51',
-		'modified_by': u'Administrator',
-		'owner': u'harshada@webnotestech.com'
-	},
-
-	# These values are common for all Search Criteria
-	{
-		'columns': u'Employee\x01ID,Employee\x01Employee Name,Employee\x01Employee Number,Employee\x01Date of Joining,Employee\x01Gender,Employee\x01Date of Birth,Employee\x01Employment Type,Employee\x01Scheduled Confirmation Date,Employee\x01Contract End Date,Employee\x01Status,Employee\x01Branch,Employee\x01Department,Employee\x01Designation,Employee\x01Grade,Employee\x01Reports to,Employee\x01Email (By company),Employee\x01Bank Name,Employee\x01Relieving Date',
-		'criteria_name': u'Employee Information',
-		'doc_type': u'Employee',
-		'doctype': 'Search Criteria',
-		'filters': u"{'Employee\x01Saved':1,'Employee\x01Submitted':1,'Employee\x01Gender':'','Employee\x01Month of Birth':'','Employee\x01Status':''}",
-		'module': u'HR',
-		'name': '__common__',
-		'page_len': 50,
-		'sort_by': u'`tabEmployee`.`name`',
-		'sort_order': u'DESC',
-		'standard': u'Yes'
-	},
-
-	# Search Criteria, employee_information
-	{
-		'doctype': 'Search Criteria',
-		'name': u'employee_information'
-	}
+ {
+  "owner": "harshada@webnotestech.com", 
+  "docstatus": 0, 
+  "creation": "2012-04-03 12:49:51", 
+  "modified_by": "Administrator", 
+  "modified": "2012-04-03 12:49:51"
+ }, 
+ {
+  "module": "HR", 
+  "standard": "Yes", 
+  "sort_order": "DESC", 
+  "filters": "{'Employee\u0001Saved':1,'Employee\u0001Submitted':1,'Employee\u0001Gender':'','Employee\u0001Month of Birth':'','Employee\u0001Status':''}", 
+  "doctype": "Search Criteria", 
+  "doc_type": "Employee", 
+  "name": "__common__", 
+  "sort_by": "`tabEmployee`.`name`", 
+  "page_len": 50, 
+  "criteria_name": "Employee Information", 
+  "columns": "Employee\u0001ID,Employee\u0001Employee Name,Employee\u0001Employee Number,Employee\u0001Date of Joining,Employee\u0001Gender,Employee\u0001Date of Birth,Employee\u0001Employment Type,Employee\u0001Scheduled Confirmation Date,Employee\u0001Contract End Date,Employee\u0001Status,Employee\u0001Branch,Employee\u0001Department,Employee\u0001Designation,Employee\u0001Grade,Employee\u0001Reports to,Employee\u0001Email (By company),Employee\u0001Bank Name,Employee\u0001Relieving Date"
+ }, 
+ {
+  "name": "employee_information", 
+  "doctype": "Search Criteria"
+ }
 ]
\ No newline at end of file
diff --git a/hr/search_criteria/employee_leave_balance_report/employee_leave_balance_report.txt b/hr/search_criteria/employee_leave_balance_report/employee_leave_balance_report.txt
index 7a7f049..74c0d82 100644
--- a/hr/search_criteria/employee_leave_balance_report/employee_leave_balance_report.txt
+++ b/hr/search_criteria/employee_leave_balance_report/employee_leave_balance_report.txt
@@ -1,34 +1,27 @@
-# Search Criteria, employeewise_balance_leave_report
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2010-12-14 10:33:09',
-		'docstatus': 0,
-		'modified': '2011-10-31 15:42:36',
-		'modified_by': 'Administrator',
-		'owner': 'harshada@webnotestech.com'
-	},
-
-	# These values are common for all Search Criteria
-	{
-		'columns': 'Employee\x01ID',
-		'criteria_name': 'Employee Leave Balance Report',
-		'description': 'Employeewise Balance Leave Report',
-		'doc_type': 'Employee',
-		'doctype': 'Search Criteria',
-		'filters': "{'Employee\x01Saved':1,'Employee\x01Submitted':1,'Employee\x01Gender':'','Employee\x01Month of Birth':'','Employee\x01Status':'Active'}",
-		'module': 'HR',
-		'name': '__common__',
-		'page_len': 100,
-		'sort_by': '`tabEmployee`.`name`',
-		'sort_order': 'ASC',
-		'standard': 'Yes'
-	},
-
-	# Search Criteria, employeewise_balance_leave_report
-	{
-		'doctype': 'Search Criteria',
-		'name': 'employeewise_balance_leave_report'
-	}
+ {
+  "owner": "harshada@webnotestech.com", 
+  "docstatus": 0, 
+  "creation": "2010-12-14 10:33:09", 
+  "modified_by": "Administrator", 
+  "modified": "2011-10-31 15:42:36"
+ }, 
+ {
+  "description": "Employeewise Balance Leave Report", 
+  "module": "HR", 
+  "standard": "Yes", 
+  "sort_order": "ASC", 
+  "filters": "{'Employee\u0001Saved':1,'Employee\u0001Submitted':1,'Employee\u0001Gender':'','Employee\u0001Month of Birth':'','Employee\u0001Status':'Active'}", 
+  "doc_type": "Employee", 
+  "name": "__common__", 
+  "doctype": "Search Criteria", 
+  "sort_by": "`tabEmployee`.`name`", 
+  "page_len": 100, 
+  "criteria_name": "Employee Leave Balance Report", 
+  "columns": "Employee\u0001ID"
+ }, 
+ {
+  "name": "employeewise_balance_leave_report", 
+  "doctype": "Search Criteria"
+ }
 ]
\ No newline at end of file
diff --git a/hr/search_criteria/employees_birthday/employees_birthday.txt b/hr/search_criteria/employees_birthday/employees_birthday.txt
index 42cfff2..a96b869 100644
--- a/hr/search_criteria/employees_birthday/employees_birthday.txt
+++ b/hr/search_criteria/employees_birthday/employees_birthday.txt
@@ -1,33 +1,26 @@
-# Search Criteria, employees_birthday
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-04-03 12:49:51',
-		'docstatus': 0,
-		'modified': '2012-04-03 12:49:51',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all Search Criteria
-	{
-		'columns': u'Employee\x01ID,Employee\x01Employee Name,Employee\x01Department,Employee\x01Gender,Employee\x01Date of Birth,Employee\x01Month of Birth',
-		'criteria_name': u"Employee's Birthday",
-		'doc_type': u'Employee',
-		'doctype': 'Search Criteria',
-		'filters': u"{'Employee\x01Saved':1,'Employee\x01Gender':'','Employee\x01Month of Birth':'May','Employee\x01Status':''}",
-		'module': u'HR',
-		'name': '__common__',
-		'page_len': 50,
-		'sort_by': u'`tabEmployee`.`name`',
-		'sort_order': u'DESC',
-		'standard': u'Yes'
-	},
-
-	# Search Criteria, employees_birthday
-	{
-		'doctype': 'Search Criteria',
-		'name': u'employees_birthday'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-04-03 12:49:51", 
+  "modified_by": "Administrator", 
+  "modified": "2012-04-03 12:49:51"
+ }, 
+ {
+  "module": "HR", 
+  "standard": "Yes", 
+  "sort_order": "DESC", 
+  "filters": "{'Employee\u0001Saved':1,'Employee\u0001Gender':'','Employee\u0001Month of Birth':'May','Employee\u0001Status':''}", 
+  "doctype": "Search Criteria", 
+  "doc_type": "Employee", 
+  "name": "__common__", 
+  "sort_by": "`tabEmployee`.`name`", 
+  "page_len": 50, 
+  "criteria_name": "Employee's Birthday", 
+  "columns": "Employee\u0001ID,Employee\u0001Employee Name,Employee\u0001Department,Employee\u0001Gender,Employee\u0001Date of Birth,Employee\u0001Month of Birth"
+ }, 
+ {
+  "name": "employees_birthday", 
+  "doctype": "Search Criteria"
+ }
 ]
\ No newline at end of file
diff --git a/hr/search_criteria/expense_claims/expense_claims.txt b/hr/search_criteria/expense_claims/expense_claims.txt
index 0032df5..f1324d2 100644
--- a/hr/search_criteria/expense_claims/expense_claims.txt
+++ b/hr/search_criteria/expense_claims/expense_claims.txt
@@ -1,33 +1,26 @@
-# Search Criteria, expense_claims
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-30 13:33:32',
-		'docstatus': 0,
-		'modified': '2012-03-30 13:33:32',
-		'modified_by': u'Administrator',
-		'owner': u'ashwini@webnotestech.com'
-	},
-
-	# These values are common for all Search Criteria
-	{
-		'columns': u'Expense Claim\x01ID,Expense Claim\x01Approval Status,Expense Claim\x01From Employee,Expense Claim\x01Employee Name,Expense Claim\x01Approver,Expense Claim\x01Posting Date,Expense Claim\x01Total Claimed Amount,Expense Claim\x01Total Sanctioned Amount',
-		'criteria_name': u'Expense Claims',
-		'doc_type': u'Expense Claim',
-		'doctype': 'Search Criteria',
-		'filters': u"{'Expense Claim\x01Saved':1,'Expense Claim\x01Submitted':1,'Expense Claim\x01Approval Status':'','Expense Claim\x01Fiscal Year':''}",
-		'module': u'HR',
-		'name': '__common__',
-		'page_len': 50,
-		'sort_by': u'`tabExpense Claim`.`name`',
-		'sort_order': u'DESC',
-		'standard': u'Yes'
-	},
-
-	# Search Criteria, expense_claims
-	{
-		'doctype': 'Search Criteria',
-		'name': u'expense_claims'
-	}
+ {
+  "owner": "ashwini@webnotestech.com", 
+  "docstatus": 0, 
+  "creation": "2012-03-30 13:33:32", 
+  "modified_by": "Administrator", 
+  "modified": "2012-03-30 13:33:32"
+ }, 
+ {
+  "module": "HR", 
+  "standard": "Yes", 
+  "sort_order": "DESC", 
+  "filters": "{'Expense Claim\u0001Saved':1,'Expense Claim\u0001Submitted':1,'Expense Claim\u0001Approval Status':'','Expense Claim\u0001Fiscal Year':''}", 
+  "doctype": "Search Criteria", 
+  "doc_type": "Expense Claim", 
+  "name": "__common__", 
+  "sort_by": "`tabExpense Claim`.`name`", 
+  "page_len": 50, 
+  "criteria_name": "Expense Claims", 
+  "columns": "Expense Claim\u0001ID,Expense Claim\u0001Approval Status,Expense Claim\u0001From Employee,Expense Claim\u0001Employee Name,Expense Claim\u0001Approver,Expense Claim\u0001Posting Date,Expense Claim\u0001Total Claimed Amount,Expense Claim\u0001Total Sanctioned Amount"
+ }, 
+ {
+  "name": "expense_claims", 
+  "doctype": "Search Criteria"
+ }
 ]
\ No newline at end of file
diff --git a/hr/search_criteria/monthly_attendance_details/monthly_attendance_details.txt b/hr/search_criteria/monthly_attendance_details/monthly_attendance_details.txt
index 64a0eb2..abbacae 100644
--- a/hr/search_criteria/monthly_attendance_details/monthly_attendance_details.txt
+++ b/hr/search_criteria/monthly_attendance_details/monthly_attendance_details.txt
@@ -1,33 +1,26 @@
-# Search Criteria, monthly_attendance_details
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-04-03 12:49:51',
-		'docstatus': 0,
-		'modified': '2012-04-03 12:49:51',
-		'modified_by': u'Administrator',
-		'owner': u'harshada@webnotestech.com'
-	},
-
-	# These values are common for all Search Criteria
-	{
-		'columns': u'Attendance\x01Employee',
-		'criteria_name': u'Monthly Attendance Details',
-		'doc_type': u'Attendance',
-		'doctype': 'Search Criteria',
-		'filters': u"{'Attendance\x01Status':'','Attendance\x01Fiscal Year':''}",
-		'module': u'HR',
-		'name': '__common__',
-		'page_len': 50,
-		'sort_by': u'`tabAttendance`.`employee`',
-		'sort_order': u'DESC',
-		'standard': u'Yes'
-	},
-
-	# Search Criteria, monthly_attendance_details
-	{
-		'doctype': 'Search Criteria',
-		'name': u'monthly_attendance_details'
-	}
+ {
+  "owner": "harshada@webnotestech.com", 
+  "docstatus": 0, 
+  "creation": "2012-04-03 12:49:51", 
+  "modified_by": "Administrator", 
+  "modified": "2012-04-03 12:49:51"
+ }, 
+ {
+  "module": "HR", 
+  "standard": "Yes", 
+  "sort_order": "DESC", 
+  "filters": "{'Attendance\u0001Status':'','Attendance\u0001Fiscal Year':''}", 
+  "doctype": "Search Criteria", 
+  "doc_type": "Attendance", 
+  "name": "__common__", 
+  "sort_by": "`tabAttendance`.`employee`", 
+  "page_len": 50, 
+  "criteria_name": "Monthly Attendance Details", 
+  "columns": "Attendance\u0001Employee"
+ }, 
+ {
+  "name": "monthly_attendance_details", 
+  "doctype": "Search Criteria"
+ }
 ]
\ No newline at end of file
diff --git a/hr/search_criteria/monthly_salary_register/monthly_salary_register.txt b/hr/search_criteria/monthly_salary_register/monthly_salary_register.txt
index b24bfb1..2e1db8c 100644
--- a/hr/search_criteria/monthly_salary_register/monthly_salary_register.txt
+++ b/hr/search_criteria/monthly_salary_register/monthly_salary_register.txt
@@ -1,33 +1,26 @@
-# Search Criteria, monthly_salary_register
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-30 14:50:44',
-		'docstatus': 0,
-		'modified': '2012-04-05 17:23:13',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all Search Criteria
-	{
-		'columns': u'Salary Slip\x01ID,Salary Slip\x01Employee,Salary Slip\x01Employee Name,Salary Slip\x01Leave Without Pay,Salary Slip\x01Arrear Amount',
-		'criteria_name': u'Monthly Salary Register',
-		'doc_type': u'Salary Slip',
-		'doctype': 'Search Criteria',
-		'filters': u'{"Salary Slip\\u0001Submitted":1,"Salary Slip\\u0001Company":[""],"Salary Slip\\u0001Month":[""]}',
-		'module': u'HR',
-		'name': '__common__',
-		'page_len': 50,
-		'sort_by': u'`tabSalary Slip`.`name`',
-		'sort_order': u'DESC',
-		'standard': u'Yes'
-	},
-
-	# Search Criteria, monthly_salary_register
-	{
-		'doctype': 'Search Criteria',
-		'name': u'monthly_salary_register'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-03-30 14:50:44", 
+  "modified_by": "Administrator", 
+  "modified": "2012-04-05 17:23:13"
+ }, 
+ {
+  "module": "HR", 
+  "standard": "Yes", 
+  "sort_order": "DESC", 
+  "filters": "{\"Salary Slip\\u0001Submitted\":1,\"Salary Slip\\u0001Company\":[\"\"],\"Salary Slip\\u0001Month\":[\"\"]}", 
+  "doctype": "Search Criteria", 
+  "doc_type": "Salary Slip", 
+  "name": "__common__", 
+  "sort_by": "`tabSalary Slip`.`name`", 
+  "page_len": 50, 
+  "criteria_name": "Monthly Salary Register", 
+  "columns": "Salary Slip\u0001ID,Salary Slip\u0001Employee,Salary Slip\u0001Employee Name,Salary Slip\u0001Leave Without Pay,Salary Slip\u0001Arrear Amount"
+ }, 
+ {
+  "name": "monthly_salary_register", 
+  "doctype": "Search Criteria"
+ }
 ]
\ No newline at end of file
diff --git a/hr/search_criteria/new_or_left_employees_for_a_month/new_or_left_employees_for_a_month.txt b/hr/search_criteria/new_or_left_employees_for_a_month/new_or_left_employees_for_a_month.txt
index eee5bfa..86d09b5 100644
--- a/hr/search_criteria/new_or_left_employees_for_a_month/new_or_left_employees_for_a_month.txt
+++ b/hr/search_criteria/new_or_left_employees_for_a_month/new_or_left_employees_for_a_month.txt
@@ -1,33 +1,26 @@
-# Search Criteria, new_or_left_employees_for_a_month
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-04-03 12:49:51',
-		'docstatus': 0,
-		'modified': '2012-04-03 12:49:51',
-		'modified_by': u'Administrator',
-		'owner': u'harshada@webnotestech.com'
-	},
-
-	# These values are common for all Search Criteria
-	{
-		'columns': u'Employee\x01ID',
-		'criteria_name': u'New or left employees for a month',
-		'doc_type': u'Employee',
-		'doctype': 'Search Criteria',
-		'filters': u"{'Employee\x01Saved':1,'Employee\x01Submitted':1,'Employee\x01Gender':'','Employee\x01Month of Birth':'','Employee\x01Status':''}",
-		'module': u'HR',
-		'name': '__common__',
-		'page_len': 50,
-		'sort_by': u'`tabEmployee`.`name`',
-		'sort_order': u'DESC',
-		'standard': u'Yes'
-	},
-
-	# Search Criteria, new_or_left_employees_for_a_month
-	{
-		'doctype': 'Search Criteria',
-		'name': u'new_or_left_employees_for_a_month'
-	}
+ {
+  "owner": "harshada@webnotestech.com", 
+  "docstatus": 0, 
+  "creation": "2012-04-03 12:49:51", 
+  "modified_by": "Administrator", 
+  "modified": "2012-04-03 12:49:51"
+ }, 
+ {
+  "module": "HR", 
+  "standard": "Yes", 
+  "sort_order": "DESC", 
+  "filters": "{'Employee\u0001Saved':1,'Employee\u0001Submitted':1,'Employee\u0001Gender':'','Employee\u0001Month of Birth':'','Employee\u0001Status':''}", 
+  "doctype": "Search Criteria", 
+  "doc_type": "Employee", 
+  "name": "__common__", 
+  "sort_by": "`tabEmployee`.`name`", 
+  "page_len": 50, 
+  "criteria_name": "New or left employees for a month", 
+  "columns": "Employee\u0001ID"
+ }, 
+ {
+  "name": "new_or_left_employees_for_a_month", 
+  "doctype": "Search Criteria"
+ }
 ]
\ No newline at end of file
diff --git a/hr/search_criteria/salary_register/salary_register.txt b/hr/search_criteria/salary_register/salary_register.txt
index 700423b..aab7f25 100644
--- a/hr/search_criteria/salary_register/salary_register.txt
+++ b/hr/search_criteria/salary_register/salary_register.txt
@@ -1,33 +1,26 @@
-# Search Criteria, salary_register
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-04-03 12:49:52',
-		'docstatus': 0,
-		'modified': '2012-04-03 12:49:52',
-		'modified_by': u'Administrator',
-		'owner': u'harshada@webnotestech.com'
-	},
-
-	# These values are common for all Search Criteria
-	{
-		'columns': u'Salary Slip\x01ID,Salary Slip\x01Employee,Salary Slip\x01Employee Name,Salary Slip\x01Year,Salary Slip\x01Month,Salary Slip\x01Total days in month,Salary Slip\x01Payment days',
-		'criteria_name': u'Salary Register',
-		'doc_type': u'Salary Slip',
-		'doctype': 'Search Criteria',
-		'filters': u"{'Salary Slip\x01Submitted':1,'Salary Slip\x01Month':''}",
-		'module': u'HR',
-		'name': '__common__',
-		'page_len': 50,
-		'sort_by': u'`tabSalary Slip`.`name`',
-		'sort_order': u'DESC',
-		'standard': u'Yes'
-	},
-
-	# Search Criteria, salary_register
-	{
-		'doctype': 'Search Criteria',
-		'name': u'salary_register'
-	}
+ {
+  "owner": "harshada@webnotestech.com", 
+  "docstatus": 0, 
+  "creation": "2012-04-03 12:49:52", 
+  "modified_by": "Administrator", 
+  "modified": "2012-04-03 12:49:52"
+ }, 
+ {
+  "module": "HR", 
+  "standard": "Yes", 
+  "sort_order": "DESC", 
+  "filters": "{'Salary Slip\u0001Submitted':1,'Salary Slip\u0001Month':''}", 
+  "doctype": "Search Criteria", 
+  "doc_type": "Salary Slip", 
+  "name": "__common__", 
+  "sort_by": "`tabSalary Slip`.`name`", 
+  "page_len": 50, 
+  "criteria_name": "Salary Register", 
+  "columns": "Salary Slip\u0001ID,Salary Slip\u0001Employee,Salary Slip\u0001Employee Name,Salary Slip\u0001Year,Salary Slip\u0001Month,Salary Slip\u0001Total days in month,Salary Slip\u0001Payment days"
+ }, 
+ {
+  "name": "salary_register", 
+  "doctype": "Search Criteria"
+ }
 ]
\ No newline at end of file
diff --git a/hr/search_criteria/salary_slips/salary_slips.txt b/hr/search_criteria/salary_slips/salary_slips.txt
index 9951896..e1bcccf 100644
--- a/hr/search_criteria/salary_slips/salary_slips.txt
+++ b/hr/search_criteria/salary_slips/salary_slips.txt
@@ -1,33 +1,26 @@
-# Search Criteria, salary_slips
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-04-03 12:49:52',
-		'docstatus': 0,
-		'modified': '2012-04-03 12:49:52',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all Search Criteria
-	{
-		'columns': u'Salary Slip\x01ID,Salary Slip\x01Fiscal Year,Salary Slip\x01Month,Salary Slip\x01Employee,Salary Slip\x01Employee Name,Salary Slip\x01Department,Salary Slip\x01Designation,Salary Slip\x01Branch,Salary Slip\x01Grade,Salary Slip\x01PF No.,Salary Slip\x01ESIC No.,Salary Slip\x01Leave Without Pay,Salary Slip\x01Bank Name,Salary Slip\x01Bank Account No.,Salary Slip\x01Payment days,Salary Slip\x01Arrear Amount,Salary Slip\x01Encashment Amount,Salary Slip\x01Gross Pay,Salary Slip\x01Total Deduction,Salary Slip\x01Net Pay',
-		'criteria_name': u'Salary Slips',
-		'doc_type': u'Salary Slip',
-		'doctype': 'Search Criteria',
-		'filters': u"{'Salary Slip\x01Saved':1,'Salary Slip\x01Submitted':1}",
-		'module': u'HR',
-		'name': '__common__',
-		'page_len': 50,
-		'sort_by': u'`tabSalary Slip`.`name`',
-		'sort_order': u'DESC',
-		'standard': u'Yes'
-	},
-
-	# Search Criteria, salary_slips
-	{
-		'doctype': 'Search Criteria',
-		'name': u'salary_slips'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-04-03 12:49:52", 
+  "modified_by": "Administrator", 
+  "modified": "2012-04-03 12:49:52"
+ }, 
+ {
+  "module": "HR", 
+  "standard": "Yes", 
+  "sort_order": "DESC", 
+  "filters": "{'Salary Slip\u0001Saved':1,'Salary Slip\u0001Submitted':1}", 
+  "doctype": "Search Criteria", 
+  "doc_type": "Salary Slip", 
+  "name": "__common__", 
+  "sort_by": "`tabSalary Slip`.`name`", 
+  "page_len": 50, 
+  "criteria_name": "Salary Slips", 
+  "columns": "Salary Slip\u0001ID,Salary Slip\u0001Fiscal Year,Salary Slip\u0001Month,Salary Slip\u0001Employee,Salary Slip\u0001Employee Name,Salary Slip\u0001Department,Salary Slip\u0001Designation,Salary Slip\u0001Branch,Salary Slip\u0001Grade,Salary Slip\u0001PF No.,Salary Slip\u0001ESIC No.,Salary Slip\u0001Leave Without Pay,Salary Slip\u0001Bank Name,Salary Slip\u0001Bank Account No.,Salary Slip\u0001Payment days,Salary Slip\u0001Arrear Amount,Salary Slip\u0001Encashment Amount,Salary Slip\u0001Gross Pay,Salary Slip\u0001Total Deduction,Salary Slip\u0001Net Pay"
+ }, 
+ {
+  "name": "salary_slips", 
+  "doctype": "Search Criteria"
+ }
 ]
\ No newline at end of file
diff --git a/hr/search_criteria/salary_structure_details/salary_structure_details.txt b/hr/search_criteria/salary_structure_details/salary_structure_details.txt
index a0e3438..c1ed01b 100644
--- a/hr/search_criteria/salary_structure_details/salary_structure_details.txt
+++ b/hr/search_criteria/salary_structure_details/salary_structure_details.txt
@@ -1,33 +1,26 @@
-# Search Criteria, salary_structure_details
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-04-03 12:49:52',
-		'docstatus': 0,
-		'modified': '2012-04-03 12:49:52',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all Search Criteria
-	{
-		'columns': u'Salary Structure\x01ID,Salary Structure\x01Employee,Salary Structure\x01From Date,Salary Structure\x01To Date,Salary Structure\x01Fiscal Year,Salary Structure\x01Branch,Salary Structure\x01Designation,Salary Structure\x01Department,Salary Structure\x01Grade,Salary Structure\x01Is Active,Salary Structure\x01Total Earning,Salary Structure\x01Total Deduction,Salary Structure\x01CTC,Salary Structure\x01Total',
-		'criteria_name': u'Salary Structure Details',
-		'doc_type': u'Salary Structure',
-		'doctype': 'Search Criteria',
-		'filters': u"{'Salary Structure\x01Branch':'','Salary Structure\x01Designation':'','Salary Structure\x01Department':'','Salary Structure\x01Grade':'','Salary Structure\x01Is Active':''}",
-		'module': u'HR',
-		'name': '__common__',
-		'page_len': 50,
-		'sort_by': u'`tabSalary Structure`.`name`',
-		'sort_order': u'DESC',
-		'standard': u'Yes'
-	},
-
-	# Search Criteria, salary_structure_details
-	{
-		'doctype': 'Search Criteria',
-		'name': u'salary_structure_details'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-04-03 12:49:52", 
+  "modified_by": "Administrator", 
+  "modified": "2012-04-03 12:49:52"
+ }, 
+ {
+  "module": "HR", 
+  "standard": "Yes", 
+  "sort_order": "DESC", 
+  "filters": "{'Salary Structure\u0001Branch':'','Salary Structure\u0001Designation':'','Salary Structure\u0001Department':'','Salary Structure\u0001Grade':'','Salary Structure\u0001Is Active':''}", 
+  "doctype": "Search Criteria", 
+  "doc_type": "Salary Structure", 
+  "name": "__common__", 
+  "sort_by": "`tabSalary Structure`.`name`", 
+  "page_len": 50, 
+  "criteria_name": "Salary Structure Details", 
+  "columns": "Salary Structure\u0001ID,Salary Structure\u0001Employee,Salary Structure\u0001From Date,Salary Structure\u0001To Date,Salary Structure\u0001Fiscal Year,Salary Structure\u0001Branch,Salary Structure\u0001Designation,Salary Structure\u0001Department,Salary Structure\u0001Grade,Salary Structure\u0001Is Active,Salary Structure\u0001Total Earning,Salary Structure\u0001Total Deduction,Salary Structure\u0001CTC,Salary Structure\u0001Total"
+ }, 
+ {
+  "name": "salary_structure_details", 
+  "doctype": "Search Criteria"
+ }
 ]
\ No newline at end of file
diff --git a/manufacturing/__init__.py b/manufacturing/__init__.py
new file mode 100644
index 0000000..07594ad
--- /dev/null
+++ b/manufacturing/__init__.py
@@ -0,0 +1,5 @@
+from __future__ import unicode_literals
+install_docs = [
+	{"doctype":"Role", "role_name":"Manufacturing Manager", "name":"Manufacturing Manager"},
+	{"doctype":"Role", "role_name":"Manufacturing User", "name":"Manufacturing User"},
+]
diff --git a/production/doctype/__init__.py b/manufacturing/doctype/__init__.py
similarity index 100%
rename from production/doctype/__init__.py
rename to manufacturing/doctype/__init__.py
diff --git a/production/doctype/bom/__init__.py b/manufacturing/doctype/bom/__init__.py
similarity index 100%
rename from production/doctype/bom/__init__.py
rename to manufacturing/doctype/bom/__init__.py
diff --git a/manufacturing/doctype/bom/bom.js b/manufacturing/doctype/bom/bom.js
new file mode 100644
index 0000000..179e63f
--- /dev/null
+++ b/manufacturing/doctype/bom/bom.js
@@ -0,0 +1,208 @@
+// ERPNext - web based ERP (http://erpnext.com)
+// Copyright (C) 2012 Web Notes Technologies Pvt Ltd
+// 
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation, either version 3 of the License, or
+// (at your option) any later version.
+// 
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.	See the
+// GNU General Public License for more details.
+// 
+// You should have received a copy of the GNU General Public License
+// along with this program.	If not, see <http://www.gnu.org/licenses/>.
+
+// On REFRESH
+cur_frm.cscript.refresh = function(doc,dt,dn){
+	cur_frm.toggle_enable("item", doc.__islocal);
+	
+	if (!doc.__islocal && doc.docstatus==0) {
+		cur_frm.set_intro("Submit the BOM to use it for manufacturing or repacking.");
+	} else cur_frm.set_intro("");
+	
+	cur_frm.cscript.with_operations(doc);
+	set_operation_no(doc);
+}
+
+cur_frm.cscript.with_operations = function(doc) {
+	cur_frm.fields_dict["bom_materials"].grid.set_column_disp("operation_no", doc.with_operations);
+	cur_frm.fields_dict["bom_materials"].grid.toggle_reqd("operation_no", doc.with_operations)
+}
+
+cur_frm.cscript.operation_no = function(doc, cdt, cdn) {
+	var child = locals[cdt][cdn];
+	if(child.parentfield=="bom_operations") set_operation_no(doc);
+}
+
+var set_operation_no = function(doc) {
+	var op_table = getchildren('BOM Operation', doc.name, 'bom_operations');
+	var operations = [];
+
+	for (var i=0, j=op_table.length; i<j; i++) {
+		var op = op_table[i].operation_no;
+		if (op && !inList(operations, op)) operations.push(op);
+	}
+	
+	cur_frm.fields_dict["bom_materials"].grid.get_field("operation_no")
+		.df.options = operations.join("\n");
+	
+	$.each(getchildren("BOM Item", doc.name, "bom_materials"), function(i, v) {
+		if(!inList(operations, cstr(v.operation_no))) v.operation_no = null;
+	});
+	
+	refresh_field("bom_materials");
+}
+
+cur_frm.fields_dict["bom_operations"].grid.on_row_delete = function(cdt, cdn){
+	set_operation_no(doc);
+}
+
+cur_frm.cscript.item = function(doc, dt, dn) {
+	if (doc.item) {
+		get_server_fields('get_item_details', doc.item, '', doc, dt, dn, 1);
+	}
+}
+
+cur_frm.cscript.workstation = function(doc,dt,dn) {
+	var d = locals[dt][dn];
+	if (d.workstation) {
+		var callback = function(r, rt) {
+			calculate_op_cost(doc, dt, dn);
+			calculate_total(doc);
+		}
+		get_server_fields('get_workstation_details', d.workstation, 
+			'bom_operations', doc, dt, dn, 1, callback);
+	}
+}
+
+
+cur_frm.cscript.hour_rate = function(doc, dt, dn) {
+	calculate_op_cost(doc, dt, dn);
+	calculate_total(doc);
+}
+
+
+cur_frm.cscript.time_in_mins = cur_frm.cscript.hour_rate;
+
+cur_frm.cscript.item_code = function(doc, cdt, cdn) {
+	get_bom_material_detail(doc, cdt, cdn);
+}
+
+cur_frm.cscript.bom_no	= function(doc, cdt, cdn) {
+	get_bom_material_detail(doc, cdt, cdn);
+}
+
+cur_frm.cscript.is_default = function(doc) {
+	if (doc.is_default) cur_frm.set_value("is_active", 1);
+}
+
+var get_bom_material_detail= function(doc, cdt, cdn) {
+	var d = locals[cdt][cdn];
+	if (d.item_code) {
+		wn.call({
+			doc: cur_frm.doc,
+			method: "get_bom_material_detail",
+			args: {
+				'item_code': d.item_code, 
+				'bom_no': d.bom_no != null ? d.bom_no: '',
+				'qty': d.qty
+			},
+			callback: function(r) {
+				d = locals[cdt][cdn];
+				$.extend(d, r.message);
+				refresh_field("bom_materials");
+				doc = locals[doc.doctype][doc.name];
+				calculate_rm_cost(doc, cdt, cdn);
+				calculate_total(doc);
+			},
+			freeze: true
+		});
+	}
+}
+
+
+cur_frm.cscript.qty = function(doc, cdt, cdn) {
+	calculate_rm_cost(doc, cdt, cdn);
+	calculate_total(doc);
+}
+
+cur_frm.cscript.rate = function(doc, cdt, cdn) {
+	var d = locals[cdt][cdn];
+	if (d.bom_no) {
+		msgprint("You can not change rate if BOM mentioned agianst any item");
+		get_bom_material_detail(doc, cdt, cdn);
+	} else {
+		calculate_rm_cost(doc, cdt, cdn);
+		calculate_total(doc);
+	}
+}
+
+var calculate_op_cost = function(doc, dt, dn) {	
+	var op = getchildren('BOM Operation', doc.name, 'bom_operations');
+	total_op_cost = 0;
+	for(var i=0;i<op.length;i++) {
+		op_cost =	flt(flt(op[i].hour_rate) * flt(op[i].time_in_mins) / 60, 2);
+		set_multiple('BOM Operation',op[i].name, {'operating_cost': op_cost}, 'bom_operations');
+		total_op_cost += op_cost;
+	}
+	doc.operating_cost = total_op_cost;
+	refresh_field('operating_cost');
+}
+
+var calculate_rm_cost = function(doc, dt, dn) {	
+	var rm = getchildren('BOM Item', doc.name, 'bom_materials');
+	total_rm_cost = 0;
+	for(var i=0;i<rm.length;i++) {
+		amt =	flt(rm[i].rate) * flt(rm[i].qty);
+		set_multiple('BOM Item',rm[i].name, {'amount': amt}, 'bom_materials');
+		set_multiple('BOM Item',rm[i].name, 
+			{'qty_consumed_per_unit': flt(rm[i].qty)/flt(doc.quantity)}, 'bom_materials');
+		total_rm_cost += amt;
+	}
+	doc.raw_material_cost = total_rm_cost;
+	refresh_field('raw_material_cost');
+}
+
+
+// Calculate Total Cost
+var calculate_total = function(doc) {
+	doc.total_cost = flt(doc.raw_material_cost) + flt(doc.operating_cost);
+	refresh_field('total_cost');
+}
+
+
+cur_frm.fields_dict['item'].get_query = function(doc) {
+	return 'SELECT DISTINCT `tabItem`.`name`, `tabItem`.description FROM `tabItem` \
+		WHERE is_manufactured_item = "Yes" and (IFNULL(`tabItem`.`end_of_life`,"") = "" OR \
+		 	`tabItem`.`end_of_life` = "0000-00-00" OR `tabItem`.`end_of_life` > NOW()) AND \
+		 	`tabItem`.`%(key)s` like "%s" ORDER BY `tabItem`.`name` LIMIT 50';
+}
+
+cur_frm.fields_dict['project_name'].get_query = function(doc, dt, dn) {
+	return 'SELECT `tabProject`.name FROM `tabProject` \
+		WHERE `tabProject`.status not in ("Completed", "Cancelled") \
+		AND `tabProject`.name LIKE "%s" ORDER BY `tabProject`.name ASC LIMIT 50';
+}
+
+cur_frm.fields_dict['bom_materials'].grid.get_field('item_code').get_query = function(doc) {
+	return 'SELECT DISTINCT `tabItem`.`name`, `tabItem`.description FROM `tabItem` \
+		WHERE (IFNULL(`tabItem`.`end_of_life`,"") = "" OR `tabItem`.`end_of_life` = "0000-00-00" \
+			OR `tabItem`.`end_of_life` > NOW()) AND `tabItem`.`%(key)s` like "%s" \
+		ORDER BY `tabItem`.`name` LIMIT 50';
+}
+
+cur_frm.fields_dict['bom_materials'].grid.get_field('bom_no').get_query = function(doc, cdt, cdn) {
+	var d = locals[cdt][cdn];
+	return 'SELECT DISTINCT `tabBOM`.`name`, `tabBOM`.`remarks` FROM `tabBOM` \
+		WHERE `tabBOM`.`item` = "' + d.item_code + '" AND `tabBOM`.`is_active` = 1 AND \
+		 	`tabBOM`.docstatus = 1 AND `tabBOM`.`name` like "%s" \
+		ORDER BY `tabBOM`.`name` LIMIT 50';
+}
+
+cur_frm.cscript.validate = function(doc, dt, dn) {
+	calculate_op_cost(doc, dt, dn);
+	calculate_rm_cost(doc, dt, dn);
+	calculate_total(doc);
+}
diff --git a/manufacturing/doctype/bom/bom.py b/manufacturing/doctype/bom/bom.py
new file mode 100644
index 0000000..2611b7a
--- /dev/null
+++ b/manufacturing/doctype/bom/bom.py
@@ -0,0 +1,380 @@
+# ERPNext - web based ERP (http://erpnext.com)
+# Copyright (C) 2012 Web Notes Technologies Pvt Ltd
+# 
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+# 
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+# 
+# You should have received a copy of the GNU General Public License
+# along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+from __future__ import unicode_literals
+import webnotes
+from webnotes.utils import cint, cstr, flt, now, nowdate
+from webnotes.model.doc import Document, addchild
+from webnotes.model.wrapper import getlist
+from webnotes.model.code import get_obj
+from webnotes import msgprint, _
+
+sql = webnotes.conn.sql
+
+
+class DocType:
+	def __init__(self, doc, doclist=[]):
+		self.doc = doc
+		self.doclist = doclist
+
+	def autoname(self):
+		last_name = sql("""select max(name) from `tabBOM` 
+			where name like 'BOM/%s/%%'""" % self.doc.item)
+		if last_name:
+			idx = cint(cstr(last_name[0][0]).split('/')[-1]) + 1
+		else:
+			idx = 1
+		self.doc.name = 'BOM/' + self.doc.item + ('/%.3i' % idx)
+	
+	def validate(self):
+		self.clear_operations()
+		self.validate_main_item()
+		self.validate_operations()
+		self.validate_materials()
+		
+	def on_update(self):
+		self.check_recursion()
+		self.calculate_cost()
+		self.update_exploded_items()
+		self.doc.save()
+	
+	def on_submit(self):
+		self.manage_default_bom()
+
+	def on_cancel(self):
+		webnotes.conn.set(self.doc, "is_active", 0)
+		webnotes.conn.set(self.doc, "is_default", 0)
+
+		# check if used in any other bom
+		self.validate_bom_links()
+		self.manage_default_bom()
+				
+	def on_update_after_submit(self):
+		self.validate_bom_links()
+		self.manage_default_bom()
+
+	def get_item_det(self, item_code):
+		item = sql("""select name, is_asset_item, is_purchase_item, docstatus, description,
+		 	is_sub_contracted_item, stock_uom, default_bom, 
+			last_purchase_rate, standard_rate, is_manufactured_item 
+			from `tabItem` where item_code = %s""", item_code, as_dict = 1)
+
+		return item
+
+	def get_item_details(self, item_code):
+		res = sql("""select description, stock_uom as uom
+			from `tabItem` where item_code = %s""", item_code, as_dict = 1, debug=1)
+		return res and res[0] or {}
+
+	def get_workstation_details(self,workstation):
+		return {'hour_rate': webnotes.conn.get_value("Workstation", workstation, "hour_rate")}
+
+	def validate_rm_item(self, item):
+		if item[0]['name'] == self.doc.item:
+			msgprint("Item_code: %s in materials tab cannot be same as FG Item", 
+				item[0]['name'], raise_exception=1)
+		
+		if item and item[0]['is_asset_item'] == 'Yes':
+			msgprint("Item: %s is an asset item, please check", item[0]['name'], raise_exception=1)
+
+		if not item or item[0]['docstatus'] == 2:
+			msgprint("Item %s does not exist in system" % item[0]['item_code'], raise_exception = 1)
+
+	def get_bom_material_detail(self):
+		""" Get raw material details like uom, desc and rate"""
+
+		arg = webnotes.form_dict.get('args')
+		import json
+		arg = json.loads(arg)
+		
+		item = self.get_item_det(arg['item_code'])
+		self.validate_rm_item(item)
+		
+		arg['bom_no'] = arg['bom_no'] or item and cstr(item[0]['default_bom']) or ''
+		arg.update(item[0])
+
+		rate = self.get_rm_rate(arg)
+		ret_item = {
+			 'description'  : item and arg['description'] or '',
+			 'stock_uom'	: item and arg['stock_uom'] or '',
+			 'bom_no'		: arg['bom_no'],
+			 'rate'			: rate
+		}
+		return ret_item
+
+	def get_rm_rate(self, arg):
+		"""	Get raw material rate as per selected method, if bom exists takes bom cost """
+
+		if arg['bom_no']:
+			rate = self.get_bom_unitcost(arg['bom_no'])
+		elif arg and (arg['is_purchase_item'] == 'Yes' or arg['is_sub_contracted_item'] == 'Yes'):
+			if self.doc.rm_cost_as_per == 'Valuation Rate':
+				rate = self.get_valuation_rate(arg)
+			elif self.doc.rm_cost_as_per == 'Last Purchase Rate':
+				rate = arg['last_purchase_rate']
+			elif self.doc.rm_cost_as_per == 'Standard Rate':
+				rate = arg['standard_rate']
+
+		return rate
+
+	def get_bom_unitcost(self, bom_no):
+		bom = sql("""select name, total_cost/quantity as unit_cost from `tabBOM`
+			where is_active = 1 and name = %s""", bom_no, as_dict=1)
+		return bom and bom[0]['unit_cost'] or 0
+
+	def get_valuation_rate(self, arg):
+		""" Get average valuation rate of relevant warehouses 
+			as per valuation method (MAR/FIFO) 
+			as on costing date	
+		"""
+		dt = self.doc.costing_date or nowdate()
+		time = self.doc.costing_date == nowdate() and now().split()[1] or '23:59'
+		warehouse = sql("select warehouse from `tabBin` where item_code = %s", arg['item_code'])
+		rate = []
+		for wh in warehouse:
+			r = get_obj('Valuation Control').get_incoming_rate(dt, time, 
+				arg['item_code'], wh[0], qty=arg.get('qty', 0))
+			if r:
+				rate.append(r)
+
+		return rate and flt(sum(rate))/len(rate) or 0
+
+	def manage_default_bom(self):
+		""" Uncheck others if current one is selected as default, 
+			update default bom in item master
+		"""
+		if self.doc.is_default and self.doc.is_active:
+			from webnotes.model.utils import set_default
+			set_default(self.doc, "item")
+			webnotes.conn.set_value("Item", self.doc.item, "default_bom", self.doc.name)
+		
+		else:
+			if not self.doc.is_active:
+				webnotes.conn.set(self.doc, "is_default", 0)
+			
+			sql("update `tabItem` set default_bom = null where name = %s and default_bom = %s", 
+			 	(self.doc.item, self.doc.name))
+
+	def clear_operations(self):
+		if not self.doc.with_operations:
+			self.doclist = self.doc.clear_table(self.doclist, 'bom_operations')
+			for d in self.doclist.get({"parentfield": "bom_materials"}):
+				d.operation_no = None
+
+	def validate_main_item(self):
+		""" Validate main FG item"""
+		item = self.get_item_det(self.doc.item)
+		if not item:
+			msgprint("Item %s does not exists in the system or expired." % 
+				self.doc.item, raise_exception = 1)
+
+		elif item[0]['is_manufactured_item'] != 'Yes' \
+				and item[0]['is_sub_contracted_item'] != 'Yes':
+			msgprint("""As Item: %s is not a manufactured / sub-contracted item, \
+				you can not make BOM for it""" % self.doc.item, raise_exception = 1)
+
+	def validate_operations(self):
+		""" Check duplicate operation no"""
+		self.op = []
+		for d in getlist(self.doclist, 'bom_operations'):
+			if cstr(d.operation_no) in self.op:
+				msgprint("Operation no: %s is repeated in Operations Table" % 
+					d.operation_no, raise_exception=1)
+			else:
+				# add operation in op list
+				self.op.append(cstr(d.operation_no))
+
+	def validate_materials(self):
+		""" Validate raw material entries """
+		check_list = []
+		for m in getlist(self.doclist, 'bom_materials'):
+			# check if operation no not in op table
+			if self.doc.with_operations and cstr(m.operation_no) not in self.op:
+				msgprint("""Operation no: %s against item: %s at row no: %s \
+					is not present at Operations table""" % 
+					(m.operation_no, m.item_code, m.idx), raise_exception = 1)
+		
+			item = self.get_item_det(m.item_code)
+			if item[0]['is_manufactured_item'] == 'Yes':
+				if not m.bom_no:
+					msgprint("Please enter BOM No aginst item: %s at row no: %s" % 
+						(m.item_code, m.idx), raise_exception=1)
+				else:
+					self.validate_bom_no(m.item_code, m.bom_no, m.idx)
+
+			elif m.bom_no:
+				msgprint("""As Item %s is not a manufactured / sub-contracted item, \
+					you can enter BOM against it (Row No: %s).""" % 
+					(m.item_code, m.idx), raise_exception = 1)
+
+			if flt(m.qty) <= 0:
+				msgprint("Please enter qty against raw material: %s at row no: %s" % 
+					(m.item_code, m.idx), raise_exception = 1)
+
+			self.check_if_item_repeated(m.item_code, m.operation_no, check_list)
+
+	def validate_bom_no(self, item, bom_no, idx):
+		"""Validate BOM No of sub-contracted items"""
+		bom = sql("""select name from `tabBOM` where name = %s and item = %s 
+			and is_active=1 and docstatus=1""", 
+			(bom_no, item), as_dict =1)
+		if not bom:
+			msgprint("""Incorrect BOM No: %s against item: %s at row no: %s.
+				It may be inactive or cancelled or for some other item.""" % 
+				(bom_no, item, idx), raise_exception = 1)
+
+	def check_if_item_repeated(self, item, op, check_list):
+		if [cstr(item), cstr(op)] in check_list:
+			msgprint(_("Item") + " %s " % (item,) + _("has been entered atleast twice")
+				+ (cstr(op) and _(" against same operation") or ""), raise_exception=1)
+		else:
+			check_list.append([cstr(item), cstr(op)])
+
+	def check_recursion(self):
+		""" Check whether recursion occurs in any bom"""
+
+		check_list = [['parent', 'bom_no', 'parent'], ['bom_no', 'parent', 'child']]
+		for d in check_list:
+			bom_list, count = [self.doc.name], 0
+			while (len(bom_list) > count ):
+				boms = sql(" select %s from `tabBOM Item` where %s = '%s' " % 
+					(d[0], d[1], cstr(bom_list[count])))
+				count = count + 1
+				for b in boms:
+					if b[0] == self.doc.name:
+						msgprint("""Recursion Occured => '%s' cannot be '%s' of '%s'.
+							""" % (cstr(b), cstr(d[2]), self.doc.name), raise_exception = 1)
+					if b[0]:
+						bom_list.append(b[0])
+	
+	def update_cost_and_exploded_items(self):
+		bom_list = self.traverse_tree()
+		for bom in bom_list:
+			bom_obj = get_obj("BOM", bom, with_children=1)
+			bom_obj.on_update()
+			
+	def traverse_tree(self):
+		def _get_children(bom_no):
+			return [cstr(d[0]) for d in webnotes.conn.sql("""select bom_no from `tabBOM Item` 
+				where parent = %s and ifnull(bom_no, '') != ''""", bom_no)]
+				
+		bom_list, count = [self.doc.name], 0		
+		while(count < len(bom_list)):
+			for child_bom in _get_children(bom_list[count]):
+				if child_bom not in bom_list:
+					bom_list.append(child_bom)
+			count += 1
+		bom_list.reverse()
+		return bom_list
+	
+	def calculate_cost(self):
+		"""Calculate bom totals"""
+		self.calculate_op_cost()
+		self.calculate_rm_cost()
+		self.doc.total_cost = self.doc.raw_material_cost + self.doc.operating_cost
+
+	def calculate_op_cost(self):
+		"""Update workstation rate and calculates totals"""
+		total_op_cost = 0
+		for d in getlist(self.doclist, 'bom_operations'):
+			if d.hour_rate and d.time_in_mins:
+				d.operating_cost = flt(d.hour_rate) * flt(d.time_in_mins) / 60.0
+			d.save()
+			total_op_cost += flt(d.operating_cost)
+		self.doc.operating_cost = total_op_cost
+		
+	def calculate_rm_cost(self):
+		"""Fetch RM rate as per today's valuation rate and calculate totals"""
+		total_rm_cost = 0
+		for d in getlist(self.doclist, 'bom_materials'):
+			if d.bom_no:
+				d.rate = self.get_bom_unitcost(d.bom_no)
+			d.amount = flt(d.rate) * flt(d.qty)
+			d.qty_consumed_per_unit = flt(d.qty) / flt(self.doc.quantity)
+			d.save()
+			total_rm_cost += d.amount
+		self.doc.raw_material_cost = total_rm_cost
+
+	def update_exploded_items(self):
+		""" Update Flat BOM, following will be correct data"""
+		self.get_exploded_items()
+		self.add_exploded_items()
+
+	def get_exploded_items(self):
+		""" Get all raw materials including items from child bom"""
+		self.cur_exploded_items = []
+		for d in getlist(self.doclist, 'bom_materials'):
+			if d.bom_no:
+				self.get_child_exploded_items(d.bom_no, d.qty)
+			else:
+				self.cur_exploded_items.append({
+					'item_code'				: d.item_code, 
+					'description'			: d.description, 
+					'stock_uom'				: d.stock_uom, 
+					'qty'					: flt(d.qty),
+					'rate'					: flt(d.rate), 
+					'amount'				: flt(d.amount),
+					'parent_bom'			: d.parent,
+					'mat_detail_no'			: d.name,
+					'qty_consumed_per_unit' : flt(d.qty_consumed_per_unit)
+				})
+	
+	def get_child_exploded_items(self, bom_no, qty):
+		""" Add all items from Flat BOM of child BOM"""
+		
+		child_fb_items = sql("""select item_code, description, stock_uom, qty, rate, 
+			amount, parent_bom, mat_detail_no, qty_consumed_per_unit 
+			from `tabBOM Explosion Item` where parent = '%s' and docstatus = 1""" %
+			bom_no, as_dict = 1)
+		for d in child_fb_items:
+			self.cur_exploded_items.append({
+				'item_code'				: d['item_code'], 
+				'description'			: d['description'], 
+				'stock_uom'				: d['stock_uom'], 
+				'qty'					: flt(d['qty_consumed_per_unit'])*qty,
+				'rate'					: flt(d['rate']), 
+				'amount'				: flt(d['amount']),
+				'parent_bom'			: d['parent_bom'],
+				'mat_detail_no'			: d['mat_detail_no'],
+				'qty_consumed_per_unit' : flt(d['qty_consumed_per_unit'])*qty/flt(self.doc.quantity)
+
+			})
+
+	def add_exploded_items(self):
+		"Add items to Flat BOM table"
+		self.doclist = self.doc.clear_table(self.doclist, 'flat_bom_details', 1)
+		for d in self.cur_exploded_items:
+			ch = addchild(self.doc, 'flat_bom_details', 'BOM Explosion Item', 1, self.doclist)
+			for i in d.keys():
+				ch.fields[i] = d[i]
+			ch.docstatus = self.doc.docstatus
+			ch.save(1)
+
+	def get_parent_bom_list(self, bom_no):
+		p_bom = sql("select parent from `tabBOM Item` where bom_no = '%s'" % bom_no)
+		return p_bom and [i[0] for i in p_bom] or []
+
+	def validate_bom_links(self):
+		if not self.doc.is_active:
+			act_pbom = sql("""select distinct bom_item.parent from `tabBOM Item` bom_item
+				where bom_item.bom_no = %s and bom_item.docstatus = 1
+				and exists (select * from `tabBOM` where name = bom_item.parent
+					and docstatus = 1 and is_active = 1)""", self.doc.name)
+
+			if act_pbom and act_pbom[0][0]:
+				action = self.doc.docstatus < 2 and _("deactivate") or _("cancel")
+				msgprint(_("Cannot ") + action + _(": It is linked to other active BOM(s)"),
+					raise_exception=1)
\ No newline at end of file
diff --git a/production/doctype/bom/bom.txt b/manufacturing/doctype/bom/bom.txt
similarity index 67%
rename from production/doctype/bom/bom.txt
rename to manufacturing/doctype/bom/bom.txt
index ed70045..cd4916f 100644
--- a/production/doctype/bom/bom.txt
+++ b/manufacturing/doctype/bom/bom.txt
@@ -2,16 +2,16 @@
  {
   "owner": "Administrator", 
   "docstatus": 0, 
-  "creation": "2012-07-03 13:30:03", 
+  "creation": "2012-12-19 12:29:06", 
   "modified_by": "Administrator", 
-  "modified": "2012-12-03 13:29:26"
+  "modified": "2012-12-19 15:52:47"
  }, 
  {
   "istable": 0, 
   "in_create": 0, 
   "allow_print": 0, 
   "search_fields": "item", 
-  "module": "Production", 
+  "module": "Manufacturing", 
   "document_type": "Master", 
   "allow_attach": 0, 
   "read_only": 0, 
@@ -45,22 +45,12 @@
   "doctype": "DocType"
  }, 
  {
-  "oldfieldtype": "Column Break", 
-  "doctype": "DocField", 
-  "width": "50%", 
-  "fieldname": "column_break0", 
-  "fieldtype": "Column Break", 
-  "permlevel": 0
- }, 
- {
-  "description": "Select the item code for which Bill of Material is being created", 
+  "description": "Item to be manufactured or repacked", 
   "oldfieldtype": "Link", 
-  "colour": "White:FFF", 
   "doctype": "DocField", 
   "label": "Item", 
   "oldfieldname": "item", 
   "permlevel": 0, 
-  "trigger": "Client", 
   "fieldname": "item", 
   "fieldtype": "Link", 
   "search_index": 1, 
@@ -69,44 +59,29 @@
   "options": "Item"
  }, 
  {
-  "description": "Total quantity of items for which raw materials required and operations done will be defined", 
-  "oldfieldtype": "Currency", 
-  "colour": "White:FFF", 
   "doctype": "DocField", 
-  "label": "Quantity", 
-  "oldfieldname": "quantity", 
-  "fieldname": "quantity", 
-  "fieldtype": "Currency", 
-  "reqd": 1, 
-  "permlevel": 0
- }, 
- {
-  "doctype": "DocField", 
-  "width": "50%", 
-  "fieldname": "column_break1", 
+  "fieldname": "cb0", 
   "fieldtype": "Column Break", 
   "permlevel": 0
  }, 
  {
   "no_copy": 1, 
   "oldfieldtype": "Select", 
-  "colour": "White:FFF", 
   "allow_on_submit": 1, 
   "doctype": "DocField", 
   "label": "Is Active", 
   "oldfieldname": "is_active", 
-  "permlevel": 0, 
+  "default": "1", 
   "fieldname": "is_active", 
-  "fieldtype": "Select", 
-  "reqd": 1, 
+  "fieldtype": "Check", 
+  "reqd": 0, 
   "hidden": 0, 
-  "options": "\nYes\nNo"
+  "permlevel": 0
  }, 
  {
-  "allow_on_submit": 1, 
   "no_copy": 1, 
   "oldfieldtype": "Check", 
-  "colour": "White:FFF", 
+  "allow_on_submit": 1, 
   "doctype": "DocField", 
   "label": "Is Default", 
   "oldfieldname": "is_default", 
@@ -115,17 +90,25 @@
   "permlevel": 0
  }, 
  {
-  "oldfieldtype": "Section Break", 
+  "description": "Manage cost of operations", 
   "doctype": "DocField", 
-  "label": "Operations", 
-  "fieldname": "operations", 
-  "fieldtype": "Section Break", 
+  "label": "With Operations", 
+  "fieldname": "with_operations", 
+  "fieldtype": "Check", 
   "permlevel": 0
  }, 
  {
-  "description": "Specify the operations, operating cost and give a unique Operation no to your operations.", 
+  "oldfieldtype": "Section Break", 
+  "doctype": "DocField", 
+  "label": "Operations", 
+  "options": "Specify the operations, operating cost and give a unique Operation no to your operations.", 
+  "fieldname": "operations", 
+  "fieldtype": "Section Break", 
+  "depends_on": "with_operations", 
+  "permlevel": 0
+ }, 
+ {
   "oldfieldtype": "Table", 
-  "colour": "White:FFF", 
   "doctype": "DocField", 
   "label": "BOM Operations", 
   "oldfieldname": "bom_operations", 
@@ -143,17 +126,7 @@
   "permlevel": 0
  }, 
  {
-  "doctype": "DocField", 
-  "label": "Consider Raw Material Cost As Per", 
-  "options": "Valuation Rate\nLast Purchase Rate\nStandard Rate", 
-  "fieldname": "rm_cost_as_per", 
-  "fieldtype": "Select", 
-  "permlevel": 0
- }, 
- {
-  "description": "Enter the raw materials required to manufacture the BOM item. Specify the operation no as entered in the previous tab which will be performed on the raw materials entered.", 
   "oldfieldtype": "Table", 
-  "colour": "White:FFF", 
   "doctype": "DocField", 
   "label": "BOM Item", 
   "oldfieldname": "bom_materials", 
@@ -172,23 +145,37 @@
  }, 
  {
   "doctype": "DocField", 
-  "label": "Raw Material Cost", 
-  "fieldname": "raw_material_cost", 
-  "fieldtype": "Float", 
-  "permlevel": 1
- }, 
- {
-  "doctype": "DocField", 
-  "label": "Operating Cost", 
-  "fieldname": "operating_cost", 
-  "fieldtype": "Float", 
-  "permlevel": 1
+  "label": "Rate Of Materials Based On", 
+  "options": "Valuation Rate\nLast Purchase Rate", 
+  "fieldname": "rm_cost_as_per", 
+  "fieldtype": "Select", 
+  "permlevel": 0
  }, 
  {
   "doctype": "DocField", 
   "label": "Total Cost", 
   "fieldname": "total_cost", 
-  "fieldtype": "Float", 
+  "fieldtype": "Currency", 
+  "permlevel": 1
+ }, 
+ {
+  "doctype": "DocField", 
+  "fieldname": "cb1", 
+  "fieldtype": "Column Break", 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Total Raw Material Cost", 
+  "fieldname": "raw_material_cost", 
+  "fieldtype": "Currency", 
+  "permlevel": 1
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Total Operating Cost", 
+  "fieldname": "operating_cost", 
+  "fieldtype": "Currency", 
   "permlevel": 1
  }, 
  {
@@ -199,17 +186,16 @@
   "permlevel": 0
  }, 
  {
-  "description": "Select name of the project if BOM need to be created against any project", 
-  "oldfieldtype": "Link", 
-  "label": "Project Name", 
-  "oldfieldname": "project_name", 
-  "trigger": "Client", 
-  "fieldname": "project_name", 
-  "fieldtype": "Link", 
+  "description": "Quantity of item obtained after manufacturing / repacking from given quantities of raw materials", 
+  "default": "1", 
+  "oldfieldtype": "Currency", 
   "doctype": "DocField", 
-  "options": "Project", 
-  "permlevel": 0, 
-  "in_filter": 1
+  "label": "Quantity", 
+  "oldfieldname": "quantity", 
+  "fieldname": "quantity", 
+  "fieldtype": "Currency", 
+  "reqd": 1, 
+  "permlevel": 0
  }, 
  {
   "doctype": "DocField", 
@@ -220,67 +206,44 @@
   "permlevel": 1
  }, 
  {
-  "oldfieldtype": "Text", 
-  "doctype": "DocField", 
-  "label": "Item Description", 
-  "oldfieldname": "description", 
-  "width": "300px", 
-  "fieldname": "description", 
-  "fieldtype": "Small Text", 
-  "permlevel": 0
- }, 
- {
   "doctype": "DocField", 
   "fieldname": "col_break23", 
   "fieldtype": "Column Break", 
   "permlevel": 0
  }, 
  {
-  "oldfieldtype": "Data", 
+  "oldfieldtype": "Link", 
   "doctype": "DocField", 
-  "label": "Maintained By", 
-  "oldfieldname": "maintained_by", 
-  "fieldname": "maintained_by", 
-  "fieldtype": "Data", 
-  "permlevel": 0
+  "label": "Project Name", 
+  "oldfieldname": "project_name", 
+  "options": "Project", 
+  "fieldname": "project_name", 
+  "fieldtype": "Link", 
+  "permlevel": 0, 
+  "in_filter": 1
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Item Desription", 
+  "fieldname": "description", 
+  "fieldtype": "Small Text", 
+  "permlevel": 1
  }, 
  {
   "print_hide": 1, 
   "no_copy": 1, 
   "doctype": "DocField", 
   "label": "Amended From", 
-  "options": "Sales Invoice", 
+  "options": "BOM", 
   "fieldname": "amended_from", 
   "fieldtype": "Link", 
   "permlevel": 1
  }, 
  {
-  "print_hide": 1, 
-  "description": "The date at which current entry is corrected in the system.", 
-  "no_copy": 1, 
-  "depends_on": "eval:doc.amended_from", 
-  "doctype": "DocField", 
-  "label": "Amendment Date", 
-  "fieldname": "amendment_date", 
-  "fieldtype": "Date", 
-  "permlevel": 0
- }, 
- {
-  "no_copy": 1, 
-  "oldfieldtype": "Text", 
-  "colour": "White:FFF", 
-  "doctype": "DocField", 
-  "label": "Remarks", 
-  "oldfieldname": "remarks", 
-  "fieldname": "remarks", 
-  "fieldtype": "Small Text", 
-  "permlevel": 0
- }, 
- {
   "print_hide": 0, 
+  "depends_on": "eval:!doc.__islocal", 
   "doctype": "DocField", 
-  "label": "BOM Explosion Items", 
-  "options": "Simple", 
+  "label": "Materials Required (Exploded)", 
   "fieldname": "section_break0", 
   "fieldtype": "Section Break", 
   "hidden": 0, 
@@ -291,9 +254,8 @@
   "permlevel": 1, 
   "no_copy": 1, 
   "oldfieldtype": "Table", 
-  "colour": "White:FFF", 
   "doctype": "DocField", 
-  "label": "BOM Explosion Item", 
+  "label": "Materials Required (Exploded)", 
   "oldfieldname": "flat_bom_details", 
   "default": "No Toolbar", 
   "fieldname": "flat_bom_details", 
@@ -320,13 +282,13 @@
   "doctype": "DocPerm", 
   "submit": 1, 
   "write": 1, 
-  "role": "Production Manager", 
+  "role": "Manufacturing Manager", 
   "cancel": 1, 
   "permlevel": 0
  }, 
  {
   "doctype": "DocPerm", 
-  "role": "Production Manager", 
+  "role": "Manufacturing Manager", 
   "permlevel": 1
  }, 
  {
@@ -334,13 +296,13 @@
   "doctype": "DocPerm", 
   "submit": 1, 
   "write": 1, 
-  "role": "Production User", 
+  "role": "Manufacturing User", 
   "cancel": 1, 
   "permlevel": 0
  }, 
  {
   "doctype": "DocPerm", 
-  "role": "Production User", 
+  "role": "Manufacturing User", 
   "permlevel": 1
  }
 ]
\ No newline at end of file
diff --git a/production/doctype/bom/bom_list.js b/manufacturing/doctype/bom/bom_list.js
similarity index 92%
rename from production/doctype/bom/bom_list.js
rename to manufacturing/doctype/bom/bom_list.js
index 2aae904..8e355f3 100644
--- a/production/doctype/bom/bom_list.js
+++ b/manufacturing/doctype/bom/bom_list.js
@@ -17,7 +17,7 @@
 	prepare_data: function(data) {
 		this._super(data);
 		data.costing_date = wn.datetime.str_to_user(data.costing_date);
-		data.description = (data.is_active === 'Yes' ? '' : '[Inactive] ') + data.description;
+		data.description = (data.is_active ? '' : '[Inactive] ') + data.description;
 	},
 
 	columns: [
diff --git a/manufacturing/doctype/bom/test_bom.py b/manufacturing/doctype/bom/test_bom.py
new file mode 100644
index 0000000..68d9ce8
--- /dev/null
+++ b/manufacturing/doctype/bom/test_bom.py
@@ -0,0 +1,147 @@
+# ERPNext - web based ERP (http://erpnext.com)
+# Copyright (C) 2012 Web Notes Technologies Pvt Ltd
+# 
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+# 
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+# 
+# You should have received a copy of the GNU General Public License
+# along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+
+from __future__ import unicode_literals
+import unittest
+import webnotes
+import webnotes.model
+from webnotes.utils import nowdate, flt
+from accounts.utils import get_fiscal_year
+from webnotes.model.doclist import DocList
+import copy
+
+company = webnotes.conn.get_default("company")
+
+
+def load_data():
+	
+	# create default warehouse
+	if not webnotes.conn.exists("Warehouse", "Default Warehouse"):
+		webnotes.insert({"doctype": "Warehouse", 
+			"warehouse_name": "Default Warehouse",
+			"warehouse_type": "Stores"})
+			
+	# create UOM: Nos.
+	if not webnotes.conn.exists("UOM", "Nos"):
+		webnotes.insert({"doctype": "UOM", "uom_name": "Nos"})
+	
+	from webnotes.tests import insert_test_data
+	# create item groups and items
+	insert_test_data("Item Group", 
+		sort_fn=lambda ig: (ig[0].get('parent_item_group'), ig[0].get('name')))
+	insert_test_data("Item")
+
+base_bom_fg = [
+	{"doctype": "BOM", "item": "Android Jack D", "quantity": 1,
+		"is_active": "Yes", "is_default": 1, "uom": "Nos"},
+	{"doctype": "BOM Operation", "operation_no": 1, "parentfield": "bom_operations",
+		"opn_description": "Development", "hour_rate": 10, "time_in_mins": 90}, 
+	{"doctype": "BOM Item", "item_code": "Home Desktop 300", "operation_no": 1, 
+		"qty": 2, "rate": 20, "stock_uom": "Nos", "parentfield": "bom_materials"},
+	{"doctype": "BOM Item", "item_code": "Home Desktop 100", "operation_no": 1, 
+		"qty": 1, "rate": 300, "stock_uom": "Nos", "parentfield": "bom_materials"},
+	{"doctype": "BOM Item", "item_code": "Nebula 7", "operation_no": 1, 
+			"qty": 5, "stock_uom": "Nos", "parentfield": "bom_materials"},
+]
+
+base_bom_child = [
+	{"doctype": "BOM", "item": "Nebula 7", "quantity": 5,
+		"is_active": "Yes", "is_default": 1, "uom": "Nos"},
+	{"doctype": "BOM Operation", "operation_no": 1, "parentfield": "bom_operations",
+		"opn_description": "Development"}, 
+	{"doctype": "BOM Item", "item_code": "Android Jack S", "operation_no": 1, 
+		"qty": 10, "stock_uom": "Nos", "parentfield": "bom_materials"}
+]
+	
+base_bom_grandchild = [
+	{"doctype": "BOM", "item": "Android Jack S", "quantity": 1,
+		"is_active": "Yes", "is_default": 1, "uom": "Nos"},
+	{"doctype": "BOM Operation", "operation_no": 1, "parentfield": "bom_operations",
+		"opn_description": "Development"}, 
+	{"doctype": "BOM Item", "item_code": "Home Desktop 300", "operation_no": 1, 
+		"qty": 3, "rate": 10, "stock_uom": "Nos", 	"parentfield": "bom_materials"}
+]
+
+
+class TestPurchaseReceipt(unittest.TestCase):
+	def setUp(self):
+		webnotes.conn.begin()
+		load_data()
+		
+	def test_bom_validation(self):
+		# show throw error bacause bom no missing for sub-assembly item
+		bom_fg = copy.deepcopy(base_bom_fg)
+		self.assertRaises(webnotes.ValidationError, webnotes.insert, DocList(bom_fg))
+
+		# main item is not a manufacturing item
+		bom_fg = copy.deepcopy(base_bom_fg)
+		bom_fg[0]["item"] = "Home Desktop 200"
+		bom_fg.pop(4)
+		self.assertRaises(webnotes.ValidationError, webnotes.insert, DocList(bom_fg))
+		
+		# operation no mentioed in material table not matching with operation table
+		bom_fg = copy.deepcopy(base_bom_fg)
+		bom_fg.pop(4)
+		bom_fg[2]["operation_no"] = 2
+		self.assertRaises(webnotes.ValidationError, webnotes.insert, DocList(bom_fg))
+		
+	
+	def test_bom(self):
+		gc_wrapper = webnotes.insert(DocList(base_bom_grandchild))
+		gc_wrapper.submit()
+		
+		bom_child = copy.deepcopy(base_bom_child)
+		bom_child[2]["bom_no"] = gc_wrapper.doc.name
+		child_wrapper = webnotes.insert(DocList(bom_child))
+		child_wrapper.submit()
+		
+		bom_fg = copy.deepcopy(base_bom_fg)
+		bom_fg[4]["bom_no"] = child_wrapper.doc.name
+		fg_wrapper = webnotes.insert(DocList(bom_fg))
+		fg_wrapper.load_from_db()
+		
+		self.check_bom_cost(fg_wrapper)
+		
+		self.check_flat_bom(fg_wrapper, child_wrapper, gc_wrapper)
+		
+	def check_bom_cost(self, fg_wrapper):
+		expected_values = {
+			"operating_cost": 15,
+			"raw_material_cost": 640,
+			"total_cost": 655
+		}
+
+		for key in expected_values:
+			self.assertEqual(flt(expected_values[key]), flt(fg_wrapper.doc.fields.get(key)))
+			
+	def check_flat_bom(self, fg_wrapper, child_wrapper, gc_wrapper):
+		expected_flat_bom_items = {
+			("Home Desktop 300", fg_wrapper.doc.name): (2, 20),
+			("Home Desktop 100", fg_wrapper.doc.name): (1, 300),
+			("Home Desktop 300", gc_wrapper.doc.name): (30, 10)
+		}
+		
+		self.assertEqual(len(fg_wrapper.doclist.get({"parentfield": "flat_bom_details"})), 3)
+		
+		for key, val in expected_flat_bom_items.items():
+			flat_bom = fg_wrapper.doclist.get({"parentfield": "flat_bom_details", 
+				"item_code": key[0], "parent_bom": key[1]})[0]
+			self.assertEqual(val, (flat_bom.qty, flat_bom.rate))
+		
+		
+	def tearDown(self):
+		webnotes.conn.rollback()
\ No newline at end of file
diff --git a/production/doctype/bom_explosion_item/__init__.py b/manufacturing/doctype/bom_explosion_item/__init__.py
similarity index 100%
rename from production/doctype/bom_explosion_item/__init__.py
rename to manufacturing/doctype/bom_explosion_item/__init__.py
diff --git a/production/doctype/bom_explosion_item/bom_explosion_item.py b/manufacturing/doctype/bom_explosion_item/bom_explosion_item.py
similarity index 100%
rename from production/doctype/bom_explosion_item/bom_explosion_item.py
rename to manufacturing/doctype/bom_explosion_item/bom_explosion_item.py
diff --git a/manufacturing/doctype/bom_explosion_item/bom_explosion_item.txt b/manufacturing/doctype/bom_explosion_item/bom_explosion_item.txt
new file mode 100644
index 0000000..52c7796
--- /dev/null
+++ b/manufacturing/doctype/bom_explosion_item/bom_explosion_item.txt
@@ -0,0 +1,107 @@
+[
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-12-14 10:15:16", 
+  "modified_by": "Administrator", 
+  "modified": "2012-12-14 16:53:30"
+ }, 
+ {
+  "read_only": 0, 
+  "istable": 1, 
+  "autoname": "FBD/.######", 
+  "name": "__common__", 
+  "default_print_format": "Standard", 
+  "doctype": "DocType", 
+  "module": "Manufacturing"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "BOM Explosion Item", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "permlevel": 1, 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "BOM Explosion Item", 
+  "doctype": "DocType"
+ }, 
+ {
+  "oldfieldtype": "Link", 
+  "doctype": "DocField", 
+  "label": "Item Code", 
+  "oldfieldname": "item_code", 
+  "fieldname": "item_code", 
+  "fieldtype": "Link", 
+  "options": "Item"
+ }, 
+ {
+  "oldfieldtype": "Text", 
+  "doctype": "DocField", 
+  "label": "Description", 
+  "oldfieldname": "description", 
+  "width": "300px", 
+  "fieldname": "description", 
+  "fieldtype": "Text"
+ }, 
+ {
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Qty", 
+  "oldfieldname": "qty", 
+  "fieldname": "qty", 
+  "fieldtype": "Float"
+ }, 
+ {
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Rate", 
+  "oldfieldname": "standard_rate", 
+  "fieldname": "rate", 
+  "fieldtype": "Float"
+ }, 
+ {
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Amount", 
+  "oldfieldname": "amount_as_per_sr", 
+  "fieldname": "amount", 
+  "fieldtype": "Currency"
+ }, 
+ {
+  "oldfieldtype": "Link", 
+  "doctype": "DocField", 
+  "label": "Stock UOM", 
+  "oldfieldname": "stock_uom", 
+  "fieldname": "stock_uom", 
+  "fieldtype": "Link", 
+  "options": "UOM"
+ }, 
+ {
+  "oldfieldtype": "Link", 
+  "doctype": "DocField", 
+  "label": "Parent BOM", 
+  "oldfieldname": "parent_bom", 
+  "width": "250px", 
+  "fieldname": "parent_bom", 
+  "fieldtype": "Link", 
+  "hidden": 0, 
+  "options": "BOM"
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Mat Detail No", 
+  "fieldname": "mat_detail_no", 
+  "fieldtype": "Data", 
+  "hidden": 1
+ }, 
+ {
+  "no_copy": 0, 
+  "doctype": "DocField", 
+  "label": "Qty Consumed Per Unit", 
+  "fieldname": "qty_consumed_per_unit", 
+  "fieldtype": "Float", 
+  "hidden": 0
+ }
+]
\ No newline at end of file
diff --git a/production/doctype/bom_item/__init__.py b/manufacturing/doctype/bom_item/__init__.py
similarity index 100%
rename from production/doctype/bom_item/__init__.py
rename to manufacturing/doctype/bom_item/__init__.py
diff --git a/production/doctype/bom_item/bom_item.py b/manufacturing/doctype/bom_item/bom_item.py
similarity index 100%
rename from production/doctype/bom_item/bom_item.py
rename to manufacturing/doctype/bom_item/bom_item.py
diff --git a/manufacturing/doctype/bom_item/bom_item.txt b/manufacturing/doctype/bom_item/bom_item.txt
new file mode 100644
index 0000000..e9f9bd6
--- /dev/null
+++ b/manufacturing/doctype/bom_item/bom_item.txt
@@ -0,0 +1,150 @@
+[
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-12-14 10:15:16", 
+  "modified_by": "Administrator", 
+  "modified": "2012-12-14 16:35:33"
+ }, 
+ {
+  "istable": 1, 
+  "name": "__common__", 
+  "doctype": "DocType", 
+  "module": "Manufacturing"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "BOM Item", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "BOM Item", 
+  "read": 1, 
+  "doctype": "DocPerm", 
+  "parenttype": "DocType", 
+  "role": "System Manager", 
+  "parentfield": "permissions"
+ }, 
+ {
+  "name": "BOM Item", 
+  "doctype": "DocType"
+ }, 
+ {
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Operation No", 
+  "oldfieldname": "operation_no", 
+  "fieldname": "operation_no", 
+  "fieldtype": "Select", 
+  "reqd": 0, 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Link", 
+  "doctype": "DocField", 
+  "label": "Item Code", 
+  "oldfieldname": "item_code", 
+  "options": "Item", 
+  "fieldname": "item_code", 
+  "fieldtype": "Link", 
+  "search_index": 1, 
+  "reqd": 1, 
+  "permlevel": 0, 
+  "in_filter": 1
+ }, 
+ {
+  "permlevel": 0, 
+  "oldfieldtype": "Link", 
+  "doctype": "DocField", 
+  "label": "BOM No", 
+  "oldfieldname": "bom_no", 
+  "width": "150px", 
+  "fieldname": "bom_no", 
+  "fieldtype": "Link", 
+  "search_index": 1, 
+  "reqd": 0, 
+  "options": "BOM", 
+  "in_filter": 1
+ }, 
+ {
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Qty", 
+  "oldfieldname": "qty", 
+  "fieldname": "qty", 
+  "fieldtype": "Float", 
+  "reqd": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Stock UOM", 
+  "oldfieldname": "stock_uom", 
+  "fieldname": "stock_uom", 
+  "fieldtype": "Data", 
+  "reqd": 1, 
+  "permlevel": 1
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Rate", 
+  "fieldname": "rate", 
+  "fieldtype": "Float", 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Amount", 
+  "oldfieldname": "amount_as_per_mar", 
+  "width": "150px", 
+  "fieldname": "amount", 
+  "fieldtype": "Currency", 
+  "permlevel": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Scrap %", 
+  "oldfieldname": "scrap", 
+  "fieldname": "scrap", 
+  "fieldtype": "Currency", 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Text", 
+  "doctype": "DocField", 
+  "label": "Item Description", 
+  "oldfieldname": "description", 
+  "width": "250px", 
+  "fieldname": "description", 
+  "fieldtype": "Text", 
+  "reqd": 0, 
+  "permlevel": 0
+ }, 
+ {
+  "print_hide": 1, 
+  "oldfieldtype": "Float", 
+  "doctype": "DocField", 
+  "label": "Qty Consumed Per Unit", 
+  "oldfieldname": "qty_consumed_per_unit", 
+  "fieldname": "qty_consumed_per_unit", 
+  "fieldtype": "Float", 
+  "hidden": 1, 
+  "permlevel": 1
+ }, 
+ {
+  "write": 1, 
+  "doctype": "DocPerm", 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocPerm", 
+  "permlevel": 1
+ }
+]
\ No newline at end of file
diff --git a/production/doctype/bom_operation/__init__.py b/manufacturing/doctype/bom_operation/__init__.py
similarity index 100%
rename from production/doctype/bom_operation/__init__.py
rename to manufacturing/doctype/bom_operation/__init__.py
diff --git a/production/doctype/bom_operation/bom_operation.py b/manufacturing/doctype/bom_operation/bom_operation.py
similarity index 100%
rename from production/doctype/bom_operation/bom_operation.py
rename to manufacturing/doctype/bom_operation/bom_operation.py
diff --git a/manufacturing/doctype/bom_operation/bom_operation.txt b/manufacturing/doctype/bom_operation/bom_operation.txt
new file mode 100644
index 0000000..6333dc5
--- /dev/null
+++ b/manufacturing/doctype/bom_operation/bom_operation.txt
@@ -0,0 +1,101 @@
+[
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-12-14 10:15:16", 
+  "modified_by": "Administrator", 
+  "modified": "2012-12-14 16:06:37"
+ }, 
+ {
+  "istable": 1, 
+  "name": "__common__", 
+  "doctype": "DocType", 
+  "module": "Manufacturing"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "BOM Operation", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "permlevel": 0, 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "BOM Operation", 
+  "read": 1, 
+  "doctype": "DocPerm", 
+  "parenttype": "DocType", 
+  "role": "System Manager", 
+  "parentfield": "permissions"
+ }, 
+ {
+  "name": "BOM Operation", 
+  "doctype": "DocType"
+ }, 
+ {
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Operation No", 
+  "oldfieldname": "operation_no", 
+  "fieldname": "operation_no", 
+  "fieldtype": "Data", 
+  "reqd": 1
+ }, 
+ {
+  "oldfieldtype": "Text", 
+  "doctype": "DocField", 
+  "label": "Operation Description", 
+  "oldfieldname": "opn_description", 
+  "fieldname": "opn_description", 
+  "fieldtype": "Text", 
+  "reqd": 1
+ }, 
+ {
+  "oldfieldtype": "Link", 
+  "doctype": "DocField", 
+  "label": "Workstation", 
+  "oldfieldname": "workstation", 
+  "fieldname": "workstation", 
+  "fieldtype": "Link", 
+  "reqd": 0, 
+  "options": "Workstation"
+ }, 
+ {
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Hour Rate", 
+  "oldfieldname": "hour_rate", 
+  "fieldname": "hour_rate", 
+  "fieldtype": "Currency", 
+  "reqd": 0
+ }, 
+ {
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Operation Time (mins)", 
+  "oldfieldname": "time_in_mins", 
+  "fieldname": "time_in_mins", 
+  "fieldtype": "Currency", 
+  "reqd": 0
+ }, 
+ {
+  "oldfieldtype": "Currency", 
+  "allow_on_submit": 0, 
+  "doctype": "DocField", 
+  "label": "Operating Cost", 
+  "oldfieldname": "operating_cost", 
+  "fieldname": "operating_cost", 
+  "fieldtype": "Currency", 
+  "reqd": 0
+ }, 
+ {
+  "write": 1, 
+  "doctype": "DocPerm", 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocPerm", 
+  "permlevel": 1
+ }
+]
\ No newline at end of file
diff --git a/manufacturing/doctype/bom_replace_tool/__init__.py b/manufacturing/doctype/bom_replace_tool/__init__.py
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/manufacturing/doctype/bom_replace_tool/__init__.py
diff --git a/production/page/production_home/production_home.js b/manufacturing/doctype/bom_replace_tool/bom_replace_tool.js
similarity index 71%
copy from production/page/production_home/production_home.js
copy to manufacturing/doctype/bom_replace_tool/bom_replace_tool.js
index a4bb398..c98603c 100644
--- a/production/page/production_home/production_home.js
+++ b/manufacturing/doctype/bom_replace_tool/bom_replace_tool.js
@@ -14,7 +14,16 @@
 // You should have received a copy of the GNU General Public License
 // along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
-pscript['onload_production-home'] = function(wrapper) {
-	wrapper.appframe = new wn.ui.AppFrame($(wrapper).find('.appframe-area'), 'Production');
-	erpnext.module_page.setup_page('Production', wrapper);
-}
\ No newline at end of file
+
+cur_frm.cscript.refresh = function(doc) {
+	cur_frm.disable_save();
+}
+
+cur_frm.set_query("current_bom", function(doc) {
+	return erpnext.queries.bom({name: "!" + doc.new_bom});
+});
+
+
+cur_frm.set_query("new_bom", function(doc) {
+	return erpnext.queries.bom({name: "!" + doc.current_bom});
+});
\ No newline at end of file
diff --git a/manufacturing/doctype/bom_replace_tool/bom_replace_tool.py b/manufacturing/doctype/bom_replace_tool/bom_replace_tool.py
new file mode 100644
index 0000000..177adcd
--- /dev/null
+++ b/manufacturing/doctype/bom_replace_tool/bom_replace_tool.py
@@ -0,0 +1,57 @@
+# ERPNext - web based ERP (http://erpnext.com)
+# Copyright (C) 2012 Web Notes Technologies Pvt Ltd
+# 
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+# 
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+# 
+# You should have received a copy of the GNU General Public License
+# along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+from __future__ import unicode_literals
+import webnotes
+from webnotes.utils import cstr, flt
+from webnotes.model.code import get_obj
+from webnotes import msgprint, _
+	
+class DocType:
+	def __init__( self, doc, doclist=[]):
+		self.doc = doc
+		self.doclist = doclist
+		
+	def replace_bom(self):
+		self.validate_bom()
+		self.update_new_bom()
+		bom_list = self.get_parent_boms()
+		for bom in bom_list:
+			bom_obj = get_obj("BOM", bom, with_children=1)
+			bom_obj.update_cost_and_exploded_items()
+			
+		webnotes.msgprint(_("BOM replaced"))
+
+	def validate_bom(self):
+		if cstr(self.doc.current_bom) == cstr(self.doc.new_bom):
+			msgprint("Current BOM and New BOM can not be same", raise_exception=1)
+	
+	def update_new_bom(self):
+		current_bom_unitcost = webnotes.conn.sql("""select total_cost/quantity 
+			from `tabBOM` where name = %s""", self.doc.current_bom)
+		current_bom_unitcost = current_bom_unitcost and flt(current_bom_unitcost[0][0]) or 0
+		webnotes.conn.sql("""update `tabBOM Item` set bom_no=%s, 
+			rate=%s, amount=qty*%s where bom_no = %s and docstatus < 2""", 
+			(self.doc.new_bom, current_bom_unitcost, current_bom_unitcost, self.doc.current_bom))
+			
+	def get_parent_boms(bom_no):
+		return [d[0] for d in webnotes.conn.sql("""select distinct parent from
+			`tabBOM Item` where ifnull(bom_no, '')=%s and docstatus < 2""", bom_no)]
+	
+	def get_parent_boms(self):
+		return [d[0] for d in webnotes.conn.sql("""select distinct parent 
+			from `tabBOM Item` where ifnull(bom_no, '') = %s and docstatus < 2""",
+			self.doc.new_bom)]
\ No newline at end of file
diff --git a/manufacturing/doctype/bom_replace_tool/bom_replace_tool.txt b/manufacturing/doctype/bom_replace_tool/bom_replace_tool.txt
new file mode 100644
index 0000000..bb2c56b
--- /dev/null
+++ b/manufacturing/doctype/bom_replace_tool/bom_replace_tool.txt
@@ -0,0 +1,78 @@
+[
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-12-06 12:10:10", 
+  "modified_by": "Administrator", 
+  "modified": "2012-12-06 12:32:22"
+ }, 
+ {
+  "in_create": 1, 
+  "allow_print": 1, 
+  "module": "Production", 
+  "document_type": "Other", 
+  "description": "Replace a particular BOM in all other BOMs where it is used. It will replace the old BOM link, update cost and regenerate \"BOM Explosion Item\" table as per new BOM", 
+  "read_only": 1, 
+  "allow_email": 1, 
+  "hide_heading": 1, 
+  "issingle": 1, 
+  "name": "__common__", 
+  "doctype": "DocType", 
+  "hide_toolbar": 1, 
+  "allow_copy": 1
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "BOM Replace Tool", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "permlevel": 0, 
+  "parentfield": "fields"
+ }, 
+ {
+  "parent": "BOM Replace Tool", 
+  "read": 1, 
+  "name": "__common__", 
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "write": 1, 
+  "parenttype": "DocType", 
+  "role": "Administrator", 
+  "permlevel": 0, 
+  "parentfield": "permissions"
+ }, 
+ {
+  "name": "BOM Replace Tool", 
+  "doctype": "DocType"
+ }, 
+ {
+  "description": "The BOM which will be replaced", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Current BOM", 
+  "fieldname": "current_bom", 
+  "fieldtype": "Link", 
+  "reqd": 1, 
+  "options": "BOM"
+ }, 
+ {
+  "description": "The new BOM after replacement", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "New BOM", 
+  "fieldname": "new_bom", 
+  "fieldtype": "Link", 
+  "reqd": 1, 
+  "options": "BOM"
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Replace", 
+  "fieldname": "replace", 
+  "fieldtype": "Button", 
+  "options": "replace_bom"
+ }, 
+ {
+  "doctype": "DocPerm"
+ }
+]
\ No newline at end of file
diff --git a/production/doctype/production_order/__init__.py b/manufacturing/doctype/production_order/__init__.py
similarity index 100%
rename from production/doctype/production_order/__init__.py
rename to manufacturing/doctype/production_order/__init__.py
diff --git a/manufacturing/doctype/production_order/production_order.js b/manufacturing/doctype/production_order/production_order.js
new file mode 100644
index 0000000..5242dce
--- /dev/null
+++ b/manufacturing/doctype/production_order/production_order.js
@@ -0,0 +1,112 @@
+// ERPNext - web based ERP (http://erpnext.com)
+// Copyright (C) 2012 Web Notes Technologies Pvt Ltd
+// 
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation, either version 3 of the License, or
+// (at your option) any later version.
+// 
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.	See the
+// GNU General Public License for more details.
+// 
+// You should have received a copy of the GNU General Public License
+// along with this program.	If not, see <http://www.gnu.org/licenses/>.
+
+cur_frm.cscript.onload = function(doc, dt, dn) {
+	if (!doc.status) doc.status = 'Draft';
+	cfn_set_fields(doc, dt, dn);
+}
+
+cur_frm.cscript.refresh = function(doc, dt, dn) {
+	cur_frm.set_intro("");
+	cfn_set_fields(doc, dt, dn);
+	if(doc.docstatus===0 && !doc.__islocal) {
+		cur_frm.set_intro("Submit this Production Order for further processing.");
+	} else if(doc.docstatus===1) {
+		if(doc.status === "Stopped") {
+			cur_frm.set_intro("This Production Order is Stopped.");
+		} else {
+			if(doc.produced_qty == doc.qty) {
+				cur_frm.set_intro("This Production Order is Completed.");
+			} else {
+				cur_frm.set_intro("This Production Order is in progress.");
+			}
+		}
+	}
+}
+
+var cfn_set_fields = function(doc, dt, dn) {
+	if (doc.docstatus == 1) {
+		if (doc.status != 'Stopped' && doc.status != 'Completed')
+		cur_frm.add_custom_button('Stop!', cur_frm.cscript['Stop Production Order']);
+		else if (doc.status == 'Stopped')
+			cur_frm.add_custom_button('Unstop', cur_frm.cscript['Unstop Production Order']);
+
+		if (doc.status == 'Submitted' || doc.status == 'Material Transferred' || doc.status == 'In Process'){
+			cur_frm.add_custom_button('Issue Raw Materials', cur_frm.cscript['Issue Raw Materials']);
+			cur_frm.add_custom_button('Update Finished Goods', cur_frm.cscript['Update Finished Goods']);
+		} 
+	}
+}
+
+cur_frm.cscript.production_item = function(doc) {
+	cur_frm.call({
+		method: "get_item_details",
+		args: { item: doc.production_item }
+	});
+}
+
+cur_frm.cscript['Stop Production Order'] = function() {
+	var doc = cur_frm.doc;
+	var check = confirm("Do you really want to stop production order: " + doc.name);
+	if (check) {
+		$c_obj(make_doclist(doc.doctype, doc.name), 'stop_unstop', 'Stopped', function(r, rt) {cur_frm.refresh();});
+	}
+}
+
+cur_frm.cscript['Unstop Production Order'] = function() {
+	var doc = cur_frm.doc;
+	var check = confirm("Do really want to unstop production order: " + doc.name);
+	if (check)
+			$c_obj(make_doclist(doc.doctype, doc.name), 'stop_unstop', 'Unstopped', function(r, rt) {cur_frm.refresh();});
+}
+
+cur_frm.cscript['Issue Raw Materials'] = function() {
+	var doc = cur_frm.doc;
+	cur_frm.cscript.make_se(doc, 'Material Transfer');
+}
+
+cur_frm.cscript['Update Finished Goods'] = function() {
+	var doc = cur_frm.doc;
+	cur_frm.cscript.make_se(doc, 'Manufacture/Repack');
+}
+
+cur_frm.cscript.make_se = function(doc, purpose) {
+	var se = wn.model.get_new_doc("Stock Entry");
+	se.purpose = purpose;
+	se.production_order = doc.name;
+	se.company = doc.company;
+	se.fg_completed_qty = doc.qty - doc.produced_qty;
+	se.bom_no = doc.bom_no;
+	se.use_multi_level_bom = 1;
+	loaddoc('Stock Entry', se.name);
+}
+
+cur_frm.fields_dict['production_item'].get_query = function(doc) {
+	 return 'SELECT DISTINCT `tabItem`.`name`, `tabItem`.`description` FROM `tabItem` WHERE (IFNULL(`tabItem`.`end_of_life`,"") = "" OR `tabItem`.`end_of_life` = "0000-00-00" OR `tabItem`.`end_of_life` > NOW()) AND `tabItem`.docstatus != 2 AND `tabItem`.is_pro_applicable = "Yes" AND `tabItem`.%(key)s LIKE "%s" ORDER BY `tabItem`.`name` LIMIT 50';
+}
+
+cur_frm.fields_dict['project_name'].get_query = function(doc, dt, dn) {
+	return 'SELECT `tabProject`.name FROM `tabProject` \
+		WHERE `tabProject`.status not in ("Completed", "Cancelled") \
+		AND `tabProject`.name LIKE "%s" ORDER BY `tabProject`.name ASC LIMIT 50';
+}
+
+
+cur_frm.set_query("bom_no", function(doc) {
+	if (doc.production_item) {
+		return erpnext.queries.bom({item: cstr(doc.production_item)});
+	} else msgprint(" Please enter Production Item first");
+});
\ No newline at end of file
diff --git a/production/doctype/production_order/production_order.py b/manufacturing/doctype/production_order/production_order.py
similarity index 67%
rename from production/doctype/production_order/production_order.py
rename to manufacturing/doctype/production_order/production_order.py
index 5314971..0b9a94a 100644
--- a/production/doctype/production_order/production_order.py
+++ b/manufacturing/doctype/production_order/production_order.py
@@ -35,20 +35,8 @@
 
 
 	def autoname(self):
-		p = self.doc.fiscal_year
-		self.doc.name = make_autoname('PRO/' + self.doc.fiscal_year[2:5]+self.doc.fiscal_year[7:9] + '/.######')
-
-
-	def get_item_detail(self, prod_item):
-		item = sql("""select description, stock_uom, default_bom from `tabItem` 
-		where (ifnull(end_of_life,'')='' or end_of_life = '0000-00-00' or end_of_life >	now()) and name = %s""", prod_item, as_dict = 1 )
-		ret = {
-			'description'		: item and item[0]['description'] or '',
-			'stock_uom'			: item and item[0]['stock_uom'] or '',
-			'default_bom'		: item and item[0]['default_bom'] or ''
-		}
-		return ret
-
+		self.doc.name = make_autoname('PRO/' + self.doc.fiscal_year[2:5] + 
+			self.doc.fiscal_year[7:9] + '/.######')
 
 	def validate(self):
 		if self.doc.production_item :
@@ -59,8 +47,8 @@
 					% cstr(self.doc.production_item), raise_exception=1)
 
 		if self.doc.bom_no:
-			bom = sql("""select name from `tabBOM`	where name = %s and docstatus = 1 
-				and is_active = 'Yes' and item = %s"""
+			bom = sql("""select name from `tabBOM` where name=%s and docstatus=1 
+				and is_active=1 and item=%s"""
 				, (self.doc.bom_no, self.doc.production_item), as_dict =1)
 			if not bom:
 				msgprint("""Incorrect BOM: %s entered. 
@@ -72,8 +60,33 @@
 					where name=%s and docstatus = 1""", self.doc.sales_order):
 				msgprint("Sales Order: %s is not valid" % self.doc.sales_order, raise_exception=1)
 				
-			get_obj("Production Control").validate_production_order_against_so(
-				self.doc.production_item, self.doc.sales_order, self.doc.qty, self.doc.name)
+			self.validate_production_order_against_so()
+				
+	
+	def validate_production_order_against_so(self):
+		# already ordered qty
+		ordered_qty_against_so = webnotes.conn.sql("""select sum(qty) from `tabProduction Order`
+			where production_item = %s and sales_order = %s and docstatus < 2""", 
+			(self.doc.production_item, self.doc.sales_order))[0][0]
+
+		
+		# get qty from Sales Order Item table
+		so_item_qty = webnotes.conn.sql("""select sum(qty) from `tabSales Order Item` 
+			where parent = %s and item_code = %s""", 
+			(self.doc.sales_order, self.doc.production_item))[0][0]
+		# get qty from Packing Item table
+		dnpi_qty = webnotes.conn.sql("""select sum(qty) from `tabDelivery Note Packing Item` 
+			where parent = %s and parenttype = 'Sales Order' and item_code = %s""", 
+			(self.doc.sales_order, self.doc.production_item))[0][0]
+		# total qty in SO
+		so_qty = flt(so_item_qty) + flt(dnpi_qty)
+		
+		if ordered_qty_against_so > so_qty:
+			msgprint("""Total production order qty for item: %s against sales order: %s \
+			 	will be %s, which is greater than sales order qty (%s). 
+				Please reduce qty or remove the item.""" %
+				(self.doc.production_item, self.doc.sales_order, 
+					ordered_qty_against_so, so_qty), raise_exception=1)
 
 
 	def stop_unstop(self, status):
@@ -119,4 +132,21 @@
 			"posting_date": nowdate(),
 			"planned_qty": flt(qty)
 		}
-		get_obj('Warehouse', self.doc.fg_warehouse).update_bin(args)
\ No newline at end of file
+		get_obj('Warehouse', self.doc.fg_warehouse).update_bin(args)
+
+@webnotes.whitelist()	
+def get_item_details(item):
+	res = webnotes.conn.sql("""select stock_uom
+		from `tabItem` where (ifnull(end_of_life, "")="" or end_of_life > now())
+		and name=%s""", (item,), as_dict=1)
+	
+	if not res:
+		return {}
+		
+	res = res[0]
+	bom = webnotes.conn.sql("""select name from `tabBOM` where item=%s 
+		and ifnull(is_default, 0)=1""", (item,))
+	if bom:
+		res.bom_no = bom[0][0]
+		
+	return res
\ No newline at end of file
diff --git a/manufacturing/doctype/production_order/production_order.txt b/manufacturing/doctype/production_order/production_order.txt
new file mode 100644
index 0000000..163e933
--- /dev/null
+++ b/manufacturing/doctype/production_order/production_order.txt
@@ -0,0 +1,201 @@
+[
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-12-19 12:29:07", 
+  "modified_by": "Administrator", 
+  "modified": "2012-12-19 17:45:59"
+ }, 
+ {
+  "is_submittable": 1, 
+  "in_create": 0, 
+  "doctype": "DocType", 
+  "module": "Manufacturing", 
+  "name": "__common__"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Production Order", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "permlevel": 0, 
+  "parentfield": "fields"
+ }, 
+ {
+  "parent": "Production Order", 
+  "read": 1, 
+  "cancel": 1, 
+  "name": "__common__", 
+  "amend": 1, 
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "submit": 1, 
+  "write": 1, 
+  "parenttype": "DocType", 
+  "role": "Manufacturing User", 
+  "permlevel": 0, 
+  "parentfield": "permissions"
+ }, 
+ {
+  "name": "Production Order", 
+  "doctype": "DocType"
+ }, 
+ {
+  "read_only": 1, 
+  "depends_on": "eval:!doc.__islocal", 
+  "no_copy": 1, 
+  "search_index": 1, 
+  "doctype": "DocField", 
+  "label": "Status", 
+  "oldfieldname": "status", 
+  "fieldname": "status", 
+  "fieldtype": "Select", 
+  "oldfieldtype": "Select", 
+  "reqd": 1, 
+  "options": "\nDraft\nSubmitted\nStopped\nIn Process\nCompleted\nCancelled", 
+  "in_filter": 1
+ }, 
+ {
+  "read_only": 0, 
+  "oldfieldtype": "Link", 
+  "doctype": "DocField", 
+  "label": "Item To Manufacture", 
+  "oldfieldname": "production_item", 
+  "fieldname": "production_item", 
+  "fieldtype": "Link", 
+  "reqd": 1, 
+  "options": "Item", 
+  "in_filter": 1
+ }, 
+ {
+  "read_only": 0, 
+  "description": "Bill of Material to be considered for manufacturing", 
+  "oldfieldtype": "Link", 
+  "doctype": "DocField", 
+  "label": "BOM No", 
+  "oldfieldname": "bom_no", 
+  "fieldname": "bom_no", 
+  "fieldtype": "Link", 
+  "depends_on": "production_item", 
+  "reqd": 1, 
+  "options": "BOM"
+ }, 
+ {
+  "read_only": 0, 
+  "description": "Update Planned Quantity in this Warehouse", 
+  "depends_on": "production_item", 
+  "doctype": "DocField", 
+  "label": "For Warehouse", 
+  "fieldname": "fg_warehouse", 
+  "fieldtype": "Link", 
+  "reqd": 1, 
+  "options": "Warehouse"
+ }, 
+ {
+  "read_only": 0, 
+  "oldfieldtype": "Column Break", 
+  "doctype": "DocField", 
+  "width": "50%", 
+  "fieldname": "column_break1", 
+  "fieldtype": "Column Break"
+ }, 
+ {
+  "read_only": 0, 
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Qty To Manufacture", 
+  "oldfieldname": "qty", 
+  "fieldname": "qty", 
+  "fieldtype": "Float", 
+  "depends_on": "production_item", 
+  "reqd": 1
+ }, 
+ {
+  "read_only": 1, 
+  "description": "Automatically updated via Backflush (Stock Entry)", 
+  "no_copy": 1, 
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Manufactured Qty", 
+  "oldfieldname": "produced_qty", 
+  "fieldname": "produced_qty", 
+  "fieldtype": "Float", 
+  "depends_on": "eval:doc.docstatus==1"
+ }, 
+ {
+  "read_only": 1, 
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Stock UOM", 
+  "oldfieldname": "stock_uom", 
+  "fieldname": "stock_uom", 
+  "fieldtype": "Data", 
+  "depends_on": "production_item"
+ }, 
+ {
+  "read_only": 0, 
+  "doctype": "DocField", 
+  "label": "More Info", 
+  "fieldname": "more_info", 
+  "fieldtype": "Section Break"
+ }, 
+ {
+  "read_only": 0, 
+  "description": "Manufacture against Sales Order", 
+  "doctype": "DocField", 
+  "label": "Sales Order", 
+  "fieldname": "sales_order", 
+  "fieldtype": "Link", 
+  "options": "Sales Order"
+ }, 
+ {
+  "read_only": 0, 
+  "oldfieldtype": "Link", 
+  "doctype": "DocField", 
+  "label": "Project Name", 
+  "oldfieldname": "project_name", 
+  "fieldname": "project_name", 
+  "fieldtype": "Link", 
+  "options": "Project", 
+  "in_filter": 1
+ }, 
+ {
+  "read_only": 0, 
+  "doctype": "DocField", 
+  "width": "50%", 
+  "fieldname": "column_break2", 
+  "fieldtype": "Column Break"
+ }, 
+ {
+  "read_only": 0, 
+  "oldfieldtype": "Link", 
+  "doctype": "DocField", 
+  "label": "Company", 
+  "oldfieldname": "company", 
+  "fieldname": "company", 
+  "fieldtype": "Link", 
+  "reqd": 1, 
+  "options": "Company"
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Fiscal Year", 
+  "fieldname": "fiscal_year", 
+  "fieldtype": "Select", 
+  "reqd": 1, 
+  "options": "link:Fiscal Year"
+ }, 
+ {
+  "read_only": 1, 
+  "no_copy": 1, 
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Amended From", 
+  "oldfieldname": "amended_from", 
+  "fieldname": "amended_from", 
+  "fieldtype": "Data"
+ }, 
+ {
+  "doctype": "DocPerm"
+ }
+]
\ No newline at end of file
diff --git a/production/doctype/production_order/production_order_list.js b/manufacturing/doctype/production_order/production_order_list.js
similarity index 86%
rename from production/doctype/production_order/production_order_list.js
rename to manufacturing/doctype/production_order/production_order_list.js
index 73b9535..dd56b71 100644
--- a/production/doctype/production_order/production_order_list.js
+++ b/manufacturing/doctype/production_order/production_order_list.js
@@ -7,7 +7,7 @@
 			'`tabProduction Order`.fg_warehouse',
 			'`tabProduction Order`.stock_uom',
 			'IFNULL(`tabProduction Order`.qty, 0) as qty',
-			'`tabProduction Order`.posting_date',
+			'`tabProduction Order`.creation',
 			'`tabProduction Order`.status',
 		]);
 		this.stats = this.stats.concat(['company']);
@@ -15,7 +15,7 @@
 
 	prepare_data: function(data) {
 		this._super(data);
-		data.posting_date = wn.datetime.str_to_user(data.posting_date);
+		data.creation = wn.datetime.str_to_user(data.creation);
 	},
 
 	columns: [
@@ -33,7 +33,7 @@
 			},
 			css: {'text-align':'right'}
 		},
-		{width: '12%', content:'posting_date', css: {
+		{width: '12%', content:'creation', css: {
 			'text-align': 'right', 'color':'#777'
 		}},
 	]
diff --git a/production/doctype/production_plan_item/__init__.py b/manufacturing/doctype/production_plan_item/__init__.py
similarity index 100%
rename from production/doctype/production_plan_item/__init__.py
rename to manufacturing/doctype/production_plan_item/__init__.py
diff --git a/production/doctype/production_plan_item/production_plan_item.py b/manufacturing/doctype/production_plan_item/production_plan_item.py
similarity index 100%
rename from production/doctype/production_plan_item/production_plan_item.py
rename to manufacturing/doctype/production_plan_item/production_plan_item.py
diff --git a/production/doctype/production_plan_item/production_plan_item.txt b/manufacturing/doctype/production_plan_item/production_plan_item.txt
similarity index 96%
rename from production/doctype/production_plan_item/production_plan_item.txt
rename to manufacturing/doctype/production_plan_item/production_plan_item.txt
index b2cbf8d..ab3ce11 100644
--- a/production/doctype/production_plan_item/production_plan_item.txt
+++ b/manufacturing/doctype/production_plan_item/production_plan_item.txt
@@ -4,14 +4,14 @@
   "docstatus": 0, 
   "creation": "2012-07-03 13:30:04", 
   "modified_by": "Administrator", 
-  "modified": "2012-11-29 19:02:38"
+  "modified": "2012-12-10 18:30:00"
  }, 
  {
   "istable": 1, 
   "autoname": "PPID/.#####", 
   "name": "__common__", 
   "doctype": "DocType", 
-  "module": "Production"
+  "module": "Manufacturing"
  }, 
  {
   "name": "__common__", 
diff --git a/production/doctype/production_plan_sales_order/__init__.py b/manufacturing/doctype/production_plan_sales_order/__init__.py
similarity index 100%
rename from production/doctype/production_plan_sales_order/__init__.py
rename to manufacturing/doctype/production_plan_sales_order/__init__.py
diff --git a/production/doctype/production_plan_sales_order/production_plan_sales_order.py b/manufacturing/doctype/production_plan_sales_order/production_plan_sales_order.py
similarity index 100%
rename from production/doctype/production_plan_sales_order/production_plan_sales_order.py
rename to manufacturing/doctype/production_plan_sales_order/production_plan_sales_order.py
diff --git a/production/doctype/production_plan_sales_order/production_plan_sales_order.txt b/manufacturing/doctype/production_plan_sales_order/production_plan_sales_order.txt
similarity index 95%
rename from production/doctype/production_plan_sales_order/production_plan_sales_order.txt
rename to manufacturing/doctype/production_plan_sales_order/production_plan_sales_order.txt
index 79adc14..37e0f8a 100644
--- a/production/doctype/production_plan_sales_order/production_plan_sales_order.txt
+++ b/manufacturing/doctype/production_plan_sales_order/production_plan_sales_order.txt
@@ -4,14 +4,14 @@
   "docstatus": 0, 
   "creation": "2012-07-03 13:30:04", 
   "modified_by": "Administrator", 
-  "modified": "2012-11-29 17:49:15"
+  "modified": "2012-12-10 18:30:00"
  }, 
  {
   "istable": 1, 
   "autoname": "PP/.SO/.#####", 
   "name": "__common__", 
   "doctype": "DocType", 
-  "module": "Production"
+  "module": "Manufacturing"
  }, 
  {
   "name": "__common__", 
diff --git a/production/doctype/production_planning_tool/__init__.py b/manufacturing/doctype/production_planning_tool/__init__.py
similarity index 100%
rename from production/doctype/production_planning_tool/__init__.py
rename to manufacturing/doctype/production_planning_tool/__init__.py
diff --git a/production/doctype/production_planning_tool/production_planning_tool.js b/manufacturing/doctype/production_planning_tool/production_planning_tool.js
similarity index 90%
rename from production/doctype/production_planning_tool/production_planning_tool.js
rename to manufacturing/doctype/production_planning_tool/production_planning_tool.js
index ac4d76d..5d9a936 100644
--- a/production/doctype/production_planning_tool/production_planning_tool.js
+++ b/manufacturing/doctype/production_planning_tool/production_planning_tool.js
@@ -19,6 +19,10 @@
 	refresh_field("company");
 }
 
+cur_frm.cscript.refresh = function(doc) {
+	cur_frm.disable_save();
+}
+
 cur_frm.cscript.sales_order = function(doc,cdt,cdn) {
 	var d = locals[cdt][cdn];
 	if (d.sales_order) {
@@ -51,10 +55,9 @@
 
 cur_frm.fields_dict['pp_details'].grid.get_field('bom_no').get_query = function(doc) {
 	var d = locals[this.doctype][this.docname];
-  	return 'SELECT DISTINCT `tabBOM`.`name` \
-		FROM `tabBOM` WHERE `tabBOM`.`item` = "' + d.item_code + 
-		'" AND `tabBOM`.`is_active` = "Yes" AND `tabBOM`.docstatus = 1 \
-		AND `tabBOM`.`name` like "%s" ORDER BY `tabBOM`.`name` LIMIT 50';
+	if (d.item_code) {
+		return erpnext.queries.bom({item: cstr(d.item_code)});
+	} else msgprint(" Please enter Item first");
 }
 
 cur_frm.fields_dict.customer.get_query = erpnext.utils.customer_query;
diff --git a/production/doctype/production_planning_tool/production_planning_tool.py b/manufacturing/doctype/production_planning_tool/production_planning_tool.py
similarity index 89%
rename from production/doctype/production_planning_tool/production_planning_tool.py
rename to manufacturing/doctype/production_planning_tool/production_planning_tool.py
index 64ac73d..51cb3a7 100644
--- a/production/doctype/production_planning_tool/production_planning_tool.py
+++ b/manufacturing/doctype/production_planning_tool/production_planning_tool.py
@@ -16,8 +16,8 @@
 
 from __future__ import unicode_literals
 import webnotes
-from webnotes.utils import cstr, flt
-from webnotes.model.doc import addchild
+from webnotes.utils import cstr, flt, nowdate, get_defaults
+from webnotes.model.doc import addchild, Document
 from webnotes.model.wrapper import getlist
 from webnotes.model.code import get_obj
 from webnotes import msgprint
@@ -173,7 +173,7 @@
 				(d.item_code, d.idx), raise_exception=1)
 		else:
 			bom = sql("""select name from `tabBOM` where name = %s and item = %s 
-				and docstatus = 1 and ifnull(is_active, 'No') = 'Yes'""", 
+				and docstatus = 1 and is_active = 1""", 
 				(d.bom_no, d.item_code), as_dict = 1)
 			if not bom:
 				msgprint("""Incorrect BOM No: %s entered for item: %s at row no: %s
@@ -186,8 +186,10 @@
 		self.validate_data()
 
 		items = self.get_distinct_items_and_boms()[1]
-		pro = get_obj('Production Control').create_production_order(items)
+		pro = self.create_production_order(items)
 		if pro:
+			pro = ["""<a href="#Form/Production Order/%s" target="_blank">%s</a>""" % \
+				(p, p) for p in pro]
 			msgprint("Following Production Order has been generated:\n" + '\n'.join(pro))
 		else :
 			msgprint("No Production Order generated.")
@@ -199,15 +201,36 @@
 		for d in self.doclist.get({"parentfield": "pp_details"}):
 			bom_dict[d.bom_no] = bom_dict.get(d.bom_no, 0) + flt(d.planned_qty)
 			item_dict[(d.item_code, d.sales_order)] = {
-				"qty" : flt(item_dict.get((d.item_code, d.sales_order), {}).get("qty")) + \
-				 	flt(d.planned_qty),
-				"bom_no": d.bom_no,
-				"description": d.description,
-				"stock_uom": d.stock_uom,
-				"use_multi_level_bom": self.doc.use_multi_level_bom,
-				"company": self.doc.company,
+				"qty" 				: flt(item_dict.get((d.item_code, d.sales_order), \
+					{}).get("qty")) + flt(d.planned_qty),
+				"bom_no"			: d.bom_no,
+				"description"		: d.description,
+				"stock_uom"			: d.stock_uom,
+				"company"			: self.doc.company,
+				"wip_warehouse"		: "",
+				"fg_warehouse"		: "",
+				"status"			: "Draft",
+				"fiscal_year"		: get_defaults()["fiscal_year"]
 			}
 		return bom_dict, item_dict
+		
+	def create_production_order(self, items):
+		"""Create production order. Called from Production Planning Tool"""
+
+		pro_list = []
+		for item_so in items:
+			pro_doc = Document('Production Order')
+			pro_doc.production_item = item_so[0]
+			pro_doc.sales_order = item_so[1]
+			for key in items[item_so]:
+				pro_doc.fields[key] = items[item_so][key]
+			
+			pro_doc.save(new = 1)
+			
+			get_obj("Production Order", pro_doc.name).validate_production_order_against_so()
+			pro_list.append(pro_doc.name)
+			
+		return pro_list
 
 	def download_raw_materials(self):
 		""" Create csv data for required raw material to produce finished goods"""
diff --git a/production/doctype/production_planning_tool/production_planning_tool.txt b/manufacturing/doctype/production_planning_tool/production_planning_tool.txt
similarity index 87%
rename from production/doctype/production_planning_tool/production_planning_tool.txt
rename to manufacturing/doctype/production_planning_tool/production_planning_tool.txt
index 9bda9ab..dd7acfd 100644
--- a/production/doctype/production_planning_tool/production_planning_tool.txt
+++ b/manufacturing/doctype/production_planning_tool/production_planning_tool.txt
@@ -2,16 +2,17 @@
  {
   "owner": "jai@webnotestech.com", 
   "docstatus": 0, 
-  "creation": "2012-07-03 13:30:03", 
+  "creation": "2012-12-14 10:15:16", 
   "modified_by": "Administrator", 
-  "modified": "2012-12-03 15:39:44"
+  "modified": "2012-12-14 11:37:40"
  }, 
  {
   "read_only": 1, 
   "issingle": 1, 
   "in_create": 1, 
+  "default_print_format": "Standard", 
   "doctype": "DocType", 
-  "module": "Production", 
+  "module": "Manufacturing", 
   "name": "__common__"
  }, 
  {
@@ -39,7 +40,6 @@
  }, 
  {
   "description": "Select Sales Orders from which you want to create Production Orders.", 
-  "colour": "White:FFF", 
   "doctype": "DocField", 
   "label": "Select Sales Orders", 
   "fieldname": "select_sales_orders", 
@@ -68,9 +68,9 @@
  {
   "doctype": "DocField", 
   "label": "Company", 
-  "reqd": 1, 
   "fieldname": "company", 
   "fieldtype": "Link", 
+  "reqd": 1, 
   "options": "Company"
  }, 
  {
@@ -99,7 +99,6 @@
  }, 
  {
   "description": "Pull sales orders (pending to deliver) based on the above criteria", 
-  "colour": "White:FFF", 
   "doctype": "DocField", 
   "label": "Get Sales Orders", 
   "fieldname": "get_sales_orders", 
@@ -107,7 +106,6 @@
   "options": "get_open_sales_orders"
  }, 
  {
-  "colour": "White:FFF", 
   "doctype": "DocField", 
   "label": "Production Plan Sales Orders", 
   "fieldname": "pp_so_details", 
@@ -115,17 +113,14 @@
   "options": "Production Plan Sales Order"
  }, 
  {
-  "colour": "White:FFF", 
   "doctype": "DocField", 
   "label": "Clear Table", 
-  "trigger": "Client", 
   "fieldname": "clear_so_table", 
   "fieldtype": "Button", 
   "options": "clear_so_table"
  }, 
  {
   "description": "Enter items and planned qty for which you want to raise production orders or download raw materials for analysis.", 
-  "colour": "White:FFF", 
   "doctype": "DocField", 
   "label": "Create Production Orders", 
   "fieldname": "create_production_orders", 
@@ -133,7 +128,6 @@
  }, 
  {
   "description": "Pull items from Sales Order mentioned in the above table.", 
-  "colour": "White:FFF", 
   "doctype": "DocField", 
   "label": "Get Items", 
   "fieldname": "get_items_from_so", 
@@ -141,7 +135,6 @@
   "options": "get_items_from_so"
  }, 
  {
-  "colour": "White:FFF", 
   "doctype": "DocField", 
   "label": "Production Plan Items", 
   "fieldname": "pp_details", 
@@ -149,25 +142,13 @@
   "options": "Production Plan Item"
  }, 
  {
-  "colour": "White:FFF", 
   "doctype": "DocField", 
   "label": "Clear Table", 
-  "trigger": "Client", 
   "fieldname": "clear_item_table", 
   "fieldtype": "Button", 
   "options": "clear_item_table"
  }, 
  {
-  "description": "If checked, BOM for sub-assembly items will be considered for raw materials. Otherwise, all sub-assembly items will be treated as a raw material.", 
-  "default": "1", 
-  "colour": "White:FFF", 
-  "doctype": "DocField", 
-  "label": "Use Multi-Level BOM", 
-  "reqd": 0, 
-  "fieldname": "use_multi_level_bom", 
-  "fieldtype": "Check"
- }, 
- {
   "doctype": "DocField", 
   "fieldname": "section_break3", 
   "fieldtype": "Section Break", 
@@ -181,7 +162,6 @@
  }, 
  {
   "description": "Separate production order will be created for each finished good item.", 
-  "colour": "White:FFF", 
   "doctype": "DocField", 
   "label": "Raise Production Order", 
   "fieldname": "raise_production_order", 
@@ -195,11 +175,18 @@
   "fieldtype": "Column Break"
  }, 
  {
+  "description": "If checked, BOM for sub-assembly items will be considered for getting raw materials. Otherwise, all sub-assembly items will be treated as a raw material.", 
+  "default": "1", 
+  "doctype": "DocField", 
+  "label": "Use Multi-Level BOM", 
+  "fieldname": "use_multi_level_bom", 
+  "fieldtype": "Check", 
+  "reqd": 0
+ }, 
+ {
   "description": "Download a report containing all raw materials with their latest inventory status", 
-  "colour": "White:FFF", 
   "doctype": "DocField", 
   "label": "Download Materials Required", 
-  "trigger": "Client", 
   "fieldname": "download_materials_required", 
   "fieldtype": "Button"
  }, 
@@ -208,11 +195,11 @@
   "doctype": "DocPerm"
  }, 
  {
-  "role": "Production User", 
+  "role": "Manufacturing User", 
   "doctype": "DocPerm"
  }, 
  {
-  "role": "Production Manager", 
+  "role": "Manufacturing Manager", 
   "doctype": "DocPerm"
  }
 ]
\ No newline at end of file
diff --git a/production/doctype/workstation/__init__.py b/manufacturing/doctype/workstation/__init__.py
similarity index 100%
rename from production/doctype/workstation/__init__.py
rename to manufacturing/doctype/workstation/__init__.py
diff --git a/production/doctype/workstation/workstation.js b/manufacturing/doctype/workstation/workstation.js
similarity index 100%
rename from production/doctype/workstation/workstation.js
rename to manufacturing/doctype/workstation/workstation.js
diff --git a/production/doctype/workstation/workstation.py b/manufacturing/doctype/workstation/workstation.py
similarity index 100%
rename from production/doctype/workstation/workstation.py
rename to manufacturing/doctype/workstation/workstation.py
diff --git a/manufacturing/doctype/workstation/workstation.txt b/manufacturing/doctype/workstation/workstation.txt
new file mode 100644
index 0000000..873bf30
--- /dev/null
+++ b/manufacturing/doctype/workstation/workstation.txt
@@ -0,0 +1,217 @@
+[
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-03-27 14:36:05", 
+  "modified_by": "Administrator", 
+  "modified": "2012-12-10 18:30:00"
+ }, 
+ {
+  "section_style": "Simple", 
+  "module": "Manufacturing", 
+  "doctype": "DocType", 
+  "allow_trash": 1, 
+  "server_code_error": " ", 
+  "document_type": "Master", 
+  "allow_email": 0, 
+  "autoname": "field:workstation_name", 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "_last_update": "1322125389", 
+  "show_in_menu": 0, 
+  "version": 14
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Workstation", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Workstation", 
+  "read": 1, 
+  "doctype": "DocPerm", 
+  "parenttype": "DocType", 
+  "parentfield": "permissions"
+ }, 
+ {
+  "name": "Workstation", 
+  "doctype": "DocType"
+ }, 
+ {
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "write": 1, 
+  "role": "System Manager", 
+  "cancel": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "role": "System Manager", 
+  "permlevel": 1, 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "write": 1, 
+  "role": "Manufacturing User", 
+  "cancel": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "write": 1, 
+  "role": "Manufacturing User", 
+  "cancel": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "role": "Manufacturing Manager", 
+  "permlevel": 1, 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "role": "Manufacturing User", 
+  "permlevel": 1, 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "oldfieldtype": "Small Text", 
+  "doctype": "DocField", 
+  "label": "Trash Reason", 
+  "oldfieldname": "trash_reason", 
+  "fieldname": "trash_reason", 
+  "fieldtype": "Small Text", 
+  "permlevel": 1
+ }, 
+ {
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Workstation Name", 
+  "oldfieldname": "workstation_name", 
+  "fieldname": "workstation_name", 
+  "fieldtype": "Data", 
+  "reqd": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Link", 
+  "doctype": "DocField", 
+  "label": "Warehouse", 
+  "oldfieldname": "warehouse", 
+  "permlevel": 0, 
+  "fieldname": "warehouse", 
+  "fieldtype": "Link", 
+  "reqd": 1, 
+  "options": "Warehouse"
+ }, 
+ {
+  "oldfieldtype": "Text", 
+  "doctype": "DocField", 
+  "label": "Description", 
+  "oldfieldname": "description", 
+  "width": "300px", 
+  "fieldname": "description", 
+  "fieldtype": "Text", 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Capacity", 
+  "oldfieldname": "capacity", 
+  "fieldname": "capacity", 
+  "fieldtype": "Data", 
+  "reqd": 0, 
+  "hidden": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Select", 
+  "doctype": "DocField", 
+  "label": "Capacity Units", 
+  "oldfieldname": "capacity_units", 
+  "permlevel": 0, 
+  "fieldname": "capacity_units", 
+  "fieldtype": "Select", 
+  "reqd": 0, 
+  "hidden": 1, 
+  "options": "\nUnits/Shifts\nUnits/Hour"
+ }, 
+ {
+  "oldfieldtype": "Currency", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Hour Rate Labour", 
+  "oldfieldname": "hour_rate_labour", 
+  "fieldname": "hour_rate_labour", 
+  "fieldtype": "Currency", 
+  "reqd": 0, 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Section Break", 
+  "doctype": "DocField", 
+  "label": "Over Heads", 
+  "fieldname": "over_heads", 
+  "fieldtype": "Section Break", 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Hour Rate Electricity", 
+  "oldfieldname": "hour_rate_electricity", 
+  "fieldname": "hour_rate_electricity", 
+  "fieldtype": "Currency", 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Hour Rate Consumable", 
+  "oldfieldname": "hour_rate_consumable", 
+  "fieldname": "hour_rate_consumable", 
+  "fieldtype": "Currency", 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Hour Rate Rent", 
+  "oldfieldname": "hour_rate_rent", 
+  "fieldname": "hour_rate_rent", 
+  "fieldtype": "Currency", 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Overhead", 
+  "oldfieldname": "overhead", 
+  "fieldname": "overhead", 
+  "fieldtype": "Currency", 
+  "permlevel": 1
+ }, 
+ {
+  "oldfieldtype": "Section Break", 
+  "doctype": "DocField", 
+  "label": "Hour Rate", 
+  "fieldname": "hour_rate_section_break", 
+  "fieldtype": "Section Break", 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Hour Rate", 
+  "oldfieldname": "hour_rate", 
+  "fieldname": "hour_rate", 
+  "fieldtype": "Currency", 
+  "permlevel": 1
+ }
+]
\ No newline at end of file
diff --git a/production/page/__init__.py b/manufacturing/page/__init__.py
similarity index 100%
rename from production/page/__init__.py
rename to manufacturing/page/__init__.py
diff --git a/production/page/production_home/__init__.py b/manufacturing/page/manufacturing_home/__init__.py
similarity index 100%
rename from production/page/production_home/__init__.py
rename to manufacturing/page/manufacturing_home/__init__.py
diff --git a/production/page/production_home/production_home.html b/manufacturing/page/manufacturing_home/manufacturing_home.html
similarity index 80%
rename from production/page/production_home/production_home.html
rename to manufacturing/page/manufacturing_home/manufacturing_home.html
index 028e752..b87d30a 100644
--- a/production/page/production_home/production_home.html
+++ b/manufacturing/page/manufacturing_home/manufacturing_home.html
@@ -23,6 +23,16 @@
 	<div class="layout-side-section">
 		<div class="psidebar">
 			<div class="section">
+				<div class="section-head">Tools</div>
+				<div class="section-body">
+					<div class="section-item">
+						<a class="section-link" 
+							title = "BOM Replace Tool"
+							href="#!Form/BOM Replace Tool">BOM Replace Tool</a>
+					</div>
+				</div>
+			</div>
+			<div class="section">
 				<div class="section-head">Setup</div>
 				<div class="section-body">
 					<div class="section-item">
diff --git a/production/page/production_home/production_home.js b/manufacturing/page/manufacturing_home/manufacturing_home.js
similarity index 84%
rename from production/page/production_home/production_home.js
rename to manufacturing/page/manufacturing_home/manufacturing_home.js
index a4bb398..ee4778d 100644
--- a/production/page/production_home/production_home.js
+++ b/manufacturing/page/manufacturing_home/manufacturing_home.js
@@ -14,7 +14,7 @@
 // You should have received a copy of the GNU General Public License
 // along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
-pscript['onload_production-home'] = function(wrapper) {
-	wrapper.appframe = new wn.ui.AppFrame($(wrapper).find('.appframe-area'), 'Production');
-	erpnext.module_page.setup_page('Production', wrapper);
+pscript['onload_manufacturing-home'] = function(wrapper) {
+	wrapper.appframe = new wn.ui.AppFrame($(wrapper).find('.appframe-area'), 'Manufacturing');
+	erpnext.module_page.setup_page('Manufacturing', wrapper);
 }
\ No newline at end of file
diff --git a/manufacturing/page/manufacturing_home/manufacturing_home.txt b/manufacturing/page/manufacturing_home/manufacturing_home.txt
new file mode 100644
index 0000000..7fdbd6a
--- /dev/null
+++ b/manufacturing/page/manufacturing_home/manufacturing_home.txt
@@ -0,0 +1,21 @@
+[
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-02-21 13:24:34", 
+  "modified_by": "Administrator", 
+  "modified": "2012-12-10 18:30:00"
+ }, 
+ {
+  "name": "__common__", 
+  "title": "Manufacturing Home", 
+  "module": "Manufacturing", 
+  "doctype": "Page", 
+  "page_name": "manufacturing-home", 
+  "standard": "Yes"
+ }, 
+ {
+  "name": "manufacturing-home", 
+  "doctype": "Page"
+ }
+]
\ No newline at end of file
diff --git a/production/search_criteria/__init__.py b/manufacturing/search_criteria/__init__.py
similarity index 100%
rename from production/search_criteria/__init__.py
rename to manufacturing/search_criteria/__init__.py
diff --git a/production/search_criteria/consumption_against_production/__init__.py b/manufacturing/search_criteria/consumption_against_production/__init__.py
similarity index 100%
rename from production/search_criteria/consumption_against_production/__init__.py
rename to manufacturing/search_criteria/consumption_against_production/__init__.py
diff --git a/manufacturing/search_criteria/consumption_against_production/consumption_against_production.txt b/manufacturing/search_criteria/consumption_against_production/consumption_against_production.txt
new file mode 100644
index 0000000..70620ff
--- /dev/null
+++ b/manufacturing/search_criteria/consumption_against_production/consumption_against_production.txt
@@ -0,0 +1,30 @@
+[
+ {
+  "owner": "jai@webnotestech.com", 
+  "docstatus": 0, 
+  "creation": "2012-04-03 12:49:50", 
+  "modified_by": "Administrator", 
+  "modified": "2012-12-10 18:30:00"
+ }, 
+ {
+  "add_col": "`tabProduction Order`.consider_sa_items", 
+  "parent_doc_type": "Stock Entry", 
+  "module": "Manufacturing", 
+  "standard": "Yes", 
+  "sort_order": "DESC", 
+  "add_tab": "`tabProduction Order`", 
+  "doc_type": "Stock Entry Detail", 
+  "name": "__common__", 
+  "filters": "{'Stock Entry\u0001Submitted':1,'Stock Entry\u0001Purpose':'Production Order','Stock Entry\u0001Process':''}", 
+  "add_cond": "`tabProduction Order`.name = `tabStock Entry`.production_order", 
+  "doctype": "Search Criteria", 
+  "sort_by": "`tabStock Entry`.`name`", 
+  "page_len": 50, 
+  "criteria_name": "Consumption Against Production", 
+  "columns": "Stock Entry\u0001ID,Stock Entry\u0001Production Order,Stock Entry\u0001Process,Stock Entry\u0001Posting Date,Stock Entry\u0001Company,Stock Entry Detail\u0001Source Warehouse,Stock Entry Detail\u0001Target Warehouse,Stock Entry Detail\u0001FG Item,Stock Entry Detail\u0001Item Code,Stock Entry Detail\u0001Description,Stock Entry Detail\u0001Reqd Qty,Stock Entry Detail\u0001Transfer Quantity"
+ }, 
+ {
+  "name": "consumption_against_production", 
+  "doctype": "Search Criteria"
+ }
+]
\ No newline at end of file
diff --git a/production/search_criteria/itemwise_production_report/__init__.py b/manufacturing/search_criteria/itemwise_production_report/__init__.py
similarity index 100%
rename from production/search_criteria/itemwise_production_report/__init__.py
rename to manufacturing/search_criteria/itemwise_production_report/__init__.py
diff --git a/production/search_criteria/itemwise_production_report/itemwise_production_report.js b/manufacturing/search_criteria/itemwise_production_report/itemwise_production_report.js
similarity index 100%
rename from production/search_criteria/itemwise_production_report/itemwise_production_report.js
rename to manufacturing/search_criteria/itemwise_production_report/itemwise_production_report.js
diff --git a/manufacturing/search_criteria/itemwise_production_report/itemwise_production_report.txt b/manufacturing/search_criteria/itemwise_production_report/itemwise_production_report.txt
new file mode 100644
index 0000000..7814fec
--- /dev/null
+++ b/manufacturing/search_criteria/itemwise_production_report/itemwise_production_report.txt
@@ -0,0 +1,27 @@
+[
+ {
+  "owner": "jai@webnotestech.com", 
+  "docstatus": 0, 
+  "creation": "2012-04-03 12:49:51", 
+  "modified_by": "Administrator", 
+  "modified": "2012-12-10 18:30:00"
+ }, 
+ {
+  "parent_doc_type": "Stock Entry", 
+  "module": "Manufacturing", 
+  "standard": "Yes", 
+  "sort_order": "DESC", 
+  "filters": "{'Stock Entry\u0001Saved':1,'Stock Entry\u0001Submitted':1,'Stock Entry\u0001Purpose':'Production Order','Stock Entry\u0001Process':'Backflush','Stock Entry Detail\u0001FG Item':1}", 
+  "doc_type": "Stock Entry Detail", 
+  "name": "__common__", 
+  "doctype": "Search Criteria", 
+  "sort_by": "`tabStock Entry`.`name`", 
+  "page_len": 50, 
+  "criteria_name": "Itemwise Production Report", 
+  "columns": "Stock Entry\u0001ID,Stock Entry\u0001Posting Date,Stock Entry\u0001Production Order,Stock Entry\u0001Process,Stock Entry\u0001Company,Stock Entry Detail\u0001Target Warehouse,Stock Entry Detail\u0001Item Code,Stock Entry Detail\u0001Description,Stock Entry Detail\u0001Stock UOM,Stock Entry Detail\u0001Transfer Quantity"
+ }, 
+ {
+  "name": "itemwise_production_report", 
+  "doctype": "Search Criteria"
+ }
+]
\ No newline at end of file
diff --git a/production/search_criteria/production_orders_in_process/__init__.py b/manufacturing/search_criteria/production_orders_in_process/__init__.py
similarity index 100%
rename from production/search_criteria/production_orders_in_process/__init__.py
rename to manufacturing/search_criteria/production_orders_in_process/__init__.py
diff --git a/manufacturing/search_criteria/production_orders_in_process/production_orders_in_process.txt b/manufacturing/search_criteria/production_orders_in_process/production_orders_in_process.txt
new file mode 100644
index 0000000..3a8c8c9
--- /dev/null
+++ b/manufacturing/search_criteria/production_orders_in_process/production_orders_in_process.txt
@@ -0,0 +1,27 @@
+[
+ {
+  "owner": "jai@webnotestech.com", 
+  "docstatus": 0, 
+  "creation": "2012-04-03 12:49:52", 
+  "modified_by": "Administrator", 
+  "modified": "2012-12-10 18:30:00"
+ }, 
+ {
+  "module": "Manufacturing", 
+  "standard": "Yes", 
+  "sort_order": "DESC", 
+  "filters": "{'Production Order\u0001Submitted':1,'Production Order\u0001Origin':'','Production Order\u0001Status':'','Production Order\u0001Consider SA Items':'','Production Order\u0001Fiscal Year':''}", 
+  "doc_type": "Production Order", 
+  "name": "__common__", 
+  "add_cond": "`tabProduction Order`.qty > `tabProduction Order`.produced_qty", 
+  "doctype": "Search Criteria", 
+  "sort_by": "`tabProduction Order`.`name`", 
+  "page_len": 50, 
+  "criteria_name": "Production Orders In Process", 
+  "columns": "Production Order\u0001ID,Production Order\u0001Origin,Production Order\u0001Status,Production Order\u0001Posting Date,Production Order\u0001Production Item,Production Order\u0001BOM No,Production Order\u0001Description,Production Order\u0001Stock UOM,Production Order\u0001Qty,Production Order\u0001Produced Qty,Production Order\u0001FG Warehouse,Production Order\u0001WIP Warehouse,Production Order\u0001Consider SA Items,Production Order\u0001Fiscal Year,Production Order\u0001Company"
+ }, 
+ {
+  "name": "production_orders_in_process", 
+  "doctype": "Search Criteria"
+ }
+]
\ No newline at end of file
diff --git a/patches/before_jan_2012/Discount_purchase_cycle.py b/patches/before_jan_2012/Discount_purchase_cycle.py
deleted file mode 100644
index 8ddcbf5..0000000
--- a/patches/before_jan_2012/Discount_purchase_cycle.py
+++ /dev/null
@@ -1,31 +0,0 @@
-# ERPNext - web based ERP (http://erpnext.com)
-# Copyright (C) 2012 Web Notes Technologies Pvt Ltd
-# 
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-# 
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# 
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-from __future__ import unicode_literals
-def execute():
-	import webnotes
-	from webnotes.modules import reload_doc
-
-	reload_doc('accounts', 'doctype', 'pv_detail')
-	reload_doc('buying', 'doctype', 'po_detail')
-	reload_doc('stock', 'doctype', 'purchase_receipt_detail')
-	if webnotes.conn.sql("select name from `tabDocField` where parent = 'Purchase Order Item' and fieldname = 'discount'"):
-		webnotes.conn.sql("update `tabPurchase Order Item` set discount_rate=discount")
-
-	# Features setup
-	reload_doc('setup', 'doctype', 'features_setup')
-	from webnotes.model.code import get_obj
-	get_obj('Features Setup').validate()
diff --git a/patches/before_jan_2012/__init__.py b/patches/before_jan_2012/__init__.py
deleted file mode 100644
index baffc48..0000000
--- a/patches/before_jan_2012/__init__.py
+++ /dev/null
@@ -1 +0,0 @@
-from __future__ import unicode_literals
diff --git a/patches/before_jan_2012/accounts_default_form.py b/patches/before_jan_2012/accounts_default_form.py
deleted file mode 100644
index 51e41aa..0000000
--- a/patches/before_jan_2012/accounts_default_form.py
+++ /dev/null
@@ -1,23 +0,0 @@
-# ERPNext - web based ERP (http://erpnext.com)
-# Copyright (C) 2012 Web Notes Technologies Pvt Ltd
-# 
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-# 
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# 
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-from __future__ import unicode_literals
-def execute():
-        import webnotes
-        from webnotes.modules import reload_doc
-        reload_doc('setup', 'doctype', 'company')
-        reload_doc('setup', 'doctype', 'manage_account')
- 
diff --git a/patches/before_jan_2012/auto_indent.py b/patches/before_jan_2012/auto_indent.py
deleted file mode 100644
index 6018681..0000000
--- a/patches/before_jan_2012/auto_indent.py
+++ /dev/null
@@ -1,25 +0,0 @@
-# ERPNext - web based ERP (http://erpnext.com)
-# Copyright (C) 2012 Web Notes Technologies Pvt Ltd
-# 
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-# 
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# 
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-from __future__ import unicode_literals
-def execute():
-	import webnotes
-	from webnotes.modules import reload_doc
-	reload_doc('setup', 'doctype', 'manage_account')
-	reload_doc('stock', 'doctype', 'item')
-	webnotes.conn.sql("delete from `tabDocField` where fieldname='minimum_inventory_level' and parent='item'")
-	webnotes.conn.sql("update `tabItem` set re_order_level = minimum_inventory_level where ifnull(re_order_level,0) = 0 ")
-		
diff --git a/patches/before_jan_2012/c_form_patch.py b/patches/before_jan_2012/c_form_patch.py
deleted file mode 100644
index 37b9983..0000000
--- a/patches/before_jan_2012/c_form_patch.py
+++ /dev/null
@@ -1,29 +0,0 @@
-# ERPNext - web based ERP (http://erpnext.com)
-# Copyright (C) 2012 Web Notes Technologies Pvt Ltd
-# 
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-# 
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# 
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-from __future__ import unicode_literals
-def execute():
-	import webnotes
-	from webnotes.modules import reload_doc
-
-	reload_doc('accounts', 'doctype', 'receivable_voucher')
-	reload_doc('accounts', 'doctype', 'c_form')
-	reload_doc('accounts', 'doctype', 'c_form_invoice_detail')
-	reload_doc('accounts', 'Module Def', 'Accounts')
-
-	sql = webnotes.conn.sql
-	sql("update `tabSales Invoice` set c_form_applicable = 'Yes' where c_form_applicable = 'Y'")
-	sql("update `tabSales Invoice` set c_form_applicable = 'No' where c_form_applicable = 'N'")
diff --git a/patches/before_jan_2012/delivery_billing_status_patch.py b/patches/before_jan_2012/delivery_billing_status_patch.py
deleted file mode 100644
index ca022f3..0000000
--- a/patches/before_jan_2012/delivery_billing_status_patch.py
+++ /dev/null
@@ -1,72 +0,0 @@
-# ERPNext - web based ERP (http://erpnext.com)
-# Copyright (C) 2012 Web Notes Technologies Pvt Ltd
-# 
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-# 
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# 
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-from __future__ import unicode_literals
-import webnotes
-sql = webnotes.conn.sql
-
-test=1
-
-# Update SO and DN Detail 
-#--------------------------
-def update_delivered_billed_qty():
-	# update billed amt in item table in so and dn
-	sql("""	update `tabSales Order Item` so
-		set billed_amt = (select sum(amount) from `tabSales Invoice Item` where `so_detail`= so.name and docstatus=1 and parent not like 'old%%'),
-		delivered_qty = (select sum(qty) from `tabDelivery Note Item` where `prevdoc_detail_docname`= so.name and docstatus=1 and parent not like 'old%%'), 
-		modified = now()
-		where docstatus = 1
-	""")
-
-	sql(""" update `tabDelivery Note Item` dn
-		set billed_amt = (select sum(amount) from `tabSales Invoice Item` where `dn_detail`= dn.name and docstatus=1 and parent not like 'old%%'), 
-		modified = now()
-		where docstatus = 1
-	""")
-
-# update SO
-#---------------
-def update_percent():
-	# calculate % billed based on item table
-	sql("""	update `tabSales Order` so
-		set per_delivered = (select sum(if(qty > ifnull(delivered_qty, 0), delivered_qty, qty))/sum(qty)*100 from `tabSales Order Item` where parent=so.name), 
-		per_billed = (select sum(if(amount > ifnull(billed_amt, 0), billed_amt, amount))/sum(amount)*100 from `tabSales Order Item` where parent = so.name), 
-		modified = now()
-		where docstatus = 1
-	""")
-		
-	# update DN	
-	# ---------	
-	sql("""	update `tabDelivery Note` dn
-		set per_billed = (select sum(if(amount > ifnull(billed_amt, 0), billed_amt, amount))/sum(amount)*100 from `tabDelivery Note Item` where parent = dn.name), 
-		modified = now()
-		where docstatus=1
-	""")
-
-# update delivery/billing status 
-#-------------------------------
-def update_status():
-	sql("""update `tabSales Order` set delivery_status = if(ifnull(per_delivered,0) < 0.001, 'Not Delivered', 
-			if(per_delivered >= 99.99, 'Fully Delivered', 'Partly Delivered'))""")
-	sql("""update `tabSales Order` set billing_status = if(ifnull(per_billed,0) < 0.001, 'Not Billed', 
-			if(per_billed >= 99.99, 'Fully Billed', 'Partly Billed'))""")
-	sql("""update `tabDelivery Note` set billing_status = if(ifnull(per_billed,0) < 0.001, 'Not Billed', 
-			if(per_billed >= 99.99, 'Fully Billed', 'Partly Billed'))""")
-			
-def execute():
-	update_delivered_billed_qty()
-	update_percent()
-	update_status()
diff --git a/patches/before_jan_2012/deploy_email_digest.py b/patches/before_jan_2012/deploy_email_digest.py
deleted file mode 100644
index 238ff00..0000000
--- a/patches/before_jan_2012/deploy_email_digest.py
+++ /dev/null
@@ -1,113 +0,0 @@
-# ERPNext - web based ERP (http://erpnext.com)
-# Copyright (C) 2012 Web Notes Technologies Pvt Ltd
-# 
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-# 
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# 
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-from __future__ import unicode_literals
-import webnotes
-
-def execute():
-	"""
-		* Reload email_digest doctype
-		* Create default email digest
-	"""
-	from webnotes.modules import reload_doc
-	
-	# Minor fix in print_format doctype
-	#reload_doc('core', 'doctype', 'print_format')
-	
-	#reload_doc('setup', 'doctype', 'email_digest')
-
-	#global create_default_email_digest
-	#create_default_email_digest()
-
-	global enabled_default_email_digest
-	enabled_default_email_digest()
-
-
-def enabled_default_email_digest():
-	"""
-		Enables the created email digest
-	"""
-	from webnotes.model.doc import Document
-	from webnotes.model.code import get_obj
-	companies_list = webnotes.conn.sql("SELECT company_name FROM `tabCompany`", as_list=1)
-	for company in companies_list:
-		if company and company[0]:
-			edigest = Document('Email Digest', 'Default Weekly Digest - ' + company[0])
-			if edigest:
-				edigest.enabled = 1
-				edigest.save()
-				ed_obj = get_obj(doc=edigest)
-				ed_obj.on_update()
-
-
-
-def create_default_email_digest():
-	"""
-		* Weekly Digest
-		* For all companies
-		* Recipients: System Managers
-		* Full content
-		* Disabled by default
-	"""
-	from webnotes.model.doc import Document
-	companies_list = webnotes.conn.sql("SELECT company_name FROM `tabCompany`", as_list=1)
-	global get_system_managers
-	system_managers = get_system_managers()
-	for company in companies_list:
-		if company and company[0]:
-			edigest = Document('Email Digest')
-			edigest.name = "Default Weekly Digest - " + company[0]
-			edigest.company = company[0]
-			edigest.frequency = 'Weekly'
-			edigest.recipient_list = system_managers
-			edigest.new_leads = 1
-			edigest.new_enquiries = 1
-			edigest.new_quotations = 1
-			edigest.new_sales_orders = 1
-			edigest.new_purchase_orders = 1
-			edigest.new_transactions = 1
-			edigest.payables = 1
-			edigest.payments = 1
-			edigest.expenses_booked = 1
-			edigest.invoiced_amount = 1
-			edigest.collections = 1
-			edigest.income = 1
-			edigest.bank_balance = 1
-			exists = webnotes.conn.sql("""\
-				SELECT name FROM `tabEmail Digest`
-				WHERE name = %s""", edigest.name)
-			if (exists and exists[0]) and exists[0][0]:
-				continue
-			else:
-				edigest.save(1)
-
-
-def get_system_managers():
-	"""
-		Returns a string of system managers' email addresses separated by \n
-	"""
-	system_managers_list = webnotes.conn.sql("""\
-		SELECT DISTINCT p.name
-		FROM tabUserRole ur, tabProfile p
-		WHERE
-			ur.parent = p.name AND
-			ur.role='System Manager' AND
-			p.docstatus<2 AND
-			p.enabled=1 AND
-			p.name not in ('Administrator', 'Guest')""", as_list=1)
-
-	return "\n".join([sysman[0] for sysman in system_managers_list])
-
diff --git a/patches/before_jan_2012/edigest_enable_income_year_to_date.py b/patches/before_jan_2012/edigest_enable_income_year_to_date.py
deleted file mode 100644
index 0403e01..0000000
--- a/patches/before_jan_2012/edigest_enable_income_year_to_date.py
+++ /dev/null
@@ -1,28 +0,0 @@
-# ERPNext - web based ERP (http://erpnext.com)
-# Copyright (C) 2012 Web Notes Technologies Pvt Ltd
-# 
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-# 
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# 
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-from __future__ import unicode_literals
-import webnotes
-from webnotes.model.doc import Document
-
-def execute():
-	companies_list = webnotes.conn.sql("SELECT company_name FROM `tabCompany`", as_list=1)
-	for company in companies_list:
-		if company and company[0]:
-			edigest = Document('Email Digest', "Default Weekly Digest - " + company[0])
-			if edigest:
-				edigest.income_year_to_date = 1
-				edigest.save()
diff --git a/patches/before_jan_2012/erpnext_structure_cleanup.py b/patches/before_jan_2012/erpnext_structure_cleanup.py
deleted file mode 100644
index 6e58b18..0000000
--- a/patches/before_jan_2012/erpnext_structure_cleanup.py
+++ /dev/null
@@ -1,217 +0,0 @@
-# ERPNext - web based ERP (http://erpnext.com)
-# Copyright (C) 2012 Web Notes Technologies Pvt Ltd
-# 
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-# 
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# 
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-#Cleanup all unwanted documents and restructure of moduloes
-#----------------------------------------------------------
-
-from __future__ import unicode_literals
-import webnotes
-from webnotes.model import delete_doc
-from webnotes.modules import reload_doc
-from webnotes.modules.export_file import export_to_files
-sql = webnotes.conn.sql
-
-
-#----------------------------
-
-def delete_unwanted_doctypes():
-	"deletes doctypes which are not used anymore"
-	
-	try:
-		sql("delete from `tabMenu Item`")
-		sql("delete from tabDocField where fieldname = 'site_map_details' and parent ='Control Panel'")
-	except:
-		pass
-		
-	lst = ['Zone',  'WN Account Control', 'Wiki Page', 'Wiki History', 'Wiki Control', 'While You Were Out', 'Web Visitor', 'Tweet', 'Transfer Utility', 'Transfer Module', 'Transfer Control', 'Transfer Account', 'Tips Common', 'TestTabDT', 'TestDT', 'Test Type', 'Test Run', 'Test Record Detail', 'Test Record', 'Test Case', 'Supplier TDS Category Detail', 'Shopping Cart Control', 'Service Series', 'Series Detail', 'Rule Engine', 'RFQ', 'Report Filter Detail', 'Report Field Detail','Report Control', 'Rating Widget Record', 'Rating Widget Control', 'Rating Template Detail', 'Rating Template', 'PV Ded Tax Detail', 'PV Add Tax Detail', 'Product Variant', 'Product Variance', 'Product Group', 'Product Feature', 'Payroll Tips Common', 'Payroll Rule', 'Password Control', 'Page Visit', 'Patch', 'Multiple Transfer', 'Module Tip Control', 'Module Setter', 'Module Manager', 'Module Import', 'Module Detail', 'Message Control', 'Message', 'Mail Participant Details', 'Mail', 'Leave Type Detail', 'Leave Detail', 'Leave Applicable Detail', 'Lead Item Detail', 'Lead Attachment Detail', 'Item Attachments Detail', 'Instant Message', 'Impact Analysis', 'Forum Topic', 'Forum Control', 'Form Settings', 'Follower', 'ERP Setup', 'Enquiry Attachment Detail', 'Documentation', 'Condition Detail', 'Complaint Note', 'Code History', 'Code Editor', 'Code Backup Control', 'Code Backup', 'City', 'Change Log', 'Business Letter Type', 'Business Letter Template', 'Business Letter', 'Badge Settings Detail', 'Application Type', 'Application', 'Action Detail', 'Accounts Setup', 'Stock Common', 'Job Application', 'Service Schedule', 'Comment Control', 'Bank', 'Tag Widget Control', 'Feature Update', 'RFQ Detail', 'Supplier Quotation Detail', 'Supplier Quotation', 'Year Closing Voucher', 'Approval Structure', 'Site Map Detail', 'Menu Control', 'Menu Item', 'Menu Item Role'] # bank
-	for d in lst:
-		try:
-			sql("delete from `tabProperty Setter` where select_doctype = '%s'" % d)
-			sql("delete from `tabCustom Script` where dt = '%s'" % d)
-			sql("delete from `tabCustom Field` where dt = '%s'" % d)
-			delete_doc('DocType', d)
-		except:
-			pass
-	
-		
-	sql("commit")	
-	delete_tables(lst)
-		
-def delete_tables(lst):
-	for d in lst:
-		for t in ['tab', 'arc']:
-			try:
-				sql("drop table `%s%s`" % (t, d))
-			except:
-				continue
-	
-def delete_unwanted_pages():
-	"deletes pages which are not used anymore"
-	lst = ['Transaction Authorization', 'Prduct Display', 'Data Import', 'Partner Home', 'Product Display', 'Module Settings', 'About Us', 'Custom Reports', 'MIS', 'MIS - Comparison Report', 'Monthly MIS', 'MyReports', 'Navigation Page', 'Point Race', 'Tag Widget', 'Widget Test', 'Yearly MIS']
-	for d in lst:
-		try:
-			delete_doc('Page', d)
-		except:
-			pass
-			
-			
-def delete_unwanted_search_criteria():
-	"deletes search criteria which are not used anymore"
-	
-	sql("update `tabSearch Criteria` set module = 'HR' where name = 'salary_structure_details'")
-	
-	lst = ['_SRCH00002', '_SRCH00001', 'warranty-amc_summary1', 'test_so4', 'test_so3', 'test_so2', 'test_so1', 'test_so', 'test5', 'target_variance_report1', 'STDSRCH/00006', 'STDSRCH/00005', 'STDSRCH/00004', 'STDSRCH/00003', 'STDSRCH/00002', 'STDSRCH/00001', 'so_pending_items_6', 'so_pending_items_5', 'so_pending_items_3', 'so_pending_items_34', 'scrap', 'sales_report_test', 'salary_structure_details1', 'salary_structure_details2', 'salary_structure_details3', 'salary_slips1', 'projectwise_pending_qty_and_costs2', 'projectwise_pending_qty_and_costs1', 'projectwise_delivered_qty_and_costs1', 'projectwise_delivered_qty_and_costs2', 'New Search Criteria 1', 'monthly_salary_register2', 'monthly_salary_register1', 'installed_items','follow_up_history', 'follow_up_report', 'employee_in_company_experience2', 'employee_in_company_experience1', 'employee_in_company_experience', 'employee_details', 'employee_details1', 'employee_details2', 'employees_birthday1', 'draft_so_pending_items', 'draft_sales_orders', 'delivery_notewise_pending_qty_to_install', 'datewise_leave_report2', 'datewise_leave_report1', 'datewise_leave_report', 'customer_issues1', 'cancelled_so_pending_items1', 'cancelled_so_pending_items', 'budget_variance_report3', 'budget_variance_report1', 'account_-_inputs_rg_23_a_-_part_ii_wrong_one', 'territory_item_group_wise_gp', 'sales_orderwise_pending_packing_item_summary', 'itemwise_trend', 'monthly_attendance_details_old', 'projectwise_contribution_report', 'projectwise_delivery_and_material_cost', 'projectwise_delivery_and_mat_cost_report', 'territorywise_trend', 'test_dn', 'rfq', 'rfq1']
-	
-	for d in lst:
-		if sql("select name from `tabSearch Criteria` where ifnull(standard, 'Yes') = 'Yes' and name = '%s'" % d):
-			try:
-				delete_doc('Search Criteria', d)
-			except:
-				pass
-		
-	
-def delete_unwanted_mappers():
-	"deletes unwanted mappers"
-	
-	lst = ['Customer Issue-Maintenance Report', 'Enquiry-Service Quotation', 'Sales Order-Maintenance Report', 'Service Quotation-Service Order', 'Supplier Quotation-Purchase Order', 'Visit Schedule-Maintenance Report', 'RFQ-Supplier Quotation', 'Purchase Request-RFQ']
-	for d in lst:
-		try:
-			delete_doc('DocType Mapper', d)
-		except:
-			pass	
-			
-def delete_unwanted_modules():
-	"deletes unwanted modules"
-	lst = ['Development', 'Recycle Bin', 'Testing', 'Testing System', 'Test', 'Partner Updates', 'My Company', 'Event Updates', 'E-Commerce']
-	for d in lst:
-		try:
-			delete_doc('Module Def', d)
-		except:
-			pass
-
-#---------------------------------------------	
-
-def rename_merge_modules():
-	"Rename module as per users view and merge for removing confusion"
-	
-	rename_lst = [['CRM', 'Selling'], ['SRM','Buying'], ['Material Management', 'Stock'], ['Payroll','HR'], ['Maintenance', 'Support']]
-	for d in rename_lst:
-		# create new module manually and export to file???????
-		reload_doc(d[1].lower(), 'Module Def', d[1])
-
-	merge_lst = [['Tools', 'Utilities'], ['Application Internal', 'Utilities'], ['Settings', 'Setup']]
-	# settings hardcoded in my_company
-	# module hardcoded in home_control
-	# material_management hardcoded in installation note
-	# maintenance hardcoded in support_email_settings
-	
-	lst = rename_lst + merge_lst
-	for d in lst:
-		update_module(d[0], d[1])
-		try:
-			delete_doc('Module Def', d[0])
-		except:
-			pass
-	reload_doc('Utilities', 'Module Def', 'Utilities')
-	
-def update_module(from_mod, to_mod):
-	for t in ['DocType', 'Page', 'Search Criteria', 'DocType Mapper', 'Print Format', 'Role']:
-		sql("update `tab%s` set module='%s' where module = '%s'"% (t, to_mod, from_mod))
-		
-#------------------------------------ 
-def sync_roles():
-	"Put Roles into corresponding module and delete Roles module"
-	
-	# roles
-	roles = {
-		'Accounts'	:		"'Accounts Manager', 'Accounts User', 'Auditor'", 
-		'Selling'	: 		"'Customer', 'Sales User', 'Sales Manager', 'Sales Master Manager', 'Partner'", 
-		'Buying'	:		"'Supplier', 'Purchase User', 'Purchase Manager', 'Purchase Master Manager'", 
-		'Stock'		:		"'Material User', 'Material Master Manager', 'Material Manager', 'Quality Manager'", 
-		'Support'	:		"'Support Team', 'Support Manager', 'Maintenance User', 'Maintenance Manager'", 
-		'Production':		"'Production User', 'Production Manager', 'Production Master Manager'", 
-		'Setup'		:		"'System Manager'", 
-		'Projects'	:		"'Projects User'", 
-		'HR'		:		"'HR User', 'HR Manager', 'Employee'",
-		'Core'		:		"'Administrator', 'All', 'Guest'"
-	}
-	for mod in roles.keys():
-		sql("update `tabRole` set module = '%s' where name in (%s)" % (mod, roles[mod]))
-		
-	sql("update `tabDocType` set module = 'Setup' where name = 'Role'")
-	try:
-	
-		delete_doc('Module Def', 'Roles')
-	except:
-		pass
-#------------------------------------ 
-def sync_mapper():
-	"Put mappers into corresponding module"
-		
-	mappers = {
-		'Accounts':		('Delivery Note-Sales Invoice', 'Project-Sales Invoice', 'Purchase Order-Purchase Invoice', 'Purchase Receipt-Purchase Invoice', 'Sales Order-Sales Invoice'), 
-		'Selling': 		('Delivery Note-Installation Note', 'Opportunity-Quotation', 'Lead-Opportunity', 'Lead-Customer', 'Project-Sales Order', 'Quotation-Sales Order', ), 
-		'Buying':		('Purchase Request-Purchase Order', 'Sales Order-Purchase Request'), 
-		'Stock':		('Purchase Order-Purchase Receipt', 'Project-Delivery Note', 'Sales Invoice-Delivery Note', 'Sales Order-Delivery Note'), 
-		'Support':		('Customer Issue-Maintenance Visit', 'Sales Order-Maintenance Schedule', 'Sales Order-Maintenance Visit'), 
-		'Production':	('Production Forecast-Production Plan', 'Production Forecast-Production Planning Tool', 'Sales Order-Production Plan'), 
-		'HR':			('Appraisal Template-Appraisal', 'Salary Structure-Salary Slip')
-	}
-	
-	for mod in mappers.keys():
-		sql("update `tabDocType Mapper` set module = '%s' where name in %s" % (mod, mappers[mod]))
-	try:
-		delete_doc('Module Def', 'Mapper')
-	except:
-		pass
-# --------------------------------------
-# function below will be run only in localhost
-'''def export_docs():
-	"""
-		Export all documents where module has been changed
-	"""
-	for dtype in ['DocType', 'Page', 'Search Criteria', 'DocType Mapper', 'Print Format', 'Role']:
-		lst = sql("select name, module from `tab%s`" % dtype)
-		for rec in lst:
-			webnotes.msgprint(rec)
-			if rec and rec[0] and rec[1]:
-				export_to_files(record_list = [[dtype, rec[0]]], record_module = rec[1])
-
-	#grep test company
-'''
-
-#---------------------------------------
-def run_patches():
-	# update module
-	dt_module = {'Landed Cost Purchase Receipt':'Stock', 'Landed Cost Item':'Stock', 'Comment': 'Core', 'Tag':'Core', 'Tag Detail': 'Core', 'POS Settings': 'Accounts', 'Menu Item': 'Setup', 'Menu Item Role': 'Setup'}
-	for d in dt_module.keys():
-		sql("update `tabDocType` set module = '%s' where name = '%s'" % (dt_module[d], d))
-	delete_unwanted_mappers()
-	delete_unwanted_doctypes()
-	sql("start transaction")
-	delete_unwanted_pages()
-
-	delete_unwanted_search_criteria()
-
-	
-	rename_merge_modules()
-	sync_roles()
-	sync_mapper()
-	delete_unwanted_modules()
-	# landed cost wizard link in stock
-	reload_doc('stock', 'Module Def', 'Stock')
-	
-	sql("commit")
diff --git a/patches/before_jan_2012/index_patch.py b/patches/before_jan_2012/index_patch.py
deleted file mode 100644
index 7971fbf..0000000
--- a/patches/before_jan_2012/index_patch.py
+++ /dev/null
@@ -1,311 +0,0 @@
-# ERPNext - web based ERP (http://erpnext.com)
-# Copyright (C) 2012 Web Notes Technologies Pvt Ltd
-# 
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-# 
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# 
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-from __future__ import unicode_literals
-"""
-	This patch removes wrong indexs and add proper indexes in tables
-"""
-
-import webnotes
-sql = webnotes.conn.sql
-from webnotes.utils import cstr
-
-def create_proper_index():
-	from webnotes.modules.export_file import export_to_files
-
-	dt_index_fields={
-						'Purchase Receipt Item': ['prevdoc_docname', 'item_code', 'warehouse', 'prevdoc_detail_docname'], 
-						'Period Closing Voucher': ['closing_account_head', 'fiscal_year'], 
-						'Lead': ['lead_name', 'status', 'transaction_date'], 
-						'Time Sheet Detail': ['app_name'], 
-						'Item Quality Inspection Parameter': [], 
-						'Budget Detail': ['fiscal_year', 'account'], 
-						'Grade': [], 
-						'Sales Taxes and Charges': ['parenttype', 'account_head'], 
-						'TDS Category Account': ['account_head'], 
-						'Role': [], 
-						'Leave Allocation': ['leave_type', 'employee', 'fiscal_year'], 
-						'Branch': [], 
-						'Department': [], 
-						'Contact Detail': [], 
-						'Territory': ['lft', 'rgt', 'parent_territory'], 
-						'Item Tax': ['tax_type'], 
-						'Bin': ['warehouse', 'item_code'], 
-						'PPW Detail': ['warehouse'], 
-						'Sales Partner': ['partner_name'], 
-						'Default Home Page': ['home_page', 'role'], 
-						'Custom Field': ['dt'], 
-						'DocFormat': ['format'], 
-						'DocType Mapper': ['from_doctype', 'to_doctype'], 
-						'Brand': [], 
-						'Quotation Lost Reason': [], 
-						'Journal Voucher': ['posting_date', 'voucher_type'], 
-						'TDS Return Acknowledgement': ['date_of_receipt', 'acknowledgement'], 
-						'BOM Report Detail': ['item_code'], 
-						'Quotation Item': ['item_code'], 
-						'Update Delivery Date Detail': ['sales_order_no'], 
-						'Sales Invoice Advance': ['journal_voucher'], 
-						'Authorization Rule': ['approving_user', 'system_user', 'system_role', 'approving_role'], 
-						'DocPerm': ['permlevel', 'role'], 
-						'Stock Entry Detail': ['item_code', 't_warehouse', 's_warehouse'], 
-						'Stock Entry': ['posting_date', 'delivery_note_no', 'purchase_receipt_no', 'production_order'], 
-						'Price List': [], 
-						'Appraisal Template Goal': [], 
-						'Production Order': ['status', 'project_name', 'production_item'], 
-						'Account': ['lft', 'rgt', 'parent_account'], 
-						'Earn Deduction Detail': [], 
-						'Purchase Request': ['status', 'transaction_date'], 
-						'Tag Detail': [], 
-						'Salary Slip Deduction': ['d_type'], 
-						'Batch': ['item'], 
-						'Deduction Type': [], 
-						'Project': ['project_name', 'customer'], 
-						'UserRole': ['role'], 
-						'DocField': ['label', 'fieldtype', 'fieldname'], 
-						'Property Setter': ['doc_type', 'doc_name', 'property'], 
-						'Appraisal': ['status', 'employee'], 
-						'Letter Head': [], 
-						'Communication Log': ['follow_up_by'], 
-						'Project Cost Breakup': [], 
-						'Table Mapper Detail': [], 
-						'Campaign': [], 
-						'SMS Parameter': [], 
-						'Leave Type': [], 
-						'Absent Days Detail': [], 
-						'Tag': [], 
-						'Raw Materials Supplied': ['raw_material'], 
-						'Project Activity Update': [], 
-						'Purchase Receipt Item Supplied': [], 
-						'Bank Reconciliation Detail': ['voucher_id'], 
-						'Sales Order': ['quotation_no', 'project_name', 'customer', 'posting_date'], 
-						'Chapter VI A Detail': [], 
-						'Employee Internal Work History': [], 
-						'Order Reconciliation Detail': ['sales_order_no'], 
-						'Attendance': ['employee', 'att_date'], 
-						'Employee External Work History': [], 
-						'Salary Structure Earning': ['e_type'], 
-						'Sales Order Item': ['item_code', 'prevdoc_docname', 'reserved_warehouse'], 
-						'Appraisal Template': [], 
-						'Budget Distribution': ['fiscal_year'], 
-						'Workstation': ['warehouse'], 
-						'Training Session Details': [], 
-						'Sales Taxes and Charges Master': [], 
-						'State': [], 
-						'Bulk Rename Tool': [], 
-						'Landed Cost Master Detail': [], 
-						'Employee': ['employee_name', 'designation', 'department'], 
-						'Terms And Conditions': [], 
-						'TC Detail': [], 
-						'UOM': [], 
-						'Supplier Type': [], 
-						'Project Milestone': [], 
-						'Landed Cost Master': [], 
-						'Budget Distribution Detail': [], 
-						'Form 16A Ack Detail': [], 
-						'Campaign Expense': [], 
-						'Time Sheet': ['employee_name', 'time_sheet_date'], 
-						'File Group': ['parent_group'], 
-						'Maintenance Visit Purpose': ['item_code', 'service_person'], 
-						'Support Ticket Response': [], 
-						'Purchase Invoice Item': ['item_code', 'purchase_order', 'po_detail', 'purchase_receipt', 'pr_detail', 'expense_head', 'cost_center'], 
-						'Timesheet Detail': ['project_name', 'task_id', 'customer_name'], 
-						'Holiday': [], 
-						'Workflow Rule Detail': [], 
-						'Module Def': ['module_seq', 'module_page'], 
-						'Terms and Conditions': [], 
-						'PF Detail': ['item_code'], 
-						'POS Setting': ['user', 'territory'], 
-						'Quality Inspection Reading': [], 
-						'Support Ticket': ['customer', 'allocated_to', 'status'], 
-						'Project Activity': ['project'], 
-						'Customer Group': ['lft', 'rgt', 'parent_customer_group'], 
-						'Sales and Purchase Return Item': ['item_code'], 
-						'Series Detail': [], 
-						'Event Role': ['role'], 
-						'Contact': ['employee_id'], 
-						'BOM Item': ['item_code', 'bom_no'], 
-						'Invest 80 Declaration Detail': [], 
-						'Purchase Order Item Supplied': [], 
-						'Industry Type': [], 
-						'Declaration Detail': [], 
-						'Holiday List': ['fiscal_year'], 
-						'Sales Person': ['lft', 'rgt', 'parent_sales_person'], 
-						'Sales Invoice Item': ['item_code', 'sales_order', 'so_detail', 'delivery_note', 'dn_detail', 'cost_center', 'income_account'], 
-						'Module Def Item': [], 
-						'TDS Category': [], 
-						'DocTrigger': [], 
-						'Print Format': ['standard'], 
-						'Installation Note Item': ['prevdoc_docname', 'item_code'], 
-						'Form 16A Tax Detail': [], 
-						'Event': ['event_date', 'event_type'], 
-						'Currency': [], 
-						'Warehouse Type': ['warehouse_type'], 
-						'Sales BOM': ['item_group'], 
-						'IT Checklist': ['employee'], 
-						'Purchase Taxes and Charges Master': [], 
-						'Company': [], 
-						'Call Log': [], 
-						'Employee Training': [], 
-						'Warehouse': ['warehouse_type'], 
-						'Competitor': [], 
-						'Mode of Payment': [], 
-						'Training Session': ['customer'], 
-						'Cost Center': ['lft', 'rgt', 'parent_cost_center'], 
-						'Timesheet': ['status', 'timesheet_date'], 
-						'Form 16A': ['party_no'], 
-						'Sales BOM Item': ['item_code'], 
-						'Answer': ['question'], 
-						'Supplier': [], 
-						'Installation Note': ['delivery_note_no', 'customer', 'inst_date'], 
-						'Expense Claim': ['approval_status', 'employee'], 
-						'Target Detail': ['from_date', 'to_date', 'fiscal_year'], 
-						'Page Role': ['role'], 
-						'Partner Target Detail': ['fiscal_year', 'item_group'], 
-						'Shipping Address': ['customer'], 
-						'Purchase Request Item': ['item_code', 'warehouse'], 
-						'TDS Payment Detail': [], 
-						'Market Segment': [], 
-						'Comment': [], 
-						'Service Order Detail': ['item_code', 'prevdoc_docname'], 
-						'TDS Payment': ['from_date', 'to_date', 'tds_category'], 
-						'Lead Email CC Detail': [], 
-						'User Setting-Role User': [], 
-						'Salary Slip': ['month', 'year', 'employee'], 
-						'Maintenance Schedule Detail': ['item_code', 'scheduled_date'], 
-						'Employment Type': [], 
-						'Purchase Invoice Advance': ['journal_voucher'], 
-						'Quotation': ['customer', 'transaction_date'], 
-						'Salary Structure Deduction': ['d_type'], 
-						'BOM': ['item', 'project_name'], 
-						'Earning Type': [], 
-						'Designation': [], 
-						'BOM Replace Utility Detail': ['parent_bom'], 
-						'Question': [], 
-						'Stock Ledger Entry': ['item_code', 'warehouse', 'posting_date', 'posting_time'], 
-						'Employee Education': [], 
-						'BOM Operation': [], 
-						'Item Group': ['lft', 'rgt', 'parent_item_group'], 
-						'Workflow Action Detail': [], 
-						'User Setting-Profile': [], 
-						'Customer Issue': ['item_code', 'customer', 'complaint_date'], 
-						'Feed': [], 
-						'Purchase Taxes and Charges': ['account_head'], 
-						'GL Mapper Detail': [], 
-						'TDS Detail': [], 
-						'PRO Detail': ['item_code', 'source_warehouse'], 
-						'DocType Label': [], 
-						'Sales Invoice': ['posting_date', 'debit_to', 'project_name'], 
-						'GL Entry': ['posting_date', 'account', 'voucher_no'], 
-						'Serial No': ['status', 'warehouse'], 
-						'Delivery Note': ['posting_date', 'project_name', 'customer'], 
-						'UOM Conversion Detail': ['uom'], 
-						'Search Criteria': ['criteria_name'], 
-						'Salary Structure': [], 
-						'Educational Qualifications': ['qualification'], 
-						'TDS Rate Chart': ['applicable_from', 'applicable_to'], 
-						'GL Mapper': [], 
-						'Announcement': [], 
-						'Call Log Details': [], 
-						'Opportunity': ['lead', 'customer', 'transaction_date'], 
-						'BOM Explosion Item': ['item_code'], 
-						'Landed Cost Item': ['account_head'], 
-						'Field Mapper Detail': ['from_field', 'to_field'], 
-						'File Data': [], 
-						'Question Tag': [], 
-						'Quality Inspection': ['item_code', 'purchase_receipt_no', 'report_date'], 
-						'Appraisal Goal': [], 
-						'POS Settings': ['territory'], 
-						'Delivery Note Item': ['item_code', 'prevdoc_docname', 'warehouse', 'prevdoc_detail_docname'], 
-						'Profile': [], 
-						'Other Income Detail': [], 
-						'Product': ['item_code', 'stock_warehouse'], 
-						'Purchase Order Item': ['prevdoc_docname', 'item_code', 'prevdoc_detail_docname', 'warehouse'], 
-						'Module Def Role': ['role'], 
-						'Sales Team': ['sales_person'], 
-						'Opportunity Item': ['item_code'], 
-						'DocType': [], 
-						'Compaint Note': ['nature_of_complaint', 'compliance_date'], 
-						'Maintenance Schedule': ['customer', 'sales_order_no'], 
-						'Event User': ['person'], 
-						'Stock Reconciliation': ['reconciliation_date'], 
-						'Purchase Receipt': ['posting_date', 'supplier', 'project_name'], 
-						'Complaint Detail': ['item_name'], 
-						'Address': ['customer', 'supplier'], 
-						'Task': ['request_date', 'allocated_to', 'category', 'customer', 'project'], 
-						'Territory Target Detail': ['month', 'fiscal_year'], 
-						'Landed Cost Purchase Receipt': ['purchase_receipt_no'], 
-						'Customer': ['customer_name', 'customer_group'], 
-						'Production Plan Sales Order': [], 
-						'Production Plan Item': ['document_date', 'item_code', 'parent_item'], 
-						'User Setting-Role Permission': [], 
-						'Custom Script': ['dt'], 
-						'Country': [], 
-						'DefaultValue': [], 
-						'Multi Ledger Report Detail': [], 
-						'Salary Slip Earning': ['e_type'], 
-						'SMS Log': [], 
-						'Expense Claim Type': [], 
-						'Item': ['item_group'], 
-						'Fiscal Year': [], 
-						'ToDo': ['role'], 
-						'Purchase Invoice': ['posting_date', 'credit_to', 'project_name', 'supplier'], 
-						'Journal Voucher Detail': ['account', 'against_voucher', 'against_invoice', 'against_jv'], 
-						'Online Contact': [], 
-						'Page': ['module'], 
-						'Leave Application': ['employee', 'leave_type', 'from_date', 'to_date'], 
-						'Expense Claim Detail': ['expense_type'], 
-						'Maintenance Visit': ['customer', 'sales_order_no', 'customer_issue_no'], 
-						'Item Price': ['price_list_name', 'ref_currency'], 
-						'SMS Receiver': [], 
-						'Naming Series Options': ['doc_type'], 
-						'Activity Type': [], 
-						'Delivery Note Packing Item': ['item_code', 'parent_item', 'warehouse'], 
-						'Workflow Rule': ['select_form'], 
-						'File': ['file_group'], 
-						'Maintenance Schedule Item': ['item_code', 'start_date', 'end_date', 'prevdoc_docname'], 
-						'Purchase Order': ['supplier', 'project_name', 'posting_date'], 
-						'Print Heading': [], 
-						'TDS Rate Detail': ['category']
-					}
-	#sql("commit") # only required if run from login
-	exist_dt = [cstr(d[0]) for d in sql("select name from `tabDocType`")]
-	
-	for dt in [d for d in dt_index_fields.keys() if d in exist_dt]:
-		try:
-			current_index = sql("show indexes from `tab%s`" % dt)
-	
-			proper_index = dt_index_fields[dt]
-	
-			for d in current_index:
-				if d[4] not in ['name', 'parent', 'parenttype']:
-					if d[4] not in proper_index:
-						sql("ALTER TABLE `tab%s` DROP INDEX %s" % (dt, d[4]))
-						sql("start transaction")
-						sql("UPDATE `tabDocField` SET search_index = 0 WHERE fieldname = '%s' AND parent = '%s'" % (d[4], dt))
-						sql("commit")
-					else:
-						proper_index.remove(d[4])
-	
-			for d in proper_index:
-				sql("ALTER TABLE `tab%s` ADD INDEX ( `%s` ) " % (dt, d))
-				sql("start transaction")
-				sql("UPDATE `tabDocField` SET search_index = 1 WHERE fieldname = '%s' AND parent = '%s'" % (d, dt))
-				sql("commit")
-		except:
-			continue
-			
-def execute():
-	create_proper_index()	
diff --git a/patches/before_jan_2012/install_print_formats.py b/patches/before_jan_2012/install_print_formats.py
deleted file mode 100644
index d3d8789..0000000
--- a/patches/before_jan_2012/install_print_formats.py
+++ /dev/null
@@ -1,125 +0,0 @@
-# ERPNext - web based ERP (http://erpnext.com)
-# Copyright (C) 2012 Web Notes Technologies Pvt Ltd
-# 
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-# 
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# 
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-from __future__ import unicode_literals
-import os, sys
-import webnotes
-
-path_to_file = os.sep.join(os.path.abspath(__file__).split(os.sep)[:-1] + ['print_formats'])
-
-def prepare_pf_dict(args_list):
-	"""
-
-	"""
-	pf_list = []
-	for a in args_list:
-		for pf_type in ['Classic', 'Modern', 'Spartan']:
-			pf = {}
-			pf['name'] = " ".join([a['name'], pf_type])
-			pf['file'] = os.sep.join([path_to_file, "".join(pf['name'].split(" ")) + ".html"])
-			pf['module'] = a['module']
-			pf['doc_type'] = a['doc_type']
-			pf['standard'] = 'Yes'
-			pf_list += [pf]
-	return pf_list
-
-
-pf_to_install = prepare_pf_dict([
-	{
-		'name' : 'Sales Invoice',
-		'doc_type' : 'Sales Invoice',
-		'module' : 'Accounts'
-	},
-	{
-		'name' : 'Sales Order',
-		'doc_type' : 'Sales Order',
-		'module' : 'Selling'
-	},
-	{
-		'name' : 'Quotation',
-		'doc_type' : 'Quotation',
-		'module' : 'Selling'
-	},
-	{
-		'name' : 'Delivery Note',
-		'doc_type' : 'Delivery Note',
-		'module' : 'Stock'
-	},
-	{
-		'name' : 'Purchase Order',
-		'doc_type' : 'Purchase Order',
-		'module' : 'Buying'
-	}
-])
-
-def execute():
-	"""
-		Install print formats
-	"""
-	from webnotes.modules import reload_doc
-	reload_doc('core', 'doctype', 'print_format')
-	
-	#copy_doctype_to_pfs()
-	global pf_to_install
-	for pf in pf_to_install:
-	#	install_print_format(pf)
-	#	print "Installed PF: " + pf['name']
-		reload_doc(pf['module'], 'Print Format', pf['name'])
-
-
-def copy_doctype_to_pfs():
-	"""
-		Copy doctype to existing print formats
-	"""
-	pf_dt_list = webnotes.conn.sql("""
-		SELECT format, parent
-		FROM `tabDocFormat`""", as_list=1)
-	
-	from webnotes.model.doc import Document
-
-	for pf, dt in pf_dt_list:
-		try:
-			d = Document('Print Format', pf)
-			d.doc_type = dt
-			d.save()
-		except Exception, e:
-			print e.args
-			pass
-
-
-def install_print_format(args):
-	"""
-		Installs print format
-		args is a dict consisting of following keys:
-			* name
-			* module
-			* doctype
-			* standard = "Yes"/"No"
-			* file
-	"""
-	from webnotes.model.doc import Document
-	d = Document('Print Format')
-	d.name = args['name']
-	f = open(args['file'])
-	d.html = f.read()
-	f.close()
-	d.module = args['module']
-	d.doc_type = args['doc_type']
-	d.standard = args['standard']
-	d.save(1)
-	from webnotes.model.code import get_obj
-	obj = get_obj('Print Format', args['name'])
-	obj.on_update()
diff --git a/patches/before_jan_2012/lcw_patch.py b/patches/before_jan_2012/lcw_patch.py
deleted file mode 100644
index f5ed4c7..0000000
--- a/patches/before_jan_2012/lcw_patch.py
+++ /dev/null
@@ -1,26 +0,0 @@
-# ERPNext - web based ERP (http://erpnext.com)
-# Copyright (C) 2012 Web Notes Technologies Pvt Ltd
-# 
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-# 
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# 
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-from __future__ import unicode_literals
-def execute():
-	import webnotes
-	from webnotes.modules import reload_doc
-	
-	
-	reload_doc('stock', 'doctype', 'landed_cost_wizard')
-	reload_doc('stock', 'doctype', 'lc_pr_detail')
-	
-	webnotes.conn.sql("delete from `tabDocField` where parent ='Landed Cost Purchase Receipt' and fieldname in ('purchase_receipt_no', 'include_in_landed_cost')")
diff --git a/patches/before_jan_2012/p1.py b/patches/before_jan_2012/p1.py
deleted file mode 100644
index 10df020..0000000
--- a/patches/before_jan_2012/p1.py
+++ /dev/null
@@ -1,21 +0,0 @@
-# ERPNext - web based ERP (http://erpnext.com)
-# Copyright (C) 2012 Web Notes Technologies Pvt Ltd
-# 
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-# 
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# 
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-from __future__ import unicode_literals
-def execute():
-	import webnotes
-	if not webnotes.conn.sql("select name from tabDocFormat where parent = 'Sales Invoice' and format != 'POS Invoice'"):
-		webnotes.conn.sql("update tabDocType set default_print_format = 'Standard' where name =  'Sales Invoice'")
diff --git a/patches/before_jan_2012/packing_slip.py b/patches/before_jan_2012/packing_slip.py
deleted file mode 100644
index 10ffa86..0000000
--- a/patches/before_jan_2012/packing_slip.py
+++ /dev/null
@@ -1,25 +0,0 @@
-# ERPNext - web based ERP (http://erpnext.com)
-# Copyright (C) 2012 Web Notes Technologies Pvt Ltd
-# 
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-# 
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# 
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-from __future__ import unicode_literals
-def execute():
-	import webnotes
-	from webnotes.modules import reload_doc
-	reload_doc('stock', 'doctype', 'delivery_note_detail')
-	reload_doc('stock', 'Print Format', 'Delivery Note Packing List Wise')
-	
-	webnotes.conn.sql("delete from `tabDocField` where fieldname in ('packed_by', 'packing_checked_by', 'pack_size') and parent = 'Delivery Note'")
-	
diff --git a/patches/before_jan_2012/price_list_patch.py b/patches/before_jan_2012/price_list_patch.py
deleted file mode 100644
index 41fbd5e..0000000
--- a/patches/before_jan_2012/price_list_patch.py
+++ /dev/null
@@ -1,30 +0,0 @@
-# ERPNext - web based ERP (http://erpnext.com)
-# Copyright (C) 2012 Web Notes Technologies Pvt Ltd
-# 
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-# 
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# 
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-from __future__ import unicode_literals
-def execute():
-	import webnotes
-	from webnotes.modules import reload_doc
-
-	reload_doc('accounts', 'doctype', 'receivable_voucher')
-	reload_doc('stock', 'doctype', 'delivery_note')
-	reload_doc('selling', 'doctype', 'sales_order')
-	reload_doc('selling', 'doctype', 'quotation')
-	reload_doc('setup', 'doctype', 'manage_account')
-
-
-	for d in ['Sales Invoice', 'Delivery Note', 'Sales Order', 'Quotation']:
-		webnotes.conn.sql("update `tab%s` set price_list_currency = currency, plc_conversion_rate = conversion_rate" % d)
diff --git a/patches/before_jan_2012/print_hide_price_list.py b/patches/before_jan_2012/print_hide_price_list.py
deleted file mode 100644
index 4295ab4..0000000
--- a/patches/before_jan_2012/print_hide_price_list.py
+++ /dev/null
@@ -1,20 +0,0 @@
-# ERPNext - web based ERP (http://erpnext.com)
-# Copyright (C) 2012 Web Notes Technologies Pvt Ltd
-# 
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-# 
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# 
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-from __future__ import unicode_literals
-def execute():
-	import webnotes
-	webnotes.conn.sql("update `tabDocField` set print_hide = 1 where fieldname in ('price_list_currency', 'plc_conversion_rate')")
diff --git a/patches/before_jan_2012/profile_mark_not_in_create.py b/patches/before_jan_2012/profile_mark_not_in_create.py
deleted file mode 100644
index aae0694..0000000
--- a/patches/before_jan_2012/profile_mark_not_in_create.py
+++ /dev/null
@@ -1,27 +0,0 @@
-# ERPNext - web based ERP (http://erpnext.com)
-# Copyright (C) 2012 Web Notes Technologies Pvt Ltd
-# 
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-# 
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# 
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-from __future__ import unicode_literals
-import webnotes
-def execute():
-	"""
-		Mark DocType Profile as 'not_in_create'
-	"""
-	webnotes.conn.sql("""
-		UPDATE `tabDocType`
-		SET in_create=1
-		WHERE name='Profile'
-	""")
diff --git a/patches/before_jan_2012/project_patch.py b/patches/before_jan_2012/project_patch.py
deleted file mode 100644
index 735714d..0000000
--- a/patches/before_jan_2012/project_patch.py
+++ /dev/null
@@ -1,35 +0,0 @@
-# ERPNext - web based ERP (http://erpnext.com)
-# Copyright (C) 2012 Web Notes Technologies Pvt Ltd
-# 
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-# 
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# 
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-from __future__ import unicode_literals
-def execute():
-	import webnotes
-	from webnotes.modules import reload_doc
-	sql = webnotes.conn.sql
-	
-	# Reload item table
-	reload_doc('accounts', 'doctype', 'pv_detail')
-	reload_doc('buying', 'doctype', 'po_detail')
-	reload_doc('stock', 'doctype', 'purchase_receipt_detail')
-	
-	# copy project value from parent to child
-	sql("update `tabPurchase Order Item` t1, `tabPurchase Order` t2 set t1.project_name = t2.project_name where t1.parent = t2.name and ifnull(t1.project_name, '') = ''")
-	sql("update `tabPurchase Invoice Item` t1, `tabPurchase Invoice` t2 set t1.project_name = t2.project_name where t1.parent = t2.name and ifnull(t1.project_name, '') = ''")
-	sql("update `tabPurchase Receipt Item` t1, `tabPurchase Receipt` t2 set t1.project_name = t2.project_name where t1.parent = t2.name and ifnull(t1.project_name, '') = ''")
-	
-	# delete project from parent
-	sql("delete from `tabDocField` where fieldname = 'project_name' and parent in ('Purchase Order', 'Purchase Receipt', 'Purchase Invoice')")
-
diff --git a/patches/before_jan_2012/reload_address.py b/patches/before_jan_2012/reload_address.py
deleted file mode 100644
index 781a00b..0000000
--- a/patches/before_jan_2012/reload_address.py
+++ /dev/null
@@ -1,22 +0,0 @@
-# ERPNext - web based ERP (http://erpnext.com)
-# Copyright (C) 2012 Web Notes Technologies Pvt Ltd
-# 
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-# 
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# 
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-from __future__ import unicode_literals
-def execute():
-	import webnotes
-	from webnotes.modules import reload_doc
-
-	reload_doc('utilities', 'doctype', 'address')
diff --git a/patches/before_jan_2012/reload_bom.py b/patches/before_jan_2012/reload_bom.py
deleted file mode 100644
index 0492d72..0000000
--- a/patches/before_jan_2012/reload_bom.py
+++ /dev/null
@@ -1,22 +0,0 @@
-# ERPNext - web based ERP (http://erpnext.com)
-# Copyright (C) 2012 Web Notes Technologies Pvt Ltd
-# 
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-# 
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# 
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-from __future__ import unicode_literals
-def execute():
-	import webnotes
-	from webnotes.modules import reload_doc
-
-	reload_doc('production', 'doctype', 'bill_of_materials')
diff --git a/patches/before_jan_2012/reload_doclayer.py b/patches/before_jan_2012/reload_doclayer.py
deleted file mode 100644
index 2da9187..0000000
--- a/patches/before_jan_2012/reload_doclayer.py
+++ /dev/null
@@ -1,33 +0,0 @@
-# ERPNext - web based ERP (http://erpnext.com)
-# Copyright (C) 2012 Web Notes Technologies Pvt Ltd
-# 
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-# 
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# 
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-from __future__ import unicode_literals
-"""
-	Reload Customize Form, Customize Form Field and Print Format doctypes
-"""
-def execute():
-	from webnotes.modules import reload_doc
-	reload_doc('core', 'doctype', 'print_format')
-	reload_doc('core', 'doctype', 'doclayer')
-	reload_doc('core', 'doctype', 'doclayerfield')
-	reload_doc('accounts', 'doctype', 'gl_entry')
-	from webnotes.model.doc import Document
-	d = Document('DocType Label')
-	d.dt = "Customize Form"
-	d.dt_label = "Customize Form View"
-	d.save(1)
-	from webnotes.sessions import clear
-	clear()
diff --git a/patches/before_jan_2012/reload_email_digest.py b/patches/before_jan_2012/reload_email_digest.py
deleted file mode 100644
index 8e0852c..0000000
--- a/patches/before_jan_2012/reload_email_digest.py
+++ /dev/null
@@ -1,20 +0,0 @@
-# ERPNext - web based ERP (http://erpnext.com)
-# Copyright (C) 2012 Web Notes Technologies Pvt Ltd
-# 
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-# 
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# 
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-from __future__ import unicode_literals
-def execute():
-	from webnotes.modules import reload_doc
-	reload_doc('Setup', 'DocType', 'Email Digest')
diff --git a/patches/before_jan_2012/reload_employeewise_balance_leave_report.py b/patches/before_jan_2012/reload_employeewise_balance_leave_report.py
deleted file mode 100644
index 1e8ce40..0000000
--- a/patches/before_jan_2012/reload_employeewise_balance_leave_report.py
+++ /dev/null
@@ -1,21 +0,0 @@
-# ERPNext - web based ERP (http://erpnext.com)
-# Copyright (C) 2012 Web Notes Technologies Pvt Ltd
-# 
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-# 
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# 
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-from __future__ import unicode_literals
-def execute():
-	import webnotes
-	from webnotes.modules import reload_doc
-	reload_doc('hr', 'search_criteria', 'employeewise_balance_leave_report')
diff --git a/patches/before_jan_2012/reload_flat_bom.py b/patches/before_jan_2012/reload_flat_bom.py
deleted file mode 100644
index 7c648ff..0000000
--- a/patches/before_jan_2012/reload_flat_bom.py
+++ /dev/null
@@ -1,23 +0,0 @@
-# ERPNext - web based ERP (http://erpnext.com)
-# Copyright (C) 2012 Web Notes Technologies Pvt Ltd
-# 
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-# 
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# 
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-from __future__ import unicode_literals
-def execute():
-	from webnotes.modules import webnotes
-	from webnotes.modules import reload_doc
-
-	reload_doc('production', 'doctype', 'flat_bom_detail')
-	reload_doc('production', 'doctype', 'bom_material')
diff --git a/patches/before_jan_2012/reload_gl_mapper.py b/patches/before_jan_2012/reload_gl_mapper.py
deleted file mode 100644
index cf67c5c..0000000
--- a/patches/before_jan_2012/reload_gl_mapper.py
+++ /dev/null
@@ -1,23 +0,0 @@
-# ERPNext - web based ERP (http://erpnext.com)
-# Copyright (C) 2012 Web Notes Technologies Pvt Ltd
-# 
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-# 
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# 
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-from __future__ import unicode_literals
-def execute():
-	import webnotes
-	from webnotes.modules import reload_doc
-	
-	# reload jv gl mapper
-	reload_doc('accounts', 'GL Mapper', 'Journal Voucher')
diff --git a/patches/before_jan_2012/reload_lc_wizard.py b/patches/before_jan_2012/reload_lc_wizard.py
deleted file mode 100644
index 3de71da..0000000
--- a/patches/before_jan_2012/reload_lc_wizard.py
+++ /dev/null
@@ -1,26 +0,0 @@
-# ERPNext - web based ERP (http://erpnext.com)
-# Copyright (C) 2012 Web Notes Technologies Pvt Ltd
-# 
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-# 
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# 
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-from __future__ import unicode_literals
-def execute():
-	import webnotes
-	from webnotes.modules import reload_doc
-	from webnotes.model import delete_doc
-
-	delete_doc('DocType', 'Landed Cost Wizard')
-	delete_doc('DocType', 'Landed Cost Purchase Receipt')
-	reload_doc('stock', 'doctype', 'landed_cost_wizard')
-	reload_doc('stock', 'doctype', 'lc_pr_detail')
diff --git a/patches/before_jan_2012/reload_print_format.py b/patches/before_jan_2012/reload_print_format.py
deleted file mode 100644
index d775c0c..0000000
--- a/patches/before_jan_2012/reload_print_format.py
+++ /dev/null
@@ -1,34 +0,0 @@
-# ERPNext - web based ERP (http://erpnext.com)
-# Copyright (C) 2012 Web Notes Technologies Pvt Ltd
-# 
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-# 
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# 
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-from __future__ import unicode_literals
-def execute():
-	import webnotes
-	from webnotes.modules import reload_doc
-	from webnotes.model.doc import addchild
-	from webnotes.model.code import get_obj
-	reload_doc('stock', 'Print Format', 'Delivery Note Packing List Wise')
-	reload_doc('stock', 'Print Format', 'Purchase Receipt Format')
-	reload_doc('accounts', 'Print Format', 'Payment Receipt Voucher')
-	reload_doc('accounts', 'Print Format', 'POS Invoice')
-	reload_doc('accounts', 'Print Format', 'Form 16A Print Format')
-	reload_doc('accounts', 'Print Format', 'Cheque Printing Format')
-	
-	if not webnotes.conn.sql("select format from `tabDocFormat` where name = 'POS Invoice' and parent = 'Sales Invoice'"):		
-		dt_obj = get_obj('DocType', 'Sales Invoice', with_children = 1)
-		ch = addchild(dt_obj.doc, 'formats', 'DocFormat', 1)
-		ch.format = 'POS Invoice'
-		ch.save(1)
diff --git a/patches/before_jan_2012/reload_project_task.py b/patches/before_jan_2012/reload_project_task.py
deleted file mode 100644
index c6b38d5..0000000
--- a/patches/before_jan_2012/reload_project_task.py
+++ /dev/null
@@ -1,24 +0,0 @@
-# ERPNext - web based ERP (http://erpnext.com)
-# Copyright (C) 2012 Web Notes Technologies Pvt Ltd
-# 
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-# 
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# 
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-from __future__ import unicode_literals
-"""
-	Reload Task Doctype of Project Module
-"""
-def execute():
-	from webnotes.modules import reload_doc
-	reload_doc('Projects', 'DocType', 'Task')
-
diff --git a/patches/before_jan_2012/reload_reco.py b/patches/before_jan_2012/reload_reco.py
deleted file mode 100644
index 2c303c5..0000000
--- a/patches/before_jan_2012/reload_reco.py
+++ /dev/null
@@ -1,23 +0,0 @@
-# ERPNext - web based ERP (http://erpnext.com)
-# Copyright (C) 2012 Web Notes Technologies Pvt Ltd
-# 
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-# 
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# 
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-from __future__ import unicode_literals
-def execute():
-	import webnotes
-	from webnotes.modules import reload_doc
-	
-	reload_doc('stock', 'doctype', 'stock_reconciliation')
-	webnotes.conn.sql("delete from `tabDocField` where (label in ('Validate Data', 'Attachment HTML', 'Attachment') or fieldname in ('next_step', 'company', 'fiscal_year', 'amendment_date')) and parent = 'Stock Reconciliation'")
diff --git a/patches/before_jan_2012/reload_rv.py b/patches/before_jan_2012/reload_rv.py
deleted file mode 100644
index 3c7b5be..0000000
--- a/patches/before_jan_2012/reload_rv.py
+++ /dev/null
@@ -1,26 +0,0 @@
-# ERPNext - web based ERP (http://erpnext.com)
-# Copyright (C) 2012 Web Notes Technologies Pvt Ltd
-# 
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-# 
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# 
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-from __future__ import unicode_literals
-def execute():
-	import webnotes
-	from webnotes.modules import reload_doc
-	from webnotes.model.code import get_obj
-
-	reload_doc('accounts', 'doctype', 'receivable_voucher')
-
-	reload_doc('setup', 'doctype', 'features_setup')
-	get_obj('Features setup').validate()
diff --git a/patches/before_jan_2012/reload_support_ticket.py b/patches/before_jan_2012/reload_support_ticket.py
deleted file mode 100644
index 0fe611b..0000000
--- a/patches/before_jan_2012/reload_support_ticket.py
+++ /dev/null
@@ -1,23 +0,0 @@
-# ERPNext - web based ERP (http://erpnext.com)
-# Copyright (C) 2012 Web Notes Technologies Pvt Ltd
-# 
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-# 
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# 
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-from __future__ import unicode_literals
-def execute():
-	import webnotes
-	from webnotes.modules import reload_doc
-	reload_doc('Support', 'DocType', 'Support Ticket')
-	from webnotes.model.code import get_obj
-	get_obj('DocType', 'Support Ticket').validate()
diff --git a/patches/before_jan_2012/remove_duplicate_table_mapper_detail.py b/patches/before_jan_2012/remove_duplicate_table_mapper_detail.py
deleted file mode 100644
index 3594a70..0000000
--- a/patches/before_jan_2012/remove_duplicate_table_mapper_detail.py
+++ /dev/null
@@ -1,39 +0,0 @@
-# ERPNext - web based ERP (http://erpnext.com)
-# Copyright (C) 2012 Web Notes Technologies Pvt Ltd
-# 
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-# 
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# 
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-from __future__ import unicode_literals
-"""
-	Removes duplicate entries created in 
-"""
-import webnotes
-def execute():
-	res = webnotes.conn.sql("""\
-		SELECT a.name
-		FROM
-			`tabTable Mapper Detail` a,
-			`tabTable Mapper Detail` b
-		WHERE
-			a.parent = b.parent AND
-			a.from_table = b.from_table AND
-			a.to_table = b.to_table AND
-			a.from_field = b.from_field AND
-			a.to_field = b.to_field AND
-			a.name < b.name""")
-	if res and len(res)>0:
-		name_string = ", ".join(["'" + str(r[0]) + "'" for r in res])
-		res = webnotes.conn.sql("""\
-			DELETE FROM `tabTable Mapper Detail`
-			WHERE name IN (%s)""" % name_string)
diff --git a/patches/before_jan_2012/remove_extra_button_from_email_digest.py b/patches/before_jan_2012/remove_extra_button_from_email_digest.py
deleted file mode 100644
index fa2481d..0000000
--- a/patches/before_jan_2012/remove_extra_button_from_email_digest.py
+++ /dev/null
@@ -1,25 +0,0 @@
-# ERPNext - web based ERP (http://erpnext.com)
-# Copyright (C) 2012 Web Notes Technologies Pvt Ltd
-# 
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-# 
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# 
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-from __future__ import unicode_literals
-def execute():
-	import webnotes
-	webnotes.conn.sql("""
-		DELETE FROM tabDocField
-		WHERE parent = 'Email Digest'
-		AND label = 'Add Recipients'
-		AND fieldtype = 'Button'""")
-
diff --git a/patches/before_jan_2012/remove_old_cp_email_settings.py b/patches/before_jan_2012/remove_old_cp_email_settings.py
deleted file mode 100644
index 6417441..0000000
--- a/patches/before_jan_2012/remove_old_cp_email_settings.py
+++ /dev/null
@@ -1,32 +0,0 @@
-# ERPNext - web based ERP (http://erpnext.com)
-# Copyright (C) 2012 Web Notes Technologies Pvt Ltd
-# 
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-# 
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# 
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-from __future__ import unicode_literals
-def execute():
-	"""
-		remove control panel email settings if automail.webnotestech.com
-	"""
-	from webnotes.model.doc import Document
-	cp = Document('Control Panel', 'Control Panel')
-	if cp:
-		if cp.outgoing_mail_server == 'mail.webnotestech.com':
-			cp.outgoing_mail_server = None;
-			cp.mail_login = None;
-			cp.mail_password = None;
-			cp.mail_port = None;
-			cp.auto_email_id = 'automail@erpnext.com'
-			cp.save()
-
diff --git a/patches/before_jan_2012/remove_page_break_from_defaults.py b/patches/before_jan_2012/remove_page_break_from_defaults.py
deleted file mode 100644
index 8ee441a..0000000
--- a/patches/before_jan_2012/remove_page_break_from_defaults.py
+++ /dev/null
@@ -1,20 +0,0 @@
-# ERPNext - web based ERP (http://erpnext.com)
-# Copyright (C) 2012 Web Notes Technologies Pvt Ltd
-# 
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-# 
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# 
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-from __future__ import unicode_literals
-def execute():
-	import webnotes
-	webnotes.conn.sql("""delete from `tabDefaultValue` where defkey in ('page_break', 'projects', 'packing_details', 'discounts', 'brands', 'item_batch_nos', 'after_sales_installations', 'item_searial_nos', 'item_group_in_details', 'exports', 'imports', 'item_advanced', 'sales_extras', 'more_info', 'quality', 'manufacturing', 'pos', 'item_serial_nos', 'purchase_discounts', 'recurring_invoice') and parent = 'Control Panel'""")
diff --git a/patches/before_jan_2012/remove_previous_field_property_setter.py b/patches/before_jan_2012/remove_previous_field_property_setter.py
deleted file mode 100644
index a993a25..0000000
--- a/patches/before_jan_2012/remove_previous_field_property_setter.py
+++ /dev/null
@@ -1,23 +0,0 @@
-# ERPNext - web based ERP (http://erpnext.com)
-# Copyright (C) 2012 Web Notes Technologies Pvt Ltd
-# 
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-# 
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# 
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-from __future__ import unicode_literals
-import webnotes
-def execute():
-	webnotes.conn.sql("""\
-		DELETE FROM `tabProperty Setter`
-		WHERE property='previous_field'
-	""")
diff --git a/patches/before_jan_2012/repost_account_bal.py b/patches/before_jan_2012/repost_account_bal.py
deleted file mode 100644
index b1d68c7..0000000
--- a/patches/before_jan_2012/repost_account_bal.py
+++ /dev/null
@@ -1,36 +0,0 @@
-# ERPNext - web based ERP (http://erpnext.com)
-# Copyright (C) 2012 Web Notes Technologies Pvt Ltd
-# 
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-# 
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# 
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-
-from __future__ import unicode_literals
-def execute():
-	import webnotes
-	sql = webnotes.conn.sql
-	from webnotes.model.code import get_obj
-	
-	# repost
-	comp = sql("select name from tabCompany where docstatus!=2")
-	fy = sql("select name from `tabFiscal Year` order by year_start_date asc")
-	for c in comp:
-		prev_fy = ''
-		for f in fy:
-			fy_obj = get_obj('Fiscal Year', f[0])
-			fy_obj.doc.past_year = prev_fy
-			fy_obj.doc.company = c[0]
-			fy_obj.repost()
-			prev_fy = f[0]
-			webnotes.conn.commit()
-			webnotes.conn.begin()
\ No newline at end of file
diff --git a/patches/before_jan_2012/repost_stock.py b/patches/before_jan_2012/repost_stock.py
deleted file mode 100644
index 3976eba..0000000
--- a/patches/before_jan_2012/repost_stock.py
+++ /dev/null
@@ -1,40 +0,0 @@
-# ERPNext - web based ERP (http://erpnext.com)
-# Copyright (C) 2012 Web Notes Technologies Pvt Ltd
-# 
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-# 
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# 
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-from __future__ import unicode_literals
-def execute():
-    import webnotes
-    sql = webnotes.conn.sql
-    from webnotes.model.code import get_obj
-    from webnotes.utils import flt
-
-    # update incoming rate in serial nos
-    sr = sql("""select name, item_code, purchase_document_no from `tabSerial No`
-            where docstatus = 1 and purchase_document_type = 'Purchase Receipt'""")
-    for d in sr:
-        val_rate = sql("""select valuation_rate from `tabPurchase Receipt Item`
-            where item_code = %s and parent = %s""", (d[1], d[2]))
-        sql("""update `tabSerial No` set purchase_rate = %s where name = %s""",
-           (val_rate and flt(val_rate[0][0]) or 0, d[0]))
-    
-    
-    # repost for all serialized item
-    bin = sql("""select t1.name from `tabBin` t1, tabItem t2 where t1.item_code = t2.name and ifnull(has_serial_no, 'No') = 'Yes'""")
-    for d in bin:
-        get_obj('Bin', d[0]).update_entries_after(posting_date = '2000-01-01', posting_time = '12:00')
-        sql("commit")
-        sql("start transaction")
-
diff --git a/patches/before_jan_2012/sal_man_patch.py b/patches/before_jan_2012/sal_man_patch.py
deleted file mode 100644
index b6dd6f0..0000000
--- a/patches/before_jan_2012/sal_man_patch.py
+++ /dev/null
@@ -1,25 +0,0 @@
-# ERPNext - web based ERP (http://erpnext.com)
-# Copyright (C) 2012 Web Notes Technologies Pvt Ltd
-# 
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-# 
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# 
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-
-from __future__ import unicode_literals
-def execute():
-	import webnotes
-	from webnotes.modules import reload_doc
-	sql = webnotes.conn.sql
-
-	reload_doc('hr', 'doctype', 'salary_manager')
-	sql("delete from `tabDocField` where parent = 'Salary Manager' and fieldname = 'employment_type'")
diff --git a/patches/before_jan_2012/task_email_notification.py b/patches/before_jan_2012/task_email_notification.py
deleted file mode 100644
index 5e8b394..0000000
--- a/patches/before_jan_2012/task_email_notification.py
+++ /dev/null
@@ -1,21 +0,0 @@
-# ERPNext - web based ERP (http://erpnext.com)
-# Copyright (C) 2012 Web Notes Technologies Pvt Ltd
-# 
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-# 
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# 
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-from __future__ import unicode_literals
-def execute():
-	import webnotes
-	from webnotes.modules import reload_doc
-	reload_doc('projects', 'doctype', 'ticket')
diff --git a/patches/before_jan_2012/update_0_idx.py b/patches/before_jan_2012/update_0_idx.py
deleted file mode 100644
index 9a192e5..0000000
--- a/patches/before_jan_2012/update_0_idx.py
+++ /dev/null
@@ -1,26 +0,0 @@
-# ERPNext - web based ERP (http://erpnext.com)
-# Copyright (C) 2012 Web Notes Technologies Pvt Ltd
-# 
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-# 
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# 
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-from __future__ import unicode_literals
-import webnotes
-def execute():
-	doc_type_list = webnotes.conn.sql("""SELECT DISTINCT parent FROM `tabDocField` where idx=0""")
-	for doc_type in doc_type_list:
-		if doc_type and doc_type[0]:
-			webnotes.conn.sql("""\
-				UPDATE `tabDocField` SET idx=idx+1
-				WHERE parent=%s
-			""", doc_type[0])
diff --git a/patches/before_jan_2012/update_gle_against_voucher_for_jv.py b/patches/before_jan_2012/update_gle_against_voucher_for_jv.py
deleted file mode 100644
index b262778..0000000
--- a/patches/before_jan_2012/update_gle_against_voucher_for_jv.py
+++ /dev/null
@@ -1,32 +0,0 @@
-# ERPNext - web based ERP (http://erpnext.com)
-# Copyright (C) 2012 Web Notes Technologies Pvt Ltd
-# 
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-# 
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# 
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-from __future__ import unicode_literals
-def execute():
-	import webnotes
-	from webnotes.model.code import get_obj
-	
-	# select jv where against_jv exists
-	jv = webnotes.conn.sql("select distinct parent from `tabJournal Voucher Detail` where docstatus = 1 and ifnull(against_jv, '') != ''")
-
-	for d in jv:
-		jv_obj = get_obj('Journal Voucher', d[0], with_children=1)
-
-		# cancel
-		get_obj(dt='GL Control').make_gl_entries(jv_obj.doc, jv_obj.doclist, cancel =1, adv_adj = 1)
-
-		#re-submit
-		get_obj(dt='GL Control').make_gl_entries(jv_obj.doc, jv_obj.doclist, cancel =0, adv_adj = 1)
diff --git a/patches/december_2012/production_cleanup.py b/patches/december_2012/production_cleanup.py
new file mode 100644
index 0000000..46eb9e5
--- /dev/null
+++ b/patches/december_2012/production_cleanup.py
@@ -0,0 +1,49 @@
+import webnotes
+
+def execute():
+	delete_doctypes()
+	rename_module()
+	cleanup_bom()
+	rebuild_exploded_bom()
+	
+def delete_doctypes():
+	from webnotes.model import delete_doc
+	delete_doc("DocType", "Production Control")
+	delete_doc("DocType", "BOM Control")
+	
+	
+def rename_module():
+	webnotes.reload_doc("core", "doctype", "role")
+	webnotes.reload_doc("core", "doctype", "page")
+	webnotes.reload_doc("core", "doctype", "module_def")
+
+	if webnotes.conn.exists("Role", "Production User"):
+		webnotes.rename_doc("Role", "Production User", "Manufacturing User")
+	if webnotes.conn.exists("Role", "Production Manager"):
+		webnotes.rename_doc("Role", "Production Manager", "Manufacturing Manager")
+
+	if webnotes.conn.exists("Page", "manufacturing-home"):
+		webnotes.delete_doc("Page", "production-home")
+	else:
+		webnotes.rename_doc("Page", "production-home", "manufacturing-home")
+
+	if webnotes.conn.exists("Module Def", "Production"):
+		webnotes.rename_doc("Module Def", "Production", "Manufacturing")
+	
+	webnotes.conn.set_global("modules_list",
+		webnotes.conn.get_global('modules_list').replace("Production", "Manufacturing"))
+		
+	# set end of life to null if "0000-00-00"
+	webnotes.conn.sql("""update `tabItem` set end_of_life=null where end_of_life='0000-00-00'""")
+	
+def rebuild_exploded_bom():
+	from webnotes.model.code import get_obj
+	for bom in webnotes.conn.sql("""select name from `tabBOM` where docstatus < 2"""):
+		get_obj("BOM", bom[0], with_children=1).on_update()
+
+def cleanup_bom():
+	webnotes.conn.sql("""UPDATE `tabBOM` SET is_active = 1 where ifnull(is_active, 'No') = 'Yes'""")
+	webnotes.conn.sql("""UPDATE `tabBOM` SET is_active = 0 where ifnull(is_active, 'No') = 'No'""")
+	webnotes.reload_doc("manufacturing", "doctype", "bom")
+	webnotes.conn.sql("""update `tabBOM` set with_operations = 1""")
+	
\ No newline at end of file
diff --git a/patches/december_2012/stock_entry_cleanup.py b/patches/december_2012/stock_entry_cleanup.py
new file mode 100644
index 0000000..9710140
--- /dev/null
+++ b/patches/december_2012/stock_entry_cleanup.py
@@ -0,0 +1,74 @@
+import webnotes
+def execute():
+	# removed following fields
+	custom_fields()
+	deprecate_process()
+	webnotes.delete_doc("doctype", "sandbox")
+	
+def custom_fields():
+	fields = [
+		{
+			"label": "Is Excisable Goods",
+			"fieldname": "is_excisable_goods",
+			"fieldtype": "Select",
+			"options": "\nYes\nNo",
+			"insert_after": "Company"
+		},
+		{
+			"label": "Excisable Goods",
+			"fieldname": "excisable_goods",
+			"fieldtype": "Select",
+			"options": "\nReturnable\nNon-Returnable)",
+			"insert_after": "Amended From"
+		},
+		{
+			"label": "Under Rule",
+			"fieldname": "under_rule",
+			"fieldtype": "Select",
+			"options": "\nOrdinary\n57 AC (5) a\n57 F (2) Non-Exc.",
+			"insert_after": "Remarks"
+		},
+		{
+			"label": "Transporter",
+			"fieldname": "transporter",
+			"fieldtype": "Data",
+			"options": "",
+			"insert_after": "Project Name"
+		},
+		{
+			"label": "Transfer Date",
+			"fieldname": "transfer_date",
+			"fieldtype": "Date",
+			"options": "",
+			"insert_after": "Select Print Heading"
+		},
+	]
+	
+	for fld in fields:
+		if webnotes.conn.sql("""select name from `tabStock Entry` 
+				where ifnull(%s, '') != '' and docstatus<2""", (fld['fieldname'])):
+			create_custom_field(fld)
+			
+def create_custom_field(fld):
+	fld.update({
+		"doctype": "Custom Field",
+		"dt": "Stock Entry",
+		"print_hide": 1,
+		"permlevel": 0
+	})
+	
+	from webnotes.model.doclist import DocList
+	webnotes.insert(DocList([fld]))
+	
+def deprecate_process():
+	webnotes.conn.sql("""update `tabStock Entry` 
+		set `purpose`="Material Transfer"
+		where process="Material Transfer" and purpose="Production Order" """)
+	
+	webnotes.conn.sql("""update `tabStock Entry` 
+		set `purpose`="Manufacture/Repack"
+		where (process="Backflush" and purpose="Production Order") or purpose="Other" """)
+		
+	webnotes.conn.sql("""update `tabStock Entry` 
+		set `purpose`="Subcontract"
+		where process="Subcontracting" """)
\ No newline at end of file
diff --git a/patches/jan_mar_2012/__init__.py b/patches/jan_mar_2012/__init__.py
deleted file mode 100644
index baffc48..0000000
--- a/patches/jan_mar_2012/__init__.py
+++ /dev/null
@@ -1 +0,0 @@
-from __future__ import unicode_literals
diff --git a/patches/jan_mar_2012/account_type_patch.py b/patches/jan_mar_2012/account_type_patch.py
deleted file mode 100644
index c6ac05c..0000000
--- a/patches/jan_mar_2012/account_type_patch.py
+++ /dev/null
@@ -1,26 +0,0 @@
-# ERPNext - web based ERP (http://erpnext.com)
-# Copyright (C) 2012 Web Notes Technologies Pvt Ltd
-# 
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-# 
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# 
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-from __future__ import unicode_literals
-def execute():
-	import webnotes
-	webnotes.conn.sql("""update `tabAccount` 
-		set account_type = 'Chargeable' 
-		where account_name in ('CENVAT Capital Goods', 'CENVAT Service Tax', 'CENVAT Service Tax Cess 1', 'CENVAT Service Tax Cess 2', 
-			'P L A', 'P L A - Cess Portion', 'VAT', 'TDS (Advertisement)', 'TDS (Commission)', 'TDS (Contractor)', 'TDS (Interest)', 
-			'TDS (Rent)', 'TDS (Salary)')
-	""")
-
diff --git a/patches/jan_mar_2012/add_roles_to_admin.py b/patches/jan_mar_2012/add_roles_to_admin.py
deleted file mode 100644
index f2e91e9..0000000
--- a/patches/jan_mar_2012/add_roles_to_admin.py
+++ /dev/null
@@ -1,11 +0,0 @@
-from __future__ import unicode_literals
-def execute():
-	"""
-		Adds various roles to Administrator. This patch is for making master db
-		ready for on premise installation
-	"""
-	import webnotes
-	from webnotes.model.code import get_obj
-	from webnotes.model.doc import Document
-	sc = get_obj('Setup Control', 'Setup Control')
-	sc.add_roles(Document('Profile', 'Administrator'))
diff --git a/patches/jan_mar_2012/allocated_to_profile.py b/patches/jan_mar_2012/allocated_to_profile.py
deleted file mode 100644
index b38f97b..0000000
--- a/patches/jan_mar_2012/allocated_to_profile.py
+++ /dev/null
@@ -1,37 +0,0 @@
-# ERPNext - web based ERP (http://erpnext.com)
-# Copyright (C) 2012 Web Notes Technologies Pvt Ltd
-# 
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-# 
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# 
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-from __future__ import unicode_literals
-def execute():
-	"""
-		Changes allocated_to option to Profile in
-		DocType Customer Issue
-	"""
-	import webnotes
-	webnotes.conn.sql("""
-		UPDATE `tabDocField`
-		SET options='Profile'
-		WHERE fieldname='allocated_to'
-	""")
-
-	webnotes.conn.sql("""
-		DELETE from `tabDocField`
-		WHERE parent='Customer Issue'
-		AND label='Make Maintenance Visit'
-	""")
-
-	from webnotes.modules import reload_doc
-	reload_doc('support', 'doctype', 'customer_issue')
diff --git a/patches/jan_mar_2012/apps/__init__.py b/patches/jan_mar_2012/apps/__init__.py
deleted file mode 100644
index baffc48..0000000
--- a/patches/jan_mar_2012/apps/__init__.py
+++ /dev/null
@@ -1 +0,0 @@
-from __future__ import unicode_literals
diff --git a/patches/jan_mar_2012/apps/todo_item.py b/patches/jan_mar_2012/apps/todo_item.py
deleted file mode 100644
index ed0acc4..0000000
--- a/patches/jan_mar_2012/apps/todo_item.py
+++ /dev/null
@@ -1,23 +0,0 @@
-# ERPNext - web based ERP (http://erpnext.com)
-# Copyright (C) 2012 Web Notes Technologies Pvt Ltd
-# 
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-# 
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# 
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-from __future__ import unicode_literals
-def execute():
-	"""
-		* Reload ToDo
-	"""
-	from webnotes.modules import reload_doc
-	reload_doc('utilities', 'doctype', 'todo_item')
diff --git a/patches/jan_mar_2012/cancel_purchase_returned.py b/patches/jan_mar_2012/cancel_purchase_returned.py
deleted file mode 100644
index ff287c5..0000000
--- a/patches/jan_mar_2012/cancel_purchase_returned.py
+++ /dev/null
@@ -1,25 +0,0 @@
-# ERPNext - web based ERP (http://erpnext.com)
-# Copyright (C) 2012 Web Notes Technologies Pvt Ltd
-# 
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-# 
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# 
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-from __future__ import unicode_literals
-def execute():
-	"""
-		Set docstatus = 2 where status = 'Purchase Returned' for serial no
-	"""
-	import webnotes
-	webnotes.conn.sql("""\
-		UPDATE `tabSerial No` SET docstatus=2
-		WHERE status='Purchase Returned'""")
diff --git a/patches/jan_mar_2012/clear_session_cache.py b/patches/jan_mar_2012/clear_session_cache.py
deleted file mode 100644
index 0490f50..0000000
--- a/patches/jan_mar_2012/clear_session_cache.py
+++ /dev/null
@@ -1,20 +0,0 @@
-# ERPNext - web based ERP (http://erpnext.com)
-# Copyright (C) 2012 Web Notes Technologies Pvt Ltd
-# 
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-# 
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# 
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-from __future__ import unicode_literals
-def execute():
-	import webnotes
-	webnotes.clear_cache()
diff --git a/patches/jan_mar_2012/convert_tables_to_utf8.py b/patches/jan_mar_2012/convert_tables_to_utf8.py
deleted file mode 100644
index 9378aba..0000000
--- a/patches/jan_mar_2012/convert_tables_to_utf8.py
+++ /dev/null
@@ -1,28 +0,0 @@
-# ERPNext - web based ERP (http://erpnext.com)
-# Copyright (C) 2012 Web Notes Technologies Pvt Ltd
-# 
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-# 
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# 
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-from __future__ import unicode_literals
-import webnotes
-
-def execute():
-	sql = webnotes.conn.sql
-	
-	sql("commit")
-	sql("set foreign_key_checks=0")
-	for tab in sql("show tables"):
-		sql("ALTER TABLE `%s` CONVERT TO CHARACTER SET utf8" % tab[0])
-
-	sql("set foreign_key_checks=1")
diff --git a/patches/jan_mar_2012/customer_address_contact_patch.py b/patches/jan_mar_2012/customer_address_contact_patch.py
deleted file mode 100644
index 8a3e67a..0000000
--- a/patches/jan_mar_2012/customer_address_contact_patch.py
+++ /dev/null
@@ -1,75 +0,0 @@
-# ERPNext - web based ERP (http://erpnext.com)
-# Copyright (C) 2012 Web Notes Technologies Pvt Ltd
-# 
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-# 
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# 
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-from __future__ import unicode_literals
-import webnotes
-
-def execute():
-	"""
-		* Reload Search Criteria "Customer Address Contact"
-		* SET is_primary_contact=1, is_primary_address=1 WHERE not specified
-	"""
-	reload_sc()
-	patch_primary_contact()
-	patch_primary_address()
-
-def reload_sc():
-	from webnotes.modules import reload_doc
-	reload_doc('selling', 'search_criteria', 'customer_address_contact')
-	reload_doc('selling', 'Module Def', 'Selling')
-
-def patch_primary_contact():
-	res = webnotes.conn.sql("""
-		SELECT name FROM `tabContact`
-		WHERE customer IN (
-			SELECT customer FROM `tabContact`
-			WHERE IFNULL(customer, '')!=''
-			GROUP BY customer HAVING SUM(IFNULL(is_primary_contact, 0))=0
-		) OR supplier IN (
-			SELECT supplier FROM `tabContact`
-			WHERE IFNULL(supplier, '')!=''
-			GROUP BY supplier HAVING SUM(IFNULL(is_primary_contact, 0))=0
-		) OR sales_partner IN (
-			SELECT sales_partner FROM `tabContact`
-			WHERE IFNULL(sales_partner, '')!=''
-			GROUP BY sales_partner HAVING SUM(IFNULL(is_primary_contact, 0))=0
-		)
-	""", as_list=1)
-	names = ", ".join(['"' + unicode(r[0]) + '"' for r in res if r])
-	if names: webnotes.conn.sql("UPDATE `tabContact` SET is_primary_contact=1 WHERE name IN (%s)" % names)
-
-def patch_primary_address():
-	res = webnotes.conn.sql("""
-		SELECT name FROM `tabAddress`
-		WHERE customer IN (
-			SELECT customer FROM `tabAddress`
-			WHERE IFNULL(customer, '')!=''
-			GROUP BY customer HAVING SUM(IFNULL(is_primary_address, 0))=0
-			AND SUM(IFNULL(is_shipping_address, 0))=0
-		) OR supplier IN (
-			SELECT supplier FROM `tabAddress`
-			WHERE IFNULL(supplier, '')!=''
-			GROUP BY supplier HAVING SUM(IFNULL(is_primary_address, 0))=0
-			AND SUM(IFNULL(is_shipping_address, 0))=0
-		) OR sales_partner IN (
-			SELECT sales_partner FROM `tabAddress`
-			WHERE IFNULL(sales_partner, '')!=''
-			GROUP BY sales_partner HAVING SUM(IFNULL(is_primary_address, 0))=0
-			AND SUM(IFNULL(is_shipping_address, 0))=0
-		)
-	""", as_list=1)
-	names = ", ".join(['"' + unicode(r[0]) + '"' for r in res if r])
-	if names: webnotes.conn.sql("UPDATE `tabAddress` SET is_primary_address=1 WHERE name IN (%s)" % names)
diff --git a/patches/jan_mar_2012/delete_pur_of_service.py b/patches/jan_mar_2012/delete_pur_of_service.py
deleted file mode 100644
index 18ded0d..0000000
--- a/patches/jan_mar_2012/delete_pur_of_service.py
+++ /dev/null
@@ -1,21 +0,0 @@
-# ERPNext - web based ERP (http://erpnext.com)
-# Copyright (C) 2012 Web Notes Technologies Pvt Ltd
-# 
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-# 
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# 
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-from __future__ import unicode_literals
-def execute():
-	import webnotes
-	from webnotes.model import delete_doc
-	delete_doc('DocType', 'Purpose of Service')
diff --git a/patches/jan_mar_2012/deploy_packing_slip.py b/patches/jan_mar_2012/deploy_packing_slip.py
deleted file mode 100644
index a6ec881..0000000
--- a/patches/jan_mar_2012/deploy_packing_slip.py
+++ /dev/null
@@ -1,65 +0,0 @@
-# ERPNext - web based ERP (http://erpnext.com)
-# Copyright (C) 2012 Web Notes Technologies Pvt Ltd
-# 
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-# 
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# 
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-from __future__ import unicode_literals
-import webnotes
-from webnotes.modules import reload_doc
-
-def execute():
-	delete_fields_dn_detail()
-	deploy_packing_slip()
-	del_packing_slip_pf()
-
-
-def delete_fields_dn_detail():
-	"""
-		Delete old fields related to packing slip
-	"""
-	from webnotes.model import delete_fields
-	delete_fields({
-		'Delivery Note': [
-			'print_packing_slip', 'shipping_mark', 'packed_by',
-			'packing_checked_by', 'Text', 'pack_size'
-		],
-		'Delivery Note Item': [
-			'pack_no', 'pack_gross_wt', 'weight_uom', 
-			'pack_nett_wt', 'no_of_packs', 'pack_unit', 'pack_size', 
-			'packed_by', 'packing_checked_by'
-		]
-	}, delete=1)
-	delete_fields({'Item': ['nett_weight', 'gross_weight']}, delete=1)
-	reload_doc('stock', 'doctype', 'delivery_note')
-	reload_doc('stock', 'doctype', 'delivery_note_detail')
-	reload_doc('stock', 'doctype', 'item')
-
-
-def deploy_packing_slip():
-	reload_doc('stock', 'doctype', 'packing_slip')
-	reload_doc('stock', 'doctype', 'packing_slip_detail')
-	reload_doc('stock', 'Module Def', 'Stock')
-	reload_doc('stock', 'DocType Mapper', 'Delivery Note-Packing Slip')
-
-
-def del_packing_slip_pf():
-	"""
-		Delete Print Format: 'Delivery Note Packing List Wise'
-	"""
-	webnotes.conn.sql("""\
-		DELETE FROM `tabDocFormat`
-		WHERE parent='Delivery Note'
-		AND format='Delivery Note Packing List Wise'""")
-	from webnotes.model import delete_doc
-	delete_doc('Print Format', 'Delivery Note Packing List Wise')
diff --git a/patches/jan_mar_2012/doclabel_in_doclayer.py b/patches/jan_mar_2012/doclabel_in_doclayer.py
deleted file mode 100644
index 4e6260e..0000000
--- a/patches/jan_mar_2012/doclabel_in_doclayer.py
+++ /dev/null
@@ -1,29 +0,0 @@
-# ERPNext - web based ERP (http://erpnext.com)
-# Copyright (C) 2012 Web Notes Technologies Pvt Ltd
-# 
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-# 
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# 
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-from __future__ import unicode_literals
-import webnotes
-def execute():
-	"""
-		* Change option of doclayer's doc_type field
-		* Reload doclayer
-	"""
-	webnotes.conn.sql("""
-		UPDATE `tabDocField` SET options=NULL
-		WHERE parent='Customize Form' AND fieldname='doc_type'
-	""")
-	from webnotes.modules import reload_doc
-	reload_doc('core', 'doctype', 'doclayer')
diff --git a/patches/jan_mar_2012/dt_map_fix.py b/patches/jan_mar_2012/dt_map_fix.py
deleted file mode 100644
index d682102..0000000
--- a/patches/jan_mar_2012/dt_map_fix.py
+++ /dev/null
@@ -1,8 +0,0 @@
-from __future__ import unicode_literals
-def execute():
-	import webnotes
-	from webnotes.modules import reload_doc
-	webnotes.conn.sql("delete from `tabField Mapper Detail` where from_field = 'transaction_date' and parent in ('Sales Order-Delivery Note', 'Purchase Order-Purchase Receipt')")
-
-	reload_doc('stock', 'DocType Mapper', 'Sales Order-Delivery Note')
-	reload_doc('stock', 'DocType Mapper', 'Purchase Order-Purchase Receipt')
diff --git a/patches/jan_mar_2012/email_settings_reload.py b/patches/jan_mar_2012/email_settings_reload.py
deleted file mode 100644
index fe6b260..0000000
--- a/patches/jan_mar_2012/email_settings_reload.py
+++ /dev/null
@@ -1,30 +0,0 @@
-# ERPNext - web based ERP (http://erpnext.com)
-# Copyright (C) 2012 Web Notes Technologies Pvt Ltd
-# 
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-# 
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# 
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-from __future__ import unicode_literals
-def execute():
-	"""
-		* Change type of mail_port field to int
-		* reload email settings
-	"""
-	import webnotes
-	webnotes.conn.sql("""
-		UPDATE `tabDocField` SET fieldtype='Int'
-		WHERE parent = 'Email Settings' AND fieldname = 'mail_port'
-	""")
-
-	from webnotes.modules import reload_doc
-	reload_doc('setup', 'doctype', 'email_settings')
diff --git a/patches/jan_mar_2012/fix_packing_slip.py b/patches/jan_mar_2012/fix_packing_slip.py
deleted file mode 100644
index 218d89d..0000000
--- a/patches/jan_mar_2012/fix_packing_slip.py
+++ /dev/null
@@ -1,37 +0,0 @@
-# ERPNext - web based ERP (http://erpnext.com)
-# Copyright (C) 2012 Web Notes Technologies Pvt Ltd
-# 
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-# 
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# 
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-from __future__ import unicode_literals
-def execute():
-	"""
-		* Change DN to PS mapper
-			+ Set Ref doc should be submitted to 0
-			+ Set validation logic of DN PS Table mapper record to docstatus=0
-	"""
-	import webnotes
-	webnotes.conn.sql("""\
-		UPDATE `tabDocType Mapper`
-		SET ref_doc_submitted=0
-		WHERE name='Delivery Note-Packing Slip'""")
-	
-	webnotes.conn.sql("""\
-		UPDATE `tabTable Mapper Detail`
-		SET validation_logic='docstatus=0'
-		WHERE parent='Delivery Note-Packing Slip'
-		AND docstatus=0
-		AND from_table='Delivery Note'
-		AND to_table='Packing Slip'""")
-
diff --git a/patches/jan_mar_2012/jan_production_patches.py b/patches/jan_mar_2012/jan_production_patches.py
deleted file mode 100644
index 87b9205..0000000
--- a/patches/jan_mar_2012/jan_production_patches.py
+++ /dev/null
@@ -1,44 +0,0 @@
-# ERPNext - web based ERP (http://erpnext.com)
-# Copyright (C) 2012 Web Notes Technologies Pvt Ltd
-# 
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-# 
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# 
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-from __future__ import unicode_literals
-import webnotes
-def execute():
-	"""
-		Patch includes:
-		* Reload of Stock Entry Detail
-	"""
-	from webnotes.modules import reload_doc
-
-	reload_doc('stock', 'doctype', 'stock_entry_detail')
-	reload_doc('stock', 'doctype', 'item_supplier')
-	reload_doc('stock', 'doctype', 'item')
-
-	webnotes.conn.sql("""
-		UPDATE tabDocField SET fieldtype='Float'
-		WHERE parent='BOM'
-		AND fieldname IN ('operating_cost', 'raw_material_cost', 'total_cost')
-	""")
-
-	webnotes.conn.sql("""
-		UPDATE tabDocField SET fieldtype='Float'
-		WHERE parent='BOM Item'
-		AND fieldname IN ('qty', 'rate', 'amount', 'qty_consumed_per_unit')
-	""")
-	
-	reload_doc('stock', 'doctype', 'stock_entry')
-	reload_doc('production', 'doctype', 'bill_of_materials')
-	reload_doc('production', 'doctype', 'bom_material')
diff --git a/patches/jan_mar_2012/label_cleanup.py b/patches/jan_mar_2012/label_cleanup.py
deleted file mode 100644
index 4f4fc4e..0000000
--- a/patches/jan_mar_2012/label_cleanup.py
+++ /dev/null
@@ -1,38 +0,0 @@
-from __future__ import unicode_literals
-def execute():
-	import webnotes
-	from webnotes.model import delete_doc
-	from webnotes.modules import reload_doc
-
-
-	webnotes.conn.sql("""delete from `tabDocField` 
-		where label in ('Note1', 'OT Notes', 'Note', 'Note HTML', 'Rates HTML') 
-		and parent in ('Quotation', 'Sales Order', 'Delivery Note', 'Sales Invoice', 'Purchase Order')""")
-
-
-	del_flds = {
-		'Sales Order Item':	"'delivery_date', 'confirmation_date'", 
-		'Delivery Note':		"'supplier', 'supplier_address', 'purchase_receipt_no', 'purchase_order_no', 'transaction_date'",
-		'Sales Invoice':	"'voucher_date'",
-		'Purchase Invoice':		"'voucher_date'",
-		'Purchase Receipt':		"'transaction_date'"
-	} 
-
-	del_labels = {
-		'Delivery Note':		"'Supplier Details'",
-		'Purchase Receipt':		"'Get Currrent Stock'"
-	}
-
-	for d in del_flds:
-		webnotes.conn.sql("delete from `tabDocField` where fieldname in (%s) and parent = '%s'"% (del_flds[d], d))
-
-	for d in del_labels:
-		webnotes.conn.sql("delete from `tabDocField` where label in (%s) and parent = '%s'"% (del_labels[d], d))
-
-	delete_doc('DocType', 'Update Delivery Date Detail')
-
-	# Reload print formats
-	reload_doc('accounts', 'Print Format', 'Sales Invoice Classic')
-	reload_doc('accounts', 'Print Format', 'Sales Invoice Modern')
-	reload_doc('accounts', 'Print Format', 'Sales Invoice Spartan')
-
diff --git a/patches/jan_mar_2012/map_conversion_rate.py b/patches/jan_mar_2012/map_conversion_rate.py
deleted file mode 100644
index 7e5e7c5..0000000
--- a/patches/jan_mar_2012/map_conversion_rate.py
+++ /dev/null
@@ -1,68 +0,0 @@
-# ERPNext - web based ERP (http://erpnext.com)
-# Copyright (C) 2012 Web Notes Technologies Pvt Ltd
-# 
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-# 
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# 
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-from __future__ import unicode_literals
-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-Purchase Invoice',
-			'map': [{
-				'from_table': 'Purchase Order',
-				'to_table': 'Purchase Invoice',
-				'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/patches/jan_mar_2012/mapper_fix.py b/patches/jan_mar_2012/mapper_fix.py
deleted file mode 100644
index e8e68e0..0000000
--- a/patches/jan_mar_2012/mapper_fix.py
+++ /dev/null
@@ -1,4 +0,0 @@
-from __future__ import unicode_literals
-def execute():
-	import webnotes
-	webnotes.conn.sql("delete from `tabTable Mapper Detail` where to_table = 'Sales Invoice Item' and parent = 'Delivery Note-Sales Invoice' and validation_logic = 'amount > ifnull(billed_amt, 0) and docstatus = 1'")
diff --git a/patches/jan_mar_2012/navupdate.py b/patches/jan_mar_2012/navupdate.py
deleted file mode 100644
index a99f924..0000000
--- a/patches/jan_mar_2012/navupdate.py
+++ /dev/null
@@ -1,60 +0,0 @@
-# ERPNext - web based ERP (http://erpnext.com)
-# Copyright (C) 2012 Web Notes Technologies Pvt Ltd
-# 
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-# 
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# 
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-from __future__ import unicode_literals
-import webnotes
-import _mysql_exceptions
-
-def execute():
-	from webnotes.modules import reload_doc
-	reload_doc('accounts', 'page', 'accounts_home')
-	reload_doc('selling', 'page', 'selling_home')
-	reload_doc('buying', 'page', 'buying_home')
-	reload_doc('stock', 'page', 'stock_home')
-	reload_doc('hr', 'page', 'hr_home')
-	reload_doc('support', 'page', 'support_home')
-	reload_doc('production', 'page', 'production_home')
-	reload_doc('projects', 'page', 'projects_home')
-	reload_doc('website', 'page', 'website_home')
-	reload_doc('home', 'page', 'desktop')
-	reload_doc('utilities', 'page', 'todo')
-	reload_doc('utilities', 'page', 'calendar')
-	reload_doc('utilities', 'page', 'messages')
-	reload_doc('setup', 'page', 'modules_setup')
-	reload_doc('utilities', 'page', 'users')
-	reload_doc('home', 'page', 'activity')
-	reload_doc('home', 'page', 'attributions')
-	reload_doc('core', 'doctype', 'profile')
-	
-	# update user_image in profile
-	for p in webnotes.conn.sql("""select name, file_list from tabProfile 
-		where ifnull(file_list,'')!=''"""):
-		fid = p[1].split('\n')[0].split(',')[1]
-		webnotes.conn.set_value('Profile', p[0], 'user_image', fid)
-	
-	webnotes.conn.set_value('Control Panel', 'Control Panel', 'home_page',
-			'desktop')
-
-	webnotes.conn.commit()
-
-	try:
-		webnotes.conn.sql("""create table __SchedulerLog (
-			`timestamp` timestamp,
-			method varchar(200),
-			error text
-		) engine=MyISAM""")
-	except _mysql_exceptions.OperationalError, e:
-		pass
diff --git a/patches/jan_mar_2012/no_copy_patch.py b/patches/jan_mar_2012/no_copy_patch.py
deleted file mode 100644
index c7d33cb..0000000
--- a/patches/jan_mar_2012/no_copy_patch.py
+++ /dev/null
@@ -1,20 +0,0 @@
-# ERPNext - web based ERP (http://erpnext.com)
-# Copyright (C) 2012 Web Notes Technologies Pvt Ltd
-# 
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-# 
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# 
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-from __future__ import unicode_literals
-def execute():
-	import webnotes
-	webnotes.conn.sql("update `tabDocField` set no_copy = 1 where fieldname = 'insert_after' and parent = 'Custom Field'")
diff --git a/patches/jan_mar_2012/pending_patches.py b/patches/jan_mar_2012/pending_patches.py
deleted file mode 100644
index f98b13f..0000000
--- a/patches/jan_mar_2012/pending_patches.py
+++ /dev/null
@@ -1,67 +0,0 @@
-# ERPNext - web based ERP (http://erpnext.com)
-# Copyright (C) 2012 Web Notes Technologies Pvt Ltd
-# 
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-# 
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# 
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-from __future__ import unicode_literals
-def execute():
-	import webnotes
-	from webnotes.model.code import get_obj
-	from webnotes.modules import reload_doc
-	sql = webnotes.conn.sql
-
-	reload_doc('hr', 'doctype', 'appraisal')
-
-	sql("update `tabDocField` set `hidden` = 0 where fieldname = 'group_or_ledger' and parent = 'Cost Center'")
-	sql("update tabDocPerm set amend = 0 where parent = 'Salary Structure'")
-	sql("update tabDocPerm set cancel = 1 where parent = 'Company' and role = 'System Manager'")
-	
-	if sql("select count(name) from `tabDocField` where label = 'View Ledger Entry' and parent = 'Journal Voucher' and fieldtype = 'Button'")[0][0] > 1:
-		sql("delete from `tabDocField` where label = 'View Ledger Entry' and parent = 'Journal Voucher' and fieldtype = 'Button' limit 1")
-	if sql("select count(name) from `tabDocField` where label = 'Get Balance' and parent = 'Journal Voucher' and fieldtype = 'Button'")[0][0] > 1:
-		sql("delete from `tabDocField` where label = 'Get Balance' and parent = 'Journal Voucher' and fieldtype = 'Button' limit 1")
-			
-		
-	if sql("select count(name) from `tabDocField` where label = 'Get Specification Details' and parent = 'Quality Inspection' and fieldtype = 'Button'")[0][0] > 1:
-		sql("delete from `tabDocField` where label = 'Get Specification Details' and parent = 'Quality Inspection' and fieldtype = 'Button' limit 1")
-	
-	reload_doc('stock', 'DocType Mapper', 'Purchase Order-Purchase Receipt')
-		
-	reload_doc('accounts', 'doctype', 'cost_center')
-	sql("update `tabDocType` set subject = 'Item Code: %(item_code)s, Warehouse: %(warehouse)s' where name = 'Serial No'")
-
-	# Patch for adding packing related columns (packed by, checked by, shipping mark etc)
-	reload_doc('stock','doctype','delivery_note')
-	sql("update `tabDocField` set allow_on_submit = 1 where fieldname = 'page_break'")
-	sql("update `tabDocField` set allow_on_submit = 1 where fieldname in ('indent_details', 'po_details', 'purchase_receipt_details', 'entries', 'sales_order_details', 'delivery_note_details', 'quotation_details') and fieldtype = 'Table'")
-		
-	from webnotes.sessions import clear_cache
-	clear_cache(webnotes.session['user'])
-
-	# FEATURES SETUP
-	#----------------
-	reload_doc('setup', 'doctype','features_setup')
-	flds = ['page_break', 'projects', 'packing_details', 'discounts', 'brands', 'item_batch_nos', 'after_sales_installations', 'item_searial_nos', 'item_group_in_details', 'exports', 'imports', 'item_advanced', 'sales_extras', 'more_info', 'quality', 'manufacturing', 'pos', 'item_serial_nos']
-	st = "'"+"', '".join(flds)+"'"
-	sql("delete from `tabSingles` where field in (%s) and doctype = 'Features Setup'" % st)
-	sql("delete from `tabDocField` where fieldname in (%s) and parent = 'Features Setup'" % st)
-	sql("delete from `tabDefaultValue` where defkey in (%s) and parent = 'Control Panel'" % st)
-
-	if not sql("select * from `tabDefaultValue` where defkey like 'fs_%' and parent = 'Control Panel'"):
-		rs = sql("select fieldname from tabDocField where parent='Features Setup' and fieldname is not null")
-		fs = get_obj('Features Setup', 'Features Setup')
-		for d in rs:
-			fs.doc.fields[d[0]] = 1
-		fs.doc.save()
-		fs.validate()
diff --git a/patches/jan_mar_2012/pos_setting_patch.py b/patches/jan_mar_2012/pos_setting_patch.py
deleted file mode 100644
index 436f1b9..0000000
--- a/patches/jan_mar_2012/pos_setting_patch.py
+++ /dev/null
@@ -1,23 +0,0 @@
-# ERPNext - web based ERP (http://erpnext.com)
-# Copyright (C) 2012 Web Notes Technologies Pvt Ltd
-# 
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-# 
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# 
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-from __future__ import unicode_literals
-def execute():
-	import webnotes
-	webnotes.conn.sql("update `tabDocField` set `default` = 1 where fieldname = 'conversion_rate' and parent = 'POS Setting'")
-
-	from webnotes.model import delete_doc
-	delete_doc('DocType', 'POS Settings')
diff --git a/patches/jan_mar_2012/print_hide_totals.py b/patches/jan_mar_2012/print_hide_totals.py
deleted file mode 100644
index 02aef92..0000000
--- a/patches/jan_mar_2012/print_hide_totals.py
+++ /dev/null
@@ -1,37 +0,0 @@
-# ERPNext - web based ERP (http://erpnext.com)
-# Copyright (C) 2012 Web Notes Technologies Pvt Ltd
-# 
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-# 
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# 
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-from __future__ import unicode_literals
-import webnotes
-
-def execute():
-	"""
-		To Hide Net Total, Grand Total Export and Rounded Total Export on checking print hide
-		
-		Uncheck print_hide for fields:
-			net_total, grand_total_export and rounded_total_export
-		For DocType(s):
-			* Sales Invoice
-			* Sales Order
-			* Delivery Note
-			* Quotation
-	"""
-	webnotes.conn.sql("""\
-		UPDATE tabDocField
-		SET print_hide = 0
-		WHERE fieldname IN ('net_total', 'grand_total_export', 'rounded_total_export')
-		AND parent IN ('Sales Invoice', 'Sales Order', 'Delivery Note', 'Quotation')
-	""")
diff --git a/patches/jan_mar_2012/production_cleanup.py b/patches/jan_mar_2012/production_cleanup.py
deleted file mode 100644
index 4e5134a..0000000
--- a/patches/jan_mar_2012/production_cleanup.py
+++ /dev/null
@@ -1,86 +0,0 @@
-# ERPNext - web based ERP (http://erpnext.com)
-# Copyright (C) 2012 Web Notes Technologies Pvt Ltd
-# 
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-# 
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# 
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-from __future__ import unicode_literals
-def execute():
-	import webnotes
-	from webnotes.modules import reload_doc
-	from webnotes.model import delete_doc
-	sql = webnotes.conn.sql
-	
-	# Production Planning Tool
-	#---------------------------------------------------------------
-	#delete_doc('DocType', 'Production Plan Item')
-	#delete_doc('DocType', 'Production Plan Sales Order')
-	#delete_doc('DocType', 'Production Planning Tool')
-	sql("delete from `tabDocField` where parent in ('Production Planning Tool', 'Production Plan Item', 'Production Plan Sales Order')")
-	
-	reload_doc('production', 'doctype', 'production_planning_tool')
-	reload_doc('production', 'doctype', 'pp_detail')
-	reload_doc('production', 'doctype', 'pp_so_detail')
-
-	# Production Order
-	#---------------------------------------------------------------
-
-	reload_doc('production', 'doctype', 'production_order')
-
-	sql("""delete from `tabDocField` where parent = 'Production Order'
-			and (label in ('Material Transfer', 'Backflush', 'Stop Production Order', 'Unstop Production Order')
-				or fieldname = 'transaction_date')
-	""")
-
-
-	# BOM
-	#---------------------------------------------------------------
-	reload_doc('production', 'doctype', 'bill_of_materials')
-	reload_doc('production', 'doctype', 'bom_material')
-	reload_doc('production', 'doctype', 'bom_operation')
-	reload_doc('production', 'doctype', 'flat_bom_detail')
-
-	#copy values
-	sql("""update `tabBOM` set rm_cost_as_per = 'Valuation Rate', 
-		raw_material_cost = dir_mat_as_per_mar,	total_cost = cost_as_per_mar, costing_date = cost_as_on""")
-
-	sql("update `tabBOM Item` set rate = moving_avg_rate, amount = amount_as_per_mar")
-
-	sql("update `tabBOM Explosion Item` set rate = moving_avg_rate, amount = amount_as_per_mar")
-
-
-
-	# delete depricated flds from bom
-	sql("""	delete from `tabDocField` where parent = 'BOM' 
-		and (
-			label in ('TreeView1', 'Set as Default BOM', 'Activate BOM', 'Inactivate BOM') 
-			or fieldname in ('cost_as_per_mar', 'cost_as_per_lpr', 'cost_as_per_sr', 'cost_as_on',
-				'dir_mat_as_per_mar', 'dir_mat_as_per_lpr', 'dir_mat_as_per_sr')
-		)	
-	""")
-
-	# delete depricated flds from bom operation
-	sql("delete from `tabDocField` where parent = 'BOM Operation' and fieldname in ('details', 'workstation_capacity')")
-
-	# delete depricated flds from bom material
-	sql("""delete from `tabDocField` where parent = 'BOM Item' 
-		and fieldname in ('dir_mat_as_per_mar', 'dir_mat_as_per_sr', 'dir_mat_as_per_lpr', 'operating_cost', 'value_as_per_mar', 
-			'value_as_per_sr', 'value_as_per_lpr', 'moving_avg_rate', 'standard_rate', 'last_purchase_rate', 'amount_as_per_sr', 
-			'amount_as_per_lpr', 'amount_as_per_mar')	
-	""")
-
-	# delete depricated flds from flat bom
-	sql("""delete from tabDocField where parent = 'BOM Explosion Item' 
-		and fieldname in ('moving_avg_rate', 'standard_rate', 'last_purchase_rate', 'amount_as_per_mar', 
-			'amount_as_per_sr', 'amount_as_per_lpr', 'flat_bom_no', 'bom_mat_no', 'is_pro_applicable')
-	""")
diff --git a/patches/jan_mar_2012/reload_doctype.py b/patches/jan_mar_2012/reload_doctype.py
deleted file mode 100644
index f05ee76..0000000
--- a/patches/jan_mar_2012/reload_doctype.py
+++ /dev/null
@@ -1,21 +0,0 @@
-# ERPNext - web based ERP (http://erpnext.com)
-# Copyright (C) 2012 Web Notes Technologies Pvt Ltd
-# 
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-# 
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# 
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-from __future__ import unicode_literals
-def execute():
-	import webnotes
-	from webnotes.modules import reload_doc
-	reload_doc('core', 'doctype', 'doctype')
diff --git a/patches/jan_mar_2012/reload_item.py b/patches/jan_mar_2012/reload_item.py
deleted file mode 100644
index 47800a2..0000000
--- a/patches/jan_mar_2012/reload_item.py
+++ /dev/null
@@ -1,23 +0,0 @@
-# ERPNext - web based ERP (http://erpnext.com)
-# Copyright (C) 2012 Web Notes Technologies Pvt Ltd
-# 
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-# 
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# 
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-from __future__ import unicode_literals
-def execute():
-	import webnotes
-	from webnotes.modules import reload_doc
-	reload_doc('stock', 'doctype', 'item')
-
-	webnotes.conn.sql("update `tabItem` set re_order_qty = min_order_qty")
diff --git a/patches/jan_mar_2012/reload_mapper.py b/patches/jan_mar_2012/reload_mapper.py
deleted file mode 100644
index 146747c..0000000
--- a/patches/jan_mar_2012/reload_mapper.py
+++ /dev/null
@@ -1,10 +0,0 @@
-from __future__ import unicode_literals
-def execute():
-	import webnotes
-	from webnotes.modules import reload_doc
-
-	reload_doc('stock', 'DocType Mapper', 'Sales Order-Delivery Note')
-	reload_doc('accounts', 'DocType Mapper', 'Sales Order-Sales Invoice')
-	reload_doc('accounts', 'DocType Mapper', 'Delivery Note-Sales Invoice')
-
-	webnotes.conn.sql("delete from `tabField Mapper Detail` where parent = 'Sales Order-Delivery Note' and from_field = 'basic_rate' and to_field = 'basic_rate'")
diff --git a/patches/jan_mar_2012/reload_po_pr_mapper.py b/patches/jan_mar_2012/reload_po_pr_mapper.py
deleted file mode 100644
index 6bed3b1..0000000
--- a/patches/jan_mar_2012/reload_po_pr_mapper.py
+++ /dev/null
@@ -1,21 +0,0 @@
-# ERPNext - web based ERP (http://erpnext.com)
-# Copyright (C) 2012 Web Notes Technologies Pvt Ltd
-# 
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-# 
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# 
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-from __future__ import unicode_literals
-def execute():
-	import webnotes
-	from webnotes.modules import reload_doc
-	reload_doc('stock', 'DocType Mapper', 'Purchase Order-Purchase Receipt')
diff --git a/patches/jan_mar_2012/reload_quote.py b/patches/jan_mar_2012/reload_quote.py
deleted file mode 100644
index 4d23f23..0000000
--- a/patches/jan_mar_2012/reload_quote.py
+++ /dev/null
@@ -1,5 +0,0 @@
-from __future__ import unicode_literals
-def execute():
-	import webnotes
-	from webnotes.modules import reload_doc
-	reload_doc('selling', 'doctype', 'quotation')
diff --git a/patches/jan_mar_2012/reload_table.py b/patches/jan_mar_2012/reload_table.py
deleted file mode 100644
index 1bd4873..0000000
--- a/patches/jan_mar_2012/reload_table.py
+++ /dev/null
@@ -1,4 +0,0 @@
-from __future__ import unicode_literals
-def execute():
-	pass
-
diff --git a/patches/jan_mar_2012/remove_archive.py b/patches/jan_mar_2012/remove_archive.py
deleted file mode 100644
index 43bb111..0000000
--- a/patches/jan_mar_2012/remove_archive.py
+++ /dev/null
@@ -1,41 +0,0 @@
-# ERPNext - web based ERP (http://erpnext.com)
-# Copyright (C) 2012 Web Notes Technologies Pvt Ltd
-# 
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-# 
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# 
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-# TODO take backup before running this patch
-from __future__ import unicode_literals
-def execute():
-	"""
-		* Restore archived data from arc tables
-		* Drop arc tables
-	"""
-	import webnotes
-	from webnotes.utils import archive
-	arc_tables = webnotes.conn.sql('show tables like "arc%"')
-	try:
-		webnotes.conn.auto_commit_on_many_writes = 1
-		for tab in arc_tables:
-			tab = tab[0]
-			dt = tab[3:]
-			res = webnotes.conn.sql("SELECT name FROM `%s`" % tab)
-			for dn in res:
-				archive.archive_doc(dt, dn[0], restore=1)
-	except Exception, e:
-		raise e
-	else:
-		webnotes.conn.commit()
-		for tab in arc_tables:
-			webnotes.conn.sql("DROP TABLE `%s`" % tab[0])
-		webnotes.conn.begin()
diff --git a/patches/jan_mar_2012/remove_get_tds_button.py b/patches/jan_mar_2012/remove_get_tds_button.py
deleted file mode 100644
index 9d254c3..0000000
--- a/patches/jan_mar_2012/remove_get_tds_button.py
+++ /dev/null
@@ -1,31 +0,0 @@
-# ERPNext - web based ERP (http://erpnext.com)
-# Copyright (C) 2012 Web Notes Technologies Pvt Ltd
-# 
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-# 
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# 
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-from __future__ import unicode_literals
-def execute():
-	"""
-		Remove One Get TDS button, which is appearing twice in JV
-	"""
-	import webnotes
-	webnotes.conn.sql("""
-		DELETE from `tabDocField`
-		WHERE parent='Journal Voucher'
-		AND label='Get TDS'
-		AND fieldtype='Button'
-	""")
-
-	from webnotes.modules import reload_doc
-	reload_doc('accounts', 'doctype', 'journal_voucher')
diff --git a/patches/jan_mar_2012/remove_series_defval.py b/patches/jan_mar_2012/remove_series_defval.py
deleted file mode 100644
index 84117cf..0000000
--- a/patches/jan_mar_2012/remove_series_defval.py
+++ /dev/null
@@ -1,4 +0,0 @@
-from __future__ import unicode_literals
-def execute():
-	import webnotes
-	webnotes.conn.sql("update `tabDocField` set `default`='' where parent = 'Sales Invoice' and fieldname = 'naming_series' and `default` = 'INV'")
diff --git a/patches/jan_mar_2012/rename_dt.py b/patches/jan_mar_2012/rename_dt.py
deleted file mode 100644
index c163b49..0000000
--- a/patches/jan_mar_2012/rename_dt.py
+++ /dev/null
@@ -1,436 +0,0 @@
-from __future__ import unicode_literals
-import webnotes
-import conf
-import webnotes.model
-from wnf import replace_code
-from termcolor import colored
-from webnotes.modules import reload_doc
-from webnotes.utils import make_esc
-import os
-
-def execute1():
-	#rendt = get_dt_to_be_renamed()
-	#rename_dt_files(rendt)
-	#update_local_file_system()
-	replace_labels_with_fieldnames()
-
-def execute():
-
-	#---------------------------------------------------
-	# doctype renaming
-	rendt = get_dt_to_be_renamed()
-	# Rename dt	in db
-	rename_in_db(rendt, 'DocType', 1)
-	# Upadte dt in records
-	update_dt_in_records(rendt)
-
-	#---------------------------------------------------
-	# Dt Mapper renaming
-	ren_mapper = get_mapper_to_be_renamed()
-	# Rename mapper in db
-	rename_in_db(ren_mapper, 'DocType Mapper', 0)
-
-	#---------------------------------------------------
-	# GL Mapper renaming
-	gl_mapper = {'Receivable Voucher': 'Sales Invoice', 'Payable Voucher': 'Purchase Invoice'}
-	rename_in_db(gl_mapper, 'GL Mapper', 0)
-
-
-	#---------------------------------------------------
-	# remove dt label
-	webnotes.conn.sql("""delete from `tabDocType Label` where name in ('Ticket', 'Receivable Voucher', 
-		'QA Inspection Report', 'Payable Voucher', 'Manage Account', 'Indent', 'DocLayer')""")
-
-	#---------------------------------------------------
-	# Reload mapper from file
-	for d in ren_mapper:
-		mod = '_'.join(webnotes.conn.sql("select module from `tabDocType Mapper` where name = %s", 
-			ren_mapper[d])[0][0].lower().split())
-		reload_doc(mod, 'DocType Mapper', ren_mapper[d])
-
-	delete_search_criteria()
-	change_report_module()
-
-	# reload custom search criteria
-	#for d in  webnotes.conn.sql("""select name, module from
-	#		`tabSearch Criteria` where ifnull(standard, 'No') = 'Yes' and ifnull(disabled, 0) = 0"""):
-	#
-	for path, folders, files in os.walk(conf.modules_path):
-		if not path.endswith('search_criteria'): continue
-		module = path.split(os.sep)[-2]
-		for sc in folders:
-			try:
-				reload_doc(module, 'search_criteria', sc)
-				print module, sc
-			except Exception, e:
-				print "did not reload: " + str(d)
-	
-	webnotes.conn.sql("""DELETE FROM `tabPrint Format`
-			WHERE name IN ('Delivery Note Format', 'Purchase Order Format',
-			'Quotation Format', 'Receivable Voucher Format', 'Sales Order',
-			'SalesInvoiceModern_test', 'SalesInvoiceStdNew',
-			'Service Order Format', 'Service Quotation Format')""")
-
-	# reload custom print format
-	for d in webnotes.conn.sql("""select name, module from `tabPrint Format`
-			where ifnull(standard, 'No') = 'Yes'"""):
-		try:
-			reload_doc(d[1], 'Print Format', d[0])
-		except Exception, e:
-			print "did not reload: " + str(d)
-
-	#  Reload GL Mapper
-	for d in webnotes.conn.sql("select name from `tabGL Mapper`"):
-		reload_doc('accounts', 'GL Mapper', d[0])
-	reload_doc('accounts', 'GL Mapper', 'Purchase Invoice with write off')
-
-	webnotes.conn.sql("update `tabDocType` set module = 'Utilities' where module = 'Knowledge Base'")
-	webnotes.conn.sql("update `tabPage` set module = 'Utilities' where module = 'Knowledge Base'")
-
-		
-
-def delete_search_criteria():
-	webnotes.conn.sql("""DELETE FROM `tabSearch Criteria`
-			WHERE name IN ('', 'bills-to_be_paid',
-			'bills-to_be_submitted', 'cenvat_credit_-_input_or_capital_goods',
-			'appraisal_custom', 'custom_test', 'custom_test1', 'delivery_note-to_be_billed',
-			'delivery_note-to_be_submitted', 'delivery_notes',
-			'employee_leave_balance_report', 'flat_bom_report',
-			'general_ledger1', 'lead_interested',
-			'payables_-_as_on_outstanding', 'periodical_budget_report',
-			'projectwise_delivered_qty_and_costs_as_per_purchase_cost',
-			'projectwise_pending_qty_and_costs_as_per_purchase_cost', 'sales',
-			'sales_order1', 'sales_order_pending_items',
-			'territory_wise_sales_-_target_vs_actual_', 'test_report',
-			'lease_agreement_list', 'lease_monthly_future_installment_inflows',
-			'lease_over_due_list', 'lease_overdue_age_wise',
-			'lease_receipt_summary_month_wise', 'lease_receipts_client_wise',
-			'lease_yearly_future_installment_inflows',
-			'monthly_ledger_summary_report', 'payables_-_as_on_outstanding',
-			'payment_report', 'progressive_total_excise_duty',
-			'service_tax_credit_account_-_inputs',
-			'total_amout_collection_for_a_period_-_customerwise',
-			'invoices-to_be_submitted', 'invoices-to_receive_payment',
-			'opportunity-quotations_to_be_sent', 'purchase_order-to_be_billed',
-			'purchase_order-to_be_submitted',
-			'purchase_order-to_receive_items',
-			'purchase_request-purchase_order_to_be_made',
-			'purchase_request-to_be_submitted',
-			'sales-order_to_be_submitted', 'sales_order-overdue',
-			'sales_order-to_be_billed', 'sales_order-to_be_delivered',
-			'sales_order-to_be_submitted', 'task-open', 'appraisal_custom',
-			'employee_details', 'employee_in_company_experience',
-			'employee_leave_balance_report', 'employeewise_leave_transaction_details',
-			'pending_appraisals', 'pending_expense_claims', 'delivery_plan', 'flat_bom_report',
-			'dispatch_report', 'projectwise_delivered_qty_and_costs_as_per_purchase_cost', 
-			'projectwise_pending_qty_and_costs_as_per_purchase_cost', 'custom_test', 'custom_test1',
-			'delivery_notes', 'delivery_note_disabled', 'lead', 'lead_interested', 'lead_report',
-			'periodic_sales_summary', 'monthly_despatched_trend', 'sales', 'sales_order',
-			'sales_order1', 'sales_agentwise_commission', 'test_report', 
-			'territory_wise_sales_-_target_vs_actual_', 
-			'pending_po_items_to_bill1', 'pending_po_items_to_receive1', 
-			'expense_vouchers', 'pending_expense_vouchers', 'shortage_to_indent')""")
-
-	webnotes.conn.sql("""
-		DELETE FROM `tabSearch Criteria`
-		WHERE name IN ('monthly_transaction_summary', 'trend_analyzer',
-		'yearly_transaction_summary', 'invoices-overdue', 'lead-to_follow_up',
-		'opportunity-to_follow_up', 'serial_no-amc_expiring_this_month',
-		'serial_no-warranty_expiring_this_month')
-		AND IFNULL(standard, 'No') = 'Yes'
-		""")
-
-def change_report_module():
-	reports = {'itemwise_receipt_details': 'Stock'}
-	for k in reports:
-		webnotes.conn.sql("update `tabSearch Criteria` set module = %s where name = %s", (reports[k], k))
-
-def rename_in_db(ren_data, data_type, is_doctype):
-	for d in ren_data:
-		print colored('Renaming... ' + d + ' --> '+ ren_data[d], 'yellow')
-		#rename
-		try:
-			webnotes.model.rename(data_type, d, ren_data[d], is_doctype)
-		except Exception, e:
-			if e.args[0]!=1050:
-				raise e
-			else:
-				print e
-				pass
-
-
-def update_dt_in_records(rendt):
-	for d in rendt:
-		# Feed, property setter, search criteria, gl mapper, form 16A, naming series options, doclayer - dodtype is not mentioed in options
-		dt_list = webnotes.conn.sql("""select t1.parent, t1.fieldname from
-			tabDocField t1, tabDocType t2 where t1.parent = t2.name and
-			t1.fieldname in ('dt', 'doctype', 'doc_type', 'dt_type') and
-			ifnull(t1.options, '') = '' and ifnull(t2.issingle, 0) = 0 and
-			t1.parent in ('Custom Field', 'Custom Script', 'Property Setter')""")
-		for dt in dt_list:
-			webnotes.conn.sql("update `tab%s` set %s = replace(%s, '%s', '%s') where %s = '%s'" % (dt[0], dt[1], dt[1], d, rendt[d], dt[1], d))
-
-		# gl mapper, gl entry
-		webnotes.conn.sql("update `tabGL Mapper Detail` set against_voucher_type = replace(against_voucher_type, '%s', '%s') where against_voucher_type like '%%%s%%'" % (d, rendt[d], d))
-		webnotes.conn.sql("update `tabGL Entry` set against_voucher_type = replace(against_voucher_type, '%s', '%s') where against_voucher_type = '%s'" % (d, rendt[d], d))
-		webnotes.conn.sql("update `tabGL Entry` set voucher_type = replace(voucher_type, '%s', '%s') where voucher_type = '%s'" % (d, rendt[d], d))
-
-		# Stock ledger entry
-		webnotes.conn.sql("update `tabStock Ledger Entry` set voucher_type = replace(voucher_type, '%s', '%s') where voucher_type = '%s'" % (d, rendt[d], d))
-
-		# Custom fld: options
-		webnotes.conn.sql("update `tabCustom Field` set options = replace(options, %s, %s) where fieldtype in ('Link', 'Select', 'Table')", (d, rendt[d]))
-		
-		#Property Setter: value (if property=options)
-		webnotes.conn.sql("update `tabProperty Setter` set value = replace(value, %s, %s) where property = 'Options'", (d, rendt[d]))
-
-		# custom script: script
-		webnotes.conn.sql("update `tabCustom Script` set script = replace(script, %s, %s)", (d, rendt[d]))
-
-		# print format: html
-		webnotes.conn.sql("update `tabPrint Format` set html = replace(html, %s, %s) where ifnull(standard, 'Yes') = 'No'", (d, rendt[d]))
-
-		# custom report: doc_type, filters, columns, parent_doc_type, add_cond, add_col, add_tab,
-		#					dis_filters, group_by, sort_by, report_script, server_script, custom_query
-		webnotes.conn.sql("""
-			update
-				`tabSearch Criteria` 
-			set 
-				doc_type		= replace(doc_type, %s, %s), 
-				filters			= replace(filters, %s, %s), 
-				columns			= replace(columns, %s, %s), 
-				parent_doc_type = replace(parent_doc_type, %s, %s), 
-				add_cond		= replace(add_cond, %s, %s), 
-				add_col			= replace(add_col, %s, %s), 
-				add_tab			= replace(add_tab, %s, %s), 
-				dis_filters		= replace(dis_filters, %s, %s), 
-				group_by		= replace(group_by, %s, %s), 
-				sort_by			= replace(sort_by, %s, %s), 
-				report_script	= replace(report_script, %s, %s), 
-				server_script	= replace(server_script, %s, %s), 
-				custom_query	= replace(custom_query, %s, %s)
-			where 
-				ifnull(standard, 'Yes') = 'No'
-		""", (d, rendt[d], d, rendt[d], d, rendt[d], d, rendt[d], d, rendt[d], d, rendt[d], d, rendt[d], 
-				d, rendt[d], d, rendt[d], d, rendt[d], d, rendt[d], d, rendt[d], d, rendt[d], ))
-
-
-
-
-def get_dt_to_be_renamed():
-	rendt = {
-		'Receivable Voucher'		:	'Sales Invoice',
-		'RV Detail'					:	'Sales Invoice Item',
-		'RV Tax Detail'				:	'Sales Taxes and Charges',
-		'Payable Voucher'			:	'Purchase Invoice',
-		'PV Detail'					:	'Purchase Invoice Item',
-		'Purchase Tax Detail'		:	'Purchase Taxes and Charges',
-		'Indent'					:	'Purchase Request',
-		'Indent Detail'				:	'Purchase Request Item',
-		'QA Inspection Report'		:	'Quality Inspection',
-		'Ticket'					:	'Task',
-		'Manage Account'			:	'Global Defaults',
-		'ToDo Item'					:	'ToDo',
-		'Term'						:	'Terms and Conditions',
-		'Static Parameter Detail'	:	'SMS Parameter',
-		'SS Earning Detail'			:	'Salary Slip Earning',
-		'SS Deduction Detail'		:	'Salary Slip Deduction',
-		'Sales Order Detail'		:	'Sales Order Item',
-		'Sales BOM Detail'			:	'Sales BOM Item',
-		'Return Detail'				:	'Sales and Purchase Return Item',
-		'Ref Rate Detail'			:	'Item Price',
-		'Receiver Detail'			:	'SMS Receiver',
-		'Quotation Detail'			:	'Quotation Item',
-		'QA Specification Detail'	:	'Quality Inspection Reading',
-		'Purchase Receipt Detail'	:	'Purchase Receipt Item',
-		'Purchase Other Charges'	:	'Purchase Taxes and Charges Master',
-		'PR Raw Material Detail'	:	'Purchase Receipt Item Supplied',
-		'PP SO Detail'				:	'Production Plan Sales Order',
-		'PP Detail'					:	'Production Plan Item',
-		'PO Raw Material Detail'	:	'Purchase Order Item Supplied',
-		'PO Detail'					:	'Purchase Order Item', 
-		'Packing Slip Detail'		:	'Packing Slip Item',
-		'Other Charges'				:	'Sales Taxes and Charges Master',
-		'Order Lost Reason'			:	'Quotation Lost Reason',
-		'Manage Account'			:	'Global Defaults',
-		'Maintenance Visit Detail'	:	'Maintenance Visit Purpose',
-		'Ledger Balance Export'		:	'Multi Ledger Report',
-		'LC PR Detail'				:	'Landed Cost Purchase Receipt',
-		'Landed Cost Detail'		:	'Landed Cost Item',
-		'KRA Template'				:	'Appraisal Template',
-		'KRA Sheet'					:	'Appraisal Template Goal',
-		'Item Specification Detail' :	'Item Quality Inspection Parameter',
-		'Item Maintenance Detail'	:	'Maintenance Schedule Item',
-		'IR Payment Detail'			:	'Payment to Invoice Matching Tool Detail',
-		'Internal Reconciliation'	:	'Payment to Invoice Matching Tool',
-		'Installed Item Details'	:	'Installation Note Item',
-		'Holiday List Detail'		:	'Holiday',
-		'Follow up'					:	'Communication Log',
-		'Flat BOM Detail'			:	'BOM Explosion Item',
-		'Expense Voucher Detail'	:	'Expense Claim Detail',
-		'Expense Voucher'			:	'Expense Claim',
-		'Expense Type'				:	'Expense Claim Type',
-		'Enquiry Detail'			:	'Opportunity Item',
-		'Enquiry'					:	'Opportunity',
-		'Earning Detail'			:	'Salary Structure Earning',
-		'DocLayerField'				:	'Customize Form Field',
-		'DocLayer'					:	'Customize Form',
-		'Delivery Note Detail'		:	'Delivery Note Item',
-		'Deduction Detail'			:	'Salary Structure Deduction',
-		'Comment Widget Record'		:	'Comment',
-		'BOM Material'				:	'BOM Item',
-		'Bill Of Materials'			:	'BOM',
-		'Appraisal Detail'			:	'Appraisal Goal',
-		'Advance Allocation Detail' :	'Purchase Invoice Advance',
-		'Advance Adjustment Detail' :	'Sales Invoice Advance',
-		'Ledger Detail'				:	'Multi Ledger Report Detail',
-		'TA Control'				:	'Trend Analyzer Control',
-		'Sales and Purchase Return Wizard'	: 'Sales and Purchase Return Tool',
-		'Educational Qualifications Detail' : 'Employee Education',
-		'Delivery Note Packing Detail'		: 'Delivery Note Packing Item',
-		'Experience In Company Detail'		: 'Employee Internal Work History',
-		'Professional Training Details'		: 'Employee Training',
-		'Previous Experience Detail'		: 'Employee External Work History',
-	}
-	return rendt
-
-
-def get_mapper_to_be_renamed():
-	ren_map = {
-		'Sales Order-Receivable Voucher'	:	'Sales Order-Sales Invoice',
-		'Sales Order-Indent'				: 	'Sales Order-Purchase Request',
-		'Receivable Voucher-Delivery Note' 	: 	'Sales Invoice-Delivery Note',
-		'Purchase Receipt-Payable Voucher'	: 	'Purchase Receipt-Purchase Invoice',
-		'Purchase Order-Payable Voucher'	: 	'Purchase Order-Purchase Invoice',
-		'Project-Receivable Voucher' 		: 	'Project-Sales Invoice',
-		'Lead-Enquiry'						: 	'Lead-Opportunity',
-		'KRA Template-Appraisal'			: 	'Appraisal Template-Appraisal',
-		'Indent-Purchase Order'				: 	'Purchase Request-Purchase Order',
-		'Enquiry-Quotation'					: 	'Opportunity-Quotation',
-		'Delivery Note-Receivable Voucher'	: 	'Delivery Note-Sales Invoice'
-	}
-	return ren_map
-
-
-
-
-#--------------------------------------------------------------------------------------------------------
-
-
-def update_local_file_system():
-	""" RUN ONLY IN LOCAL"""
-	
-	# doctype renaming
-	rendt = get_dt_to_be_renamed()
-
-	# replace dt in js/py file
-	update_file_content(rendt)
-	# git mv
-	rename_dt_files(rendt)
-
-
-	# Mapper renaming
-	ren_mapper = get_mapper_to_be_renamed()
-
-	rename_mapper_files(ren_mapper)
-
-	os.system('git mv erpnext/accounts/GL\ Mapper/Payable\ Voucher erpnext/accounts/GL\ Mapper/Purchase\ Invoice')
-	os.system('git mv erpnext/accounts/GL\ Mapper/Purchase\ Invoice/Payable\ Voucher.txt erpnext/accounts/GL\ Mapper/Purchase\ Invoice/Purchase\ Invoice.txt')
-	os.system('git mv erpnext/accounts/GL\ Mapper/Receivable\ Voucher erpnext/accounts/GL\ Mapper/Sales\ Invoice')
-	os.system('git mv erpnext/accounts/GL\ Mapper/Sales\ Invoice/Receivable\ Voucher.txt erpnext/accounts/GL\ Mapper/Sales\ Invoice/Sales\ Invoice.txt')
-	
-	# git rm production dt mapper
-	os.system('git rm -r erpnext/production/DocType\ Mapper/')
-
-
-
-def update_file_content(rendt):
-	for d in rendt:
-		print colored('Renaming... ' + d + ' --> '+ rendt[d], 'yellow')
-		for extn in ['js', 'py', 'txt', 'html']:
-			res = replace_code('/var/www/erpnext/', d, rendt[d], extn)
-			if res == 'skip':
-				break
-		
-		
-def rename_dt_files(rendt):
-	for d in rendt:
-		mod = webnotes.conn.sql("select module from tabDocType where name = %s", rendt[d])[0][0]
-		if mod == 'Core':
-			os.chdir('/var/www/erpnext/lib/')
-			path = 'py/core/doctype/'
-		else:
-			os.chdir('/var/www/erpnext/')
-			path = 'erpnext/' + '_'.join(mod.lower().split()) + '/doctype/'
-		old = '_'.join(d.lower().split())
-		new = '_'.join(rendt[d].lower().split())
-
-		print 'git mv ' + path + old + ' ' + path + new
-		# rename old dir
-		os.system('git mv ' + path + old + ' ' + path + new)
-
-		# rename all files in that dir
-		for extn in ['js', 'py', 'txt', 'html']:
-			if os.path.exists(path + new + '/'+ old + '.' +extn):
-				os.system('git mv ' + path + new + '/'+ old + '.' +extn + ' ' + path + new + '/' + new + '.' +extn)
-				print 'git mv ' + path + new + '/'+ old + '.' +extn + ' ' + path + new + '/' + new + '.' +extn
-
-
-def rename_mapper_files(ren_mapper):
-	for d in ren_mapper:
-		# module
-		mod = '_'.join(webnotes.conn.sql("select module from `tabDocType Mapper` where name = %s", ren_mapper[d])[0][0].lower().split())
-		path = 'erpnext/' + mod + '/DocType Mapper/'
-
-		# rename old dir
-		esc = make_esc('$ ')
-		os.system('git mv ' + esc(path + d) + ' ' + esc(path + ren_mapper[d]))
-		print 'git mv ' + esc(path + d) + ' ' + esc(path + ren_mapper[d])
-		os.system('git mv ' + esc(path + ren_mapper[d] + '/'+ d + '.txt')
-				+ ' ' + esc(path + ren_mapper[d] + '/' + ren_mapper[d] + '.txt'))
-		print 'git mv ' + esc(path + ren_mapper[d] + '/'+ d + '.txt') + ' ' + esc(path + ren_mapper[d] + '/' + ren_mapper[d] + '.txt')
-		
-
-def replace_labels_with_fieldnames():
-	"""
-		This is used for replacing instances like cur_frm.cscript['LABEL'] with
-		cur_frm.cscript.FIELDNAME in js files
-	"""
-	doctype = {}
-	doctype.update(prepare_dict_of_label_fieldname('/var/www/erpnext/erpnext/'))
-	doctype.update(prepare_dict_of_label_fieldname('/var/www/erpnext/lib/py'))
-	#print doctype
-	
-	for doc in doctype:
-		label_fieldname = doctype[doc]
-		for d in label_fieldname:
-			#label = "cur_frm.cscript['%s']" % d
-			#fieldname = "cur_frm.cscript.%s" % label_fieldname[d]
-			label = d
-			fieldname = label_fieldname[d]
-			print colored('Changing... ' + doc + ': ' + label + ' --> '+ fieldname, 'yellow')
-			#res = replace_code('/var/www/erpnext/', label, fieldname, 'js')
-			res = replace_code('/var/www/erpnext/', label, fieldname, 'js',
-					'hide_field\(.*%s' % label)
-			if res == 'skip':
-				break
-
-def prepare_dict_of_label_fieldname(module_path):
-	from webnotes.model.utils import peval_doclist
-	from webnotes.model.sync import get_file_path
-	doctype = {}
-	for path, folders, files in os.walk(module_path):
-		if path == module_path:
-			modules_list = folders
-		for f in files:
-			if f.endswith(".txt"):
-				rel_path = os.path.relpath(path, conf.modules_path)
-				path_tuple = rel_path.split(os.sep)
-				if (len(path_tuple)==3 and path_tuple[0] in modules_list and
-						path_tuple[1] == 'doctype'):
-					file_name = f[:-4]
-					with open(get_file_path(path_tuple[0], file_name), 'r') as fn:
-						doclist = peval_doclist(fn.read())
-						doctype[file_name] = dict(([d.get('label'),d.get('fieldname')] \
-								for d in doclist if d.get('doctype')=='DocField'))
-	return doctype
diff --git a/patches/jan_mar_2012/serial_no_add_opt.py b/patches/jan_mar_2012/serial_no_add_opt.py
deleted file mode 100644
index 7693fae..0000000
--- a/patches/jan_mar_2012/serial_no_add_opt.py
+++ /dev/null
@@ -1,35 +0,0 @@
-# ERPNext - web based ERP (http://erpnext.com)
-# Copyright (C) 2012 Web Notes Technologies Pvt Ltd
-# 
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-# 
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# 
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-from __future__ import unicode_literals
-def execute():
-	import webnotes
-	opts = webnotes.conn.sql("""\
-		SELECT options FROM `tabDocField`
-		WHERE parent='Serial No' AND fieldname='status' AND
-		fieldtype='Select'""")
-	if opts and opts[0][0]:
-		opt_list = opts[0][0].split("\n")
-		if not "Purchase Returned" in opt_list:
-			webnotes.conn.sql("""
-				UPDATE `tabDocField` SET options=%s
-				WHERE parent='Serial No' AND fieldname='status' AND
-				fieldtype='Select'""", "\n".join(opt_list + ["Purchase Returned"]))
-			webnotes.conn.commit()
-			webnotes.conn.begin()
-
-	from webnotes.modules import reload_doc
-	reload_doc('stock', 'doctype', 'serial_no')
diff --git a/patches/jan_mar_2012/stable_branch_shift_09_01_12.py b/patches/jan_mar_2012/stable_branch_shift_09_01_12.py
deleted file mode 100644
index 177eb81..0000000
--- a/patches/jan_mar_2012/stable_branch_shift_09_01_12.py
+++ /dev/null
@@ -1,55 +0,0 @@
-# ERPNext - web based ERP (http://erpnext.com)
-# Copyright (C) 2012 Web Notes Technologies Pvt Ltd
-# 
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-# 
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# 
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-from __future__ import unicode_literals
-import webnotes
-from webnotes.modules import reload_doc
-	
-def execute():
-	"""
-		* Reload Sales Taxes and Charges
-		* Reload Support Ticket
-		* Run Install Print Format Patch
-		* Reload Customize Form
-	"""
-	reload_doc('accounts', 'doctype', 'rv_tax_detail')
-	reload_doc('support', 'doctype', 'support_ticket')
-	reload_print_formats()
-	reload_doc('core', 'doctype', 'doclayer')
-
-def reload_print_formats():
-	"""
-		Reloads the following print formats:
-		* Sales Invoice Classic/Modern/Spartan
-		* Sales Order Classic/Modern/Spartan
-		* Delivery Note Classic/Modern/Spartan
-		* Quotation Classic/Modern/Spartan
-	"""
-	reload_doc('accounts', 'Print Format', 'Sales Invoice Classic')
-	reload_doc('accounts', 'Print Format', 'Sales Invoice Modern')
-	reload_doc('accounts', 'Print Format', 'Sales Invoice Spartan')
-
-	reload_doc('selling', 'Print Format', 'Sales Order Classic')
-	reload_doc('selling', 'Print Format', 'Sales Order Modern')
-	reload_doc('selling', 'Print Format', 'Sales Order Spartan')
-
-	reload_doc('selling', 'Print Format', 'Quotation Classic')
-	reload_doc('selling', 'Print Format', 'Quotation Modern')
-	reload_doc('selling', 'Print Format', 'Quotation Spartan')
-
-	reload_doc('stock', 'Print Format', 'Delivery Note Classic')
-	reload_doc('stock', 'Print Format', 'Delivery Note Modern')
-	reload_doc('stock', 'Print Format', 'Delivery Note Spartan')
diff --git a/patches/jan_mar_2012/stock_entry_others_patch.py b/patches/jan_mar_2012/stock_entry_others_patch.py
deleted file mode 100644
index 03cc105..0000000
--- a/patches/jan_mar_2012/stock_entry_others_patch.py
+++ /dev/null
@@ -1,7 +0,0 @@
-from __future__ import unicode_literals
-def execute():
-	import webnotes
-	from webnotes.modules import reload_doc
-	reload_doc('stock', 'doctype', 'stock_entry')
-
-	webnotes.conn.sql("update `tabDocField` set options = concat(options, '\nOthers') where fieldname = 'purpose' and parent = 'Stock Entry'")
diff --git a/patches/jan_mar_2012/subcon_default_val.py b/patches/jan_mar_2012/subcon_default_val.py
deleted file mode 100644
index 2d0891d..0000000
--- a/patches/jan_mar_2012/subcon_default_val.py
+++ /dev/null
@@ -1,24 +0,0 @@
-# ERPNext - web based ERP (http://erpnext.com)
-# Copyright (C) 2012 Web Notes Technologies Pvt Ltd
-# 
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-# 
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# 
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-from __future__ import unicode_literals
-def execute():
-	import webnotes
-	webnotes.conn.sql("""
-		update `tabDocField` set `default` = 'No' 
-		where parent in ('Purchase Order', 'Purchase Receipt') 
-		and fieldname = 'is_subcontracted'
-	""")
diff --git a/patches/jan_mar_2012/sync_ref_db.py b/patches/jan_mar_2012/sync_ref_db.py
deleted file mode 100644
index 5af1e54..0000000
--- a/patches/jan_mar_2012/sync_ref_db.py
+++ /dev/null
@@ -1,54 +0,0 @@
-from __future__ import unicode_literals
-import webnotes
-sql = webnotes.conn.sql
-from webnotes.model import delete_doc
-
-def execute():
-	del_rec = {
-		'DocType'	:	['Update Series', 'File', 'File Browser Control', 'File Group',
-			'Tag Detail', 'DocType Property Setter', 'Company Group', 'Widget Control', 
-			'Update Delivery Date Detail', 'Update Delivery	Date',
-			'Tag Detail', 'Supplier rating', 'Stylesheet', 'Question Tag',
-			'PRO PP Detail', 'PRO Detail', 'PPW Detail', 'PF Detail',
-			'Personalize', 'Patch Util', 'Page Template', 'Module Def Role',
-			'Module Def Item', 'File Group', 'File Browser Control', 'File',
-			'Educational Qualifications', 'Earn Deduction Detail',
-			'DocType Property Setter', 'Contact Detail', 'BOM Report Detail', 
-			'BOM Replace Utility Detail', 'BOM Replace Utility', 
-			'Absent Days Detail', 'Activity Dashboard Control', 'Raw Materials Supplied',
-			'Setup Wizard Control', 'Company Group', 'Lease Agreement', 'Lease Installment',
-			'Terms and Conditions', 'Time Sheet', 'Time Sheet Detail', 'Naming Series Options',
-			'Invest 80 Declaration Detail', 'IT Checklist', 'Chapter VI A Detail', 'Declaration Detail',
-			'Personalize', 'Salary Slip Control Panel', 'Question Control'
-			],
-		'Page'		:	['File Browser', 'Bill of Materials', 'question-view'],
-		'DocType Mapper': ['Production Forecast-Production Planning Tool', 'Production Forecast-Production Plan', 'Sales Order-Production Plan'],
-	}
-
-	for d in del_rec:
-		for r in del_rec[d]:
-			print 'Deleted', d, ' - ', r
-			if d=='DocType':
-				sql("delete from tabFeed where doc_type=%s", r)
-			delete_doc(d, r)
-
-	sql("delete from tabDocField where label='Repair Purchase Request' and parent = 'Purchase Request'")
-
-	drop_tables()
-
-
-def drop_tables():
-	webnotes.conn.commit()
-	from webnotes.model.db_schema import remove_all_foreign_keys
-	remove_all_foreign_keys()
-	count = 0
-	tab_list = sql("SHOW TABLES")
-	for tab in tab_list:
-		if tab[0].startswith('_') or tab[0] in ('tabSingles', 'tabSessions', 'tabSeries'): continue
-		res = sql("SELECT COUNT(*) FROM `tabDocType` WHERE name = %s", tab[0][3:])
-		if not res[0][0]:
-			count += 1
-			print tab[0]
-			sql("DROP TABLE `%s`" % tab[0])
-	print count
-	webnotes.conn.begin()
diff --git a/patches/jan_mar_2012/update_purpose_se.py b/patches/jan_mar_2012/update_purpose_se.py
deleted file mode 100644
index 721ec46..0000000
--- a/patches/jan_mar_2012/update_purpose_se.py
+++ /dev/null
@@ -1,4 +0,0 @@
-from __future__ import unicode_literals
-def execute():
-	import webnotes
-	webnotes.conn.sql("update `tabDocField` set options = replace(options, 'Others', 'Other') where fieldname = 'purpose' and parent = 'Stock Entry'")
diff --git a/patches/jan_mar_2012/update_se_fld_options.py b/patches/jan_mar_2012/update_se_fld_options.py
deleted file mode 100644
index 61512d3..0000000
--- a/patches/jan_mar_2012/update_se_fld_options.py
+++ /dev/null
@@ -1,7 +0,0 @@
-from __future__ import unicode_literals
-def execute():
-	import webnotes
-	webnotes.conn.sql("update `tabDocField` set options = 'BOM' where fieldname = 'bom_no' and parent = 'Stock Entry'")
-
-	from webnotes.modules import reload_doc
-	reload_doc('stock', 'doctype', 'stock_entry')
diff --git a/patches/jan_mar_2012/update_stockreco_perm.py b/patches/jan_mar_2012/update_stockreco_perm.py
deleted file mode 100644
index b5d270f..0000000
--- a/patches/jan_mar_2012/update_stockreco_perm.py
+++ /dev/null
@@ -1,4 +0,0 @@
-from __future__ import unicode_literals
-def execute():
-	import webnotes
-	webnotes.conn.sql("update `tabDocPerm` set cancel = 1 where parent = 'Stock Reconciliation' and ifnull(submit, 0) = 1")
diff --git a/patches/jan_mar_2012/website/__init__.py b/patches/jan_mar_2012/website/__init__.py
deleted file mode 100644
index eb05a23..0000000
--- a/patches/jan_mar_2012/website/__init__.py
+++ /dev/null
@@ -1,3 +0,0 @@
-
-from __future__ import unicode_literals
-	
\ No newline at end of file
diff --git a/patches/jan_mar_2012/website/all.py b/patches/jan_mar_2012/website/all.py
deleted file mode 100644
index fbb2e9d..0000000
--- a/patches/jan_mar_2012/website/all.py
+++ /dev/null
@@ -1,36 +0,0 @@
-# ERPNext - web based ERP (http://erpnext.com)
-# Copyright (C) 2012 Web Notes Technologies Pvt Ltd
-# 
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-# 
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# 
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-from __future__ import unicode_literals
-import patches.jan_mar_2012.website.login
-import patches.jan_mar_2012.website.feed
-import patches.jan_mar_2012.website.website
-import patches.jan_mar_2012.website.cleanups
-import patches.jan_mar_2012.website.domain_list
-import patches.jan_mar_2012.website.file_data_rename
-import patches.jan_mar_2012.website.analytics
-import patches.jan_mar_2012.website.allow_product_delete
-
-
-def execute():
-	patches.jan_mar_2012.website.login.execute()
-	patches.jan_mar_2012.website.feed.execute()
-	patches.jan_mar_2012.website.website.execute()
-	patches.jan_mar_2012.website.cleanups.execute()
-	patches.jan_mar_2012.website.domain_list.execute()
-	patches.jan_mar_2012.website.file_data_rename.execute()
-	patches.jan_mar_2012.website.analytics.execute()
-	patches.jan_mar_2012.website.allow_product_delete.execute()
diff --git a/patches/jan_mar_2012/website/allow_product_delete.py b/patches/jan_mar_2012/website/allow_product_delete.py
deleted file mode 100644
index 21dd451..0000000
--- a/patches/jan_mar_2012/website/allow_product_delete.py
+++ /dev/null
@@ -1,25 +0,0 @@
-# ERPNext - web based ERP (http://erpnext.com)
-# Copyright (C) 2012 Web Notes Technologies Pvt Ltd
-# 
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-# 
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# 
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-from __future__ import unicode_literals
-def execute():
-	"""
-		Allow deletion of products
-	"""
-	import webnotes
-	webnotes.conn.sql("""UPDATE `tabDocPerm` SET cancel=1
-		WHERE parent='Product' AND role='Website Manager'
-		AND permlevel=0""")
diff --git a/patches/jan_mar_2012/website/analytics.py b/patches/jan_mar_2012/website/analytics.py
deleted file mode 100644
index b86c8ce..0000000
--- a/patches/jan_mar_2012/website/analytics.py
+++ /dev/null
@@ -1,22 +0,0 @@
-# ERPNext - web based ERP (http://erpnext.com)
-# Copyright (C) 2012 Web Notes Technologies Pvt Ltd
-# 
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-# 
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# 
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-from __future__ import unicode_literals
-def execute():	
-	from webnotes.modules import reload_doc
-	reload_doc('website', 'doctype', 'website_settings')
-	reload_doc('website', 'doctype', 'product_settings')
-	
\ No newline at end of file
diff --git a/patches/jan_mar_2012/website/cleanups.py b/patches/jan_mar_2012/website/cleanups.py
deleted file mode 100644
index 25cc63a..0000000
--- a/patches/jan_mar_2012/website/cleanups.py
+++ /dev/null
@@ -1,48 +0,0 @@
-# ERPNext - web based ERP (http://erpnext.com)
-# Copyright (C) 2012 Web Notes Technologies Pvt Ltd
-# 
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-# 
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# 
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-from __future__ import unicode_literals
-import webnotes
-
-def execute():
-	from webnotes.model import delete_doc
-	from webnotes.modules import reload_doc
-	delete_doc("DocType", "SSO Control")
-	delete_doc("DocType", "WN ERP Client Control")
-	delete_doc("DocType", "Production Tips Common")
-	delete_doc("DocType", "DocTrigger")
-	delete_doc("Page", "Setup Wizard")
-	
-	# cleanup control panel
-	delete_doc("DocType", "Control Panel")
-	reload_doc("core", "doctype", "control_panel")
-	
-	webnotes.conn.sql("""delete from tabSingles
-		where field like 'startup_%' and doctype='Control Panel'""")
-	webnotes.conn.sql("""delete from __SessionCache""")
-
-	webnotes.conn.commit()
-
-	# DDLs
-	# -------------------
-	
-	webnotes.conn.sql("drop table if exists tabDocTrigger")	
-
-	try: webnotes.conn.sql("""alter table `tabFile Data` drop column blob_content""")
-	except: pass
-		
-	webnotes.conn.sql("""alter table __PatchLog engine=InnoDB""")
-	
diff --git a/patches/jan_mar_2012/website/domain_list.py b/patches/jan_mar_2012/website/domain_list.py
deleted file mode 100644
index bbac836..0000000
--- a/patches/jan_mar_2012/website/domain_list.py
+++ /dev/null
@@ -1,39 +0,0 @@
-# ERPNext - web based ERP (http://erpnext.com)
-# Copyright (C) 2012 Web Notes Technologies Pvt Ltd
-# 
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-# 
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# 
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-from __future__ import unicode_literals
-def execute():
-	import webnotes
-	from webnotes.modules import reload_doc
-	reload_doc('website', 'doctype', 'website_settings')
-
-	res = webnotes.conn.sql("""\
-		SELECT name FROM `tabDocPerm`
-		WHERE parent='Website Settings' AND role='All' AND permlevel=1""")
-	if not res:
-		idx = webnotes.conn.sql("""\
-			SELECT MAX(idx) FROM `tabDocPerm`
-			WHERE parent='Website Settings'
-			""")[0][0]
-		from webnotes.model.doc import Document
-		d = Document('DocType', 'Website Settings')
-		perm = d.addchild('permissions', 'DocPerm')
-		perm.read = 1
-		perm.role = 'All'
-		perm.permlevel = 1
-		perm.idx = idx + 1
-		perm.save()
-
diff --git a/patches/jan_mar_2012/website/feed.py b/patches/jan_mar_2012/website/feed.py
deleted file mode 100644
index eae8871..0000000
--- a/patches/jan_mar_2012/website/feed.py
+++ /dev/null
@@ -1,22 +0,0 @@
-# ERPNext - web based ERP (http://erpnext.com)
-# Copyright (C) 2012 Web Notes Technologies Pvt Ltd
-# 
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-# 
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# 
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-from __future__ import unicode_literals
-import webnotes
-from webnotes.modules import reload_doc
-
-def execute():
-	reload_doc('home', 'doctype', 'feed')
\ No newline at end of file
diff --git a/patches/jan_mar_2012/website/file_data_rename.py b/patches/jan_mar_2012/website/file_data_rename.py
deleted file mode 100644
index 1871a78..0000000
--- a/patches/jan_mar_2012/website/file_data_rename.py
+++ /dev/null
@@ -1,81 +0,0 @@
-# ERPNext - web based ERP (http://erpnext.com)
-# Copyright (C) 2012 Web Notes Technologies Pvt Ltd
-# 
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-# 
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# 
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-from __future__ import unicode_literals
-import webnotes
-
-def execute():
-	"""
-		* Replace / in names with - in tabFile Data
-		* Change autoname in DocType File Data to FileData-.#####
-		* Change FileData/ to FileData- in tabSeries
-		* In each table containing file_list column, replace / with - in the data of that column
-	"""
-	replace_name_in_file_data()
-	change_autoname_in_tabfile_data()
-	change_file_data_in_tabseries()
-	replace_file_list_column_entries()
-
-def replace_name_in_file_data():
-	"""
-		Change / to - in tabFile Data name column entries
-	"""
-	files = webnotes.conn.sql("SELECT name FROM `tabFile Data`")
-	for f in files:
-		if "/" in f[0]:
-			webnotes.conn.sql("UPDATE `tabFile Data` SET name=%s WHERE name=%s", (f[0].replace('/', '-'), f[0]))
-
-
-def change_autoname_in_tabfile_data():
-	"""
-		Change autoname in DocType File Data to FileData-.#####
-	"""
-	webnotes.conn.sql("UPDATE `tabDocType` SET autoname='FileData-.#####' WHERE name='File Data'")
-
-
-def change_file_data_in_tabseries():
-	"""
-		Change FileData/ to FileData- in tabSeries
-	"""
-	webnotes.conn.sql("UPDATE `tabSeries` SET name='FileData-' WHERE name='FileData/'")
-
-
-def replace_file_list_column_entries():
-	"""
-		In each table containing file_list column, replace / with - in the data of that column
-	"""
-	tables = webnotes.conn.sql("SHOW TABLES")
-	tab_list = []
-	for tab in tables:
-		columns = webnotes.conn.sql("DESC `%s`" % tab[0])
-		if 'file_list' in [c[0] for c in columns]:
-			tab_list.append(tab[0])
-
-	for tab in tab_list:
-		data = webnotes.conn.sql("SELECT name, file_list FROM `%s`" % tab)
-		for name, file_list in data:
-			if file_list and "/" in file_list:
-				webnotes.conn.sql("UPDATE `%s` SET file_list='%s' WHERE name='%s'" \
-					% (tab, file_list.replace('/', '-'), name))
-
-	singles = webnotes.conn.sql("""SELECT doctype, value FROM `tabSingles`
-		WHERE field='file_list'""")
-	for doctype, file_list in singles:
-		if file_list and "/" in file_list:
-			webnotes.conn.sql("""UPDATE `tabSingles` SET value='%s'
-				WHERE doctype='%s' AND field='file_list'"""
-				% (file_list.replace('/', '-'), doctype))
-
diff --git a/patches/jan_mar_2012/website/getfile_rename.py b/patches/jan_mar_2012/website/getfile_rename.py
deleted file mode 100644
index 58f70c5..0000000
--- a/patches/jan_mar_2012/website/getfile_rename.py
+++ /dev/null
@@ -1,67 +0,0 @@
-# ERPNext - web based ERP (http://erpnext.com)
-# Copyright (C) 2012 Web Notes Technologies Pvt Ltd
-# 
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-# 
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# 
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-from __future__ import unicode_literals
-import webnotes
-
-def execute():
-	"""rename from getfle"""
-	l = [
-		('Quotation Item', 'description'),
-		('Sales Order Item', 'description'),
-		('Delivery Note Item', 'description'),
-		('Sales Invoice Item', 'description'),
-		('Item', 'description_html'),
-		('Letter Head', 'content')
-	]
-	
-	import re
-	
-	for table in l:
-		for item in webnotes.conn.sql("""select name, %s from `tab%s` 
-			where %s like '%s'""" % (table[1], table[0], table[1], '%cgi-bin/getfile.cgi%')):
-			txt = re.sub('\&acx=[^"\']*', '', item[1])\
-				.replace('cgi-bin/getfile.cgi?name=', 'files/')\
-				.replace('FileData/', 'FileData-')
-			
-			txt = get_file_id(txt)
-			
-			webnotes.conn.sql("""update `tab%s` set %s=%s where name=%s""" % \
-				(table[0], table[1], '%s', '%s'), (txt, item[0]))
-	
-	# control panel, client name
-	txt = webnotes.conn.get_value('Control Panel',None,'client_name')
-	if txt:
-		txt = get_file_id(txt)
-		webnotes.conn.set_value('Control Panel', None, 'client_name', txt.replace('index.cgi?cmd=get_file&fname=', 'files/'))
-	
-def get_file_id(txt):
-	"""old file links may be from fileid or filename"""
-	import re
-	match = re.search('files/([^"\']*)', txt)
-
-	if not match:
-		print txt
-		return txt
-
-	fname = match.groups()[0]
-	if not fname.startswith('FileData'):
-		fid = webnotes.conn.sql("""select name from `tabFile Data` 
-			where file_name=%s""", fname)
-		if fid:
-			fid = fid[0][0].replace('/', '-')	
-			txt = txt.replace(fname, fid)
-	return txt
diff --git a/patches/jan_mar_2012/website/login.py b/patches/jan_mar_2012/website/login.py
deleted file mode 100644
index dfd8517..0000000
--- a/patches/jan_mar_2012/website/login.py
+++ /dev/null
@@ -1,36 +0,0 @@
-# ERPNext - web based ERP (http://erpnext.com)
-# Copyright (C) 2012 Web Notes Technologies Pvt Ltd
-# 
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-# 
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# 
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-from __future__ import unicode_literals
-import webnotes
-from webnotes.model.doc import Document
-from webnotes.modules import reload_doc
-
-def execute():
-	add_default_home_page()
-	reload_doc('setup','doctype','manage_account')
-
-	
-def add_default_home_page():
-	if not webnotes.conn.sql("""select name from `tabDefault Home Page`
-		where role='Guest' and home_page='Login Page'"""):
-		d = Document('Default Home Page')
-		d.parent = 'Control Panel'
-		d.parenttype = 'Control Panel'
-		d.parentfield = 'default_home_pages'
-		d.role = 'Guest'
-		d.home_page = 'Login Page'
-		d.save(1)
diff --git a/patches/jan_mar_2012/website/website.py b/patches/jan_mar_2012/website/website.py
deleted file mode 100644
index 8c154ca..0000000
--- a/patches/jan_mar_2012/website/website.py
+++ /dev/null
@@ -1,89 +0,0 @@
-# ERPNext - web based ERP (http://erpnext.com)
-# Copyright (C) 2012 Web Notes Technologies Pvt Ltd
-# 
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-# 
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# 
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-# website patch
-
-from __future__ import unicode_literals
-import webnotes
-from webnotes.model.doc import Document
-
-def execute():	
-	add_website_manager()
-	from webnotes.modules import reload_doc
-	from webnotes.model import delete_doc
-
-	# cleanup page
-	delete_doc("DocType", "Page")
-	reload_doc("core", "doctype", "page")
-
-	reload_doc('setup', 'doctype', 'item_group')
-	delete_doc('Website', 'Module Def', 'Website')
-	reload_doc('website', 'Module Def', 'Website')
-	reload_doc('website', 'Role', 'Website Manager')
-	reload_doc('website', 'Role', 'Blogger')
-
-	webnotes.conn.sql("""delete from `tabModule Def Role` where parent='Website'""")
-	d = Document('Module Def Role')
-	d.parent = 'Website'
-	d.role = 'Website Manager'
-	d.save()
-	
-	reload_doc('website', 'doctype', 'about_us_settings')
-	reload_doc('website', 'doctype', 'about_us_team')
-	reload_doc('website', 'doctype', 'blog')
-	reload_doc('website', 'doctype', 'contact_us_settings')
-	reload_doc('website', 'doctype', 'product')
-	reload_doc('website', 'doctype', 'product_group')
-	reload_doc('website', 'doctype', 'products_settings')
-	reload_doc('website', 'doctype', 'related_page')
-	reload_doc('website', 'doctype', 'style_settings')
-	reload_doc('website', 'doctype', 'top_bar_item')
-	reload_doc('website', 'doctype', 'web_page')
-	reload_doc('website', 'doctype', 'website_settings')
-
-	reload_doc('website', 'page', 'about')
-	reload_doc('website', 'page', 'blog')
-	reload_doc('website', 'page', 'contact')
-	reload_doc('website', 'page', 'products')
-	reload_doc('website', 'page', 'unsubscribe')
-		
-	create_home_page()
-	add_website_manager()
-
-def create_home_page():
-	"""create a dummy home page"""
-	from webnotes.model.code import get_obj
-	if not webnotes.conn.sql("""select name from `tabWeb Page` where name='home'"""):
-		d = Document('Web Page')
-		d.title = 'Home'
-		d.head_section = "<h1>Your Headline</h1>"
-		d.main_section = "<p>Some introduction about your company</p>"
-		d.side_section = "<p>Links to other pages</p>"
-		d.save()
-		obj = get_obj(doc = d)
-		obj.validate()
-		obj.doc.save()
-
-def add_website_manager():
-	"""add website manager to system manager"""
-	for i in webnotes.conn.sql("""select distinct parent from tabUserRole 
-		where role='System Manager'"""):
-		if not webnotes.conn.sql("""select parent from tabUserRole 
-			where role='Website Manager' and parent=%s""", i[0]):
-			d = Document('UserRole')
-			d.parent = i[0]
-			d.role = 'Website Manager'
-			d.save(1)
diff --git a/patches/november_2012/cancelled_bom_patch.py b/patches/november_2012/cancelled_bom_patch.py
index 3420a08..761227d 100644
--- a/patches/november_2012/cancelled_bom_patch.py
+++ b/patches/november_2012/cancelled_bom_patch.py
@@ -5,7 +5,7 @@
 		where docstatus = 2""")
 	
 	for bom in cancelled_boms:
-		webnotes.conn.sql("""update `tabBOM` set is_default=0, is_active='No'
+		webnotes.conn.sql("""update `tabBOM` set is_default=0, is_active=0
 			where name=%s""", (bom[0],))
 		
 		webnotes.conn.sql("""update `tabItem` set default_bom=null
diff --git a/patches/patch_list.py b/patches/patch_list.py
index 090bbc9..b97e47b 100644
--- a/patches/patch_list.py
+++ b/patches/patch_list.py
@@ -17,213 +17,6 @@
 from __future__ import unicode_literals
 patch_list = [
 	{
-		'patch_module': 'patches.jan_mar_2012',
-		'patch_file': 'stable_branch_shift_09_01_12',
-		'description': 'Various Reloads for shifting branch from master to stable'
-	},
-	{
-		'patch_module': 'patches.jan_mar_2012',
-		'patch_file': 'print_hide_totals',
-		'description': 'Uncheck print_hide for RV, SO, DN and Quotation'
-	},
-	{
-		'patch_module': 'patches.jan_mar_2012',
-		'patch_file': 'rename_doctype_indent',
-		'description': 'Add DocType Label: Purchase Request to Purchase Requisition'
-	},
-	{
-		'patch_module': 'patches.jan_mar_2012',
-		'patch_file': 'production_cleanup',
-		'description': 'Major changes in production module, almost rewrited the entire code'
-	},
-	{
-		'patch_module': 'patches.jan_mar_2012',
-		'patch_file': 'jan_production_patches',
-		'description': 'Fixes after Major changes in production module'
-	},
-	{
-		'patch_module': 'patches.jan_mar_2012',
-		'patch_file': 'allocated_to_profile',
-		'description': """Change Options to "Profile" for fieldname "allocated_to"
-			as this is giving improper values in Permission Engine"""
-	},
-	{
-		'patch_module': 'patches.jan_mar_2012',
-		'patch_file': 'remove_get_tds_button',
-		'description': "Remove One Get TDS button, which is appearing twice in JV"
-	},
-	{
-		'patch_module': 'patches.jan_mar_2012',
-		'patch_file': 'customer_address_contact_patch',
-		'description': "Install Customer Address Contact report and run patches regarding primary address and contact"
-	},
-	{
-		'patch_module': 'patches.jan_mar_2012',
-		'patch_file': 'doclabel_in_doclayer',
-		'description': "Show DocType Labels instead of DocType names in Customize Form View"
-	},
-	{
-		'patch_module': 'patches.jan_mar_2012',
-		'patch_file': 'email_settings_reload',
-		'description': "Change type of mail_port field to Int and reload email_settings doctype"
-	},
-	{
-		'patch_module': 'patches.jan_mar_2012',
-		'patch_file': 'serial_no_add_opt',
-		'description': "Add option 'Purchase Returned' to Serial No status field"
-	},
-	{
-		'patch_module': 'patches.jan_mar_2012',
-		'patch_file': 'cancel_purchase_returned',
-		'description': "Set docstatus = 2 where status = 'Purchase Returned' for serial no"
-	},
-	{
-		'patch_module': 'patches.jan_mar_2012',
-		'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"
-	},
-	{
-		'patch_module': 'patches.jan_mar_2012',
-		'patch_file': 'account_type_patch',
-		'description': 'mentioed account type for some tax accounts'
-	},
-	{
-		'patch_module': 'patches.jan_mar_2012',
-		'patch_file': 'subcon_default_val',
-		'description': 'Default value of is_subcontracted in PO, PR is No'
-	},
-	{
-		'patch_module': 'patches.jan_mar_2012.website',
-		'patch_file': 'all',
-		'description': 'Run all website related patches'
-	},
-	{
-		'patch_module': 'patches.jan_mar_2012',
-		'patch_file': 'remove_archive',
-		'description': 'unarchive all records and drop archive tables'
-	},
-	{
-		'patch_module': 'patches.jan_mar_2012',
-		'patch_file': 'no_copy_patch',
-		'description': 'insert after fld in custom fld should be no_copy'
-	},
-	{
-		'patch_module': 'patches.jan_mar_2012',
-		'patch_file': 'reload_item',
-		'description': 'reload item'
-	},
-	{
-		'patch_module': 'patches.jan_mar_2012',
-		'patch_file': 'fix_packing_slip',
-		'description': 'Update Mapper Delivery Note-Packing Slip'
-	},
-	{
-		'patch_module': 'patches.jan_mar_2012.apps',
-		'patch_file': 'todo_item',
-		'description': 'Reloads todo item'
-	},
-	{
-		'patch_module': 'patches.jan_mar_2012',
-		'patch_file': 'convert_tables_to_utf8',
-		'description': 'Convert tables to UTF-8'
-	},
-	{
-		'patch_module': 'patches.jan_mar_2012',
-		'patch_file': 'pending_patches',
-	},
-	{
-		'patch_module': 'patches.jan_mar_2012',
-		'patch_file': 'pos_setting_patch',
-	},
-	{
-		'patch_module': 'patches.jan_mar_2012',
-		'patch_file': 'reload_doctype',
-	},
-	{
-		'patch_module': 'patches.jan_mar_2012',
-		'patch_file': 'reload_po_pr_mapper',
-	},
-	{
-		'patch_module': 'patches.jan_mar_2012',
-		'patch_file': 'delete_pur_of_service',
-		'description': 'Deletes purpose of service'
-	},
-	{
-		'patch_module': 'patches.jan_mar_2012',
-		'patch_file': 'navupdate',
-		'description': 'New Navigation Pages'
-	},
-	{
-		'patch_module': 'patches.jan_mar_2012',
-		'patch_file': 'label_cleanup',
-		'description': 'Remove extra fields and new dynamic labels'
-	},
-	{
-		'patch_module': 'patches.jan_mar_2012',
-		'patch_file': 'add_roles_to_admin',
-		'description': 'Add Roles to Administrator'
-	},
-	{
-		'patch_module': 'patches.jan_mar_2012',
-		'patch_file': 'dt_map_fix',
-		'description': 'removed transaction date from dt_mapper'
-	},
-	{
-		'patch_module': 'patches.jan_mar_2012',
-		'patch_file': 'reload_table',
-		'description': 'Relaod all item table: fld order changes' 
-	},
-	{
-		'patch_module': 'patches.jan_mar_2012',
-		'patch_file': 'remove_series_defval',
-		'description': 'Remove rv series default value' 
-	},
-	{
-		'patch_module': 'patches.jan_mar_2012',
-		'patch_file': 'update_stockreco_perm',
-		'description': 'Update stock reco permission' 
-	},
-	{
-		'patch_module': 'patches.jan_mar_2012',
-		'patch_file': 'stock_entry_others_patch',
-		'description': 'new purpose others in stock entry' 
-	},
-	{
-		'patch_module': 'patches.jan_mar_2012',
-		'patch_file': 'reload_quote',
-		'description': 'reload quote: organization fld added' 
-	},
-	{
-		'patch_module': 'patches.jan_mar_2012',
-		'patch_file': 'update_purpose_se',
-		'description': 'Purpose SE: Others to Other' 
-	},
-	{
-		'patch_module': 'patches.jan_mar_2012',
-		'patch_file': 'update_se_fld_options',
-		'description': 'Purpose SE: Others to Other' 
-	},
-	{
-		'patch_module': 'patches.mar_2012',
-		'patch_file': 'pos_invoice_fix',
-		'description': 'Reload POS Invoice' 
-	},
-	{
-		'patch_module': 'patches.jan_mar_2012',
-		'patch_file': 'reload_mapper',
-		'description': 'SO-DN, SO-Rv, DN-RV'
-	},
-	{
-		'patch_module': 'patches.jan_mar_2012',
-		'patch_file': 'mapper_fix',
-		'description': 'DN-RV duplicate table entry'
-	},
-	{
 		'patch_module': 'patches.mar_2012',
 		'patch_file': 'so_rv_mapper_fix',
 		'description': 'SO-RV duplicate mapper entry removal'
@@ -731,6 +524,10 @@
 	},
 	{
 		'patch_module': 'patches.december_2012',
+		'patch_file': 'production_cleanup',
+	},
+	{
+		'patch_module': 'patches.december_2012',
 		'patch_file': 'fix_default_print_format',
 	},
 	{
@@ -749,4 +546,8 @@
 		'patch_module': 'patches.december_2012',
 		'patch_file': 'remove_quotation_next_contact',
 	},
+	{
+		'patch_module': 'patches.december_2012',
+		'patch_file': 'stock_entry_cleanup',
+	},
 ]
\ No newline at end of file
diff --git a/production/__init__.py b/production/__init__.py
deleted file mode 100644
index 9ca5e3b..0000000
--- a/production/__init__.py
+++ /dev/null
@@ -1,5 +0,0 @@
-from __future__ import unicode_literals
-install_docs = [
-	{"doctype":"Role", "role_name":"Production Manager", "name":"Production Manager"},
-	{"doctype":"Role", "role_name":"Production User", "name":"Production User"},
-]
diff --git a/production/doctype/bom/bom.js b/production/doctype/bom/bom.js
deleted file mode 100644
index 9dffd6c..0000000
--- a/production/doctype/bom/bom.js
+++ /dev/null
@@ -1,167 +0,0 @@
-// ERPNext - web based ERP (http://erpnext.com)
-// Copyright (C) 2012 Web Notes Technologies Pvt Ltd
-// 
-// This program is free software: you can redistribute it and/or modify
-// it under the terms of the GNU General Public License as published by
-// the Free Software Foundation, either version 3 of the License, or
-// (at your option) any later version.
-// 
-// This program is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.	See the
-// GNU General Public License for more details.
-// 
-// You should have received a copy of the GNU General Public License
-// along with this program.	If not, see <http://www.gnu.org/licenses/>.
-
-// On REFRESH
-cur_frm.cscript.refresh = function(doc,dt,dn){
-	cur_frm.toggle_enable("item", doc.__islocal);
-}
-
-
-// Triggers
-//--------------------------------------------------------------------------------------------------
-cur_frm.cscript.item = function(doc, dt, dn) {
-	if (doc.item) {
-		get_server_fields('get_item_detail',doc.item,'',doc,dt,dn,1);
-	}
-}
-
-
-cur_frm.cscript.workstation = function(doc,dt,dn) {
-	var d = locals[dt][dn];
-	if (d.workstation) {
-		var callback = function(r, rt) {
-			calculate_op_cost(doc, dt, dn);
-			calculate_total(doc);
-		}
-		get_server_fields('get_workstation_details',d.workstation,'bom_operations',doc,dt,dn,1, callback);
-	}
-}
-
-
-cur_frm.cscript.hour_rate = function(doc, dt, dn) {
-	calculate_op_cost(doc, dt, dn);
-	calculate_total(doc);
-}
-
-
-cur_frm.cscript.time_in_mins = cur_frm.cscript.hour_rate;
-
-
-cur_frm.cscript.item_code = function(doc, cdt, cdn) {
-	get_bom_material_detail(doc, cdt, cdn);
-}
-
-
-cur_frm.cscript.bom_no	= function(doc, cdt, cdn) {
-	get_bom_material_detail(doc, cdt, cdn);
-}
-
-var get_bom_material_detail= function(doc, cdt, cdn) {
-	var d = locals[cdt][cdn];
-	if (d.item_code) {
-		wn.call({
-			doc: cur_frm.doc,
-			method: "get_bom_material_detail",
-			args: {
-				'item_code': d.item_code, 
-				'bom_no': d.bom_no != null ? d.bom_no: '',
-				'qty': d.qty
-			},
-			callback: function(r) {
-				d = locals[cdt][cdn];
-				$.extend(d, r.message);
-				refresh_field("bom_materials");
-				doc = locals[doc.doctype][doc.name];
-				calculate_rm_cost(doc, cdt, cdn);
-				calculate_total(doc);
-			},
-			freeze: true
-		});
-	}
-}
-
-
-cur_frm.cscript.qty = function(doc, cdt, cdn) {
-	calculate_rm_cost(doc, cdt, cdn);
-	calculate_total(doc);
-}
-
-
-cur_frm.cscript.rate = cur_frm.cscript.qty;
-
-
-cur_frm.cscript.is_default = function(doc, cdt, cdn) {
-	if (doc.docstatus == 1)
-		$c_obj(make_doclist(cdt, cdn), 'manage_default_bom', '', '');
-}
-
-
-cur_frm.cscript.is_active = function(doc, dt, dn) {
-	if (!doc.__islocal)
-		$c_obj(make_doclist(dt, dn), 'manage_active_bom', '', '');
-}
-
-
-// Calculate Operating Cost
-var calculate_op_cost = function(doc, dt, dn) {	
-	var op = getchildren('BOM Operation', doc.name, 'bom_operations');
-	total_op_cost = 0;
-	for(var i=0;i<op.length;i++) {
-		op_cost =	flt(op[i].hour_rate) * flt(op[i].time_in_mins) / 60;
-		set_multiple('BOM Operation',op[i].name, {'operating_cost': op_cost}, 'bom_operations');
-		total_op_cost += op_cost;
-	}
-	doc.operating_cost = total_op_cost;
-	refresh_field('operating_cost');
-}
-
-
-// Calculate Raw Material Cost
-var calculate_rm_cost = function(doc, dt, dn) {	
-	var rm = getchildren('BOM Item', doc.name, 'bom_materials');
-	total_rm_cost = 0;
-	for(var i=0;i<rm.length;i++) {
-		amt =	flt(rm[i].rate) * flt(rm[i].qty);
-		set_multiple('BOM Item',rm[i].name, {'amount': amt}, 'bom_materials');
-		set_multiple('BOM Item',rm[i].name, {'qty_consumed_per_unit': flt(rm[i].qty)/flt(doc.quantity)}, 'bom_materials');
-		total_rm_cost += amt;
-	}
-	doc.raw_material_cost = total_rm_cost;
-	refresh_field('raw_material_cost');
-}
-
-
-// Calculate Total Cost
-var calculate_total = function(doc) {
-	doc.total_cost = flt(doc.raw_material_cost) + flt(doc.operating_cost);
-	refresh_field('total_cost');
-}
-
-
-cur_frm.fields_dict['item'].get_query = function(doc) {
-	return 'SELECT DISTINCT `tabItem`.`name`, `tabItem`.description FROM `tabItem` WHERE is_manufactured_item = "Yes" and (IFNULL(`tabItem`.`end_of_life`,"") = "" OR `tabItem`.`end_of_life` = "0000-00-00" OR `tabItem`.`end_of_life` > NOW()) AND `tabItem`.`%(key)s` like "%s" ORDER BY `tabItem`.`name` LIMIT 50';
-}
-
-cur_frm.fields_dict['project_name'].get_query = function(doc, dt, dn) {
-	return 'SELECT `tabProject`.name FROM `tabProject` \
-		WHERE `tabProject`.status not in ("Completed", "Cancelled") \
-		AND `tabProject`.name LIKE "%s" ORDER BY `tabProject`.name ASC LIMIT 50';
-}
-
-cur_frm.fields_dict['bom_materials'].grid.get_field('item_code').get_query = function(doc) {
-	return 'SELECT DISTINCT `tabItem`.`name`, `tabItem`.description FROM `tabItem` WHERE (IFNULL(`tabItem`.`end_of_life`,"") = "" OR `tabItem`.`end_of_life` = "0000-00-00" OR `tabItem`.`end_of_life` > NOW()) AND `tabItem`.`%(key)s` like "%s" ORDER BY `tabItem`.`name` LIMIT 50';
-}
-
-cur_frm.fields_dict['bom_materials'].grid.get_field('bom_no').get_query = function(doc) {
-	var d = locals[this.doctype][this.docname];
-	return 'SELECT DISTINCT `tabBOM`.`name`, `tabBOM`.`remarks` FROM `tabBOM` WHERE `tabBOM`.`item` = "' + d.item_code + '" AND `tabBOM`.`is_active` = "Yes" AND `tabBOM`.docstatus = 1 AND `tabBOM`.`name` like "%s" ORDER BY `tabBOM`.`name` LIMIT 50';
-}
-
-cur_frm.cscript.validate = function(doc, dt, dn) {
-	calculate_op_cost(doc, dt, dn);
-	calculate_rm_cost(doc, dt, dn);
-	calculate_total(doc);
-}
diff --git a/production/doctype/bom/bom.py b/production/doctype/bom/bom.py
deleted file mode 100644
index af0a7dd..0000000
--- a/production/doctype/bom/bom.py
+++ /dev/null
@@ -1,398 +0,0 @@
-# ERPNext - web based ERP (http://erpnext.com)
-# Copyright (C) 2012 Web Notes Technologies Pvt Ltd
-# 
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-# 
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# 
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-from __future__ import unicode_literals
-import webnotes
-from webnotes.utils import cint, cstr, flt, now, nowdate
-from webnotes.model.doc import Document, addchild
-from webnotes.model.wrapper import getlist
-from webnotes.model.code import get_obj
-from webnotes import msgprint
-
-sql = webnotes.conn.sql
-
-
-class DocType:
-	def __init__(self, doc, doclist=[]):
-		self.doc = doc
-		self.doclist = doclist
-
-	def autoname(self):
-		last_name = sql("""select max(name) from `tabBOM` 
-			where name like 'BOM/%s/%%'""" % self.doc.item)
-		if last_name:
-			idx = cint(cstr(last_name[0][0]).split('/')[-1]) + 1
-		else:
-			idx = 1
-		self.doc.name = 'BOM/' + self.doc.item + ('/%.3i' % idx)
-
-
-	def get_item_det(self, item_code):
-		item = sql("""select name, is_asset_item, is_purchase_item, docstatus,
-		 	is_sub_contracted_item, description, stock_uom, default_bom, 
-			last_purchase_rate, standard_rate, is_manufactured_item 
-			from `tabItem` where item_code = %s""", item_code, as_dict = 1)
-
-		return item
-
-
-	def get_item_detail(self, item_code):
-		""" Get stock uom and description for finished good item"""
-
-		item = self.get_item_det(item_code)
-		ret={
-			'description'	 : item and item[0]['description'] or '',
-			'uom'				: item and item[0]['stock_uom'] or ''
-		}
-		return ret
-
-
-
-	def get_workstation_details(self,workstation):
-		""" Fetch hour rate from workstation master"""
-
-		ws = sql("select hour_rate from `tabWorkstation` where name = %s",workstation , as_dict = 1)
-		ret = {
-			'hour_rate'				: ws and flt(ws[0]['hour_rate']) or '',
-		}
-		return ret
-
-
-
-	def validate_rm_item(self, item):
-		""" Validate raw material items"""
-
-		if item[0]['name'] == self.doc.item:
-			msgprint(" Item_code: "+item[0]['name']+" in materials tab cannot be same as FG Item in BOM := " +cstr(self.doc.name), raise_exception=1)
-		
-		if item and item[0]['is_asset_item'] == 'Yes':
-			msgprint("Sorry!!! Item " + item[0]['name'] + " is an Asset of the company. Entered in BOM => " + cstr(self.doc.name), raise_exception = 1)
-
-		if not item or item[0]['docstatus'] == 2:
-			msgprint("Item %s does not exist in system" % item[0]['item_code'], raise_exception = 1)
-
-
-
-	def get_bom_material_detail(self):
-		""" Get raw material details like uom, desc and rate"""
-
-		arg = webnotes.form_dict.get('args')
-		import json
-		arg = json.loads(arg)
-		
-		item = self.get_item_det(arg['item_code'])
-		self.validate_rm_item(item)
-		
-		arg['bom_no'] = arg['bom_no'] or item and cstr(item[0]['default_bom']) or ''
-		arg.update(item[0])
-
-		rate = self.get_rm_rate(arg)
-		ret_item = {
-			 'description'  : item and arg['description'] or '',
-			 'stock_uom'	: item and arg['stock_uom'] or '',
-			 'bom_no'		: arg['bom_no'],
-			 'rate'			: rate
-		}
-		return ret_item
-
-
-	def get_rm_rate(self, arg):
-		"""	Get raw material rate as per selected method, if bom exists takes bom cost """
-
-		if arg['bom_no']:
-			bom = sql("""select name, total_cost/quantity as unit_cost from `tabBOM`
-				where is_active = 'Yes' and name = %s""", arg['bom_no'], as_dict=1)
-			rate = bom and bom[0]['unit_cost'] or 0
-		elif arg and (arg['is_purchase_item'] == 'Yes' or arg['is_sub_contracted_item'] == 'Yes'):
-			if self.doc.rm_cost_as_per == 'Valuation Rate':
-				rate = self.get_valuation_rate(arg)
-			elif self.doc.rm_cost_as_per == 'Last Purchase Rate':
-				rate = arg['last_purchase_rate']
-			elif self.doc.rm_cost_as_per == 'Standard Rate':
-				rate = arg['standard_rate']
-
-		return rate
-
-	
-
-	def get_valuation_rate(self, arg):
-		""" Get average valuation rate of relevant warehouses 
-			as per valuation method (MAR/FIFO) 
-			as on costing date	
-		"""
-
-		dt = self.doc.costing_date or nowdate()
-		time = self.doc.costing_date == nowdate() and now().split()[1] or '23:59'
-		warehouse = sql("select warehouse from `tabBin` where item_code = %s", arg['item_code'])
-		rate = []
-		for wh in warehouse:
-			r = get_obj('Valuation Control').get_incoming_rate(dt, time, arg['item_code'], wh[0], qty = arg.get('qty', 0))
-			if r:
-				rate.append(r)
-
-		return rate and flt(sum(rate))/len(rate) or 0
-
-
-
-	def manage_default_bom(self):
-		""" Uncheck others if current one is selected as default, update default bom in item master"""
-		webnotes.conn.set(self.doc, "is_default", cint(self.doc.is_default))
-		
-		if self.doc.is_default and self.doc.is_active == 'Yes':
-			sql("update `tabBOM` set is_default = 0 where name != %s and item=%s", (self.doc.name, self.doc.item))
-
-			# update default bom in Item Master
-			sql("update `tabItem` set default_bom = %s where name = %s", (self.doc.name, self.doc.item))
-		else:
-			sql("update `tabItem` set default_bom = '' where name = %s and default_bom = %s", (self.doc.item, self.doc.name))
-
-
-	def manage_active_bom(self):
-		""" Manage active/inactive """
-		if self.doc.is_active == 'Yes':
-			self.validate()
-		else:
-			self.check_active_parent_boms()
-
-
-
-	def check_active_parent_boms(self):
-		""" Check parent BOM before making it inactive """
-		act_pbom = sql("""select distinct t1.parent from `tabBOM Item` t1, `tabBOM` t2 
-			where t1.bom_no =%s and t2.name = t1.parent and t2.is_active = 'Yes' 
-			and t2.docstatus = 1 and t1.docstatus =1 """, self.doc.name)
-		if act_pbom and act_pbom[0][0]:
-			msgprint("""Sorry cannot inactivate as BOM: %s is child 
-				of one or many other active parent BOMs""" % self.doc.name, raise_exception=1)
-
-
-
-	def calculate_cost(self):
-		"""Calculate bom totals"""
-		self.doc.costing_date = nowdate()
-		self.calculate_op_cost()
-		self.calculate_rm_cost()
-		self.doc.total_cost = self.doc.raw_material_cost + self.doc.operating_cost
-		self.doc.modified = now()
-		self.doc.save()
-
-		self.update_flat_bom_engine(is_submit = self.doc.docstatus)
-
-	
-
-	def calculate_op_cost(self):
-		"""Update workstation rate and calculates totals"""
-		total_op_cost = 0
-		for d in getlist(self.doclist, 'bom_operations'):
-			hour_rate = sql("select hour_rate from `tabWorkstation` where name = %s", cstr(d.workstation))
-			d.hour_rate = hour_rate and flt(hour_rate[0][0]) or d.hour_rate or 0
-			d.operating_cost = d.hour_rate and d.time_in_mins and \
-				flt(d.hour_rate) * flt(d.time_in_mins) / 60 or d.operating_cost
-			d.save()
-			total_op_cost += d.operating_cost
-		self.doc.operating_cost = total_op_cost
-
-
-	def calculate_rm_cost(self):
-		"""Fetch RM rate as per today's valuation rate and calculate totals"""
-		total_rm_cost = 0
-		for d in getlist(self.doclist, 'bom_materials'):
-			arg = {'item_code': d.item_code, 'qty': d.qty, 'bom_no': d.bom_no}
-			ret = self.get_bom_material_detail(cstr(arg))
-			for k in ret:
-				d.fields[k] = ret[k]
-			d.amount = flt(d.rate) * flt(d.qty)
-			d.save()
-			total_rm_cost += d.amount
-		self.doc.raw_material_cost = total_rm_cost
-
-
-
-	def validate_main_item(self):
-		""" Validate main FG item"""
-		item = self.get_item_det(self.doc.item)
-		if not item:
-			msgprint("Item %s does not exists in the system or expired." % self.doc.item, raise_exception = 1)
-
-		elif item[0]['is_manufactured_item'] != 'Yes' and item[0]['is_sub_contracted_item'] != 'Yes':
-			msgprint("""As Item: %s is not a manufactured / sub-contracted item, 
-				you can not make BOM for it""" % self.doc.item, raise_exception = 1)
-
-
-
-	def validate_operations(self):
-		""" Check duplicate operation no"""
-		self.op = []
-		for d in getlist(self.doclist, 'bom_operations'):
-			if cstr(d.operation_no) in self.op:
-				msgprint("Operation no: %s is repeated in Operations Table"% d.operation_no, raise_exception=1)
-			else:
-				# add operation in op list
-				self.op.append(cstr(d.operation_no))
-
-	def validate_materials(self):
-		""" Validate raw material entries """
-		check_list = []
-		for m in getlist(self.doclist, 'bom_materials'):
-			# check if operation no not in op table
-			if cstr(m.operation_no) not in self.op:
-				msgprint("""Operation no: %s against item: %s at row no: %s is not present 
-					at Operations table"""% (m.operation_no, m.item_code, m.idx), raise_exception = 1)
-		
-			item = self.get_item_det(m.item_code)
-			if item[0]['is_manufactured_item'] == 'Yes' or item[0]['is_sub_contracted_item'] == 'Yes':
-				if not m.bom_no:
-					msgprint("Please enter BOM No aginst item: %s at row no: %s"% (m.item_code, m.idx), raise_exception=1)
-				else:
-					self.validate_bom_no(m.item_code, m.bom_no, m.idx)
-
-			elif m.bom_no:
-				msgprint("""As Item %s is not a manufactured / sub-contracted item, 
-					you can enter BOM against it (Row No: %s)."""% (m.item_code, m.idx), raise_excepiton = 1)
-
-			if flt(m.qty) <= 0:
-				msgprint("Please enter qty against raw material: %s at row no: %s"% (m.item_code, m.idx), raise_exception = 1)
-
-			self.check_if_item_repeated(m.item_code, m.operation_no, check_list)
-
-
-
-	def validate_bom_no(self, item, bom_no, idx):
-		"""Validate BOM No of sub-contracted items"""
-		bom = sql("""select name from `tabBOM` where name = %s and item = %s 
-			and ifnull(is_active, 'No') = 'Yes'	and docstatus < 2 """, (bom_no, item), as_dict =1)
-		if not bom:
-			msgprint("""Incorrect BOM No: %s against item: %s at row no: %s.
-				It may be inactive or cancelled or for some other item."""% (bom_no, item, idx), raise_exception = 1)
-				
-
-
-	def check_if_item_repeated(self, item, op, check_list):
-		if [cstr(item), cstr(op)] in check_list:
-			msgprint("Item %s has been entered twice against same operation" % item, raise_exception = 1)
-		else:
-			check_list.append([cstr(item), cstr(op)])
-
-
-	def validate(self):
-		self.validate_main_item()
-		self.validate_operations()
-		self.validate_materials()
-
-	def check_recursion(self):
-		""" Check whether reqursion occurs in any bom"""
-
-		check_list = [['parent', 'bom_no', 'parent'], ['bom_no', 'parent', 'child']]
-		for d in check_list:
-			bom_list, count = [self.doc.name], 0
-			while (len(bom_list) > count ):
-				boms = sql(" select %s from `tabBOM Item` where %s = '%s' " % (d[0], d[1], cstr(bom_list[count])))
-				count = count + 1
-				for b in boms:
-					if b[0] == self.doc.name:
-						msgprint("""Recursion Occured => '%s' cannot be '%s' of '%s'.
-							""" % (cstr(b), cstr(d[2]), self.doc.name), raise_exception = 1)
-					if b[0]:
-						bom_list.append(b[0])
-
-
-
-	def on_update(self):
-		self.check_recursion()
-
-
-
-	def add_to_flat_bom_detail(self, is_submit = 0):
-		"Add items to Flat BOM table"
-		self.doclist = self.doc.clear_table(self.doclist, 'flat_bom_details', 1)
-		for d in self.cur_flat_bom_items:
-			ch = addchild(self.doc, 'flat_bom_details', 'BOM Explosion Item', 1, self.doclist)
-			for i in d.keys():
-				ch.fields[i] = d[i]
-			ch.docstatus = is_submit
-			ch.save(1)
-		self.doc.save()
-
-
-
-	def get_child_flat_bom_items(self, bom_no, qty):
-		""" Add all items from Flat BOM of child BOM"""
-
-		child_fb_items = sql("""select item_code, description, stock_uom, qty, rate, amount, parent_bom, mat_detail_no, qty_consumed_per_unit 
-			from `tabBOM Explosion Item` where parent = '%s' and docstatus = 1""" % bom_no, as_dict = 1)
-		for d in child_fb_items:
-			self.cur_flat_bom_items.append({
-				'item_code'				: d['item_code'], 
-				'description'			: d['description'], 
-				'stock_uom'				: d['stock_uom'], 
-				'qty'					: flt(d['qty_consumed_per_unit'])*qty,
-				'rate'					: flt(d['rate']), 
-				'amount'				: flt(d['amount']),
-				'parent_bom'			: d['parent_bom'],
-				'mat_detail_no'			: d['mat_detail_no'],
-				'qty_consumed_per_unit' : flt(d['qty_consumed_per_unit'])*qty/flt(self.doc.quantity)
-
-			})
-
-
-	# Get Current Flat BOM Items
-	# -----------------------------
-	def get_current_flat_bom_items(self):
-		""" Get all raw materials including items from child bom"""
-		self.cur_flat_bom_items = []
-		for d in getlist(self.doclist, 'bom_materials'):
-			self.cur_flat_bom_items.append({
-				'item_code'				: d.item_code, 
-				'description'			: d.description, 
-				'stock_uom'				: d.stock_uom, 
-				'qty'					: flt(d.qty),
-				'rate'					: flt(d.rate), 
-				'amount'				: flt(d.amount),
-				'parent_bom'			: d.parent, #item and item[0][0]=='No' and d.bom_no or d.parent, 
-				'mat_detail_no'			: d.name,
-				'qty_consumed_per_unit' : flt(d.qty_consumed_per_unit)
-			})
-			if d.bom_no:
-				self.get_child_flat_bom_items(d.bom_no, d.qty)
-
-
-	def update_flat_bom_engine(self, is_submit = 0):
-		""" Update Flat BOM, following will be correct data"""
-		self.get_current_flat_bom_items()
-		self.add_to_flat_bom_detail(is_submit)
-
-
-	def get_parent_bom_list(self, bom_no):
-		p_bom = sql("select parent from `tabBOM Item` where bom_no = '%s'" % bom_no)
-		return p_bom and [i[0] for i in p_bom] or []
-
-
-	def on_submit(self):
-		self.manage_default_bom()
-		self.update_flat_bom_engine(1)
-
-
-	def on_cancel(self):
-		# check if used in any other bom
-		par = sql("""select t1.parent from `tabBOM Item` t1, `tabBOM` t2 
-			where t1.parent = t2.name and t1.bom_no = %s and t1.docstatus = 1 and t2.is_active = 'Yes'""", self.doc.name)
-		if par:
-			msgprint("BOM can not be cancelled, as it is a child item in following active BOM %s"% [d[0] for d in par])
-			raise Exception
-			
-		webnotes.conn.set(self.doc, "is_active", "No")
-		webnotes.conn.set(self.doc, "is_default", 0)
-		self.manage_default_bom()
diff --git a/production/doctype/bom_control/__init__.py b/production/doctype/bom_control/__init__.py
deleted file mode 100644
index baffc48..0000000
--- a/production/doctype/bom_control/__init__.py
+++ /dev/null
@@ -1 +0,0 @@
-from __future__ import unicode_literals
diff --git a/production/doctype/bom_control/bom_control.py b/production/doctype/bom_control/bom_control.py
deleted file mode 100644
index 27812a8..0000000
--- a/production/doctype/bom_control/bom_control.py
+++ /dev/null
@@ -1,114 +0,0 @@
-# ERPNext - web based ERP (http://erpnext.com)
-# Copyright (C) 2012 Web Notes Technologies Pvt Ltd
-# 
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-# 
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# 
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-from __future__ import unicode_literals
-import webnotes
-
-from webnotes.utils import cint, flt
-from webnotes.model import db_exists
-from webnotes.model.wrapper import copy_doclist
-from webnotes.model.code import get_obj
-
-sql = webnotes.conn.sql
-
-
-	
-class DocType:
-	def __init__(self, doc, doclist):
-		self.doc = doc
-		self.doclist = doclist
-
-
-
-	def get_item_group(self):
-		ret = sql("select name from `tabItem Group` ")
-		item_group = []
-		for r in ret:
-			item =sql("select t1.name from `tabItem` t1, `tabBOM` t2 where t2.item = t1.name and t1.item_group = '%s' " % (r[0]))
-			if item and item[0][0]:
-				item_group.append(r[0])
-		return '~~~'.join([r for r in item_group])
-
-
-
-	def get_item_code(self,item_group):
-		""" here BOM docstatus = 1 and is_active ='yes' condition is not given because some bom
-			is under construction that is it is still in saved mode and they want see till where they have reach.
-		"""
-		ret = sql("select distinct t1.name from `tabItem` t1, `tabBOM` t2 where t2.item = t1.name and t1.item_group = '%s' " % (item_group))
-		return '~~~'.join([r[0] for r in ret])
-
-
-
-	def get_bom_no(self,item_code):
-		ret = sql("select name from `tabBOM` where item = '%s' " % (item_code))
-		return '~~~'.join([r[0] for r in ret])
-
-
-
-	def get_operations(self,bom_no):
-		ret = sql("select operation_no,opn_description,workstation,hour_rate,time_in_mins from `tabBOM Operation` where parent = %s", bom_no, as_dict = 1)
-		cost = sql("select dir_mat_as_per_mar , operating_cost , cost_as_per_mar from `tabBOM` where name = %s", bom_no, as_dict = 1)
-
-		# Validate the BOM ENTRIES
-		reply = []
-
-		if ret:
-			for r in ret:
-				reply.append(['operation',cint(r['operation_no']), r['opn_description'] or '','%s'% bom_no,r['workstation'],flt(r['hour_rate']),flt(r['time_in_mins']),0,0,0])
-
-			reply[0][7]= flt(cost[0]['dir_mat_as_per_mar'])
-			reply[0][8]=flt(cost[0]['operating_cost'])
-			reply[0][9]=flt(cost[0]['cost_as_per_mar'])
-		return reply
-
-
-
-	def get_item_bom(self,data):
-		data = eval(data)
-		reply = []
-		ret = sql("select item_code,description,bom_no,qty,scrap,stock_uom,value_as_per_mar,moving_avg_rate from `tabBOM Item` where parent = '%s' and operation_no = '%s'" % (data['bom_no'],data['op_no']), as_dict =1 )
-
-		for r in ret:
-			item = sql("select is_manufactured_item, is_sub_contracted_item from `tabItem` where name = '%s'" % r['item_code'], as_dict=1)
-			if not item[0]['is_manufactured_item'] == 'Yes' and not item[0]['is_sub_contracted_item'] =='Yes':
-				#if item is not manufactured or it is not sub-contracted
-				reply.append([ 'item_bom', r['item_code'] or '', r['description'] or '', r['bom_no'] or '', flt(r['qty']) or 0, r['stock_uom'] or '', flt(r['scrap']) or 0, flt(r['moving_avg_rate']) or 0, 1])
-			else:
-				# if it is manufactured or sub_contracted this will be considered(here item can be purchase item)
-				reply.append([ 'item_bom', r['item_code'] or '', r['description'] or '', r['bom_no'] or '', flt(r['qty']) or 0, r['stock_uom'] or '', flt(r['scrap']) or 0, flt(r['value_as_per_mar']) or 0, 0])
-		return reply
-
-
-
-	#------------- Wrapper Code --------------
-	def calculate_cost(self, bom_no):
-		main_bom_list = get_obj('Production Control').traverse_bom_tree( bom_no = bom_no, qty = 1, calculate_cost = 1)
-		main_bom_list.reverse()
-		for bom in main_bom_list:
-			bom_obj = get_obj('BOM', bom, with_children = 1)
-			bom_obj.calculate_cost()
-		return 'calculated'
-
-
-
-	def get_bom_tree_list(self,args):
-		arg = eval(args)
-		i =[]
-		for a in sql("select t1.name from `tabBOM` t1, `tabItem` t2 where t2.item_group like '%s' and t1.item like '%s'"%(arg['item_group'] +'%',arg['item_code'] + '%')):
-			if a[0] not in i:
-				i.append(a[0])
-		return i
diff --git a/production/doctype/bom_control/bom_control.txt b/production/doctype/bom_control/bom_control.txt
deleted file mode 100644
index 3c322e1..0000000
--- a/production/doctype/bom_control/bom_control.txt
+++ /dev/null
@@ -1,31 +0,0 @@
-# DocType, BOM Control
-[
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:36:02',
-		'docstatus': 0,
-		'modified': '2012-03-27 14:36:02',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'issingle': 1,
-		'module': u'Production',
-		'name': '__common__',
-		'section_style': u'Simple',
-		'server_code_error': u' ',
-		'show_in_menu': 0,
-		'version': 108
-	},
-
-	# DocType, BOM Control
-	{
-		'doctype': 'DocType',
-		'name': u'BOM Control'
-	}
-]
\ No newline at end of file
diff --git a/production/doctype/bom_explosion_item/bom_explosion_item.txt b/production/doctype/bom_explosion_item/bom_explosion_item.txt
deleted file mode 100644
index b960231..0000000
--- a/production/doctype/bom_explosion_item/bom_explosion_item.txt
+++ /dev/null
@@ -1,137 +0,0 @@
-# DocType, BOM Explosion Item
-[
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:36:03',
-		'docstatus': 0,
-		'modified': '2012-03-27 14:36:03',
-		'modified_by': u'Administrator',
-		'owner': u'jai@webnotestech.com'
-	},
-
-	# These values are common for all DocType
-	{
-		'autoname': u'FBD/.######',
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'istable': 1,
-		'module': u'Production',
-		'name': '__common__',
-		'read_only': 0,
-		'section_style': u'Simple',
-		'server_code_error': u' ',
-		'show_in_menu': 0,
-		'version': 24
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'BOM Explosion Item',
-		'parentfield': u'fields',
-		'parenttype': u'DocType',
-		'permlevel': 0
-	},
-
-	# DocType, BOM Explosion Item
-	{
-		'doctype': 'DocType',
-		'name': u'BOM Explosion Item'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'item_code',
-		'fieldtype': u'Link',
-		'label': u'Item Code',
-		'oldfieldname': u'item_code',
-		'oldfieldtype': u'Link',
-		'options': u'Item'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'description',
-		'fieldtype': u'Text',
-		'label': u'Description',
-		'oldfieldname': u'description',
-		'oldfieldtype': u'Text',
-		'width': u'300px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'qty',
-		'fieldtype': u'Float',
-		'label': u'Qty',
-		'oldfieldname': u'qty',
-		'oldfieldtype': u'Currency'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'rate',
-		'fieldtype': u'Float',
-		'label': u'Rate',
-		'oldfieldname': u'standard_rate',
-		'oldfieldtype': u'Currency'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'amount',
-		'fieldtype': u'Float',
-		'label': u'Amount',
-		'oldfieldname': u'amount_as_per_sr',
-		'oldfieldtype': u'Currency'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'stock_uom',
-		'fieldtype': u'Link',
-		'label': u'Stock UOM',
-		'oldfieldname': u'stock_uom',
-		'oldfieldtype': u'Link',
-		'options': u'UOM'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'parent_bom',
-		'fieldtype': u'Link',
-		'hidden': 0,
-		'label': u'Parent BOM',
-		'oldfieldname': u'parent_bom',
-		'oldfieldtype': u'Link',
-		'width': u'250px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'mat_detail_no',
-		'fieldtype': u'Data',
-		'hidden': 1,
-		'label': u'Mat Detail No'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'qty_consumed_per_unit',
-		'fieldtype': u'Float',
-		'hidden': 0,
-		'label': u'Qty Consumed Per Unit',
-		'no_copy': 0
-	}
-]
\ No newline at end of file
diff --git a/production/doctype/bom_item/bom_item.txt b/production/doctype/bom_item/bom_item.txt
deleted file mode 100644
index 4204b20..0000000
--- a/production/doctype/bom_item/bom_item.txt
+++ /dev/null
@@ -1,193 +0,0 @@
-# DocType, BOM Item
-[
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:36:02',
-		'docstatus': 0,
-		'modified': '2012-03-27 14:36:02',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'istable': 1,
-		'module': u'Production',
-		'name': '__common__',
-		'section_style': u'Simple',
-		'server_code_error': u' ',
-		'show_in_menu': 0,
-		'version': 27
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'BOM Item',
-		'parentfield': u'fields',
-		'parenttype': u'DocType'
-	},
-
-	# These values are common for all DocPerm
-	{
-		'doctype': u'DocPerm',
-		'name': '__common__',
-		'parent': u'BOM Item',
-		'parentfield': u'permissions',
-		'parenttype': u'DocType',
-		'read': 1,
-		'role': u'System Manager'
-	},
-
-	# DocType, BOM Item
-	{
-		'doctype': 'DocType',
-		'name': u'BOM Item'
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm',
-		'permlevel': 0,
-		'write': 1
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'operation_no',
-		'fieldtype': u'Data',
-		'label': u'Operation No',
-		'oldfieldname': u'operation_no',
-		'oldfieldtype': u'Data',
-		'permlevel': 0,
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'item_code',
-		'fieldtype': u'Link',
-		'in_filter': 1,
-		'label': u'Item Code',
-		'oldfieldname': u'item_code',
-		'oldfieldtype': u'Link',
-		'options': u'Item',
-		'permlevel': 0,
-		'reqd': 1,
-		'search_index': 1,
-		'trigger': u'Client'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'bom_no',
-		'fieldtype': u'Link',
-		'in_filter': 1,
-		'label': u'BOM No',
-		'oldfieldname': u'bom_no',
-		'oldfieldtype': u'Link',
-		'options': u'BOM',
-		'permlevel': 0,
-		'reqd': 0,
-		'search_index': 1,
-		'trigger': u'Client',
-		'width': u'150px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'qty',
-		'fieldtype': u'Float',
-		'label': u'Qty',
-		'oldfieldname': u'qty',
-		'oldfieldtype': u'Currency',
-		'permlevel': 0,
-		'reqd': 1,
-		'trigger': u'Client'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'stock_uom',
-		'fieldtype': u'Data',
-		'label': u'Stock UOM',
-		'oldfieldname': u'stock_uom',
-		'oldfieldtype': u'Data',
-		'permlevel': 1,
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'rate',
-		'fieldtype': u'Float',
-		'label': u'Rate',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'amount',
-		'fieldtype': u'Float',
-		'label': u'Amount',
-		'oldfieldname': u'amount_as_per_mar',
-		'oldfieldtype': u'Currency',
-		'permlevel': 1,
-		'width': u'150px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'scrap',
-		'fieldtype': u'Currency',
-		'label': u'Scrap %',
-		'oldfieldname': u'scrap',
-		'oldfieldtype': u'Currency',
-		'permlevel': 0,
-		'print_hide': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'description',
-		'fieldtype': u'Text',
-		'label': u'Item Description',
-		'oldfieldname': u'description',
-		'oldfieldtype': u'Text',
-		'permlevel': 0,
-		'reqd': 0,
-		'width': u'250px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'qty_consumed_per_unit',
-		'fieldtype': u'Float',
-		'hidden': 1,
-		'label': u'Qty Consumed Per Unit',
-		'oldfieldname': u'qty_consumed_per_unit',
-		'oldfieldtype': u'Float',
-		'permlevel': 1,
-		'print_hide': 1
-	}
-]
\ No newline at end of file
diff --git a/production/doctype/bom_operation/bom_operation.txt b/production/doctype/bom_operation/bom_operation.txt
deleted file mode 100644
index b09856d..0000000
--- a/production/doctype/bom_operation/bom_operation.txt
+++ /dev/null
@@ -1,134 +0,0 @@
-# DocType, BOM Operation
-[
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:36:02',
-		'docstatus': 0,
-		'modified': '2012-03-27 14:36:02',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'istable': 1,
-		'module': u'Production',
-		'name': '__common__',
-		'section_style': u'Simple',
-		'server_code_error': u' ',
-		'show_in_menu': 0,
-		'version': 8
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'BOM Operation',
-		'parentfield': u'fields',
-		'parenttype': u'DocType',
-		'permlevel': 0
-	},
-
-	# These values are common for all DocPerm
-	{
-		'doctype': u'DocPerm',
-		'name': '__common__',
-		'parent': u'BOM Operation',
-		'parentfield': u'permissions',
-		'parenttype': u'DocType',
-		'read': 1,
-		'role': u'System Manager'
-	},
-
-	# DocType, BOM Operation
-	{
-		'doctype': 'DocType',
-		'name': u'BOM Operation'
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm',
-		'permlevel': 0,
-		'write': 1
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'operation_no',
-		'fieldtype': u'Data',
-		'label': u'Operation No',
-		'oldfieldname': u'operation_no',
-		'oldfieldtype': u'Data',
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'opn_description',
-		'fieldtype': u'Text',
-		'label': u'Opn Description',
-		'oldfieldname': u'opn_description',
-		'oldfieldtype': u'Text',
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'workstation',
-		'fieldtype': u'Link',
-		'label': u'Workstation',
-		'oldfieldname': u'workstation',
-		'oldfieldtype': u'Link',
-		'options': u'Workstation',
-		'reqd': 0,
-		'trigger': u'Client'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'hour_rate',
-		'fieldtype': u'Currency',
-		'label': u'Hour Rate',
-		'oldfieldname': u'hour_rate',
-		'oldfieldtype': u'Currency',
-		'reqd': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'time_in_mins',
-		'fieldtype': u'Currency',
-		'label': u'Operation Time (mins)',
-		'oldfieldname': u'time_in_mins',
-		'oldfieldtype': u'Currency',
-		'reqd': 0
-	},
-
-	# DocField
-	{
-		'allow_on_submit': 0,
-		'doctype': u'DocField',
-		'fieldname': u'operating_cost',
-		'fieldtype': u'Currency',
-		'label': u'Operating Cost',
-		'oldfieldname': u'operating_cost',
-		'oldfieldtype': u'Currency',
-		'reqd': 0
-	}
-]
\ No newline at end of file
diff --git a/production/doctype/production_control/__init__.py b/production/doctype/production_control/__init__.py
deleted file mode 100644
index baffc48..0000000
--- a/production/doctype/production_control/__init__.py
+++ /dev/null
@@ -1 +0,0 @@
-from __future__ import unicode_literals
diff --git a/production/doctype/production_control/production_control.py b/production/doctype/production_control/production_control.py
deleted file mode 100644
index b389e69..0000000
--- a/production/doctype/production_control/production_control.py
+++ /dev/null
@@ -1,138 +0,0 @@
-# ERPNext - web based ERP (http://erpnext.com)
-# Copyright (C) 2012 Web Notes Technologies Pvt Ltd
-# 
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-# 
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# 
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-from __future__ import unicode_literals
-import webnotes
-
-from webnotes.utils import cstr, flt, get_defaults, now, nowdate
-from webnotes.model import db_exists
-from webnotes.model.doc import Document
-from webnotes.model.wrapper import copy_doclist
-from webnotes.model.code import get_obj
-from webnotes import msgprint
-
-sql = webnotes.conn.sql
-	
-
-	
-class DocType:
-	def __init__( self, doc, doclist=[]):
-		self.doc = doc
-		self.doclist = doclist
-		self.pur_items = {}
-		self.bom_list = []
-		self.sub_assembly_items = []
-		self.item_master = {}
-
-	def traverse_bom_tree( self, bom_no, qty, ext_pur_items = 0, ext_sub_assembly_items = 0, calculate_cost = 0, maintain_item_master = 0 ):
-		count, bom_list, qty_list = 0, [bom_no], [qty]
-		while (count < len(bom_list)):
-			# get child items from BOM MAterial Table.
-			child_items = sql("select item_code, bom_no, qty, qty_consumed_per_unit from `tabBOM Item` where parent = %s", bom_list[count], as_dict = 1)
-			child_items = child_items and child_items or []
-			for item in child_items:
-				# Calculate qty required for FG's qty.
-				item['reqd_qty'] = flt(qty) * ((count == 0) and 1 or flt(qty_list[count]) )* flt(item['qty_consumed_per_unit'])
-
-				# extracting Purchase Items
-				if ext_pur_items and not item['bom_no']:
-					self.pur_items[item['item_code']] = flt(self.pur_items.get(item['item_code'], 0)) + flt(item['reqd_qty'])
-							
-				# For calculate cost extracting BOM Items check for duplicate boms, this optmizes the time complexity for while loop.
-				if calculate_cost and item['bom_no'] and (item['bom_no'] not in bom_list):
-					bom_list.append(item['bom_no'])
-					qty_list.append(item['reqd_qty'])
-
-				# Here repeated bom are considered to calculate total qty of raw material required
-				if not calculate_cost and item['bom_no']:
-					bom_list.append(item['bom_no'])
-					qty_list.append(item['reqd_qty'])
-
-			count += 1
-		return bom_list
-
-
-
-	#	Raise Production Order
-	def create_production_order(self, items):
-		"""Create production order. Called from Production Planning Tool"""
-					 
-		default_values = { 
-			'posting_date'		: nowdate(),
-			'origin'			: 'MRP',
-			'wip_warehouse'		: '',
-			'fg_warehouse'		: '',
-			'status'			: 'Draft',
-			'fiscal_year'		: get_defaults()['fiscal_year']
-		}
-		pro_list = []
-
-		for item_so in items:
-			if item_so[1]:
-				self.validate_production_order_against_so(
-					item_so[0], item_so[1], items[item_so].get("qty"))
-				
-			pro_doc = Document('Production Order')
-			pro_doc.production_item = item_so[0]
-			pro_doc.sales_order = item_so[1]
-			for key in items[item_so]:
-				pro_doc.fields[key] = items[item_so][key]
-
-			for key in default_values:
-				pro_doc.fields[key] = default_values[key]
-			
-			pro_doc.save(new = 1)
-			pro_list.append(pro_doc.name)
-			
-		return pro_list
-
-	def validate_production_order_against_so(self, item, sales_order, qty, pro_order=None):
-		# already ordered qty
-		ordered_qty_against_so = webnotes.conn.sql("""select sum(qty) from `tabProduction Order`
-			where production_item = %s and sales_order = %s and name != %s""", 
-			(item, sales_order, cstr(pro_order)))[0][0]
-		# qty including current
-		total_ordered_qty_against_so = flt(ordered_qty_against_so) + flt(qty)
-		
-		# get qty from Sales Order Item table
-		so_item_qty = webnotes.conn.sql("""select sum(qty) from `tabSales Order Item` 
-			where parent = %s and item_code = %s""", (sales_order, item))[0][0]
-		# get qty from Packing Item table
-		dnpi_qty = webnotes.conn.sql("""select sum(qty) from `tabDelivery Note Packing Item` 
-			where parent = %s and parenttype = 'Sales Order' and item_code = %s""", 
-			(sales_order, item))[0][0]
-		# total qty in SO
-		so_qty = flt(so_item_qty) + flt(dnpi_qty)
-		
-		if total_ordered_qty_against_so > so_qty:
-			msgprint("""Total production order qty for item: %s against sales order: %s \
-			 	will be %s, which is greater than sales order qty (%s). 
-				Please reduce qty or remove the item.""" %
-				(item, sales_order, total_ordered_qty_against_so, so_qty), raise_exception=1)
-		
-	def update_bom(self, bom_no):
-		main_bom_list = self.traverse_bom_tree(bom_no, 1)
-		main_bom_list.reverse()
-		# run calculate cost and get
-		for bom in main_bom_list:
-			if bom and bom not in self.check_bom_list:
-				bom_obj = get_obj('BOM', bom, with_children = 1)
-				bom_obj.doc.save()
-				bom_obj.check_recursion()
-				bom_obj.update_flat_bom_engine()
-				bom_obj.doc.docstatus = 1
-				bom_obj.doc.save()
-				self.check_bom_list.append(bom)
\ No newline at end of file
diff --git a/production/doctype/production_control/production_control.txt b/production/doctype/production_control/production_control.txt
deleted file mode 100644
index 4f8564c..0000000
--- a/production/doctype/production_control/production_control.txt
+++ /dev/null
@@ -1,31 +0,0 @@
-# DocType, Production Control
-[
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:36:05',
-		'docstatus': 0,
-		'modified': '2012-03-27 14:36:05',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'issingle': 1,
-		'module': u'Production',
-		'name': '__common__',
-		'section_style': u'Simple',
-		'server_code_error': u' ',
-		'show_in_menu': 0,
-		'version': 19
-	},
-
-	# DocType, Production Control
-	{
-		'doctype': 'DocType',
-		'name': u'Production Control'
-	}
-]
\ No newline at end of file
diff --git a/production/doctype/production_order/production_order.js b/production/doctype/production_order/production_order.js
deleted file mode 100644
index 4a1600d..0000000
--- a/production/doctype/production_order/production_order.js
+++ /dev/null
@@ -1,103 +0,0 @@
-// ERPNext - web based ERP (http://erpnext.com)
-// Copyright (C) 2012 Web Notes Technologies Pvt Ltd
-// 
-// This program is free software: you can redistribute it and/or modify
-// it under the terms of the GNU General Public License as published by
-// the Free Software Foundation, either version 3 of the License, or
-// (at your option) any later version.
-// 
-// This program is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-// GNU General Public License for more details.
-// 
-// You should have received a copy of the GNU General Public License
-// along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-
-cur_frm.cscript.onload = function(doc, dt, dn) {
-  if (!doc.posting_date) doc.transaction_date = dateutil.obj_to_str(new Date());
-  if (!doc.status) doc.status = 'Draft';
-  cfn_set_fields(doc, dt, dn);
-}
-
-// ================================== Refresh ==========================================
-cur_frm.cscript.refresh = function(doc, dt, dn) { 
-  cfn_set_fields(doc, dt, dn);
-}
-
-var cfn_set_fields = function(doc, dt, dn) {
-  if (doc.docstatus == 1) {
-    if (doc.status != 'Stopped' && doc.status != 'Completed')
-	  cur_frm.add_custom_button('Stop!', cur_frm.cscript['Stop Production Order']);
-    else if (doc.status == 'Stopped')
-      cur_frm.add_custom_button('Unstop', cur_frm.cscript['Unstop Production Order']);
-
-    if (doc.status == 'Submitted' || doc.status == 'Material Transferred' || doc.status == 'In Process'){
-      cur_frm.add_custom_button('Transfer Material', cur_frm.cscript['Transfer Material']);
-      cur_frm.add_custom_button('Backflush', cur_frm.cscript['Backflush']);
-    } 
-  }
-}
-
-cur_frm.cscript.production_item = function(doc, dt, dn) {
-  get_server_fields('get_item_detail',doc.production_item,'',doc,dt,dn,1);
-}
-
-cur_frm.cscript['Stop Production Order'] = function() {
-  var doc = cur_frm.doc;
-  var check = confirm("Do you really want to stop production order: " + doc.name);
-  if (check) {
-    $c_obj(make_doclist(doc.doctype, doc.name), 'stop_unstop', 'Stopped', function(r, rt) {cur_frm.refresh();});
-	}
-}
-
-cur_frm.cscript['Unstop Production Order'] = function() {
-  var doc = cur_frm.doc;
-  var check = confirm("Do really want to unstop production order: " + doc.name);
-  if (check)
-      $c_obj(make_doclist(doc.doctype, doc.name), 'stop_unstop', 'Unstopped', function(r, rt) {cur_frm.refresh();});
-}
-
-cur_frm.cscript['Transfer Material'] = function() {
-  var doc = cur_frm.doc;
-  cur_frm.cscript.make_se(doc, process = 'Material Transfer');
-}
-
-cur_frm.cscript['Backflush'] = function() {
-  var doc = cur_frm.doc;
-  cur_frm.cscript.make_se(doc, process = 'Backflush');
-}
-
-cur_frm.cscript.make_se = function(doc, process) {
-  var se = wn.model.make_new_doc_and_get_name('Stock Entry');
-  se = locals['Stock Entry'][se];
-  se.purpose = 'Production Order';
-  se.process = process;
-  se.posting_date = doc.posting_date;
-  se.production_order = doc.name;
-  se.fiscal_year = doc.fiscal_year;
-  se.company = doc.company;
-  
-  loaddoc('Stock Entry', se.name);
-}
-
-cur_frm.fields_dict['production_item'].get_query = function(doc) {
-   return 'SELECT DISTINCT `tabItem`.`name`, `tabItem`.`description` FROM `tabItem` WHERE (IFNULL(`tabItem`.`end_of_life`,"") = "" OR `tabItem`.`end_of_life` = "0000-00-00" OR `tabItem`.`end_of_life` > NOW()) AND `tabItem`.docstatus != 2 AND `tabItem`.is_pro_applicable = "Yes" AND `tabItem`.%(key)s LIKE "%s" ORDER BY `tabItem`.`name` LIMIT 50';
-}
-
-cur_frm.fields_dict['project_name'].get_query = function(doc, dt, dn) {
-  return 'SELECT `tabProject`.name FROM `tabProject` \
-	  WHERE `tabProject`.status not in ("Completed", "Cancelled") \
-	  AND `tabProject`.name LIKE "%s" ORDER BY `tabProject`.name ASC LIMIT 50';
-}
-
-cur_frm.fields_dict['bom_no'].get_query = function(doc)  {
-  if (doc.production_item){
-    return 'SELECT DISTINCT `tabBOM`.`name` FROM `tabBOM` WHERE `tabBOM`.`is_active` = "Yes" AND `tabBOM`.docstatus = 1 AND `tabBOM`.`item` = "' + cstr(doc.production_item) + '" AND`tabBOM`.%(key)s LIKE "%s" ORDER BY `tabBOM`.`name` LIMIT 50';
-  }
-  else {
-    alert(" Please Enter Production Item First.")
-  }
-}
-
diff --git a/production/doctype/production_order/production_order.txt b/production/doctype/production_order/production_order.txt
deleted file mode 100644
index 64d0bad..0000000
--- a/production/doctype/production_order/production_order.txt
+++ /dev/null
@@ -1,323 +0,0 @@
-[
- {
-  "owner": "Administrator", 
-  "docstatus": 0, 
-  "creation": "2012-07-03 13:30:03", 
-  "modified_by": "Administrator", 
-  "modified": "2012-12-03 15:38:54"
- }, 
- {
-  "is_submittable": 1, 
-  "in_create": 0, 
-  "doctype": "DocType", 
-  "module": "Production", 
-  "name": "__common__"
- }, 
- {
-  "name": "__common__", 
-  "parent": "Production Order", 
-  "doctype": "DocField", 
-  "parenttype": "DocType", 
-  "parentfield": "fields"
- }, 
- {
-  "name": "__common__", 
-  "parent": "Production Order", 
-  "read": 1, 
-  "doctype": "DocPerm", 
-  "parenttype": "DocType", 
-  "parentfield": "permissions"
- }, 
- {
-  "name": "Production Order", 
-  "doctype": "DocType"
- }, 
- {
-  "doctype": "DocField", 
-  "width": "50%", 
-  "fieldname": "column_break0", 
-  "fieldtype": "Column Break", 
-  "permlevel": 0
- }, 
- {
-  "description": "Item for which this Production Order is raised.", 
-  "oldfieldtype": "Link", 
-  "colour": "White:FFF", 
-  "doctype": "DocField", 
-  "label": "Production Item", 
-  "oldfieldname": "production_item", 
-  "permlevel": 0, 
-  "trigger": "Client", 
-  "fieldname": "production_item", 
-  "fieldtype": "Link", 
-  "reqd": 1, 
-  "in_filter": 1, 
-  "options": "Item"
- }, 
- {
-  "description": "Bill of Material which was considered for manufacturing the production item.", 
-  "oldfieldtype": "Link", 
-  "colour": "White:FFF", 
-  "doctype": "DocField", 
-  "label": "BOM No", 
-  "oldfieldname": "bom_no", 
-  "permlevel": 0, 
-  "trigger": "Client", 
-  "fieldname": "bom_no", 
-  "fieldtype": "Link", 
-  "reqd": 1, 
-  "options": "BOM"
- }, 
- {
-  "description": "Quantity of item for which Production Order is raised.", 
-  "oldfieldtype": "Currency", 
-  "colour": "White:FFF", 
-  "doctype": "DocField", 
-  "label": "Qty", 
-  "oldfieldname": "qty", 
-  "fieldname": "qty", 
-  "fieldtype": "Currency", 
-  "reqd": 1, 
-  "permlevel": 0
- }, 
- {
-  "description": "The date on which current entry will get or has actually executed.", 
-  "oldfieldtype": "Date", 
-  "colour": "White:FFF", 
-  "doctype": "DocField", 
-  "label": "Posting Date", 
-  "oldfieldname": "posting_date", 
-  "fieldname": "posting_date", 
-  "fieldtype": "Date", 
-  "reqd": 1, 
-  "permlevel": 0
- }, 
- {
-  "oldfieldtype": "Column Break", 
-  "doctype": "DocField", 
-  "width": "50%", 
-  "fieldname": "column_break1", 
-  "fieldtype": "Column Break", 
-  "permlevel": 0
- }, 
- {
-  "description": "The warehouse for finished goods where stock of produced items will be updated.", 
-  "oldfieldtype": "Link", 
-  "colour": "White:FFF", 
-  "doctype": "DocField", 
-  "label": "FG Warehouse", 
-  "oldfieldname": "fg_warehouse", 
-  "permlevel": 0, 
-  "fieldname": "fg_warehouse", 
-  "fieldtype": "Link", 
-  "reqd": 1, 
-  "in_filter": 1, 
-  "options": "Warehouse"
- }, 
- {
-  "description": "The work in progress warehouse where raw materials will be operated upon to create finished goods.", 
-  "oldfieldtype": "Link", 
-  "colour": "White:FFF", 
-  "doctype": "DocField", 
-  "label": "WIP Warehouse", 
-  "oldfieldname": "wip_warehouse", 
-  "permlevel": 0, 
-  "fieldname": "wip_warehouse", 
-  "fieldtype": "Link", 
-  "reqd": 1, 
-  "in_filter": 1, 
-  "options": "Warehouse"
- }, 
- {
-  "description": "If checked, BOM for sub-assembly items will be considered for getting raw materials. Otherwise, all sub-assembly items will be treated as a raw material.", 
-  "default": "1", 
-  "oldfieldtype": "Select", 
-  "colour": "White:FFF", 
-  "doctype": "DocField", 
-  "label": "Use Multi-Level BOM", 
-  "oldfieldname": "consider_sa_items", 
-  "fieldname": "use_multi_level_bom", 
-  "fieldtype": "Check", 
-  "reqd": 0, 
-  "in_filter": 1, 
-  "permlevel": 0
- }, 
- {
-  "description": "Updated after finished goods are transferred to FG Warehouse through Stock Entry", 
-  "no_copy": 1, 
-  "oldfieldtype": "Currency", 
-  "colour": "White:FFF", 
-  "doctype": "DocField", 
-  "label": "Produced Qty", 
-  "oldfieldname": "produced_qty", 
-  "fieldname": "produced_qty", 
-  "fieldtype": "Currency", 
-  "permlevel": 1
- }, 
- {
-  "doctype": "DocField", 
-  "label": "More Info", 
-  "fieldname": "more_info", 
-  "fieldtype": "Section Break", 
-  "permlevel": 0
- }, 
- {
-  "doctype": "DocField", 
-  "width": "50%", 
-  "fieldname": "column_break2", 
-  "fieldtype": "Column Break", 
-  "permlevel": 0
- }, 
- {
-  "no_copy": 1, 
-  "oldfieldtype": "Select", 
-  "doctype": "DocField", 
-  "label": "Origin", 
-  "oldfieldname": "origin", 
-  "options": "Manual\nMRP", 
-  "fieldname": "origin", 
-  "fieldtype": "Select", 
-  "reqd": 1, 
-  "permlevel": 0, 
-  "in_filter": 1
- }, 
- {
-  "no_copy": 1, 
-  "oldfieldtype": "Select", 
-  "doctype": "DocField", 
-  "label": "Status", 
-  "oldfieldname": "status", 
-  "permlevel": 1, 
-  "fieldname": "status", 
-  "fieldtype": "Select", 
-  "search_index": 1, 
-  "reqd": 1, 
-  "options": "\nDraft\nSubmitted\nStopped\nIn Process\nCompleted\nCancelled", 
-  "in_filter": 1
- }, 
- {
-  "doctype": "DocField", 
-  "label": "Sales Order", 
-  "options": "Sales Order", 
-  "fieldname": "sales_order", 
-  "fieldtype": "Link", 
-  "permlevel": 0
- }, 
- {
-  "description": "Select name of the project if Production Order need to be created against any project", 
-  "oldfieldtype": "Link", 
-  "label": "Project Name", 
-  "oldfieldname": "project_name", 
-  "trigger": "Client", 
-  "fieldname": "project_name", 
-  "fieldtype": "Link", 
-  "doctype": "DocField", 
-  "options": "Project", 
-  "permlevel": 0, 
-  "in_filter": 1
- }, 
- {
-  "oldfieldtype": "Link", 
-  "doctype": "DocField", 
-  "label": "Company", 
-  "oldfieldname": "company", 
-  "options": "Company", 
-  "fieldname": "company", 
-  "fieldtype": "Link", 
-  "reqd": 1, 
-  "permlevel": 0
- }, 
- {
-  "oldfieldtype": "Select", 
-  "doctype": "DocField", 
-  "label": "Fiscal Year", 
-  "oldfieldname": "fiscal_year", 
-  "options": "link:Fiscal Year", 
-  "fieldname": "fiscal_year", 
-  "fieldtype": "Select", 
-  "reqd": 1, 
-  "permlevel": 0, 
-  "in_filter": 1
- }, 
- {
-  "no_copy": 1, 
-  "oldfieldtype": "Data", 
-  "doctype": "DocField", 
-  "label": "Amended From", 
-  "oldfieldname": "amended_from", 
-  "fieldname": "amended_from", 
-  "fieldtype": "Data", 
-  "permlevel": 1
- }, 
- {
-  "no_copy": 1, 
-  "oldfieldtype": "Date", 
-  "doctype": "DocField", 
-  "label": "Amendment Date", 
-  "oldfieldname": "amendment_date", 
-  "fieldname": "amendment_date", 
-  "fieldtype": "Date", 
-  "permlevel": 1
- }, 
- {
-  "doctype": "DocField", 
-  "width": "50%", 
-  "fieldname": "column_break3", 
-  "fieldtype": "Column Break", 
-  "permlevel": 0
- }, 
- {
-  "oldfieldtype": "Data", 
-  "doctype": "DocField", 
-  "label": "Stock UOM", 
-  "oldfieldname": "stock_uom", 
-  "fieldname": "stock_uom", 
-  "fieldtype": "Data", 
-  "permlevel": 1
- }, 
- {
-  "oldfieldtype": "Text", 
-  "doctype": "DocField", 
-  "label": "Production Item Description", 
-  "oldfieldname": "description", 
-  "width": "300px", 
-  "fieldname": "description", 
-  "fieldtype": "Text", 
-  "permlevel": 0
- }, 
- {
-  "amend": 1, 
-  "create": 1, 
-  "doctype": "DocPerm", 
-  "submit": 1, 
-  "write": 1, 
-  "role": "System Manager", 
-  "cancel": 1, 
-  "permlevel": 0
- }, 
- {
-  "doctype": "DocPerm", 
-  "role": "All", 
-  "permlevel": 1
- }, 
- {
-  "amend": 1, 
-  "create": 1, 
-  "doctype": "DocPerm", 
-  "submit": 1, 
-  "write": 1, 
-  "role": "Production Manager", 
-  "cancel": 1, 
-  "permlevel": 0
- }, 
- {
-  "amend": 1, 
-  "create": 1, 
-  "doctype": "DocPerm", 
-  "submit": 1, 
-  "write": 1, 
-  "role": "Production User", 
-  "cancel": 1, 
-  "permlevel": 0
- }
-]
\ No newline at end of file
diff --git a/production/doctype/workstation/workstation.txt b/production/doctype/workstation/workstation.txt
deleted file mode 100644
index f625971..0000000
--- a/production/doctype/workstation/workstation.txt
+++ /dev/null
@@ -1,268 +0,0 @@
-# DocType, Workstation
-[
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:36:05',
-		'docstatus': 0,
-		'modified': '2012-03-27 18:46:49',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'_last_update': u'1322125389',
-		'allow_email': 0,
-		'allow_trash': 1,
-		'autoname': u'field:workstation_name',
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'document_type': u'Master',
-		'module': u'Production',
-		'name': '__common__',
-		'section_style': u'Simple',
-		'server_code_error': u' ',
-		'show_in_menu': 0,
-		'version': 14
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'Workstation',
-		'parentfield': u'fields',
-		'parenttype': u'DocType'
-	},
-
-	# These values are common for all DocPerm
-	{
-		'doctype': u'DocPerm',
-		'name': '__common__',
-		'parent': u'Workstation',
-		'parentfield': u'permissions',
-		'parenttype': u'DocType',
-		'read': 1
-	},
-
-	# DocType, Workstation
-	{
-		'doctype': 'DocType',
-		'name': u'Workstation'
-	},
-
-	# DocPerm
-	{
-		'cancel': 1,
-		'create': 1,
-		'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'System Manager',
-		'write': 1
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm',
-		'permlevel': 1,
-		'role': u'System Manager'
-	},
-
-	# DocPerm
-	{
-		'cancel': 1,
-		'create': 1,
-		'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'Production User',
-		'write': 1
-	},
-
-	# DocPerm
-	{
-		'cancel': 1,
-		'create': 1,
-		'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'Production User',
-		'write': 1
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm',
-		'permlevel': 1,
-		'role': u'Production Manager'
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm',
-		'permlevel': 1,
-		'role': u'Production User'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'trash_reason',
-		'fieldtype': u'Small Text',
-		'label': u'Trash Reason',
-		'oldfieldname': u'trash_reason',
-		'oldfieldtype': u'Small Text',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'workstation_name',
-		'fieldtype': u'Data',
-		'label': u'Workstation Name',
-		'oldfieldname': u'workstation_name',
-		'oldfieldtype': u'Data',
-		'permlevel': 0,
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'warehouse',
-		'fieldtype': u'Link',
-		'label': u'Warehouse',
-		'oldfieldname': u'warehouse',
-		'oldfieldtype': u'Link',
-		'options': u'Warehouse',
-		'permlevel': 0,
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'description',
-		'fieldtype': u'Text',
-		'label': u'Description',
-		'oldfieldname': u'description',
-		'oldfieldtype': u'Text',
-		'permlevel': 0,
-		'width': u'300px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'capacity',
-		'fieldtype': u'Data',
-		'hidden': 1,
-		'label': u'Capacity',
-		'oldfieldname': u'capacity',
-		'oldfieldtype': u'Data',
-		'permlevel': 0,
-		'reqd': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'capacity_units',
-		'fieldtype': u'Select',
-		'hidden': 1,
-		'label': u'Capacity Units',
-		'oldfieldname': u'capacity_units',
-		'oldfieldtype': u'Select',
-		'options': u'\nUnits/Shifts\nUnits/Hour',
-		'permlevel': 0,
-		'reqd': 0
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'doctype': u'DocField',
-		'fieldname': u'hour_rate_labour',
-		'fieldtype': u'Currency',
-		'label': u'Hour Rate Labour',
-		'oldfieldname': u'hour_rate_labour',
-		'oldfieldtype': u'Currency',
-		'permlevel': 0,
-		'reqd': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'over_heads',
-		'fieldtype': u'Section Break',
-		'label': u'Over Heads',
-		'oldfieldtype': u'Section Break',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'hour_rate_electricity',
-		'fieldtype': u'Currency',
-		'label': u'Hour Rate Electricity',
-		'oldfieldname': u'hour_rate_electricity',
-		'oldfieldtype': u'Currency',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'hour_rate_consumable',
-		'fieldtype': u'Currency',
-		'label': u'Hour Rate Consumable',
-		'oldfieldname': u'hour_rate_consumable',
-		'oldfieldtype': u'Currency',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'hour_rate_rent',
-		'fieldtype': u'Currency',
-		'label': u'Hour Rate Rent',
-		'oldfieldname': u'hour_rate_rent',
-		'oldfieldtype': u'Currency',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'overhead',
-		'fieldtype': u'Currency',
-		'label': u'Overhead',
-		'oldfieldname': u'overhead',
-		'oldfieldtype': u'Currency',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'hour_rate_section_break',
-		'fieldtype': u'Section Break',
-		'label': u'Hour Rate',
-		'oldfieldtype': u'Section Break',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'hour_rate',
-		'fieldtype': u'Currency',
-		'label': u'Hour Rate',
-		'oldfieldname': u'hour_rate',
-		'oldfieldtype': u'Currency',
-		'permlevel': 1
-	}
-]
\ No newline at end of file
diff --git a/production/page/production_home/production_home.txt b/production/page/production_home/production_home.txt
deleted file mode 100644
index 4f6cabb..0000000
--- a/production/page/production_home/production_home.txt
+++ /dev/null
@@ -1,28 +0,0 @@
-# Page, production-home
-[
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-02-21 13:24:34',
-		'docstatus': 0,
-		'modified': '2012-02-21 13:24:34',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all Page
-	{
-		'doctype': 'Page',
-		'module': u'Production',
-		'name': '__common__',
-		'page_name': u'production-home',
-		'standard': u'Yes',
-		'title': u'Production Home'
-	},
-
-	# Page, production-home
-	{
-		'doctype': 'Page',
-		'name': u'production-home'
-	}
-]
\ No newline at end of file
diff --git a/production/search_criteria/consumption_against_production/consumption_against_production.txt b/production/search_criteria/consumption_against_production/consumption_against_production.txt
deleted file mode 100644
index 54d6a19..0000000
--- a/production/search_criteria/consumption_against_production/consumption_against_production.txt
+++ /dev/null
@@ -1,37 +0,0 @@
-# Search Criteria, consumption_against_production
-[
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-04-03 12:49:50',
-		'docstatus': 0,
-		'modified': '2012-04-03 12:49:50',
-		'modified_by': u'Administrator',
-		'owner': u'jai@webnotestech.com'
-	},
-
-	# These values are common for all Search Criteria
-	{
-		'add_col': u'`tabProduction Order`.consider_sa_items',
-		'add_cond': u'`tabProduction Order`.name = `tabStock Entry`.production_order',
-		'add_tab': u'`tabProduction Order`',
-		'columns': u'Stock Entry\x01ID,Stock Entry\x01Production Order,Stock Entry\x01Process,Stock Entry\x01Posting Date,Stock Entry\x01Company,Stock Entry Detail\x01Source Warehouse,Stock Entry Detail\x01Target Warehouse,Stock Entry Detail\x01FG Item,Stock Entry Detail\x01Item Code,Stock Entry Detail\x01Description,Stock Entry Detail\x01Reqd Qty,Stock Entry Detail\x01Transfer Quantity',
-		'criteria_name': u'Consumption Against Production',
-		'doc_type': u'Stock Entry Detail',
-		'doctype': 'Search Criteria',
-		'filters': u"{'Stock Entry\x01Submitted':1,'Stock Entry\x01Purpose':'Production Order','Stock Entry\x01Process':''}",
-		'module': u'Production',
-		'name': '__common__',
-		'page_len': 50,
-		'parent_doc_type': u'Stock Entry',
-		'sort_by': u'`tabStock Entry`.`name`',
-		'sort_order': u'DESC',
-		'standard': u'Yes'
-	},
-
-	# Search Criteria, consumption_against_production
-	{
-		'doctype': 'Search Criteria',
-		'name': u'consumption_against_production'
-	}
-]
\ No newline at end of file
diff --git a/production/search_criteria/itemwise_production_report/itemwise_production_report.txt b/production/search_criteria/itemwise_production_report/itemwise_production_report.txt
deleted file mode 100644
index 6f0c3eb..0000000
--- a/production/search_criteria/itemwise_production_report/itemwise_production_report.txt
+++ /dev/null
@@ -1,34 +0,0 @@
-# Search Criteria, itemwise_production_report
-[
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-04-03 12:49:51',
-		'docstatus': 0,
-		'modified': '2012-04-03 12:49:51',
-		'modified_by': u'Administrator',
-		'owner': u'jai@webnotestech.com'
-	},
-
-	# These values are common for all Search Criteria
-	{
-		'columns': u'Stock Entry\x01ID,Stock Entry\x01Posting Date,Stock Entry\x01Production Order,Stock Entry\x01Process,Stock Entry\x01Company,Stock Entry Detail\x01Target Warehouse,Stock Entry Detail\x01Item Code,Stock Entry Detail\x01Description,Stock Entry Detail\x01Stock UOM,Stock Entry Detail\x01Transfer Quantity',
-		'criteria_name': u'Itemwise Production Report',
-		'doc_type': u'Stock Entry Detail',
-		'doctype': 'Search Criteria',
-		'filters': u"{'Stock Entry\x01Saved':1,'Stock Entry\x01Submitted':1,'Stock Entry\x01Purpose':'Production Order','Stock Entry\x01Process':'Backflush','Stock Entry Detail\x01FG Item':1}",
-		'module': u'Production',
-		'name': '__common__',
-		'page_len': 50,
-		'parent_doc_type': u'Stock Entry',
-		'sort_by': u'`tabStock Entry`.`name`',
-		'sort_order': u'DESC',
-		'standard': u'Yes'
-	},
-
-	# Search Criteria, itemwise_production_report
-	{
-		'doctype': 'Search Criteria',
-		'name': u'itemwise_production_report'
-	}
-]
\ No newline at end of file
diff --git a/production/search_criteria/production_orders_in_process/production_orders_in_process.txt b/production/search_criteria/production_orders_in_process/production_orders_in_process.txt
deleted file mode 100644
index 51eb1f4..0000000
--- a/production/search_criteria/production_orders_in_process/production_orders_in_process.txt
+++ /dev/null
@@ -1,34 +0,0 @@
-# Search Criteria, production_orders_in_process
-[
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-04-03 12:49:52',
-		'docstatus': 0,
-		'modified': '2012-04-03 12:49:52',
-		'modified_by': u'Administrator',
-		'owner': u'jai@webnotestech.com'
-	},
-
-	# These values are common for all Search Criteria
-	{
-		'add_cond': u'`tabProduction Order`.qty > `tabProduction Order`.produced_qty',
-		'columns': u'Production Order\x01ID,Production Order\x01Origin,Production Order\x01Status,Production Order\x01Posting Date,Production Order\x01Production Item,Production Order\x01BOM No,Production Order\x01Description,Production Order\x01Stock UOM,Production Order\x01Qty,Production Order\x01Produced Qty,Production Order\x01FG Warehouse,Production Order\x01WIP Warehouse,Production Order\x01Consider SA Items,Production Order\x01Fiscal Year,Production Order\x01Company',
-		'criteria_name': u'Production Orders In Process',
-		'doc_type': u'Production Order',
-		'doctype': 'Search Criteria',
-		'filters': u"{'Production Order\x01Submitted':1,'Production Order\x01Origin':'','Production Order\x01Status':'','Production Order\x01Consider SA Items':'','Production Order\x01Fiscal Year':''}",
-		'module': u'Production',
-		'name': '__common__',
-		'page_len': 50,
-		'sort_by': u'`tabProduction Order`.`name`',
-		'sort_order': u'DESC',
-		'standard': u'Yes'
-	},
-
-	# Search Criteria, production_orders_in_process
-	{
-		'doctype': 'Search Criteria',
-		'name': u'production_orders_in_process'
-	}
-]
\ No newline at end of file
diff --git a/projects/doctype/activity_type/activity_type.txt b/projects/doctype/activity_type/activity_type.txt
index fa7f514..decb90d 100644
--- a/projects/doctype/activity_type/activity_type.txt
+++ b/projects/doctype/activity_type/activity_type.txt
@@ -1,76 +1,59 @@
-# DocType, Activity Type
 [
-
-	# These values are common in all dictionaries
-	{
-		u'creation': '2012-07-03 13:30:51',
-		u'docstatus': 0,
-		u'modified': '2012-11-16 12:14:21',
-		u'modified_by': u'Administrator',
-		u'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'autoname': u'field:activity_type',
-		'colour': u'White:FFF',
-		u'doctype': u'DocType',
-		'document_type': u'Master',
-		'in_dialog': 1,
-		'module': u'Projects',
-		u'name': u'__common__',
-		'section_style': u'Simple',
-		'server_code_error': u' ',
-		'version': 1
-	},
-
-	# These values are common for all DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'activity_type',
-		'fieldtype': u'Data',
-		'label': u'Activity Type',
-		u'name': u'__common__',
-		'parent': u'Activity Type',
-		'parentfield': u'fields',
-		'parenttype': u'DocType',
-		'permlevel': 0,
-		'reqd': 1
-	},
-
-	# These values are common for all DocPerm
-	{
-		'create': 1,
-		u'doctype': u'DocPerm',
-		u'name': u'__common__',
-		'parent': u'Activity Type',
-		'parentfield': u'permissions',
-		'parenttype': u'DocType',
-		'permlevel': 0,
-		'read': 1,
-		'write': 1
-	},
-
-	# DocType, Activity Type
-	{
-		u'doctype': u'DocType',
-		u'name': u'Activity Type'
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField'
-	},
-
-	# DocPerm
-	{
-		u'doctype': u'DocPerm',
-		'role': u'System Manager'
-	},
-
-	# DocPerm
-	{
-		u'doctype': u'DocPerm',
-		'role': u'Projects User'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-07-03 13:30:51", 
+  "modified_by": "Administrator", 
+  "modified": "2012-11-16 12:14:21"
+ }, 
+ {
+  "section_style": "Simple", 
+  "module": "Projects", 
+  "in_dialog": 1, 
+  "autoname": "field:activity_type", 
+  "document_type": "Master", 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "doctype": "DocType", 
+  "server_code_error": " ", 
+  "version": 1
+ }, 
+ {
+  "parent": "Activity Type", 
+  "name": "__common__", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "fieldname": "activity_type", 
+  "fieldtype": "Data", 
+  "reqd": 1, 
+  "label": "Activity Type", 
+  "permlevel": 0, 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Activity Type", 
+  "read": 1, 
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "write": 1, 
+  "parenttype": "DocType", 
+  "permlevel": 0, 
+  "parentfield": "permissions"
+ }, 
+ {
+  "name": "Activity Type", 
+  "doctype": "DocType"
+ }, 
+ {
+  "doctype": "DocField"
+ }, 
+ {
+  "role": "System Manager", 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "role": "Projects User", 
+  "doctype": "DocPerm"
+ }
 ]
\ No newline at end of file
diff --git a/projects/doctype/project_milestone/project_milestone.txt b/projects/doctype/project_milestone/project_milestone.txt
index 4430c7d..29ea15b 100644
--- a/projects/doctype/project_milestone/project_milestone.txt
+++ b/projects/doctype/project_milestone/project_milestone.txt
@@ -1,73 +1,58 @@
-# DocType, Project Milestone
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:36:06',
-		'docstatus': 0,
-		'modified': '2012-03-27 14:36:06',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'istable': 1,
-		'module': u'Projects',
-		'name': '__common__',
-		'section_style': u'Simple',
-		'server_code_error': u' ',
-		'version': 4
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'Project Milestone',
-		'parentfield': u'fields',
-		'parenttype': u'DocType',
-		'permlevel': 0
-	},
-
-	# DocType, Project Milestone
-	{
-		'doctype': 'DocType',
-		'name': u'Project Milestone'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'milestone_date',
-		'fieldtype': u'Date',
-		'label': u'Milestone Date',
-		'oldfieldname': u'milestone_date',
-		'oldfieldtype': u'Date'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'milestone',
-		'fieldtype': u'Text',
-		'label': u'Milestone',
-		'oldfieldname': u'milestone',
-		'oldfieldtype': u'Text',
-		'width': u'300px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'status',
-		'fieldtype': u'Select',
-		'label': u'Status',
-		'no_copy': 1,
-		'oldfieldname': u'status',
-		'oldfieldtype': u'Select',
-		'options': u'Pending\nCompleted'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-03-27 14:36:06", 
+  "modified_by": "Administrator", 
+  "modified": "2012-03-27 14:36:06"
+ }, 
+ {
+  "section_style": "Simple", 
+  "istable": 1, 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "module": "Projects", 
+  "doctype": "DocType", 
+  "version": 4, 
+  "server_code_error": " "
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Project Milestone", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "permlevel": 0, 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "Project Milestone", 
+  "doctype": "DocType"
+ }, 
+ {
+  "oldfieldtype": "Date", 
+  "doctype": "DocField", 
+  "label": "Milestone Date", 
+  "oldfieldname": "milestone_date", 
+  "fieldname": "milestone_date", 
+  "fieldtype": "Date"
+ }, 
+ {
+  "oldfieldtype": "Text", 
+  "doctype": "DocField", 
+  "label": "Milestone", 
+  "oldfieldname": "milestone", 
+  "width": "300px", 
+  "fieldname": "milestone", 
+  "fieldtype": "Text"
+ }, 
+ {
+  "no_copy": 1, 
+  "oldfieldtype": "Select", 
+  "doctype": "DocField", 
+  "label": "Status", 
+  "oldfieldname": "status", 
+  "fieldname": "status", 
+  "fieldtype": "Select", 
+  "options": "Pending\nCompleted"
+ }
 ]
\ No newline at end of file
diff --git a/projects/doctype/task/task.txt b/projects/doctype/task/task.txt
index 3fcf1e3..a7ada4b 100644
--- a/projects/doctype/task/task.txt
+++ b/projects/doctype/task/task.txt
@@ -1,327 +1,266 @@
-# DocType, Task
 [
-
-	# These values are common in all dictionaries
-	{
-		u'creation': '2012-09-18 11:05:48',
-		u'docstatus': 0,
-		u'modified': '2012-10-29 14:24:55',
-		u'modified_by': u'Administrator',
-		u'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'_last_update': u'1324880734',
-		'allow_attach': 1,
-		'allow_trash': 1,
-		'autoname': u'TASK.#####',
-		'colour': u'White:FFF',
-		u'doctype': u'DocType',
-		'document_type': u'Master',
-		'max_attachments': 5,
-		'module': u'Projects',
-		u'name': u'__common__',
-		'section_style': u'Tray',
-		'server_code_error': u' ',
-		'show_in_menu': 0,
-		'subject': u'%(subject)s',
-		'tag_fields': u'status',
-		'version': 1
-	},
-
-	# These values are common for all DocField
-	{
-		u'doctype': u'DocField',
-		u'name': u'__common__',
-		'parent': u'Task',
-		'parentfield': u'fields',
-		'parenttype': u'DocType',
-		'permlevel': 0
-	},
-
-	# These values are common for all DocPerm
-	{
-		u'doctype': u'DocPerm',
-		u'name': u'__common__',
-		'parent': u'Task',
-		'parentfield': u'permissions',
-		'parenttype': u'DocType',
-		'read': 1,
-		'role': u'Projects User'
-	},
-
-	# DocType, Task
-	{
-		u'doctype': u'DocType',
-		u'name': u'Task'
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'task_details',
-		'fieldtype': u'Section Break',
-		'label': u'Task Details',
-		'oldfieldtype': u'Section Break',
-		'search_index': 0,
-		'width': u'50%'
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'subject',
-		'fieldtype': u'Data',
-		'in_filter': 1,
-		'label': u'Subject',
-		'oldfieldname': u'subject',
-		'oldfieldtype': u'Data',
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'exp_start_date',
-		'fieldtype': u'Date',
-		'label': u'Expected Start Date',
-		'oldfieldname': u'exp_start_date',
-		'oldfieldtype': u'Date',
-		'reqd': 0
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'exp_end_date',
-		'fieldtype': u'Date',
-		'in_filter': 1,
-		'label': u'Expected End Date',
-		'oldfieldname': u'exp_end_date',
-		'oldfieldtype': u'Date',
-		'reqd': 0,
-		'search_index': 1
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'column_break0',
-		'fieldtype': u'Column Break',
-		'oldfieldtype': u'Column Break',
-		'width': u'50%'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		u'doctype': u'DocField',
-		'fieldname': u'project',
-		'fieldtype': u'Link',
-		'label': u'Project',
-		'oldfieldname': u'project',
-		'oldfieldtype': u'Link',
-		'options': u'Project',
-		'trigger': u'Client'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		u'doctype': u'DocField',
-		'fieldname': u'status',
-		'fieldtype': u'Select',
-		'label': u'Status',
-		'no_copy': 1,
-		'oldfieldname': u'status',
-		'oldfieldtype': u'Select',
-		'options': u'Open\nWorking\nPending Review\nClosed\nCancelled',
-		'trigger': u'Client'
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'priority',
-		'fieldtype': u'Select',
-		'in_filter': 1,
-		'label': u'Priority',
-		'oldfieldname': u'priority',
-		'oldfieldtype': u'Select',
-		'options': u'Low\nMedium\nHigh\nUrgent',
-		'reqd': 0,
-		'search_index': 1
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'section_break0',
-		'fieldtype': u'Section Break',
-		'oldfieldtype': u'Section Break',
-		'options': u'Simple'
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'description',
-		'fieldtype': u'Text Editor',
-		'label': u'Details',
-		'oldfieldname': u'description',
-		'oldfieldtype': u'Text Editor',
-		'reqd': 0,
-		'width': u'300px'
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'time_and_budget',
-		'fieldtype': u'Section Break',
-		'label': u'Time and Budget',
-		'oldfieldtype': u'Section Break'
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'expected',
-		'fieldtype': u'Column Break',
-		'label': u'Expected',
-		'oldfieldtype': u'Column Break',
-		'width': u'50%'
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'exp_total_hrs',
-		'fieldtype': u'Data',
-		'label': u'Total Hours (Expected)',
-		'oldfieldname': u'exp_total_hrs',
-		'oldfieldtype': u'Data',
-		'reqd': 0
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'allocated_budget',
-		'fieldtype': u'Currency',
-		'label': u'Allocated Budget',
-		'oldfieldname': u'allocated_budget',
-		'oldfieldtype': u'Currency'
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'actual',
-		'fieldtype': u'Column Break',
-		'label': u'Actual',
-		'oldfieldtype': u'Column Break',
-		'width': u'50%'
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'act_start_date',
-		'fieldtype': u'Date',
-		'label': u'Actual Start Date',
-		'oldfieldname': u'act_start_date',
-		'oldfieldtype': u'Date'
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'act_end_date',
-		'fieldtype': u'Date',
-		'label': u'Actual End Date',
-		'oldfieldname': u'act_end_date',
-		'oldfieldtype': u'Date'
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'act_total_hrs',
-		'fieldtype': u'Data',
-		'label': u'Total Hours (Actual)',
-		'oldfieldname': u'act_total_hrs',
-		'oldfieldtype': u'Data'
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'actual_budget',
-		'fieldtype': u'Currency',
-		'label': u'Actual Budget',
-		'oldfieldname': u'actual_budget',
-		'oldfieldtype': u'Currency'
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'more_details',
-		'fieldtype': u'Section Break',
-		'label': u'More Details'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'depends_on': u'eval:doc.status == "Closed" || doc.status == "Pending Review"',
-		u'doctype': u'DocField',
-		'fieldname': u'review_date',
-		'fieldtype': u'Date',
-		'hidden': 1,
-		'label': u'Review Date',
-		'oldfieldname': u'review_date',
-		'oldfieldtype': u'Date'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'depends_on': u'eval:doc.status == "Closed"',
-		u'doctype': u'DocField',
-		'fieldname': u'closing_date',
-		'fieldtype': u'Date',
-		'hidden': 1,
-		'label': u'Closing Date',
-		'oldfieldname': u'closing_date',
-		'oldfieldtype': u'Date'
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'file_list',
-		'fieldtype': u'Text',
-		'hidden': 1,
-		'label': u'File List',
-		'no_copy': 1,
-		'print_hide': 1
-	},
-
-	# DocPerm
-	{
-		'cancel': 1,
-		'create': 1,
-		u'doctype': u'DocPerm',
-		'permlevel': 0,
-		'write': 1
-	},
-
-	# DocPerm
-	{
-		u'doctype': u'DocPerm',
-		'permlevel': 1
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-09-18 11:05:48", 
+  "modified_by": "Administrator", 
+  "modified": "2012-10-29 14:24:55"
+ }, 
+ {
+  "section_style": "Tray", 
+  "allow_attach": 1, 
+  "tag_fields": "status", 
+  "module": "Projects", 
+  "server_code_error": " ", 
+  "allow_trash": 1, 
+  "doctype": "DocType", 
+  "document_type": "Master", 
+  "subject": "%(subject)s", 
+  "autoname": "TASK.#####", 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "_last_update": "1324880734", 
+  "show_in_menu": 0, 
+  "max_attachments": 5, 
+  "version": 1
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Task", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "permlevel": 0, 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Task", 
+  "read": 1, 
+  "doctype": "DocPerm", 
+  "parenttype": "DocType", 
+  "role": "Projects User", 
+  "parentfield": "permissions"
+ }, 
+ {
+  "name": "Task", 
+  "doctype": "DocType"
+ }, 
+ {
+  "oldfieldtype": "Section Break", 
+  "doctype": "DocField", 
+  "label": "Task Details", 
+  "width": "50%", 
+  "fieldname": "task_details", 
+  "fieldtype": "Section Break", 
+  "search_index": 0
+ }, 
+ {
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Subject", 
+  "oldfieldname": "subject", 
+  "fieldname": "subject", 
+  "fieldtype": "Data", 
+  "reqd": 1, 
+  "in_filter": 1
+ }, 
+ {
+  "oldfieldtype": "Date", 
+  "doctype": "DocField", 
+  "label": "Expected Start Date", 
+  "oldfieldname": "exp_start_date", 
+  "fieldname": "exp_start_date", 
+  "fieldtype": "Date", 
+  "reqd": 0
+ }, 
+ {
+  "search_index": 1, 
+  "doctype": "DocField", 
+  "label": "Expected End Date", 
+  "oldfieldname": "exp_end_date", 
+  "fieldname": "exp_end_date", 
+  "fieldtype": "Date", 
+  "oldfieldtype": "Date", 
+  "reqd": 0, 
+  "in_filter": 1
+ }, 
+ {
+  "oldfieldtype": "Column Break", 
+  "doctype": "DocField", 
+  "width": "50%", 
+  "fieldname": "column_break0", 
+  "fieldtype": "Column Break"
+ }, 
+ {
+  "oldfieldtype": "Link", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Project", 
+  "oldfieldname": "project", 
+  "trigger": "Client", 
+  "fieldname": "project", 
+  "fieldtype": "Link", 
+  "options": "Project"
+ }, 
+ {
+  "no_copy": 1, 
+  "oldfieldtype": "Select", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Status", 
+  "oldfieldname": "status", 
+  "trigger": "Client", 
+  "fieldname": "status", 
+  "fieldtype": "Select", 
+  "options": "Open\nWorking\nPending Review\nClosed\nCancelled"
+ }, 
+ {
+  "search_index": 1, 
+  "doctype": "DocField", 
+  "label": "Priority", 
+  "oldfieldname": "priority", 
+  "fieldname": "priority", 
+  "fieldtype": "Select", 
+  "oldfieldtype": "Select", 
+  "reqd": 0, 
+  "options": "Low\nMedium\nHigh\nUrgent", 
+  "in_filter": 1
+ }, 
+ {
+  "oldfieldtype": "Section Break", 
+  "doctype": "DocField", 
+  "fieldname": "section_break0", 
+  "fieldtype": "Section Break", 
+  "options": "Simple"
+ }, 
+ {
+  "oldfieldtype": "Text Editor", 
+  "doctype": "DocField", 
+  "label": "Details", 
+  "oldfieldname": "description", 
+  "width": "300px", 
+  "fieldname": "description", 
+  "fieldtype": "Text Editor", 
+  "reqd": 0
+ }, 
+ {
+  "oldfieldtype": "Section Break", 
+  "doctype": "DocField", 
+  "label": "Time and Budget", 
+  "fieldname": "time_and_budget", 
+  "fieldtype": "Section Break"
+ }, 
+ {
+  "oldfieldtype": "Column Break", 
+  "doctype": "DocField", 
+  "label": "Expected", 
+  "width": "50%", 
+  "fieldname": "expected", 
+  "fieldtype": "Column Break"
+ }, 
+ {
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Total Hours (Expected)", 
+  "oldfieldname": "exp_total_hrs", 
+  "fieldname": "exp_total_hrs", 
+  "fieldtype": "Data", 
+  "reqd": 0
+ }, 
+ {
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Allocated Budget", 
+  "oldfieldname": "allocated_budget", 
+  "fieldname": "allocated_budget", 
+  "fieldtype": "Currency"
+ }, 
+ {
+  "oldfieldtype": "Column Break", 
+  "doctype": "DocField", 
+  "label": "Actual", 
+  "width": "50%", 
+  "fieldname": "actual", 
+  "fieldtype": "Column Break"
+ }, 
+ {
+  "oldfieldtype": "Date", 
+  "doctype": "DocField", 
+  "label": "Actual Start Date", 
+  "oldfieldname": "act_start_date", 
+  "fieldname": "act_start_date", 
+  "fieldtype": "Date"
+ }, 
+ {
+  "oldfieldtype": "Date", 
+  "doctype": "DocField", 
+  "label": "Actual End Date", 
+  "oldfieldname": "act_end_date", 
+  "fieldname": "act_end_date", 
+  "fieldtype": "Date"
+ }, 
+ {
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Total Hours (Actual)", 
+  "oldfieldname": "act_total_hrs", 
+  "fieldname": "act_total_hrs", 
+  "fieldtype": "Data"
+ }, 
+ {
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Actual Budget", 
+  "oldfieldname": "actual_budget", 
+  "fieldname": "actual_budget", 
+  "fieldtype": "Currency"
+ }, 
+ {
+  "doctype": "DocField", 
+  "fieldname": "more_details", 
+  "fieldtype": "Section Break", 
+  "label": "More Details"
+ }, 
+ {
+  "oldfieldtype": "Date", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Review Date", 
+  "oldfieldname": "review_date", 
+  "fieldname": "review_date", 
+  "fieldtype": "Date", 
+  "depends_on": "eval:doc.status == \"Closed\" || doc.status == \"Pending Review\"", 
+  "hidden": 1
+ }, 
+ {
+  "oldfieldtype": "Date", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Closing Date", 
+  "oldfieldname": "closing_date", 
+  "fieldname": "closing_date", 
+  "fieldtype": "Date", 
+  "depends_on": "eval:doc.status == \"Closed\"", 
+  "hidden": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "no_copy": 1, 
+  "doctype": "DocField", 
+  "label": "File List", 
+  "fieldname": "file_list", 
+  "fieldtype": "Text", 
+  "hidden": 1
+ }, 
+ {
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "write": 1, 
+  "cancel": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "permlevel": 1, 
+  "doctype": "DocPerm"
+ }
 ]
\ No newline at end of file
diff --git a/projects/doctype/timesheet/timesheet.txt b/projects/doctype/timesheet/timesheet.txt
index 1ccb781..3e3e185 100644
--- a/projects/doctype/timesheet/timesheet.txt
+++ b/projects/doctype/timesheet/timesheet.txt
@@ -1,212 +1,173 @@
-# DocType, Timesheet
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:36:07',
-		'docstatus': 0,
-		'modified': '2012-03-27 18:47:10',
-		'modified_by': u'Administrator',
-		'owner': u'ashwini@webnotestech.com'
-	},
-
-	# These values are common for all DocType
-	{
-		'autoname': u'TimeSheet.#####',
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'is_submittable': 1,
-		'module': u'Projects',
-		'name': '__common__',
-		'search_fields': u'status, owner, timesheet_date',
-		'section_style': u'Simple',
-		'server_code_error': u' ',
-		'show_in_menu': 0,
-		'subject': u'%(owner)s',
-		'version': 69
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'Timesheet',
-		'parentfield': u'fields',
-		'parenttype': u'DocType'
-	},
-
-	# These values are common for all DocPerm
-	{
-		'doctype': u'DocPerm',
-		'name': '__common__',
-		'parent': u'Timesheet',
-		'parentfield': u'permissions',
-		'parenttype': u'DocType',
-		'read': 1
-	},
-
-	# DocType, Timesheet
-	{
-		'doctype': 'DocType',
-		'name': u'Timesheet'
-	},
-
-	# DocPerm
-	{
-		'amend': 1,
-		'cancel': 1,
-		'create': 1,
-		'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'Projects User',
-		'submit': 1,
-		'write': 1
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm',
-		'permlevel': 1,
-		'role': u'Projects User'
-	},
-
-	# DocPerm
-	{
-		'amend': 1,
-		'cancel': 1,
-		'create': 1,
-		'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'System Manager',
-		'submit': 1,
-		'write': 1
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm',
-		'permlevel': 1,
-		'role': u'System Manager'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'timesheet_details_section_break',
-		'fieldtype': u'Section Break',
-		'label': u'Timesheet Details',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'default': u'Draft',
-		'doctype': u'DocField',
-		'fieldname': u'status',
-		'fieldtype': u'Select',
-		'in_filter': 0,
-		'label': u'Status',
-		'oldfieldname': u'status',
-		'oldfieldtype': u'Select',
-		'options': u'\nDraft\nSubmitted\nCancelled',
-		'permlevel': 1,
-		'reqd': 1,
-		'search_index': 1
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'default': u'Today',
-		'doctype': u'DocField',
-		'fieldname': u'timesheet_date',
-		'fieldtype': u'Date',
-		'in_filter': 1,
-		'label': u'Timesheet Date',
-		'oldfieldname': u'timesheet_date',
-		'oldfieldtype': u'Date',
-		'permlevel': 0,
-		'reqd': 1,
-		'search_index': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'owner',
-		'fieldtype': u'Link',
-		'in_filter': 1,
-		'label': u'Timesheet By',
-		'oldfieldname': u'owner',
-		'oldfieldtype': u'Link',
-		'options': u'Profile',
-		'permlevel': 0,
-		'reqd': 1,
-		'search_index': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'amended_from',
-		'fieldtype': u'Data',
-		'hidden': 1,
-		'label': u'Amended From',
-		'oldfieldname': u'amended_from',
-		'oldfieldtype': u'Data',
-		'permlevel': 1,
-		'print_hide': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'amendment_date',
-		'fieldtype': u'Date',
-		'hidden': 1,
-		'label': u'Amendment Date',
-		'oldfieldname': u'amendment_date',
-		'oldfieldtype': u'Date',
-		'permlevel': 1,
-		'print_hide': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'column_break0',
-		'fieldtype': u'Column Break',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'notes',
-		'fieldtype': u'Text',
-		'label': u'Notes',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'section_break0',
-		'fieldtype': u'Section Break',
-		'options': u'Simple',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'timesheet_details',
-		'fieldtype': u'Table',
-		'label': u'Timesheet Details',
-		'oldfieldname': u'timesheet_details',
-		'oldfieldtype': u'Table',
-		'options': u'Timesheet Detail',
-		'permlevel': 0
-	}
+ {
+  "owner": "ashwini@webnotestech.com", 
+  "docstatus": 0, 
+  "creation": "2012-03-27 14:36:07", 
+  "modified_by": "Administrator", 
+  "modified": "2012-03-27 18:47:10"
+ }, 
+ {
+  "section_style": "Simple", 
+  "is_submittable": 1, 
+  "search_fields": "status, owner, timesheet_date", 
+  "module": "Projects", 
+  "server_code_error": " ", 
+  "subject": "%(owner)s", 
+  "autoname": "TimeSheet.#####", 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "doctype": "DocType", 
+  "show_in_menu": 0, 
+  "version": 69
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Timesheet", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Timesheet", 
+  "read": 1, 
+  "doctype": "DocPerm", 
+  "parenttype": "DocType", 
+  "parentfield": "permissions"
+ }, 
+ {
+  "name": "Timesheet", 
+  "doctype": "DocType"
+ }, 
+ {
+  "amend": 1, 
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "submit": 1, 
+  "write": 1, 
+  "role": "Projects User", 
+  "cancel": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "role": "Projects User", 
+  "permlevel": 1, 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "amend": 1, 
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "submit": 1, 
+  "write": 1, 
+  "role": "System Manager", 
+  "cancel": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "role": "System Manager", 
+  "permlevel": 1, 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Timesheet Details", 
+  "fieldname": "timesheet_details_section_break", 
+  "fieldtype": "Section Break", 
+  "permlevel": 0
+ }, 
+ {
+  "default": "Draft", 
+  "oldfieldtype": "Select", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Status", 
+  "oldfieldname": "status", 
+  "permlevel": 1, 
+  "fieldname": "status", 
+  "fieldtype": "Select", 
+  "search_index": 1, 
+  "reqd": 1, 
+  "options": "\nDraft\nSubmitted\nCancelled", 
+  "in_filter": 0
+ }, 
+ {
+  "default": "Today", 
+  "oldfieldtype": "Date", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Timesheet Date", 
+  "oldfieldname": "timesheet_date", 
+  "fieldname": "timesheet_date", 
+  "fieldtype": "Date", 
+  "search_index": 1, 
+  "reqd": 1, 
+  "permlevel": 0, 
+  "in_filter": 1
+ }, 
+ {
+  "search_index": 0, 
+  "doctype": "DocField", 
+  "label": "Timesheet By", 
+  "oldfieldname": "owner", 
+  "options": "Profile", 
+  "fieldname": "owner", 
+  "fieldtype": "Link", 
+  "oldfieldtype": "Link", 
+  "reqd": 1, 
+  "permlevel": 0, 
+  "in_filter": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Amended From", 
+  "oldfieldname": "amended_from", 
+  "fieldname": "amended_from", 
+  "fieldtype": "Data", 
+  "hidden": 1, 
+  "permlevel": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "oldfieldtype": "Date", 
+  "doctype": "DocField", 
+  "label": "Amendment Date", 
+  "oldfieldname": "amendment_date", 
+  "fieldname": "amendment_date", 
+  "fieldtype": "Date", 
+  "hidden": 1, 
+  "permlevel": 1
+ }, 
+ {
+  "doctype": "DocField", 
+  "fieldname": "column_break0", 
+  "fieldtype": "Column Break", 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Notes", 
+  "fieldname": "notes", 
+  "fieldtype": "Text", 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "permlevel": 0, 
+  "fieldname": "section_break0", 
+  "fieldtype": "Section Break", 
+  "options": "Simple"
+ }, 
+ {
+  "oldfieldtype": "Table", 
+  "doctype": "DocField", 
+  "label": "Timesheet Details", 
+  "oldfieldname": "timesheet_details", 
+  "permlevel": 0, 
+  "fieldname": "timesheet_details", 
+  "fieldtype": "Table", 
+  "options": "Timesheet Detail"
+ }
 ]
\ No newline at end of file
diff --git a/projects/page/projects/projects.txt b/projects/page/projects/projects.txt
index 179614a..69f3afa 100644
--- a/projects/page/projects/projects.txt
+++ b/projects/page/projects/projects.txt
@@ -1,27 +1,20 @@
-# Page, Projects
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2010-12-14 10:23:31',
-		'docstatus': 0,
-		'modified': '2010-12-30 14:43:47',
-		'modified_by': 'Administrator',
-		'owner': 'Administrator'
-	},
-
-	# These values are common for all Page
-	{
-		'doctype': 'Page',
-		'module': 'Projects',
-		'name': '__common__',
-		'page_name': 'Projects',
-		'standard': 'Yes'
-	},
-
-	# Page, Projects
-	{
-		'doctype': 'Page',
-		'name': 'Projects'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2010-12-14 10:23:31", 
+  "modified_by": "Administrator", 
+  "modified": "2010-12-30 14:43:47"
+ }, 
+ {
+  "name": "__common__", 
+  "module": "Projects", 
+  "standard": "Yes", 
+  "page_name": "Projects", 
+  "doctype": "Page"
+ }, 
+ {
+  "name": "Projects", 
+  "doctype": "Page"
+ }
 ]
\ No newline at end of file
diff --git a/projects/page/projects_home/projects_home.txt b/projects/page/projects_home/projects_home.txt
index 665ac99..4116149 100644
--- a/projects/page/projects_home/projects_home.txt
+++ b/projects/page/projects_home/projects_home.txt
@@ -1,28 +1,21 @@
-# Page, projects-home
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-02-21 13:24:22',
-		'docstatus': 0,
-		'modified': '2012-02-21 13:24:22',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all Page
-	{
-		'doctype': 'Page',
-		'module': u'Projects',
-		'name': '__common__',
-		'page_name': u'projects-home',
-		'standard': u'Yes',
-		'title': u'Projects Home'
-	},
-
-	# Page, projects-home
-	{
-		'doctype': 'Page',
-		'name': u'projects-home'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-02-21 13:24:22", 
+  "modified_by": "Administrator", 
+  "modified": "2012-02-21 13:24:22"
+ }, 
+ {
+  "name": "__common__", 
+  "title": "Projects Home", 
+  "module": "Projects", 
+  "doctype": "Page", 
+  "page_name": "projects-home", 
+  "standard": "Yes"
+ }, 
+ {
+  "name": "projects-home", 
+  "doctype": "Page"
+ }
 ]
\ No newline at end of file
diff --git a/projects/search_criteria/projectwise_delivered_qty_and_costs/projectwise_delivered_qty_and_costs.txt b/projects/search_criteria/projectwise_delivered_qty_and_costs/projectwise_delivered_qty_and_costs.txt
index e4143ba..b2ecb6c 100644
--- a/projects/search_criteria/projectwise_delivered_qty_and_costs/projectwise_delivered_qty_and_costs.txt
+++ b/projects/search_criteria/projectwise_delivered_qty_and_costs/projectwise_delivered_qty_and_costs.txt
@@ -1,35 +1,28 @@
-# Search Criteria, projectwise_delivered_qty_and_costs
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-04-03 12:49:52',
-		'docstatus': 0,
-		'modified': '2012-04-03 12:49:52',
-		'modified_by': u'Administrator',
-		'owner': u'harshada@webnotestech.com'
-	},
-
-	# These values are common for all Search Criteria
-	{
-		'add_cond': u'IFNULL(`tabDelivery Note`.`project_name`,"")!=""',
-		'columns': u'Delivery Note\x01ID,Delivery Note\x01Project Name,Delivery Note\x01Customer,Delivery Note\x01Customer Name,Delivery Note Item\x01Item Code,Delivery Note Item\x01Item Name,Delivery Note Item\x01Quantity,Delivery Note\x01Posting Date,Delivery Note\x01% Billed,Delivery Note Item\x01Amount*',
-		'criteria_name': u'Projectwise Delivered Qty and Costs',
-		'doc_type': u'Delivery Note Item',
-		'doctype': 'Search Criteria',
-		'filters': u"{'Delivery Note\x01Submitted':1,'Delivery Note\x01Status':'Submitted','Delivery Note\x01Fiscal Year':''}",
-		'module': u'Projects',
-		'name': '__common__',
-		'page_len': 50,
-		'parent_doc_type': u'Delivery Note',
-		'sort_by': u'`tabDelivery Note`.`name`',
-		'sort_order': u'DESC',
-		'standard': u'Yes'
-	},
-
-	# Search Criteria, projectwise_delivered_qty_and_costs
-	{
-		'doctype': 'Search Criteria',
-		'name': u'projectwise_delivered_qty_and_costs'
-	}
+ {
+  "owner": "harshada@webnotestech.com", 
+  "docstatus": 0, 
+  "creation": "2012-04-03 12:49:52", 
+  "modified_by": "Administrator", 
+  "modified": "2012-04-03 12:49:52"
+ }, 
+ {
+  "parent_doc_type": "Delivery Note", 
+  "module": "Projects", 
+  "standard": "Yes", 
+  "sort_order": "DESC", 
+  "filters": "{'Delivery Note\u0001Submitted':1,'Delivery Note\u0001Status':'Submitted','Delivery Note\u0001Fiscal Year':''}", 
+  "doc_type": "Delivery Note Item", 
+  "name": "__common__", 
+  "add_cond": "IFNULL(`tabDelivery Note`.`project_name`,\"\")!=\"\"", 
+  "doctype": "Search Criteria", 
+  "sort_by": "`tabDelivery Note`.`name`", 
+  "page_len": 50, 
+  "criteria_name": "Projectwise Delivered Qty and Costs", 
+  "columns": "Delivery Note\u0001ID,Delivery Note\u0001Project Name,Delivery Note\u0001Customer,Delivery Note\u0001Customer Name,Delivery Note Item\u0001Item Code,Delivery Note Item\u0001Item Name,Delivery Note Item\u0001Quantity,Delivery Note\u0001Posting Date,Delivery Note\u0001% Billed,Delivery Note Item\u0001Amount*"
+ }, 
+ {
+  "name": "projectwise_delivered_qty_and_costs", 
+  "doctype": "Search Criteria"
+ }
 ]
\ No newline at end of file
diff --git a/projects/search_criteria/projectwise_pending_qty_and_costs/projectwise_pending_qty_and_costs.txt b/projects/search_criteria/projectwise_pending_qty_and_costs/projectwise_pending_qty_and_costs.txt
index e795202..37b6294 100644
--- a/projects/search_criteria/projectwise_pending_qty_and_costs/projectwise_pending_qty_and_costs.txt
+++ b/projects/search_criteria/projectwise_pending_qty_and_costs/projectwise_pending_qty_and_costs.txt
@@ -1,36 +1,29 @@
-# Search Criteria, projectwise_pending_qty_and_costs
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-04-03 12:49:52',
-		'docstatus': 0,
-		'modified': '2012-04-03 12:49:52',
-		'modified_by': u'Administrator',
-		'owner': u'ashwini@webnotestech.com'
-	},
-
-	# These values are common for all Search Criteria
-	{
-		'add_col': u"SUM(`tabSales Order Item`.`qty` - `tabSales Order Item`.`delivered_qty`) AS 'Pending Qty'\nSUM((`tabSales Order Item`.`qty` - `tabSales Order Item`.`delivered_qty`)* `tabSales Order Item`.basic_rate) AS 'Pending Amount'",
-		'add_cond': u'`tabSales Order Item`.`qty` > `tabSales Order Item`.`delivered_qty`\nIFNULL(`tabSales Order`.`project_name`,"")!=""\n`tabSales Order`.order_type = \'Sales\'',
-		'columns': u'Sales Order\x01ID,Sales Order\x01Project Name,Sales Order\x01Customer,Sales Order\x01Customer Name,Sales Order Item\x01Item Code,Sales Order Item\x01Item Name,Sales Order\x01%  Delivered,Sales Order\x01% Billed,Sales Order\x01Sales Order Date,Sales Order\x01Expected Delivery Date',
-		'criteria_name': u'Projectwise Pending Qty and Costs',
-		'doc_type': u'Sales Order Item',
-		'doctype': 'Search Criteria',
-		'filters': u"{'Sales Order\x01Submitted':1,'Sales Order\x01Status':'Submitted','Sales Order\x01Fiscal Year':''}",
-		'module': u'Projects',
-		'name': '__common__',
-		'page_len': 50,
-		'parent_doc_type': u'Sales Order',
-		'sort_by': u'`tabSales Order`.`name`',
-		'sort_order': u'DESC',
-		'standard': u'Yes'
-	},
-
-	# Search Criteria, projectwise_pending_qty_and_costs
-	{
-		'doctype': 'Search Criteria',
-		'name': u'projectwise_pending_qty_and_costs'
-	}
+ {
+  "owner": "ashwini@webnotestech.com", 
+  "docstatus": 0, 
+  "creation": "2012-04-03 12:49:52", 
+  "modified_by": "Administrator", 
+  "modified": "2012-04-03 12:49:52"
+ }, 
+ {
+  "add_col": "SUM(`tabSales Order Item`.`qty` - `tabSales Order Item`.`delivered_qty`) AS 'Pending Qty'\nSUM((`tabSales Order Item`.`qty` - `tabSales Order Item`.`delivered_qty`)* `tabSales Order Item`.basic_rate) AS 'Pending Amount'", 
+  "parent_doc_type": "Sales Order", 
+  "module": "Projects", 
+  "standard": "Yes", 
+  "sort_order": "DESC", 
+  "filters": "{'Sales Order\u0001Submitted':1,'Sales Order\u0001Status':'Submitted','Sales Order\u0001Fiscal Year':''}", 
+  "doc_type": "Sales Order Item", 
+  "name": "__common__", 
+  "add_cond": "`tabSales Order Item`.`qty` > `tabSales Order Item`.`delivered_qty`\nIFNULL(`tabSales Order`.`project_name`,\"\")!=\"\"\n`tabSales Order`.order_type = 'Sales'", 
+  "doctype": "Search Criteria", 
+  "sort_by": "`tabSales Order`.`name`", 
+  "page_len": 50, 
+  "criteria_name": "Projectwise Pending Qty and Costs", 
+  "columns": "Sales Order\u0001ID,Sales Order\u0001Project Name,Sales Order\u0001Customer,Sales Order\u0001Customer Name,Sales Order Item\u0001Item Code,Sales Order Item\u0001Item Name,Sales Order\u0001%  Delivered,Sales Order\u0001% Billed,Sales Order\u0001Sales Order Date,Sales Order\u0001Expected Delivery Date"
+ }, 
+ {
+  "name": "projectwise_pending_qty_and_costs", 
+  "doctype": "Search Criteria"
+ }
 ]
\ No newline at end of file
diff --git a/projects/search_criteria/projectwise_purchase_details/projectwise_purchase_details.txt b/projects/search_criteria/projectwise_purchase_details/projectwise_purchase_details.txt
index 4a11bac..cb88f58 100644
--- a/projects/search_criteria/projectwise_purchase_details/projectwise_purchase_details.txt
+++ b/projects/search_criteria/projectwise_purchase_details/projectwise_purchase_details.txt
@@ -1,31 +1,24 @@
-# Search Criteria, projectwise_purchase_details
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-04-03 12:49:52',
-		'docstatus': 0,
-		'modified': '2012-04-03 12:49:52',
-		'modified_by': u'Administrator',
-		'owner': u'ashwini@webnotestech.com'
-	},
-
-	# These values are common for all Search Criteria
-	{
-		'criteria_name': u'Projectwise Purchase Details',
-		'doc_type': u'Purchase Order',
-		'doctype': 'Search Criteria',
-		'filters': u"{'Purchase Order\x01Status':'','Purchase Order\x01Fiscal Year':''}",
-		'module': u'Projects',
-		'name': '__common__',
-		'page_len': 50,
-		'sort_order': u'DESC',
-		'standard': u'Yes'
-	},
-
-	# Search Criteria, projectwise_purchase_details
-	{
-		'doctype': 'Search Criteria',
-		'name': u'projectwise_purchase_details'
-	}
+ {
+  "owner": "ashwini@webnotestech.com", 
+  "docstatus": 0, 
+  "creation": "2012-04-03 12:49:52", 
+  "modified_by": "Administrator", 
+  "modified": "2012-04-03 12:49:52"
+ }, 
+ {
+  "doc_type": "Purchase Order", 
+  "name": "__common__", 
+  "module": "Projects", 
+  "doctype": "Search Criteria", 
+  "sort_order": "DESC", 
+  "filters": "{'Purchase Order\u0001Status':'','Purchase Order\u0001Fiscal Year':''}", 
+  "page_len": 50, 
+  "criteria_name": "Projectwise Purchase Details", 
+  "standard": "Yes"
+ }, 
+ {
+  "name": "projectwise_purchase_details", 
+  "doctype": "Search Criteria"
+ }
 ]
\ No newline at end of file
diff --git a/projects/search_criteria/projectwise_sales_details/projectwise_sales_details.txt b/projects/search_criteria/projectwise_sales_details/projectwise_sales_details.txt
index 0ecb1be..11a50a6 100644
--- a/projects/search_criteria/projectwise_sales_details/projectwise_sales_details.txt
+++ b/projects/search_criteria/projectwise_sales_details/projectwise_sales_details.txt
@@ -1,31 +1,24 @@
-# Search Criteria, projectwise_sales_details
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-04-03 12:49:52',
-		'docstatus': 0,
-		'modified': '2012-04-03 12:49:52',
-		'modified_by': u'Administrator',
-		'owner': u'harshada@webnotestech.com'
-	},
-
-	# These values are common for all Search Criteria
-	{
-		'criteria_name': u'Projectwise Sales Details',
-		'doc_type': u'Sales Order',
-		'doctype': 'Search Criteria',
-		'filters': u"{'Sales Order\x01Saved':1,'Sales Order\x01Submitted':1,'Sales Order\x01Status':''}",
-		'module': u'Projects',
-		'name': '__common__',
-		'page_len': 50,
-		'sort_order': u'DESC',
-		'standard': u'Yes'
-	},
-
-	# Search Criteria, projectwise_sales_details
-	{
-		'doctype': 'Search Criteria',
-		'name': u'projectwise_sales_details'
-	}
+ {
+  "owner": "harshada@webnotestech.com", 
+  "docstatus": 0, 
+  "creation": "2012-04-03 12:49:52", 
+  "modified_by": "Administrator", 
+  "modified": "2012-04-03 12:49:52"
+ }, 
+ {
+  "doc_type": "Sales Order", 
+  "name": "__common__", 
+  "module": "Projects", 
+  "doctype": "Search Criteria", 
+  "sort_order": "DESC", 
+  "filters": "{'Sales Order\u0001Saved':1,'Sales Order\u0001Submitted':1,'Sales Order\u0001Status':''}", 
+  "page_len": 50, 
+  "criteria_name": "Projectwise Sales Details", 
+  "standard": "Yes"
+ }, 
+ {
+  "name": "projectwise_sales_details", 
+  "doctype": "Search Criteria"
+ }
 ]
\ No newline at end of file
diff --git a/projects/search_criteria/projectwise_sales_orders/projectwise_sales_orders.txt b/projects/search_criteria/projectwise_sales_orders/projectwise_sales_orders.txt
index c36a326..29919e6 100644
--- a/projects/search_criteria/projectwise_sales_orders/projectwise_sales_orders.txt
+++ b/projects/search_criteria/projectwise_sales_orders/projectwise_sales_orders.txt
@@ -1,34 +1,27 @@
-# Search Criteria, projectwise_sales_orders
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-04-03 12:49:52',
-		'docstatus': 0,
-		'modified': '2012-04-03 12:49:52',
-		'modified_by': u'Administrator',
-		'owner': u'harshada@webnotestech.com'
-	},
-
-	# These values are common for all Search Criteria
-	{
-		'add_cond': u"ifnull(`tabSales Order`.project_name ,'') != ''",
-		'columns': u'Sales Order\x01ID,Sales Order\x01Status,Sales Order\x01Project Name,Sales Order\x01Customer,Sales Order\x01Sales Order Date,Sales Order\x01Expected Delivery Date,Sales Order\x01Quotation No,Sales Order\x01%  Delivered,Sales Order\x01% Billed,Sales Order\x01Grand Total*',
-		'criteria_name': u'Projectwise Sales Orders',
-		'doc_type': u'Sales Order',
-		'doctype': 'Search Criteria',
-		'filters': u"{'Sales Order\x01Saved':1,'Sales Order\x01Submitted':1,'Sales Order\x01Status':'','Sales Order\x01Fiscal Year':''}",
-		'module': u'Projects',
-		'name': '__common__',
-		'page_len': 50,
-		'sort_by': u'`tabSales Order`.`name`',
-		'sort_order': u'DESC',
-		'standard': u'Yes'
-	},
-
-	# Search Criteria, projectwise_sales_orders
-	{
-		'doctype': 'Search Criteria',
-		'name': u'projectwise_sales_orders'
-	}
+ {
+  "owner": "harshada@webnotestech.com", 
+  "docstatus": 0, 
+  "creation": "2012-04-03 12:49:52", 
+  "modified_by": "Administrator", 
+  "modified": "2012-04-03 12:49:52"
+ }, 
+ {
+  "module": "Projects", 
+  "standard": "Yes", 
+  "sort_order": "DESC", 
+  "filters": "{'Sales Order\u0001Saved':1,'Sales Order\u0001Submitted':1,'Sales Order\u0001Status':'','Sales Order\u0001Fiscal Year':''}", 
+  "doc_type": "Sales Order", 
+  "name": "__common__", 
+  "add_cond": "ifnull(`tabSales Order`.project_name ,'') != ''", 
+  "doctype": "Search Criteria", 
+  "sort_by": "`tabSales Order`.`name`", 
+  "page_len": 50, 
+  "criteria_name": "Projectwise Sales Orders", 
+  "columns": "Sales Order\u0001ID,Sales Order\u0001Status,Sales Order\u0001Project Name,Sales Order\u0001Customer,Sales Order\u0001Sales Order Date,Sales Order\u0001Expected Delivery Date,Sales Order\u0001Quotation No,Sales Order\u0001%  Delivered,Sales Order\u0001% Billed,Sales Order\u0001Grand Total*"
+ }, 
+ {
+  "name": "projectwise_sales_orders", 
+  "doctype": "Search Criteria"
+ }
 ]
\ No newline at end of file
diff --git a/projects/search_criteria/timesheet_report/timesheet_report.txt b/projects/search_criteria/timesheet_report/timesheet_report.txt
index 64586eb..14bbe08 100644
--- a/projects/search_criteria/timesheet_report/timesheet_report.txt
+++ b/projects/search_criteria/timesheet_report/timesheet_report.txt
@@ -1,34 +1,27 @@
-# Search Criteria, timesheet_report
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-04-03 12:49:53',
-		'docstatus': 0,
-		'modified': '2012-04-03 12:49:53',
-		'modified_by': u'Administrator',
-		'owner': u'ashwini@webnotestech.com'
-	},
-
-	# These values are common for all Search Criteria
-	{
-		'columns': u'Timesheet\x01ID,Timesheet\x01Timesheet Date,Timesheet\x01Timesheet by,Timesheet Detail\x01Project Name,Timesheet Detail\x01Task Id,Timesheet Detail\x01Task Name,Timesheet Detail\x01Actual Start Time,Timesheet Detail\x01Actual End Time,Timesheet Detail\x01Total Hours (Actual)',
-		'criteria_name': u'Timesheet Report',
-		'doc_type': u'Timesheet Detail',
-		'doctype': 'Search Criteria',
-		'filters': u"{'Timesheet\x01Saved':1,'Timesheet\x01Submitted':1}",
-		'module': u'Projects',
-		'name': '__common__',
-		'page_len': 50,
-		'parent_doc_type': u'Timesheet',
-		'sort_by': u'`tabTimesheet`.`name`',
-		'sort_order': u'DESC',
-		'standard': u'Yes'
-	},
-
-	# Search Criteria, timesheet_report
-	{
-		'doctype': 'Search Criteria',
-		'name': u'timesheet_report'
-	}
+ {
+  "owner": "ashwini@webnotestech.com", 
+  "docstatus": 0, 
+  "creation": "2012-04-03 12:49:53", 
+  "modified_by": "Administrator", 
+  "modified": "2012-04-03 12:49:53"
+ }, 
+ {
+  "parent_doc_type": "Timesheet", 
+  "module": "Projects", 
+  "standard": "Yes", 
+  "sort_order": "DESC", 
+  "filters": "{'Timesheet\u0001Saved':1,'Timesheet\u0001Submitted':1}", 
+  "doc_type": "Timesheet Detail", 
+  "name": "__common__", 
+  "doctype": "Search Criteria", 
+  "sort_by": "`tabTimesheet`.`name`", 
+  "page_len": 50, 
+  "criteria_name": "Timesheet Report", 
+  "columns": "Timesheet\u0001ID,Timesheet\u0001Timesheet Date,Timesheet\u0001Timesheet by,Timesheet Detail\u0001Project Name,Timesheet Detail\u0001Task Id,Timesheet Detail\u0001Task Name,Timesheet Detail\u0001Actual Start Time,Timesheet Detail\u0001Actual End Time,Timesheet Detail\u0001Total Hours (Actual)"
+ }, 
+ {
+  "name": "timesheet_report", 
+  "doctype": "Search Criteria"
+ }
 ]
\ No newline at end of file
diff --git a/public/js/kb_common.js b/public/js/kb_common.js
index 0686677..1e3fcba 100644
--- a/public/js/kb_common.js
+++ b/public/js/kb_common.js
@@ -66,7 +66,6 @@
 
 	this.setup_del = function() {
 		$(this.line1).find('.del-link').click(function() {
-			console.log(1);
 			this.innerHTML = 'deleting...'; 
 			this.disabled = 1;
 			$c_page('utilities', 'questions', 'delete', {
diff --git a/public/js/modules.js b/public/js/modules.js
index 7dc8038..b1a86ba 100644
--- a/public/js/modules.js
+++ b/public/js/modules.js
@@ -21,7 +21,7 @@
 	'Buying': 'buying-home',
 	'Support': 'support-home',
 	'Projects': 'projects-home',
-	'Production': 'production-home',
+	'Manufacturing': 'manufacturing-home',
 	'Website': 'website-home',
 	'HR': 'hr-home',
 	'Setup': 'Setup',
@@ -65,7 +65,7 @@
 	'Support': 'purple',
 	'HR': 'ocean',
 	'Projects':	'violet',
-	'Production': 'dark-red',
+	'Manufacturing': 'dark-red',
 	'Website': 'leaf-green',
 	'Activity': 'brown',
 	'Setup': 'grey',
diff --git a/public/js/startup.js b/public/js/startup.js
index cff3ed8..817175b 100644
--- a/public/js/startup.js
+++ b/public/js/startup.js
@@ -152,8 +152,11 @@
 	});
 
 	Mousetrap.bind(["command+s", "ctrl+s"], function() {
-		if(cur_frm && !cur_frm.save_disabled)
+		if(cur_frm && !cur_frm.save_disabled && cint(cur_frm.doc.docstatus)===0)
 			cur_frm.save();
+		else if(cur_frm && !cur_frm.save_disabled && cint(cur_frm.doc.docstatus)===1
+				&& cur_frm.doc.__unsaved)
+			cur_frm.frm_head.appframe.buttons['Update'].click();
 		else if(wn.container.page.save_action)
 			wn.container.page.save_action();
 		return false;
diff --git a/public/js/utils.js b/public/js/utils.js
index d02fdb3..af3e579 100644
--- a/public/js/utils.js
+++ b/public/js/utils.js
@@ -16,6 +16,40 @@
 
 wn.provide('erpnext.utils');
 
+// TODO
+erpnext.utils.Controller = Class.extend({
+	init: function(opts) {
+		$.extend(this, opts);
+	},
+	
+	onload_post_render: function() {
+		this.setup_defaults();
+	},
+	
+	setup_defaults: function() {
+		var me = this;
+		
+		var defaults = {
+			posting_date: wn.datetime.get_today(),
+		}
+		
+		$.each(defaults, function(k, v) {
+			if(!me.frm.doc[k]) me.frm.set_value(k, v);
+		});
+	},
+	
+	refresh: function() {
+		erpnext.hide_naming_series();
+		
+		if(this.frm.doc.__islocal && this.frm.fields_dict.naming_series 
+				&& !this.frm.doc.naming_series) {
+			var series_opts = $.map((this.frm.fields_dict.naming_series.df.options ||
+				"").split("\n"), function(v) { return v ? v : null; });
+			if (series_opts.length==1) this.frm.set_value("naming_series", series_opts[0]);
+		}
+	}
+});
+
 // searches for enabled profiles
 erpnext.utils.profile_query = function() {
 	return "select name, concat_ws(' ', first_name, middle_name, last_name) \
@@ -103,4 +137,24 @@
 		AND tabAccount.%(key)s LIKE "%s" ' + (conditions 
 			? (" AND " + conditions.join(" AND "))
 			: "")
+}
+
+erpnext.queries.bom = function(opts) {
+	conditions = [];
+	if (opts) {
+		$.each(opts, function(key, val) {
+			if (esc_quotes(val).charAt(0) != "!")
+				conditions.push("tabBOM.`" + key + "`='"+esc_quotes(val)+"'");
+			else
+				conditions.push("tabBOM.`" + key + "`!='"+esc_quotes(val).substr(1)+"'");
+		});
+	}
+	
+	return 'SELECT tabBOM.name, tabBOM.item \
+		FROM tabBOM \
+		WHERE tabBOM.docstatus=1 \
+		AND tabBOM.is_active=1 \
+		AND tabBOM.%(key)s LIKE "%s" ' + (conditions.length 
+			? (" AND " + conditions.join(" AND "))
+			: "")
 }
\ No newline at end of file
diff --git a/sandbox/__init__.py b/sandbox/__init__.py
deleted file mode 100644
index baffc48..0000000
--- a/sandbox/__init__.py
+++ /dev/null
@@ -1 +0,0 @@
-from __future__ import unicode_literals
diff --git a/sandbox/test_leave.py b/sandbox/test_leave.py
deleted file mode 100644
index 25601b7..0000000
--- a/sandbox/test_leave.py
+++ /dev/null
@@ -1,69 +0,0 @@
-# ERPNext - web based ERP (http://erpnext.com)
-# Copyright (C) 2012 Web Notes Technologies Pvt Ltd
-# 
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-# 
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# 
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-from __future__ import unicode_literals
-import unittest
-
-import webnotes
-import webnotes.profile
-webnotes.user = webnotes.profile.Profile()
-
-
-from webnotes.model.code import get_obj
-sql = webnotes.conn.sql
-
-from sandbox.testdata import leaves
-#----------------------------------------------------------
-
-
-class TestStockEntry(unittest.TestCase):
-	#===========================================================================
-	def setUp(self):
-		webnotes.conn.begin()
-		leaves.emp.save(new = 1, make_autoname = 0)
-
-	def test_leave_bal(self):
-		leaves.l_all.save(1)
-		leaves.l_app1.save(1)
-		leaves.l_app2.save(1)
-
-		la1 = get_obj('Leave Application', leaves.l_app1.name, with_children=1)
-		la1.validate()
-		la1.doc.docstatus = 1
-		la1.doc.save()
-		
-		self.assertTrue(la1.doc.total_leave_days == 2)
-		
-		la1.doc.half_day  = 1
-		la1.validate()
-		la1.doc.save()
-		
-		self.assertTrue(la1.doc.total_leave_days == .5)
-
-		print "Test case for leave applied no of days"
-		
-				
-		la2 = get_obj('Leave Application', leaves.l_app2.name, with_children=1)
-		la2.validate()
-		bal = la2.get_leave_balance()
-		self.assertTrue(bal, 18)
-		print "Test case for leave balance"
-		
-		
-		
-		
-	def tearDown(self):
-		webnotes.conn.rollback()
diff --git a/sandbox/test_stock_entry.py b/sandbox/test_stock_entry.py
deleted file mode 100644
index fe28880..0000000
--- a/sandbox/test_stock_entry.py
+++ /dev/null
@@ -1,490 +0,0 @@
-# ERPNext - web based ERP (http://erpnext.com)
-# Copyright (C) 2012 Web Notes Technologies Pvt Ltd
-# 
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-# 
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# 
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-from __future__ import unicode_literals
-import unittest
-
-import webnotes
-import webnotes.profile
-webnotes.user = webnotes.profile.Profile()
-
-
-from webnotes.model.code import get_obj
-sql = webnotes.conn.sql
-
-from sandbox.testdata.masters import *
-from sandbox.testdata import stock_entry
-#----------------------------------------------------------
-
-
-class TestStockEntry(unittest.TestCase):
-	#===========================================================================
-	def assertDoc(self, lst):
-		"""assert all values"""
-		for d in lst:
-			cl, vl = [], []
-			for k in d.keys():
-				if k!='doctype':
-					cl.append('%s=%s' % (k, '%s'))
-					vl.append(d[k])
-
-			self.assertTrue(sql("select name from `tab%s` where %s limit 1" % (d['doctype'], ' and '.join(cl)), vl))
-			
-	#===========================================================================
-	def assertCount(self, lst):
-		"""assert all values"""
-		for d in lst:
-			cl, vl = [], []
-			for k in d[0].keys():
-				if k!='doctype':
-					cl.append('%s=%s' % (k, '%s'))
-					vl.append(d[0][k])
-
-			self.assertTrue(sql("select count(name) from `tab%s` where %s limit 1" % (d[0]['doctype'], ' and '.join(cl)), vl)[0][0] == d[1])
-		
-	#===========================================================================
-	def setUp(self):
-		print "====================================="
-		webnotes.conn.begin()		
-		create_master_records()
-		print 'Master Data Created'
-		
-	#===========================================================================
-	# Purpose: Material Receipt
-	#===========================================================================
-	def test_mr_onsubmit(self):
-		print "Test Case: Material Receipt submission"
-		self.save_stock_entry('Material Receipt')
-
-		mr = get_obj('Stock Entry', stock_entry.mr[0].name, with_children=1)
-		self.submit_stock_entry(mr)
-		
-		# stock ledger entry
-		print "Checking stock ledger entry........."
-		self.assertDoc(self.get_expected_sle('mr_submit'))
-		
-		# bin qty
-		print "Checking Bin qty........."
-		self.assertDoc([{'doctype':'Bin', 'actual_qty':10, 'item_code':'it', 'warehouse':'wh1'}])
-		
-		# serial no
-		self.assertCount([[{'doctype': 'Serial No', 'item_code': 'it', 'warehouse': 'wh1', 'status': 'In Store', 'docstatus': 0}, 10]])
-
-		
-	#===========================================================================
-	def test_mr_oncancel(self):
-		print "Test Case: Material Receipt Cancellation"
-		self.save_stock_entry('Material Receipt')
-		
-		mr = get_obj('Stock Entry', stock_entry.mr[0].name, with_children=1)
-		self.cancel_stock_entry(mr)
-		
-		# stock ledger entry
-		print "Checking stock ledger entry........."
-		self.assertDoc(self.get_expected_sle('mr_cancel'))
-		
-		# bin qty
-		print "Checking Bin qty........."
-		self.assertDoc([{'doctype':'Bin', 'actual_qty':0, 'item_code':'it', 'warehouse':'wh1'}])
-		
-		# serial no
-		self.assertCount([[{'doctype': 'Serial No', 'item_code': 'it', 'warehouse': '', 'status': 'Not in Use', 'docstatus': 2}, 10]])
-		
-	#===========================================================================
-	# Purpose: Material Transafer
-	#===========================================================================
-	def test_mtn_onsubmit(self):
-		print "Test Case: Material Transfer Note submission"
-		
-		self.save_stock_entry('Material Receipt')
-		mr = get_obj('Stock Entry', stock_entry.mr[0].name, with_children=1)
-		mr = self.submit_stock_entry(mr)
-		
-		self.save_stock_entry('Material Transfer')
-		mtn = get_obj('Stock Entry', stock_entry.mtn[0].name, with_children=1)
-		mtn = self.submit_stock_entry(mtn)
-		
-		# stock ledger entry
-		print "Checking stock ledger entry........."
-		self.assertDoc(self.get_expected_sle('mtn_submit'))
-		
-		# bin qty
-		print "Checking Bin qty........."
-		self.assertDoc([
-			{'doctype':'Bin', 'actual_qty':5, 'item_code':'it', 'warehouse':'wh1'},
-			{'doctype':'Bin', 'actual_qty':5, 'item_code':'it', 'warehouse':'wh2'}
-		])
-		
-		# serial no		
-		self.assertCount([
-			[{'doctype': 'Serial No', 'item_code': 'it', 'warehouse': 'wh1', 'status': 'In Store', 'docstatus': 0}, 5], 
-			[{'doctype': 'Serial No', 'item_code': 'it', 'warehouse': 'wh2', 'status': 'In Store', 'docstatus': 0}, 5]
-		])
-		
-	#===========================================================================
-	def test_mtn_oncancel(self):
-		print "Test Case: Material Transfer Note Cancellation"
-		
-		self.save_stock_entry('Material Receipt')
-		mr = get_obj('Stock Entry', stock_entry.mr[0].name, with_children=1)
-		mr = self.submit_stock_entry(mr)
-		
-		self.save_stock_entry('Material Transfer')
-		mtn = get_obj('Stock Entry', stock_entry.mtn[0].name, with_children=1)
-		self.cancel_stock_entry(mtn)
-		
-		# stock ledger entry
-		print "Checking stock ledger entry........."
-		self.assertDoc(self.get_expected_sle('mtn_cancel'))
-		
-		# bin qty
-		print "Checking Bin qty........."
-		self.assertDoc([
-			{'doctype':'Bin', 'actual_qty':10, 'item_code':'it', 'warehouse':'wh1'},
-			{'doctype':'Bin', 'actual_qty':0, 'item_code':'it', 'warehouse':'wh2'}
-		])
-		
-		# serial no
-		self.assertCount([[{'doctype': 'Serial No', 'item_code': 'it', 'warehouse': 'wh1', 'status': 'In Store', 'docstatus': 0}, 10]])
-		
-#===========================================================================
-	# Purpose: Material Issue
-	#===========================================================================
-	def test_mi_onsubmit(self):
-		print "Test Case: Material Issue submission"
-		
-		self.save_stock_entry('Material Receipt')
-		mr = get_obj('Stock Entry', stock_entry.mr[0].name, with_children=1)
-		mr = self.submit_stock_entry(mr)
-		
-		self.save_stock_entry('Material Issue')
-		mi = get_obj('Stock Entry', stock_entry.mi[0].name, with_children=1)
-		mi = self.submit_stock_entry(mi)
-		
-		# stock ledger entry
-		print "Checking stock ledger entry........."
-		self.assertDoc(self.get_expected_sle('mi_submit'))
-		
-		# bin qty
-		print "Checking Bin qty........."
-		self.assertDoc([
-			{'doctype':'Bin', 'actual_qty':6, 'item_code':'it', 'warehouse':'wh1'}
-		])
-		
-		# serial no		
-		self.assertCount([
-			[{'doctype': 'Serial No', 'item_code': 'it', 'warehouse': 'wh1', 'status': 'In Store', 'docstatus': 0}, 6]
-		])
-		
-	#===========================================================================
-	def test_mi_oncancel(self):
-		print "Test Case: Material Issue Cancellation"
-		
-		self.save_stock_entry('Material Receipt')
-		mr = get_obj('Stock Entry', stock_entry.mr[0].name, with_children=1)
-		mr = self.submit_stock_entry(mr)
-		
-		self.save_stock_entry('Material Issue')
-		mi = get_obj('Stock Entry', stock_entry.mi[0].name, with_children=1)
-		self.cancel_stock_entry(mi)
-		
-		# stock ledger entry
-		print "Checking stock ledger entry........."
-		self.assertDoc(self.get_expected_sle('mi_cancel'))
-		
-		# bin qty
-		print "Checking Bin qty........."
-		self.assertDoc([
-			{'doctype':'Bin', 'actual_qty':10, 'item_code':'it', 'warehouse':'wh1'}
-		])
-		
-		# serial no
-		self.assertCount([
-			[{'doctype': 'Serial No', 'item_code': 'it', 'warehouse': 'wh1', 'status': 'In Store', 'docstatus': 0}, 10]
-		])
-
-	#===========================================================================
-	def test_entries_on_same_datetime(self):
-		print "Test Case: Multiple entries on same datetime, cancel first one"
-		
-		# submitted 1st MR
-		self.save_stock_entry('Material Receipt')
-		mr = get_obj('Stock Entry', stock_entry.mr[0].name, with_children=1)
-		mr = self.submit_stock_entry(mr)
-		
-		# submitted 2nd MR
-		for each in stock_entry.mr1:
-			each.save(1)
-		for t in stock_entry.mr1[1:]:
-			sql("update `tabStock Entry Detail` set parent = '%s' where name = '%s'" % (stock_entry.mr1[0].name, t.name))
-		
-		mr1 = get_obj('Stock Entry', stock_entry.mr1[0].name, with_children=1)
-		mr1 = self.submit_stock_entry(mr1)
-
-		
-		# submitted MTN
-		self.save_stock_entry('Material Transfer')
-		mtn = get_obj('Stock Entry', stock_entry.mtn[0].name, with_children=1)
-		mtn = self.submit_stock_entry(mtn)
-		
-		# cancel prev MR
-		mr.on_cancel()
-		mr.doc.cancel_reason = "testing"
-		mr.doc.docstatus = 2
-		mr.doc.save()
-		
-		
-		# stock ledger entry
-		print "Checking stock ledger entry........."
-		self.assertDoc(self.get_expected_sle('entries_on_same_datetime'))
-		
-		# bin qty
-		print "Checking Bin qty........."
-		self.assertDoc([
-			{'doctype':'Bin', 'actual_qty':0, 'item_code':'it', 'warehouse':'wh1'},
-			{'doctype':'Bin', 'actual_qty':5, 'item_code':'it', 'warehouse':'wh2'}
-		])
-		
-		# serial no		
-		self.assertCount([
-			[{'doctype': 'Serial No', 'item_code': 'it', 'warehouse': 'wh1', 'status': 'In Store', 'docstatus': 0}, 0], 
-			[{'doctype': 'Serial No', 'item_code': 'it', 'warehouse': 'wh2', 'status': 'In Store', 'docstatus': 0}, 5]
-		])
-		
-	#===========================================================================
-	def save_stock_entry(self, t):
-		if t == 'Material Receipt':
-			data = stock_entry.mr
-		elif t == 'Material Transfer':
-			data = stock_entry.mtn
-		elif t == 'Material Issue':
-			data = stock_entry.mi
-			
-		for each in data:
-			each.save(1)
-
-		for t in data[1:]:
-			sql("update `tabStock Entry Detail` set parent = '%s' where name = '%s'" % (data[0].name, t.name))
-		print "Stock Entry Created"
-		
-		
-	#===========================================================================
-	def submit_stock_entry(self, ste):
-		ste.validate()
-		ste.on_submit()
-		
-		ste.doc.docstatus = 1
-		ste.doc.save()
-
-		print "Stock Entry Submitted"
-		return ste
-			
-	#===========================================================================
-	def cancel_stock_entry(self, ste):
-		ste = self.submit_stock_entry(ste)
-		
-		ste.on_cancel()
-		
-		ste.doc.cancel_reason = "testing"
-		ste.doc.docstatus = 2
-		ste.doc.save()
-		
-		print "Stock Entry Cancelled"
-		return ste
-		
-	#===========================================================================
-	def tearDown(self):
-		webnotes.conn.rollback()
-
-
-	# Expected Result Set
-	#===================================================================================================
-	def get_expected_sle(self, action):
-		expected_sle = {
-			'mr_submit': [{
-							'doctype': 'Stock Ledger Entry',
-							'item_code':'it',
-							'warehouse':'wh1', 
-							'voucher_type': 'Stock Entry',
-							'voucher_no': stock_entry.mr[0].name,
-							'actual_qty': 10,
-							'bin_aqat': 10,
-							'valuation_rate': 100,
-							'is_cancelled': 'No'
-						}],
-			'mr_cancel': [{
-							'doctype': 'Stock Ledger Entry', 
-							'item_code':'it',
-							'warehouse':'wh1',
-							'voucher_type': 'Stock Entry',
-							'voucher_no': stock_entry.mr[0].name,
-							'actual_qty': 10,
-							'bin_aqat': 10,
-							'valuation_rate': 100,
-							'is_cancelled': 'Yes'
-						},{
-							'doctype': 'Stock Ledger Entry', 
-							'item_code':'it',
-							'warehouse':'wh1',
-							'voucher_type': 'Stock Entry',
-							'voucher_no': stock_entry.mr[0].name,
-							'actual_qty': -10,
-							'ifnull(bin_aqat, 0)': 0,
-							'ifnull(valuation_rate, 0)': 0,
-							"ifnull(is_cancelled, 'No')": 'Yes'
-						}],
-			'mtn_submit': [{
-							'doctype': 'Stock Ledger Entry',
-							'item_code':'it',
-							'warehouse':'wh1',
-							'voucher_type': 'Stock Entry',
-							'voucher_no': stock_entry.mtn[0].name,
-							'actual_qty': -5,
-							'bin_aqat': 5,
-							'valuation_rate': 100,
-							'is_cancelled': 'No'
-						}, {
-							'doctype': 'Stock Ledger Entry',
-							'item_code':'it',
-							'warehouse':'wh2',
-							'voucher_type': 'Stock Entry',
-							'voucher_no': stock_entry.mtn[0].name,
-							'actual_qty': 5,
-							'bin_aqat': 5,
-							'valuation_rate': 100,
-							'is_cancelled': 'No'
-						}],
-			'mtn_cancel': [{
-							'doctype': 'Stock Ledger Entry',
-							'item_code':'it',
-							'warehouse':'wh1',
-							'voucher_type': 'Stock Entry',
-							'voucher_no': stock_entry.mtn[0].name,
-							'actual_qty': -5,
-							'bin_aqat': 5,
-							'is_cancelled': 'Yes'
-						}, {
-							'doctype': 'Stock Ledger Entry',
-							'item_code':'it',
-							'warehouse':'wh2',
-							'voucher_type': 'Stock Entry',
-							'voucher_no': stock_entry.mtn[0].name,
-							'actual_qty': 5,
-							'bin_aqat': 5,
-							'valuation_rate': 100,
-							'is_cancelled': 'Yes'
-						}, {
-							'doctype': 'Stock Ledger Entry',
-							'item_code':'it',
-							'warehouse':'wh1',
-							'voucher_type': 'Stock Entry',
-							'voucher_no': stock_entry.mtn[0].name,
-							'actual_qty': 5,
-							'is_cancelled': 'Yes'
-						}, {
-							'doctype': 'Stock Ledger Entry',
-							'item_code':'it',
-							'warehouse':'wh2',
-							'voucher_type': 'Stock Entry',
-							'voucher_no': stock_entry.mtn[0].name,
-							'actual_qty': -5,
-							'is_cancelled': 'Yes'
-						}],
-			'mi_submit': [{'doctype': 'Stock Ledger Entry',
-							'item_code':'it',
-							'warehouse':'wh1', 
-							'voucher_type': 'Stock Entry',
-							'voucher_no': stock_entry.mi[0].name,
-							'actual_qty': -4,
-							'bin_aqat': 6,
-							'valuation_rate': 100,
-							'is_cancelled': 'No'
-						}],
-			'mi_cancel': [{
-							'doctype': 'Stock Ledger Entry', 
-							'item_code':'it',
-							'warehouse':'wh1',
-							'voucher_type': 'Stock Entry',
-							'voucher_no': stock_entry.mi[0].name,
-							'actual_qty': -4,
-							'bin_aqat': 6,
-							'valuation_rate': 100,
-							'is_cancelled': 'Yes'
-						},{
-							'doctype': 'Stock Ledger Entry', 
-							'item_code':'it',
-							'warehouse':'wh1',
-							'voucher_type': 'Stock Entry',
-							'voucher_no': stock_entry.mi[0].name,
-							'actual_qty': 4,
-							'ifnull(bin_aqat, 0)': 0,
-							'ifnull(valuation_rate, 0)': 0,
-							"ifnull(is_cancelled, 'No')": 'Yes'
-						}],
-			'entries_on_same_datetime': [{
-							'doctype': 'Stock Ledger Entry', 
-							'item_code':'it',
-							'warehouse':'wh1',
-							'voucher_type': 'Stock Entry',
-							'voucher_no': stock_entry.mr[0].name,
-							'actual_qty': 10,
-							'bin_aqat': 10,
-							'valuation_rate': 100,
-							'is_cancelled': 'Yes'
-						}, {
-							'doctype': 'Stock Ledger Entry', 
-							'item_code':'it',
-							'warehouse':'wh1',
-							'voucher_type': 'Stock Entry',
-							'voucher_no': stock_entry.mr[0].name,
-							'actual_qty': -10,
-							'ifnull(bin_aqat, 0)': 0,
-							'ifnull(valuation_rate, 0)': 0,
-							"ifnull(is_cancelled, 'No')": 'Yes'
-						}, {
-							'doctype': 'Stock Ledger Entry', 
-							'item_code':'it',
-							'warehouse':'wh1',
-							'voucher_type': 'Stock Entry',
-							'voucher_no': stock_entry.mr1[0].name,
-							'actual_qty': 5,
-							'bin_aqat': 5,
-							'valuation_rate': 400,
-							'is_cancelled': 'No'
-						}, {
-							'doctype': 'Stock Ledger Entry',
-							'item_code':'it',
-							'warehouse':'wh1',
-							'voucher_type': 'Stock Entry',
-							'voucher_no': stock_entry.mtn[0].name,
-							'actual_qty': -5,
-							'bin_aqat': 0,
-							'valuation_rate': 400,
-							'is_cancelled': 'No'
-						}, {
-							'doctype': 'Stock Ledger Entry',
-							'item_code':'it',
-							'warehouse':'wh2',
-							'voucher_type': 'Stock Entry',
-							'voucher_no': stock_entry.mtn[0].name,
-							'actual_qty': 5,
-							'bin_aqat': 5,
-							'valuation_rate': 100,
-							'is_cancelled': 'No'
-						}]
-		}
-		
-		return expected_sle[action]
diff --git a/sandbox/test_stock_reco.py b/sandbox/test_stock_reco.py
deleted file mode 100644
index ada85b4..0000000
--- a/sandbox/test_stock_reco.py
+++ /dev/null
@@ -1,108 +0,0 @@
-# ERPNext - web based ERP (http://erpnext.com)
-# Copyright (C) 2012 Web Notes Technologies Pvt Ltd
-# 
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-# 
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# 
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-from __future__ import unicode_literals
-import unittest
-
-import webnotes
-import webnotes.profile
-webnotes.user = webnotes.profile.Profile()
-
-
-from webnotes.model.code import get_obj
-sql = webnotes.conn.sql
-
-from sandbox.testdata.masters import *
-from sandbox.testdata.sle_data import sle, bin
-from sandbox.testdata.stock_reco import *
-#----------------------------------------------------------
-
-
-class TestStockEntry(unittest.TestCase):
-	def assertDoc(self, lst):
-		"""assert all values"""
-		for d in lst:
-			cl, vl = [], []
-			for k in d.keys():
-				if k!='doctype':
-					cl.append('%s=%s' % (k, '%s'))
-					vl.append(d[k])
-
-			self.assertTrue(sql("select name from `tab%s` where %s limit 1" % (d['doctype'], ' and '.join(cl)), vl))
-
-	#===========================================================================
-	def setUp(self):
-		print "====================================="
-		webnotes.conn.begin()		
-		create_master_records()
-		print 'Master Data Created'
-		
-		for d in sle:
-			d.save(1)
-		print "Existing SLE created"
-		
-		bin.save(1)
-		
-		sreco.save(1)
-		print "Stock Reco saved"
-		
-	#===========================================================================
-	def test_diff_in_both(self):
-		reco = get_obj('Stock Reconciliation', sreco.name)
-		reco.doc.docstatus = 1
-		reco.doc.save()
-		reco.validate()
-		reco.on_submit()
-		print "Stock Reco submitted"
-		
-		print "Checking stock ledger entry........."
-		self.assertDoc(self.get_expected_sle('diff_in_both'))
-
-	#===========================================================================
-	def tearDown(self):
-		webnotes.conn.rollback()
-		
-	# Expected Result Set
-	#===================================================================================================
-	def get_expected_sle(self, action):
-		expected_sle = {
-			'diff_in_both': [{
-							'doctype': 'Stock Ledger Entry',
-							'item_code':'it',
-							'warehouse':'wh1', 
-							'voucher_type': 'Stock Reconciliation',
-							'voucher_no': sreco.name,
-							'actual_qty': 15,
-							'bin_aqat': 20,
-							'valuation_rate': 150,
-							#'stock_value': 3000,
-							'is_cancelled': 'No'
-						},{
-							'doctype': 'Stock Ledger Entry',
-							'posting_date': '2011-09-10',
-							'posting_time': '15:00',
-							'item_code': 'it',
-							'warehouse': 'wh1',
-							'actual_qty': 20,
-							'incoming_rate': 200,
-							'bin_aqat': 40,
-							'valuation_rate': 175,
-							#'stock_value': 4500,
-							'is_cancelled': 'No'
-						}
-						]
-		}
-		return expected_sle[action]
diff --git a/sandbox/testdata/__init__.py b/sandbox/testdata/__init__.py
deleted file mode 100644
index baffc48..0000000
--- a/sandbox/testdata/__init__.py
+++ /dev/null
@@ -1 +0,0 @@
-from __future__ import unicode_literals
diff --git a/sandbox/testdata/leaves.py b/sandbox/testdata/leaves.py
deleted file mode 100644
index db8b431..0000000
--- a/sandbox/testdata/leaves.py
+++ /dev/null
@@ -1,71 +0,0 @@
-# ERPNext - web based ERP (http://erpnext.com)
-# Copyright (C) 2012 Web Notes Technologies Pvt Ltd
-# 
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-# 
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# 
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-from __future__ import unicode_literals
-from webnotes.model.doc import Document
-
-emp = Document(
-	fielddata = {
-		'doctype': 'Employee',
-		'name': 'emp1',
-		'employee_name': 'Nijil',
-		'status': 'Active',
-		'date_of_joining': '2011-01-01'
-	}
-)
-
-
-
-l_all = Document(
-	fielddata = {
-		'doctype' : 'Leave Allocation',
-		'name': 'l_all',
-		'employee' : 'emp1',
-		'leave_type' : 'Casual Leave',
-		'posting_date': '2011-03-01',
-		'fiscal_year': '2011-2012',
-		'total_leaves_allocated': 20,
-		'docstatus': 1
-	}
-)
-
-l_app1 = Document(
-	fielddata = {
-		'doctype' : 'Leave Application',
-		'name': 'l_app1',
-		'employee' : 'emp1',
-		'leave_type' : 'Casual Leave',
-		'posting_date': '2011-03-01',
-		'fiscal_year': '2011-2012',
-		'from_date': '2011-08-01',
-		'to_date': '2011-08-02',
-		'total_leave_days': 2
-	}
-)
-
-l_app2 = Document(
-	fielddata = {
-		'doctype' : 'Leave Application',
-		'name': 'l_app2',
-		'employee' : 'emp1',
-		'leave_type' : 'Casual Leave',
-		'posting_date': '2011-03-01',
-		'fiscal_year': '2011-2012',
-		'from_date': '2011-08-15',
-		'to_date': '2011-08-17',
-		'total_leave_days': 3
-	}
-)
diff --git a/sandbox/testdata/masters.py b/sandbox/testdata/masters.py
deleted file mode 100644
index c59253b..0000000
--- a/sandbox/testdata/masters.py
+++ /dev/null
@@ -1,299 +0,0 @@
-# ERPNext - web based ERP (http://erpnext.com)
-# Copyright (C) 2012 Web Notes Technologies Pvt Ltd
-# 
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-# 
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# 
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-from __future__ import unicode_literals
-"""
-	All master data in one place, can be created by 1 function call
-
-"""
-
-import webnotes
-from webnotes.model.doc import Document
-
-
-master_groups = {
-	# Company
-	#----------------------------------
-	'company': Document(
-		fielddata={
-			'doctype':'Company',
-			'abbr': 'co',
-			'company_name' : 'comp',
-			'name': 'comp'
-		}
-	),
-	
-	# Customer Group
-	#----------------------------------
-	'customer_group':  Document(
-		fielddata={
-			'doctype':'Customer Group',
-			'customer_group_name' : 'cg',
-			'name': 'cg',
-			'is_group': 'No',
-			'parent_customer_group':'', 
-			'lft' : 1,
-			'rgt': 2
-		}
-	),
-	
-	# Item Group
-	#----------------------------------
-	'item_group': Document(
-		fielddata = {
-			'doctype': 'Item Group',
-			'item_group_name': 'ig',
-			'lft': 1,
-			'rgt': 2,
-			'parent_item_group' : '',
-			'is_group': 'No',
-			'name': 'ig'
-		}
-	),
-	
-	# Warehouse Type
-	#-----------------------------
-	'warehouse_type' : Document(
-		fielddata = {
-			'doctype' : 'Warehouse Type',
-			'name': 'normal',
-			'warehouse_type' : 'normal'
-		}
-	),
-	
-	# Supplier Type
-	#-----------------------------
-	'supplier_type' : Document(
-		fielddata = {
-			'doctype': 'Supplier Type',
-			'supplier_type': 'stype'
-		}
-	)
-
-}
-
-
-main_masters = {
-	# Customer
-	#----------------------------------
-	'customer': Document(
-		fielddata={
-			'doctype':'Customer',
-			'docstatus':0,
-			'customer_name' : 'cust',
-			'company' : 'comp',
-			'customer_group' : '',
-			'name': 'cust'
-		}
-	),
-
-
-	# Supplier
-	#----------------------------------
-	'supplier': Document(
-		fielddata = {
-			'doctype': 'Supplier',
-			'supplier_name': 'supp',
-			'name': 'supp',	
-			'supplier_type' : 'stype'
-		}
-	),
-	
-	# Customer Account
-	#----------------------------------
-	'customer_acc': Document(
-		fielddata={
-			'doctype':'Account',
-			'docstatus':0,
-			'account_name' : 'cust',
-			'debit_or_credit': 'Debit',
-			'company' : 'comp',
-			'lft': 1,
-			'rgt': 2,
-			'group_or_ledger' : 'Ledger',
-			'is_pl_account': 'No',
-			'name' : 'cust - co'
-		}
-	),
-	
-	# Customer Account
-	#----------------------------------
-	'supplier_acc': Document(
-		fielddata={
-			'doctype':'Account',
-			'docstatus':0,
-			'account_name' : 'supp',
-			'debit_or_credit': 'Credit',
-			'company' : 'comp',
-			'lft': 5,
-			'rgt': 6,
-			'group_or_ledger' : 'Ledger',
-			'is_pl_account': 'No',
-			'name' : 'supp - co'
-		}
-	),	
-
-	# Bank Account
-	#----------------------------------
-	'bank_acc': Document(
-		fielddata={
-			'doctype':'Account',
-			'docstatus':0,
-			'account_name' : 'icici',
-			'parent_account': '',
-			'debit_or_credit': 'Debit',
-			'company' : 'comp',
-			'lft': 3,
-			'rgt': 4,
-			'group_or_ledger' : 'Ledger',
-			'is_pl_account': 'No',
-			'name' : 'icici - co'
-		}
-	),
-
-	# Income Account
-	#----------------------------------
-	'income_acc': Document(
-		fielddata={
-			'doctype':'Account',
-			'docstatus':0,
-			'account_name' : 'income',
-			'debit_or_credit': 'Credit',
-			'company' : 'comp',
-			'lft': 7,
-			'rgt': 8,
-			'group_or_ledger' : 'Ledger',
-			'is_pl_account': 'Yes',
-			'name' : 'income - co'
-		}
-	),
-	
-	# Expense Account
-	#----------------------------------
-	'expense_acc': Document(
-		fielddata={
-			'doctype':'Account',
-			'docstatus':0,
-			'account_name' : 'expense',
-			'debit_or_credit': 'Debit',
-			'company' : 'comp',
-			'lft': 9,
-			'rgt': 10,
-			'group_or_ledger' : 'Ledger',
-			'is_pl_account': 'Yes',
-			'name' : 'expense - co'
-		}
-	),
-
-	# Cost Center
-	#----------------------------------
-	'cost_center': Document(
-		fielddata={
-			'doctype':'Cost Center',
-			'docstatus':0,
-			'cost_center_name' : 'cc',
-			'lft': 1,
-			'rgt': 2,
-			'group_or_ledger' : 'Ledger',
-			'name' : 'cc'
-		}
-	),
-
-	# Item
-	#----------------------------------
-	# Stock item / non-serialized
-
-	'item': [
-		Document(
-			fielddata = {
-				'doctype': 'Item',
-				'docstatus': 0,
-				'name': 'it',
-				'item_name': 'it',
-				'item_code': 'it',
-				'item_group': 'ig',
-				'is_stock_item': 'Yes',
-				'has_serial_no': 'Yes',
-				'stock_uom': 'Nos',
-				'is_sales_item': 'Yes',
-				'is_purchase_item': 'Yes',
-				'is_service_item': 'No',
-				'is_sub_contracted_item': 'No',
-				'is_pro_applicable': 'Yes',
-				'is_manufactured_item': 'Yes'		
-			}
-		),
-		Document(
-			fielddata = {
-				'doctype': 'Item Price',
-				'parentfield': 'ref_rate_details',
-				'parenttype': 'Item',
-				'parent' : 'it',
-				'price_list_name': 'pl',
-				'ref_currency': 'INR',
-				'ref_rate': 100
-			}
-		),
-		Document(
-			fielddata = {
-				'doctype': 'Item Tax',
-				'parentfield': 'item_tax',
-				'parenttype': 'Item',
-				'parent' : 'it',
-				'tax_type' : 'Tax1',
-				'tax_rate': 10
-			}
-		)
-	],
-	
-	# Warehouse
-	#-----------------------------
-	'warehouse': [
-		Document(
-			fielddata = {
-				'doctype': 'Warehouse',
-				'name' : 'wh1',
-				'warehouse_name' : 'wh1',
-				'warehouse_type': 'normal',
-				'company': 'comp'
-			}
-		),
-		Document(
-			fielddata = {
-				'doctype': 'Warehouse',
-				'name' : 'wh2',
-				'warehouse_name' : 'wh2',
-				'warehouse_type': 'normal',
-				'company': 'comp'
-			}
-		)
-	]
-}
-
-
-
-# Save all master records
-#----------------------------------
-def create_master_records():
-	for m in master_groups.keys():
-		master_groups[m].save(1)
-
-	for m in main_masters.keys():
-		if type(main_masters[m]) == list:
-			for each in main_masters[m]:
-				each.save(1)
-		else:
-			main_masters[m].save(1)
diff --git a/sandbox/testdata/sle_data.py b/sandbox/testdata/sle_data.py
deleted file mode 100644
index 5cd6dc2..0000000
--- a/sandbox/testdata/sle_data.py
+++ /dev/null
@@ -1,102 +0,0 @@
-# ERPNext - web based ERP (http://erpnext.com)
-# Copyright (C) 2012 Web Notes Technologies Pvt Ltd
-# 
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-# 
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# 
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-from __future__ import unicode_literals
-from webnotes.model.doc import Document
-
-# Existing SLE data
-#---------------------------
-
-sle = [
-	Document(
-		fielddata = {
-			'doctype': 'Stock Ledger Entry',
-			'name': 'sle1',
-			'posting_date': '2011-09-01',
-			'posting_time': '12:00',
-			'item_code': 'it',
-			'warehouse': 'wh1',
-			'actual_qty': 10,
-			'incoming_rate': 100,
-			'bin_aqat': 10,
-			'valuation_rate': 100,
-			'fcfs_stack': '',
-			'stock_value': 1000,
-			'is_cancelled': 'No'			
-		}
-	),
-		Document(
-		fielddata = {
-			'doctype': 'Stock Ledger Entry',
-			'name': 'sle2',
-			'posting_date': '2011-09-01',
-			'posting_time': '12:00',
-			'item_code': 'it',
-			'warehouse': 'wh1',
-			'actual_qty': -5,
-			'incoming_rate': 100,
-			'bin_aqat': 5,
-			'valuation_rate': 100,
-			'fcfs_stack': '',
-			'stock_value': 500,
-			'is_cancelled': 'No'
-		}
-	),
-	Document(
-		fielddata = {
-			'doctype': 'Stock Ledger Entry',
-			'name': 'sle3',
-			'posting_date': '2011-09-10',
-			'posting_time': '15:00',
-			'item_code': 'it',
-			'warehouse': 'wh1',
-			'actual_qty': 20,
-			'incoming_rate': 200,
-			'bin_aqat': 25,
-			'valuation_rate': 180,
-			'fcfs_stack': '',
-			'stock_value': 4500,
-			'is_cancelled': 'No'			
-		}
-	),
-	Document(
-		fielddata = {
-			'doctype': 'Stock Ledger Entry',
-			'name': 'sle4',
-			'posting_date': '2011-09-15',
-			'posting_time': '09:30',
-			'item_code': 'it',
-			'warehouse': 'wh1',
-			'actual_qty': -5,
-			'incoming_rate': 180,
-			'bin_aqat': 20,
-			'valuation_rate': 180,
-			'fcfs_stack': '',
-			'stock_value': 3600,
-			'is_cancelled': 'No'			
-		}
-	)
-]
-
-bin = Document(
-	fielddata = {
-		'doctype': 'Bin',
-		'name': 'bin01',
-		'item_code': 'it',
-		'warehouse': 'wh1',
-		'actual_qty': 20,
-	}
-)
diff --git a/sandbox/testdata/stock_entry.py b/sandbox/testdata/stock_entry.py
deleted file mode 100644
index e617c08..0000000
--- a/sandbox/testdata/stock_entry.py
+++ /dev/null
@@ -1,153 +0,0 @@
-# ERPNext - web based ERP (http://erpnext.com)
-# Copyright (C) 2012 Web Notes Technologies Pvt Ltd
-# 
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-# 
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# 
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-from __future__ import unicode_literals
-from webnotes.model.doc import Document
-
-# Material  Receipt
-#-----------------------
-
-mr = [
-	Document(
-		fielddata = {
-			'doctype': 'Stock Entry',
-			'posting_date': '2011-09-01',
-			'transfer_date': '2011-09-01',
-			'posting_time': '12:00',
-			'company': 'comp',
-			'fiscal_year' : '2011-2012',
-			'purpose': 'Material Receipt',
-			'name': 'mr'
-		}
-	),
-	Document(
-		fielddata  ={
-			'doctype': 'Stock Entry Detail',
-			'parenttype': 'Stock Entry',
-			'parentfield' : 'mtn_details',
-			'parent' : 'mr',
-			'item_code' : 'it',
-			't_warehouse' : 'wh1',
-			'qty' : 10,
-			'transfer_qty' : 10,
-			'incoming_rate': 100,
-			'stock_uom': 'Nos',
-			'conversion_factor': 1,
-			'serial_no': 'srno1, srno2, srno3, srno4, srno5, srno6, srno7, srno8, srno9, srno10'	
-		}
-	)
-]
-
-mr1 = [
-	Document(
-		fielddata = {
-			'doctype': 'Stock Entry',
-			'posting_date': '2011-09-01',
-			'transfer_date': '2011-09-01',
-			'posting_time': '12:00',
-			'company': 'comp',
-			'fiscal_year' : '2011-2012',
-			'purpose': 'Material Receipt',
-			'name': 'mr1'
-		}
-	),
-	Document(
-		fielddata  ={
-			'doctype': 'Stock Entry Detail',
-			'parenttype': 'Stock Entry',
-			'parentfield' : 'mtn_details',
-			'parent' : 'mr1',
-			'item_code' : 'it',
-			't_warehouse' : 'wh1',
-			'qty' : 5,
-			'transfer_qty' : 5,
-			'incoming_rate': 400,
-			'stock_uom': 'Nos',
-			'conversion_factor': 1,
-			'serial_no': 'srno11, srno12, srno13, srno14, srno15'	
-		}
-	)
-]
-
-
-# Material Transfer
-#--------------------
-
-mtn = [
-	Document(
-		fielddata = {
-			'doctype': 'Stock Entry',
-			'posting_date': '2011-09-01',
-			'transfer_date': '2011-09-01',
-			'posting_time': '12:00',
-			'company': 'comp',
-			'fiscal_year' : '2011-2012',
-			'purpose': 'Material Transfer',
-			'name': 'mtn'
-		}
-	),
-	Document(
-		fielddata  ={
-			'doctype': 'Stock Entry Detail',
-			'parenttype': 'Stock Entry',
-			'parentfield' : 'mtn_details',
-			'parent' : 'mtn',
-			'item_code' : 'it',
-			's_warehouse' : 'wh1',
-			't_warehouse' : 'wh2',
-			'qty' : 5,
-			'transfer_qty' : 5,
-			'incoming_rate': 100,
-			'stock_uom': 'Nos',
-			'conversion_factor': 1,
-			'serial_no': 'srno1, srno2, srno3, srno4, srno5'	
-		}
-	)
-]
-
-# Material Issue
-#--------------------
-
-mi = [
-	Document(
-		fielddata = {
-			'doctype': 'Stock Entry',
-			'posting_date': '2011-09-01',
-			'transfer_date': '2011-09-01',
-			'posting_time': '14:00',
-			'company': 'comp',
-			'fiscal_year' : '2011-2012',
-			'purpose': 'Material Issue',
-			'name': 'mi'
-		}
-	),
-	Document(
-		fielddata  ={
-			'doctype': 'Stock Entry Detail',
-			'parenttype': 'Stock Entry',
-			'parentfield' : 'mtn_details',
-			'parent' : 'mi',
-			'item_code' : 'it',
-			's_warehouse' : 'wh1',
-			'qty' : 4,
-			'transfer_qty' : 4,
-			'incoming_rate': 100,
-			'stock_uom': 'Nos',
-			'conversion_factor': 1,
-			'serial_no': 'srno1, srno2, srno3, srno4'
-		}
-	)
-]
diff --git a/sandbox/testdata/stock_reco.py b/sandbox/testdata/stock_reco.py
deleted file mode 100644
index 87e3eb2..0000000
--- a/sandbox/testdata/stock_reco.py
+++ /dev/null
@@ -1,60 +0,0 @@
-# ERPNext - web based ERP (http://erpnext.com)
-# Copyright (C) 2012 Web Notes Technologies Pvt Ltd
-# 
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-# 
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# 
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-from __future__ import unicode_literals
-from webnotes.model.doc import Document
-
-# Stock Reconciliation
-#---------------------------
-
-sreco = Document(
-		fielddata = {
-			'doctype': 'Stock Reconciliation',
-			'name': 'sreco',
-			'reconciliation_date': '2011-09-08',
-			'reconciliation_time': '20:00',
-		}
-	)
-
-# diff in both
-csv_data1 = [
-	['Item', 'Warehouse', 'Quantity', 'Rate'],
-	['it', 'wh1', 20, 150]
-]
-
-# diff in qty, no rate
-csv_data2 = [
-	['Item', 'Warehouse', 'Quantity'],
-	['it', 'wh1', 20]
-]
-
-# diff in rate, no qty
-csv_data3 = [
-	['Item', 'Warehouse', 'Rate'],
-	['it', 'wh1', 200]
-]
-
-# diff in rate, same qty
-csv_data4 = [
-	['Item', 'Warehouse', 'Quantity', 'Rate'],
-	['it', 'wh1', 5, 200]
-]
-
-# no diff
-csv_data1 = [
-	['Item', 'Warehouse', 'Quantity', 'Rate'],
-	['it', 'wh1', 5, 100]
-]
diff --git a/selling/DocType Mapper/Delivery Note-Installation Note/Delivery Note-Installation Note.txt b/selling/DocType Mapper/Delivery Note-Installation Note/Delivery Note-Installation Note.txt
index b597f92..086ad7f 100644
--- a/selling/DocType Mapper/Delivery Note-Installation Note/Delivery Note-Installation Note.txt
+++ b/selling/DocType Mapper/Delivery Note-Installation Note/Delivery Note-Installation Note.txt
@@ -1,153 +1,118 @@
-# DocType Mapper, Delivery Note-Installation Note
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2010-08-08 17:09:34',
-		'docstatus': 0,
-		'modified': '2011-09-15 15:04:42',
-		'modified_by': 'Administrator',
-		'owner': 'Administrator'
-	},
-
-	# These values are common for all Table Mapper Detail
-	{
-		'doctype': 'Table Mapper Detail',
-		'name': '__common__',
-		'parent': 'Delivery Note-Installation Note',
-		'parentfield': 'table_mapper_details',
-		'parenttype': 'DocType Mapper'
-	},
-
-	# These values are common for all Field Mapper Detail
-	{
-		'doctype': 'Field Mapper Detail',
-		'map': 'Yes',
-		'name': '__common__',
-		'parent': 'Delivery Note-Installation Note',
-		'parentfield': 'field_mapper_details',
-		'parenttype': 'DocType Mapper'
-	},
-
-	# These values are common for all DocType Mapper
-	{
-		'doctype': u'DocType Mapper',
-		'from_doctype': 'Delivery Note',
-		'module': 'Selling',
-		'name': '__common__',
-		'ref_doc_submitted': 1,
-		'to_doctype': 'Installation Note'
-	},
-
-	# DocType Mapper, Delivery Note-Installation Note
-	{
-		'doctype': u'DocType Mapper',
-		'name': 'Delivery Note-Installation Note'
-	},
-
-	# Field Mapper Detail
-	{
-		'checking_operator': '=',
-		'doctype': 'Field Mapper Detail',
-		'from_field': 'company',
-		'match_id': 0,
-		'to_field': 'company'
-	},
-
-	# Field Mapper Detail
-	{
-		'checking_operator': '=',
-		'doctype': 'Field Mapper Detail',
-		'from_field': 'customer',
-		'match_id': 0,
-		'to_field': 'customer'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': 'Field Mapper Detail',
-		'from_field': 'name',
-		'match_id': 0,
-		'to_field': 'delivery_note_no'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': 'Field Mapper Detail',
-		'from_field': 'name',
-		'match_id': 1,
-		'to_field': 'prevdoc_detail_docname'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': 'Field Mapper Detail',
-		'from_field': 'parent',
-		'match_id': 1,
-		'to_field': 'prevdoc_docname'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': 'Field Mapper Detail',
-		'from_field': 'parenttype',
-		'match_id': 1,
-		'to_field': 'prevdoc_doctype'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': 'Field Mapper Detail',
-		'from_field': 'eval: flt(obj.qty) - flt(obj.installed_qty)',
-		'match_id': 1,
-		'to_field': 'qty'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': 'Field Mapper Detail',
-		'from_field': 'posting_date',
-		'match_id': 2,
-		'to_field': 'prevdoc_date'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': 'Field Mapper Detail',
-		'from_field': 'serial_no',
-		'match_id': 1,
-		'to_field': 'serial_no'
-	},
-
-	# Table Mapper Detail
-	{
-		'doctype': 'Table Mapper Detail',
-		'from_field': 'delivery_note_details',
-		'from_table': 'Delivery Note Item',
-		'match_id': 1,
-		'to_field': 'installed_item_details',
-		'to_table': 'Installation Note Item',
-		'validation_logic': 'qty > ifnull(installed_qty,0) and docstatus = 1'
-	},
-
-	# Table Mapper Detail
-	{
-		'doctype': 'Table Mapper Detail',
-		'from_table': 'Delivery Note',
-		'match_id': 0,
-		'to_table': 'Installation Note',
-		'validation_logic': 'docstatus = 1'
-	},
-
-	# Table Mapper Detail
-	{
-		'doctype': 'Table Mapper Detail',
-		'from_table': 'Delivery Note',
-		'match_id': 2,
-		'reference_doctype_key': 'prevdoc_doctype',
-		'reference_key': 'prevdoc_docname',
-		'to_field': 'installed_item_details',
-		'to_table': 'Installation Note Item',
-		'validation_logic': 'docstatus = 1'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2010-08-08 17:09:34", 
+  "modified_by": "Administrator", 
+  "modified": "2011-09-15 15:04:42"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Delivery Note-Installation Note", 
+  "doctype": "Table Mapper Detail", 
+  "parenttype": "DocType Mapper", 
+  "parentfield": "table_mapper_details"
+ }, 
+ {
+  "map": "Yes", 
+  "name": "__common__", 
+  "parent": "Delivery Note-Installation Note", 
+  "doctype": "Field Mapper Detail", 
+  "parenttype": "DocType Mapper", 
+  "parentfield": "field_mapper_details"
+ }, 
+ {
+  "name": "__common__", 
+  "to_doctype": "Installation Note", 
+  "module": "Selling", 
+  "doctype": "DocType Mapper", 
+  "ref_doc_submitted": 1, 
+  "from_doctype": "Delivery Note"
+ }, 
+ {
+  "name": "Delivery Note-Installation Note", 
+  "doctype": "DocType Mapper"
+ }, 
+ {
+  "match_id": 0, 
+  "to_field": "company", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "company", 
+  "checking_operator": "="
+ }, 
+ {
+  "match_id": 0, 
+  "to_field": "customer", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "customer", 
+  "checking_operator": "="
+ }, 
+ {
+  "to_field": "delivery_note_no", 
+  "doctype": "Field Mapper Detail", 
+  "match_id": 0, 
+  "from_field": "name"
+ }, 
+ {
+  "to_field": "prevdoc_detail_docname", 
+  "doctype": "Field Mapper Detail", 
+  "match_id": 1, 
+  "from_field": "name"
+ }, 
+ {
+  "to_field": "prevdoc_docname", 
+  "doctype": "Field Mapper Detail", 
+  "match_id": 1, 
+  "from_field": "parent"
+ }, 
+ {
+  "to_field": "prevdoc_doctype", 
+  "doctype": "Field Mapper Detail", 
+  "match_id": 1, 
+  "from_field": "parenttype"
+ }, 
+ {
+  "to_field": "qty", 
+  "doctype": "Field Mapper Detail", 
+  "match_id": 1, 
+  "from_field": "eval: flt(obj.qty) - flt(obj.installed_qty)"
+ }, 
+ {
+  "to_field": "prevdoc_date", 
+  "doctype": "Field Mapper Detail", 
+  "match_id": 2, 
+  "from_field": "posting_date"
+ }, 
+ {
+  "to_field": "serial_no", 
+  "doctype": "Field Mapper Detail", 
+  "match_id": 1, 
+  "from_field": "serial_no"
+ }, 
+ {
+  "match_id": 1, 
+  "to_field": "installed_item_details", 
+  "doctype": "Table Mapper Detail", 
+  "from_field": "delivery_note_details", 
+  "from_table": "Delivery Note Item", 
+  "to_table": "Installation Note Item", 
+  "validation_logic": "qty > ifnull(installed_qty,0) and docstatus = 1"
+ }, 
+ {
+  "match_id": 0, 
+  "doctype": "Table Mapper Detail", 
+  "from_table": "Delivery Note", 
+  "to_table": "Installation Note", 
+  "validation_logic": "docstatus = 1"
+ }, 
+ {
+  "reference_key": "prevdoc_docname", 
+  "match_id": 2, 
+  "reference_doctype_key": "prevdoc_doctype", 
+  "to_field": "installed_item_details", 
+  "doctype": "Table Mapper Detail", 
+  "from_table": "Delivery Note", 
+  "to_table": "Installation Note Item", 
+  "validation_logic": "docstatus = 1"
+ }
 ]
\ No newline at end of file
diff --git a/selling/DocType Mapper/Lead-Customer/Lead-Customer.txt b/selling/DocType Mapper/Lead-Customer/Lead-Customer.txt
index 268834a..c5806a6 100644
--- a/selling/DocType Mapper/Lead-Customer/Lead-Customer.txt
+++ b/selling/DocType Mapper/Lead-Customer/Lead-Customer.txt
@@ -1,84 +1,63 @@
-# DocType Mapper, Lead-Customer
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2010-08-08 17:09:34',
-		'docstatus': 0,
-		'modified': '2011-09-14 12:36:24',
-		'modified_by': 'Administrator',
-		'owner': 'Administrator'
-	},
-
-	# These values are common for all Table Mapper Detail
-	{
-		'doctype': 'Table Mapper Detail',
-		'from_table': 'Lead',
-		'match_id': 0,
-		'name': '__common__',
-		'parent': 'Lead-Customer',
-		'parentfield': 'table_mapper_details',
-		'parenttype': 'DocType Mapper',
-		'to_table': 'Customer',
-		'validation_logic': 'name is not null'
-	},
-
-	# These values are common for all Field Mapper Detail
-	{
-		'doctype': 'Field Mapper Detail',
-		'map': 'Yes',
-		'match_id': 0,
-		'name': '__common__',
-		'parent': 'Lead-Customer',
-		'parentfield': 'field_mapper_details',
-		'parenttype': 'DocType Mapper'
-	},
-
-	# These values are common for all DocType Mapper
-	{
-		'doctype': u'DocType Mapper',
-		'from_doctype': 'Lead',
-		'module': 'Selling',
-		'name': '__common__',
-		'to_doctype': 'Customer'
-	},
-
-	# DocType Mapper, Lead-Customer
-	{
-		'doctype': u'DocType Mapper',
-		'name': 'Lead-Customer'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': 'Field Mapper Detail',
-		'from_field': 'name',
-		'to_field': 'lead_name'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': 'Field Mapper Detail',
-		'from_field': 'company_name',
-		'to_field': 'customer_name'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': 'Field Mapper Detail',
-		'from_field': 'contact_no',
-		'to_field': 'phone_1'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': 'Field Mapper Detail',
-		'from_field': 'fax',
-		'to_field': 'fax_1'
-	},
-
-	# Table Mapper Detail
-	{
-		'doctype': 'Table Mapper Detail'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2010-08-08 17:09:34", 
+  "modified_by": "Administrator", 
+  "modified": "2011-09-14 12:36:24"
+ }, 
+ {
+  "match_id": 0, 
+  "parent": "Lead-Customer", 
+  "name": "__common__", 
+  "doctype": "Table Mapper Detail", 
+  "parenttype": "DocType Mapper", 
+  "from_table": "Lead", 
+  "to_table": "Customer", 
+  "validation_logic": "name is not null", 
+  "parentfield": "table_mapper_details"
+ }, 
+ {
+  "map": "Yes", 
+  "match_id": 0, 
+  "parent": "Lead-Customer", 
+  "name": "__common__", 
+  "doctype": "Field Mapper Detail", 
+  "parenttype": "DocType Mapper", 
+  "parentfield": "field_mapper_details"
+ }, 
+ {
+  "name": "__common__", 
+  "to_doctype": "Customer", 
+  "module": "Selling", 
+  "doctype": "DocType Mapper", 
+  "from_doctype": "Lead"
+ }, 
+ {
+  "name": "Lead-Customer", 
+  "doctype": "DocType Mapper"
+ }, 
+ {
+  "to_field": "lead_name", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "name"
+ }, 
+ {
+  "to_field": "customer_name", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "company_name"
+ }, 
+ {
+  "to_field": "phone_1", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "contact_no"
+ }, 
+ {
+  "to_field": "fax_1", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "fax"
+ }, 
+ {
+  "doctype": "Table Mapper Detail"
+ }
 ]
\ No newline at end of file
diff --git a/selling/DocType Mapper/Lead-Opportunity/Lead-Opportunity.txt b/selling/DocType Mapper/Lead-Opportunity/Lead-Opportunity.txt
index ff4a925..fb9be22 100644
--- a/selling/DocType Mapper/Lead-Opportunity/Lead-Opportunity.txt
+++ b/selling/DocType Mapper/Lead-Opportunity/Lead-Opportunity.txt
@@ -1,87 +1,66 @@
-# DocType Mapper, Lead-Opportunity
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2010-08-08 17:09:34',
-		'docstatus': 0,
-		'modified': '2012-04-03 12:49:50',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all Table Mapper Detail
-	{
-		'doctype': u'Table Mapper Detail',
-		'from_table': u'Lead',
-		'match_id': 0,
-		'name': '__common__',
-		'parent': u'Lead-Opportunity',
-		'parentfield': u'table_mapper_details',
-		'parenttype': u'DocType Mapper',
-		'to_table': u'Opportunity',
-		'validation_logic': u'name is not null'
-	},
-
-	# These values are common for all Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'match_id': 0,
-		'name': '__common__',
-		'parent': u'Lead-Opportunity',
-		'parentfield': u'field_mapper_details',
-		'parenttype': u'DocType Mapper'
-	},
-
-	# These values are common for all DocType Mapper
-	{
-		'doctype': u'DocType Mapper',
-		'from_doctype': u'Lead',
-		'module': u'Selling',
-		'name': '__common__',
-		'to_doctype': u'Opportunity'
-	},
-
-	# DocType Mapper, Lead-Opportunity
-	{
-		'doctype': u'DocType Mapper',
-		'name': u'Lead-Opportunity'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'campaign_name',
-		'map': u'Yes',
-		'to_field': u'campaign'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'doctype',
-		'map': u'Yes',
-		'to_field': u'enquiry_from'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'name',
-		'map': u'Yes',
-		'to_field': u'lead'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'status',
-		'map': u'No',
-		'to_field': u'status'
-	},
-
-	# Table Mapper Detail
-	{
-		'doctype': u'Table Mapper Detail'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2010-08-08 17:09:34", 
+  "modified_by": "Administrator", 
+  "modified": "2012-04-03 12:49:50"
+ }, 
+ {
+  "match_id": 0, 
+  "parent": "Lead-Opportunity", 
+  "name": "__common__", 
+  "doctype": "Table Mapper Detail", 
+  "parenttype": "DocType Mapper", 
+  "from_table": "Lead", 
+  "to_table": "Opportunity", 
+  "validation_logic": "name is not null", 
+  "parentfield": "table_mapper_details"
+ }, 
+ {
+  "match_id": 0, 
+  "parent": "Lead-Opportunity", 
+  "name": "__common__", 
+  "doctype": "Field Mapper Detail", 
+  "parenttype": "DocType Mapper", 
+  "parentfield": "field_mapper_details"
+ }, 
+ {
+  "name": "__common__", 
+  "to_doctype": "Opportunity", 
+  "module": "Selling", 
+  "doctype": "DocType Mapper", 
+  "from_doctype": "Lead"
+ }, 
+ {
+  "name": "Lead-Opportunity", 
+  "doctype": "DocType Mapper"
+ }, 
+ {
+  "map": "Yes", 
+  "to_field": "campaign", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "campaign_name"
+ }, 
+ {
+  "map": "Yes", 
+  "to_field": "enquiry_from", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "doctype"
+ }, 
+ {
+  "map": "Yes", 
+  "to_field": "lead", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "name"
+ }, 
+ {
+  "map": "No", 
+  "to_field": "status", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "status"
+ }, 
+ {
+  "doctype": "Table Mapper Detail"
+ }
 ]
\ No newline at end of file
diff --git a/selling/DocType Mapper/Opportunity-Quotation/Opportunity-Quotation.txt b/selling/DocType Mapper/Opportunity-Quotation/Opportunity-Quotation.txt
index 18543e8..ffa85e5 100644
--- a/selling/DocType Mapper/Opportunity-Quotation/Opportunity-Quotation.txt
+++ b/selling/DocType Mapper/Opportunity-Quotation/Opportunity-Quotation.txt
@@ -1,146 +1,113 @@
-# DocType Mapper, Opportunity-Quotation
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2010-08-08 17:09:34',
-		'docstatus': 0,
-		'modified': '2012-04-03 12:49:50',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all Table Mapper Detail
-	{
-		'doctype': u'Table Mapper Detail',
-		'name': '__common__',
-		'parent': u'Opportunity-Quotation',
-		'parentfield': u'table_mapper_details',
-		'parenttype': u'DocType Mapper',
-		'validation_logic': u'docstatus=1'
-	},
-
-	# These values are common for all Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'name': '__common__',
-		'parent': u'Opportunity-Quotation',
-		'parentfield': u'field_mapper_details',
-		'parenttype': u'DocType Mapper'
-	},
-
-	# These values are common for all DocType Mapper
-	{
-		'doctype': u'DocType Mapper',
-		'from_doctype': u'Opportunity',
-		'module': u'Selling',
-		'name': '__common__',
-		'ref_doc_submitted': 1,
-		'to_doctype': u'Quotation'
-	},
-
-	# DocType Mapper, Opportunity-Quotation
-	{
-		'doctype': u'DocType Mapper',
-		'name': u'Opportunity-Quotation'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'uom',
-		'map': u'Yes',
-		'match_id': 1,
-		'to_field': u'stock_uom'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'name',
-		'map': u'Yes',
-		'match_id': 0,
-		'to_field': u'enq_no'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'parent',
-		'map': u'Yes',
-		'match_id': 1,
-		'to_field': u'prevdoc_docname'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'parenttype',
-		'map': u'Yes',
-		'match_id': 1,
-		'to_field': u'prevdoc_doctype'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'enquiry_from',
-		'map': u'Yes',
-		'match_id': 0,
-		'to_field': u'quotation_to'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'enquiry_type',
-		'map': u'Yes',
-		'match_id': 0,
-		'to_field': u'order_type'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'transaction_date',
-		'map': u'No',
-		'match_id': 0,
-		'to_field': u'transaction_date'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'status',
-		'map': u'No',
-		'match_id': 0,
-		'to_field': u'status'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'naming_series',
-		'map': u'No',
-		'match_id': 0,
-		'to_field': u'naming_series'
-	},
-
-	# Table Mapper Detail
-	{
-		'doctype': u'Table Mapper Detail',
-		'from_table': u'Opportunity',
-		'match_id': 0,
-		'to_table': u'Quotation'
-	},
-
-	# Table Mapper Detail
-	{
-		'doctype': u'Table Mapper Detail',
-		'from_field': u'enq_details',
-		'from_table': u'Opportunity Item',
-		'match_id': 1,
-		'to_field': u'quotation_details',
-		'to_table': u'Quotation Item'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2010-08-08 17:09:34", 
+  "modified_by": "Administrator", 
+  "modified": "2012-04-03 12:49:50"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Opportunity-Quotation", 
+  "doctype": "Table Mapper Detail", 
+  "parenttype": "DocType Mapper", 
+  "validation_logic": "docstatus=1", 
+  "parentfield": "table_mapper_details"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Opportunity-Quotation", 
+  "doctype": "Field Mapper Detail", 
+  "parenttype": "DocType Mapper", 
+  "parentfield": "field_mapper_details"
+ }, 
+ {
+  "name": "__common__", 
+  "to_doctype": "Quotation", 
+  "module": "Selling", 
+  "doctype": "DocType Mapper", 
+  "ref_doc_submitted": 1, 
+  "from_doctype": "Opportunity"
+ }, 
+ {
+  "name": "Opportunity-Quotation", 
+  "doctype": "DocType Mapper"
+ }, 
+ {
+  "map": "Yes", 
+  "match_id": 1, 
+  "to_field": "stock_uom", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "uom"
+ }, 
+ {
+  "map": "Yes", 
+  "match_id": 0, 
+  "to_field": "enq_no", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "name"
+ }, 
+ {
+  "map": "Yes", 
+  "match_id": 1, 
+  "to_field": "prevdoc_docname", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "parent"
+ }, 
+ {
+  "map": "Yes", 
+  "match_id": 1, 
+  "to_field": "prevdoc_doctype", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "parenttype"
+ }, 
+ {
+  "map": "Yes", 
+  "match_id": 0, 
+  "to_field": "quotation_to", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "enquiry_from"
+ }, 
+ {
+  "map": "Yes", 
+  "match_id": 0, 
+  "to_field": "order_type", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "enquiry_type"
+ }, 
+ {
+  "map": "No", 
+  "match_id": 0, 
+  "to_field": "transaction_date", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "transaction_date"
+ }, 
+ {
+  "map": "No", 
+  "match_id": 0, 
+  "to_field": "status", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "status"
+ }, 
+ {
+  "map": "No", 
+  "match_id": 0, 
+  "to_field": "naming_series", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "naming_series"
+ }, 
+ {
+  "to_table": "Quotation", 
+  "doctype": "Table Mapper Detail", 
+  "match_id": 0, 
+  "from_table": "Opportunity"
+ }, 
+ {
+  "match_id": 1, 
+  "to_field": "quotation_details", 
+  "doctype": "Table Mapper Detail", 
+  "from_field": "enq_details", 
+  "from_table": "Opportunity Item", 
+  "to_table": "Quotation Item"
+ }
 ]
\ No newline at end of file
diff --git a/selling/DocType Mapper/Project-Sales Order/Project-Sales Order.txt b/selling/DocType Mapper/Project-Sales Order/Project-Sales Order.txt
index ee8f8b0..0d4a5a3 100644
--- a/selling/DocType Mapper/Project-Sales Order/Project-Sales Order.txt
+++ b/selling/DocType Mapper/Project-Sales Order/Project-Sales Order.txt
@@ -1,64 +1,49 @@
-# DocType Mapper, Project-Sales Order
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2010-09-01 15:47:59',
-		'docstatus': 0,
-		'modified': '2011-09-15 15:04:43',
-		'modified_by': 'Administrator',
-		'owner': 'ashwini@webnotestech.com'
-	},
-
-	# These values are common for all Table Mapper Detail
-	{
-		'doctype': 'Table Mapper Detail',
-		'from_table': 'Project',
-		'match_id': 0,
-		'name': '__common__',
-		'parent': 'Project-Sales Order',
-		'parentfield': 'table_mapper_details',
-		'parenttype': 'DocType Mapper',
-		'to_table': 'Sales Order',
-		'validation_logic': 'name is not null'
-	},
-
-	# These values are common for all Field Mapper Detail
-	{
-		'checking_operator': '=',
-		'doctype': 'Field Mapper Detail',
-		'from_field': 'customer',
-		'map': 'Yes',
-		'match_id': 0,
-		'name': '__common__',
-		'parent': 'Project-Sales Order',
-		'parentfield': 'field_mapper_details',
-		'parenttype': 'DocType Mapper',
-		'to_field': 'customer'
-	},
-
-	# These values are common for all DocType Mapper
-	{
-		'doctype': 'DocType Mapper',
-		'from_doctype': 'Project',
-		'module': 'Selling',
-		'name': '__common__',
-		'to_doctype': 'Sales Order'
-	},
-
-	# DocType Mapper, Project-Sales Order
-	{
-		'doctype': 'DocType Mapper',
-		'name': 'Project-Sales Order'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': 'Field Mapper Detail'
-	},
-
-	# Table Mapper Detail
-	{
-		'doctype': 'Table Mapper Detail'
-	}
+ {
+  "owner": "ashwini@webnotestech.com", 
+  "docstatus": 0, 
+  "creation": "2010-09-01 15:47:59", 
+  "modified_by": "Administrator", 
+  "modified": "2011-09-15 15:04:43"
+ }, 
+ {
+  "match_id": 0, 
+  "parent": "Project-Sales Order", 
+  "name": "__common__", 
+  "doctype": "Table Mapper Detail", 
+  "parenttype": "DocType Mapper", 
+  "from_table": "Project", 
+  "to_table": "Sales Order", 
+  "validation_logic": "name is not null", 
+  "parentfield": "table_mapper_details"
+ }, 
+ {
+  "map": "Yes", 
+  "match_id": 0, 
+  "parent": "Project-Sales Order", 
+  "name": "__common__", 
+  "to_field": "customer", 
+  "doctype": "Field Mapper Detail", 
+  "parenttype": "DocType Mapper", 
+  "checking_operator": "=", 
+  "from_field": "customer", 
+  "parentfield": "field_mapper_details"
+ }, 
+ {
+  "name": "__common__", 
+  "to_doctype": "Sales Order", 
+  "module": "Selling", 
+  "doctype": "DocType Mapper", 
+  "from_doctype": "Project"
+ }, 
+ {
+  "name": "Project-Sales Order", 
+  "doctype": "DocType Mapper"
+ }, 
+ {
+  "doctype": "Field Mapper Detail"
+ }, 
+ {
+  "doctype": "Table Mapper Detail"
+ }
 ]
\ No newline at end of file
diff --git a/selling/DocType Mapper/Quotation-Sales Order/Quotation-Sales Order.txt b/selling/DocType Mapper/Quotation-Sales Order/Quotation-Sales Order.txt
index 77e6cac..a20a434 100644
--- a/selling/DocType Mapper/Quotation-Sales Order/Quotation-Sales Order.txt
+++ b/selling/DocType Mapper/Quotation-Sales Order/Quotation-Sales Order.txt
@@ -1,165 +1,130 @@
-# DocType Mapper, Quotation-Sales Order
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2010-08-08 17:09:35',
-		'docstatus': 0,
-		'modified': '2011-09-14 12:36:24',
-		'modified_by': 'Administrator',
-		'owner': 'Administrator'
-	},
-
-	# These values are common for all Table Mapper Detail
-	{
-		'doctype': 'Table Mapper Detail',
-		'name': '__common__',
-		'parent': 'Quotation-Sales Order',
-		'parentfield': 'table_mapper_details',
-		'parenttype': 'DocType Mapper'
-	},
-
-	# These values are common for all Field Mapper Detail
-	{
-		'doctype': 'Field Mapper Detail',
-		'name': '__common__',
-		'parent': 'Quotation-Sales Order',
-		'parentfield': 'field_mapper_details',
-		'parenttype': 'DocType Mapper'
-	},
-
-	# These values are common for all DocType Mapper
-	{
-		'doctype': u'DocType Mapper',
-		'from_doctype': 'Quotation',
-		'module': 'Selling',
-		'name': '__common__',
-		'ref_doc_submitted': 1,
-		'to_doctype': 'Sales Order'
-	},
-
-	# DocType Mapper, Quotation-Sales Order
-	{
-		'doctype': u'DocType Mapper',
-		'name': 'Quotation-Sales Order'
-	},
-
-	# Field Mapper Detail
-	{
-		'checking_operator': '>=',
-		'doctype': 'Field Mapper Detail',
-		'from_field': 'transaction_date',
-		'map': 'No',
-		'match_id': 0,
-		'to_field': 'transaction_date'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': 'Field Mapper Detail',
-		'from_field': 'transaction_date',
-		'map': 'Yes',
-		'match_id': 0,
-		'to_field': 'quotation_date'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': 'Field Mapper Detail',
-		'from_field': 'name',
-		'map': 'Yes',
-		'match_id': 0,
-		'to_field': 'quotation_no'
-	},
-
-	# Field Mapper Detail
-	{
-		'checking_operator': '=',
-		'doctype': 'Field Mapper Detail',
-		'from_field': 'company',
-		'map': 'Yes',
-		'match_id': 0,
-		'to_field': 'company'
-	},
-
-	# Field Mapper Detail
-	{
-		'checking_operator': '=',
-		'doctype': 'Field Mapper Detail',
-		'from_field': 'fiscal_year',
-		'map': 'Yes',
-		'match_id': 0,
-		'to_field': 'fiscal_year'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': 'Field Mapper Detail',
-		'from_field': 'parent',
-		'map': 'Yes',
-		'match_id': 1,
-		'to_field': 'prevdoc_docname'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': 'Field Mapper Detail',
-		'from_field': 'naming_series',
-		'map': 'No',
-		'match_id': 0,
-		'to_field': 'naming_series'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': 'Field Mapper Detail',
-		'from_field': 'status',
-		'map': 'No',
-		'match_id': 0,
-		'to_field': 'status'
-	},
-
-	# Table Mapper Detail
-	{
-		'doctype': 'Table Mapper Detail',
-		'from_field': 'sales_team',
-		'from_table': 'Sales Team',
-		'match_id': 3,
-		'to_field': 'sales_team',
-		'to_table': 'Sales Team',
-		'validation_logic': 'name is not null'
-	},
-
-	# Table Mapper Detail
-	{
-		'doctype': 'Table Mapper Detail',
-		'from_field': 'other_charges',
-		'from_table': 'Sales Taxes and Charges',
-		'match_id': 2,
-		'to_field': 'other_charges',
-		'to_table': 'Sales Taxes and Charges',
-		'validation_logic': 'name is not null'
-	},
-
-	# Table Mapper Detail
-	{
-		'doctype': 'Table Mapper Detail',
-		'from_field': 'quotation_details',
-		'from_table': 'Quotation Item',
-		'match_id': 1,
-		'reference_doctype_key': 'prevdoc_doctype',
-		'to_field': 'sales_order_details',
-		'to_table': 'Sales Order Item',
-		'validation_logic': 'name is not null'
-	},
-
-	# Table Mapper Detail
-	{
-		'doctype': 'Table Mapper Detail',
-		'from_table': 'Quotation',
-		'match_id': 0,
-		'reference_key': 'prevdoc_docname',
-		'to_table': 'Sales Order',
-		'validation_logic': 'docstatus = 1'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2010-08-08 17:09:35", 
+  "modified_by": "Administrator", 
+  "modified": "2011-09-14 12:36:24"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Quotation-Sales Order", 
+  "doctype": "Table Mapper Detail", 
+  "parenttype": "DocType Mapper", 
+  "parentfield": "table_mapper_details"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Quotation-Sales Order", 
+  "doctype": "Field Mapper Detail", 
+  "parenttype": "DocType Mapper", 
+  "parentfield": "field_mapper_details"
+ }, 
+ {
+  "name": "__common__", 
+  "to_doctype": "Sales Order", 
+  "module": "Selling", 
+  "doctype": "DocType Mapper", 
+  "ref_doc_submitted": 1, 
+  "from_doctype": "Quotation"
+ }, 
+ {
+  "name": "Quotation-Sales Order", 
+  "doctype": "DocType Mapper"
+ }, 
+ {
+  "map": "No", 
+  "match_id": 0, 
+  "to_field": "transaction_date", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "transaction_date", 
+  "checking_operator": ">="
+ }, 
+ {
+  "map": "Yes", 
+  "match_id": 0, 
+  "to_field": "quotation_date", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "transaction_date"
+ }, 
+ {
+  "map": "Yes", 
+  "match_id": 0, 
+  "to_field": "quotation_no", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "name"
+ }, 
+ {
+  "map": "Yes", 
+  "match_id": 0, 
+  "to_field": "company", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "company", 
+  "checking_operator": "="
+ }, 
+ {
+  "map": "Yes", 
+  "match_id": 0, 
+  "to_field": "fiscal_year", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "fiscal_year", 
+  "checking_operator": "="
+ }, 
+ {
+  "map": "Yes", 
+  "match_id": 1, 
+  "to_field": "prevdoc_docname", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "parent"
+ }, 
+ {
+  "map": "No", 
+  "match_id": 0, 
+  "to_field": "naming_series", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "naming_series"
+ }, 
+ {
+  "map": "No", 
+  "match_id": 0, 
+  "to_field": "status", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "status"
+ }, 
+ {
+  "match_id": 3, 
+  "to_field": "sales_team", 
+  "doctype": "Table Mapper Detail", 
+  "from_field": "sales_team", 
+  "from_table": "Sales Team", 
+  "to_table": "Sales Team", 
+  "validation_logic": "name is not null"
+ }, 
+ {
+  "match_id": 2, 
+  "to_field": "other_charges", 
+  "doctype": "Table Mapper Detail", 
+  "from_field": "other_charges", 
+  "from_table": "Sales Taxes and Charges", 
+  "to_table": "Sales Taxes and Charges", 
+  "validation_logic": "name is not null"
+ }, 
+ {
+  "match_id": 1, 
+  "reference_doctype_key": "prevdoc_doctype", 
+  "to_field": "sales_order_details", 
+  "doctype": "Table Mapper Detail", 
+  "from_field": "quotation_details", 
+  "from_table": "Quotation Item", 
+  "to_table": "Sales Order Item", 
+  "validation_logic": "name is not null"
+ }, 
+ {
+  "reference_key": "prevdoc_docname", 
+  "match_id": 0, 
+  "doctype": "Table Mapper Detail", 
+  "from_table": "Quotation", 
+  "to_table": "Sales Order", 
+  "validation_logic": "docstatus = 1"
+ }
 ]
\ No newline at end of file
diff --git a/selling/Print Format/Quotation Classic/Quotation Classic.txt b/selling/Print Format/Quotation Classic/Quotation Classic.txt
index 719c572..470c9c1 100644
--- a/selling/Print Format/Quotation Classic/Quotation Classic.txt
+++ b/selling/Print Format/Quotation Classic/Quotation Classic.txt
@@ -1,28 +1,21 @@
-# Print Format, Quotation Classic
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-05-17 17:27:50',
-		'docstatus': 0,
-		'modified': '2012-05-17 18:01:08',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all Print Format
-	{
-		'doc_type': u'Quotation',
-		'doctype': 'Print Format',
-		'html': u'<!--\n\tSample Print Format for ERPNext\n\tPlease use at your own discretion\n\tFor suggestions and contributions:\n\t\thttps://github.com/webnotes/erpnext-print-templates\n\n\tFreely usable under MIT license\n-->\n\n<!-- Style Settings -->\n<style>\n\t/*\n\t\tcommon style for whole page\n\t\tThis should include:\n\t\t+ page size related settings\n\t\t+ font family settings\n\t\t+ line spacing settings\n\t*/\n\t@media screen {\n\t\tbody {\n\t\t\twidth: 8.3in;\n\t\t}\n\t}\n\n\thtml, body, div, span, td {\n\t\tfont-family: "Georgia", serif;\n\t\tfont-size: 12px;\n\t}\n\n\tbody {\n\t\tpadding: 10px;\n\t\tmargin: auto;\n\t\tfont-size: 12px;\n\t\tline-height: 150%;\n\t}\n\n\t.common {\n\t\tfont-family: "Georgia", serif !important;\n\t\tfont-size: 12px;\n\t\tpadding: 10px 0px;\n\t}\n\n\ttable {\n\t\tborder-collapse: collapse;\n\t\twidth: 100%;\n\t\tvertical-align: top;\n\t}\n\n\ttable td {\n\t\tpadding: 2px 0px;\n\t}\n\t\n\ttable h1, h2, h3, h4, h5, h6 {\n\t\tpadding: 0px;\n\t\tmargin: 0px;\n\t}\n\n\ttable.header-table td {\n\t\tvertical-align: top;\n\t}\n\n\ttable.header-table thead {\n\t\tborder-bottom: 1px solid black;\n\t}\n\n\ttable.header-table h3 {\n\t\tcolor: gray;\n\t}\n\n\ttable.header-table thead td {\n\t\tpadding: 5px 0px;\n\t}\n\n\tdiv.page-body table td:nth-child(6),\n\tdiv.page-body table td:nth-child(7) {\n\t\ttext-align: right;\n\t}\n\n\ttable.footer-table td {\n\t\tvertical-align: top;\n\t}\n\n\ttable.footer-table td table td:nth-child(2),\n\ttable.footer-table td table td:nth-child(3) {\n\t\ttext-align: right;\n\t}\n</style>\n\n\n<!-- Javascript -->\n<script>\n    // Store round off to places for fields\n    var decimals = {\n        adj_rate: (function() {\n            var adj_rate = get_field(\'Quotation Item\', \'adj_rate\');\n            if (adj_rate.fieldtype===\'Float\') return 6;\n            return 2;\n        })(),\n    };\n    var si_std = {\n\t\tprint_item_table: function() {\n\t\t\tvar table = print_table(\n\t\t\t\t\'Quotation\',\n\t\t\t\tdoc.name,\n\t\t\t\t\'quotation_details\',\n\t\t\t\t\'Quotation Item\',\n\t\t\t\t[// Here specify the table columns to be displayed\n\t\t\t\t\t\'SR\', \'item_code\', \'item_name\', \'description\', \'qty\', \'stock_uom\',\n\t\t\t\t\t\'export_rate\', \'export_amount\'\n\t\t\t\t],\n\t\t\t\t[// Here specify the labels of column headings\n\t\t\t\t\t\'Sr\', \'Item Code\', \'Item Name\', \'Description\', \'Qty\',\n\t\t\t\t\t\'UoM\', \'Basic Rate\', \'Amount\'\n\t\t\t\t],\n\t\t\t\t[// Here specify the column widths\n\t\t\t\t\t\'3%\', \'10%\', \'15%\', \'32%\', \'5%\',\n\t\t\t\t\t\'5%\', \'15%\', \'15%\'\n\t\t\t\t],\n\t\t\t\tnull,\n\t\t\t\tnull,\n\t\t\t\t{\n\t\t\t\t\t\'description\' : function(data_row) {\n\t\t\t\t\t\tif(data_row.adj_rate) {\n\t\t\t\t\t\t\tvar to_append = \'<div style="padding-left: 15px;"><i>Discount: \' + \n    \t\t\t\t\t\t\troundNumber(data_row.adj_rate, decimals.adj_rate || 2) + \n                                \'% on \' + doc.currency + \' \' +\n\t\t\t\t\t\t\t\tfmt_money(data_row.ref_rate) + \'</i></div>\';\n\t\t\t\t\t\t\tif(data_row.description.indexOf(to_append)==-1) {\n\t\t\t\t\t\t\t\treturn data_row.description + to_append;\n\t\t\t\t\t\t\t} else { return data_row.description; }\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\treturn data_row.description;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t);\n\n\t\t\t// This code takes care of page breaks\n\t\t\tif(table.appendChild) {\n\t\t\t\tout = table.innerHTML;\n\t\t\t} else {\n\t\t\t\tout = \'\';\n\t\t\t\tfor(var i=0; i < (table.length-1); i++) {\n\t\t\t\t\tout += table[i].innerHTML + \n\t\t\t\t\t\t\'<div style = "page-break-after: always;" \\\n\t\t\t\t\t\tclass = "page_break"></div>\\\n\t\t\t\t\t\t<div class="page-settings"></div>\';\n\t\t\t\t}\n\t\t\t\tout += table[table.length-1].innerHTML;\n\t\t\t}\n\t\t\treturn out;\n\t\t},\n\n\n\t\tprint_other_charges: function(parent) {\n\t\t\tvar oc = getchildren(\'Sales Taxes and Charges\', doc.name, \'other_charges\');\n\t\t\tvar rows = \'<table width=100%>\\n\';\n\t\t\tfor(var i=0; i<oc.length; i++) {\n\t\t\t\tif(!oc[i].included_in_print_rate) {\n\t\t\t\t\trows +=\n\t\t\t\t\t\t\'<tr>\\n\' +\n\t\t\t\t\t\t\t\'\\t<td>\' + oc[i].description + \'</td>\\n\' +\n\t\t\t\t\t\t\t\'\\t<td></td>\\n\' +\n\t\t\t\t\t\t\t\'\\t<td width=38%>\' + fmt_money(oc[i].tax_amount) + \'</td>\\n\' +\n\t\t\t\t\t\t\'</tr>\\n\';\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn rows + \'</table>\\n\';\n\t\t}\n\t};\n</script>\n\n\n<!-- Page Layout Settings -->\n<div class=\'common page-header\'>\n\t<!-- \n\t\tPage Header will contain\n\t\t\t+ table 1\n\t\t\t\t+ table 1a\n\t\t\t\t\t- Name\n\t\t\t\t\t- Address\n\t\t\t\t\t- Contact\n\t\t\t\t\t- Mobile No\n\t\t\t\t+ table 1b\n\t\t\t\t\t- Voucher Date\n\t\t\t\t\t- Due Date\n\t-->\n\t<table class=\'header-table\' cellspacing=0>\n\t\t<thead>\n\t\t\t<tr><td>\n\t\t\t\t\t<script>\'<h1>\' + (doc.select_print_heading || \'Quotation\') + \'</h1>\'</script>\n\t\t\t</td></tr>\n\t\t\t<tr><td><h3><script>cur_frm.docname</script></h3></td></tr>\n\t\t</thead>\n\t\t<tbody>\n\t\t\t<tr>\n\t\t\t\t<td width=60%><table width=100% cellspacing=0><tbody>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td width=39%><b>Name</b></td>\n\t\t\t\t\t\t<td><script>doc.customer?doc.customer:doc.lead_name</script></td>\n\t\t\t\t\t</tr>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td><b>Address</b></td>\n\t\t\t\t\t\t<td><script>replace_newlines(doc.address_display)</script></td>\n\t\t\t\t\t</tr>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td><b>Contact</b></td>\n\t\t\t\t\t\t<td><script>doc.contact_display</script></td>\n\t\t\t\t\t</tr>\n\t\t\t\t</tbody></table></td>\n\t\t\t\t<td><table width=100% cellspacing=0><tbody>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td width=63%><b>Quotation Date</b></td>\n\t\t\t\t\t\t<td><script>date.str_to_user(doc.transaction_date)</script></td>\n\t\t\t\t\t<tr>\t\t\t\t\t\n\t\t\t\t</tbody></table></td>\n\t\t\t</tr>\n\t\t</tbody>\n\t\t<tfoot>\n\t\t\n\t\t</tfoot>\n\t</table>\n</div>\n<div class=\'common page-body\'>\n\t<!-- \n\t\tPage Body will contain\n\t\t\t+ table 2\n\t\t\t\t- Sales Invoice Data\n\t-->\n\t<script>si_std.print_item_table()</script>\n</div>\n<div class=\'common page-footer\'>\n\t<!-- \n\t\tPage Footer will contain\n\t\t\t+ table 3\n\t\t\t\t- Terms and Conditions\n\t\t\t\t- Total Rounded Amount Calculation\n\t\t\t\t- Total Rounded Amount in Words\n\t-->\n\t<table class=\'footer-table\' width=100% cellspacing=0>\n\t\t<thead>\n\t\t\t\n\t\t</thead>\n\t\t<tbody>\n\t\t\t<tr>\n\t\t\t\t<td width=60% style=\'padding-right: 10px;\'>\n\t\t\t\t\t<b>Terms, Conditions &amp; Other Information:</b><br />\n\t\t\t\t\t<script>doc.terms</script>\n\t\t\t\t</td>\n\t\t\t\t<td>\n\t\t\t\t\t<table cellspacing=0 width=100%><tbody>\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td>Net Total</td>\n\t\t\t\t\t\t\t<td></td>\n\t\t\t\t\t\t\t<td width=38%><script>\n\t\t\t\t\t\t\t\tfmt_money(doc.net_total/doc.conversion_rate)\n\t\t\t\t\t\t\t</script></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr><td colspan=3><script>si_std.print_other_charges()</script></td></tr>\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td>Grand Total</td>\n\t\t\t\t\t\t\t<td></td>\n\t\t\t\t\t\t\t<td><script>\n\t\t\t\t\t\t\t\tfmt_money(doc.grand_total_export)\n\t\t\t\t\t\t\t</script></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr style=\'font-weight: bold\'>\n\t\t\t\t\t\t\t<td>Rounded Total</td>\n\t\t\t\t\t\t\t<td><script>doc.currency</script></td>\n\t\t\t\t\t\t\t<td><script>\n\t\t\t\t\t\t\t\tfmt_money(doc.rounded_total_export)\n\t\t\t\t\t\t\t</script></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t</tbody></table>\n\t\t\t\t\t<br /><b>In Words</b><br />\n\t\t\t\t\t<i><script>doc.in_words_export</script></i>\n\t\t\t\t</td>\n\t\t\t</tr>\t\t\n\t\t</tbody>\n\t\t<tfoot>\n\t\t\n\t\t</tfoot>\n\t</table>\n</div>\n',
-		'module': u'Selling',
-		'name': '__common__',
-		'standard': u'Yes'
-	},
-
-	# Print Format, Quotation Classic
-	{
-		'doctype': 'Print Format',
-		'name': u'Quotation Classic'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-05-17 17:27:50", 
+  "modified_by": "Administrator", 
+  "modified": "2012-05-17 18:01:08"
+ }, 
+ {
+  "doc_type": "Quotation", 
+  "name": "__common__", 
+  "module": "Selling", 
+  "doctype": "Print Format", 
+  "html": "<!--\n\tSample Print Format for ERPNext\n\tPlease use at your own discretion\n\tFor suggestions and contributions:\n\t\thttps://github.com/webnotes/erpnext-print-templates\n\n\tFreely usable under MIT license\n-->\n\n<!-- Style Settings -->\n<style>\n\t/*\n\t\tcommon style for whole page\n\t\tThis should include:\n\t\t+ page size related settings\n\t\t+ font family settings\n\t\t+ line spacing settings\n\t*/\n\t@media screen {\n\t\tbody {\n\t\t\twidth: 8.3in;\n\t\t}\n\t}\n\n\thtml, body, div, span, td {\n\t\tfont-family: \"Georgia\", serif;\n\t\tfont-size: 12px;\n\t}\n\n\tbody {\n\t\tpadding: 10px;\n\t\tmargin: auto;\n\t\tfont-size: 12px;\n\t\tline-height: 150%;\n\t}\n\n\t.common {\n\t\tfont-family: \"Georgia\", serif !important;\n\t\tfont-size: 12px;\n\t\tpadding: 10px 0px;\n\t}\n\n\ttable {\n\t\tborder-collapse: collapse;\n\t\twidth: 100%;\n\t\tvertical-align: top;\n\t}\n\n\ttable td {\n\t\tpadding: 2px 0px;\n\t}\n\t\n\ttable h1, h2, h3, h4, h5, h6 {\n\t\tpadding: 0px;\n\t\tmargin: 0px;\n\t}\n\n\ttable.header-table td {\n\t\tvertical-align: top;\n\t}\n\n\ttable.header-table thead {\n\t\tborder-bottom: 1px solid black;\n\t}\n\n\ttable.header-table h3 {\n\t\tcolor: gray;\n\t}\n\n\ttable.header-table thead td {\n\t\tpadding: 5px 0px;\n\t}\n\n\tdiv.page-body table td:nth-child(6),\n\tdiv.page-body table td:nth-child(7) {\n\t\ttext-align: right;\n\t}\n\n\ttable.footer-table td {\n\t\tvertical-align: top;\n\t}\n\n\ttable.footer-table td table td:nth-child(2),\n\ttable.footer-table td table td:nth-child(3) {\n\t\ttext-align: right;\n\t}\n</style>\n\n\n<!-- Javascript -->\n<script>\n    // Store round off to places for fields\n    var decimals = {\n        adj_rate: (function() {\n            var adj_rate = get_field('Quotation Item', 'adj_rate');\n            if (adj_rate.fieldtype==='Float') return 6;\n            return 2;\n        })(),\n    };\n    var si_std = {\n\t\tprint_item_table: function() {\n\t\t\tvar table = print_table(\n\t\t\t\t'Quotation',\n\t\t\t\tdoc.name,\n\t\t\t\t'quotation_details',\n\t\t\t\t'Quotation Item',\n\t\t\t\t[// Here specify the table columns to be displayed\n\t\t\t\t\t'SR', 'item_code', 'item_name', 'description', 'qty', 'stock_uom',\n\t\t\t\t\t'export_rate', 'export_amount'\n\t\t\t\t],\n\t\t\t\t[// Here specify the labels of column headings\n\t\t\t\t\t'Sr', 'Item Code', 'Item Name', 'Description', 'Qty',\n\t\t\t\t\t'UoM', 'Basic Rate', 'Amount'\n\t\t\t\t],\n\t\t\t\t[// Here specify the column widths\n\t\t\t\t\t'3%', '10%', '15%', '32%', '5%',\n\t\t\t\t\t'5%', '15%', '15%'\n\t\t\t\t],\n\t\t\t\tnull,\n\t\t\t\tnull,\n\t\t\t\t{\n\t\t\t\t\t'description' : function(data_row) {\n\t\t\t\t\t\tif(data_row.adj_rate) {\n\t\t\t\t\t\t\tvar to_append = '<div style=\"padding-left: 15px;\"><i>Discount: ' + \n    \t\t\t\t\t\t\troundNumber(data_row.adj_rate, decimals.adj_rate || 2) + \n                                '% on ' + doc.currency + ' ' +\n\t\t\t\t\t\t\t\tfmt_money(data_row.ref_rate) + '</i></div>';\n\t\t\t\t\t\t\tif(data_row.description.indexOf(to_append)==-1) {\n\t\t\t\t\t\t\t\treturn data_row.description + to_append;\n\t\t\t\t\t\t\t} else { return data_row.description; }\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\treturn data_row.description;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t);\n\n\t\t\t// This code takes care of page breaks\n\t\t\tif(table.appendChild) {\n\t\t\t\tout = table.innerHTML;\n\t\t\t} else {\n\t\t\t\tout = '';\n\t\t\t\tfor(var i=0; i < (table.length-1); i++) {\n\t\t\t\t\tout += table[i].innerHTML + \n\t\t\t\t\t\t'<div style = \"page-break-after: always;\" \\\n\t\t\t\t\t\tclass = \"page_break\"></div>\\\n\t\t\t\t\t\t<div class=\"page-settings\"></div>';\n\t\t\t\t}\n\t\t\t\tout += table[table.length-1].innerHTML;\n\t\t\t}\n\t\t\treturn out;\n\t\t},\n\n\n\t\tprint_other_charges: function(parent) {\n\t\t\tvar oc = getchildren('Sales Taxes and Charges', doc.name, 'other_charges');\n\t\t\tvar rows = '<table width=100%>\\n';\n\t\t\tfor(var i=0; i<oc.length; i++) {\n\t\t\t\tif(!oc[i].included_in_print_rate) {\n\t\t\t\t\trows +=\n\t\t\t\t\t\t'<tr>\\n' +\n\t\t\t\t\t\t\t'\\t<td>' + oc[i].description + '</td>\\n' +\n\t\t\t\t\t\t\t'\\t<td></td>\\n' +\n\t\t\t\t\t\t\t'\\t<td width=38%>' + fmt_money(oc[i].tax_amount) + '</td>\\n' +\n\t\t\t\t\t\t'</tr>\\n';\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn rows + '</table>\\n';\n\t\t}\n\t};\n</script>\n\n\n<!-- Page Layout Settings -->\n<div class='common page-header'>\n\t<!-- \n\t\tPage Header will contain\n\t\t\t+ table 1\n\t\t\t\t+ table 1a\n\t\t\t\t\t- Name\n\t\t\t\t\t- Address\n\t\t\t\t\t- Contact\n\t\t\t\t\t- Mobile No\n\t\t\t\t+ table 1b\n\t\t\t\t\t- Voucher Date\n\t\t\t\t\t- Due Date\n\t-->\n\t<table class='header-table' cellspacing=0>\n\t\t<thead>\n\t\t\t<tr><td>\n\t\t\t\t\t<script>'<h1>' + (doc.select_print_heading || 'Quotation') + '</h1>'</script>\n\t\t\t</td></tr>\n\t\t\t<tr><td><h3><script>cur_frm.docname</script></h3></td></tr>\n\t\t</thead>\n\t\t<tbody>\n\t\t\t<tr>\n\t\t\t\t<td width=60%><table width=100% cellspacing=0><tbody>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td width=39%><b>Name</b></td>\n\t\t\t\t\t\t<td><script>doc.customer?doc.customer:doc.lead_name</script></td>\n\t\t\t\t\t</tr>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td><b>Address</b></td>\n\t\t\t\t\t\t<td><script>replace_newlines(doc.address_display)</script></td>\n\t\t\t\t\t</tr>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td><b>Contact</b></td>\n\t\t\t\t\t\t<td><script>doc.contact_display</script></td>\n\t\t\t\t\t</tr>\n\t\t\t\t</tbody></table></td>\n\t\t\t\t<td><table width=100% cellspacing=0><tbody>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td width=63%><b>Quotation Date</b></td>\n\t\t\t\t\t\t<td><script>date.str_to_user(doc.transaction_date)</script></td>\n\t\t\t\t\t<tr>\t\t\t\t\t\n\t\t\t\t</tbody></table></td>\n\t\t\t</tr>\n\t\t</tbody>\n\t\t<tfoot>\n\t\t\n\t\t</tfoot>\n\t</table>\n</div>\n<div class='common page-body'>\n\t<!-- \n\t\tPage Body will contain\n\t\t\t+ table 2\n\t\t\t\t- Sales Invoice Data\n\t-->\n\t<script>si_std.print_item_table()</script>\n</div>\n<div class='common page-footer'>\n\t<!-- \n\t\tPage Footer will contain\n\t\t\t+ table 3\n\t\t\t\t- Terms and Conditions\n\t\t\t\t- Total Rounded Amount Calculation\n\t\t\t\t- Total Rounded Amount in Words\n\t-->\n\t<table class='footer-table' width=100% cellspacing=0>\n\t\t<thead>\n\t\t\t\n\t\t</thead>\n\t\t<tbody>\n\t\t\t<tr>\n\t\t\t\t<td width=60% style='padding-right: 10px;'>\n\t\t\t\t\t<b>Terms, Conditions &amp; Other Information:</b><br />\n\t\t\t\t\t<script>doc.terms</script>\n\t\t\t\t</td>\n\t\t\t\t<td>\n\t\t\t\t\t<table cellspacing=0 width=100%><tbody>\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td>Net Total</td>\n\t\t\t\t\t\t\t<td></td>\n\t\t\t\t\t\t\t<td width=38%><script>\n\t\t\t\t\t\t\t\tfmt_money(doc.net_total/doc.conversion_rate)\n\t\t\t\t\t\t\t</script></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr><td colspan=3><script>si_std.print_other_charges()</script></td></tr>\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td>Grand Total</td>\n\t\t\t\t\t\t\t<td></td>\n\t\t\t\t\t\t\t<td><script>\n\t\t\t\t\t\t\t\tfmt_money(doc.grand_total_export)\n\t\t\t\t\t\t\t</script></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr style='font-weight: bold'>\n\t\t\t\t\t\t\t<td>Rounded Total</td>\n\t\t\t\t\t\t\t<td><script>doc.currency</script></td>\n\t\t\t\t\t\t\t<td><script>\n\t\t\t\t\t\t\t\tfmt_money(doc.rounded_total_export)\n\t\t\t\t\t\t\t</script></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t</tbody></table>\n\t\t\t\t\t<br /><b>In Words</b><br />\n\t\t\t\t\t<i><script>doc.in_words_export</script></i>\n\t\t\t\t</td>\n\t\t\t</tr>\t\t\n\t\t</tbody>\n\t\t<tfoot>\n\t\t\n\t\t</tfoot>\n\t</table>\n</div>\n", 
+  "standard": "Yes"
+ }, 
+ {
+  "name": "Quotation Classic", 
+  "doctype": "Print Format"
+ }
 ]
\ No newline at end of file
diff --git a/selling/Print Format/Quotation Modern/Quotation Modern.txt b/selling/Print Format/Quotation Modern/Quotation Modern.txt
index 0cd5299..82f67be 100644
--- a/selling/Print Format/Quotation Modern/Quotation Modern.txt
+++ b/selling/Print Format/Quotation Modern/Quotation Modern.txt
@@ -1,28 +1,21 @@
-# Print Format, Quotation Modern
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-05-17 17:27:50',
-		'docstatus': 0,
-		'modified': '2012-05-17 18:00:12',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all Print Format
-	{
-		'doc_type': u'Quotation',
-		'doctype': 'Print Format',
-		'html': u'<!--\n\tSample Print Format for ERPNext\n\tPlease use at your own discretion\n\tFor suggestions and contributions:\n\t\thttps://github.com/webnotes/erpnext-print-templates\n\n\tFreely usable under MIT license\n-->\n\n<!-- Style Settings -->\n<style>\n\t/*\n\t\tcommon style for whole page\n\t\tThis should include:\n\t\t+ page size related settings\n\t\t+ font family settings\n\t\t+ line spacing settings\n\t*/\n\t@media screen {\n\t\tbody {\n\t\t\twidth: 8.3in;\n\t\t}\n\t}\n\n\thtml, body, div, span, td {\n\t\tfont-family: "Helvetica", "Arial", sans-serif;\n\t\tfont-size: 12px;\n\t}\n\n\tbody {\n\t\tpadding: 10px;\n\t\tmargin: auto;\n\t\tfont-size: 12px;\n\t\tline-height: 150%;\n\t}\n\n\t.common {\n\t\tfont-family: "Helvetica", "Arial", sans-serif !important;\n\t\tfont-size: 12px;\n\t\tpadding: 10px 0px;\n\t}\n\n\ttable {\n\t\tborder-collapse: collapse;\n\t\twidth: 100%;\n\t\tvertical-align: top;\n\t\tborder-style: none !important;\n\t}\n\n\ttable td {\n\t\tpadding: 2px 0px;\n\t\tborder-style: none !important;\n\t}\n\t\n\ttable h1, h2, h3, h4, h5, h6 {\n\t\tpadding: 0px;\n\t\tmargin: 0px;\n\t}\n\n\ttable.header-table td {\n\t\tvertical-align: top;\n\t}\n\n\ttable.header-table h1 {\n\t\ttext-transform: uppercase;\n\t\tcolor: white;\n\t\tfont-size: 55px;\n\t\tfont-style: italic;\n\t}\n\n\ttable.header-table thead tr:nth-child(1) div {\n\t\theight: 24px;\n\t\tbackground-color: #696969;\n\t\tvertical-align: middle;\n\t\tpadding: 12px 0px 0px 0px;\n\t\twidth: 100%;\n\t}\n\n\tdiv.page-body table td:nth-child(6),\n\tdiv.page-body table td:nth-child(7) {\n\t\ttext-align: right;\n\t}\n\n\tdiv.page-body table tr td {\n\t\tbackground-color: #DCDCDC !important;\n\t}\n\n\tdiv.page-body table tr:nth-child(1) td {\n\t\tbackground-color: #696969 !important;\n\t\tcolor: white !important;\n\t}\n\n\ttable.footer-table td {\n\t\tvertical-align: top;\n\t}\n\n\ttable.footer-table td table td:nth-child(2),\n\ttable.footer-table td table td:nth-child(3) {\n\t\ttext-align: right;\n\t}\n\n\ttable.footer-table tfoot td {\n\t\tbackground-color: #696969;\n\t\theight: 10px;\n\t}\n\n\t.imp-details {\n\t\tbackground-color: #DCDCDC;\n\t}\n</style>\n\n\n<!-- Javascript -->\n<script>\n    // Store round off to places for fields\n    var decimals = {\n        adj_rate: (function() {\n            var adj_rate = get_field(\'Quotation Item\', \'adj_rate\');\n            if (adj_rate.fieldtype===\'Float\') return 6;\n            return 2;\n        })(),\n    };\n\tvar si_std = {\n\t\tprint_item_table: function() {\n\t\t\tvar table = print_table(\n\t\t\t\t\'Quotation\',\n\t\t\t\tdoc.name,\n\t\t\t\t\'quotation_details\',\n\t\t\t\t\'Quotation Item\',\n\t\t\t\t[// Here specify the table columns to be displayed\n\t\t\t\t\t\'SR\', \'item_code\', \'item_name\', \'description\', \'qty\', \'stock_uom\',\n\t\t\t\t\t\'export_rate\', \'export_amount\'\n\t\t\t\t],\n\t\t\t\t[// Here specify the labels of column headings\n\t\t\t\t\t\'Sr\', \'Item Code\', \'Item Name\', \'Description\', \'Qty\',\n\t\t\t\t\t\'UoM\', \'Basic Rate\', \'Amount\'\n\t\t\t\t],\n\t\t\t\t[// Here specify the column widths\n\t\t\t\t\t\'3%\', \'10%\', \'15%\', \'32%\', \'5%\',\n\t\t\t\t\t\'5%\', \'15%\', \'15%\'\n\t\t\t\t],\n\t\t\t\tnull,\n\t\t\t\tnull,\n\t\t\t\t{\n\t\t\t\t\t\'description\' : function(data_row) {\n\t\t\t\t\t\tif(data_row.adj_rate) {\n\t\t\t\t\t\t\tvar to_append = \'<div style="padding-left: 15px;"><i>Discount: \' + \n\t\t\t\t\t\t\t\troundNumber(data_row.adj_rate, decimals.adj_rate || 2) + \n                                \'% on \' + doc.currency + \' \' +\n\t\t\t\t\t\t\t\tfmt_money(data_row.ref_rate) + \'</i></div>\';\n\t\t\t\t\t\t\tif(data_row.description.indexOf(to_append)==-1) {\n\t\t\t\t\t\t\t\treturn data_row.description + to_append;\n\t\t\t\t\t\t\t} else { return data_row.description; }\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\treturn data_row.description;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t);\n\n\t\t\t// This code takes care of page breaks\n\t\t\tif(table.appendChild) {\n\t\t\t\tout = table.innerHTML;\n\t\t\t} else {\n\t\t\t\tout = \'\';\n\t\t\t\tfor(var i=0; i < (table.length-1); i++) {\n\t\t\t\t\tout += table[i].innerHTML + \n\t\t\t\t\t\t\'<div style = "page-break-after: always;" \\\n\t\t\t\t\t\tclass = "page_break"></div>\\\n\t\t\t\t\t\t<div class="page-settings"></div>\';\n\t\t\t\t}\n\t\t\t\tout += table[table.length-1].innerHTML;\n\t\t\t}\n\t\t\treturn out;\n\t\t},\n\n\n\t\tprint_other_charges: function(parent) {\n\t\t\tvar oc = getchildren(\'Sales Taxes and Charges\', doc.name, \'other_charges\');\n\t\t\tvar rows = \'<table width=100%>\\n\';\n\t\t\tfor(var i=0; i<oc.length; i++) {\n\t\t\t\tif(!oc[i].included_in_print_rate) {\n\t\t\t\t\trows +=\n\t\t\t\t\t\t\'<tr>\\n\' +\n\t\t\t\t\t\t\t\'\\t<td>\' + oc[i].description + \'</td>\\n\' +\n\t\t\t\t\t\t\t\'\\t<td></td>\\n\' +\n\t\t\t\t\t\t\t\'\\t<td width=38%>\' + fmt_money(oc[i].tax_amount) + \'</td>\\n\' +\n\t\t\t\t\t\t\'</tr>\\n\';\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn rows + \'</table>\\n\';\n\t\t}\n\t};\n</script>\n\n\n<!-- Page Layout Settings -->\n<div class=\'common page-header\'>\n\t<!-- \n\t\tPage Header will contain\n\t\t\t+ table 1\n\t\t\t\t+ table 1a\n\t\t\t\t\t- Name\n\t\t\t\t\t- Address\n\t\t\t\t\t- Contact\n\t\t\t\t\t- Mobile No\n\t\t\t\t+ table 1b\n\t\t\t\t\t- Voucher Date\n\t\t\t\t\t- Due Date\n\t-->\n\t<table class=\'header-table\' cellspacing=0>\n\t\t<thead>\n\t\t\t<tr><td colspan=2><div><script>\'<h1>\' + (doc.select_print_heading || \'Quotation\') + \'</h1>\'</script></div></td></tr>\n\t\t\t<tr><td colspan=2><div style="height:15px"></div></td></tr>\n\t\t</thead>\n\t\t<tbody>\n\t\t\t<tr>\n\t\t\t\t<td width=60%><table width=100% cellspacing=0><tbody>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td width=39%><b>Name</b></td>\n\t\t\t\t\t\t<td><script>doc.customer?doc.customer:doc.lead_name</script></td>\n\t\t\t\t\t</tr>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td><b>Address</b></td>\n\t\t\t\t\t\t<td><script>replace_newlines(doc.address_display)</script></td>\n\t\t\t\t\t</tr>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td><b>Contact</b></td>\n\t\t\t\t\t\t<td><script>doc.contact_display</script></td>\n\t\t\t\t\t</tr>\n\t\t\t\t</tbody></table></td>\n\t\t\t\t<td><table width=100% cellspacing=0><tbody>\n\t\t\t\t\t<tr class=\'imp-details\'>\n\t\t\t\t\t\t<td><b>Quotation No.</b></td>\n\t\t\t\t\t\t<td><script>cur_frm.docname</script></td>\n\t\t\t\t\t</tr>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td width=63%><b>Quotation Date</b></td>\n\t\t\t\t\t\t<td><script>date.str_to_user(doc.transaction_date)</script></td>\n\t\t\t\t\t<tr>\t\t\t\t\t\n\t\t\t\t</tbody></table></td>\n\t\t\t</tr>\n\t\t</tbody>\n\t\t<tfoot>\n\t\t\n\t\t</tfoot>\n\t</table>\n</div>\n<div class=\'common page-body\'>\n\t<!-- \n\t\tPage Body will contain\n\t\t\t+ table 2\n\t\t\t\t- Sales Invoice Data\n\t-->\n\t<script>si_std.print_item_table()</script>\n</div>\n<div class=\'common page-footer\'>\n\t<!-- \n\t\tPage Footer will contain\n\t\t\t+ table 3\n\t\t\t\t- Terms and Conditions\n\t\t\t\t- Total Rounded Amount Calculation\n\t\t\t\t- Total Rounded Amount in Words\n\t-->\n\t<table class=\'footer-table\' width=100% cellspacing=0>\n\t\t<thead>\n\t\t\t\n\t\t</thead>\n\t\t<tbody>\n\t\t\t<tr>\n\t\t\t\t<td width=60% style=\'padding-right: 10px;\'>\n\t\t\t\t\t<b>Terms, Conditions &amp; Other Information:</b><br />\n\t\t\t\t\t<script>doc.terms</script>\n\t\t\t\t</td>\n\t\t\t\t<td>\n\t\t\t\t\t<table cellspacing=0 width=100%><tbody>\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td>Net Total</td>\n\t\t\t\t\t\t\t<td></td>\n\t\t\t\t\t\t\t<td width=38%><script>\n\t\t\t\t\t\t\t\tfmt_money(doc.net_total/doc.conversion_rate)\n\t\t\t\t\t\t\t</script></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr><td colspan=3><script>si_std.print_other_charges()</script></td></tr>\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td>Grand Total</td>\n\t\t\t\t\t\t\t<td></td>\n\t\t\t\t\t\t\t<td><script>\n\t\t\t\t\t\t\t\tfmt_money(doc.grand_total_export)\n\t\t\t\t\t\t\t</script></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr style=\'font-weight: bold\' class=\'imp-details\'>\n\t\t\t\t\t\t\t<td>Rounded Total</td>\n\t\t\t\t\t\t\t<td><script>doc.currency</script></td>\n\t\t\t\t\t\t\t<td><script>\n\t\t\t\t\t\t\t\tfmt_money(doc.rounded_total_export)\n\t\t\t\t\t\t\t</script></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t</tbody></table>\n\t\t\t\t\t<br /><b>In Words</b><br />\n\t\t\t\t\t<i><script>doc.in_words_export</script></i>\n\t\t\t\t</td>\n\t\t\t</tr>\t\t\n\t\t</tbody>\n\t\t<tfoot>\n\t\t\t<tr><td colspan=2><div></div></td><tr>\n\t\t</tfoot>\n\t</table>\n</div>\n',
-		'module': u'Selling',
-		'name': '__common__',
-		'standard': u'Yes'
-	},
-
-	# Print Format, Quotation Modern
-	{
-		'doctype': 'Print Format',
-		'name': u'Quotation Modern'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-05-17 17:27:50", 
+  "modified_by": "Administrator", 
+  "modified": "2012-05-17 18:00:12"
+ }, 
+ {
+  "doc_type": "Quotation", 
+  "name": "__common__", 
+  "module": "Selling", 
+  "doctype": "Print Format", 
+  "html": "<!--\n\tSample Print Format for ERPNext\n\tPlease use at your own discretion\n\tFor suggestions and contributions:\n\t\thttps://github.com/webnotes/erpnext-print-templates\n\n\tFreely usable under MIT license\n-->\n\n<!-- Style Settings -->\n<style>\n\t/*\n\t\tcommon style for whole page\n\t\tThis should include:\n\t\t+ page size related settings\n\t\t+ font family settings\n\t\t+ line spacing settings\n\t*/\n\t@media screen {\n\t\tbody {\n\t\t\twidth: 8.3in;\n\t\t}\n\t}\n\n\thtml, body, div, span, td {\n\t\tfont-family: \"Helvetica\", \"Arial\", sans-serif;\n\t\tfont-size: 12px;\n\t}\n\n\tbody {\n\t\tpadding: 10px;\n\t\tmargin: auto;\n\t\tfont-size: 12px;\n\t\tline-height: 150%;\n\t}\n\n\t.common {\n\t\tfont-family: \"Helvetica\", \"Arial\", sans-serif !important;\n\t\tfont-size: 12px;\n\t\tpadding: 10px 0px;\n\t}\n\n\ttable {\n\t\tborder-collapse: collapse;\n\t\twidth: 100%;\n\t\tvertical-align: top;\n\t\tborder-style: none !important;\n\t}\n\n\ttable td {\n\t\tpadding: 2px 0px;\n\t\tborder-style: none !important;\n\t}\n\t\n\ttable h1, h2, h3, h4, h5, h6 {\n\t\tpadding: 0px;\n\t\tmargin: 0px;\n\t}\n\n\ttable.header-table td {\n\t\tvertical-align: top;\n\t}\n\n\ttable.header-table h1 {\n\t\ttext-transform: uppercase;\n\t\tcolor: white;\n\t\tfont-size: 55px;\n\t\tfont-style: italic;\n\t}\n\n\ttable.header-table thead tr:nth-child(1) div {\n\t\theight: 24px;\n\t\tbackground-color: #696969;\n\t\tvertical-align: middle;\n\t\tpadding: 12px 0px 0px 0px;\n\t\twidth: 100%;\n\t}\n\n\tdiv.page-body table td:nth-child(6),\n\tdiv.page-body table td:nth-child(7) {\n\t\ttext-align: right;\n\t}\n\n\tdiv.page-body table tr td {\n\t\tbackground-color: #DCDCDC !important;\n\t}\n\n\tdiv.page-body table tr:nth-child(1) td {\n\t\tbackground-color: #696969 !important;\n\t\tcolor: white !important;\n\t}\n\n\ttable.footer-table td {\n\t\tvertical-align: top;\n\t}\n\n\ttable.footer-table td table td:nth-child(2),\n\ttable.footer-table td table td:nth-child(3) {\n\t\ttext-align: right;\n\t}\n\n\ttable.footer-table tfoot td {\n\t\tbackground-color: #696969;\n\t\theight: 10px;\n\t}\n\n\t.imp-details {\n\t\tbackground-color: #DCDCDC;\n\t}\n</style>\n\n\n<!-- Javascript -->\n<script>\n    // Store round off to places for fields\n    var decimals = {\n        adj_rate: (function() {\n            var adj_rate = get_field('Quotation Item', 'adj_rate');\n            if (adj_rate.fieldtype==='Float') return 6;\n            return 2;\n        })(),\n    };\n\tvar si_std = {\n\t\tprint_item_table: function() {\n\t\t\tvar table = print_table(\n\t\t\t\t'Quotation',\n\t\t\t\tdoc.name,\n\t\t\t\t'quotation_details',\n\t\t\t\t'Quotation Item',\n\t\t\t\t[// Here specify the table columns to be displayed\n\t\t\t\t\t'SR', 'item_code', 'item_name', 'description', 'qty', 'stock_uom',\n\t\t\t\t\t'export_rate', 'export_amount'\n\t\t\t\t],\n\t\t\t\t[// Here specify the labels of column headings\n\t\t\t\t\t'Sr', 'Item Code', 'Item Name', 'Description', 'Qty',\n\t\t\t\t\t'UoM', 'Basic Rate', 'Amount'\n\t\t\t\t],\n\t\t\t\t[// Here specify the column widths\n\t\t\t\t\t'3%', '10%', '15%', '32%', '5%',\n\t\t\t\t\t'5%', '15%', '15%'\n\t\t\t\t],\n\t\t\t\tnull,\n\t\t\t\tnull,\n\t\t\t\t{\n\t\t\t\t\t'description' : function(data_row) {\n\t\t\t\t\t\tif(data_row.adj_rate) {\n\t\t\t\t\t\t\tvar to_append = '<div style=\"padding-left: 15px;\"><i>Discount: ' + \n\t\t\t\t\t\t\t\troundNumber(data_row.adj_rate, decimals.adj_rate || 2) + \n                                '% on ' + doc.currency + ' ' +\n\t\t\t\t\t\t\t\tfmt_money(data_row.ref_rate) + '</i></div>';\n\t\t\t\t\t\t\tif(data_row.description.indexOf(to_append)==-1) {\n\t\t\t\t\t\t\t\treturn data_row.description + to_append;\n\t\t\t\t\t\t\t} else { return data_row.description; }\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\treturn data_row.description;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t);\n\n\t\t\t// This code takes care of page breaks\n\t\t\tif(table.appendChild) {\n\t\t\t\tout = table.innerHTML;\n\t\t\t} else {\n\t\t\t\tout = '';\n\t\t\t\tfor(var i=0; i < (table.length-1); i++) {\n\t\t\t\t\tout += table[i].innerHTML + \n\t\t\t\t\t\t'<div style = \"page-break-after: always;\" \\\n\t\t\t\t\t\tclass = \"page_break\"></div>\\\n\t\t\t\t\t\t<div class=\"page-settings\"></div>';\n\t\t\t\t}\n\t\t\t\tout += table[table.length-1].innerHTML;\n\t\t\t}\n\t\t\treturn out;\n\t\t},\n\n\n\t\tprint_other_charges: function(parent) {\n\t\t\tvar oc = getchildren('Sales Taxes and Charges', doc.name, 'other_charges');\n\t\t\tvar rows = '<table width=100%>\\n';\n\t\t\tfor(var i=0; i<oc.length; i++) {\n\t\t\t\tif(!oc[i].included_in_print_rate) {\n\t\t\t\t\trows +=\n\t\t\t\t\t\t'<tr>\\n' +\n\t\t\t\t\t\t\t'\\t<td>' + oc[i].description + '</td>\\n' +\n\t\t\t\t\t\t\t'\\t<td></td>\\n' +\n\t\t\t\t\t\t\t'\\t<td width=38%>' + fmt_money(oc[i].tax_amount) + '</td>\\n' +\n\t\t\t\t\t\t'</tr>\\n';\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn rows + '</table>\\n';\n\t\t}\n\t};\n</script>\n\n\n<!-- Page Layout Settings -->\n<div class='common page-header'>\n\t<!-- \n\t\tPage Header will contain\n\t\t\t+ table 1\n\t\t\t\t+ table 1a\n\t\t\t\t\t- Name\n\t\t\t\t\t- Address\n\t\t\t\t\t- Contact\n\t\t\t\t\t- Mobile No\n\t\t\t\t+ table 1b\n\t\t\t\t\t- Voucher Date\n\t\t\t\t\t- Due Date\n\t-->\n\t<table class='header-table' cellspacing=0>\n\t\t<thead>\n\t\t\t<tr><td colspan=2><div><script>'<h1>' + (doc.select_print_heading || 'Quotation') + '</h1>'</script></div></td></tr>\n\t\t\t<tr><td colspan=2><div style=\"height:15px\"></div></td></tr>\n\t\t</thead>\n\t\t<tbody>\n\t\t\t<tr>\n\t\t\t\t<td width=60%><table width=100% cellspacing=0><tbody>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td width=39%><b>Name</b></td>\n\t\t\t\t\t\t<td><script>doc.customer?doc.customer:doc.lead_name</script></td>\n\t\t\t\t\t</tr>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td><b>Address</b></td>\n\t\t\t\t\t\t<td><script>replace_newlines(doc.address_display)</script></td>\n\t\t\t\t\t</tr>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td><b>Contact</b></td>\n\t\t\t\t\t\t<td><script>doc.contact_display</script></td>\n\t\t\t\t\t</tr>\n\t\t\t\t</tbody></table></td>\n\t\t\t\t<td><table width=100% cellspacing=0><tbody>\n\t\t\t\t\t<tr class='imp-details'>\n\t\t\t\t\t\t<td><b>Quotation No.</b></td>\n\t\t\t\t\t\t<td><script>cur_frm.docname</script></td>\n\t\t\t\t\t</tr>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td width=63%><b>Quotation Date</b></td>\n\t\t\t\t\t\t<td><script>date.str_to_user(doc.transaction_date)</script></td>\n\t\t\t\t\t<tr>\t\t\t\t\t\n\t\t\t\t</tbody></table></td>\n\t\t\t</tr>\n\t\t</tbody>\n\t\t<tfoot>\n\t\t\n\t\t</tfoot>\n\t</table>\n</div>\n<div class='common page-body'>\n\t<!-- \n\t\tPage Body will contain\n\t\t\t+ table 2\n\t\t\t\t- Sales Invoice Data\n\t-->\n\t<script>si_std.print_item_table()</script>\n</div>\n<div class='common page-footer'>\n\t<!-- \n\t\tPage Footer will contain\n\t\t\t+ table 3\n\t\t\t\t- Terms and Conditions\n\t\t\t\t- Total Rounded Amount Calculation\n\t\t\t\t- Total Rounded Amount in Words\n\t-->\n\t<table class='footer-table' width=100% cellspacing=0>\n\t\t<thead>\n\t\t\t\n\t\t</thead>\n\t\t<tbody>\n\t\t\t<tr>\n\t\t\t\t<td width=60% style='padding-right: 10px;'>\n\t\t\t\t\t<b>Terms, Conditions &amp; Other Information:</b><br />\n\t\t\t\t\t<script>doc.terms</script>\n\t\t\t\t</td>\n\t\t\t\t<td>\n\t\t\t\t\t<table cellspacing=0 width=100%><tbody>\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td>Net Total</td>\n\t\t\t\t\t\t\t<td></td>\n\t\t\t\t\t\t\t<td width=38%><script>\n\t\t\t\t\t\t\t\tfmt_money(doc.net_total/doc.conversion_rate)\n\t\t\t\t\t\t\t</script></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr><td colspan=3><script>si_std.print_other_charges()</script></td></tr>\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td>Grand Total</td>\n\t\t\t\t\t\t\t<td></td>\n\t\t\t\t\t\t\t<td><script>\n\t\t\t\t\t\t\t\tfmt_money(doc.grand_total_export)\n\t\t\t\t\t\t\t</script></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr style='font-weight: bold' class='imp-details'>\n\t\t\t\t\t\t\t<td>Rounded Total</td>\n\t\t\t\t\t\t\t<td><script>doc.currency</script></td>\n\t\t\t\t\t\t\t<td><script>\n\t\t\t\t\t\t\t\tfmt_money(doc.rounded_total_export)\n\t\t\t\t\t\t\t</script></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t</tbody></table>\n\t\t\t\t\t<br /><b>In Words</b><br />\n\t\t\t\t\t<i><script>doc.in_words_export</script></i>\n\t\t\t\t</td>\n\t\t\t</tr>\t\t\n\t\t</tbody>\n\t\t<tfoot>\n\t\t\t<tr><td colspan=2><div></div></td><tr>\n\t\t</tfoot>\n\t</table>\n</div>\n", 
+  "standard": "Yes"
+ }, 
+ {
+  "name": "Quotation Modern", 
+  "doctype": "Print Format"
+ }
 ]
\ No newline at end of file
diff --git a/selling/Print Format/Quotation Spartan/Quotation Spartan.txt b/selling/Print Format/Quotation Spartan/Quotation Spartan.txt
index d176e64..129a9a6 100644
--- a/selling/Print Format/Quotation Spartan/Quotation Spartan.txt
+++ b/selling/Print Format/Quotation Spartan/Quotation Spartan.txt
@@ -1,28 +1,21 @@
-# Print Format, Quotation Spartan
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-05-17 17:27:50',
-		'docstatus': 0,
-		'modified': '2012-05-17 18:03:06',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all Print Format
-	{
-		'doc_type': u'Quotation',
-		'doctype': 'Print Format',
-		'html': u'<!--\n\tSample Print Format for ERPNext\n\tPlease use at your own discretion\n\tFor suggestions and contributions:\n\t\thttps://github.com/webnotes/erpnext-print-templates\n\n\tFreely usable under MIT license\n-->\n\n<!-- Style Settings -->\n<style>\n\t/*\n\t\tcommon style for whole page\n\t\tThis should include:\n\t\t+ page size related settings\n\t\t+ font family settings\n\t\t+ line spacing settings\n\t*/\n\t@media screen {\n\t\tbody {\n\t\t\twidth: 8.3in;\n\t\t}\n\t}\n\n\thtml, body, div, span, td {\n\t\tfont-family: "Arial", sans-serif;\n\t\tfont-size: 12px;\n\t}\n\n\tbody {\n\t\tpadding: 10px;\n\t\tmargin: auto;\n\t\tfont-size: 12px;\n\t\tline-height: 150%;\n\t}\n\n\t.common {\n\t\tfont-family: "Arial", sans-serif !important;\n\t\tfont-size: 12px;\n\t\tpadding: 0px;\n\t}\n\n\ttable {\n\t\twidth: 100% !important;\n\t\tvertical-align: top;\n\t}\n\n\ttable td {\n\t\tpadding: 2px 0px;\n\t}\n\n\ttable, td {\n\t\tborder-collapse: collapse !important;\n\t\tpadding: 0px;\n\t\tmargin: 0px !important;\n\t}\n\t\n\ttable h1, h2, h3, h4, h5, h6 {\n\t\tpadding: 0px;\n\t\tmargin: 0px;\n\t}\n\n\ttable.header-table td {\n\t\tvertical-align: top;\n\t}\n\n\ttable.header-table h3 {\n\t\tcolor: gray;\n\t}\n\n\ttable.header-table thead td {\n\t\tpadding: 5px;\n\t}\n\n\ttable.header-table > thead,\n\ttable.header-table > tbody > tr > td,\n\ttable.footer-table > tbody > tr > td {\n\t\tborder: 1px solid black;\n\t\tpadding: 5px;\n\t}\n\n\ttable.footer-table > tbody,\n\ttable.header-table > thead {\n\t\tborder-bottom: 3px solid black;\n\t}\n\n\ttable.header-table > thead {\n\t\tborder-top: 3px solid black;\n\t}\n\n\tdiv.page-body table td:nth-child(6),\n\tdiv.page-body table td:nth-child(7) {\n\t\ttext-align: right;\n\t}\n\n\tdiv.page-body td {\n\t\tbackground-color: white !important;\n\t\tborder: 1px solid black !important;\n\t}\n\n\ttable.footer-table td {\n\t\tvertical-align: top;\n\t}\n\n\ttable.footer-table td table td:nth-child(2),\n\ttable.footer-table td table td:nth-child(3) {\n\t\ttext-align: right;\n\t}\n</style>\n\n\n<!-- Javascript -->\n<script>\n    // Store round off to places for fields\n    var decimals = {\n        adj_rate: (function() {\n            var adj_rate = get_field(\'Quotation Item\', \'adj_rate\');\n            if (adj_rate.fieldtype===\'Float\') return 6;\n            return 2;\n        })(),\n    };\n\tvar si_std = {\n\t\tprint_item_table: function() {\n\t\t\tvar table = print_table(\n\t\t\t\t\'Quotation\',\n\t\t\t\tdoc.name,\n\t\t\t\t\'quotation_details\',\n\t\t\t\t\'Quotation Item\',\n\t\t\t\t[// Here specify the table columns to be displayed\n\t\t\t\t\t\'SR\', \'item_code\', \'item_name\', \'description\', \'qty\', \'stock_uom\',\n\t\t\t\t\t\'export_rate\', \'export_amount\'\n\t\t\t\t],\n\t\t\t\t[// Here specify the labels of column headings\n\t\t\t\t\t\'Sr\', \'Item Code\', \'Item Name\', \'Description\', \'Qty\',\n\t\t\t\t\t\'UoM\', \'Basic Rate\', \'Amount\'\n\t\t\t\t],\n\t\t\t\t[// Here specify the column widths\n\t\t\t\t\t\'3%\', \'10%\', \'15%\', \'32%\', \'5%\',\n\t\t\t\t\t\'5%\', \'15%\', \'15%\'\n\t\t\t\t],\n\t\t\t\tnull,\n\t\t\t\tnull,\n\t\t\t\t{\n\t\t\t\t\t\'description\' : function(data_row) {\n\t\t\t\t\t\tif(data_row.adj_rate) {\n\t\t\t\t\t\t\tvar to_append = \'<div style="padding-left: 15px;"><i>Discount: \' + \n    \t\t\t\t\t\t\troundNumber(data_row.adj_rate, decimals.adj_rate || 2) + \n                                \'% on \' + doc.currency + \' \' +\n\t\t\t\t\t\t\t\tfmt_money(data_row.ref_rate) + \'</i></div>\';\n\t\t\t\t\t\t\tif(data_row.description.indexOf(to_append)==-1) {\n\t\t\t\t\t\t\t\treturn data_row.description + to_append;\n\t\t\t\t\t\t\t} else { return data_row.description; }\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\treturn data_row.description;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t);\n\n\t\t\t// This code takes care of page breaks\n\t\t\tif(table.appendChild) {\n\t\t\t\tout = table.innerHTML;\n\t\t\t} else {\n\t\t\t\tout = \'\';\n\t\t\t\tfor(var i=0; i < (table.length-1); i++) {\n\t\t\t\t\tout += table[i].innerHTML + \n\t\t\t\t\t\t\'<div style = "page-break-after: always;" \\\n\t\t\t\t\t\tclass = "page_break"></div>\\\n\t\t\t\t\t\t<div class="page-settings"></div>\';\n\t\t\t\t}\n\t\t\t\tout += table[table.length-1].innerHTML;\n\t\t\t}\n\t\t\treturn out;\n\t\t},\n\n\n\t\tprint_other_charges: function(parent) {\n\t\t\tvar oc = getchildren(\'Sales Taxes and Charges\', doc.name, \'other_charges\');\n\t\t\tvar rows = \'<table width=100%>\\n\';\n\t\t\tfor(var i=0; i<oc.length; i++) {\n\t\t\t\tif(!oc[i].included_in_print_rate) {\n\t\t\t\t\trows +=\n\t\t\t\t\t\t\'<tr>\\n\' +\n\t\t\t\t\t\t\t\'\\t<td>\' + oc[i].description + \'</td>\\n\' +\n\t\t\t\t\t\t\t\'\\t<td></td>\\n\' +\n\t\t\t\t\t\t\t\'\\t<td width=38%>\' + fmt_money(oc[i].tax_amount) + \'</td>\\n\' +\n\t\t\t\t\t\t\'</tr>\\n\';\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn rows + \'</table>\\n\';\n\t\t}\n\t};\n</script>\n\n\n<!-- Page Layout Settings -->\n<div class=\'common page-header\'>\n\t<!-- \n\t\tPage Header will contain\n\t\t\t+ table 1\n\t\t\t\t+ table 1a\n\t\t\t\t\t- Name\n\t\t\t\t\t- Address\n\t\t\t\t\t- Contact\n\t\t\t\t\t- Mobile No\n\t\t\t\t+ table 1b\n\t\t\t\t\t- Voucher Date\n\t\t\t\t\t- Due Date\n\t-->\n\t<table class=\'header-table\' cellspacing=0>\n\t\t<thead>\n\t\t\t<tr><td colspan=2><script>\'<h1>\' + (doc.select_print_heading || \'Quotation\') + \'</h1>\'</script></td></tr>\n\t\t\t<tr><td colspan=2><h3><script>cur_frm.docname</script></h3></td></tr>\n\t\t</thead>\n\t\t<tbody>\n\t\t\t<tr>\n\t\t\t\t<td width=60%><table width=100% cellspacing=0><tbody>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td width=39%><b>Name</b></td>\n\t\t\t\t\t\t<td><script>doc.customer?doc.customer:doc.lead_name</script></td>\n\t\t\t\t\t</tr>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td><b>Address</b></td>\n\t\t\t\t\t\t<td><script>replace_newlines(doc.address_display)</script></td>\n\t\t\t\t\t</tr>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td><b>Contact</b></td>\n\t\t\t\t\t\t<td><script>doc.contact_display</script></td>\n\t\t\t\t\t</tr>\n\t\t\t\t</tbody></table></td>\n\t\t\t\t<td><table width=100% cellspacing=0><tbody>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td width=63%><b>Quotation Date</b></td>\n\t\t\t\t\t\t<td><script>date.str_to_user(doc.transaction_date)</script></td>\n\t\t\t\t\t<tr>\t\t\t\t\t\n\t\t\t\t</tbody></table></td>\n\t\t\t</tr>\n\t\t</tbody>\n\t\t<tfoot>\n\t\t\n\t\t</tfoot>\n\t</table>\n</div>\n<div class=\'common page-body\'>\n\t<!-- \n\t\tPage Body will contain\n\t\t\t+ table 2\n\t\t\t\t- Sales Invoice Data\n\t-->\n\t<script>si_std.print_item_table()</script>\n</div>\n<div class=\'common page-footer\'>\n\t<!-- \n\t\tPage Footer will contain\n\t\t\t+ table 3\n\t\t\t\t- Terms and Conditions\n\t\t\t\t- Total Rounded Amount Calculation\n\t\t\t\t- Total Rounded Amount in Words\n\t-->\n\t<table class=\'footer-table\' width=100% cellspacing=0>\n\t\t<thead>\n\t\t\t\n\t\t</thead>\n\t\t<tbody>\n\t\t\t<tr>\n\t\t\t\t<td width=60% style=\'padding-right: 10px;\'>\n\t\t\t\t\t<b>Terms, Conditions &amp; Other Information:</b><br />\n\t\t\t\t\t<script>doc.terms</script>\n\t\t\t\t</td>\n\t\t\t\t<td>\n\t\t\t\t\t<table cellspacing=0 width=100%><tbody>\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td>Net Total</td>\n\t\t\t\t\t\t\t<td></td>\n\t\t\t\t\t\t\t<td width=38%><script>\n\t\t\t\t\t\t\t\tfmt_money(doc.net_total/doc.conversion_rate)\n\t\t\t\t\t\t\t</script></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr><td colspan=3><script>si_std.print_other_charges()</script></td></tr>\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td>Grand Total</td>\n\t\t\t\t\t\t\t<td></td>\n\t\t\t\t\t\t\t<td><script>\n\t\t\t\t\t\t\t\tfmt_money(doc.grand_total_export)\n\t\t\t\t\t\t\t</script></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr style=\'font-weight: bold\'>\n\t\t\t\t\t\t\t<td>Rounded Total</td>\n\t\t\t\t\t\t\t<td><script>doc.currency</script></td>\n\t\t\t\t\t\t\t<td><script>\n\t\t\t\t\t\t\t\tfmt_money(doc.rounded_total_export)\n\t\t\t\t\t\t\t</script></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t</tbody></table>\n\t\t\t\t\t<br /><b>In Words</b><br />\n\t\t\t\t\t<i><script>doc.in_words_export</script></i>\n\t\t\t\t</td>\n\t\t\t</tr>\t\t\n\t\t</tbody>\n\t\t<tfoot>\n\t\t\n\t\t</tfoot>\n\t</table>\n</div>\n',
-		'module': u'Selling',
-		'name': '__common__',
-		'standard': u'Yes'
-	},
-
-	# Print Format, Quotation Spartan
-	{
-		'doctype': 'Print Format',
-		'name': u'Quotation Spartan'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-05-17 17:27:50", 
+  "modified_by": "Administrator", 
+  "modified": "2012-05-17 18:03:06"
+ }, 
+ {
+  "doc_type": "Quotation", 
+  "name": "__common__", 
+  "module": "Selling", 
+  "doctype": "Print Format", 
+  "html": "<!--\n\tSample Print Format for ERPNext\n\tPlease use at your own discretion\n\tFor suggestions and contributions:\n\t\thttps://github.com/webnotes/erpnext-print-templates\n\n\tFreely usable under MIT license\n-->\n\n<!-- Style Settings -->\n<style>\n\t/*\n\t\tcommon style for whole page\n\t\tThis should include:\n\t\t+ page size related settings\n\t\t+ font family settings\n\t\t+ line spacing settings\n\t*/\n\t@media screen {\n\t\tbody {\n\t\t\twidth: 8.3in;\n\t\t}\n\t}\n\n\thtml, body, div, span, td {\n\t\tfont-family: \"Arial\", sans-serif;\n\t\tfont-size: 12px;\n\t}\n\n\tbody {\n\t\tpadding: 10px;\n\t\tmargin: auto;\n\t\tfont-size: 12px;\n\t\tline-height: 150%;\n\t}\n\n\t.common {\n\t\tfont-family: \"Arial\", sans-serif !important;\n\t\tfont-size: 12px;\n\t\tpadding: 0px;\n\t}\n\n\ttable {\n\t\twidth: 100% !important;\n\t\tvertical-align: top;\n\t}\n\n\ttable td {\n\t\tpadding: 2px 0px;\n\t}\n\n\ttable, td {\n\t\tborder-collapse: collapse !important;\n\t\tpadding: 0px;\n\t\tmargin: 0px !important;\n\t}\n\t\n\ttable h1, h2, h3, h4, h5, h6 {\n\t\tpadding: 0px;\n\t\tmargin: 0px;\n\t}\n\n\ttable.header-table td {\n\t\tvertical-align: top;\n\t}\n\n\ttable.header-table h3 {\n\t\tcolor: gray;\n\t}\n\n\ttable.header-table thead td {\n\t\tpadding: 5px;\n\t}\n\n\ttable.header-table > thead,\n\ttable.header-table > tbody > tr > td,\n\ttable.footer-table > tbody > tr > td {\n\t\tborder: 1px solid black;\n\t\tpadding: 5px;\n\t}\n\n\ttable.footer-table > tbody,\n\ttable.header-table > thead {\n\t\tborder-bottom: 3px solid black;\n\t}\n\n\ttable.header-table > thead {\n\t\tborder-top: 3px solid black;\n\t}\n\n\tdiv.page-body table td:nth-child(6),\n\tdiv.page-body table td:nth-child(7) {\n\t\ttext-align: right;\n\t}\n\n\tdiv.page-body td {\n\t\tbackground-color: white !important;\n\t\tborder: 1px solid black !important;\n\t}\n\n\ttable.footer-table td {\n\t\tvertical-align: top;\n\t}\n\n\ttable.footer-table td table td:nth-child(2),\n\ttable.footer-table td table td:nth-child(3) {\n\t\ttext-align: right;\n\t}\n</style>\n\n\n<!-- Javascript -->\n<script>\n    // Store round off to places for fields\n    var decimals = {\n        adj_rate: (function() {\n            var adj_rate = get_field('Quotation Item', 'adj_rate');\n            if (adj_rate.fieldtype==='Float') return 6;\n            return 2;\n        })(),\n    };\n\tvar si_std = {\n\t\tprint_item_table: function() {\n\t\t\tvar table = print_table(\n\t\t\t\t'Quotation',\n\t\t\t\tdoc.name,\n\t\t\t\t'quotation_details',\n\t\t\t\t'Quotation Item',\n\t\t\t\t[// Here specify the table columns to be displayed\n\t\t\t\t\t'SR', 'item_code', 'item_name', 'description', 'qty', 'stock_uom',\n\t\t\t\t\t'export_rate', 'export_amount'\n\t\t\t\t],\n\t\t\t\t[// Here specify the labels of column headings\n\t\t\t\t\t'Sr', 'Item Code', 'Item Name', 'Description', 'Qty',\n\t\t\t\t\t'UoM', 'Basic Rate', 'Amount'\n\t\t\t\t],\n\t\t\t\t[// Here specify the column widths\n\t\t\t\t\t'3%', '10%', '15%', '32%', '5%',\n\t\t\t\t\t'5%', '15%', '15%'\n\t\t\t\t],\n\t\t\t\tnull,\n\t\t\t\tnull,\n\t\t\t\t{\n\t\t\t\t\t'description' : function(data_row) {\n\t\t\t\t\t\tif(data_row.adj_rate) {\n\t\t\t\t\t\t\tvar to_append = '<div style=\"padding-left: 15px;\"><i>Discount: ' + \n    \t\t\t\t\t\t\troundNumber(data_row.adj_rate, decimals.adj_rate || 2) + \n                                '% on ' + doc.currency + ' ' +\n\t\t\t\t\t\t\t\tfmt_money(data_row.ref_rate) + '</i></div>';\n\t\t\t\t\t\t\tif(data_row.description.indexOf(to_append)==-1) {\n\t\t\t\t\t\t\t\treturn data_row.description + to_append;\n\t\t\t\t\t\t\t} else { return data_row.description; }\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\treturn data_row.description;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t);\n\n\t\t\t// This code takes care of page breaks\n\t\t\tif(table.appendChild) {\n\t\t\t\tout = table.innerHTML;\n\t\t\t} else {\n\t\t\t\tout = '';\n\t\t\t\tfor(var i=0; i < (table.length-1); i++) {\n\t\t\t\t\tout += table[i].innerHTML + \n\t\t\t\t\t\t'<div style = \"page-break-after: always;\" \\\n\t\t\t\t\t\tclass = \"page_break\"></div>\\\n\t\t\t\t\t\t<div class=\"page-settings\"></div>';\n\t\t\t\t}\n\t\t\t\tout += table[table.length-1].innerHTML;\n\t\t\t}\n\t\t\treturn out;\n\t\t},\n\n\n\t\tprint_other_charges: function(parent) {\n\t\t\tvar oc = getchildren('Sales Taxes and Charges', doc.name, 'other_charges');\n\t\t\tvar rows = '<table width=100%>\\n';\n\t\t\tfor(var i=0; i<oc.length; i++) {\n\t\t\t\tif(!oc[i].included_in_print_rate) {\n\t\t\t\t\trows +=\n\t\t\t\t\t\t'<tr>\\n' +\n\t\t\t\t\t\t\t'\\t<td>' + oc[i].description + '</td>\\n' +\n\t\t\t\t\t\t\t'\\t<td></td>\\n' +\n\t\t\t\t\t\t\t'\\t<td width=38%>' + fmt_money(oc[i].tax_amount) + '</td>\\n' +\n\t\t\t\t\t\t'</tr>\\n';\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn rows + '</table>\\n';\n\t\t}\n\t};\n</script>\n\n\n<!-- Page Layout Settings -->\n<div class='common page-header'>\n\t<!-- \n\t\tPage Header will contain\n\t\t\t+ table 1\n\t\t\t\t+ table 1a\n\t\t\t\t\t- Name\n\t\t\t\t\t- Address\n\t\t\t\t\t- Contact\n\t\t\t\t\t- Mobile No\n\t\t\t\t+ table 1b\n\t\t\t\t\t- Voucher Date\n\t\t\t\t\t- Due Date\n\t-->\n\t<table class='header-table' cellspacing=0>\n\t\t<thead>\n\t\t\t<tr><td colspan=2><script>'<h1>' + (doc.select_print_heading || 'Quotation') + '</h1>'</script></td></tr>\n\t\t\t<tr><td colspan=2><h3><script>cur_frm.docname</script></h3></td></tr>\n\t\t</thead>\n\t\t<tbody>\n\t\t\t<tr>\n\t\t\t\t<td width=60%><table width=100% cellspacing=0><tbody>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td width=39%><b>Name</b></td>\n\t\t\t\t\t\t<td><script>doc.customer?doc.customer:doc.lead_name</script></td>\n\t\t\t\t\t</tr>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td><b>Address</b></td>\n\t\t\t\t\t\t<td><script>replace_newlines(doc.address_display)</script></td>\n\t\t\t\t\t</tr>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td><b>Contact</b></td>\n\t\t\t\t\t\t<td><script>doc.contact_display</script></td>\n\t\t\t\t\t</tr>\n\t\t\t\t</tbody></table></td>\n\t\t\t\t<td><table width=100% cellspacing=0><tbody>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td width=63%><b>Quotation Date</b></td>\n\t\t\t\t\t\t<td><script>date.str_to_user(doc.transaction_date)</script></td>\n\t\t\t\t\t<tr>\t\t\t\t\t\n\t\t\t\t</tbody></table></td>\n\t\t\t</tr>\n\t\t</tbody>\n\t\t<tfoot>\n\t\t\n\t\t</tfoot>\n\t</table>\n</div>\n<div class='common page-body'>\n\t<!-- \n\t\tPage Body will contain\n\t\t\t+ table 2\n\t\t\t\t- Sales Invoice Data\n\t-->\n\t<script>si_std.print_item_table()</script>\n</div>\n<div class='common page-footer'>\n\t<!-- \n\t\tPage Footer will contain\n\t\t\t+ table 3\n\t\t\t\t- Terms and Conditions\n\t\t\t\t- Total Rounded Amount Calculation\n\t\t\t\t- Total Rounded Amount in Words\n\t-->\n\t<table class='footer-table' width=100% cellspacing=0>\n\t\t<thead>\n\t\t\t\n\t\t</thead>\n\t\t<tbody>\n\t\t\t<tr>\n\t\t\t\t<td width=60% style='padding-right: 10px;'>\n\t\t\t\t\t<b>Terms, Conditions &amp; Other Information:</b><br />\n\t\t\t\t\t<script>doc.terms</script>\n\t\t\t\t</td>\n\t\t\t\t<td>\n\t\t\t\t\t<table cellspacing=0 width=100%><tbody>\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td>Net Total</td>\n\t\t\t\t\t\t\t<td></td>\n\t\t\t\t\t\t\t<td width=38%><script>\n\t\t\t\t\t\t\t\tfmt_money(doc.net_total/doc.conversion_rate)\n\t\t\t\t\t\t\t</script></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr><td colspan=3><script>si_std.print_other_charges()</script></td></tr>\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td>Grand Total</td>\n\t\t\t\t\t\t\t<td></td>\n\t\t\t\t\t\t\t<td><script>\n\t\t\t\t\t\t\t\tfmt_money(doc.grand_total_export)\n\t\t\t\t\t\t\t</script></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr style='font-weight: bold'>\n\t\t\t\t\t\t\t<td>Rounded Total</td>\n\t\t\t\t\t\t\t<td><script>doc.currency</script></td>\n\t\t\t\t\t\t\t<td><script>\n\t\t\t\t\t\t\t\tfmt_money(doc.rounded_total_export)\n\t\t\t\t\t\t\t</script></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t</tbody></table>\n\t\t\t\t\t<br /><b>In Words</b><br />\n\t\t\t\t\t<i><script>doc.in_words_export</script></i>\n\t\t\t\t</td>\n\t\t\t</tr>\t\t\n\t\t</tbody>\n\t\t<tfoot>\n\t\t\n\t\t</tfoot>\n\t</table>\n</div>\n", 
+  "standard": "Yes"
+ }, 
+ {
+  "name": "Quotation Spartan", 
+  "doctype": "Print Format"
+ }
 ]
\ No newline at end of file
diff --git a/selling/Print Format/Sales Order Classic/Sales Order Classic.txt b/selling/Print Format/Sales Order Classic/Sales Order Classic.txt
index 1e654a3..4b1ab1b 100644
--- a/selling/Print Format/Sales Order Classic/Sales Order Classic.txt
+++ b/selling/Print Format/Sales Order Classic/Sales Order Classic.txt
@@ -1,28 +1,21 @@
-# Print Format, Sales Order Classic
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-05-17 17:27:50',
-		'docstatus': 0,
-		'modified': '2012-05-17 17:45:52',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all Print Format
-	{
-		'doc_type': u'Sales Order',
-		'doctype': 'Print Format',
-		'html': u'<!--\n\tSample Print Format for ERPNext\n\tPlease use at your own discretion\n\tFor suggestions and contributions:\n\t\thttps://github.com/webnotes/erpnext-print-templates\n\n\tFreely usable under MIT license\n-->\n\n<!-- Style Settings -->\n<style>\n\t/*\n\t\tcommon style for whole page\n\t\tThis should include:\n\t\t+ page size related settings\n\t\t+ font family settings\n\t\t+ line spacing settings\n\t*/\n\t@media screen {\n\t\tbody {\n\t\t\twidth: 8.3in;\n\t\t}\n\t}\n\n\thtml, body, div, span, td {\n\t\tfont-family: "Georgia", serif;\n\t\tfont-size: 12px;\n\t}\n\n\tbody {\n\t\tpadding: 10px;\n\t\tmargin: auto;\n\t\tfont-size: 12px;\n\t\tline-height: 150%;\n\t}\n\n\t.common {\n\t\tfont-family: "Georgia", serif !important;\n\t\tfont-size: 12px;\n\t\tpadding: 10px 0px;\n\t}\n\n\ttable {\n\t\tborder-collapse: collapse;\n\t\twidth: 100%;\n\t\tvertical-align: top;\n\t}\n\n\ttable td {\n\t\tpadding: 2px 0px;\n\t}\n\t\n\ttable h1, h2, h3, h4, h5, h6 {\n\t\tpadding: 0px;\n\t\tmargin: 0px;\n\t}\n\n\ttable.header-table td {\n\t\tvertical-align: top;\n\t}\n\n\ttable.header-table thead {\n\t\tborder-bottom: 1px solid black;\n\t}\n\n\ttable.header-table h3 {\n\t\tcolor: gray;\n\t}\n\n\ttable.header-table thead td {\n\t\tpadding: 5px 0px;\n\t}\n\n\tdiv.page-body table td:nth-child(6),\n\tdiv.page-body table td:nth-child(7) {\n\t\ttext-align: right;\n\t}\n\n\ttable.footer-table td {\n\t\tvertical-align: top;\n\t}\n\n\ttable.footer-table td table td:nth-child(2),\n\ttable.footer-table td table td:nth-child(3) {\n\t\ttext-align: right;\n\t}\n</style>\n\n\n<!-- Javascript -->\n<script>\n    // Store round off to places for fields\n    var decimals = {\n        adj_rate: (function() {\n            var adj_rate = get_field(\'Sales Order Item\', \'adj_rate\');\n            if (adj_rate.fieldtype===\'Float\') return 6;\n            return 2;\n        })(),\n    };    \n\tvar si_std = {\n\t\tprint_item_table: function() {\n\t\t\tvar table = print_table(\n\t\t\t\t\'Sales Order\',\n\t\t\t\tdoc.name,\n\t\t\t\t\'sales_order_details\',\n\t\t\t\t\'Sales Order Item\',\n\t\t\t\t[// Here specify the table columns to be displayed\n\t\t\t\t\t\'SR\', \'item_code\', \'description\', \'qty\', \'stock_uom\',\n\t\t\t\t\t\'basic_rate\', \'amount\'\n\t\t\t\t],\n\t\t\t\t[// Here specify the labels of column headings\n\t\t\t\t\t\'Sr\', \'Item Code\', \'Description\', \'Qty\',\n\t\t\t\t\t\'UoM\', \'Basic Rate\', \'Amount\'\n\t\t\t\t],\n\t\t\t\t[// Here specify the column widths\n\t\t\t\t\t\'3%\', \'20%\', \'37%\', \'5%\',\n\t\t\t\t\t\'5%\', \'15%\', \'15%\'\n\t\t\t\t],\n\t\t\t\tnull,\n\t\t\t\tnull,\n\t\t\t\t{\n\t\t\t\t\t\'description\' : function(data_row) {\n\t\t\t\t\t\tif(data_row.adj_rate) {\n\t\t\t\t\t\t\tvar to_append = \'<div style="padding-left: 15px;"><i>Discount: \' + \n\t\t\t\t\t\t\t\troundNumber(data_row.adj_rate, decimals.adj_rate || 2) +\n                                \'% on \' + doc.currency + \' \' +\n\t\t\t\t\t\t\t\tfmt_money(data_row.ref_rate) + \'</i></div>\';\n\t\t\t\t\t\t\tif(data_row.description.indexOf(to_append)==-1) {\n\t\t\t\t\t\t\t\treturn data_row.description + to_append;\n\t\t\t\t\t\t\t} else { return data_row.description; }\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\treturn data_row.description;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t);\n\n\t\t\t// This code takes care of page breaks\n\t\t\tif(table.appendChild) {\n\t\t\t\tout = table.innerHTML;\n\t\t\t} else {\n\t\t\t\tout = \'\';\n\t\t\t\tfor(var i=0; i < (table.length-1); i++) {\n\t\t\t\t\tout += table[i].innerHTML + \n\t\t\t\t\t\t\'<div style = "page-break-after: always;" \\\n\t\t\t\t\t\tclass = "page_break"></div>\\\n\t\t\t\t\t\t<div class="page-settings"></div>\';\n\t\t\t\t}\n\t\t\t\tout += table[table.length-1].innerHTML;\n\t\t\t}\n\t\t\treturn out;\n\t\t},\n\n\n\t\tprint_other_charges: function(parent) {\n\t\t\tvar oc = getchildren(\'Sales Taxes and Charges\', doc.name, \'other_charges\');\n\t\t\tvar rows = \'<table width=100%>\\n\';\n\t\t\tfor(var i=0; i<oc.length; i++) {\n\t\t\t\tif(!oc[i].included_in_print_rate) {\n\t\t\t\t\trows +=\n\t\t\t\t\t\t\'<tr>\\n\' +\n\t\t\t\t\t\t\t\'\\t<td>\' + oc[i].description + \'</td>\\n\' +\n\t\t\t\t\t\t\t\'\\t<td></td>\\n\' +\n\t\t\t\t\t\t\t\'\\t<td width=38%>\' + fmt_money(oc[i].tax_amount) + \'</td>\\n\' +\n\t\t\t\t\t\t\'</tr>\\n\';\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn rows + \'</table>\\n\';\n\t\t}\n\t};\n</script>\n\n\n<!-- Page Layout Settings -->\n<div class=\'common page-header\'>\n\t<!-- \n\t\tPage Header will contain\n\t\t\t+ table 1\n\t\t\t\t+ table 1a\n\t\t\t\t\t- Name\n\t\t\t\t\t- Address\n\t\t\t\t\t- Contact\n\t\t\t\t\t- Mobile No\n\t\t\t\t+ table 1b\n\t\t\t\t\t- Voucher Date\n\t\t\t\t\t- Due Date\n\t-->\n\t<table class=\'header-table\' cellspacing=0>\n\t\t<thead>\n\t\t\t<tr><td><script>\'<h1>\' + (doc.select_print_heading || \'Sales Order\') + \'</h1>\'</script></td></tr>\n\t\t\t<tr><td><h3><script>cur_frm.docname</script></h3></td></tr>\n\t\t</thead>\n\t\t<tbody>\n\t\t\t<tr>\n\t\t\t\t<td width=60%><table width=100% cellspacing=0><tbody>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td width=39%><b>Name</b></td>\n\t\t\t\t\t\t<td><script>doc.customer_name</script></td>\n\t\t\t\t\t</tr>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td><b>Address</b></td>\n\t\t\t\t\t\t<td><script>replace_newlines(doc.address_display)</script></td>\n\t\t\t\t\t</tr>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td><b>Contact</b></td>\n\t\t\t\t\t\t<td><script>doc.contact_display</script></td>\n\t\t\t\t\t</tr>\n\t\t\t\t</tbody></table></td>\n\t\t\t\t<td><table width=100% cellspacing=0><tbody>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td width=63%><b>Sales Order Date</b></td>\n\t\t\t\t\t\t<td><script>date.str_to_user(doc.transaction_date)</script></td>\n\t\t\t\t\t<tr>\t\t\t\t\t\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td><b>Delivery Date</b></td>\n\t\t\t\t\t\t<td><script>date.str_to_user(doc.delivery_date)</script></td>\n\t\t\t\t\t<tr>\t\t\t\t\t\n\t\t\t\t</tbody></table></td>\n\t\t\t</tr>\n\t\t</tbody>\n\t\t<tfoot>\n\t\t\n\t\t</tfoot>\n\t</table>\n</div>\n<div class=\'common page-body\'>\n\t<!-- \n\t\tPage Body will contain\n\t\t\t+ table 2\n\t\t\t\t- Sales Invoice Data\n\t-->\n\t<script>si_std.print_item_table()</script>\n</div>\n<div class=\'common page-footer\'>\n\t<!-- \n\t\tPage Footer will contain\n\t\t\t+ table 3\n\t\t\t\t- Terms and Conditions\n\t\t\t\t- Total Rounded Amount Calculation\n\t\t\t\t- Total Rounded Amount in Words\n\t-->\n\t<table class=\'footer-table\' width=100% cellspacing=0>\n\t\t<thead>\n\t\t\t\n\t\t</thead>\n\t\t<tbody>\n\t\t\t<tr>\n\t\t\t\t<td width=60% style=\'padding-right: 10px;\'>\n\t\t\t\t\t<b>Terms, Conditions &amp; Other Information:</b><br />\n\t\t\t\t\t<script>doc.terms</script>\n\t\t\t\t</td>\n\t\t\t\t<td>\n\t\t\t\t\t<table cellspacing=0 width=100%><tbody>\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td>Net Total</td>\n\t\t\t\t\t\t\t<td></td>\n\t\t\t\t\t\t\t<td width=38%><script>\n\t\t\t\t\t\t\t\tfmt_money(doc.net_total)\n\t\t\t\t\t\t\t</script></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr><td colspan=3><script>si_std.print_other_charges()</script></td></tr>\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td>Grand Total</td>\n\t\t\t\t\t\t\t<td></td>\n\t\t\t\t\t\t\t<td><script>\n\t\t\t\t\t\t\t\tfmt_money(doc.grand_total_export)\n\t\t\t\t\t\t\t</script></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr style=\'font-weight: bold\'>\n\t\t\t\t\t\t\t<td>Rounded Total</td>\n\t\t\t\t\t\t\t<td><script>doc.currency</script></td>\n\t\t\t\t\t\t\t<td><script>\n\t\t\t\t\t\t\t\tfmt_money(doc.rounded_total_export)\n\t\t\t\t\t\t\t</script></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t</tbody></table>\n\t\t\t\t\t<br /><b>In Words</b><br />\n\t\t\t\t\t<i><script>doc.in_words_export</script></i>\n\t\t\t\t</td>\n\t\t\t</tr>\t\t\n\t\t</tbody>\n\t\t<tfoot>\n\t\t\n\t\t</tfoot>\n\t</table>\n</div>\n',
-		'module': u'Selling',
-		'name': '__common__',
-		'standard': u'Yes'
-	},
-
-	# Print Format, Sales Order Classic
-	{
-		'doctype': 'Print Format',
-		'name': u'Sales Order Classic'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-05-17 17:27:50", 
+  "modified_by": "Administrator", 
+  "modified": "2012-05-17 17:45:52"
+ }, 
+ {
+  "doc_type": "Sales Order", 
+  "name": "__common__", 
+  "module": "Selling", 
+  "doctype": "Print Format", 
+  "html": "<!--\n\tSample Print Format for ERPNext\n\tPlease use at your own discretion\n\tFor suggestions and contributions:\n\t\thttps://github.com/webnotes/erpnext-print-templates\n\n\tFreely usable under MIT license\n-->\n\n<!-- Style Settings -->\n<style>\n\t/*\n\t\tcommon style for whole page\n\t\tThis should include:\n\t\t+ page size related settings\n\t\t+ font family settings\n\t\t+ line spacing settings\n\t*/\n\t@media screen {\n\t\tbody {\n\t\t\twidth: 8.3in;\n\t\t}\n\t}\n\n\thtml, body, div, span, td {\n\t\tfont-family: \"Georgia\", serif;\n\t\tfont-size: 12px;\n\t}\n\n\tbody {\n\t\tpadding: 10px;\n\t\tmargin: auto;\n\t\tfont-size: 12px;\n\t\tline-height: 150%;\n\t}\n\n\t.common {\n\t\tfont-family: \"Georgia\", serif !important;\n\t\tfont-size: 12px;\n\t\tpadding: 10px 0px;\n\t}\n\n\ttable {\n\t\tborder-collapse: collapse;\n\t\twidth: 100%;\n\t\tvertical-align: top;\n\t}\n\n\ttable td {\n\t\tpadding: 2px 0px;\n\t}\n\t\n\ttable h1, h2, h3, h4, h5, h6 {\n\t\tpadding: 0px;\n\t\tmargin: 0px;\n\t}\n\n\ttable.header-table td {\n\t\tvertical-align: top;\n\t}\n\n\ttable.header-table thead {\n\t\tborder-bottom: 1px solid black;\n\t}\n\n\ttable.header-table h3 {\n\t\tcolor: gray;\n\t}\n\n\ttable.header-table thead td {\n\t\tpadding: 5px 0px;\n\t}\n\n\tdiv.page-body table td:nth-child(6),\n\tdiv.page-body table td:nth-child(7) {\n\t\ttext-align: right;\n\t}\n\n\ttable.footer-table td {\n\t\tvertical-align: top;\n\t}\n\n\ttable.footer-table td table td:nth-child(2),\n\ttable.footer-table td table td:nth-child(3) {\n\t\ttext-align: right;\n\t}\n</style>\n\n\n<!-- Javascript -->\n<script>\n    // Store round off to places for fields\n    var decimals = {\n        adj_rate: (function() {\n            var adj_rate = get_field('Sales Order Item', 'adj_rate');\n            if (adj_rate.fieldtype==='Float') return 6;\n            return 2;\n        })(),\n    };    \n\tvar si_std = {\n\t\tprint_item_table: function() {\n\t\t\tvar table = print_table(\n\t\t\t\t'Sales Order',\n\t\t\t\tdoc.name,\n\t\t\t\t'sales_order_details',\n\t\t\t\t'Sales Order Item',\n\t\t\t\t[// Here specify the table columns to be displayed\n\t\t\t\t\t'SR', 'item_code', 'description', 'qty', 'stock_uom',\n\t\t\t\t\t'basic_rate', 'amount'\n\t\t\t\t],\n\t\t\t\t[// Here specify the labels of column headings\n\t\t\t\t\t'Sr', 'Item Code', 'Description', 'Qty',\n\t\t\t\t\t'UoM', 'Basic Rate', 'Amount'\n\t\t\t\t],\n\t\t\t\t[// Here specify the column widths\n\t\t\t\t\t'3%', '20%', '37%', '5%',\n\t\t\t\t\t'5%', '15%', '15%'\n\t\t\t\t],\n\t\t\t\tnull,\n\t\t\t\tnull,\n\t\t\t\t{\n\t\t\t\t\t'description' : function(data_row) {\n\t\t\t\t\t\tif(data_row.adj_rate) {\n\t\t\t\t\t\t\tvar to_append = '<div style=\"padding-left: 15px;\"><i>Discount: ' + \n\t\t\t\t\t\t\t\troundNumber(data_row.adj_rate, decimals.adj_rate || 2) +\n                                '% on ' + doc.currency + ' ' +\n\t\t\t\t\t\t\t\tfmt_money(data_row.ref_rate) + '</i></div>';\n\t\t\t\t\t\t\tif(data_row.description.indexOf(to_append)==-1) {\n\t\t\t\t\t\t\t\treturn data_row.description + to_append;\n\t\t\t\t\t\t\t} else { return data_row.description; }\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\treturn data_row.description;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t);\n\n\t\t\t// This code takes care of page breaks\n\t\t\tif(table.appendChild) {\n\t\t\t\tout = table.innerHTML;\n\t\t\t} else {\n\t\t\t\tout = '';\n\t\t\t\tfor(var i=0; i < (table.length-1); i++) {\n\t\t\t\t\tout += table[i].innerHTML + \n\t\t\t\t\t\t'<div style = \"page-break-after: always;\" \\\n\t\t\t\t\t\tclass = \"page_break\"></div>\\\n\t\t\t\t\t\t<div class=\"page-settings\"></div>';\n\t\t\t\t}\n\t\t\t\tout += table[table.length-1].innerHTML;\n\t\t\t}\n\t\t\treturn out;\n\t\t},\n\n\n\t\tprint_other_charges: function(parent) {\n\t\t\tvar oc = getchildren('Sales Taxes and Charges', doc.name, 'other_charges');\n\t\t\tvar rows = '<table width=100%>\\n';\n\t\t\tfor(var i=0; i<oc.length; i++) {\n\t\t\t\tif(!oc[i].included_in_print_rate) {\n\t\t\t\t\trows +=\n\t\t\t\t\t\t'<tr>\\n' +\n\t\t\t\t\t\t\t'\\t<td>' + oc[i].description + '</td>\\n' +\n\t\t\t\t\t\t\t'\\t<td></td>\\n' +\n\t\t\t\t\t\t\t'\\t<td width=38%>' + fmt_money(oc[i].tax_amount) + '</td>\\n' +\n\t\t\t\t\t\t'</tr>\\n';\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn rows + '</table>\\n';\n\t\t}\n\t};\n</script>\n\n\n<!-- Page Layout Settings -->\n<div class='common page-header'>\n\t<!-- \n\t\tPage Header will contain\n\t\t\t+ table 1\n\t\t\t\t+ table 1a\n\t\t\t\t\t- Name\n\t\t\t\t\t- Address\n\t\t\t\t\t- Contact\n\t\t\t\t\t- Mobile No\n\t\t\t\t+ table 1b\n\t\t\t\t\t- Voucher Date\n\t\t\t\t\t- Due Date\n\t-->\n\t<table class='header-table' cellspacing=0>\n\t\t<thead>\n\t\t\t<tr><td><script>'<h1>' + (doc.select_print_heading || 'Sales Order') + '</h1>'</script></td></tr>\n\t\t\t<tr><td><h3><script>cur_frm.docname</script></h3></td></tr>\n\t\t</thead>\n\t\t<tbody>\n\t\t\t<tr>\n\t\t\t\t<td width=60%><table width=100% cellspacing=0><tbody>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td width=39%><b>Name</b></td>\n\t\t\t\t\t\t<td><script>doc.customer_name</script></td>\n\t\t\t\t\t</tr>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td><b>Address</b></td>\n\t\t\t\t\t\t<td><script>replace_newlines(doc.address_display)</script></td>\n\t\t\t\t\t</tr>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td><b>Contact</b></td>\n\t\t\t\t\t\t<td><script>doc.contact_display</script></td>\n\t\t\t\t\t</tr>\n\t\t\t\t</tbody></table></td>\n\t\t\t\t<td><table width=100% cellspacing=0><tbody>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td width=63%><b>Sales Order Date</b></td>\n\t\t\t\t\t\t<td><script>date.str_to_user(doc.transaction_date)</script></td>\n\t\t\t\t\t<tr>\t\t\t\t\t\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td><b>Delivery Date</b></td>\n\t\t\t\t\t\t<td><script>date.str_to_user(doc.delivery_date)</script></td>\n\t\t\t\t\t<tr>\t\t\t\t\t\n\t\t\t\t</tbody></table></td>\n\t\t\t</tr>\n\t\t</tbody>\n\t\t<tfoot>\n\t\t\n\t\t</tfoot>\n\t</table>\n</div>\n<div class='common page-body'>\n\t<!-- \n\t\tPage Body will contain\n\t\t\t+ table 2\n\t\t\t\t- Sales Invoice Data\n\t-->\n\t<script>si_std.print_item_table()</script>\n</div>\n<div class='common page-footer'>\n\t<!-- \n\t\tPage Footer will contain\n\t\t\t+ table 3\n\t\t\t\t- Terms and Conditions\n\t\t\t\t- Total Rounded Amount Calculation\n\t\t\t\t- Total Rounded Amount in Words\n\t-->\n\t<table class='footer-table' width=100% cellspacing=0>\n\t\t<thead>\n\t\t\t\n\t\t</thead>\n\t\t<tbody>\n\t\t\t<tr>\n\t\t\t\t<td width=60% style='padding-right: 10px;'>\n\t\t\t\t\t<b>Terms, Conditions &amp; Other Information:</b><br />\n\t\t\t\t\t<script>doc.terms</script>\n\t\t\t\t</td>\n\t\t\t\t<td>\n\t\t\t\t\t<table cellspacing=0 width=100%><tbody>\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td>Net Total</td>\n\t\t\t\t\t\t\t<td></td>\n\t\t\t\t\t\t\t<td width=38%><script>\n\t\t\t\t\t\t\t\tfmt_money(doc.net_total)\n\t\t\t\t\t\t\t</script></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr><td colspan=3><script>si_std.print_other_charges()</script></td></tr>\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td>Grand Total</td>\n\t\t\t\t\t\t\t<td></td>\n\t\t\t\t\t\t\t<td><script>\n\t\t\t\t\t\t\t\tfmt_money(doc.grand_total_export)\n\t\t\t\t\t\t\t</script></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr style='font-weight: bold'>\n\t\t\t\t\t\t\t<td>Rounded Total</td>\n\t\t\t\t\t\t\t<td><script>doc.currency</script></td>\n\t\t\t\t\t\t\t<td><script>\n\t\t\t\t\t\t\t\tfmt_money(doc.rounded_total_export)\n\t\t\t\t\t\t\t</script></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t</tbody></table>\n\t\t\t\t\t<br /><b>In Words</b><br />\n\t\t\t\t\t<i><script>doc.in_words_export</script></i>\n\t\t\t\t</td>\n\t\t\t</tr>\t\t\n\t\t</tbody>\n\t\t<tfoot>\n\t\t\n\t\t</tfoot>\n\t</table>\n</div>\n", 
+  "standard": "Yes"
+ }, 
+ {
+  "name": "Sales Order Classic", 
+  "doctype": "Print Format"
+ }
 ]
\ No newline at end of file
diff --git a/selling/Print Format/Sales Order Modern/Sales Order Modern.txt b/selling/Print Format/Sales Order Modern/Sales Order Modern.txt
index e676870..80def0a 100644
--- a/selling/Print Format/Sales Order Modern/Sales Order Modern.txt
+++ b/selling/Print Format/Sales Order Modern/Sales Order Modern.txt
@@ -1,28 +1,21 @@
-# Print Format, Sales Order Modern
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-05-17 17:27:50',
-		'docstatus': 0,
-		'modified': '2012-05-17 17:48:22',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all Print Format
-	{
-		'doc_type': u'Sales Order',
-		'doctype': 'Print Format',
-		'html': u'<!--\n\tSample Print Format for ERPNext\n\tPlease use at your own discretion\n\tFor suggestions and contributions:\n\t\thttps://github.com/webnotes/erpnext-print-templates\n\n\tFreely usable under MIT license\n-->\n\n<!-- Style Settings -->\n<style>\n\t/*\n\t\tcommon style for whole page\n\t\tThis should include:\n\t\t+ page size related settings\n\t\t+ font family settings\n\t\t+ line spacing settings\n\t*/\n\t@media screen {\n\t\tbody {\n\t\t\twidth: 8.3in;\n\t\t}\n\t}\n\n\thtml, body, div, span, td {\n\t\tfont-family: "Helvetica", "Arial", sans-serif;\n\t\tfont-size: 12px;\n\t}\n\n\tbody {\n\t\tpadding: 10px;\n\t\tmargin: auto;\n\t\tfont-size: 12px;\n\t\tline-height: 150%;\n\t}\n\n\t.common {\n\t\tfont-family: "Helvetica", "Arial", sans-serif !important;\n\t\tfont-size: 12px;\n\t\tpadding: 10px 0px;\n\t}\n\n\ttable {\n\t\tborder-collapse: collapse;\n\t\twidth: 100%;\n\t\tvertical-align: top;\n\t\tborder-style: none !important;\n\t}\n\n\ttable td {\n\t\tpadding: 2px 0px;\n\t\tborder-style: none !important;\n\t}\n\t\n\ttable h1, h2, h3, h4, h5, h6 {\n\t\tpadding: 0px;\n\t\tmargin: 0px;\n\t}\n\n\ttable.header-table td {\n\t\tvertical-align: top;\n\t}\n\n\ttable.header-table h1 {\n\t\ttext-transform: uppercase;\n\t\tcolor: white;\n\t\tfont-size: 55px;\n\t\tfont-style: italic;\n\t}\n\n\ttable.header-table thead tr:nth-child(1) div {\n\t\theight: 24px;\n\t\tbackground-color: #696969;\n\t\tvertical-align: middle;\n\t\tpadding: 12px 0px 0px 0px;\n\t\twidth: 100%;\n\t}\n\n\tdiv.page-body table td:nth-child(6),\n\tdiv.page-body table td:nth-child(7) {\n\t\ttext-align: right;\n\t}\n\n\tdiv.page-body table tr td {\n\t\tbackground-color: #DCDCDC !important;\n\t}\n\n\tdiv.page-body table tr:nth-child(1) td {\n\t\tbackground-color: #696969 !important;\n\t\tcolor: white !important;\n\t}\n\n\ttable.footer-table td {\n\t\tvertical-align: top;\n\t}\n\n\ttable.footer-table td table td:nth-child(2),\n\ttable.footer-table td table td:nth-child(3) {\n\t\ttext-align: right;\n\t}\n\n\ttable.footer-table tfoot td {\n\t\tbackground-color: #696969;\n\t\theight: 10px;\n\t}\n\n\t.imp-details {\n\t\tbackground-color: #DCDCDC;\n\t}\n</style>\n\n\n<!-- Javascript -->\n<script>\n    // Store round off to places for fields\n    var decimals = {\n        adj_rate: (function() {\n            var adj_rate = get_field(\'Sales Order Item\', \'adj_rate\');\n            if (adj_rate.fieldtype===\'Float\') return 6;\n            return 2;\n        })(),\n    };\n\tvar si_std = {\n\t\tprint_item_table: function() {\n\t\t\tvar table = print_table(\n\t\t\t\t\'Sales Order\',\n\t\t\t\tdoc.name,\n\t\t\t\t\'sales_order_details\',\n\t\t\t\t\'Sales Order Item\',\n\t\t\t\t[// Here specify the table columns to be displayed\n\t\t\t\t\t\'SR\', \'item_code\', \'description\', \'qty\', \'stock_uom\',\n\t\t\t\t\t\'basic_rate\', \'amount\'\n\t\t\t\t],\n\t\t\t\t[// Here specify the labels of column headings\n\t\t\t\t\t\'Sr\', \'Item Code\', \'Description\', \'Qty\',\n\t\t\t\t\t\'UoM\', \'Basic Rate\', \'Amount\'\n\t\t\t\t],\n\t\t\t\t[// Here specify the column widths\n\t\t\t\t\t\'3%\', \'20%\', \'37%\', \'5%\',\n\t\t\t\t\t\'5%\', \'15%\', \'15%\'\n\t\t\t\t],\n\t\t\t\tnull,\n\t\t\t\tnull,\n\t\t\t\t{\n\t\t\t\t\t\'description\' : function(data_row) {\n\t\t\t\t\t\tif(data_row.adj_rate) {\n\t\t\t\t\t\t\tvar to_append = \'<div style="padding-left: 15px;"><i>Discount: \' + \n    \t\t\t\t\t\t\troundNumber(data_row.adj_rate, decimals.adj_rate || 2) +\n                                \'% on \' + doc.currency + \' \' +\n\t\t\t\t\t\t\t\tfmt_money(data_row.ref_rate) + \'</i></div>\';\n\t\t\t\t\t\t\tif(data_row.description.indexOf(to_append)==-1) {\n\t\t\t\t\t\t\t\treturn data_row.description + to_append;\n\t\t\t\t\t\t\t} else { return data_row.description; }\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\treturn data_row.description;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t);\n\n\t\t\t// This code takes care of page breaks\n\t\t\tif(table.appendChild) {\n\t\t\t\tout = table.innerHTML;\n\t\t\t} else {\n\t\t\t\tout = \'\';\n\t\t\t\tfor(var i=0; i < (table.length-1); i++) {\n\t\t\t\t\tout += table[i].innerHTML + \n\t\t\t\t\t\t\'<div style = "page-break-after: always;" \\\n\t\t\t\t\t\tclass = "page_break"></div>\\\n\t\t\t\t\t\t<div class="page-settings"></div>\';\n\t\t\t\t}\n\t\t\t\tout += table[table.length-1].innerHTML;\n\t\t\t}\n\t\t\treturn out;\n\t\t},\n\n\n\t\tprint_other_charges: function(parent) {\n\t\t\tvar oc = getchildren(\'Sales Taxes and Charges\', doc.name, \'other_charges\');\n\t\t\tvar rows = \'<table width=100%>\\n\';\n\t\t\tfor(var i=0; i<oc.length; i++) {\n\t\t\t\tif(!oc[i].included_in_print_rate) {\n\t\t\t\t\trows +=\n\t\t\t\t\t\t\'<tr>\\n\' +\n\t\t\t\t\t\t\t\'\\t<td>\' + oc[i].description + \'</td>\\n\' +\n\t\t\t\t\t\t\t\'\\t<td></td>\\n\' +\n\t\t\t\t\t\t\t\'\\t<td width=38%>\' + fmt_money(oc[i].tax_amount) + \'</td>\\n\' +\n\t\t\t\t\t\t\'</tr>\\n\';\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn rows + \'</table>\\n\';\n\t\t}\n\t};\n</script>\n\n\n<!-- Page Layout Settings -->\n<div class=\'common page-header\'>\n\t<!-- \n\t\tPage Header will contain\n\t\t\t+ table 1\n\t\t\t\t+ table 1a\n\t\t\t\t\t- Name\n\t\t\t\t\t- Address\n\t\t\t\t\t- Contact\n\t\t\t\t\t- Mobile No\n\t\t\t\t+ table 1b\n\t\t\t\t\t- Voucher Date\n\t\t\t\t\t- Due Date\n\t-->\n\t<table class=\'header-table\' cellspacing=0>\n\t\t<thead>\n\t\t\t<tr><td colspan=2><div><script>\'<h1>\' + (doc.select_print_heading || \'Sales Order\') + \'</h1>\'</script></div></td></tr>\n\t\t\t<tr><td colspan=2><div style="height:15px"></div></td></tr>\n\t\t</thead>\n\t\t<tbody>\n\t\t\t<tr>\n\t\t\t\t<td width=60%><table width=100% cellspacing=0><tbody>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td width=39%><b>Name</b></td>\n\t\t\t\t\t\t<td><script>doc.customer_name</script></td>\n\t\t\t\t\t</tr>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td><b>Address</b></td>\n\t\t\t\t\t\t<td><script>replace_newlines(doc.address_display)</script></td>\n\t\t\t\t\t</tr>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td><b>Contact</b></td>\n\t\t\t\t\t\t<td><script>doc.contact_display</script></td>\n\t\t\t\t\t</tr>\n\t\t\t\t</tbody></table></td>\n\t\t\t\t<td><table width=100% cellspacing=0><tbody>\n\t\t\t\t\t<tr class=\'imp-details\'>\n\t\t\t\t\t\t<td><b>Sales Order No.</b></td>\n\t\t\t\t\t\t<td><script>cur_frm.docname</script></td>\n\t\t\t\t\t</tr>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td width=63%><b>Sales Order Date</b></td>\n\t\t\t\t\t\t<td><script>date.str_to_user(doc.transaction_date)</script></td>\n\t\t\t\t\t<tr>\t\t\t\t\t\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td><b>Delivery Date</b></td>\n\t\t\t\t\t\t<td><script>date.str_to_user(doc.delivery_date)</script></td>\n\t\t\t\t\t<tr>\t\t\t\t\t\n\t\t\t\t</tbody></table></td>\n\t\t\t</tr>\n\t\t</tbody>\n\t\t<tfoot>\n\t\t\n\t\t</tfoot>\n\t</table>\n</div>\n<div class=\'common page-body\'>\n\t<!-- \n\t\tPage Body will contain\n\t\t\t+ table 2\n\t\t\t\t- Sales Invoice Data\n\t-->\n\t<script>si_std.print_item_table()</script>\n</div>\n<div class=\'common page-footer\'>\n\t<!-- \n\t\tPage Footer will contain\n\t\t\t+ table 3\n\t\t\t\t- Terms and Conditions\n\t\t\t\t- Total Rounded Amount Calculation\n\t\t\t\t- Total Rounded Amount in Words\n\t-->\n\t<table class=\'footer-table\' width=100% cellspacing=0>\n\t\t<thead>\n\t\t\t\n\t\t</thead>\n\t\t<tbody>\n\t\t\t<tr>\n\t\t\t\t<td width=60% style=\'padding-right: 10px;\'>\n\t\t\t\t\t<b>Terms, Conditions &amp; Other Information:</b><br />\n\t\t\t\t\t<script>doc.terms</script>\n\t\t\t\t</td>\n\t\t\t\t<td>\n\t\t\t\t\t<table cellspacing=0 width=100%><tbody>\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td>Net Total</td>\n\t\t\t\t\t\t\t<td></td>\n\t\t\t\t\t\t\t<td width=38%><script>\n\t\t\t\t\t\t\t\tfmt_money(doc.net_total)\n\t\t\t\t\t\t\t</script></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr><td colspan=3><script>si_std.print_other_charges()</script></td></tr>\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td>Grand Total</td>\n\t\t\t\t\t\t\t<td></td>\n\t\t\t\t\t\t\t<td><script>\n\t\t\t\t\t\t\t\tfmt_money(doc.grand_total_export)\n\t\t\t\t\t\t\t</script></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr style=\'font-weight: bold\' class=\'imp-details\'>\n\t\t\t\t\t\t\t<td>Rounded Total</td>\n\t\t\t\t\t\t\t<td><script>doc.currency</script></td>\n\t\t\t\t\t\t\t<td><script>\n\t\t\t\t\t\t\t\tfmt_money(doc.rounded_total_export)\n\t\t\t\t\t\t\t</script></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t</tbody></table>\n\t\t\t\t\t<br /><b>In Words</b><br />\n\t\t\t\t\t<i><script>doc.in_words_export</script></i>\n\t\t\t\t</td>\n\t\t\t</tr>\t\t\n\t\t</tbody>\n\t\t<tfoot>\n\t\t\t<tr><td colspan=2><div></div></td><tr>\n\t\t</tfoot>\n\t</table>\n</div>\n',
-		'module': u'Selling',
-		'name': '__common__',
-		'standard': u'Yes'
-	},
-
-	# Print Format, Sales Order Modern
-	{
-		'doctype': 'Print Format',
-		'name': u'Sales Order Modern'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-05-17 17:27:50", 
+  "modified_by": "Administrator", 
+  "modified": "2012-05-17 17:48:22"
+ }, 
+ {
+  "doc_type": "Sales Order", 
+  "name": "__common__", 
+  "module": "Selling", 
+  "doctype": "Print Format", 
+  "html": "<!--\n\tSample Print Format for ERPNext\n\tPlease use at your own discretion\n\tFor suggestions and contributions:\n\t\thttps://github.com/webnotes/erpnext-print-templates\n\n\tFreely usable under MIT license\n-->\n\n<!-- Style Settings -->\n<style>\n\t/*\n\t\tcommon style for whole page\n\t\tThis should include:\n\t\t+ page size related settings\n\t\t+ font family settings\n\t\t+ line spacing settings\n\t*/\n\t@media screen {\n\t\tbody {\n\t\t\twidth: 8.3in;\n\t\t}\n\t}\n\n\thtml, body, div, span, td {\n\t\tfont-family: \"Helvetica\", \"Arial\", sans-serif;\n\t\tfont-size: 12px;\n\t}\n\n\tbody {\n\t\tpadding: 10px;\n\t\tmargin: auto;\n\t\tfont-size: 12px;\n\t\tline-height: 150%;\n\t}\n\n\t.common {\n\t\tfont-family: \"Helvetica\", \"Arial\", sans-serif !important;\n\t\tfont-size: 12px;\n\t\tpadding: 10px 0px;\n\t}\n\n\ttable {\n\t\tborder-collapse: collapse;\n\t\twidth: 100%;\n\t\tvertical-align: top;\n\t\tborder-style: none !important;\n\t}\n\n\ttable td {\n\t\tpadding: 2px 0px;\n\t\tborder-style: none !important;\n\t}\n\t\n\ttable h1, h2, h3, h4, h5, h6 {\n\t\tpadding: 0px;\n\t\tmargin: 0px;\n\t}\n\n\ttable.header-table td {\n\t\tvertical-align: top;\n\t}\n\n\ttable.header-table h1 {\n\t\ttext-transform: uppercase;\n\t\tcolor: white;\n\t\tfont-size: 55px;\n\t\tfont-style: italic;\n\t}\n\n\ttable.header-table thead tr:nth-child(1) div {\n\t\theight: 24px;\n\t\tbackground-color: #696969;\n\t\tvertical-align: middle;\n\t\tpadding: 12px 0px 0px 0px;\n\t\twidth: 100%;\n\t}\n\n\tdiv.page-body table td:nth-child(6),\n\tdiv.page-body table td:nth-child(7) {\n\t\ttext-align: right;\n\t}\n\n\tdiv.page-body table tr td {\n\t\tbackground-color: #DCDCDC !important;\n\t}\n\n\tdiv.page-body table tr:nth-child(1) td {\n\t\tbackground-color: #696969 !important;\n\t\tcolor: white !important;\n\t}\n\n\ttable.footer-table td {\n\t\tvertical-align: top;\n\t}\n\n\ttable.footer-table td table td:nth-child(2),\n\ttable.footer-table td table td:nth-child(3) {\n\t\ttext-align: right;\n\t}\n\n\ttable.footer-table tfoot td {\n\t\tbackground-color: #696969;\n\t\theight: 10px;\n\t}\n\n\t.imp-details {\n\t\tbackground-color: #DCDCDC;\n\t}\n</style>\n\n\n<!-- Javascript -->\n<script>\n    // Store round off to places for fields\n    var decimals = {\n        adj_rate: (function() {\n            var adj_rate = get_field('Sales Order Item', 'adj_rate');\n            if (adj_rate.fieldtype==='Float') return 6;\n            return 2;\n        })(),\n    };\n\tvar si_std = {\n\t\tprint_item_table: function() {\n\t\t\tvar table = print_table(\n\t\t\t\t'Sales Order',\n\t\t\t\tdoc.name,\n\t\t\t\t'sales_order_details',\n\t\t\t\t'Sales Order Item',\n\t\t\t\t[// Here specify the table columns to be displayed\n\t\t\t\t\t'SR', 'item_code', 'description', 'qty', 'stock_uom',\n\t\t\t\t\t'basic_rate', 'amount'\n\t\t\t\t],\n\t\t\t\t[// Here specify the labels of column headings\n\t\t\t\t\t'Sr', 'Item Code', 'Description', 'Qty',\n\t\t\t\t\t'UoM', 'Basic Rate', 'Amount'\n\t\t\t\t],\n\t\t\t\t[// Here specify the column widths\n\t\t\t\t\t'3%', '20%', '37%', '5%',\n\t\t\t\t\t'5%', '15%', '15%'\n\t\t\t\t],\n\t\t\t\tnull,\n\t\t\t\tnull,\n\t\t\t\t{\n\t\t\t\t\t'description' : function(data_row) {\n\t\t\t\t\t\tif(data_row.adj_rate) {\n\t\t\t\t\t\t\tvar to_append = '<div style=\"padding-left: 15px;\"><i>Discount: ' + \n    \t\t\t\t\t\t\troundNumber(data_row.adj_rate, decimals.adj_rate || 2) +\n                                '% on ' + doc.currency + ' ' +\n\t\t\t\t\t\t\t\tfmt_money(data_row.ref_rate) + '</i></div>';\n\t\t\t\t\t\t\tif(data_row.description.indexOf(to_append)==-1) {\n\t\t\t\t\t\t\t\treturn data_row.description + to_append;\n\t\t\t\t\t\t\t} else { return data_row.description; }\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\treturn data_row.description;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t);\n\n\t\t\t// This code takes care of page breaks\n\t\t\tif(table.appendChild) {\n\t\t\t\tout = table.innerHTML;\n\t\t\t} else {\n\t\t\t\tout = '';\n\t\t\t\tfor(var i=0; i < (table.length-1); i++) {\n\t\t\t\t\tout += table[i].innerHTML + \n\t\t\t\t\t\t'<div style = \"page-break-after: always;\" \\\n\t\t\t\t\t\tclass = \"page_break\"></div>\\\n\t\t\t\t\t\t<div class=\"page-settings\"></div>';\n\t\t\t\t}\n\t\t\t\tout += table[table.length-1].innerHTML;\n\t\t\t}\n\t\t\treturn out;\n\t\t},\n\n\n\t\tprint_other_charges: function(parent) {\n\t\t\tvar oc = getchildren('Sales Taxes and Charges', doc.name, 'other_charges');\n\t\t\tvar rows = '<table width=100%>\\n';\n\t\t\tfor(var i=0; i<oc.length; i++) {\n\t\t\t\tif(!oc[i].included_in_print_rate) {\n\t\t\t\t\trows +=\n\t\t\t\t\t\t'<tr>\\n' +\n\t\t\t\t\t\t\t'\\t<td>' + oc[i].description + '</td>\\n' +\n\t\t\t\t\t\t\t'\\t<td></td>\\n' +\n\t\t\t\t\t\t\t'\\t<td width=38%>' + fmt_money(oc[i].tax_amount) + '</td>\\n' +\n\t\t\t\t\t\t'</tr>\\n';\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn rows + '</table>\\n';\n\t\t}\n\t};\n</script>\n\n\n<!-- Page Layout Settings -->\n<div class='common page-header'>\n\t<!-- \n\t\tPage Header will contain\n\t\t\t+ table 1\n\t\t\t\t+ table 1a\n\t\t\t\t\t- Name\n\t\t\t\t\t- Address\n\t\t\t\t\t- Contact\n\t\t\t\t\t- Mobile No\n\t\t\t\t+ table 1b\n\t\t\t\t\t- Voucher Date\n\t\t\t\t\t- Due Date\n\t-->\n\t<table class='header-table' cellspacing=0>\n\t\t<thead>\n\t\t\t<tr><td colspan=2><div><script>'<h1>' + (doc.select_print_heading || 'Sales Order') + '</h1>'</script></div></td></tr>\n\t\t\t<tr><td colspan=2><div style=\"height:15px\"></div></td></tr>\n\t\t</thead>\n\t\t<tbody>\n\t\t\t<tr>\n\t\t\t\t<td width=60%><table width=100% cellspacing=0><tbody>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td width=39%><b>Name</b></td>\n\t\t\t\t\t\t<td><script>doc.customer_name</script></td>\n\t\t\t\t\t</tr>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td><b>Address</b></td>\n\t\t\t\t\t\t<td><script>replace_newlines(doc.address_display)</script></td>\n\t\t\t\t\t</tr>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td><b>Contact</b></td>\n\t\t\t\t\t\t<td><script>doc.contact_display</script></td>\n\t\t\t\t\t</tr>\n\t\t\t\t</tbody></table></td>\n\t\t\t\t<td><table width=100% cellspacing=0><tbody>\n\t\t\t\t\t<tr class='imp-details'>\n\t\t\t\t\t\t<td><b>Sales Order No.</b></td>\n\t\t\t\t\t\t<td><script>cur_frm.docname</script></td>\n\t\t\t\t\t</tr>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td width=63%><b>Sales Order Date</b></td>\n\t\t\t\t\t\t<td><script>date.str_to_user(doc.transaction_date)</script></td>\n\t\t\t\t\t<tr>\t\t\t\t\t\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td><b>Delivery Date</b></td>\n\t\t\t\t\t\t<td><script>date.str_to_user(doc.delivery_date)</script></td>\n\t\t\t\t\t<tr>\t\t\t\t\t\n\t\t\t\t</tbody></table></td>\n\t\t\t</tr>\n\t\t</tbody>\n\t\t<tfoot>\n\t\t\n\t\t</tfoot>\n\t</table>\n</div>\n<div class='common page-body'>\n\t<!-- \n\t\tPage Body will contain\n\t\t\t+ table 2\n\t\t\t\t- Sales Invoice Data\n\t-->\n\t<script>si_std.print_item_table()</script>\n</div>\n<div class='common page-footer'>\n\t<!-- \n\t\tPage Footer will contain\n\t\t\t+ table 3\n\t\t\t\t- Terms and Conditions\n\t\t\t\t- Total Rounded Amount Calculation\n\t\t\t\t- Total Rounded Amount in Words\n\t-->\n\t<table class='footer-table' width=100% cellspacing=0>\n\t\t<thead>\n\t\t\t\n\t\t</thead>\n\t\t<tbody>\n\t\t\t<tr>\n\t\t\t\t<td width=60% style='padding-right: 10px;'>\n\t\t\t\t\t<b>Terms, Conditions &amp; Other Information:</b><br />\n\t\t\t\t\t<script>doc.terms</script>\n\t\t\t\t</td>\n\t\t\t\t<td>\n\t\t\t\t\t<table cellspacing=0 width=100%><tbody>\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td>Net Total</td>\n\t\t\t\t\t\t\t<td></td>\n\t\t\t\t\t\t\t<td width=38%><script>\n\t\t\t\t\t\t\t\tfmt_money(doc.net_total)\n\t\t\t\t\t\t\t</script></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr><td colspan=3><script>si_std.print_other_charges()</script></td></tr>\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td>Grand Total</td>\n\t\t\t\t\t\t\t<td></td>\n\t\t\t\t\t\t\t<td><script>\n\t\t\t\t\t\t\t\tfmt_money(doc.grand_total_export)\n\t\t\t\t\t\t\t</script></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr style='font-weight: bold' class='imp-details'>\n\t\t\t\t\t\t\t<td>Rounded Total</td>\n\t\t\t\t\t\t\t<td><script>doc.currency</script></td>\n\t\t\t\t\t\t\t<td><script>\n\t\t\t\t\t\t\t\tfmt_money(doc.rounded_total_export)\n\t\t\t\t\t\t\t</script></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t</tbody></table>\n\t\t\t\t\t<br /><b>In Words</b><br />\n\t\t\t\t\t<i><script>doc.in_words_export</script></i>\n\t\t\t\t</td>\n\t\t\t</tr>\t\t\n\t\t</tbody>\n\t\t<tfoot>\n\t\t\t<tr><td colspan=2><div></div></td><tr>\n\t\t</tfoot>\n\t</table>\n</div>\n", 
+  "standard": "Yes"
+ }, 
+ {
+  "name": "Sales Order Modern", 
+  "doctype": "Print Format"
+ }
 ]
\ No newline at end of file
diff --git a/selling/Print Format/Sales Order Spartan/Sales Order Spartan.txt b/selling/Print Format/Sales Order Spartan/Sales Order Spartan.txt
index 7532bd3..197132f 100644
--- a/selling/Print Format/Sales Order Spartan/Sales Order Spartan.txt
+++ b/selling/Print Format/Sales Order Spartan/Sales Order Spartan.txt
@@ -1,28 +1,21 @@
-# Print Format, Sales Order Spartan
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-05-17 17:27:50',
-		'docstatus': 0,
-		'modified': '2012-05-17 17:49:46',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all Print Format
-	{
-		'doc_type': u'Sales Order',
-		'doctype': 'Print Format',
-		'html': u'<!--\n\tSample Print Format for ERPNext\n\tPlease use at your own discretion\n\tFor suggestions and contributions:\n\t\thttps://github.com/webnotes/erpnext-print-templates\n\n\tFreely usable under MIT license\n-->\n\n<!-- Style Settings -->\n<style>\n\t/*\n\t\tcommon style for whole page\n\t\tThis should include:\n\t\t+ page size related settings\n\t\t+ font family settings\n\t\t+ line spacing settings\n\t*/\n\t@media screen {\n\t\tbody {\n\t\t\twidth: 8.3in;\n\t\t}\n\t}\n\n\thtml, body, div, span, td {\n\t\tfont-family: "Arial", sans-serif;\n\t\tfont-size: 12px;\n\t}\n\n\tbody {\n\t\tpadding: 10px;\n\t\tmargin: auto;\n\t\tfont-size: 12px;\n\t\tline-height: 150%;\n\t}\n\n\t.common {\n\t\tfont-family: "Arial", sans-serif !important;\n\t\tfont-size: 12px;\n\t\tpadding: 0px;\n\t}\n\n\ttable {\n\t\twidth: 100% !important;\n\t\tvertical-align: top;\n\t}\n\n\ttable td {\n\t\tpadding: 2px 0px;\n\t}\n\n\ttable, td {\n\t\tborder-collapse: collapse !important;\n\t\tpadding: 0px;\n\t\tmargin: 0px !important;\n\t}\n\t\n\ttable h1, h2, h3, h4, h5, h6 {\n\t\tpadding: 0px;\n\t\tmargin: 0px;\n\t}\n\n\ttable.header-table td {\n\t\tvertical-align: top;\n\t}\n\n\ttable.header-table h3 {\n\t\tcolor: gray;\n\t}\n\n\ttable.header-table thead td {\n\t\tpadding: 5px;\n\t}\n\n\ttable.header-table > thead,\n\ttable.header-table > tbody > tr > td,\n\ttable.footer-table > tbody > tr > td {\n\t\tborder: 1px solid black;\n\t\tpadding: 5px;\n\t}\n\n\ttable.footer-table > tbody,\n\ttable.header-table > thead {\n\t\tborder-bottom: 3px solid black;\n\t}\n\n\ttable.header-table > thead {\n\t\tborder-top: 3px solid black;\n\t}\n\n\tdiv.page-body table td:nth-child(6),\n\tdiv.page-body table td:nth-child(7) {\n\t\ttext-align: right;\n\t}\n\n\tdiv.page-body td {\n\t\tbackground-color: white !important;\n\t\tborder: 1px solid black !important;\n\t}\n\n\ttable.footer-table td {\n\t\tvertical-align: top;\n\t}\n\n\ttable.footer-table td table td:nth-child(2),\n\ttable.footer-table td table td:nth-child(3) {\n\t\ttext-align: right;\n\t}\n</style>\n\n\n<!-- Javascript -->\n<script>\n    // Store round off to places for fields\n    var decimals = {\n        adj_rate: (function() {\n            var adj_rate = get_field(\'Sales Order Item\', \'adj_rate\');\n            if (adj_rate.fieldtype===\'Float\') return 6;\n            return 2;\n        })(),\n    };\n\tvar si_std = {\n\t\tprint_item_table: function() {\n\t\t\tvar table = print_table(\n\t\t\t\t\'Sales Order\',\n\t\t\t\tdoc.name,\n\t\t\t\t\'sales_order_details\',\n\t\t\t\t\'Sales Order Item\',\n\t\t\t\t[// Here specify the table columns to be displayed\n\t\t\t\t\t\'SR\', \'item_code\', \'description\', \'qty\', \'stock_uom\',\n\t\t\t\t\t\'basic_rate\', \'amount\'\n\t\t\t\t],\n\t\t\t\t[// Here specify the labels of column headings\n\t\t\t\t\t\'Sr\', \'Item Code\', \'Description\', \'Qty\',\n\t\t\t\t\t\'UoM\', \'Basic Rate\', \'Amount\'\n\t\t\t\t],\n\t\t\t\t[// Here specify the column widths\n\t\t\t\t\t\'3%\', \'20%\', \'37%\', \'5%\',\n\t\t\t\t\t\'5%\', \'15%\', \'15%\'\n\t\t\t\t],\n\t\t\t\tnull,\n\t\t\t\tnull,\n\t\t\t\t{\n\t\t\t\t\t\'description\' : function(data_row) {\n\t\t\t\t\t\tif(data_row.adj_rate) {\n\t\t\t\t\t\t\tvar to_append = \'<div style="padding-left: 15px;"><i>Discount: \' + \n    \t\t\t\t\t\t\troundNumber(data_row.adj_rate, decimals.adj_rate || 2) +\n                                \'% on \' + doc.currency + \' \' +\n\t\t\t\t\t\t\t\tfmt_money(data_row.ref_rate) + \'</i></div>\';\n\t\t\t\t\t\t\tif(data_row.description.indexOf(to_append)==-1) {\n\t\t\t\t\t\t\t\treturn data_row.description + to_append;\n\t\t\t\t\t\t\t} else { return data_row.description; }\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\treturn data_row.description;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t);\n\n\t\t\t// This code takes care of page breaks\n\t\t\tif(table.appendChild) {\n\t\t\t\tout = table.innerHTML;\n\t\t\t} else {\n\t\t\t\tout = \'\';\n\t\t\t\tfor(var i=0; i < (table.length-1); i++) {\n\t\t\t\t\tout += table[i].innerHTML + \n\t\t\t\t\t\t\'<div style = "page-break-after: always;" \\\n\t\t\t\t\t\tclass = "page_break"></div>\\\n\t\t\t\t\t\t<div class="page-settings"></div>\';\n\t\t\t\t}\n\t\t\t\tout += table[table.length-1].innerHTML;\n\t\t\t}\n\t\t\treturn out;\n\t\t},\n\n\n\t\tprint_other_charges: function(parent) {\n\t\t\tvar oc = getchildren(\'Sales Taxes and Charges\', doc.name, \'other_charges\');\n\t\t\tvar rows = \'<table width=100%>\\n\';\n\t\t\tfor(var i=0; i<oc.length; i++) {\n\t\t\t\tif(!oc[i].included_in_print_rate) {\n\t\t\t\t\trows +=\n\t\t\t\t\t\t\'<tr>\\n\' +\n\t\t\t\t\t\t\t\'\\t<td>\' + oc[i].description + \'</td>\\n\' +\n\t\t\t\t\t\t\t\'\\t<td></td>\\n\' +\n\t\t\t\t\t\t\t\'\\t<td width=38%>\' + fmt_money(oc[i].tax_amount) + \'</td>\\n\' +\n\t\t\t\t\t\t\'</tr>\\n\';\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn rows + \'</table>\\n\';\n\t\t}\n\t};\n</script>\n\n\n<!-- Page Layout Settings -->\n<div class=\'common page-header\'>\n\t<!-- \n\t\tPage Header will contain\n\t\t\t+ table 1\n\t\t\t\t+ table 1a\n\t\t\t\t\t- Name\n\t\t\t\t\t- Address\n\t\t\t\t\t- Contact\n\t\t\t\t\t- Mobile No\n\t\t\t\t+ table 1b\n\t\t\t\t\t- Voucher Date\n\t\t\t\t\t- Due Date\n\t-->\n\t<table class=\'header-table\' cellspacing=0>\n\t\t<thead>\n\t\t\t<tr><td colspan=2><script>\'<h1>\' + (doc.select_print_heading || \'Sales Order\') + \'</h1>\'</script></td></tr>\n\t\t\t<tr><td colspan=2><h3><script>cur_frm.docname</script></h3></td></tr>\n\t\t</thead>\n\t\t<tbody>\n\t\t\t<tr>\n\t\t\t\t<td width=60%><table width=100% cellspacing=0><tbody>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td width=39%><b>Name</b></td>\n\t\t\t\t\t\t<td><script>doc.customer_name</script></td>\n\t\t\t\t\t</tr>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td><b>Address</b></td>\n\t\t\t\t\t\t<td><script>replace_newlines(doc.address_display)</script></td>\n\t\t\t\t\t</tr>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td><b>Contact</b></td>\n\t\t\t\t\t\t<td><script>doc.contact_display</script></td>\n\t\t\t\t\t</tr>\n\t\t\t\t</tbody></table></td>\n\t\t\t\t<td><table width=100% cellspacing=0><tbody>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td width=63%><b>Sales Order Date</b></td>\n\t\t\t\t\t\t<td><script>date.str_to_user(doc.transaction_date)</script></td>\n\t\t\t\t\t<tr>\t\t\t\t\t\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td><b>Delivery Date</b></td>\n\t\t\t\t\t\t<td><script>date.str_to_user(doc.delivery_date)</script></td>\n\t\t\t\t\t<tr>\t\t\t\t\t\n\t\t\t\t</tbody></table></td>\n\t\t\t</tr>\n\t\t</tbody>\n\t\t<tfoot>\n\t\t\n\t\t</tfoot>\n\t</table>\n</div>\n<div class=\'common page-body\'>\n\t<!-- \n\t\tPage Body will contain\n\t\t\t+ table 2\n\t\t\t\t- Sales Invoice Data\n\t-->\n\t<script>si_std.print_item_table()</script>\n</div>\n<div class=\'common page-footer\'>\n\t<!-- \n\t\tPage Footer will contain\n\t\t\t+ table 3\n\t\t\t\t- Terms and Conditions\n\t\t\t\t- Total Rounded Amount Calculation\n\t\t\t\t- Total Rounded Amount in Words\n\t-->\n\t<table class=\'footer-table\' width=100% cellspacing=0>\n\t\t<thead>\n\t\t\t\n\t\t</thead>\n\t\t<tbody>\n\t\t\t<tr>\n\t\t\t\t<td width=60% style=\'padding-right: 10px;\'>\n\t\t\t\t\t<b>Terms, Conditions &amp; Other Information:</b><br />\n\t\t\t\t\t<script>doc.terms</script>\n\t\t\t\t</td>\n\t\t\t\t<td>\n\t\t\t\t\t<table cellspacing=0 width=100%><tbody>\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td>Net Total</td>\n\t\t\t\t\t\t\t<td></td>\n\t\t\t\t\t\t\t<td width=38%><script>\n\t\t\t\t\t\t\t\tfmt_money(doc.net_total)\n\t\t\t\t\t\t\t</script></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr><td colspan=3><script>si_std.print_other_charges()</script></td></tr>\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td>Grand Total</td>\n\t\t\t\t\t\t\t<td></td>\n\t\t\t\t\t\t\t<td><script>\n\t\t\t\t\t\t\t\tfmt_money(doc.grand_total_export)\n\t\t\t\t\t\t\t</script></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr style=\'font-weight: bold\'>\n\t\t\t\t\t\t\t<td>Rounded Total</td>\n\t\t\t\t\t\t\t<td><script>doc.currency</script></td>\n\t\t\t\t\t\t\t<td><script>\n\t\t\t\t\t\t\t\tfmt_money(doc.rounded_total_export)\n\t\t\t\t\t\t\t</script></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t</tbody></table>\n\t\t\t\t\t<br /><b>In Words</b><br />\n\t\t\t\t\t<i><script>doc.in_words_export</script></i>\n\t\t\t\t</td>\n\t\t\t</tr>\t\t\n\t\t</tbody>\n\t\t<tfoot>\n\t\t\n\t\t</tfoot>\n\t</table>\n</div>\n',
-		'module': u'Selling',
-		'name': '__common__',
-		'standard': u'Yes'
-	},
-
-	# Print Format, Sales Order Spartan
-	{
-		'doctype': 'Print Format',
-		'name': u'Sales Order Spartan'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-05-17 17:27:50", 
+  "modified_by": "Administrator", 
+  "modified": "2012-05-17 17:49:46"
+ }, 
+ {
+  "doc_type": "Sales Order", 
+  "name": "__common__", 
+  "module": "Selling", 
+  "doctype": "Print Format", 
+  "html": "<!--\n\tSample Print Format for ERPNext\n\tPlease use at your own discretion\n\tFor suggestions and contributions:\n\t\thttps://github.com/webnotes/erpnext-print-templates\n\n\tFreely usable under MIT license\n-->\n\n<!-- Style Settings -->\n<style>\n\t/*\n\t\tcommon style for whole page\n\t\tThis should include:\n\t\t+ page size related settings\n\t\t+ font family settings\n\t\t+ line spacing settings\n\t*/\n\t@media screen {\n\t\tbody {\n\t\t\twidth: 8.3in;\n\t\t}\n\t}\n\n\thtml, body, div, span, td {\n\t\tfont-family: \"Arial\", sans-serif;\n\t\tfont-size: 12px;\n\t}\n\n\tbody {\n\t\tpadding: 10px;\n\t\tmargin: auto;\n\t\tfont-size: 12px;\n\t\tline-height: 150%;\n\t}\n\n\t.common {\n\t\tfont-family: \"Arial\", sans-serif !important;\n\t\tfont-size: 12px;\n\t\tpadding: 0px;\n\t}\n\n\ttable {\n\t\twidth: 100% !important;\n\t\tvertical-align: top;\n\t}\n\n\ttable td {\n\t\tpadding: 2px 0px;\n\t}\n\n\ttable, td {\n\t\tborder-collapse: collapse !important;\n\t\tpadding: 0px;\n\t\tmargin: 0px !important;\n\t}\n\t\n\ttable h1, h2, h3, h4, h5, h6 {\n\t\tpadding: 0px;\n\t\tmargin: 0px;\n\t}\n\n\ttable.header-table td {\n\t\tvertical-align: top;\n\t}\n\n\ttable.header-table h3 {\n\t\tcolor: gray;\n\t}\n\n\ttable.header-table thead td {\n\t\tpadding: 5px;\n\t}\n\n\ttable.header-table > thead,\n\ttable.header-table > tbody > tr > td,\n\ttable.footer-table > tbody > tr > td {\n\t\tborder: 1px solid black;\n\t\tpadding: 5px;\n\t}\n\n\ttable.footer-table > tbody,\n\ttable.header-table > thead {\n\t\tborder-bottom: 3px solid black;\n\t}\n\n\ttable.header-table > thead {\n\t\tborder-top: 3px solid black;\n\t}\n\n\tdiv.page-body table td:nth-child(6),\n\tdiv.page-body table td:nth-child(7) {\n\t\ttext-align: right;\n\t}\n\n\tdiv.page-body td {\n\t\tbackground-color: white !important;\n\t\tborder: 1px solid black !important;\n\t}\n\n\ttable.footer-table td {\n\t\tvertical-align: top;\n\t}\n\n\ttable.footer-table td table td:nth-child(2),\n\ttable.footer-table td table td:nth-child(3) {\n\t\ttext-align: right;\n\t}\n</style>\n\n\n<!-- Javascript -->\n<script>\n    // Store round off to places for fields\n    var decimals = {\n        adj_rate: (function() {\n            var adj_rate = get_field('Sales Order Item', 'adj_rate');\n            if (adj_rate.fieldtype==='Float') return 6;\n            return 2;\n        })(),\n    };\n\tvar si_std = {\n\t\tprint_item_table: function() {\n\t\t\tvar table = print_table(\n\t\t\t\t'Sales Order',\n\t\t\t\tdoc.name,\n\t\t\t\t'sales_order_details',\n\t\t\t\t'Sales Order Item',\n\t\t\t\t[// Here specify the table columns to be displayed\n\t\t\t\t\t'SR', 'item_code', 'description', 'qty', 'stock_uom',\n\t\t\t\t\t'basic_rate', 'amount'\n\t\t\t\t],\n\t\t\t\t[// Here specify the labels of column headings\n\t\t\t\t\t'Sr', 'Item Code', 'Description', 'Qty',\n\t\t\t\t\t'UoM', 'Basic Rate', 'Amount'\n\t\t\t\t],\n\t\t\t\t[// Here specify the column widths\n\t\t\t\t\t'3%', '20%', '37%', '5%',\n\t\t\t\t\t'5%', '15%', '15%'\n\t\t\t\t],\n\t\t\t\tnull,\n\t\t\t\tnull,\n\t\t\t\t{\n\t\t\t\t\t'description' : function(data_row) {\n\t\t\t\t\t\tif(data_row.adj_rate) {\n\t\t\t\t\t\t\tvar to_append = '<div style=\"padding-left: 15px;\"><i>Discount: ' + \n    \t\t\t\t\t\t\troundNumber(data_row.adj_rate, decimals.adj_rate || 2) +\n                                '% on ' + doc.currency + ' ' +\n\t\t\t\t\t\t\t\tfmt_money(data_row.ref_rate) + '</i></div>';\n\t\t\t\t\t\t\tif(data_row.description.indexOf(to_append)==-1) {\n\t\t\t\t\t\t\t\treturn data_row.description + to_append;\n\t\t\t\t\t\t\t} else { return data_row.description; }\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\treturn data_row.description;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t);\n\n\t\t\t// This code takes care of page breaks\n\t\t\tif(table.appendChild) {\n\t\t\t\tout = table.innerHTML;\n\t\t\t} else {\n\t\t\t\tout = '';\n\t\t\t\tfor(var i=0; i < (table.length-1); i++) {\n\t\t\t\t\tout += table[i].innerHTML + \n\t\t\t\t\t\t'<div style = \"page-break-after: always;\" \\\n\t\t\t\t\t\tclass = \"page_break\"></div>\\\n\t\t\t\t\t\t<div class=\"page-settings\"></div>';\n\t\t\t\t}\n\t\t\t\tout += table[table.length-1].innerHTML;\n\t\t\t}\n\t\t\treturn out;\n\t\t},\n\n\n\t\tprint_other_charges: function(parent) {\n\t\t\tvar oc = getchildren('Sales Taxes and Charges', doc.name, 'other_charges');\n\t\t\tvar rows = '<table width=100%>\\n';\n\t\t\tfor(var i=0; i<oc.length; i++) {\n\t\t\t\tif(!oc[i].included_in_print_rate) {\n\t\t\t\t\trows +=\n\t\t\t\t\t\t'<tr>\\n' +\n\t\t\t\t\t\t\t'\\t<td>' + oc[i].description + '</td>\\n' +\n\t\t\t\t\t\t\t'\\t<td></td>\\n' +\n\t\t\t\t\t\t\t'\\t<td width=38%>' + fmt_money(oc[i].tax_amount) + '</td>\\n' +\n\t\t\t\t\t\t'</tr>\\n';\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn rows + '</table>\\n';\n\t\t}\n\t};\n</script>\n\n\n<!-- Page Layout Settings -->\n<div class='common page-header'>\n\t<!-- \n\t\tPage Header will contain\n\t\t\t+ table 1\n\t\t\t\t+ table 1a\n\t\t\t\t\t- Name\n\t\t\t\t\t- Address\n\t\t\t\t\t- Contact\n\t\t\t\t\t- Mobile No\n\t\t\t\t+ table 1b\n\t\t\t\t\t- Voucher Date\n\t\t\t\t\t- Due Date\n\t-->\n\t<table class='header-table' cellspacing=0>\n\t\t<thead>\n\t\t\t<tr><td colspan=2><script>'<h1>' + (doc.select_print_heading || 'Sales Order') + '</h1>'</script></td></tr>\n\t\t\t<tr><td colspan=2><h3><script>cur_frm.docname</script></h3></td></tr>\n\t\t</thead>\n\t\t<tbody>\n\t\t\t<tr>\n\t\t\t\t<td width=60%><table width=100% cellspacing=0><tbody>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td width=39%><b>Name</b></td>\n\t\t\t\t\t\t<td><script>doc.customer_name</script></td>\n\t\t\t\t\t</tr>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td><b>Address</b></td>\n\t\t\t\t\t\t<td><script>replace_newlines(doc.address_display)</script></td>\n\t\t\t\t\t</tr>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td><b>Contact</b></td>\n\t\t\t\t\t\t<td><script>doc.contact_display</script></td>\n\t\t\t\t\t</tr>\n\t\t\t\t</tbody></table></td>\n\t\t\t\t<td><table width=100% cellspacing=0><tbody>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td width=63%><b>Sales Order Date</b></td>\n\t\t\t\t\t\t<td><script>date.str_to_user(doc.transaction_date)</script></td>\n\t\t\t\t\t<tr>\t\t\t\t\t\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td><b>Delivery Date</b></td>\n\t\t\t\t\t\t<td><script>date.str_to_user(doc.delivery_date)</script></td>\n\t\t\t\t\t<tr>\t\t\t\t\t\n\t\t\t\t</tbody></table></td>\n\t\t\t</tr>\n\t\t</tbody>\n\t\t<tfoot>\n\t\t\n\t\t</tfoot>\n\t</table>\n</div>\n<div class='common page-body'>\n\t<!-- \n\t\tPage Body will contain\n\t\t\t+ table 2\n\t\t\t\t- Sales Invoice Data\n\t-->\n\t<script>si_std.print_item_table()</script>\n</div>\n<div class='common page-footer'>\n\t<!-- \n\t\tPage Footer will contain\n\t\t\t+ table 3\n\t\t\t\t- Terms and Conditions\n\t\t\t\t- Total Rounded Amount Calculation\n\t\t\t\t- Total Rounded Amount in Words\n\t-->\n\t<table class='footer-table' width=100% cellspacing=0>\n\t\t<thead>\n\t\t\t\n\t\t</thead>\n\t\t<tbody>\n\t\t\t<tr>\n\t\t\t\t<td width=60% style='padding-right: 10px;'>\n\t\t\t\t\t<b>Terms, Conditions &amp; Other Information:</b><br />\n\t\t\t\t\t<script>doc.terms</script>\n\t\t\t\t</td>\n\t\t\t\t<td>\n\t\t\t\t\t<table cellspacing=0 width=100%><tbody>\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td>Net Total</td>\n\t\t\t\t\t\t\t<td></td>\n\t\t\t\t\t\t\t<td width=38%><script>\n\t\t\t\t\t\t\t\tfmt_money(doc.net_total)\n\t\t\t\t\t\t\t</script></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr><td colspan=3><script>si_std.print_other_charges()</script></td></tr>\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td>Grand Total</td>\n\t\t\t\t\t\t\t<td></td>\n\t\t\t\t\t\t\t<td><script>\n\t\t\t\t\t\t\t\tfmt_money(doc.grand_total_export)\n\t\t\t\t\t\t\t</script></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr style='font-weight: bold'>\n\t\t\t\t\t\t\t<td>Rounded Total</td>\n\t\t\t\t\t\t\t<td><script>doc.currency</script></td>\n\t\t\t\t\t\t\t<td><script>\n\t\t\t\t\t\t\t\tfmt_money(doc.rounded_total_export)\n\t\t\t\t\t\t\t</script></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t</tbody></table>\n\t\t\t\t\t<br /><b>In Words</b><br />\n\t\t\t\t\t<i><script>doc.in_words_export</script></i>\n\t\t\t\t</td>\n\t\t\t</tr>\t\t\n\t\t</tbody>\n\t\t<tfoot>\n\t\t\n\t\t</tfoot>\n\t</table>\n</div>\n", 
+  "standard": "Yes"
+ }, 
+ {
+  "name": "Sales Order Spartan", 
+  "doctype": "Print Format"
+ }
 ]
\ No newline at end of file
diff --git a/selling/doctype/campaign/campaign.txt b/selling/doctype/campaign/campaign.txt
index 0ec59df..e6e8ed8 100644
--- a/selling/doctype/campaign/campaign.txt
+++ b/selling/doctype/campaign/campaign.txt
@@ -1,161 +1,130 @@
-# DocType, Campaign
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-07-03 13:30:38',
-		'docstatus': 0,
-		'modified': '2012-07-12 13:21:52',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'_last_update': u'1326102553',
-		'allow_trash': 1,
-		'autoname': u'field:campaign_name',
-		'colour': u'White:FFF',
-		'description': u'Keep Track of Sales Campaigns. Keep track of Leads, Quotations, Sales Order etc from Campaigns to gauge Return on Investment. ',
-		'doctype': 'DocType',
-		'document_type': u'Master',
-		'module': u'Selling',
-		'name': '__common__',
-		'section_style': u'Simple',
-		'server_code_error': u' ',
-		'show_in_menu': 0,
-		'version': 1
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'Campaign',
-		'parentfield': u'fields',
-		'parenttype': u'DocType'
-	},
-
-	# These values are common for all DocPerm
-	{
-		'amend': 0,
-		'doctype': u'DocPerm',
-		'name': '__common__',
-		'parent': u'Campaign',
-		'parentfield': u'permissions',
-		'parenttype': u'DocType',
-		'read': 1,
-		'submit': 0
-	},
-
-	# DocType, Campaign
-	{
-		'doctype': 'DocType',
-		'name': u'Campaign'
-	},
-
-	# DocPerm
-	{
-		'cancel': 0,
-		'create': 0,
-		'doctype': u'DocPerm',
-		'permlevel': 1,
-		'role': u'Sales Manager',
-		'write': 0
-	},
-
-	# DocPerm
-	{
-		'cancel': 0,
-		'create': 0,
-		'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'Sales Manager',
-		'write': 0
-	},
-
-	# DocPerm
-	{
-		'cancel': 0,
-		'create': 0,
-		'doctype': u'DocPerm',
-		'permlevel': 1,
-		'role': u'Sales Master Manager',
-		'write': 0
-	},
-
-	# DocPerm
-	{
-		'cancel': 0,
-		'create': 0,
-		'doctype': u'DocPerm',
-		'permlevel': 1,
-		'role': u'Sales User',
-		'write': 0
-	},
-
-	# DocPerm
-	{
-		'cancel': 0,
-		'create': 0,
-		'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'Sales User',
-		'write': 0
-	},
-
-	# DocPerm
-	{
-		'cancel': 1,
-		'create': 1,
-		'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'Sales Master Manager',
-		'write': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'trash_reason',
-		'fieldtype': u'Small Text',
-		'label': u'Trash Reason',
-		'oldfieldname': u'trash_reason',
-		'oldfieldtype': u'Small Text',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'campaign',
-		'fieldtype': u'Section Break',
-		'label': u'Campaign',
-		'oldfieldtype': u'Section Break',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'campaign_name',
-		'fieldtype': u'Data',
-		'label': u'Campaign Name',
-		'oldfieldname': u'campaign_name',
-		'oldfieldtype': u'Data',
-		'permlevel': 0,
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'description',
-		'fieldtype': u'Text',
-		'label': u'Description',
-		'oldfieldname': u'description',
-		'oldfieldtype': u'Text',
-		'permlevel': 0,
-		'width': u'300px'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-07-03 13:30:38", 
+  "modified_by": "Administrator", 
+  "modified": "2012-07-12 13:21:52"
+ }, 
+ {
+  "section_style": "Simple", 
+  "description": "Keep Track of Sales Campaigns. Keep track of Leads, Quotations, Sales Order etc from Campaigns to gauge Return on Investment. ", 
+  "module": "Selling", 
+  "doctype": "DocType", 
+  "allow_trash": 1, 
+  "server_code_error": " ", 
+  "document_type": "Master", 
+  "autoname": "field:campaign_name", 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "_last_update": "1326102553", 
+  "show_in_menu": 0, 
+  "version": 1
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Campaign", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Campaign", 
+  "amend": 0, 
+  "doctype": "DocPerm", 
+  "submit": 0, 
+  "read": 1, 
+  "parenttype": "DocType", 
+  "parentfield": "permissions"
+ }, 
+ {
+  "name": "Campaign", 
+  "doctype": "DocType"
+ }, 
+ {
+  "create": 0, 
+  "doctype": "DocPerm", 
+  "write": 0, 
+  "role": "Sales Manager", 
+  "cancel": 0, 
+  "permlevel": 1
+ }, 
+ {
+  "create": 0, 
+  "doctype": "DocPerm", 
+  "write": 0, 
+  "role": "Sales Manager", 
+  "cancel": 0, 
+  "permlevel": 0
+ }, 
+ {
+  "create": 0, 
+  "doctype": "DocPerm", 
+  "write": 0, 
+  "role": "Sales Master Manager", 
+  "cancel": 0, 
+  "permlevel": 1
+ }, 
+ {
+  "create": 0, 
+  "doctype": "DocPerm", 
+  "write": 0, 
+  "role": "Sales User", 
+  "cancel": 0, 
+  "permlevel": 1
+ }, 
+ {
+  "create": 0, 
+  "doctype": "DocPerm", 
+  "write": 0, 
+  "role": "Sales User", 
+  "cancel": 0, 
+  "permlevel": 0
+ }, 
+ {
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "write": 1, 
+  "role": "Sales Master Manager", 
+  "cancel": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Small Text", 
+  "doctype": "DocField", 
+  "label": "Trash Reason", 
+  "oldfieldname": "trash_reason", 
+  "fieldname": "trash_reason", 
+  "fieldtype": "Small Text", 
+  "permlevel": 1
+ }, 
+ {
+  "oldfieldtype": "Section Break", 
+  "doctype": "DocField", 
+  "label": "Campaign", 
+  "fieldname": "campaign", 
+  "fieldtype": "Section Break", 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Campaign Name", 
+  "oldfieldname": "campaign_name", 
+  "fieldname": "campaign_name", 
+  "fieldtype": "Data", 
+  "reqd": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Text", 
+  "doctype": "DocField", 
+  "label": "Description", 
+  "oldfieldname": "description", 
+  "width": "300px", 
+  "fieldname": "description", 
+  "fieldtype": "Text", 
+  "permlevel": 0
+ }
 ]
\ No newline at end of file
diff --git a/selling/doctype/industry_type/industry_type.txt b/selling/doctype/industry_type/industry_type.txt
index 7e836cd..81dd84a 100644
--- a/selling/doctype/industry_type/industry_type.txt
+++ b/selling/doctype/industry_type/industry_type.txt
@@ -1,85 +1,66 @@
-# DocType, Industry Type
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:36:09',
-		'docstatus': 0,
-		'modified': '2012-03-27 14:36:09',
-		'modified_by': u'Administrator',
-		'owner': u'harshada@webnotestech.com'
-	},
-
-	# These values are common for all DocType
-	{
-		'autoname': u'field:industry',
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'document_type': u'Master',
-		'module': u'Selling',
-		'name': '__common__',
-		'section_style': u'Simple',
-		'server_code_error': u' ',
-		'version': 4
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'industry',
-		'fieldtype': u'Data',
-		'label': u'Industry',
-		'name': '__common__',
-		'oldfieldname': u'industry',
-		'oldfieldtype': u'Data',
-		'parent': u'Industry Type',
-		'parentfield': u'fields',
-		'parenttype': u'DocType',
-		'permlevel': 0,
-		'reqd': 1
-	},
-
-	# These values are common for all DocPerm
-	{
-		'doctype': u'DocPerm',
-		'name': '__common__',
-		'parent': u'Industry Type',
-		'parentfield': u'permissions',
-		'parenttype': u'DocType',
-		'permlevel': 0,
-		'read': 1
-	},
-
-	# DocType, Industry Type
-	{
-		'doctype': 'DocType',
-		'name': u'Industry Type'
-	},
-
-	# DocPerm
-	{
-		'create': 1,
-		'doctype': u'DocPerm',
-		'role': u'Sales Manager',
-		'write': 1
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm',
-		'role': u'Sales User'
-	},
-
-	# DocPerm
-	{
-		'create': 1,
-		'doctype': u'DocPerm',
-		'role': u'Sales Master Manager',
-		'write': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField'
-	}
+ {
+  "owner": "harshada@webnotestech.com", 
+  "docstatus": 0, 
+  "creation": "2012-03-27 14:36:09", 
+  "modified_by": "Administrator", 
+  "modified": "2012-03-27 14:36:09"
+ }, 
+ {
+  "section_style": "Simple", 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "module": "Selling", 
+  "server_code_error": " ", 
+  "version": 4, 
+  "doctype": "DocType", 
+  "autoname": "field:industry", 
+  "document_type": "Master"
+ }, 
+ {
+  "parent": "Industry Type", 
+  "oldfieldtype": "Data", 
+  "oldfieldname": "industry", 
+  "reqd": 1, 
+  "name": "__common__", 
+  "doctype": "DocField", 
+  "label": "Industry", 
+  "parenttype": "DocType", 
+  "fieldname": "industry", 
+  "fieldtype": "Data", 
+  "permlevel": 0, 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Industry Type", 
+  "read": 1, 
+  "doctype": "DocPerm", 
+  "parenttype": "DocType", 
+  "permlevel": 0, 
+  "parentfield": "permissions"
+ }, 
+ {
+  "name": "Industry Type", 
+  "doctype": "DocType"
+ }, 
+ {
+  "write": 1, 
+  "create": 1, 
+  "role": "Sales Manager", 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "role": "Sales User", 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "write": 1, 
+  "create": 1, 
+  "role": "Sales Master Manager", 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "doctype": "DocField"
+ }
 ]
\ No newline at end of file
diff --git a/selling/doctype/installation_note/installation_note.txt b/selling/doctype/installation_note/installation_note.txt
index f0239bb..0ab9bc5 100644
--- a/selling/doctype/installation_note/installation_note.txt
+++ b/selling/doctype/installation_note/installation_note.txt
@@ -1,452 +1,375 @@
-# DocType, Installation Note
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:36:09',
-		'docstatus': 0,
-		'modified': '2012-03-27 18:48:02',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'_last_update': u'1306480044',
-		'autoname': u'IN/.####',
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'is_submittable': 1,
-		'module': u'Selling',
-		'name': '__common__',
-		'section_style': u'Simple',
-		'server_code_error': u' ',
-		'show_in_menu': 0,
-		'subject': u'At %(customer_name)s on %(inst_date)s',
-		'version': 98
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'Installation Note',
-		'parentfield': u'fields',
-		'parenttype': u'DocType'
-	},
-
-	# These values are common for all DocPerm
-	{
-		'doctype': u'DocPerm',
-		'name': '__common__',
-		'parent': u'Installation Note',
-		'parentfield': u'permissions',
-		'parenttype': u'DocType',
-		'read': 1
-	},
-
-	# DocType, Installation Note
-	{
-		'doctype': 'DocType',
-		'name': u'Installation Note'
-	},
-
-	# DocPerm
-	{
-		'amend': 1,
-		'cancel': 1,
-		'create': 1,
-		'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'System Manager',
-		'submit': 1,
-		'write': 1
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm',
-		'permlevel': 1,
-		'role': u'System Manager'
-	},
-
-	# DocPerm
-	{
-		'amend': 1,
-		'cancel': 1,
-		'create': 1,
-		'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'Sales User',
-		'submit': 1,
-		'write': 1
-	},
-
-	# DocPerm
-	{
-		'amend': 1,
-		'cancel': 1,
-		'create': 1,
-		'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'Sales Manager',
-		'submit': 1,
-		'write': 1
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm',
-		'permlevel': 1,
-		'role': u'Sales User'
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm',
-		'permlevel': 1,
-		'role': u'Sales Manager'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'installation_note',
-		'fieldtype': u'Section Break',
-		'label': u'Installation Note',
-		'oldfieldtype': u'Section Break',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'column_break0',
-		'fieldtype': u'Column Break',
-		'oldfieldtype': u'Column Break',
-		'permlevel': 0,
-		'width': u'50%'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'naming_series',
-		'fieldtype': u'Select',
-		'label': u'Series',
-		'no_copy': 1,
-		'oldfieldname': u'naming_series',
-		'oldfieldtype': u'Select',
-		'options': u'\nIN',
-		'permlevel': 0,
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'customer',
-		'fieldtype': u'Link',
-		'label': u'Customer',
-		'oldfieldname': u'customer',
-		'oldfieldtype': u'Link',
-		'options': u'Customer',
-		'permlevel': 0,
-		'print_hide': 1,
-		'reqd': 1,
-		'search_index': 1,
-		'trigger': u'Client'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'customer_address',
-		'fieldtype': u'Link',
-		'label': u'Customer Address',
-		'options': u'Address',
-		'permlevel': 0,
-		'print_hide': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'contact_person',
-		'fieldtype': u'Link',
-		'label': u'Contact Person',
-		'options': u'Contact',
-		'permlevel': 0,
-		'print_hide': 1
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'doctype': u'DocField',
-		'fieldname': u'customer_name',
-		'fieldtype': u'Data',
-		'label': u'Name',
-		'oldfieldname': u'customer_name',
-		'oldfieldtype': u'Data',
-		'permlevel': 1,
-		'reqd': 0,
-		'search_index': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'address_display',
-		'fieldtype': u'Small Text',
-		'label': u'Address',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'contact_display',
-		'fieldtype': u'Small Text',
-		'label': u'Contact',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'contact_mobile',
-		'fieldtype': u'Text',
-		'label': u'Mobile No',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'contact_email',
-		'fieldtype': u'Text',
-		'label': u'Contact Email',
-		'permlevel': 1,
-		'print_hide': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'territory',
-		'fieldtype': u'Link',
-		'in_filter': 1,
-		'label': u'Territory',
-		'options': u'Territory',
-		'permlevel': 0,
-		'print_hide': 1,
-		'reqd': 1,
-		'search_index': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'customer_group',
-		'fieldtype': u'Link',
-		'label': u'Customer Group',
-		'options': u'Customer Group',
-		'permlevel': 0,
-		'print_hide': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'column_break1',
-		'fieldtype': u'Column Break',
-		'oldfieldtype': u'Column Break',
-		'permlevel': 0,
-		'width': u'50%'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'inst_date',
-		'fieldtype': u'Date',
-		'label': u'Installation Date',
-		'oldfieldname': u'inst_date',
-		'oldfieldtype': u'Date',
-		'permlevel': 0,
-		'reqd': 1,
-		'search_index': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'inst_time',
-		'fieldtype': u'Time',
-		'label': u'Installation Time',
-		'oldfieldname': u'inst_time',
-		'oldfieldtype': u'Time',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'default': u'Draft',
-		'doctype': u'DocField',
-		'fieldname': u'status',
-		'fieldtype': u'Select',
-		'label': u'Status',
-		'no_copy': 1,
-		'oldfieldname': u'status',
-		'oldfieldtype': u'Select',
-		'options': u'Draft\nSubmitted\nCancelled',
-		'permlevel': 1,
-		'print_hide': 1,
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'description': u'Select the relevant company name if you have multiple companies.',
-		'doctype': u'DocField',
-		'fieldname': u'company',
-		'fieldtype': u'Select',
-		'in_filter': 1,
-		'label': u'Company',
-		'oldfieldname': u'company',
-		'oldfieldtype': u'Select',
-		'options': u'link:Company',
-		'permlevel': 0,
-		'print_hide': 1,
-		'reqd': 1,
-		'search_index': 0,
-		'trigger': u'Client'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'fiscal_year',
-		'fieldtype': u'Select',
-		'in_filter': 1,
-		'label': u'Fiscal Year',
-		'oldfieldname': u'fiscal_year',
-		'oldfieldtype': u'Select',
-		'options': u'link:Fiscal Year',
-		'permlevel': 0,
-		'print_hide': 1,
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'amended_from',
-		'fieldtype': u'Data',
-		'label': u'Amended From',
-		'no_copy': 1,
-		'oldfieldname': u'amended_from',
-		'oldfieldtype': u'Data',
-		'permlevel': 1,
-		'print_hide': 1
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'description': u'The date at which current entry is corrected in the system.',
-		'doctype': u'DocField',
-		'fieldname': u'amendment_date',
-		'fieldtype': u'Date',
-		'hidden': 1,
-		'label': u'Amendment Date',
-		'no_copy': 1,
-		'oldfieldname': u'amendment_date',
-		'oldfieldtype': u'Date',
-		'permlevel': 0,
-		'print_hide': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'remarks',
-		'fieldtype': u'Small Text',
-		'label': u'Remarks',
-		'oldfieldname': u'remarks',
-		'oldfieldtype': u'Small Text',
-		'permlevel': 0,
-		'print_hide': 1
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'doctype': u'DocField',
-		'fieldname': u'cancel_reason',
-		'fieldtype': u'Data',
-		'hidden': 1,
-		'label': u'Cancel Reason',
-		'no_copy': 1,
-		'oldfieldname': u'cancel_reason',
-		'oldfieldtype': u'Data',
-		'permlevel': 1,
-		'print_hide': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'item_details',
-		'fieldtype': u'Section Break',
-		'label': u'Item Details',
-		'oldfieldtype': u'Section Break',
-		'options': u'Simple',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'doctype': u'DocField',
-		'fieldname': u'delivery_note_no',
-		'fieldtype': u'Link',
-		'label': u'Delivery Note No',
-		'no_copy': 1,
-		'oldfieldname': u'delivery_note_no',
-		'oldfieldtype': u'Link',
-		'options': u'Delivery Note',
-		'permlevel': 0,
-		'print_hide': 0,
-		'reqd': 1,
-		'search_index': 1,
-		'trigger': u'Client'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'get_items',
-		'fieldtype': u'Button',
-		'hidden': 0,
-		'label': u'Get Items',
-		'oldfieldtype': u'Button',
-		'options': u'pull_delivery_note_details',
-		'permlevel': 0,
-		'print_hide': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'installed_item_details',
-		'fieldtype': u'Table',
-		'label': u'Installation Note Item',
-		'oldfieldname': u'installed_item_details',
-		'oldfieldtype': u'Table',
-		'options': u'Installation Note Item',
-		'permlevel': 0
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-03-27 14:36:09", 
+  "modified_by": "Administrator", 
+  "modified": "2012-03-27 18:48:02"
+ }, 
+ {
+  "section_style": "Simple", 
+  "is_submittable": 1, 
+  "module": "Selling", 
+  "doctype": "DocType", 
+  "server_code_error": " ", 
+  "subject": "At %(customer_name)s on %(inst_date)s", 
+  "autoname": "IN/.####", 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "_last_update": "1306480044", 
+  "show_in_menu": 0, 
+  "version": 98
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Installation Note", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Installation Note", 
+  "read": 1, 
+  "doctype": "DocPerm", 
+  "parenttype": "DocType", 
+  "parentfield": "permissions"
+ }, 
+ {
+  "name": "Installation Note", 
+  "doctype": "DocType"
+ }, 
+ {
+  "amend": 1, 
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "submit": 1, 
+  "write": 1, 
+  "role": "System Manager", 
+  "cancel": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "role": "System Manager", 
+  "permlevel": 1, 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "amend": 1, 
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "submit": 1, 
+  "write": 1, 
+  "role": "Sales User", 
+  "cancel": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "amend": 1, 
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "submit": 1, 
+  "write": 1, 
+  "role": "Sales Manager", 
+  "cancel": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "role": "Sales User", 
+  "permlevel": 1, 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "role": "Sales Manager", 
+  "permlevel": 1, 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "oldfieldtype": "Section Break", 
+  "doctype": "DocField", 
+  "label": "Installation Note", 
+  "fieldname": "installation_note", 
+  "fieldtype": "Section Break", 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Column Break", 
+  "doctype": "DocField", 
+  "width": "50%", 
+  "fieldname": "column_break0", 
+  "fieldtype": "Column Break", 
+  "permlevel": 0
+ }, 
+ {
+  "no_copy": 1, 
+  "oldfieldtype": "Select", 
+  "doctype": "DocField", 
+  "label": "Series", 
+  "oldfieldname": "naming_series", 
+  "permlevel": 0, 
+  "fieldname": "naming_series", 
+  "fieldtype": "Select", 
+  "reqd": 1, 
+  "options": "\nIN"
+ }, 
+ {
+  "print_hide": 1, 
+  "search_index": 1, 
+  "doctype": "DocField", 
+  "label": "Customer", 
+  "oldfieldname": "customer", 
+  "trigger": "Client", 
+  "fieldname": "customer", 
+  "fieldtype": "Link", 
+  "oldfieldtype": "Link", 
+  "reqd": 1, 
+  "options": "Customer", 
+  "permlevel": 0
+ }, 
+ {
+  "print_hide": 1, 
+  "doctype": "DocField", 
+  "label": "Customer Address", 
+  "options": "Address", 
+  "fieldname": "customer_address", 
+  "fieldtype": "Link", 
+  "permlevel": 0
+ }, 
+ {
+  "print_hide": 1, 
+  "doctype": "DocField", 
+  "label": "Contact Person", 
+  "options": "Contact", 
+  "fieldname": "contact_person", 
+  "fieldtype": "Link", 
+  "permlevel": 0
+ }, 
+ {
+  "search_index": 0, 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Name", 
+  "oldfieldname": "customer_name", 
+  "fieldname": "customer_name", 
+  "fieldtype": "Data", 
+  "oldfieldtype": "Data", 
+  "reqd": 0, 
+  "permlevel": 1
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Address", 
+  "fieldname": "address_display", 
+  "fieldtype": "Small Text", 
+  "permlevel": 1
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Contact", 
+  "fieldname": "contact_display", 
+  "fieldtype": "Small Text", 
+  "permlevel": 1
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Mobile No", 
+  "fieldname": "contact_mobile", 
+  "fieldtype": "Text", 
+  "permlevel": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "doctype": "DocField", 
+  "label": "Contact Email", 
+  "fieldname": "contact_email", 
+  "fieldtype": "Text", 
+  "permlevel": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "search_index": 1, 
+  "doctype": "DocField", 
+  "label": "Territory", 
+  "permlevel": 0, 
+  "fieldname": "territory", 
+  "fieldtype": "Link", 
+  "reqd": 1, 
+  "options": "Territory", 
+  "in_filter": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "doctype": "DocField", 
+  "label": "Customer Group", 
+  "options": "Customer Group", 
+  "fieldname": "customer_group", 
+  "fieldtype": "Link", 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Column Break", 
+  "doctype": "DocField", 
+  "width": "50%", 
+  "fieldname": "column_break1", 
+  "fieldtype": "Column Break", 
+  "permlevel": 0
+ }, 
+ {
+  "search_index": 1, 
+  "doctype": "DocField", 
+  "label": "Installation Date", 
+  "oldfieldname": "inst_date", 
+  "fieldname": "inst_date", 
+  "fieldtype": "Date", 
+  "oldfieldtype": "Date", 
+  "reqd": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Time", 
+  "doctype": "DocField", 
+  "label": "Installation Time", 
+  "oldfieldname": "inst_time", 
+  "fieldname": "inst_time", 
+  "fieldtype": "Time", 
+  "permlevel": 0
+ }, 
+ {
+  "print_hide": 1, 
+  "default": "Draft", 
+  "oldfieldtype": "Select", 
+  "doctype": "DocField", 
+  "label": "Status", 
+  "oldfieldname": "status", 
+  "no_copy": 1, 
+  "options": "Draft\nSubmitted\nCancelled", 
+  "fieldname": "status", 
+  "fieldtype": "Select", 
+  "reqd": 1, 
+  "permlevel": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "description": "Select the relevant company name if you have multiple companies.", 
+  "oldfieldtype": "Select", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Company", 
+  "oldfieldname": "company", 
+  "permlevel": 0, 
+  "trigger": "Client", 
+  "fieldname": "company", 
+  "fieldtype": "Select", 
+  "search_index": 0, 
+  "reqd": 1, 
+  "options": "link:Company", 
+  "in_filter": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "oldfieldtype": "Select", 
+  "doctype": "DocField", 
+  "label": "Fiscal Year", 
+  "oldfieldname": "fiscal_year", 
+  "options": "link:Fiscal Year", 
+  "fieldname": "fiscal_year", 
+  "fieldtype": "Select", 
+  "reqd": 1, 
+  "permlevel": 0, 
+  "in_filter": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "no_copy": 1, 
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Amended From", 
+  "oldfieldname": "amended_from", 
+  "fieldname": "amended_from", 
+  "fieldtype": "Data", 
+  "permlevel": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "description": "The date at which current entry is corrected in the system.", 
+  "no_copy": 1, 
+  "oldfieldtype": "Date", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Amendment Date", 
+  "oldfieldname": "amendment_date", 
+  "fieldname": "amendment_date", 
+  "fieldtype": "Date", 
+  "hidden": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "print_hide": 1, 
+  "oldfieldtype": "Small Text", 
+  "doctype": "DocField", 
+  "label": "Remarks", 
+  "oldfieldname": "remarks", 
+  "fieldname": "remarks", 
+  "fieldtype": "Small Text", 
+  "permlevel": 0
+ }, 
+ {
+  "print_hide": 1, 
+  "no_copy": 1, 
+  "oldfieldtype": "Data", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Cancel Reason", 
+  "oldfieldname": "cancel_reason", 
+  "fieldname": "cancel_reason", 
+  "fieldtype": "Data", 
+  "hidden": 1, 
+  "permlevel": 1
+ }, 
+ {
+  "oldfieldtype": "Section Break", 
+  "doctype": "DocField", 
+  "label": "Item Details", 
+  "permlevel": 0, 
+  "fieldname": "item_details", 
+  "fieldtype": "Section Break", 
+  "options": "Simple"
+ }, 
+ {
+  "print_hide": 0, 
+  "no_copy": 1, 
+  "oldfieldtype": "Link", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Delivery Note No", 
+  "oldfieldname": "delivery_note_no", 
+  "permlevel": 0, 
+  "trigger": "Client", 
+  "fieldname": "delivery_note_no", 
+  "fieldtype": "Link", 
+  "search_index": 1, 
+  "reqd": 1, 
+  "options": "Delivery Note"
+ }, 
+ {
+  "print_hide": 1, 
+  "oldfieldtype": "Button", 
+  "doctype": "DocField", 
+  "label": "Get Items", 
+  "permlevel": 0, 
+  "fieldname": "get_items", 
+  "fieldtype": "Button", 
+  "hidden": 0, 
+  "options": "pull_delivery_note_details"
+ }, 
+ {
+  "oldfieldtype": "Table", 
+  "doctype": "DocField", 
+  "label": "Installation Note Item", 
+  "oldfieldname": "installed_item_details", 
+  "permlevel": 0, 
+  "fieldname": "installed_item_details", 
+  "fieldtype": "Table", 
+  "options": "Installation Note Item"
+ }
 ]
\ No newline at end of file
diff --git a/selling/doctype/installation_note_item/installation_note_item.txt b/selling/doctype/installation_note_item/installation_note_item.txt
index 0b9615b..65d3477 100644
--- a/selling/doctype/installation_note_item/installation_note_item.txt
+++ b/selling/doctype/installation_note_item/installation_note_item.txt
@@ -1,152 +1,127 @@
-# DocType, Installation Note Item
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:36:10',
-		'docstatus': 0,
-		'modified': '2012-03-27 14:36:10',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'autoname': u'IID/.#####',
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'istable': 1,
-		'module': u'Selling',
-		'name': '__common__',
-		'section_style': u'Simple',
-		'server_code_error': u' ',
-		'show_in_menu': 0,
-		'version': 25
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'Installation Note Item',
-		'parentfield': u'fields',
-		'parenttype': u'DocType'
-	},
-
-	# DocType, Installation Note Item
-	{
-		'doctype': 'DocType',
-		'name': u'Installation Note Item'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'item_code',
-		'fieldtype': u'Link',
-		'label': u'Item Code',
-		'oldfieldname': u'item_code',
-		'oldfieldtype': u'Link',
-		'options': u'Item',
-		'permlevel': 0,
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'description',
-		'fieldtype': u'Data',
-		'label': u'Description',
-		'oldfieldname': u'description',
-		'oldfieldtype': u'Data',
-		'permlevel': 1,
-		'width': u'300px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'prevdoc_date',
-		'fieldtype': u'Date',
-		'hidden': 0,
-		'label': u'Delivery Date',
-		'oldfieldname': u'prevdoc_date',
-		'oldfieldtype': u'Date',
-		'permlevel': 1,
-		'print_hide': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'serial_no',
-		'fieldtype': u'Small Text',
-		'label': u'Serial No',
-		'oldfieldname': u'serial_no',
-		'oldfieldtype': u'Small Text',
-		'permlevel': 0,
-		'width': u'180px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'prevdoc_detail_docname',
-		'fieldtype': u'Data',
-		'hidden': 1,
-		'label': u'Against Document Detail No',
-		'no_copy': 1,
-		'oldfieldname': u'prevdoc_detail_docname',
-		'oldfieldtype': u'Data',
-		'permlevel': 1,
-		'print_hide': 1,
-		'width': u'150px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'prevdoc_docname',
-		'fieldtype': u'Data',
-		'hidden': 1,
-		'in_filter': 1,
-		'label': u'Against Document No',
-		'no_copy': 1,
-		'oldfieldname': u'prevdoc_docname',
-		'oldfieldtype': u'Data',
-		'permlevel': 1,
-		'print_hide': 1,
-		'search_index': 1,
-		'width': u'150px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'prevdoc_doctype',
-		'fieldtype': u'Data',
-		'hidden': 1,
-		'in_filter': 1,
-		'label': u'Document Type',
-		'no_copy': 1,
-		'oldfieldname': u'prevdoc_doctype',
-		'oldfieldtype': u'Data',
-		'permlevel': 1,
-		'print_hide': 1,
-		'search_index': 1,
-		'width': u'150px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'qty',
-		'fieldtype': u'Currency',
-		'label': u'Installed Qty',
-		'oldfieldname': u'qty',
-		'oldfieldtype': u'Currency',
-		'permlevel': 0,
-		'reqd': 1
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-03-27 14:36:10", 
+  "modified_by": "Administrator", 
+  "modified": "2012-03-27 14:36:10"
+ }, 
+ {
+  "section_style": "Simple", 
+  "istable": 1, 
+  "module": "Selling", 
+  "server_code_error": " ", 
+  "doctype": "DocType", 
+  "autoname": "IID/.#####", 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "show_in_menu": 0, 
+  "version": 25
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Installation Note Item", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "Installation Note Item", 
+  "doctype": "DocType"
+ }, 
+ {
+  "oldfieldtype": "Link", 
+  "doctype": "DocField", 
+  "label": "Item Code", 
+  "oldfieldname": "item_code", 
+  "permlevel": 0, 
+  "fieldname": "item_code", 
+  "fieldtype": "Link", 
+  "reqd": 1, 
+  "options": "Item"
+ }, 
+ {
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Description", 
+  "oldfieldname": "description", 
+  "width": "300px", 
+  "fieldname": "description", 
+  "fieldtype": "Data", 
+  "permlevel": 1
+ }, 
+ {
+  "print_hide": 0, 
+  "oldfieldtype": "Date", 
+  "doctype": "DocField", 
+  "label": "Delivery Date", 
+  "oldfieldname": "prevdoc_date", 
+  "fieldname": "prevdoc_date", 
+  "fieldtype": "Date", 
+  "hidden": 0, 
+  "permlevel": 1
+ }, 
+ {
+  "oldfieldtype": "Small Text", 
+  "doctype": "DocField", 
+  "label": "Serial No", 
+  "oldfieldname": "serial_no", 
+  "width": "180px", 
+  "fieldname": "serial_no", 
+  "fieldtype": "Small Text", 
+  "permlevel": 0
+ }, 
+ {
+  "print_hide": 1, 
+  "no_copy": 1, 
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Against Document Detail No", 
+  "oldfieldname": "prevdoc_detail_docname", 
+  "width": "150px", 
+  "fieldname": "prevdoc_detail_docname", 
+  "fieldtype": "Data", 
+  "hidden": 1, 
+  "permlevel": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "no_copy": 1, 
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Against Document No", 
+  "oldfieldname": "prevdoc_docname", 
+  "width": "150px", 
+  "fieldname": "prevdoc_docname", 
+  "fieldtype": "Data", 
+  "search_index": 1, 
+  "hidden": 1, 
+  "permlevel": 1, 
+  "in_filter": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "no_copy": 1, 
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Document Type", 
+  "oldfieldname": "prevdoc_doctype", 
+  "width": "150px", 
+  "fieldname": "prevdoc_doctype", 
+  "fieldtype": "Data", 
+  "search_index": 1, 
+  "hidden": 1, 
+  "permlevel": 1, 
+  "in_filter": 1
+ }, 
+ {
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Installed Qty", 
+  "oldfieldname": "qty", 
+  "fieldname": "qty", 
+  "fieldtype": "Currency", 
+  "reqd": 1, 
+  "permlevel": 0
+ }
 ]
\ No newline at end of file
diff --git a/selling/doctype/opportunity_item/opportunity_item.txt b/selling/doctype/opportunity_item/opportunity_item.txt
index f145263..a0a7e04 100644
--- a/selling/doctype/opportunity_item/opportunity_item.txt
+++ b/selling/doctype/opportunity_item/opportunity_item.txt
@@ -1,140 +1,115 @@
-# DocType, Opportunity Item
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:36:08',
-		'docstatus': 0,
-		'modified': '2012-03-27 14:36:08',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'istable': 1,
-		'module': u'Selling',
-		'name': '__common__',
-		'section_style': u'Simple',
-		'server_code_error': u' ',
-		'show_in_menu': 0,
-		'version': 59
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'Opportunity Item',
-		'parentfield': u'fields',
-		'parenttype': u'DocType',
-		'permlevel': 0
-	},
-
-	# DocType, Opportunity Item
-	{
-		'doctype': 'DocType',
-		'name': u'Opportunity Item'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'doctype': u'DocField',
-		'fieldname': u'item_code',
-		'fieldtype': u'Link',
-		'label': u'Item Code',
-		'oldfieldname': u'item_code',
-		'oldfieldtype': u'Link',
-		'options': u'Item',
-		'reqd': 0,
-		'trigger': u'Client'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'item_name',
-		'fieldtype': u'Data',
-		'label': u'Item Name',
-		'oldfieldname': u'item_name',
-		'oldfieldtype': u'Data',
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'description',
-		'fieldtype': u'Text',
-		'label': u'Description',
-		'oldfieldname': u'description',
-		'oldfieldtype': u'Text',
-		'reqd': 1,
-		'width': u'300px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'item_group',
-		'fieldtype': u'Link',
-		'hidden': 1,
-		'label': u'Item Group',
-		'oldfieldname': u'item_group',
-		'oldfieldtype': u'Link',
-		'options': u'Item Group',
-		'print_hide': 1,
-		'search_index': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'brand',
-		'fieldtype': u'Link',
-		'hidden': 1,
-		'label': u'Brand',
-		'oldfieldname': u'brand',
-		'oldfieldtype': u'Link',
-		'options': u'Brand',
-		'print_hide': 1,
-		'search_index': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'basic_rate',
-		'fieldtype': u'Currency',
-		'hidden': 1,
-		'label': u'Basic Rate',
-		'oldfieldname': u'basic_rate',
-		'oldfieldtype': u'Currency',
-		'print_hide': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'qty',
-		'fieldtype': u'Currency',
-		'label': u'Qty',
-		'oldfieldname': u'qty',
-		'oldfieldtype': u'Currency'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'uom',
-		'fieldtype': u'Link',
-		'label': u'UOM',
-		'oldfieldname': u'uom',
-		'oldfieldtype': u'Link',
-		'options': u'UOM',
-		'search_index': 0
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-03-27 14:36:08", 
+  "modified_by": "Administrator", 
+  "modified": "2012-03-27 14:36:08"
+ }, 
+ {
+  "section_style": "Simple", 
+  "istable": 1, 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "module": "Selling", 
+  "show_in_menu": 0, 
+  "version": 59, 
+  "server_code_error": " ", 
+  "doctype": "DocType"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Opportunity Item", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "permlevel": 0, 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "Opportunity Item", 
+  "doctype": "DocType"
+ }, 
+ {
+  "oldfieldtype": "Link", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Item Code", 
+  "oldfieldname": "item_code", 
+  "trigger": "Client", 
+  "fieldname": "item_code", 
+  "fieldtype": "Link", 
+  "reqd": 0, 
+  "options": "Item"
+ }, 
+ {
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Item Name", 
+  "oldfieldname": "item_name", 
+  "fieldname": "item_name", 
+  "fieldtype": "Data", 
+  "reqd": 1
+ }, 
+ {
+  "oldfieldtype": "Text", 
+  "doctype": "DocField", 
+  "label": "Description", 
+  "oldfieldname": "description", 
+  "width": "300px", 
+  "fieldname": "description", 
+  "fieldtype": "Text", 
+  "reqd": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "search_index": 0, 
+  "doctype": "DocField", 
+  "label": "Item Group", 
+  "oldfieldname": "item_group", 
+  "fieldname": "item_group", 
+  "fieldtype": "Link", 
+  "oldfieldtype": "Link", 
+  "hidden": 1, 
+  "options": "Item Group"
+ }, 
+ {
+  "print_hide": 1, 
+  "search_index": 0, 
+  "doctype": "DocField", 
+  "label": "Brand", 
+  "oldfieldname": "brand", 
+  "fieldname": "brand", 
+  "fieldtype": "Link", 
+  "oldfieldtype": "Link", 
+  "hidden": 1, 
+  "options": "Brand"
+ }, 
+ {
+  "print_hide": 1, 
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Basic Rate", 
+  "oldfieldname": "basic_rate", 
+  "fieldname": "basic_rate", 
+  "fieldtype": "Currency", 
+  "hidden": 1
+ }, 
+ {
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Qty", 
+  "oldfieldname": "qty", 
+  "fieldname": "qty", 
+  "fieldtype": "Currency"
+ }, 
+ {
+  "search_index": 0, 
+  "doctype": "DocField", 
+  "label": "UOM", 
+  "oldfieldname": "uom", 
+  "fieldname": "uom", 
+  "fieldtype": "Link", 
+  "oldfieldtype": "Link", 
+  "options": "UOM"
+ }
 ]
\ No newline at end of file
diff --git a/selling/doctype/plot_control/plot_control.txt b/selling/doctype/plot_control/plot_control.txt
index 00af5f1..675c4de 100644
--- a/selling/doctype/plot_control/plot_control.txt
+++ b/selling/doctype/plot_control/plot_control.txt
@@ -1,30 +1,23 @@
-# DocType, Plot Control
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:36:12',
-		'docstatus': 0,
-		'modified': '2012-03-27 14:36:12',
-		'modified_by': u'Administrator',
-		'owner': u'harshada@webnotestech.com'
-	},
-
-	# These values are common for all DocType
-	{
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'issingle': 1,
-		'module': u'Selling',
-		'name': '__common__',
-		'section_style': u'Simple',
-		'server_code_error': u' ',
-		'version': 215
-	},
-
-	# DocType, Plot Control
-	{
-		'doctype': 'DocType',
-		'name': u'Plot Control'
-	}
+ {
+  "owner": "harshada@webnotestech.com", 
+  "docstatus": 0, 
+  "creation": "2012-03-27 14:36:12", 
+  "modified_by": "Administrator", 
+  "modified": "2012-03-27 14:36:12"
+ }, 
+ {
+  "section_style": "Simple", 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "module": "Selling", 
+  "doctype": "DocType", 
+  "version": 215, 
+  "server_code_error": " ", 
+  "issingle": 1
+ }, 
+ {
+  "name": "Plot Control", 
+  "doctype": "DocType"
+ }
 ]
\ No newline at end of file
diff --git a/selling/doctype/quotation_item/quotation_item.txt b/selling/doctype/quotation_item/quotation_item.txt
index e025d3b..cdf0441 100644
--- a/selling/doctype/quotation_item/quotation_item.txt
+++ b/selling/doctype/quotation_item/quotation_item.txt
@@ -1,344 +1,297 @@
-# DocType, Quotation Item
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-06-08 16:07:57',
-		'docstatus': 0,
-		'modified': '2012-07-09 11:04:47',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'autoname': u'QUOD/.#####',
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'is_transaction_doc': 0,
-		'istable': 1,
-		'module': u'Selling',
-		'name': '__common__',
-		'section_style': u'Tray',
-		'server_code_error': u' ',
-		'show_in_menu': 0,
-		'version': 1
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'Quotation Item',
-		'parentfield': u'fields',
-		'parenttype': u'DocType'
-	},
-
-	# DocType, Quotation Item
-	{
-		'doctype': 'DocType',
-		'name': u'Quotation Item'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'item_code',
-		'fieldtype': u'Link',
-		'hidden': 0,
-		'in_filter': 1,
-		'label': u'Item Code',
-		'oldfieldname': u'item_code',
-		'oldfieldtype': u'Link',
-		'options': u'Item',
-		'permlevel': 0,
-		'print_hide': 0,
-		'reqd': 1,
-		'search_index': 1,
-		'trigger': u'Client',
-		'width': u'150px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'customer_item_code',
-		'fieldtype': u'Data',
-		'hidden': 1,
-		'label': u"Customer's Item Code",
-		'permlevel': 1,
-		'print_hide': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'item_name',
-		'fieldtype': u'Data',
-		'in_filter': 1,
-		'label': u'Item Name',
-		'oldfieldname': u'item_name',
-		'oldfieldtype': u'Data',
-		'permlevel': 0,
-		'print_hide': 1,
-		'reqd': 1,
-		'search_index': 1,
-		'width': u'150px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'description',
-		'fieldtype': u'Small Text',
-		'label': u'Description',
-		'oldfieldname': u'description',
-		'oldfieldtype': u'Small Text',
-		'permlevel': 0,
-		'print_hide': 0,
-		'reqd': 1,
-		'width': u'300px'
-	},
-
-	# DocField
-	{
-		'default': u'0.00',
-		'doctype': u'DocField',
-		'fieldname': u'qty',
-		'fieldtype': u'Currency',
-		'in_filter': 0,
-		'label': u'Quantity',
-		'oldfieldname': u'qty',
-		'oldfieldtype': u'Currency',
-		'permlevel': 0,
-		'print_hide': 0,
-		'reqd': 1,
-		'search_index': 0,
-		'trigger': u'Client',
-		'width': u'100px'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'doctype': u'DocField',
-		'fieldname': u'stock_uom',
-		'fieldtype': u'Data',
-		'label': u'UOM',
-		'oldfieldname': u'stock_uom',
-		'oldfieldtype': u'Data',
-		'permlevel': 1,
-		'print_hide': 0,
-		'reqd': 0,
-		'width': u'100px'
-	},
-
-	# DocField
-	{
-		'default': u'0.00',
-		'doctype': u'DocField',
-		'fieldname': u'ref_rate',
-		'fieldtype': u'Currency',
-		'label': u'Price List Rate',
-		'oldfieldname': u'ref_rate',
-		'oldfieldtype': u'Currency',
-		'permlevel': 0,
-		'print_hide': 1,
-		'reqd': 0,
-		'trigger': u'Client',
-		'width': u'100px'
-	},
-
-	# DocField
-	{
-		'default': u'0.00',
-		'doctype': u'DocField',
-		'fieldname': u'adj_rate',
-		'fieldtype': u'Float',
-		'label': u'Discount (%)',
-		'oldfieldname': u'adj_rate',
-		'oldfieldtype': u'Float',
-		'permlevel': 0,
-		'print_hide': 1,
-		'trigger': u'Client',
-		'width': u'100px'
-	},
-
-	# DocField
-	{
-		'default': u'0.00',
-		'doctype': u'DocField',
-		'fieldname': u'export_rate',
-		'fieldtype': u'Currency',
-		'in_filter': 0,
-		'label': u'Rate',
-		'oldfieldname': u'export_rate',
-		'oldfieldtype': u'Currency',
-		'permlevel': 0,
-		'print_hide': 0,
-		'reqd': 0,
-		'search_index': 0,
-		'trigger': u'Client',
-		'width': u'100px'
-	},
-
-	# DocField
-	{
-		'default': u'0.00',
-		'doctype': u'DocField',
-		'fieldname': u'export_amount',
-		'fieldtype': u'Currency',
-		'in_filter': 0,
-		'label': u'Amount',
-		'oldfieldname': u'export_amount',
-		'oldfieldtype': u'Currency',
-		'permlevel': 1,
-		'print_hide': 0,
-		'reqd': 0,
-		'search_index': 0,
-		'width': u'100px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'base_ref_rate',
-		'fieldtype': u'Currency',
-		'label': u'Price List Rate*',
-		'oldfieldname': u'base_ref_rate',
-		'oldfieldtype': u'Currency',
-		'permlevel': 1,
-		'print_hide': 1,
-		'width': u'100px'
-	},
-
-	# DocField
-	{
-		'default': u'0.00',
-		'doctype': u'DocField',
-		'fieldname': u'basic_rate',
-		'fieldtype': u'Currency',
-		'in_filter': 0,
-		'label': u'Basic Rate*',
-		'oldfieldname': u'basic_rate',
-		'oldfieldtype': u'Currency',
-		'permlevel': 0,
-		'print_hide': 1,
-		'reqd': 0,
-		'search_index': 0,
-		'trigger': u'Client',
-		'width': u'100px'
-	},
-
-	# DocField
-	{
-		'default': u'0.00',
-		'doctype': u'DocField',
-		'fieldname': u'amount',
-		'fieldtype': u'Currency',
-		'in_filter': 0,
-		'label': u'Amount*',
-		'oldfieldname': u'amount',
-		'oldfieldtype': u'Currency',
-		'permlevel': 1,
-		'print_hide': 1,
-		'reqd': 0,
-		'search_index': 0,
-		'trigger': u'Client',
-		'width': u'100px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'item_group',
-		'fieldtype': u'Link',
-		'hidden': 1,
-		'in_filter': 1,
-		'label': u'Item Group',
-		'oldfieldname': u'item_group',
-		'oldfieldtype': u'Link',
-		'options': u'Item Group',
-		'permlevel': 1,
-		'print_hide': 1,
-		'search_index': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'brand',
-		'fieldtype': u'Link',
-		'hidden': 1,
-		'in_filter': 1,
-		'label': u'Brand',
-		'oldfieldname': u'brand',
-		'oldfieldtype': u'Link',
-		'options': u'Brand',
-		'permlevel': 1,
-		'print_hide': 1,
-		'search_index': 1,
-		'width': u'150px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'item_tax_rate',
-		'fieldtype': u'Small Text',
-		'hidden': 1,
-		'label': u'Item Tax Rate',
-		'oldfieldname': u'item_tax_rate',
-		'oldfieldtype': u'Small Text',
-		'permlevel': 1,
-		'print_hide': 1,
-		'report_hide': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'prevdoc_docname',
-		'fieldtype': u'Data',
-		'label': u'Against Docname',
-		'no_copy': 1,
-		'oldfieldname': u'prevdoc_docname',
-		'oldfieldtype': u'Data',
-		'permlevel': 1,
-		'print_hide': 1,
-		'report_hide': 0,
-		'width': u'150px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'prevdoc_doctype',
-		'fieldtype': u'Data',
-		'hidden': 1,
-		'label': u'Against Doctype',
-		'no_copy': 1,
-		'oldfieldname': u'prevdoc_doctype',
-		'oldfieldtype': u'Data',
-		'permlevel': 1,
-		'print_hide': 1,
-		'report_hide': 0,
-		'width': u'150px'
-	},
-
-	# DocField
-	{
-		'allow_on_submit': 1,
-		'doctype': u'DocField',
-		'fieldname': u'page_break',
-		'fieldtype': u'Check',
-		'hidden': 0,
-		'label': u'Page Break',
-		'no_copy': 1,
-		'oldfieldname': u'page_break',
-		'oldfieldtype': u'Check',
-		'permlevel': 0,
-		'print_hide': 1,
-		'report_hide': 1
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-06-08 16:07:57", 
+  "modified_by": "Administrator", 
+  "modified": "2012-07-09 11:04:47"
+ }, 
+ {
+  "section_style": "Tray", 
+  "istable": 1, 
+  "module": "Selling", 
+  "server_code_error": " ", 
+  "doctype": "DocType", 
+  "autoname": "QUOD/.#####", 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "is_transaction_doc": 0, 
+  "show_in_menu": 0, 
+  "version": 1
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Quotation Item", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "Quotation Item", 
+  "doctype": "DocType"
+ }, 
+ {
+  "print_hide": 0, 
+  "permlevel": 0, 
+  "oldfieldtype": "Link", 
+  "doctype": "DocField", 
+  "label": "Item Code", 
+  "oldfieldname": "item_code", 
+  "width": "150px", 
+  "trigger": "Client", 
+  "fieldname": "item_code", 
+  "fieldtype": "Link", 
+  "search_index": 1, 
+  "reqd": 1, 
+  "hidden": 0, 
+  "options": "Item", 
+  "in_filter": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "doctype": "DocField", 
+  "label": "Customer's Item Code", 
+  "fieldname": "customer_item_code", 
+  "fieldtype": "Data", 
+  "hidden": 1, 
+  "permlevel": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "search_index": 1, 
+  "doctype": "DocField", 
+  "label": "Item Name", 
+  "oldfieldname": "item_name", 
+  "width": "150px", 
+  "fieldname": "item_name", 
+  "fieldtype": "Data", 
+  "oldfieldtype": "Data", 
+  "reqd": 1, 
+  "permlevel": 0, 
+  "in_filter": 1
+ }, 
+ {
+  "print_hide": 0, 
+  "oldfieldtype": "Small Text", 
+  "doctype": "DocField", 
+  "label": "Description", 
+  "oldfieldname": "description", 
+  "width": "300px", 
+  "fieldname": "description", 
+  "fieldtype": "Small Text", 
+  "reqd": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "print_hide": 0, 
+  "default": "0.00", 
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Quantity", 
+  "oldfieldname": "qty", 
+  "width": "100px", 
+  "trigger": "Client", 
+  "fieldname": "qty", 
+  "fieldtype": "Currency", 
+  "search_index": 0, 
+  "reqd": 1, 
+  "permlevel": 0, 
+  "in_filter": 0
+ }, 
+ {
+  "print_hide": 0, 
+  "oldfieldtype": "Data", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "UOM", 
+  "oldfieldname": "stock_uom", 
+  "width": "100px", 
+  "fieldname": "stock_uom", 
+  "fieldtype": "Data", 
+  "reqd": 0, 
+  "permlevel": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "default": "0.00", 
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Price List Rate", 
+  "oldfieldname": "ref_rate", 
+  "width": "100px", 
+  "trigger": "Client", 
+  "fieldname": "ref_rate", 
+  "fieldtype": "Currency", 
+  "reqd": 0, 
+  "permlevel": 0
+ }, 
+ {
+  "print_hide": 1, 
+  "default": "0.00", 
+  "oldfieldtype": "Float", 
+  "doctype": "DocField", 
+  "label": "Discount (%)", 
+  "oldfieldname": "adj_rate", 
+  "width": "100px", 
+  "trigger": "Client", 
+  "fieldname": "adj_rate", 
+  "fieldtype": "Float", 
+  "permlevel": 0
+ }, 
+ {
+  "print_hide": 0, 
+  "default": "0.00", 
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Rate", 
+  "oldfieldname": "export_rate", 
+  "width": "100px", 
+  "trigger": "Client", 
+  "fieldname": "export_rate", 
+  "fieldtype": "Currency", 
+  "search_index": 0, 
+  "reqd": 0, 
+  "permlevel": 0, 
+  "in_filter": 0
+ }, 
+ {
+  "print_hide": 0, 
+  "default": "0.00", 
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Amount", 
+  "oldfieldname": "export_amount", 
+  "width": "100px", 
+  "fieldname": "export_amount", 
+  "fieldtype": "Currency", 
+  "search_index": 0, 
+  "reqd": 0, 
+  "permlevel": 1, 
+  "in_filter": 0
+ }, 
+ {
+  "print_hide": 1, 
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Price List Rate*", 
+  "oldfieldname": "base_ref_rate", 
+  "width": "100px", 
+  "fieldname": "base_ref_rate", 
+  "fieldtype": "Currency", 
+  "permlevel": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "default": "0.00", 
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Basic Rate*", 
+  "oldfieldname": "basic_rate", 
+  "width": "100px", 
+  "trigger": "Client", 
+  "fieldname": "basic_rate", 
+  "fieldtype": "Currency", 
+  "search_index": 0, 
+  "reqd": 0, 
+  "permlevel": 0, 
+  "in_filter": 0
+ }, 
+ {
+  "print_hide": 1, 
+  "default": "0.00", 
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Amount*", 
+  "oldfieldname": "amount", 
+  "width": "100px", 
+  "trigger": "Client", 
+  "fieldname": "amount", 
+  "fieldtype": "Currency", 
+  "search_index": 0, 
+  "reqd": 0, 
+  "permlevel": 1, 
+  "in_filter": 0
+ }, 
+ {
+  "print_hide": 1, 
+  "oldfieldtype": "Link", 
+  "doctype": "DocField", 
+  "label": "Item Group", 
+  "oldfieldname": "item_group", 
+  "options": "Item Group", 
+  "fieldname": "item_group", 
+  "fieldtype": "Link", 
+  "search_index": 1, 
+  "hidden": 1, 
+  "permlevel": 1, 
+  "in_filter": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "permlevel": 1, 
+  "oldfieldtype": "Link", 
+  "doctype": "DocField", 
+  "label": "Brand", 
+  "oldfieldname": "brand", 
+  "width": "150px", 
+  "fieldname": "brand", 
+  "fieldtype": "Link", 
+  "search_index": 1, 
+  "hidden": 1, 
+  "options": "Brand", 
+  "in_filter": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "oldfieldtype": "Small Text", 
+  "doctype": "DocField", 
+  "label": "Item Tax Rate", 
+  "oldfieldname": "item_tax_rate", 
+  "fieldname": "item_tax_rate", 
+  "fieldtype": "Small Text", 
+  "hidden": 1, 
+  "permlevel": 1, 
+  "report_hide": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "no_copy": 1, 
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Against Docname", 
+  "oldfieldname": "prevdoc_docname", 
+  "width": "150px", 
+  "fieldname": "prevdoc_docname", 
+  "fieldtype": "Data", 
+  "permlevel": 1, 
+  "report_hide": 0
+ }, 
+ {
+  "print_hide": 1, 
+  "no_copy": 1, 
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Against Doctype", 
+  "oldfieldname": "prevdoc_doctype", 
+  "width": "150px", 
+  "fieldname": "prevdoc_doctype", 
+  "fieldtype": "Data", 
+  "hidden": 1, 
+  "permlevel": 1, 
+  "report_hide": 0
+ }, 
+ {
+  "print_hide": 1, 
+  "no_copy": 1, 
+  "oldfieldtype": "Check", 
+  "allow_on_submit": 1, 
+  "doctype": "DocField", 
+  "label": "Page Break", 
+  "oldfieldname": "page_break", 
+  "fieldname": "page_break", 
+  "fieldtype": "Check", 
+  "hidden": 0, 
+  "permlevel": 0, 
+  "report_hide": 1
+ }
 ]
\ No newline at end of file
diff --git a/selling/doctype/sales_and_purchase_return_item/sales_and_purchase_return_item.txt b/selling/doctype/sales_and_purchase_return_item/sales_and_purchase_return_item.txt
index e064714..b5b67c6 100644
--- a/selling/doctype/sales_and_purchase_return_item/sales_and_purchase_return_item.txt
+++ b/selling/doctype/sales_and_purchase_return_item/sales_and_purchase_return_item.txt
@@ -1,142 +1,115 @@
-# DocType, Sales and Purchase Return Item
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:36:14',
-		'docstatus': 0,
-		'modified': '2012-03-27 14:36:14',
-		'modified_by': u'Administrator',
-		'owner': u'wasim@webnotestech.com'
-	},
-
-	# These values are common for all DocType
-	{
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'istable': 1,
-		'module': u'Selling',
-		'name': '__common__',
-		'section_style': u'Simple',
-		'server_code_error': u' ',
-		'show_in_menu': 0,
-		'version': 8
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'Sales and Purchase Return Item',
-		'parentfield': u'fields',
-		'parenttype': u'DocType'
-	},
-
-	# DocType, Sales and Purchase Return Item
-	{
-		'doctype': 'DocType',
-		'name': u'Sales and Purchase Return Item'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'item_code',
-		'fieldtype': u'Link',
-		'label': u'Item Code',
-		'oldfieldname': u'item_code',
-		'oldfieldtype': u'Link',
-		'options': u'Item',
-		'permlevel': 1,
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'description',
-		'fieldtype': u'Data',
-		'label': u'Description',
-		'oldfieldname': u'description',
-		'oldfieldtype': u'Data',
-		'permlevel': 1,
-		'width': u'300px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'uom',
-		'fieldtype': u'Link',
-		'label': u'UOM',
-		'oldfieldname': u'uom',
-		'oldfieldtype': u'Link',
-		'options': u'UOM',
-		'permlevel': 1,
-		'search_index': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'rate',
-		'fieldtype': u'Currency',
-		'label': u'Rate',
-		'oldfieldname': u'rate',
-		'oldfieldtype': u'Currency',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'qty',
-		'fieldtype': u'Data',
-		'label': u'Qty',
-		'oldfieldname': u'qty',
-		'oldfieldtype': u'Data',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'returned_qty',
-		'fieldtype': u'Data',
-		'label': u'Returned Qty',
-		'oldfieldname': u'returned_qty',
-		'oldfieldtype': u'Data',
-		'permlevel': 0,
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'serial_no',
-		'fieldtype': u'Small Text',
-		'label': u'Serial No',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'batch_no',
-		'fieldtype': u'Data',
-		'label': u'Batch No',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'detail_name',
-		'fieldtype': u'Data',
-		'hidden': 1,
-		'label': u'Detail Name',
-		'oldfieldname': u'detail_name',
-		'oldfieldtype': u'Data',
-		'permlevel': 1
-	}
+ {
+  "owner": "wasim@webnotestech.com", 
+  "docstatus": 0, 
+  "creation": "2012-03-27 14:36:14", 
+  "modified_by": "Administrator", 
+  "modified": "2012-03-27 14:36:14"
+ }, 
+ {
+  "section_style": "Simple", 
+  "istable": 1, 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "module": "Selling", 
+  "show_in_menu": 0, 
+  "version": 8, 
+  "server_code_error": " ", 
+  "doctype": "DocType"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Sales and Purchase Return Item", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "Sales and Purchase Return Item", 
+  "doctype": "DocType"
+ }, 
+ {
+  "oldfieldtype": "Link", 
+  "doctype": "DocField", 
+  "label": "Item Code", 
+  "oldfieldname": "item_code", 
+  "permlevel": 1, 
+  "fieldname": "item_code", 
+  "fieldtype": "Link", 
+  "reqd": 1, 
+  "options": "Item"
+ }, 
+ {
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Description", 
+  "oldfieldname": "description", 
+  "width": "300px", 
+  "fieldname": "description", 
+  "fieldtype": "Data", 
+  "permlevel": 1
+ }, 
+ {
+  "search_index": 0, 
+  "doctype": "DocField", 
+  "label": "UOM", 
+  "oldfieldname": "uom", 
+  "permlevel": 1, 
+  "fieldname": "uom", 
+  "fieldtype": "Link", 
+  "oldfieldtype": "Link", 
+  "options": "UOM"
+ }, 
+ {
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Rate", 
+  "oldfieldname": "rate", 
+  "fieldname": "rate", 
+  "fieldtype": "Currency", 
+  "permlevel": 1
+ }, 
+ {
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Qty", 
+  "oldfieldname": "qty", 
+  "fieldname": "qty", 
+  "fieldtype": "Data", 
+  "permlevel": 1
+ }, 
+ {
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Returned Qty", 
+  "oldfieldname": "returned_qty", 
+  "fieldname": "returned_qty", 
+  "fieldtype": "Data", 
+  "reqd": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Serial No", 
+  "fieldname": "serial_no", 
+  "fieldtype": "Small Text", 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Batch No", 
+  "fieldname": "batch_no", 
+  "fieldtype": "Data", 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Detail Name", 
+  "oldfieldname": "detail_name", 
+  "fieldname": "detail_name", 
+  "fieldtype": "Data", 
+  "hidden": 1, 
+  "permlevel": 1
+ }
 ]
\ No newline at end of file
diff --git a/selling/doctype/sales_common/sales_common.txt b/selling/doctype/sales_common/sales_common.txt
index 413e051..ccfd004 100644
--- a/selling/doctype/sales_common/sales_common.txt
+++ b/selling/doctype/sales_common/sales_common.txt
@@ -1,31 +1,24 @@
-# DocType, Sales Common
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:36:14',
-		'docstatus': 0,
-		'modified': '2012-03-27 14:36:14',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'issingle': 1,
-		'module': u'Selling',
-		'name': '__common__',
-		'section_style': u'Simple',
-		'server_code_error': u' ',
-		'show_in_menu': 0,
-		'version': 290
-	},
-
-	# DocType, Sales Common
-	{
-		'doctype': 'DocType',
-		'name': u'Sales Common'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-03-27 14:36:14", 
+  "modified_by": "Administrator", 
+  "modified": "2012-03-27 14:36:14"
+ }, 
+ {
+  "section_style": "Simple", 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "module": "Selling", 
+  "show_in_menu": 0, 
+  "version": 290, 
+  "server_code_error": " ", 
+  "doctype": "DocType", 
+  "issingle": 1
+ }, 
+ {
+  "name": "Sales Common", 
+  "doctype": "DocType"
+ }
 ]
\ No newline at end of file
diff --git a/selling/doctype/sales_order_item/sales_order_item.txt b/selling/doctype/sales_order_item/sales_order_item.txt
index 1987b6e..72e763e 100644
--- a/selling/doctype/sales_order_item/sales_order_item.txt
+++ b/selling/doctype/sales_order_item/sales_order_item.txt
@@ -1,443 +1,382 @@
-# DocType, Sales Order Item
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-06-08 16:07:58',
-		'docstatus': 0,
-		'modified': '2012-07-09 11:05:16',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'autoname': u'SOD/.#####',
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'istable': 1,
-		'module': u'Selling',
-		'name': '__common__',
-		'section_style': u'Tray',
-		'server_code_error': u' ',
-		'show_in_menu': 0,
-		'version': 1
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'Sales Order Item',
-		'parentfield': u'fields',
-		'parenttype': u'DocType'
-	},
-
-	# DocType, Sales Order Item
-	{
-		'doctype': 'DocType',
-		'name': u'Sales Order Item'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'item_code',
-		'fieldtype': u'Link',
-		'in_filter': 1,
-		'label': u'Item Code',
-		'oldfieldname': u'item_code',
-		'oldfieldtype': u'Link',
-		'options': u'Item',
-		'permlevel': 0,
-		'reqd': 1,
-		'search_index': 1,
-		'trigger': u'Client',
-		'width': u'150px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'customer_item_code',
-		'fieldtype': u'Data',
-		'hidden': 1,
-		'label': u"Customer's Item Code",
-		'permlevel': 1,
-		'print_hide': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'item_name',
-		'fieldtype': u'Data',
-		'label': u'Item Name',
-		'oldfieldname': u'item_name',
-		'oldfieldtype': u'Data',
-		'permlevel': 0,
-		'print_hide': 1,
-		'reqd': 1,
-		'width': u'150'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'description',
-		'fieldtype': u'Small Text',
-		'in_filter': 1,
-		'label': u'Description',
-		'oldfieldname': u'description',
-		'oldfieldtype': u'Small Text',
-		'permlevel': 0,
-		'reqd': 1,
-		'search_index': 1,
-		'width': u'300px'
-	},
-
-	# DocField
-	{
-		'default': u'0.00',
-		'doctype': u'DocField',
-		'fieldname': u'qty',
-		'fieldtype': u'Currency',
-		'label': u'Quantity',
-		'oldfieldname': u'qty',
-		'oldfieldtype': u'Currency',
-		'permlevel': 0,
-		'reqd': 1,
-		'trigger': u'Client',
-		'width': u'100px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'stock_uom',
-		'fieldtype': u'Data',
-		'hidden': 0,
-		'label': u'UOM',
-		'oldfieldname': u'stock_uom',
-		'oldfieldtype': u'Data',
-		'permlevel': 1,
-		'reqd': 0,
-		'width': u'70px'
-	},
-
-	# DocField
-	{
-		'default': u'0.00',
-		'doctype': u'DocField',
-		'fieldname': u'ref_rate',
-		'fieldtype': u'Currency',
-		'label': u'Price List Rate',
-		'oldfieldname': u'ref_rate',
-		'oldfieldtype': u'Currency',
-		'permlevel': 0,
-		'print_hide': 1,
-		'reqd': 0,
-		'trigger': u'Client',
-		'width': u'70px'
-	},
-
-	# DocField
-	{
-		'default': u'0.00',
-		'doctype': u'DocField',
-		'fieldname': u'adj_rate',
-		'fieldtype': u'Float',
-		'label': u'Discount(%)',
-		'oldfieldname': u'adj_rate',
-		'oldfieldtype': u'Float',
-		'permlevel': 0,
-		'print_hide': 1,
-		'trigger': u'Client',
-		'width': u'70px'
-	},
-
-	# DocField
-	{
-		'default': u'0.00',
-		'doctype': u'DocField',
-		'fieldname': u'export_rate',
-		'fieldtype': u'Currency',
-		'label': u'Rate',
-		'oldfieldname': u'export_rate',
-		'oldfieldtype': u'Currency',
-		'permlevel': 0,
-		'reqd': 0,
-		'trigger': u'Client',
-		'width': u'100px'
-	},
-
-	# DocField
-	{
-		'default': u'0.00',
-		'doctype': u'DocField',
-		'fieldname': u'export_amount',
-		'fieldtype': u'Currency',
-		'label': u'Amount',
-		'no_copy': 0,
-		'oldfieldname': u'export_amount',
-		'oldfieldtype': u'Currency',
-		'permlevel': 1,
-		'reqd': 0,
-		'width': u'100px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'base_ref_rate',
-		'fieldtype': u'Currency',
-		'label': u'Price List Rate*',
-		'oldfieldname': u'base_ref_rate',
-		'oldfieldtype': u'Currency',
-		'permlevel': 1,
-		'print_hide': 1,
-		'width': u'100px'
-	},
-
-	# DocField
-	{
-		'default': u'0.00',
-		'doctype': u'DocField',
-		'fieldname': u'basic_rate',
-		'fieldtype': u'Currency',
-		'label': u'Basic Rate*',
-		'oldfieldname': u'basic_rate',
-		'oldfieldtype': u'Currency',
-		'permlevel': 0,
-		'print_hide': 1,
-		'reqd': 0,
-		'trigger': u'Client',
-		'width': u'100px'
-	},
-
-	# DocField
-	{
-		'default': u'0.00',
-		'doctype': u'DocField',
-		'fieldname': u'amount',
-		'fieldtype': u'Currency',
-		'label': u'Amount*',
-		'no_copy': 0,
-		'oldfieldname': u'amount',
-		'oldfieldtype': u'Currency',
-		'permlevel': 1,
-		'print_hide': 1,
-		'reqd': 0,
-		'width': u'100px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'reserved_warehouse',
-		'fieldtype': u'Link',
-		'label': u'Reserved Warehouse',
-		'no_copy': 1,
-		'oldfieldname': u'reserved_warehouse',
-		'oldfieldtype': u'Link',
-		'options': u'Warehouse',
-		'permlevel': 0,
-		'print_hide': 1,
-		'reqd': 0,
-		'trigger': u'Client',
-		'width': u'150px'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'default': u'0.00',
-		'doctype': u'DocField',
-		'fieldname': u'projected_qty',
-		'fieldtype': u'Currency',
-		'hidden': 1,
-		'label': u'Projected Qty',
-		'no_copy': 1,
-		'oldfieldname': u'projected_qty',
-		'oldfieldtype': u'Currency',
-		'permlevel': 1,
-		'print_hide': 1,
-		'width': u'70px'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'default': u'0.00',
-		'doctype': u'DocField',
-		'fieldname': u'actual_qty',
-		'fieldtype': u'Currency',
-		'label': u'Actual Qty',
-		'no_copy': 1,
-		'permlevel': 1,
-		'print_hide': 1,
-		'width': u'70px'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'default': u'0.00',
-		'doctype': u'DocField',
-		'fieldname': u'delivered_qty',
-		'fieldtype': u'Currency',
-		'hidden': 0,
-		'in_filter': 0,
-		'label': u'Delivered Qty',
-		'no_copy': 1,
-		'oldfieldname': u'delivered_qty',
-		'oldfieldtype': u'Currency',
-		'permlevel': 1,
-		'print_hide': 1,
-		'search_index': 0,
-		'width': u'100px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'billed_amt',
-		'fieldtype': u'Currency',
-		'label': u'Billed Amt',
-		'no_copy': 1,
-		'permlevel': 1,
-		'print_hide': 1
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'description': u'For Production',
-		'doctype': u'DocField',
-		'fieldname': u'planned_qty',
-		'fieldtype': u'Currency',
-		'hidden': 1,
-		'label': u'Planned Quantity',
-		'no_copy': 1,
-		'oldfieldname': u'planned_qty',
-		'oldfieldtype': u'Currency',
-		'permlevel': 1,
-		'print_hide': 1,
-		'report_hide': 1,
-		'width': u'50px'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'description': u'For Production',
-		'doctype': u'DocField',
-		'fieldname': u'produced_qty',
-		'fieldtype': u'Currency',
-		'hidden': 1,
-		'label': u'Produced Quantity',
-		'oldfieldname': u'produced_qty',
-		'oldfieldtype': u'Currency',
-		'permlevel': 1,
-		'print_hide': 1,
-		'report_hide': 1,
-		'width': u'50px'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'doctype': u'DocField',
-		'fieldname': u'brand',
-		'fieldtype': u'Link',
-		'hidden': 1,
-		'in_filter': 1,
-		'label': u'Brand Name',
-		'oldfieldname': u'brand',
-		'oldfieldtype': u'Link',
-		'options': u'Brand',
-		'permlevel': 1,
-		'print_hide': 1,
-		'search_index': 1
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'doctype': u'DocField',
-		'fieldname': u'item_group',
-		'fieldtype': u'Link',
-		'hidden': 1,
-		'in_filter': 1,
-		'label': u'Item Group',
-		'oldfieldname': u'item_group',
-		'oldfieldtype': u'Link',
-		'options': u'Item Group',
-		'permlevel': 1,
-		'print_hide': 1,
-		'search_index': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'prevdoc_docname',
-		'fieldtype': u'Link',
-		'hidden': 0,
-		'in_filter': 1,
-		'label': u'Quotation No.',
-		'oldfieldname': u'prevdoc_docname',
-		'oldfieldtype': u'Link',
-		'options': u'Quotation',
-		'permlevel': 1,
-		'print_hide': 1,
-		'search_index': 1
-	},
-
-	# DocField
-	{
-		'allow_on_submit': 1,
-		'doctype': u'DocField',
-		'fieldname': u'page_break',
-		'fieldtype': u'Check',
-		'label': u'Page Break',
-		'oldfieldname': u'page_break',
-		'oldfieldtype': u'Check',
-		'permlevel': 0,
-		'print_hide': 1,
-		'report_hide': 1
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'doctype': u'DocField',
-		'fieldname': u'item_tax_rate',
-		'fieldtype': u'Small Text',
-		'hidden': 1,
-		'label': u'Item Tax Rate',
-		'oldfieldname': u'item_tax_rate',
-		'oldfieldtype': u'Small Text',
-		'permlevel': 1,
-		'print_hide': 1,
-		'report_hide': 1
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'description': u'The date at which current entry is made in system.',
-		'doctype': u'DocField',
-		'fieldname': u'transaction_date',
-		'fieldtype': u'Date',
-		'hidden': 1,
-		'in_filter': 0,
-		'label': u'Sales Order Date',
-		'oldfieldname': u'transaction_date',
-		'oldfieldtype': u'Date',
-		'permlevel': 1,
-		'print_hide': 1,
-		'report_hide': 1,
-		'search_index': 0
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-06-08 16:07:58", 
+  "modified_by": "Administrator", 
+  "modified": "2012-07-09 11:05:16"
+ }, 
+ {
+  "section_style": "Tray", 
+  "istable": 1, 
+  "module": "Selling", 
+  "server_code_error": " ", 
+  "doctype": "DocType", 
+  "autoname": "SOD/.#####", 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "show_in_menu": 0, 
+  "version": 1
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Sales Order Item", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "Sales Order Item", 
+  "doctype": "DocType"
+ }, 
+ {
+  "permlevel": 0, 
+  "oldfieldtype": "Link", 
+  "doctype": "DocField", 
+  "label": "Item Code", 
+  "oldfieldname": "item_code", 
+  "width": "150px", 
+  "trigger": "Client", 
+  "fieldname": "item_code", 
+  "fieldtype": "Link", 
+  "search_index": 1, 
+  "reqd": 1, 
+  "options": "Item", 
+  "in_filter": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "doctype": "DocField", 
+  "label": "Customer's Item Code", 
+  "fieldname": "customer_item_code", 
+  "fieldtype": "Data", 
+  "hidden": 1, 
+  "permlevel": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Item Name", 
+  "oldfieldname": "item_name", 
+  "width": "150", 
+  "fieldname": "item_name", 
+  "fieldtype": "Data", 
+  "reqd": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Small Text", 
+  "doctype": "DocField", 
+  "label": "Description", 
+  "oldfieldname": "description", 
+  "width": "300px", 
+  "fieldname": "description", 
+  "fieldtype": "Small Text", 
+  "search_index": 1, 
+  "reqd": 1, 
+  "permlevel": 0, 
+  "in_filter": 1
+ }, 
+ {
+  "default": "0.00", 
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Quantity", 
+  "oldfieldname": "qty", 
+  "width": "100px", 
+  "trigger": "Client", 
+  "fieldname": "qty", 
+  "fieldtype": "Currency", 
+  "reqd": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "UOM", 
+  "oldfieldname": "stock_uom", 
+  "width": "70px", 
+  "fieldname": "stock_uom", 
+  "fieldtype": "Data", 
+  "reqd": 0, 
+  "hidden": 0, 
+  "permlevel": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "default": "0.00", 
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Price List Rate", 
+  "oldfieldname": "ref_rate", 
+  "width": "70px", 
+  "trigger": "Client", 
+  "fieldname": "ref_rate", 
+  "fieldtype": "Currency", 
+  "reqd": 0, 
+  "permlevel": 0
+ }, 
+ {
+  "print_hide": 1, 
+  "default": "0.00", 
+  "oldfieldtype": "Float", 
+  "doctype": "DocField", 
+  "label": "Discount(%)", 
+  "oldfieldname": "adj_rate", 
+  "width": "70px", 
+  "trigger": "Client", 
+  "fieldname": "adj_rate", 
+  "fieldtype": "Float", 
+  "permlevel": 0
+ }, 
+ {
+  "default": "0.00", 
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Rate", 
+  "oldfieldname": "export_rate", 
+  "width": "100px", 
+  "trigger": "Client", 
+  "fieldname": "export_rate", 
+  "fieldtype": "Currency", 
+  "reqd": 0, 
+  "permlevel": 0
+ }, 
+ {
+  "default": "0.00", 
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "no_copy": 0, 
+  "label": "Amount", 
+  "oldfieldname": "export_amount", 
+  "width": "100px", 
+  "fieldname": "export_amount", 
+  "fieldtype": "Currency", 
+  "reqd": 0, 
+  "permlevel": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Price List Rate*", 
+  "oldfieldname": "base_ref_rate", 
+  "width": "100px", 
+  "fieldname": "base_ref_rate", 
+  "fieldtype": "Currency", 
+  "permlevel": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "default": "0.00", 
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Basic Rate*", 
+  "oldfieldname": "basic_rate", 
+  "width": "100px", 
+  "trigger": "Client", 
+  "fieldname": "basic_rate", 
+  "fieldtype": "Currency", 
+  "reqd": 0, 
+  "permlevel": 0
+ }, 
+ {
+  "print_hide": 1, 
+  "default": "0.00", 
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "no_copy": 0, 
+  "label": "Amount*", 
+  "oldfieldname": "amount", 
+  "width": "100px", 
+  "fieldname": "amount", 
+  "fieldtype": "Currency", 
+  "reqd": 0, 
+  "permlevel": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "permlevel": 0, 
+  "no_copy": 1, 
+  "oldfieldtype": "Link", 
+  "doctype": "DocField", 
+  "label": "Reserved Warehouse", 
+  "oldfieldname": "reserved_warehouse", 
+  "width": "150px", 
+  "trigger": "Client", 
+  "fieldname": "reserved_warehouse", 
+  "fieldtype": "Link", 
+  "reqd": 0, 
+  "options": "Warehouse"
+ }, 
+ {
+  "print_hide": 1, 
+  "width": "70px", 
+  "default": "0.00", 
+  "oldfieldtype": "Currency", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Projected Qty", 
+  "oldfieldname": "projected_qty", 
+  "no_copy": 1, 
+  "fieldname": "projected_qty", 
+  "fieldtype": "Currency", 
+  "hidden": 1, 
+  "permlevel": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "width": "70px", 
+  "default": "0.00", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Actual Qty", 
+  "no_copy": 1, 
+  "fieldname": "actual_qty", 
+  "fieldtype": "Currency", 
+  "permlevel": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "width": "100px", 
+  "default": "0.00", 
+  "oldfieldtype": "Currency", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Delivered Qty", 
+  "oldfieldname": "delivered_qty", 
+  "no_copy": 1, 
+  "fieldname": "delivered_qty", 
+  "fieldtype": "Currency", 
+  "search_index": 0, 
+  "hidden": 0, 
+  "permlevel": 1, 
+  "in_filter": 0
+ }, 
+ {
+  "print_hide": 1, 
+  "no_copy": 1, 
+  "doctype": "DocField", 
+  "label": "Billed Amt", 
+  "fieldname": "billed_amt", 
+  "fieldtype": "Currency", 
+  "permlevel": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "description": "For Production", 
+  "no_copy": 1, 
+  "oldfieldtype": "Currency", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Planned Quantity", 
+  "oldfieldname": "planned_qty", 
+  "width": "50px", 
+  "fieldname": "planned_qty", 
+  "fieldtype": "Currency", 
+  "hidden": 1, 
+  "permlevel": 1, 
+  "report_hide": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "description": "For Production", 
+  "oldfieldtype": "Currency", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Produced Quantity", 
+  "oldfieldname": "produced_qty", 
+  "width": "50px", 
+  "fieldname": "produced_qty", 
+  "fieldtype": "Currency", 
+  "hidden": 1, 
+  "permlevel": 1, 
+  "report_hide": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "oldfieldtype": "Link", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Brand Name", 
+  "oldfieldname": "brand", 
+  "permlevel": 1, 
+  "fieldname": "brand", 
+  "fieldtype": "Link", 
+  "search_index": 1, 
+  "hidden": 1, 
+  "options": "Brand", 
+  "in_filter": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "oldfieldtype": "Link", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Item Group", 
+  "oldfieldname": "item_group", 
+  "permlevel": 1, 
+  "fieldname": "item_group", 
+  "fieldtype": "Link", 
+  "search_index": 1, 
+  "hidden": 1, 
+  "options": "Item Group", 
+  "in_filter": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "oldfieldtype": "Link", 
+  "doctype": "DocField", 
+  "label": "Quotation No.", 
+  "oldfieldname": "prevdoc_docname", 
+  "options": "Quotation", 
+  "fieldname": "prevdoc_docname", 
+  "fieldtype": "Link", 
+  "search_index": 1, 
+  "hidden": 0, 
+  "permlevel": 1, 
+  "in_filter": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "oldfieldtype": "Check", 
+  "allow_on_submit": 1, 
+  "doctype": "DocField", 
+  "label": "Page Break", 
+  "oldfieldname": "page_break", 
+  "fieldname": "page_break", 
+  "fieldtype": "Check", 
+  "permlevel": 0, 
+  "report_hide": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "oldfieldtype": "Small Text", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Item Tax Rate", 
+  "oldfieldname": "item_tax_rate", 
+  "fieldname": "item_tax_rate", 
+  "fieldtype": "Small Text", 
+  "hidden": 1, 
+  "permlevel": 1, 
+  "report_hide": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "description": "The date at which current entry is made in system.", 
+  "oldfieldtype": "Date", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Sales Order Date", 
+  "oldfieldname": "transaction_date", 
+  "fieldname": "transaction_date", 
+  "fieldtype": "Date", 
+  "search_index": 0, 
+  "hidden": 1, 
+  "permlevel": 1, 
+  "report_hide": 1, 
+  "in_filter": 0
+ }
 ]
\ No newline at end of file
diff --git a/selling/doctype/sales_team/sales_team.txt b/selling/doctype/sales_team/sales_team.txt
index ca1dbac..1dc2819 100644
--- a/selling/doctype/sales_team/sales_team.txt
+++ b/selling/doctype/sales_team/sales_team.txt
@@ -1,128 +1,105 @@
-# DocType, Sales Team
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:36:17',
-		'docstatus': 0,
-		'modified': '2012-03-27 14:36:17',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'istable': 1,
-		'module': u'Selling',
-		'name': '__common__',
-		'section_style': u'Tray',
-		'server_code_error': u' ',
-		'show_in_menu': 0,
-		'version': 5
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'Sales Team',
-		'parentfield': u'fields',
-		'parenttype': u'DocType',
-		'permlevel': 0
-	},
-
-	# DocType, Sales Team
-	{
-		'doctype': 'DocType',
-		'name': u'Sales Team'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'sales_person',
-		'fieldtype': u'Link',
-		'in_filter': 1,
-		'label': u'Sales Person',
-		'oldfieldname': u'sales_person',
-		'oldfieldtype': u'Link',
-		'options': u'Sales Person',
-		'reqd': 1,
-		'search_index': 1,
-		'width': u'200px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'sales_designation',
-		'fieldtype': u'Data',
-		'label': u'Designation',
-		'oldfieldname': u'sales_designation',
-		'oldfieldtype': u'Data',
-		'width': u'100px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'contact_no',
-		'fieldtype': u'Data',
-		'hidden': 1,
-		'label': u'Contact No.',
-		'oldfieldname': u'contact_no',
-		'oldfieldtype': u'Data',
-		'width': u'100px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'allocated_percentage',
-		'fieldtype': u'Currency',
-		'label': u'Allocated (%)',
-		'oldfieldname': u'allocated_percentage',
-		'oldfieldtype': u'Currency',
-		'reqd': 0,
-		'trigger': u'Client',
-		'width': u'100px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'allocated_amount',
-		'fieldtype': u'Currency',
-		'label': u'Allocated Amount',
-		'oldfieldname': u'allocated_amount',
-		'oldfieldtype': u'Currency',
-		'reqd': 0,
-		'width': u'120px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'parenttype',
-		'fieldtype': u'Data',
-		'hidden': 1,
-		'in_filter': 1,
-		'label': u'Parenttype',
-		'oldfieldname': u'parenttype',
-		'oldfieldtype': u'Data',
-		'print_hide': 1,
-		'search_index': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'incentives',
-		'fieldtype': u'Currency',
-		'label': u'Incentives',
-		'oldfieldname': u'incentives',
-		'oldfieldtype': u'Currency'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-03-27 14:36:17", 
+  "modified_by": "Administrator", 
+  "modified": "2012-03-27 14:36:17"
+ }, 
+ {
+  "section_style": "Tray", 
+  "istable": 1, 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "module": "Selling", 
+  "show_in_menu": 0, 
+  "version": 5, 
+  "server_code_error": " ", 
+  "doctype": "DocType"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Sales Team", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "permlevel": 0, 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "Sales Team", 
+  "doctype": "DocType"
+ }, 
+ {
+  "oldfieldtype": "Link", 
+  "doctype": "DocField", 
+  "label": "Sales Person", 
+  "oldfieldname": "sales_person", 
+  "width": "200px", 
+  "fieldname": "sales_person", 
+  "fieldtype": "Link", 
+  "search_index": 1, 
+  "reqd": 1, 
+  "options": "Sales Person", 
+  "in_filter": 1
+ }, 
+ {
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Designation", 
+  "oldfieldname": "sales_designation", 
+  "width": "100px", 
+  "fieldname": "sales_designation", 
+  "fieldtype": "Data"
+ }, 
+ {
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Contact No.", 
+  "oldfieldname": "contact_no", 
+  "width": "100px", 
+  "fieldname": "contact_no", 
+  "fieldtype": "Data", 
+  "hidden": 1
+ }, 
+ {
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Allocated (%)", 
+  "oldfieldname": "allocated_percentage", 
+  "width": "100px", 
+  "trigger": "Client", 
+  "fieldname": "allocated_percentage", 
+  "fieldtype": "Currency", 
+  "reqd": 0
+ }, 
+ {
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Allocated Amount", 
+  "oldfieldname": "allocated_amount", 
+  "width": "120px", 
+  "fieldname": "allocated_amount", 
+  "fieldtype": "Currency", 
+  "reqd": 0
+ }, 
+ {
+  "print_hide": 1, 
+  "search_index": 1, 
+  "doctype": "DocField", 
+  "label": "Parenttype", 
+  "oldfieldname": "parenttype", 
+  "fieldname": "parenttype", 
+  "fieldtype": "Data", 
+  "oldfieldtype": "Data", 
+  "hidden": 1, 
+  "in_filter": 1
+ }, 
+ {
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Incentives", 
+  "oldfieldname": "incentives", 
+  "fieldname": "incentives", 
+  "fieldtype": "Currency"
+ }
 ]
\ No newline at end of file
diff --git a/selling/doctype/shipping_address/shipping_address.txt b/selling/doctype/shipping_address/shipping_address.txt
index b1b3370..7458403 100755
--- a/selling/doctype/shipping_address/shipping_address.txt
+++ b/selling/doctype/shipping_address/shipping_address.txt
@@ -1,181 +1,142 @@
-# DocType, Shipping Address
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:36:17',
-		'docstatus': 0,
-		'modified': '2012-03-27 14:36:17',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'allow_trash': 1,
-		'autoname': u'SA.#####',
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'document_type': u'Master',
-		'module': u'Selling',
-		'name': '__common__',
-		'search_fields': u'customer, ship_to, shipping_address',
-		'section_style': u'Simple',
-		'show_in_menu': 0,
-		'version': 8
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'Shipping Address',
-		'parentfield': u'fields',
-		'parenttype': u'DocType'
-	},
-
-	# These values are common for all DocPerm
-	{
-		'doctype': u'DocPerm',
-		'name': '__common__',
-		'parent': u'Shipping Address',
-		'parentfield': u'permissions',
-		'parenttype': u'DocType',
-		'read': 1
-	},
-
-	# DocType, Shipping Address
-	{
-		'doctype': 'DocType',
-		'name': u'Shipping Address'
-	},
-
-	# DocPerm
-	{
-		'cancel': 1,
-		'create': 1,
-		'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'Sales Master Manager',
-		'write': 1
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm',
-		'permlevel': 1,
-		'role': u'Sales Master Manager'
-	},
-
-	# DocPerm
-	{
-		'cancel': 1,
-		'create': 1,
-		'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'Sales Manager',
-		'write': 1
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm',
-		'permlevel': 1,
-		'role': u'Sales Manager'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'column_break0',
-		'fieldtype': u'Column Break',
-		'permlevel': 0,
-		'width': u'50%'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'customer',
-		'fieldtype': u'Link',
-		'label': u'Customer',
-		'options': u'Customer',
-		'permlevel': 0,
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'customer_name',
-		'fieldtype': u'Data',
-		'label': u'Customer Name',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'customer_address',
-		'fieldtype': u'Text',
-		'label': u'Customer Address',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'ship_to',
-		'fieldtype': u'Data',
-		'label': u'Ship To',
-		'permlevel': 0,
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'shipping_address',
-		'fieldtype': u'Text',
-		'label': u'Shipping Address',
-		'permlevel': 0,
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'column_break1',
-		'fieldtype': u'Column Break',
-		'permlevel': 0,
-		'width': u'50%'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'is_primary_address',
-		'fieldtype': u'Select',
-		'label': u'Is Primary Address',
-		'options': u'Yes\nNo',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'shipping_details',
-		'fieldtype': u'Text Editor',
-		'label': u'Shipping Details',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'trash_reason',
-		'fieldtype': u'Small Text',
-		'label': u'Trash Reason',
-		'permlevel': 1
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-03-27 14:36:17", 
+  "modified_by": "Administrator", 
+  "modified": "2012-03-27 14:36:17"
+ }, 
+ {
+  "section_style": "Simple", 
+  "search_fields": "customer, ship_to, shipping_address", 
+  "module": "Selling", 
+  "doctype": "DocType", 
+  "allow_trash": 1, 
+  "autoname": "SA.#####", 
+  "document_type": "Master", 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "show_in_menu": 0, 
+  "version": 8
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Shipping Address", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Shipping Address", 
+  "read": 1, 
+  "doctype": "DocPerm", 
+  "parenttype": "DocType", 
+  "parentfield": "permissions"
+ }, 
+ {
+  "name": "Shipping Address", 
+  "doctype": "DocType"
+ }, 
+ {
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "write": 1, 
+  "role": "Sales Master Manager", 
+  "cancel": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "role": "Sales Master Manager", 
+  "permlevel": 1, 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "write": 1, 
+  "role": "Sales Manager", 
+  "cancel": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "role": "Sales Manager", 
+  "permlevel": 1, 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "doctype": "DocField", 
+  "width": "50%", 
+  "fieldname": "column_break0", 
+  "fieldtype": "Column Break", 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Customer", 
+  "options": "Customer", 
+  "fieldname": "customer", 
+  "fieldtype": "Link", 
+  "reqd": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Customer Name", 
+  "fieldname": "customer_name", 
+  "fieldtype": "Data", 
+  "permlevel": 1
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Customer Address", 
+  "fieldname": "customer_address", 
+  "fieldtype": "Text", 
+  "permlevel": 1
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Ship To", 
+  "fieldname": "ship_to", 
+  "fieldtype": "Data", 
+  "reqd": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Shipping Address", 
+  "fieldname": "shipping_address", 
+  "fieldtype": "Text", 
+  "reqd": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "width": "50%", 
+  "fieldname": "column_break1", 
+  "fieldtype": "Column Break", 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "options": "Yes\nNo", 
+  "fieldname": "is_primary_address", 
+  "fieldtype": "Select", 
+  "label": "Is Primary Address", 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Shipping Details", 
+  "fieldname": "shipping_details", 
+  "fieldtype": "Text Editor", 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Trash Reason", 
+  "fieldname": "trash_reason", 
+  "fieldtype": "Small Text", 
+  "permlevel": 1
+ }
 ]
\ No newline at end of file
diff --git a/selling/doctype/sms_center/sms_center.txt b/selling/doctype/sms_center/sms_center.txt
index 7f2aefc..3e608b4 100644
--- a/selling/doctype/sms_center/sms_center.txt
+++ b/selling/doctype/sms_center/sms_center.txt
@@ -1,184 +1,147 @@
-# DocType, SMS Center
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:36:17',
-		'docstatus': 0,
-		'modified': '2012-03-27 14:36:17',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'_last_update': u'1322549700',
-		'allow_attach': 0,
-		'allow_copy': 1,
-		'allow_email': 1,
-		'allow_print': 1,
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'hide_heading': 0,
-		'hide_toolbar': 0,
-		'in_create': 0,
-		'issingle': 1,
-		'menu_index': 4,
-		'module': u'Selling',
-		'name': '__common__',
-		'read_only': 1,
-		'section_style': u'Simple',
-		'server_code_error': u' ',
-		'show_in_menu': 1,
-		'version': 41
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'SMS Center',
-		'parentfield': u'fields',
-		'parenttype': u'DocType',
-		'permlevel': 0
-	},
-
-	# These values are common for all DocPerm
-	{
-		'doctype': u'DocPerm',
-		'name': '__common__',
-		'parent': u'SMS Center',
-		'parentfield': u'permissions',
-		'parenttype': u'DocType',
-		'read': 1,
-		'role': u'System Manager'
-	},
-
-	# DocType, SMS Center
-	{
-		'doctype': 'DocType',
-		'name': u'SMS Center'
-	},
-
-	# DocPerm
-	{
-		'create': 1,
-		'doctype': u'DocPerm',
-		'permlevel': 0,
-		'write': 1
-	},
-
-	# DocPerm
-	{
-		'create': 0,
-		'doctype': u'DocPerm',
-		'permlevel': 1,
-		'write': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'column_break1',
-		'fieldtype': u'Column Break',
-		'width': u'50%'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'send_to',
-		'fieldtype': u'Select',
-		'label': u'Send To',
-		'options': u'\nAll Contact\nAll Customer Contact\nAll Supplier Contact\nAll Sales Partner Contact\nAll Lead (Open)\nAll Employee (Active)\nAll Sales Person',
-		'trigger': u'Client'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'depends_on': u"eval:doc.send_to=='All Customer Contact'",
-		'doctype': u'DocField',
-		'fieldname': u'customer',
-		'fieldtype': u'Link',
-		'label': u'Customer',
-		'options': u'Customer'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'depends_on': u"eval:doc.send_to=='All Supplier Contact'",
-		'doctype': u'DocField',
-		'fieldname': u'supplier',
-		'fieldtype': u'Link',
-		'label': u'Supplier',
-		'options': u'Supplier'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'depends_on': u"eval:doc.send_to=='All Employee (Active)'",
-		'doctype': u'DocField',
-		'fieldname': u'department',
-		'fieldtype': u'Select',
-		'label': u'Department',
-		'options': u'link:Department'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'depends_on': u"eval:doc.send_to=='All Employee (Active)'",
-		'doctype': u'DocField',
-		'fieldname': u'branch',
-		'fieldtype': u'Select',
-		'label': u'Branch',
-		'options': u'link:Branch'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'create_receiver_list',
-		'fieldtype': u'Button',
-		'label': u'Create Receiver List',
-		'options': u'create_receiver_list'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'receiver_list',
-		'fieldtype': u'Code',
-		'label': u'Receiver List'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'column_break9',
-		'fieldtype': u'Column Break',
-		'width': u'50%'
-	},
-
-	# DocField
-	{
-		'description': u'Message greater than 160 character will be splitted into multiple mesage',
-		'doctype': u'DocField',
-		'fieldname': u'message',
-		'fieldtype': u'Text',
-		'label': u'Message',
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'send_sms',
-		'fieldtype': u'Button',
-		'label': u'Send SMS',
-		'options': u'send_sms'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-03-27 14:36:17", 
+  "modified_by": "Administrator", 
+  "modified": "2012-03-27 14:36:17"
+ }, 
+ {
+  "section_style": "Simple", 
+  "allow_attach": 0, 
+  "allow_print": 1, 
+  "module": "Selling", 
+  "doctype": "DocType", 
+  "server_code_error": " ", 
+  "in_create": 0, 
+  "read_only": 1, 
+  "allow_email": 1, 
+  "hide_heading": 0, 
+  "issingle": 1, 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "_last_update": "1322549700", 
+  "show_in_menu": 1, 
+  "version": 41, 
+  "menu_index": 4, 
+  "hide_toolbar": 0, 
+  "allow_copy": 1
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "SMS Center", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "permlevel": 0, 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "SMS Center", 
+  "read": 1, 
+  "doctype": "DocPerm", 
+  "parenttype": "DocType", 
+  "role": "System Manager", 
+  "parentfield": "permissions"
+ }, 
+ {
+  "name": "SMS Center", 
+  "doctype": "DocType"
+ }, 
+ {
+  "write": 1, 
+  "create": 1, 
+  "permlevel": 0, 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "write": 0, 
+  "create": 0, 
+  "permlevel": 1, 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "width": "50%", 
+  "fieldname": "column_break1", 
+  "fieldtype": "Column Break", 
+  "doctype": "DocField"
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Send To", 
+  "trigger": "Client", 
+  "fieldname": "send_to", 
+  "fieldtype": "Select", 
+  "options": "\nAll Contact\nAll Customer Contact\nAll Supplier Contact\nAll Sales Partner Contact\nAll Lead (Open)\nAll Employee (Active)\nAll Sales Person"
+ }, 
+ {
+  "depends_on": "eval:doc.send_to=='All Customer Contact'", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Customer", 
+  "fieldname": "customer", 
+  "fieldtype": "Link", 
+  "options": "Customer"
+ }, 
+ {
+  "depends_on": "eval:doc.send_to=='All Supplier Contact'", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Supplier", 
+  "fieldname": "supplier", 
+  "fieldtype": "Link", 
+  "options": "Supplier"
+ }, 
+ {
+  "depends_on": "eval:doc.send_to=='All Employee (Active)'", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Department", 
+  "fieldname": "department", 
+  "fieldtype": "Select", 
+  "options": "link:Department"
+ }, 
+ {
+  "depends_on": "eval:doc.send_to=='All Employee (Active)'", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Branch", 
+  "fieldname": "branch", 
+  "fieldtype": "Select", 
+  "options": "link:Branch"
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Create Receiver List", 
+  "fieldname": "create_receiver_list", 
+  "fieldtype": "Button", 
+  "options": "create_receiver_list"
+ }, 
+ {
+  "doctype": "DocField", 
+  "fieldname": "receiver_list", 
+  "fieldtype": "Code", 
+  "label": "Receiver List"
+ }, 
+ {
+  "width": "50%", 
+  "fieldname": "column_break9", 
+  "fieldtype": "Column Break", 
+  "doctype": "DocField"
+ }, 
+ {
+  "description": "Message greater than 160 character will be splitted into multiple mesage", 
+  "doctype": "DocField", 
+  "label": "Message", 
+  "fieldname": "message", 
+  "fieldtype": "Text", 
+  "reqd": 1
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Send SMS", 
+  "fieldname": "send_sms", 
+  "fieldtype": "Button", 
+  "options": "send_sms"
+ }
 ]
\ No newline at end of file
diff --git a/selling/page/sales_analytics/sales_analytics.txt b/selling/page/sales_analytics/sales_analytics.txt
index 412d3e9..3e773e4 100644
--- a/selling/page/sales_analytics/sales_analytics.txt
+++ b/selling/page/sales_analytics/sales_analytics.txt
@@ -1,55 +1,40 @@
-# Page, sales-analytics
 [
-
-	# These values are common in all dictionaries
-	{
-		u'creation': '2012-09-21 20:15:12',
-		u'docstatus': 0,
-		u'modified': '2012-10-04 17:17:39',
-		u'modified_by': u'Administrator',
-		u'owner': u'Administrator'
-	},
-
-	# These values are common for all Page
-	{
-		u'doctype': u'Page',
-		'module': u'Selling',
-		u'name': u'__common__',
-		'page_name': u'sales-analytics',
-		'standard': u'Yes',
-		'title': u'Sales Analytics'
-	},
-
-	# These values are common for all Page Role
-	{
-		u'doctype': u'Page Role',
-		u'name': u'__common__',
-		'parent': u'sales-analytics',
-		'parentfield': u'roles',
-		'parenttype': u'Page'
-	},
-
-	# Page, sales-analytics
-	{
-		u'doctype': u'Page',
-		u'name': u'sales-analytics'
-	},
-
-	# Page Role
-	{
-		u'doctype': u'Page Role',
-		'role': u'Analytics'
-	},
-
-	# Page Role
-	{
-		u'doctype': u'Page Role',
-		'role': u'Sales Manager'
-	},
-
-	# Page Role
-	{
-		u'doctype': u'Page Role',
-		'role': u'Maintenance Manager'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-09-21 20:15:12", 
+  "modified_by": "Administrator", 
+  "modified": "2012-10-04 17:17:39"
+ }, 
+ {
+  "name": "__common__", 
+  "title": "Sales Analytics", 
+  "module": "Selling", 
+  "doctype": "Page", 
+  "page_name": "sales-analytics", 
+  "standard": "Yes"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "sales-analytics", 
+  "doctype": "Page Role", 
+  "parenttype": "Page", 
+  "parentfield": "roles"
+ }, 
+ {
+  "name": "sales-analytics", 
+  "doctype": "Page"
+ }, 
+ {
+  "role": "Analytics", 
+  "doctype": "Page Role"
+ }, 
+ {
+  "role": "Sales Manager", 
+  "doctype": "Page Role"
+ }, 
+ {
+  "role": "Maintenance Manager", 
+  "doctype": "Page Role"
+ }
 ]
\ No newline at end of file
diff --git a/selling/page/sales_browser/sales_browser.js b/selling/page/sales_browser/sales_browser.js
index be43e67..8b570d1 100644
--- a/selling/page/sales_browser/sales_browser.js
+++ b/selling/page/sales_browser/sales_browser.js
@@ -154,7 +154,6 @@
 	rename: function() {
 		var node = this.selected_node();
 		wn.model.rename_doc(this.ctype, node.data('label'), function(new_name) {
-			console.log(new_name)
 			node.data('label', new_name).find(".tree-label").html(new_name);
 		});
 	},
diff --git a/selling/page/sales_browser/sales_browser.txt b/selling/page/sales_browser/sales_browser.txt
index a94c7a0..eb212d4 100644
--- a/selling/page/sales_browser/sales_browser.txt
+++ b/selling/page/sales_browser/sales_browser.txt
@@ -1,79 +1,56 @@
-# Page, Sales Browser
 [
-
-	# These values are common in all dictionaries
-	{
-		u'creation': '2012-06-14 15:07:26',
-		u'docstatus': 0,
-		u'modified': '2012-10-04 17:34:55',
-		u'modified_by': u'Administrator',
-		u'owner': u'Administrator'
-	},
-
-	# These values are common for all Page
-	{
-		u'doctype': u'Page',
-		'module': u'Selling',
-		u'name': u'__common__',
-		'page_name': u'Sales Browser',
-		'show_in_menu': 0,
-		'standard': u'Yes'
-	},
-
-	# These values are common for all Page Role
-	{
-		u'doctype': u'Page Role',
-		u'name': u'__common__',
-		'parent': u'Sales Browser',
-		'parentfield': u'roles',
-		'parenttype': u'Page'
-	},
-
-	# Page, Sales Browser
-	{
-		u'doctype': u'Page',
-		u'name': u'Sales Browser'
-	},
-
-	# Page Role
-	{
-		u'doctype': u'Page Role',
-		'role': u'Sales Master Manager'
-	},
-
-	# Page Role
-	{
-		u'doctype': u'Page Role',
-		'role': u'Material Master Manager'
-	},
-
-	# Page Role
-	{
-		u'doctype': u'Page Role',
-		'role': u'Accounts Manager'
-	},
-
-	# Page Role
-	{
-		u'doctype': u'Page Role',
-		'role': u'Sales Master Manager'
-	},
-
-	# Page Role
-	{
-		u'doctype': u'Page Role',
-		'role': u'Purchase Manager'
-	},
-
-	# Page Role
-	{
-		u'doctype': u'Page Role',
-		'role': u'Purchase Master Manager'
-	},
-
-	# Page Role
-	{
-		u'doctype': u'Page Role',
-		'role': u'Material Manager'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-06-14 15:07:26", 
+  "modified_by": "Administrator", 
+  "modified": "2012-10-04 17:34:55"
+ }, 
+ {
+  "name": "__common__", 
+  "module": "Selling", 
+  "show_in_menu": 0, 
+  "page_name": "Sales Browser", 
+  "doctype": "Page", 
+  "standard": "Yes"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Sales Browser", 
+  "doctype": "Page Role", 
+  "parenttype": "Page", 
+  "parentfield": "roles"
+ }, 
+ {
+  "name": "Sales Browser", 
+  "doctype": "Page"
+ }, 
+ {
+  "role": "Sales Master Manager", 
+  "doctype": "Page Role"
+ }, 
+ {
+  "role": "Material Master Manager", 
+  "doctype": "Page Role"
+ }, 
+ {
+  "role": "Accounts Manager", 
+  "doctype": "Page Role"
+ }, 
+ {
+  "role": "Sales Master Manager", 
+  "doctype": "Page Role"
+ }, 
+ {
+  "role": "Purchase Manager", 
+  "doctype": "Page Role"
+ }, 
+ {
+  "role": "Purchase Master Manager", 
+  "doctype": "Page Role"
+ }, 
+ {
+  "role": "Material Manager", 
+  "doctype": "Page Role"
+ }
 ]
\ No newline at end of file
diff --git a/selling/page/selling_home/selling_home.txt b/selling/page/selling_home/selling_home.txt
index e6636a8..9dc3c98 100644
--- a/selling/page/selling_home/selling_home.txt
+++ b/selling/page/selling_home/selling_home.txt
@@ -1,43 +1,32 @@
-# Page, selling-home
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-02-20 15:46:39',
-		'docstatus': 0,
-		'modified': '2012-02-20 15:46:57',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all Page
-	{
-		'doctype': 'Page',
-		'module': u'Selling',
-		'name': '__common__',
-		'page_name': u'selling-home',
-		'standard': u'Yes',
-		'title': u'Selling Home'
-	},
-
-	# These values are common for all Page Role
-	{
-		'doctype': u'Page Role',
-		'name': '__common__',
-		'parent': u'selling-home',
-		'parentfield': u'roles',
-		'parenttype': u'Page',
-		'role': u'All'
-	},
-
-	# Page, selling-home
-	{
-		'doctype': 'Page',
-		'name': u'selling-home'
-	},
-
-	# Page Role
-	{
-		'doctype': u'Page Role'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-02-20 15:46:39", 
+  "modified_by": "Administrator", 
+  "modified": "2012-02-20 15:46:57"
+ }, 
+ {
+  "name": "__common__", 
+  "title": "Selling Home", 
+  "module": "Selling", 
+  "doctype": "Page", 
+  "page_name": "selling-home", 
+  "standard": "Yes"
+ }, 
+ {
+  "parent": "selling-home", 
+  "name": "__common__", 
+  "doctype": "Page Role", 
+  "parenttype": "Page", 
+  "role": "All", 
+  "parentfield": "roles"
+ }, 
+ {
+  "name": "selling-home", 
+  "doctype": "Page"
+ }, 
+ {
+  "doctype": "Page Role"
+ }
 ]
\ No newline at end of file
diff --git a/selling/report/customer_addresses_and_contacts/customer_addresses_and_contacts.txt b/selling/report/customer_addresses_and_contacts/customer_addresses_and_contacts.txt
index 621571d..e5e08a9 100644
--- a/selling/report/customer_addresses_and_contacts/customer_addresses_and_contacts.txt
+++ b/selling/report/customer_addresses_and_contacts/customer_addresses_and_contacts.txt
@@ -1,27 +1,20 @@
-# Report, Customer Addresses and Contacts
 [
-
-	# These values are common in all dictionaries
-	{
-		u'creation': '2012-10-04 17:36:36',
-		u'docstatus': 0,
-		u'modified': '2012-10-04 18:24:07',
-		u'modified_by': u'Administrator',
-		u'owner': u'Administrator'
-	},
-
-	# These values are common for all Report
-	{
-		u'doctype': u'Report',
-		'is_standard': u'Yes',
-		u'name': u'__common__',
-		'query': u'SELECT\n\t`tabCustomer`.name as customer_id,\n\t`tabCustomer`.customer_name,\n\t`tabCustomer`.customer_group,\n\t`tabAddress`.address_line1,\n\t`tabAddress`.address_line2,\n\t`tabAddress`.city,\n\t`tabAddress`.state,\n\t`tabAddress`.pincode,\n\t`tabAddress`.country,\n\t`tabAddress`.is_primary_address, \n\t`tabContact`.first_name,\n\t`tabContact`.last_name,\n\t`tabContact`.phone,\n\t`tabContact`.mobile_no,\n\t`tabContact`.email_id,\n\t`tabContact`.is_primary_contact\nFROM\n\t`tabCustomer`\n\tleft join `tabAddress` on (\n\t\t`tabAddress`.customer=`tabCustomer`.name\n\t)\n\tleft join `tabContact` on (\n\t\t`tabContact`.customer=`tabCustomer`.name\n\t)\nWHERE\n\t`tabCustomer`.docstatus<2\nORDER BY\n\t`tabCustomer`.name asc',
-		'ref_doctype': u'Customer'
-	},
-
-	# Report, Customer Addresses and Contacts
-	{
-		u'doctype': u'Report',
-		u'name': u'Customer Addresses and Contacts'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-10-04 17:36:36", 
+  "modified_by": "Administrator", 
+  "modified": "2012-10-04 18:24:07"
+ }, 
+ {
+  "name": "__common__", 
+  "ref_doctype": "Customer", 
+  "doctype": "Report", 
+  "is_standard": "Yes", 
+  "query": "SELECT\n\t`tabCustomer`.name as customer_id,\n\t`tabCustomer`.customer_name,\n\t`tabCustomer`.customer_group,\n\t`tabAddress`.address_line1,\n\t`tabAddress`.address_line2,\n\t`tabAddress`.city,\n\t`tabAddress`.state,\n\t`tabAddress`.pincode,\n\t`tabAddress`.country,\n\t`tabAddress`.is_primary_address, \n\t`tabContact`.first_name,\n\t`tabContact`.last_name,\n\t`tabContact`.phone,\n\t`tabContact`.mobile_no,\n\t`tabContact`.email_id,\n\t`tabContact`.is_primary_contact\nFROM\n\t`tabCustomer`\n\tleft join `tabAddress` on (\n\t\t`tabAddress`.customer=`tabCustomer`.name\n\t)\n\tleft join `tabContact` on (\n\t\t`tabContact`.customer=`tabCustomer`.name\n\t)\nWHERE\n\t`tabCustomer`.docstatus<2\nORDER BY\n\t`tabCustomer`.name asc"
+ }, 
+ {
+  "name": "Customer Addresses and Contacts", 
+  "doctype": "Report"
+ }
 ]
\ No newline at end of file
diff --git a/selling/search_criteria/delivered_items_to_be_install/delivered_items_to_be_install.txt b/selling/search_criteria/delivered_items_to_be_install/delivered_items_to_be_install.txt
index b3d2359..ab23a29 100644
--- a/selling/search_criteria/delivered_items_to_be_install/delivered_items_to_be_install.txt
+++ b/selling/search_criteria/delivered_items_to_be_install/delivered_items_to_be_install.txt
@@ -1,37 +1,30 @@
-# Search Criteria, delivered_items_to_be_install
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-04-03 12:49:51',
-		'docstatus': 0,
-		'modified': '2012-04-03 12:49:51',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all Search Criteria
-	{
-		'add_col': u"(`tabDelivery Note Item`.`qty`- ifnull(`tabDelivery Note Item`.`installed_qty`, 0)) AS 'Pending to Install'",
-		'add_cond': u'`tabDelivery Note Item`.`qty` > ifnull(`tabDelivery Note Item`.`installed_qty`, 0)',
-		'columns': u'Delivery Note\x01ID,Delivery Note\x01Status,Delivery Note\x01Customer,Delivery Note\x01Customer Name,Delivery Note\x01Contact Person,Delivery Note\x01Voucher Date,Delivery Note Item\x01Item Code,Delivery Note Item\x01Item Name,Delivery Note Item\x01Quantity,Delivery Note Item\x01Installed Qty,Delivery Note\x01% Installed',
-		'criteria_name': u'Delivered Items to be Install',
-		'description': u'Delivered Items to be Install',
-		'doc_type': u'Delivery Note Item',
-		'doctype': 'Search Criteria',
-		'filters': u"{'Delivery Note\x01Saved':1,'Delivery Note\x01Submitted':1,'Delivery Note\x01Status':'','Delivery Note\x01Fiscal Year':''}",
-		'module': u'Selling',
-		'name': '__common__',
-		'page_len': 50,
-		'parent_doc_type': u'Delivery Note',
-		'sort_by': u'`tabDelivery Note`.`name`',
-		'sort_order': u'DESC',
-		'standard': u'Yes'
-	},
-
-	# Search Criteria, delivered_items_to_be_install
-	{
-		'doctype': 'Search Criteria',
-		'name': u'delivered_items_to_be_install'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-04-03 12:49:51", 
+  "modified_by": "Administrator", 
+  "modified": "2012-04-03 12:49:51"
+ }, 
+ {
+  "add_col": "(`tabDelivery Note Item`.`qty`- ifnull(`tabDelivery Note Item`.`installed_qty`, 0)) AS 'Pending to Install'", 
+  "parent_doc_type": "Delivery Note", 
+  "module": "Selling", 
+  "standard": "Yes", 
+  "sort_order": "DESC", 
+  "filters": "{'Delivery Note\u0001Saved':1,'Delivery Note\u0001Submitted':1,'Delivery Note\u0001Status':'','Delivery Note\u0001Fiscal Year':''}", 
+  "description": "Delivered Items to be Install", 
+  "doc_type": "Delivery Note Item", 
+  "name": "__common__", 
+  "add_cond": "`tabDelivery Note Item`.`qty` > ifnull(`tabDelivery Note Item`.`installed_qty`, 0)", 
+  "doctype": "Search Criteria", 
+  "sort_by": "`tabDelivery Note`.`name`", 
+  "page_len": 50, 
+  "criteria_name": "Delivered Items to be Install", 
+  "columns": "Delivery Note\u0001ID,Delivery Note\u0001Status,Delivery Note\u0001Customer,Delivery Note\u0001Customer Name,Delivery Note\u0001Contact Person,Delivery Note\u0001Voucher Date,Delivery Note Item\u0001Item Code,Delivery Note Item\u0001Item Name,Delivery Note Item\u0001Quantity,Delivery Note Item\u0001Installed Qty,Delivery Note\u0001% Installed"
+ }, 
+ {
+  "name": "delivered_items_to_be_install", 
+  "doctype": "Search Criteria"
+ }
 ]
\ No newline at end of file
diff --git a/selling/search_criteria/follow_up_report/follow_up_report.txt b/selling/search_criteria/follow_up_report/follow_up_report.txt
index 56b547f..b789bd9 100644
--- a/selling/search_criteria/follow_up_report/follow_up_report.txt
+++ b/selling/search_criteria/follow_up_report/follow_up_report.txt
@@ -1,34 +1,27 @@
-# Search Criteria, follow-up_report
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-04-03 12:49:51',
-		'docstatus': 0,
-		'modified': '2012-04-03 12:49:51',
-		'modified_by': u'Administrator',
-		'owner': u'ashwini@webnotestech.com'
-	},
-
-	# These values are common for all Search Criteria
-	{
-		'columns': u'Lead\x01ID,Communication Log\x01Date,Communication Log\x01Notes,Communication Log\x01Communication Log type',
-		'criteria_name': u'Follow-up Report',
-		'doc_type': u'Communication Log',
-		'doctype': 'Search Criteria',
-		'filters': u"{'Lead\x01Status':'','Lead\x01Source':'','Lead\x01Lead Type':'','Lead\x01Rating':'','Lead\x01Market Segment':'','Lead\x01Fiscal Year':''}",
-		'module': u'Selling',
-		'name': '__common__',
-		'page_len': 50,
-		'parent_doc_type': u'Lead',
-		'sort_by': u'`tabLead`.`name`',
-		'sort_order': u'DESC',
-		'standard': u'Yes'
-	},
-
-	# Search Criteria, follow-up_report
-	{
-		'doctype': 'Search Criteria',
-		'name': u'follow-up_report'
-	}
+ {
+  "owner": "ashwini@webnotestech.com", 
+  "docstatus": 0, 
+  "creation": "2012-04-03 12:49:51", 
+  "modified_by": "Administrator", 
+  "modified": "2012-04-03 12:49:51"
+ }, 
+ {
+  "parent_doc_type": "Lead", 
+  "module": "Selling", 
+  "standard": "Yes", 
+  "sort_order": "DESC", 
+  "filters": "{'Lead\u0001Status':'','Lead\u0001Source':'','Lead\u0001Lead Type':'','Lead\u0001Rating':'','Lead\u0001Market Segment':'','Lead\u0001Fiscal Year':''}", 
+  "doc_type": "Communication Log", 
+  "name": "__common__", 
+  "doctype": "Search Criteria", 
+  "sort_by": "`tabLead`.`name`", 
+  "page_len": 50, 
+  "criteria_name": "Follow-up Report", 
+  "columns": "Lead\u0001ID,Communication Log\u0001Date,Communication Log\u0001Notes,Communication Log\u0001Communication Log type"
+ }, 
+ {
+  "name": "follow-up_report", 
+  "doctype": "Search Criteria"
+ }
 ]
\ No newline at end of file
diff --git a/selling/search_criteria/gross_profit/gross_profit.txt b/selling/search_criteria/gross_profit/gross_profit.txt
index 1f9cbc7..f726faa 100644
--- a/selling/search_criteria/gross_profit/gross_profit.txt
+++ b/selling/search_criteria/gross_profit/gross_profit.txt
@@ -1,35 +1,28 @@
-# Search Criteria, gross_profit
 [
-
-	# These values are common in all dictionaries
-	{
-		u'creation': '2012-05-14 18:22:18',
-		u'docstatus': 0,
-		u'modified': '2012-09-24 14:11:39',
-		u'modified_by': u'Administrator',
-		u'owner': u'Administrator'
-	},
-
-	# These values are common for all Search Criteria
-	{
-		'columns': u'Delivery Note\x01ID,Delivery Note\x01Posting Date,Delivery Note\x01Posting Time,Delivery Note Item\x01Item Code,Delivery Note Item\x01Item Name,Delivery Note Item\x01Description,Delivery Note Item\x01Warehouse,Delivery Note\x01Project Name,Delivery Note Item\x01Quantity,Delivery Note Item\x01Rate*,Delivery Note Item\x01Amount*',
-		'criteria_name': u'Gross Profit',
-		'description': u'Invoice wise',
-		'doc_type': u'Delivery Note Item',
-		u'doctype': u'Search Criteria',
-		'filters': u'{"Delivery Note\\u0001Submitted":1,"Delivery Note\\u0001Status":[],"Delivery Note\\u0001Fiscal Year":[]}',
-		'module': u'Selling',
-		u'name': u'__common__',
-		'page_len': 50,
-		'parent_doc_type': u'Delivery Note',
-		'sort_by': u'`tabDelivery Note`.`name`',
-		'sort_order': u'DESC',
-		'standard': u'Yes'
-	},
-
-	# Search Criteria, gross_profit
-	{
-		u'doctype': u'Search Criteria',
-		u'name': u'gross_profit'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-05-14 18:22:18", 
+  "modified_by": "Administrator", 
+  "modified": "2012-09-24 14:11:39"
+ }, 
+ {
+  "description": "Invoice wise", 
+  "parent_doc_type": "Delivery Note", 
+  "module": "Selling", 
+  "standard": "Yes", 
+  "sort_order": "DESC", 
+  "filters": "{\"Delivery Note\\u0001Submitted\":1,\"Delivery Note\\u0001Status\":[],\"Delivery Note\\u0001Fiscal Year\":[]}", 
+  "doc_type": "Delivery Note Item", 
+  "name": "__common__", 
+  "doctype": "Search Criteria", 
+  "sort_by": "`tabDelivery Note`.`name`", 
+  "page_len": 50, 
+  "criteria_name": "Gross Profit", 
+  "columns": "Delivery Note\u0001ID,Delivery Note\u0001Posting Date,Delivery Note\u0001Posting Time,Delivery Note Item\u0001Item Code,Delivery Note Item\u0001Item Name,Delivery Note Item\u0001Description,Delivery Note Item\u0001Warehouse,Delivery Note\u0001Project Name,Delivery Note Item\u0001Quantity,Delivery Note Item\u0001Rate*,Delivery Note Item\u0001Amount*"
+ }, 
+ {
+  "name": "gross_profit", 
+  "doctype": "Search Criteria"
+ }
 ]
\ No newline at end of file
diff --git a/selling/search_criteria/itemwise_delivery_details/itemwise_delivery_details.txt b/selling/search_criteria/itemwise_delivery_details/itemwise_delivery_details.txt
index 73b602d..9ba342e 100644
--- a/selling/search_criteria/itemwise_delivery_details/itemwise_delivery_details.txt
+++ b/selling/search_criteria/itemwise_delivery_details/itemwise_delivery_details.txt
@@ -1,34 +1,27 @@
-# Search Criteria, itemwise_delivery_details
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-04-23 12:46:00',
-		'docstatus': 0,
-		'modified': '2012-05-03 18:13:49',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all Search Criteria
-	{
-		'columns': u'Delivery Note\x01ID,Delivery Note Item\x01Item Code,Delivery Note Item\x01Item Name,Delivery Note Item\x01Quantity,Delivery Note Item\x01Rate*,Delivery Note Item\x01Amount*,Delivery Note Item\x01Billed Amt',
-		'criteria_name': u'Itemwise Delivery Details',
-		'doc_type': u'Delivery Note Item',
-		'doctype': 'Search Criteria',
-		'filters': u'{"Delivery Note\\u0001Submitted":1,"Delivery Note\\u0001Status":[""],"Delivery Note\\u0001Fiscal Year":[""]}',
-		'module': u'Selling',
-		'name': '__common__',
-		'page_len': 50,
-		'parent_doc_type': u'Delivery Note',
-		'sort_by': u'`tabDelivery Note`.`name`',
-		'sort_order': u'DESC',
-		'standard': u'Yes'
-	},
-
-	# Search Criteria, itemwise_delivery_details
-	{
-		'doctype': 'Search Criteria',
-		'name': u'itemwise_delivery_details'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-04-23 12:46:00", 
+  "modified_by": "Administrator", 
+  "modified": "2012-05-03 18:13:49"
+ }, 
+ {
+  "parent_doc_type": "Delivery Note", 
+  "module": "Selling", 
+  "standard": "Yes", 
+  "sort_order": "DESC", 
+  "filters": "{\"Delivery Note\\u0001Submitted\":1,\"Delivery Note\\u0001Status\":[\"\"],\"Delivery Note\\u0001Fiscal Year\":[\"\"]}", 
+  "doc_type": "Delivery Note Item", 
+  "name": "__common__", 
+  "doctype": "Search Criteria", 
+  "sort_by": "`tabDelivery Note`.`name`", 
+  "page_len": 50, 
+  "criteria_name": "Itemwise Delivery Details", 
+  "columns": "Delivery Note\u0001ID,Delivery Note Item\u0001Item Code,Delivery Note Item\u0001Item Name,Delivery Note Item\u0001Quantity,Delivery Note Item\u0001Rate*,Delivery Note Item\u0001Amount*,Delivery Note Item\u0001Billed Amt"
+ }, 
+ {
+  "name": "itemwise_delivery_details", 
+  "doctype": "Search Criteria"
+ }
 ]
\ No newline at end of file
diff --git a/selling/search_criteria/itemwise_sales_details/itemwise_sales_details.txt b/selling/search_criteria/itemwise_sales_details/itemwise_sales_details.txt
index fbc4642..7737040 100644
--- a/selling/search_criteria/itemwise_sales_details/itemwise_sales_details.txt
+++ b/selling/search_criteria/itemwise_sales_details/itemwise_sales_details.txt
@@ -1,34 +1,27 @@
-# Search Criteria, itemwise_sales_details
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-04-23 12:46:00',
-		'docstatus': 0,
-		'modified': '2012-05-03 18:18:31',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all Search Criteria
-	{
-		'columns': u'Sales Order\x01ID,Sales Order\x01Customer,Sales Order Item\x01Item Code,Sales Order Item\x01Item Name,Sales Order Item\x01Quantity,Sales Order Item\x01Basic Rate*,Sales Order Item\x01Amount*,Sales Order Item\x01Delivered Qty,Sales Order Item\x01Billed Amt',
-		'criteria_name': u'Itemwise Sales Details',
-		'doc_type': u'Sales Order Item',
-		'doctype': 'Search Criteria',
-		'filters': u'{"Sales Order\\u0001Submitted":1,"Sales Order\\u0001Fiscal Year":[""],"Sales Order\\u0001Status":[""]}',
-		'module': u'Selling',
-		'name': '__common__',
-		'page_len': 50,
-		'parent_doc_type': u'Sales Order',
-		'sort_by': u'`tabSales Order`.`name`',
-		'sort_order': u'DESC',
-		'standard': u'Yes'
-	},
-
-	# Search Criteria, itemwise_sales_details
-	{
-		'doctype': 'Search Criteria',
-		'name': u'itemwise_sales_details'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-04-23 12:46:00", 
+  "modified_by": "Administrator", 
+  "modified": "2012-05-03 18:18:31"
+ }, 
+ {
+  "parent_doc_type": "Sales Order", 
+  "module": "Selling", 
+  "standard": "Yes", 
+  "sort_order": "DESC", 
+  "filters": "{\"Sales Order\\u0001Submitted\":1,\"Sales Order\\u0001Fiscal Year\":[\"\"],\"Sales Order\\u0001Status\":[\"\"]}", 
+  "doc_type": "Sales Order Item", 
+  "name": "__common__", 
+  "doctype": "Search Criteria", 
+  "sort_by": "`tabSales Order`.`name`", 
+  "page_len": 50, 
+  "criteria_name": "Itemwise Sales Details", 
+  "columns": "Sales Order\u0001ID,Sales Order\u0001Customer,Sales Order Item\u0001Item Code,Sales Order Item\u0001Item Name,Sales Order Item\u0001Quantity,Sales Order Item\u0001Basic Rate*,Sales Order Item\u0001Amount*,Sales Order Item\u0001Delivered Qty,Sales Order Item\u0001Billed Amt"
+ }, 
+ {
+  "name": "itemwise_sales_details", 
+  "doctype": "Search Criteria"
+ }
 ]
\ No newline at end of file
diff --git a/selling/search_criteria/lead_to_follow_up/lead_to_follow_up.txt b/selling/search_criteria/lead_to_follow_up/lead_to_follow_up.txt
index 3a5c983..2ddd5e9 100644
--- a/selling/search_criteria/lead_to_follow_up/lead_to_follow_up.txt
+++ b/selling/search_criteria/lead_to_follow_up/lead_to_follow_up.txt
@@ -1,34 +1,27 @@
-# Search Criteria, lead-to_follow_up
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-04-03 12:49:51',
-		'docstatus': 0,
-		'modified': '2012-04-03 12:49:51',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all Search Criteria
-	{
-		'add_cond': u"`tabLead`.status!='Converted' \n`tabLead`.status!='Lead Lost' \n`tabLead`.status!='Not Interested'",
-		'columns': u'Lead\x01ID,Lead\x01Status,Lead\x01Lead Name,Lead\x01Lead Date,Lead\x01Lead Owner,Lead\x01Next Contact Date',
-		'criteria_name': u'Lead-To follow up',
-		'doc_type': u'Lead',
-		'doctype': 'Search Criteria',
-		'filters': u"{'Lead\x01Status':'','Lead\x01Source':'','Lead\x01Expected Month':'','Lead\x01Industry':'','Lead\x01Market Segment':'','Lead\x01Rating':''}",
-		'module': u'Selling',
-		'name': '__common__',
-		'page_len': 50,
-		'sort_by': u'`tabLead`.`name`',
-		'sort_order': u'DESC',
-		'standard': u'Yes'
-	},
-
-	# Search Criteria, lead-to_follow_up
-	{
-		'doctype': 'Search Criteria',
-		'name': u'lead-to_follow_up'
-	}
-]
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-04-03 12:49:51", 
+  "modified_by": "Administrator", 
+  "modified": "2012-04-03 12:49:51"
+ }, 
+ {
+  "module": "Selling", 
+  "standard": "Yes", 
+  "sort_order": "DESC", 
+  "filters": "{'Lead\u0001Status':'','Lead\u0001Source':'','Lead\u0001Expected Month':'','Lead\u0001Industry':'','Lead\u0001Market Segment':'','Lead\u0001Rating':''}", 
+  "doc_type": "Lead", 
+  "name": "__common__", 
+  "add_cond": "`tabLead`.status!='Converted' \n`tabLead`.status!='Lead Lost' \n`tabLead`.status!='Not Interested'", 
+  "doctype": "Search Criteria", 
+  "sort_by": "`tabLead`.`name`", 
+  "page_len": 50, 
+  "criteria_name": "Lead-To follow up", 
+  "columns": "Lead\u0001ID,Lead\u0001Status,Lead\u0001Lead Name,Lead\u0001Lead Date,Lead\u0001Lead Owner,Lead\u0001Next Contact Date"
+ }, 
+ {
+  "name": "lead-to_follow_up", 
+  "doctype": "Search Criteria"
+ }
+]
\ No newline at end of file
diff --git a/selling/search_criteria/opportunity_to_follow_up/opportunity_to_follow_up.txt b/selling/search_criteria/opportunity_to_follow_up/opportunity_to_follow_up.txt
index 3ca813b..b524e6a 100644
--- a/selling/search_criteria/opportunity_to_follow_up/opportunity_to_follow_up.txt
+++ b/selling/search_criteria/opportunity_to_follow_up/opportunity_to_follow_up.txt
@@ -1,34 +1,27 @@
-# Search Criteria, opportunity-to_follow_up
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-30 14:50:44',
-		'docstatus': 0,
-		'modified': '2012-03-30 14:50:44',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all Search Criteria
-	{
-		'add_cond': u"`tabOpportunity`.name=`tabQuotation`.enq_no\n`tabOpportunity`.docstatus=1\n`tabQuotation`.status='Submitted'",
-		'columns': u'Opportunity\x01ID,Opportunity\x01Owner,Opportunity\x01Company,Opportunity\x01Fiscal Year',
-		'criteria_name': u'Opportunity-To follow up',
-		'doc_type': u'Opportunity',
-		'doctype': 'Search Criteria',
-		'filters': u"{'Opportunity\x01Fiscal Year':''}",
-		'module': u'Selling',
-		'name': '__common__',
-		'page_len': 50,
-		'sort_by': u'`tabOpportunity`.`name`',
-		'sort_order': u'DESC',
-		'standard': u'Yes'
-	},
-
-	# Search Criteria, opportunity-to_follow_up
-	{
-		'doctype': 'Search Criteria',
-		'name': u'opportunity-to_follow_up'
-	}
-]
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-03-30 14:50:44", 
+  "modified_by": "Administrator", 
+  "modified": "2012-03-30 14:50:44"
+ }, 
+ {
+  "module": "Selling", 
+  "standard": "Yes", 
+  "sort_order": "DESC", 
+  "filters": "{'Opportunity\u0001Fiscal Year':''}", 
+  "doc_type": "Opportunity", 
+  "name": "__common__", 
+  "add_cond": "`tabOpportunity`.name=`tabQuotation`.enq_no\n`tabOpportunity`.docstatus=1\n`tabQuotation`.status='Submitted'", 
+  "doctype": "Search Criteria", 
+  "sort_by": "`tabOpportunity`.`name`", 
+  "page_len": 50, 
+  "criteria_name": "Opportunity-To follow up", 
+  "columns": "Opportunity\u0001ID,Opportunity\u0001Owner,Opportunity\u0001Company,Opportunity\u0001Fiscal Year"
+ }, 
+ {
+  "name": "opportunity-to_follow_up", 
+  "doctype": "Search Criteria"
+ }
+]
\ No newline at end of file
diff --git a/selling/search_criteria/sales_order_pending_items/sales_order_pending_items.txt b/selling/search_criteria/sales_order_pending_items/sales_order_pending_items.txt
index fc9f7bb..ab5a1f8 100644
--- a/selling/search_criteria/sales_order_pending_items/sales_order_pending_items.txt
+++ b/selling/search_criteria/sales_order_pending_items/sales_order_pending_items.txt
@@ -1,37 +1,30 @@
-# Search Criteria, sales_order_pending_items
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-05-14 14:54:44',
-		'docstatus': 0,
-		'modified': '2012-05-18 11:15:00',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all Search Criteria
-	{
-		'add_col': u'(`tabSales Order Item`.qty - ifnull(`tabSales Order Item`.delivered_qty, 0)) AS "Qty To Deliver"\n(`tabSales Order Item`.qty - ifnull(`tabSales Order Item`.delivered_qty, 0))*`tabSales Order Item`.basic_rate AS "Amount To Deliver"\n(`tabSales Order Item`.qty - ifnull(`tabSales Order Item`.billed_qty, 0))*`tabSales Order Item`.basic_rate AS "Amount To Bill"',
-		'add_cond': u'(`tabSales Order Item`.qty - ifnull(`tabSales Order Item`.delivered_qty, 0) > 0 or `tabSales Order Item`.qty - ifnull(`tabSales Order Item`.billed_qty, 0) > 0)\n`tabSales Order`.status != "Stopped"',
-		'columns': u'Sales Order\x01ID,Sales Order\x01Sales Order Date,Sales Order\x01Customer,Sales Order Item\x01Item Code,Sales Order Item\x01Item Name,Sales Order Item\x01Description,Sales Order Item\x01Quantity,Sales Order Item\x01Delivered Qty',
-		'criteria_name': u'Sales Order Pending Items',
-		'description': u'Sales Order Pending Items',
-		'doc_type': u'Sales Order Item',
-		'doctype': 'Search Criteria',
-		'filters': u'{"Sales Order\\u0001Submitted":1,"Sales Order\\u0001Fiscal Year":[],"Sales Order\\u0001Status":[]}',
-		'module': u'Selling',
-		'name': '__common__',
-		'page_len': 50,
-		'parent_doc_type': u'Sales Order',
-		'sort_by': u'`tabSales Order`.`name`',
-		'sort_order': u'DESC',
-		'standard': u'Yes'
-	},
-
-	# Search Criteria, sales_order_pending_items
-	{
-		'doctype': 'Search Criteria',
-		'name': u'sales_order_pending_items'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-05-14 14:54:44", 
+  "modified_by": "Administrator", 
+  "modified": "2012-05-18 11:15:00"
+ }, 
+ {
+  "add_col": "(`tabSales Order Item`.qty - ifnull(`tabSales Order Item`.delivered_qty, 0)) AS \"Qty To Deliver\"\n(`tabSales Order Item`.qty - ifnull(`tabSales Order Item`.delivered_qty, 0))*`tabSales Order Item`.basic_rate AS \"Amount To Deliver\"\n(`tabSales Order Item`.qty - ifnull(`tabSales Order Item`.billed_qty, 0))*`tabSales Order Item`.basic_rate AS \"Amount To Bill\"", 
+  "parent_doc_type": "Sales Order", 
+  "module": "Selling", 
+  "standard": "Yes", 
+  "sort_order": "DESC", 
+  "filters": "{\"Sales Order\\u0001Submitted\":1,\"Sales Order\\u0001Fiscal Year\":[],\"Sales Order\\u0001Status\":[]}", 
+  "description": "Sales Order Pending Items", 
+  "doc_type": "Sales Order Item", 
+  "name": "__common__", 
+  "add_cond": "(`tabSales Order Item`.qty - ifnull(`tabSales Order Item`.delivered_qty, 0) > 0 or `tabSales Order Item`.qty - ifnull(`tabSales Order Item`.billed_qty, 0) > 0)\n`tabSales Order`.status != \"Stopped\"", 
+  "doctype": "Search Criteria", 
+  "sort_by": "`tabSales Order`.`name`", 
+  "page_len": 50, 
+  "criteria_name": "Sales Order Pending Items", 
+  "columns": "Sales Order\u0001ID,Sales Order\u0001Sales Order Date,Sales Order\u0001Customer,Sales Order Item\u0001Item Code,Sales Order Item\u0001Item Name,Sales Order Item\u0001Description,Sales Order Item\u0001Quantity,Sales Order Item\u0001Delivered Qty"
+ }, 
+ {
+  "name": "sales_order_pending_items", 
+  "doctype": "Search Criteria"
+ }
 ]
\ No newline at end of file
diff --git a/selling/search_criteria/sales_orderwise_booking_&_delivery_summary/sales_orderwise_booking_&_delivery_summary.txt b/selling/search_criteria/sales_orderwise_booking_&_delivery_summary/sales_orderwise_booking_&_delivery_summary.txt
index fa03e9f..9050204 100644
--- a/selling/search_criteria/sales_orderwise_booking_&_delivery_summary/sales_orderwise_booking_&_delivery_summary.txt
+++ b/selling/search_criteria/sales_orderwise_booking_&_delivery_summary/sales_orderwise_booking_&_delivery_summary.txt
@@ -1,37 +1,30 @@
-# Search Criteria, sales_orderwise_booking_&_delivery_summary
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-04-03 12:49:52',
-		'docstatus': 0,
-		'modified': '2012-04-03 12:49:52',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all Search Criteria
-	{
-		'add_col': u"SUM(CASE WHEN `tabSales Order`.`status` = 'Stopped' THEN (`tabSales Order Item`.`delivered_qty` * `tabSales Order Item`.`basic_rate`) ELSE (`tabSales Order Item`.`qty` * `tabSales Order Item`.`basic_rate`) END) AS 'Booking Total'\nSUM(`tabSales Order Item`.`delivered_qty` * `tabSales Order Item`.`basic_rate`) AS 'Delivered Amount'",
-		'columns': u'Sales Order\x01ID,Sales Order\x01Status,Sales Order\x01% Billed,Sales Order\x01Sales Order Date,Sales Order\x01Customer,Sales Order\x01Customer Name,Sales Order\x01Territory',
-		'criteria_name': u'Sales Orderwise Booking & Delivery Summary',
-		'description': u'Sales Orderwise Booking & Delivery Summary',
-		'doc_type': u'Sales Order Item',
-		'doctype': 'Search Criteria',
-		'filters': u"{'Sales Order\x01Submitted':1,'Sales Order\x01Status':'','Sales Order\x01Fiscal Year':''}",
-		'group_by': u'`tabSales Order`.`name`',
-		'module': u'Selling',
-		'name': '__common__',
-		'page_len': 50,
-		'parent_doc_type': u'Sales Order',
-		'sort_by': u'`tabSales Order`.`name`',
-		'sort_order': u'DESC',
-		'standard': u'Yes'
-	},
-
-	# Search Criteria, sales_orderwise_booking_&_delivery_summary
-	{
-		'doctype': 'Search Criteria',
-		'name': u'sales_orderwise_booking_&_delivery_summary'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-04-03 12:49:52", 
+  "modified_by": "Administrator", 
+  "modified": "2012-04-03 12:49:52"
+ }, 
+ {
+  "add_col": "SUM(CASE WHEN `tabSales Order`.`status` = 'Stopped' THEN (`tabSales Order Item`.`delivered_qty` * `tabSales Order Item`.`basic_rate`) ELSE (`tabSales Order Item`.`qty` * `tabSales Order Item`.`basic_rate`) END) AS 'Booking Total'\nSUM(`tabSales Order Item`.`delivered_qty` * `tabSales Order Item`.`basic_rate`) AS 'Delivered Amount'", 
+  "parent_doc_type": "Sales Order", 
+  "module": "Selling", 
+  "standard": "Yes", 
+  "sort_order": "DESC", 
+  "filters": "{'Sales Order\u0001Submitted':1,'Sales Order\u0001Status':'','Sales Order\u0001Fiscal Year':''}", 
+  "description": "Sales Orderwise Booking & Delivery Summary", 
+  "doc_type": "Sales Order Item", 
+  "name": "__common__", 
+  "doctype": "Search Criteria", 
+  "sort_by": "`tabSales Order`.`name`", 
+  "group_by": "`tabSales Order`.`name`", 
+  "page_len": 50, 
+  "criteria_name": "Sales Orderwise Booking & Delivery Summary", 
+  "columns": "Sales Order\u0001ID,Sales Order\u0001Status,Sales Order\u0001% Billed,Sales Order\u0001Sales Order Date,Sales Order\u0001Customer,Sales Order\u0001Customer Name,Sales Order\u0001Territory"
+ }, 
+ {
+  "name": "sales_orderwise_booking_&_delivery_summary", 
+  "doctype": "Search Criteria"
+ }
 ]
\ No newline at end of file
diff --git a/selling/search_criteria/sales_orderwise_pending_amount_to_bill/sales_orderwise_pending_amount_to_bill.txt b/selling/search_criteria/sales_orderwise_pending_amount_to_bill/sales_orderwise_pending_amount_to_bill.txt
index 6b61745..1a8d19b 100644
--- a/selling/search_criteria/sales_orderwise_pending_amount_to_bill/sales_orderwise_pending_amount_to_bill.txt
+++ b/selling/search_criteria/sales_orderwise_pending_amount_to_bill/sales_orderwise_pending_amount_to_bill.txt
@@ -1,38 +1,31 @@
-# Search Criteria, sales_orderwise_pending_amount_to_bill
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-04-03 12:49:52',
-		'docstatus': 0,
-		'modified': '2012-04-03 12:49:52',
-		'modified_by': u'Administrator',
-		'owner': u'dhanalekshmi@webnotestech.com'
-	},
-
-	# These values are common for all Search Criteria
-	{
-		'add_col': u'SUM((`tabSales Order Item`.`qty` - ifnull(`tabSales Order Item`.`billed_qty`, 0)) * `tabSales Order Item`.`basic_rate`) AS "Pending Amount"',
-		'add_cond': u'`tabSales Order`.status != "Stopped"\n`tabSales Order`.order_type!="Maintenance"',
-		'columns': u'Sales Order\x01ID,Sales Order\x01Customer,Sales Order\x01Customer Address,Sales Order\x01Status,Sales Order\x01%  Delivered,Sales Order\x01% Billed,Sales Order\x01Company Name,Sales Order\x01Sales Order Date,Sales Order\x01Net Total,Sales Order\x01Zone,Sales Order\x01Territory,Sales Order\x01Email Id',
-		'criteria_name': u'Sales Orderwise Pending Amount To Bill',
-		'description': u'Sales Orderwise Pending Amount To Bill',
-		'doc_type': u'Sales Order Item',
-		'doctype': 'Search Criteria',
-		'filters': u"{'Sales Order\x01Saved':1,'Sales Order\x01Submitted':1,'Sales Order\x01Company Name':'','Sales Order\x01Fiscal Year':''}",
-		'group_by': u'`tabSales Order`.`name`',
-		'module': u'Selling',
-		'name': '__common__',
-		'page_len': 50,
-		'parent_doc_type': u'Sales Order',
-		'sort_by': u'`tabSales Order`.`name`',
-		'sort_order': u'DESC',
-		'standard': u'Yes'
-	},
-
-	# Search Criteria, sales_orderwise_pending_amount_to_bill
-	{
-		'doctype': 'Search Criteria',
-		'name': u'sales_orderwise_pending_amount_to_bill'
-	}
+ {
+  "owner": "dhanalekshmi@webnotestech.com", 
+  "docstatus": 0, 
+  "creation": "2012-04-03 12:49:52", 
+  "modified_by": "Administrator", 
+  "modified": "2012-04-03 12:49:52"
+ }, 
+ {
+  "add_col": "SUM((`tabSales Order Item`.`qty` - ifnull(`tabSales Order Item`.`billed_qty`, 0)) * `tabSales Order Item`.`basic_rate`) AS \"Pending Amount\"", 
+  "parent_doc_type": "Sales Order", 
+  "module": "Selling", 
+  "standard": "Yes", 
+  "sort_order": "DESC", 
+  "filters": "{'Sales Order\u0001Saved':1,'Sales Order\u0001Submitted':1,'Sales Order\u0001Company Name':'','Sales Order\u0001Fiscal Year':''}", 
+  "description": "Sales Orderwise Pending Amount To Bill", 
+  "doc_type": "Sales Order Item", 
+  "name": "__common__", 
+  "add_cond": "`tabSales Order`.status != \"Stopped\"\n`tabSales Order`.order_type!=\"Maintenance\"", 
+  "doctype": "Search Criteria", 
+  "sort_by": "`tabSales Order`.`name`", 
+  "group_by": "`tabSales Order`.`name`", 
+  "page_len": 50, 
+  "criteria_name": "Sales Orderwise Pending Amount To Bill", 
+  "columns": "Sales Order\u0001ID,Sales Order\u0001Customer,Sales Order\u0001Customer Address,Sales Order\u0001Status,Sales Order\u0001%  Delivered,Sales Order\u0001% Billed,Sales Order\u0001Company Name,Sales Order\u0001Sales Order Date,Sales Order\u0001Net Total,Sales Order\u0001Zone,Sales Order\u0001Territory,Sales Order\u0001Email Id"
+ }, 
+ {
+  "name": "sales_orderwise_pending_amount_to_bill", 
+  "doctype": "Search Criteria"
+ }
 ]
\ No newline at end of file
diff --git a/selling/search_criteria/sales_orderwise_pending_qty_to_deliver/sales_orderwise_pending_qty_to_deliver.txt b/selling/search_criteria/sales_orderwise_pending_qty_to_deliver/sales_orderwise_pending_qty_to_deliver.txt
index 7a73d4a..d9b1581 100644
--- a/selling/search_criteria/sales_orderwise_pending_qty_to_deliver/sales_orderwise_pending_qty_to_deliver.txt
+++ b/selling/search_criteria/sales_orderwise_pending_qty_to_deliver/sales_orderwise_pending_qty_to_deliver.txt
@@ -1,38 +1,31 @@
-# Search Criteria, sales_orderwise_pending_qty_to_deliver
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-04-03 12:49:52',
-		'docstatus': 0,
-		'modified': '2012-04-03 12:49:52',
-		'modified_by': u'Administrator',
-		'owner': u'dhanalekshmi@webnotestech.com'
-	},
-
-	# These values are common for all Search Criteria
-	{
-		'add_col': u'SUM(`tabSales Order Item`.`qty` - ifnull(`tabSales Order Item`.`delivered_qty`, 0)) AS "Pending Qty"',
-		'add_cond': u'`tabSales Order`.status != "Stopped"\n`tabSales Order Item`.`qty` > ifnull(`tabSales Order Item`.`delivered_qty`, 0)',
-		'columns': u'Sales Order\x01ID,Sales Order\x01Customer,Sales Order\x01Customer Name,Sales Order\x01Customer Address,Sales Order\x01Status,Sales Order\x01%  Delivered,Sales Order\x01% Billed,Sales Order\x01Sales Order Date,Sales Order\x01Territory,Sales Order\x01Email Id',
-		'criteria_name': u'Sales Orderwise Pending Qty To Deliver',
-		'description': u'Sales Orderwise Pending Qty To Deliver',
-		'doc_type': u'Sales Order Item',
-		'doctype': 'Search Criteria',
-		'filters': u"{'Sales Order\x01Saved':1,'Sales Order\x01Submitted':1,'Sales Order\x01Status':'','Sales Order\x01Fiscal Year':''}",
-		'group_by': u'`tabSales Order`.`name`',
-		'module': u'Selling',
-		'name': '__common__',
-		'page_len': 50,
-		'parent_doc_type': u'Sales Order',
-		'sort_by': u'`tabSales Order`.`name`',
-		'sort_order': u'DESC',
-		'standard': u'Yes'
-	},
-
-	# Search Criteria, sales_orderwise_pending_qty_to_deliver
-	{
-		'doctype': 'Search Criteria',
-		'name': u'sales_orderwise_pending_qty_to_deliver'
-	}
+ {
+  "owner": "dhanalekshmi@webnotestech.com", 
+  "docstatus": 0, 
+  "creation": "2012-04-03 12:49:52", 
+  "modified_by": "Administrator", 
+  "modified": "2012-04-03 12:49:52"
+ }, 
+ {
+  "add_col": "SUM(`tabSales Order Item`.`qty` - ifnull(`tabSales Order Item`.`delivered_qty`, 0)) AS \"Pending Qty\"", 
+  "parent_doc_type": "Sales Order", 
+  "module": "Selling", 
+  "standard": "Yes", 
+  "sort_order": "DESC", 
+  "filters": "{'Sales Order\u0001Saved':1,'Sales Order\u0001Submitted':1,'Sales Order\u0001Status':'','Sales Order\u0001Fiscal Year':''}", 
+  "description": "Sales Orderwise Pending Qty To Deliver", 
+  "doc_type": "Sales Order Item", 
+  "name": "__common__", 
+  "add_cond": "`tabSales Order`.status != \"Stopped\"\n`tabSales Order Item`.`qty` > ifnull(`tabSales Order Item`.`delivered_qty`, 0)", 
+  "doctype": "Search Criteria", 
+  "sort_by": "`tabSales Order`.`name`", 
+  "group_by": "`tabSales Order`.`name`", 
+  "page_len": 50, 
+  "criteria_name": "Sales Orderwise Pending Qty To Deliver", 
+  "columns": "Sales Order\u0001ID,Sales Order\u0001Customer,Sales Order\u0001Customer Name,Sales Order\u0001Customer Address,Sales Order\u0001Status,Sales Order\u0001%  Delivered,Sales Order\u0001% Billed,Sales Order\u0001Sales Order Date,Sales Order\u0001Territory,Sales Order\u0001Email Id"
+ }, 
+ {
+  "name": "sales_orderwise_pending_qty_to_deliver", 
+  "doctype": "Search Criteria"
+ }
 ]
\ No newline at end of file
diff --git a/selling/search_criteria/sales_persons_target_variance_item_group_wise/sales_persons_target_variance_item_group_wise.txt b/selling/search_criteria/sales_persons_target_variance_item_group_wise/sales_persons_target_variance_item_group_wise.txt
index f001b70..5535182 100644
--- a/selling/search_criteria/sales_persons_target_variance_item_group_wise/sales_persons_target_variance_item_group_wise.txt
+++ b/selling/search_criteria/sales_persons_target_variance_item_group_wise/sales_persons_target_variance_item_group_wise.txt
@@ -1,33 +1,26 @@
-# Search Criteria, sales_persons_target_variance_item_group_wise
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-04-03 12:49:52',
-		'docstatus': 0,
-		'modified': '2012-04-03 12:49:52',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all Search Criteria
-	{
-		'criteria_name': u'Sales Persons Target Variance (Item Group wise)',
-		'doc_type': u'Target Detail',
-		'doctype': 'Search Criteria',
-		'filters': u"{'Sales Person\x01Country':'','Sales Person\x01State':'','Target Detail\x01Fiscal Year':''}",
-		'module': u'Selling',
-		'name': '__common__',
-		'page_len': 50,
-		'parent_doc_type': u'Sales Person',
-		'sort_by': u'`tabTarget Detail`.`target_amount`',
-		'sort_order': u'DESC',
-		'standard': u'Yes'
-	},
-
-	# Search Criteria, sales_persons_target_variance_item_group_wise
-	{
-		'doctype': 'Search Criteria',
-		'name': u'sales_persons_target_variance_item_group_wise'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-04-03 12:49:52", 
+  "modified_by": "Administrator", 
+  "modified": "2012-04-03 12:49:52"
+ }, 
+ {
+  "parent_doc_type": "Sales Person", 
+  "module": "Selling", 
+  "doctype": "Search Criteria", 
+  "sort_order": "DESC", 
+  "filters": "{'Sales Person\u0001Country':'','Sales Person\u0001State':'','Target Detail\u0001Fiscal Year':''}", 
+  "standard": "Yes", 
+  "doc_type": "Target Detail", 
+  "name": "__common__", 
+  "sort_by": "`tabTarget Detail`.`target_amount`", 
+  "page_len": 50, 
+  "criteria_name": "Sales Persons Target Variance (Item Group wise)"
+ }, 
+ {
+  "name": "sales_persons_target_variance_item_group_wise", 
+  "doctype": "Search Criteria"
+ }
 ]
\ No newline at end of file
diff --git a/selling/search_criteria/sales_personwise_transaction_summary/sales_personwise_transaction_summary.txt b/selling/search_criteria/sales_personwise_transaction_summary/sales_personwise_transaction_summary.txt
index 2ca30f7..5f29981 100755
--- a/selling/search_criteria/sales_personwise_transaction_summary/sales_personwise_transaction_summary.txt
+++ b/selling/search_criteria/sales_personwise_transaction_summary/sales_personwise_transaction_summary.txt
@@ -1,33 +1,26 @@
-# Search Criteria, sales_personwise_transaction_summary
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-04-03 12:49:52',
-		'docstatus': 0,
-		'modified': '2012-04-03 12:49:52',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all Search Criteria
-	{
-		'columns': u'Sales Person\x01ID',
-		'criteria_name': u'Sales Personwise Transaction Summary',
-		'doc_type': u'Sales Person',
-		'doctype': 'Search Criteria',
-		'filters': u"{'Sales Person\x01Saved':1,'Sales Person\x01Submitted':1,'Sales Person\x01Country':'','Sales Person\x01State':''}",
-		'module': u'Selling',
-		'name': '__common__',
-		'page_len': 50,
-		'sort_by': u'`tabSales Person`.`name`',
-		'sort_order': u'DESC',
-		'standard': u'Yes'
-	},
-
-	# Search Criteria, sales_personwise_transaction_summary
-	{
-		'doctype': 'Search Criteria',
-		'name': u'sales_personwise_transaction_summary'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-04-03 12:49:52", 
+  "modified_by": "Administrator", 
+  "modified": "2012-04-03 12:49:52"
+ }, 
+ {
+  "module": "Selling", 
+  "standard": "Yes", 
+  "sort_order": "DESC", 
+  "filters": "{'Sales Person\u0001Saved':1,'Sales Person\u0001Submitted':1,'Sales Person\u0001Country':'','Sales Person\u0001State':''}", 
+  "doctype": "Search Criteria", 
+  "doc_type": "Sales Person", 
+  "name": "__common__", 
+  "sort_by": "`tabSales Person`.`name`", 
+  "page_len": 50, 
+  "criteria_name": "Sales Personwise Transaction Summary", 
+  "columns": "Sales Person\u0001ID"
+ }, 
+ {
+  "name": "sales_personwise_transaction_summary", 
+  "doctype": "Search Criteria"
+ }
 ]
\ No newline at end of file
diff --git a/selling/search_criteria/serial_no_amc_expiring_this_month/serial_no_amc_expiring_this_month.txt b/selling/search_criteria/serial_no_amc_expiring_this_month/serial_no_amc_expiring_this_month.txt
index 1f30322..463d077 100644
--- a/selling/search_criteria/serial_no_amc_expiring_this_month/serial_no_amc_expiring_this_month.txt
+++ b/selling/search_criteria/serial_no_amc_expiring_this_month/serial_no_amc_expiring_this_month.txt
@@ -1,34 +1,27 @@
-# Search Criteria, serial_no-amc_expiring_this_month
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-04-03 12:49:52',
-		'docstatus': 0,
-		'modified': '2012-04-03 12:49:52',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all Search Criteria
-	{
-		'add_cond': u'`tab Serial No`.month(amc_expiry_date)=month(now()) \n`tab Serial No`.year(amc_expiry_date)=year(now())',
-		'columns': u'Serial No\x01ID,Serial No\x01Status,Serial No\x01AMC Expiry Date,Serial No\x01Customer Name',
-		'criteria_name': u'Serial No-AMC expiring this month',
-		'doc_type': u'Serial No',
-		'doctype': 'Search Criteria',
-		'filters': u"{'Serial No\x01Saved':1,'Serial No\x01Submitted':1,'Serial No\x01Status':'','Serial No\x01Warranty Status':''}",
-		'module': u'Selling',
-		'name': '__common__',
-		'page_len': 50,
-		'sort_by': u'`tabSerial No`.`name`',
-		'sort_order': u'DESC',
-		'standard': u'Yes'
-	},
-
-	# Search Criteria, serial_no-amc_expiring_this_month
-	{
-		'doctype': 'Search Criteria',
-		'name': u'serial_no-amc_expiring_this_month'
-	}
-]
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-04-03 12:49:52", 
+  "modified_by": "Administrator", 
+  "modified": "2012-04-03 12:49:52"
+ }, 
+ {
+  "module": "Selling", 
+  "standard": "Yes", 
+  "sort_order": "DESC", 
+  "filters": "{'Serial No\u0001Saved':1,'Serial No\u0001Submitted':1,'Serial No\u0001Status':'','Serial No\u0001Warranty Status':''}", 
+  "doc_type": "Serial No", 
+  "name": "__common__", 
+  "add_cond": "`tab Serial No`.month(amc_expiry_date)=month(now()) \n`tab Serial No`.year(amc_expiry_date)=year(now())", 
+  "doctype": "Search Criteria", 
+  "sort_by": "`tabSerial No`.`name`", 
+  "page_len": 50, 
+  "criteria_name": "Serial No-AMC expiring this month", 
+  "columns": "Serial No\u0001ID,Serial No\u0001Status,Serial No\u0001AMC Expiry Date,Serial No\u0001Customer Name"
+ }, 
+ {
+  "name": "serial_no-amc_expiring_this_month", 
+  "doctype": "Search Criteria"
+ }
+]
\ No newline at end of file
diff --git a/selling/search_criteria/serial_no_warranty_expiring_this_month/serial_no_warranty_expiring_this_month.txt b/selling/search_criteria/serial_no_warranty_expiring_this_month/serial_no_warranty_expiring_this_month.txt
index 63c3e74..05a9f0f 100644
--- a/selling/search_criteria/serial_no_warranty_expiring_this_month/serial_no_warranty_expiring_this_month.txt
+++ b/selling/search_criteria/serial_no_warranty_expiring_this_month/serial_no_warranty_expiring_this_month.txt
@@ -1,34 +1,27 @@
-# Search Criteria, serial_no-warranty_expiring_this_month
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-04-03 12:49:52',
-		'docstatus': 0,
-		'modified': '2012-04-03 12:49:52',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all Search Criteria
-	{
-		'add_cond': u"`tab Serial No`.docstatus!=2\n`tab Serial No`.maintenance_status='Under Warranty'\n`tab Serial No`.status!='Scrapped'\n`tab Serial No`.status!='Not in Use'\n`tab Serial No`.month(ifnull(warranty_expiry_date,0)) = month(now()) \n`tab Serial No`.yearmonth(ifnull(warranty_expiry_date,0)) = year(now())",
-		'columns': u'Serial No\x01ID,Serial No\x01Status,Serial No\x01Warranty Expiry Date,Serial No\x01Customer Name',
-		'criteria_name': u'Serial No-Warranty expiring this month',
-		'doc_type': u'Serial No',
-		'doctype': 'Search Criteria',
-		'filters': u"{'Serial No\x01Saved':1,'Serial No\x01Submitted':1,'Serial No\x01Status':'Issued','Serial No\x01Maintenance Status':''}",
-		'module': u'Selling',
-		'name': '__common__',
-		'page_len': 50,
-		'sort_by': u'`tabSerial No`.`name`',
-		'sort_order': u'DESC',
-		'standard': u'Yes'
-	},
-
-	# Search Criteria, serial_no-warranty_expiring_this_month
-	{
-		'doctype': 'Search Criteria',
-		'name': u'serial_no-warranty_expiring_this_month'
-	}
-]
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-04-03 12:49:52", 
+  "modified_by": "Administrator", 
+  "modified": "2012-04-03 12:49:52"
+ }, 
+ {
+  "module": "Selling", 
+  "standard": "Yes", 
+  "sort_order": "DESC", 
+  "filters": "{'Serial No\u0001Saved':1,'Serial No\u0001Submitted':1,'Serial No\u0001Status':'Issued','Serial No\u0001Maintenance Status':''}", 
+  "doc_type": "Serial No", 
+  "name": "__common__", 
+  "add_cond": "`tab Serial No`.docstatus!=2\n`tab Serial No`.maintenance_status='Under Warranty'\n`tab Serial No`.status!='Scrapped'\n`tab Serial No`.status!='Not in Use'\n`tab Serial No`.month(ifnull(warranty_expiry_date,0)) = month(now()) \n`tab Serial No`.yearmonth(ifnull(warranty_expiry_date,0)) = year(now())", 
+  "doctype": "Search Criteria", 
+  "sort_by": "`tabSerial No`.`name`", 
+  "page_len": 50, 
+  "criteria_name": "Serial No-Warranty expiring this month", 
+  "columns": "Serial No\u0001ID,Serial No\u0001Status,Serial No\u0001Warranty Expiry Date,Serial No\u0001Customer Name"
+ }, 
+ {
+  "name": "serial_no-warranty_expiring_this_month", 
+  "doctype": "Search Criteria"
+ }
+]
\ No newline at end of file
diff --git a/selling/search_criteria/target_variance_report/target_variance_report.txt b/selling/search_criteria/target_variance_report/target_variance_report.txt
index 06ed049..c892366 100644
--- a/selling/search_criteria/target_variance_report/target_variance_report.txt
+++ b/selling/search_criteria/target_variance_report/target_variance_report.txt
@@ -1,34 +1,27 @@
-# Search Criteria, target_variance_report
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-04-03 12:49:53',
-		'docstatus': 0,
-		'modified': '2012-04-03 12:49:53',
-		'modified_by': u'Administrator',
-		'owner': u'harshada@webnotestech.com'
-	},
-
-	# These values are common for all Search Criteria
-	{
-		'columns': u'Sales Person\x01ID,Sales Person\x01Owner,Sales Person\x01Sales Person,Sales Person\x01Country,Sales Person\x01State,Target Detail\x01Item Group,Target Detail\x01Fiscal Year,Target Detail\x01Target  Amount',
-		'criteria_name': u'Target Variance Report',
-		'disabled': 0,
-		'doc_type': u'Target Detail',
-		'doctype': 'Search Criteria',
-		'filters': u"{'Sales Person\x01Saved':1,'Sales Person\x01Submitted':1,'Sales Person\x01Country':'','Sales Person\x01State':'','Target Detail\x01Fiscal Year':''}",
-		'module': u'Selling',
-		'name': '__common__',
-		'page_len': 50,
-		'parent_doc_type': u'Sales Person',
-		'sort_order': u'DESC',
-		'standard': u'Yes'
-	},
-
-	# Search Criteria, target_variance_report
-	{
-		'doctype': 'Search Criteria',
-		'name': u'target_variance_report'
-	}
+ {
+  "owner": "harshada@webnotestech.com", 
+  "docstatus": 0, 
+  "creation": "2012-04-03 12:49:53", 
+  "modified_by": "Administrator", 
+  "modified": "2012-04-03 12:49:53"
+ }, 
+ {
+  "parent_doc_type": "Sales Person", 
+  "module": "Selling", 
+  "standard": "Yes", 
+  "disabled": 0, 
+  "sort_order": "DESC", 
+  "filters": "{'Sales Person\u0001Saved':1,'Sales Person\u0001Submitted':1,'Sales Person\u0001Country':'','Sales Person\u0001State':'','Target Detail\u0001Fiscal Year':''}", 
+  "doc_type": "Target Detail", 
+  "name": "__common__", 
+  "doctype": "Search Criteria", 
+  "page_len": 50, 
+  "criteria_name": "Target Variance Report", 
+  "columns": "Sales Person\u0001ID,Sales Person\u0001Owner,Sales Person\u0001Sales Person,Sales Person\u0001Country,Sales Person\u0001State,Target Detail\u0001Item Group,Target Detail\u0001Fiscal Year,Target Detail\u0001Target  Amount"
+ }, 
+ {
+  "name": "target_variance_report", 
+  "doctype": "Search Criteria"
+ }
 ]
\ No newline at end of file
diff --git a/selling/search_criteria/territories_target_variance_item_group_wise/territories_target_variance_item_group_wise.txt b/selling/search_criteria/territories_target_variance_item_group_wise/territories_target_variance_item_group_wise.txt
index 69bb310..a64b47e 100644
--- a/selling/search_criteria/territories_target_variance_item_group_wise/territories_target_variance_item_group_wise.txt
+++ b/selling/search_criteria/territories_target_variance_item_group_wise/territories_target_variance_item_group_wise.txt
@@ -1,33 +1,26 @@
-# Search Criteria, territories_target_variance_item_group_wise
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-04-03 12:49:53',
-		'docstatus': 0,
-		'modified': '2012-04-03 12:49:53',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all Search Criteria
-	{
-		'criteria_name': u'Territories Target Variance (Item Group wise)',
-		'doc_type': u'Target Detail',
-		'doctype': 'Search Criteria',
-		'filters': u"{'Sales Person\x01Country':'','Sales Person\x01State':'','Target Detail\x01Fiscal Year':''}",
-		'module': u'Selling',
-		'name': '__common__',
-		'page_len': 50,
-		'parent_doc_type': u'Sales Person',
-		'sort_by': u'`tabTarget Detail`.`target_amount`',
-		'sort_order': u'DESC',
-		'standard': u'Yes'
-	},
-
-	# Search Criteria, territories_target_variance_item_group_wise
-	{
-		'doctype': 'Search Criteria',
-		'name': u'territories_target_variance_item_group_wise'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-04-03 12:49:53", 
+  "modified_by": "Administrator", 
+  "modified": "2012-04-03 12:49:53"
+ }, 
+ {
+  "parent_doc_type": "Sales Person", 
+  "module": "Selling", 
+  "doctype": "Search Criteria", 
+  "sort_order": "DESC", 
+  "filters": "{'Sales Person\u0001Country':'','Sales Person\u0001State':'','Target Detail\u0001Fiscal Year':''}", 
+  "standard": "Yes", 
+  "doc_type": "Target Detail", 
+  "name": "__common__", 
+  "sort_by": "`tabTarget Detail`.`target_amount`", 
+  "page_len": 50, 
+  "criteria_name": "Territories Target Variance (Item Group wise)"
+ }, 
+ {
+  "name": "territories_target_variance_item_group_wise", 
+  "doctype": "Search Criteria"
+ }
 ]
\ No newline at end of file
diff --git a/selling/search_criteria/territory_sales___variance_report/territory_sales___variance_report.txt b/selling/search_criteria/territory_sales___variance_report/territory_sales___variance_report.txt
index b895894..011b957 100644
--- a/selling/search_criteria/territory_sales___variance_report/territory_sales___variance_report.txt
+++ b/selling/search_criteria/territory_sales___variance_report/territory_sales___variance_report.txt
@@ -1,33 +1,26 @@
-# Search Criteria, territory_sales_-_variance_report
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-04-03 12:49:53',
-		'docstatus': 0,
-		'modified': '2012-04-03 12:49:53',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all Search Criteria
-	{
-		'columns': u'Territory\x01ID',
-		'criteria_name': u'Territory Sales - Variance Report',
-		'doc_type': u'Territory',
-		'doctype': 'Search Criteria',
-		'filters': u"{'Territory\x01State':'','Territory\x01Based On':'Sales Order','Territory\x01Fiscal Year':'2009-2010','Territory\x01Company':'Alpha Company','Territory\x01Period':'Quarterly'}",
-		'module': u'Selling',
-		'name': '__common__',
-		'page_len': 50,
-		'sort_by': u'ID',
-		'sort_order': u'DESC',
-		'standard': u'Yes'
-	},
-
-	# Search Criteria, territory_sales_-_variance_report
-	{
-		'doctype': 'Search Criteria',
-		'name': u'territory_sales_-_variance_report'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-04-03 12:49:53", 
+  "modified_by": "Administrator", 
+  "modified": "2012-04-03 12:49:53"
+ }, 
+ {
+  "module": "Selling", 
+  "standard": "Yes", 
+  "sort_order": "DESC", 
+  "filters": "{'Territory\u0001State':'','Territory\u0001Based On':'Sales Order','Territory\u0001Fiscal Year':'2009-2010','Territory\u0001Company':'Alpha Company','Territory\u0001Period':'Quarterly'}", 
+  "doctype": "Search Criteria", 
+  "doc_type": "Territory", 
+  "name": "__common__", 
+  "sort_by": "ID", 
+  "page_len": 50, 
+  "criteria_name": "Territory Sales - Variance Report", 
+  "columns": "Territory\u0001ID"
+ }, 
+ {
+  "name": "territory_sales_-_variance_report", 
+  "doctype": "Search Criteria"
+ }
 ]
\ No newline at end of file
diff --git a/selling/search_criteria/total_target_variance_report/total_target_variance_report.txt b/selling/search_criteria/total_target_variance_report/total_target_variance_report.txt
index 510d81b..cf1484b 100644
--- a/selling/search_criteria/total_target_variance_report/total_target_variance_report.txt
+++ b/selling/search_criteria/total_target_variance_report/total_target_variance_report.txt
@@ -1,34 +1,27 @@
-# Search Criteria, total_target_variance_report
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-04-03 12:49:53',
-		'docstatus': 0,
-		'modified': '2012-04-03 12:49:53',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all Search Criteria
-	{
-		'columns': u'Sales Person\x01ID,Sales Person\x01Owner,Sales Person\x01Sales Person,Sales Person\x01Country,Sales Person\x01State,Sales Person\x01lft,Sales Person\x01rgt,Target Detail\x01Item Group,Target Detail\x01Fiscal Year,Target Detail\x01Target  Amount',
-		'criteria_name': u'Total Target Variance Report',
-		'doc_type': u'Target Detail',
-		'doctype': 'Search Criteria',
-		'filters': u"{'Sales Person\x01Saved':1,'Sales Person\x01Submitted':1,'Sales Person\x01Country':'','Sales Person\x01State':'','Target Detail\x01Fiscal Year':''}",
-		'module': u'Selling',
-		'name': '__common__',
-		'page_len': 50,
-		'parent_doc_type': u'Sales Person',
-		'sort_by': u'`tabSales Person`.`name`',
-		'sort_order': u'DESC',
-		'standard': u'Yes'
-	},
-
-	# Search Criteria, total_target_variance_report
-	{
-		'doctype': 'Search Criteria',
-		'name': u'total_target_variance_report'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-04-03 12:49:53", 
+  "modified_by": "Administrator", 
+  "modified": "2012-04-03 12:49:53"
+ }, 
+ {
+  "parent_doc_type": "Sales Person", 
+  "module": "Selling", 
+  "standard": "Yes", 
+  "sort_order": "DESC", 
+  "filters": "{'Sales Person\u0001Saved':1,'Sales Person\u0001Submitted':1,'Sales Person\u0001Country':'','Sales Person\u0001State':'','Target Detail\u0001Fiscal Year':''}", 
+  "doc_type": "Target Detail", 
+  "name": "__common__", 
+  "doctype": "Search Criteria", 
+  "sort_by": "`tabSales Person`.`name`", 
+  "page_len": 50, 
+  "criteria_name": "Total Target Variance Report", 
+  "columns": "Sales Person\u0001ID,Sales Person\u0001Owner,Sales Person\u0001Sales Person,Sales Person\u0001Country,Sales Person\u0001State,Sales Person\u0001lft,Sales Person\u0001rgt,Target Detail\u0001Item Group,Target Detail\u0001Fiscal Year,Target Detail\u0001Target  Amount"
+ }, 
+ {
+  "name": "total_target_variance_report", 
+  "doctype": "Search Criteria"
+ }
 ]
\ No newline at end of file
diff --git a/selling/search_criteria/variance_report/variance_report.txt b/selling/search_criteria/variance_report/variance_report.txt
index f45df2f..e141191 100644
--- a/selling/search_criteria/variance_report/variance_report.txt
+++ b/selling/search_criteria/variance_report/variance_report.txt
@@ -1,33 +1,26 @@
-# Search Criteria, variance_report
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-04-03 12:49:53',
-		'docstatus': 0,
-		'modified': '2012-04-03 12:49:53',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all Search Criteria
-	{
-		'criteria_name': u'Variance Report',
-		'doc_type': u'Target Detail',
-		'doctype': 'Search Criteria',
-		'filters': u"{'Territory\x01State':'','Target Detail\x01Fiscal Year':'2009-2010','Target Detail\x01Based On':'Territory','Target Detail\x01Company':'Alpha Company','Target Detail\x01Period':'Quarterly','Target Detail\x01Under':'Sales Order'}",
-		'module': u'Selling',
-		'name': '__common__',
-		'page_len': 50,
-		'parent_doc_type': u'Territory',
-		'sort_by': u'ID',
-		'sort_order': u'DESC',
-		'standard': u'Yes'
-	},
-
-	# Search Criteria, variance_report
-	{
-		'doctype': 'Search Criteria',
-		'name': u'variance_report'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-04-03 12:49:53", 
+  "modified_by": "Administrator", 
+  "modified": "2012-04-03 12:49:53"
+ }, 
+ {
+  "parent_doc_type": "Territory", 
+  "module": "Selling", 
+  "doctype": "Search Criteria", 
+  "sort_order": "DESC", 
+  "filters": "{'Territory\u0001State':'','Target Detail\u0001Fiscal Year':'2009-2010','Target Detail\u0001Based On':'Territory','Target Detail\u0001Company':'Alpha Company','Target Detail\u0001Period':'Quarterly','Target Detail\u0001Under':'Sales Order'}", 
+  "standard": "Yes", 
+  "doc_type": "Target Detail", 
+  "name": "__common__", 
+  "sort_by": "ID", 
+  "page_len": 50, 
+  "criteria_name": "Variance Report"
+ }, 
+ {
+  "name": "variance_report", 
+  "doctype": "Search Criteria"
+ }
 ]
\ No newline at end of file
diff --git a/setup/doctype/authorization_control/authorization_control.txt b/setup/doctype/authorization_control/authorization_control.txt
index bf204ce..5cf6ce7 100644
--- a/setup/doctype/authorization_control/authorization_control.txt
+++ b/setup/doctype/authorization_control/authorization_control.txt
@@ -1,30 +1,23 @@
-# DocType, Authorization Control
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:36:18',
-		'docstatus': 0,
-		'modified': '2012-03-27 14:36:18',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'issingle': 1,
-		'module': u'Setup',
-		'name': '__common__',
-		'section_style': u'Tabbed',
-		'server_code_error': u' ',
-		'version': 216
-	},
-
-	# DocType, Authorization Control
-	{
-		'doctype': 'DocType',
-		'name': u'Authorization Control'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-03-27 14:36:18", 
+  "modified_by": "Administrator", 
+  "modified": "2012-03-27 14:36:18"
+ }, 
+ {
+  "section_style": "Tabbed", 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "module": "Setup", 
+  "doctype": "DocType", 
+  "version": 216, 
+  "server_code_error": " ", 
+  "issingle": 1
+ }, 
+ {
+  "name": "Authorization Control", 
+  "doctype": "DocType"
+ }
 ]
\ No newline at end of file
diff --git a/setup/doctype/authorization_rule/authorization_rule.txt b/setup/doctype/authorization_rule/authorization_rule.txt
index 7061da3..a7d024a 100644
--- a/setup/doctype/authorization_rule/authorization_rule.txt
+++ b/setup/doctype/authorization_rule/authorization_rule.txt
@@ -2,9 +2,9 @@
  {
   "owner": "Administrator", 
   "docstatus": 0, 
-  "creation": "2012-07-03 13:30:00", 
+  "creation": "2012-12-14 14:27:06", 
   "modified_by": "Administrator", 
-  "modified": "2012-12-12 10:42:42"
+  "modified": "2012-12-17 17:59:54"
  }, 
  {
   "autoname": "AR.####", 
@@ -58,7 +58,7 @@
   "fieldname": "transaction", 
   "fieldtype": "Select", 
   "reqd": 1, 
-  "options": "\nDelivery Note\nPurchase Invoice\nPurchase Order\nPurchase Receipt\nQuotation\nSales Invoice\nSales Order\nStock Entry\nAppraisal"
+  "options": "\nDelivery Note\nPurchase Invoice\nPurchase Order\nPurchase Receipt\nQuotation\nSales Invoice\nSales Order\nAppraisal"
  }, 
  {
   "oldfieldtype": "Select", 
diff --git a/setup/doctype/brand/brand.txt b/setup/doctype/brand/brand.txt
index 97ab298..3535450 100644
--- a/setup/doctype/brand/brand.txt
+++ b/setup/doctype/brand/brand.txt
@@ -1,155 +1,126 @@
-# DocType, Brand
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:36:19',
-		'docstatus': 0,
-		'modified': '2012-03-27 14:36:19',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'allow_trash': 1,
-		'autoname': u'field:brand',
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'document_type': u'Master',
-		'module': u'Setup',
-		'name': '__common__',
-		'section_style': u'Simple',
-		'server_code_error': u' ',
-		'show_in_menu': 0,
-		'version': 5
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'Brand',
-		'parentfield': u'fields',
-		'parenttype': u'DocType'
-	},
-
-	# These values are common for all DocPerm
-	{
-		'doctype': u'DocPerm',
-		'name': '__common__',
-		'parent': u'Brand',
-		'parentfield': u'permissions',
-		'parenttype': u'DocType',
-		'read': 1
-	},
-
-	# DocType, Brand
-	{
-		'doctype': 'DocType',
-		'name': u'Brand'
-	},
-
-	# DocPerm
-	{
-		'cancel': 1,
-		'create': 1,
-		'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'System Manager',
-		'write': 1
-	},
-
-	# DocPerm
-	{
-		'cancel': 1,
-		'create': 1,
-		'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'Material Master Manager',
-		'write': 1
-	},
-
-	# DocPerm
-	{
-		'amend': 0,
-		'cancel': 0,
-		'create': 0,
-		'doctype': u'DocPerm',
-		'permlevel': 1,
-		'role': u'Material Manager',
-		'submit': 0,
-		'write': 0
-	},
-
-	# DocPerm
-	{
-		'amend': 0,
-		'cancel': 0,
-		'create': 0,
-		'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'Material Manager',
-		'submit': 0,
-		'write': 0
-	},
-
-	# DocPerm
-	{
-		'amend': 0,
-		'cancel': 0,
-		'create': 0,
-		'doctype': u'DocPerm',
-		'permlevel': 1,
-		'role': u'Material User',
-		'submit': 0,
-		'write': 0
-	},
-
-	# DocPerm
-	{
-		'amend': 0,
-		'cancel': 0,
-		'create': 0,
-		'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'Material User',
-		'submit': 0,
-		'write': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'trash_reason',
-		'fieldtype': u'Small Text',
-		'label': u'Trash Reason',
-		'oldfieldname': u'trash_reason',
-		'oldfieldtype': u'Small Text',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'brand',
-		'fieldtype': u'Data',
-		'label': u'Brand Name',
-		'oldfieldname': u'brand',
-		'oldfieldtype': u'Data',
-		'permlevel': 0,
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'description',
-		'fieldtype': u'Text',
-		'label': u'Description',
-		'oldfieldname': u'description',
-		'oldfieldtype': u'Text',
-		'permlevel': 0,
-		'width': u'300px'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-03-27 14:36:19", 
+  "modified_by": "Administrator", 
+  "modified": "2012-03-27 14:36:19"
+ }, 
+ {
+  "section_style": "Simple", 
+  "module": "Setup", 
+  "server_code_error": " ", 
+  "allow_trash": 1, 
+  "doctype": "DocType", 
+  "autoname": "field:brand", 
+  "document_type": "Master", 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "show_in_menu": 0, 
+  "version": 5
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Brand", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Brand", 
+  "read": 1, 
+  "doctype": "DocPerm", 
+  "parenttype": "DocType", 
+  "parentfield": "permissions"
+ }, 
+ {
+  "name": "Brand", 
+  "doctype": "DocType"
+ }, 
+ {
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "write": 1, 
+  "role": "System Manager", 
+  "cancel": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "write": 1, 
+  "role": "Material Master Manager", 
+  "cancel": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "amend": 0, 
+  "create": 0, 
+  "doctype": "DocPerm", 
+  "submit": 0, 
+  "write": 0, 
+  "role": "Material Manager", 
+  "cancel": 0, 
+  "permlevel": 1
+ }, 
+ {
+  "amend": 0, 
+  "create": 0, 
+  "doctype": "DocPerm", 
+  "submit": 0, 
+  "write": 0, 
+  "role": "Material Manager", 
+  "cancel": 0, 
+  "permlevel": 0
+ }, 
+ {
+  "amend": 0, 
+  "create": 0, 
+  "doctype": "DocPerm", 
+  "submit": 0, 
+  "write": 0, 
+  "role": "Material User", 
+  "cancel": 0, 
+  "permlevel": 1
+ }, 
+ {
+  "amend": 0, 
+  "create": 0, 
+  "doctype": "DocPerm", 
+  "submit": 0, 
+  "write": 0, 
+  "role": "Material User", 
+  "cancel": 0, 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Small Text", 
+  "doctype": "DocField", 
+  "label": "Trash Reason", 
+  "oldfieldname": "trash_reason", 
+  "fieldname": "trash_reason", 
+  "fieldtype": "Small Text", 
+  "permlevel": 1
+ }, 
+ {
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Brand Name", 
+  "oldfieldname": "brand", 
+  "fieldname": "brand", 
+  "fieldtype": "Data", 
+  "reqd": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Text", 
+  "doctype": "DocField", 
+  "label": "Description", 
+  "oldfieldname": "description", 
+  "width": "300px", 
+  "fieldname": "description", 
+  "fieldtype": "Text", 
+  "permlevel": 0
+ }
 ]
\ No newline at end of file
diff --git a/setup/doctype/contact_control/contact_control.txt b/setup/doctype/contact_control/contact_control.txt
index c398190..453ca6e 100644
--- a/setup/doctype/contact_control/contact_control.txt
+++ b/setup/doctype/contact_control/contact_control.txt
@@ -1,84 +1,65 @@
-# DocType, Contact Control
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:36:19',
-		'docstatus': 0,
-		'modified': '2012-03-27 14:36:19',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'in_create': 1,
-		'issingle': 1,
-		'module': u'Setup',
-		'name': '__common__',
-		'read_only': 1,
-		'section_style': u'Simple',
-		'server_code_error': u' ',
-		'show_in_menu': 0,
-		'version': 25
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'fieldtype': u'Text',
-		'name': '__common__',
-		'parent': u'Contact Control',
-		'parentfield': u'fields',
-		'parenttype': u'DocType',
-		'permlevel': 0
-	},
-
-	# These values are common for all DocPerm
-	{
-		'create': 0,
-		'doctype': u'DocPerm',
-		'name': '__common__',
-		'parent': u'Contact Control',
-		'parentfield': u'permissions',
-		'parenttype': u'DocType',
-		'permlevel': 0,
-		'read': 1,
-		'role': u'System Manager',
-		'write': 1
-	},
-
-	# DocType, Contact Control
-	{
-		'doctype': 'DocType',
-		'name': u'Contact Control'
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'header',
-		'label': u'Header'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'customer_intro',
-		'label': u'Customer Intro'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'supplier_intro',
-		'label': u'Supplier Intro'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-03-27 14:36:19", 
+  "modified_by": "Administrator", 
+  "modified": "2012-03-27 14:36:19"
+ }, 
+ {
+  "section_style": "Simple", 
+  "in_create": 1, 
+  "module": "Setup", 
+  "doctype": "DocType", 
+  "server_code_error": " ", 
+  "issingle": 1, 
+  "read_only": 1, 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "show_in_menu": 0, 
+  "version": 25
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Contact Control", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "fieldtype": "Text", 
+  "permlevel": 0, 
+  "parentfield": "fields"
+ }, 
+ {
+  "parent": "Contact Control", 
+  "read": 1, 
+  "name": "__common__", 
+  "create": 0, 
+  "doctype": "DocPerm", 
+  "write": 1, 
+  "parenttype": "DocType", 
+  "role": "System Manager", 
+  "permlevel": 0, 
+  "parentfield": "permissions"
+ }, 
+ {
+  "name": "Contact Control", 
+  "doctype": "DocType"
+ }, 
+ {
+  "doctype": "DocPerm"
+ }, 
+ {
+  "fieldname": "header", 
+  "doctype": "DocField", 
+  "label": "Header"
+ }, 
+ {
+  "fieldname": "customer_intro", 
+  "doctype": "DocField", 
+  "label": "Customer Intro"
+ }, 
+ {
+  "fieldname": "supplier_intro", 
+  "doctype": "DocField", 
+  "label": "Supplier Intro"
+ }
 ]
\ No newline at end of file
diff --git a/setup/doctype/country/country.txt b/setup/doctype/country/country.txt
index bc3e9ed..c3e1303 100644
--- a/setup/doctype/country/country.txt
+++ b/setup/doctype/country/country.txt
@@ -1,95 +1,74 @@
-# DocType, Country
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:36:19',
-		'docstatus': 0,
-		'modified': '2012-03-27 14:36:19',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'autoname': u'field:country_name',
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'document_type': u'Master',
-		'in_create': 0,
-		'module': u'Setup',
-		'name': '__common__',
-		'read_only': 0,
-		'section_style': u'Simple',
-		'server_code_error': u' ',
-		'show_in_menu': 0,
-		'version': 11
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'country_name',
-		'fieldtype': u'Data',
-		'label': u'Country Name',
-		'name': '__common__',
-		'oldfieldname': u'country_name',
-		'oldfieldtype': u'Data',
-		'parent': u'Country',
-		'parentfield': u'fields',
-		'parenttype': u'DocType',
-		'permlevel': 0,
-		'reqd': 1
-	},
-
-	# These values are common for all DocPerm
-	{
-		'create': 1,
-		'doctype': u'DocPerm',
-		'name': '__common__',
-		'parent': u'Country',
-		'parentfield': u'permissions',
-		'parenttype': u'DocType',
-		'permlevel': 0,
-		'read': 1,
-		'write': 1
-	},
-
-	# DocType, Country
-	{
-		'doctype': 'DocType',
-		'name': u'Country'
-	},
-
-	# DocPerm
-	{
-		'amend': 0,
-		'cancel': 0,
-		'doctype': u'DocPerm',
-		'role': u'Sales Master Manager',
-		'submit': 0
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm',
-		'role': u'Purchase Master Manager'
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm',
-		'role': u'HR User'
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm',
-		'role': u'HR Manager'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-03-27 14:36:19", 
+  "modified_by": "Administrator", 
+  "modified": "2012-03-27 14:36:19"
+ }, 
+ {
+  "section_style": "Simple", 
+  "in_create": 0, 
+  "module": "Setup", 
+  "server_code_error": " ", 
+  "document_type": "Master", 
+  "read_only": 0, 
+  "autoname": "field:country_name", 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "doctype": "DocType", 
+  "show_in_menu": 0, 
+  "version": 11
+ }, 
+ {
+  "parent": "Country", 
+  "oldfieldtype": "Data", 
+  "oldfieldname": "country_name", 
+  "reqd": 1, 
+  "name": "__common__", 
+  "doctype": "DocField", 
+  "label": "Country Name", 
+  "parenttype": "DocType", 
+  "fieldname": "country_name", 
+  "fieldtype": "Data", 
+  "permlevel": 0, 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Country", 
+  "read": 1, 
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "write": 1, 
+  "parenttype": "DocType", 
+  "permlevel": 0, 
+  "parentfield": "permissions"
+ }, 
+ {
+  "name": "Country", 
+  "doctype": "DocType"
+ }, 
+ {
+  "amend": 0, 
+  "cancel": 0, 
+  "role": "Sales Master Manager", 
+  "doctype": "DocPerm", 
+  "submit": 0
+ }, 
+ {
+  "role": "Purchase Master Manager", 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "role": "HR User", 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "role": "HR Manager", 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "doctype": "DocField"
+ }
 ]
\ No newline at end of file
diff --git a/setup/doctype/currency/currency.txt b/setup/doctype/currency/currency.txt
index 906e2f8..bc3af25 100644
--- a/setup/doctype/currency/currency.txt
+++ b/setup/doctype/currency/currency.txt
@@ -1,94 +1,75 @@
-# DocType, Currency
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-07-03 13:30:55',
-		'docstatus': 0,
-		'modified': '2012-07-11 16:11:45',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'allow_trash': 1,
-		'autoname': u'field:currency_name',
-		'colour': u'White:FFF',
-		'description': u'**Currency** Master',
-		'doctype': 'DocType',
-		'in_create': 0,
-		'module': u'Setup',
-		'name': '__common__',
-		'read_only': 0,
-		'section_style': u'Simple',
-		'server_code_error': u' ',
-		'show_in_menu': 0,
-		'version': 1
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'currency_name',
-		'fieldtype': u'Data',
-		'label': u'Currency Name',
-		'name': '__common__',
-		'oldfieldname': u'currency_name',
-		'oldfieldtype': u'Data',
-		'parent': u'Currency',
-		'parentfield': u'fields',
-		'parenttype': u'DocType',
-		'permlevel': 0,
-		'reqd': 1
-	},
-
-	# These values are common for all DocPerm
-	{
-		'create': 1,
-		'doctype': u'DocPerm',
-		'name': '__common__',
-		'parent': u'Currency',
-		'parentfield': u'permissions',
-		'parenttype': u'DocType',
-		'permlevel': 0,
-		'read': 1,
-		'write': 1
-	},
-
-	# DocType, Currency
-	{
-		'doctype': 'DocType',
-		'name': u'Currency'
-	},
-
-	# DocPerm
-	{
-		'cancel': 1,
-		'doctype': u'DocPerm',
-		'role': u'Accounts Manager'
-	},
-
-	# DocPerm
-	{
-		'amend': 0,
-		'cancel': 1,
-		'doctype': u'DocPerm',
-		'role': u'Sales Master Manager',
-		'submit': 0
-	},
-
-	# DocPerm
-	{
-		'amend': 0,
-		'cancel': 0,
-		'doctype': u'DocPerm',
-		'role': u'Purchase Master Manager',
-		'submit': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-07-03 13:30:55", 
+  "modified_by": "Administrator", 
+  "modified": "2012-07-11 16:11:45"
+ }, 
+ {
+  "section_style": "Simple", 
+  "description": "**Currency** Master", 
+  "module": "Setup", 
+  "allow_trash": 1, 
+  "server_code_error": " ", 
+  "in_create": 0, 
+  "read_only": 0, 
+  "autoname": "field:currency_name", 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "doctype": "DocType", 
+  "show_in_menu": 0, 
+  "version": 1
+ }, 
+ {
+  "parent": "Currency", 
+  "oldfieldtype": "Data", 
+  "oldfieldname": "currency_name", 
+  "reqd": 1, 
+  "name": "__common__", 
+  "doctype": "DocField", 
+  "label": "Currency Name", 
+  "parenttype": "DocType", 
+  "fieldname": "currency_name", 
+  "fieldtype": "Data", 
+  "permlevel": 0, 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Currency", 
+  "read": 1, 
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "write": 1, 
+  "parenttype": "DocType", 
+  "permlevel": 0, 
+  "parentfield": "permissions"
+ }, 
+ {
+  "name": "Currency", 
+  "doctype": "DocType"
+ }, 
+ {
+  "cancel": 1, 
+  "role": "Accounts Manager", 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "amend": 0, 
+  "cancel": 1, 
+  "role": "Sales Master Manager", 
+  "doctype": "DocPerm", 
+  "submit": 0
+ }, 
+ {
+  "amend": 0, 
+  "cancel": 0, 
+  "role": "Purchase Master Manager", 
+  "doctype": "DocPerm", 
+  "submit": 0
+ }, 
+ {
+  "doctype": "DocField"
+ }
 ]
\ No newline at end of file
diff --git a/setup/doctype/email_digest/email_digest.txt b/setup/doctype/email_digest/email_digest.txt
index c39e8ee..f74f1ec 100644
--- a/setup/doctype/email_digest/email_digest.txt
+++ b/setup/doctype/email_digest/email_digest.txt
@@ -1,374 +1,293 @@
-# DocType, Email Digest
 [
-
-	# These values are common in all dictionaries
-	{
-		u'creation': '2012-09-18 10:50:53',
-		u'docstatus': 0,
-		u'modified': '2012-11-13 15:10:35',
-		u'modified_by': u'Administrator',
-		u'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'_last_update': u'1324556758',
-		'autoname': u'Prompt',
-		'colour': u'White:FFF',
-		'description': u'Send regular summary reports via Email.',
-		u'doctype': u'DocType',
-		'document_type': u'System',
-		'module': u'Setup',
-		u'name': u'__common__',
-		'section_style': u'Simple',
-		'show_in_menu': 0,
-		'version': 1
-	},
-
-	# These values are common for all DocField
-	{
-		u'doctype': u'DocField',
-		u'name': u'__common__',
-		'parent': u'Email Digest',
-		'parentfield': u'fields',
-		'parenttype': u'DocType'
-	},
-
-	# These values are common for all DocPerm
-	{
-		u'doctype': u'DocPerm',
-		u'name': u'__common__',
-		'parent': u'Email Digest',
-		'parentfield': u'permissions',
-		'parenttype': u'DocType',
-		'read': 1,
-		'role': u'System Manager'
-	},
-
-	# DocType, Email Digest
-	{
-		u'doctype': u'DocType',
-		u'name': u'Email Digest'
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'settings',
-		'fieldtype': u'Section Break',
-		'label': u'Email Digest Settings',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'column_break0',
-		'fieldtype': u'Column Break',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'enabled',
-		'fieldtype': u'Check',
-		'label': u'Enabled',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'company',
-		'fieldtype': u'Select',
-		'label': u'For Company',
-		'options': u'link:Company',
-		'permlevel': 0,
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'allow_on_submit': 0,
-		u'doctype': u'DocField',
-		'fieldname': u'frequency',
-		'fieldtype': u'Select',
-		'label': u'How frequently?',
-		'options': u'Daily\nWeekly\nMonthly',
-		'permlevel': 0,
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'depends_on': u'eval:doc.enabled',
-		u'doctype': u'DocField',
-		'fieldname': u'next_send',
-		'fieldtype': u'Data',
-		'label': u'Next email will be sent on:',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'column_break1',
-		'fieldtype': u'Column Break',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'description': u'Note: Email will not be sent to disabled users',
-		u'doctype': u'DocField',
-		'fieldname': u'recipient_list',
-		'fieldtype': u'Text',
-		'label': u'Recipients',
-		'permlevel': 1,
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'addremove_recipients',
-		'fieldtype': u'Button',
-		'label': u'Add/Remove Recipients',
-		'permlevel': 0,
-		'trigger': u'Client'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'description': u'Check all the items below that you want to send in this digest.',
-		u'doctype': u'DocField',
-		'fieldname': u'select_digest_content',
-		'fieldtype': u'Section Break',
-		'label': u'Select Digest Content',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		u'doctype': u'DocField',
-		'fieldname': u'new_leads',
-		'fieldtype': u'Check',
-		'label': u'New Leads',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'new_enquiries',
-		'fieldtype': u'Check',
-		'label': u'New Enquiries',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'new_quotations',
-		'fieldtype': u'Check',
-		'label': u'New Quotations',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'new_sales_orders',
-		'fieldtype': u'Check',
-		'label': u'New Sales Orders',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'new_delivery_notes',
-		'fieldtype': u'Check',
-		'label': u'New Delivery Notes',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'new_purchase_requests',
-		'fieldtype': u'Check',
-		'label': u'New Purchase Requests',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'new_supplier_quotations',
-		'fieldtype': u'Check',
-		'label': u'New Supplier Quotations',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'new_purchase_orders',
-		'fieldtype': u'Check',
-		'label': u'New Purchase Orders',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'new_purchase_receipts',
-		'fieldtype': u'Check',
-		'label': u'New Purchase Receipts',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'new_stock_entries',
-		'fieldtype': u'Check',
-		'label': u'New Stock Entries',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'new_support_tickets',
-		'fieldtype': u'Check',
-		'label': u'New Support Tickets',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'new_communications',
-		'fieldtype': u'Check',
-		'label': u'New Communications',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'new_projects',
-		'fieldtype': u'Check',
-		'label': u'New Projects',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'open_tickets',
-		'fieldtype': u'Check',
-		'label': u'Open Tickets',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'cb1',
-		'fieldtype': u'Column Break',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'income_year_to_date',
-		'fieldtype': u'Check',
-		'label': u'Income Year to Date',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'bank_balance',
-		'fieldtype': u'Check',
-		'label': u'Bank Balance',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'income',
-		'fieldtype': u'Check',
-		'label': u'Income',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'expenses_booked',
-		'fieldtype': u'Check',
-		'label': u'Expenses Booked',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'collections',
-		'fieldtype': u'Check',
-		'label': u'Collections',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'payments',
-		'fieldtype': u'Check',
-		'label': u'Payments',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'invoiced_amount',
-		'fieldtype': u'Check',
-		'label': u'Receivables',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'payables',
-		'fieldtype': u'Check',
-		'label': u'Payables',
-		'permlevel': 0
-	},
-
-	# DocPerm
-	{
-		'cancel': 1,
-		'create': 1,
-		u'doctype': u'DocPerm',
-		'permlevel': 0,
-		'write': 1
-	},
-
-	# DocPerm
-	{
-		u'doctype': u'DocPerm',
-		'permlevel': 1
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-09-18 10:50:53", 
+  "modified_by": "Administrator", 
+  "modified": "2012-11-13 15:10:35"
+ }, 
+ {
+  "section_style": "Simple", 
+  "description": "Send regular summary reports via Email.", 
+  "module": "Setup", 
+  "doctype": "DocType", 
+  "autoname": "Prompt", 
+  "document_type": "System", 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "_last_update": "1324556758", 
+  "show_in_menu": 0, 
+  "version": 1
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Email Digest", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Email Digest", 
+  "read": 1, 
+  "doctype": "DocPerm", 
+  "parenttype": "DocType", 
+  "role": "System Manager", 
+  "parentfield": "permissions"
+ }, 
+ {
+  "name": "Email Digest", 
+  "doctype": "DocType"
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Email Digest Settings", 
+  "fieldname": "settings", 
+  "fieldtype": "Section Break", 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "fieldname": "column_break0", 
+  "fieldtype": "Column Break", 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Enabled", 
+  "fieldname": "enabled", 
+  "fieldtype": "Check", 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "For Company", 
+  "options": "link:Company", 
+  "fieldname": "company", 
+  "fieldtype": "Select", 
+  "reqd": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "allow_on_submit": 0, 
+  "doctype": "DocField", 
+  "label": "How frequently?", 
+  "permlevel": 0, 
+  "fieldname": "frequency", 
+  "fieldtype": "Select", 
+  "reqd": 1, 
+  "options": "Daily\nWeekly\nMonthly"
+ }, 
+ {
+  "depends_on": "eval:doc.enabled", 
+  "doctype": "DocField", 
+  "label": "Next email will be sent on:", 
+  "fieldname": "next_send", 
+  "fieldtype": "Data", 
+  "permlevel": 1
+ }, 
+ {
+  "doctype": "DocField", 
+  "fieldname": "column_break1", 
+  "fieldtype": "Column Break", 
+  "permlevel": 0
+ }, 
+ {
+  "description": "Note: Email will not be sent to disabled users", 
+  "doctype": "DocField", 
+  "label": "Recipients", 
+  "fieldname": "recipient_list", 
+  "fieldtype": "Text", 
+  "reqd": 1, 
+  "permlevel": 1
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Add/Remove Recipients", 
+  "trigger": "Client", 
+  "fieldname": "addremove_recipients", 
+  "fieldtype": "Button", 
+  "permlevel": 0
+ }, 
+ {
+  "description": "Check all the items below that you want to send in this digest.", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Select Digest Content", 
+  "fieldname": "select_digest_content", 
+  "fieldtype": "Section Break", 
+  "permlevel": 0
+ }, 
+ {
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "New Leads", 
+  "fieldname": "new_leads", 
+  "fieldtype": "Check", 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "New Enquiries", 
+  "fieldname": "new_enquiries", 
+  "fieldtype": "Check", 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "New Quotations", 
+  "fieldname": "new_quotations", 
+  "fieldtype": "Check", 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "New Sales Orders", 
+  "fieldname": "new_sales_orders", 
+  "fieldtype": "Check", 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "New Delivery Notes", 
+  "fieldname": "new_delivery_notes", 
+  "fieldtype": "Check", 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "New Purchase Requests", 
+  "fieldname": "new_purchase_requests", 
+  "fieldtype": "Check", 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "New Supplier Quotations", 
+  "fieldname": "new_supplier_quotations", 
+  "fieldtype": "Check", 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "New Purchase Orders", 
+  "fieldname": "new_purchase_orders", 
+  "fieldtype": "Check", 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "New Purchase Receipts", 
+  "fieldname": "new_purchase_receipts", 
+  "fieldtype": "Check", 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "New Stock Entries", 
+  "fieldname": "new_stock_entries", 
+  "fieldtype": "Check", 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "New Support Tickets", 
+  "fieldname": "new_support_tickets", 
+  "fieldtype": "Check", 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "New Communications", 
+  "fieldname": "new_communications", 
+  "fieldtype": "Check", 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "New Projects", 
+  "fieldname": "new_projects", 
+  "fieldtype": "Check", 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Open Tickets", 
+  "fieldname": "open_tickets", 
+  "fieldtype": "Check", 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "fieldname": "cb1", 
+  "fieldtype": "Column Break", 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Income Year to Date", 
+  "fieldname": "income_year_to_date", 
+  "fieldtype": "Check", 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Bank Balance", 
+  "fieldname": "bank_balance", 
+  "fieldtype": "Check", 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Income", 
+  "fieldname": "income", 
+  "fieldtype": "Check", 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Expenses Booked", 
+  "fieldname": "expenses_booked", 
+  "fieldtype": "Check", 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Collections", 
+  "fieldname": "collections", 
+  "fieldtype": "Check", 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Payments", 
+  "fieldname": "payments", 
+  "fieldtype": "Check", 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Receivables", 
+  "fieldname": "invoiced_amount", 
+  "fieldtype": "Check", 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Payables", 
+  "fieldname": "payables", 
+  "fieldtype": "Check", 
+  "permlevel": 0
+ }, 
+ {
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "write": 1, 
+  "cancel": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "permlevel": 1, 
+  "doctype": "DocPerm"
+ }
 ]
\ No newline at end of file
diff --git a/setup/doctype/email_settings/email_settings.txt b/setup/doctype/email_settings/email_settings.txt
index 8d60fbc..1a2051c 100644
--- a/setup/doctype/email_settings/email_settings.txt
+++ b/setup/doctype/email_settings/email_settings.txt
@@ -1,253 +1,198 @@
-# DocType, Email Settings
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-07-03 13:30:55',
-		'docstatus': 0,
-		'modified': '2012-07-12 16:16:27',
-		'modified_by': u'Administrator',
-		'owner': u'harshada@webnotestech.com'
-	},
-
-	# These values are common for all DocType
-	{
-		'_last_update': u'1325570647',
-		'allow_copy': 1,
-		'allow_email': 1,
-		'allow_print': 1,
-		'colour': u'White:FFF',
-		'description': u'Email Settings for Outgoing and Incoming Emails.',
-		'doctype': 'DocType',
-		'in_create': 1,
-		'issingle': 1,
-		'module': u'Setup',
-		'name': '__common__',
-		'section_style': u'Simple',
-		'server_code_error': u' ',
-		'version': 1
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'Email Settings',
-		'parentfield': u'fields',
-		'parenttype': u'DocType',
-		'permlevel': 0
-	},
-
-	# These values are common for all DocPerm
-	{
-		'create': 1,
-		'doctype': u'DocPerm',
-		'name': '__common__',
-		'parent': u'Email Settings',
-		'parentfield': u'permissions',
-		'parenttype': u'DocType',
-		'permlevel': 0,
-		'read': 1,
-		'role': u'System Manager',
-		'write': 1
-	},
-
-	# DocType, Email Settings
-	{
-		'doctype': 'DocType',
-		'name': u'Email Settings'
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm'
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'description': u'Set your outgoing mail SMTP settings here. All system generated notifications, emails will go from this mail server. If you are not sure, leave this blank to use ERPNext servers (emails will still be sent from your email id) or contact your email provider.',
-		'doctype': u'DocField',
-		'fieldname': u'outgoing_mails',
-		'fieldtype': u'Section Break',
-		'label': u'Outgoing Mails'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'description': u'SMTP Server (e.g. smtp.gmail.com)',
-		'doctype': u'DocField',
-		'fieldname': u'outgoing_mail_server',
-		'fieldtype': u'Data',
-		'label': u'Outgoing Mail Server'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'use_ssl',
-		'fieldtype': u'Check',
-		'label': u'Use SSL'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'description': u'If non standard port (e.g. 587)',
-		'doctype': u'DocField',
-		'fieldname': u'mail_port',
-		'fieldtype': u'Int',
-		'label': u'Mail Port'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'cb0',
-		'fieldtype': u'Column Break'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'description': u'Set Login and Password if authentication is required.',
-		'doctype': u'DocField',
-		'fieldname': u'mail_login',
-		'fieldtype': u'Data',
-		'label': u'Login Id'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'mail_password',
-		'fieldtype': u'Password',
-		'label': u'Mail Password'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'description': u'System generated mails will be sent from this email id.',
-		'doctype': u'DocField',
-		'fieldname': u'auto_email_id',
-		'fieldtype': u'Data',
-		'label': u'Auto Email Id'
-	},
-
-	# DocField
-	{
-		'description': u'Set the POP3 email settings to pull emails directly from a mailbox and create Support Tickets',
-		'doctype': u'DocField',
-		'fieldname': u'support_ticket_mail_settings',
-		'fieldtype': u'Section Break',
-		'label': u'Support Ticket Mail Settings'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'description': u'To automatically create Support Tickets from your incoming mail, set your POP3 settings here. You must ideally create a separate email id for the erp system so that all emails will be synced into the system from that mail id. If you are not sure, please contact your EMail Provider.',
-		'doctype': u'DocField',
-		'fieldname': u'section_break0',
-		'fieldtype': u'Section Break',
-		'label': u'Incoming Mail Setting'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'description': u'Check this to pull emails from your mailbox',
-		'doctype': u'DocField',
-		'fieldname': u'sync_support_mails',
-		'fieldtype': u'Check',
-		'label': u'Sync Support Mails'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'description': u'Your support email id - must be a valid email - this is where your emails will come!',
-		'doctype': u'DocField',
-		'fieldname': u'support_email',
-		'fieldtype': u'Data',
-		'label': u'Support Email'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'description': u'POP3 mail server (e.g. pop.gmail.com)',
-		'doctype': u'DocField',
-		'fieldname': u'support_host',
-		'fieldtype': u'Data',
-		'label': u'POP3 Mail Server'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'support_use_ssl',
-		'fieldtype': u'Check',
-		'label': u'Use SSL'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'support_username',
-		'fieldtype': u'Data',
-		'label': u'User Name'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'support_password',
-		'fieldtype': u'Password',
-		'label': u'Support Password'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'cb1',
-		'fieldtype': u'Column Break'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'description': u'Signature to be appended at the end of every email',
-		'doctype': u'DocField',
-		'fieldname': u'support_signature',
-		'fieldtype': u'Text',
-		'label': u'Signature'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'default': u'1',
-		'doctype': u'DocField',
-		'fieldname': u'send_autoreply',
-		'fieldtype': u'Check',
-		'label': u'Send Autoreply'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'description': u'Autoreply when a new mail is received',
-		'doctype': u'DocField',
-		'fieldname': u'support_autoreply',
-		'fieldtype': u'Text',
-		'label': u'Custom Autoreply Message'
-	}
+ {
+  "owner": "harshada@webnotestech.com", 
+  "docstatus": 0, 
+  "creation": "2012-07-03 13:30:55", 
+  "modified_by": "Administrator", 
+  "modified": "2012-07-12 16:16:27"
+ }, 
+ {
+  "section_style": "Simple", 
+  "description": "Email Settings for Outgoing and Incoming Emails.", 
+  "allow_print": 1, 
+  "module": "Setup", 
+  "doctype": "DocType", 
+  "in_create": 1, 
+  "allow_email": 1, 
+  "issingle": 1, 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "_last_update": "1325570647", 
+  "server_code_error": " ", 
+  "version": 1, 
+  "allow_copy": 1
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Email Settings", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "permlevel": 0, 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Email Settings", 
+  "read": 1, 
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "write": 1, 
+  "parenttype": "DocType", 
+  "role": "System Manager", 
+  "permlevel": 0, 
+  "parentfield": "permissions"
+ }, 
+ {
+  "name": "Email Settings", 
+  "doctype": "DocType"
+ }, 
+ {
+  "doctype": "DocPerm"
+ }, 
+ {
+  "doctype": "DocPerm"
+ }, 
+ {
+  "description": "Set your outgoing mail SMTP settings here. All system generated notifications, emails will go from this mail server. If you are not sure, leave this blank to use ERPNext servers (emails will still be sent from your email id) or contact your email provider.", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Outgoing Mails", 
+  "fieldname": "outgoing_mails", 
+  "fieldtype": "Section Break"
+ }, 
+ {
+  "description": "SMTP Server (e.g. smtp.gmail.com)", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Outgoing Mail Server", 
+  "fieldname": "outgoing_mail_server", 
+  "fieldtype": "Data"
+ }, 
+ {
+  "doctype": "DocField", 
+  "fieldname": "use_ssl", 
+  "fieldtype": "Check", 
+  "label": "Use SSL"
+ }, 
+ {
+  "description": "If non standard port (e.g. 587)", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Mail Port", 
+  "fieldname": "mail_port", 
+  "fieldtype": "Int"
+ }, 
+ {
+  "fieldname": "cb0", 
+  "fieldtype": "Column Break", 
+  "doctype": "DocField"
+ }, 
+ {
+  "description": "Set Login and Password if authentication is required.", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Login Id", 
+  "fieldname": "mail_login", 
+  "fieldtype": "Data"
+ }, 
+ {
+  "doctype": "DocField", 
+  "fieldname": "mail_password", 
+  "fieldtype": "Password", 
+  "label": "Mail Password"
+ }, 
+ {
+  "description": "System generated mails will be sent from this email id.", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Auto Email Id", 
+  "fieldname": "auto_email_id", 
+  "fieldtype": "Data"
+ }, 
+ {
+  "description": "Set the POP3 email settings to pull emails directly from a mailbox and create Support Tickets", 
+  "doctype": "DocField", 
+  "label": "Support Ticket Mail Settings", 
+  "fieldname": "support_ticket_mail_settings", 
+  "fieldtype": "Section Break"
+ }, 
+ {
+  "description": "To automatically create Support Tickets from your incoming mail, set your POP3 settings here. You must ideally create a separate email id for the erp system so that all emails will be synced into the system from that mail id. If you are not sure, please contact your EMail Provider.", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Incoming Mail Setting", 
+  "fieldname": "section_break0", 
+  "fieldtype": "Section Break"
+ }, 
+ {
+  "description": "Check this to pull emails from your mailbox", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Sync Support Mails", 
+  "fieldname": "sync_support_mails", 
+  "fieldtype": "Check"
+ }, 
+ {
+  "description": "Your support email id - must be a valid email - this is where your emails will come!", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Support Email", 
+  "fieldname": "support_email", 
+  "fieldtype": "Data"
+ }, 
+ {
+  "description": "POP3 mail server (e.g. pop.gmail.com)", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "POP3 Mail Server", 
+  "fieldname": "support_host", 
+  "fieldtype": "Data"
+ }, 
+ {
+  "doctype": "DocField", 
+  "fieldname": "support_use_ssl", 
+  "fieldtype": "Check", 
+  "label": "Use SSL"
+ }, 
+ {
+  "doctype": "DocField", 
+  "fieldname": "support_username", 
+  "fieldtype": "Data", 
+  "label": "User Name"
+ }, 
+ {
+  "doctype": "DocField", 
+  "fieldname": "support_password", 
+  "fieldtype": "Password", 
+  "label": "Support Password"
+ }, 
+ {
+  "fieldname": "cb1", 
+  "fieldtype": "Column Break", 
+  "doctype": "DocField"
+ }, 
+ {
+  "description": "Signature to be appended at the end of every email", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Signature", 
+  "fieldname": "support_signature", 
+  "fieldtype": "Text"
+ }, 
+ {
+  "default": "1", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Send Autoreply", 
+  "fieldname": "send_autoreply", 
+  "fieldtype": "Check"
+ }, 
+ {
+  "description": "Autoreply when a new mail is received", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Custom Autoreply Message", 
+  "fieldname": "support_autoreply", 
+  "fieldtype": "Text"
+ }
 ]
\ No newline at end of file
diff --git a/setup/doctype/features_setup/features_setup.txt b/setup/doctype/features_setup/features_setup.txt
index cd47ce5..1359508 100644
--- a/setup/doctype/features_setup/features_setup.txt
+++ b/setup/doctype/features_setup/features_setup.txt
@@ -1,340 +1,265 @@
-# DocType, Features Setup
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-04-13 11:56:31',
-		'docstatus': 0,
-		'modified': '2012-06-07 18:41:50',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'_last_update': u'1323840127',
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'issingle': 1,
-		'module': u'Setup',
-		'name': '__common__',
-		'name_case': u'Title Case',
-		'section_style': u'Simple',
-		'show_in_menu': 1,
-		'version': 1
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'Features Setup',
-		'parentfield': u'fields',
-		'parenttype': u'DocType',
-		'permlevel': 0
-	},
-
-	# These values are common for all DocPerm
-	{
-		'create': 1,
-		'doctype': u'DocPerm',
-		'name': '__common__',
-		'parent': u'Features Setup',
-		'parentfield': u'permissions',
-		'parenttype': u'DocType',
-		'permlevel': 0,
-		'read': 1,
-		'write': 1
-	},
-
-	# DocType, Features Setup
-	{
-		'doctype': 'DocType',
-		'name': u'Features Setup'
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm',
-		'role': u'System Manager'
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm',
-		'role': u'Administrator'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'materials',
-		'fieldtype': u'Section Break',
-		'label': u'Materials'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'description': u'To track item in sales and purchase documents based on their serial nos. This is can also used to track warranty details of the product.',
-		'doctype': u'DocField',
-		'fieldname': u'fs_item_serial_nos',
-		'fieldtype': u'Check',
-		'label': u'Item Serial Nos'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'description': u'To track items in sales and purchase documents with batch nos<br><b>Preferred Industry: Chemicals etc</b>',
-		'doctype': u'DocField',
-		'fieldname': u'fs_item_batch_nos',
-		'fieldtype': u'Check',
-		'label': u'Item Batch Nos'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'description': u'To track brand name in the following documents<br>\nDelivery Note, Enuiry, Purchase Request, Item, Purchase Order, Purchase Voucher, Purchaser Receipt, Quotation, Sales Invoice, Sales BOM, Sales Order, Serial No',
-		'doctype': u'DocField',
-		'fieldname': u'fs_brands',
-		'fieldtype': u'Check',
-		'label': u'Brands'
-	},
-
-	# DocField
-	{
-		'description': u'To track items using barcode. You will be able to enter items in Delivery Note and Sales Invoice by scanning barcode of item.',
-		'doctype': u'DocField',
-		'fieldname': u'fs_item_barcode',
-		'fieldtype': u'Check',
-		'label': u'Item Barcode'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'column_break0',
-		'fieldtype': u'Column Break'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'description': u'1. To maintain the customer wise item code and to make them searchable based on their code use this option',
-		'doctype': u'DocField',
-		'fieldname': u'fs_item_advanced',
-		'fieldtype': u'Check',
-		'label': u'Item Advanced'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'description': u'If Sale BOM is defined, the actual BOM of the Pack is displayed as table.\nAvailable in Delivery Note and Sales Order',
-		'doctype': u'DocField',
-		'fieldname': u'fs_packing_details',
-		'fieldtype': u'Check',
-		'label': u'Packing Detials'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'description': u'To get Item Group in details table',
-		'doctype': u'DocField',
-		'fieldname': u'fs_item_group_in_details',
-		'fieldtype': u'Check',
-		'label': u'Item Groups in Details'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'sales_and_purchase',
-		'fieldtype': u'Section Break',
-		'label': u'Sales and Purchase'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'description': u'All export related fields like currency, conversion rate, export total, export grand total etc are available in <br>\nDelivery Note, POS, Quotation, Sales Invoice, Sales Order etc.',
-		'doctype': u'DocField',
-		'fieldname': u'fs_exports',
-		'fieldtype': u'Check',
-		'label': u'Exports'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'description': u'All import related fields like currency, conversion rate, import total, import grand total etc are available in <br>\nPurchase Receipt, Supplier Quotation, Purchase Invoice, Purchase Order etc.',
-		'doctype': u'DocField',
-		'fieldname': u'fs_imports',
-		'fieldtype': u'Check',
-		'label': u'Imports'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'column_break1',
-		'fieldtype': u'Column Break'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'description': u'Field available in Delivery Note, Quotation, Sales Invoice, Sales Order',
-		'doctype': u'DocField',
-		'fieldname': u'fs_discounts',
-		'fieldtype': u'Check',
-		'label': u'Sales Discounts'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'description': u'Discount Fields will be available in Purchase Order, Purchase Receipt, Purchase Invoice',
-		'doctype': u'DocField',
-		'fieldname': u'fs_purchase_discounts',
-		'fieldtype': u'Check',
-		'label': u'Purchase Discounts'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'description': u'To track any installation or commissioning related work after sales',
-		'doctype': u'DocField',
-		'fieldname': u'fs_after_sales_installations',
-		'fieldtype': u'Check',
-		'label': u'After Sale Installations'
-	},
-
-	# DocField
-	{
-		'description': u'Available in \nBOM, Delivery Note, Purchase Invoice, Production Order, Purchase Order, Purchase Receipt, Sales Invoice, Sales Order, Stock Entry, Timesheet',
-		'doctype': u'DocField',
-		'fieldname': u'fs_projects',
-		'fieldtype': u'Check',
-		'label': u'Projects'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'description': u'If you have Sales Team and Sale Partners (Channel Partners)  they can be tagged and maintain their contribution in the sales activity',
-		'doctype': u'DocField',
-		'fieldname': u'fs_sales_extras',
-		'fieldtype': u'Check',
-		'label': u'Sales Extras'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'accounts',
-		'fieldtype': u'Section Break',
-		'label': u'Accounts'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'description': u'Check if you need automatic recurring invoices. After submitting any sales invoice, Recurring section will be visible.',
-		'doctype': u'DocField',
-		'fieldname': u'fs_recurring_invoice',
-		'fieldtype': u'Check',
-		'label': u'Recurring Invoice'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'column_break2',
-		'fieldtype': u'Column Break'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'description': u'To enable <b>Point of Sale</b> features',
-		'doctype': u'DocField',
-		'fieldname': u'fs_pos',
-		'fieldtype': u'Check',
-		'label': u'Point of Sale'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'production',
-		'fieldtype': u'Section Break',
-		'label': u'Production'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'description': u'If you involve in manufacturing activity<br>\nEnables item <b>Is Manufactured</b>',
-		'doctype': u'DocField',
-		'fieldname': u'fs_manufacturing',
-		'fieldtype': u'Check',
-		'label': u'Manufacturing'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'column_break3',
-		'fieldtype': u'Column Break'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'description': u'If you follow Quality Inspection<br>\nEnables item QA Required and QA No in Purchase Receipt',
-		'doctype': u'DocField',
-		'fieldname': u'fs_quality',
-		'fieldtype': u'Check',
-		'label': u'Quality'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'miscelleneous',
-		'fieldtype': u'Section Break',
-		'label': u'Miscelleneous'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'description': u'If you have long print formats, this feature can be used to split the page to be printed on multiple pages with all headers and footers on each page',
-		'doctype': u'DocField',
-		'fieldname': u'fs_page_break',
-		'fieldtype': u'Check',
-		'label': u'Page Break'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'column_break4',
-		'fieldtype': u'Column Break'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'description': u'Enables <b>More Info.</b> in all documents',
-		'doctype': u'DocField',
-		'fieldname': u'fs_more_info',
-		'fieldtype': u'Check',
-		'label': u'More Info'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-04-13 11:56:31", 
+  "modified_by": "Administrator", 
+  "modified": "2012-12-10 18:30:00"
+ }, 
+ {
+  "section_style": "Simple", 
+  "module": "Setup", 
+  "doctype": "DocType", 
+  "issingle": 1, 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "_last_update": "1323840127", 
+  "show_in_menu": 1, 
+  "name_case": "Title Case", 
+  "version": 1
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Features Setup", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "permlevel": 0, 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Features Setup", 
+  "read": 1, 
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "write": 1, 
+  "parenttype": "DocType", 
+  "permlevel": 0, 
+  "parentfield": "permissions"
+ }, 
+ {
+  "name": "Features Setup", 
+  "doctype": "DocType"
+ }, 
+ {
+  "role": "System Manager", 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "role": "Administrator", 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "doctype": "DocField", 
+  "fieldname": "materials", 
+  "fieldtype": "Section Break", 
+  "label": "Materials"
+ }, 
+ {
+  "description": "To track item in sales and purchase documents based on their serial nos. This is can also used to track warranty details of the product.", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Item Serial Nos", 
+  "fieldname": "fs_item_serial_nos", 
+  "fieldtype": "Check"
+ }, 
+ {
+  "description": "To track items in sales and purchase documents with batch nos<br><b>Preferred Industry: Chemicals etc</b>", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Item Batch Nos", 
+  "fieldname": "fs_item_batch_nos", 
+  "fieldtype": "Check"
+ }, 
+ {
+  "description": "To track brand name in the following documents<br>\nDelivery Note, Enuiry, Purchase Request, Item, Purchase Order, Purchase Voucher, Purchaser Receipt, Quotation, Sales Invoice, Sales BOM, Sales Order, Serial No", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Brands", 
+  "fieldname": "fs_brands", 
+  "fieldtype": "Check"
+ }, 
+ {
+  "description": "To track items using barcode. You will be able to enter items in Delivery Note and Sales Invoice by scanning barcode of item.", 
+  "doctype": "DocField", 
+  "label": "Item Barcode", 
+  "fieldname": "fs_item_barcode", 
+  "fieldtype": "Check"
+ }, 
+ {
+  "fieldname": "column_break0", 
+  "fieldtype": "Column Break", 
+  "doctype": "DocField"
+ }, 
+ {
+  "description": "1. To maintain the customer wise item code and to make them searchable based on their code use this option", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Item Advanced", 
+  "fieldname": "fs_item_advanced", 
+  "fieldtype": "Check"
+ }, 
+ {
+  "description": "If Sale BOM is defined, the actual BOM of the Pack is displayed as table.\nAvailable in Delivery Note and Sales Order", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Packing Detials", 
+  "fieldname": "fs_packing_details", 
+  "fieldtype": "Check"
+ }, 
+ {
+  "description": "To get Item Group in details table", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Item Groups in Details", 
+  "fieldname": "fs_item_group_in_details", 
+  "fieldtype": "Check"
+ }, 
+ {
+  "doctype": "DocField", 
+  "fieldname": "sales_and_purchase", 
+  "fieldtype": "Section Break", 
+  "label": "Sales and Purchase"
+ }, 
+ {
+  "description": "All export related fields like currency, conversion rate, export total, export grand total etc are available in <br>\nDelivery Note, POS, Quotation, Sales Invoice, Sales Order etc.", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Exports", 
+  "fieldname": "fs_exports", 
+  "fieldtype": "Check"
+ }, 
+ {
+  "description": "All import related fields like currency, conversion rate, import total, import grand total etc are available in <br>\nPurchase Receipt, Supplier Quotation, Purchase Invoice, Purchase Order etc.", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Imports", 
+  "fieldname": "fs_imports", 
+  "fieldtype": "Check"
+ }, 
+ {
+  "fieldname": "column_break1", 
+  "fieldtype": "Column Break", 
+  "doctype": "DocField"
+ }, 
+ {
+  "description": "Field available in Delivery Note, Quotation, Sales Invoice, Sales Order", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Sales Discounts", 
+  "fieldname": "fs_discounts", 
+  "fieldtype": "Check"
+ }, 
+ {
+  "description": "Discount Fields will be available in Purchase Order, Purchase Receipt, Purchase Invoice", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Purchase Discounts", 
+  "fieldname": "fs_purchase_discounts", 
+  "fieldtype": "Check"
+ }, 
+ {
+  "description": "To track any installation or commissioning related work after sales", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "After Sale Installations", 
+  "fieldname": "fs_after_sales_installations", 
+  "fieldtype": "Check"
+ }, 
+ {
+  "description": "Available in \nBOM, Delivery Note, Purchase Invoice, Production Order, Purchase Order, Purchase Receipt, Sales Invoice, Sales Order, Stock Entry, Timesheet", 
+  "doctype": "DocField", 
+  "label": "Projects", 
+  "fieldname": "fs_projects", 
+  "fieldtype": "Check"
+ }, 
+ {
+  "description": "If you have Sales Team and Sale Partners (Channel Partners)  they can be tagged and maintain their contribution in the sales activity", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Sales Extras", 
+  "fieldname": "fs_sales_extras", 
+  "fieldtype": "Check"
+ }, 
+ {
+  "doctype": "DocField", 
+  "fieldname": "accounts", 
+  "fieldtype": "Section Break", 
+  "label": "Accounts"
+ }, 
+ {
+  "description": "Check if you need automatic recurring invoices. After submitting any sales invoice, Recurring section will be visible.", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Recurring Invoice", 
+  "fieldname": "fs_recurring_invoice", 
+  "fieldtype": "Check"
+ }, 
+ {
+  "fieldname": "column_break2", 
+  "fieldtype": "Column Break", 
+  "doctype": "DocField"
+ }, 
+ {
+  "description": "To enable <b>Point of Sale</b> features", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Point of Sale", 
+  "fieldname": "fs_pos", 
+  "fieldtype": "Check"
+ }, 
+ {
+  "doctype": "DocField", 
+  "fieldname": "production", 
+  "fieldtype": "Section Break", 
+  "label": "Manufacturing"
+ }, 
+ {
+  "description": "If you involve in manufacturing activity<br>\nEnables item <b>Is Manufactured</b>", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Manufacturing", 
+  "fieldname": "fs_manufacturing", 
+  "fieldtype": "Check"
+ }, 
+ {
+  "fieldname": "column_break3", 
+  "fieldtype": "Column Break", 
+  "doctype": "DocField"
+ }, 
+ {
+  "description": "If you follow Quality Inspection<br>\nEnables item QA Required and QA No in Purchase Receipt", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Quality", 
+  "fieldname": "fs_quality", 
+  "fieldtype": "Check"
+ }, 
+ {
+  "doctype": "DocField", 
+  "fieldname": "miscelleneous", 
+  "fieldtype": "Section Break", 
+  "label": "Miscelleneous"
+ }, 
+ {
+  "description": "If you have long print formats, this feature can be used to split the page to be printed on multiple pages with all headers and footers on each page", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Page Break", 
+  "fieldname": "fs_page_break", 
+  "fieldtype": "Check"
+ }, 
+ {
+  "fieldname": "column_break4", 
+  "fieldtype": "Column Break", 
+  "doctype": "DocField"
+ }, 
+ {
+  "description": "Enables <b>More Info.</b> in all documents", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "More Info", 
+  "fieldname": "fs_more_info", 
+  "fieldtype": "Check"
+ }
 ]
\ No newline at end of file
diff --git a/setup/doctype/global_defaults/global_defaults.py b/setup/doctype/global_defaults/global_defaults.py
index 5aa2c9a..48c2365 100644
--- a/setup/doctype/global_defaults/global_defaults.py
+++ b/setup/doctype/global_defaults/global_defaults.py
@@ -17,6 +17,7 @@
 from __future__ import unicode_literals
 """Global Defaults"""
 import webnotes
+from webnotes.utils import cint
 
 keydict = {
 	"fiscal_year": "current_fiscal_year",
@@ -66,12 +67,11 @@
 	
 	def validate_session_expiry(self):
 		if self.doc.session_expiry:
-			from datetime import datetime
-			try:
-				datetime.strptime(self.doc.session_expiry, "%H:%M")
-			except ValueError:
+			parts = self.doc.session_expiry.split(":")
+			if len(parts)!=2 or not (cint(parts[0]) or cint(parts[1])):
 				webnotes.msgprint("""Session Expiry must be in format hh:mm""",
 					raise_exception=1)
+				
 	
 	def get_defaults(self):
 		return webnotes.conn.get_defaults()
diff --git a/setup/doctype/market_segment/market_segment.txt b/setup/doctype/market_segment/market_segment.txt
index 64832d2..c4fdf0c 100644
--- a/setup/doctype/market_segment/market_segment.txt
+++ b/setup/doctype/market_segment/market_segment.txt
@@ -1,77 +1,62 @@
-# DocType, Market Segment
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:36:21',
-		'docstatus': 0,
-		'modified': '2012-03-27 14:36:21',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'allow_trash': 1,
-		'autoname': u'field:segment_name',
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'in_create': 1,
-		'module': u'Setup',
-		'name': '__common__',
-		'name_case': u'Title Case',
-		'read_only': 0,
-		'section_style': u'Simple',
-		'show_in_menu': 0,
-		'version': 1
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'Market Segment',
-		'parentfield': u'fields',
-		'parenttype': u'DocType'
-	},
-
-	# DocType, Market Segment
-	{
-		'doctype': 'DocType',
-		'name': u'Market Segment'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'trash_reason',
-		'fieldtype': u'Small Text',
-		'label': u'Trash Reason',
-		'oldfieldname': u'trash_reason',
-		'oldfieldtype': u'Small Text',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'segment_name',
-		'fieldtype': u'Data',
-		'label': u'Segment Name',
-		'oldfieldname': u'segment_name',
-		'oldfieldtype': u'Data',
-		'permlevel': 0,
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'details',
-		'fieldtype': u'Text',
-		'label': u'Details',
-		'oldfieldname': u'details',
-		'oldfieldtype': u'Text',
-		'permlevel': 0
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-03-27 14:36:21", 
+  "modified_by": "Administrator", 
+  "modified": "2012-03-27 14:36:21"
+ }, 
+ {
+  "section_style": "Simple", 
+  "in_create": 1, 
+  "module": "Setup", 
+  "allow_trash": 1, 
+  "read_only": 0, 
+  "autoname": "field:segment_name", 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "doctype": "DocType", 
+  "show_in_menu": 0, 
+  "name_case": "Title Case", 
+  "version": 1
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Market Segment", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "Market Segment", 
+  "doctype": "DocType"
+ }, 
+ {
+  "oldfieldtype": "Small Text", 
+  "doctype": "DocField", 
+  "label": "Trash Reason", 
+  "oldfieldname": "trash_reason", 
+  "fieldname": "trash_reason", 
+  "fieldtype": "Small Text", 
+  "permlevel": 1
+ }, 
+ {
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Segment Name", 
+  "oldfieldname": "segment_name", 
+  "fieldname": "segment_name", 
+  "fieldtype": "Data", 
+  "reqd": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Text", 
+  "doctype": "DocField", 
+  "label": "Details", 
+  "oldfieldname": "details", 
+  "fieldname": "details", 
+  "fieldtype": "Text", 
+  "permlevel": 0
+ }
 ]
\ No newline at end of file
diff --git a/setup/doctype/naming_series/naming_series.txt b/setup/doctype/naming_series/naming_series.txt
index ff83af8..dcf4fe2 100644
--- a/setup/doctype/naming_series/naming_series.txt
+++ b/setup/doctype/naming_series/naming_series.txt
@@ -1,193 +1,152 @@
-# DocType, Naming Series
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-07-03 13:30:54',
-		'docstatus': 0,
-		'modified': '2012-07-12 15:59:52',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'colour': u'White:FFF',
-		'description': u'Set prefix for numbering series on your transactions',
-		'doctype': 'DocType',
-		'hide_heading': 0,
-		'hide_toolbar': 1,
-		'issingle': 1,
-		'module': u'Setup',
-		'name': '__common__',
-		'read_only': 1,
-		'section_style': u'Tray',
-		'server_code_error': u' ',
-		'show_in_menu': 0,
-		'version': 1
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'Naming Series',
-		'parentfield': u'fields',
-		'parenttype': u'DocType',
-		'permlevel': 0
-	},
-
-	# These values are common for all DocPerm
-	{
-		'doctype': u'DocPerm',
-		'name': '__common__',
-		'parent': u'Naming Series',
-		'parentfield': u'permissions',
-		'parenttype': u'DocType',
-		'read': 1
-	},
-
-	# DocType, Naming Series
-	{
-		'doctype': 'DocType',
-		'name': u'Naming Series'
-	},
-
-	# DocPerm
-	{
-		'create': 1,
-		'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'System Manager',
-		'write': 1
-	},
-
-	# DocPerm
-	{
-		'amend': 0,
-		'cancel': 0,
-		'create': 1,
-		'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'System Manager',
-		'submit': 0,
-		'write': 1
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm',
-		'permlevel': 1,
-		'role': u'System Manager'
-	},
-
-	# DocPerm
-	{
-		'amend': 0,
-		'cancel': 0,
-		'create': 0,
-		'doctype': u'DocPerm',
-		'permlevel': 1,
-		'role': u'System Manager',
-		'submit': 0,
-		'write': 0
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'Guest'
-	},
-
-	# DocField
-	{
-		'description': u'Set prefix for numbering series on your transactions',
-		'doctype': u'DocField',
-		'fieldname': u'setup_series',
-		'fieldtype': u'Section Break',
-		'label': u'Setup Series'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'select_doc_for_series',
-		'fieldtype': u'Select',
-		'label': u'Select Transaction'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'help_html',
-		'fieldtype': u'HTML',
-		'label': u'Help HTML',
-		'options': u'<div class="help-box">\nEdit list of Series in the box below. Each Series Prefix on a new line.<br><br>\nAllowed special characters are "/" and "-"<br>\nExamples:<br>\nINV-<br>\nINV-10-<br>\nINVK-<br>\n</div>'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'set_options',
-		'fieldtype': u'Text',
-		'label': u'Series List for this Transaction'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'description': u'Check this if you want to force the user to select a series before saving. There will be no default if you check this.',
-		'doctype': u'DocField',
-		'fieldname': u'user_must_always_select',
-		'fieldtype': u'Check',
-		'label': u'User must always select'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'doctype': u'DocField',
-		'fieldname': u'update',
-		'fieldtype': u'Button',
-		'label': u'Update'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'description': u'Change the starting / current sequence number of an existing series.',
-		'doctype': u'DocField',
-		'fieldname': u'update_series',
-		'fieldtype': u'Section Break',
-		'label': u'Update Series'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'prefix',
-		'fieldtype': u'Select',
-		'label': u'Prefix'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'description': u'This is the number of the last created transaction with this prefix',
-		'doctype': u'DocField',
-		'fieldname': u'current_value',
-		'fieldtype': u'Int',
-		'label': u'Current Value'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'doctype': u'DocField',
-		'fieldname': u'update_series_start',
-		'fieldtype': u'Button',
-		'label': u'Update Series Number',
-		'options': u'update_series_start'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-07-03 13:30:54", 
+  "modified_by": "Administrator", 
+  "modified": "2012-07-12 15:59:52"
+ }, 
+ {
+  "section_style": "Tray", 
+  "description": "Set prefix for numbering series on your transactions", 
+  "module": "Setup", 
+  "server_code_error": " ", 
+  "read_only": 1, 
+  "hide_heading": 0, 
+  "issingle": 1, 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "doctype": "DocType", 
+  "show_in_menu": 0, 
+  "version": 1, 
+  "hide_toolbar": 1
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Naming Series", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "permlevel": 0, 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Naming Series", 
+  "read": 1, 
+  "doctype": "DocPerm", 
+  "parenttype": "DocType", 
+  "parentfield": "permissions"
+ }, 
+ {
+  "name": "Naming Series", 
+  "doctype": "DocType"
+ }, 
+ {
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "write": 1, 
+  "role": "System Manager", 
+  "permlevel": 0
+ }, 
+ {
+  "amend": 0, 
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "submit": 0, 
+  "write": 1, 
+  "role": "System Manager", 
+  "cancel": 0, 
+  "permlevel": 0
+ }, 
+ {
+  "role": "System Manager", 
+  "permlevel": 1, 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "amend": 0, 
+  "create": 0, 
+  "doctype": "DocPerm", 
+  "submit": 0, 
+  "write": 0, 
+  "role": "System Manager", 
+  "cancel": 0, 
+  "permlevel": 1
+ }, 
+ {
+  "role": "Guest", 
+  "permlevel": 0, 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "description": "Set prefix for numbering series on your transactions", 
+  "doctype": "DocField", 
+  "label": "Setup Series", 
+  "fieldname": "setup_series", 
+  "fieldtype": "Section Break"
+ }, 
+ {
+  "doctype": "DocField", 
+  "fieldname": "select_doc_for_series", 
+  "fieldtype": "Select", 
+  "label": "Select Transaction"
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Help HTML", 
+  "fieldname": "help_html", 
+  "fieldtype": "HTML", 
+  "options": "<div class=\"help-box\">\nEdit list of Series in the box below. Each Series Prefix on a new line.<br><br>\nAllowed special characters are \"/\" and \"-\"<br>\nExamples:<br>\nINV-<br>\nINV-10-<br>\nINVK-<br>\n</div>"
+ }, 
+ {
+  "doctype": "DocField", 
+  "fieldname": "set_options", 
+  "fieldtype": "Text", 
+  "label": "Series List for this Transaction"
+ }, 
+ {
+  "description": "Check this if you want to force the user to select a series before saving. There will be no default if you check this.", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "User must always select", 
+  "fieldname": "user_must_always_select", 
+  "fieldtype": "Check"
+ }, 
+ {
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Update", 
+  "fieldname": "update", 
+  "fieldtype": "Button"
+ }, 
+ {
+  "description": "Change the starting / current sequence number of an existing series.", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Update Series", 
+  "fieldname": "update_series", 
+  "fieldtype": "Section Break"
+ }, 
+ {
+  "doctype": "DocField", 
+  "fieldname": "prefix", 
+  "fieldtype": "Select", 
+  "label": "Prefix"
+ }, 
+ {
+  "description": "This is the number of the last created transaction with this prefix", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Current Value", 
+  "fieldname": "current_value", 
+  "fieldtype": "Int"
+ }, 
+ {
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Update Series Number", 
+  "fieldname": "update_series_start", 
+  "fieldtype": "Button", 
+  "options": "update_series_start"
+ }
 ]
\ No newline at end of file
diff --git a/setup/doctype/naming_series_options/naming_series_options.txt b/setup/doctype/naming_series_options/naming_series_options.txt
index ade734e..64738bf 100644
--- a/setup/doctype/naming_series_options/naming_series_options.txt
+++ b/setup/doctype/naming_series_options/naming_series_options.txt
@@ -1,81 +1,64 @@
-# DocType, Naming Series Options
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:36:21',
-		'docstatus': 0,
-		'modified': '2012-03-27 14:36:21',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'autoname': u'__NSO.#####',
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'in_create': 1,
-		'module': u'Setup',
-		'name': '__common__',
-		'read_only': 0,
-		'section_style': u'Simple',
-		'server_code_error': u' ',
-		'show_in_menu': 0,
-		'version': 5
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'Naming Series Options',
-		'parentfield': u'fields',
-		'parenttype': u'DocType',
-		'permlevel': 0
-	},
-
-	# These values are common for all DocPerm
-	{
-		'doctype': u'DocPerm',
-		'name': '__common__',
-		'parent': u'Naming Series Options',
-		'parentfield': u'permissions',
-		'parenttype': u'DocType',
-		'permlevel': 0,
-		'read': 1,
-		'role': u'System Manager'
-	},
-
-	# DocType, Naming Series Options
-	{
-		'doctype': 'DocType',
-		'name': u'Naming Series Options'
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'doc_type',
-		'fieldtype': u'Data',
-		'label': u'Doc Type',
-		'oldfieldname': u'doc_type',
-		'oldfieldtype': u'Data',
-		'search_index': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'series_options',
-		'fieldtype': u'Text',
-		'label': u'Series Options',
-		'oldfieldname': u'series_options',
-		'oldfieldtype': u'Text'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-03-27 14:36:21", 
+  "modified_by": "Administrator", 
+  "modified": "2012-03-27 14:36:21"
+ }, 
+ {
+  "section_style": "Simple", 
+  "in_create": 1, 
+  "module": "Setup", 
+  "doctype": "DocType", 
+  "autoname": "__NSO.#####", 
+  "show_in_menu": 0, 
+  "read_only": 0, 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "server_code_error": " ", 
+  "version": 5
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Naming Series Options", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "permlevel": 0, 
+  "parentfield": "fields"
+ }, 
+ {
+  "parent": "Naming Series Options", 
+  "read": 1, 
+  "name": "__common__", 
+  "doctype": "DocPerm", 
+  "parenttype": "DocType", 
+  "role": "System Manager", 
+  "permlevel": 0, 
+  "parentfield": "permissions"
+ }, 
+ {
+  "name": "Naming Series Options", 
+  "doctype": "DocType"
+ }, 
+ {
+  "doctype": "DocPerm"
+ }, 
+ {
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Doc Type", 
+  "oldfieldname": "doc_type", 
+  "fieldname": "doc_type", 
+  "fieldtype": "Data", 
+  "search_index": 1
+ }, 
+ {
+  "oldfieldtype": "Text", 
+  "doctype": "DocField", 
+  "label": "Series Options", 
+  "oldfieldname": "series_options", 
+  "fieldname": "series_options", 
+  "fieldtype": "Text"
+ }
 ]
\ No newline at end of file
diff --git a/setup/doctype/notification_control/notification_control.txt b/setup/doctype/notification_control/notification_control.txt
index 15c8eb2..3a17fb5 100644
--- a/setup/doctype/notification_control/notification_control.txt
+++ b/setup/doctype/notification_control/notification_control.txt
@@ -1,273 +1,214 @@
-# DocType, Notification Control
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-07-03 13:30:56',
-		'docstatus': 0,
-		'modified': '2012-07-12 16:20:36',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'allow_copy': 1,
-		'allow_email': 1,
-		'allow_print': 1,
-		'colour': u'White:FFF',
-		'description': u'Send automatic emails to Contacts on Submitting transactions.',
-		'doctype': 'DocType',
-		'issingle': 1,
-		'module': u'Setup',
-		'name': '__common__',
-		'section_style': u'Simple',
-		'server_code_error': u' ',
-		'version': 1
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'Notification Control',
-		'parentfield': u'fields',
-		'parenttype': u'DocType',
-		'permlevel': 0
-	},
-
-	# These values are common for all DocPerm
-	{
-		'doctype': u'DocPerm',
-		'name': '__common__',
-		'parent': u'Notification Control',
-		'parentfield': u'permissions',
-		'parenttype': u'DocType',
-		'permlevel': 0,
-		'read': 1
-	},
-
-	# DocType, Notification Control
-	{
-		'doctype': 'DocType',
-		'name': u'Notification Control'
-	},
-
-	# DocPerm
-	{
-		'create': 0,
-		'doctype': u'DocPerm',
-		'role': u'Guest',
-		'write': 0
-	},
-
-	# DocPerm
-	{
-		'create': 1,
-		'doctype': u'DocPerm',
-		'role': u'System Manager',
-		'write': 1
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'description': u'When any of the checked transactions are "Submitted", an email is automatically sent to the associated "Contact" in that transaction, with the transaction as an attachment.',
-		'doctype': u'DocField',
-		'fieldname': u'send_autonotification_for',
-		'fieldtype': u'Section Break',
-		'label': u'Send Email Automatically on Submission of'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'sales',
-		'fieldtype': u'Column Break',
-		'label': u'Sales',
-		'width': u'50%'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'quotation',
-		'fieldtype': u'Check',
-		'label': u'Quotation'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'sales_order',
-		'fieldtype': u'Check',
-		'label': u'Sales Order'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'delivery_note',
-		'fieldtype': u'Check',
-		'label': u'Delivery Note'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'sales_invoice',
-		'fieldtype': u'Check',
-		'label': u'Sales Invoice'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'purchase',
-		'fieldtype': u'Column Break',
-		'label': u'Purchase',
-		'width': u'50%'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'purchase_order',
-		'fieldtype': u'Check',
-		'label': u'Purchase Order'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'purchase_receipt',
-		'fieldtype': u'Check',
-		'label': u'Purchase Receipt'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'expense_claim',
-		'fieldtype': u'Check',
-		'label': u'Expense Claim'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'description': u'Customize the introductory text that goes as a part of that email. Each transaction has a separate introductory text.',
-		'doctype': u'DocField',
-		'fieldname': u'customize_the_notification',
-		'fieldtype': u'Section Break',
-		'label': u'Customize the Notification'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'doctype': u'DocField',
-		'fieldname': u'select_transaction',
-		'fieldtype': u'Select',
-		'label': u'Select Transaction',
-		'options': u'\nQuotation\nSales Order\nDelivery Note\nSales Invoice\nPurchase Order\nPurchase Receipt\nExpense Claim\nExpense Claim Approved\nExpense Claim Rejected',
-		'trigger': u'Client'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'custom_message',
-		'fieldtype': u'Text Editor',
-		'label': u'Custom Message'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'update',
-		'fieldtype': u'Button',
-		'label': u'Update',
-		'options': u'set_message'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'quotation_message',
-		'fieldtype': u'Text',
-		'hidden': 1,
-		'label': u'Quotation Message',
-		'print_hide': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'sales_order_message',
-		'fieldtype': u'Text',
-		'hidden': 1,
-		'label': u'Sales Order Message',
-		'print_hide': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'delivery_note_message',
-		'fieldtype': u'Text',
-		'hidden': 1,
-		'label': u'Delivery Note Message',
-		'print_hide': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'sales_invoice_message',
-		'fieldtype': u'Text',
-		'hidden': 1,
-		'label': u'Sales Invoice Message',
-		'print_hide': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'purchase_order_message',
-		'fieldtype': u'Text',
-		'hidden': 1,
-		'label': u'Purchase Order Message',
-		'print_hide': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'purchase_receipt_message',
-		'fieldtype': u'Text',
-		'hidden': 1,
-		'label': u'Purchase Receipt Message',
-		'print_hide': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'expense_claim_approved_message',
-		'fieldtype': u'Text',
-		'hidden': 1,
-		'label': u'Expense Claim Approved Message',
-		'print_hide': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'expense_claim_rejected_message',
-		'fieldtype': u'Text',
-		'hidden': 1,
-		'label': u'Expense Claim Rejected Message',
-		'print_hide': 1
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-07-03 13:30:56", 
+  "modified_by": "Administrator", 
+  "modified": "2012-07-12 16:20:36"
+ }, 
+ {
+  "section_style": "Simple", 
+  "description": "Send automatic emails to Contacts on Submitting transactions.", 
+  "allow_print": 1, 
+  "module": "Setup", 
+  "allow_email": 1, 
+  "issingle": 1, 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "doctype": "DocType", 
+  "server_code_error": " ", 
+  "version": 1, 
+  "allow_copy": 1
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Notification Control", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "permlevel": 0, 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Notification Control", 
+  "read": 1, 
+  "doctype": "DocPerm", 
+  "parenttype": "DocType", 
+  "permlevel": 0, 
+  "parentfield": "permissions"
+ }, 
+ {
+  "name": "Notification Control", 
+  "doctype": "DocType"
+ }, 
+ {
+  "write": 0, 
+  "create": 0, 
+  "role": "Guest", 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "write": 1, 
+  "create": 1, 
+  "role": "System Manager", 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "description": "When any of the checked transactions are \"Submitted\", an email is automatically sent to the associated \"Contact\" in that transaction, with the transaction as an attachment.", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Send Email Automatically on Submission of", 
+  "fieldname": "send_autonotification_for", 
+  "fieldtype": "Section Break"
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Sales", 
+  "width": "50%", 
+  "fieldname": "sales", 
+  "fieldtype": "Column Break"
+ }, 
+ {
+  "doctype": "DocField", 
+  "fieldname": "quotation", 
+  "fieldtype": "Check", 
+  "label": "Quotation"
+ }, 
+ {
+  "doctype": "DocField", 
+  "fieldname": "sales_order", 
+  "fieldtype": "Check", 
+  "label": "Sales Order"
+ }, 
+ {
+  "doctype": "DocField", 
+  "fieldname": "delivery_note", 
+  "fieldtype": "Check", 
+  "label": "Delivery Note"
+ }, 
+ {
+  "doctype": "DocField", 
+  "fieldname": "sales_invoice", 
+  "fieldtype": "Check", 
+  "label": "Sales Invoice"
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Purchase", 
+  "width": "50%", 
+  "fieldname": "purchase", 
+  "fieldtype": "Column Break"
+ }, 
+ {
+  "doctype": "DocField", 
+  "fieldname": "purchase_order", 
+  "fieldtype": "Check", 
+  "label": "Purchase Order"
+ }, 
+ {
+  "doctype": "DocField", 
+  "fieldname": "purchase_receipt", 
+  "fieldtype": "Check", 
+  "label": "Purchase Receipt"
+ }, 
+ {
+  "doctype": "DocField", 
+  "fieldname": "expense_claim", 
+  "fieldtype": "Check", 
+  "label": "Expense Claim"
+ }, 
+ {
+  "description": "Customize the introductory text that goes as a part of that email. Each transaction has a separate introductory text.", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Customize the Notification", 
+  "fieldname": "customize_the_notification", 
+  "fieldtype": "Section Break"
+ }, 
+ {
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Select Transaction", 
+  "trigger": "Client", 
+  "fieldname": "select_transaction", 
+  "fieldtype": "Select", 
+  "options": "\nQuotation\nSales Order\nDelivery Note\nSales Invoice\nPurchase Order\nPurchase Receipt\nExpense Claim\nExpense Claim Approved\nExpense Claim Rejected"
+ }, 
+ {
+  "doctype": "DocField", 
+  "fieldname": "custom_message", 
+  "fieldtype": "Text Editor", 
+  "label": "Custom Message"
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Update", 
+  "fieldname": "update", 
+  "fieldtype": "Button", 
+  "options": "set_message"
+ }, 
+ {
+  "print_hide": 1, 
+  "doctype": "DocField", 
+  "label": "Quotation Message", 
+  "fieldname": "quotation_message", 
+  "fieldtype": "Text", 
+  "hidden": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "doctype": "DocField", 
+  "label": "Sales Order Message", 
+  "fieldname": "sales_order_message", 
+  "fieldtype": "Text", 
+  "hidden": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "doctype": "DocField", 
+  "label": "Delivery Note Message", 
+  "fieldname": "delivery_note_message", 
+  "fieldtype": "Text", 
+  "hidden": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "doctype": "DocField", 
+  "label": "Sales Invoice Message", 
+  "fieldname": "sales_invoice_message", 
+  "fieldtype": "Text", 
+  "hidden": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "doctype": "DocField", 
+  "label": "Purchase Order Message", 
+  "fieldname": "purchase_order_message", 
+  "fieldtype": "Text", 
+  "hidden": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "doctype": "DocField", 
+  "label": "Purchase Receipt Message", 
+  "fieldname": "purchase_receipt_message", 
+  "fieldtype": "Text", 
+  "hidden": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "doctype": "DocField", 
+  "label": "Expense Claim Approved Message", 
+  "fieldname": "expense_claim_approved_message", 
+  "fieldtype": "Text", 
+  "hidden": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "doctype": "DocField", 
+  "label": "Expense Claim Rejected Message", 
+  "fieldname": "expense_claim_rejected_message", 
+  "fieldtype": "Text", 
+  "hidden": 1
+ }
 ]
\ No newline at end of file
diff --git a/setup/doctype/permission_control/permission_control.txt b/setup/doctype/permission_control/permission_control.txt
index dd95608..7441452 100644
--- a/setup/doctype/permission_control/permission_control.txt
+++ b/setup/doctype/permission_control/permission_control.txt
@@ -1,33 +1,26 @@
-# DocType, Permission Control
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:36:22',
-		'docstatus': 0,
-		'modified': '2012-03-27 14:36:22',
-		'modified_by': u'Administrator',
-		'owner': u'saumil@webnotestech.com'
-	},
-
-	# These values are common for all DocType
-	{
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'in_create': 1,
-		'issingle': 1,
-		'module': u'Setup',
-		'name': '__common__',
-		'read_only': 1,
-		'section_style': u'Simple',
-		'server_code_error': u' ',
-		'show_in_menu': 0,
-		'version': 15
-	},
-
-	# DocType, Permission Control
-	{
-		'doctype': 'DocType',
-		'name': u'Permission Control'
-	}
+ {
+  "owner": "saumil@webnotestech.com", 
+  "docstatus": 0, 
+  "creation": "2012-03-27 14:36:22", 
+  "modified_by": "Administrator", 
+  "modified": "2012-03-27 14:36:22"
+ }, 
+ {
+  "section_style": "Simple", 
+  "in_create": 1, 
+  "module": "Setup", 
+  "doctype": "DocType", 
+  "server_code_error": " ", 
+  "issingle": 1, 
+  "read_only": 1, 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "show_in_menu": 0, 
+  "version": 15
+ }, 
+ {
+  "name": "Permission Control", 
+  "doctype": "DocType"
+ }
 ]
\ No newline at end of file
diff --git a/setup/doctype/price_list/price_list.txt b/setup/doctype/price_list/price_list.txt
index 9878b53..1e3f9f8 100644
--- a/setup/doctype/price_list/price_list.txt
+++ b/setup/doctype/price_list/price_list.txt
@@ -1,142 +1,115 @@
-# DocType, Price List
 [
-
-	# These values are common in all dictionaries
-	{
-		u'creation': '2012-07-12 23:29:45',
-		u'docstatus': 0,
-		u'modified': '2012-11-15 10:50:52',
-		u'modified_by': u'Administrator',
-		u'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'_last_update': u'1303100817',
-		'allow_attach': 0,
-		'allow_copy': 1,
-		'allow_email': 1,
-		'allow_print': 1,
-		'allow_trash': 1,
-		'autoname': u'field:price_list_name',
-		'colour': u'White:FFF',
-		'description': u'Price List Master',
-		u'doctype': u'DocType',
-		'document_type': u'Master',
-		'max_attachments': 1,
-		'module': u'Setup',
-		u'name': u'__common__',
-		'section_style': u'Simple',
-		'server_code_error': u' ',
-		'show_in_menu': 0,
-		'version': 1
-	},
-
-	# These values are common for all DocField
-	{
-		u'doctype': u'DocField',
-		u'name': u'__common__',
-		'parent': u'Price List',
-		'parentfield': u'fields',
-		'parenttype': u'DocType',
-		'permlevel': 0
-	},
-
-	# These values are common for all DocPerm
-	{
-		'amend': 0,
-		u'doctype': u'DocPerm',
-		u'name': u'__common__',
-		'parent': u'Price List',
-		'parentfield': u'permissions',
-		'parenttype': u'DocType',
-		'read': 1,
-		'submit': 0
-	},
-
-	# DocType, Price List
-	{
-		u'doctype': u'DocType',
-		u'name': u'Price List'
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'price_list_name',
-		'fieldtype': u'Data',
-		'label': u'Price List Name',
-		'oldfieldname': u'price_list_name',
-		'oldfieldtype': u'Data',
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'depends_on': u'price_list_name',
-		u'doctype': u'DocField',
-		'fieldname': u'how_to_upload',
-		'fieldtype': u'HTML',
-		'label': u'How to upload',
-		'options': u'<div class="help">Use the <a href="#data-import-tool">Data Import Tool</a> to upload, update Item Prices in bulk:\n<ol> \n<li>Go to Data Import Tool.\n<li>Select "Item"\n<li>Check on "With Data"\n<li>Download "Item Price" from Child Tables.\n<li>Update the prices required and add new rows if required.\n<li>Check on "Overwrite"\n<li>Upload the modified sheet.\n</div>\n'
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'file_list',
-		'fieldtype': u'Text',
-		'hidden': 1,
-		'label': u'File List'
-	},
-
-	# DocPerm
-	{
-		'cancel': 0,
-		'create': 0,
-		u'doctype': u'DocPerm',
-		'permlevel': 1,
-		'role': u'Sales Manager',
-		'write': 0
-	},
-
-	# DocPerm
-	{
-		'cancel': 0,
-		'create': 0,
-		u'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'Sales Manager',
-		'write': 0
-	},
-
-	# DocPerm
-	{
-		'cancel': 0,
-		'create': 0,
-		u'doctype': u'DocPerm',
-		'permlevel': 1,
-		'role': u'Sales User',
-		'write': 0
-	},
-
-	# DocPerm
-	{
-		'cancel': 0,
-		'create': 0,
-		u'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'Sales User',
-		'write': 0
-	},
-
-	# DocPerm
-	{
-		'cancel': 1,
-		'create': 1,
-		u'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'Sales Master Manager',
-		'write': 1
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-07-12 23:29:45", 
+  "modified_by": "Administrator", 
+  "modified": "2012-11-15 10:50:52"
+ }, 
+ {
+  "section_style": "Simple", 
+  "allow_attach": 0, 
+  "allow_print": 1, 
+  "module": "Setup", 
+  "doctype": "DocType", 
+  "allow_trash": 1, 
+  "server_code_error": " ", 
+  "document_type": "Master", 
+  "description": "Price List Master", 
+  "allow_email": 1, 
+  "autoname": "field:price_list_name", 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "_last_update": "1303100817", 
+  "show_in_menu": 0, 
+  "max_attachments": 1, 
+  "version": 1, 
+  "allow_copy": 1
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Price List", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "permlevel": 0, 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Price List", 
+  "amend": 0, 
+  "doctype": "DocPerm", 
+  "submit": 0, 
+  "read": 1, 
+  "parenttype": "DocType", 
+  "parentfield": "permissions"
+ }, 
+ {
+  "name": "Price List", 
+  "doctype": "DocType"
+ }, 
+ {
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Price List Name", 
+  "oldfieldname": "price_list_name", 
+  "fieldname": "price_list_name", 
+  "fieldtype": "Data", 
+  "reqd": 1
+ }, 
+ {
+  "depends_on": "price_list_name", 
+  "doctype": "DocField", 
+  "label": "How to upload", 
+  "fieldname": "how_to_upload", 
+  "fieldtype": "HTML", 
+  "options": "<div class=\"help\">Use the <a href=\"#data-import-tool\">Data Import Tool</a> to upload, update Item Prices in bulk:\n<ol> \n<li>Go to Data Import Tool.\n<li>Select \"Item\"\n<li>Check on \"With Data\"\n<li>Download \"Item Price\" from Child Tables.\n<li>Update the prices required and add new rows if required.\n<li>Check on \"Overwrite\"\n<li>Upload the modified sheet.\n</div>\n"
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "File List", 
+  "fieldname": "file_list", 
+  "fieldtype": "Text", 
+  "hidden": 1
+ }, 
+ {
+  "create": 0, 
+  "doctype": "DocPerm", 
+  "write": 0, 
+  "role": "Sales Manager", 
+  "cancel": 0, 
+  "permlevel": 1
+ }, 
+ {
+  "create": 0, 
+  "doctype": "DocPerm", 
+  "write": 0, 
+  "role": "Sales Manager", 
+  "cancel": 0, 
+  "permlevel": 0
+ }, 
+ {
+  "create": 0, 
+  "doctype": "DocPerm", 
+  "write": 0, 
+  "role": "Sales User", 
+  "cancel": 0, 
+  "permlevel": 1
+ }, 
+ {
+  "create": 0, 
+  "doctype": "DocPerm", 
+  "write": 0, 
+  "role": "Sales User", 
+  "cancel": 0, 
+  "permlevel": 0
+ }, 
+ {
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "write": 1, 
+  "role": "Sales Master Manager", 
+  "cancel": 1, 
+  "permlevel": 0
+ }
 ]
\ No newline at end of file
diff --git a/setup/doctype/print_heading/print_heading.txt b/setup/doctype/print_heading/print_heading.txt
index a2de331..825accb 100644
--- a/setup/doctype/print_heading/print_heading.txt
+++ b/setup/doctype/print_heading/print_heading.txt
@@ -1,99 +1,80 @@
-# DocType, Print Heading
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:36:22',
-		'docstatus': 0,
-		'modified': '2012-03-27 14:36:22',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'_last_update': u'1294312215',
-		'allow_trash': 1,
-		'autoname': u'field:print_heading',
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'document_type': u'Master',
-		'module': u'Setup',
-		'name': '__common__',
-		'search_fields': u'print_heading',
-		'section_style': u'Simple',
-		'server_code_error': u' ',
-		'version': 27
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'Print Heading',
-		'parentfield': u'fields',
-		'parenttype': u'DocType'
-	},
-
-	# These values are common for all DocPerm
-	{
-		'cancel': 1,
-		'create': 1,
-		'doctype': u'DocPerm',
-		'name': '__common__',
-		'parent': u'Print Heading',
-		'parentfield': u'permissions',
-		'parenttype': u'DocType',
-		'permlevel': 0,
-		'read': 1,
-		'role': u'All',
-		'write': 1
-	},
-
-	# DocType, Print Heading
-	{
-		'doctype': 'DocType',
-		'name': u'Print Heading'
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'trash_reason',
-		'fieldtype': u'Small Text',
-		'label': u'Trash Reason',
-		'oldfieldname': u'trash_reason',
-		'oldfieldtype': u'Small Text',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'print_heading',
-		'fieldtype': u'Data',
-		'in_filter': 1,
-		'label': u'Print Heading',
-		'oldfieldname': u'print_heading',
-		'oldfieldtype': u'Data',
-		'permlevel': 0,
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'description',
-		'fieldtype': u'Small Text',
-		'label': u'Description',
-		'oldfieldname': u'description',
-		'oldfieldtype': u'Small Text',
-		'permlevel': 0,
-		'width': u'300px'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-03-27 14:36:22", 
+  "modified_by": "Administrator", 
+  "modified": "2012-03-27 14:36:22"
+ }, 
+ {
+  "section_style": "Simple", 
+  "search_fields": "print_heading", 
+  "module": "Setup", 
+  "doctype": "DocType", 
+  "allow_trash": 1, 
+  "document_type": "Master", 
+  "autoname": "field:print_heading", 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "_last_update": "1294312215", 
+  "server_code_error": " ", 
+  "version": 27
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Print Heading", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "parentfield": "fields"
+ }, 
+ {
+  "parent": "Print Heading", 
+  "read": 1, 
+  "doctype": "DocPerm", 
+  "cancel": 1, 
+  "name": "__common__", 
+  "create": 1, 
+  "write": 1, 
+  "parenttype": "DocType", 
+  "role": "All", 
+  "permlevel": 0, 
+  "parentfield": "permissions"
+ }, 
+ {
+  "name": "Print Heading", 
+  "doctype": "DocType"
+ }, 
+ {
+  "doctype": "DocPerm"
+ }, 
+ {
+  "oldfieldtype": "Small Text", 
+  "doctype": "DocField", 
+  "label": "Trash Reason", 
+  "oldfieldname": "trash_reason", 
+  "fieldname": "trash_reason", 
+  "fieldtype": "Small Text", 
+  "permlevel": 1
+ }, 
+ {
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Print Heading", 
+  "oldfieldname": "print_heading", 
+  "fieldname": "print_heading", 
+  "fieldtype": "Data", 
+  "reqd": 1, 
+  "permlevel": 0, 
+  "in_filter": 1
+ }, 
+ {
+  "oldfieldtype": "Small Text", 
+  "doctype": "DocField", 
+  "label": "Description", 
+  "oldfieldname": "description", 
+  "width": "300px", 
+  "fieldname": "description", 
+  "fieldtype": "Small Text", 
+  "permlevel": 0
+ }
 ]
\ No newline at end of file
diff --git a/setup/doctype/quotation_lost_reason/quotation_lost_reason.txt b/setup/doctype/quotation_lost_reason/quotation_lost_reason.txt
index 959745a..8554aeb 100644
--- a/setup/doctype/quotation_lost_reason/quotation_lost_reason.txt
+++ b/setup/doctype/quotation_lost_reason/quotation_lost_reason.txt
@@ -1,93 +1,74 @@
-# DocType, Quotation Lost Reason
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:36:22',
-		'docstatus': 0,
-		'modified': '2012-03-27 14:36:22',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'allow_trash': 1,
-		'autoname': u'field:order_lost_reason',
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'document_type': u'Master',
-		'module': u'Setup',
-		'name': '__common__',
-		'section_style': u'Simple',
-		'server_code_error': u' ',
-		'show_in_menu': 0,
-		'version': 4
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'Quotation Lost Reason',
-		'parentfield': u'fields',
-		'parenttype': u'DocType'
-	},
-
-	# These values are common for all DocPerm
-	{
-		'cancel': 1,
-		'create': 1,
-		'doctype': u'DocPerm',
-		'name': '__common__',
-		'parent': u'Quotation Lost Reason',
-		'parentfield': u'permissions',
-		'parenttype': u'DocType',
-		'permlevel': 0,
-		'read': 1,
-		'write': 1
-	},
-
-	# DocType, Quotation Lost Reason
-	{
-		'doctype': 'DocType',
-		'name': u'Quotation Lost Reason'
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm',
-		'role': u'System Manager'
-	},
-
-	# DocPerm
-	{
-		'amend': 0,
-		'doctype': u'DocPerm',
-		'role': u'Sales Master Manager',
-		'submit': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'trash_reason',
-		'fieldtype': u'Small Text',
-		'label': u'Trash Reason',
-		'oldfieldname': u'trash_reason',
-		'oldfieldtype': u'Small Text',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'order_lost_reason',
-		'fieldtype': u'Data',
-		'label': u'Quotation Lost Reason',
-		'oldfieldname': u'order_lost_reason',
-		'oldfieldtype': u'Data',
-		'permlevel': 0,
-		'reqd': 1
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-03-27 14:36:22", 
+  "modified_by": "Administrator", 
+  "modified": "2012-03-27 14:36:22"
+ }, 
+ {
+  "section_style": "Simple", 
+  "module": "Setup", 
+  "server_code_error": " ", 
+  "allow_trash": 1, 
+  "doctype": "DocType", 
+  "autoname": "field:order_lost_reason", 
+  "document_type": "Master", 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "show_in_menu": 0, 
+  "version": 4
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Quotation Lost Reason", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Quotation Lost Reason", 
+  "read": 1, 
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "write": 1, 
+  "cancel": 1, 
+  "parenttype": "DocType", 
+  "permlevel": 0, 
+  "parentfield": "permissions"
+ }, 
+ {
+  "name": "Quotation Lost Reason", 
+  "doctype": "DocType"
+ }, 
+ {
+  "role": "System Manager", 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "amend": 0, 
+  "role": "Sales Master Manager", 
+  "doctype": "DocPerm", 
+  "submit": 0
+ }, 
+ {
+  "oldfieldtype": "Small Text", 
+  "doctype": "DocField", 
+  "label": "Trash Reason", 
+  "oldfieldname": "trash_reason", 
+  "fieldname": "trash_reason", 
+  "fieldtype": "Small Text", 
+  "permlevel": 1
+ }, 
+ {
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Quotation Lost Reason", 
+  "oldfieldname": "order_lost_reason", 
+  "fieldname": "order_lost_reason", 
+  "fieldtype": "Data", 
+  "reqd": 1, 
+  "permlevel": 0
+ }
 ]
\ No newline at end of file
diff --git a/setup/doctype/sales_browser_control/sales_browser_control.txt b/setup/doctype/sales_browser_control/sales_browser_control.txt
index 3370b9e..801b2e0 100644
--- a/setup/doctype/sales_browser_control/sales_browser_control.txt
+++ b/setup/doctype/sales_browser_control/sales_browser_control.txt
@@ -1,30 +1,23 @@
-# DocType, Sales Browser Control
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:36:23',
-		'docstatus': 0,
-		'modified': '2012-03-27 14:36:23',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'issingle': 1,
-		'module': u'Setup',
-		'name': '__common__',
-		'section_style': u'Simple',
-		'server_code_error': u' ',
-		'version': 159
-	},
-
-	# DocType, Sales Browser Control
-	{
-		'doctype': 'DocType',
-		'name': u'Sales Browser Control'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-03-27 14:36:23", 
+  "modified_by": "Administrator", 
+  "modified": "2012-03-27 14:36:23"
+ }, 
+ {
+  "section_style": "Simple", 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "module": "Setup", 
+  "doctype": "DocType", 
+  "version": 159, 
+  "server_code_error": " ", 
+  "issingle": 1
+ }, 
+ {
+  "name": "Sales Browser Control", 
+  "doctype": "DocType"
+ }
 ]
\ No newline at end of file
diff --git a/setup/doctype/sales_partner/sales_partner.txt b/setup/doctype/sales_partner/sales_partner.txt
index 43e869d..adeb1b7 100644
--- a/setup/doctype/sales_partner/sales_partner.txt
+++ b/setup/doctype/sales_partner/sales_partner.txt
@@ -1,327 +1,268 @@
-# DocType, Sales Partner
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-07-03 13:30:54',
-		'docstatus': 0,
-		'modified': '2012-07-12 11:22:15',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'_last_update': u'1322549700',
-		'allow_trash': 1,
-		'autoname': u'field:partner_name',
-		'colour': u'White:FFF',
-		'description': u'A **Sales Partner** is a third party distributor / dealer / commission agent / affiliate / reseller who sells the companies products for a commission. This is useful if you make the end sale to the **Customer**, involving your **Sales Partner**.\n\nIf you sell to your **Sales Partner** who in-turn sells it to the **Customer**, then you must make a **Customer** instead.',
-		'doctype': 'DocType',
-		'document_type': u'Master',
-		'in_create': 0,
-		'module': u'Setup',
-		'name': '__common__',
-		'read_only': 0,
-		'section_style': u'Tabbed',
-		'server_code_error': u' ',
-		'show_in_menu': 0,
-		'version': 1
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'Sales Partner',
-		'parentfield': u'fields',
-		'parenttype': u'DocType'
-	},
-
-	# These values are common for all DocPerm
-	{
-		'doctype': u'DocPerm',
-		'name': '__common__',
-		'parent': u'Sales Partner',
-		'parentfield': u'permissions',
-		'parenttype': u'DocType',
-		'read': 1
-	},
-
-	# DocType, Sales Partner
-	{
-		'doctype': 'DocType',
-		'name': u'Sales Partner'
-	},
-
-	# DocPerm
-	{
-		'amend': 0,
-		'cancel': 0,
-		'create': 0,
-		'doctype': u'DocPerm',
-		'permlevel': 1,
-		'role': u'Sales Manager',
-		'submit': 0,
-		'write': 0
-	},
-
-	# DocPerm
-	{
-		'amend': 0,
-		'cancel': 0,
-		'create': 0,
-		'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'Sales Manager',
-		'submit': 0,
-		'write': 0
-	},
-
-	# DocPerm
-	{
-		'amend': 0,
-		'cancel': 0,
-		'create': 0,
-		'doctype': u'DocPerm',
-		'permlevel': 1,
-		'role': u'Sales User',
-		'submit': 0,
-		'write': 0
-	},
-
-	# DocPerm
-	{
-		'amend': 0,
-		'cancel': 0,
-		'create': 0,
-		'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'Sales User',
-		'submit': 0,
-		'write': 0
-	},
-
-	# DocPerm
-	{
-		'amend': 0,
-		'cancel': 1,
-		'create': 1,
-		'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'Sales Master Manager',
-		'submit': 0,
-		'write': 1
-	},
-
-	# DocPerm
-	{
-		'amend': 0,
-		'cancel': 0,
-		'create': 0,
-		'doctype': u'DocPerm',
-		'permlevel': 1,
-		'role': u'Sales Master Manager',
-		'submit': 0,
-		'write': 0
-	},
-
-	# DocPerm
-	{
-		'cancel': 1,
-		'create': 1,
-		'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'System Manager',
-		'write': 1
-	},
-
-	# DocPerm
-	{
-		'create': 0,
-		'doctype': u'DocPerm',
-		'permlevel': 1,
-		'role': u'System Manager',
-		'write': 0
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'description': u'Note: You Can Manage Multiple Address or Contacts via Addresses & Contacts',
-		'doctype': u'DocField',
-		'fieldname': u'basic_info',
-		'fieldtype': u'Section Break',
-		'label': u'Sales Partner Details',
-		'oldfieldtype': u'Section Break',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'partner_name',
-		'fieldtype': u'Data',
-		'in_filter': 1,
-		'label': u'Sales Partner Name',
-		'oldfieldname': u'partner_name',
-		'oldfieldtype': u'Data',
-		'permlevel': 0,
-		'reqd': 1,
-		'search_index': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'partner_type',
-		'fieldtype': u'Select',
-		'in_filter': 1,
-		'label': u'Partner Type',
-		'oldfieldname': u'partner_type',
-		'oldfieldtype': u'Select',
-		'options': u'\nChannel Partner\nDistributor\nDealer\nAgent\nRetailer\nImplementation Partner\nReseller',
-		'permlevel': 0,
-		'search_index': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'column_break0',
-		'fieldtype': u'Column Break',
-		'oldfieldtype': u'Column Break',
-		'permlevel': 0,
-		'width': u'50%'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'commission_rate',
-		'fieldtype': u'Currency',
-		'label': u'Commission Rate',
-		'oldfieldname': u'commission_rate',
-		'oldfieldtype': u'Currency',
-		'permlevel': 0,
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'territory',
-		'fieldtype': u'Link',
-		'label': u'Territory',
-		'options': u'Territory',
-		'permlevel': 0,
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'address_contacts',
-		'fieldtype': u'Section Break',
-		'label': u'Address & Contacts',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'depends_on': u'eval:doc.__islocal',
-		'doctype': u'DocField',
-		'fieldname': u'address_desc',
-		'fieldtype': u'HTML',
-		'label': u'Address Desc',
-		'options': u'<em>Addresses will appear only when you save the customer</em>',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'address_html',
-		'fieldtype': u'HTML',
-		'label': u'Address HTML',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'column_break1',
-		'fieldtype': u'Column Break',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'depends_on': u'eval:doc.__islocal',
-		'doctype': u'DocField',
-		'fieldname': u'contact_desc',
-		'fieldtype': u'HTML',
-		'label': u'Contact Desc',
-		'options': u'<em>Contact Details will appear only when you save the customer</em>',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'contact_html',
-		'fieldtype': u'HTML',
-		'label': u'Contact HTML',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'partner_target_details_section_break',
-		'fieldtype': u'Section Break',
-		'label': u'Sales Partner Target',
-		'oldfieldtype': u'Section Break',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'partner_target_details',
-		'fieldtype': u'Table',
-		'label': u'Partner Target Detail',
-		'oldfieldname': u'partner_target_details',
-		'oldfieldtype': u'Table',
-		'options': u'Target Detail',
-		'permlevel': 0,
-		'reqd': 0
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'description': u'Select Budget Distribution to unevenly distribute targets across months.',
-		'doctype': u'DocField',
-		'fieldname': u'distribution_id',
-		'fieldtype': u'Link',
-		'label': u'Target Distribution',
-		'oldfieldname': u'distribution_id',
-		'oldfieldtype': u'Link',
-		'options': u'Budget Distribution',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'trash_reason',
-		'fieldtype': u'Small Text',
-		'label': u'Trash Reason',
-		'oldfieldname': u'trash_reason',
-		'oldfieldtype': u'Small Text',
-		'permlevel': 1
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-07-03 13:30:54", 
+  "modified_by": "Administrator", 
+  "modified": "2012-07-12 11:22:15"
+ }, 
+ {
+  "section_style": "Tabbed", 
+  "description": "A **Sales Partner** is a third party distributor / dealer / commission agent / affiliate / reseller who sells the companies products for a commission. This is useful if you make the end sale to the **Customer**, involving your **Sales Partner**.\n\nIf you sell to your **Sales Partner** who in-turn sells it to the **Customer**, then you must make a **Customer** instead.", 
+  "module": "Setup", 
+  "server_code_error": " ", 
+  "allow_trash": 1, 
+  "document_type": "Master", 
+  "in_create": 0, 
+  "read_only": 0, 
+  "_last_update": "1322549700", 
+  "autoname": "field:partner_name", 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "doctype": "DocType", 
+  "show_in_menu": 0, 
+  "version": 1
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Sales Partner", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Sales Partner", 
+  "read": 1, 
+  "doctype": "DocPerm", 
+  "parenttype": "DocType", 
+  "parentfield": "permissions"
+ }, 
+ {
+  "name": "Sales Partner", 
+  "doctype": "DocType"
+ }, 
+ {
+  "amend": 0, 
+  "create": 0, 
+  "doctype": "DocPerm", 
+  "submit": 0, 
+  "write": 0, 
+  "role": "Sales Manager", 
+  "cancel": 0, 
+  "permlevel": 1
+ }, 
+ {
+  "amend": 0, 
+  "create": 0, 
+  "doctype": "DocPerm", 
+  "submit": 0, 
+  "write": 0, 
+  "role": "Sales Manager", 
+  "cancel": 0, 
+  "permlevel": 0
+ }, 
+ {
+  "amend": 0, 
+  "create": 0, 
+  "doctype": "DocPerm", 
+  "submit": 0, 
+  "write": 0, 
+  "role": "Sales User", 
+  "cancel": 0, 
+  "permlevel": 1
+ }, 
+ {
+  "amend": 0, 
+  "create": 0, 
+  "doctype": "DocPerm", 
+  "submit": 0, 
+  "write": 0, 
+  "role": "Sales User", 
+  "cancel": 0, 
+  "permlevel": 0
+ }, 
+ {
+  "amend": 0, 
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "submit": 0, 
+  "write": 1, 
+  "role": "Sales Master Manager", 
+  "cancel": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "amend": 0, 
+  "create": 0, 
+  "doctype": "DocPerm", 
+  "submit": 0, 
+  "write": 0, 
+  "role": "Sales Master Manager", 
+  "cancel": 0, 
+  "permlevel": 1
+ }, 
+ {
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "write": 1, 
+  "role": "System Manager", 
+  "cancel": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "create": 0, 
+  "doctype": "DocPerm", 
+  "write": 0, 
+  "role": "System Manager", 
+  "permlevel": 1
+ }, 
+ {
+  "description": "Note: You Can Manage Multiple Address or Contacts via Addresses & Contacts", 
+  "oldfieldtype": "Section Break", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Sales Partner Details", 
+  "fieldname": "basic_info", 
+  "fieldtype": "Section Break", 
+  "permlevel": 0
+ }, 
+ {
+  "search_index": 1, 
+  "doctype": "DocField", 
+  "label": "Sales Partner Name", 
+  "oldfieldname": "partner_name", 
+  "fieldname": "partner_name", 
+  "fieldtype": "Data", 
+  "oldfieldtype": "Data", 
+  "reqd": 1, 
+  "permlevel": 0, 
+  "in_filter": 1
+ }, 
+ {
+  "search_index": 0, 
+  "doctype": "DocField", 
+  "label": "Partner Type", 
+  "oldfieldname": "partner_type", 
+  "permlevel": 0, 
+  "fieldname": "partner_type", 
+  "fieldtype": "Select", 
+  "oldfieldtype": "Select", 
+  "options": "\nChannel Partner\nDistributor\nDealer\nAgent\nRetailer\nImplementation Partner\nReseller", 
+  "in_filter": 1
+ }, 
+ {
+  "oldfieldtype": "Column Break", 
+  "doctype": "DocField", 
+  "width": "50%", 
+  "fieldname": "column_break0", 
+  "fieldtype": "Column Break", 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Commission Rate", 
+  "oldfieldname": "commission_rate", 
+  "fieldname": "commission_rate", 
+  "fieldtype": "Currency", 
+  "reqd": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Territory", 
+  "options": "Territory", 
+  "fieldname": "territory", 
+  "fieldtype": "Link", 
+  "reqd": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Address & Contacts", 
+  "fieldname": "address_contacts", 
+  "fieldtype": "Section Break", 
+  "permlevel": 0
+ }, 
+ {
+  "depends_on": "eval:doc.__islocal", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Address Desc", 
+  "permlevel": 0, 
+  "fieldname": "address_desc", 
+  "fieldtype": "HTML", 
+  "options": "<em>Addresses will appear only when you save the customer</em>"
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Address HTML", 
+  "fieldname": "address_html", 
+  "fieldtype": "HTML", 
+  "permlevel": 1
+ }, 
+ {
+  "doctype": "DocField", 
+  "fieldname": "column_break1", 
+  "fieldtype": "Column Break", 
+  "permlevel": 0
+ }, 
+ {
+  "depends_on": "eval:doc.__islocal", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Contact Desc", 
+  "permlevel": 0, 
+  "fieldname": "contact_desc", 
+  "fieldtype": "HTML", 
+  "options": "<em>Contact Details will appear only when you save the customer</em>"
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Contact HTML", 
+  "fieldname": "contact_html", 
+  "fieldtype": "HTML", 
+  "permlevel": 1
+ }, 
+ {
+  "oldfieldtype": "Section Break", 
+  "doctype": "DocField", 
+  "label": "Sales Partner Target", 
+  "fieldname": "partner_target_details_section_break", 
+  "fieldtype": "Section Break", 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Table", 
+  "doctype": "DocField", 
+  "label": "Partner Target Detail", 
+  "oldfieldname": "partner_target_details", 
+  "permlevel": 0, 
+  "fieldname": "partner_target_details", 
+  "fieldtype": "Table", 
+  "reqd": 0, 
+  "options": "Target Detail"
+ }, 
+ {
+  "description": "Select Budget Distribution to unevenly distribute targets across months.", 
+  "oldfieldtype": "Link", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Target Distribution", 
+  "oldfieldname": "distribution_id", 
+  "permlevel": 0, 
+  "fieldname": "distribution_id", 
+  "fieldtype": "Link", 
+  "options": "Budget Distribution"
+ }, 
+ {
+  "oldfieldtype": "Small Text", 
+  "doctype": "DocField", 
+  "label": "Trash Reason", 
+  "oldfieldname": "trash_reason", 
+  "fieldname": "trash_reason", 
+  "fieldtype": "Small Text", 
+  "permlevel": 1
+ }
 ]
\ No newline at end of file
diff --git a/setup/doctype/series_detail/series_detail.txt b/setup/doctype/series_detail/series_detail.txt
index f7411c5..c0e9ba4 100644
--- a/setup/doctype/series_detail/series_detail.txt
+++ b/setup/doctype/series_detail/series_detail.txt
@@ -1,61 +1,48 @@
-# DocType, Series Detail
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:36:25',
-		'docstatus': 0,
-		'modified': '2012-03-27 14:36:25',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'istable': 1,
-		'module': u'Setup',
-		'name': '__common__',
-		'section_style': u'Tray',
-		'show_in_menu': 0,
-		'version': 3
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'Series Detail',
-		'parentfield': u'fields',
-		'parenttype': u'DocType',
-		'permlevel': 0
-	},
-
-	# DocType, Series Detail
-	{
-		'doctype': 'DocType',
-		'name': u'Series Detail'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'series',
-		'fieldtype': u'Read Only',
-		'label': u'Series',
-		'oldfieldname': u'series',
-		'oldfieldtype': u'Read Only'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'remove',
-		'fieldtype': u'Check',
-		'label': u'Remove',
-		'oldfieldname': u'remove',
-		'oldfieldtype': u'Check',
-		'trigger': u'Client'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-03-27 14:36:25", 
+  "modified_by": "Administrator", 
+  "modified": "2012-03-27 14:36:25"
+ }, 
+ {
+  "section_style": "Tray", 
+  "istable": 1, 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "module": "Setup", 
+  "doctype": "DocType", 
+  "version": 3, 
+  "show_in_menu": 0
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Series Detail", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "permlevel": 0, 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "Series Detail", 
+  "doctype": "DocType"
+ }, 
+ {
+  "oldfieldtype": "Read Only", 
+  "doctype": "DocField", 
+  "label": "Series", 
+  "oldfieldname": "series", 
+  "fieldname": "series", 
+  "fieldtype": "Read Only"
+ }, 
+ {
+  "oldfieldtype": "Check", 
+  "doctype": "DocField", 
+  "label": "Remove", 
+  "oldfieldname": "remove", 
+  "trigger": "Client", 
+  "fieldname": "remove", 
+  "fieldtype": "Check"
+ }
 ]
\ No newline at end of file
diff --git a/setup/doctype/setup_control/setup_control.py b/setup/doctype/setup_control/setup_control.py
index 3d7e11c..fb0b694 100644
--- a/setup/doctype/setup_control/setup_control.py
+++ b/setup/doctype/setup_control/setup_control.py
@@ -237,7 +237,7 @@
 		self.add_roles(pr)
 	
 	def add_roles(self, pr):
-		roles_list = ['Accounts Manager', 'Accounts User', 'Blogger', 'HR Manager', 'HR User', 'Maintenance User', 'Maintenance Manager', 'Material Manager', 'Material User', 'Material Master Manager', 'Production Manager', 'Production User', 'Projects User', 'Purchase Manager', 'Purchase User', 'Purchase Master Manager', 'Quality Manager', 'Sales Manager', 'Sales User', 'Sales Master Manager', 'Support Manager', 'Support Team', 'System Manager', 'Website Manager']
+		roles_list = ['Accounts Manager', 'Accounts User', 'Blogger', 'HR Manager', 'HR User', 'Maintenance User', 'Maintenance Manager', 'Material Manager', 'Material User', 'Material Master Manager', 'Manufacturing Manager', 'Manufacturing User', 'Projects User', 'Purchase Manager', 'Purchase User', 'Purchase Master Manager', 'Quality Manager', 'Sales Manager', 'Sales User', 'Sales Master Manager', 'Support Manager', 'Support Team', 'System Manager', 'Website Manager']
 		for r in roles_list:
 			d = addchild(pr, 'userroles', 'UserRole', 1)
 			d.role = r
diff --git a/setup/doctype/setup_control/setup_control.txt b/setup/doctype/setup_control/setup_control.txt
index 58ad5f3..e62f84e 100644
--- a/setup/doctype/setup_control/setup_control.txt
+++ b/setup/doctype/setup_control/setup_control.txt
@@ -1,33 +1,26 @@
-# DocType, Setup Control
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:36:25',
-		'docstatus': 0,
-		'modified': '2012-03-27 14:36:25',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'in_create': 1,
-		'issingle': 1,
-		'istable': 0,
-		'module': u'Setup',
-		'name': '__common__',
-		'read_only': 1,
-		'section_style': u'Simple',
-		'server_code_error': u' ',
-		'version': 73
-	},
-
-	# DocType, Setup Control
-	{
-		'doctype': 'DocType',
-		'name': u'Setup Control'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-03-27 14:36:25", 
+  "modified_by": "Administrator", 
+  "modified": "2012-03-27 14:36:25"
+ }, 
+ {
+  "section_style": "Simple", 
+  "istable": 0, 
+  "in_create": 1, 
+  "module": "Setup", 
+  "doctype": "DocType", 
+  "issingle": 1, 
+  "read_only": 1, 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "server_code_error": " ", 
+  "version": 73
+ }, 
+ {
+  "name": "Setup Control", 
+  "doctype": "DocType"
+ }
 ]
\ No newline at end of file
diff --git a/setup/doctype/sms_parameter/sms_parameter.txt b/setup/doctype/sms_parameter/sms_parameter.txt
index fd6a225..c60c1db 100755
--- a/setup/doctype/sms_parameter/sms_parameter.txt
+++ b/setup/doctype/sms_parameter/sms_parameter.txt
@@ -1,57 +1,44 @@
-# DocType, SMS Parameter
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:36:25',
-		'docstatus': 0,
-		'modified': '2012-03-27 14:36:25',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'istable': 1,
-		'module': u'Setup',
-		'name': '__common__',
-		'section_style': u'Simple',
-		'show_in_menu': 0,
-		'version': 4
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'fieldtype': u'Data',
-		'name': '__common__',
-		'parent': u'SMS Parameter',
-		'parentfield': u'fields',
-		'parenttype': u'DocType',
-		'permlevel': 0,
-		'reqd': 1,
-		'width': u'150px'
-	},
-
-	# DocType, SMS Parameter
-	{
-		'doctype': 'DocType',
-		'name': u'SMS Parameter'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'parameter',
-		'label': u'Parameter'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'value',
-		'label': u'Value'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-03-27 14:36:25", 
+  "modified_by": "Administrator", 
+  "modified": "2012-03-27 14:36:25"
+ }, 
+ {
+  "section_style": "Simple", 
+  "istable": 1, 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "module": "Setup", 
+  "doctype": "DocType", 
+  "version": 4, 
+  "show_in_menu": 0
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "SMS Parameter", 
+  "width": "150px", 
+  "doctype": "DocField", 
+  "reqd": 1, 
+  "parenttype": "DocType", 
+  "fieldtype": "Data", 
+  "permlevel": 0, 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "SMS Parameter", 
+  "doctype": "DocType"
+ }, 
+ {
+  "fieldname": "parameter", 
+  "doctype": "DocField", 
+  "label": "Parameter"
+ }, 
+ {
+  "fieldname": "value", 
+  "doctype": "DocField", 
+  "label": "Value"
+ }
 ]
\ No newline at end of file
diff --git a/setup/doctype/sms_settings/sms_settings.txt b/setup/doctype/sms_settings/sms_settings.txt
index e54f436..f16bd8f 100755
--- a/setup/doctype/sms_settings/sms_settings.txt
+++ b/setup/doctype/sms_settings/sms_settings.txt
@@ -1,133 +1,106 @@
-# DocType, SMS Settings
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:36:25',
-		'docstatus': 0,
-		'modified': '2012-03-27 14:36:25',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'_last_update': u'1306304974',
-		'allow_copy': 1,
-		'allow_email': 1,
-		'allow_print': 1,
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'in_create': 0,
-		'issingle': 1,
-		'module': u'Setup',
-		'name': '__common__',
-		'read_only': 0,
-		'section_style': u'Simple',
-		'show_in_menu': 0,
-		'version': 16
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'SMS Settings',
-		'parentfield': u'fields',
-		'parenttype': u'DocType',
-		'permlevel': 0
-	},
-
-	# These values are common for all DocPerm
-	{
-		'doctype': u'DocPerm',
-		'name': '__common__',
-		'parent': u'SMS Settings',
-		'parentfield': u'permissions',
-		'parenttype': u'DocType',
-		'read': 1,
-		'role': u'System Manager'
-	},
-
-	# DocType, SMS Settings
-	{
-		'doctype': 'DocType',
-		'name': u'SMS Settings'
-	},
-
-	# DocPerm
-	{
-		'create': 1,
-		'doctype': u'DocPerm',
-		'permlevel': 0,
-		'write': 1
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'column_break0',
-		'fieldtype': u'Column Break',
-		'width': u'50%'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'description': u'Eg. smsgateway.com/api/send_sms.cgi',
-		'doctype': u'DocField',
-		'fieldname': u'sms_gateway_url',
-		'fieldtype': u'Data',
-		'label': u'SMS Gateway URL',
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'description': u'Enter url parameter for message',
-		'doctype': u'DocField',
-		'fieldname': u'message_parameter',
-		'fieldtype': u'Data',
-		'label': u'Message Parameter',
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'description': u'Enter url parameter for receiver nos',
-		'doctype': u'DocField',
-		'fieldname': u'receiver_parameter',
-		'fieldtype': u'Data',
-		'label': u'Receiver Parameter',
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'doctype': u'DocField',
-		'fieldname': u'static_parameters',
-		'fieldtype': u'Column Break',
-		'label': u'Static Parameters',
-		'width': u'50%'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'description': u'Enter static url parameters here (Eg. sender=ERPNext, username=ERPNext, password=1234 etc.)',
-		'doctype': u'DocField',
-		'fieldname': u'static_parameter_details',
-		'fieldtype': u'Table',
-		'label': u'SMS Parameters',
-		'options': u'SMS Parameter'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-03-27 14:36:25", 
+  "modified_by": "Administrator", 
+  "modified": "2012-03-27 14:36:25"
+ }, 
+ {
+  "section_style": "Simple", 
+  "in_create": 0, 
+  "allow_print": 1, 
+  "module": "Setup", 
+  "doctype": "DocType", 
+  "read_only": 0, 
+  "allow_email": 1, 
+  "issingle": 1, 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "_last_update": "1306304974", 
+  "show_in_menu": 0, 
+  "version": 16, 
+  "allow_copy": 1
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "SMS Settings", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "permlevel": 0, 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "SMS Settings", 
+  "read": 1, 
+  "doctype": "DocPerm", 
+  "parenttype": "DocType", 
+  "role": "System Manager", 
+  "parentfield": "permissions"
+ }, 
+ {
+  "name": "SMS Settings", 
+  "doctype": "DocType"
+ }, 
+ {
+  "write": 1, 
+  "create": 1, 
+  "permlevel": 0, 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "permlevel": 1, 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "width": "50%", 
+  "fieldname": "column_break0", 
+  "fieldtype": "Column Break", 
+  "doctype": "DocField"
+ }, 
+ {
+  "description": "Eg. smsgateway.com/api/send_sms.cgi", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "SMS Gateway URL", 
+  "fieldname": "sms_gateway_url", 
+  "fieldtype": "Data", 
+  "reqd": 1
+ }, 
+ {
+  "description": "Enter url parameter for message", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Message Parameter", 
+  "fieldname": "message_parameter", 
+  "fieldtype": "Data", 
+  "reqd": 1
+ }, 
+ {
+  "description": "Enter url parameter for receiver nos", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Receiver Parameter", 
+  "fieldname": "receiver_parameter", 
+  "fieldtype": "Data", 
+  "reqd": 1
+ }, 
+ {
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Static Parameters", 
+  "width": "50%", 
+  "fieldname": "static_parameters", 
+  "fieldtype": "Column Break"
+ }, 
+ {
+  "description": "Enter static url parameters here (Eg. sender=ERPNext, username=ERPNext, password=1234 etc.)", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "SMS Parameters", 
+  "fieldname": "static_parameter_details", 
+  "fieldtype": "Table", 
+  "options": "SMS Parameter"
+ }
 ]
\ No newline at end of file
diff --git a/setup/doctype/state/state.txt b/setup/doctype/state/state.txt
index b07bb67..8e25d94 100644
--- a/setup/doctype/state/state.txt
+++ b/setup/doctype/state/state.txt
@@ -1,100 +1,79 @@
-# DocType, State
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:36:25',
-		'docstatus': 0,
-		'modified': '2012-03-27 14:36:25',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'autoname': u'field:state_name',
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'document_type': u'Master',
-		'in_create': 0,
-		'module': u'Setup',
-		'name': '__common__',
-		'read_only': 0,
-		'section_style': u'Simple',
-		'server_code_error': u' ',
-		'show_in_menu': 0,
-		'version': 14
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'State',
-		'parentfield': u'fields',
-		'parenttype': u'DocType',
-		'permlevel': 0,
-		'reqd': 1
-	},
-
-	# These values are common for all DocPerm
-	{
-		'create': 1,
-		'doctype': u'DocPerm',
-		'name': '__common__',
-		'parent': u'State',
-		'parentfield': u'permissions',
-		'parenttype': u'DocType',
-		'permlevel': 0,
-		'read': 1,
-		'write': 1
-	},
-
-	# DocType, State
-	{
-		'doctype': 'DocType',
-		'name': u'State'
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm',
-		'role': u'System Manager'
-	},
-
-	# DocPerm
-	{
-		'amend': 0,
-		'cancel': 0,
-		'doctype': u'DocPerm',
-		'role': u'Sales Master Manager',
-		'submit': 0
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm',
-		'role': u'Purchase Master Manager'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'state_name',
-		'fieldtype': u'Data',
-		'label': u'State Name',
-		'oldfieldname': u'state_name',
-		'oldfieldtype': u'Data'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'country',
-		'fieldtype': u'Select',
-		'label': u'Country',
-		'oldfieldname': u'country',
-		'oldfieldtype': u'Select',
-		'options': u'link:Country'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-03-27 14:36:25", 
+  "modified_by": "Administrator", 
+  "modified": "2012-03-27 14:36:25"
+ }, 
+ {
+  "section_style": "Simple", 
+  "in_create": 0, 
+  "module": "Setup", 
+  "server_code_error": " ", 
+  "document_type": "Master", 
+  "read_only": 0, 
+  "autoname": "field:state_name", 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "doctype": "DocType", 
+  "show_in_menu": 0, 
+  "version": 14
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "State", 
+  "doctype": "DocField", 
+  "reqd": 1, 
+  "parenttype": "DocType", 
+  "permlevel": 0, 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "State", 
+  "read": 1, 
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "write": 1, 
+  "parenttype": "DocType", 
+  "permlevel": 0, 
+  "parentfield": "permissions"
+ }, 
+ {
+  "name": "State", 
+  "doctype": "DocType"
+ }, 
+ {
+  "role": "System Manager", 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "amend": 0, 
+  "cancel": 0, 
+  "role": "Sales Master Manager", 
+  "doctype": "DocPerm", 
+  "submit": 0
+ }, 
+ {
+  "role": "Purchase Master Manager", 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "State Name", 
+  "oldfieldname": "state_name", 
+  "fieldname": "state_name", 
+  "fieldtype": "Data"
+ }, 
+ {
+  "oldfieldtype": "Select", 
+  "doctype": "DocField", 
+  "label": "Country", 
+  "oldfieldname": "country", 
+  "fieldname": "country", 
+  "fieldtype": "Select", 
+  "options": "link:Country"
+ }
 ]
\ No newline at end of file
diff --git a/setup/doctype/target_detail/target_detail.txt b/setup/doctype/target_detail/target_detail.txt
index 171f443..1665235 100644
--- a/setup/doctype/target_detail/target_detail.txt
+++ b/setup/doctype/target_detail/target_detail.txt
@@ -1,92 +1,75 @@
-# DocType, Target Detail
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:36:25',
-		'docstatus': 0,
-		'modified': '2012-03-27 14:36:25',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'istable': 1,
-		'module': u'Setup',
-		'name': '__common__',
-		'section_style': u'Tray',
-		'server_code_error': u' ',
-		'show_in_menu': 0,
-		'version': 15
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'Target Detail',
-		'parentfield': u'fields',
-		'parenttype': u'DocType',
-		'permlevel': 0
-	},
-
-	# DocType, Target Detail
-	{
-		'doctype': 'DocType',
-		'name': u'Target Detail'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'item_group',
-		'fieldtype': u'Link',
-		'in_filter': 1,
-		'label': u'Item Group',
-		'oldfieldname': u'item_group',
-		'oldfieldtype': u'Link',
-		'options': u'Item Group',
-		'reqd': 0,
-		'search_index': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'fiscal_year',
-		'fieldtype': u'Select',
-		'in_filter': 1,
-		'label': u'Fiscal Year',
-		'oldfieldname': u'fiscal_year',
-		'oldfieldtype': u'Select',
-		'options': u'link:Fiscal Year',
-		'reqd': 1,
-		'search_index': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'target_qty',
-		'fieldtype': u'Currency',
-		'label': u'Target Qty',
-		'oldfieldname': u'target_qty',
-		'oldfieldtype': u'Currency'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'target_amount',
-		'fieldtype': u'Currency',
-		'in_filter': 1,
-		'label': u'Target  Amount',
-		'oldfieldname': u'target_amount',
-		'oldfieldtype': u'Currency',
-		'reqd': 0,
-		'search_index': 1
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-03-27 14:36:25", 
+  "modified_by": "Administrator", 
+  "modified": "2012-03-27 14:36:25"
+ }, 
+ {
+  "section_style": "Tray", 
+  "istable": 1, 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "module": "Setup", 
+  "show_in_menu": 0, 
+  "version": 15, 
+  "server_code_error": " ", 
+  "doctype": "DocType"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Target Detail", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "permlevel": 0, 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "Target Detail", 
+  "doctype": "DocType"
+ }, 
+ {
+  "search_index": 1, 
+  "doctype": "DocField", 
+  "label": "Item Group", 
+  "oldfieldname": "item_group", 
+  "fieldname": "item_group", 
+  "fieldtype": "Link", 
+  "oldfieldtype": "Link", 
+  "reqd": 0, 
+  "options": "Item Group", 
+  "in_filter": 1
+ }, 
+ {
+  "search_index": 1, 
+  "doctype": "DocField", 
+  "label": "Fiscal Year", 
+  "oldfieldname": "fiscal_year", 
+  "fieldname": "fiscal_year", 
+  "fieldtype": "Select", 
+  "oldfieldtype": "Select", 
+  "reqd": 1, 
+  "options": "link:Fiscal Year", 
+  "in_filter": 1
+ }, 
+ {
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Target Qty", 
+  "oldfieldname": "target_qty", 
+  "fieldname": "target_qty", 
+  "fieldtype": "Currency"
+ }, 
+ {
+  "search_index": 1, 
+  "doctype": "DocField", 
+  "label": "Target  Amount", 
+  "oldfieldname": "target_amount", 
+  "fieldname": "target_amount", 
+  "fieldtype": "Currency", 
+  "oldfieldtype": "Currency", 
+  "reqd": 0, 
+  "in_filter": 1
+ }
 ]
\ No newline at end of file
diff --git a/setup/doctype/terms_and_conditions/terms_and_conditions.txt b/setup/doctype/terms_and_conditions/terms_and_conditions.txt
index 14b1f8c..d4057c6 100644
--- a/setup/doctype/terms_and_conditions/terms_and_conditions.txt
+++ b/setup/doctype/terms_and_conditions/terms_and_conditions.txt
@@ -1,165 +1,134 @@
-# DocType, Terms and Conditions
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-07-03 13:30:54',
-		'docstatus': 0,
-		'modified': '2012-07-12 11:37:56',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'_last_update': u'1322549700',
-		'allow_trash': 1,
-		'autoname': u'field:title',
-		'colour': u'White:FFF',
-		'description': u'Standard Terms and Conditions that can be added to Sales and Purchases.\n\nExamples:\n\n1. Validity of the offer.\n1. Payment Terms (In Advance, On Credit, part advance etc).\n1. What is extra (or payable by the Customer).\n1. Safety / usage warning.\n1. Warranty if any.\n1. Returns Policy.\n1. Terms of shipping, if applicable.\n1. Ways of addressing disputes, indemnity, liability, etc.\n1. Address and Contact of your Company.',
-		'doctype': 'DocType',
-		'document_type': u'Master',
-		'module': u'Setup',
-		'name': '__common__',
-		'section_style': u'Simple',
-		'server_code_error': u' ',
-		'show_in_menu': 0,
-		'version': 1
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'Terms and Conditions',
-		'parentfield': u'fields',
-		'parenttype': u'DocType'
-	},
-
-	# These values are common for all DocPerm
-	{
-		'doctype': u'DocPerm',
-		'name': '__common__',
-		'parent': u'Terms and Conditions',
-		'parentfield': u'permissions',
-		'parenttype': u'DocType',
-		'read': 1
-	},
-
-	# DocType, Terms and Conditions
-	{
-		'doctype': 'DocType',
-		'name': u'Terms and Conditions'
-	},
-
-	# DocPerm
-	{
-		'amend': 0,
-		'cancel': 0,
-		'create': 0,
-		'doctype': u'DocPerm',
-		'permlevel': 1,
-		'role': u'Sales Master Manager',
-		'submit': 0,
-		'write': 0
-	},
-
-	# DocPerm
-	{
-		'amend': 0,
-		'cancel': 1,
-		'create': 1,
-		'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'Sales Master Manager',
-		'submit': 0,
-		'write': 1
-	},
-
-	# DocPerm
-	{
-		'amend': 0,
-		'cancel': 0,
-		'create': 0,
-		'doctype': u'DocPerm',
-		'permlevel': 1,
-		'role': u'Sales User',
-		'submit': 0,
-		'write': 0
-	},
-
-	# DocPerm
-	{
-		'amend': 0,
-		'cancel': 0,
-		'create': 0,
-		'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'Sales User',
-		'submit': 0,
-		'write': 0
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm',
-		'permlevel': 1,
-		'role': u'All'
-	},
-
-	# DocPerm
-	{
-		'cancel': 1,
-		'create': 1,
-		'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'System Manager',
-		'write': 1
-	},
-
-	# DocPerm
-	{
-		'cancel': 1,
-		'create': 1,
-		'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'Accounts User',
-		'write': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'trash_reason',
-		'fieldtype': u'Small Text',
-		'label': u'Trash Reason',
-		'oldfieldname': u'trash_reason',
-		'oldfieldtype': u'Small Text',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'title',
-		'fieldtype': u'Data',
-		'in_filter': 1,
-		'label': u'Title',
-		'oldfieldname': u'title',
-		'oldfieldtype': u'Data',
-		'permlevel': 0,
-		'reqd': 1,
-		'search_index': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'terms',
-		'fieldtype': u'Text Editor',
-		'label': u'Terms and Conditions',
-		'oldfieldname': u'terms',
-		'oldfieldtype': u'Text Editor',
-		'permlevel': 0
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-07-03 13:30:54", 
+  "modified_by": "Administrator", 
+  "modified": "2012-07-12 11:37:56"
+ }, 
+ {
+  "section_style": "Simple", 
+  "description": "Standard Terms and Conditions that can be added to Sales and Purchases.\n\nExamples:\n\n1. Validity of the offer.\n1. Payment Terms (In Advance, On Credit, part advance etc).\n1. What is extra (or payable by the Customer).\n1. Safety / usage warning.\n1. Warranty if any.\n1. Returns Policy.\n1. Terms of shipping, if applicable.\n1. Ways of addressing disputes, indemnity, liability, etc.\n1. Address and Contact of your Company.", 
+  "module": "Setup", 
+  "doctype": "DocType", 
+  "allow_trash": 1, 
+  "server_code_error": " ", 
+  "document_type": "Master", 
+  "autoname": "field:title", 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "_last_update": "1322549700", 
+  "show_in_menu": 0, 
+  "version": 1
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Terms and Conditions", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Terms and Conditions", 
+  "read": 1, 
+  "doctype": "DocPerm", 
+  "parenttype": "DocType", 
+  "parentfield": "permissions"
+ }, 
+ {
+  "name": "Terms and Conditions", 
+  "doctype": "DocType"
+ }, 
+ {
+  "amend": 0, 
+  "create": 0, 
+  "doctype": "DocPerm", 
+  "submit": 0, 
+  "write": 0, 
+  "role": "Sales Master Manager", 
+  "cancel": 0, 
+  "permlevel": 1
+ }, 
+ {
+  "amend": 0, 
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "submit": 0, 
+  "write": 1, 
+  "role": "Sales Master Manager", 
+  "cancel": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "amend": 0, 
+  "create": 0, 
+  "doctype": "DocPerm", 
+  "submit": 0, 
+  "write": 0, 
+  "role": "Sales User", 
+  "cancel": 0, 
+  "permlevel": 1
+ }, 
+ {
+  "amend": 0, 
+  "create": 0, 
+  "doctype": "DocPerm", 
+  "submit": 0, 
+  "write": 0, 
+  "role": "Sales User", 
+  "cancel": 0, 
+  "permlevel": 0
+ }, 
+ {
+  "role": "All", 
+  "permlevel": 1, 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "write": 1, 
+  "role": "System Manager", 
+  "cancel": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "write": 1, 
+  "role": "Accounts User", 
+  "cancel": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Small Text", 
+  "doctype": "DocField", 
+  "label": "Trash Reason", 
+  "oldfieldname": "trash_reason", 
+  "fieldname": "trash_reason", 
+  "fieldtype": "Small Text", 
+  "permlevel": 1
+ }, 
+ {
+  "search_index": 0, 
+  "doctype": "DocField", 
+  "label": "Title", 
+  "oldfieldname": "title", 
+  "fieldname": "title", 
+  "fieldtype": "Data", 
+  "oldfieldtype": "Data", 
+  "reqd": 1, 
+  "permlevel": 0, 
+  "in_filter": 1
+ }, 
+ {
+  "oldfieldtype": "Text Editor", 
+  "doctype": "DocField", 
+  "label": "Terms and Conditions", 
+  "oldfieldname": "terms", 
+  "fieldname": "terms", 
+  "fieldtype": "Text Editor", 
+  "permlevel": 0
+ }
 ]
\ No newline at end of file
diff --git a/setup/doctype/uom/uom.txt b/setup/doctype/uom/uom.txt
index 93b5ff9..beb3868 100644
--- a/setup/doctype/uom/uom.txt
+++ b/setup/doctype/uom/uom.txt
@@ -1,138 +1,111 @@
-# DocType, UOM
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:36:26',
-		'docstatus': 0,
-		'modified': '2012-03-27 14:36:26',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'_last_update': u'1307707462',
-		'allow_trash': 1,
-		'autoname': u'field:uom_name',
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'document_type': u'Master',
-		'module': u'Setup',
-		'name': '__common__',
-		'section_style': u'Tabbed',
-		'server_code_error': u' ',
-		'show_in_menu': 0,
-		'version': 5
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'UOM',
-		'parentfield': u'fields',
-		'parenttype': u'DocType'
-	},
-
-	# These values are common for all DocPerm
-	{
-		'amend': 0,
-		'doctype': u'DocPerm',
-		'name': '__common__',
-		'parent': u'UOM',
-		'parentfield': u'permissions',
-		'parenttype': u'DocType',
-		'read': 1,
-		'submit': 0
-	},
-
-	# DocType, UOM
-	{
-		'doctype': 'DocType',
-		'name': u'UOM'
-	},
-
-	# DocPerm
-	{
-		'cancel': 1,
-		'create': 1,
-		'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'Material Master Manager',
-		'write': 1
-	},
-
-	# DocPerm
-	{
-		'cancel': 0,
-		'create': 0,
-		'doctype': u'DocPerm',
-		'permlevel': 1,
-		'role': u'Material Manager',
-		'write': 0
-	},
-
-	# DocPerm
-	{
-		'cancel': 0,
-		'create': 0,
-		'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'Material Manager',
-		'write': 0
-	},
-
-	# DocPerm
-	{
-		'cancel': 0,
-		'create': 0,
-		'doctype': u'DocPerm',
-		'permlevel': 1,
-		'role': u'Material User',
-		'write': 0
-	},
-
-	# DocPerm
-	{
-		'cancel': 0,
-		'create': 0,
-		'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'Material User',
-		'write': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'trash_reason',
-		'fieldtype': u'Small Text',
-		'label': u'Trash Reason',
-		'oldfieldname': u'trash_reason',
-		'oldfieldtype': u'Small Text',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'uom_details',
-		'fieldtype': u'Section Break',
-		'label': u'UOM Details',
-		'oldfieldtype': u'Section Break',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'uom_name',
-		'fieldtype': u'Data',
-		'label': u'UOM Name',
-		'oldfieldname': u'uom_name',
-		'oldfieldtype': u'Data',
-		'permlevel': 0,
-		'reqd': 1
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-03-27 14:36:26", 
+  "modified_by": "Administrator", 
+  "modified": "2012-03-27 14:36:26"
+ }, 
+ {
+  "section_style": "Tabbed", 
+  "module": "Setup", 
+  "doctype": "DocType", 
+  "allow_trash": 1, 
+  "server_code_error": " ", 
+  "document_type": "Master", 
+  "autoname": "field:uom_name", 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "_last_update": "1307707462", 
+  "show_in_menu": 0, 
+  "version": 5
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "UOM", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "UOM", 
+  "read": 1, 
+  "doctype": "DocPerm", 
+  "submit": 0, 
+  "amend": 0, 
+  "parenttype": "DocType", 
+  "parentfield": "permissions"
+ }, 
+ {
+  "name": "UOM", 
+  "doctype": "DocType"
+ }, 
+ {
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "write": 1, 
+  "role": "Material Master Manager", 
+  "cancel": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "create": 0, 
+  "doctype": "DocPerm", 
+  "write": 0, 
+  "role": "Material Manager", 
+  "cancel": 0, 
+  "permlevel": 1
+ }, 
+ {
+  "create": 0, 
+  "doctype": "DocPerm", 
+  "write": 0, 
+  "role": "Material Manager", 
+  "cancel": 0, 
+  "permlevel": 0
+ }, 
+ {
+  "create": 0, 
+  "doctype": "DocPerm", 
+  "write": 0, 
+  "role": "Material User", 
+  "cancel": 0, 
+  "permlevel": 1
+ }, 
+ {
+  "create": 0, 
+  "doctype": "DocPerm", 
+  "write": 0, 
+  "role": "Material User", 
+  "cancel": 0, 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Small Text", 
+  "doctype": "DocField", 
+  "label": "Trash Reason", 
+  "oldfieldname": "trash_reason", 
+  "fieldname": "trash_reason", 
+  "fieldtype": "Small Text", 
+  "permlevel": 1
+ }, 
+ {
+  "oldfieldtype": "Section Break", 
+  "doctype": "DocField", 
+  "label": "UOM Details", 
+  "fieldname": "uom_details", 
+  "fieldtype": "Section Break", 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "UOM Name", 
+  "oldfieldname": "uom_name", 
+  "fieldname": "uom_name", 
+  "fieldtype": "Data", 
+  "reqd": 1, 
+  "permlevel": 0
+ }
 ]
\ No newline at end of file
diff --git a/setup/doctype/warehouse_type/warehouse_type.txt b/setup/doctype/warehouse_type/warehouse_type.txt
index 6015752..e5c5422 100644
--- a/setup/doctype/warehouse_type/warehouse_type.txt
+++ b/setup/doctype/warehouse_type/warehouse_type.txt
@@ -1,129 +1,104 @@
-# DocType, Warehouse Type
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:36:26',
-		'docstatus': 0,
-		'modified': '2012-03-27 14:36:26',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'allow_trash': 1,
-		'autoname': u'field:warehouse_type',
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'istable': 0,
-		'module': u'Setup',
-		'name': '__common__',
-		'section_style': u'Simple',
-		'server_code_error': u' ',
-		'show_in_menu': 0,
-		'version': 6
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'Warehouse Type',
-		'parentfield': u'fields',
-		'parenttype': u'DocType'
-	},
-
-	# These values are common for all DocPerm
-	{
-		'amend': 0,
-		'doctype': u'DocPerm',
-		'name': '__common__',
-		'parent': u'Warehouse Type',
-		'parentfield': u'permissions',
-		'parenttype': u'DocType',
-		'read': 1,
-		'submit': 0
-	},
-
-	# DocType, Warehouse Type
-	{
-		'doctype': 'DocType',
-		'name': u'Warehouse Type'
-	},
-
-	# DocPerm
-	{
-		'cancel': 1,
-		'create': 1,
-		'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'Material Master Manager',
-		'write': 1
-	},
-
-	# DocPerm
-	{
-		'cancel': 0,
-		'create': 0,
-		'doctype': u'DocPerm',
-		'permlevel': 1,
-		'role': u'Material Manager',
-		'write': 0
-	},
-
-	# DocPerm
-	{
-		'cancel': 0,
-		'create': 0,
-		'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'Material Manager',
-		'write': 0
-	},
-
-	# DocPerm
-	{
-		'cancel': 0,
-		'create': 0,
-		'doctype': u'DocPerm',
-		'permlevel': 1,
-		'role': u'Material User',
-		'write': 0
-	},
-
-	# DocPerm
-	{
-		'cancel': 0,
-		'create': 0,
-		'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'Material User',
-		'write': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'trash_reason',
-		'fieldtype': u'Small Text',
-		'label': u'Trash Reason',
-		'oldfieldname': u'trash_reason',
-		'oldfieldtype': u'Small Text',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'warehouse_type',
-		'fieldtype': u'Data',
-		'in_filter': 1,
-		'label': u'Warehouse Type',
-		'oldfieldname': u'warehouse_type',
-		'oldfieldtype': u'Data',
-		'permlevel': 0,
-		'reqd': 1,
-		'search_index': 1
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-03-27 14:36:26", 
+  "modified_by": "Administrator", 
+  "modified": "2012-03-27 14:36:26"
+ }, 
+ {
+  "section_style": "Simple", 
+  "istable": 0, 
+  "module": "Setup", 
+  "doctype": "DocType", 
+  "allow_trash": 1, 
+  "autoname": "field:warehouse_type", 
+  "show_in_menu": 0, 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "server_code_error": " ", 
+  "version": 6
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Warehouse Type", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Warehouse Type", 
+  "read": 1, 
+  "doctype": "DocPerm", 
+  "submit": 0, 
+  "amend": 0, 
+  "parenttype": "DocType", 
+  "parentfield": "permissions"
+ }, 
+ {
+  "name": "Warehouse Type", 
+  "doctype": "DocType"
+ }, 
+ {
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "write": 1, 
+  "role": "Material Master Manager", 
+  "cancel": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "create": 0, 
+  "doctype": "DocPerm", 
+  "write": 0, 
+  "role": "Material Manager", 
+  "cancel": 0, 
+  "permlevel": 1
+ }, 
+ {
+  "create": 0, 
+  "doctype": "DocPerm", 
+  "write": 0, 
+  "role": "Material Manager", 
+  "cancel": 0, 
+  "permlevel": 0
+ }, 
+ {
+  "create": 0, 
+  "doctype": "DocPerm", 
+  "write": 0, 
+  "role": "Material User", 
+  "cancel": 0, 
+  "permlevel": 1
+ }, 
+ {
+  "create": 0, 
+  "doctype": "DocPerm", 
+  "write": 0, 
+  "role": "Material User", 
+  "cancel": 0, 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Small Text", 
+  "doctype": "DocField", 
+  "label": "Trash Reason", 
+  "oldfieldname": "trash_reason", 
+  "fieldname": "trash_reason", 
+  "fieldtype": "Small Text", 
+  "permlevel": 1
+ }, 
+ {
+  "search_index": 1, 
+  "doctype": "DocField", 
+  "label": "Warehouse Type", 
+  "oldfieldname": "warehouse_type", 
+  "fieldname": "warehouse_type", 
+  "fieldtype": "Data", 
+  "oldfieldtype": "Data", 
+  "reqd": 1, 
+  "permlevel": 0, 
+  "in_filter": 1
+ }
 ]
\ No newline at end of file
diff --git a/setup/doctype/workflow_action_detail/workflow_action_detail.txt b/setup/doctype/workflow_action_detail/workflow_action_detail.txt
index 660eb11..95e0d4f 100644
--- a/setup/doctype/workflow_action_detail/workflow_action_detail.txt
+++ b/setup/doctype/workflow_action_detail/workflow_action_detail.txt
@@ -1,61 +1,48 @@
-# DocType, Workflow Action Detail
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:36:26',
-		'docstatus': 0,
-		'modified': '2012-03-27 14:36:26',
-		'modified_by': u'Administrator',
-		'owner': u'swarnalata@webnotestech.com'
-	},
-
-	# These values are common for all DocType
-	{
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'istable': 1,
-		'module': u'Setup',
-		'name': '__common__',
-		'section_style': u'Simple',
-		'show_in_menu': 0,
-		'version': 5
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'Workflow Action Detail',
-		'parentfield': u'fields',
-		'parenttype': u'DocType',
-		'permlevel': 0,
-		'width': u'200px'
-	},
-
-	# DocType, Workflow Action Detail
-	{
-		'doctype': 'DocType',
-		'name': u'Workflow Action Detail'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'action_field',
-		'fieldtype': u'Select',
-		'label': u'Field',
-		'oldfieldname': u'action_field',
-		'oldfieldtype': u'Select'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'action_value',
-		'fieldtype': u'Data',
-		'label': u'Value',
-		'oldfieldname': u'action_value',
-		'oldfieldtype': u'Data'
-	}
+ {
+  "owner": "swarnalata@webnotestech.com", 
+  "docstatus": 0, 
+  "creation": "2012-03-27 14:36:26", 
+  "modified_by": "Administrator", 
+  "modified": "2012-03-27 14:36:26"
+ }, 
+ {
+  "section_style": "Simple", 
+  "istable": 1, 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "module": "Setup", 
+  "doctype": "DocType", 
+  "version": 5, 
+  "show_in_menu": 0
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Workflow Action Detail", 
+  "doctype": "DocField", 
+  "width": "200px", 
+  "parenttype": "DocType", 
+  "permlevel": 0, 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "Workflow Action Detail", 
+  "doctype": "DocType"
+ }, 
+ {
+  "oldfieldtype": "Select", 
+  "doctype": "DocField", 
+  "label": "Field", 
+  "oldfieldname": "action_field", 
+  "fieldname": "action_field", 
+  "fieldtype": "Select"
+ }, 
+ {
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Value", 
+  "oldfieldname": "action_value", 
+  "fieldname": "action_value", 
+  "fieldtype": "Data"
+ }
 ]
\ No newline at end of file
diff --git a/setup/doctype/workflow_engine/workflow_engine.txt b/setup/doctype/workflow_engine/workflow_engine.txt
index f6e3ce7..efb9dab 100644
--- a/setup/doctype/workflow_engine/workflow_engine.txt
+++ b/setup/doctype/workflow_engine/workflow_engine.txt
@@ -1,31 +1,24 @@
-# DocType, Workflow Engine
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:36:26',
-		'docstatus': 0,
-		'modified': '2012-03-27 14:36:26',
-		'modified_by': u'Administrator',
-		'owner': u'swarnalata@webnotestech.com'
-	},
-
-	# These values are common for all DocType
-	{
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'issingle': 1,
-		'module': u'Setup',
-		'name': '__common__',
-		'section_style': u'Simple',
-		'server_code_error': u' ',
-		'show_in_menu': 0,
-		'version': 4
-	},
-
-	# DocType, Workflow Engine
-	{
-		'doctype': 'DocType',
-		'name': u'Workflow Engine'
-	}
+ {
+  "owner": "swarnalata@webnotestech.com", 
+  "docstatus": 0, 
+  "creation": "2012-03-27 14:36:26", 
+  "modified_by": "Administrator", 
+  "modified": "2012-03-27 14:36:26"
+ }, 
+ {
+  "section_style": "Simple", 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "module": "Setup", 
+  "show_in_menu": 0, 
+  "version": 4, 
+  "server_code_error": " ", 
+  "doctype": "DocType", 
+  "issingle": 1
+ }, 
+ {
+  "name": "Workflow Engine", 
+  "doctype": "DocType"
+ }
 ]
\ No newline at end of file
diff --git a/setup/doctype/workflow_rule/workflow_rule.txt b/setup/doctype/workflow_rule/workflow_rule.txt
index 5b4d56c..dfa555f 100644
--- a/setup/doctype/workflow_rule/workflow_rule.txt
+++ b/setup/doctype/workflow_rule/workflow_rule.txt
@@ -1,247 +1,204 @@
-# DocType, Workflow Rule
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:36:26',
-		'docstatus': 0,
-		'modified': '2012-03-27 14:36:26',
-		'modified_by': u'Administrator',
-		'owner': u'swarnalata@webnotestech.com'
-	},
-
-	# These values are common for all DocType
-	{
-		'autoname': u'field:rule_name',
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'document_type': u'Master',
-		'module': u'Setup',
-		'name': '__common__',
-		'search_fields': u'select_form,rule_status',
-		'section_style': u'Tray',
-		'server_code_error': u' ',
-		'show_in_menu': 0,
-		'version': 31
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'Workflow Rule',
-		'parentfield': u'fields',
-		'parenttype': u'DocType',
-		'permlevel': 0
-	},
-
-	# These values are common for all DocPerm
-	{
-		'create': 1,
-		'doctype': u'DocPerm',
-		'name': '__common__',
-		'parent': u'Workflow Rule',
-		'parentfield': u'permissions',
-		'parenttype': u'DocType',
-		'permlevel': 0,
-		'read': 1,
-		'role': u'System Manager',
-		'write': 1
-	},
-
-	# DocType, Workflow Rule
-	{
-		'doctype': 'DocType',
-		'name': u'Workflow Rule'
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'rule_definition',
-		'fieldtype': u'Section Break',
-		'label': u'Rule Definition',
-		'oldfieldtype': u'Section Break'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'intro_html',
-		'fieldtype': u'HTML',
-		'label': u'Intro HTML',
-		'oldfieldtype': u'HTML',
-		'options': u'<b>Select form for which you want to define rules,set priority & status.</b>'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'rule_name',
-		'fieldtype': u'Data',
-		'label': u'Rule Name',
-		'oldfieldname': u'rule_name',
-		'oldfieldtype': u'Data',
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'doctype': u'DocField',
-		'fieldname': u'rule_status',
-		'fieldtype': u'Select',
-		'in_filter': 1,
-		'label': u'Rule Status',
-		'oldfieldname': u'rule_status',
-		'oldfieldtype': u'Select',
-		'options': u'\nActive\nInactive',
-		'reqd': 1,
-		'search_index': 0
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'doctype': u'DocField',
-		'fieldname': u'select_form',
-		'fieldtype': u'Link',
-		'in_filter': 1,
-		'label': u'Select Form',
-		'oldfieldname': u'select_form',
-		'oldfieldtype': u'Link',
-		'options': u'DocType',
-		'reqd': 1,
-		'search_index': 1,
-		'trigger': u'Client'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'rule_priority',
-		'fieldtype': u'Int',
-		'label': u'Rule Priority',
-		'oldfieldname': u'rule_priority',
-		'oldfieldtype': u'Int',
-		'reqd': 0
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'doctype': u'DocField',
-		'fieldname': u'define_rule',
-		'fieldtype': u'Section Break',
-		'label': u'Define Rule',
-		'oldfieldtype': u'Section Break',
-		'options': u'Simple'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'workflow_rule_details',
-		'fieldtype': u'Table',
-		'label': u'Workflow Rule Details',
-		'oldfieldname': u'workflow_rule_details',
-		'oldfieldtype': u'Table',
-		'options': u'Workflow Rule Detail',
-		'width': u'100px'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'doctype': u'DocField',
-		'fieldname': u'extra_condition',
-		'fieldtype': u'Code',
-		'hidden': 1,
-		'label': u'Extra Condition',
-		'oldfieldname': u'extra_condition',
-		'oldfieldtype': u'Code',
-		'print_hide': 1
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'doctype': u'DocField',
-		'fieldname': u'action_detail',
-		'fieldtype': u'Section Break',
-		'label': u'Action Detail',
-		'oldfieldtype': u'Section Break'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'action_html',
-		'fieldtype': u'HTML',
-		'label': u'Action html',
-		'oldfieldtype': u'HTML',
-		'options': u'<b>Specify actions to be taken  when conditions hold satisfied</b>'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'workflow_action_details',
-		'fieldtype': u'Table',
-		'label': u'Workflow Action Details',
-		'oldfieldname': u'workflow_action_details',
-		'oldfieldtype': u'Table',
-		'options': u'Workflow Action Detail'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'doctype': u'DocField',
-		'fieldname': u'reject_html',
-		'fieldtype': u'HTML',
-		'hidden': 1,
-		'label': u'Reject HTML',
-		'no_copy': 1,
-		'oldfieldtype': u'HTML',
-		'options': u"<b>If any condition holds false the following message will be displayed . If you wish to stop rule engine when condition holds false then set 'Raise Exception' as 'Yes' otherwise keep this field blank or 'No'.</b>",
-		'print_hide': 1,
-		'report_hide': 1
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'doctype': u'DocField',
-		'fieldname': u'message',
-		'fieldtype': u'Text',
-		'hidden': 1,
-		'label': u'Enter message',
-		'no_copy': 1,
-		'oldfieldname': u'message',
-		'oldfieldtype': u'Text',
-		'print_hide': 1,
-		'report_hide': 1
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'doctype': u'DocField',
-		'fieldname': u'raise_exception',
-		'fieldtype': u'Select',
-		'hidden': 1,
-		'label': u'Raise Exception',
-		'no_copy': 1,
-		'oldfieldname': u'raise_exception',
-		'oldfieldtype': u'Select',
-		'options': u'\nYes\nNo',
-		'print_hide': 1,
-		'report_hide': 1
-	}
+ {
+  "owner": "swarnalata@webnotestech.com", 
+  "docstatus": 0, 
+  "creation": "2012-03-27 14:36:26", 
+  "modified_by": "Administrator", 
+  "modified": "2012-03-27 14:36:26"
+ }, 
+ {
+  "section_style": "Tray", 
+  "search_fields": "select_form,rule_status", 
+  "module": "Setup", 
+  "server_code_error": " ", 
+  "doctype": "DocType", 
+  "autoname": "field:rule_name", 
+  "document_type": "Master", 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "show_in_menu": 0, 
+  "version": 31
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Workflow Rule", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "permlevel": 0, 
+  "parentfield": "fields"
+ }, 
+ {
+  "parent": "Workflow Rule", 
+  "read": 1, 
+  "name": "__common__", 
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "write": 1, 
+  "parenttype": "DocType", 
+  "role": "System Manager", 
+  "permlevel": 0, 
+  "parentfield": "permissions"
+ }, 
+ {
+  "name": "Workflow Rule", 
+  "doctype": "DocType"
+ }, 
+ {
+  "doctype": "DocPerm"
+ }, 
+ {
+  "oldfieldtype": "Section Break", 
+  "doctype": "DocField", 
+  "label": "Rule Definition", 
+  "fieldname": "rule_definition", 
+  "fieldtype": "Section Break"
+ }, 
+ {
+  "oldfieldtype": "HTML", 
+  "doctype": "DocField", 
+  "label": "Intro HTML", 
+  "fieldname": "intro_html", 
+  "fieldtype": "HTML", 
+  "options": "<b>Select form for which you want to define rules,set priority & status.</b>"
+ }, 
+ {
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Rule Name", 
+  "oldfieldname": "rule_name", 
+  "fieldname": "rule_name", 
+  "fieldtype": "Data", 
+  "reqd": 1
+ }, 
+ {
+  "search_index": 0, 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Rule Status", 
+  "oldfieldname": "rule_status", 
+  "fieldname": "rule_status", 
+  "fieldtype": "Select", 
+  "oldfieldtype": "Select", 
+  "reqd": 1, 
+  "options": "\nActive\nInactive", 
+  "in_filter": 1
+ }, 
+ {
+  "oldfieldtype": "Link", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Select Form", 
+  "oldfieldname": "select_form", 
+  "trigger": "Client", 
+  "fieldname": "select_form", 
+  "fieldtype": "Link", 
+  "search_index": 1, 
+  "reqd": 1, 
+  "options": "DocType", 
+  "in_filter": 1
+ }, 
+ {
+  "oldfieldtype": "Int", 
+  "doctype": "DocField", 
+  "label": "Rule Priority", 
+  "oldfieldname": "rule_priority", 
+  "fieldname": "rule_priority", 
+  "fieldtype": "Int", 
+  "reqd": 0
+ }, 
+ {
+  "oldfieldtype": "Section Break", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Define Rule", 
+  "fieldname": "define_rule", 
+  "fieldtype": "Section Break", 
+  "options": "Simple"
+ }, 
+ {
+  "oldfieldtype": "Table", 
+  "doctype": "DocField", 
+  "label": "Workflow Rule Details", 
+  "oldfieldname": "workflow_rule_details", 
+  "width": "100px", 
+  "fieldname": "workflow_rule_details", 
+  "fieldtype": "Table", 
+  "options": "Workflow Rule Detail"
+ }, 
+ {
+  "print_hide": 1, 
+  "oldfieldtype": "Code", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Extra Condition", 
+  "oldfieldname": "extra_condition", 
+  "fieldname": "extra_condition", 
+  "fieldtype": "Code", 
+  "hidden": 1
+ }, 
+ {
+  "oldfieldtype": "Section Break", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Action Detail", 
+  "fieldname": "action_detail", 
+  "fieldtype": "Section Break"
+ }, 
+ {
+  "oldfieldtype": "HTML", 
+  "doctype": "DocField", 
+  "label": "Action html", 
+  "fieldname": "action_html", 
+  "fieldtype": "HTML", 
+  "options": "<b>Specify actions to be taken  when conditions hold satisfied</b>"
+ }, 
+ {
+  "oldfieldtype": "Table", 
+  "doctype": "DocField", 
+  "label": "Workflow Action Details", 
+  "oldfieldname": "workflow_action_details", 
+  "fieldname": "workflow_action_details", 
+  "fieldtype": "Table", 
+  "options": "Workflow Action Detail"
+ }, 
+ {
+  "print_hide": 1, 
+  "no_copy": 1, 
+  "oldfieldtype": "HTML", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Reject HTML", 
+  "fieldname": "reject_html", 
+  "fieldtype": "HTML", 
+  "hidden": 1, 
+  "options": "<b>If any condition holds false the following message will be displayed . If you wish to stop rule engine when condition holds false then set 'Raise Exception' as 'Yes' otherwise keep this field blank or 'No'.</b>", 
+  "report_hide": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "no_copy": 1, 
+  "oldfieldtype": "Text", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Enter message", 
+  "oldfieldname": "message", 
+  "fieldname": "message", 
+  "fieldtype": "Text", 
+  "hidden": 1, 
+  "report_hide": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "no_copy": 1, 
+  "oldfieldtype": "Select", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Raise Exception", 
+  "oldfieldname": "raise_exception", 
+  "fieldname": "raise_exception", 
+  "fieldtype": "Select", 
+  "hidden": 1, 
+  "options": "\nYes\nNo", 
+  "report_hide": 1
+ }
 ]
\ No newline at end of file
diff --git a/setup/doctype/workflow_rule_detail/workflow_rule_detail.txt b/setup/doctype/workflow_rule_detail/workflow_rule_detail.txt
index dbdb04b..f6cb558 100644
--- a/setup/doctype/workflow_rule_detail/workflow_rule_detail.txt
+++ b/setup/doctype/workflow_rule_detail/workflow_rule_detail.txt
@@ -1,106 +1,85 @@
-# DocType, Workflow Rule Detail
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:36:26',
-		'docstatus': 0,
-		'modified': '2012-03-27 14:36:26',
-		'modified_by': u'Administrator',
-		'owner': u'swarnalata@webnotestech.com'
-	},
-
-	# These values are common for all DocType
-	{
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'istable': 1,
-		'module': u'Setup',
-		'name': '__common__',
-		'section_style': u'Simple',
-		'show_in_menu': 0,
-		'version': 9
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'Workflow Rule Detail',
-		'parentfield': u'fields',
-		'parenttype': u'DocType',
-		'permlevel': 0
-	},
-
-	# DocType, Workflow Rule Detail
-	{
-		'doctype': 'DocType',
-		'name': u'Workflow Rule Detail'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'rule_field',
-		'fieldtype': u'Select',
-		'label': u'Field',
-		'oldfieldname': u'rule_field',
-		'oldfieldtype': u'Select',
-		'options': u'[]',
-		'width': u'200px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'operator',
-		'fieldtype': u'Select',
-		'label': u'Operator',
-		'oldfieldname': u'operator',
-		'oldfieldtype': u'Select',
-		'options': u'\nequal\nnot equal\ngreater than\ngreater than equal\nless than\nless than equal'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'value',
-		'fieldtype': u'Data',
-		'label': u'Value',
-		'oldfieldname': u'value',
-		'oldfieldtype': u'Data',
-		'width': u'100px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'comparing_field',
-		'fieldtype': u'Select',
-		'label': u'Field from other forms',
-		'oldfieldname': u'comparing_field',
-		'oldfieldtype': u'Select'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'message',
-		'fieldtype': u'Data',
-		'label': u'Message when Cond. False',
-		'oldfieldname': u'message',
-		'oldfieldtype': u'Data',
-		'width': u'200px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'exception',
-		'fieldtype': u'Select',
-		'label': u'Raise Exception',
-		'oldfieldname': u'exception',
-		'oldfieldtype': u'Select',
-		'options': u'\nYes\nNo'
-	}
+ {
+  "owner": "swarnalata@webnotestech.com", 
+  "docstatus": 0, 
+  "creation": "2012-03-27 14:36:26", 
+  "modified_by": "Administrator", 
+  "modified": "2012-03-27 14:36:26"
+ }, 
+ {
+  "section_style": "Simple", 
+  "istable": 1, 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "module": "Setup", 
+  "doctype": "DocType", 
+  "version": 9, 
+  "show_in_menu": 0
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Workflow Rule Detail", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "permlevel": 0, 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "Workflow Rule Detail", 
+  "doctype": "DocType"
+ }, 
+ {
+  "oldfieldtype": "Select", 
+  "doctype": "DocField", 
+  "label": "Field", 
+  "oldfieldname": "rule_field", 
+  "width": "200px", 
+  "fieldname": "rule_field", 
+  "fieldtype": "Select", 
+  "options": "[]"
+ }, 
+ {
+  "oldfieldtype": "Select", 
+  "doctype": "DocField", 
+  "label": "Operator", 
+  "oldfieldname": "operator", 
+  "fieldname": "operator", 
+  "fieldtype": "Select", 
+  "options": "\nequal\nnot equal\ngreater than\ngreater than equal\nless than\nless than equal"
+ }, 
+ {
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Value", 
+  "oldfieldname": "value", 
+  "width": "100px", 
+  "fieldname": "value", 
+  "fieldtype": "Data"
+ }, 
+ {
+  "oldfieldtype": "Select", 
+  "doctype": "DocField", 
+  "label": "Field from other forms", 
+  "oldfieldname": "comparing_field", 
+  "fieldname": "comparing_field", 
+  "fieldtype": "Select"
+ }, 
+ {
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Message when Cond. False", 
+  "oldfieldname": "message", 
+  "width": "200px", 
+  "fieldname": "message", 
+  "fieldtype": "Data"
+ }, 
+ {
+  "oldfieldtype": "Select", 
+  "doctype": "DocField", 
+  "label": "Raise Exception", 
+  "oldfieldname": "exception", 
+  "fieldname": "exception", 
+  "fieldtype": "Select", 
+  "options": "\nYes\nNo"
+ }
 ]
\ No newline at end of file
diff --git a/setup/page/modules_setup/modules_setup.js b/setup/page/modules_setup/modules_setup.js
index 71fed93..7f5b125 100644
--- a/setup/page/modules_setup/modules_setup.js
+++ b/setup/page/modules_setup/modules_setup.js
@@ -1,7 +1,7 @@
 wn.require('lib/js/lib/jquery/jquery.ui.sortable.js');
 
 $.extend(wn.pages.modules_setup, {
-	modules: ['Activity', 'Accounts', 'Selling', 'Buying', 'Stock', 'Production', 'Projects', 
+	modules: ['Activity', 'Accounts', 'Selling', 'Buying', 'Stock', 'Manufacturing', 'Projects', 
 		'Support', 'HR', 'Website', 'To Do', 'Messages', 'Calendar', 'Knowledge Base'],	
 	onload: function(wrapper) {
 		wn.pages.modules_setup.refresh_page(wn.boot.modules_list);
@@ -11,7 +11,6 @@
 
 		// Hide Setup and Dashboard modules
 		ml.indexOf('Setup')!=-1 && ml.splice(ml.indexOf('Setup'), 1);
-		ml.indexOf('Dashboard')!=-1 && ml.splice(ml.indexOf('Dashboard'), 1);
 
 		// checked modules
 		for(i in ml) {
diff --git a/setup/page/modules_setup/modules_setup.txt b/setup/page/modules_setup/modules_setup.txt
index 494a96b..a20e9df 100644
--- a/setup/page/modules_setup/modules_setup.txt
+++ b/setup/page/modules_setup/modules_setup.txt
@@ -1,43 +1,32 @@
-# Page, modules_setup
 [
-
-	# These values are common in all dictionaries
-	{
-		u'creation': '2012-06-14 15:07:28',
-		u'docstatus': 0,
-		u'modified': '2012-10-04 16:55:31',
-		u'modified_by': u'Administrator',
-		u'owner': u'Administrator'
-	},
-
-	# These values are common for all Page
-	{
-		u'doctype': u'Page',
-		'module': u'Setup',
-		u'name': u'__common__',
-		'page_name': u'modules_setup',
-		'standard': u'Yes',
-		'title': u'Modules Setup'
-	},
-
-	# These values are common for all Page Role
-	{
-		u'doctype': u'Page Role',
-		u'name': u'__common__',
-		'parent': u'modules_setup',
-		'parentfield': u'roles',
-		'parenttype': u'Page',
-		'role': u'System Manager'
-	},
-
-	# Page, modules_setup
-	{
-		u'doctype': u'Page',
-		u'name': u'modules_setup'
-	},
-
-	# Page Role
-	{
-		u'doctype': u'Page Role'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-06-14 15:07:28", 
+  "modified_by": "Administrator", 
+  "modified": "2012-10-04 16:55:31"
+ }, 
+ {
+  "name": "__common__", 
+  "title": "Modules Setup", 
+  "module": "Setup", 
+  "doctype": "Page", 
+  "page_name": "modules_setup", 
+  "standard": "Yes"
+ }, 
+ {
+  "parent": "modules_setup", 
+  "name": "__common__", 
+  "doctype": "Page Role", 
+  "parenttype": "Page", 
+  "role": "System Manager", 
+  "parentfield": "roles"
+ }, 
+ {
+  "name": "modules_setup", 
+  "doctype": "Page"
+ }, 
+ {
+  "doctype": "Page Role"
+ }
 ]
\ No newline at end of file
diff --git a/setup/page/permission_engine/permission_engine.txt b/setup/page/permission_engine/permission_engine.txt
index 6f95211..738291c 100644
--- a/setup/page/permission_engine/permission_engine.txt
+++ b/setup/page/permission_engine/permission_engine.txt
@@ -1,44 +1,32 @@
-# Page, Permission Engine
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2010-12-14 10:23:18',
-		'docstatus': 0,
-		'modified': '2011-01-04 13:11:17',
-		'modified_by': 'Administrator',
-		'owner': 'saumil@webnotestech.com'
-	},
-
-	# These values are common for all Page
-	{
-		'doctype': 'Page',
-		'module': 'Setup',
-		'name': '__common__',
-		'page_name': 'Permission Engine',
-		'show_in_menu': 1,
-		'standard': 'Yes'
-	},
-
-	# These values are common for all Page Role
-	{
-		'doctype': 'Page Role',
-		'idx': 1,
-		'name': '__common__',
-		'parent': 'Permission Engine',
-		'parentfield': 'roles',
-		'parenttype': 'Page',
-		'role': 'System Manager'
-	},
-
-	# Page, Permission Engine
-	{
-		'doctype': 'Page',
-		'name': 'Permission Engine'
-	},
-
-	# Page Role
-	{
-		'doctype': 'Page Role'
-	}
+ {
+  "owner": "saumil@webnotestech.com", 
+  "docstatus": 0, 
+  "creation": "2010-12-14 10:23:18", 
+  "modified_by": "Administrator", 
+  "modified": "2011-01-04 13:11:17"
+ }, 
+ {
+  "name": "__common__", 
+  "module": "Setup", 
+  "show_in_menu": 1, 
+  "page_name": "Permission Engine", 
+  "doctype": "Page", 
+  "standard": "Yes"
+ }, 
+ {
+  "parent": "Permission Engine", 
+  "name": "__common__", 
+  "doctype": "Page Role", 
+  "parenttype": "Page", 
+  "role": "System Manager", 
+  "parentfield": "roles"
+ }, 
+ {
+  "name": "Permission Engine", 
+  "doctype": "Page"
+ }, 
+ {
+  "doctype": "Page Role"
+ }
 ]
\ No newline at end of file
diff --git a/setup/page/setup/setup.txt b/setup/page/setup/setup.txt
index dfc85e3..b3790d5 100644
--- a/setup/page/setup/setup.txt
+++ b/setup/page/setup/setup.txt
@@ -1,42 +1,31 @@
-# Page, Setup
 [
-
-	# These values are common in all dictionaries
-	{
-		u'creation': '2012-06-14 15:07:28',
-		u'docstatus': 0,
-		u'modified': '2012-10-04 16:52:41',
-		u'modified_by': u'Administrator',
-		u'owner': u'Administrator'
-	},
-
-	# These values are common for all Page
-	{
-		u'doctype': u'Page',
-		'module': u'Setup',
-		u'name': u'__common__',
-		'page_name': u'Setup',
-		'standard': u'Yes'
-	},
-
-	# These values are common for all Page Role
-	{
-		u'doctype': u'Page Role',
-		u'name': u'__common__',
-		'parent': u'Setup',
-		'parentfield': u'roles',
-		'parenttype': u'Page',
-		'role': u'System Manager'
-	},
-
-	# Page, Setup
-	{
-		u'doctype': u'Page',
-		u'name': u'Setup'
-	},
-
-	# Page Role
-	{
-		u'doctype': u'Page Role'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-06-14 15:07:28", 
+  "modified_by": "Administrator", 
+  "modified": "2012-10-04 16:52:41"
+ }, 
+ {
+  "name": "__common__", 
+  "module": "Setup", 
+  "standard": "Yes", 
+  "page_name": "Setup", 
+  "doctype": "Page"
+ }, 
+ {
+  "parent": "Setup", 
+  "name": "__common__", 
+  "doctype": "Page Role", 
+  "parenttype": "Page", 
+  "role": "System Manager", 
+  "parentfield": "roles"
+ }, 
+ {
+  "name": "Setup", 
+  "doctype": "Page"
+ }, 
+ {
+  "doctype": "Page Role"
+ }
 ]
\ No newline at end of file
diff --git a/stock/DocType Mapper/Delivery Note-Packing Slip/Delivery Note-Packing Slip.txt b/stock/DocType Mapper/Delivery Note-Packing Slip/Delivery Note-Packing Slip.txt
index 42ba6f0..6459a0b 100644
--- a/stock/DocType Mapper/Delivery Note-Packing Slip/Delivery Note-Packing Slip.txt
+++ b/stock/DocType Mapper/Delivery Note-Packing Slip/Delivery Note-Packing Slip.txt
@@ -1,93 +1,72 @@
-# DocType Mapper, Delivery Note-Packing Slip
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-02-22 15:45:56',
-		'docstatus': 0,
-		'modified': '2012-02-22 15:45:56',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all Table Mapper Detail
-	{
-		'doctype': u'Table Mapper Detail',
-		'name': '__common__',
-		'parent': u'Delivery Note-Packing Slip',
-		'parentfield': u'table_mapper_details',
-		'parenttype': u'DocType Mapper'
-	},
-
-	# These values are common for all Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'name': '__common__',
-		'parent': u'Delivery Note-Packing Slip',
-		'parentfield': u'field_mapper_details',
-		'parenttype': u'DocType Mapper'
-	},
-
-	# These values are common for all DocType Mapper
-	{
-		'doctype': u'DocType Mapper',
-		'from_doctype': u'Delivery Note',
-		'module': u'Stock',
-		'name': '__common__',
-		'ref_doc_submitted': 0,
-		'to_doctype': u'Packing Slip'
-	},
-
-	# DocType Mapper, Delivery Note-Packing Slip
-	{
-		'doctype': u'DocType Mapper',
-		'name': u'Delivery Note-Packing Slip'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'name',
-		'map': u'Yes',
-		'match_id': 0,
-		'to_field': u'delivery_note'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'qty',
-		'map': u'No',
-		'match_id': 1,
-		'to_field': u'qty'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'naming_series',
-		'map': u'No',
-		'match_id': 0,
-		'to_field': u'naming_series'
-	},
-
-	# Table Mapper Detail
-	{
-		'doctype': u'Table Mapper Detail',
-		'from_table': u'Delivery Note',
-		'match_id': 0,
-		'to_table': u'Packing Slip',
-		'validation_logic': u'docstatus=0'
-	},
-
-	# Table Mapper Detail
-	{
-		'doctype': u'Table Mapper Detail',
-		'from_field': u'delivery_note_details',
-		'from_table': u'Delivery Note Item',
-		'match_id': 1,
-		'to_field': u'item_details',
-		'to_table': u'Packing Slip Item',
-		'validation_logic': u'IFNULL(packed_qty, 0) < IFNULL(qty, 0)'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-02-22 15:45:56", 
+  "modified_by": "Administrator", 
+  "modified": "2012-02-22 15:45:56"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Delivery Note-Packing Slip", 
+  "doctype": "Table Mapper Detail", 
+  "parenttype": "DocType Mapper", 
+  "parentfield": "table_mapper_details"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Delivery Note-Packing Slip", 
+  "doctype": "Field Mapper Detail", 
+  "parenttype": "DocType Mapper", 
+  "parentfield": "field_mapper_details"
+ }, 
+ {
+  "name": "__common__", 
+  "to_doctype": "Packing Slip", 
+  "module": "Stock", 
+  "doctype": "DocType Mapper", 
+  "ref_doc_submitted": 0, 
+  "from_doctype": "Delivery Note"
+ }, 
+ {
+  "name": "Delivery Note-Packing Slip", 
+  "doctype": "DocType Mapper"
+ }, 
+ {
+  "map": "Yes", 
+  "match_id": 0, 
+  "to_field": "delivery_note", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "name"
+ }, 
+ {
+  "map": "No", 
+  "match_id": 1, 
+  "to_field": "qty", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "qty"
+ }, 
+ {
+  "map": "No", 
+  "match_id": 0, 
+  "to_field": "naming_series", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "naming_series"
+ }, 
+ {
+  "match_id": 0, 
+  "doctype": "Table Mapper Detail", 
+  "from_table": "Delivery Note", 
+  "to_table": "Packing Slip", 
+  "validation_logic": "docstatus=0"
+ }, 
+ {
+  "match_id": 1, 
+  "to_field": "item_details", 
+  "doctype": "Table Mapper Detail", 
+  "from_field": "delivery_note_details", 
+  "from_table": "Delivery Note Item", 
+  "to_table": "Packing Slip Item", 
+  "validation_logic": "IFNULL(packed_qty, 0) < IFNULL(qty, 0)"
+ }
 ]
\ No newline at end of file
diff --git a/stock/DocType Mapper/Project-Delivery Note/Project-Delivery Note.txt b/stock/DocType Mapper/Project-Delivery Note/Project-Delivery Note.txt
index 69c4fe2..6bc90f4 100644
--- a/stock/DocType Mapper/Project-Delivery Note/Project-Delivery Note.txt
+++ b/stock/DocType Mapper/Project-Delivery Note/Project-Delivery Note.txt
@@ -1,64 +1,49 @@
-# DocType Mapper, Project-Delivery Note
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2010-09-01 15:47:59',
-		'docstatus': 0,
-		'modified': '2011-09-15 15:04:43',
-		'modified_by': 'Administrator',
-		'owner': 'harshada@webnotestech.com'
-	},
-
-	# These values are common for all Table Mapper Detail
-	{
-		'doctype': 'Table Mapper Detail',
-		'from_table': 'Project',
-		'match_id': 0,
-		'name': '__common__',
-		'parent': 'Project-Delivery Note',
-		'parentfield': 'table_mapper_details',
-		'parenttype': 'DocType Mapper',
-		'to_table': 'Delivery Note',
-		'validation_logic': 'name is not null'
-	},
-
-	# These values are common for all Field Mapper Detail
-	{
-		'checking_operator': '=',
-		'doctype': 'Field Mapper Detail',
-		'from_field': 'customer',
-		'map': 'Yes',
-		'match_id': 0,
-		'name': '__common__',
-		'parent': 'Project-Delivery Note',
-		'parentfield': 'field_mapper_details',
-		'parenttype': 'DocType Mapper',
-		'to_field': 'customer'
-	},
-
-	# These values are common for all DocType Mapper
-	{
-		'doctype': 'DocType Mapper',
-		'from_doctype': 'Project',
-		'module': 'Stock',
-		'name': '__common__',
-		'to_doctype': 'Delivery Note'
-	},
-
-	# DocType Mapper, Project-Delivery Note
-	{
-		'doctype': 'DocType Mapper',
-		'name': 'Project-Delivery Note'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': 'Field Mapper Detail'
-	},
-
-	# Table Mapper Detail
-	{
-		'doctype': 'Table Mapper Detail'
-	}
+ {
+  "owner": "harshada@webnotestech.com", 
+  "docstatus": 0, 
+  "creation": "2010-09-01 15:47:59", 
+  "modified_by": "Administrator", 
+  "modified": "2011-09-15 15:04:43"
+ }, 
+ {
+  "match_id": 0, 
+  "parent": "Project-Delivery Note", 
+  "name": "__common__", 
+  "doctype": "Table Mapper Detail", 
+  "parenttype": "DocType Mapper", 
+  "from_table": "Project", 
+  "to_table": "Delivery Note", 
+  "validation_logic": "name is not null", 
+  "parentfield": "table_mapper_details"
+ }, 
+ {
+  "map": "Yes", 
+  "match_id": 0, 
+  "parent": "Project-Delivery Note", 
+  "name": "__common__", 
+  "to_field": "customer", 
+  "doctype": "Field Mapper Detail", 
+  "parenttype": "DocType Mapper", 
+  "checking_operator": "=", 
+  "from_field": "customer", 
+  "parentfield": "field_mapper_details"
+ }, 
+ {
+  "name": "__common__", 
+  "to_doctype": "Delivery Note", 
+  "module": "Stock", 
+  "doctype": "DocType Mapper", 
+  "from_doctype": "Project"
+ }, 
+ {
+  "name": "Project-Delivery Note", 
+  "doctype": "DocType Mapper"
+ }, 
+ {
+  "doctype": "Field Mapper Detail"
+ }, 
+ {
+  "doctype": "Table Mapper Detail"
+ }
 ]
\ No newline at end of file
diff --git a/stock/DocType Mapper/Purchase Order-Purchase Receipt/Purchase Order-Purchase Receipt.txt b/stock/DocType Mapper/Purchase Order-Purchase Receipt/Purchase Order-Purchase Receipt.txt
index 745ef1f..8d7fab1 100644
--- a/stock/DocType Mapper/Purchase Order-Purchase Receipt/Purchase Order-Purchase Receipt.txt
+++ b/stock/DocType Mapper/Purchase Order-Purchase Receipt/Purchase Order-Purchase Receipt.txt
@@ -1,245 +1,190 @@
-# DocType Mapper, Purchase Order-Purchase Receipt
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2010-08-08 17:09:35',
-		'docstatus': 0,
-		'modified': '2012-04-02 14:03:39',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all Table Mapper Detail
-	{
-		'doctype': u'Table Mapper Detail',
-		'name': '__common__',
-		'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': u'Field Mapper Detail',
-		'map': u'Yes',
-		'name': '__common__',
-		'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': u'Purchase Order',
-		'module': u'Stock',
-		'name': '__common__',
-		'ref_doc_submitted': 1,
-		'to_doctype': u'Purchase Receipt'
-	},
-
-	# DocType Mapper, Purchase Order-Purchase Receipt
-	{
-		'doctype': u'DocType Mapper',
-		'name': u'Purchase Order-Purchase Receipt'
-	},
-
-	# Field Mapper Detail
-	{
-		'checking_operator': u'=',
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'supplier',
-		'match_id': 0,
-		'to_field': u'supplier'
-	},
-
-	# Field Mapper Detail
-	{
-		'checking_operator': u'=',
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'company',
-		'match_id': 0,
-		'to_field': u'company'
-	},
-
-	# Field Mapper Detail
-	{
-		'checking_operator': u'=',
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'currency',
-		'match_id': 0,
-		'to_field': u'currency'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'name',
-		'match_id': 1,
-		'to_field': u'prevdoc_detail_docname'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'parent',
-		'match_id': 1,
-		'to_field': u'prevdoc_docname'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'parenttype',
-		'match_id': 1,
-		'to_field': u'prevdoc_doctype'
-	},
-
-	# Field Mapper Detail
-	{
-		'checking_operator': u'=',
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'item_code',
-		'match_id': 1,
-		'to_field': u'item_code'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'eval:(flt(obj.qty) - flt(obj.received_qty)) ',
-		'match_id': 1,
-		'to_field': u'received_qty'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'eval:(flt(obj.qty) - flt(obj.received_qty)) ',
-		'match_id': 1,
-		'to_field': u'qty'
-	},
-
-	# Field Mapper Detail
-	{
-		'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': u'stock_qty'
-	},
-
-	# Field Mapper Detail
-	{
-		'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': u'import_amount'
-	},
-
-	# Field Mapper Detail
-	{
-		'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': u'amount'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'schedule_date',
-		'match_id': 1,
-		'to_field': u'schedule_date'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'net_total',
-		'match_id': 0,
-		'to_field': u'net_total'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'grand_total',
-		'match_id': 0,
-		'to_field': u'grand_total'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'total_tax',
-		'match_id': 0,
-		'to_field': u'total_tax'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'conversion_rate',
-		'match_id': 0,
-		'to_field': u'conversion_rate'
-	},
-
-	# Table Mapper Detail
-	{
-		'doctype': u'Table Mapper Detail',
-		'from_field': u'po_details',
-		'from_table': u'Purchase Order Item',
-		'match_id': 1,
-		'reference_doctype_key': u'prevdoc_doctype',
-		'reference_key': u'prevdoc_detail_docname',
-		'to_field': u'purchase_receipt_details',
-		'to_table': u'Purchase Receipt Item',
-		'validation_logic': u'docstatus=1 and qty > ifnull(received_qty,0)'
-	},
-
-	# Table Mapper Detail
-	{
-		'doctype': u'Table Mapper Detail',
-		'from_field': u'po_details',
-		'from_table': u'Purchase Order Item',
-		'match_id': 1,
-		'reference_doctype_key': u'prevdoc_doctype',
-		'reference_key': u'prevdoc_detail_docname',
-		'to_field': u'purchase_receipt_details',
-		'to_table': u'Purchase Receipt Item',
-		'validation_logic': u'docstatus=1 and qty > ifnull(received_qty,0)'
-	},
-
-	# Table Mapper Detail
-	{
-		'doctype': u'Table Mapper Detail',
-		'from_table': u'Purchase Order',
-		'match_id': 0,
-		'reference_key': u'prevdoc_docname',
-		'to_table': u'Purchase Receipt',
-		'validation_logic': u'docstatus = 1'
-	},
-
-	# Table Mapper Detail
-	{
-		'doctype': u'Table Mapper Detail',
-		'from_field': u'purchase_tax_details',
-		'from_table': u'Purchase Taxes and Charges',
-		'match_id': 2,
-		'to_field': u'purchase_tax_details',
-		'to_table': u'Purchase Taxes and Charges',
-		'validation_logic': u'docstatus = 1'
-	},
-
-	# Table Mapper Detail
-	{
-		'doctype': u'Table Mapper Detail',
-		'from_field': u'purchase_tax_details',
-		'from_table': u'Purchase Taxes and Charges',
-		'match_id': 2,
-		'to_field': u'purchase_tax_details',
-		'to_table': u'Purchase Taxes and Charges',
-		'validation_logic': u'docstatus = 1'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2010-08-08 17:09:35", 
+  "modified_by": "Administrator", 
+  "modified": "2012-04-02 14:03:39"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Purchase Order-Purchase Receipt", 
+  "doctype": "Table Mapper Detail", 
+  "parenttype": "DocType Mapper", 
+  "parentfield": "table_mapper_details"
+ }, 
+ {
+  "map": "Yes", 
+  "name": "__common__", 
+  "parent": "Purchase Order-Purchase Receipt", 
+  "doctype": "Field Mapper Detail", 
+  "parenttype": "DocType Mapper", 
+  "parentfield": "field_mapper_details"
+ }, 
+ {
+  "name": "__common__", 
+  "to_doctype": "Purchase Receipt", 
+  "module": "Stock", 
+  "doctype": "DocType Mapper", 
+  "ref_doc_submitted": 1, 
+  "from_doctype": "Purchase Order"
+ }, 
+ {
+  "name": "Purchase Order-Purchase Receipt", 
+  "doctype": "DocType Mapper"
+ }, 
+ {
+  "match_id": 0, 
+  "to_field": "supplier", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "supplier", 
+  "checking_operator": "="
+ }, 
+ {
+  "match_id": 0, 
+  "to_field": "company", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "company", 
+  "checking_operator": "="
+ }, 
+ {
+  "match_id": 0, 
+  "to_field": "currency", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "currency", 
+  "checking_operator": "="
+ }, 
+ {
+  "to_field": "prevdoc_detail_docname", 
+  "doctype": "Field Mapper Detail", 
+  "match_id": 1, 
+  "from_field": "name"
+ }, 
+ {
+  "to_field": "prevdoc_docname", 
+  "doctype": "Field Mapper Detail", 
+  "match_id": 1, 
+  "from_field": "parent"
+ }, 
+ {
+  "to_field": "prevdoc_doctype", 
+  "doctype": "Field Mapper Detail", 
+  "match_id": 1, 
+  "from_field": "parenttype"
+ }, 
+ {
+  "match_id": 1, 
+  "to_field": "item_code", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "item_code", 
+  "checking_operator": "="
+ }, 
+ {
+  "to_field": "received_qty", 
+  "doctype": "Field Mapper Detail", 
+  "match_id": 1, 
+  "from_field": "eval:(flt(obj.qty) - flt(obj.received_qty)) "
+ }, 
+ {
+  "to_field": "qty", 
+  "doctype": "Field Mapper Detail", 
+  "match_id": 1, 
+  "from_field": "eval:(flt(obj.qty) - flt(obj.received_qty)) "
+ }, 
+ {
+  "to_field": "stock_qty", 
+  "doctype": "Field Mapper Detail", 
+  "match_id": 1, 
+  "from_field": "eval:(flt(obj.qty) - flt(obj.received_qty)) * flt(obj.conversion_factor)"
+ }, 
+ {
+  "to_field": "import_amount", 
+  "doctype": "Field Mapper Detail", 
+  "match_id": 1, 
+  "from_field": "eval:(flt(obj.qty) - flt(obj.received_qty)) * flt(obj.import_rate)"
+ }, 
+ {
+  "to_field": "amount", 
+  "doctype": "Field Mapper Detail", 
+  "match_id": 1, 
+  "from_field": "eval:(flt(obj.qty) - flt(obj.received_qty)) * flt(obj.purchase_rate)"
+ }, 
+ {
+  "to_field": "schedule_date", 
+  "doctype": "Field Mapper Detail", 
+  "match_id": 1, 
+  "from_field": "schedule_date"
+ }, 
+ {
+  "to_field": "net_total", 
+  "doctype": "Field Mapper Detail", 
+  "match_id": 0, 
+  "from_field": "net_total"
+ }, 
+ {
+  "to_field": "grand_total", 
+  "doctype": "Field Mapper Detail", 
+  "match_id": 0, 
+  "from_field": "grand_total"
+ }, 
+ {
+  "to_field": "total_tax", 
+  "doctype": "Field Mapper Detail", 
+  "match_id": 0, 
+  "from_field": "total_tax"
+ }, 
+ {
+  "to_field": "conversion_rate", 
+  "doctype": "Field Mapper Detail", 
+  "match_id": 0, 
+  "from_field": "conversion_rate"
+ }, 
+ {
+  "reference_key": "prevdoc_detail_docname", 
+  "match_id": 1, 
+  "reference_doctype_key": "prevdoc_doctype", 
+  "to_field": "purchase_receipt_details", 
+  "doctype": "Table Mapper Detail", 
+  "from_field": "po_details", 
+  "from_table": "Purchase Order Item", 
+  "to_table": "Purchase Receipt Item", 
+  "validation_logic": "docstatus=1 and qty > ifnull(received_qty,0)"
+ }, 
+ {
+  "reference_key": "prevdoc_detail_docname", 
+  "match_id": 1, 
+  "reference_doctype_key": "prevdoc_doctype", 
+  "to_field": "purchase_receipt_details", 
+  "doctype": "Table Mapper Detail", 
+  "from_field": "po_details", 
+  "from_table": "Purchase Order Item", 
+  "to_table": "Purchase Receipt Item", 
+  "validation_logic": "docstatus=1 and qty > ifnull(received_qty,0)"
+ }, 
+ {
+  "reference_key": "prevdoc_docname", 
+  "match_id": 0, 
+  "doctype": "Table Mapper Detail", 
+  "from_table": "Purchase Order", 
+  "to_table": "Purchase Receipt", 
+  "validation_logic": "docstatus = 1"
+ }, 
+ {
+  "match_id": 2, 
+  "to_field": "purchase_tax_details", 
+  "doctype": "Table Mapper Detail", 
+  "from_field": "purchase_tax_details", 
+  "from_table": "Purchase Taxes and Charges", 
+  "to_table": "Purchase Taxes and Charges", 
+  "validation_logic": "docstatus = 1"
+ }, 
+ {
+  "match_id": 2, 
+  "to_field": "purchase_tax_details", 
+  "doctype": "Table Mapper Detail", 
+  "from_field": "purchase_tax_details", 
+  "from_table": "Purchase Taxes and Charges", 
+  "to_table": "Purchase Taxes and Charges", 
+  "validation_logic": "docstatus = 1"
+ }
 ]
\ No newline at end of file
diff --git a/stock/DocType Mapper/Sales Invoice-Delivery Note/Sales Invoice-Delivery Note.txt b/stock/DocType Mapper/Sales Invoice-Delivery Note/Sales Invoice-Delivery Note.txt
index 608a1d7..eaf687a 100755
--- a/stock/DocType Mapper/Sales Invoice-Delivery Note/Sales Invoice-Delivery Note.txt
+++ b/stock/DocType Mapper/Sales Invoice-Delivery Note/Sales Invoice-Delivery Note.txt
@@ -1,169 +1,132 @@
-# DocType Mapper, Sales Invoice-Delivery Note
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2010-12-14 17:56:41',
-		'docstatus': 0,
-		'modified': '2012-04-03 12:49:50',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all Table Mapper Detail
-	{
-		'doctype': u'Table Mapper Detail',
-		'name': '__common__',
-		'parent': u'Sales Invoice-Delivery Note',
-		'parentfield': u'table_mapper_details',
-		'parenttype': u'DocType Mapper'
-	},
-
-	# These values are common for all Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'name': '__common__',
-		'parent': u'Sales Invoice-Delivery Note',
-		'parentfield': u'field_mapper_details',
-		'parenttype': u'DocType Mapper'
-	},
-
-	# These values are common for all DocType Mapper
-	{
-		'doctype': u'DocType Mapper',
-		'from_doctype': u'Sales Invoice',
-		'module': u'Stock',
-		'name': '__common__',
-		'ref_doc_submitted': 1,
-		'to_doctype': u'Delivery Note'
-	},
-
-	# DocType Mapper, Sales Invoice-Delivery Note
-	{
-		'doctype': u'DocType Mapper',
-		'name': u'Sales Invoice-Delivery Note'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'eval: flt(obj.qty) - flt(obj.delivered_qty)',
-		'map': u'Yes',
-		'match_id': 1,
-		'to_field': u'qty'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'parent',
-		'map': u'Yes',
-		'match_id': 1,
-		'to_field': u'prevdoc_docname'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'parenttype',
-		'map': u'Yes',
-		'match_id': 1,
-		'to_field': u'prevdoc_doctype'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'name',
-		'map': u'Yes',
-		'match_id': 1,
-		'to_field': u'prevdoc_detail_docname'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'eval: (flt(obj.qty) - flt(obj.delivered_qty)) * flt(obj.basic_rate)',
-		'map': u'Yes',
-		'match_id': 1,
-		'to_field': u'amount'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'eval: (flt(obj.qty) - flt(obj.delivered_qty)) * flt(obj.export_rate)',
-		'map': u'Yes',
-		'match_id': 1,
-		'to_field': u'export_amount'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'naming_series',
-		'map': u'No',
-		'match_id': 0,
-		'to_field': u'naming_series'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'customer_address',
-		'map': u'Yes',
-		'match_id': 0,
-		'to_field': u'delivery_address'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'serial_no',
-		'map': u'Yes',
-		'match_id': 1,
-		'to_field': u'serial_no'
-	},
-
-	# Table Mapper Detail
-	{
-		'doctype': u'Table Mapper Detail',
-		'from_table': u'Sales Invoice',
-		'match_id': 0,
-		'to_table': u'Delivery Note',
-		'validation_logic': u'docstatus=1'
-	},
-
-	# Table Mapper Detail
-	{
-		'doctype': u'Table Mapper Detail',
-		'from_field': u'entries',
-		'from_table': u'Sales Invoice Item',
-		'match_id': 1,
-		'to_field': u'delivery_note_details',
-		'to_table': u'Delivery Note Item',
-		'validation_logic': u'docstatus = 1'
-	},
-
-	# Table Mapper Detail
-	{
-		'doctype': u'Table Mapper Detail',
-		'from_field': u'other_charges',
-		'from_table': u'Sales Taxes and Charges',
-		'match_id': 2,
-		'to_field': u'other_charges',
-		'to_table': u'Sales Taxes and Charges',
-		'validation_logic': u'name is not null'
-	},
-
-	# Table Mapper Detail
-	{
-		'doctype': u'Table Mapper Detail',
-		'from_field': u'sales_team',
-		'from_table': u'Sales Team',
-		'match_id': 3,
-		'to_field': u'sales_team',
-		'to_table': u'Sales Team',
-		'validation_logic': u'name is not null'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2010-12-14 17:56:41", 
+  "modified_by": "Administrator", 
+  "modified": "2012-04-03 12:49:50"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Sales Invoice-Delivery Note", 
+  "doctype": "Table Mapper Detail", 
+  "parenttype": "DocType Mapper", 
+  "parentfield": "table_mapper_details"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Sales Invoice-Delivery Note", 
+  "doctype": "Field Mapper Detail", 
+  "parenttype": "DocType Mapper", 
+  "parentfield": "field_mapper_details"
+ }, 
+ {
+  "name": "__common__", 
+  "to_doctype": "Delivery Note", 
+  "module": "Stock", 
+  "doctype": "DocType Mapper", 
+  "ref_doc_submitted": 1, 
+  "from_doctype": "Sales Invoice"
+ }, 
+ {
+  "name": "Sales Invoice-Delivery Note", 
+  "doctype": "DocType Mapper"
+ }, 
+ {
+  "map": "Yes", 
+  "match_id": 1, 
+  "to_field": "qty", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "eval: flt(obj.qty) - flt(obj.delivered_qty)"
+ }, 
+ {
+  "map": "Yes", 
+  "match_id": 1, 
+  "to_field": "prevdoc_docname", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "parent"
+ }, 
+ {
+  "map": "Yes", 
+  "match_id": 1, 
+  "to_field": "prevdoc_doctype", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "parenttype"
+ }, 
+ {
+  "map": "Yes", 
+  "match_id": 1, 
+  "to_field": "prevdoc_detail_docname", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "name"
+ }, 
+ {
+  "map": "Yes", 
+  "match_id": 1, 
+  "to_field": "amount", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "eval: (flt(obj.qty) - flt(obj.delivered_qty)) * flt(obj.basic_rate)"
+ }, 
+ {
+  "map": "Yes", 
+  "match_id": 1, 
+  "to_field": "export_amount", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "eval: (flt(obj.qty) - flt(obj.delivered_qty)) * flt(obj.export_rate)"
+ }, 
+ {
+  "map": "No", 
+  "match_id": 0, 
+  "to_field": "naming_series", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "naming_series"
+ }, 
+ {
+  "map": "Yes", 
+  "match_id": 0, 
+  "to_field": "delivery_address", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "customer_address"
+ }, 
+ {
+  "map": "Yes", 
+  "match_id": 1, 
+  "to_field": "serial_no", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "serial_no"
+ }, 
+ {
+  "match_id": 0, 
+  "doctype": "Table Mapper Detail", 
+  "from_table": "Sales Invoice", 
+  "to_table": "Delivery Note", 
+  "validation_logic": "docstatus=1"
+ }, 
+ {
+  "match_id": 1, 
+  "to_field": "delivery_note_details", 
+  "doctype": "Table Mapper Detail", 
+  "from_field": "entries", 
+  "from_table": "Sales Invoice Item", 
+  "to_table": "Delivery Note Item", 
+  "validation_logic": "docstatus = 1"
+ }, 
+ {
+  "match_id": 2, 
+  "to_field": "other_charges", 
+  "doctype": "Table Mapper Detail", 
+  "from_field": "other_charges", 
+  "from_table": "Sales Taxes and Charges", 
+  "to_table": "Sales Taxes and Charges", 
+  "validation_logic": "name is not null"
+ }, 
+ {
+  "match_id": 3, 
+  "to_field": "sales_team", 
+  "doctype": "Table Mapper Detail", 
+  "from_field": "sales_team", 
+  "from_table": "Sales Team", 
+  "to_table": "Sales Team", 
+  "validation_logic": "name is not null"
+ }
 ]
\ No newline at end of file
diff --git a/stock/DocType Mapper/Sales Order-Delivery Note/Sales Order-Delivery Note.txt b/stock/DocType Mapper/Sales Order-Delivery Note/Sales Order-Delivery Note.txt
index bad4dcf..f5e4cc3 100644
--- a/stock/DocType Mapper/Sales Order-Delivery Note/Sales Order-Delivery Note.txt
+++ b/stock/DocType Mapper/Sales Order-Delivery Note/Sales Order-Delivery Note.txt
@@ -1,258 +1,203 @@
-# DocType Mapper, Sales Order-Delivery Note
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2010-08-08 17:09:35',
-		'docstatus': 0,
-		'modified': '2012-05-08 11:50:18',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all Table Mapper Detail
-	{
-		'doctype': u'Table Mapper Detail',
-		'name': '__common__',
-		'parent': u'Sales Order-Delivery Note',
-		'parentfield': u'table_mapper_details',
-		'parenttype': u'DocType Mapper'
-	},
-
-	# These values are common for all Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'name': '__common__',
-		'parent': u'Sales Order-Delivery Note',
-		'parentfield': u'field_mapper_details',
-		'parenttype': u'DocType Mapper'
-	},
-
-	# These values are common for all DocType Mapper
-	{
-		'doctype': u'DocType Mapper',
-		'from_doctype': u'Sales Order',
-		'module': u'Stock',
-		'name': '__common__',
-		'ref_doc_submitted': 1,
-		'to_doctype': u'Delivery Note'
-	},
-
-	# DocType Mapper, Sales Order-Delivery Note
-	{
-		'doctype': u'DocType Mapper',
-		'name': u'Sales Order-Delivery Note'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'name',
-		'map': u'Yes',
-		'match_id': 0,
-		'to_field': u'sales_order_no'
-	},
-
-	# Field Mapper Detail
-	{
-		'checking_operator': u'=',
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'company',
-		'map': u'Yes',
-		'match_id': 0,
-		'to_field': u'company'
-	},
-
-	# Field Mapper Detail
-	{
-		'checking_operator': u'=',
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'currency',
-		'map': u'Yes',
-		'match_id': 0,
-		'to_field': u'currency'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'shipping_address_name',
-		'map': u'Yes',
-		'match_id': 0,
-		'to_field': u'customer_address'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'shipping_address',
-		'map': u'Yes',
-		'match_id': 0,
-		'to_field': u'address_display'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'parent',
-		'map': u'Yes',
-		'match_id': 1,
-		'to_field': u'prevdoc_docname'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'parenttype',
-		'map': u'Yes',
-		'match_id': 1,
-		'to_field': u'prevdoc_doctype'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'name',
-		'map': u'Yes',
-		'match_id': 1,
-		'to_field': u'prevdoc_detail_docname'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'eval: (flt(obj.qty) - flt(obj.delivered_qty)) * flt(obj.export_rate)',
-		'map': u'Yes',
-		'match_id': 1,
-		'to_field': u'export_amount'
-	},
-
-	# Field Mapper Detail
-	{
-		'checking_operator': u'=',
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'export_rate',
-		'map': u'Yes',
-		'match_id': 1,
-		'to_field': u'export_rate'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'eval: flt(obj.qty) - flt(obj.delivered_qty)',
-		'map': u'Yes',
-		'match_id': 1,
-		'to_field': u'qty'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'eval: (flt(obj.qty) - flt(obj.delivered_qty)) * flt(obj.basic_rate)',
-		'map': u'Yes',
-		'match_id': 1,
-		'to_field': u'amount'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'reserved_warehouse',
-		'map': u'Yes',
-		'match_id': 1,
-		'to_field': u'warehouse'
-	},
-
-	# Field Mapper Detail
-	{
-		'checking_operator': u'=',
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'project_name',
-		'map': u'Yes',
-		'match_id': 0,
-		'to_field': u'project_name'
-	},
-
-	# Field Mapper Detail
-	{
-		'checking_operator': u'=',
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'customer',
-		'map': u'Yes',
-		'match_id': 0,
-		'to_field': u'customer'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'naming_series',
-		'map': u'No',
-		'match_id': 0,
-		'to_field': u'naming_series'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'status',
-		'map': u'No',
-		'match_id': 0,
-		'to_field': u'status'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'incentives',
-		'map': u'No',
-		'match_id': 3,
-		'to_field': u'incentives'
-	},
-
-	# Table Mapper Detail
-	{
-		'doctype': u'Table Mapper Detail',
-		'from_field': u'sales_team',
-		'from_table': u'Sales Team',
-		'match_id': 3,
-		'to_field': u'sales_team',
-		'to_table': u'Sales Team',
-		'validation_logic': u'name is not null'
-	},
-
-	# Table Mapper Detail
-	{
-		'doctype': u'Table Mapper Detail',
-		'from_field': u'other_charges',
-		'from_table': u'Sales Taxes and Charges',
-		'match_id': 2,
-		'to_field': u'other_charges',
-		'to_table': u'Sales Taxes and Charges',
-		'validation_logic': u'name is not null'
-	},
-
-	# Table Mapper Detail
-	{
-		'doctype': u'Table Mapper Detail',
-		'from_field': u'sales_order_details',
-		'from_table': u'Sales Order Item',
-		'match_id': 1,
-		'reference_doctype_key': u'prevdoc_doctype',
-		'reference_key': u'prevdoc_detail_docname',
-		'to_field': u'delivery_note_details',
-		'to_table': u'Delivery Note Item',
-		'validation_logic': u'qty > ifnull(delivered_qty,0) and docstatus = 1'
-	},
-
-	# Table Mapper Detail
-	{
-		'doctype': u'Table Mapper Detail',
-		'from_table': u'Sales Order',
-		'match_id': 0,
-		'reference_key': u'prevdoc_docname',
-		'to_table': u'Delivery Note',
-		'validation_logic': u'docstatus = 1'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2010-08-08 17:09:35", 
+  "modified_by": "Administrator", 
+  "modified": "2012-05-08 11:50:18"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Sales Order-Delivery Note", 
+  "doctype": "Table Mapper Detail", 
+  "parenttype": "DocType Mapper", 
+  "parentfield": "table_mapper_details"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Sales Order-Delivery Note", 
+  "doctype": "Field Mapper Detail", 
+  "parenttype": "DocType Mapper", 
+  "parentfield": "field_mapper_details"
+ }, 
+ {
+  "name": "__common__", 
+  "to_doctype": "Delivery Note", 
+  "module": "Stock", 
+  "doctype": "DocType Mapper", 
+  "ref_doc_submitted": 1, 
+  "from_doctype": "Sales Order"
+ }, 
+ {
+  "name": "Sales Order-Delivery Note", 
+  "doctype": "DocType Mapper"
+ }, 
+ {
+  "map": "Yes", 
+  "match_id": 0, 
+  "to_field": "sales_order_no", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "name"
+ }, 
+ {
+  "map": "Yes", 
+  "match_id": 0, 
+  "to_field": "company", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "company", 
+  "checking_operator": "="
+ }, 
+ {
+  "map": "Yes", 
+  "match_id": 0, 
+  "to_field": "currency", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "currency", 
+  "checking_operator": "="
+ }, 
+ {
+  "map": "Yes", 
+  "match_id": 0, 
+  "to_field": "customer_address", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "shipping_address_name"
+ }, 
+ {
+  "map": "Yes", 
+  "match_id": 0, 
+  "to_field": "address_display", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "shipping_address"
+ }, 
+ {
+  "map": "Yes", 
+  "match_id": 1, 
+  "to_field": "prevdoc_docname", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "parent"
+ }, 
+ {
+  "map": "Yes", 
+  "match_id": 1, 
+  "to_field": "prevdoc_doctype", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "parenttype"
+ }, 
+ {
+  "map": "Yes", 
+  "match_id": 1, 
+  "to_field": "prevdoc_detail_docname", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "name"
+ }, 
+ {
+  "map": "Yes", 
+  "match_id": 1, 
+  "to_field": "export_amount", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "eval: (flt(obj.qty) - flt(obj.delivered_qty)) * flt(obj.export_rate)"
+ }, 
+ {
+  "map": "Yes", 
+  "match_id": 1, 
+  "to_field": "export_rate", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "export_rate", 
+  "checking_operator": "="
+ }, 
+ {
+  "map": "Yes", 
+  "match_id": 1, 
+  "to_field": "qty", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "eval: flt(obj.qty) - flt(obj.delivered_qty)"
+ }, 
+ {
+  "map": "Yes", 
+  "match_id": 1, 
+  "to_field": "amount", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "eval: (flt(obj.qty) - flt(obj.delivered_qty)) * flt(obj.basic_rate)"
+ }, 
+ {
+  "map": "Yes", 
+  "match_id": 1, 
+  "to_field": "warehouse", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "reserved_warehouse"
+ }, 
+ {
+  "map": "Yes", 
+  "match_id": 0, 
+  "to_field": "project_name", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "project_name", 
+  "checking_operator": "="
+ }, 
+ {
+  "map": "Yes", 
+  "match_id": 0, 
+  "to_field": "customer", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "customer", 
+  "checking_operator": "="
+ }, 
+ {
+  "map": "No", 
+  "match_id": 0, 
+  "to_field": "naming_series", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "naming_series"
+ }, 
+ {
+  "map": "No", 
+  "match_id": 0, 
+  "to_field": "status", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "status"
+ }, 
+ {
+  "map": "No", 
+  "match_id": 3, 
+  "to_field": "incentives", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "incentives"
+ }, 
+ {
+  "match_id": 3, 
+  "to_field": "sales_team", 
+  "doctype": "Table Mapper Detail", 
+  "from_field": "sales_team", 
+  "from_table": "Sales Team", 
+  "to_table": "Sales Team", 
+  "validation_logic": "name is not null"
+ }, 
+ {
+  "match_id": 2, 
+  "to_field": "other_charges", 
+  "doctype": "Table Mapper Detail", 
+  "from_field": "other_charges", 
+  "from_table": "Sales Taxes and Charges", 
+  "to_table": "Sales Taxes and Charges", 
+  "validation_logic": "name is not null"
+ }, 
+ {
+  "reference_key": "prevdoc_detail_docname", 
+  "match_id": 1, 
+  "reference_doctype_key": "prevdoc_doctype", 
+  "to_field": "delivery_note_details", 
+  "doctype": "Table Mapper Detail", 
+  "from_field": "sales_order_details", 
+  "from_table": "Sales Order Item", 
+  "to_table": "Delivery Note Item", 
+  "validation_logic": "qty > ifnull(delivered_qty,0) and docstatus = 1"
+ }, 
+ {
+  "reference_key": "prevdoc_docname", 
+  "match_id": 0, 
+  "doctype": "Table Mapper Detail", 
+  "from_table": "Sales Order", 
+  "to_table": "Delivery Note", 
+  "validation_logic": "docstatus = 1"
+ }
 ]
\ No newline at end of file
diff --git a/stock/Print Format/Delivery Note Classic/Delivery Note Classic.txt b/stock/Print Format/Delivery Note Classic/Delivery Note Classic.txt
index b1914a4..91f532c 100644
--- a/stock/Print Format/Delivery Note Classic/Delivery Note Classic.txt
+++ b/stock/Print Format/Delivery Note Classic/Delivery Note Classic.txt
@@ -1,28 +1,21 @@
-# Print Format, Delivery Note Classic
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-05-17 17:27:50',
-		'docstatus': 0,
-		'modified': '2012-05-17 18:05:15',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all Print Format
-	{
-		'doc_type': u'Delivery Note',
-		'doctype': 'Print Format',
-		'html': u'<!--\n\tSample Print Format for ERPNext\n\tPlease use at your own discretion\n\tFor suggestions and contributions:\n\t\thttps://github.com/webnotes/erpnext-print-templates\n\n\tFreely usable under MIT license\n-->\n\n<!-- Style Settings -->\n<style>\n\t/*\n\t\tcommon style for whole page\n\t\tThis should include:\n\t\t+ page size related settings\n\t\t+ font family settings\n\t\t+ line spacing settings\n\t*/\n\t@media screen {\n\t\tbody {\n\t\t\twidth: 8.3in;\n\t\t}\n\t}\n\n\thtml, body, div, span, td {\n\t\tfont-family: "Georgia", serif;\n\t\tfont-size: 12px;\n\t}\n\n\tbody {\n\t\tpadding: 10px;\n\t\tmargin: auto;\n\t\tfont-size: 12px;\n\t\tline-height: 150%;\n\t}\n\n\t.common {\n\t\tfont-family: "Georgia", serif !important;\n\t\tfont-size: 12px;\n\t\tpadding: 10px 0px;\n\t}\n\n\ttable {\n\t\tborder-collapse: collapse;\n\t\twidth: 100%;\n\t\tvertical-align: top;\n\t}\n\n\ttable td {\n\t\tpadding: 2px 0px;\n\t}\n\t\n\ttable h1, h2, h3, h4, h5, h6 {\n\t\tpadding: 0px;\n\t\tmargin: 0px;\n\t}\n\n\ttable.header-table td {\n\t\tvertical-align: top;\n\t}\n\n\ttable.header-table thead {\n\t\tborder-bottom: 1px solid black;\n\t}\n\n\ttable.header-table h3 {\n\t\tcolor: gray;\n\t}\n\n\ttable.header-table thead td {\n\t\tpadding: 5px 0px;\n\t}\n\n\tdiv.page-body table td:nth-child(6),\n\tdiv.page-body table td:nth-child(7) {\n\t\ttext-align: right;\n\t}\n\n\ttable.footer-table td {\n\t\tvertical-align: top;\n\t}\n\n\ttable.footer-table td table td:nth-child(2),\n\ttable.footer-table td table td:nth-child(3) {\n\t\ttext-align: right;\n\t}\n</style>\n\n\n<!-- Javascript -->\n<script>\n    // Store round off to places for fields\n    var decimals = {\n        adj_rate: (function() {\n            var adj_rate = get_field(\'Delivery Note Item\', \'adj_rate\');\n            if (adj_rate.fieldtype===\'Float\') return 6;\n            return 2;\n        })(),\n    };\n    var si_std = {\n\t\tprint_item_table: function() {\n\t\t\tvar table = print_table(\n\t\t\t\t\'Delivery Note\',\n\t\t\t\tdoc.name,\n\t\t\t\t\'delivery_note_details\',\n\t\t\t\t\'Delivery Note Item\',\n\t\t\t\t[// Here specify the table columns to be displayed\n\t\t\t\t\t\'SR\', \'item_code\', \'item_name\', \'description\', \'qty\', \'stock_uom\',\n\t\t\t\t\t\'basic_rate\', \'amount\'\n\t\t\t\t],\n\t\t\t\t[// Here specify the labels of column headings\n\t\t\t\t\t\'Sr\', \'Item Code\', \'Item Name\', \'Description\', \'Qty\',\n\t\t\t\t\t\'UoM\', \'Basic Rate\', \'Amount\'\n\t\t\t\t],\n\t\t\t\t[// Here specify the column widths\n\t\t\t\t\t\'3%\', \'10%\', \'15%\', \'32%\', \'5%\',\n\t\t\t\t\t\'5%\', \'15%\', \'15%\'\n\t\t\t\t],\n\t\t\t\tnull,\n\t\t\t\tnull,\n\t\t\t\t{\n\t\t\t\t\t\'description\' : function(data_row) {\n\t\t\t\t\t\tvar to_append = \'\'\n\t\t\t\t\t\tif(data_row.adj_rate){\n\t\t\t\t\t\t\tto_append = \'<div style="padding-left: 15px;"><i>Discount: \' + \n    \t\t\t\t\t\t\troundNumber(data_row.adj_rate, decimals.adj_rate || 2) +\n                                \'% on \' + doc.currency + \' \' +\n\t\t\t\t\t\t\t\tfmt_money(data_row.ref_rate) + \'</i></div>\';\n\t\t\t\t\t\t\tif(data_row.description.indexOf(to_append)==-1) {\n\t\t\t\t\t\t\t\tdata_row.description = data_row.description + to_append;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\t\n\t\t\t\t\t\tif(data_row.serial_no) {\n\t\t\t\t\t\t\tto_append = \'<div style="padding-left: 15px;"><i>Serial No.:\' + \n\t\t\t\t\t\t\t\t((data_row.serial_no.indexOf(\'\\n\')>-1)?\'<br />\':\'&nbsp;\') + \n\t\t\t\t\t\t\t\tdata_row.serial_no + \'</i></div>\';\n\t\t\t\t\t\t\tif(data_row.description.indexOf(to_append)==-1) {\n\t\t\t\t\t\t\t\tdata_row.description = data_row.description + to_append;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\n\t\t\t\t\t\treturn data_row.description;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t);\n\n\t\t\t// This code takes care of page breaks\n\t\t\tif(table.appendChild) {\n\t\t\t\tout = table.innerHTML;\n\t\t\t} else {\n\t\t\t\tout = \'\';\n\t\t\t\tfor(var i=0; i < (table.length-1); i++) {\n\t\t\t\t\tout += table[i].innerHTML + \n\t\t\t\t\t\t\'<div style = "page-break-after: always;" \\\n\t\t\t\t\t\tclass = "page_break"></div>\\\n\t\t\t\t\t\t<div class="page-settings"></div>\';\n\t\t\t\t}\n\t\t\t\tout += table[table.length-1].innerHTML;\n\t\t\t}\n\t\t\treturn out;\n\t\t},\n\n\n\t\tprint_other_charges: function(parent) {\n\t\t\tvar oc = getchildren(\'Sales Taxes and Charges\', doc.name, \'other_charges\');\n\t\t\tvar rows = \'<table width=100%>\\n\';\n\t\t\tfor(var i=0; i<oc.length; i++) {\n\t\t\t\tif(!oc[i].included_in_print_rate) {\n\t\t\t\t\trows +=\n\t\t\t\t\t\t\'<tr>\\n\' +\n\t\t\t\t\t\t\t\'\\t<td>\' + oc[i].description + \'</td>\\n\' +\n\t\t\t\t\t\t\t\'\\t<td></td>\\n\' +\n\t\t\t\t\t\t\t\'\\t<td width=38%>\' + fmt_money(oc[i].tax_amount) + \'</td>\\n\' +\n\t\t\t\t\t\t\'</tr>\\n\';\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn rows + \'</table>\\n\';\n\t\t}\n\t};\n</script>\n\n\n<!-- Page Layout Settings -->\n<div class=\'common page-header\'>\n\t<!-- \n\t\tPage Header will contain\n\t\t\t+ table 1\n\t\t\t\t+ table 1a\n\t\t\t\t\t- Name\n\t\t\t\t\t- Address\n\t\t\t\t\t- Contact\n\t\t\t\t\t- Mobile No\n\t\t\t\t+ table 1b\n\t\t\t\t\t- Voucher Date\n\t\t\t\t\t- Due Date\n\t-->\n\t<table class=\'header-table\' cellspacing=0>\n\t\t<thead>\n\t\t\t<tr><td><script>\'<h1>\' + (doc.select_print_heading || \'Delivery Note\') + \'</h1>\'</script></td></tr>\n\t\t\t<tr><td><h3><script>cur_frm.docname</script></h3></td></tr>\n\t\t</thead>\n\t\t<tbody>\n\t\t\t<tr>\n\t\t\t\t<td width=60%><table width=100% cellspacing=0><tbody>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td width=22%><b>Name</b></td>\n\t\t\t\t\t\t<td><script>doc.customer_name</script></td>\n\t\t\t\t\t</tr>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td><b>Address</b></td>\n\t\t\t\t\t\t<td><script>replace_newlines(doc.address_display)</script></td>\n\t\t\t\t\t</tr>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td><b>Contact</b></td>\n\t\t\t\t\t\t<td><script>doc.contact_display</script></td>\n\t\t\t\t\t</tr>\n\t\t\t\t</tbody></table></td>\n\t\t\t\t<td><table width=100% cellspacing=0><tbody>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td width=63%><b>Delivery Note Date</b></td>\n\t\t\t\t\t\t<td><script>date.str_to_user(doc.transaction_date)</script></td>\n\t\t\t\t\t<tr>\t\t\t\t\t\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td><b>Sales Order No.</b></td>\n\t\t\t\t\t\t<td>\n\t\t\t\t\t\t\t<script>doc.sales_order_no</script><br />\n\t\t\t\t\t\t\t<i>(<script>date.str_to_user(doc.posting_date)</script>)</i>\n\t\t\t\t\t\t</td>\n\t\t\t\t\t<tr>\t\t\t\t\t\n\t\t\t\t</tbody></table></td>\n\t\t\t</tr>\n\t\t</tbody>\n\t\t<tfoot>\n\t\t\n\t\t</tfoot>\n\t</table>\n</div>\n<div class=\'common page-body\'>\n\t<!-- \n\t\tPage Body will contain\n\t\t\t+ table 2\n\t\t\t\t- Sales Invoice Data\n\t-->\n\t<script>si_std.print_item_table()</script>\n</div>\n<div class=\'common page-footer\'>\n\t<!-- \n\t\tPage Footer will contain\n\t\t\t+ table 3\n\t\t\t\t- Terms and Conditions\n\t\t\t\t- Total Rounded Amount Calculation\n\t\t\t\t- Total Rounded Amount in Words\n\t-->\n\t<table class=\'footer-table\' width=100% cellspacing=0>\n\t\t<thead>\n\t\t\t\n\t\t</thead>\n\t\t<tbody>\n\t\t\t<tr>\n\t\t\t\t<td width=60% style=\'padding-right: 10px;\'>\n\t\t\t\t\t<b>Terms, Conditions &amp; Other Information:</b><br />\n\t\t\t\t\t<script>doc.terms</script>\n\t\t\t\t</td>\n\t\t\t\t<td>\n\t\t\t\t\t<table cellspacing=0 width=100%><tbody>\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td>Net Total</td>\n\t\t\t\t\t\t\t<td></td>\n\t\t\t\t\t\t\t<td width=38%><script>\n\t\t\t\t\t\t\t\tfmt_money(doc.net_total)\n\t\t\t\t\t\t\t</script></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr><td colspan=3><script>si_std.print_other_charges()</script></td></tr>\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td>Grand Total</td>\n\t\t\t\t\t\t\t<td></td>\n\t\t\t\t\t\t\t<td><script>\n\t\t\t\t\t\t\t\tfmt_money(doc.grand_total_export)\n\t\t\t\t\t\t\t</script></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr style=\'font-weight: bold\'>\n\t\t\t\t\t\t\t<td>Rounded Total</td>\n\t\t\t\t\t\t\t<td><script>doc.currency</script></td>\n\t\t\t\t\t\t\t<td><script>\n\t\t\t\t\t\t\t\tfmt_money(doc.rounded_total_export)\n\t\t\t\t\t\t\t</script></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t</tbody></table>\n\t\t\t\t\t<br /><b>In Words</b><br />\n\t\t\t\t\t<i><script>doc.in_words_export</script></i>\n\t\t\t\t</td>\n\t\t\t</tr>\t\t\n\t\t</tbody>\n\t\t<tfoot>\n\t\t\n\t\t</tfoot>\n\t</table>\n</div>\n',
-		'module': u'Stock',
-		'name': '__common__',
-		'standard': u'Yes'
-	},
-
-	# Print Format, Delivery Note Classic
-	{
-		'doctype': 'Print Format',
-		'name': u'Delivery Note Classic'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-05-17 17:27:50", 
+  "modified_by": "Administrator", 
+  "modified": "2012-05-17 18:05:15"
+ }, 
+ {
+  "doc_type": "Delivery Note", 
+  "name": "__common__", 
+  "module": "Stock", 
+  "doctype": "Print Format", 
+  "html": "<!--\n\tSample Print Format for ERPNext\n\tPlease use at your own discretion\n\tFor suggestions and contributions:\n\t\thttps://github.com/webnotes/erpnext-print-templates\n\n\tFreely usable under MIT license\n-->\n\n<!-- Style Settings -->\n<style>\n\t/*\n\t\tcommon style for whole page\n\t\tThis should include:\n\t\t+ page size related settings\n\t\t+ font family settings\n\t\t+ line spacing settings\n\t*/\n\t@media screen {\n\t\tbody {\n\t\t\twidth: 8.3in;\n\t\t}\n\t}\n\n\thtml, body, div, span, td {\n\t\tfont-family: \"Georgia\", serif;\n\t\tfont-size: 12px;\n\t}\n\n\tbody {\n\t\tpadding: 10px;\n\t\tmargin: auto;\n\t\tfont-size: 12px;\n\t\tline-height: 150%;\n\t}\n\n\t.common {\n\t\tfont-family: \"Georgia\", serif !important;\n\t\tfont-size: 12px;\n\t\tpadding: 10px 0px;\n\t}\n\n\ttable {\n\t\tborder-collapse: collapse;\n\t\twidth: 100%;\n\t\tvertical-align: top;\n\t}\n\n\ttable td {\n\t\tpadding: 2px 0px;\n\t}\n\t\n\ttable h1, h2, h3, h4, h5, h6 {\n\t\tpadding: 0px;\n\t\tmargin: 0px;\n\t}\n\n\ttable.header-table td {\n\t\tvertical-align: top;\n\t}\n\n\ttable.header-table thead {\n\t\tborder-bottom: 1px solid black;\n\t}\n\n\ttable.header-table h3 {\n\t\tcolor: gray;\n\t}\n\n\ttable.header-table thead td {\n\t\tpadding: 5px 0px;\n\t}\n\n\tdiv.page-body table td:nth-child(6),\n\tdiv.page-body table td:nth-child(7) {\n\t\ttext-align: right;\n\t}\n\n\ttable.footer-table td {\n\t\tvertical-align: top;\n\t}\n\n\ttable.footer-table td table td:nth-child(2),\n\ttable.footer-table td table td:nth-child(3) {\n\t\ttext-align: right;\n\t}\n</style>\n\n\n<!-- Javascript -->\n<script>\n    // Store round off to places for fields\n    var decimals = {\n        adj_rate: (function() {\n            var adj_rate = get_field('Delivery Note Item', 'adj_rate');\n            if (adj_rate.fieldtype==='Float') return 6;\n            return 2;\n        })(),\n    };\n    var si_std = {\n\t\tprint_item_table: function() {\n\t\t\tvar table = print_table(\n\t\t\t\t'Delivery Note',\n\t\t\t\tdoc.name,\n\t\t\t\t'delivery_note_details',\n\t\t\t\t'Delivery Note Item',\n\t\t\t\t[// Here specify the table columns to be displayed\n\t\t\t\t\t'SR', 'item_code', 'item_name', 'description', 'qty', 'stock_uom',\n\t\t\t\t\t'basic_rate', 'amount'\n\t\t\t\t],\n\t\t\t\t[// Here specify the labels of column headings\n\t\t\t\t\t'Sr', 'Item Code', 'Item Name', 'Description', 'Qty',\n\t\t\t\t\t'UoM', 'Basic Rate', 'Amount'\n\t\t\t\t],\n\t\t\t\t[// Here specify the column widths\n\t\t\t\t\t'3%', '10%', '15%', '32%', '5%',\n\t\t\t\t\t'5%', '15%', '15%'\n\t\t\t\t],\n\t\t\t\tnull,\n\t\t\t\tnull,\n\t\t\t\t{\n\t\t\t\t\t'description' : function(data_row) {\n\t\t\t\t\t\tvar to_append = ''\n\t\t\t\t\t\tif(data_row.adj_rate){\n\t\t\t\t\t\t\tto_append = '<div style=\"padding-left: 15px;\"><i>Discount: ' + \n    \t\t\t\t\t\t\troundNumber(data_row.adj_rate, decimals.adj_rate || 2) +\n                                '% on ' + doc.currency + ' ' +\n\t\t\t\t\t\t\t\tfmt_money(data_row.ref_rate) + '</i></div>';\n\t\t\t\t\t\t\tif(data_row.description.indexOf(to_append)==-1) {\n\t\t\t\t\t\t\t\tdata_row.description = data_row.description + to_append;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\t\n\t\t\t\t\t\tif(data_row.serial_no) {\n\t\t\t\t\t\t\tto_append = '<div style=\"padding-left: 15px;\"><i>Serial No.:' + \n\t\t\t\t\t\t\t\t((data_row.serial_no.indexOf('\\n')>-1)?'<br />':'&nbsp;') + \n\t\t\t\t\t\t\t\tdata_row.serial_no + '</i></div>';\n\t\t\t\t\t\t\tif(data_row.description.indexOf(to_append)==-1) {\n\t\t\t\t\t\t\t\tdata_row.description = data_row.description + to_append;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\n\t\t\t\t\t\treturn data_row.description;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t);\n\n\t\t\t// This code takes care of page breaks\n\t\t\tif(table.appendChild) {\n\t\t\t\tout = table.innerHTML;\n\t\t\t} else {\n\t\t\t\tout = '';\n\t\t\t\tfor(var i=0; i < (table.length-1); i++) {\n\t\t\t\t\tout += table[i].innerHTML + \n\t\t\t\t\t\t'<div style = \"page-break-after: always;\" \\\n\t\t\t\t\t\tclass = \"page_break\"></div>\\\n\t\t\t\t\t\t<div class=\"page-settings\"></div>';\n\t\t\t\t}\n\t\t\t\tout += table[table.length-1].innerHTML;\n\t\t\t}\n\t\t\treturn out;\n\t\t},\n\n\n\t\tprint_other_charges: function(parent) {\n\t\t\tvar oc = getchildren('Sales Taxes and Charges', doc.name, 'other_charges');\n\t\t\tvar rows = '<table width=100%>\\n';\n\t\t\tfor(var i=0; i<oc.length; i++) {\n\t\t\t\tif(!oc[i].included_in_print_rate) {\n\t\t\t\t\trows +=\n\t\t\t\t\t\t'<tr>\\n' +\n\t\t\t\t\t\t\t'\\t<td>' + oc[i].description + '</td>\\n' +\n\t\t\t\t\t\t\t'\\t<td></td>\\n' +\n\t\t\t\t\t\t\t'\\t<td width=38%>' + fmt_money(oc[i].tax_amount) + '</td>\\n' +\n\t\t\t\t\t\t'</tr>\\n';\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn rows + '</table>\\n';\n\t\t}\n\t};\n</script>\n\n\n<!-- Page Layout Settings -->\n<div class='common page-header'>\n\t<!-- \n\t\tPage Header will contain\n\t\t\t+ table 1\n\t\t\t\t+ table 1a\n\t\t\t\t\t- Name\n\t\t\t\t\t- Address\n\t\t\t\t\t- Contact\n\t\t\t\t\t- Mobile No\n\t\t\t\t+ table 1b\n\t\t\t\t\t- Voucher Date\n\t\t\t\t\t- Due Date\n\t-->\n\t<table class='header-table' cellspacing=0>\n\t\t<thead>\n\t\t\t<tr><td><script>'<h1>' + (doc.select_print_heading || 'Delivery Note') + '</h1>'</script></td></tr>\n\t\t\t<tr><td><h3><script>cur_frm.docname</script></h3></td></tr>\n\t\t</thead>\n\t\t<tbody>\n\t\t\t<tr>\n\t\t\t\t<td width=60%><table width=100% cellspacing=0><tbody>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td width=22%><b>Name</b></td>\n\t\t\t\t\t\t<td><script>doc.customer_name</script></td>\n\t\t\t\t\t</tr>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td><b>Address</b></td>\n\t\t\t\t\t\t<td><script>replace_newlines(doc.address_display)</script></td>\n\t\t\t\t\t</tr>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td><b>Contact</b></td>\n\t\t\t\t\t\t<td><script>doc.contact_display</script></td>\n\t\t\t\t\t</tr>\n\t\t\t\t</tbody></table></td>\n\t\t\t\t<td><table width=100% cellspacing=0><tbody>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td width=63%><b>Delivery Note Date</b></td>\n\t\t\t\t\t\t<td><script>date.str_to_user(doc.transaction_date)</script></td>\n\t\t\t\t\t<tr>\t\t\t\t\t\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td><b>Sales Order No.</b></td>\n\t\t\t\t\t\t<td>\n\t\t\t\t\t\t\t<script>doc.sales_order_no</script><br />\n\t\t\t\t\t\t\t<i>(<script>date.str_to_user(doc.posting_date)</script>)</i>\n\t\t\t\t\t\t</td>\n\t\t\t\t\t<tr>\t\t\t\t\t\n\t\t\t\t</tbody></table></td>\n\t\t\t</tr>\n\t\t</tbody>\n\t\t<tfoot>\n\t\t\n\t\t</tfoot>\n\t</table>\n</div>\n<div class='common page-body'>\n\t<!-- \n\t\tPage Body will contain\n\t\t\t+ table 2\n\t\t\t\t- Sales Invoice Data\n\t-->\n\t<script>si_std.print_item_table()</script>\n</div>\n<div class='common page-footer'>\n\t<!-- \n\t\tPage Footer will contain\n\t\t\t+ table 3\n\t\t\t\t- Terms and Conditions\n\t\t\t\t- Total Rounded Amount Calculation\n\t\t\t\t- Total Rounded Amount in Words\n\t-->\n\t<table class='footer-table' width=100% cellspacing=0>\n\t\t<thead>\n\t\t\t\n\t\t</thead>\n\t\t<tbody>\n\t\t\t<tr>\n\t\t\t\t<td width=60% style='padding-right: 10px;'>\n\t\t\t\t\t<b>Terms, Conditions &amp; Other Information:</b><br />\n\t\t\t\t\t<script>doc.terms</script>\n\t\t\t\t</td>\n\t\t\t\t<td>\n\t\t\t\t\t<table cellspacing=0 width=100%><tbody>\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td>Net Total</td>\n\t\t\t\t\t\t\t<td></td>\n\t\t\t\t\t\t\t<td width=38%><script>\n\t\t\t\t\t\t\t\tfmt_money(doc.net_total)\n\t\t\t\t\t\t\t</script></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr><td colspan=3><script>si_std.print_other_charges()</script></td></tr>\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td>Grand Total</td>\n\t\t\t\t\t\t\t<td></td>\n\t\t\t\t\t\t\t<td><script>\n\t\t\t\t\t\t\t\tfmt_money(doc.grand_total_export)\n\t\t\t\t\t\t\t</script></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr style='font-weight: bold'>\n\t\t\t\t\t\t\t<td>Rounded Total</td>\n\t\t\t\t\t\t\t<td><script>doc.currency</script></td>\n\t\t\t\t\t\t\t<td><script>\n\t\t\t\t\t\t\t\tfmt_money(doc.rounded_total_export)\n\t\t\t\t\t\t\t</script></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t</tbody></table>\n\t\t\t\t\t<br /><b>In Words</b><br />\n\t\t\t\t\t<i><script>doc.in_words_export</script></i>\n\t\t\t\t</td>\n\t\t\t</tr>\t\t\n\t\t</tbody>\n\t\t<tfoot>\n\t\t\n\t\t</tfoot>\n\t</table>\n</div>\n", 
+  "standard": "Yes"
+ }, 
+ {
+  "name": "Delivery Note Classic", 
+  "doctype": "Print Format"
+ }
 ]
\ No newline at end of file
diff --git a/stock/Print Format/Delivery Note Modern/Delivery Note Modern.txt b/stock/Print Format/Delivery Note Modern/Delivery Note Modern.txt
index bfe6358..3cb57e9 100644
--- a/stock/Print Format/Delivery Note Modern/Delivery Note Modern.txt
+++ b/stock/Print Format/Delivery Note Modern/Delivery Note Modern.txt
@@ -1,28 +1,21 @@
-# Print Format, Delivery Note Modern
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-05-17 17:27:50',
-		'docstatus': 0,
-		'modified': '2012-05-17 18:04:19',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all Print Format
-	{
-		'doc_type': u'Delivery Note',
-		'doctype': 'Print Format',
-		'html': u'<!--\n\tSample Print Format for ERPNext\n\tPlease use at your own discretion\n\tFor suggestions and contributions:\n\t\thttps://github.com/webnotes/erpnext-print-templates\n\n\tFreely usable under MIT license\n-->\n\n<!-- Style Settings -->\n<style>\n\t/*\n\t\tcommon style for whole page\n\t\tThis should include:\n\t\t+ page size related settings\n\t\t+ font family settings\n\t\t+ line spacing settings\n\t*/\n\t@media screen {\n\t\tbody {\n\t\t\twidth: 8.3in;\n\t\t}\n\t}\n\n\thtml, body, div, span, td {\n\t\tfont-family: "Helvetica", "Arial", sans-serif;\n\t\tfont-size: 12px;\n\t}\n\n\tbody {\n\t\tpadding: 10px;\n\t\tmargin: auto;\n\t\tfont-size: 12px;\n\t\tline-height: 150%;\n\t}\n\n\t.common {\n\t\tfont-family: "Helvetica", "Arial", sans-serif !important;\n\t\tfont-size: 12px;\n\t\tpadding: 10px 0px;\n\t}\n\n\ttable {\n\t\tborder-collapse: collapse;\n\t\twidth: 100%;\n\t\tvertical-align: top;\n\t\tborder-style: none !important;\n\t}\n\n\ttable td {\n\t\tpadding: 2px 0px;\n\t\tborder-style: none !important;\n\t}\n\t\n\ttable h1, h2, h3, h4, h5, h6 {\n\t\tpadding: 0px;\n\t\tmargin: 0px;\n\t}\n\n\ttable.header-table td {\n\t\tvertical-align: top;\n\t}\n\n\ttable.header-table h1 {\n\t\ttext-transform: uppercase;\n\t\tcolor: white;\n\t\tfont-size: 55px;\n\t\tfont-style: italic;\n\t}\n\n\ttable.header-table thead tr:nth-child(1) div {\n\t\theight: 24px;\n\t\tbackground-color: #696969;\n\t\tvertical-align: middle;\n\t\tpadding: 12px 0px 0px 0px;\n\t\twidth: 100%;\n\t}\n\n\tdiv.page-body table td:nth-child(6),\n\tdiv.page-body table td:nth-child(7) {\n\t\ttext-align: right;\n\t}\n\n\tdiv.page-body table tr td {\n\t\tbackground-color: #DCDCDC !important;\n\t}\n\n\tdiv.page-body table tr:nth-child(1) td {\n\t\tbackground-color: #696969 !important;\n\t\tcolor: white !important;\n\t}\n\n\ttable.footer-table td {\n\t\tvertical-align: top;\n\t}\n\n\ttable.footer-table td table td:nth-child(2),\n\ttable.footer-table td table td:nth-child(3) {\n\t\ttext-align: right;\n\t}\n\n\ttable.footer-table tfoot td {\n\t\tbackground-color: #696969;\n\t\theight: 10px;\n\t}\n\n\t.imp-details {\n\t\tbackground-color: #DCDCDC;\n\t}\n</style>\n\n\n<!-- Javascript -->\n<script>\n    // Store round off to places for fields\n    var decimals = {\n        adj_rate: (function() {\n            var adj_rate = get_field(\'Delivery Note Item\', \'adj_rate\');\n            if (adj_rate.fieldtype===\'Float\') return 6;\n            return 2;\n        })(),\n    };\n\tvar si_std = {\n\t\tprint_item_table: function() {\n\t\t\tvar table = print_table(\n\t\t\t\t\'Delivery Note\',\n\t\t\t\tdoc.name,\n\t\t\t\t\'delivery_note_details\',\n\t\t\t\t\'Delivery Note Item\',\n\t\t\t\t[// Here specify the table columns to be displayed\n\t\t\t\t\t\'SR\', \'item_code\', \'item_name\', \'description\', \'qty\', \'stock_uom\',\n\t\t\t\t\t\'basic_rate\', \'amount\'\n\t\t\t\t],\n\t\t\t\t[// Here specify the labels of column headings\n\t\t\t\t\t\'Sr\', \'Item Code\', \'Item Name\', \'Description\', \'Qty\',\n\t\t\t\t\t\'UoM\', \'Basic Rate\', \'Amount\'\n\t\t\t\t],\n\t\t\t\t[// Here specify the column widths\n\t\t\t\t\t\'3%\', \'10%\', \'15%\', \'32%\', \'5%\',\n\t\t\t\t\t\'5%\', \'15%\', \'15%\'\n\t\t\t\t],\n\t\t\t\tnull,\n\t\t\t\tnull,\n\t\t\t\t{\n\t\t\t\t\t\'description\' : function(data_row) {\n\t\t\t\t\t\tvar to_append = \'\'\n\t\t\t\t\t\tif(data_row.adj_rate){\n\t\t\t\t\t\t\tto_append = \'<div style="padding-left: 15px;"><i>Discount: \' + \n\t\t\t\t\t\t\t\troundNumber(data_row.adj_rate, decimals.adj_rate || 2) +\n                                \'% on \' + doc.currency + \' \' +\n\t\t\t\t\t\t\t\tfmt_money(data_row.ref_rate) + \'</i></div>\';\n\t\t\t\t\t\t\tif(data_row.description.indexOf(to_append)==-1) {\n\t\t\t\t\t\t\t\tdata_row.description = data_row.description + to_append;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\t\n\t\t\t\t\t\tif(data_row.serial_no) {\n\t\t\t\t\t\t\tto_append = \'<div style="padding-left: 15px;"><i>Serial No.:\' + \n\t\t\t\t\t\t\t\t((data_row.serial_no.indexOf(\'\\n\')>-1)?\'<br />\':\'&nbsp;\') + \n\t\t\t\t\t\t\t\tdata_row.serial_no + \'</i></div>\';\n\t\t\t\t\t\t\tif(data_row.description.indexOf(to_append)==-1) {\n\t\t\t\t\t\t\t\tdata_row.description = data_row.description + to_append;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\n\t\t\t\t\t\treturn data_row.description;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t);\n\n\t\t\t// This code takes care of page breaks\n\t\t\tif(table.appendChild) {\n\t\t\t\tout = table.innerHTML;\n\t\t\t} else {\n\t\t\t\tout = \'\';\n\t\t\t\tfor(var i=0; i < (table.length-1); i++) {\n\t\t\t\t\tout += table[i].innerHTML + \n\t\t\t\t\t\t\'<div style = "page-break-after: always;" \\\n\t\t\t\t\t\tclass = "page_break"></div>\\\n\t\t\t\t\t\t<div class="page-settings"></div>\';\n\t\t\t\t}\n\t\t\t\tout += table[table.length-1].innerHTML;\n\t\t\t}\n\t\t\treturn out;\n\t\t},\n\n\n\t\tprint_other_charges: function(parent) {\n\t\t\tvar oc = getchildren(\'Sales Taxes and Charges\', doc.name, \'other_charges\');\n\t\t\tvar rows = \'<table width=100%>\\n\';\n\t\t\tfor(var i=0; i<oc.length; i++) {\n\t\t\t\tif(!oc[i].included_in_print_rate) {\n\t\t\t\t\trows +=\n\t\t\t\t\t\t\'<tr>\\n\' +\n\t\t\t\t\t\t\t\'\\t<td>\' + oc[i].description + \'</td>\\n\' +\n\t\t\t\t\t\t\t\'\\t<td></td>\\n\' +\n\t\t\t\t\t\t\t\'\\t<td width=38%>\' + fmt_money(oc[i].tax_amount) + \'</td>\\n\' +\n\t\t\t\t\t\t\'</tr>\\n\';\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn rows + \'</table>\\n\';\n\t\t}\n\t};\n</script>\n\n\n<!-- Page Layout Settings -->\n<div class=\'common page-header\'>\n\t<!-- \n\t\tPage Header will contain\n\t\t\t+ table 1\n\t\t\t\t+ table 1a\n\t\t\t\t\t- Name\n\t\t\t\t\t- Address\n\t\t\t\t\t- Contact\n\t\t\t\t\t- Mobile No\n\t\t\t\t+ table 1b\n\t\t\t\t\t- Voucher Date\n\t\t\t\t\t- Due Date\n\t-->\n\t<table class=\'header-table\' cellspacing=0>\n\t\t<thead>\n\t\t\t<tr><td colspan=2><div><script>\'<h1>\' + (doc.select_print_heading || \'Delivery Note\') + \'</h1>\'</script></div></td></tr>\n\t\t\t<tr><td colspan=2><div style="height:15px"></div></td></tr>\n\t\t</thead>\n\t\t<tbody>\n\t\t\t<tr>\n\t\t\t\t<td width=60%><table width=100% cellspacing=0><tbody>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td width=22%><b>Name</b></td>\n\t\t\t\t\t\t<td><script>doc.customer_name</script></td>\n\t\t\t\t\t</tr>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td><b>Address</b></td>\n\t\t\t\t\t\t<td><script>replace_newlines(doc.address_display)</script></td>\n\t\t\t\t\t</tr>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td><b>Contact</b></td>\n\t\t\t\t\t\t<td><script>doc.contact_display</script></td>\n\t\t\t\t\t</tr>\n\t\t\t\t</tbody></table></td>\n\t\t\t\t<td><table width=100% cellspacing=0><tbody>\n\t\t\t\t\t<tr class=\'imp-details\'>\n\t\t\t\t\t\t<td><b>Delivery Note No.</b></td>\n\t\t\t\t\t\t<td><script>cur_frm.docname</script></td>\n\t\t\t\t\t</tr>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td width=63%><b>Delivery Note Date</b></td>\n\t\t\t\t\t\t<td><script>date.str_to_user(doc.transaction_date)</script></td>\n\t\t\t\t\t<tr>\t\t\t\t\t\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td><b>Sales Order No.</b></td>\n\t\t\t\t\t\t<td>\n\t\t\t\t\t\t\t<script>doc.sales_order_no</script><br />\n\t\t\t\t\t\t\t<i>(<script>date.str_to_user(doc.posting_date)</script>)</i>\n\t\t\t\t\t\t</td>\n\t\t\t\t\t<tr>\t\t\t\t\t\n\t\t\t\t</tbody></table></td>\n\t\t\t</tr>\n\t\t</tbody>\n\t\t<tfoot>\n\t\t\n\t\t</tfoot>\n\t</table>\n</div>\n<div class=\'common page-body\'>\n\t<!-- \n\t\tPage Body will contain\n\t\t\t+ table 2\n\t\t\t\t- Sales Invoice Data\n\t-->\n\t<script>si_std.print_item_table()</script>\n</div>\n<div class=\'common page-footer\'>\n\t<!-- \n\t\tPage Footer will contain\n\t\t\t+ table 3\n\t\t\t\t- Terms and Conditions\n\t\t\t\t- Total Rounded Amount Calculation\n\t\t\t\t- Total Rounded Amount in Words\n\t-->\n\t<table class=\'footer-table\' width=100% cellspacing=0>\n\t\t<thead>\n\t\t\t\n\t\t</thead>\n\t\t<tbody>\n\t\t\t<tr>\n\t\t\t\t<td width=60% style=\'padding-right: 10px;\'>\n\t\t\t\t\t<b>Terms, Conditions &amp; Other Information:</b><br />\n\t\t\t\t\t<script>doc.terms</script>\n\t\t\t\t</td>\n\t\t\t\t<td>\n\t\t\t\t\t<table cellspacing=0 width=100%><tbody>\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td>Net Total</td>\n\t\t\t\t\t\t\t<td></td>\n\t\t\t\t\t\t\t<td width=38%><script>\n\t\t\t\t\t\t\t\tfmt_money(doc.net_total)\n\t\t\t\t\t\t\t</script></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr><td colspan=3><script>si_std.print_other_charges()</script></td></tr>\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td>Grand Total</td>\n\t\t\t\t\t\t\t<td></td>\n\t\t\t\t\t\t\t<td><script>\n\t\t\t\t\t\t\t\tfmt_money(doc.grand_total_export)\n\t\t\t\t\t\t\t</script></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr style=\'font-weight: bold\' class=\'imp-details\'>\n\t\t\t\t\t\t\t<td>Rounded Total</td>\n\t\t\t\t\t\t\t<td><script>doc.currency</script></td>\n\t\t\t\t\t\t\t<td><script>\n\t\t\t\t\t\t\t\tfmt_money(doc.rounded_total_export)\n\t\t\t\t\t\t\t</script></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t</tbody></table>\n\t\t\t\t\t<br /><b>In Words</b><br />\n\t\t\t\t\t<i><script>doc.in_words_export</script></i>\n\t\t\t\t</td>\n\t\t\t</tr>\t\t\n\t\t</tbody>\n\t\t<tfoot>\n\t\t\t<tr><td colspan=2><div></div></td><tr>\n\t\t</tfoot>\n\t</table>\n</div>\n',
-		'module': u'Stock',
-		'name': '__common__',
-		'standard': u'Yes'
-	},
-
-	# Print Format, Delivery Note Modern
-	{
-		'doctype': 'Print Format',
-		'name': u'Delivery Note Modern'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-05-17 17:27:50", 
+  "modified_by": "Administrator", 
+  "modified": "2012-05-17 18:04:19"
+ }, 
+ {
+  "doc_type": "Delivery Note", 
+  "name": "__common__", 
+  "module": "Stock", 
+  "doctype": "Print Format", 
+  "html": "<!--\n\tSample Print Format for ERPNext\n\tPlease use at your own discretion\n\tFor suggestions and contributions:\n\t\thttps://github.com/webnotes/erpnext-print-templates\n\n\tFreely usable under MIT license\n-->\n\n<!-- Style Settings -->\n<style>\n\t/*\n\t\tcommon style for whole page\n\t\tThis should include:\n\t\t+ page size related settings\n\t\t+ font family settings\n\t\t+ line spacing settings\n\t*/\n\t@media screen {\n\t\tbody {\n\t\t\twidth: 8.3in;\n\t\t}\n\t}\n\n\thtml, body, div, span, td {\n\t\tfont-family: \"Helvetica\", \"Arial\", sans-serif;\n\t\tfont-size: 12px;\n\t}\n\n\tbody {\n\t\tpadding: 10px;\n\t\tmargin: auto;\n\t\tfont-size: 12px;\n\t\tline-height: 150%;\n\t}\n\n\t.common {\n\t\tfont-family: \"Helvetica\", \"Arial\", sans-serif !important;\n\t\tfont-size: 12px;\n\t\tpadding: 10px 0px;\n\t}\n\n\ttable {\n\t\tborder-collapse: collapse;\n\t\twidth: 100%;\n\t\tvertical-align: top;\n\t\tborder-style: none !important;\n\t}\n\n\ttable td {\n\t\tpadding: 2px 0px;\n\t\tborder-style: none !important;\n\t}\n\t\n\ttable h1, h2, h3, h4, h5, h6 {\n\t\tpadding: 0px;\n\t\tmargin: 0px;\n\t}\n\n\ttable.header-table td {\n\t\tvertical-align: top;\n\t}\n\n\ttable.header-table h1 {\n\t\ttext-transform: uppercase;\n\t\tcolor: white;\n\t\tfont-size: 55px;\n\t\tfont-style: italic;\n\t}\n\n\ttable.header-table thead tr:nth-child(1) div {\n\t\theight: 24px;\n\t\tbackground-color: #696969;\n\t\tvertical-align: middle;\n\t\tpadding: 12px 0px 0px 0px;\n\t\twidth: 100%;\n\t}\n\n\tdiv.page-body table td:nth-child(6),\n\tdiv.page-body table td:nth-child(7) {\n\t\ttext-align: right;\n\t}\n\n\tdiv.page-body table tr td {\n\t\tbackground-color: #DCDCDC !important;\n\t}\n\n\tdiv.page-body table tr:nth-child(1) td {\n\t\tbackground-color: #696969 !important;\n\t\tcolor: white !important;\n\t}\n\n\ttable.footer-table td {\n\t\tvertical-align: top;\n\t}\n\n\ttable.footer-table td table td:nth-child(2),\n\ttable.footer-table td table td:nth-child(3) {\n\t\ttext-align: right;\n\t}\n\n\ttable.footer-table tfoot td {\n\t\tbackground-color: #696969;\n\t\theight: 10px;\n\t}\n\n\t.imp-details {\n\t\tbackground-color: #DCDCDC;\n\t}\n</style>\n\n\n<!-- Javascript -->\n<script>\n    // Store round off to places for fields\n    var decimals = {\n        adj_rate: (function() {\n            var adj_rate = get_field('Delivery Note Item', 'adj_rate');\n            if (adj_rate.fieldtype==='Float') return 6;\n            return 2;\n        })(),\n    };\n\tvar si_std = {\n\t\tprint_item_table: function() {\n\t\t\tvar table = print_table(\n\t\t\t\t'Delivery Note',\n\t\t\t\tdoc.name,\n\t\t\t\t'delivery_note_details',\n\t\t\t\t'Delivery Note Item',\n\t\t\t\t[// Here specify the table columns to be displayed\n\t\t\t\t\t'SR', 'item_code', 'item_name', 'description', 'qty', 'stock_uom',\n\t\t\t\t\t'basic_rate', 'amount'\n\t\t\t\t],\n\t\t\t\t[// Here specify the labels of column headings\n\t\t\t\t\t'Sr', 'Item Code', 'Item Name', 'Description', 'Qty',\n\t\t\t\t\t'UoM', 'Basic Rate', 'Amount'\n\t\t\t\t],\n\t\t\t\t[// Here specify the column widths\n\t\t\t\t\t'3%', '10%', '15%', '32%', '5%',\n\t\t\t\t\t'5%', '15%', '15%'\n\t\t\t\t],\n\t\t\t\tnull,\n\t\t\t\tnull,\n\t\t\t\t{\n\t\t\t\t\t'description' : function(data_row) {\n\t\t\t\t\t\tvar to_append = ''\n\t\t\t\t\t\tif(data_row.adj_rate){\n\t\t\t\t\t\t\tto_append = '<div style=\"padding-left: 15px;\"><i>Discount: ' + \n\t\t\t\t\t\t\t\troundNumber(data_row.adj_rate, decimals.adj_rate || 2) +\n                                '% on ' + doc.currency + ' ' +\n\t\t\t\t\t\t\t\tfmt_money(data_row.ref_rate) + '</i></div>';\n\t\t\t\t\t\t\tif(data_row.description.indexOf(to_append)==-1) {\n\t\t\t\t\t\t\t\tdata_row.description = data_row.description + to_append;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\t\n\t\t\t\t\t\tif(data_row.serial_no) {\n\t\t\t\t\t\t\tto_append = '<div style=\"padding-left: 15px;\"><i>Serial No.:' + \n\t\t\t\t\t\t\t\t((data_row.serial_no.indexOf('\\n')>-1)?'<br />':'&nbsp;') + \n\t\t\t\t\t\t\t\tdata_row.serial_no + '</i></div>';\n\t\t\t\t\t\t\tif(data_row.description.indexOf(to_append)==-1) {\n\t\t\t\t\t\t\t\tdata_row.description = data_row.description + to_append;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\n\t\t\t\t\t\treturn data_row.description;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t);\n\n\t\t\t// This code takes care of page breaks\n\t\t\tif(table.appendChild) {\n\t\t\t\tout = table.innerHTML;\n\t\t\t} else {\n\t\t\t\tout = '';\n\t\t\t\tfor(var i=0; i < (table.length-1); i++) {\n\t\t\t\t\tout += table[i].innerHTML + \n\t\t\t\t\t\t'<div style = \"page-break-after: always;\" \\\n\t\t\t\t\t\tclass = \"page_break\"></div>\\\n\t\t\t\t\t\t<div class=\"page-settings\"></div>';\n\t\t\t\t}\n\t\t\t\tout += table[table.length-1].innerHTML;\n\t\t\t}\n\t\t\treturn out;\n\t\t},\n\n\n\t\tprint_other_charges: function(parent) {\n\t\t\tvar oc = getchildren('Sales Taxes and Charges', doc.name, 'other_charges');\n\t\t\tvar rows = '<table width=100%>\\n';\n\t\t\tfor(var i=0; i<oc.length; i++) {\n\t\t\t\tif(!oc[i].included_in_print_rate) {\n\t\t\t\t\trows +=\n\t\t\t\t\t\t'<tr>\\n' +\n\t\t\t\t\t\t\t'\\t<td>' + oc[i].description + '</td>\\n' +\n\t\t\t\t\t\t\t'\\t<td></td>\\n' +\n\t\t\t\t\t\t\t'\\t<td width=38%>' + fmt_money(oc[i].tax_amount) + '</td>\\n' +\n\t\t\t\t\t\t'</tr>\\n';\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn rows + '</table>\\n';\n\t\t}\n\t};\n</script>\n\n\n<!-- Page Layout Settings -->\n<div class='common page-header'>\n\t<!-- \n\t\tPage Header will contain\n\t\t\t+ table 1\n\t\t\t\t+ table 1a\n\t\t\t\t\t- Name\n\t\t\t\t\t- Address\n\t\t\t\t\t- Contact\n\t\t\t\t\t- Mobile No\n\t\t\t\t+ table 1b\n\t\t\t\t\t- Voucher Date\n\t\t\t\t\t- Due Date\n\t-->\n\t<table class='header-table' cellspacing=0>\n\t\t<thead>\n\t\t\t<tr><td colspan=2><div><script>'<h1>' + (doc.select_print_heading || 'Delivery Note') + '</h1>'</script></div></td></tr>\n\t\t\t<tr><td colspan=2><div style=\"height:15px\"></div></td></tr>\n\t\t</thead>\n\t\t<tbody>\n\t\t\t<tr>\n\t\t\t\t<td width=60%><table width=100% cellspacing=0><tbody>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td width=22%><b>Name</b></td>\n\t\t\t\t\t\t<td><script>doc.customer_name</script></td>\n\t\t\t\t\t</tr>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td><b>Address</b></td>\n\t\t\t\t\t\t<td><script>replace_newlines(doc.address_display)</script></td>\n\t\t\t\t\t</tr>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td><b>Contact</b></td>\n\t\t\t\t\t\t<td><script>doc.contact_display</script></td>\n\t\t\t\t\t</tr>\n\t\t\t\t</tbody></table></td>\n\t\t\t\t<td><table width=100% cellspacing=0><tbody>\n\t\t\t\t\t<tr class='imp-details'>\n\t\t\t\t\t\t<td><b>Delivery Note No.</b></td>\n\t\t\t\t\t\t<td><script>cur_frm.docname</script></td>\n\t\t\t\t\t</tr>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td width=63%><b>Delivery Note Date</b></td>\n\t\t\t\t\t\t<td><script>date.str_to_user(doc.transaction_date)</script></td>\n\t\t\t\t\t<tr>\t\t\t\t\t\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td><b>Sales Order No.</b></td>\n\t\t\t\t\t\t<td>\n\t\t\t\t\t\t\t<script>doc.sales_order_no</script><br />\n\t\t\t\t\t\t\t<i>(<script>date.str_to_user(doc.posting_date)</script>)</i>\n\t\t\t\t\t\t</td>\n\t\t\t\t\t<tr>\t\t\t\t\t\n\t\t\t\t</tbody></table></td>\n\t\t\t</tr>\n\t\t</tbody>\n\t\t<tfoot>\n\t\t\n\t\t</tfoot>\n\t</table>\n</div>\n<div class='common page-body'>\n\t<!-- \n\t\tPage Body will contain\n\t\t\t+ table 2\n\t\t\t\t- Sales Invoice Data\n\t-->\n\t<script>si_std.print_item_table()</script>\n</div>\n<div class='common page-footer'>\n\t<!-- \n\t\tPage Footer will contain\n\t\t\t+ table 3\n\t\t\t\t- Terms and Conditions\n\t\t\t\t- Total Rounded Amount Calculation\n\t\t\t\t- Total Rounded Amount in Words\n\t-->\n\t<table class='footer-table' width=100% cellspacing=0>\n\t\t<thead>\n\t\t\t\n\t\t</thead>\n\t\t<tbody>\n\t\t\t<tr>\n\t\t\t\t<td width=60% style='padding-right: 10px;'>\n\t\t\t\t\t<b>Terms, Conditions &amp; Other Information:</b><br />\n\t\t\t\t\t<script>doc.terms</script>\n\t\t\t\t</td>\n\t\t\t\t<td>\n\t\t\t\t\t<table cellspacing=0 width=100%><tbody>\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td>Net Total</td>\n\t\t\t\t\t\t\t<td></td>\n\t\t\t\t\t\t\t<td width=38%><script>\n\t\t\t\t\t\t\t\tfmt_money(doc.net_total)\n\t\t\t\t\t\t\t</script></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr><td colspan=3><script>si_std.print_other_charges()</script></td></tr>\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td>Grand Total</td>\n\t\t\t\t\t\t\t<td></td>\n\t\t\t\t\t\t\t<td><script>\n\t\t\t\t\t\t\t\tfmt_money(doc.grand_total_export)\n\t\t\t\t\t\t\t</script></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr style='font-weight: bold' class='imp-details'>\n\t\t\t\t\t\t\t<td>Rounded Total</td>\n\t\t\t\t\t\t\t<td><script>doc.currency</script></td>\n\t\t\t\t\t\t\t<td><script>\n\t\t\t\t\t\t\t\tfmt_money(doc.rounded_total_export)\n\t\t\t\t\t\t\t</script></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t</tbody></table>\n\t\t\t\t\t<br /><b>In Words</b><br />\n\t\t\t\t\t<i><script>doc.in_words_export</script></i>\n\t\t\t\t</td>\n\t\t\t</tr>\t\t\n\t\t</tbody>\n\t\t<tfoot>\n\t\t\t<tr><td colspan=2><div></div></td><tr>\n\t\t</tfoot>\n\t</table>\n</div>\n", 
+  "standard": "Yes"
+ }, 
+ {
+  "name": "Delivery Note Modern", 
+  "doctype": "Print Format"
+ }
 ]
\ No newline at end of file
diff --git a/stock/Print Format/Delivery Note Packing List Wise/Delivery Note Packing List Wise.txt b/stock/Print Format/Delivery Note Packing List Wise/Delivery Note Packing List Wise.txt
index 849db97..1d33833 100644
--- a/stock/Print Format/Delivery Note Packing List Wise/Delivery Note Packing List Wise.txt
+++ b/stock/Print Format/Delivery Note Packing List Wise/Delivery Note Packing List Wise.txt
@@ -1,27 +1,20 @@
-# Print Format, Delivery Note Packing List Wise
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2011-08-23 16:49:40',
-		'docstatus': 0,
-		'modified': '2011-10-19 14:12:11',
-		'modified_by': 'Administrator',
-		'owner': 'Administrator'
-	},
-
-	# These values are common for all Print Format
-	{
-		'doctype': 'Print Format',
-		'html': "<html>\n<head>\n\n<script>\nfunction replaceAll(s,s1,s2){ return s.split(s1).join(s2);}\n\nfunction get_letter_head() {\n\t// add letter head\n\tvar cp = locals['Control Panel']['Control Panel'];\n\tif(doc.letter_head)\n\t\tvar lh= cstr(_p.letter_heads[doc.letter_head]);\n\telse if(cp.letter_head)\n\t\tvar lh= cp.letter_head;\n\telse \n\t\tvar lh= '';\n\t\t\n\treturn lh;\n}\n\n</script>\n<style>\n.cust_tbl { border-collapse:collapse; }\n.cust_tbl td { border:1px solid #848484; font-size: 13px}\n.large_font td {font-size: 13px}\n</style>\n</head>\n\n<body>\n<script>\nreplaceAll(doc.print_packing_slip,'[HEADER GOES HERE]',get_letter_head());\n</script>\n</body>\n</html>",
-		'module': 'Stock',
-		'name': '__common__',
-		'standard': 'Yes'
-	},
-
-	# Print Format, Delivery Note Packing List Wise
-	{
-		'doctype': 'Print Format',
-		'name': 'Delivery Note Packing List Wise'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2011-08-23 16:49:40", 
+  "modified_by": "Administrator", 
+  "modified": "2011-10-19 14:12:11"
+ }, 
+ {
+  "name": "__common__", 
+  "module": "Stock", 
+  "standard": "Yes", 
+  "html": "<html>\n<head>\n\n<script>\nfunction replaceAll(s,s1,s2){ return s.split(s1).join(s2);}\n\nfunction get_letter_head() {\n\t// add letter head\n\tvar cp = locals['Control Panel']['Control Panel'];\n\tif(doc.letter_head)\n\t\tvar lh= cstr(_p.letter_heads[doc.letter_head]);\n\telse if(cp.letter_head)\n\t\tvar lh= cp.letter_head;\n\telse \n\t\tvar lh= '';\n\t\t\n\treturn lh;\n}\n\n</script>\n<style>\n.cust_tbl { border-collapse:collapse; }\n.cust_tbl td { border:1px solid #848484; font-size: 13px}\n.large_font td {font-size: 13px}\n</style>\n</head>\n\n<body>\n<script>\nreplaceAll(doc.print_packing_slip,'[HEADER GOES HERE]',get_letter_head());\n</script>\n</body>\n</html>", 
+  "doctype": "Print Format"
+ }, 
+ {
+  "name": "Delivery Note Packing List Wise", 
+  "doctype": "Print Format"
+ }
 ]
\ No newline at end of file
diff --git a/stock/Print Format/Delivery Note Spartan/Delivery Note Spartan.txt b/stock/Print Format/Delivery Note Spartan/Delivery Note Spartan.txt
index 73dcf7d..03201b8 100644
--- a/stock/Print Format/Delivery Note Spartan/Delivery Note Spartan.txt
+++ b/stock/Print Format/Delivery Note Spartan/Delivery Note Spartan.txt
@@ -1,28 +1,21 @@
-# Print Format, Delivery Note Spartan
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-05-17 17:27:50',
-		'docstatus': 0,
-		'modified': '2012-05-17 18:05:49',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all Print Format
-	{
-		'doc_type': u'Delivery Note',
-		'doctype': 'Print Format',
-		'html': u'<!--\n\tSample Print Format for ERPNext\n\tPlease use at your own discretion\n\tFor suggestions and contributions:\n\t\thttps://github.com/webnotes/erpnext-print-templates\n\n\tFreely usable under MIT license\n-->\n\n<!-- Style Settings -->\n<style>\n\t/*\n\t\tcommon style for whole page\n\t\tThis should include:\n\t\t+ page size related settings\n\t\t+ font family settings\n\t\t+ line spacing settings\n\t*/\n\t@media screen {\n\t\tbody {\n\t\t\twidth: 8.3in;\n\t\t}\n\t}\n\n\thtml, body, div, span, td {\n\t\tfont-family: "Arial", sans-serif;\n\t\tfont-size: 12px;\n\t}\n\n\tbody {\n\t\tpadding: 10px;\n\t\tmargin: auto;\n\t\tfont-size: 12px;\n\t\tline-height: 150%;\n\t}\n\n\t.common {\n\t\tfont-family: "Arial", sans-serif !important;\n\t\tfont-size: 12px;\n\t\tpadding: 0px;\n\t}\n\n\ttable {\n\t\twidth: 100% !important;\n\t\tvertical-align: top;\n\t}\n\n\ttable td {\n\t\tpadding: 2px 0px;\n\t}\n\n\ttable, td {\n\t\tborder-collapse: collapse !important;\n\t\tpadding: 0px;\n\t\tmargin: 0px !important;\n\t}\n\t\n\ttable h1, h2, h3, h4, h5, h6 {\n\t\tpadding: 0px;\n\t\tmargin: 0px;\n\t}\n\n\ttable.header-table td {\n\t\tvertical-align: top;\n\t}\n\n\ttable.header-table h3 {\n\t\tcolor: gray;\n\t}\n\n\ttable.header-table thead td {\n\t\tpadding: 5px;\n\t}\n\n\ttable.header-table > thead,\n\ttable.header-table > tbody > tr > td,\n\ttable.footer-table > tbody > tr > td {\n\t\tborder: 1px solid black;\n\t\tpadding: 5px;\n\t}\n\n\ttable.footer-table > tbody,\n\ttable.header-table > thead {\n\t\tborder-bottom: 3px solid black;\n\t}\n\n\ttable.header-table > thead {\n\t\tborder-top: 3px solid black;\n\t}\n\n\tdiv.page-body table td:nth-child(6),\n\tdiv.page-body table td:nth-child(7) {\n\t\ttext-align: right;\n\t}\n\n\tdiv.page-body td {\n\t\tbackground-color: white !important;\n\t\tborder: 1px solid black !important;\n\t}\n\n\ttable.footer-table td {\n\t\tvertical-align: top;\n\t}\n\n\ttable.footer-table td table td:nth-child(2),\n\ttable.footer-table td table td:nth-child(3) {\n\t\ttext-align: right;\n\t}\n</style>\n\n\n<!-- Javascript -->\n<script>\n    // Store round off to places for fields\n    var decimals = {\n        adj_rate: (function() {\n            var adj_rate = get_field(\'Delivery Note Item\', \'adj_rate\');\n            if (adj_rate.fieldtype===\'Float\') return 6;\n            return 2;\n        })(),\n    };\n\tvar si_std = {\n\t\tprint_item_table: function() {\n\t\t\tvar table = print_table(\n\t\t\t\t\'Delivery Note\',\n\t\t\t\tdoc.name,\n\t\t\t\t\'delivery_note_details\',\n\t\t\t\t\'Delivery Note Item\',\n\t\t\t\t[// Here specify the table columns to be displayed\n\t\t\t\t\t\'SR\', \'item_code\', \'item_name\', \'description\', \'qty\', \'stock_uom\',\n\t\t\t\t\t\'basic_rate\', \'amount\'\n\t\t\t\t],\n\t\t\t\t[// Here specify the labels of column headings\n\t\t\t\t\t\'Sr\', \'Item Code\', \'Item Name\', \'Description\', \'Qty\',\n\t\t\t\t\t\'UoM\', \'Basic Rate\', \'Amount\'\n\t\t\t\t],\n\t\t\t\t[// Here specify the column widths\n\t\t\t\t\t\'3%\', \'10%\', \'15%\', \'32%\', \'5%\',\n\t\t\t\t\t\'5%\', \'15%\', \'15%\'\n\t\t\t\t],\n\t\t\t\tnull,\n\t\t\t\tnull,\n\t\t\t\t{\n\t\t\t\t\t\'description\' : function(data_row) {\n\t\t\t\t\t\tvar to_append = \'\'\n\t\t\t\t\t\tif(data_row.adj_rate){\n\t\t\t\t\t\t\tto_append = \'<div style="padding-left: 15px;"><i>Discount: \' + \n    \t\t\t\t\t\t\troundNumber(data_row.adj_rate, decimals.adj_rate || 2) +\n                                \'% on \' + doc.currency + \' \' +\n\t\t\t\t\t\t\t\tfmt_money(data_row.ref_rate) + \'</i></div>\';\n\t\t\t\t\t\t\tif(data_row.description.indexOf(to_append)==-1) {\n\t\t\t\t\t\t\t\tdata_row.description = data_row.description + to_append;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\t\n\t\t\t\t\t\tif(data_row.serial_no) {\n\t\t\t\t\t\t\tto_append = \'<div style="padding-left: 15px;"><i>Serial No.:\' + \n\t\t\t\t\t\t\t\t((data_row.serial_no.indexOf(\'\\n\')>-1)?\'<br />\':\'&nbsp;\') + \n\t\t\t\t\t\t\t\tdata_row.serial_no + \'</i></div>\';\n\t\t\t\t\t\t\tif(data_row.description.indexOf(to_append)==-1) {\n\t\t\t\t\t\t\t\tdata_row.description = data_row.description + to_append;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\n\t\t\t\t\t\treturn data_row.description;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t);\n\n\t\t\t// This code takes care of page breaks\n\t\t\tif(table.appendChild) {\n\t\t\t\tout = table.innerHTML;\n\t\t\t} else {\n\t\t\t\tout = \'\';\n\t\t\t\tfor(var i=0; i < (table.length-1); i++) {\n\t\t\t\t\tout += table[i].innerHTML + \n\t\t\t\t\t\t\'<div style = "page-break-after: always;" \\\n\t\t\t\t\t\tclass = "page_break"></div>\\\n\t\t\t\t\t\t<div class="page-settings"></div>\';\n\t\t\t\t}\n\t\t\t\tout += table[table.length-1].innerHTML;\n\t\t\t}\n\t\t\treturn out;\n\t\t},\n\n\n\t\tprint_other_charges: function(parent) {\n\t\t\tvar oc = getchildren(\'Sales Taxes and Charges\', doc.name, \'other_charges\');\n\t\t\tvar rows = \'<table width=100%>\\n\';\n\t\t\tfor(var i=0; i<oc.length; i++) {\n\t\t\t\tif(!oc[i].included_in_print_rate) {\n\t\t\t\t\trows +=\n\t\t\t\t\t\t\'<tr>\\n\' +\n\t\t\t\t\t\t\t\'\\t<td>\' + oc[i].description + \'</td>\\n\' +\n\t\t\t\t\t\t\t\'\\t<td></td>\\n\' +\n\t\t\t\t\t\t\t\'\\t<td width=38%>\' + fmt_money(oc[i].tax_amount) + \'</td>\\n\' +\n\t\t\t\t\t\t\'</tr>\\n\';\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn rows + \'</table>\\n\';\n\t\t}\n\t};\n</script>\n\n\n<!-- Page Layout Settings -->\n<div class=\'common page-header\'>\n\t<!-- \n\t\tPage Header will contain\n\t\t\t+ table 1\n\t\t\t\t+ table 1a\n\t\t\t\t\t- Name\n\t\t\t\t\t- Address\n\t\t\t\t\t- Contact\n\t\t\t\t\t- Mobile No\n\t\t\t\t+ table 1b\n\t\t\t\t\t- Voucher Date\n\t\t\t\t\t- Due Date\n\t-->\n\t<table class=\'header-table\' cellspacing=0>\n\t\t<thead>\n\t\t\t<tr><td colspan=2><script>\'<h1>\' + (doc.select_print_heading || \'Delivery Note\') + \'</h1>\'</script></td></tr>\n\t\t\t<tr><td colspan=2><h3><script>cur_frm.docname</script></h3></td></tr>\n\t\t</thead>\n\t\t<tbody>\n\t\t\t<tr>\n\t\t\t\t<td width=60%><table width=100% cellspacing=0><tbody>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td width=22%><b>Name</b></td>\n\t\t\t\t\t\t<td><script>doc.customer_name</script></td>\n\t\t\t\t\t</tr>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td><b>Address</b></td>\n\t\t\t\t\t\t<td><script>replace_newlines(doc.address_display)</script></td>\n\t\t\t\t\t</tr>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td><b>Contact</b></td>\n\t\t\t\t\t\t<td><script>doc.contact_display</script></td>\n\t\t\t\t\t</tr>\n\t\t\t\t</tbody></table></td>\n\t\t\t\t<td><table width=100% cellspacing=0><tbody>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td width=63%><b>Delivery Note Date</b></td>\n\t\t\t\t\t\t<td><script>date.str_to_user(doc.transaction_date)</script></td>\n\t\t\t\t\t<tr>\t\t\t\t\t\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td><b>Sales Order No.</b></td>\n\t\t\t\t\t\t<td>\n\t\t\t\t\t\t\t<script>doc.sales_order_no</script><br />\n\t\t\t\t\t\t\t<i>(<script>date.str_to_user(doc.posting_date)</script>)</i>\n\t\t\t\t\t\t</td>\n\t\t\t\t\t<tr>\t\t\t\t\t\n\t\t\t\t</tbody></table></td>\n\t\t\t</tr>\n\t\t</tbody>\n\t\t<tfoot>\n\t\t\n\t\t</tfoot>\n\t</table>\n</div>\n<div class=\'common page-body\'>\n\t<!-- \n\t\tPage Body will contain\n\t\t\t+ table 2\n\t\t\t\t- Sales Invoice Data\n\t-->\n\t<script>si_std.print_item_table()</script>\n</div>\n<div class=\'common page-footer\'>\n\t<!-- \n\t\tPage Footer will contain\n\t\t\t+ table 3\n\t\t\t\t- Terms and Conditions\n\t\t\t\t- Total Rounded Amount Calculation\n\t\t\t\t- Total Rounded Amount in Words\n\t-->\n\t<table class=\'footer-table\' width=100% cellspacing=0>\n\t\t<thead>\n\t\t\t\n\t\t</thead>\n\t\t<tbody>\n\t\t\t<tr>\n\t\t\t\t<td width=60% style=\'padding-right: 10px;\'>\n\t\t\t\t\t<b>Terms, Conditions &amp; Other Information:</b><br />\n\t\t\t\t\t<script>doc.terms</script>\n\t\t\t\t</td>\n\t\t\t\t<td>\n\t\t\t\t\t<table cellspacing=0 width=100%><tbody>\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td>Net Total</td>\n\t\t\t\t\t\t\t<td></td>\n\t\t\t\t\t\t\t<td width=38%><script>\n\t\t\t\t\t\t\t\tfmt_money(doc.net_total)\n\t\t\t\t\t\t\t</script></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr><td colspan=3><script>si_std.print_other_charges()</script></td></tr>\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td>Grand Total</td>\n\t\t\t\t\t\t\t<td></td>\n\t\t\t\t\t\t\t<td><script>\n\t\t\t\t\t\t\t\tfmt_money(doc.grand_total_export)\n\t\t\t\t\t\t\t</script></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr style=\'font-weight: bold\'>\n\t\t\t\t\t\t\t<td>Rounded Total</td>\n\t\t\t\t\t\t\t<td><script>doc.currency</script></td>\n\t\t\t\t\t\t\t<td><script>\n\t\t\t\t\t\t\t\tfmt_money(doc.rounded_total_export)\n\t\t\t\t\t\t\t</script></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t</tbody></table>\n\t\t\t\t\t<br /><b>In Words</b><br />\n\t\t\t\t\t<i><script>doc.in_words_export</script></i>\n\t\t\t\t</td>\n\t\t\t</tr>\t\t\n\t\t</tbody>\n\t\t<tfoot>\n\t\t\n\t\t</tfoot>\n\t</table>\n</div>\n',
-		'module': u'Stock',
-		'name': '__common__',
-		'standard': u'Yes'
-	},
-
-	# Print Format, Delivery Note Spartan
-	{
-		'doctype': 'Print Format',
-		'name': u'Delivery Note Spartan'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-05-17 17:27:50", 
+  "modified_by": "Administrator", 
+  "modified": "2012-05-17 18:05:49"
+ }, 
+ {
+  "doc_type": "Delivery Note", 
+  "name": "__common__", 
+  "module": "Stock", 
+  "doctype": "Print Format", 
+  "html": "<!--\n\tSample Print Format for ERPNext\n\tPlease use at your own discretion\n\tFor suggestions and contributions:\n\t\thttps://github.com/webnotes/erpnext-print-templates\n\n\tFreely usable under MIT license\n-->\n\n<!-- Style Settings -->\n<style>\n\t/*\n\t\tcommon style for whole page\n\t\tThis should include:\n\t\t+ page size related settings\n\t\t+ font family settings\n\t\t+ line spacing settings\n\t*/\n\t@media screen {\n\t\tbody {\n\t\t\twidth: 8.3in;\n\t\t}\n\t}\n\n\thtml, body, div, span, td {\n\t\tfont-family: \"Arial\", sans-serif;\n\t\tfont-size: 12px;\n\t}\n\n\tbody {\n\t\tpadding: 10px;\n\t\tmargin: auto;\n\t\tfont-size: 12px;\n\t\tline-height: 150%;\n\t}\n\n\t.common {\n\t\tfont-family: \"Arial\", sans-serif !important;\n\t\tfont-size: 12px;\n\t\tpadding: 0px;\n\t}\n\n\ttable {\n\t\twidth: 100% !important;\n\t\tvertical-align: top;\n\t}\n\n\ttable td {\n\t\tpadding: 2px 0px;\n\t}\n\n\ttable, td {\n\t\tborder-collapse: collapse !important;\n\t\tpadding: 0px;\n\t\tmargin: 0px !important;\n\t}\n\t\n\ttable h1, h2, h3, h4, h5, h6 {\n\t\tpadding: 0px;\n\t\tmargin: 0px;\n\t}\n\n\ttable.header-table td {\n\t\tvertical-align: top;\n\t}\n\n\ttable.header-table h3 {\n\t\tcolor: gray;\n\t}\n\n\ttable.header-table thead td {\n\t\tpadding: 5px;\n\t}\n\n\ttable.header-table > thead,\n\ttable.header-table > tbody > tr > td,\n\ttable.footer-table > tbody > tr > td {\n\t\tborder: 1px solid black;\n\t\tpadding: 5px;\n\t}\n\n\ttable.footer-table > tbody,\n\ttable.header-table > thead {\n\t\tborder-bottom: 3px solid black;\n\t}\n\n\ttable.header-table > thead {\n\t\tborder-top: 3px solid black;\n\t}\n\n\tdiv.page-body table td:nth-child(6),\n\tdiv.page-body table td:nth-child(7) {\n\t\ttext-align: right;\n\t}\n\n\tdiv.page-body td {\n\t\tbackground-color: white !important;\n\t\tborder: 1px solid black !important;\n\t}\n\n\ttable.footer-table td {\n\t\tvertical-align: top;\n\t}\n\n\ttable.footer-table td table td:nth-child(2),\n\ttable.footer-table td table td:nth-child(3) {\n\t\ttext-align: right;\n\t}\n</style>\n\n\n<!-- Javascript -->\n<script>\n    // Store round off to places for fields\n    var decimals = {\n        adj_rate: (function() {\n            var adj_rate = get_field('Delivery Note Item', 'adj_rate');\n            if (adj_rate.fieldtype==='Float') return 6;\n            return 2;\n        })(),\n    };\n\tvar si_std = {\n\t\tprint_item_table: function() {\n\t\t\tvar table = print_table(\n\t\t\t\t'Delivery Note',\n\t\t\t\tdoc.name,\n\t\t\t\t'delivery_note_details',\n\t\t\t\t'Delivery Note Item',\n\t\t\t\t[// Here specify the table columns to be displayed\n\t\t\t\t\t'SR', 'item_code', 'item_name', 'description', 'qty', 'stock_uom',\n\t\t\t\t\t'basic_rate', 'amount'\n\t\t\t\t],\n\t\t\t\t[// Here specify the labels of column headings\n\t\t\t\t\t'Sr', 'Item Code', 'Item Name', 'Description', 'Qty',\n\t\t\t\t\t'UoM', 'Basic Rate', 'Amount'\n\t\t\t\t],\n\t\t\t\t[// Here specify the column widths\n\t\t\t\t\t'3%', '10%', '15%', '32%', '5%',\n\t\t\t\t\t'5%', '15%', '15%'\n\t\t\t\t],\n\t\t\t\tnull,\n\t\t\t\tnull,\n\t\t\t\t{\n\t\t\t\t\t'description' : function(data_row) {\n\t\t\t\t\t\tvar to_append = ''\n\t\t\t\t\t\tif(data_row.adj_rate){\n\t\t\t\t\t\t\tto_append = '<div style=\"padding-left: 15px;\"><i>Discount: ' + \n    \t\t\t\t\t\t\troundNumber(data_row.adj_rate, decimals.adj_rate || 2) +\n                                '% on ' + doc.currency + ' ' +\n\t\t\t\t\t\t\t\tfmt_money(data_row.ref_rate) + '</i></div>';\n\t\t\t\t\t\t\tif(data_row.description.indexOf(to_append)==-1) {\n\t\t\t\t\t\t\t\tdata_row.description = data_row.description + to_append;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\t\n\t\t\t\t\t\tif(data_row.serial_no) {\n\t\t\t\t\t\t\tto_append = '<div style=\"padding-left: 15px;\"><i>Serial No.:' + \n\t\t\t\t\t\t\t\t((data_row.serial_no.indexOf('\\n')>-1)?'<br />':'&nbsp;') + \n\t\t\t\t\t\t\t\tdata_row.serial_no + '</i></div>';\n\t\t\t\t\t\t\tif(data_row.description.indexOf(to_append)==-1) {\n\t\t\t\t\t\t\t\tdata_row.description = data_row.description + to_append;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\n\t\t\t\t\t\treturn data_row.description;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t);\n\n\t\t\t// This code takes care of page breaks\n\t\t\tif(table.appendChild) {\n\t\t\t\tout = table.innerHTML;\n\t\t\t} else {\n\t\t\t\tout = '';\n\t\t\t\tfor(var i=0; i < (table.length-1); i++) {\n\t\t\t\t\tout += table[i].innerHTML + \n\t\t\t\t\t\t'<div style = \"page-break-after: always;\" \\\n\t\t\t\t\t\tclass = \"page_break\"></div>\\\n\t\t\t\t\t\t<div class=\"page-settings\"></div>';\n\t\t\t\t}\n\t\t\t\tout += table[table.length-1].innerHTML;\n\t\t\t}\n\t\t\treturn out;\n\t\t},\n\n\n\t\tprint_other_charges: function(parent) {\n\t\t\tvar oc = getchildren('Sales Taxes and Charges', doc.name, 'other_charges');\n\t\t\tvar rows = '<table width=100%>\\n';\n\t\t\tfor(var i=0; i<oc.length; i++) {\n\t\t\t\tif(!oc[i].included_in_print_rate) {\n\t\t\t\t\trows +=\n\t\t\t\t\t\t'<tr>\\n' +\n\t\t\t\t\t\t\t'\\t<td>' + oc[i].description + '</td>\\n' +\n\t\t\t\t\t\t\t'\\t<td></td>\\n' +\n\t\t\t\t\t\t\t'\\t<td width=38%>' + fmt_money(oc[i].tax_amount) + '</td>\\n' +\n\t\t\t\t\t\t'</tr>\\n';\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn rows + '</table>\\n';\n\t\t}\n\t};\n</script>\n\n\n<!-- Page Layout Settings -->\n<div class='common page-header'>\n\t<!-- \n\t\tPage Header will contain\n\t\t\t+ table 1\n\t\t\t\t+ table 1a\n\t\t\t\t\t- Name\n\t\t\t\t\t- Address\n\t\t\t\t\t- Contact\n\t\t\t\t\t- Mobile No\n\t\t\t\t+ table 1b\n\t\t\t\t\t- Voucher Date\n\t\t\t\t\t- Due Date\n\t-->\n\t<table class='header-table' cellspacing=0>\n\t\t<thead>\n\t\t\t<tr><td colspan=2><script>'<h1>' + (doc.select_print_heading || 'Delivery Note') + '</h1>'</script></td></tr>\n\t\t\t<tr><td colspan=2><h3><script>cur_frm.docname</script></h3></td></tr>\n\t\t</thead>\n\t\t<tbody>\n\t\t\t<tr>\n\t\t\t\t<td width=60%><table width=100% cellspacing=0><tbody>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td width=22%><b>Name</b></td>\n\t\t\t\t\t\t<td><script>doc.customer_name</script></td>\n\t\t\t\t\t</tr>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td><b>Address</b></td>\n\t\t\t\t\t\t<td><script>replace_newlines(doc.address_display)</script></td>\n\t\t\t\t\t</tr>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td><b>Contact</b></td>\n\t\t\t\t\t\t<td><script>doc.contact_display</script></td>\n\t\t\t\t\t</tr>\n\t\t\t\t</tbody></table></td>\n\t\t\t\t<td><table width=100% cellspacing=0><tbody>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td width=63%><b>Delivery Note Date</b></td>\n\t\t\t\t\t\t<td><script>date.str_to_user(doc.transaction_date)</script></td>\n\t\t\t\t\t<tr>\t\t\t\t\t\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td><b>Sales Order No.</b></td>\n\t\t\t\t\t\t<td>\n\t\t\t\t\t\t\t<script>doc.sales_order_no</script><br />\n\t\t\t\t\t\t\t<i>(<script>date.str_to_user(doc.posting_date)</script>)</i>\n\t\t\t\t\t\t</td>\n\t\t\t\t\t<tr>\t\t\t\t\t\n\t\t\t\t</tbody></table></td>\n\t\t\t</tr>\n\t\t</tbody>\n\t\t<tfoot>\n\t\t\n\t\t</tfoot>\n\t</table>\n</div>\n<div class='common page-body'>\n\t<!-- \n\t\tPage Body will contain\n\t\t\t+ table 2\n\t\t\t\t- Sales Invoice Data\n\t-->\n\t<script>si_std.print_item_table()</script>\n</div>\n<div class='common page-footer'>\n\t<!-- \n\t\tPage Footer will contain\n\t\t\t+ table 3\n\t\t\t\t- Terms and Conditions\n\t\t\t\t- Total Rounded Amount Calculation\n\t\t\t\t- Total Rounded Amount in Words\n\t-->\n\t<table class='footer-table' width=100% cellspacing=0>\n\t\t<thead>\n\t\t\t\n\t\t</thead>\n\t\t<tbody>\n\t\t\t<tr>\n\t\t\t\t<td width=60% style='padding-right: 10px;'>\n\t\t\t\t\t<b>Terms, Conditions &amp; Other Information:</b><br />\n\t\t\t\t\t<script>doc.terms</script>\n\t\t\t\t</td>\n\t\t\t\t<td>\n\t\t\t\t\t<table cellspacing=0 width=100%><tbody>\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td>Net Total</td>\n\t\t\t\t\t\t\t<td></td>\n\t\t\t\t\t\t\t<td width=38%><script>\n\t\t\t\t\t\t\t\tfmt_money(doc.net_total)\n\t\t\t\t\t\t\t</script></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr><td colspan=3><script>si_std.print_other_charges()</script></td></tr>\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td>Grand Total</td>\n\t\t\t\t\t\t\t<td></td>\n\t\t\t\t\t\t\t<td><script>\n\t\t\t\t\t\t\t\tfmt_money(doc.grand_total_export)\n\t\t\t\t\t\t\t</script></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr style='font-weight: bold'>\n\t\t\t\t\t\t\t<td>Rounded Total</td>\n\t\t\t\t\t\t\t<td><script>doc.currency</script></td>\n\t\t\t\t\t\t\t<td><script>\n\t\t\t\t\t\t\t\tfmt_money(doc.rounded_total_export)\n\t\t\t\t\t\t\t</script></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t</tbody></table>\n\t\t\t\t\t<br /><b>In Words</b><br />\n\t\t\t\t\t<i><script>doc.in_words_export</script></i>\n\t\t\t\t</td>\n\t\t\t</tr>\t\t\n\t\t</tbody>\n\t\t<tfoot>\n\t\t\n\t\t</tfoot>\n\t</table>\n</div>\n", 
+  "standard": "Yes"
+ }, 
+ {
+  "name": "Delivery Note Spartan", 
+  "doctype": "Print Format"
+ }
 ]
\ No newline at end of file
diff --git a/stock/Print Format/Purchase Receipt Format/Purchase Receipt Format.txt b/stock/Print Format/Purchase Receipt Format/Purchase Receipt Format.txt
index 4cfaeb9..d39583e 100644
--- a/stock/Print Format/Purchase Receipt Format/Purchase Receipt Format.txt
+++ b/stock/Print Format/Purchase Receipt Format/Purchase Receipt Format.txt
@@ -1,27 +1,20 @@
-# Print Format, Purchase Receipt Format
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2010-08-08 17:09:34',
-		'docstatus': 0,
-		'modified': '2011-10-19 14:18:26',
-		'modified_by': 'Administrator',
-		'owner': 'Administrator'
-	},
-
-	# These values are common for all Print Format
-	{
-		'doctype': 'Print Format',
-		'html': '<html>\n<head>\n<!--Other charges function-->\n<script>\n    var make_row = function(title,val,bold){\n    var bstart = \'<b>\'; var bend = \'</b>\';\n    return \'<tr><td style="width:50%">\'+(bold?bstart:\'\')+title+(bold?bend:\'\')+\'</td>\'\n              +\'<td style="width:20%;text-align:right">\'+doc.currency+\'</td>\'\n              +\'<td style="width:30%;text-align:right">\'+(val?val:\'0.00\')+\'</td>\'\n              +\'</tr>\'\n  }\n\n  function get_other_charges(){\n    var out =\'\';\n    out += \'<div><table class="noborder" style="width:100%">\';\n    out += make_row(\'Total Amount\',fmt_money(convert_rate(doc.total_amount)),1)\n          +make_row(\'Grand Total\',fmt_money(convert_rate(doc.grand_total)),1);\n    out += \'</table></div>\';\n    return out;\n  }\n\n  function get_buying_costs(){\n    var out =\'\';\n    if(doc.buying_cost_transport || doc.buying_cost_taxes || doc.buying_cost_other){\n      out += \'<div><table class="noborder" style="width:100%">\'\n            + \'<tr><td style="width:100%"><b>\'+\'Buying Cost Details\'+\'</b></td></tr>\';\n      if(doc.buying_cost_transport){ out += make_row(\'Transport Cost\',fmt_money(convert_rate(doc.buying_cost_transport)),0)}\n      if(doc.buying_cost_taxes){ out += make_row(\'Taxes\',fmt_money(convert_rate(doc.buying_cost_taxes)),0)}\n      if(doc.buying_cost_other){ out += make_row(\'Other Cost\',fmt_money(convert_rate(doc.buying_cost_other)),0)}\n      out += \'</table></div>\';\n    }\n    return out;\n  }\n\nfunction get_letter_head() {\n\t// add letter head\n\tvar cp = locals[\'Control Panel\'][\'Control Panel\'];\n\tif(doc.letter_head)\n\t\tvar lh= cstr(_p.letter_heads[doc.letter_head]);\n\telse if(cp.letter_head)\n\t\tvar lh= cp.letter_head;\n\telse \n\t\tvar lh= \'\';\n\t\t\n\treturn lh;\n}\n\n  \n  function convert_rate(val){\n    var new_val = flt(val)/flt(doc.conversion_rate);\n    return new_val;\n  }\n  \n    function get_transport_details(){\n    var out = \'\';\n    if(doc.transporter_name || doc.lr_no || doc.lr_date){\n     out += \'<div><table class="noborder" style="width:40%">\'\n            +\'<tr><td style="width:80%"><b>\' + \'Transporter Details\'+\'</b></td><td style="width:20%"></td></tr>\'\n\n     if(doc.transporter_name){ out += \'<tr><td style="width:40%">\' + \'Transporter Name\'+\'</td><td style="width:60%">\'+doc.transporter_name+\'</td></tr>\'}\n     if(doc.lr_no){ out += \'<tr><td style="width:40%">\' + \'LR No\'+\'</td><td style="width:60%">\'+doc.lr_no+\'</td></tr>\'}\n     if(doc.lr_date){ out += \'<tr><td style="width:40%">\' + \'LR Date\'+\'</td><td style="width:60%">\'+doc.lr_date+\'</td></tr>\'}\n     out += \'</table></div>\'\n    }\n    return out;\n  }\n\n</script>\n</head>\n<body>\n<div style="border:1px solid black;padding:15px">\n<!--header-->\n<div><script>get_letter_head()</script></div>\n<div style="border-bottom: 1px solid; padding-bottom: 5px;">\n <div><br><b>Purchase Receipt: <script>doc.name</script></b></div>\n <div>Date: <script>date.str_to_user(doc.transaction_date)</script></div>\n</div>\n\n<div style="padding-top:15px">\n<div><script>doc.supplier</script></div>\n<div><br><script>replace_newlines(doc.address_display)</script></div>\n</div>\n\n<div>\n<br>\n    <script>\n    var t = print_table(\'Purchase Receipt\', doc.name, \'purchase_receipt_details\', \'Purchase Receipt Item\', [\'SR\', \'item_code\',\'description\',\'received_qty\',\'qty\',\'rejected_qty\',\'po_rate\',\'amount\',\'billed_qty\'], [\'Sr\', \'Item Code\', \'Description\',\'Received Quantity\',\'Accepted Qty\',\'Rejected Qty\',\'Rate\',\'Amount\',\'Billed Qty\'], [\'4%\',\'12%\', \'24%\', \'10%\',\'10%\',\'10%\',\'10%\',\'10%\',\'10%\'])\n    if(t.appendChild) {\n      // single\n      out = t.innerHTML;\n    } \n    else {//multiple\n      out = \'\'\n      for(var i=0;i<t.length;i++) {\n        if(i!=t.length-1){\n          out += \'<div style:"padding-top:5px;"></div>\' + t[i].innerHTML +\'<div style="page-break-after:always"></div>\';\n        }\n        else out += \'<div style:"padding-top:5px;"></div>\' + t[i].innerHTML;\n      }\n    }\n    out;\n    </script>\n\n</div>\n\n<!--Other charges table-->\n<div>\n<table style="width:100%">\n  <tr><td style="width:40%"><script>get_buying_costs()</script></td>\n  <td style="width:20%"></td><td style="width:40%"><script>get_other_charges()</script></td></tr>\n</table>\n</div>\n<div><script>get_transport_details()</script></div>\n<div><br>Payment Terms</div>\n<div><br><script>replace_newlines(doc.payment_terms)</script></div>\n<div><br>For NCSCI</div>\n<div><br><br>(Authorised Signatory)</div>\n</div></body>\n</html>',
-		'module': 'Stock',
-		'name': '__common__',
-		'standard': 'Yes'
-	},
-
-	# Print Format, Purchase Receipt Format
-	{
-		'doctype': 'Print Format',
-		'name': 'Purchase Receipt Format'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2010-08-08 17:09:34", 
+  "modified_by": "Administrator", 
+  "modified": "2011-10-19 14:18:26"
+ }, 
+ {
+  "name": "__common__", 
+  "module": "Stock", 
+  "standard": "Yes", 
+  "html": "<html>\n<head>\n<!--Other charges function-->\n<script>\n    var make_row = function(title,val,bold){\n    var bstart = '<b>'; var bend = '</b>';\n    return '<tr><td style=\"width:50%\">'+(bold?bstart:'')+title+(bold?bend:'')+'</td>'\n              +'<td style=\"width:20%;text-align:right\">'+doc.currency+'</td>'\n              +'<td style=\"width:30%;text-align:right\">'+(val?val:'0.00')+'</td>'\n              +'</tr>'\n  }\n\n  function get_other_charges(){\n    var out ='';\n    out += '<div><table class=\"noborder\" style=\"width:100%\">';\n    out += make_row('Total Amount',fmt_money(convert_rate(doc.total_amount)),1)\n          +make_row('Grand Total',fmt_money(convert_rate(doc.grand_total)),1);\n    out += '</table></div>';\n    return out;\n  }\n\n  function get_buying_costs(){\n    var out ='';\n    if(doc.buying_cost_transport || doc.buying_cost_taxes || doc.buying_cost_other){\n      out += '<div><table class=\"noborder\" style=\"width:100%\">'\n            + '<tr><td style=\"width:100%\"><b>'+'Buying Cost Details'+'</b></td></tr>';\n      if(doc.buying_cost_transport){ out += make_row('Transport Cost',fmt_money(convert_rate(doc.buying_cost_transport)),0)}\n      if(doc.buying_cost_taxes){ out += make_row('Taxes',fmt_money(convert_rate(doc.buying_cost_taxes)),0)}\n      if(doc.buying_cost_other){ out += make_row('Other Cost',fmt_money(convert_rate(doc.buying_cost_other)),0)}\n      out += '</table></div>';\n    }\n    return out;\n  }\n\nfunction get_letter_head() {\n\t// add letter head\n\tvar cp = locals['Control Panel']['Control Panel'];\n\tif(doc.letter_head)\n\t\tvar lh= cstr(_p.letter_heads[doc.letter_head]);\n\telse if(cp.letter_head)\n\t\tvar lh= cp.letter_head;\n\telse \n\t\tvar lh= '';\n\t\t\n\treturn lh;\n}\n\n  \n  function convert_rate(val){\n    var new_val = flt(val)/flt(doc.conversion_rate);\n    return new_val;\n  }\n  \n    function get_transport_details(){\n    var out = '';\n    if(doc.transporter_name || doc.lr_no || doc.lr_date){\n     out += '<div><table class=\"noborder\" style=\"width:40%\">'\n            +'<tr><td style=\"width:80%\"><b>' + 'Transporter Details'+'</b></td><td style=\"width:20%\"></td></tr>'\n\n     if(doc.transporter_name){ out += '<tr><td style=\"width:40%\">' + 'Transporter Name'+'</td><td style=\"width:60%\">'+doc.transporter_name+'</td></tr>'}\n     if(doc.lr_no){ out += '<tr><td style=\"width:40%\">' + 'LR No'+'</td><td style=\"width:60%\">'+doc.lr_no+'</td></tr>'}\n     if(doc.lr_date){ out += '<tr><td style=\"width:40%\">' + 'LR Date'+'</td><td style=\"width:60%\">'+doc.lr_date+'</td></tr>'}\n     out += '</table></div>'\n    }\n    return out;\n  }\n\n</script>\n</head>\n<body>\n<div style=\"border:1px solid black;padding:15px\">\n<!--header-->\n<div><script>get_letter_head()</script></div>\n<div style=\"border-bottom: 1px solid; padding-bottom: 5px;\">\n <div><br><b>Purchase Receipt: <script>doc.name</script></b></div>\n <div>Date: <script>date.str_to_user(doc.transaction_date)</script></div>\n</div>\n\n<div style=\"padding-top:15px\">\n<div><script>doc.supplier</script></div>\n<div><br><script>replace_newlines(doc.address_display)</script></div>\n</div>\n\n<div>\n<br>\n    <script>\n    var t = print_table('Purchase Receipt', doc.name, 'purchase_receipt_details', 'Purchase Receipt Item', ['SR', 'item_code','description','received_qty','qty','rejected_qty','po_rate','amount','billed_qty'], ['Sr', 'Item Code', 'Description','Received Quantity','Accepted Qty','Rejected Qty','Rate','Amount','Billed Qty'], ['4%','12%', '24%', '10%','10%','10%','10%','10%','10%'])\n    if(t.appendChild) {\n      // single\n      out = t.innerHTML;\n    } \n    else {//multiple\n      out = ''\n      for(var i=0;i<t.length;i++) {\n        if(i!=t.length-1){\n          out += '<div style:\"padding-top:5px;\"></div>' + t[i].innerHTML +'<div style=\"page-break-after:always\"></div>';\n        }\n        else out += '<div style:\"padding-top:5px;\"></div>' + t[i].innerHTML;\n      }\n    }\n    out;\n    </script>\n\n</div>\n\n<!--Other charges table-->\n<div>\n<table style=\"width:100%\">\n  <tr><td style=\"width:40%\"><script>get_buying_costs()</script></td>\n  <td style=\"width:20%\"></td><td style=\"width:40%\"><script>get_other_charges()</script></td></tr>\n</table>\n</div>\n<div><script>get_transport_details()</script></div>\n<div><br>Payment Terms</div>\n<div><br><script>replace_newlines(doc.payment_terms)</script></div>\n<div><br>For NCSCI</div>\n<div><br><br>(Authorised Signatory)</div>\n</div></body>\n</html>", 
+  "doctype": "Print Format"
+ }, 
+ {
+  "name": "Purchase Receipt Format", 
+  "doctype": "Print Format"
+ }
 ]
\ No newline at end of file
diff --git a/stock/doctype/batch/batch.txt b/stock/doctype/batch/batch.txt
index 85dbef3..8579cf9 100644
--- a/stock/doctype/batch/batch.txt
+++ b/stock/doctype/batch/batch.txt
@@ -1,149 +1,120 @@
-# DocType, Batch
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:36:26',
-		'docstatus': 0,
-		'modified': '2012-03-27 14:36:26',
-		'modified_by': u'Administrator',
-		'owner': u'harshada@webnotestech.com'
-	},
-
-	# These values are common for all DocType
-	{
-		'allow_trash': 1,
-		'autoname': u'field:batch_id',
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'document_type': u'Master',
-		'module': u'Stock',
-		'name': '__common__',
-		'section_style': u'Simple',
-		'server_code_error': u' ',
-		'version': 12
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'Batch',
-		'parentfield': u'fields',
-		'parenttype': u'DocType'
-	},
-
-	# These values are common for all DocPerm
-	{
-		'doctype': u'DocPerm',
-		'name': '__common__',
-		'parent': u'Batch',
-		'parentfield': u'permissions',
-		'parenttype': u'DocType',
-		'read': 1,
-		'role': u'Material Master Manager'
-	},
-
-	# DocType, Batch
-	{
-		'doctype': 'DocType',
-		'name': u'Batch'
-	},
-
-	# DocPerm
-	{
-		'cancel': 1,
-		'create': 1,
-		'doctype': u'DocPerm',
-		'permlevel': 0,
-		'write': 1
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'trash_reason',
-		'fieldtype': u'Small Text',
-		'label': u'Trash Reason',
-		'oldfieldname': u'trash_reason',
-		'oldfieldtype': u'Small Text',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'batch_id',
-		'fieldtype': u'Data',
-		'label': u'Batch ID',
-		'no_copy': 1,
-		'oldfieldname': u'batch_id',
-		'oldfieldtype': u'Data',
-		'permlevel': 0,
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'description',
-		'fieldtype': u'Small Text',
-		'label': u'Description',
-		'oldfieldname': u'description',
-		'oldfieldtype': u'Small Text',
-		'permlevel': 0,
-		'width': u'300px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'start_date',
-		'fieldtype': u'Date',
-		'label': u'Batch Started Date',
-		'oldfieldname': u'start_date',
-		'oldfieldtype': u'Date',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'finished_date',
-		'fieldtype': u'Date',
-		'label': u'Batch Finished Date',
-		'oldfieldname': u'finished_date',
-		'oldfieldtype': u'Date',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'expiry_date',
-		'fieldtype': u'Date',
-		'label': u'Expiry Date',
-		'oldfieldname': u'expiry_date',
-		'oldfieldtype': u'Date',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'item',
-		'fieldtype': u'Link',
-		'label': u'Item',
-		'oldfieldname': u'item',
-		'oldfieldtype': u'Link',
-		'options': u'Item',
-		'permlevel': 0,
-		'reqd': 1
-	}
+ {
+  "owner": "harshada@webnotestech.com", 
+  "docstatus": 0, 
+  "creation": "2012-03-27 14:36:26", 
+  "modified_by": "Administrator", 
+  "modified": "2012-03-27 14:36:26"
+ }, 
+ {
+  "section_style": "Simple", 
+  "module": "Stock", 
+  "server_code_error": " ", 
+  "allow_trash": 1, 
+  "doctype": "DocType", 
+  "autoname": "field:batch_id", 
+  "document_type": "Master", 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "version": 12
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Batch", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Batch", 
+  "read": 1, 
+  "doctype": "DocPerm", 
+  "parenttype": "DocType", 
+  "role": "Material Master Manager", 
+  "parentfield": "permissions"
+ }, 
+ {
+  "name": "Batch", 
+  "doctype": "DocType"
+ }, 
+ {
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "write": 1, 
+  "cancel": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "permlevel": 1, 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "oldfieldtype": "Small Text", 
+  "doctype": "DocField", 
+  "label": "Trash Reason", 
+  "oldfieldname": "trash_reason", 
+  "fieldname": "trash_reason", 
+  "fieldtype": "Small Text", 
+  "permlevel": 1
+ }, 
+ {
+  "no_copy": 1, 
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Batch ID", 
+  "oldfieldname": "batch_id", 
+  "fieldname": "batch_id", 
+  "fieldtype": "Data", 
+  "reqd": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Small Text", 
+  "doctype": "DocField", 
+  "label": "Description", 
+  "oldfieldname": "description", 
+  "width": "300px", 
+  "fieldname": "description", 
+  "fieldtype": "Small Text", 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Date", 
+  "doctype": "DocField", 
+  "label": "Batch Started Date", 
+  "oldfieldname": "start_date", 
+  "fieldname": "start_date", 
+  "fieldtype": "Date", 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Date", 
+  "doctype": "DocField", 
+  "label": "Batch Finished Date", 
+  "oldfieldname": "finished_date", 
+  "fieldname": "finished_date", 
+  "fieldtype": "Date", 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Date", 
+  "doctype": "DocField", 
+  "label": "Expiry Date", 
+  "oldfieldname": "expiry_date", 
+  "fieldname": "expiry_date", 
+  "fieldtype": "Date", 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Link", 
+  "doctype": "DocField", 
+  "label": "Item", 
+  "oldfieldname": "item", 
+  "permlevel": 0, 
+  "fieldname": "item", 
+  "fieldtype": "Link", 
+  "reqd": 1, 
+  "options": "Item"
+ }
 ]
\ No newline at end of file
diff --git a/stock/doctype/bin/bin.txt b/stock/doctype/bin/bin.txt
index 5578a34..d284738 100644
--- a/stock/doctype/bin/bin.txt
+++ b/stock/doctype/bin/bin.txt
@@ -1,274 +1,223 @@
-# DocType, Bin
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-05-15 12:15:04',
-		'docstatus': 0,
-		'modified': '2012-07-31 17:23:42',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'_last_update': u'1322549701',
-		'autoname': u'BIN/.#######',
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'hide_toolbar': 1,
-		'in_create': 1,
-		'module': u'Stock',
-		'name': '__common__',
-		'read_only': 0,
-		'search_fields': u'item_code,warehouse',
-		'section_style': u'Simple',
-		'server_code_error': u' ',
-		'show_in_menu': 0,
-		'version': 1
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'Bin',
-		'parentfield': u'fields',
-		'parenttype': u'DocType',
-		'permlevel': 0
-	},
-
-	# These values are common for all DocPerm
-	{
-		'doctype': u'DocPerm',
-		'name': '__common__',
-		'parent': u'Bin',
-		'parentfield': u'permissions',
-		'parenttype': u'DocType',
-		'permlevel': 0,
-		'read': 1
-	},
-
-	# DocType, Bin
-	{
-		'doctype': 'DocType',
-		'name': u'Bin'
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm',
-		'role': u'Sales Manager'
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm',
-		'role': u'Sales User'
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm',
-		'role': u'Purchase Manager'
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm',
-		'role': u'Purchase User'
-	},
-
-	# DocPerm
-	{
-		'amend': 0,
-		'cancel': 0,
-		'create': 0,
-		'doctype': u'DocPerm',
-		'role': u'Material User',
-		'submit': 0,
-		'write': 0
-	},
-
-	# DocPerm
-	{
-		'amend': 0,
-		'cancel': 0,
-		'create': 0,
-		'doctype': u'DocPerm',
-		'role': u'Material Manager',
-		'submit': 0,
-		'write': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'warehouse',
-		'fieldtype': u'Link',
-		'in_filter': 1,
-		'label': u'Warehouse',
-		'oldfieldname': u'warehouse',
-		'oldfieldtype': u'Link',
-		'options': u'Warehouse',
-		'search_index': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'warehouse_type',
-		'fieldtype': u'Data',
-		'label': u'Warehouse Type',
-		'oldfieldname': u'warehouse_type',
-		'oldfieldtype': u'Data'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'item_code',
-		'fieldtype': u'Link',
-		'in_filter': 1,
-		'label': u'Item Code',
-		'oldfieldname': u'item_code',
-		'oldfieldtype': u'Link',
-		'options': u'Item',
-		'search_index': 1
-	},
-
-	# DocField
-	{
-		'default': u'0.00',
-		'doctype': u'DocField',
-		'fieldname': u'reserved_qty',
-		'fieldtype': u'Currency',
-		'in_filter': 0,
-		'label': u'Reserved Quantity',
-		'oldfieldname': u'reserved_qty',
-		'oldfieldtype': u'Currency',
-		'search_index': 0
-	},
-
-	# DocField
-	{
-		'default': u'0.00',
-		'doctype': u'DocField',
-		'fieldname': u'actual_qty',
-		'fieldtype': u'Currency',
-		'in_filter': 1,
-		'label': u'Actual Quantity',
-		'oldfieldname': u'actual_qty',
-		'oldfieldtype': u'Currency',
-		'search_index': 0
-	},
-
-	# DocField
-	{
-		'default': u'0.00',
-		'doctype': u'DocField',
-		'fieldname': u'ordered_qty',
-		'fieldtype': u'Currency',
-		'in_filter': 0,
-		'label': u'Ordered Quantity',
-		'oldfieldname': u'ordered_qty',
-		'oldfieldtype': u'Currency',
-		'search_index': 0
-	},
-
-	# DocField
-	{
-		'default': u'0.00',
-		'doctype': u'DocField',
-		'fieldname': u'indented_qty',
-		'fieldtype': u'Currency',
-		'in_filter': 0,
-		'label': u'Quantity Requested for Purchase',
-		'oldfieldname': u'indented_qty',
-		'oldfieldtype': u'Currency',
-		'search_index': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'planned_qty',
-		'fieldtype': u'Currency',
-		'in_filter': 0,
-		'label': u'Planned Qty',
-		'oldfieldname': u'planned_qty',
-		'oldfieldtype': u'Currency',
-		'search_index': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'projected_qty',
-		'fieldtype': u'Currency',
-		'in_filter': 0,
-		'label': u'Projected Qty',
-		'oldfieldname': u'projected_qty',
-		'oldfieldtype': u'Currency'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'ma_rate',
-		'fieldtype': u'Currency',
-		'hidden': 1,
-		'in_filter': 0,
-		'label': u'Moving Average Rate',
-		'oldfieldname': u'ma_rate',
-		'oldfieldtype': u'Currency',
-		'print_hide': 1,
-		'report_hide': 1,
-		'search_index': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'stock_uom',
-		'fieldtype': u'Data',
-		'in_filter': 1,
-		'label': u'UOM',
-		'oldfieldname': u'stock_uom',
-		'oldfieldtype': u'Data',
-		'search_index': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'fcfs_rate',
-		'fieldtype': u'Currency',
-		'hidden': 1,
-		'label': u'FCFS Rate',
-		'oldfieldname': u'fcfs_rate',
-		'oldfieldtype': u'Currency',
-		'print_hide': 1,
-		'report_hide': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'valuation_rate',
-		'fieldtype': u'Currency',
-		'label': u'Valuation Rate',
-		'oldfieldname': u'valuation_rate',
-		'oldfieldtype': u'Currency'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'stock_value',
-		'fieldtype': u'Currency',
-		'label': u'Stock Value',
-		'oldfieldname': u'stock_value',
-		'oldfieldtype': u'Currency'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-05-15 12:15:04", 
+  "modified_by": "Administrator", 
+  "modified": "2012-07-31 17:23:42"
+ }, 
+ {
+  "section_style": "Simple", 
+  "in_create": 1, 
+  "search_fields": "item_code,warehouse", 
+  "module": "Stock", 
+  "server_code_error": " ", 
+  "read_only": 0, 
+  "_last_update": "1322549701", 
+  "autoname": "BIN/.#######", 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "doctype": "DocType", 
+  "show_in_menu": 0, 
+  "version": 1, 
+  "hide_toolbar": 1
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Bin", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "permlevel": 0, 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Bin", 
+  "read": 1, 
+  "doctype": "DocPerm", 
+  "parenttype": "DocType", 
+  "permlevel": 0, 
+  "parentfield": "permissions"
+ }, 
+ {
+  "name": "Bin", 
+  "doctype": "DocType"
+ }, 
+ {
+  "role": "Sales Manager", 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "role": "Sales User", 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "role": "Purchase Manager", 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "role": "Purchase User", 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "amend": 0, 
+  "create": 0, 
+  "doctype": "DocPerm", 
+  "submit": 0, 
+  "write": 0, 
+  "role": "Material User", 
+  "cancel": 0
+ }, 
+ {
+  "amend": 0, 
+  "create": 0, 
+  "doctype": "DocPerm", 
+  "submit": 0, 
+  "write": 0, 
+  "role": "Material Manager", 
+  "cancel": 0
+ }, 
+ {
+  "search_index": 1, 
+  "doctype": "DocField", 
+  "label": "Warehouse", 
+  "oldfieldname": "warehouse", 
+  "fieldname": "warehouse", 
+  "fieldtype": "Link", 
+  "oldfieldtype": "Link", 
+  "options": "Warehouse", 
+  "in_filter": 1
+ }, 
+ {
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Warehouse Type", 
+  "oldfieldname": "warehouse_type", 
+  "fieldname": "warehouse_type", 
+  "fieldtype": "Data"
+ }, 
+ {
+  "search_index": 1, 
+  "doctype": "DocField", 
+  "label": "Item Code", 
+  "oldfieldname": "item_code", 
+  "fieldname": "item_code", 
+  "fieldtype": "Link", 
+  "oldfieldtype": "Link", 
+  "options": "Item", 
+  "in_filter": 1
+ }, 
+ {
+  "default": "0.00", 
+  "search_index": 0, 
+  "doctype": "DocField", 
+  "label": "Reserved Quantity", 
+  "oldfieldname": "reserved_qty", 
+  "fieldname": "reserved_qty", 
+  "fieldtype": "Currency", 
+  "oldfieldtype": "Currency", 
+  "in_filter": 0
+ }, 
+ {
+  "default": "0.00", 
+  "search_index": 0, 
+  "doctype": "DocField", 
+  "label": "Actual Quantity", 
+  "oldfieldname": "actual_qty", 
+  "fieldname": "actual_qty", 
+  "fieldtype": "Currency", 
+  "oldfieldtype": "Currency", 
+  "in_filter": 1
+ }, 
+ {
+  "default": "0.00", 
+  "search_index": 0, 
+  "doctype": "DocField", 
+  "label": "Ordered Quantity", 
+  "oldfieldname": "ordered_qty", 
+  "fieldname": "ordered_qty", 
+  "fieldtype": "Currency", 
+  "oldfieldtype": "Currency", 
+  "in_filter": 0
+ }, 
+ {
+  "default": "0.00", 
+  "search_index": 0, 
+  "doctype": "DocField", 
+  "label": "Quantity Requested for Purchase", 
+  "oldfieldname": "indented_qty", 
+  "fieldname": "indented_qty", 
+  "fieldtype": "Currency", 
+  "oldfieldtype": "Currency", 
+  "in_filter": 0
+ }, 
+ {
+  "search_index": 0, 
+  "doctype": "DocField", 
+  "label": "Planned Qty", 
+  "oldfieldname": "planned_qty", 
+  "fieldname": "planned_qty", 
+  "fieldtype": "Currency", 
+  "oldfieldtype": "Currency", 
+  "in_filter": 0
+ }, 
+ {
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Projected Qty", 
+  "oldfieldname": "projected_qty", 
+  "fieldname": "projected_qty", 
+  "fieldtype": "Currency", 
+  "in_filter": 0
+ }, 
+ {
+  "print_hide": 1, 
+  "search_index": 0, 
+  "doctype": "DocField", 
+  "label": "Moving Average Rate", 
+  "oldfieldname": "ma_rate", 
+  "fieldname": "ma_rate", 
+  "fieldtype": "Currency", 
+  "oldfieldtype": "Currency", 
+  "hidden": 1, 
+  "report_hide": 1, 
+  "in_filter": 0
+ }, 
+ {
+  "search_index": 0, 
+  "doctype": "DocField", 
+  "label": "UOM", 
+  "oldfieldname": "stock_uom", 
+  "fieldname": "stock_uom", 
+  "fieldtype": "Data", 
+  "oldfieldtype": "Data", 
+  "in_filter": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "FCFS Rate", 
+  "oldfieldname": "fcfs_rate", 
+  "fieldname": "fcfs_rate", 
+  "fieldtype": "Currency", 
+  "hidden": 1, 
+  "report_hide": 1
+ }, 
+ {
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Valuation Rate", 
+  "oldfieldname": "valuation_rate", 
+  "fieldname": "valuation_rate", 
+  "fieldtype": "Currency"
+ }, 
+ {
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Stock Value", 
+  "oldfieldname": "stock_value", 
+  "fieldname": "stock_value", 
+  "fieldtype": "Currency"
+ }
 ]
\ No newline at end of file
diff --git a/stock/doctype/delivery_note_item/delivery_note_item.txt b/stock/doctype/delivery_note_item/delivery_note_item.txt
index cb25678..a251823 100644
--- a/stock/doctype/delivery_note_item/delivery_note_item.txt
+++ b/stock/doctype/delivery_note_item/delivery_note_item.txt
@@ -1,457 +1,390 @@
-# DocType, Delivery Note Item
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-06-08 16:08:01',
-		'docstatus': 0,
-		'modified': '2012-07-09 11:06:26',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'_last_update': u'1311621379',
-		'autoname': u'DND/.#######',
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'istable': 1,
-		'module': u'Stock',
-		'name': '__common__',
-		'section_style': u'Tray',
-		'server_code_error': u' ',
-		'show_in_menu': 0,
-		'version': 1
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'Delivery Note Item',
-		'parentfield': u'fields',
-		'parenttype': u'DocType'
-	},
-
-	# DocType, Delivery Note Item
-	{
-		'doctype': 'DocType',
-		'name': u'Delivery Note Item'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'barcode',
-		'fieldtype': u'Data',
-		'label': u'Barcode',
-		'permlevel': 0,
-		'print_hide': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'item_code',
-		'fieldtype': u'Link',
-		'in_filter': 1,
-		'label': u'Item Code',
-		'oldfieldname': u'item_code',
-		'oldfieldtype': u'Link',
-		'options': u'Item',
-		'permlevel': 0,
-		'reqd': 1,
-		'search_index': 1,
-		'trigger': u'Client',
-		'width': u'150px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'customer_item_code',
-		'fieldtype': u'Data',
-		'hidden': 1,
-		'label': u"Customer's Item Code",
-		'permlevel': 1,
-		'print_hide': 1
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'doctype': u'DocField',
-		'fieldname': u'item_name',
-		'fieldtype': u'Data',
-		'label': u'Item Name',
-		'oldfieldname': u'item_name',
-		'oldfieldtype': u'Data',
-		'permlevel': 0,
-		'print_hide': 1,
-		'reqd': 1,
-		'width': u'150px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'description',
-		'fieldtype': u'Small Text',
-		'label': u'Description',
-		'oldfieldname': u'description',
-		'oldfieldtype': u'Small Text',
-		'permlevel': 0,
-		'reqd': 1,
-		'width': u'300px'
-	},
-
-	# DocField
-	{
-		'default': u'0.00',
-		'doctype': u'DocField',
-		'fieldname': u'qty',
-		'fieldtype': u'Currency',
-		'label': u'Quantity',
-		'oldfieldname': u'qty',
-		'oldfieldtype': u'Currency',
-		'permlevel': 0,
-		'reqd': 1,
-		'trigger': u'Client',
-		'width': u'100px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'stock_uom',
-		'fieldtype': u'Data',
-		'label': u'UOM',
-		'oldfieldname': u'stock_uom',
-		'oldfieldtype': u'Data',
-		'permlevel': 1,
-		'print_hide': 0,
-		'reqd': 1,
-		'width': u'50px'
-	},
-
-	# DocField
-	{
-		'default': u'0.00',
-		'doctype': u'DocField',
-		'fieldname': u'ref_rate',
-		'fieldtype': u'Currency',
-		'label': u'Price List Rate',
-		'no_copy': 0,
-		'oldfieldname': u'ref_rate',
-		'oldfieldtype': u'Currency',
-		'permlevel': 0,
-		'print_hide': 1,
-		'reqd': 0,
-		'trigger': u'Client',
-		'width': u'100px'
-	},
-
-	# DocField
-	{
-		'default': u'0.00',
-		'doctype': u'DocField',
-		'fieldname': u'adj_rate',
-		'fieldtype': u'Float',
-		'label': u'Discount (%)',
-		'oldfieldname': u'adj_rate',
-		'oldfieldtype': u'Float',
-		'permlevel': 0,
-		'print_hide': 1,
-		'trigger': u'Client',
-		'width': u'100px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'export_rate',
-		'fieldtype': u'Currency',
-		'label': u'Rate',
-		'oldfieldname': u'export_rate',
-		'oldfieldtype': u'Currency',
-		'permlevel': 0,
-		'print_hide': 0,
-		'reqd': 0,
-		'trigger': u'Client',
-		'width': u'150px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'export_amount',
-		'fieldtype': u'Currency',
-		'label': u'Amount',
-		'oldfieldname': u'export_amount',
-		'oldfieldtype': u'Currency',
-		'permlevel': 1,
-		'print_hide': 0,
-		'reqd': 0,
-		'width': u'100px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'base_ref_rate',
-		'fieldtype': u'Currency',
-		'label': u'Price List Rate*',
-		'oldfieldname': u'base_ref_rate',
-		'oldfieldtype': u'Currency',
-		'permlevel': 1,
-		'print_hide': 1,
-		'width': u'100px'
-	},
-
-	# DocField
-	{
-		'default': u'0.00',
-		'doctype': u'DocField',
-		'fieldname': u'basic_rate',
-		'fieldtype': u'Currency',
-		'label': u'Rate*',
-		'oldfieldname': u'basic_rate',
-		'oldfieldtype': u'Currency',
-		'permlevel': 0,
-		'print_hide': 1,
-		'reqd': 0,
-		'trigger': u'Client',
-		'width': u'150px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'amount',
-		'fieldtype': u'Currency',
-		'label': u'Amount*',
-		'oldfieldname': u'amount',
-		'oldfieldtype': u'Currency',
-		'permlevel': 1,
-		'print_hide': 1,
-		'reqd': 0,
-		'width': u'100px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'warehouse',
-		'fieldtype': u'Link',
-		'label': u'Warehouse',
-		'oldfieldname': u'warehouse',
-		'oldfieldtype': u'Link',
-		'options': u'Warehouse',
-		'permlevel': 0,
-		'print_hide': 1,
-		'trigger': u'Client',
-		'width': u'100px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'serial_no',
-		'fieldtype': u'Text',
-		'in_filter': 1,
-		'label': u'Serial No',
-		'no_copy': 1,
-		'oldfieldname': u'serial_no',
-		'oldfieldtype': u'Text',
-		'permlevel': 0,
-		'print_hide': 0,
-		'trigger': u'Client'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'batch_no',
-		'fieldtype': u'Link',
-		'label': u'Batch No',
-		'oldfieldname': u'batch_no',
-		'oldfieldtype': u'Link',
-		'options': u'Batch',
-		'permlevel': 0,
-		'print_hide': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'item_group',
-		'fieldtype': u'Link',
-		'hidden': 1,
-		'label': u'Item Group',
-		'oldfieldname': u'item_group',
-		'oldfieldtype': u'Link',
-		'options': u'Item Group',
-		'permlevel': 1,
-		'print_hide': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'brand',
-		'fieldtype': u'Link',
-		'hidden': 1,
-		'label': u'Brand Name',
-		'oldfieldname': u'brand',
-		'oldfieldtype': u'Link',
-		'options': u'Brand',
-		'permlevel': 1,
-		'print_hide': 1,
-		'width': u'150px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'actual_qty',
-		'fieldtype': u'Currency',
-		'label': u'Available Qty at Warehouse',
-		'no_copy': 1,
-		'oldfieldname': u'actual_qty',
-		'oldfieldtype': u'Currency',
-		'permlevel': 1,
-		'print_hide': 1,
-		'width': u'150px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'billed_amt',
-		'fieldtype': u'Currency',
-		'label': u'Billed Amt',
-		'no_copy': 1,
-		'permlevel': 1,
-		'print_hide': 1,
-		'width': u'100px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'installed_qty',
-		'fieldtype': u'Currency',
-		'label': u'Installed Qty',
-		'no_copy': 1,
-		'oldfieldname': u'installed_qty',
-		'oldfieldtype': u'Currency',
-		'permlevel': 1,
-		'print_hide': 1,
-		'width': u'150px'
-	},
-
-	# DocField
-	{
-		'allow_on_submit': 1,
-		'colour': u'White:FFF',
-		'default': u'0',
-		'doctype': u'DocField',
-		'fieldname': u'packed_qty',
-		'fieldtype': u'Currency',
-		'label': u'Packed Quantity',
-		'no_copy': 1,
-		'permlevel': 1,
-		'print_hide': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'prevdoc_doctype',
-		'fieldtype': u'Data',
-		'hidden': 1,
-		'in_filter': 1,
-		'label': u'Document Type',
-		'oldfieldname': u'prevdoc_doctype',
-		'oldfieldtype': u'Data',
-		'permlevel': 1,
-		'print_hide': 1,
-		'search_index': 1,
-		'width': u'150px'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'doctype': u'DocField',
-		'fieldname': u'prevdoc_docname',
-		'fieldtype': u'Data',
-		'hidden': 0,
-		'in_filter': 1,
-		'label': u'Against Document No',
-		'no_copy': 1,
-		'oldfieldname': u'prevdoc_docname',
-		'oldfieldtype': u'Data',
-		'permlevel': 1,
-		'print_hide': 1,
-		'search_index': 1,
-		'width': u'150px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'prevdoc_date',
-		'fieldtype': u'Date',
-		'hidden': 1,
-		'in_filter': 1,
-		'label': u'Against Document Date',
-		'oldfieldname': u'prevdoc_date',
-		'oldfieldtype': u'Date',
-		'permlevel': 1,
-		'print_hide': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'prevdoc_detail_docname',
-		'fieldtype': u'Data',
-		'hidden': 1,
-		'in_filter': 1,
-		'label': u'Against Document Detail No',
-		'oldfieldname': u'prevdoc_detail_docname',
-		'oldfieldtype': u'Data',
-		'permlevel': 1,
-		'print_hide': 1,
-		'search_index': 0,
-		'width': u'150px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'item_tax_rate',
-		'fieldtype': u'Small Text',
-		'hidden': 1,
-		'label': u'Item Tax Rate',
-		'oldfieldname': u'item_tax_rate',
-		'oldfieldtype': u'Small Text',
-		'permlevel': 1,
-		'print_hide': 1
-	},
-
-	# DocField
-	{
-		'allow_on_submit': 1,
-		'doctype': u'DocField',
-		'fieldname': u'page_break',
-		'fieldtype': u'Check',
-		'label': u'Page Break',
-		'oldfieldname': u'page_break',
-		'oldfieldtype': u'Check',
-		'permlevel': 0,
-		'print_hide': 1
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-06-08 16:08:01", 
+  "modified_by": "Administrator", 
+  "modified": "2012-07-09 11:06:26"
+ }, 
+ {
+  "section_style": "Tray", 
+  "istable": 1, 
+  "module": "Stock", 
+  "_last_update": "1311621379", 
+  "doctype": "DocType", 
+  "autoname": "DND/.#######", 
+  "show_in_menu": 0, 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "server_code_error": " ", 
+  "version": 1
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Delivery Note Item", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "Delivery Note Item", 
+  "doctype": "DocType"
+ }, 
+ {
+  "print_hide": 1, 
+  "doctype": "DocField", 
+  "label": "Barcode", 
+  "fieldname": "barcode", 
+  "fieldtype": "Data", 
+  "permlevel": 0
+ }, 
+ {
+  "permlevel": 0, 
+  "oldfieldtype": "Link", 
+  "doctype": "DocField", 
+  "label": "Item Code", 
+  "oldfieldname": "item_code", 
+  "width": "150px", 
+  "trigger": "Client", 
+  "fieldname": "item_code", 
+  "fieldtype": "Link", 
+  "search_index": 1, 
+  "reqd": 1, 
+  "options": "Item", 
+  "in_filter": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "doctype": "DocField", 
+  "label": "Customer's Item Code", 
+  "fieldname": "customer_item_code", 
+  "fieldtype": "Data", 
+  "hidden": 1, 
+  "permlevel": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "oldfieldtype": "Data", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Item Name", 
+  "oldfieldname": "item_name", 
+  "width": "150px", 
+  "fieldname": "item_name", 
+  "fieldtype": "Data", 
+  "reqd": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Small Text", 
+  "doctype": "DocField", 
+  "label": "Description", 
+  "oldfieldname": "description", 
+  "width": "300px", 
+  "fieldname": "description", 
+  "fieldtype": "Small Text", 
+  "reqd": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "default": "0.00", 
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Quantity", 
+  "oldfieldname": "qty", 
+  "width": "100px", 
+  "trigger": "Client", 
+  "fieldname": "qty", 
+  "fieldtype": "Currency", 
+  "reqd": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "print_hide": 0, 
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "UOM", 
+  "oldfieldname": "stock_uom", 
+  "width": "50px", 
+  "fieldname": "stock_uom", 
+  "fieldtype": "Data", 
+  "reqd": 1, 
+  "permlevel": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "width": "100px", 
+  "default": "0.00", 
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Price List Rate", 
+  "oldfieldname": "ref_rate", 
+  "no_copy": 0, 
+  "trigger": "Client", 
+  "fieldname": "ref_rate", 
+  "fieldtype": "Currency", 
+  "reqd": 0, 
+  "permlevel": 0
+ }, 
+ {
+  "print_hide": 1, 
+  "default": "0.00", 
+  "oldfieldtype": "Float", 
+  "doctype": "DocField", 
+  "label": "Discount (%)", 
+  "oldfieldname": "adj_rate", 
+  "width": "100px", 
+  "trigger": "Client", 
+  "fieldname": "adj_rate", 
+  "fieldtype": "Float", 
+  "permlevel": 0
+ }, 
+ {
+  "print_hide": 0, 
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Rate", 
+  "oldfieldname": "export_rate", 
+  "width": "150px", 
+  "trigger": "Client", 
+  "fieldname": "export_rate", 
+  "fieldtype": "Currency", 
+  "reqd": 0, 
+  "permlevel": 0
+ }, 
+ {
+  "print_hide": 0, 
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Amount", 
+  "oldfieldname": "export_amount", 
+  "width": "100px", 
+  "fieldname": "export_amount", 
+  "fieldtype": "Currency", 
+  "reqd": 0, 
+  "permlevel": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Price List Rate*", 
+  "oldfieldname": "base_ref_rate", 
+  "width": "100px", 
+  "fieldname": "base_ref_rate", 
+  "fieldtype": "Currency", 
+  "permlevel": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "default": "0.00", 
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Rate*", 
+  "oldfieldname": "basic_rate", 
+  "width": "150px", 
+  "trigger": "Client", 
+  "fieldname": "basic_rate", 
+  "fieldtype": "Currency", 
+  "reqd": 0, 
+  "permlevel": 0
+ }, 
+ {
+  "print_hide": 1, 
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Amount*", 
+  "oldfieldname": "amount", 
+  "width": "100px", 
+  "fieldname": "amount", 
+  "fieldtype": "Currency", 
+  "reqd": 0, 
+  "permlevel": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "oldfieldtype": "Link", 
+  "doctype": "DocField", 
+  "label": "Warehouse", 
+  "oldfieldname": "warehouse", 
+  "width": "100px", 
+  "trigger": "Client", 
+  "fieldname": "warehouse", 
+  "fieldtype": "Link", 
+  "options": "Warehouse", 
+  "permlevel": 0
+ }, 
+ {
+  "print_hide": 0, 
+  "no_copy": 1, 
+  "oldfieldtype": "Text", 
+  "doctype": "DocField", 
+  "label": "Serial No", 
+  "oldfieldname": "serial_no", 
+  "trigger": "Client", 
+  "fieldname": "serial_no", 
+  "fieldtype": "Text", 
+  "permlevel": 0, 
+  "in_filter": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "oldfieldtype": "Link", 
+  "doctype": "DocField", 
+  "label": "Batch No", 
+  "oldfieldname": "batch_no", 
+  "permlevel": 0, 
+  "fieldname": "batch_no", 
+  "fieldtype": "Link", 
+  "options": "Batch"
+ }, 
+ {
+  "print_hide": 1, 
+  "oldfieldtype": "Link", 
+  "doctype": "DocField", 
+  "label": "Item Group", 
+  "oldfieldname": "item_group", 
+  "permlevel": 1, 
+  "fieldname": "item_group", 
+  "fieldtype": "Link", 
+  "hidden": 1, 
+  "options": "Item Group"
+ }, 
+ {
+  "print_hide": 1, 
+  "oldfieldtype": "Link", 
+  "doctype": "DocField", 
+  "label": "Brand Name", 
+  "oldfieldname": "brand", 
+  "width": "150px", 
+  "options": "Brand", 
+  "fieldname": "brand", 
+  "fieldtype": "Link", 
+  "hidden": 1, 
+  "permlevel": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "no_copy": 1, 
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Available Qty at Warehouse", 
+  "oldfieldname": "actual_qty", 
+  "width": "150px", 
+  "fieldname": "actual_qty", 
+  "fieldtype": "Currency", 
+  "permlevel": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "no_copy": 1, 
+  "doctype": "DocField", 
+  "label": "Billed Amt", 
+  "width": "100px", 
+  "fieldname": "billed_amt", 
+  "fieldtype": "Currency", 
+  "permlevel": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "no_copy": 1, 
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Installed Qty", 
+  "oldfieldname": "installed_qty", 
+  "width": "150px", 
+  "fieldname": "installed_qty", 
+  "fieldtype": "Currency", 
+  "permlevel": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "no_copy": 1, 
+  "colour": "White:FFF", 
+  "allow_on_submit": 1, 
+  "doctype": "DocField", 
+  "label": "Packed Quantity", 
+  "default": "0", 
+  "fieldname": "packed_qty", 
+  "fieldtype": "Currency", 
+  "permlevel": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "search_index": 1, 
+  "doctype": "DocField", 
+  "label": "Document Type", 
+  "oldfieldname": "prevdoc_doctype", 
+  "width": "150px", 
+  "fieldname": "prevdoc_doctype", 
+  "fieldtype": "Data", 
+  "oldfieldtype": "Data", 
+  "hidden": 1, 
+  "permlevel": 1, 
+  "in_filter": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "no_copy": 1, 
+  "oldfieldtype": "Data", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Against Document No", 
+  "oldfieldname": "prevdoc_docname", 
+  "width": "150px", 
+  "fieldname": "prevdoc_docname", 
+  "fieldtype": "Data", 
+  "search_index": 1, 
+  "hidden": 0, 
+  "permlevel": 1, 
+  "in_filter": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "oldfieldtype": "Date", 
+  "doctype": "DocField", 
+  "label": "Against Document Date", 
+  "oldfieldname": "prevdoc_date", 
+  "fieldname": "prevdoc_date", 
+  "fieldtype": "Date", 
+  "hidden": 1, 
+  "permlevel": 1, 
+  "in_filter": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "search_index": 0, 
+  "doctype": "DocField", 
+  "label": "Against Document Detail No", 
+  "oldfieldname": "prevdoc_detail_docname", 
+  "width": "150px", 
+  "fieldname": "prevdoc_detail_docname", 
+  "fieldtype": "Data", 
+  "oldfieldtype": "Data", 
+  "hidden": 1, 
+  "permlevel": 1, 
+  "in_filter": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "oldfieldtype": "Small Text", 
+  "doctype": "DocField", 
+  "label": "Item Tax Rate", 
+  "oldfieldname": "item_tax_rate", 
+  "fieldname": "item_tax_rate", 
+  "fieldtype": "Small Text", 
+  "hidden": 1, 
+  "permlevel": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "oldfieldtype": "Check", 
+  "allow_on_submit": 1, 
+  "doctype": "DocField", 
+  "label": "Page Break", 
+  "oldfieldname": "page_break", 
+  "fieldname": "page_break", 
+  "fieldtype": "Check", 
+  "permlevel": 0
+ }
 ]
\ No newline at end of file
diff --git a/stock/doctype/delivery_note_packing_item/delivery_note_packing_item.txt b/stock/doctype/delivery_note_packing_item/delivery_note_packing_item.txt
index db512c6..625d223 100644
--- a/stock/doctype/delivery_note_packing_item/delivery_note_packing_item.txt
+++ b/stock/doctype/delivery_note_packing_item/delivery_note_packing_item.txt
@@ -1,208 +1,171 @@
-# DocType, Delivery Note Packing Item
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-06-11 12:10:10',
-		'docstatus': 0,
-		'modified': '2012-07-10 12:05:31',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'istable': 1,
-		'module': u'Stock',
-		'name': '__common__',
-		'section_style': u'Tray',
-		'server_code_error': u' ',
-		'show_in_menu': 0,
-		'version': 1
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'Delivery Note Packing Item',
-		'parentfield': u'fields',
-		'parenttype': u'DocType'
-	},
-
-	# DocType, Delivery Note Packing Item
-	{
-		'doctype': 'DocType',
-		'name': u'Delivery Note Packing Item'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'parent_item',
-		'fieldtype': u'Link',
-		'label': u'Parent Item',
-		'oldfieldname': u'parent_item',
-		'oldfieldtype': u'Link',
-		'options': u'Item',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'doctype': u'DocField',
-		'fieldname': u'item_code',
-		'fieldtype': u'Link',
-		'in_filter': 1,
-		'label': u'Item Code',
-		'oldfieldname': u'item_code',
-		'oldfieldtype': u'Link',
-		'options': u'Item',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'item_name',
-		'fieldtype': u'Data',
-		'in_filter': 1,
-		'label': u'Item Name',
-		'oldfieldname': u'item_name',
-		'oldfieldtype': u'Data',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'parent_detail_docname',
-		'fieldtype': u'Data',
-		'hidden': 1,
-		'label': u'Parent Detail docname',
-		'no_copy': 1,
-		'oldfieldname': u'parent_detail_docname',
-		'oldfieldtype': u'Data',
-		'permlevel': 1,
-		'print_hide': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'description',
-		'fieldtype': u'Text',
-		'label': u'Description',
-		'oldfieldname': u'description',
-		'oldfieldtype': u'Text',
-		'permlevel': 1,
-		'width': u'300px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'warehouse',
-		'fieldtype': u'Link',
-		'label': u'Warehouse',
-		'oldfieldname': u'warehouse',
-		'oldfieldtype': u'Link',
-		'options': u'Warehouse',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'qty',
-		'fieldtype': u'Currency',
-		'label': u'Qty',
-		'oldfieldname': u'qty',
-		'oldfieldtype': u'Currency',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'serial_no',
-		'fieldtype': u'Text',
-		'label': u'Serial No',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'batch_no',
-		'fieldtype': u'Data',
-		'label': u'Batch No',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'actual_qty',
-		'fieldtype': u'Currency',
-		'label': u'Actual Qty',
-		'no_copy': 1,
-		'oldfieldname': u'actual_qty',
-		'oldfieldtype': u'Currency',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'projected_qty',
-		'fieldtype': u'Currency',
-		'label': u'Projected Qty',
-		'no_copy': 1,
-		'oldfieldname': u'projected_qty',
-		'oldfieldtype': u'Currency',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'uom',
-		'fieldtype': u'Link',
-		'label': u'UOM',
-		'oldfieldname': u'uom',
-		'oldfieldtype': u'Link',
-		'options': u'UOM',
-		'permlevel': 1,
-		'search_index': 0
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'doctype': u'DocField',
-		'fieldname': u'prevdoc_doctype',
-		'fieldtype': u'Data',
-		'hidden': 1,
-		'label': u'Prevdoc DocType',
-		'oldfieldname': u'prevdoc_doctype',
-		'oldfieldtype': u'Data',
-		'permlevel': 1,
-		'print_hide': 1
-	},
-
-	# DocField
-	{
-		'allow_on_submit': 1,
-		'doctype': u'DocField',
-		'fieldname': u'page_break',
-		'fieldtype': u'Check',
-		'label': u'Page Break',
-		'oldfieldname': u'page_break',
-		'oldfieldtype': u'Check',
-		'permlevel': 1
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-06-11 12:10:10", 
+  "modified_by": "Administrator", 
+  "modified": "2012-07-10 12:05:31"
+ }, 
+ {
+  "section_style": "Tray", 
+  "istable": 1, 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "module": "Stock", 
+  "show_in_menu": 0, 
+  "version": 1, 
+  "server_code_error": " ", 
+  "doctype": "DocType"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Delivery Note Packing Item", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "Delivery Note Packing Item", 
+  "doctype": "DocType"
+ }, 
+ {
+  "oldfieldtype": "Link", 
+  "doctype": "DocField", 
+  "label": "Parent Item", 
+  "oldfieldname": "parent_item", 
+  "permlevel": 1, 
+  "fieldname": "parent_item", 
+  "fieldtype": "Link", 
+  "options": "Item"
+ }, 
+ {
+  "oldfieldtype": "Link", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Item Code", 
+  "oldfieldname": "item_code", 
+  "permlevel": 1, 
+  "fieldname": "item_code", 
+  "fieldtype": "Link", 
+  "options": "Item", 
+  "in_filter": 1
+ }, 
+ {
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Item Name", 
+  "oldfieldname": "item_name", 
+  "fieldname": "item_name", 
+  "fieldtype": "Data", 
+  "permlevel": 1, 
+  "in_filter": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "no_copy": 1, 
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Parent Detail docname", 
+  "oldfieldname": "parent_detail_docname", 
+  "fieldname": "parent_detail_docname", 
+  "fieldtype": "Data", 
+  "hidden": 1, 
+  "permlevel": 1
+ }, 
+ {
+  "oldfieldtype": "Text", 
+  "doctype": "DocField", 
+  "label": "Description", 
+  "oldfieldname": "description", 
+  "width": "300px", 
+  "fieldname": "description", 
+  "fieldtype": "Text", 
+  "permlevel": 1
+ }, 
+ {
+  "oldfieldtype": "Link", 
+  "doctype": "DocField", 
+  "label": "Warehouse", 
+  "oldfieldname": "warehouse", 
+  "permlevel": 0, 
+  "fieldname": "warehouse", 
+  "fieldtype": "Link", 
+  "options": "Warehouse"
+ }, 
+ {
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Qty", 
+  "oldfieldname": "qty", 
+  "fieldname": "qty", 
+  "fieldtype": "Currency", 
+  "permlevel": 1
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Serial No", 
+  "fieldname": "serial_no", 
+  "fieldtype": "Text", 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Batch No", 
+  "fieldname": "batch_no", 
+  "fieldtype": "Data", 
+  "permlevel": 0
+ }, 
+ {
+  "no_copy": 1, 
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Actual Qty", 
+  "oldfieldname": "actual_qty", 
+  "fieldname": "actual_qty", 
+  "fieldtype": "Currency", 
+  "permlevel": 1
+ }, 
+ {
+  "no_copy": 1, 
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Projected Qty", 
+  "oldfieldname": "projected_qty", 
+  "fieldname": "projected_qty", 
+  "fieldtype": "Currency", 
+  "permlevel": 1
+ }, 
+ {
+  "search_index": 0, 
+  "doctype": "DocField", 
+  "label": "UOM", 
+  "oldfieldname": "uom", 
+  "permlevel": 1, 
+  "fieldname": "uom", 
+  "fieldtype": "Link", 
+  "oldfieldtype": "Link", 
+  "options": "UOM"
+ }, 
+ {
+  "print_hide": 1, 
+  "oldfieldtype": "Data", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Prevdoc DocType", 
+  "oldfieldname": "prevdoc_doctype", 
+  "fieldname": "prevdoc_doctype", 
+  "fieldtype": "Data", 
+  "hidden": 1, 
+  "permlevel": 1
+ }, 
+ {
+  "oldfieldtype": "Check", 
+  "allow_on_submit": 1, 
+  "doctype": "DocField", 
+  "label": "Page Break", 
+  "oldfieldname": "page_break", 
+  "fieldname": "page_break", 
+  "fieldtype": "Check", 
+  "permlevel": 1
+ }
 ]
\ No newline at end of file
diff --git a/stock/doctype/item/item.js b/stock/doctype/item/item.js
index 300d4ef..c651456 100644
--- a/stock/doctype/item/item.js
+++ b/stock/doctype/item/item.js
@@ -52,7 +52,7 @@
 
 cur_frm.fields_dict['default_bom'].get_query = function(doc) {
    //var d = locals[this.doctype][this.docname];
-   return 'SELECT DISTINCT `tabBOM`.`name` FROM `tabBOM` WHERE `tabBOM`.`item` = "' + doc.item_code + '"  AND `tabBOM`.`is_active` = "No" and `tabBOM`.docstatus != 2 AND `tabBOM`.%(key)s LIKE "%s" ORDER BY `tabBOM`.`name` LIMIT 50'
+   return 'SELECT DISTINCT `tabBOM`.`name` FROM `tabBOM` WHERE `tabBOM`.`item` = "' + doc.item_code + '"  AND ifnull(`tabBOM`.`is_active`, 0) = 0 and `tabBOM`.docstatus != 2 AND `tabBOM`.%(key)s LIKE "%s" ORDER BY `tabBOM`.`name` LIMIT 50'
 }
 
 
@@ -149,4 +149,4 @@
 		msgprint(wn._("Attachment removed. You may need to update: ") 
 			+ wn.meta.get_docfield(doc.doctype, "description_html").label);
 	}
-};
\ No newline at end of file
+};
diff --git a/stock/doctype/item/item.py b/stock/doctype/item/item.py
index d1ad8a3..a9f7ee7 100644
--- a/stock/doctype/item/item.py
+++ b/stock/doctype/item/item.py
@@ -120,12 +120,12 @@
 
 	def check_for_active_boms(self, check):
 		if check in ['Is Active', 'Is Purchase Item']:
-			bom_mat = sql("select distinct t1.parent from `tabBOM Item` t1, `tabBOM` t2 where t1.item_code ='%s' and (t1.bom_no = '' or t1.bom_no is NULL) and t2.name = t1.parent and t2.is_active = 'Yes' and t2.docstatus = 1 and t1.docstatus =1 " % self.doc.name )
+			bom_mat = sql("select distinct t1.parent from `tabBOM Item` t1, `tabBOM` t2 where t1.item_code ='%s' and (t1.bom_no = '' or t1.bom_no is NULL) and t2.name = t1.parent and t2.is_active = 1 and t2.docstatus = 1 and t1.docstatus =1 " % self.doc.name )
 			if bom_mat and bom_mat[0][0]:
 				msgprint("%s should be 'Yes'. As Item %s is present in one or many Active BOMs." % (cstr(check), cstr(self.doc.name)))
 				raise Exception
 		if check == 'Is Active' or ( check == 'Is Manufactured Item' and self.doc.is_sub_contracted_item != 'Yes') or (check ==	'Is Sub Contracted Item' and self.doc.is_manufactured_item != 'Yes') :
-			bom = sql("select name from `tabBOM` where item = '%s' and is_active ='Yes'" % cstr(self.doc.name))
+			bom = sql("select name from `tabBOM` where item = '%s' and is_active = 1" % cstr(self.doc.name))
 			if bom and bom[0][0]:
 				msgprint("%s should be 'Yes'. As Item %s is present in one or many Active BOMs." % (cstr(check), cstr(self.doc.name)))
 				raise Exception
diff --git a/stock/doctype/item_customer_detail/item_customer_detail.txt b/stock/doctype/item_customer_detail/item_customer_detail.txt
index d41c927..e0e93d1 100644
--- a/stock/doctype/item_customer_detail/item_customer_detail.txt
+++ b/stock/doctype/item_customer_detail/item_customer_detail.txt
@@ -1,71 +1,58 @@
-# DocType, Item Customer Detail
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:36:33',
-		'docstatus': 0,
-		'modified': '2012-03-27 14:36:33',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'autoname': u'ITEMCUST/.#####',
-		'colour': u'White:FFF',
-		'description': u'For the convenience of customers, these codes can be used in print formats like Invoices and Delivery Notes',
-		'doctype': 'DocType',
-		'in_create': 1,
-		'istable': 1,
-		'module': u'Stock',
-		'name': '__common__',
-		'read_only': 0,
-		'section_style': u'Tray',
-		'server_code_error': u' ',
-		'show_in_menu': 0,
-		'version': 7
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'in_filter': 1,
-		'name': '__common__',
-		'parent': u'Item Customer Detail',
-		'parentfield': u'fields',
-		'parenttype': u'DocType',
-		'permlevel': 0,
-		'reqd': 1,
-		'search_index': 1
-	},
-
-	# DocType, Item Customer Detail
-	{
-		'doctype': 'DocType',
-		'name': u'Item Customer Detail'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'customer_name',
-		'fieldtype': u'Link',
-		'label': u'Customer Name',
-		'oldfieldname': u'price_list_name',
-		'oldfieldtype': u'Select',
-		'options': u'Customer',
-		'width': u'180px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'ref_code',
-		'fieldtype': u'Data',
-		'label': u'Ref Code',
-		'oldfieldname': u'ref_rate',
-		'oldfieldtype': u'Currency',
-		'width': u'120px'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-03-27 14:36:33", 
+  "modified_by": "Administrator", 
+  "modified": "2012-03-27 14:36:33"
+ }, 
+ {
+  "section_style": "Tray", 
+  "istable": 1, 
+  "description": "For the convenience of customers, these codes can be used in print formats like Invoices and Delivery Notes", 
+  "module": "Stock", 
+  "server_code_error": " ", 
+  "in_create": 1, 
+  "read_only": 0, 
+  "autoname": "ITEMCUST/.#####", 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "doctype": "DocType", 
+  "show_in_menu": 0, 
+  "version": 7
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Item Customer Detail", 
+  "search_index": 1, 
+  "doctype": "DocField", 
+  "reqd": 1, 
+  "parenttype": "DocType", 
+  "parentfield": "fields", 
+  "permlevel": 0, 
+  "in_filter": 1
+ }, 
+ {
+  "name": "Item Customer Detail", 
+  "doctype": "DocType"
+ }, 
+ {
+  "oldfieldtype": "Select", 
+  "doctype": "DocField", 
+  "label": "Customer Name", 
+  "oldfieldname": "price_list_name", 
+  "width": "180px", 
+  "fieldname": "customer_name", 
+  "fieldtype": "Link", 
+  "options": "Customer"
+ }, 
+ {
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Ref Code", 
+  "oldfieldname": "ref_rate", 
+  "width": "120px", 
+  "fieldname": "ref_code", 
+  "fieldtype": "Data"
+ }
 ]
\ No newline at end of file
diff --git a/stock/doctype/item_price/item_price.txt b/stock/doctype/item_price/item_price.txt
index d575155..2f6133f 100644
--- a/stock/doctype/item_price/item_price.txt
+++ b/stock/doctype/item_price/item_price.txt
@@ -1,81 +1,66 @@
-# DocType, Item Price
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:36:36',
-		'docstatus': 0,
-		'modified': '2012-03-27 14:36:36',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'autoname': u'RFD/.#####',
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'in_create': 1,
-		'istable': 1,
-		'module': u'Stock',
-		'name': '__common__',
-		'read_only': 0,
-		'section_style': u'Tray',
-		'server_code_error': u' ',
-		'show_in_menu': 0,
-		'version': 3
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'in_filter': 1,
-		'name': '__common__',
-		'parent': u'Item Price',
-		'parentfield': u'fields',
-		'parenttype': u'DocType',
-		'permlevel': 0,
-		'search_index': 1
-	},
-
-	# DocType, Item Price
-	{
-		'doctype': 'DocType',
-		'name': u'Item Price'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'price_list_name',
-		'fieldtype': u'Select',
-		'label': u'Price List Name',
-		'oldfieldname': u'price_list_name',
-		'oldfieldtype': u'Select',
-		'options': u'link:Price List',
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'ref_rate',
-		'fieldtype': u'Currency',
-		'label': u'Ref Rate',
-		'oldfieldname': u'ref_rate',
-		'oldfieldtype': u'Currency',
-		'reqd': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'ref_currency',
-		'fieldtype': u'Select',
-		'label': u'Currency',
-		'oldfieldname': u'ref_currency',
-		'oldfieldtype': u'Select',
-		'options': u'link:Currency',
-		'reqd': 1
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-03-27 14:36:36", 
+  "modified_by": "Administrator", 
+  "modified": "2012-03-27 14:36:36"
+ }, 
+ {
+  "section_style": "Tray", 
+  "istable": 1, 
+  "in_create": 1, 
+  "module": "Stock", 
+  "server_code_error": " ", 
+  "read_only": 0, 
+  "autoname": "RFD/.#####", 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "doctype": "DocType", 
+  "show_in_menu": 0, 
+  "version": 3
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Item Price", 
+  "search_index": 1, 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "in_filter": 1, 
+  "permlevel": 0, 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "Item Price", 
+  "doctype": "DocType"
+ }, 
+ {
+  "oldfieldtype": "Select", 
+  "doctype": "DocField", 
+  "label": "Price List Name", 
+  "oldfieldname": "price_list_name", 
+  "fieldname": "price_list_name", 
+  "fieldtype": "Select", 
+  "reqd": 1, 
+  "options": "link:Price List"
+ }, 
+ {
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Ref Rate", 
+  "oldfieldname": "ref_rate", 
+  "fieldname": "ref_rate", 
+  "fieldtype": "Currency", 
+  "reqd": 0
+ }, 
+ {
+  "oldfieldtype": "Select", 
+  "doctype": "DocField", 
+  "label": "Currency", 
+  "oldfieldname": "ref_currency", 
+  "fieldname": "ref_currency", 
+  "fieldtype": "Select", 
+  "reqd": 1, 
+  "options": "link:Currency"
+ }
 ]
\ No newline at end of file
diff --git a/stock/doctype/item_quality_inspection_parameter/item_quality_inspection_parameter.txt b/stock/doctype/item_quality_inspection_parameter/item_quality_inspection_parameter.txt
index 1ab6d06..24734ef 100644
--- a/stock/doctype/item_quality_inspection_parameter/item_quality_inspection_parameter.txt
+++ b/stock/doctype/item_quality_inspection_parameter/item_quality_inspection_parameter.txt
@@ -1,64 +1,51 @@
-# DocType, Item Quality Inspection Parameter
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:36:33',
-		'docstatus': 0,
-		'modified': '2012-03-27 14:36:33',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'autoname': u'IISD/.#####',
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'istable': 1,
-		'module': u'Stock',
-		'name': '__common__',
-		'section_style': u'Simple',
-		'server_code_error': u' ',
-		'show_in_menu': 0,
-		'version': 1
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'fieldtype': u'Data',
-		'name': '__common__',
-		'oldfieldtype': u'Data',
-		'parent': u'Item Quality Inspection Parameter',
-		'parentfield': u'fields',
-		'parenttype': u'DocType',
-		'permlevel': 0
-	},
-
-	# DocType, Item Quality Inspection Parameter
-	{
-		'doctype': 'DocType',
-		'name': u'Item Quality Inspection Parameter'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'specification',
-		'in_filter': 0,
-		'label': u'Parameter',
-		'oldfieldname': u'specification',
-		'reqd': 1,
-		'search_index': 0,
-		'width': u'200px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'value',
-		'label': u'Acceptance Criteria',
-		'oldfieldname': u'value'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-03-27 14:36:33", 
+  "modified_by": "Administrator", 
+  "modified": "2012-03-27 14:36:33"
+ }, 
+ {
+  "section_style": "Simple", 
+  "istable": 1, 
+  "module": "Stock", 
+  "server_code_error": " ", 
+  "doctype": "DocType", 
+  "autoname": "IISD/.#####", 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "show_in_menu": 0, 
+  "version": 1
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Item Quality Inspection Parameter", 
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "fieldtype": "Data", 
+  "permlevel": 0, 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "Item Quality Inspection Parameter", 
+  "doctype": "DocType"
+ }, 
+ {
+  "search_index": 0, 
+  "doctype": "DocField", 
+  "label": "Parameter", 
+  "oldfieldname": "specification", 
+  "width": "200px", 
+  "fieldname": "specification", 
+  "reqd": 1, 
+  "in_filter": 0
+ }, 
+ {
+  "oldfieldname": "value", 
+  "fieldname": "value", 
+  "doctype": "DocField", 
+  "label": "Acceptance Criteria"
+ }
 ]
\ No newline at end of file
diff --git a/stock/doctype/item_supplier/item_supplier.txt b/stock/doctype/item_supplier/item_supplier.txt
index e7806b3..96d6d31 100644
--- a/stock/doctype/item_supplier/item_supplier.txt
+++ b/stock/doctype/item_supplier/item_supplier.txt
@@ -1,58 +1,45 @@
-# DocType, Item Supplier
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:36:33',
-		'docstatus': 0,
-		'modified': '2012-03-27 14:36:33',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'istable': 1,
-		'module': u'Stock',
-		'name': '__common__',
-		'section_style': u'Simple',
-		'show_in_menu': 0,
-		'version': 3
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'Item Supplier',
-		'parentfield': u'fields',
-		'parenttype': u'DocType',
-		'permlevel': 0
-	},
-
-	# DocType, Item Supplier
-	{
-		'doctype': 'DocType',
-		'name': u'Item Supplier'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'supplier',
-		'fieldtype': u'Link',
-		'label': u'Supplier',
-		'options': u'Supplier'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'supplier_part_no',
-		'fieldtype': u'Data',
-		'label': u'Supplier Part Number',
-		'width': u'200px'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-03-27 14:36:33", 
+  "modified_by": "Administrator", 
+  "modified": "2012-03-27 14:36:33"
+ }, 
+ {
+  "section_style": "Simple", 
+  "istable": 1, 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "module": "Stock", 
+  "doctype": "DocType", 
+  "version": 3, 
+  "show_in_menu": 0
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Item Supplier", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "permlevel": 0, 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "Item Supplier", 
+  "doctype": "DocType"
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Supplier", 
+  "fieldname": "supplier", 
+  "fieldtype": "Link", 
+  "options": "Supplier"
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Supplier Part Number", 
+  "width": "200px", 
+  "fieldname": "supplier_part_no", 
+  "fieldtype": "Data"
+ }
 ]
\ No newline at end of file
diff --git a/stock/doctype/item_tax/item_tax.txt b/stock/doctype/item_tax/item_tax.txt
index 1ceffdb..e4e26c3 100644
--- a/stock/doctype/item_tax/item_tax.txt
+++ b/stock/doctype/item_tax/item_tax.txt
@@ -1,64 +1,51 @@
-# DocType, Item Tax
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:36:33',
-		'docstatus': 0,
-		'modified': '2012-03-27 14:36:33',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'istable': 1,
-		'module': u'Stock',
-		'name': '__common__',
-		'section_style': u'Tray',
-		'server_code_error': u' ',
-		'show_in_menu': 0
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'Item Tax',
-		'parentfield': u'fields',
-		'parenttype': u'DocType',
-		'permlevel': 0
-	},
-
-	# DocType, Item Tax
-	{
-		'doctype': 'DocType',
-		'name': u'Item Tax'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'tax_type',
-		'fieldtype': u'Link',
-		'label': u'Tax',
-		'oldfieldname': u'tax_type',
-		'oldfieldtype': u'Link',
-		'options': u'Account',
-		'reqd': 1,
-		'trigger': u'Client'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'tax_rate',
-		'fieldtype': u'Currency',
-		'label': u'Tax Rate',
-		'oldfieldname': u'tax_rate',
-		'oldfieldtype': u'Currency',
-		'reqd': 0
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-03-27 14:36:33", 
+  "modified_by": "Administrator", 
+  "modified": "2012-03-27 14:36:33"
+ }, 
+ {
+  "section_style": "Tray", 
+  "istable": 1, 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "module": "Stock", 
+  "show_in_menu": 0, 
+  "server_code_error": " ", 
+  "doctype": "DocType"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Item Tax", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "permlevel": 0, 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "Item Tax", 
+  "doctype": "DocType"
+ }, 
+ {
+  "oldfieldtype": "Link", 
+  "doctype": "DocField", 
+  "label": "Tax", 
+  "oldfieldname": "tax_type", 
+  "trigger": "Client", 
+  "fieldname": "tax_type", 
+  "fieldtype": "Link", 
+  "reqd": 1, 
+  "options": "Account"
+ }, 
+ {
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Tax Rate", 
+  "oldfieldname": "tax_rate", 
+  "fieldname": "tax_rate", 
+  "fieldtype": "Currency", 
+  "reqd": 0
+ }
 ]
\ No newline at end of file
diff --git a/stock/doctype/landed_cost_item/landed_cost_item.txt b/stock/doctype/landed_cost_item/landed_cost_item.txt
index 268d890..90fc03f 100644
--- a/stock/doctype/landed_cost_item/landed_cost_item.txt
+++ b/stock/doctype/landed_cost_item/landed_cost_item.txt
@@ -1,75 +1,60 @@
-# DocType, Landed Cost Item
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-05-03 11:00:55',
-		'docstatus': 0,
-		'modified': '2012-05-04 13:02:26',
-		'modified_by': u'Administrator',
-		'owner': u'wasim@webnotestech.com'
-	},
-
-	# These values are common for all DocType
-	{
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'istable': 1,
-		'module': u'Stock',
-		'name': '__common__',
-		'section_style': u'Simple',
-		'server_code_error': u' ',
-		'show_in_menu': 0,
-		'version': 1
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'Landed Cost Item',
-		'parentfield': u'fields',
-		'parenttype': u'DocType',
-		'permlevel': 0,
-		'reqd': 1
-	},
-
-	# DocType, Landed Cost Item
-	{
-		'doctype': 'DocType',
-		'name': u'Landed Cost Item'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'account_head',
-		'fieldtype': u'Link',
-		'label': u'Account Head',
-		'oldfieldname': u'account_head',
-		'oldfieldtype': u'Link',
-		'options': u'Account',
-		'search_index': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'description',
-		'fieldtype': u'Data',
-		'label': u'Description',
-		'oldfieldname': u'description',
-		'oldfieldtype': u'Data',
-		'width': u'300px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'amount',
-		'fieldtype': u'Currency',
-		'label': u'Amount',
-		'oldfieldname': u'amount',
-		'oldfieldtype': u'Currency'
-	}
+ {
+  "owner": "wasim@webnotestech.com", 
+  "docstatus": 0, 
+  "creation": "2012-05-03 11:00:55", 
+  "modified_by": "Administrator", 
+  "modified": "2012-05-04 13:02:26"
+ }, 
+ {
+  "section_style": "Simple", 
+  "istable": 1, 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "module": "Stock", 
+  "show_in_menu": 0, 
+  "version": 1, 
+  "server_code_error": " ", 
+  "doctype": "DocType"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Landed Cost Item", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "reqd": 1, 
+  "permlevel": 0, 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "Landed Cost Item", 
+  "doctype": "DocType"
+ }, 
+ {
+  "search_index": 1, 
+  "doctype": "DocField", 
+  "label": "Account Head", 
+  "oldfieldname": "account_head", 
+  "fieldname": "account_head", 
+  "fieldtype": "Link", 
+  "oldfieldtype": "Link", 
+  "options": "Account"
+ }, 
+ {
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Description", 
+  "oldfieldname": "description", 
+  "width": "300px", 
+  "fieldname": "description", 
+  "fieldtype": "Data"
+ }, 
+ {
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Amount", 
+  "oldfieldname": "amount", 
+  "fieldname": "amount", 
+  "fieldtype": "Currency"
+ }
 ]
\ No newline at end of file
diff --git a/stock/doctype/landed_cost_master/landed_cost_master.txt b/stock/doctype/landed_cost_master/landed_cost_master.txt
index 7271b68..0ee22ba 100644
--- a/stock/doctype/landed_cost_master/landed_cost_master.txt
+++ b/stock/doctype/landed_cost_master/landed_cost_master.txt
@@ -1,150 +1,117 @@
-# DocType, Landed Cost Master
 [
-
-	# These values are common in all dictionaries
-	{
-		u'creation': '2012-07-03 13:29:45',
-		u'docstatus': 0,
-		u'modified': '2012-09-17 10:53:26',
-		u'modified_by': u'Administrator',
-		u'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'_last_update': u'1309508838',
-		'autoname': u'field:title',
-		'colour': u'White:FFF',
-		u'doctype': u'DocType',
-		'document_type': u'Master',
-		'module': u'Stock',
-		u'name': u'__common__',
-		'section_style': u'Simple',
-		'server_code_error': u' ',
-		'version': 1
-	},
-
-	# These values are common for all DocField
-	{
-		u'doctype': u'DocField',
-		u'name': u'__common__',
-		'parent': u'Landed Cost Master',
-		'parentfield': u'fields',
-		'parenttype': u'DocType'
-	},
-
-	# These values are common for all DocPerm
-	{
-		u'doctype': u'DocPerm',
-		u'name': u'__common__',
-		'parent': u'Landed Cost Master',
-		'parentfield': u'permissions',
-		'parenttype': u'DocType',
-		'read': 1
-	},
-
-	# DocType, Landed Cost Master
-	{
-		u'doctype': u'DocType',
-		u'name': u'Landed Cost Master'
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'trash_reason',
-		'fieldtype': u'Small Text',
-		'label': u'Trash Reason',
-		'oldfieldname': u'trash_reason',
-		'oldfieldtype': u'Small Text',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'title',
-		'fieldtype': u'Data',
-		'label': u'Title',
-		'oldfieldname': u'title',
-		'oldfieldtype': u'Data',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'landed_cost_details',
-		'fieldtype': u'Section Break',
-		'label': u'Landed Cost Items',
-		'oldfieldtype': u'Section Break',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'landed_cost',
-		'fieldtype': u'Table',
-		'label': u'Landed Cost',
-		'oldfieldname': u'landed_cost',
-		'oldfieldtype': u'Table',
-		'options': u'Landed Cost Master Detail',
-		'permlevel': 0
-	},
-
-	# DocPerm
-	{
-		'create': 1,
-		u'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'Purchase Manager',
-		'write': 1
-	},
-
-	# DocPerm
-	{
-		'create': 1,
-		u'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'System Manager',
-		'write': 1
-	},
-
-	# DocPerm
-	{
-		'create': 1,
-		u'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'Purchase User',
-		'write': 1
-	},
-
-	# DocPerm
-	{
-		u'doctype': u'DocPerm',
-		'permlevel': 1,
-		'role': u'All'
-	},
-
-	# DocPerm
-	{
-		u'doctype': u'DocPerm',
-		'permlevel': 1,
-		'role': u'System Manager'
-	},
-
-	# DocPerm
-	{
-		u'doctype': u'DocPerm',
-		'permlevel': 1,
-		'role': u'Purchase User'
-	},
-
-	# DocPerm
-	{
-		u'doctype': u'DocPerm',
-		'permlevel': 1,
-		'role': u'Purchase Manager'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-07-03 13:29:45", 
+  "modified_by": "Administrator", 
+  "modified": "2012-09-17 10:53:26"
+ }, 
+ {
+  "section_style": "Simple", 
+  "module": "Stock", 
+  "doctype": "DocType", 
+  "autoname": "field:title", 
+  "document_type": "Master", 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "_last_update": "1309508838", 
+  "server_code_error": " ", 
+  "version": 1
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Landed Cost Master", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Landed Cost Master", 
+  "read": 1, 
+  "doctype": "DocPerm", 
+  "parenttype": "DocType", 
+  "parentfield": "permissions"
+ }, 
+ {
+  "name": "Landed Cost Master", 
+  "doctype": "DocType"
+ }, 
+ {
+  "oldfieldtype": "Small Text", 
+  "doctype": "DocField", 
+  "label": "Trash Reason", 
+  "oldfieldname": "trash_reason", 
+  "fieldname": "trash_reason", 
+  "fieldtype": "Small Text", 
+  "permlevel": 1
+ }, 
+ {
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Title", 
+  "oldfieldname": "title", 
+  "fieldname": "title", 
+  "fieldtype": "Data", 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Section Break", 
+  "doctype": "DocField", 
+  "label": "Landed Cost Items", 
+  "fieldname": "landed_cost_details", 
+  "fieldtype": "Section Break", 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Table", 
+  "doctype": "DocField", 
+  "label": "Landed Cost", 
+  "oldfieldname": "landed_cost", 
+  "permlevel": 0, 
+  "fieldname": "landed_cost", 
+  "fieldtype": "Table", 
+  "options": "Landed Cost Master Detail"
+ }, 
+ {
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "write": 1, 
+  "role": "Purchase Manager", 
+  "permlevel": 0
+ }, 
+ {
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "write": 1, 
+  "role": "System Manager", 
+  "permlevel": 0
+ }, 
+ {
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "write": 1, 
+  "role": "Purchase User", 
+  "permlevel": 0
+ }, 
+ {
+  "role": "All", 
+  "permlevel": 1, 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "role": "System Manager", 
+  "permlevel": 1, 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "role": "Purchase User", 
+  "permlevel": 1, 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "role": "Purchase Manager", 
+  "permlevel": 1, 
+  "doctype": "DocPerm"
+ }
 ]
\ No newline at end of file
diff --git a/stock/doctype/landed_cost_master_detail/landed_cost_master_detail.txt b/stock/doctype/landed_cost_master_detail/landed_cost_master_detail.txt
index 74e47e1..b1db6a3 100644
--- a/stock/doctype/landed_cost_master_detail/landed_cost_master_detail.txt
+++ b/stock/doctype/landed_cost_master_detail/landed_cost_master_detail.txt
@@ -1,61 +1,48 @@
-# DocType, Landed Cost Master Detail
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-05-03 11:00:55',
-		'docstatus': 0,
-		'modified': '2012-05-04 13:02:35',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'istable': 1,
-		'module': u'Stock',
-		'name': '__common__',
-		'section_style': u'Simple',
-		'server_code_error': u' ',
-		'version': 1
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'oldfieldtype': u'Data',
-		'parent': u'Landed Cost Master Detail',
-		'parentfield': u'fields',
-		'parenttype': u'DocType',
-		'permlevel': 0
-	},
-
-	# DocType, Landed Cost Master Detail
-	{
-		'doctype': 'DocType',
-		'name': u'Landed Cost Master Detail'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'account_head',
-		'fieldtype': u'Link',
-		'label': u'Account Head',
-		'oldfieldname': u'account_head',
-		'options': u'Account'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'description',
-		'fieldtype': u'Data',
-		'label': u'Description',
-		'oldfieldname': u'description',
-		'width': u'300px'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-05-03 11:00:55", 
+  "modified_by": "Administrator", 
+  "modified": "2012-05-04 13:02:35"
+ }, 
+ {
+  "section_style": "Simple", 
+  "istable": 1, 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "module": "Stock", 
+  "doctype": "DocType", 
+  "version": 1, 
+  "server_code_error": " "
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Landed Cost Master Detail", 
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "permlevel": 0, 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "Landed Cost Master Detail", 
+  "doctype": "DocType"
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Account Head", 
+  "oldfieldname": "account_head", 
+  "fieldname": "account_head", 
+  "fieldtype": "Link", 
+  "options": "Account"
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Description", 
+  "oldfieldname": "description", 
+  "width": "300px", 
+  "fieldname": "description", 
+  "fieldtype": "Data"
+ }
 ]
\ No newline at end of file
diff --git a/stock/doctype/landed_cost_purchase_receipt/landed_cost_purchase_receipt.txt b/stock/doctype/landed_cost_purchase_receipt/landed_cost_purchase_receipt.txt
index ec80d7d..678d9a9 100644
--- a/stock/doctype/landed_cost_purchase_receipt/landed_cost_purchase_receipt.txt
+++ b/stock/doctype/landed_cost_purchase_receipt/landed_cost_purchase_receipt.txt
@@ -1,64 +1,51 @@
-# DocType, Landed Cost Purchase Receipt
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:36:34',
-		'docstatus': 0,
-		'modified': '2012-03-27 14:36:34',
-		'modified_by': u'Administrator',
-		'owner': u'wasim@webnotestech.com'
-	},
-
-	# These values are common for all DocType
-	{
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'istable': 1,
-		'module': u'Stock',
-		'name': '__common__',
-		'section_style': u'Simple',
-		'server_code_error': u' ',
-		'show_in_menu': 0,
-		'version': 5
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'Landed Cost Purchase Receipt',
-		'parentfield': u'fields',
-		'parenttype': u'DocType',
-		'permlevel': 0
-	},
-
-	# DocType, Landed Cost Purchase Receipt
-	{
-		'doctype': 'DocType',
-		'name': u'Landed Cost Purchase Receipt'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'purchase_receipt',
-		'fieldtype': u'Link',
-		'label': u'Purchase Receipt',
-		'oldfieldname': u'purchase_receipt_no',
-		'oldfieldtype': u'Link',
-		'options': u'Purchase Receipt',
-		'width': u'220px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'select_pr',
-		'fieldtype': u'Check',
-		'label': u'Select PR',
-		'oldfieldname': u'include_in_landed_cost',
-		'oldfieldtype': u'Check',
-		'width': u'120px'
-	}
+ {
+  "owner": "wasim@webnotestech.com", 
+  "docstatus": 0, 
+  "creation": "2012-03-27 14:36:34", 
+  "modified_by": "Administrator", 
+  "modified": "2012-03-27 14:36:34"
+ }, 
+ {
+  "section_style": "Simple", 
+  "istable": 1, 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "module": "Stock", 
+  "show_in_menu": 0, 
+  "version": 5, 
+  "server_code_error": " ", 
+  "doctype": "DocType"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Landed Cost Purchase Receipt", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "permlevel": 0, 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "Landed Cost Purchase Receipt", 
+  "doctype": "DocType"
+ }, 
+ {
+  "oldfieldtype": "Link", 
+  "doctype": "DocField", 
+  "label": "Purchase Receipt", 
+  "oldfieldname": "purchase_receipt_no", 
+  "width": "220px", 
+  "fieldname": "purchase_receipt", 
+  "fieldtype": "Link", 
+  "options": "Purchase Receipt"
+ }, 
+ {
+  "oldfieldtype": "Check", 
+  "doctype": "DocField", 
+  "label": "Select PR", 
+  "oldfieldname": "include_in_landed_cost", 
+  "width": "120px", 
+  "fieldname": "select_pr", 
+  "fieldtype": "Check"
+ }
 ]
\ No newline at end of file
diff --git a/stock/doctype/landed_cost_wizard/landed_cost_wizard.txt b/stock/doctype/landed_cost_wizard/landed_cost_wizard.txt
index d0659e1..3bb48b5 100644
--- a/stock/doctype/landed_cost_wizard/landed_cost_wizard.txt
+++ b/stock/doctype/landed_cost_wizard/landed_cost_wizard.txt
@@ -1,218 +1,169 @@
-# DocType, Landed Cost Wizard
 [
-
-	# These values are common in all dictionaries
-	{
-		u'creation': '2012-07-03 13:29:45',
-		u'docstatus': 0,
-		u'modified': '2012-09-17 10:54:21',
-		u'modified_by': u'Administrator',
-		u'owner': u'wasim@webnotestech.com'
-	},
-
-	# These values are common for all DocType
-	{
-		'_last_update': u'1321441191',
-		'colour': u'White:FFF',
-		u'doctype': u'DocType',
-		'issingle': 1,
-		'module': u'Stock',
-		u'name': u'__common__',
-		'section_style': u'Simple',
-		'server_code_error': u' ',
-		'show_in_menu': 1,
-		'version': 1
-	},
-
-	# These values are common for all DocField
-	{
-		u'doctype': u'DocField',
-		u'name': u'__common__',
-		'parent': u'Landed Cost Wizard',
-		'parentfield': u'fields',
-		'parenttype': u'DocType',
-		'permlevel': 0
-	},
-
-	# These values are common for all DocPerm
-	{
-		u'doctype': u'DocPerm',
-		u'name': u'__common__',
-		'parent': u'Landed Cost Wizard',
-		'parentfield': u'permissions',
-		'parenttype': u'DocType',
-		'read': 1
-	},
-
-	# DocType, Landed Cost Wizard
-	{
-		u'doctype': u'DocType',
-		u'name': u'Landed Cost Wizard'
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'process',
-		'fieldtype': u'HTML',
-		'label': u'Process',
-		'options': u'<div class="field_description"><b>Process:</b><br>1. Fetch and select Purchase Receipt<br>2. Enter extra costs<br>3. Click on Update Landed Cost button<br> 4. Cost will be added into other charges table of selected PR proportionately based on net total<br>5. Item Valuation Rate will be recalculated</div>'
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'section_break0',
-		'fieldtype': u'Section Break',
-		'options': u'Simple'
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'from_pr_date',
-		'fieldtype': u'Date',
-		'label': u'From PR Date',
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'to_pr_date',
-		'fieldtype': u'Date',
-		'label': u'To PR Date',
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'currency',
-		'fieldtype': u'Select',
-		'label': u'Currency',
-		'options': u'link:Currency',
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'get_purchase_receipt',
-		'fieldtype': u'Button',
-		'label': u'Get Purchase Receipt',
-		'options': u'get_purchase_receipts'
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'lc_pr_details',
-		'fieldtype': u'Table',
-		'label': u'Landed Cost Purchase Receipts',
-		'options': u'Landed Cost Purchase Receipt'
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'section_break1',
-		'fieldtype': u'Section Break',
-		'options': u'Simple'
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'landed_cost',
-		'fieldtype': u'Link',
-		'label': u'Select Landed Cost Items Master',
-		'options': u'Landed Cost Master'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		u'doctype': u'DocField',
-		'fieldname': u'get_details',
-		'fieldtype': u'Button',
-		'label': u'Get Details',
-		'options': u'get_landed_cost_master_details'
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'landed_cost_details',
-		'fieldtype': u'Table',
-		'label': u'Landed Cost Items',
-		'options': u'Landed Cost Item'
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'update_pr',
-		'fieldtype': u'Button',
-		'label': u'Update PR',
-		'options': u'update_landed_cost'
-	},
-
-	# DocPerm
-	{
-		'amend': 0,
-		'cancel': 0,
-		'create': 1,
-		u'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'Purchase Manager',
-		'submit': 0,
-		'write': 1
-	},
-
-	# DocPerm
-	{
-		'create': 1,
-		u'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'System Manager',
-		'write': 1
-	},
-
-	# DocPerm
-	{
-		'create': 1,
-		u'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'Purchase User',
-		'write': 1
-	},
-
-	# DocPerm
-	{
-		u'doctype': u'DocPerm',
-		'permlevel': 1,
-		'role': u'All'
-	},
-
-	# DocPerm
-	{
-		u'doctype': u'DocPerm',
-		'permlevel': 1,
-		'role': u'System Manager'
-	},
-
-	# DocPerm
-	{
-		u'doctype': u'DocPerm',
-		'permlevel': 1,
-		'role': u'Purchase User'
-	},
-
-	# DocPerm
-	{
-		u'doctype': u'DocPerm',
-		'permlevel': 1,
-		'role': u'Purchase Manager'
-	}
+ {
+  "owner": "wasim@webnotestech.com", 
+  "docstatus": 0, 
+  "creation": "2012-07-03 13:29:45", 
+  "modified_by": "Administrator", 
+  "modified": "2012-09-17 10:54:21"
+ }, 
+ {
+  "section_style": "Simple", 
+  "module": "Stock", 
+  "server_code_error": " ", 
+  "doctype": "DocType", 
+  "issingle": 1, 
+  "_last_update": "1321441191", 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "show_in_menu": 1, 
+  "version": 1
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Landed Cost Wizard", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "permlevel": 0, 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Landed Cost Wizard", 
+  "read": 1, 
+  "doctype": "DocPerm", 
+  "parenttype": "DocType", 
+  "parentfield": "permissions"
+ }, 
+ {
+  "name": "Landed Cost Wizard", 
+  "doctype": "DocType"
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Process", 
+  "fieldname": "process", 
+  "fieldtype": "HTML", 
+  "options": "<div class=\"field_description\"><b>Process:</b><br>1. Fetch and select Purchase Receipt<br>2. Enter extra costs<br>3. Click on Update Landed Cost button<br> 4. Cost will be added into other charges table of selected PR proportionately based on net total<br>5. Item Valuation Rate will be recalculated</div>"
+ }, 
+ {
+  "doctype": "DocField", 
+  "fieldname": "section_break0", 
+  "fieldtype": "Section Break", 
+  "options": "Simple"
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "From PR Date", 
+  "fieldname": "from_pr_date", 
+  "fieldtype": "Date", 
+  "reqd": 1
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "To PR Date", 
+  "fieldname": "to_pr_date", 
+  "fieldtype": "Date", 
+  "reqd": 1
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Currency", 
+  "fieldname": "currency", 
+  "fieldtype": "Select", 
+  "reqd": 1, 
+  "options": "link:Currency"
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Get Purchase Receipt", 
+  "fieldname": "get_purchase_receipt", 
+  "fieldtype": "Button", 
+  "options": "get_purchase_receipts"
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Landed Cost Purchase Receipts", 
+  "fieldname": "lc_pr_details", 
+  "fieldtype": "Table", 
+  "options": "Landed Cost Purchase Receipt"
+ }, 
+ {
+  "doctype": "DocField", 
+  "fieldname": "section_break1", 
+  "fieldtype": "Section Break", 
+  "options": "Simple"
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Select Landed Cost Items Master", 
+  "fieldname": "landed_cost", 
+  "fieldtype": "Link", 
+  "options": "Landed Cost Master"
+ }, 
+ {
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Get Details", 
+  "fieldname": "get_details", 
+  "fieldtype": "Button", 
+  "options": "get_landed_cost_master_details"
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Landed Cost Items", 
+  "fieldname": "landed_cost_details", 
+  "fieldtype": "Table", 
+  "options": "Landed Cost Item"
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Update PR", 
+  "fieldname": "update_pr", 
+  "fieldtype": "Button", 
+  "options": "update_landed_cost"
+ }, 
+ {
+  "amend": 0, 
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "submit": 0, 
+  "write": 1, 
+  "role": "Purchase Manager", 
+  "cancel": 0, 
+  "permlevel": 0
+ }, 
+ {
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "write": 1, 
+  "role": "System Manager", 
+  "permlevel": 0
+ }, 
+ {
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "write": 1, 
+  "role": "Purchase User", 
+  "permlevel": 0
+ }, 
+ {
+  "role": "All", 
+  "permlevel": 1, 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "role": "System Manager", 
+  "permlevel": 1, 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "role": "Purchase User", 
+  "permlevel": 1, 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "role": "Purchase Manager", 
+  "permlevel": 1, 
+  "doctype": "DocPerm"
+ }
 ]
\ No newline at end of file
diff --git a/stock/doctype/packing_slip/packing_slip.js b/stock/doctype/packing_slip/packing_slip.js
index 7e26a09..74f800d 100644
--- a/stock/doctype/packing_slip/packing_slip.js
+++ b/stock/doctype/packing_slip/packing_slip.js
@@ -20,11 +20,9 @@
 
 
 cur_frm.fields_dict['item_details'].grid.get_field('item_code').get_query = function(doc, cdt, cdn) {
-	console.log(doc.delivery_note);
 	var query = 'SELECT name, description FROM `tabItem` WHERE name IN ( \
 		SELECT item_code FROM `tabDelivery Note Item` dnd \
 		WHERE parent="'	+ doc.delivery_note + '" AND IFNULL(qty, 0) > IFNULL(packed_qty, 0)) AND %(key)s LIKE "%s" LIMIT 50';
-	console.log(query);
 	return query;
 }
 
diff --git a/stock/doctype/packing_slip/packing_slip.txt b/stock/doctype/packing_slip/packing_slip.txt
index c610dad..31dc881 100644
--- a/stock/doctype/packing_slip/packing_slip.txt
+++ b/stock/doctype/packing_slip/packing_slip.txt
@@ -1,345 +1,280 @@
-# DocType, Packing Slip
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-05-15 12:15:08',
-		'docstatus': 0,
-		'modified': '2012-06-29 12:24:16',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'_last_update': u'1328091392',
-		'autoname': u'PS.#######',
-		'colour': u'White:FFF',
-		'description': u'Generate packing slips for packages to be delivered. Used to notify package number, package contents and its weight.',
-		'doctype': 'DocType',
-		'document_type': u'Transaction',
-		'is_submittable': 1,
-		'is_transaction_doc': 1,
-		'module': u'Stock',
-		'name': '__common__',
-		'read_only_onload': 1,
-		'search_fields': u'delivery_note',
-		'section_style': u'Simple',
-		'show_in_menu': 0,
-		'subject': u'[%(delivery_note)s] Case Nos: %(from_case_no)s - %(to_case_no)s  |  Net Weight: %(net_weight_pkg)s %(net_weight_uom)s  |  Gross Weight: %(gross_weight_pkg)s %(gross_weight_uom)s',
-		'version': 1
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'Packing Slip',
-		'parentfield': u'fields',
-		'parenttype': u'DocType'
-	},
-
-	# These values are common for all DocPerm
-	{
-		'doctype': u'DocPerm',
-		'name': '__common__',
-		'parent': u'Packing Slip',
-		'parentfield': u'permissions',
-		'parenttype': u'DocType',
-		'read': 1
-	},
-
-	# DocType, Packing Slip
-	{
-		'doctype': 'DocType',
-		'name': u'Packing Slip'
-	},
-
-	# DocPerm
-	{
-		'amend': 1,
-		'cancel': 1,
-		'create': 1,
-		'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'Material User',
-		'submit': 1,
-		'write': 1
-	},
-
-	# DocPerm
-	{
-		'amend': 1,
-		'cancel': 1,
-		'create': 1,
-		'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'Sales User',
-		'submit': 1,
-		'write': 1
-	},
-
-	# DocPerm
-	{
-		'amend': 1,
-		'cancel': 1,
-		'create': 1,
-		'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'Material Master Manager',
-		'submit': 1,
-		'write': 1
-	},
-
-	# DocPerm
-	{
-		'amend': 1,
-		'cancel': 1,
-		'create': 1,
-		'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'Material Manager',
-		'submit': 1,
-		'write': 1
-	},
-
-	# DocPerm
-	{
-		'amend': 1,
-		'cancel': 1,
-		'create': 1,
-		'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'Sales Manager',
-		'submit': 1,
-		'write': 1
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm',
-		'permlevel': 1,
-		'role': u'All'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'packing_slip_details',
-		'fieldtype': u'Section Break',
-		'label': u'Packing Slip Items',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'column_break0',
-		'fieldtype': u'Column Break',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'description': u'Indicates that the package is a part of this delivery',
-		'doctype': u'DocField',
-		'fieldname': u'delivery_note',
-		'fieldtype': u'Link',
-		'label': u'Delivery Note',
-		'options': u'Delivery Note',
-		'permlevel': 0,
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'column_break1',
-		'fieldtype': u'Column Break',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'naming_series',
-		'fieldtype': u'Select',
-		'label': u'Series',
-		'no_copy': 0,
-		'options': u'PS',
-		'permlevel': 0,
-		'print_hide': 1,
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'doctype': u'DocField',
-		'fieldname': u'section_break0',
-		'fieldtype': u'Section Break',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'column_break2',
-		'fieldtype': u'Column Break',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'description': u'Identification of the package for the delivery (for print)',
-		'doctype': u'DocField',
-		'fieldname': u'from_case_no',
-		'fieldtype': u'Data',
-		'label': u'From Package No.',
-		'no_copy': 1,
-		'permlevel': 0,
-		'reqd': 1,
-		'width': u'50px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'column_break3',
-		'fieldtype': u'Column Break',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'description': u'If more than one package of the same type (for print)',
-		'doctype': u'DocField',
-		'fieldname': u'to_case_no',
-		'fieldtype': u'Data',
-		'label': u'To Package No.',
-		'no_copy': 1,
-		'permlevel': 0,
-		'width': u'50px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'package_item_details',
-		'fieldtype': u'Section Break',
-		'label': u'Package Item Details',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'item_details',
-		'fieldtype': u'Table',
-		'label': u'Items',
-		'options': u'Packing Slip Item',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'package_weight_details',
-		'fieldtype': u'Section Break',
-		'label': u'Package Weight Details',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'description': u'The net weight of this package. (calculated automatically as sum of net weight of items)',
-		'doctype': u'DocField',
-		'fieldname': u'net_weight_pkg',
-		'fieldtype': u'Currency',
-		'label': u'Net Weight',
-		'no_copy': 1,
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'doctype': u'DocField',
-		'fieldname': u'net_weight_uom',
-		'fieldtype': u'Data',
-		'label': u'Net Weight UOM',
-		'no_copy': 1,
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'column_break4',
-		'fieldtype': u'Column Break',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'description': u'The gross weight of the package. Usually net weight + packaging material weight. (for print)',
-		'doctype': u'DocField',
-		'fieldname': u'gross_weight_pkg',
-		'fieldtype': u'Currency',
-		'label': u'Gross Weight',
-		'no_copy': 1,
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'doctype': u'DocField',
-		'fieldname': u'gross_weight_uom',
-		'fieldtype': u'Link',
-		'label': u'Gross Weight UOM',
-		'no_copy': 1,
-		'options': u'UOM',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'doctype': u'DocField',
-		'fieldname': u'misc_details',
-		'fieldtype': u'Section Break',
-		'label': u'Misc Details',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'amended_from',
-		'fieldtype': u'Link',
-		'label': u'Amended From',
-		'no_copy': 1,
-		'options': u'Packing Slip',
-		'permlevel': 1,
-		'print_hide': 1
-	},
-
-	# DocField
-	{
-		'depends_on': u'eval:doc.amended_from',
-		'description': u'The date at which current entry is corrected in the system.',
-		'doctype': u'DocField',
-		'fieldname': u'amendment_date',
-		'fieldtype': u'Date',
-		'label': u'Amendment Date',
-		'no_copy': 1,
-		'permlevel': 0,
-		'print_hide': 1
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-05-15 12:15:08", 
+  "modified_by": "Administrator", 
+  "modified": "2012-06-29 12:24:16"
+ }, 
+ {
+  "section_style": "Simple", 
+  "description": "Generate packing slips for packages to be delivered. Used to notify package number, package contents and its weight.", 
+  "is_submittable": 1, 
+  "search_fields": "delivery_note", 
+  "module": "Stock", 
+  "doctype": "DocType", 
+  "read_only_onload": 1, 
+  "document_type": "Transaction", 
+  "subject": "[%(delivery_note)s] Case Nos: %(from_case_no)s - %(to_case_no)s  |  Net Weight: %(net_weight_pkg)s %(net_weight_uom)s  |  Gross Weight: %(gross_weight_pkg)s %(gross_weight_uom)s", 
+  "autoname": "PS.#######", 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "is_transaction_doc": 1, 
+  "_last_update": "1328091392", 
+  "show_in_menu": 0, 
+  "version": 1
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Packing Slip", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Packing Slip", 
+  "read": 1, 
+  "doctype": "DocPerm", 
+  "parenttype": "DocType", 
+  "parentfield": "permissions"
+ }, 
+ {
+  "name": "Packing Slip", 
+  "doctype": "DocType"
+ }, 
+ {
+  "amend": 1, 
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "submit": 1, 
+  "write": 1, 
+  "role": "Material User", 
+  "cancel": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "amend": 1, 
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "submit": 1, 
+  "write": 1, 
+  "role": "Sales User", 
+  "cancel": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "amend": 1, 
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "submit": 1, 
+  "write": 1, 
+  "role": "Material Master Manager", 
+  "cancel": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "amend": 1, 
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "submit": 1, 
+  "write": 1, 
+  "role": "Material Manager", 
+  "cancel": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "amend": 1, 
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "submit": 1, 
+  "write": 1, 
+  "role": "Sales Manager", 
+  "cancel": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "role": "All", 
+  "permlevel": 1, 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Packing Slip Items", 
+  "fieldname": "packing_slip_details", 
+  "fieldtype": "Section Break", 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "fieldname": "column_break0", 
+  "fieldtype": "Column Break", 
+  "permlevel": 0
+ }, 
+ {
+  "description": "Indicates that the package is a part of this delivery", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Delivery Note", 
+  "permlevel": 0, 
+  "fieldname": "delivery_note", 
+  "fieldtype": "Link", 
+  "reqd": 1, 
+  "options": "Delivery Note"
+ }, 
+ {
+  "doctype": "DocField", 
+  "fieldname": "column_break1", 
+  "fieldtype": "Column Break", 
+  "permlevel": 0
+ }, 
+ {
+  "print_hide": 1, 
+  "no_copy": 0, 
+  "doctype": "DocField", 
+  "label": "Series", 
+  "permlevel": 0, 
+  "fieldname": "naming_series", 
+  "fieldtype": "Select", 
+  "reqd": 1, 
+  "options": "PS"
+ }, 
+ {
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "fieldname": "section_break0", 
+  "fieldtype": "Section Break", 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "fieldname": "column_break2", 
+  "fieldtype": "Column Break", 
+  "permlevel": 0
+ }, 
+ {
+  "description": "Identification of the package for the delivery (for print)", 
+  "no_copy": 1, 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "From Package No.", 
+  "width": "50px", 
+  "fieldname": "from_case_no", 
+  "fieldtype": "Data", 
+  "reqd": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "fieldname": "column_break3", 
+  "fieldtype": "Column Break", 
+  "permlevel": 0
+ }, 
+ {
+  "description": "If more than one package of the same type (for print)", 
+  "no_copy": 1, 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "To Package No.", 
+  "width": "50px", 
+  "fieldname": "to_case_no", 
+  "fieldtype": "Data", 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Package Item Details", 
+  "fieldname": "package_item_details", 
+  "fieldtype": "Section Break", 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "options": "Packing Slip Item", 
+  "fieldname": "item_details", 
+  "fieldtype": "Table", 
+  "label": "Items", 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Package Weight Details", 
+  "fieldname": "package_weight_details", 
+  "fieldtype": "Section Break", 
+  "permlevel": 0
+ }, 
+ {
+  "description": "The net weight of this package. (calculated automatically as sum of net weight of items)", 
+  "no_copy": 1, 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Net Weight", 
+  "fieldname": "net_weight_pkg", 
+  "fieldtype": "Currency", 
+  "permlevel": 1
+ }, 
+ {
+  "no_copy": 1, 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Net Weight UOM", 
+  "fieldname": "net_weight_uom", 
+  "fieldtype": "Data", 
+  "permlevel": 1
+ }, 
+ {
+  "doctype": "DocField", 
+  "fieldname": "column_break4", 
+  "fieldtype": "Column Break", 
+  "permlevel": 0
+ }, 
+ {
+  "description": "The gross weight of the package. Usually net weight + packaging material weight. (for print)", 
+  "no_copy": 1, 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Gross Weight", 
+  "fieldname": "gross_weight_pkg", 
+  "fieldtype": "Currency", 
+  "permlevel": 0
+ }, 
+ {
+  "no_copy": 1, 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Gross Weight UOM", 
+  "permlevel": 0, 
+  "fieldname": "gross_weight_uom", 
+  "fieldtype": "Link", 
+  "options": "UOM"
+ }, 
+ {
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Misc Details", 
+  "fieldname": "misc_details", 
+  "fieldtype": "Section Break", 
+  "permlevel": 0
+ }, 
+ {
+  "print_hide": 1, 
+  "no_copy": 1, 
+  "doctype": "DocField", 
+  "label": "Amended From", 
+  "permlevel": 1, 
+  "fieldname": "amended_from", 
+  "fieldtype": "Link", 
+  "options": "Packing Slip"
+ }, 
+ {
+  "print_hide": 1, 
+  "description": "The date at which current entry is corrected in the system.", 
+  "no_copy": 1, 
+  "depends_on": "eval:doc.amended_from", 
+  "doctype": "DocField", 
+  "label": "Amendment Date", 
+  "fieldname": "amendment_date", 
+  "fieldtype": "Date", 
+  "permlevel": 0
+ }
 ]
\ No newline at end of file
diff --git a/stock/doctype/packing_slip_item/packing_slip_item.txt b/stock/doctype/packing_slip_item/packing_slip_item.txt
index 66376a4..5c85431 100644
--- a/stock/doctype/packing_slip_item/packing_slip_item.txt
+++ b/stock/doctype/packing_slip_item/packing_slip_item.txt
@@ -1,113 +1,90 @@
-# DocType, Packing Slip Item
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:36:34',
-		'docstatus': 0,
-		'modified': '2012-03-27 14:36:34',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'autoname': u'PSD/.#######',
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'istable': 1,
-		'module': u'Stock',
-		'name': '__common__',
-		'section_style': u'Simple',
-		'show_in_menu': 0,
-		'version': 9
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'Packing Slip Item',
-		'parentfield': u'fields',
-		'parenttype': u'DocType'
-	},
-
-	# DocType, Packing Slip Item
-	{
-		'doctype': 'DocType',
-		'name': u'Packing Slip Item'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'item_code',
-		'fieldtype': u'Link',
-		'label': u'Item Code',
-		'options': u'Item',
-		'permlevel': 0,
-		'reqd': 1,
-		'width': u'100px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'item_name',
-		'fieldtype': u'Data',
-		'label': u'Item Name',
-		'permlevel': 1,
-		'width': u'200px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'qty',
-		'fieldtype': u'Currency',
-		'label': u'Quantity',
-		'permlevel': 0,
-		'reqd': 1,
-		'width': u'100px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'stock_uom',
-		'fieldtype': u'Data',
-		'label': u'UOM',
-		'permlevel': 1,
-		'width': u'100px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'net_weight',
-		'fieldtype': u'Float',
-		'label': u'Net Weight',
-		'permlevel': 1,
-		'width': u'100px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'weight_uom',
-		'fieldtype': u'Link',
-		'label': u'Weight UOM',
-		'options': u'UOM',
-		'permlevel': 1,
-		'width': u'100px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'page_break',
-		'fieldtype': u'Check',
-		'label': u'Page Break',
-		'permlevel': 0
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-03-27 14:36:34", 
+  "modified_by": "Administrator", 
+  "modified": "2012-03-27 14:36:34"
+ }, 
+ {
+  "section_style": "Simple", 
+  "istable": 1, 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "module": "Stock", 
+  "doctype": "DocType", 
+  "version": 9, 
+  "autoname": "PSD/.#######", 
+  "show_in_menu": 0
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Packing Slip Item", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "Packing Slip Item", 
+  "doctype": "DocType"
+ }, 
+ {
+  "permlevel": 0, 
+  "doctype": "DocField", 
+  "label": "Item Code", 
+  "width": "100px", 
+  "fieldname": "item_code", 
+  "fieldtype": "Link", 
+  "reqd": 1, 
+  "options": "Item"
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Item Name", 
+  "width": "200px", 
+  "fieldname": "item_name", 
+  "fieldtype": "Data", 
+  "permlevel": 1
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Quantity", 
+  "width": "100px", 
+  "fieldname": "qty", 
+  "fieldtype": "Currency", 
+  "reqd": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "UOM", 
+  "width": "100px", 
+  "fieldname": "stock_uom", 
+  "fieldtype": "Data", 
+  "permlevel": 1
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Net Weight", 
+  "width": "100px", 
+  "fieldname": "net_weight", 
+  "fieldtype": "Float", 
+  "permlevel": 1
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Weight UOM", 
+  "width": "100px", 
+  "options": "UOM", 
+  "fieldname": "weight_uom", 
+  "fieldtype": "Link", 
+  "permlevel": 1
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Page Break", 
+  "fieldname": "page_break", 
+  "fieldtype": "Check", 
+  "permlevel": 0
+ }
 ]
\ No newline at end of file
diff --git a/stock/doctype/purchase_receipt/purchase_receipt.py b/stock/doctype/purchase_receipt/purchase_receipt.py
index 9e23c27..4683abb 100644
--- a/stock/doctype/purchase_receipt/purchase_receipt.py
+++ b/stock/doctype/purchase_receipt/purchase_receipt.py
@@ -375,7 +375,11 @@
 
 	def add_bom(self, d):
 		#----- fetching default bom from Bill of Materials instead of Item Master --
-		bom_det = sql("select t1.item, t2.item_code, t2.qty_consumed_per_unit, t2.moving_avg_rate, t2.value_as_per_mar, t2.stock_uom, t2.name, t2.description from `tabBOM` t1, `tabBOM Item` t2 where t2.parent = t1.name and t1.item = '%s' and ifnull(t1.is_default,0) = 1 and t1.docstatus = 1 and t2.docstatus =1" % d.item_code)
+		bom_det = sql("""select t1.item, t2.item_code, t2.qty_consumed_per_unit, 
+			t2.moving_avg_rate, t2.value_as_per_mar, t2.stock_uom, t2.name, t2.description 
+			from `tabBOM` t1, `tabBOM Item` t2 
+			where t2.parent = t1.name and t1.item = %s and t1.is_default = 1 
+			and t1.docstatus = 1 and t2.docstatus =1 and t1.is_active = 1""", d.item_code)
 		if not bom_det:
 			msgprint("No default BOM exists for item: %s" % d.item_code)
 			raise Exception
diff --git a/stock/doctype/sales_and_purchase_return_tool/sales_and_purchase_return_tool.txt b/stock/doctype/sales_and_purchase_return_tool/sales_and_purchase_return_tool.txt
index 0952f1d..ae3d83f 100644
--- a/stock/doctype/sales_and_purchase_return_tool/sales_and_purchase_return_tool.txt
+++ b/stock/doctype/sales_and_purchase_return_tool/sales_and_purchase_return_tool.txt
@@ -1,291 +1,240 @@
-# DocType, Sales and Purchase Return Tool
 [
-
-	# These values are common in all dictionaries
-	{
-		u'creation': '2012-09-19 12:24:41',
-		u'docstatus': 0,
-		u'modified': '2012-10-02 10:40:14',
-		u'modified_by': u'Administrator',
-		u'owner': u'wasim@webnotestech.com'
-	},
-
-	# These values are common for all DocType
-	{
-		'colour': u'White:FFF',
-		u'doctype': u'DocType',
-		'is_transaction_doc': 0,
-		'issingle': 1,
-		'istable': 0,
-		'menu_index': 1,
-		'module': u'Stock',
-		u'name': u'__common__',
-		'parent_node': u'Materials',
-		'section_style': u'Simple',
-		'server_code_error': u' ',
-		'show_in_menu': 1,
-		'version': 1
-	},
-
-	# These values are common for all DocField
-	{
-		u'doctype': u'DocField',
-		u'name': u'__common__',
-		'parent': u'Sales and Purchase Return Tool',
-		'parentfield': u'fields',
-		'parenttype': u'DocType'
-	},
-
-	# These values are common for all DocPerm
-	{
-		u'doctype': u'DocPerm',
-		u'name': u'__common__',
-		'parent': u'Sales and Purchase Return Tool',
-		'parentfield': u'permissions',
-		'parenttype': u'DocType',
-		'read': 1
-	},
-
-	# DocType, Sales and Purchase Return Tool
-	{
-		u'doctype': u'DocType',
-		u'name': u'Sales and Purchase Return Tool'
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'return_date',
-		'fieldtype': u'Date',
-		'label': u'Return Date',
-		'no_copy': 1,
-		'oldfieldname': u'return_date',
-		'oldfieldtype': u'Date',
-		'permlevel': 0,
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'return_type',
-		'fieldtype': u'Select',
-		'label': u'Return Type',
-		'no_copy': 1,
-		'oldfieldname': u'return_type',
-		'oldfieldtype': u'Select',
-		'options': u'\nSales Return\nPurchase Return',
-		'permlevel': 0,
-		'reqd': 1,
-		'trigger': u'Client'
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'delivery_note_no',
-		'fieldtype': u'Link',
-		'hidden': 1,
-		'label': u'Delivery Note No',
-		'no_copy': 1,
-		'oldfieldname': u'delivery_note_no',
-		'oldfieldtype': u'Link',
-		'options': u'Delivery Note',
-		'permlevel': 0,
-		'reqd': 0
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'sales_invoice_no',
-		'fieldtype': u'Link',
-		'hidden': 1,
-		'label': u'Sales Invoice No',
-		'options': u'Sales Invoice',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'purchase_receipt_no',
-		'fieldtype': u'Link',
-		'hidden': 1,
-		'label': u'Purchase Receipt No',
-		'no_copy': 1,
-		'oldfieldname': u'purchase_receipt_no',
-		'oldfieldtype': u'Link',
-		'options': u'Purchase Receipt',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'cust_supp',
-		'fieldtype': u'Data',
-		'hidden': 1,
-		'label': u'Customer/Supplier',
-		'permlevel': 1,
-		'print_hide': 1
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'cust_supp_name',
-		'fieldtype': u'Data',
-		'hidden': 1,
-		'label': u'Cust/Supp Name',
-		'permlevel': 1,
-		'print_hide': 1
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'cust_supp_address',
-		'fieldtype': u'Small Text',
-		'hidden': 1,
-		'label': u'Cust/Supp Address',
-		'permlevel': 1,
-		'print_hide': 1
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		u'doctype': u'DocField',
-		'fieldname': u'get_items',
-		'fieldtype': u'Button',
-		'hidden': 1,
-		'label': u'Get Items',
-		'oldfieldtype': u'Button',
-		'permlevel': 0,
-		'trigger': u'Client'
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'return_details',
-		'fieldtype': u'Table',
-		'hidden': 1,
-		'label': u'Sales and Purchase Return Items',
-		'no_copy': 1,
-		'oldfieldname': u'return_details',
-		'oldfieldtype': u'Table',
-		'options': u'Sales and Purchase Return Item',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'make_stock_entry',
-		'fieldtype': u'Button',
-		'hidden': 1,
-		'label': u'Make Stock Entry',
-		'oldfieldtype': u'Button',
-		'permlevel': 0,
-		'trigger': u'Client'
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'make_excise_invoice',
-		'fieldtype': u'Button',
-		'hidden': 1,
-		'label': u'Make Excise Invoice',
-		'oldfieldtype': u'Button',
-		'permlevel': 0,
-		'trigger': u'Client'
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'make_credit_note',
-		'fieldtype': u'Button',
-		'hidden': 1,
-		'label': u'Make Credit Note',
-		'oldfieldtype': u'Button',
-		'permlevel': 0,
-		'trigger': u'Client'
-	},
-
-	# DocField
-	{
-		u'doctype': u'DocField',
-		'fieldname': u'make_debit_note',
-		'fieldtype': u'Button',
-		'hidden': 1,
-		'label': u'Make Debit Note',
-		'oldfieldtype': u'Button',
-		'permlevel': 0,
-		'trigger': u'Client'
-	},
-
-	# DocPerm
-	{
-		'amend': 0,
-		'cancel': 0,
-		'create': 1,
-		u'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'Material User',
-		'submit': 0,
-		'write': 1
-	},
-
-	# DocPerm
-	{
-		'amend': 0,
-		'cancel': 0,
-		'create': 1,
-		u'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'Material Manager',
-		'submit': 0,
-		'write': 1
-	},
-
-	# DocPerm
-	{
-		'amend': 0,
-		'cancel': 0,
-		'create': 1,
-		u'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'System Manager',
-		'submit': 0,
-		'write': 1
-	},
-
-	# DocPerm
-	{
-		'create': 1,
-		u'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'Accounts Manager',
-		'write': 1
-	},
-
-	# DocPerm
-	{
-		'create': 1,
-		u'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'Accounts User',
-		'write': 1
-	},
-
-	# DocPerm
-	{
-		u'doctype': u'DocPerm',
-		'permlevel': 1,
-		'role': u'All'
-	}
+ {
+  "owner": "wasim@webnotestech.com", 
+  "docstatus": 0, 
+  "creation": "2012-09-19 12:24:41", 
+  "modified_by": "Administrator", 
+  "modified": "2012-10-02 10:40:14"
+ }, 
+ {
+  "section_style": "Simple", 
+  "istable": 0, 
+  "module": "Stock", 
+  "doctype": "DocType", 
+  "issingle": 1, 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "is_transaction_doc": 0, 
+  "server_code_error": " ", 
+  "show_in_menu": 1, 
+  "version": 1, 
+  "menu_index": 1, 
+  "parent_node": "Materials"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Sales and Purchase Return Tool", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Sales and Purchase Return Tool", 
+  "read": 1, 
+  "doctype": "DocPerm", 
+  "parenttype": "DocType", 
+  "parentfield": "permissions"
+ }, 
+ {
+  "name": "Sales and Purchase Return Tool", 
+  "doctype": "DocType"
+ }, 
+ {
+  "no_copy": 1, 
+  "oldfieldtype": "Date", 
+  "doctype": "DocField", 
+  "label": "Return Date", 
+  "oldfieldname": "return_date", 
+  "fieldname": "return_date", 
+  "fieldtype": "Date", 
+  "reqd": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "no_copy": 1, 
+  "oldfieldtype": "Select", 
+  "doctype": "DocField", 
+  "label": "Return Type", 
+  "oldfieldname": "return_type", 
+  "trigger": "Client", 
+  "fieldname": "return_type", 
+  "fieldtype": "Select", 
+  "reqd": 1, 
+  "options": "\nSales Return\nPurchase Return", 
+  "permlevel": 0
+ }, 
+ {
+  "no_copy": 1, 
+  "oldfieldtype": "Link", 
+  "doctype": "DocField", 
+  "label": "Delivery Note No", 
+  "oldfieldname": "delivery_note_no", 
+  "options": "Delivery Note", 
+  "fieldname": "delivery_note_no", 
+  "fieldtype": "Link", 
+  "reqd": 0, 
+  "hidden": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Sales Invoice No", 
+  "permlevel": 0, 
+  "fieldname": "sales_invoice_no", 
+  "fieldtype": "Link", 
+  "hidden": 1, 
+  "options": "Sales Invoice"
+ }, 
+ {
+  "no_copy": 1, 
+  "oldfieldtype": "Link", 
+  "doctype": "DocField", 
+  "label": "Purchase Receipt No", 
+  "oldfieldname": "purchase_receipt_no", 
+  "permlevel": 0, 
+  "fieldname": "purchase_receipt_no", 
+  "fieldtype": "Link", 
+  "hidden": 1, 
+  "options": "Purchase Receipt"
+ }, 
+ {
+  "print_hide": 1, 
+  "doctype": "DocField", 
+  "label": "Customer/Supplier", 
+  "fieldname": "cust_supp", 
+  "fieldtype": "Data", 
+  "hidden": 1, 
+  "permlevel": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "doctype": "DocField", 
+  "label": "Cust/Supp Name", 
+  "fieldname": "cust_supp_name", 
+  "fieldtype": "Data", 
+  "hidden": 1, 
+  "permlevel": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "doctype": "DocField", 
+  "label": "Cust/Supp Address", 
+  "fieldname": "cust_supp_address", 
+  "fieldtype": "Small Text", 
+  "hidden": 1, 
+  "permlevel": 1
+ }, 
+ {
+  "oldfieldtype": "Button", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Get Items", 
+  "trigger": "Client", 
+  "fieldname": "get_items", 
+  "fieldtype": "Button", 
+  "hidden": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "no_copy": 1, 
+  "oldfieldtype": "Table", 
+  "doctype": "DocField", 
+  "label": "Sales and Purchase Return Items", 
+  "oldfieldname": "return_details", 
+  "permlevel": 1, 
+  "fieldname": "return_details", 
+  "fieldtype": "Table", 
+  "hidden": 1, 
+  "options": "Sales and Purchase Return Item"
+ }, 
+ {
+  "oldfieldtype": "Button", 
+  "doctype": "DocField", 
+  "label": "Make Stock Entry", 
+  "trigger": "Client", 
+  "fieldname": "make_stock_entry", 
+  "fieldtype": "Button", 
+  "hidden": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Button", 
+  "doctype": "DocField", 
+  "label": "Make Excise Invoice", 
+  "trigger": "Client", 
+  "fieldname": "make_excise_invoice", 
+  "fieldtype": "Button", 
+  "hidden": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Button", 
+  "doctype": "DocField", 
+  "label": "Make Credit Note", 
+  "trigger": "Client", 
+  "fieldname": "make_credit_note", 
+  "fieldtype": "Button", 
+  "hidden": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Button", 
+  "doctype": "DocField", 
+  "label": "Make Debit Note", 
+  "trigger": "Client", 
+  "fieldname": "make_debit_note", 
+  "fieldtype": "Button", 
+  "hidden": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "amend": 0, 
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "submit": 0, 
+  "write": 1, 
+  "role": "Material User", 
+  "cancel": 0, 
+  "permlevel": 0
+ }, 
+ {
+  "amend": 0, 
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "submit": 0, 
+  "write": 1, 
+  "role": "Material Manager", 
+  "cancel": 0, 
+  "permlevel": 0
+ }, 
+ {
+  "amend": 0, 
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "submit": 0, 
+  "write": 1, 
+  "role": "System Manager", 
+  "cancel": 0, 
+  "permlevel": 0
+ }, 
+ {
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "write": 1, 
+  "role": "Accounts Manager", 
+  "permlevel": 0
+ }, 
+ {
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "write": 1, 
+  "role": "Accounts User", 
+  "permlevel": 0
+ }, 
+ {
+  "role": "All", 
+  "permlevel": 1, 
+  "doctype": "DocPerm"
+ }
 ]
\ No newline at end of file
diff --git a/stock/doctype/sales_bom/sales_bom.txt b/stock/doctype/sales_bom/sales_bom.txt
index 7426821..29a70b8 100644
--- a/stock/doctype/sales_bom/sales_bom.txt
+++ b/stock/doctype/sales_bom/sales_bom.txt
@@ -1,162 +1,131 @@
-# DocType, Sales BOM
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-07-03 13:30:44',
-		'docstatus': 0,
-		'modified': '2012-07-12 18:00:16',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'_last_update': u'1322549701',
-		'allow_trash': 1,
-		'colour': u'White:FFF',
-		'description': u'Aggregate group of **Items** into another **Item**. This is useful if you are bundling a certain **Items** into a package and you maintain stock of the packed **Items** and not the aggregate **Item**. \n\nThe package **Item** will have "Is Stock Item" as "No" and "Is Sales Item" as "Yes".\n\nFor Example: If you are selling Laptops and Backpacks separately and have a special price if the customer buys both, then the Laptop + Backpack will be a new Sales BOM Item.\n\nNote: BOM = Bill of Materials',
-		'doctype': 'DocType',
-		'document_type': u'Master',
-		'is_submittable': 0,
-		'module': u'Stock',
-		'name': '__common__',
-		'section_style': u'Simple',
-		'server_code_error': u' ',
-		'show_in_menu': 0,
-		'version': 1
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'Sales BOM',
-		'parentfield': u'fields',
-		'parenttype': u'DocType',
-		'permlevel': 0
-	},
-
-	# These values are common for all DocPerm
-	{
-		'amend': 0,
-		'doctype': u'DocPerm',
-		'name': '__common__',
-		'parent': u'Sales BOM',
-		'parentfield': u'permissions',
-		'parenttype': u'DocType',
-		'read': 1,
-		'submit': 0
-	},
-
-	# DocType, Sales BOM
-	{
-		'doctype': 'DocType',
-		'name': u'Sales BOM'
-	},
-
-	# DocPerm
-	{
-		'cancel': 0,
-		'create': 1,
-		'doctype': u'DocPerm',
-		'permlevel': 1,
-		'role': u'Material Manager',
-		'write': 1
-	},
-
-	# DocPerm
-	{
-		'cancel': 1,
-		'create': 1,
-		'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'Material Manager',
-		'write': 1
-	},
-
-	# DocPerm
-	{
-		'cancel': 0,
-		'create': 0,
-		'doctype': u'DocPerm',
-		'permlevel': 1,
-		'role': u'Material User',
-		'write': 0
-	},
-
-	# DocPerm
-	{
-		'cancel': 0,
-		'create': 0,
-		'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'Material User',
-		'write': 0
-	},
-
-	# DocPerm
-	{
-		'cancel': 1,
-		'create': 1,
-		'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'Sales User',
-		'write': 1
-	},
-
-	# DocPerm
-	{
-		'cancel': 0,
-		'create': 0,
-		'doctype': u'DocPerm',
-		'permlevel': 1,
-		'role': u'Sales User',
-		'write': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'basic_section',
-		'fieldtype': u'Section Break',
-		'label': u'Sales BOM Item'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'description': u'The Item that represents the Package. This Item must have "Is Stock Item" as "No" and "Is Sales Item" as "Yes"',
-		'doctype': u'DocField',
-		'fieldname': u'new_item_code',
-		'fieldtype': u'Link',
-		'label': u'Parent Item',
-		'no_copy': 1,
-		'oldfieldname': u'new_item_code',
-		'oldfieldtype': u'Data',
-		'options': u'Item',
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'description': u'List items that form the package.',
-		'doctype': u'DocField',
-		'fieldname': u'item_section',
-		'fieldtype': u'Section Break',
-		'label': u'Package Items'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'sales_bom_items',
-		'fieldtype': u'Table',
-		'label': u'Sales BOM Items',
-		'oldfieldname': u'sales_bom_items',
-		'oldfieldtype': u'Table',
-		'options': u'Sales BOM Item',
-		'reqd': 1
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-07-03 13:30:44", 
+  "modified_by": "Administrator", 
+  "modified": "2012-07-12 18:00:16"
+ }, 
+ {
+  "section_style": "Simple", 
+  "description": "Aggregate group of **Items** into another **Item**. This is useful if you are bundling a certain **Items** into a package and you maintain stock of the packed **Items** and not the aggregate **Item**. \n\nThe package **Item** will have \"Is Stock Item\" as \"No\" and \"Is Sales Item\" as \"Yes\".\n\nFor Example: If you are selling Laptops and Backpacks separately and have a special price if the customer buys both, then the Laptop + Backpack will be a new Sales BOM Item.\n\nNote: BOM = Bill of Materials", 
+  "is_submittable": 0, 
+  "module": "Stock", 
+  "doctype": "DocType", 
+  "allow_trash": 1, 
+  "server_code_error": " ", 
+  "document_type": "Master", 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "_last_update": "1322549701", 
+  "show_in_menu": 0, 
+  "version": 1
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Sales BOM", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "permlevel": 0, 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Sales BOM", 
+  "read": 1, 
+  "doctype": "DocPerm", 
+  "submit": 0, 
+  "amend": 0, 
+  "parenttype": "DocType", 
+  "parentfield": "permissions"
+ }, 
+ {
+  "name": "Sales BOM", 
+  "doctype": "DocType"
+ }, 
+ {
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "write": 1, 
+  "role": "Material Manager", 
+  "cancel": 0, 
+  "permlevel": 1
+ }, 
+ {
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "write": 1, 
+  "role": "Material Manager", 
+  "cancel": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "create": 0, 
+  "doctype": "DocPerm", 
+  "write": 0, 
+  "role": "Material User", 
+  "cancel": 0, 
+  "permlevel": 1
+ }, 
+ {
+  "create": 0, 
+  "doctype": "DocPerm", 
+  "write": 0, 
+  "role": "Material User", 
+  "cancel": 0, 
+  "permlevel": 0
+ }, 
+ {
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "write": 1, 
+  "role": "Sales User", 
+  "cancel": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "create": 0, 
+  "doctype": "DocPerm", 
+  "write": 0, 
+  "role": "Sales User", 
+  "cancel": 0, 
+  "permlevel": 1
+ }, 
+ {
+  "doctype": "DocField", 
+  "fieldname": "basic_section", 
+  "fieldtype": "Section Break", 
+  "label": "Sales BOM Item"
+ }, 
+ {
+  "description": "The Item that represents the Package. This Item must have \"Is Stock Item\" as \"No\" and \"Is Sales Item\" as \"Yes\"", 
+  "no_copy": 1, 
+  "oldfieldtype": "Data", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Parent Item", 
+  "oldfieldname": "new_item_code", 
+  "fieldname": "new_item_code", 
+  "fieldtype": "Link", 
+  "reqd": 1, 
+  "options": "Item"
+ }, 
+ {
+  "description": "List items that form the package.", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Package Items", 
+  "fieldname": "item_section", 
+  "fieldtype": "Section Break"
+ }, 
+ {
+  "oldfieldtype": "Table", 
+  "doctype": "DocField", 
+  "label": "Sales BOM Items", 
+  "oldfieldname": "sales_bom_items", 
+  "fieldname": "sales_bom_items", 
+  "fieldtype": "Table", 
+  "reqd": 1, 
+  "options": "Sales BOM Item"
+ }
 ]
\ No newline at end of file
diff --git a/stock/doctype/sales_bom_item/sales_bom_item.txt b/stock/doctype/sales_bom_item/sales_bom_item.txt
index 76e3f26..1e9cb3c 100644
--- a/stock/doctype/sales_bom_item/sales_bom_item.txt
+++ b/stock/doctype/sales_bom_item/sales_bom_item.txt
@@ -1,102 +1,83 @@
-# DocType, Sales BOM Item
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-07-03 13:30:46',
-		'docstatus': 0,
-		'modified': '2012-07-11 18:56:27',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'istable': 1,
-		'module': u'Stock',
-		'name': '__common__',
-		'section_style': u'Tray',
-		'server_code_error': u' ',
-		'show_in_menu': 0,
-		'version': 1
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'Sales BOM Item',
-		'parentfield': u'fields',
-		'parenttype': u'DocType'
-	},
-
-	# DocType, Sales BOM Item
-	{
-		'doctype': 'DocType',
-		'name': u'Sales BOM Item'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'item_code',
-		'fieldtype': u'Link',
-		'label': u'Item',
-		'oldfieldname': u'item_code',
-		'oldfieldtype': u'Link',
-		'options': u'Item',
-		'permlevel': 0,
-		'reqd': 1,
-		'trigger': u'Client'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'qty',
-		'fieldtype': u'Currency',
-		'label': u'Qty',
-		'oldfieldname': u'qty',
-		'oldfieldtype': u'Currency',
-		'permlevel': 0,
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'description',
-		'fieldtype': u'Text',
-		'label': u'Description',
-		'oldfieldname': u'description',
-		'oldfieldtype': u'Text',
-		'permlevel': 0,
-		'width': u'300px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'rate',
-		'fieldtype': u'Currency',
-		'label': u'Rate',
-		'oldfieldname': u'rate',
-		'oldfieldtype': u'Currency',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'uom',
-		'fieldtype': u'Link',
-		'label': u'UOM',
-		'oldfieldname': u'uom',
-		'oldfieldtype': u'Link',
-		'options': u'UOM',
-		'permlevel': 1,
-		'search_index': 0
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-07-03 13:30:46", 
+  "modified_by": "Administrator", 
+  "modified": "2012-07-11 18:56:27"
+ }, 
+ {
+  "section_style": "Tray", 
+  "istable": 1, 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "module": "Stock", 
+  "show_in_menu": 0, 
+  "version": 1, 
+  "server_code_error": " ", 
+  "doctype": "DocType"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Sales BOM Item", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "Sales BOM Item", 
+  "doctype": "DocType"
+ }, 
+ {
+  "oldfieldtype": "Link", 
+  "doctype": "DocField", 
+  "label": "Item", 
+  "oldfieldname": "item_code", 
+  "permlevel": 0, 
+  "trigger": "Client", 
+  "fieldname": "item_code", 
+  "fieldtype": "Link", 
+  "reqd": 1, 
+  "options": "Item"
+ }, 
+ {
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Qty", 
+  "oldfieldname": "qty", 
+  "fieldname": "qty", 
+  "fieldtype": "Currency", 
+  "reqd": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Text", 
+  "doctype": "DocField", 
+  "label": "Description", 
+  "oldfieldname": "description", 
+  "width": "300px", 
+  "fieldname": "description", 
+  "fieldtype": "Text", 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Rate", 
+  "oldfieldname": "rate", 
+  "fieldname": "rate", 
+  "fieldtype": "Currency", 
+  "permlevel": 0
+ }, 
+ {
+  "search_index": 0, 
+  "doctype": "DocField", 
+  "label": "UOM", 
+  "oldfieldname": "uom", 
+  "permlevel": 1, 
+  "fieldname": "uom", 
+  "fieldtype": "Link", 
+  "oldfieldtype": "Link", 
+  "options": "UOM"
+ }
 ]
\ No newline at end of file
diff --git a/stock/doctype/stock_entry/stock_entry.js b/stock/doctype/stock_entry/stock_entry.js
index 5805b2a..e48bb11 100644
--- a/stock/doctype/stock_entry/stock_entry.js
+++ b/stock/doctype/stock_entry/stock_entry.js
@@ -14,81 +14,68 @@
 // You should have received a copy of the GNU General Public License
 // along with this program.	If not, see <http://www.gnu.org/licenses/>.
 
-cur_frm.cscript.onload = function(doc, cdt, cdn) {
-	if (!doc.posting_date) doc.posting_date = dateutil.obj_to_str(new Date());
-	if (!doc.transfer_date) doc.transfer_date = dateutil.obj_to_str(new Date());
-	if(!doc.purpose) set_multiple(cdt, cdn, {purpose:'Material Issue'});
-	cfn_set_fields(doc, cdt, cdn);
-}
+wn.provide("erpnext.stock");
 
-
-var cfn_set_fields = function(doc, cdt, cdn) {
-	lst = ['supplier', 'supplier_name', 'supplier_address', 
-		'customer', 'customer_name', 'customer_address'];
-	if (in_list(['Material Issue', 'Material Transfer', 'Material Receipt', 'Sales Return',
-	 	'Purchase Return', 'Production Order', 'Subcontracting', 'Other'], doc.purpose)) {
-		hide_field(lst);
-		$(cur_frm.fields_dict.contact_section.row.wrapper).toggle(false);
-	} else unhide_field(lst);
-
-	if (doc.purpose == 'Production Order' || doc.purpose == 'Other') {
-		unhide_field('get_items');
-		hide_field(['from_warehouse', 'to_warehouse','purchase_receipt_no', 
-			'delivery_note_no', 'sales_invoice_no','warehouse_html', 
-			'transporter', 'is_excisable_goods', 'excisable_goods']);
-		if (doc.purpose=='Production Order') unhide_field(['production_order', 'process']);
-		else {
-			doc.production_order = doc.process = '';
-			hide_field(['production_order', 'process']);
+erpnext.stock.StockEntry = erpnext.utils.Controller.extend({
+	onload_post_render: function() {
+		this._super();
+		if(this.frm.doc.__islocal && (this.frm.doc.production_order || this.frm.doc.bom_no) 
+			&& !getchildren('Stock Entry Detail', this.frm.doc.name, 'mtn_details').length) {
+				// if production order / bom is mentioned, get items
+				this.get_items();
 		}
-
-		doc.from_warehouse = '';
-		doc.to_warehouse = '';
-		refresh_field(['from_warehosue', 'to_warehouse']);
-		if (doc.process == 'Backflush' || doc.purpose == 'Other') {
-			unhide_field('fg_completed_qty');
-		}
-		else{
-			hide_field('fg_completed_qty');
-			doc.fg_completed_qty = 0;
-		}
-	} else {
-		unhide_field(['from_warehouse', 'to_warehouse']);
-		hide_field(['production_order', 'process', 'get_items',	'fg_completed_qty', 
-			'purchase_receipt_no','delivery_note_no', 'sales_invoice_no']);
-		doc.production_order = '';
-		doc.process = '';
-		doc.fg_completed_qty = 0;
-	}
+	},
 	
- 
+	refresh: function() {
+		this._super();
+		this.toggle_related_fields(doc);
+		if (this.frm.doc.docstatus==1) this.frm.add_custom_button("Show Stock Ledger", 
+			this.show_stock_ledger)
+	},
+	
+	get_items: function() {
+		this.frm.call({
+			doc: this.frm.doc,
+			method: "get_items",
+			callback: function(r) {
+				if(!r.exc) refresh_field("mtn_details");
+			}
+		});
+	},
+	
+	qty: function(doc, cdt, cdn) {
+		var d = locals[cdt][cdn];
+		d.transfer_qty = flt(d.qty) * flt(d.conversion_factor);
+		refresh_field('mtn_details');
+	},
+	
+});
+
+cur_frm.cscript = new erpnext.stock.StockEntry({frm: cur_frm});
+
+cur_frm.cscript.toggle_related_fields = function(doc) {
 	if(doc.purpose == 'Purchase Return') {
 		doc.customer = doc.customer_name = doc.customer_address = 
-			doc.delivery_note_no = doc.sales_invoice_no = '';
-		unhide_field(['supplier','supplier_name','supplier_address','purchase_receipt_no']);
-		$(cur_frm.fields_dict.contact_section.row.wrapper).toggle(true);
-	}
-	else if(doc.purpose == 'Sales Return'){
-		doc.supplier=doc.supplier_name = doc.supplier_address=doc.purchase_receipt_no='';
-		unhide_field(['customer', 'customer_name', 'customer_address', 
-			'delivery_note_no', 'sales_invoice_no']);
-		$(cur_frm.fields_dict.contact_section.row.wrapper).toggle(true);
-	} else{
+			doc.delivery_note_no = doc.sales_invoice_no = null;
+		doc.bom_no = doc.production_order = doc.fg_completed_qty = null;
+	} else if(doc.purpose == 'Sales Return') {
+		doc.supplier=doc.supplier_name = doc.supplier_address = doc.purchase_receipt_no=null;
+		doc.bom_no = doc.production_order = doc.fg_completed_qty = null;
+	} else {
 		doc.customer = doc.customer_name = doc.customer_address = 
 			doc.delivery_note_no = doc.sales_invoice_no = doc.supplier = 
-			doc.supplier_name = doc.supplier_address = doc.purchase_receipt_no = '';
+			doc.supplier_name = doc.supplier_address = doc.purchase_receipt_no = null;
 	}
-	refresh_many(lst);
 }
 
-//Refresh
-cur_frm.cscript.refresh = function(doc, cdt, cdn) { 
-	erpnext.hide_naming_series();
-
-	//India related
-	excise_flds = ['is_excisable_goods', 'excisable_goods', 'under_rule'];
-	if(wn.control_panel.country == 'India') unhide_field(excise_flds);
-	else hide_field(excise_flds);
+cur_frm.cscript.show_stock_ledger = function() {
+	var args = {
+		voucher_no: cur_frm.doc.name,
+		from_date: wn.datetime.str_to_user(cur_frm.doc.posting_date),
+		to_date: wn.datetime.str_to_user(cur_frm.doc.posting_date)
+	};	
+	wn.set_route('stock-ledger', 
+		$.map(args, function(val, key) { return key+"="+val; }).join("&&"));
 }
 
 cur_frm.cscript.delivery_note_no = function(doc,cdt,cdn){
@@ -100,7 +87,7 @@
 }
 
 cur_frm.cscript.customer = function(doc,cdt,cdn){
-	if(doc.customer)	get_server_fields('get_cust_addr','','',doc,cdt,cdn,1);
+	if(doc.customer) get_server_fields('get_cust_addr','','',doc,cdt,cdn,1);
 }
 
 cur_frm.cscript.purchase_receipt_no = function(doc,cdt,cdn){
@@ -108,48 +95,46 @@
 }
 
 cur_frm.cscript.supplier = function(doc,cdt,cdn){
-	if(doc.supplier)	get_server_fields('get_supp_addr','','',doc,cdt,cdn,1);
+	if(doc.supplier) get_server_fields('get_supp_addr','','',doc,cdt,cdn,1);
 
 }
 
 cur_frm.fields_dict['production_order'].get_query = function(doc) {
-	 return 'SELECT DISTINCT `tabProduction Order`.`name` FROM `tabProduction Order` WHERE `tabProduction Order`.`docstatus` = 1 AND `tabProduction Order`.`qty` > ifnull(`tabProduction Order`.`produced_qty`,0) AND `tabProduction Order`.`name` like "%s" ORDER BY `tabProduction Order`.`name` DESC LIMIT 50';
+	return 'select name from `tabProduction Order` \
+		where docstatus = 1 and qty > ifnull(produced_qty,0) AND %(key)s like "%s%%" \
+		order by name desc limit 50';
 }
 
 cur_frm.cscript.purpose = function(doc, cdt, cdn) {
-	cfn_set_fields(doc, cdt, cdn);
-}
-
-cur_frm.cscript.process = function(doc, cdt, cdn) {
-	cfn_set_fields(doc, cdt, cdn);
+	cur_frm.cscript.toggle_related_fields(doc, cdt, cdn);
 }
 
 // item code - only if quantity present in source warehosue
-//
 var fld = cur_frm.fields_dict['mtn_details'].grid.get_field('item_code');
-fld.query_description = "If Source Warehouse is selected, only items present in the warehouse with actual qty > 0 will be selected"
+fld.query_description = "If Source Warehouse is selected, items with existing stock \
+	for that warehouse will be selected";
+	
 fld.get_query = function(doc, cdt, cdn) {
 	var d = locals[cdt][cdn];
-		
 	if(d.s_warehouse) {
 		return 'SELECT tabItem.name, tabItem.description, tabBin.actual_qty '
-		+'FROM tabItem, tabBin '
-		+'WHERE tabItem.name = tabBin.item_code '
-		+'AND ifnull(`tabBin`.`actual_qty`,0) > 0 '
-		+'AND tabBin.warehouse="'+ d.s_warehouse +'" '
-		+'AND tabItem.docstatus < 2 '
-		+'AND (ifnull(`tabItem`.`end_of_life`,"") = "" OR `tabItem`.`end_of_life` > NOW() OR `tabItem`.`end_of_life`="0000-00-00") '
-		+'AND tabItem.%(key)s LIKE "%s" '
-		+'ORDER BY tabItem.name ASC '
-		+'LIMIT 50'
+			+ 'FROM tabItem, tabBin '
+			+ 'WHERE tabItem.name = tabBin.item_code '
+			+ 'AND ifnull(`tabBin`.`actual_qty`,0) > 0 '
+			+ 'AND tabBin.warehouse="'+ d.s_warehouse +'" '
+			+ 'AND tabItem.docstatus < 2 '
+			+ 'AND (ifnull(`tabItem`.`end_of_life`,"") = "" OR `tabItem`.`end_of_life` > NOW() OR `tabItem`.`end_of_life`="0000-00-00") '
+			+ 'AND tabItem.%(key)s LIKE "%s" '
+			+ 'ORDER BY tabItem.name ASC '
+			+ 'LIMIT 50'
 	} else {
 		return 'SELECT tabItem.name, tabItem.description '
-		+'FROM tabItem '
-		+'WHERE tabItem.docstatus < 2 '
-		+'AND (ifnull(`tabItem`.`end_of_life`,"") = "" OR `tabItem`.`end_of_life` > NOW() OR `tabItem`.`end_of_life`="0000-00-00") '
-		+'AND tabItem.%(key)s LIKE "%s" '
-		+'ORDER BY tabItem.name ASC '
-		+'LIMIT 50'
+			+ 'FROM tabItem '
+			+ 'WHERE tabItem.docstatus < 2 '
+			+ 'AND (ifnull(`tabItem`.`end_of_life`,"") = "" OR `tabItem`.`end_of_life` > NOW() OR `tabItem`.`end_of_life`="0000-00-00") '
+			+ 'AND tabItem.%(key)s LIKE "%s" '
+			+ 'ORDER BY tabItem.name ASC '
+			+ 'LIMIT 50'
 	}
 }
 
@@ -195,7 +180,6 @@
 		'warehouse'		: cstr(d.s_warehouse) || cstr(d.t_warehouse),
 		'transfer_qty'	: d.transfer_qty,
 		'serial_no'		: d.serial_no,
-		'fg_item'		: d.fg_item,
 		'bom_no'		: d.bom_no
 	};
 	get_server_fields('get_item_details',JSON.stringify(args),'mtn_details',doc,cdt,cdn,1);
@@ -208,7 +192,6 @@
 		'warehouse'		: cstr(d.s_warehouse) || cstr(d.t_warehouse),
 		'transfer_qty'	: d.transfer_qty,
 		'serial_no'		: d.serial_no,
-		'fg_item'		: d.fg_item,
 		'bom_no'		: d.bom_no
 	}
 	get_server_fields('get_warehouse_details', JSON.stringify(args), 
@@ -217,19 +200,6 @@
 
 cur_frm.cscript.t_warehouse = cur_frm.cscript.s_warehouse;
 
-cur_frm.cscript.transfer_qty = function(doc,cdt,cdn) {
-	var d = locals[cdt][cdn];
-	if (doc.from_warehouse && (flt(d.transfer_qty) > flt(d.actual_qty))) {
-		alert("Transfer Quantity is more than Available Qty");
-	}
-}
-
-cur_frm.cscript.qty = function(doc, cdt, cdn) {
-	var d = locals[cdt][cdn];
-	set_multiple('Stock Entry Detail', d.name, {'transfer_qty': flt(d.qty) * flt(d.conversion_factor)}, 'mtn_details');
-	refresh_field('mtn_details');
-}
-
 cur_frm.cscript.uom = function(doc, cdt, cdn) {
 	var d = locals[cdt][cdn];
 	if(d.uom && d.item_code){
diff --git a/stock/doctype/stock_entry/stock_entry.py b/stock/doctype/stock_entry/stock_entry.py
index 67f1643..2688afd 100644
--- a/stock/doctype/stock_entry/stock_entry.py
+++ b/stock/doctype/stock_entry/stock_entry.py
@@ -17,12 +17,12 @@
 from __future__ import unicode_literals
 import webnotes
 
-from webnotes.utils import cstr, flt, getdate, now
+from webnotes.utils import cstr, cint, flt, getdate, now
 from webnotes.model import db_exists, delete_doc
 from webnotes.model.doc import Document, addchild
 from webnotes.model.wrapper import getlist, copy_doclist
 from webnotes.model.code import get_obj
-from webnotes import msgprint
+from webnotes import msgprint, _
 
 sql = webnotes.conn.sql
 	
@@ -34,12 +34,248 @@
 		self.doclist = doclist
 		self.item_dict = {}
 		self.fname = 'mtn_details' 
-  
+		
+	def validate(self):
+		self.validate_serial_nos()
+
+		pro_obj = self.doc.production_order and \
+			get_obj('Production Order', self.doc.production_order) or None
+
+		self.validate_warehouse(pro_obj)
+		self.validate_production_order(pro_obj)
+		self.get_stock_and_rate()
+		self.validate_incoming_rate()
+		self.validate_bom()
+		self.validate_finished_goods()
+		
+	def on_submit(self):
+		self.update_serial_no(1)
+		self.update_stock_ledger(0)
+		# update Production Order
+		self.update_production_order(1)
+
+	def on_cancel(self):
+		self.update_serial_no(0)
+		self.update_stock_ledger(1)
+		# update Production Order
+		self.update_production_order(0)
+					
+	def validate_serial_nos(self):
+		sl_obj = get_obj("Stock Ledger")
+		sl_obj.scrub_serial_nos(self)
+		sl_obj.validate_serial_no(self, 'mtn_details')
+		
+	def validate_warehouse(self, pro_obj):
+		"""perform various (sometimes conditional) validations on warehouse"""
+		
+		source_mandatory = ["Material Issue", "Material Transfer", "Purchase Return"]
+		target_mandatory = ["Material Receipt", "Material Transfer", "Sales Return"]
+		
+		fg_qty = 0
+		for d in getlist(self.doclist, 'mtn_details'):
+			if not d.s_warehouse and not d.t_warehouse:
+				d.s_warehouse = self.doc.from_warehouse
+				d.t_warehouse = self.doc.to_warehouse
+
+			if not (d.s_warehouse or d.t_warehouse):
+				msgprint(_("Atleast one warehouse is mandatory"), raise_exception=1)
+			
+			if d.s_warehouse == d.t_warehouse:
+				msgprint(_("Source and Target Warehouse cannot be same"), raise_exception=1)
+				
+			if self.doc.purpose in source_mandatory:
+				if not d.s_warehouse:
+					msgprint(_("Row # ") + "%s: " % cint(d.idx)
+						+ _("Source Warehouse") + _(" is mandatory"), raise_exception=1)
+
+				if self.doc.purpose not in target_mandatory:
+					d.t_warehouse = None
+				
+			if self.doc.purpose in target_mandatory:
+				if not d.t_warehouse:
+					msgprint(_("Row # ") + "%s: " % cint(d.idx)
+						+ _("Target Warehouse") + _(" is mandatory"), raise_exception=1)
+						
+				if self.doc.purpose not in source_mandatory:
+					d.s_warehouse = None
+
+			if self.doc.purpose == "Manufacture/Repack":
+				if d.bom_no:
+					d.s_warehouse = None
+					
+					if not d.t_warehouse:
+						msgprint(_("Row # ") + "%s: " % cint(d.idx)
+							+ _("Target Warehouse") + _(" is mandatory"), raise_exception=1)
+					
+					elif pro_obj and cstr(d.t_warehouse) != pro_obj.doc.fg_warehouse:
+						msgprint(_("Row # ") + "%s: " % cint(d.idx)
+							+ _("Target Warehouse") + _(" should be same as that in ")
+							+ _("Production Order"), raise_exception=1)
+				
+				else:
+					d.t_warehouse = None
+					if not d.s_warehouse:
+						msgprint(_("Row # ") + "%s: " % cint(d.idx)
+							+ _("Source Warehouse") + _(" is mandatory"), raise_exception=1)
+				
+	def validate_production_order(self, pro_obj=None):
+		if not pro_obj:
+			if self.doc.production_order:
+				pro_obj = get_obj('Production Order', self.doc.production_order)
+			else:
+				return
+		
+		if self.doc.purpose == "Manufacture/Repack":
+			if not flt(self.doc.fg_completed_qty):
+				msgprint(_("Manufacturing Quantity") + _(" is mandatory"), raise_exception=1)
+			
+			if flt(pro_obj.doc.qty) < (flt(pro_obj.doc.produced_qty)
+					+ flt(self.doc.fg_completed_qty)):
+				# do not allow manufacture of qty > production order qty
+				msgprint(_("For Item ") + pro_obj.doc.production_item 
+					+ _("Quantity already manufactured")
+					+ " = %s." % flt(pro_obj.doc.produced_qty)
+					+ _("Hence, maximum allowed Manufacturing Quantity")
+					+ " = %s." % flt(pro_obj.doc.qty) - flt(pro_obj.doc.produced_qty),
+					raise_exception=1)
+		elif self.doc.purpose != "Material Transfer":
+			self.doc.production_order = None
+			
+	def get_stock_and_rate(self):
+		"""get stock and incoming rate on posting date"""
+		for d in getlist(self.doclist, 'mtn_details'):
+			# get actual stock at source warehouse
+			d.actual_qty = self.get_as_on_stock(d.item_code, d.s_warehouse or d.t_warehouse, 
+				self.doc.posting_date, self.doc.posting_time)
+
+			# get incoming rate
+			if not flt(d.incoming_rate):
+				d.incoming_rate = self.get_incoming_rate(d.item_code, 
+					d.s_warehouse or d.t_warehouse, self.doc.posting_date, 
+					self.doc.posting_time, d.transfer_qty, d.serial_no, d.bom_no)
+					
+			d.amount = flt(d.qty) * flt(d.incoming_rate)
+					
+	def get_as_on_stock(self, item_code, warehouse, posting_date, posting_time):
+		"""Get stock qty on any date"""
+		bin = sql("select name from tabBin where item_code = %s and warehouse = %s", 
+			(item_code, warehouse))
+		if bin:
+			prev_sle = get_obj('Bin', bin[0][0]).get_prev_sle(posting_date, posting_time)
+			return flt(prev_sle.get("bin_aqat")) or 0
+		else:
+			return 0
+			
+	def get_incoming_rate(self, item_code=None, warehouse=None, 
+			posting_date=None, posting_time=None, qty=0, serial_no=None, bom_no=None):
+		in_rate = 0
+
+		if bom_no:
+			result = webnotes.conn.sql("""select ifnull(total_cost, 0) / ifnull(quantity, 1) 
+				from `tabBOM` where name = %s and docstatus=1 and is_active=1""",
+				(bom_no,))
+			in_rate = result and flt(result[0][0]) or 0
+		elif warehouse:
+			in_rate = get_obj("Valuation Control").get_incoming_rate(posting_date, posting_time,
+				item_code, warehouse, qty, serial_no)
+	
+		return in_rate
+		
+	def validate_incoming_rate(self):
+		for d in getlist(self.doclist, 'mtn_details'):
+			if not flt(d.incoming_rate) and d.t_warehouse:
+				msgprint("Rate is mandatory for Item: %s at row %s" % (d.item_code, d.idx),
+					raise_exception=1)
+					
+	def validate_bom(self):
+		for d in getlist(self.doclist, 'mtn_details'):
+			if d.bom_no and not webnotes.conn.sql("""select name from `tabBOM`
+					where item = %s and name = %s and docstatus = 1 and is_active = 1""",
+					(d.item_code, d.bom_no)):
+				msgprint(_("Item") + " %s: " % cstr(d.item_code)
+					+ _("does not belong to BOM: ") + cstr(d.bom_no)
+					+ _(" or the BOM is cancelled or inactive"), raise_exception=1)
+					
+	def validate_finished_goods(self):
+		"""validation: finished good quantity should be same as manufacturing quantity"""
+		for d in getlist(self.doclist, 'mtn_details'):
+			if d.bom_no and flt(d.transfer_qty) != flt(self.doc.fg_completed_qty):
+				msgprint(_("Row #") + " %s: " % d.idx 
+					+ _("Quantity should be equal to Manufacturing Quantity. ")
+					+ _("To fetch items again, click on 'Get Items' button \
+						or update the Quantity manually."), raise_exception=1)
+					
+	def update_serial_no(self, is_submit):
+		"""Create / Update Serial No"""
+		sl_obj = get_obj('Stock Ledger')
+		if is_submit:
+			sl_obj.validate_serial_no_warehouse(self, 'mtn_details')
+		
+		for d in getlist(self.doclist, 'mtn_details'):
+			if d.serial_no:
+				serial_nos = sl_obj.get_sr_no_list(d.serial_no)
+				for x in serial_nos:
+					serial_no = x.strip()
+					if d.s_warehouse:
+						sl_obj.update_serial_delivery_details(self, d, serial_no, is_submit)
+					if d.t_warehouse:
+						sl_obj.update_serial_purchase_details(self, d, serial_no, is_submit,
+							self.doc.purpose)
+					
+					if self.doc.purpose == 'Purchase Return':
+						#delete_doc("Serial No", serial_no)
+						serial_doc = Document("Serial No", serial_no)
+						serial_doc.status = is_submit and 'Purchase Returned' or 'In Store'
+						serial_doc.docstatus = is_submit and 2 or 0
+						serial_doc.save()
+						
+	def update_stock_ledger(self, is_cancelled=0):
+		self.values = []			
+		for d in getlist(self.doclist, 'mtn_details'):
+			if cstr(d.s_warehouse):
+				self.add_to_values(d, cstr(d.s_warehouse), -flt(d.transfer_qty), is_cancelled)
+			if cstr(d.t_warehouse):
+				self.add_to_values(d, cstr(d.t_warehouse), flt(d.transfer_qty), is_cancelled)
+		get_obj('Stock Ledger', 'Stock Ledger').update_stock(self.values, 
+			self.doc.amended_from and 'Yes' or 'No')
+
+	def update_production_order(self, is_submit):
+		if self.doc.production_order:
+			# first perform some validations
+			# (they are here coz this fn is also called during on_cancel)
+			pro_obj = get_obj("Production Order", self.doc.production_order)
+			if flt(pro_obj.doc.docstatus) != 1:
+				msgprint("""You cannot do any transaction against 
+					Production Order : %s, as it's not submitted"""
+					% (pro_obj.doc.name), raise_exception=1)
+					
+			if pro_obj.doc.status == 'Stopped':
+				msgprint("""You cannot do any transaction against Production Order : %s, 
+					as it's status is 'Stopped'"""% (pro_obj.doc.name), raise_exception=1)
+					
+			# update bin
+			if self.doc.purpose == "Manufacture/Repack":
+				pro_obj.doc.produced_qty = flt(pro_obj.doc.produced_qty) + \
+					(is_submit and 1 or -1 ) * flt(self.doc.fg_completed_qty)
+				args = {
+					"item_code": pro_obj.doc.production_item,
+					"posting_date": self.doc.posting_date,
+					"planned_qty": (is_submit and -1 or 1 ) * flt(self.doc.fg_completed_qty)
+				}
+				get_obj('Warehouse', pro_obj.doc.fg_warehouse).update_bin(args)
+			
+			# update production order status
+			pro_obj.doc.status = (flt(pro_obj.doc.qty)==flt(pro_obj.doc.produced_qty)) \
+				and 'Completed' or 'In Process'
+			pro_obj.doc.save()
+					
 	def get_item_details(self, arg):
 		import json
 		arg, actual_qty, in_rate = json.loads(arg), 0, 0
 
-		item = sql("select stock_uom, description, item_name from `tabItem` where name = %s and (ifnull(end_of_life,'')='' or end_of_life ='0000-00-00' or end_of_life >	now())", (arg.get('item_code')), as_dict = 1)
+		item = sql("""select stock_uom, description, item_name from `tabItem` 
+			where name = %s and (ifnull(end_of_life,'')='' or end_of_life ='0000-00-00' 
+			or end_of_life > now())""", (arg.get('item_code')), as_dict = 1)
 		if not item: 
 			msgprint("Item is not active", raise_exception=1)
 						
@@ -59,12 +295,13 @@
 		ret.update(stock_and_rate)
 		return ret
 
-
 	def get_uom_details(self, arg = ''):
 		arg, ret = eval(arg), {}
-		uom = sql("select conversion_factor from `tabUOM Conversion Detail` where parent = %s and uom = %s", (arg['item_code'],arg['uom']), as_dict = 1)
+		uom = sql("""select conversion_factor from `tabUOM Conversion Detail` 
+			where parent = %s and uom = %s""", (arg['item_code'], arg['uom']), as_dict = 1)
 		if not uom:
-			msgprint("There is no Conversion Factor for UOM '%s' in Item '%s'" % (arg['uom'], arg['item_code']))
+			msgprint("There is no Conversion Factor for UOM '%s' in Item '%s'" % (arg['uom'],
+				arg['item_code']))
 			ret = {'uom' : ''}
 		else:
 			ret = {
@@ -79,58 +316,88 @@
 		ret = {
 			"actual_qty" : self.get_as_on_stock(arg.get('item_code'), arg.get('warehouse'),
 			 	self.doc.posting_date, self.doc.posting_time),
-			"incoming_rate" : 	self.get_incoming_rate(arg.get('item_code'), 
+			"incoming_rate" : self.get_incoming_rate(arg.get('item_code'), 
 			 	arg.get('warehouse'), self.doc.posting_date, self.doc.posting_time, 
-			 	arg.get('transfer_qty'), arg.get('serial_no'), arg.get('fg_item'),
-			 	arg.get('bom_no')) or 0
+			 	arg.get('transfer_qty'), arg.get('serial_no'), arg.get('bom_no')) or 0
 		}
 		return ret
-			
-	
-	def get_stock_and_rate(self, bom_no = ''):
-		""" get stock and incoming rate on posting date"""
-		for d in getlist(self.doclist, 'mtn_details'):
-			# assign parent warehouse
-			d.s_warehouse = cstr(d.s_warehouse) or self.doc.purpose != 'Production Order' \
-				and self.doc.from_warehouse or ''
-			d.t_warehouse = cstr(d.t_warehouse) or self.doc.purpose != 'Production Order' \
-				and self.doc.to_warehouse or ''
-			
-			# get current stock at source warehouse
-			d.actual_qty = self.get_as_on_stock(d.item_code, d.s_warehouse or d.t_warehouse, 
-				self.doc.posting_date, self.doc.posting_time) or 0
-
-			# get incoming rate
-			if not flt(d.incoming_rate):
-				d.incoming_rate = self.get_incoming_rate(d.item_code, 
-					d.s_warehouse or d.t_warehouse, self.doc.posting_date, 
-					self.doc.posting_time, d.transfer_qty, d.serial_no, 
-					d.fg_item, d.bom_no or bom_no)
-
-
-	def get_as_on_stock(self, item, wh, dt, tm):
-		"""Get stock qty on any date"""
-		bin = sql("select name from tabBin where item_code = %s and warehouse = %s", (item, wh))
-		bin_id = bin and bin[0][0] or ''
-		prev_sle = bin_id and get_obj('Bin', bin_id).get_prev_sle(dt, tm) or {}		
-		qty = flt(prev_sle.get('bin_aqat', 0))
-		return qty
-
-
-	def get_incoming_rate(self, item, wh, dt, tm, qty=0, serial_no='', fg_item=0, bom_no=''):
-		in_rate = 0
-		if fg_item and bom_no:
-			in_rate = webnotes.conn.sql("""select ifnull(total_cost, 0) / ifnull(quantity, 1) 
-				from `tabBOM` where name = %s and docstatus=1""", bom_no, debug=1)
-			in_rate = in_rate and in_rate[0][0] or 0
-		elif wh:
-			in_rate = get_obj('Valuation Control').get_incoming_rate(dt, tm, 
-				item, wh, qty, serial_no)
 		
-		return in_rate
+	def get_items(self):
+		self.doclist = self.doc.clear_table(self.doclist, 'mtn_details', 1)
+		
+		if self.doc.production_order:
+			# common validations
+			pro_obj = get_obj('Production Order', self.doc.production_order)
+			if pro_obj:
+				self.validate_production_order(pro_obj)
 
+				self.doc.bom_no = pro_obj.doc.bom_no
+				self.doc.fg_completed_qty = (self.doc.purpose == "Manufacture/Repack") \
+					and flt(self.doc.fg_completed_qty) \
+					or flt(pro_obj.doc.qty) - flt(pro_obj.doc.produced_qty)
+			else:
+				# invalid production order
+				self.doc.production_order = None
+		
+		if self.doc.bom_no:
+			if self.doc.purpose in ["Material Issue", "Material Transfer", "Manufacture/Repack",
+					"Subcontract"]:
+				self.get_raw_materials()
 
+				# add raw materials to Stock Entry Detail table
+				self.add_to_stock_entry_detail(self.doc.from_warehouse, self.doc.to_warehouse,
+					self.item_dict)
 
+			# add finished good item to Stock Entry Detail table -- along with bom_no
+			if self.doc.production_order and self.doc.purpose == "Manufacture/Repack":
+				self.add_to_stock_entry_detail(None, pro_obj.doc.fg_warehouse, {
+					cstr(pro_obj.doc.production_item): 
+						[self.doc.fg_completed_qty, pro_obj.doc.description, pro_obj.doc.stock_uom]
+				}, bom_no=pro_obj.doc.bom_no)
+				
+			elif self.doc.purpose in ["Material Receipt", "Manufacture/Repack"]:
+				item = webnotes.conn.sql("""select item, description, uom from `tabBOM`
+					where name=%s""", (self.doc.bom_no,), as_dict=1)
+				self.add_to_stock_entry_detail(None, self.doc.to_warehouse, {
+					item[0]["item"] :
+						[self.doc.fg_completed_qty, item[0]["description"], item[0]["uom"]]
+				}, bom_no=self.doc.bom_no)
+		
+		self.get_stock_and_rate()
+	
+	def get_raw_materials(self):
+		""" 
+			get all items from flat bom except 
+			child items of sub-contracted and sub assembly items 
+			and sub assembly items itself.
+		"""
+		if self.doc.use_multi_level_bom:
+			# get all raw materials with sub assembly childs					
+			fl_bom_sa_child_item = sql("""select 
+					item_code,ifnull(sum(qty_consumed_per_unit),0)*%s as qty,description,stock_uom 
+				from (	select distinct fb.name, fb.description, fb.item_code,
+							fb.qty_consumed_per_unit, fb.stock_uom 
+						from `tabBOM Explosion Item` fb,`tabItem` it 
+						where it.name = fb.item_code and ifnull(it.is_pro_applicable, 'No') = 'No'
+						and ifnull(it.is_sub_contracted_item, 'No') = 'No' and fb.docstatus<2 
+						and fb.parent=%s
+					) a
+				group by item_code, stock_uom""" , (self.doc.fg_completed_qty, self.doc.bom_no))
+			self.make_items_dict(fl_bom_sa_child_item)
+		else:
+			# Get all raw materials considering multi level BOM, 
+			# if multi level bom consider childs of Sub-Assembly items
+			fl_bom_sa_items = sql("""select item_code, ifnull(sum(qty_consumed_per_unit), 0) * '%s',
+				description, stock_uom from `tabBOM Item` 
+				where parent = '%s' and docstatus < 2 
+				group by item_code""" % (self.doc.fg_completed_qty, self.doc.bom_no))
+			
+			self.make_items_dict(fl_bom_sa_items)
+
+		# Update only qty remaining to be issued for production
+		if self.doc.purpose == 'Material Transfer' and self.doc.production_order:
+			self.update_only_remaining_qty()
+	
 	def make_items_dict(self, items_list):
 		"""makes dict of unique items with it's qty"""
 		for i in items_list:
@@ -138,15 +405,16 @@
 				self.item_dict[i[0]][0] = flt(self.item_dict[i[0]][0]) + flt(i[1])
 			else:
 				self.item_dict[i[0]] = [flt(i[1]), cstr(i[2]), cstr(i[3])]
-				
-
 
 	def update_only_remaining_qty(self):
 		""" Only pending raw material to be issued to shop floor """
 		already_issued_item = {}
-		for t in sql("""select t1.item_code, sum(t1.qty) from `tabStock Entry Detail` t1, `tabStock Entry` t2
-				where t1.parent = t2.name and t2.production_order = %s and t2.process = 'Material Transfer' 
-				and t2.docstatus = 1 group by t1.item_code""", self.doc.production_order):
+		result = sql("""select t1.item_code, sum(t1.qty)
+			from `tabStock Entry Detail` t1, `tabStock Entry` t2
+			where t1.parent = t2.name and t2.production_order = %s and t2.docstatus = 1
+			and t2.purpose = 'Material Transfer'
+			group by t1.item_code""", self.doc.production_order)
+		for t in result:
 			already_issued_item[t[0]] = flt(t[1])
 
 		for d in self.item_dict.keys():
@@ -154,367 +422,38 @@
 			if self.item_dict[d][0] <= 0:
 				del self.item_dict[d]
 
-
-
-	def get_raw_materials(self, bom_no, fg_qty, use_multi_level_bom):
-		""" 
-			get all items from flat bom except 
-			child items of sub-contracted and sub assembly items 
-			and sub assembly items itself.
-		"""
-		if use_multi_level_bom:
-			# get all raw materials with sub assembly childs					
-			fl_bom_sa_child_item = sql("""
-				select 
-					item_code,ifnull(sum(qty_consumed_per_unit),0)*%s as qty,description,stock_uom 
-				from 
-					( 
-						select distinct fb.name, fb.description, fb.item_code, fb.qty_consumed_per_unit, fb.stock_uom 
-						from `tabBOM Explosion Item` fb,`tabItem` it 
-						where it.name = fb.item_code and ifnull(it.is_pro_applicable, 'No') = 'No'
-						and ifnull(it.is_sub_contracted_item, 'No') = 'No' and fb.docstatus<2 and fb.parent=%s
-					) a
-				group by item_code,stock_uom
-			""" , (fg_qty, bom_no))
-			self.make_items_dict(fl_bom_sa_child_item)
-		else:
-			# Get all raw materials considering multi level BOM, 
-			# if multi level bom consider childs of Sub-Assembly items
-			fl_bom_sa_items = sql("""
-				select item_code, ifnull(sum(qty_consumed_per_unit), 0) * '%s', description, stock_uom 
-				from `tabBOM Item` 
-				where parent = '%s' and docstatus < 2 
-				group by item_code
-			""" % (fg_qty, bom_no))
-			
-			self.make_items_dict(fl_bom_sa_items)
-
-		# Update only qty remaining to be issued for production
-		if self.doc.process == 'Material Transfer':
-			self.update_only_remaining_qty()
-
-
-
-	def add_to_stock_entry_detail(self, source_wh, target_wh, item_dict, fg_item = 0, bom_no = ''):
+	def add_to_stock_entry_detail(self, source_wh, target_wh, item_dict, bom_no=None):
 		for d in item_dict:
 			se_child = addchild(self.doc, 'mtn_details', 'Stock Entry Detail', 0, self.doclist)
 			se_child.s_warehouse = source_wh
 			se_child.t_warehouse = target_wh
-			se_child.fg_item = fg_item
 			se_child.item_code = cstr(d)
 			se_child.description = item_dict[d][1]
 			se_child.uom = item_dict[d][2]
 			se_child.stock_uom = item_dict[d][2]
-			se_child.reqd_qty = flt(item_dict[d][0])
 			se_child.qty = flt(item_dict[d][0])
 			se_child.transfer_qty = flt(item_dict[d][0])
 			se_child.conversion_factor = 1.00
-			if fg_item: se_child.bom_no = bom_no
-
-	def validate_bom_no(self):
-		if self.doc.bom_no:
-			if not webnotes.conn.sql("""select name from tabBOM where name = %s and docstatus = 1
-			 		and ifnull(is_active, 'No') = 'Yes'""", self.doc.bom_no):
-				msgprint("""BOM: %s not found, may be it has been cancelled or inactivated""" %
-					self.doc.bom_no, raise_exception=1)
-			if not self.doc.fg_completed_qty:
-				msgprint("Please enter FG Completed Qty", raise_exception=1)
-
-
-	def get_items(self):
-		if self.doc.purpose == 'Production Order':
-			pro_obj = self.doc.production_order and get_obj('Production Order', self.doc.production_order) or ''	
-			self.validate_for_production_order(pro_obj)
-
-			bom_no = pro_obj.doc.bom_no
-			fg_qty = (self.doc.process == 'Backflush') and flt(self.doc.fg_completed_qty) \
-				or flt(pro_obj.doc.qty)
-			use_multi_level_bom = pro_obj.doc.use_multi_level_bom
-		elif self.doc.purpose == 'Other':
-			self.validate_bom_no()
-			bom_no = self.doc.bom_no
-			fg_qty = self.doc.fg_completed_qty
-			use_multi_level_bom = self.doc.use_multi_level_bom
-			
-		self.get_raw_materials(bom_no, fg_qty, use_multi_level_bom)
-		self.doclist = self.doc.clear_table(self.doclist, 'mtn_details', 1)
-
-		sw = (self.doc.process == 'Backflush') and cstr(pro_obj.doc.wip_warehouse) or ''
-		tw = (self.doc.process == 'Material Transfer') and cstr(pro_obj.doc.wip_warehouse) or ''
-		self.add_to_stock_entry_detail(sw, tw, self.item_dict)
-
-		fg_item_dict = {}
-		if self.doc.process == 'Backflush':
-			sw = ''
-			tw = cstr(pro_obj.doc.fg_warehouse)	
-			fg_item_dict = {
-				cstr(pro_obj.doc.production_item) : [self.doc.fg_completed_qty,
-				 	pro_obj.doc.description, pro_obj.doc.stock_uom]
-			}
-		elif self.doc.purpose == 'Other' and self.doc.bom_no:
-			sw, tw = '', ''
-			item = sql("select item, description, uom from `tabBOM` where name = %s", self.doc.bom_no, as_dict=1)
-			fg_item_dict = {
-				item[0]['item'] : [self.doc.fg_completed_qty, 
-					item[0]['description'], item[0]['uom']]
-			}
-
-		if fg_item_dict:
-			self.add_to_stock_entry_detail(sw, tw, fg_item_dict, fg_item = 1, bom_no = bom_no)
-			
-		self.get_stock_and_rate()
-			
-
-
-	def validate_transfer_qty(self):
-		for d in getlist(self.doclist, 'mtn_details'):
-			if flt(d.transfer_qty) <= 0:
-				msgprint("Transfer Quantity can not be less than or equal to zero \
-				 at Row No " + cstr(d.idx), raise_exception=1)
-
-
-	def calc_amount(self):
-		total_amount = 0
-		for d in getlist(self.doclist, 'mtn_details'):
-			d.amount = flt(d.transfer_qty) * flt(d.incoming_rate)
-			total_amount += flt(d.amount)
-		self.doc.total_amount = flt(total_amount)
-
+			if bom_no: se_child.bom_no = bom_no
 
 	def add_to_values(self, d, wh, qty, is_cancelled):
 		self.values.append({
-				'item_code'			    : d.item_code,
-				'warehouse'			    : wh,
-				'transaction_date'	: self.doc.transfer_date,
-				'posting_date'		  : self.doc.posting_date,
-				'posting_time'		  : self.doc.posting_time,
-				'voucher_type'		  : 'Stock Entry',
-				'voucher_no'		    : self.doc.name, 
-				'voucher_detail_no'	: d.name,
-				'actual_qty'		    : qty,
-				'incoming_rate'		  : flt(d.incoming_rate) or 0,
-				'stock_uom'			    : d.stock_uom,
-				'company'			      : self.doc.company,
-				'fiscal_year'		    : self.doc.fiscal_year,
-				'is_cancelled'		  : (is_cancelled ==1) and 'Yes' or 'No',
-				'batch_no'			    : d.batch_no,
-        'serial_no'         : d.serial_no
+			'item_code': d.item_code,
+			'warehouse': wh,
+			'posting_date': self.doc.posting_date,
+			'posting_time': self.doc.posting_time,
+			'voucher_type': 'Stock Entry',
+			'voucher_no': self.doc.name, 
+			'voucher_detail_no': d.name,
+			'actual_qty': qty,
+			'incoming_rate': flt(d.incoming_rate) or 0,
+			'stock_uom': d.stock_uom,
+			'company': self.doc.company,
+			'is_cancelled': (is_cancelled ==1) and 'Yes' or 'No',
+			'batch_no': d.batch_no,
+			'serial_no': d.serial_no
 		})
-
 	
-	def update_stock_ledger(self, is_cancelled=0):
-		self.values = []			
-		for d in getlist(self.doclist, 'mtn_details'):
-			if cstr(d.s_warehouse):
-				self.add_to_values(d, cstr(d.s_warehouse), -flt(d.transfer_qty), is_cancelled)
-			if cstr(d.t_warehouse):
-				self.add_to_values(d, cstr(d.t_warehouse), flt(d.transfer_qty), is_cancelled)
-		get_obj('Stock Ledger', 'Stock Ledger').update_stock(self.values, self.doc.amended_from and 'Yes' or 'No')
-
-	
-	def validate_for_production_order(self, pro_obj):
-		if self.doc.purpose == 'Production Order' or self.doc.process or self.doc.production_order:
-			if self.doc.purpose != 'Production Order':
-				msgprint("Purpose should be 'Production Order'.")
-				raise Exception
-			if not self.doc.process:
-				msgprint("Process Field is mandatory.")
-				raise Exception
-			if self.doc.process == 'Backflush' and not flt(self.doc.fg_completed_qty):
-				msgprint("FG Completed Qty is mandatory as the process selected is 'Backflush'")
-				raise Exception
-			if self.doc.process == 'Material Transfer' and flt(self.doc.fg_completed_qty):
-				msgprint("FG Completed Qty should be zero. As the Process selected is 'Material Transfer'.")
-				raise Exception
-			if not self.doc.production_order:
-				msgprint("Production Order field is mandatory")
-				raise Exception
-			if flt(pro_obj.doc.qty) < flt(pro_obj.doc.produced_qty) + flt(self.doc.fg_completed_qty) :
-				msgprint("error:Already Produced Qty for %s is %s and maximum allowed Qty is %s" % (pro_obj.doc.production_item, cstr(pro_obj.doc.produced_qty) or 0.00 , cstr(pro_obj.doc.qty)))
-				raise Exception
-	
-
-	def validate(self):
-		sl_obj = get_obj("Stock Ledger", "Stock Ledger")
-		sl_obj.scrub_serial_nos(self)
-		sl_obj.validate_serial_no(self, 'mtn_details')
-		pro_obj = ''
-		if self.doc.production_order:
-			pro_obj = get_obj('Production Order', self.doc.production_order)
-		self.validate_for_production_order(pro_obj)
-		self.get_stock_and_rate(pro_obj and pro_obj.doc.bom_no or '')
-		self.validate_warehouse(pro_obj)
-		self.validate_incoming_rate()
-		self.validate_bom_belongs_to_item()
-		self.calc_amount()
-		get_obj('Sales Common').validate_fiscal_year(self.doc.fiscal_year, 
-			self.doc.posting_date, 'Posting Date')
-		if self.doc.purpose == 'Other':
-			self.validate_bom_no()
-	
-	# If target warehouse exists, incoming rate is mandatory
-	# --------------------------------------------------------
-	def validate_incoming_rate(self):
-		for d in getlist(self.doclist, 'mtn_details'):
-			if not flt(d.incoming_rate) and d.t_warehouse:
-				msgprint("Rate is mandatory for Item: %s at row %s" % (d.item_code, d.idx), raise_exception=1)
-	
-	
-	def validate_bom_belongs_to_item(self):
-		for d in getlist(self.doclist, 'mtn_details'):
-			if d.bom_no and not webnotes.conn.sql("""\
-					SELECT name FROM `tabBOM`
-					WHERE item = %s and name = %s
-				""", (d.item_code, d.bom_no)):
-				msgprint("BOM %s does not belong to Item: %s at row %s" % (d.bom_no, d.item_code, d.idx), raise_exception=1)
-
-
-	# Validate warehouse
-	# -----------------------------------
-	def validate_warehouse(self, pro_obj):
-		fg_qty = 0
-		for d in getlist(self.doclist, 'mtn_details'):
-			if not d.s_warehouse and not d.t_warehouse:
-				d.s_warehouse = self.doc.from_warehouse
-				d.t_warehouse = self.doc.to_warehouse
-
-			if not (d.s_warehouse or d.t_warehouse):
-				msgprint("Atleast one warehouse is mandatory for Stock Entry ")
-				raise Exception
-			if d.s_warehouse and not sql("select name from tabWarehouse where name = '%s'" % d.s_warehouse):
-				msgprint("Invalid Warehouse: %s" % self.doc.s_warehouse)
-				raise Exception
-			if d.t_warehouse and not sql("select name from tabWarehouse where name = '%s'" % d.t_warehouse):
-				msgprint("Invalid Warehouse: %s" % self.doc.t_warehouse)
-				raise Exception
-			if d.s_warehouse == d.t_warehouse:
-				msgprint("Source and Target Warehouse Cannot be Same.")
-				raise Exception
-			if self.doc.purpose == 'Material Issue':
-				if not cstr(d.s_warehouse):
-					msgprint("Source Warehouse is Mandatory for Purpose => 'Material Issue'")
-					raise Exception
-				if cstr(d.t_warehouse):
-					msgprint("Target Warehouse is not Required for Purpose => 'Material Issue'")
-					raise Exception
-			if self.doc.purpose == 'Material Transfer':
-				if not cstr(d.s_warehouse) or not cstr(d.t_warehouse):
-					msgprint("Source Warehouse and Target Warehouse both are Mandatory for Purpose => 'Material Transfer'")
-					raise Exception
-			if self.doc.purpose == 'Material Receipt':
-				if not cstr(d.t_warehouse):
-					msgprint("Target Warehouse is Mandatory for Purpose => 'Material Receipt'")
-					raise Exception
-				if cstr(d.s_warehouse):
-					msgprint("Source Warehouse is not Required for Purpose => 'Material Receipt'")
-					raise Exception
-			if self.doc.process == 'Material Transfer':
-				if cstr(d.t_warehouse) != (pro_obj.doc.wip_warehouse):
-					msgprint(" Target Warehouse should be same as WIP Warehouse %s in Production Order %s at Row No %s" % (cstr(pro_obj.doc.wip_warehouse), cstr(pro_obj.doc.name), cstr(d.idx)) )
-					raise Exception
-				if not cstr(d.s_warehouse):
-					msgprint("Please Enter Source Warehouse at Row No %s." % (cstr(d.idx)))
-					raise Exception
-			if self.doc.process == 'Backflush':
-				if flt(d.fg_item):
-					if cstr(pro_obj.doc.production_item) != cstr(d.item_code):
-						msgprint("Item %s in Stock Entry Detail as Row No %s do not match with Item %s in Production Order %s" % (cstr(d.item_code), cstr(d.idx), cstr(pro_obj.doc.production_item), cstr(pro_obj.doc.name)))
-						raise Exception
-					if cstr(d.t_warehouse) != cstr(pro_obj.doc.fg_warehouse):
-						msgprint("As Item %s is FG Item. Target Warehouse should be same as FG Warehouse %s in Production Order %s, at Row No %s. " % ( cstr(d.item_code), cstr(pro_obj.doc.fg_warehouse), cstr(pro_obj.doc.name), cstr(d.idx)))
-						raise Exception
-					if cstr(d.s_warehouse):
-						msgprint("As Item %s is a FG Item. There should be no Source Warehouse at Row No %s" % (cstr(d.item_code), cstr(d.idx)))
-						raise Exception
-				if not flt(d.fg_item):
-					if cstr(d.t_warehouse):
-						msgprint("As Item %s is not a FG Item. There should no Tareget Warehouse at Row No %s" % (cstr(d.item_code), cstr(d.idx)))
-						raise Exception
-					if cstr(d.s_warehouse) != cstr(pro_obj.doc.wip_warehouse):
-						msgprint("As Item %s is Raw Material. Source Warehouse should be same as WIP Warehouse %s in Production Order %s, at Row No %s. " % ( cstr(d.item_code), cstr(pro_obj.doc.wip_warehouse), cstr(pro_obj.doc.name), cstr(d.idx)))
-						raise Exception
-			if d.fg_item and (self.doc.purpose == 'Other' or self.doc.process == 'Backflush'):
-				fg_qty = flt(fg_qty) + flt(d.transfer_qty)
-
-			d.save()
-		if self.doc.fg_completed_qty and flt(self.doc.fg_completed_qty) != flt(fg_qty):
-			msgprint("The Total of FG Qty %s in Stock Entry Detail do not match with FG Completed Qty %s" % (flt(fg_qty), flt(self.doc.fg_completed_qty)))
-			raise Exception
-
-
-	def update_production_order(self, is_submit):
-		if self.doc.production_order:
-			pro_obj = get_obj("Production Order", self.doc.production_order)
-			if flt(pro_obj.doc.docstatus) != 1:
-				msgprint("""You cannot do any transaction against 
-					Production Order : %s, as it's not submitted"""
-					% (pro_obj.doc.name), raise_exception=1)
-					
-			if pro_obj.doc.status == 'Stopped':
-				msgprint("""You cannot do any transaction against Production Order : %s, 
-					as it's status is 'Stopped'"""% (pro_obj.doc.name), raise_exception=1)
-					
-			if getdate(pro_obj.doc.posting_date) > getdate(self.doc.posting_date):
-				msgprint("""Posting Date of Stock Entry cannot be before Posting Date of 
-					Production Order: %s"""% cstr(self.doc.production_order), raise_exception=1)
-					
-			if self.doc.process == 'Backflush':
-				pro_obj.doc.produced_qty = flt(pro_obj.doc.produced_qty) + \
-					(is_submit and 1 or -1 ) * flt(self.doc.fg_completed_qty)
-				args = {
-					"item_code": pro_obj.doc.production_item,
-					"posting_date": self.doc.posting_date,
-					"planned_qty": (is_submit and -1 or 1 ) * flt(self.doc.fg_completed_qty)
-				}
-				get_obj('Warehouse', pro_obj.doc.fg_warehouse).update_bin(args)
-				
-			pro_obj.doc.status = (flt(pro_obj.doc.qty)==flt(pro_obj.doc.produced_qty)) \
-				and 'Completed' or 'In Process'
-			pro_obj.doc.save()
-	
-
-	# Create / Update Serial No
-	# ----------------------------------
-	def update_serial_no(self, is_submit):
-		sl_obj = get_obj('Stock Ledger')
-		if is_submit:
-			sl_obj.validate_serial_no_warehouse(self, 'mtn_details')
-		
-		for d in getlist(self.doclist, 'mtn_details'):
-			if d.serial_no:
-				serial_nos = sl_obj.get_sr_no_list(d.serial_no)
-				for x in serial_nos:
-					serial_no = x.strip()
-					if d.s_warehouse:
-						sl_obj.update_serial_delivery_details(self, d, serial_no, is_submit)
-					if d.t_warehouse:
-						sl_obj.update_serial_purchase_details(self, d, serial_no, is_submit, self.doc.purpose)
-					
-					if self.doc.purpose == 'Purchase Return':
-						#delete_doc("Serial No", serial_no)
-						serial_doc = Document("Serial No", serial_no)
-						serial_doc.status = is_submit and 'Purchase Returned' or 'In Store'
-						serial_doc.docstatus = is_submit and 2 or 0
-						serial_doc.save()
-
-
-	def on_submit(self):
-		self.validate_transfer_qty()
-		# Check for Approving Authority
-		get_obj('Authorization Control').validate_approving_authority(self.doc.doctype, self.doc.company, self.doc.total_amount)
-		self.update_serial_no(1)
-		self.update_stock_ledger(0)
-		# update Production Order
-		self.update_production_order(1)
-
-
-	def on_cancel(self):
-		self.update_serial_no(0)
-		self.update_stock_ledger(1)
-		# update Production Order
-		self.update_production_order(0)
-		
-
 	def get_cust_values(self):
 		"""fetches customer details"""
 		if self.doc.delivery_note_no:
@@ -548,7 +487,8 @@
 		return result and result[0] or {}
 		
 	def get_supp_addr(self):
-		res = sql("select supplier_name,address from `tabSupplier` where name = '%s'"%self.doc.supplier)
+		res = sql("""select supplier_name from `tabSupplier`
+			where name=%s""", self.doc.supplier)
 		addr = self.get_address_text(supplier = self.doc.supplier)
 		ret = {
 			'supplier_name' : res and res[0][0] or '',
diff --git a/stock/doctype/stock_entry/stock_entry.txt b/stock/doctype/stock_entry/stock_entry.txt
index f528430..d3b39c3 100644
--- a/stock/doctype/stock_entry/stock_entry.txt
+++ b/stock/doctype/stock_entry/stock_entry.txt
@@ -2,9 +2,9 @@
  {
   "owner": "Administrator", 
   "docstatus": 0, 
-  "creation": "2012-11-28 11:26:22", 
+  "creation": "2012-12-19 12:29:07", 
   "modified_by": "Administrator", 
-  "modified": "2012-12-03 12:00:59"
+  "modified": "2012-12-19 18:09:15"
  }, 
  {
   "is_submittable": 1, 
@@ -59,7 +59,6 @@
   "description": "To manage multiple series please go to Setup > Manage Series", 
   "no_copy": 1, 
   "oldfieldtype": "Select", 
-  "colour": "White:FFF", 
   "allow_on_submit": 0, 
   "doctype": "DocField", 
   "label": "Series", 
@@ -76,223 +75,24 @@
  }, 
  {
   "print_hide": 0, 
+  "permlevel": 0, 
   "no_copy": 0, 
   "oldfieldtype": "Select", 
-  "colour": "White:FFF", 
   "allow_on_submit": 0, 
   "doctype": "DocField", 
   "label": "Purpose", 
   "oldfieldname": "purpose", 
-  "permlevel": 0, 
-  "trigger": "Client", 
+  "default": "Material Issue", 
   "fieldname": "purpose", 
   "fieldtype": "Select", 
   "search_index": 0, 
   "reqd": 1, 
   "hidden": 0, 
-  "options": "Material Issue\nMaterial Receipt\nMaterial Transfer\nSales Return\nPurchase Return\nSubcontracting\nProduction Order\nOther", 
+  "options": "Material Issue\nMaterial Receipt\nMaterial Transfer\nManufacture/Repack\nSubcontract\nSales Return\nPurchase Return", 
   "report_hide": 0, 
   "in_filter": 1
  }, 
  {
-  "print_hide": 1, 
-  "no_copy": 0, 
-  "oldfieldtype": "Link", 
-  "colour": "White:FFF", 
-  "allow_on_submit": 0, 
-  "doctype": "DocField", 
-  "label": "Delivery Note No", 
-  "oldfieldname": "delivery_note_no", 
-  "permlevel": 0, 
-  "trigger": "Client", 
-  "fieldname": "delivery_note_no", 
-  "fieldtype": "Link", 
-  "search_index": 1, 
-  "reqd": 0, 
-  "hidden": 1, 
-  "options": "Delivery Note", 
-  "report_hide": 0, 
-  "in_filter": 0
- }, 
- {
-  "print_hide": 1, 
-  "no_copy": 0, 
-  "oldfieldtype": "Link", 
-  "colour": "White:FFF", 
-  "allow_on_submit": 0, 
-  "doctype": "DocField", 
-  "label": "Purchase Receipt No", 
-  "oldfieldname": "purchase_receipt_no", 
-  "permlevel": 0, 
-  "trigger": "Client", 
-  "fieldname": "purchase_receipt_no", 
-  "fieldtype": "Link", 
-  "search_index": 1, 
-  "reqd": 0, 
-  "hidden": 1, 
-  "options": "Purchase Receipt", 
-  "report_hide": 0, 
-  "in_filter": 0
- }, 
- {
-  "print_hide": 1, 
-  "doctype": "DocField", 
-  "label": "Sales Invoice No", 
-  "options": "Sales Invoice", 
-  "fieldname": "sales_invoice_no", 
-  "fieldtype": "Link", 
-  "hidden": 1, 
-  "permlevel": 0
- }, 
- {
-  "print_hide": 1, 
-  "no_copy": 0, 
-  "oldfieldtype": "Select", 
-  "colour": "White:FFF", 
-  "allow_on_submit": 0, 
-  "doctype": "DocField", 
-  "label": "Process", 
-  "oldfieldname": "process", 
-  "permlevel": 0, 
-  "trigger": "Client", 
-  "fieldname": "process", 
-  "fieldtype": "Select", 
-  "search_index": 0, 
-  "reqd": 0, 
-  "hidden": 1, 
-  "options": "\nMaterial Transfer\nBackflush", 
-  "report_hide": 0, 
-  "in_filter": 1
- }, 
- {
-  "print_hide": 1, 
-  "no_copy": 0, 
-  "oldfieldtype": "Link", 
-  "colour": "White:FFF", 
-  "allow_on_submit": 0, 
-  "doctype": "DocField", 
-  "label": "Production Order", 
-  "oldfieldname": "production_order", 
-  "permlevel": 0, 
-  "trigger": "Client", 
-  "fieldname": "production_order", 
-  "fieldtype": "Link", 
-  "search_index": 1, 
-  "reqd": 0, 
-  "hidden": 1, 
-  "options": "Production Order", 
-  "report_hide": 0, 
-  "in_filter": 1
- }, 
- {
-  "depends_on": "eval:doc.purpose == 'Other'", 
-  "doctype": "DocField", 
-  "label": "BOM No", 
-  "options": "BOM", 
-  "fieldname": "bom_no", 
-  "fieldtype": "Link", 
-  "permlevel": 0
- }, 
- {
-  "description": "If checked, BOM for sub-assembly items will be considered for getting raw materials. Otherwise, all sub-assembly items will be treated as a raw material.", 
-  "depends_on": "eval:doc.purpose == 'Other'", 
-  "colour": "White:FFF", 
-  "doctype": "DocField", 
-  "label": "Use Multi-Level BOM", 
-  "fieldname": "use_multi_level_bom", 
-  "fieldtype": "Check", 
-  "permlevel": 0
- }, 
- {
-  "print_hide": 1, 
-  "no_copy": 0, 
-  "oldfieldtype": "Currency", 
-  "allow_on_submit": 0, 
-  "doctype": "DocField", 
-  "label": "FG Completed Qty", 
-  "oldfieldname": "fg_completed_qty", 
-  "trigger": "Client", 
-  "fieldname": "fg_completed_qty", 
-  "fieldtype": "Currency", 
-  "search_index": 0, 
-  "reqd": 0, 
-  "hidden": 0, 
-  "permlevel": 0, 
-  "report_hide": 0, 
-  "in_filter": 0
- }, 
- {
-  "print_hide": 1, 
-  "no_copy": 0, 
-  "oldfieldtype": "Button", 
-  "colour": "White:FFF", 
-  "allow_on_submit": 0, 
-  "doctype": "DocField", 
-  "label": "Get Items", 
-  "permlevel": 0, 
-  "fieldname": "get_items", 
-  "fieldtype": "Button", 
-  "search_index": 0, 
-  "reqd": 0, 
-  "hidden": 0, 
-  "options": "get_items", 
-  "report_hide": 0, 
-  "in_filter": 0
- }, 
- {
-  "print_hide": 1, 
-  "no_copy": 0, 
-  "oldfieldtype": "HTML", 
-  "colour": "White:FFF", 
-  "doctype": "DocField", 
-  "label": "Warehouse HTML", 
-  "options": "<div class='columnHeading'>Warehouse</div>", 
-  "fieldname": "warehouse_html", 
-  "fieldtype": "HTML", 
-  "permlevel": 0
- }, 
- {
-  "print_hide": 1, 
-  "no_copy": 0, 
-  "oldfieldtype": "Link", 
-  "colour": "White:FFF", 
-  "allow_on_submit": 0, 
-  "doctype": "DocField", 
-  "label": "Source Warehouse", 
-  "oldfieldname": "from_warehouse", 
-  "permlevel": 0, 
-  "trigger": "Client", 
-  "fieldname": "from_warehouse", 
-  "fieldtype": "Link", 
-  "search_index": 0, 
-  "reqd": 0, 
-  "hidden": 0, 
-  "options": "Warehouse", 
-  "report_hide": 0, 
-  "in_filter": 0
- }, 
- {
-  "no_copy": 0, 
-  "oldfieldtype": "Link", 
-  "oldfieldname": "to_warehouse", 
-  "reqd": 0, 
-  "in_filter": 0, 
-  "print_hide": 1, 
-  "label": "Target Warehouse", 
-  "trigger": "Client", 
-  "hidden": 0, 
-  "permlevel": 0, 
-  "description": "<b>Notes:</b> Either Source or Target is Mandatory", 
-  "search_index": 0, 
-  "allow_on_submit": 0, 
-  "colour": "White:FFF", 
-  "doctype": "DocField", 
-  "fieldname": "to_warehouse", 
-  "fieldtype": "Link", 
-  "options": "Warehouse", 
-  "report_hide": 0
- }, 
- {
   "oldfieldtype": "Column Break", 
   "doctype": "DocField", 
   "width": "50%", 
@@ -303,12 +103,13 @@
  {
   "print_hide": 1, 
   "description": "The date at which current entry will get or has actually executed.", 
-  "no_copy": 1, 
+  "default": "Today", 
   "oldfieldtype": "Date", 
   "allow_on_submit": 0, 
   "doctype": "DocField", 
   "label": "Posting Date", 
   "oldfieldname": "posting_date", 
+  "no_copy": 1, 
   "fieldname": "posting_date", 
   "fieldtype": "Date", 
   "search_index": 1, 
@@ -336,23 +137,6 @@
   "in_filter": 0
  }, 
  {
-  "print_hide": 1, 
-  "no_copy": 1, 
-  "oldfieldtype": "Text", 
-  "allow_on_submit": 0, 
-  "doctype": "DocField", 
-  "label": "Remarks", 
-  "oldfieldname": "remarks", 
-  "fieldname": "remarks", 
-  "fieldtype": "Text", 
-  "search_index": 0, 
-  "reqd": 1, 
-  "hidden": 0, 
-  "permlevel": 0, 
-  "report_hide": 0, 
-  "in_filter": 0
- }, 
- {
   "oldfieldtype": "Section Break", 
   "doctype": "DocField", 
   "label": "Items", 
@@ -361,10 +145,58 @@
   "permlevel": 0
  }, 
  {
+  "print_hide": 1, 
+  "no_copy": 0, 
+  "oldfieldtype": "Link", 
+  "allow_on_submit": 0, 
+  "doctype": "DocField", 
+  "label": "Default Source Warehouse", 
+  "oldfieldname": "from_warehouse", 
+  "permlevel": 0, 
+  "fieldname": "from_warehouse", 
+  "fieldtype": "Link", 
+  "search_index": 0, 
+  "reqd": 0, 
+  "hidden": 0, 
+  "options": "Warehouse", 
+  "report_hide": 0, 
+  "in_filter": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "fieldname": "cb0", 
+  "fieldtype": "Column Break", 
+  "permlevel": 0
+ }, 
+ {
+  "print_hide": 1, 
+  "no_copy": 0, 
+  "oldfieldtype": "Link", 
+  "allow_on_submit": 0, 
+  "doctype": "DocField", 
+  "label": "Default Target Warehouse", 
+  "oldfieldname": "to_warehouse", 
+  "permlevel": 0, 
+  "fieldname": "to_warehouse", 
+  "fieldtype": "Link", 
+  "search_index": 0, 
+  "reqd": 0, 
+  "hidden": 0, 
+  "options": "Warehouse", 
+  "report_hide": 0, 
+  "in_filter": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "options": "Simple", 
+  "fieldname": "sb0", 
+  "fieldtype": "Section Break", 
+  "permlevel": 0
+ }, 
+ {
   "print_hide": 0, 
   "no_copy": 0, 
   "oldfieldtype": "Table", 
-  "colour": "White:FFF", 
   "allow_on_submit": 0, 
   "doctype": "DocField", 
   "label": "MTN Details", 
@@ -380,42 +212,9 @@
   "in_filter": 0
  }, 
  {
-  "oldfieldtype": "Section Break", 
-  "doctype": "DocField", 
-  "options": "Simple", 
-  "fieldname": "item_section", 
-  "fieldtype": "Section Break", 
-  "permlevel": 0
- }, 
- {
-  "print_hide": 1, 
-  "no_copy": 0, 
-  "oldfieldtype": "Currency", 
-  "allow_on_submit": 0, 
-  "doctype": "DocField", 
-  "label": "Total Amount", 
-  "oldfieldname": "total_amount", 
-  "fieldname": "total_amount", 
-  "fieldtype": "Currency", 
-  "search_index": 0, 
-  "reqd": 0, 
-  "hidden": 0, 
-  "permlevel": 1, 
-  "report_hide": 0, 
-  "in_filter": 0
- }, 
- {
-  "oldfieldtype": "Column Break", 
-  "doctype": "DocField", 
-  "fieldname": "col3", 
-  "fieldtype": "Column Break", 
-  "permlevel": 0
- }, 
- {
   "print_hide": 1, 
   "description": "Get valuation rate and available stock at source/target warehouse on mentioned posting date-time. If serialized item, please press this button after entering serial nos.", 
   "oldfieldtype": "Button", 
-  "colour": "White:FFF", 
   "doctype": "DocField", 
   "label": "Get Stock and Rate", 
   "options": "get_stock_and_rate", 
@@ -425,6 +224,143 @@
  }, 
  {
   "doctype": "DocField", 
+  "label": "Reference", 
+  "fieldname": "sb1", 
+  "fieldtype": "Section Break", 
+  "permlevel": 0
+ }, 
+ {
+  "print_hide": 1, 
+  "depends_on": "eval:inList([\"Material Transfer\", \"Manufacture/Repack\"], doc.purpose)", 
+  "no_copy": 0, 
+  "search_index": 1, 
+  "allow_on_submit": 0, 
+  "doctype": "DocField", 
+  "label": "Production Order", 
+  "oldfieldname": "production_order", 
+  "permlevel": 0, 
+  "fieldname": "production_order", 
+  "fieldtype": "Link", 
+  "oldfieldtype": "Link", 
+  "reqd": 0, 
+  "hidden": 1, 
+  "options": "Production Order", 
+  "report_hide": 0, 
+  "in_filter": 1
+ }, 
+ {
+  "depends_on": "eval:!inList([\"Sales Return\", \"Purchase Return\"], doc.purpose)", 
+  "doctype": "DocField", 
+  "label": "BOM No", 
+  "options": "BOM", 
+  "fieldname": "bom_no", 
+  "fieldtype": "Link", 
+  "permlevel": 0
+ }, 
+ {
+  "print_hide": 1, 
+  "depends_on": "eval:!inList([\"Sales Return\", \"Purchase Return\"], doc.purpose)", 
+  "description": "As per Stock UOM", 
+  "no_copy": 0, 
+  "search_index": 0, 
+  "allow_on_submit": 0, 
+  "doctype": "DocField", 
+  "label": "Manufacturing Quantity", 
+  "oldfieldname": "fg_completed_qty", 
+  "fieldname": "fg_completed_qty", 
+  "fieldtype": "Currency", 
+  "oldfieldtype": "Currency", 
+  "reqd": 0, 
+  "hidden": 0, 
+  "in_filter": 0, 
+  "permlevel": 0, 
+  "report_hide": 0
+ }, 
+ {
+  "print_hide": 1, 
+  "depends_on": "eval:doc.purpose==\"Sales Return\"", 
+  "no_copy": 0, 
+  "search_index": 1, 
+  "allow_on_submit": 0, 
+  "doctype": "DocField", 
+  "label": "Delivery Note No", 
+  "oldfieldname": "delivery_note_no", 
+  "permlevel": 0, 
+  "fieldname": "delivery_note_no", 
+  "fieldtype": "Link", 
+  "oldfieldtype": "Link", 
+  "reqd": 0, 
+  "hidden": 1, 
+  "options": "Delivery Note", 
+  "report_hide": 0, 
+  "in_filter": 0
+ }, 
+ {
+  "print_hide": 1, 
+  "depends_on": "eval:doc.purpose==\"Purchase Return\"", 
+  "no_copy": 0, 
+  "search_index": 1, 
+  "allow_on_submit": 0, 
+  "doctype": "DocField", 
+  "label": "Purchase Receipt No", 
+  "oldfieldname": "purchase_receipt_no", 
+  "permlevel": 0, 
+  "fieldname": "purchase_receipt_no", 
+  "fieldtype": "Link", 
+  "oldfieldtype": "Link", 
+  "reqd": 0, 
+  "hidden": 1, 
+  "options": "Purchase Receipt", 
+  "report_hide": 0, 
+  "in_filter": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "fieldname": "cb1", 
+  "fieldtype": "Column Break", 
+  "permlevel": 0
+ }, 
+ {
+  "description": "If checked, BOM for sub-assembly items will be considered for getting raw materials. Otherwise, all sub-assembly items will be treated as a raw material.", 
+  "default": "1", 
+  "depends_on": "eval:!inList([\"Sales Return\", \"Purchase Return\"], doc.purpose)", 
+  "doctype": "DocField", 
+  "label": "Use Multi-Level BOM", 
+  "fieldname": "use_multi_level_bom", 
+  "fieldtype": "Check", 
+  "permlevel": 0
+ }, 
+ {
+  "print_hide": 1, 
+  "depends_on": "eval:!inList([\"Sales Return\", \"Purchase Return\"], doc.purpose)", 
+  "no_copy": 0, 
+  "search_index": 0, 
+  "allow_on_submit": 0, 
+  "doctype": "DocField", 
+  "label": "Get Items", 
+  "fieldname": "get_items", 
+  "fieldtype": "Button", 
+  "oldfieldtype": "Button", 
+  "reqd": 0, 
+  "hidden": 0, 
+  "permlevel": 0, 
+  "report_hide": 0, 
+  "in_filter": 0
+ }, 
+ {
+  "print_hide": 1, 
+  "depends_on": "eval:doc.purpose==\"Sales Return\"", 
+  "doctype": "DocField", 
+  "label": "Sales Invoice No", 
+  "options": "Sales Invoice", 
+  "fieldname": "sales_invoice_no", 
+  "fieldtype": "Link", 
+  "hidden": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "depends_on": "eval:(doc.purpose==\"Sales Return\" || doc.purpose==\"Purchase Return\")", 
+  "doctype": "DocField", 
   "label": "Contact Info", 
   "fieldname": "contact_section", 
   "fieldtype": "Section Break", 
@@ -432,18 +368,17 @@
  }, 
  {
   "print_hide": 1, 
+  "depends_on": "eval:doc.purpose==\"Purchase Return\"", 
   "no_copy": 0, 
-  "oldfieldtype": "Link", 
-  "colour": "White:FFF", 
+  "search_index": 0, 
   "allow_on_submit": 0, 
   "doctype": "DocField", 
   "label": "Supplier", 
   "oldfieldname": "supplier", 
   "permlevel": 0, 
-  "trigger": "Client", 
   "fieldname": "supplier", 
   "fieldtype": "Link", 
-  "search_index": 0, 
+  "oldfieldtype": "Link", 
   "reqd": 0, 
   "hidden": 0, 
   "options": "Supplier", 
@@ -452,15 +387,16 @@
  }, 
  {
   "print_hide": 0, 
+  "depends_on": "eval:doc.purpose==\"Purchase Return\"", 
   "no_copy": 0, 
-  "oldfieldtype": "Data", 
+  "search_index": 0, 
   "allow_on_submit": 0, 
   "doctype": "DocField", 
   "label": "Supplier Name", 
   "oldfieldname": "supplier_name", 
   "fieldname": "supplier_name", 
   "fieldtype": "Data", 
-  "search_index": 0, 
+  "oldfieldtype": "Data", 
   "reqd": 0, 
   "hidden": 0, 
   "permlevel": 1, 
@@ -469,17 +405,16 @@
  }, 
  {
   "print_hide": 0, 
+  "depends_on": "eval:doc.purpose==\"Purchase Return\"", 
   "no_copy": 0, 
-  "oldfieldtype": "Small Text", 
-  "colour": "White:FFF", 
+  "search_index": 0, 
   "allow_on_submit": 0, 
   "doctype": "DocField", 
   "label": "Supplier Address", 
   "oldfieldname": "supplier_address", 
-  "trigger": "Client", 
   "fieldname": "supplier_address", 
   "fieldtype": "Small Text", 
-  "search_index": 0, 
+  "oldfieldtype": "Small Text", 
   "reqd": 0, 
   "hidden": 0, 
   "permlevel": 0, 
@@ -488,18 +423,17 @@
  }, 
  {
   "print_hide": 1, 
+  "depends_on": "eval:doc.purpose==\"Sales Return\"", 
   "no_copy": 0, 
-  "oldfieldtype": "Link", 
-  "colour": "White:FFF", 
+  "search_index": 0, 
   "allow_on_submit": 0, 
   "doctype": "DocField", 
   "label": "Customer", 
   "oldfieldname": "customer", 
   "permlevel": 0, 
-  "trigger": "Client", 
   "fieldname": "customer", 
   "fieldtype": "Link", 
-  "search_index": 0, 
+  "oldfieldtype": "Link", 
   "reqd": 0, 
   "hidden": 0, 
   "options": "Customer", 
@@ -508,15 +442,16 @@
  }, 
  {
   "print_hide": 0, 
+  "depends_on": "eval:doc.purpose==\"Sales Return\"", 
   "no_copy": 0, 
-  "oldfieldtype": "Data", 
+  "search_index": 0, 
   "allow_on_submit": 0, 
   "doctype": "DocField", 
   "label": "Customer Name", 
   "oldfieldname": "customer_name", 
   "fieldname": "customer_name", 
   "fieldtype": "Data", 
-  "search_index": 0, 
+  "oldfieldtype": "Data", 
   "reqd": 0, 
   "hidden": 0, 
   "permlevel": 1, 
@@ -525,15 +460,16 @@
  }, 
  {
   "print_hide": 0, 
+  "depends_on": "eval:doc.purpose==\"Sales Return\"", 
   "no_copy": 0, 
-  "oldfieldtype": "Small Text", 
+  "search_index": 0, 
   "allow_on_submit": 0, 
   "doctype": "DocField", 
   "label": "Customer Address", 
   "oldfieldname": "customer_address", 
   "fieldname": "customer_address", 
   "fieldtype": "Small Text", 
-  "search_index": 0, 
+  "oldfieldtype": "Small Text", 
   "reqd": 0, 
   "hidden": 0, 
   "permlevel": 0, 
@@ -586,119 +522,6 @@
  }, 
  {
   "print_hide": 1, 
-  "no_copy": 1, 
-  "oldfieldtype": "Data", 
-  "allow_on_submit": 0, 
-  "doctype": "DocField", 
-  "label": "Cancel Reason", 
-  "oldfieldname": "cancel_reason", 
-  "fieldname": "cancel_reason", 
-  "fieldtype": "Data", 
-  "search_index": 0, 
-  "reqd": 0, 
-  "hidden": 1, 
-  "permlevel": 1, 
-  "report_hide": 0, 
-  "in_filter": 0
- }, 
- {
-  "print_hide": 0, 
-  "no_copy": 1, 
-  "oldfieldtype": "Date", 
-  "allow_on_submit": 0, 
-  "doctype": "DocField", 
-  "label": "Transfer Date", 
-  "oldfieldname": "transfer_date", 
-  "default": "Today", 
-  "fieldname": "transfer_date", 
-  "fieldtype": "Date", 
-  "search_index": 0, 
-  "reqd": 1, 
-  "hidden": 0, 
-  "permlevel": 0, 
-  "report_hide": 0, 
-  "in_filter": 1
- }, 
- {
-  "doctype": "DocField", 
-  "width": "50%", 
-  "fieldname": "col5", 
-  "fieldtype": "Column Break", 
-  "permlevel": 0
- }, 
- {
-  "print_hide": 1, 
-  "no_copy": 0, 
-  "oldfieldtype": "Select", 
-  "allow_on_submit": 0, 
-  "doctype": "DocField", 
-  "label": "Is Excisable Goods", 
-  "oldfieldname": "is_excisable_goods", 
-  "permlevel": 0, 
-  "fieldname": "is_excisable_goods", 
-  "fieldtype": "Select", 
-  "search_index": 0, 
-  "reqd": 0, 
-  "hidden": 0, 
-  "options": "\nYes\nNo", 
-  "report_hide": 0, 
-  "in_filter": 0
- }, 
- {
-  "print_hide": 1, 
-  "no_copy": 0, 
-  "oldfieldtype": "Select", 
-  "allow_on_submit": 0, 
-  "doctype": "DocField", 
-  "label": "Excisable Goods", 
-  "oldfieldname": "excisable_goods", 
-  "permlevel": 0, 
-  "fieldname": "excisable_goods", 
-  "fieldtype": "Select", 
-  "search_index": 0, 
-  "reqd": 0, 
-  "hidden": 0, 
-  "options": "\nReturnable\nNon-Returnable", 
-  "report_hide": 0, 
-  "in_filter": 0
- }, 
- {
-  "print_hide": 1, 
-  "no_copy": 0, 
-  "oldfieldtype": "Select", 
-  "allow_on_submit": 0, 
-  "doctype": "DocField", 
-  "label": "Under Rule", 
-  "oldfieldname": "under_rule", 
-  "permlevel": 0, 
-  "fieldname": "under_rule", 
-  "fieldtype": "Select", 
-  "search_index": 0, 
-  "reqd": 0, 
-  "hidden": 1, 
-  "options": "\nOrdinary\n57 AC (5) a\n57 F (2) Non-Exc.", 
-  "report_hide": 0, 
-  "in_filter": 0
- }, 
- {
-  "print_hide": 1, 
-  "no_copy": 0, 
-  "oldfieldtype": "Data", 
-  "allow_on_submit": 0, 
-  "doctype": "DocField", 
-  "label": "Transporter", 
-  "oldfieldname": "transporter", 
-  "fieldname": "transporter", 
-  "fieldtype": "Data", 
-  "search_index": 0, 
-  "reqd": 0, 
-  "hidden": 0, 
-  "permlevel": 0, 
-  "report_hide": 0, 
-  "in_filter": 0
- }, 
- {
-  "print_hide": 1, 
   "no_copy": 0, 
   "oldfieldtype": "Link", 
   "allow_on_submit": 0, 
@@ -716,22 +539,11 @@
   "in_filter": 1
  }, 
  {
-  "print_hide": 1, 
-  "no_copy": 0, 
-  "oldfieldtype": "Select", 
-  "allow_on_submit": 0, 
   "doctype": "DocField", 
-  "label": "Fiscal Year", 
-  "oldfieldname": "fiscal_year", 
-  "permlevel": 0, 
-  "fieldname": "fiscal_year", 
-  "fieldtype": "Select", 
-  "search_index": 0, 
-  "reqd": 1, 
-  "hidden": 0, 
-  "options": "link:Fiscal Year", 
-  "report_hide": 0, 
-  "in_filter": 0
+  "width": "50%", 
+  "fieldname": "col5", 
+  "fieldtype": "Column Break", 
+  "permlevel": 0
  }, 
  {
   "print_hide": 1, 
@@ -753,21 +565,20 @@
  }, 
  {
   "print_hide": 1, 
-  "description": "The date at which current entry is corrected in the system.", 
   "no_copy": 1, 
-  "oldfieldtype": "Date", 
+  "oldfieldtype": "Text", 
   "allow_on_submit": 0, 
   "doctype": "DocField", 
-  "label": "Amendment Date", 
-  "oldfieldname": "amendment_date", 
-  "fieldname": "amendment_date", 
-  "fieldtype": "Date", 
+  "label": "Remarks", 
+  "oldfieldname": "remarks", 
+  "fieldname": "remarks", 
+  "fieldtype": "Text", 
   "search_index": 0, 
   "reqd": 0, 
   "hidden": 0, 
-  "in_filter": 0, 
   "permlevel": 0, 
-  "report_hide": 0
+  "report_hide": 0, 
+  "in_filter": 0
  }, 
  {
   "amend": 1, 
@@ -793,13 +604,13 @@
   "create": 0, 
   "doctype": "DocPerm", 
   "write": 1, 
-  "role": "Production User", 
+  "role": "Manufacturing User", 
   "permlevel": 2
  }, 
  {
   "doctype": "DocPerm", 
   "write": 1, 
-  "role": "Production Manager", 
+  "role": "Manufacturing Manager", 
   "permlevel": 2
  }, 
  {
@@ -808,13 +619,13 @@
   "doctype": "DocPerm", 
   "submit": 1, 
   "write": 1, 
-  "role": "Production User", 
+  "role": "Manufacturing User", 
   "cancel": 1, 
   "permlevel": 0
  }, 
  {
   "doctype": "DocPerm", 
-  "role": "Production User", 
+  "role": "Manufacturing User", 
   "permlevel": 1
  }, 
  {
@@ -823,13 +634,13 @@
   "doctype": "DocPerm", 
   "submit": 1, 
   "write": 1, 
-  "role": "Production Manager", 
+  "role": "Manufacturing Manager", 
   "cancel": 1, 
   "permlevel": 0
  }, 
  {
   "doctype": "DocPerm", 
-  "role": "Production Manager", 
+  "role": "Manufacturing Manager", 
   "permlevel": 1
  }, 
  {
diff --git a/stock/doctype/stock_entry_detail/stock_entry_detail.txt b/stock/doctype/stock_entry_detail/stock_entry_detail.txt
index c191797..6926c9a 100644
--- a/stock/doctype/stock_entry_detail/stock_entry_detail.txt
+++ b/stock/doctype/stock_entry_detail/stock_entry_detail.txt
@@ -2,9 +2,9 @@
  {
   "owner": "Administrator", 
   "docstatus": 0, 
-  "creation": "2012-07-03 13:29:47", 
+  "creation": "2012-12-18 13:47:41", 
   "modified_by": "Administrator", 
-  "modified": "2012-12-03 11:37:17"
+  "modified": "2012-12-18 17:08:52"
  }, 
  {
   "istable": 1, 
@@ -14,6 +14,7 @@
   "module": "Stock"
  }, 
  {
+  "read_only": 0, 
   "name": "__common__", 
   "parent": "Stock Entry Detail", 
   "doctype": "DocField", 
@@ -52,7 +53,6 @@
   "label": "Item Code", 
   "oldfieldname": "item_code", 
   "permlevel": 0, 
-  "trigger": "Client", 
   "fieldname": "item_code", 
   "fieldtype": "Link", 
   "search_index": 1, 
@@ -75,7 +75,6 @@
   "doctype": "DocField", 
   "label": "Qty", 
   "oldfieldname": "qty", 
-  "trigger": "Client", 
   "fieldname": "qty", 
   "fieldtype": "Currency", 
   "reqd": 1, 
@@ -83,15 +82,13 @@
  }, 
  {
   "oldfieldtype": "Link", 
-  "colour": "White:FFF", 
   "doctype": "DocField", 
   "label": "UOM", 
   "oldfieldname": "uom", 
-  "trigger": "Client", 
+  "options": "UOM", 
   "fieldname": "uom", 
   "fieldtype": "Link", 
   "reqd": 1, 
-  "options": "UOM", 
   "permlevel": 0
  }, 
  {
@@ -130,25 +127,13 @@
   "doctype": "DocField", 
   "label": "Batch No", 
   "oldfieldname": "batch_no", 
-  "trigger": "Client", 
+  "options": "Batch", 
   "fieldname": "batch_no", 
   "fieldtype": "Link", 
-  "options": "Batch", 
   "permlevel": 0
  }, 
  {
   "print_hide": 1, 
-  "oldfieldtype": "Currency", 
-  "doctype": "DocField", 
-  "label": "Reqd Qty", 
-  "oldfieldname": "reqd_qty", 
-  "fieldname": "reqd_qty", 
-  "fieldtype": "Currency", 
-  "permlevel": 3, 
-  "in_filter": 0
- }, 
- {
-  "print_hide": 1, 
   "no_copy": 1, 
   "oldfieldtype": "Read Only", 
   "doctype": "DocField", 
@@ -174,7 +159,7 @@
  {
   "oldfieldtype": "Currency", 
   "doctype": "DocField", 
-  "label": "Stock Qty", 
+  "label": "Qty as per Stock UOM", 
   "oldfieldname": "transfer_qty", 
   "fieldname": "transfer_qty", 
   "fieldtype": "Currency", 
@@ -186,32 +171,24 @@
   "doctype": "DocField", 
   "label": "Stock UOM", 
   "oldfieldname": "stock_uom", 
-  "options": "UOM", 
+  "permlevel": 1, 
   "fieldname": "stock_uom", 
   "fieldtype": "Link", 
   "search_index": 0, 
   "reqd": 1, 
-  "permlevel": 1, 
+  "options": "UOM", 
   "in_filter": 0
  }, 
  {
+  "print_hide": 1, 
   "description": "BOM No. for a Finished Good Item", 
+  "no_copy": 0, 
   "doctype": "DocField", 
   "label": "BOM No", 
   "options": "BOM", 
   "fieldname": "bom_no", 
   "fieldtype": "Link", 
+  "hidden": 1, 
   "permlevel": 0
- }, 
- {
-  "print_hide": 1, 
-  "oldfieldtype": "Check", 
-  "doctype": "DocField", 
-  "label": "FG Item", 
-  "oldfieldname": "fg_item", 
-  "fieldname": "fg_item", 
-  "fieldtype": "Check", 
-  "permlevel": 0, 
-  "in_filter": 1
  }
 ]
\ No newline at end of file
diff --git a/stock/doctype/stock_ledger/stock_ledger.py b/stock/doctype/stock_ledger/stock_ledger.py
index b9a47f5..8d39b26 100644
--- a/stock/doctype/stock_ledger/stock_ledger.py
+++ b/stock/doctype/stock_ledger/stock_ledger.py
@@ -125,7 +125,6 @@
 		s.modified_by				=	session['user']
 		s.serial_no					=	serial_no
 		s.sle_exists				=	1
-		s.fiscal_year				=	obj.doc.fiscal_year
 		s.company					=	obj.doc.company
 		s.save(new_rec)
 
diff --git a/stock/doctype/stock_ledger/stock_ledger.txt b/stock/doctype/stock_ledger/stock_ledger.txt
index cebe0d0..31b35e3 100644
--- a/stock/doctype/stock_ledger/stock_ledger.txt
+++ b/stock/doctype/stock_ledger/stock_ledger.txt
@@ -1,57 +1,44 @@
-# DocType, Stock Ledger
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:36:38',
-		'docstatus': 0,
-		'modified': '2012-03-27 14:36:38',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'hide_toolbar': 1,
-		'in_create': 1,
-		'issingle': 1,
-		'module': u'Stock',
-		'name': '__common__',
-		'read_only': 1,
-		'section_style': u'Simple',
-		'server_code_error': u' ',
-		'show_in_menu': 0,
-		'version': 10
-	},
-
-	# These values are common for all DocPerm
-	{
-		'doctype': u'DocPerm',
-		'name': '__common__',
-		'parent': u'Stock Ledger',
-		'parentfield': u'permissions',
-		'parenttype': u'DocType',
-		'permlevel': 1,
-		'read': 1
-	},
-
-	# DocType, Stock Ledger
-	{
-		'doctype': 'DocType',
-		'name': u'Stock Ledger'
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm',
-		'role': u'All'
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm',
-		'role': u'Material User'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-03-27 14:36:38", 
+  "modified_by": "Administrator", 
+  "modified": "2012-03-27 14:36:38"
+ }, 
+ {
+  "section_style": "Simple", 
+  "in_create": 1, 
+  "module": "Stock", 
+  "server_code_error": " ", 
+  "read_only": 1, 
+  "issingle": 1, 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "doctype": "DocType", 
+  "show_in_menu": 0, 
+  "version": 10, 
+  "hide_toolbar": 1
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Stock Ledger", 
+  "read": 1, 
+  "doctype": "DocPerm", 
+  "parenttype": "DocType", 
+  "permlevel": 1, 
+  "parentfield": "permissions"
+ }, 
+ {
+  "name": "Stock Ledger", 
+  "doctype": "DocType"
+ }, 
+ {
+  "role": "All", 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "role": "Material User", 
+  "doctype": "DocPerm"
+ }
 ]
\ No newline at end of file
diff --git a/stock/doctype/stock_ledger_entry/stock_ledger_entry.py b/stock/doctype/stock_ledger_entry/stock_ledger_entry.py
index e6c4dee..0994e50 100644
--- a/stock/doctype/stock_ledger_entry/stock_ledger_entry.py
+++ b/stock/doctype/stock_ledger_entry/stock_ledger_entry.py
@@ -44,7 +44,7 @@
 			 
 
 	def validate_mandatory(self):		
-		mandatory = ['warehouse','transaction_date','posting_date','voucher_type','voucher_no','actual_qty','company','fiscal_year']
+		mandatory = ['warehouse','posting_date','voucher_type','voucher_no','actual_qty','company']
 		for k in mandatory:
 			if self.doc.fields.get(k)==None:
 				msgprint("Stock Ledger Entry: '%s' is mandatory" % k, raise_exception = 1)
diff --git a/stock/doctype/stock_ledger_entry/stock_ledger_entry.txt b/stock/doctype/stock_ledger_entry/stock_ledger_entry.txt
index 6a5baf4..6b10836 100644
--- a/stock/doctype/stock_ledger_entry/stock_ledger_entry.txt
+++ b/stock/doctype/stock_ledger_entry/stock_ledger_entry.txt
@@ -1,420 +1,353 @@
-# DocType, Stock Ledger Entry
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:36:38',
-		'docstatus': 0,
-		'modified': '2012-03-27 14:36:38',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'_last_update': u'1322549701',
-		'autoname': u'SLE/.########',
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'hide_toolbar': 1,
-		'in_create': 1,
-		'module': u'Stock',
-		'name': '__common__',
-		'section_style': u'Simple',
-		'server_code_error': u' ',
-		'show_in_menu': 0,
-		'version': 53
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'Stock Ledger Entry',
-		'parentfield': u'fields',
-		'parenttype': u'DocType'
-	},
-
-	# These values are common for all DocPerm
-	{
-		'doctype': u'DocPerm',
-		'name': '__common__',
-		'parent': u'Stock Ledger Entry',
-		'parentfield': u'permissions',
-		'parenttype': u'DocType',
-		'read': 1
-	},
-
-	# DocType, Stock Ledger Entry
-	{
-		'doctype': 'DocType',
-		'name': u'Stock Ledger Entry'
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm',
-		'permlevel': 1,
-		'role': u'All'
-	},
-
-	# DocPerm
-	{
-		'amend': 0,
-		'cancel': 0,
-		'create': 0,
-		'doctype': u'DocPerm',
-		'permlevel': 1,
-		'role': u'Material User',
-		'submit': 0,
-		'write': 0
-	},
-
-	# DocPerm
-	{
-		'amend': 0,
-		'cancel': 0,
-		'create': 0,
-		'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'Material User',
-		'submit': 0,
-		'write': 0
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm',
-		'permlevel': 2,
-		'role': u'System Manager'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'item_code',
-		'fieldtype': u'Link',
-		'in_filter': 1,
-		'label': u'Item Code',
-		'oldfieldname': u'item_code',
-		'oldfieldtype': u'Link',
-		'options': u'Item',
-		'permlevel': 1,
-		'reqd': 0,
-		'search_index': 1,
-		'width': u'100px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'serial_no',
-		'fieldtype': u'Text',
-		'in_filter': 0,
-		'label': u'Serial No',
-		'permlevel': 0,
-		'search_index': 0,
-		'width': u'100px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'batch_no',
-		'fieldtype': u'Data',
-		'label': u'Batch No',
-		'oldfieldname': u'batch_no',
-		'oldfieldtype': u'Data',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'warehouse',
-		'fieldtype': u'Link',
-		'in_filter': 1,
-		'label': u'Warehouse',
-		'oldfieldname': u'warehouse',
-		'oldfieldtype': u'Link',
-		'options': u'Warehouse',
-		'permlevel': 1,
-		'search_index': 1,
-		'width': u'100px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'warehouse_type',
-		'fieldtype': u'Select',
-		'in_filter': 1,
-		'label': u'Warehouse Type',
-		'oldfieldname': u'warehouse_type',
-		'oldfieldtype': u'Select',
-		'options': u'link:Warehouse Type',
-		'permlevel': 1,
-		'search_index': 0
-	},
-
-	# DocField
-	{
-		'description': u'The date at which current entry will get or has actually executed.',
-		'doctype': u'DocField',
-		'fieldname': u'posting_date',
-		'fieldtype': u'Date',
-		'in_filter': 1,
-		'label': u'Posting Date',
-		'oldfieldname': u'posting_date',
-		'oldfieldtype': u'Date',
-		'permlevel': 1,
-		'reqd': 0,
-		'search_index': 1,
-		'width': u'100px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'posting_time',
-		'fieldtype': u'Time',
-		'in_filter': 0,
-		'label': u'Posting Time',
-		'oldfieldname': u'posting_time',
-		'oldfieldtype': u'Time',
-		'permlevel': 1,
-		'search_index': 0,
-		'width': u'100px'
-	},
-
-	# DocField
-	{
-		'description': u'The date at which current entry is made in system.',
-		'doctype': u'DocField',
-		'fieldname': u'transaction_date',
-		'fieldtype': u'Date',
-		'in_filter': 1,
-		'label': u'Transaction Date',
-		'oldfieldname': u'transaction_date',
-		'oldfieldtype': u'Date',
-		'permlevel': 1,
-		'search_index': 0,
-		'width': u'100px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'voucher_type',
-		'fieldtype': u'Data',
-		'in_filter': 1,
-		'label': u'Voucher Type',
-		'oldfieldname': u'voucher_type',
-		'oldfieldtype': u'Data',
-		'permlevel': 1,
-		'search_index': 0,
-		'width': u'150px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'voucher_no',
-		'fieldtype': u'Data',
-		'in_filter': 1,
-		'label': u'Voucher No',
-		'oldfieldname': u'voucher_no',
-		'oldfieldtype': u'Data',
-		'permlevel': 1,
-		'search_index': 0,
-		'width': u'150px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'voucher_detail_no',
-		'fieldtype': u'Data',
-		'label': u'Voucher Detail No',
-		'oldfieldname': u'voucher_detail_no',
-		'oldfieldtype': u'Data',
-		'permlevel': 1,
-		'width': u'150px'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'doctype': u'DocField',
-		'fieldname': u'actual_qty',
-		'fieldtype': u'Currency',
-		'in_filter': 1,
-		'label': u'Actual Quantity',
-		'oldfieldname': u'actual_qty',
-		'oldfieldtype': u'Currency',
-		'permlevel': 1,
-		'width': u'150px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'incoming_rate',
-		'fieldtype': u'Currency',
-		'label': u'Incoming Rate',
-		'oldfieldname': u'incoming_rate',
-		'oldfieldtype': u'Currency',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'stock_uom',
-		'fieldtype': u'Data',
-		'label': u'Stock UOM',
-		'oldfieldname': u'stock_uom',
-		'oldfieldtype': u'Data',
-		'permlevel': 1,
-		'width': u'150px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'bin_aqat',
-		'fieldtype': u'Currency',
-		'in_filter': 1,
-		'label': u'Bin Actual Qty After Transaction',
-		'oldfieldname': u'bin_aqat',
-		'oldfieldtype': u'Currency',
-		'permlevel': 1,
-		'width': u'150px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'ma_rate',
-		'fieldtype': u'Currency',
-		'hidden': 1,
-		'label': u'Moving Average Rate',
-		'oldfieldname': u'ma_rate',
-		'oldfieldtype': u'Currency',
-		'permlevel': 0,
-		'print_hide': 1,
-		'report_hide': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'fcfs_rate',
-		'fieldtype': u'Currency',
-		'hidden': 1,
-		'label': u'FIFO Rate',
-		'oldfieldname': u'fcfs_rate',
-		'oldfieldtype': u'Currency',
-		'permlevel': 0,
-		'print_hide': 1,
-		'report_hide': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'valuation_rate',
-		'fieldtype': u'Currency',
-		'label': u'Valuation Rate',
-		'oldfieldname': u'valuation_rate',
-		'oldfieldtype': u'Currency',
-		'permlevel': 0,
-		'width': u'150px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'stock_value',
-		'fieldtype': u'Currency',
-		'label': u'Stock Value',
-		'oldfieldname': u'stock_value',
-		'oldfieldtype': u'Currency',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'fcfs_stack',
-		'fieldtype': u'Text',
-		'hidden': 1,
-		'in_filter': 0,
-		'label': u'FIFO Stack',
-		'oldfieldname': u'fcfs_stack',
-		'oldfieldtype': u'Text',
-		'permlevel': 2,
-		'print_hide': 1,
-		'report_hide': 1,
-		'search_index': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'company',
-		'fieldtype': u'Select',
-		'in_filter': 1,
-		'label': u'Company',
-		'oldfieldname': u'company',
-		'oldfieldtype': u'Data',
-		'options': u'link:Company',
-		'permlevel': 1,
-		'search_index': 0,
-		'width': u'150px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'fiscal_year',
-		'fieldtype': u'Data',
-		'in_filter': 1,
-		'label': u'Fiscal Year',
-		'oldfieldname': u'fiscal_year',
-		'oldfieldtype': u'Data',
-		'permlevel': 1,
-		'search_index': 0,
-		'width': u'150px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'is_cancelled',
-		'fieldtype': u'Select',
-		'in_filter': 1,
-		'label': u'Is Cancelled',
-		'oldfieldname': u'is_cancelled',
-		'oldfieldtype': u'Select',
-		'options': u'\nYes\nNo',
-		'permlevel': 1,
-		'search_index': 0,
-		'width': u'100px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'is_stock_entry',
-		'fieldtype': u'Select',
-		'in_filter': 1,
-		'label': u'Is Stock Entry',
-		'oldfieldname': u'is_stock_entry',
-		'oldfieldtype': u'Select',
-		'options': u'\nYes\nNo',
-		'permlevel': 1,
-		'search_index': 0,
-		'width': u'100px'
-	}
-]
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-03-27 14:36:38", 
+  "modified_by": "Administrator", 
+  "modified": "2012-03-27 14:36:38"
+ }, 
+ {
+  "section_style": "Simple", 
+  "in_create": 1, 
+  "module": "Stock", 
+  "doctype": "DocType", 
+  "server_code_error": " ", 
+  "autoname": "SLE/.########", 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "_last_update": "1322549701", 
+  "show_in_menu": 0, 
+  "version": 53, 
+  "hide_toolbar": 1
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Stock Ledger Entry", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Stock Ledger Entry", 
+  "read": 1, 
+  "doctype": "DocPerm", 
+  "parenttype": "DocType", 
+  "parentfield": "permissions"
+ }, 
+ {
+  "name": "Stock Ledger Entry", 
+  "doctype": "DocType"
+ }, 
+ {
+  "role": "All", 
+  "permlevel": 1, 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "amend": 0, 
+  "create": 0, 
+  "doctype": "DocPerm", 
+  "submit": 0, 
+  "write": 0, 
+  "role": "Material User", 
+  "cancel": 0, 
+  "permlevel": 1
+ }, 
+ {
+  "amend": 0, 
+  "create": 0, 
+  "doctype": "DocPerm", 
+  "submit": 0, 
+  "write": 0, 
+  "role": "Material User", 
+  "cancel": 0, 
+  "permlevel": 0
+ }, 
+ {
+  "role": "System Manager", 
+  "permlevel": 2, 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "search_index": 1, 
+  "doctype": "DocField", 
+  "label": "Item Code", 
+  "oldfieldname": "item_code", 
+  "width": "100px", 
+  "options": "Item", 
+  "fieldname": "item_code", 
+  "fieldtype": "Link", 
+  "oldfieldtype": "Link", 
+  "reqd": 0, 
+  "permlevel": 1, 
+  "in_filter": 1
+ }, 
+ {
+  "search_index": 0, 
+  "doctype": "DocField", 
+  "label": "Serial No", 
+  "width": "100px", 
+  "fieldname": "serial_no", 
+  "fieldtype": "Text", 
+  "permlevel": 0, 
+  "in_filter": 0
+ }, 
+ {
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Batch No", 
+  "oldfieldname": "batch_no", 
+  "fieldname": "batch_no", 
+  "fieldtype": "Data", 
+  "permlevel": 0
+ }, 
+ {
+  "search_index": 1, 
+  "doctype": "DocField", 
+  "label": "Warehouse", 
+  "oldfieldname": "warehouse", 
+  "width": "100px", 
+  "options": "Warehouse", 
+  "fieldname": "warehouse", 
+  "fieldtype": "Link", 
+  "oldfieldtype": "Link", 
+  "permlevel": 1, 
+  "in_filter": 1
+ }, 
+ {
+  "search_index": 0, 
+  "doctype": "DocField", 
+  "label": "Warehouse Type", 
+  "oldfieldname": "warehouse_type", 
+  "permlevel": 1, 
+  "fieldname": "warehouse_type", 
+  "fieldtype": "Select", 
+  "oldfieldtype": "Select", 
+  "options": "link:Warehouse Type", 
+  "in_filter": 1
+ }, 
+ {
+  "description": "The date at which current entry will get or has actually executed.", 
+  "search_index": 1, 
+  "doctype": "DocField", 
+  "label": "Posting Date", 
+  "oldfieldname": "posting_date", 
+  "width": "100px", 
+  "fieldname": "posting_date", 
+  "fieldtype": "Date", 
+  "oldfieldtype": "Date", 
+  "reqd": 0, 
+  "permlevel": 1, 
+  "in_filter": 1
+ }, 
+ {
+  "search_index": 0, 
+  "doctype": "DocField", 
+  "label": "Posting Time", 
+  "oldfieldname": "posting_time", 
+  "width": "100px", 
+  "fieldname": "posting_time", 
+  "fieldtype": "Time", 
+  "oldfieldtype": "Time", 
+  "permlevel": 1, 
+  "in_filter": 0
+ }, 
+ {
+  "description": "The date at which current entry is made in system.", 
+  "search_index": 0, 
+  "doctype": "DocField", 
+  "label": "Transaction Date", 
+  "oldfieldname": "transaction_date", 
+  "width": "100px", 
+  "fieldname": "transaction_date", 
+  "fieldtype": "Date", 
+  "oldfieldtype": "Date", 
+  "permlevel": 1, 
+  "in_filter": 1
+ }, 
+ {
+  "search_index": 0, 
+  "doctype": "DocField", 
+  "label": "Voucher Type", 
+  "oldfieldname": "voucher_type", 
+  "width": "150px", 
+  "fieldname": "voucher_type", 
+  "fieldtype": "Data", 
+  "oldfieldtype": "Data", 
+  "permlevel": 1, 
+  "in_filter": 1
+ }, 
+ {
+  "search_index": 0, 
+  "doctype": "DocField", 
+  "label": "Voucher No", 
+  "oldfieldname": "voucher_no", 
+  "width": "150px", 
+  "fieldname": "voucher_no", 
+  "fieldtype": "Data", 
+  "oldfieldtype": "Data", 
+  "permlevel": 1, 
+  "in_filter": 1
+ }, 
+ {
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Voucher Detail No", 
+  "oldfieldname": "voucher_detail_no", 
+  "width": "150px", 
+  "fieldname": "voucher_detail_no", 
+  "fieldtype": "Data", 
+  "permlevel": 1
+ }, 
+ {
+  "oldfieldtype": "Currency", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Actual Quantity", 
+  "oldfieldname": "actual_qty", 
+  "width": "150px", 
+  "fieldname": "actual_qty", 
+  "fieldtype": "Currency", 
+  "permlevel": 1, 
+  "in_filter": 1
+ }, 
+ {
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Incoming Rate", 
+  "oldfieldname": "incoming_rate", 
+  "fieldname": "incoming_rate", 
+  "fieldtype": "Currency", 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Stock UOM", 
+  "oldfieldname": "stock_uom", 
+  "width": "150px", 
+  "fieldname": "stock_uom", 
+  "fieldtype": "Data", 
+  "permlevel": 1
+ }, 
+ {
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Bin Actual Qty After Transaction", 
+  "oldfieldname": "bin_aqat", 
+  "width": "150px", 
+  "fieldname": "bin_aqat", 
+  "fieldtype": "Currency", 
+  "permlevel": 1, 
+  "in_filter": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Moving Average Rate", 
+  "oldfieldname": "ma_rate", 
+  "fieldname": "ma_rate", 
+  "fieldtype": "Currency", 
+  "hidden": 1, 
+  "permlevel": 0, 
+  "report_hide": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "FIFO Rate", 
+  "oldfieldname": "fcfs_rate", 
+  "fieldname": "fcfs_rate", 
+  "fieldtype": "Currency", 
+  "hidden": 1, 
+  "permlevel": 0, 
+  "report_hide": 1
+ }, 
+ {
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Valuation Rate", 
+  "oldfieldname": "valuation_rate", 
+  "width": "150px", 
+  "fieldname": "valuation_rate", 
+  "fieldtype": "Currency", 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Currency", 
+  "doctype": "DocField", 
+  "label": "Stock Value", 
+  "oldfieldname": "stock_value", 
+  "fieldname": "stock_value", 
+  "fieldtype": "Currency", 
+  "permlevel": 0
+ }, 
+ {
+  "print_hide": 1, 
+  "oldfieldtype": "Text", 
+  "doctype": "DocField", 
+  "label": "FIFO Stack", 
+  "oldfieldname": "fcfs_stack", 
+  "fieldname": "fcfs_stack", 
+  "fieldtype": "Text", 
+  "search_index": 0, 
+  "hidden": 1, 
+  "permlevel": 2, 
+  "report_hide": 1, 
+  "in_filter": 0
+ }, 
+ {
+  "search_index": 0, 
+  "doctype": "DocField", 
+  "label": "Company", 
+  "oldfieldname": "company", 
+  "width": "150px", 
+  "options": "link:Company", 
+  "fieldname": "company", 
+  "fieldtype": "Select", 
+  "oldfieldtype": "Data", 
+  "permlevel": 1, 
+  "in_filter": 1
+ }, 
+ {
+  "search_index": 0, 
+  "doctype": "DocField", 
+  "label": "Fiscal Year", 
+  "oldfieldname": "fiscal_year", 
+  "width": "150px", 
+  "fieldname": "fiscal_year", 
+  "fieldtype": "Data", 
+  "oldfieldtype": "Data", 
+  "permlevel": 1, 
+  "in_filter": 1
+ }, 
+ {
+  "search_index": 0, 
+  "doctype": "DocField", 
+  "label": "Is Cancelled", 
+  "oldfieldname": "is_cancelled", 
+  "width": "100px", 
+  "options": "\nYes\nNo", 
+  "fieldname": "is_cancelled", 
+  "fieldtype": "Select", 
+  "oldfieldtype": "Select", 
+  "permlevel": 1, 
+  "in_filter": 1
+ }, 
+ {
+  "search_index": 0, 
+  "doctype": "DocField", 
+  "label": "Is Stock Entry", 
+  "oldfieldname": "is_stock_entry", 
+  "width": "100px", 
+  "options": "\nYes\nNo", 
+  "fieldname": "is_stock_entry", 
+  "fieldtype": "Select", 
+  "oldfieldtype": "Select", 
+  "permlevel": 1, 
+  "in_filter": 1
+ }
+]
\ No newline at end of file
diff --git a/stock/doctype/stock_reconciliation/stock_reconciliation.txt b/stock/doctype/stock_reconciliation/stock_reconciliation.txt
index b788745..974e0c0 100644
--- a/stock/doctype/stock_reconciliation/stock_reconciliation.txt
+++ b/stock/doctype/stock_reconciliation/stock_reconciliation.txt
@@ -1,197 +1,162 @@
-# DocType, Stock Reconciliation
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-04-13 11:56:39',
-		'docstatus': 0,
-		'modified': '2012-05-10 11:54:52',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'_last_update': u'1321617741',
-		'allow_attach': 1,
-		'autoname': u'SR/.######',
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'is_submittable': 1,
-		'max_attachments': 1,
-		'module': u'Stock',
-		'name': '__common__',
-		'search_fields': u'reconciliation_date',
-		'section_style': u'Tray',
-		'server_code_error': u' ',
-		'show_in_menu': 0,
-		'subject': u'Date: %(reconciliation_date)s, Time: %(reconciliation_time)s',
-		'version': 1
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'Stock Reconciliation',
-		'parentfield': u'fields',
-		'parenttype': u'DocType'
-	},
-
-	# These values are common for all DocPerm
-	{
-		'doctype': u'DocPerm',
-		'name': '__common__',
-		'parent': u'Stock Reconciliation',
-		'parentfield': u'permissions',
-		'parenttype': u'DocType',
-		'read': 1
-	},
-
-	# DocType, Stock Reconciliation
-	{
-		'doctype': 'DocType',
-		'name': u'Stock Reconciliation'
-	},
-
-	# DocPerm
-	{
-		'amend': 0,
-		'cancel': 1,
-		'create': 1,
-		'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'Material Manager',
-		'submit': 1,
-		'write': 1
-	},
-
-	# DocPerm
-	{
-		'amend': 0,
-		'cancel': 0,
-		'create': 0,
-		'doctype': u'DocPerm',
-		'permlevel': 1,
-		'role': u'Material Manager',
-		'submit': 0,
-		'write': 0
-	},
-
-	# DocPerm
-	{
-		'cancel': 1,
-		'create': 1,
-		'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'System Manager',
-		'submit': 1,
-		'write': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'steps',
-		'fieldtype': u'HTML',
-		'label': u'Steps',
-		'options': u'<div class="field_description"><b>Steps:</b><br>1. Enter Reconciliation Date and Time<br>2. Save the document<br>3. Attach csv file as per template.<br>4. Submit the document<br>5. Enter tilde (~) sign if no difference in qty or valuation rate</div>',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'reconciliation_date',
-		'fieldtype': u'Date',
-		'in_filter': 0,
-		'label': u'Reconciliation Date',
-		'oldfieldname': u'reconciliation_date',
-		'oldfieldtype': u'Date',
-		'permlevel': 0,
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'reconciliation_time',
-		'fieldtype': u'Time',
-		'in_filter': 0,
-		'label': u'Reconciliation Time',
-		'oldfieldname': u'reconciliation_time',
-		'oldfieldtype': u'Time',
-		'permlevel': 0,
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'remark',
-		'fieldtype': u'Text',
-		'label': u'Remark',
-		'oldfieldname': u'remark',
-		'oldfieldtype': u'Text',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'download_template',
-		'fieldtype': u'Button',
-		'label': u'Download Template',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'file_list',
-		'fieldtype': u'Text',
-		'hidden': 1,
-		'label': u'File List',
-		'no_copy': 1,
-		'oldfieldname': u'file_list',
-		'oldfieldtype': u'Text',
-		'permlevel': 1,
-		'print_hide': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'diff_info',
-		'fieldtype': u'Text',
-		'hidden': 1,
-		'label': u'Diff Info',
-		'permlevel': 0,
-		'print_hide': 1
-	},
-
-	# DocField
-	{
-		'depends_on': u'eval:doc.amended_from',
-		'description': u'The date at which current entry is corrected in the system.',
-		'doctype': u'DocField',
-		'fieldname': u'amendment_date',
-		'fieldtype': u'Date',
-		'label': u'Amendment Date',
-		'no_copy': 1,
-		'permlevel': 0,
-		'print_hide': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'amended_from',
-		'fieldtype': u'Link',
-		'label': u'Amended From',
-		'no_copy': 1,
-		'options': u'Sales Invoice',
-		'permlevel': 1,
-		'print_hide': 1
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-04-13 11:56:39", 
+  "modified_by": "Administrator", 
+  "modified": "2012-05-10 11:54:52"
+ }, 
+ {
+  "section_style": "Tray", 
+  "allow_attach": 1, 
+  "is_submittable": 1, 
+  "search_fields": "reconciliation_date", 
+  "module": "Stock", 
+  "server_code_error": " ", 
+  "subject": "Date: %(reconciliation_date)s, Time: %(reconciliation_time)s", 
+  "_last_update": "1321617741", 
+  "autoname": "SR/.######", 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "doctype": "DocType", 
+  "show_in_menu": 0, 
+  "max_attachments": 1, 
+  "version": 1
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Stock Reconciliation", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Stock Reconciliation", 
+  "read": 1, 
+  "doctype": "DocPerm", 
+  "parenttype": "DocType", 
+  "parentfield": "permissions"
+ }, 
+ {
+  "name": "Stock Reconciliation", 
+  "doctype": "DocType"
+ }, 
+ {
+  "amend": 0, 
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "submit": 1, 
+  "write": 1, 
+  "role": "Material Manager", 
+  "cancel": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "amend": 0, 
+  "create": 0, 
+  "doctype": "DocPerm", 
+  "submit": 0, 
+  "write": 0, 
+  "role": "Material Manager", 
+  "cancel": 0, 
+  "permlevel": 1
+ }, 
+ {
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "submit": 1, 
+  "write": 1, 
+  "role": "System Manager", 
+  "cancel": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "options": "<div class=\"field_description\"><b>Steps:</b><br>1. Enter Reconciliation Date and Time<br>2. Save the document<br>3. Attach csv file as per template.<br>4. Submit the document<br>5. Enter tilde (~) sign if no difference in qty or valuation rate</div>", 
+  "fieldname": "steps", 
+  "fieldtype": "HTML", 
+  "label": "Steps", 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Date", 
+  "doctype": "DocField", 
+  "label": "Reconciliation Date", 
+  "oldfieldname": "reconciliation_date", 
+  "fieldname": "reconciliation_date", 
+  "fieldtype": "Date", 
+  "reqd": 1, 
+  "permlevel": 0, 
+  "in_filter": 0
+ }, 
+ {
+  "oldfieldtype": "Time", 
+  "doctype": "DocField", 
+  "label": "Reconciliation Time", 
+  "oldfieldname": "reconciliation_time", 
+  "fieldname": "reconciliation_time", 
+  "fieldtype": "Time", 
+  "reqd": 1, 
+  "permlevel": 0, 
+  "in_filter": 0
+ }, 
+ {
+  "oldfieldtype": "Text", 
+  "doctype": "DocField", 
+  "label": "Remark", 
+  "oldfieldname": "remark", 
+  "fieldname": "remark", 
+  "fieldtype": "Text", 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Download Template", 
+  "fieldname": "download_template", 
+  "fieldtype": "Button", 
+  "permlevel": 0
+ }, 
+ {
+  "print_hide": 1, 
+  "no_copy": 1, 
+  "oldfieldtype": "Text", 
+  "doctype": "DocField", 
+  "label": "File List", 
+  "oldfieldname": "file_list", 
+  "fieldname": "file_list", 
+  "fieldtype": "Text", 
+  "hidden": 1, 
+  "permlevel": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "doctype": "DocField", 
+  "label": "Diff Info", 
+  "fieldname": "diff_info", 
+  "fieldtype": "Text", 
+  "hidden": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "print_hide": 1, 
+  "description": "The date at which current entry is corrected in the system.", 
+  "no_copy": 1, 
+  "depends_on": "eval:doc.amended_from", 
+  "doctype": "DocField", 
+  "label": "Amendment Date", 
+  "fieldname": "amendment_date", 
+  "fieldtype": "Date", 
+  "permlevel": 0
+ }, 
+ {
+  "print_hide": 1, 
+  "no_copy": 1, 
+  "doctype": "DocField", 
+  "label": "Amended From", 
+  "permlevel": 1, 
+  "fieldname": "amended_from", 
+  "fieldtype": "Link", 
+  "options": "Sales Invoice"
+ }
 ]
\ No newline at end of file
diff --git a/stock/doctype/stock_uom_replace_utility/stock_uom_replace_utility.txt b/stock/doctype/stock_uom_replace_utility/stock_uom_replace_utility.txt
index 87241b5..0e3c5a0 100644
--- a/stock/doctype/stock_uom_replace_utility/stock_uom_replace_utility.txt
+++ b/stock/doctype/stock_uom_replace_utility/stock_uom_replace_utility.txt
@@ -1,151 +1,118 @@
-# DocType, Stock UOM Replace Utility
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:36:40',
-		'docstatus': 0,
-		'modified': '2012-03-27 14:36:40',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'in_create': 0,
-		'issingle': 1,
-		'module': u'Stock',
-		'name': '__common__',
-		'read_only': 0,
-		'section_style': u'Simple',
-		'server_code_error': u' ',
-		'version': 25
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'Stock UOM Replace Utility',
-		'parentfield': u'fields',
-		'parenttype': u'DocType'
-	},
-
-	# These values are common for all DocPerm
-	{
-		'doctype': u'DocPerm',
-		'name': '__common__',
-		'parent': u'Stock UOM Replace Utility',
-		'parentfield': u'permissions',
-		'parenttype': u'DocType',
-		'read': 1
-	},
-
-	# DocType, Stock UOM Replace Utility
-	{
-		'doctype': 'DocType',
-		'name': u'Stock UOM Replace Utility'
-	},
-
-	# DocPerm
-	{
-		'create': 1,
-		'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'System Manager',
-		'write': 1
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm',
-		'permlevel': 1,
-		'role': u'System Manager',
-		'write': 0
-	},
-
-	# DocPerm
-	{
-		'create': 1,
-		'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'Material Master Manager',
-		'write': 1
-	},
-
-	# DocPerm
-	{
-		'create': 1,
-		'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'Material Manager',
-		'write': 1
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm',
-		'permlevel': 1,
-		'role': u'Material Master Manager'
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm',
-		'permlevel': 1,
-		'role': u'Material Manager'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'doctype': u'DocField',
-		'fieldname': u'item_code',
-		'fieldtype': u'Link',
-		'label': u'Item',
-		'options': u'Item',
-		'permlevel': 0,
-		'trigger': u'Client'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'current_stock_uom',
-		'fieldtype': u'Link',
-		'label': u'Current Stock UOM',
-		'options': u'UOM',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'new_stock_uom',
-		'fieldtype': u'Link',
-		'label': u'New Stock UOM',
-		'options': u'UOM',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'update',
-		'fieldtype': u'Button',
-		'label': u'Update',
-		'options': u'update_stock_uom',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'conversion_factor',
-		'fieldtype': u'Currency',
-		'label': u'Conversion Factor',
-		'permlevel': 0
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-03-27 14:36:40", 
+  "modified_by": "Administrator", 
+  "modified": "2012-03-27 14:36:40"
+ }, 
+ {
+  "section_style": "Simple", 
+  "in_create": 0, 
+  "module": "Stock", 
+  "server_code_error": " ", 
+  "doctype": "DocType", 
+  "issingle": 1, 
+  "read_only": 0, 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "version": 25
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Stock UOM Replace Utility", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Stock UOM Replace Utility", 
+  "read": 1, 
+  "doctype": "DocPerm", 
+  "parenttype": "DocType", 
+  "parentfield": "permissions"
+ }, 
+ {
+  "name": "Stock UOM Replace Utility", 
+  "doctype": "DocType"
+ }, 
+ {
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "write": 1, 
+  "role": "System Manager", 
+  "permlevel": 0
+ }, 
+ {
+  "write": 0, 
+  "role": "System Manager", 
+  "permlevel": 1, 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "write": 1, 
+  "role": "Material Master Manager", 
+  "permlevel": 0
+ }, 
+ {
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "write": 1, 
+  "role": "Material Manager", 
+  "permlevel": 0
+ }, 
+ {
+  "role": "Material Master Manager", 
+  "permlevel": 1, 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "role": "Material Manager", 
+  "permlevel": 1, 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Item", 
+  "permlevel": 0, 
+  "trigger": "Client", 
+  "fieldname": "item_code", 
+  "fieldtype": "Link", 
+  "options": "Item"
+ }, 
+ {
+  "doctype": "DocField", 
+  "options": "UOM", 
+  "fieldname": "current_stock_uom", 
+  "fieldtype": "Link", 
+  "label": "Current Stock UOM", 
+  "permlevel": 1
+ }, 
+ {
+  "doctype": "DocField", 
+  "options": "UOM", 
+  "fieldname": "new_stock_uom", 
+  "fieldtype": "Link", 
+  "label": "New Stock UOM", 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "options": "update_stock_uom", 
+  "fieldname": "update", 
+  "fieldtype": "Button", 
+  "label": "Update", 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Conversion Factor", 
+  "fieldname": "conversion_factor", 
+  "fieldtype": "Currency", 
+  "permlevel": 0
+ }
 ]
\ No newline at end of file
diff --git a/stock/doctype/uom_conversion_detail/uom_conversion_detail.txt b/stock/doctype/uom_conversion_detail/uom_conversion_detail.txt
index e3ee023..0d7971d 100644
--- a/stock/doctype/uom_conversion_detail/uom_conversion_detail.txt
+++ b/stock/doctype/uom_conversion_detail/uom_conversion_detail.txt
@@ -1,63 +1,50 @@
-# DocType, UOM Conversion Detail
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:36:40',
-		'docstatus': 0,
-		'modified': '2012-03-27 14:36:40',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'autoname': u'UCDD/.#####',
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'istable': 1,
-		'module': u'Stock',
-		'name': '__common__',
-		'section_style': u'Tray',
-		'server_code_error': u' ',
-		'show_in_menu': 0,
-		'version': 1
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'UOM Conversion Detail',
-		'parentfield': u'fields',
-		'parenttype': u'DocType',
-		'permlevel': 0
-	},
-
-	# DocType, UOM Conversion Detail
-	{
-		'doctype': 'DocType',
-		'name': u'UOM Conversion Detail'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'uom',
-		'fieldtype': u'Link',
-		'label': u'UOM',
-		'oldfieldname': u'uom',
-		'oldfieldtype': u'Link',
-		'options': u'UOM'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'conversion_factor',
-		'fieldtype': u'Float',
-		'label': u'Conversion Factor',
-		'oldfieldname': u'conversion_factor',
-		'oldfieldtype': u'Float'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-03-27 14:36:40", 
+  "modified_by": "Administrator", 
+  "modified": "2012-03-27 14:36:40"
+ }, 
+ {
+  "section_style": "Tray", 
+  "istable": 1, 
+  "module": "Stock", 
+  "server_code_error": " ", 
+  "doctype": "DocType", 
+  "autoname": "UCDD/.#####", 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "show_in_menu": 0, 
+  "version": 1
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "UOM Conversion Detail", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "permlevel": 0, 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "UOM Conversion Detail", 
+  "doctype": "DocType"
+ }, 
+ {
+  "oldfieldtype": "Link", 
+  "doctype": "DocField", 
+  "label": "UOM", 
+  "oldfieldname": "uom", 
+  "fieldname": "uom", 
+  "fieldtype": "Link", 
+  "options": "UOM"
+ }, 
+ {
+  "oldfieldtype": "Float", 
+  "doctype": "DocField", 
+  "label": "Conversion Factor", 
+  "oldfieldname": "conversion_factor", 
+  "fieldname": "conversion_factor", 
+  "fieldtype": "Float"
+ }
 ]
\ No newline at end of file
diff --git a/stock/doctype/valuation_control/valuation_control.txt b/stock/doctype/valuation_control/valuation_control.txt
index abaaa7b..3a20764 100644
--- a/stock/doctype/valuation_control/valuation_control.txt
+++ b/stock/doctype/valuation_control/valuation_control.txt
@@ -1,31 +1,24 @@
-# DocType, Valuation Control
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:36:40',
-		'docstatus': 0,
-		'modified': '2012-03-27 14:36:40',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'in_create': 1,
-		'issingle': 1,
-		'module': u'Stock',
-		'name': '__common__',
-		'section_style': u'Simple',
-		'server_code_error': u' ',
-		'version': 4
-	},
-
-	# DocType, Valuation Control
-	{
-		'doctype': 'DocType',
-		'name': u'Valuation Control'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-03-27 14:36:40", 
+  "modified_by": "Administrator", 
+  "modified": "2012-03-27 14:36:40"
+ }, 
+ {
+  "section_style": "Simple", 
+  "in_create": 1, 
+  "colour": "White:FFF", 
+  "module": "Stock", 
+  "server_code_error": " ", 
+  "version": 4, 
+  "doctype": "DocType", 
+  "issingle": 1, 
+  "name": "__common__"
+ }, 
+ {
+  "name": "Valuation Control", 
+  "doctype": "DocType"
+ }
 ]
\ No newline at end of file
diff --git a/stock/page/stock_ageing/stock_ageing.txt b/stock/page/stock_ageing/stock_ageing.txt
index bb4aabb..fb9fc37 100644
--- a/stock/page/stock_ageing/stock_ageing.txt
+++ b/stock/page/stock_ageing/stock_ageing.txt
@@ -1,49 +1,36 @@
-# Page, stock-ageing
 [
-
-	# These values are common in all dictionaries
-	{
-		u'creation': '2012-09-21 20:15:14',
-		u'docstatus': 0,
-		u'modified': '2012-10-04 17:34:24',
-		u'modified_by': u'Administrator',
-		u'owner': u'Administrator'
-	},
-
-	# These values are common for all Page
-	{
-		u'doctype': u'Page',
-		'module': u'Stock',
-		u'name': u'__common__',
-		'page_name': u'stock-ageing',
-		'standard': u'Yes',
-		'title': u'Stock Ageing'
-	},
-
-	# These values are common for all Page Role
-	{
-		u'doctype': u'Page Role',
-		u'name': u'__common__',
-		'parent': u'stock-ageing',
-		'parentfield': u'roles',
-		'parenttype': u'Page'
-	},
-
-	# Page, stock-ageing
-	{
-		u'doctype': u'Page',
-		u'name': u'stock-ageing'
-	},
-
-	# Page Role
-	{
-		u'doctype': u'Page Role',
-		'role': u'Analytics'
-	},
-
-	# Page Role
-	{
-		u'doctype': u'Page Role',
-		'role': u'Material Manager'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-09-21 20:15:14", 
+  "modified_by": "Administrator", 
+  "modified": "2012-10-04 17:34:24"
+ }, 
+ {
+  "name": "__common__", 
+  "title": "Stock Ageing", 
+  "module": "Stock", 
+  "doctype": "Page", 
+  "page_name": "stock-ageing", 
+  "standard": "Yes"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "stock-ageing", 
+  "doctype": "Page Role", 
+  "parenttype": "Page", 
+  "parentfield": "roles"
+ }, 
+ {
+  "name": "stock-ageing", 
+  "doctype": "Page"
+ }, 
+ {
+  "role": "Analytics", 
+  "doctype": "Page Role"
+ }, 
+ {
+  "role": "Material Manager", 
+  "doctype": "Page Role"
+ }
 ]
\ No newline at end of file
diff --git a/stock/page/stock_analytics/stock_analytics.txt b/stock/page/stock_analytics/stock_analytics.txt
index 1405e6c..0310bc8 100644
--- a/stock/page/stock_analytics/stock_analytics.txt
+++ b/stock/page/stock_analytics/stock_analytics.txt
@@ -1,49 +1,36 @@
-# Page, stock-analytics
 [
-
-	# These values are common in all dictionaries
-	{
-		u'creation': '2012-09-21 20:15:14',
-		u'docstatus': 0,
-		u'modified': '2012-10-04 17:32:20',
-		u'modified_by': u'Administrator',
-		u'owner': u'Administrator'
-	},
-
-	# These values are common for all Page
-	{
-		u'doctype': u'Page',
-		'module': u'Stock',
-		u'name': u'__common__',
-		'page_name': u'stock-analytics',
-		'standard': u'Yes',
-		'title': u'Stock Analytics'
-	},
-
-	# These values are common for all Page Role
-	{
-		u'doctype': u'Page Role',
-		u'name': u'__common__',
-		'parent': u'stock-analytics',
-		'parentfield': u'roles',
-		'parenttype': u'Page'
-	},
-
-	# Page, stock-analytics
-	{
-		u'doctype': u'Page',
-		u'name': u'stock-analytics'
-	},
-
-	# Page Role
-	{
-		u'doctype': u'Page Role',
-		'role': u'Analytics'
-	},
-
-	# Page Role
-	{
-		u'doctype': u'Page Role',
-		'role': u'Material Manager'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-09-21 20:15:14", 
+  "modified_by": "Administrator", 
+  "modified": "2012-10-04 17:32:20"
+ }, 
+ {
+  "name": "__common__", 
+  "title": "Stock Analytics", 
+  "module": "Stock", 
+  "doctype": "Page", 
+  "page_name": "stock-analytics", 
+  "standard": "Yes"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "stock-analytics", 
+  "doctype": "Page Role", 
+  "parenttype": "Page", 
+  "parentfield": "roles"
+ }, 
+ {
+  "name": "stock-analytics", 
+  "doctype": "Page"
+ }, 
+ {
+  "role": "Analytics", 
+  "doctype": "Page Role"
+ }, 
+ {
+  "role": "Material Manager", 
+  "doctype": "Page Role"
+ }
 ]
\ No newline at end of file
diff --git a/stock/page/stock_home/stock_home.txt b/stock/page/stock_home/stock_home.txt
index f3e7cda..ea6cf26 100644
--- a/stock/page/stock_home/stock_home.txt
+++ b/stock/page/stock_home/stock_home.txt
@@ -1,28 +1,21 @@
-# Page, stock-home
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-02-21 13:23:22',
-		'docstatus': 0,
-		'modified': '2012-02-21 13:23:22',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all Page
-	{
-		'doctype': 'Page',
-		'module': u'Stock',
-		'name': '__common__',
-		'page_name': u'stock-home',
-		'standard': u'Yes',
-		'title': u'Stock Home'
-	},
-
-	# Page, stock-home
-	{
-		'doctype': 'Page',
-		'name': u'stock-home'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-02-21 13:23:22", 
+  "modified_by": "Administrator", 
+  "modified": "2012-02-21 13:23:22"
+ }, 
+ {
+  "name": "__common__", 
+  "title": "Stock Home", 
+  "module": "Stock", 
+  "doctype": "Page", 
+  "page_name": "stock-home", 
+  "standard": "Yes"
+ }, 
+ {
+  "name": "stock-home", 
+  "doctype": "Page"
+ }
 ]
\ No newline at end of file
diff --git a/stock/page/stock_ledger/stock_ledger.txt b/stock/page/stock_ledger/stock_ledger.txt
index eb95eb6..4eeae8b 100644
--- a/stock/page/stock_ledger/stock_ledger.txt
+++ b/stock/page/stock_ledger/stock_ledger.txt
@@ -1,55 +1,40 @@
-# Page, stock-ledger
 [
-
-	# These values are common in all dictionaries
-	{
-		u'creation': '2012-09-21 20:15:14',
-		u'docstatus': 0,
-		u'modified': '2012-10-04 17:25:35',
-		u'modified_by': u'Administrator',
-		u'owner': u'Administrator'
-	},
-
-	# These values are common for all Page
-	{
-		u'doctype': u'Page',
-		'module': u'Stock',
-		u'name': u'__common__',
-		'page_name': u'stock-ledger',
-		'standard': u'Yes',
-		'title': u'Stock Ledger'
-	},
-
-	# These values are common for all Page Role
-	{
-		u'doctype': u'Page Role',
-		u'name': u'__common__',
-		'parent': u'stock-ledger',
-		'parentfield': u'roles',
-		'parenttype': u'Page'
-	},
-
-	# Page, stock-ledger
-	{
-		u'doctype': u'Page',
-		u'name': u'stock-ledger'
-	},
-
-	# Page Role
-	{
-		u'doctype': u'Page Role',
-		'role': u'Analytics'
-	},
-
-	# Page Role
-	{
-		u'doctype': u'Page Role',
-		'role': u'Material Manager'
-	},
-
-	# Page Role
-	{
-		u'doctype': u'Page Role',
-		'role': u'Material User'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-09-21 20:15:14", 
+  "modified_by": "Administrator", 
+  "modified": "2012-10-04 17:25:35"
+ }, 
+ {
+  "name": "__common__", 
+  "title": "Stock Ledger", 
+  "module": "Stock", 
+  "doctype": "Page", 
+  "page_name": "stock-ledger", 
+  "standard": "Yes"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "stock-ledger", 
+  "doctype": "Page Role", 
+  "parenttype": "Page", 
+  "parentfield": "roles"
+ }, 
+ {
+  "name": "stock-ledger", 
+  "doctype": "Page"
+ }, 
+ {
+  "role": "Analytics", 
+  "doctype": "Page Role"
+ }, 
+ {
+  "role": "Material Manager", 
+  "doctype": "Page Role"
+ }, 
+ {
+  "role": "Material User", 
+  "doctype": "Page Role"
+ }
 ]
\ No newline at end of file
diff --git a/stock/report/stock_ledger/stock_ledger.txt b/stock/report/stock_ledger/stock_ledger.txt
index d0c5184..ff03168 100644
--- a/stock/report/stock_ledger/stock_ledger.txt
+++ b/stock/report/stock_ledger/stock_ledger.txt
@@ -1,26 +1,19 @@
-# Report, Stock Ledger
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-09-06 18:47:05',
-		'docstatus': 0,
-		'modified': '2012-09-06 18:48:22',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all Report
-	{
-		'doctype': 'Report',
-		'json': u'{"filters":[["Stock Ledger Entry","is_cancelled","=","No"]],"columns":[["item_code","Stock Ledger Entry"],["warehouse","Stock Ledger Entry"],["posting_date","Stock Ledger Entry"],["posting_time","Stock Ledger Entry"],["actual_qty","Stock Ledger Entry"],["bin_aqat","Stock Ledger Entry"],["voucher_type","Stock Ledger Entry"],["voucher_no","Stock Ledger Entry"]],"sort_by":"Stock Ledger Entry.posting_date","sort_order":"desc","sort_by_next":"Stock Ledger Entry.posting_time","sort_order_next":"desc"}',
-		'name': '__common__',
-		'ref_doctype': u'Stock Ledger Entry'
-	},
-
-	# Report, Stock Ledger
-	{
-		'doctype': 'Report',
-		'name': u'Stock Ledger'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-09-06 18:47:05", 
+  "modified_by": "Administrator", 
+  "modified": "2012-09-06 18:48:22"
+ }, 
+ {
+  "name": "__common__", 
+  "ref_doctype": "Stock Ledger Entry", 
+  "doctype": "Report", 
+  "json": "{\"filters\":[[\"Stock Ledger Entry\",\"is_cancelled\",\"=\",\"No\"]],\"columns\":[[\"item_code\",\"Stock Ledger Entry\"],[\"warehouse\",\"Stock Ledger Entry\"],[\"posting_date\",\"Stock Ledger Entry\"],[\"posting_time\",\"Stock Ledger Entry\"],[\"actual_qty\",\"Stock Ledger Entry\"],[\"bin_aqat\",\"Stock Ledger Entry\"],[\"voucher_type\",\"Stock Ledger Entry\"],[\"voucher_no\",\"Stock Ledger Entry\"]],\"sort_by\":\"Stock Ledger Entry.posting_date\",\"sort_order\":\"desc\",\"sort_by_next\":\"Stock Ledger Entry.posting_time\",\"sort_order_next\":\"desc\"}"
+ }, 
+ {
+  "name": "Stock Ledger", 
+  "doctype": "Report"
+ }
 ]
\ No newline at end of file
diff --git a/stock/search_criteria/itemwise_price_list/itemwise_price_list.txt b/stock/search_criteria/itemwise_price_list/itemwise_price_list.txt
index d9e9973..9522c83 100644
--- a/stock/search_criteria/itemwise_price_list/itemwise_price_list.txt
+++ b/stock/search_criteria/itemwise_price_list/itemwise_price_list.txt
@@ -1,34 +1,27 @@
-# Search Criteria, itemwise_price_list
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-04-03 12:49:51',
-		'docstatus': 0,
-		'modified': '2012-04-03 12:49:51',
-		'modified_by': u'Administrator',
-		'owner': u'harshada@webnotestech.com'
-	},
-
-	# These values are common for all Search Criteria
-	{
-		'columns': u'Item\x01Item Name,Item\x01Item Group,Item Price\x01Price List Name,Item Price\x01Ref Rate,Item Price\x01Currency',
-		'criteria_name': u'Itemwise Price List',
-		'doc_type': u'Item Price',
-		'doctype': 'Search Criteria',
-		'filters': u"{'Item\x01Saved':1,'Item Price\x01Price List Name':'','Item Price\x01Currency':''}",
-		'module': u'Stock',
-		'name': '__common__',
-		'page_len': 50,
-		'parent_doc_type': u'Item',
-		'sort_by': u'`tabItem`.`item_name`',
-		'sort_order': u'DESC',
-		'standard': u'Yes'
-	},
-
-	# Search Criteria, itemwise_price_list
-	{
-		'doctype': 'Search Criteria',
-		'name': u'itemwise_price_list'
-	}
+ {
+  "owner": "harshada@webnotestech.com", 
+  "docstatus": 0, 
+  "creation": "2012-04-03 12:49:51", 
+  "modified_by": "Administrator", 
+  "modified": "2012-04-03 12:49:51"
+ }, 
+ {
+  "parent_doc_type": "Item", 
+  "module": "Stock", 
+  "standard": "Yes", 
+  "sort_order": "DESC", 
+  "filters": "{'Item\u0001Saved':1,'Item Price\u0001Price List Name':'','Item Price\u0001Currency':''}", 
+  "doc_type": "Item Price", 
+  "name": "__common__", 
+  "doctype": "Search Criteria", 
+  "sort_by": "`tabItem`.`item_name`", 
+  "page_len": 50, 
+  "criteria_name": "Itemwise Price List", 
+  "columns": "Item\u0001Item Name,Item\u0001Item Group,Item Price\u0001Price List Name,Item Price\u0001Ref Rate,Item Price\u0001Currency"
+ }, 
+ {
+  "name": "itemwise_price_list", 
+  "doctype": "Search Criteria"
+ }
 ]
\ No newline at end of file
diff --git a/stock/search_criteria/itemwise_receipt_details/itemwise_receipt_details.txt b/stock/search_criteria/itemwise_receipt_details/itemwise_receipt_details.txt
index b9c8b9c..7d25727 100644
--- a/stock/search_criteria/itemwise_receipt_details/itemwise_receipt_details.txt
+++ b/stock/search_criteria/itemwise_receipt_details/itemwise_receipt_details.txt
@@ -1,34 +1,27 @@
-# Search Criteria, itemwise_receipt_details
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-04-11 13:16:55',
-		'docstatus': 0,
-		'modified': '2012-04-13 11:16:40',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all Search Criteria
-	{
-		'columns': u'Purchase Receipt\x01ID,Purchase Receipt\x01Posting Date,Purchase Receipt Item\x01Item Code,Purchase Receipt Item\x01Item Name,Purchase Receipt Item\x01Accepted Quantity,Purchase Receipt Item\x01Rejected Quantity,Purchase Receipt Item\x01UOM,Purchase Receipt Item\x01Accepted Warehouse,Purchase Receipt Item\x01Rejected Warehouse,Purchase Receipt Item\x01Amount',
-		'criteria_name': u'Itemwise Receipt Details',
-		'doc_type': u'Purchase Receipt Item',
-		'doctype': 'Search Criteria',
-		'filters': u'{"Purchase Receipt\\u0001Submitted":1,"Purchase Receipt\\u0001Status":[""],"Purchase Receipt\\u0001Fiscal Year":[""]}',
-		'module': u'Stock',
-		'name': '__common__',
-		'page_len': 50,
-		'parent_doc_type': u'Purchase Receipt',
-		'sort_by': u'`tabPurchase Receipt`.`name`',
-		'sort_order': u'DESC',
-		'standard': u'Yes'
-	},
-
-	# Search Criteria, itemwise_receipt_details
-	{
-		'doctype': 'Search Criteria',
-		'name': u'itemwise_receipt_details'
-	}
-]
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-04-11 13:16:55", 
+  "modified_by": "Administrator", 
+  "modified": "2012-04-13 11:16:40"
+ }, 
+ {
+  "parent_doc_type": "Purchase Receipt", 
+  "module": "Stock", 
+  "standard": "Yes", 
+  "sort_order": "DESC", 
+  "filters": "{\"Purchase Receipt\\u0001Submitted\":1,\"Purchase Receipt\\u0001Status\":[\"\"],\"Purchase Receipt\\u0001Fiscal Year\":[\"\"]}", 
+  "doc_type": "Purchase Receipt Item", 
+  "name": "__common__", 
+  "doctype": "Search Criteria", 
+  "sort_by": "`tabPurchase Receipt`.`name`", 
+  "page_len": 50, 
+  "criteria_name": "Itemwise Receipt Details", 
+  "columns": "Purchase Receipt\u0001ID,Purchase Receipt\u0001Posting Date,Purchase Receipt Item\u0001Item Code,Purchase Receipt Item\u0001Item Name,Purchase Receipt Item\u0001Accepted Quantity,Purchase Receipt Item\u0001Rejected Quantity,Purchase Receipt Item\u0001UOM,Purchase Receipt Item\u0001Accepted Warehouse,Purchase Receipt Item\u0001Rejected Warehouse,Purchase Receipt Item\u0001Amount"
+ }, 
+ {
+  "name": "itemwise_receipt_details", 
+  "doctype": "Search Criteria"
+ }
+]
\ No newline at end of file
diff --git a/stock/search_criteria/shortage_to_purchase_request/shortage_to_purchase_request.txt b/stock/search_criteria/shortage_to_purchase_request/shortage_to_purchase_request.txt
index 91700ac..81511b7 100644
--- a/stock/search_criteria/shortage_to_purchase_request/shortage_to_purchase_request.txt
+++ b/stock/search_criteria/shortage_to_purchase_request/shortage_to_purchase_request.txt
@@ -1,33 +1,26 @@
-# Search Criteria, shortage_to_purchase_request
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-30 14:50:44',
-		'docstatus': 0,
-		'modified': '2012-03-30 14:50:44',
-		'modified_by': u'Administrator',
-		'owner': u'wasim@webnotestech.com'
-	},
-
-	# These values are common for all Search Criteria
-	{
-		'columns': u'Item\x01ID,Item\x01Item Name,Item\x01Description,Item\x01Lead Time Days',
-		'criteria_name': u'Shortage To Purchase Request',
-		'doc_type': u'Item',
-		'doctype': 'Search Criteria',
-		'filters': u"{'Item\x01Saved':1}",
-		'module': u'Stock',
-		'name': '__common__',
-		'page_len': 50,
-		'sort_by': u'`tabItem`.`name`',
-		'sort_order': u'DESC',
-		'standard': u'Yes'
-	},
-
-	# Search Criteria, shortage_to_purchase_request
-	{
-		'doctype': 'Search Criteria',
-		'name': u'shortage_to_purchase_request'
-	}
+ {
+  "owner": "wasim@webnotestech.com", 
+  "docstatus": 0, 
+  "creation": "2012-03-30 14:50:44", 
+  "modified_by": "Administrator", 
+  "modified": "2012-03-30 14:50:44"
+ }, 
+ {
+  "module": "Stock", 
+  "standard": "Yes", 
+  "sort_order": "DESC", 
+  "filters": "{'Item\u0001Saved':1}", 
+  "doctype": "Search Criteria", 
+  "doc_type": "Item", 
+  "name": "__common__", 
+  "sort_by": "`tabItem`.`name`", 
+  "page_len": 50, 
+  "criteria_name": "Shortage To Purchase Request", 
+  "columns": "Item\u0001ID,Item\u0001Item Name,Item\u0001Description,Item\u0001Lead Time Days"
+ }, 
+ {
+  "name": "shortage_to_purchase_request", 
+  "doctype": "Search Criteria"
+ }
 ]
\ No newline at end of file
diff --git a/stock/search_criteria/stock_aging_report/stock_aging_report.txt b/stock/search_criteria/stock_aging_report/stock_aging_report.txt
index f2b0306..61287fa 100644
--- a/stock/search_criteria/stock_aging_report/stock_aging_report.txt
+++ b/stock/search_criteria/stock_aging_report/stock_aging_report.txt
@@ -1,34 +1,27 @@
-# Search Criteria, stock_aging_report
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-04-03 12:49:53',
-		'docstatus': 0,
-		'modified': '2012-04-03 12:49:53',
-		'modified_by': u'Administrator',
-		'owner': u'ashwini@webnotestech.com'
-	},
-
-	# These values are common for all Search Criteria
-	{
-		'add_cond': u"`tabSerial No`.status = 'In Store'",
-		'columns': u'Serial No\x01ID,Serial No\x01Item Code,Serial No\x01Description,Serial No\x01Item Group,Serial No\x01Purchase Date',
-		'criteria_name': u'Stock Aging Report',
-		'doc_type': u'Serial No',
-		'doctype': 'Search Criteria',
-		'filters': u"{'Serial No\x01Saved':1,'Serial No\x01Submitted':1,'Serial No\x01Status':'In Store','Serial No\x01Maintenance Status':''}",
-		'module': u'Stock',
-		'name': '__common__',
-		'page_len': 1000,
-		'sort_by': u'`tabSerial No`.`name`',
-		'sort_order': u'DESC',
-		'standard': u'Yes'
-	},
-
-	# Search Criteria, stock_aging_report
-	{
-		'doctype': 'Search Criteria',
-		'name': u'stock_aging_report'
-	}
+ {
+  "owner": "ashwini@webnotestech.com", 
+  "docstatus": 0, 
+  "creation": "2012-04-03 12:49:53", 
+  "modified_by": "Administrator", 
+  "modified": "2012-04-03 12:49:53"
+ }, 
+ {
+  "module": "Stock", 
+  "standard": "Yes", 
+  "sort_order": "DESC", 
+  "filters": "{'Serial No\u0001Saved':1,'Serial No\u0001Submitted':1,'Serial No\u0001Status':'In Store','Serial No\u0001Maintenance Status':''}", 
+  "doc_type": "Serial No", 
+  "name": "__common__", 
+  "add_cond": "`tabSerial No`.status = 'In Store'", 
+  "doctype": "Search Criteria", 
+  "sort_by": "`tabSerial No`.`name`", 
+  "page_len": 1000, 
+  "criteria_name": "Stock Aging Report", 
+  "columns": "Serial No\u0001ID,Serial No\u0001Item Code,Serial No\u0001Description,Serial No\u0001Item Group,Serial No\u0001Purchase Date"
+ }, 
+ {
+  "name": "stock_aging_report", 
+  "doctype": "Search Criteria"
+ }
 ]
\ No newline at end of file
diff --git a/stock/search_criteria/stock_ledger/stock_ledger.txt b/stock/search_criteria/stock_ledger/stock_ledger.txt
index 46759fd..1c9fd8e 100644
--- a/stock/search_criteria/stock_ledger/stock_ledger.txt
+++ b/stock/search_criteria/stock_ledger/stock_ledger.txt
@@ -1,36 +1,29 @@
-# Search Criteria, stock_ledger
 [
-
-	# These values are common in all dictionaries
-	{
-		u'creation': '2012-09-14 11:30:39',
-		u'docstatus': 0,
-		u'modified': '2012-11-06 10:27:11',
-		u'modified_by': u'Administrator',
-		u'owner': u'Administrator'
-	},
-
-	# These values are common for all Search Criteria
-	{
-		'add_col': u'`tabItem`.`item_name`\n`tabItem`.`description`',
-		'add_cond': u'`tabItem`.`name` = `tabStock Ledger Entry`.`item_code`',
-		'add_tab': u'`tabItem`',
-		'columns': u'Stock Ledger Entry\x01Item Code,Stock Ledger Entry\x01Warehouse,Stock Ledger Entry\x01Posting Date,Stock Ledger Entry\x01Posting Time,Stock Ledger Entry\x01Actual Quantity,Stock Ledger Entry\x01Bin Actual Qty After Transaction,Stock Ledger Entry\x01Voucher Type,Stock Ledger Entry\x01Voucher No',
-		'criteria_name': u'Stock Ledger',
-		'doc_type': u'Stock Ledger Entry',
-		u'doctype': u'Search Criteria',
-		'filters': u'{"Stock Ledger Entry\\u0001Warehouse Type":[],"Stock Ledger Entry\\u0001Company":[],"Stock Ledger Entry\\u0001Is Cancelled":["No"],"Stock Ledger Entry\\u0001Is Stock Entry":[]}',
-		'module': u'Stock',
-		u'name': u'__common__',
-		'page_len': 50,
-		'sort_by': u'`tabStock Ledger Entry`.`posting_date`, `tabStock Ledger Entry`.`posting_time`, `tabStock Ledger Entry`.`name`',
-		'sort_order': u'ASC',
-		'standard': u'Yes'
-	},
-
-	# Search Criteria, stock_ledger
-	{
-		u'doctype': u'Search Criteria',
-		u'name': u'stock_ledger'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-09-14 11:30:39", 
+  "modified_by": "Administrator", 
+  "modified": "2012-11-06 10:27:11"
+ }, 
+ {
+  "add_col": "`tabItem`.`item_name`\n`tabItem`.`description`", 
+  "module": "Stock", 
+  "standard": "Yes", 
+  "sort_order": "ASC", 
+  "add_tab": "`tabItem`", 
+  "doc_type": "Stock Ledger Entry", 
+  "name": "__common__", 
+  "filters": "{\"Stock Ledger Entry\\u0001Warehouse Type\":[],\"Stock Ledger Entry\\u0001Company\":[],\"Stock Ledger Entry\\u0001Is Cancelled\":[\"No\"],\"Stock Ledger Entry\\u0001Is Stock Entry\":[]}", 
+  "add_cond": "`tabItem`.`name` = `tabStock Ledger Entry`.`item_code`", 
+  "doctype": "Search Criteria", 
+  "sort_by": "`tabStock Ledger Entry`.`posting_date`, `tabStock Ledger Entry`.`posting_time`, `tabStock Ledger Entry`.`name`", 
+  "page_len": 50, 
+  "criteria_name": "Stock Ledger", 
+  "columns": "Stock Ledger Entry\u0001Item Code,Stock Ledger Entry\u0001Warehouse,Stock Ledger Entry\u0001Posting Date,Stock Ledger Entry\u0001Posting Time,Stock Ledger Entry\u0001Actual Quantity,Stock Ledger Entry\u0001Bin Actual Qty After Transaction,Stock Ledger Entry\u0001Voucher Type,Stock Ledger Entry\u0001Voucher No"
+ }, 
+ {
+  "name": "stock_ledger", 
+  "doctype": "Search Criteria"
+ }
 ]
\ No newline at end of file
diff --git a/stock/search_criteria/stock_level/stock_level.txt b/stock/search_criteria/stock_level/stock_level.txt
index f19016e..b33540c 100644
--- a/stock/search_criteria/stock_level/stock_level.txt
+++ b/stock/search_criteria/stock_level/stock_level.txt
@@ -1,36 +1,29 @@
-# Search Criteria, stock_level
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-04-03 12:49:53',
-		'docstatus': 0,
-		'modified': '2012-04-03 12:49:53',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all Search Criteria
-	{
-		'add_col': u'`tabItem`.`item_name`\n`tabItem`.`description`',
-		'add_cond': u'`tabItem`.name = `tabBin`.item_code',
-		'add_tab': u'`tabItem`',
-		'columns': u'Bin\x01Warehouse,Bin\x01Item Code,Bin\x01UOM,Bin\x01Reserved Quantity,Bin\x01Actual Quantity,Bin\x01Ordered Quantity,Bin\x01Planned Qty,Bin\x01Projected Qty,Bin\x01Quantity Requested for Purchase,Bin\x01Valuation Rate,Bin\x01Stock Value',
-		'criteria_name': u'Stock Level',
-		'doc_type': u'Bin',
-		'doctype': 'Search Criteria',
-		'filters': u'{}',
-		'module': u'Stock',
-		'name': '__common__',
-		'page_len': 50,
-		'sort_by': u'`tabBin`.`warehouse`',
-		'sort_order': u'DESC',
-		'standard': u'Yes'
-	},
-
-	# Search Criteria, stock_level
-	{
-		'doctype': 'Search Criteria',
-		'name': u'stock_level'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-04-03 12:49:53", 
+  "modified_by": "Administrator", 
+  "modified": "2012-04-03 12:49:53"
+ }, 
+ {
+  "add_col": "`tabItem`.`item_name`\n`tabItem`.`description`", 
+  "module": "Stock", 
+  "standard": "Yes", 
+  "sort_order": "DESC", 
+  "add_tab": "`tabItem`", 
+  "doc_type": "Bin", 
+  "name": "__common__", 
+  "filters": "{}", 
+  "add_cond": "`tabItem`.name = `tabBin`.item_code", 
+  "doctype": "Search Criteria", 
+  "sort_by": "`tabBin`.`warehouse`", 
+  "page_len": 50, 
+  "criteria_name": "Stock Level", 
+  "columns": "Bin\u0001Warehouse,Bin\u0001Item Code,Bin\u0001UOM,Bin\u0001Reserved Quantity,Bin\u0001Actual Quantity,Bin\u0001Ordered Quantity,Bin\u0001Planned Qty,Bin\u0001Projected Qty,Bin\u0001Quantity Requested for Purchase,Bin\u0001Valuation Rate,Bin\u0001Stock Value"
+ }, 
+ {
+  "name": "stock_level", 
+  "doctype": "Search Criteria"
+ }
 ]
\ No newline at end of file
diff --git a/stock/search_criteria/stock_report/stock_report.txt b/stock/search_criteria/stock_report/stock_report.txt
index 8a92201..bb64f54 100644
--- a/stock/search_criteria/stock_report/stock_report.txt
+++ b/stock/search_criteria/stock_report/stock_report.txt
@@ -1,33 +1,26 @@
-# Search Criteria, stock_report
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-04-03 12:49:53',
-		'docstatus': 0,
-		'modified': '2012-04-03 12:49:53',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all Search Criteria
-	{
-		'columns': u'Stock Ledger Entry\x01ID',
-		'criteria_name': u'Stock Report',
-		'doc_type': u'Stock Ledger Entry',
-		'doctype': 'Search Criteria',
-		'filters': u"{'Stock Ledger Entry\x01Is Cancelled':'','Stock Ledger Entry\x01Is Stock Entry':''}",
-		'module': u'Stock',
-		'name': '__common__',
-		'page_len': 50,
-		'sort_by': u'`tabStock Ledger Entry`.`name`',
-		'sort_order': u'DESC',
-		'standard': u'Yes'
-	},
-
-	# Search Criteria, stock_report
-	{
-		'doctype': 'Search Criteria',
-		'name': u'stock_report'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-04-03 12:49:53", 
+  "modified_by": "Administrator", 
+  "modified": "2012-04-03 12:49:53"
+ }, 
+ {
+  "module": "Stock", 
+  "standard": "Yes", 
+  "sort_order": "DESC", 
+  "filters": "{'Stock Ledger Entry\u0001Is Cancelled':'','Stock Ledger Entry\u0001Is Stock Entry':''}", 
+  "doctype": "Search Criteria", 
+  "doc_type": "Stock Ledger Entry", 
+  "name": "__common__", 
+  "sort_by": "`tabStock Ledger Entry`.`name`", 
+  "page_len": 50, 
+  "criteria_name": "Stock Report", 
+  "columns": "Stock Ledger Entry\u0001ID"
+ }, 
+ {
+  "name": "stock_report", 
+  "doctype": "Search Criteria"
+ }
 ]
\ No newline at end of file
diff --git a/support/DocType Mapper/Customer Issue-Maintenance Visit/Customer Issue-Maintenance Visit.txt b/support/DocType Mapper/Customer Issue-Maintenance Visit/Customer Issue-Maintenance Visit.txt
index 8bb3fa1..da86201 100644
--- a/support/DocType Mapper/Customer Issue-Maintenance Visit/Customer Issue-Maintenance Visit.txt
+++ b/support/DocType Mapper/Customer Issue-Maintenance Visit/Customer Issue-Maintenance Visit.txt
@@ -1,108 +1,83 @@
-# DocType Mapper, Customer Issue-Maintenance Visit
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2010-08-08 17:09:34',
-		'docstatus': 0,
-		'modified': '2011-09-15 15:04:41',
-		'modified_by': 'Administrator',
-		'owner': 'ashwini@webnotestech.com'
-	},
-
-	# These values are common for all Table Mapper Detail
-	{
-		'doctype': 'Table Mapper Detail',
-		'from_table': 'Customer Issue',
-		'name': '__common__',
-		'parent': 'Customer Issue-Maintenance Visit',
-		'parentfield': 'table_mapper_details',
-		'parenttype': 'DocType Mapper',
-		'reference_key': 'prevdoc_docname',
-		'validation_logic': 'docstatus=1'
-	},
-
-	# These values are common for all Field Mapper Detail
-	{
-		'doctype': 'Field Mapper Detail',
-		'map': 'Yes',
-		'name': '__common__',
-		'parent': 'Customer Issue-Maintenance Visit',
-		'parentfield': 'field_mapper_details',
-		'parenttype': 'DocType Mapper'
-	},
-
-	# These values are common for all DocType Mapper
-	{
-		'doctype': 'DocType Mapper',
-		'from_doctype': 'Customer Issue',
-		'module': 'Support',
-		'name': '__common__',
-		'ref_doc_submitted': 1,
-		'to_doctype': 'Maintenance Visit'
-	},
-
-	# DocType Mapper, Customer Issue-Maintenance Visit
-	{
-		'doctype': 'DocType Mapper',
-		'name': 'Customer Issue-Maintenance Visit'
-	},
-
-	# Field Mapper Detail
-	{
-		'checking_operator': '=',
-		'doctype': 'Field Mapper Detail',
-		'from_field': 'customer',
-		'match_id': 0,
-		'to_field': 'customer'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': 'Field Mapper Detail',
-		'from_field': 'name',
-		'match_id': 0,
-		'to_field': 'customer_issue_no'
-	},
-
-	# Field Mapper Detail
-	{
-		'checking_operator': '=',
-		'doctype': 'Field Mapper Detail',
-		'from_field': 'complaint',
-		'match_id': 1,
-		'to_field': 'description'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': 'Field Mapper Detail',
-		'from_field': 'doctype',
-		'match_id': 1,
-		'to_field': 'prevdoc_doctype'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': 'Field Mapper Detail',
-		'from_field': 'name',
-		'match_id': 1,
-		'to_field': 'prevdoc_docname'
-	},
-
-	# Table Mapper Detail
-	{
-		'doctype': 'Table Mapper Detail',
-		'match_id': 1,
-		'reference_doctype_key': 'prevdoc_doctype',
-		'to_field': 'maintenance_visit_details',
-		'to_table': 'Maintenance Visit Purpose'
-	},
-
-	# Table Mapper Detail
-	{
-		'doctype': 'Table Mapper Detail',
-		'match_id': 0,
-		'to_table': 'Maintenance Visit'
-	}
+ {
+  "owner": "ashwini@webnotestech.com", 
+  "docstatus": 0, 
+  "creation": "2010-08-08 17:09:34", 
+  "modified_by": "Administrator", 
+  "modified": "2011-09-15 15:04:41"
+ }, 
+ {
+  "reference_key": "prevdoc_docname", 
+  "name": "__common__", 
+  "parent": "Customer Issue-Maintenance Visit", 
+  "doctype": "Table Mapper Detail", 
+  "parenttype": "DocType Mapper", 
+  "from_table": "Customer Issue", 
+  "validation_logic": "docstatus=1", 
+  "parentfield": "table_mapper_details"
+ }, 
+ {
+  "map": "Yes", 
+  "name": "__common__", 
+  "parent": "Customer Issue-Maintenance Visit", 
+  "doctype": "Field Mapper Detail", 
+  "parenttype": "DocType Mapper", 
+  "parentfield": "field_mapper_details"
+ }, 
+ {
+  "name": "__common__", 
+  "to_doctype": "Maintenance Visit", 
+  "module": "Support", 
+  "doctype": "DocType Mapper", 
+  "ref_doc_submitted": 1, 
+  "from_doctype": "Customer Issue"
+ }, 
+ {
+  "name": "Customer Issue-Maintenance Visit", 
+  "doctype": "DocType Mapper"
+ }, 
+ {
+  "match_id": 0, 
+  "to_field": "customer", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "customer", 
+  "checking_operator": "="
+ }, 
+ {
+  "to_field": "customer_issue_no", 
+  "doctype": "Field Mapper Detail", 
+  "match_id": 0, 
+  "from_field": "name"
+ }, 
+ {
+  "match_id": 1, 
+  "to_field": "description", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "complaint", 
+  "checking_operator": "="
+ }, 
+ {
+  "to_field": "prevdoc_doctype", 
+  "doctype": "Field Mapper Detail", 
+  "match_id": 1, 
+  "from_field": "doctype"
+ }, 
+ {
+  "to_field": "prevdoc_docname", 
+  "doctype": "Field Mapper Detail", 
+  "match_id": 1, 
+  "from_field": "name"
+ }, 
+ {
+  "match_id": 1, 
+  "reference_doctype_key": "prevdoc_doctype", 
+  "to_field": "maintenance_visit_details", 
+  "doctype": "Table Mapper Detail", 
+  "to_table": "Maintenance Visit Purpose"
+ }, 
+ {
+  "to_table": "Maintenance Visit", 
+  "match_id": 0, 
+  "doctype": "Table Mapper Detail"
+ }
 ]
\ No newline at end of file
diff --git a/support/DocType Mapper/Maintenance Schedule-Maintenance Visit/Maintenance Schedule-Maintenance Visit.txt b/support/DocType Mapper/Maintenance Schedule-Maintenance Visit/Maintenance Schedule-Maintenance Visit.txt
index 4290148..9ea33b1 100644
--- a/support/DocType Mapper/Maintenance Schedule-Maintenance Visit/Maintenance Schedule-Maintenance Visit.txt
+++ b/support/DocType Mapper/Maintenance Schedule-Maintenance Visit/Maintenance Schedule-Maintenance Visit.txt
@@ -1,99 +1,76 @@
-# DocType Mapper, Maintenance Schedule-Maintenance Visit
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-06-27 13:18:25',
-		'docstatus': 0,
-		'modified': '2012-06-27 13:18:25',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all Table Mapper Detail
-	{
-		'doctype': u'Table Mapper Detail',
-		'name': '__common__',
-		'parent': u'Maintenance Schedule-Maintenance Visit',
-		'parentfield': u'table_mapper_details',
-		'parenttype': u'DocType Mapper',
-		'validation_logic': u'docstatus=1'
-	},
-
-	# These values are common for all Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'map': u'Yes',
-		'name': '__common__',
-		'parent': u'Maintenance Schedule-Maintenance Visit',
-		'parentfield': u'field_mapper_details',
-		'parenttype': u'DocType Mapper'
-	},
-
-	# These values are common for all DocType Mapper
-	{
-		'doctype': u'DocType Mapper',
-		'from_doctype': u'Maintenance Schedule',
-		'module': u'Support',
-		'name': '__common__',
-		'ref_doc_submitted': 1,
-		'to_doctype': u'Maintenance Visit'
-	},
-
-	# DocType Mapper, Maintenance Schedule-Maintenance Visit
-	{
-		'doctype': u'DocType Mapper',
-		'name': u'Maintenance Schedule-Maintenance Visit'
-	},
-
-	# Field Mapper Detail
-	{
-		'checking_operator': u'=',
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'customer',
-		'match_id': 0,
-		'to_field': u'customer'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'name',
-		'match_id': 0,
-		'to_field': u'maintenance_schedule'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'parent',
-		'match_id': 1,
-		'to_field': u'prevdoc_docname'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': u'Field Mapper Detail',
-		'from_field': u'parenttype',
-		'match_id': 1,
-		'to_field': u'prevdoc_doctype'
-	},
-
-	# Table Mapper Detail
-	{
-		'doctype': u'Table Mapper Detail',
-		'from_field': u'item_maintenance_detail',
-		'from_table': u'Maintenance Schedule Item',
-		'match_id': 1,
-		'to_field': u'maintenance_visit_details',
-		'to_table': u'Maintenance Visit Purpose'
-	},
-
-	# Table Mapper Detail
-	{
-		'doctype': u'Table Mapper Detail',
-		'from_table': u'Maintenance Schedule',
-		'match_id': 0,
-		'to_table': u'Maintenance Visit'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-06-27 13:18:25", 
+  "modified_by": "Administrator", 
+  "modified": "2012-06-27 13:18:25"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Maintenance Schedule-Maintenance Visit", 
+  "doctype": "Table Mapper Detail", 
+  "parenttype": "DocType Mapper", 
+  "validation_logic": "docstatus=1", 
+  "parentfield": "table_mapper_details"
+ }, 
+ {
+  "map": "Yes", 
+  "name": "__common__", 
+  "parent": "Maintenance Schedule-Maintenance Visit", 
+  "doctype": "Field Mapper Detail", 
+  "parenttype": "DocType Mapper", 
+  "parentfield": "field_mapper_details"
+ }, 
+ {
+  "name": "__common__", 
+  "to_doctype": "Maintenance Visit", 
+  "module": "Support", 
+  "doctype": "DocType Mapper", 
+  "ref_doc_submitted": 1, 
+  "from_doctype": "Maintenance Schedule"
+ }, 
+ {
+  "name": "Maintenance Schedule-Maintenance Visit", 
+  "doctype": "DocType Mapper"
+ }, 
+ {
+  "match_id": 0, 
+  "to_field": "customer", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "customer", 
+  "checking_operator": "="
+ }, 
+ {
+  "to_field": "maintenance_schedule", 
+  "doctype": "Field Mapper Detail", 
+  "match_id": 0, 
+  "from_field": "name"
+ }, 
+ {
+  "to_field": "prevdoc_docname", 
+  "doctype": "Field Mapper Detail", 
+  "match_id": 1, 
+  "from_field": "parent"
+ }, 
+ {
+  "to_field": "prevdoc_doctype", 
+  "doctype": "Field Mapper Detail", 
+  "match_id": 1, 
+  "from_field": "parenttype"
+ }, 
+ {
+  "match_id": 1, 
+  "to_field": "maintenance_visit_details", 
+  "doctype": "Table Mapper Detail", 
+  "from_field": "item_maintenance_detail", 
+  "from_table": "Maintenance Schedule Item", 
+  "to_table": "Maintenance Visit Purpose"
+ }, 
+ {
+  "to_table": "Maintenance Visit", 
+  "doctype": "Table Mapper Detail", 
+  "match_id": 0, 
+  "from_table": "Maintenance Schedule"
+ }
 ]
\ No newline at end of file
diff --git a/support/DocType Mapper/Sales Order-Maintenance Schedule/Sales Order-Maintenance Schedule.txt b/support/DocType Mapper/Sales Order-Maintenance Schedule/Sales Order-Maintenance Schedule.txt
index b22ca54..7dde342 100644
--- a/support/DocType Mapper/Sales Order-Maintenance Schedule/Sales Order-Maintenance Schedule.txt
+++ b/support/DocType Mapper/Sales Order-Maintenance Schedule/Sales Order-Maintenance Schedule.txt
@@ -1,101 +1,78 @@
-# DocType Mapper, Sales Order-Maintenance Schedule
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2010-08-08 17:09:35',
-		'docstatus': 0,
-		'modified': '2011-09-15 15:04:44',
-		'modified_by': 'Administrator',
-		'owner': 'Administrator'
-	},
-
-	# These values are common for all Table Mapper Detail
-	{
-		'doctype': 'Table Mapper Detail',
-		'name': '__common__',
-		'parent': 'Sales Order-Maintenance Schedule',
-		'parentfield': 'table_mapper_details',
-		'parenttype': 'DocType Mapper'
-	},
-
-	# These values are common for all Field Mapper Detail
-	{
-		'doctype': 'Field Mapper Detail',
-		'map': 'Yes',
-		'name': '__common__',
-		'parent': 'Sales Order-Maintenance Schedule',
-		'parentfield': 'field_mapper_details',
-		'parenttype': 'DocType Mapper'
-	},
-
-	# These values are common for all DocType Mapper
-	{
-		'doctype': 'DocType Mapper',
-		'from_doctype': 'Sales Order',
-		'module': 'Support',
-		'name': '__common__',
-		'ref_doc_submitted': 1,
-		'to_doctype': 'Maintenance Schedule'
-	},
-
-	# DocType Mapper, Sales Order-Maintenance Schedule
-	{
-		'doctype': 'DocType Mapper',
-		'name': 'Sales Order-Maintenance Schedule'
-	},
-
-	# Field Mapper Detail
-	{
-		'checking_operator': '=',
-		'doctype': 'Field Mapper Detail',
-		'from_field': 'customer',
-		'match_id': 0,
-		'to_field': 'customer'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': 'Field Mapper Detail',
-		'from_field': 'name',
-		'match_id': 0,
-		'to_field': 'sales_order_no'
-	},
-
-	# Field Mapper Detail
-	{
-		'checking_operator': '=',
-		'doctype': 'Field Mapper Detail',
-		'from_field': 'item_code',
-		'match_id': 1,
-		'to_field': 'item_code'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': 'Field Mapper Detail',
-		'from_field': 'parent',
-		'match_id': 1,
-		'to_field': 'prevdoc_docname'
-	},
-
-	# Table Mapper Detail
-	{
-		'doctype': 'Table Mapper Detail',
-		'from_field': 'sales_order_details',
-		'from_table': 'Sales Order Item',
-		'match_id': 1,
-		'to_field': 'item_maintenance_detail',
-		'to_table': 'Maintenance Schedule Item',
-		'validation_logic': 'docstatus =1'
-	},
-
-	# Table Mapper Detail
-	{
-		'doctype': 'Table Mapper Detail',
-		'from_table': 'Sales Order',
-		'match_id': 0,
-		'to_table': 'Maintenance Schedule',
-		'validation_logic': 'docstatus=1'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2010-08-08 17:09:35", 
+  "modified_by": "Administrator", 
+  "modified": "2011-09-15 15:04:44"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Sales Order-Maintenance Schedule", 
+  "doctype": "Table Mapper Detail", 
+  "parenttype": "DocType Mapper", 
+  "parentfield": "table_mapper_details"
+ }, 
+ {
+  "map": "Yes", 
+  "name": "__common__", 
+  "parent": "Sales Order-Maintenance Schedule", 
+  "doctype": "Field Mapper Detail", 
+  "parenttype": "DocType Mapper", 
+  "parentfield": "field_mapper_details"
+ }, 
+ {
+  "name": "__common__", 
+  "to_doctype": "Maintenance Schedule", 
+  "module": "Support", 
+  "doctype": "DocType Mapper", 
+  "ref_doc_submitted": 1, 
+  "from_doctype": "Sales Order"
+ }, 
+ {
+  "name": "Sales Order-Maintenance Schedule", 
+  "doctype": "DocType Mapper"
+ }, 
+ {
+  "match_id": 0, 
+  "to_field": "customer", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "customer", 
+  "checking_operator": "="
+ }, 
+ {
+  "to_field": "sales_order_no", 
+  "doctype": "Field Mapper Detail", 
+  "match_id": 0, 
+  "from_field": "name"
+ }, 
+ {
+  "match_id": 1, 
+  "to_field": "item_code", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "item_code", 
+  "checking_operator": "="
+ }, 
+ {
+  "to_field": "prevdoc_docname", 
+  "doctype": "Field Mapper Detail", 
+  "match_id": 1, 
+  "from_field": "parent"
+ }, 
+ {
+  "match_id": 1, 
+  "to_field": "item_maintenance_detail", 
+  "doctype": "Table Mapper Detail", 
+  "from_field": "sales_order_details", 
+  "from_table": "Sales Order Item", 
+  "to_table": "Maintenance Schedule Item", 
+  "validation_logic": "docstatus =1"
+ }, 
+ {
+  "match_id": 0, 
+  "doctype": "Table Mapper Detail", 
+  "from_table": "Sales Order", 
+  "to_table": "Maintenance Schedule", 
+  "validation_logic": "docstatus=1"
+ }
 ]
\ No newline at end of file
diff --git a/support/DocType Mapper/Sales Order-Maintenance Visit/Sales Order-Maintenance Visit.txt b/support/DocType Mapper/Sales Order-Maintenance Visit/Sales Order-Maintenance Visit.txt
index 6ef99b4..c2d4d02 100644
--- a/support/DocType Mapper/Sales Order-Maintenance Visit/Sales Order-Maintenance Visit.txt
+++ b/support/DocType Mapper/Sales Order-Maintenance Visit/Sales Order-Maintenance Visit.txt
@@ -1,99 +1,76 @@
-# DocType Mapper, Sales Order-Maintenance Visit
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2010-08-08 17:09:36',
-		'docstatus': 0,
-		'modified': '2011-09-15 15:04:45',
-		'modified_by': 'Administrator',
-		'owner': 'ashwini@webnotestech.com'
-	},
-
-	# These values are common for all Table Mapper Detail
-	{
-		'doctype': 'Table Mapper Detail',
-		'name': '__common__',
-		'parent': 'Sales Order-Maintenance Visit',
-		'parentfield': 'table_mapper_details',
-		'parenttype': 'DocType Mapper',
-		'validation_logic': 'docstatus=1'
-	},
-
-	# These values are common for all Field Mapper Detail
-	{
-		'doctype': 'Field Mapper Detail',
-		'map': 'Yes',
-		'name': '__common__',
-		'parent': 'Sales Order-Maintenance Visit',
-		'parentfield': 'field_mapper_details',
-		'parenttype': 'DocType Mapper'
-	},
-
-	# These values are common for all DocType Mapper
-	{
-		'doctype': 'DocType Mapper',
-		'from_doctype': 'Sales Order',
-		'module': 'Support',
-		'name': '__common__',
-		'ref_doc_submitted': 1,
-		'to_doctype': 'Maintenance Visit'
-	},
-
-	# DocType Mapper, Sales Order-Maintenance Visit
-	{
-		'doctype': 'DocType Mapper',
-		'name': 'Sales Order-Maintenance Visit'
-	},
-
-	# Field Mapper Detail
-	{
-		'checking_operator': '=',
-		'doctype': 'Field Mapper Detail',
-		'from_field': 'customer',
-		'match_id': 0,
-		'to_field': 'customer'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': 'Field Mapper Detail',
-		'from_field': 'name',
-		'match_id': 0,
-		'to_field': 'sales_order_no'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': 'Field Mapper Detail',
-		'from_field': 'parent',
-		'match_id': 1,
-		'to_field': 'prevdoc_docname'
-	},
-
-	# Field Mapper Detail
-	{
-		'doctype': 'Field Mapper Detail',
-		'from_field': 'parenttype',
-		'match_id': 1,
-		'to_field': 'prevdoc_doctype'
-	},
-
-	# Table Mapper Detail
-	{
-		'doctype': 'Table Mapper Detail',
-		'from_field': 'sales_order_details',
-		'from_table': 'Sales Order Item',
-		'match_id': 1,
-		'to_field': 'maintenance_visit_details',
-		'to_table': 'Maintenance Visit Purpose'
-	},
-
-	# Table Mapper Detail
-	{
-		'doctype': 'Table Mapper Detail',
-		'from_table': 'Sales Order',
-		'match_id': 0,
-		'to_table': 'Maintenance Visit'
-	}
+ {
+  "owner": "ashwini@webnotestech.com", 
+  "docstatus": 0, 
+  "creation": "2010-08-08 17:09:36", 
+  "modified_by": "Administrator", 
+  "modified": "2011-09-15 15:04:45"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Sales Order-Maintenance Visit", 
+  "doctype": "Table Mapper Detail", 
+  "parenttype": "DocType Mapper", 
+  "validation_logic": "docstatus=1", 
+  "parentfield": "table_mapper_details"
+ }, 
+ {
+  "map": "Yes", 
+  "name": "__common__", 
+  "parent": "Sales Order-Maintenance Visit", 
+  "doctype": "Field Mapper Detail", 
+  "parenttype": "DocType Mapper", 
+  "parentfield": "field_mapper_details"
+ }, 
+ {
+  "name": "__common__", 
+  "to_doctype": "Maintenance Visit", 
+  "module": "Support", 
+  "doctype": "DocType Mapper", 
+  "ref_doc_submitted": 1, 
+  "from_doctype": "Sales Order"
+ }, 
+ {
+  "name": "Sales Order-Maintenance Visit", 
+  "doctype": "DocType Mapper"
+ }, 
+ {
+  "match_id": 0, 
+  "to_field": "customer", 
+  "doctype": "Field Mapper Detail", 
+  "from_field": "customer", 
+  "checking_operator": "="
+ }, 
+ {
+  "to_field": "sales_order_no", 
+  "doctype": "Field Mapper Detail", 
+  "match_id": 0, 
+  "from_field": "name"
+ }, 
+ {
+  "to_field": "prevdoc_docname", 
+  "doctype": "Field Mapper Detail", 
+  "match_id": 1, 
+  "from_field": "parent"
+ }, 
+ {
+  "to_field": "prevdoc_doctype", 
+  "doctype": "Field Mapper Detail", 
+  "match_id": 1, 
+  "from_field": "parenttype"
+ }, 
+ {
+  "match_id": 1, 
+  "to_field": "maintenance_visit_details", 
+  "doctype": "Table Mapper Detail", 
+  "from_field": "sales_order_details", 
+  "from_table": "Sales Order Item", 
+  "to_table": "Maintenance Visit Purpose"
+ }, 
+ {
+  "to_table": "Maintenance Visit", 
+  "doctype": "Table Mapper Detail", 
+  "match_id": 0, 
+  "from_table": "Sales Order"
+ }
 ]
\ No newline at end of file
diff --git a/support/doctype/maintenance_schedule/maintenance_schedule.txt b/support/doctype/maintenance_schedule/maintenance_schedule.txt
index 8061651..9af7d2c 100644
--- a/support/doctype/maintenance_schedule/maintenance_schedule.txt
+++ b/support/doctype/maintenance_schedule/maintenance_schedule.txt
@@ -1,398 +1,329 @@
-# DocType, Maintenance Schedule
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:36:41',
-		'docstatus': 0,
-		'modified': '2012-03-27 14:45:49',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'_last_update': u'1322549701',
-		'autoname': u'MS.#####',
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'is_submittable': 1,
-		'module': u'Support',
-		'name': '__common__',
-		'search_fields': u'status,customer,customer_name, sales_order_no',
-		'section_style': u'Simple',
-		'server_code_error': u' ',
-		'show_in_menu': 0,
-		'version': 156
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'Maintenance Schedule',
-		'parentfield': u'fields',
-		'parenttype': u'DocType'
-	},
-
-	# These values are common for all DocPerm
-	{
-		'doctype': u'DocPerm',
-		'name': '__common__',
-		'parent': u'Maintenance Schedule',
-		'parentfield': u'permissions',
-		'parenttype': u'DocType',
-		'read': 1
-	},
-
-	# DocType, Maintenance Schedule
-	{
-		'doctype': 'DocType',
-		'name': u'Maintenance Schedule'
-	},
-
-	# DocPerm
-	{
-		'amend': 1,
-		'cancel': 1,
-		'create': 1,
-		'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'System Manager',
-		'submit': 1,
-		'write': 1
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm',
-		'permlevel': 1,
-		'role': u'System Manager'
-	},
-
-	# DocPerm
-	{
-		'amend': 1,
-		'cancel': 1,
-		'create': 1,
-		'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'Maintenance Manager',
-		'submit': 1,
-		'write': 1
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm',
-		'permlevel': 1,
-		'role': u'Maintenance Manager'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'customer_details',
-		'fieldtype': u'Section Break',
-		'label': u'Customer Details',
-		'oldfieldtype': u'Section Break',
-		'options': u'Simple',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'column_break0',
-		'fieldtype': u'Column Break',
-		'oldfieldtype': u'Column Break',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'customer',
-		'fieldtype': u'Link',
-		'in_filter': 1,
-		'label': u'Customer',
-		'oldfieldname': u'customer',
-		'oldfieldtype': u'Link',
-		'options': u'Customer',
-		'permlevel': 0,
-		'print_hide': 1,
-		'reqd': 1,
-		'search_index': 1,
-		'trigger': u'Client'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'customer_address',
-		'fieldtype': u'Link',
-		'label': u'Customer Address',
-		'options': u'Address',
-		'permlevel': 0,
-		'print_hide': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'contact_person',
-		'fieldtype': u'Link',
-		'label': u'Contact Person',
-		'options': u'Contact',
-		'permlevel': 0,
-		'print_hide': 1
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'doctype': u'DocField',
-		'fieldname': u'customer_name',
-		'fieldtype': u'Data',
-		'in_filter': 1,
-		'label': u'Name',
-		'oldfieldname': u'customer_name',
-		'oldfieldtype': u'Data',
-		'permlevel': 1,
-		'reqd': 0,
-		'search_index': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'address_display',
-		'fieldtype': u'Small Text',
-		'label': u'Address',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'contact_display',
-		'fieldtype': u'Small Text',
-		'label': u'Contact',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'contact_mobile',
-		'fieldtype': u'Text',
-		'label': u'Mobile No',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'contact_email',
-		'fieldtype': u'Text',
-		'label': u'Contact Email',
-		'permlevel': 1,
-		'print_hide': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'column_break1',
-		'fieldtype': u'Column Break',
-		'oldfieldtype': u'Column Break',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'doctype': u'DocField',
-		'fieldname': u'transaction_date',
-		'fieldtype': u'Date',
-		'in_filter': 1,
-		'label': u'Transaction Date',
-		'oldfieldname': u'transaction_date',
-		'oldfieldtype': u'Date',
-		'permlevel': 0,
-		'reqd': 1,
-		'search_index': 0
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'default': u'Draft',
-		'doctype': u'DocField',
-		'fieldname': u'status',
-		'fieldtype': u'Select',
-		'in_filter': 1,
-		'label': u'Status',
-		'no_copy': 1,
-		'oldfieldname': u'status',
-		'oldfieldtype': u'Select',
-		'options': u'\nDraft\nSubmitted\nCancelled',
-		'permlevel': 1,
-		'reqd': 1,
-		'search_index': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'amended_from',
-		'fieldtype': u'Data',
-		'label': u'Amended From',
-		'no_copy': 1,
-		'oldfieldname': u'amended_from',
-		'oldfieldtype': u'Data',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'amendment_date',
-		'fieldtype': u'Date',
-		'hidden': 1,
-		'label': u'Amendment Date',
-		'no_copy': 1,
-		'oldfieldname': u'amendment_date',
-		'oldfieldtype': u'Date',
-		'permlevel': 1,
-		'print_hide': 1,
-		'report_hide': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'company',
-		'fieldtype': u'Link',
-		'in_filter': 1,
-		'label': u'Company',
-		'oldfieldname': u'company',
-		'oldfieldtype': u'Link',
-		'options': u'Company',
-		'permlevel': 0,
-		'reqd': 1,
-		'search_index': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'territory',
-		'fieldtype': u'Link',
-		'in_filter': 1,
-		'label': u'Territory',
-		'oldfieldname': u'territory',
-		'oldfieldtype': u'Link',
-		'options': u'Territory',
-		'permlevel': 0,
-		'reqd': 1,
-		'search_index': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'customer_group',
-		'fieldtype': u'Link',
-		'label': u'Customer Group',
-		'options': u'Customer Group',
-		'permlevel': 0,
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'items',
-		'fieldtype': u'Section Break',
-		'label': u'Items',
-		'oldfieldtype': u'Section Break',
-		'options': u'Simple',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'doctype': u'DocField',
-		'fieldname': u'sales_order_no',
-		'fieldtype': u'Link',
-		'in_filter': 1,
-		'label': u'Sales Order No',
-		'oldfieldname': u'sales_order_no',
-		'oldfieldtype': u'Link',
-		'options': u'Sales Order',
-		'permlevel': 0,
-		'search_index': 1,
-		'trigger': u'Client'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'get_items',
-		'fieldtype': u'Button',
-		'label': u'Get Items',
-		'oldfieldtype': u'Button',
-		'options': u'pull_sales_order_detail',
-		'permlevel': 0,
-		'report_hide': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'item_maintenance_detail',
-		'fieldtype': u'Table',
-		'label': u'Maintenance Schedule Item',
-		'oldfieldname': u'item_maintenance_detail',
-		'oldfieldtype': u'Table',
-		'options': u'Maintenance Schedule Item',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'schedule',
-		'fieldtype': u'Section Break',
-		'label': u'Schedule',
-		'oldfieldtype': u'Section Break',
-		'options': u'Simple',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'doctype': u'DocField',
-		'fieldname': u'generate_schedule',
-		'fieldtype': u'Button',
-		'label': u'Generate Schedule',
-		'oldfieldtype': u'Button',
-		'permlevel': 0,
-		'trigger': u'Client'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'maintenance_schedule_detail',
-		'fieldtype': u'Table',
-		'label': u'Maintenance Schedule Detail',
-		'oldfieldname': u'maintenance_schedule_detail',
-		'oldfieldtype': u'Table',
-		'options': u'Maintenance Schedule Detail',
-		'permlevel': 1
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-03-27 14:36:41", 
+  "modified_by": "Administrator", 
+  "modified": "2012-03-27 14:45:49"
+ }, 
+ {
+  "section_style": "Simple", 
+  "is_submittable": 1, 
+  "search_fields": "status,customer,customer_name, sales_order_no", 
+  "module": "Support", 
+  "doctype": "DocType", 
+  "server_code_error": " ", 
+  "autoname": "MS.#####", 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "_last_update": "1322549701", 
+  "show_in_menu": 0, 
+  "version": 156
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Maintenance Schedule", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Maintenance Schedule", 
+  "read": 1, 
+  "doctype": "DocPerm", 
+  "parenttype": "DocType", 
+  "parentfield": "permissions"
+ }, 
+ {
+  "name": "Maintenance Schedule", 
+  "doctype": "DocType"
+ }, 
+ {
+  "amend": 1, 
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "submit": 1, 
+  "write": 1, 
+  "role": "System Manager", 
+  "cancel": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "role": "System Manager", 
+  "permlevel": 1, 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "amend": 1, 
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "submit": 1, 
+  "write": 1, 
+  "role": "Maintenance Manager", 
+  "cancel": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "role": "Maintenance Manager", 
+  "permlevel": 1, 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "oldfieldtype": "Section Break", 
+  "doctype": "DocField", 
+  "label": "Customer Details", 
+  "permlevel": 0, 
+  "fieldname": "customer_details", 
+  "fieldtype": "Section Break", 
+  "options": "Simple"
+ }, 
+ {
+  "oldfieldtype": "Column Break", 
+  "doctype": "DocField", 
+  "fieldname": "column_break0", 
+  "fieldtype": "Column Break", 
+  "permlevel": 0
+ }, 
+ {
+  "print_hide": 1, 
+  "oldfieldtype": "Link", 
+  "doctype": "DocField", 
+  "label": "Customer", 
+  "oldfieldname": "customer", 
+  "permlevel": 0, 
+  "trigger": "Client", 
+  "fieldname": "customer", 
+  "fieldtype": "Link", 
+  "search_index": 1, 
+  "reqd": 1, 
+  "options": "Customer", 
+  "in_filter": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "doctype": "DocField", 
+  "label": "Customer Address", 
+  "options": "Address", 
+  "fieldname": "customer_address", 
+  "fieldtype": "Link", 
+  "permlevel": 0
+ }, 
+ {
+  "print_hide": 1, 
+  "doctype": "DocField", 
+  "label": "Contact Person", 
+  "options": "Contact", 
+  "fieldname": "contact_person", 
+  "fieldtype": "Link", 
+  "permlevel": 0
+ }, 
+ {
+  "search_index": 0, 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Name", 
+  "oldfieldname": "customer_name", 
+  "fieldname": "customer_name", 
+  "fieldtype": "Data", 
+  "oldfieldtype": "Data", 
+  "reqd": 0, 
+  "permlevel": 1, 
+  "in_filter": 1
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Address", 
+  "fieldname": "address_display", 
+  "fieldtype": "Small Text", 
+  "permlevel": 1
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Contact", 
+  "fieldname": "contact_display", 
+  "fieldtype": "Small Text", 
+  "permlevel": 1
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Mobile No", 
+  "fieldname": "contact_mobile", 
+  "fieldtype": "Text", 
+  "permlevel": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "doctype": "DocField", 
+  "label": "Contact Email", 
+  "fieldname": "contact_email", 
+  "fieldtype": "Text", 
+  "permlevel": 1
+ }, 
+ {
+  "oldfieldtype": "Column Break", 
+  "doctype": "DocField", 
+  "fieldname": "column_break1", 
+  "fieldtype": "Column Break", 
+  "permlevel": 0
+ }, 
+ {
+  "search_index": 0, 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Transaction Date", 
+  "oldfieldname": "transaction_date", 
+  "fieldname": "transaction_date", 
+  "fieldtype": "Date", 
+  "oldfieldtype": "Date", 
+  "reqd": 1, 
+  "permlevel": 0, 
+  "in_filter": 1
+ }, 
+ {
+  "permlevel": 1, 
+  "no_copy": 1, 
+  "oldfieldtype": "Select", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Status", 
+  "oldfieldname": "status", 
+  "default": "Draft", 
+  "fieldname": "status", 
+  "fieldtype": "Select", 
+  "search_index": 0, 
+  "reqd": 1, 
+  "options": "\nDraft\nSubmitted\nCancelled", 
+  "in_filter": 1
+ }, 
+ {
+  "no_copy": 1, 
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Amended From", 
+  "oldfieldname": "amended_from", 
+  "fieldname": "amended_from", 
+  "fieldtype": "Data", 
+  "permlevel": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "no_copy": 1, 
+  "oldfieldtype": "Date", 
+  "doctype": "DocField", 
+  "label": "Amendment Date", 
+  "oldfieldname": "amendment_date", 
+  "fieldname": "amendment_date", 
+  "fieldtype": "Date", 
+  "hidden": 1, 
+  "permlevel": 1, 
+  "report_hide": 1
+ }, 
+ {
+  "search_index": 0, 
+  "doctype": "DocField", 
+  "label": "Company", 
+  "oldfieldname": "company", 
+  "options": "Company", 
+  "fieldname": "company", 
+  "fieldtype": "Link", 
+  "oldfieldtype": "Link", 
+  "reqd": 1, 
+  "permlevel": 0, 
+  "in_filter": 1
+ }, 
+ {
+  "search_index": 0, 
+  "doctype": "DocField", 
+  "label": "Territory", 
+  "oldfieldname": "territory", 
+  "options": "Territory", 
+  "fieldname": "territory", 
+  "fieldtype": "Link", 
+  "oldfieldtype": "Link", 
+  "reqd": 1, 
+  "permlevel": 0, 
+  "in_filter": 1
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Customer Group", 
+  "options": "Customer Group", 
+  "fieldname": "customer_group", 
+  "fieldtype": "Link", 
+  "reqd": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Section Break", 
+  "doctype": "DocField", 
+  "label": "Items", 
+  "permlevel": 0, 
+  "fieldname": "items", 
+  "fieldtype": "Section Break", 
+  "options": "Simple"
+ }, 
+ {
+  "search_index": 1, 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Sales Order No", 
+  "oldfieldname": "sales_order_no", 
+  "trigger": "Client", 
+  "fieldname": "sales_order_no", 
+  "fieldtype": "Link", 
+  "oldfieldtype": "Link", 
+  "options": "Sales Order", 
+  "permlevel": 0, 
+  "in_filter": 1
+ }, 
+ {
+  "oldfieldtype": "Button", 
+  "doctype": "DocField", 
+  "label": "Get Items", 
+  "permlevel": 0, 
+  "fieldname": "get_items", 
+  "fieldtype": "Button", 
+  "options": "pull_sales_order_detail", 
+  "report_hide": 1
+ }, 
+ {
+  "oldfieldtype": "Table", 
+  "doctype": "DocField", 
+  "label": "Maintenance Schedule Item", 
+  "oldfieldname": "item_maintenance_detail", 
+  "permlevel": 0, 
+  "fieldname": "item_maintenance_detail", 
+  "fieldtype": "Table", 
+  "options": "Maintenance Schedule Item"
+ }, 
+ {
+  "oldfieldtype": "Section Break", 
+  "doctype": "DocField", 
+  "label": "Schedule", 
+  "permlevel": 0, 
+  "fieldname": "schedule", 
+  "fieldtype": "Section Break", 
+  "options": "Simple"
+ }, 
+ {
+  "oldfieldtype": "Button", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Generate Schedule", 
+  "trigger": "Client", 
+  "fieldname": "generate_schedule", 
+  "fieldtype": "Button", 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Table", 
+  "doctype": "DocField", 
+  "label": "Maintenance Schedule Detail", 
+  "oldfieldname": "maintenance_schedule_detail", 
+  "permlevel": 1, 
+  "fieldname": "maintenance_schedule_detail", 
+  "fieldtype": "Table", 
+  "options": "Maintenance Schedule Detail"
+ }
 ]
\ No newline at end of file
diff --git a/support/doctype/maintenance_schedule_detail/maintenance_schedule_detail.txt b/support/doctype/maintenance_schedule_detail/maintenance_schedule_detail.txt
index 0d24fd4..f969515 100644
--- a/support/doctype/maintenance_schedule_detail/maintenance_schedule_detail.txt
+++ b/support/doctype/maintenance_schedule_detail/maintenance_schedule_detail.txt
@@ -1,128 +1,107 @@
-# DocType, Maintenance Schedule Detail
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:36:42',
-		'docstatus': 0,
-		'modified': '2012-03-27 14:36:42',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'autoname': u'MSD.#####',
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'istable': 1,
-		'module': u'Support',
-		'name': '__common__',
-		'section_style': u'Simple',
-		'server_code_error': u' ',
-		'show_in_menu': 0,
-		'version': 13
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'Maintenance Schedule Detail',
-		'parentfield': u'fields',
-		'parenttype': u'DocType'
-	},
-
-	# DocType, Maintenance Schedule Detail
-	{
-		'doctype': 'DocType',
-		'name': u'Maintenance Schedule Detail'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'item_code',
-		'fieldtype': u'Link',
-		'in_filter': 1,
-		'label': u'Item Code',
-		'oldfieldname': u'item_code',
-		'oldfieldtype': u'Link',
-		'options': u'Item',
-		'permlevel': 1,
-		'reqd': 0,
-		'search_index': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'item_name',
-		'fieldtype': u'Data',
-		'in_filter': 0,
-		'label': u'Item Name',
-		'oldfieldname': u'item_name',
-		'oldfieldtype': u'Data',
-		'permlevel': 1,
-		'search_index': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'scheduled_date',
-		'fieldtype': u'Date',
-		'in_filter': 1,
-		'label': u'Scheduled Date',
-		'oldfieldname': u'scheduled_date',
-		'oldfieldtype': u'Date',
-		'permlevel': 0,
-		'reqd': 1,
-		'search_index': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'actual_date',
-		'fieldtype': u'Date',
-		'hidden': 1,
-		'label': u'Actual Date',
-		'no_copy': 1,
-		'oldfieldname': u'actual_date',
-		'oldfieldtype': u'Date',
-		'permlevel': 1,
-		'print_hide': 1,
-		'report_hide': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'incharge_name',
-		'fieldtype': u'Link',
-		'in_filter': 1,
-		'label': u'Incharge Name',
-		'oldfieldname': u'incharge_name',
-		'oldfieldtype': u'Link',
-		'options': u'Sales Person',
-		'permlevel': 0,
-		'reqd': 1,
-		'search_index': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'serial_no',
-		'fieldtype': u'Small Text',
-		'in_filter': 1,
-		'label': u'Serial No',
-		'no_copy': 0,
-		'oldfieldname': u'serial_no',
-		'oldfieldtype': u'Small Text',
-		'permlevel': 1,
-		'search_index': 0,
-		'width': u'160px'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-03-27 14:36:42", 
+  "modified_by": "Administrator", 
+  "modified": "2012-03-27 14:36:42"
+ }, 
+ {
+  "section_style": "Simple", 
+  "istable": 1, 
+  "module": "Support", 
+  "server_code_error": " ", 
+  "doctype": "DocType", 
+  "autoname": "MSD.#####", 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "show_in_menu": 0, 
+  "version": 13
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Maintenance Schedule Detail", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "Maintenance Schedule Detail", 
+  "doctype": "DocType"
+ }, 
+ {
+  "search_index": 1, 
+  "doctype": "DocField", 
+  "label": "Item Code", 
+  "oldfieldname": "item_code", 
+  "options": "Item", 
+  "fieldname": "item_code", 
+  "fieldtype": "Link", 
+  "oldfieldtype": "Link", 
+  "reqd": 0, 
+  "permlevel": 1, 
+  "in_filter": 1
+ }, 
+ {
+  "search_index": 0, 
+  "doctype": "DocField", 
+  "label": "Item Name", 
+  "oldfieldname": "item_name", 
+  "fieldname": "item_name", 
+  "fieldtype": "Data", 
+  "oldfieldtype": "Data", 
+  "permlevel": 1, 
+  "in_filter": 0
+ }, 
+ {
+  "search_index": 1, 
+  "doctype": "DocField", 
+  "label": "Scheduled Date", 
+  "oldfieldname": "scheduled_date", 
+  "fieldname": "scheduled_date", 
+  "fieldtype": "Date", 
+  "oldfieldtype": "Date", 
+  "reqd": 1, 
+  "permlevel": 0, 
+  "in_filter": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "no_copy": 1, 
+  "oldfieldtype": "Date", 
+  "doctype": "DocField", 
+  "label": "Actual Date", 
+  "oldfieldname": "actual_date", 
+  "fieldname": "actual_date", 
+  "fieldtype": "Date", 
+  "hidden": 1, 
+  "permlevel": 1, 
+  "report_hide": 1
+ }, 
+ {
+  "search_index": 0, 
+  "doctype": "DocField", 
+  "label": "Incharge Name", 
+  "oldfieldname": "incharge_name", 
+  "options": "Sales Person", 
+  "fieldname": "incharge_name", 
+  "fieldtype": "Link", 
+  "oldfieldtype": "Link", 
+  "reqd": 1, 
+  "permlevel": 0, 
+  "in_filter": 1
+ }, 
+ {
+  "no_copy": 0, 
+  "search_index": 0, 
+  "doctype": "DocField", 
+  "label": "Serial No", 
+  "oldfieldname": "serial_no", 
+  "width": "160px", 
+  "fieldname": "serial_no", 
+  "fieldtype": "Small Text", 
+  "oldfieldtype": "Small Text", 
+  "permlevel": 1, 
+  "in_filter": 1
+ }
 ]
\ No newline at end of file
diff --git a/support/doctype/maintenance_schedule_item/maintenance_schedule_item.txt b/support/doctype/maintenance_schedule_item/maintenance_schedule_item.txt
index 6800737..4d594ba 100644
--- a/support/doctype/maintenance_schedule_item/maintenance_schedule_item.txt
+++ b/support/doctype/maintenance_schedule_item/maintenance_schedule_item.txt
@@ -1,175 +1,146 @@
-# DocType, Maintenance Schedule Item
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:36:41',
-		'docstatus': 0,
-		'modified': '2012-03-27 14:36:41',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'autoname': u'IMD.#####',
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'istable': 1,
-		'module': u'Support',
-		'name': '__common__',
-		'section_style': u'Simple',
-		'server_code_error': u' ',
-		'show_in_menu': 0,
-		'version': 9
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'Maintenance Schedule Item',
-		'parentfield': u'fields',
-		'parenttype': u'DocType'
-	},
-
-	# DocType, Maintenance Schedule Item
-	{
-		'doctype': 'DocType',
-		'name': u'Maintenance Schedule Item'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'doctype': u'DocField',
-		'fieldname': u'item_code',
-		'fieldtype': u'Link',
-		'in_filter': 1,
-		'label': u'Item Code',
-		'oldfieldname': u'item_code',
-		'oldfieldtype': u'Link',
-		'options': u'Item',
-		'permlevel': 0,
-		'reqd': 1,
-		'search_index': 1,
-		'trigger': u'Client'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'item_name',
-		'fieldtype': u'Data',
-		'label': u'Item Name',
-		'oldfieldname': u'item_name',
-		'oldfieldtype': u'Data',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'description',
-		'fieldtype': u'Data',
-		'label': u'Description',
-		'oldfieldname': u'description',
-		'oldfieldtype': u'Data',
-		'permlevel': 1,
-		'width': u'300px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'start_date',
-		'fieldtype': u'Date',
-		'in_filter': 1,
-		'label': u'Start Date',
-		'oldfieldname': u'start_date',
-		'oldfieldtype': u'Date',
-		'permlevel': 0,
-		'reqd': 1,
-		'search_index': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'end_date',
-		'fieldtype': u'Date',
-		'in_filter': 1,
-		'label': u'End Date',
-		'oldfieldname': u'end_date',
-		'oldfieldtype': u'Date',
-		'permlevel': 0,
-		'reqd': 1,
-		'search_index': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'periodicity',
-		'fieldtype': u'Select',
-		'label': u'Periodicity',
-		'oldfieldname': u'periodicity',
-		'oldfieldtype': u'Select',
-		'options': u'\nWeekly\nMonthly\nQuarterly\nHalf Yearly\nYearly\nRandom',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'no_of_visits',
-		'fieldtype': u'Int',
-		'label': u'No of Visits',
-		'oldfieldname': u'no_of_visits',
-		'oldfieldtype': u'Int',
-		'permlevel': 0,
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'incharge_name',
-		'fieldtype': u'Link',
-		'in_filter': 1,
-		'label': u'Incharge Name',
-		'oldfieldname': u'incharge_name',
-		'oldfieldtype': u'Link',
-		'options': u'Sales Person',
-		'permlevel': 0,
-		'reqd': 1,
-		'search_index': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'serial_no',
-		'fieldtype': u'Small Text',
-		'label': u'Serial No',
-		'oldfieldname': u'serial_no',
-		'oldfieldtype': u'Small Text',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'prevdoc_docname',
-		'fieldtype': u'Data',
-		'in_filter': 1,
-		'label': u'Against Docname',
-		'no_copy': 1,
-		'oldfieldname': u'prevdoc_docname',
-		'oldfieldtype': u'Data',
-		'permlevel': 1,
-		'print_hide': 1,
-		'search_index': 1,
-		'width': u'150px'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-03-27 14:36:41", 
+  "modified_by": "Administrator", 
+  "modified": "2012-03-27 14:36:41"
+ }, 
+ {
+  "section_style": "Simple", 
+  "istable": 1, 
+  "module": "Support", 
+  "server_code_error": " ", 
+  "doctype": "DocType", 
+  "autoname": "IMD.#####", 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "show_in_menu": 0, 
+  "version": 9
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Maintenance Schedule Item", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "Maintenance Schedule Item", 
+  "doctype": "DocType"
+ }, 
+ {
+  "oldfieldtype": "Link", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Item Code", 
+  "oldfieldname": "item_code", 
+  "permlevel": 0, 
+  "trigger": "Client", 
+  "fieldname": "item_code", 
+  "fieldtype": "Link", 
+  "search_index": 1, 
+  "reqd": 1, 
+  "options": "Item", 
+  "in_filter": 1
+ }, 
+ {
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Item Name", 
+  "oldfieldname": "item_name", 
+  "fieldname": "item_name", 
+  "fieldtype": "Data", 
+  "permlevel": 1
+ }, 
+ {
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Description", 
+  "oldfieldname": "description", 
+  "width": "300px", 
+  "fieldname": "description", 
+  "fieldtype": "Data", 
+  "permlevel": 1
+ }, 
+ {
+  "search_index": 1, 
+  "doctype": "DocField", 
+  "label": "Start Date", 
+  "oldfieldname": "start_date", 
+  "fieldname": "start_date", 
+  "fieldtype": "Date", 
+  "oldfieldtype": "Date", 
+  "reqd": 1, 
+  "permlevel": 0, 
+  "in_filter": 1
+ }, 
+ {
+  "search_index": 1, 
+  "doctype": "DocField", 
+  "label": "End Date", 
+  "oldfieldname": "end_date", 
+  "fieldname": "end_date", 
+  "fieldtype": "Date", 
+  "oldfieldtype": "Date", 
+  "reqd": 1, 
+  "permlevel": 0, 
+  "in_filter": 1
+ }, 
+ {
+  "oldfieldtype": "Select", 
+  "doctype": "DocField", 
+  "label": "Periodicity", 
+  "oldfieldname": "periodicity", 
+  "permlevel": 0, 
+  "fieldname": "periodicity", 
+  "fieldtype": "Select", 
+  "options": "\nWeekly\nMonthly\nQuarterly\nHalf Yearly\nYearly\nRandom"
+ }, 
+ {
+  "oldfieldtype": "Int", 
+  "doctype": "DocField", 
+  "label": "No of Visits", 
+  "oldfieldname": "no_of_visits", 
+  "fieldname": "no_of_visits", 
+  "fieldtype": "Int", 
+  "reqd": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "search_index": 0, 
+  "doctype": "DocField", 
+  "label": "Incharge Name", 
+  "oldfieldname": "incharge_name", 
+  "options": "Sales Person", 
+  "fieldname": "incharge_name", 
+  "fieldtype": "Link", 
+  "oldfieldtype": "Link", 
+  "reqd": 1, 
+  "permlevel": 0, 
+  "in_filter": 1
+ }, 
+ {
+  "oldfieldtype": "Small Text", 
+  "doctype": "DocField", 
+  "label": "Serial No", 
+  "oldfieldname": "serial_no", 
+  "fieldname": "serial_no", 
+  "fieldtype": "Small Text", 
+  "permlevel": 0
+ }, 
+ {
+  "print_hide": 1, 
+  "no_copy": 1, 
+  "search_index": 1, 
+  "doctype": "DocField", 
+  "label": "Against Docname", 
+  "oldfieldname": "prevdoc_docname", 
+  "width": "150px", 
+  "fieldname": "prevdoc_docname", 
+  "fieldtype": "Data", 
+  "oldfieldtype": "Data", 
+  "permlevel": 1, 
+  "in_filter": 1
+ }
 ]
\ No newline at end of file
diff --git a/support/doctype/maintenance_visit/maintenance_visit.txt b/support/doctype/maintenance_visit/maintenance_visit.txt
index 070daf1..2e58e17 100644
--- a/support/doctype/maintenance_visit/maintenance_visit.txt
+++ b/support/doctype/maintenance_visit/maintenance_visit.txt
@@ -1,530 +1,437 @@
-# DocType, Maintenance Visit
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-06-11 12:10:15',
-		'docstatus': 0,
-		'modified': '2012-06-27 12:50:00',
-		'modified_by': u'Administrator',
-		'owner': u'ashwini@webnotestech.com'
-	},
-
-	# These values are common for all DocType
-	{
-		'_last_update': u'1322549701',
-		'autoname': u'MV.#####',
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'is_submittable': 1,
-		'module': u'Support',
-		'name': '__common__',
-		'search_fields': u'status,maintenance_type,customer,customer_name, address,mntc_date,company,fiscal_year',
-		'section_style': u'Simple',
-		'server_code_error': u' ',
-		'show_in_menu': 0,
-		'subject': u'To %(customer_name)s on %(mntc_date)s',
-		'tag_fields': u'completion_status,maintenance_type',
-		'version': 1
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'Maintenance Visit',
-		'parentfield': u'fields',
-		'parenttype': u'DocType'
-	},
-
-	# These values are common for all DocPerm
-	{
-		'doctype': u'DocPerm',
-		'name': '__common__',
-		'parent': u'Maintenance Visit',
-		'parentfield': u'permissions',
-		'parenttype': u'DocType',
-		'read': 1
-	},
-
-	# DocType, Maintenance Visit
-	{
-		'doctype': 'DocType',
-		'name': u'Maintenance Visit'
-	},
-
-	# DocPerm
-	{
-		'amend': 1,
-		'cancel': 1,
-		'create': 1,
-		'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'System Manager',
-		'submit': 1,
-		'write': 1
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm',
-		'permlevel': 1,
-		'role': u'System Manager'
-	},
-
-	# DocPerm
-	{
-		'amend': 1,
-		'cancel': 1,
-		'create': 1,
-		'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'Maintenance Manager',
-		'submit': 1,
-		'write': 1
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm',
-		'permlevel': 1,
-		'role': u'Maintenance Manager'
-	},
-
-	# DocPerm
-	{
-		'amend': 1,
-		'cancel': 1,
-		'create': 1,
-		'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'Maintenance User',
-		'submit': 1,
-		'write': 1
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm',
-		'permlevel': 1,
-		'role': u'Maintenance User'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'customer_details',
-		'fieldtype': u'Section Break',
-		'label': u'Customer Details',
-		'oldfieldtype': u'Section Break',
-		'options': u'Simple',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'column_break0',
-		'fieldtype': u'Column Break',
-		'oldfieldtype': u'Column Break',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'customer',
-		'fieldtype': u'Link',
-		'in_filter': 1,
-		'label': u'Customer',
-		'oldfieldname': u'customer',
-		'oldfieldtype': u'Link',
-		'options': u'Customer',
-		'permlevel': 0,
-		'print_hide': 1,
-		'reqd': 1,
-		'search_index': 0,
-		'trigger': u'Client'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'customer_name',
-		'fieldtype': u'Data',
-		'hidden': 1,
-		'label': u'Customer Name',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'address_display',
-		'fieldtype': u'Small Text',
-		'hidden': 1,
-		'label': u'Address',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'contact_display',
-		'fieldtype': u'Small Text',
-		'hidden': 1,
-		'label': u'Contact',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'contact_mobile',
-		'fieldtype': u'Data',
-		'hidden': 1,
-		'label': u'Mobile No',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'contact_email',
-		'fieldtype': u'Data',
-		'hidden': 1,
-		'label': u'Contact Email',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'column_break1',
-		'fieldtype': u'Column Break',
-		'oldfieldtype': u'Column Break',
-		'permlevel': 0,
-		'width': u'50%'
-	},
-
-	# DocField
-	{
-		'default': u'Today',
-		'doctype': u'DocField',
-		'fieldname': u'mntc_date',
-		'fieldtype': u'Date',
-		'label': u'Maintenance Date',
-		'no_copy': 1,
-		'oldfieldname': u'mntc_date',
-		'oldfieldtype': u'Date',
-		'permlevel': 0,
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'mntc_time',
-		'fieldtype': u'Time',
-		'label': u'Maintenance Time',
-		'no_copy': 1,
-		'oldfieldname': u'mntc_time',
-		'oldfieldtype': u'Time',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'maintenance_details',
-		'fieldtype': u'Section Break',
-		'label': u'Maintenance Details',
-		'oldfieldtype': u'Section Break',
-		'options': u'Simple',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'completion_status',
-		'fieldtype': u'Select',
-		'label': u'Completion Status',
-		'oldfieldname': u'completion_status',
-		'oldfieldtype': u'Select',
-		'options': u'\nPartially Completed\nFully Completed',
-		'permlevel': 0,
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'default': u'Unscheduled',
-		'doctype': u'DocField',
-		'fieldname': u'maintenance_type',
-		'fieldtype': u'Select',
-		'in_filter': 1,
-		'label': u'Maintenance Type',
-		'oldfieldname': u'maintenance_type',
-		'oldfieldtype': u'Select',
-		'options': u'\nScheduled\nUnscheduled\nBreakdown',
-		'permlevel': 0,
-		'reqd': 1,
-		'search_index': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'column_break2',
-		'fieldtype': u'Column Break',
-		'oldfieldtype': u'Column Break',
-		'permlevel': 0,
-		'width': u'50%'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'doctype': u'DocField',
-		'fieldname': u'sales_order_no',
-		'fieldtype': u'Link',
-		'in_filter': 1,
-		'label': u'Sales Order No',
-		'oldfieldname': u'sales_order_no',
-		'oldfieldtype': u'Link',
-		'options': u'Sales Order',
-		'permlevel': 0,
-		'search_index': 1,
-		'trigger': u'Client'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'doctype': u'DocField',
-		'fieldname': u'customer_issue_no',
-		'fieldtype': u'Link',
-		'in_filter': 1,
-		'label': u'Customer Issue No',
-		'oldfieldname': u'customer_issue_no',
-		'oldfieldtype': u'Link',
-		'options': u'Customer Issue',
-		'permlevel': 0,
-		'search_index': 1,
-		'trigger': u'Client'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'maintenance_schedule',
-		'fieldtype': u'Link',
-		'in_filter': 1,
-		'label': u'Maintenance Schedule',
-		'options': u'Maintenance Schedule',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'get_items',
-		'fieldtype': u'Button',
-		'label': u'Get Items',
-		'oldfieldtype': u'Button',
-		'options': u'fetch_items',
-		'permlevel': 0,
-		'print_hide': 1,
-		'report_hide': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'section_break0',
-		'fieldtype': u'Section Break',
-		'oldfieldtype': u'Section Break',
-		'options': u'Simple',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'maintenance_visit_details',
-		'fieldtype': u'Table',
-		'label': u'Maintenance Visit Purpose',
-		'oldfieldname': u'maintenance_visit_details',
-		'oldfieldtype': u'Table',
-		'options': u'Maintenance Visit Purpose',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'more_info',
-		'fieldtype': u'Section Break',
-		'label': u'More Info',
-		'oldfieldtype': u'Section Break',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'customer_feedback',
-		'fieldtype': u'Small Text',
-		'label': u'Customer Feedback',
-		'oldfieldname': u'customer_feedback',
-		'oldfieldtype': u'Small Text',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'col_break3',
-		'fieldtype': u'Column Break',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'default': u'Draft',
-		'doctype': u'DocField',
-		'fieldname': u'status',
-		'fieldtype': u'Data',
-		'label': u'Status',
-		'no_copy': 1,
-		'oldfieldname': u'status',
-		'oldfieldtype': u'Data',
-		'options': u'\nDraft\nCancelled\nSubmitted',
-		'permlevel': 1,
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'amended_from',
-		'fieldtype': u'Data',
-		'label': u'Amended From',
-		'no_copy': 1,
-		'oldfieldname': u'amended_from',
-		'oldfieldtype': u'Data',
-		'permlevel': 1,
-		'print_hide': 1,
-		'width': u'150px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'amendment_date',
-		'fieldtype': u'Date',
-		'label': u'Amendment Date',
-		'no_copy': 1,
-		'oldfieldname': u'amendment_date',
-		'oldfieldtype': u'Date',
-		'permlevel': 0,
-		'print_hide': 1,
-		'width': u'100px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'company',
-		'fieldtype': u'Select',
-		'in_filter': 1,
-		'label': u'Company',
-		'oldfieldname': u'company',
-		'oldfieldtype': u'Select',
-		'options': u'link:Company',
-		'permlevel': 0,
-		'print_hide': 1,
-		'reqd': 1,
-		'search_index': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'fiscal_year',
-		'fieldtype': u'Select',
-		'in_filter': 1,
-		'label': u'Fiscal Year',
-		'oldfieldname': u'fiscal_year',
-		'oldfieldtype': u'Select',
-		'options': u'link:Fiscal Year',
-		'permlevel': 0,
-		'print_hide': 1,
-		'reqd': 1,
-		'search_index': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'contact_info_section',
-		'fieldtype': u'Section Break',
-		'label': u'Contact Info',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'customer_address',
-		'fieldtype': u'Link',
-		'label': u'Customer Address',
-		'options': u'Address',
-		'permlevel': 0,
-		'print_hide': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'contact_person',
-		'fieldtype': u'Link',
-		'label': u'Contact Person',
-		'options': u'Contact',
-		'permlevel': 0,
-		'print_hide': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'col_break4',
-		'fieldtype': u'Column Break',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'territory',
-		'fieldtype': u'Link',
-		'label': u'Territory',
-		'options': u'Territory',
-		'permlevel': 0,
-		'print_hide': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'customer_group',
-		'fieldtype': u'Link',
-		'label': u'Customer Group',
-		'options': u'Customer Group',
-		'permlevel': 0,
-		'print_hide': 1
-	}
+ {
+  "owner": "ashwini@webnotestech.com", 
+  "docstatus": 0, 
+  "creation": "2012-06-11 12:10:15", 
+  "modified_by": "Administrator", 
+  "modified": "2012-06-27 12:50:00"
+ }, 
+ {
+  "section_style": "Simple", 
+  "tag_fields": "completion_status,maintenance_type", 
+  "is_submittable": 1, 
+  "search_fields": "status,maintenance_type,customer,customer_name, address,mntc_date,company,fiscal_year", 
+  "module": "Support", 
+  "doctype": "DocType", 
+  "server_code_error": " ", 
+  "subject": "To %(customer_name)s on %(mntc_date)s", 
+  "autoname": "MV.#####", 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "_last_update": "1322549701", 
+  "show_in_menu": 0, 
+  "version": 1
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Maintenance Visit", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Maintenance Visit", 
+  "read": 1, 
+  "doctype": "DocPerm", 
+  "parenttype": "DocType", 
+  "parentfield": "permissions"
+ }, 
+ {
+  "name": "Maintenance Visit", 
+  "doctype": "DocType"
+ }, 
+ {
+  "amend": 1, 
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "submit": 1, 
+  "write": 1, 
+  "role": "System Manager", 
+  "cancel": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "role": "System Manager", 
+  "permlevel": 1, 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "amend": 1, 
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "submit": 1, 
+  "write": 1, 
+  "role": "Maintenance Manager", 
+  "cancel": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "role": "Maintenance Manager", 
+  "permlevel": 1, 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "amend": 1, 
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "submit": 1, 
+  "write": 1, 
+  "role": "Maintenance User", 
+  "cancel": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "role": "Maintenance User", 
+  "permlevel": 1, 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "oldfieldtype": "Section Break", 
+  "doctype": "DocField", 
+  "label": "Customer Details", 
+  "permlevel": 0, 
+  "fieldname": "customer_details", 
+  "fieldtype": "Section Break", 
+  "options": "Simple"
+ }, 
+ {
+  "oldfieldtype": "Column Break", 
+  "doctype": "DocField", 
+  "fieldname": "column_break0", 
+  "fieldtype": "Column Break", 
+  "permlevel": 0
+ }, 
+ {
+  "print_hide": 1, 
+  "oldfieldtype": "Link", 
+  "doctype": "DocField", 
+  "label": "Customer", 
+  "oldfieldname": "customer", 
+  "permlevel": 0, 
+  "trigger": "Client", 
+  "fieldname": "customer", 
+  "fieldtype": "Link", 
+  "search_index": 0, 
+  "reqd": 1, 
+  "options": "Customer", 
+  "in_filter": 1
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Customer Name", 
+  "fieldname": "customer_name", 
+  "fieldtype": "Data", 
+  "hidden": 1, 
+  "permlevel": 1
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Address", 
+  "fieldname": "address_display", 
+  "fieldtype": "Small Text", 
+  "hidden": 1, 
+  "permlevel": 1
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Contact", 
+  "fieldname": "contact_display", 
+  "fieldtype": "Small Text", 
+  "hidden": 1, 
+  "permlevel": 1
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Mobile No", 
+  "fieldname": "contact_mobile", 
+  "fieldtype": "Data", 
+  "hidden": 1, 
+  "permlevel": 1
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Contact Email", 
+  "fieldname": "contact_email", 
+  "fieldtype": "Data", 
+  "hidden": 1, 
+  "permlevel": 1
+ }, 
+ {
+  "oldfieldtype": "Column Break", 
+  "doctype": "DocField", 
+  "width": "50%", 
+  "fieldname": "column_break1", 
+  "fieldtype": "Column Break", 
+  "permlevel": 0
+ }, 
+ {
+  "default": "Today", 
+  "oldfieldtype": "Date", 
+  "doctype": "DocField", 
+  "label": "Maintenance Date", 
+  "oldfieldname": "mntc_date", 
+  "no_copy": 1, 
+  "fieldname": "mntc_date", 
+  "fieldtype": "Date", 
+  "reqd": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "no_copy": 1, 
+  "oldfieldtype": "Time", 
+  "doctype": "DocField", 
+  "label": "Maintenance Time", 
+  "oldfieldname": "mntc_time", 
+  "fieldname": "mntc_time", 
+  "fieldtype": "Time", 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Section Break", 
+  "doctype": "DocField", 
+  "label": "Maintenance Details", 
+  "permlevel": 0, 
+  "fieldname": "maintenance_details", 
+  "fieldtype": "Section Break", 
+  "options": "Simple"
+ }, 
+ {
+  "oldfieldtype": "Select", 
+  "doctype": "DocField", 
+  "label": "Completion Status", 
+  "oldfieldname": "completion_status", 
+  "permlevel": 0, 
+  "fieldname": "completion_status", 
+  "fieldtype": "Select", 
+  "reqd": 1, 
+  "options": "\nPartially Completed\nFully Completed"
+ }, 
+ {
+  "default": "Unscheduled", 
+  "oldfieldtype": "Select", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Maintenance Type", 
+  "oldfieldname": "maintenance_type", 
+  "permlevel": 0, 
+  "fieldname": "maintenance_type", 
+  "fieldtype": "Select", 
+  "search_index": 0, 
+  "reqd": 1, 
+  "options": "\nScheduled\nUnscheduled\nBreakdown", 
+  "in_filter": 1
+ }, 
+ {
+  "oldfieldtype": "Column Break", 
+  "doctype": "DocField", 
+  "width": "50%", 
+  "fieldname": "column_break2", 
+  "fieldtype": "Column Break", 
+  "permlevel": 0
+ }, 
+ {
+  "search_index": 1, 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Sales Order No", 
+  "oldfieldname": "sales_order_no", 
+  "trigger": "Client", 
+  "fieldname": "sales_order_no", 
+  "fieldtype": "Link", 
+  "oldfieldtype": "Link", 
+  "options": "Sales Order", 
+  "permlevel": 0, 
+  "in_filter": 1
+ }, 
+ {
+  "search_index": 1, 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Customer Issue No", 
+  "oldfieldname": "customer_issue_no", 
+  "trigger": "Client", 
+  "fieldname": "customer_issue_no", 
+  "fieldtype": "Link", 
+  "oldfieldtype": "Link", 
+  "options": "Customer Issue", 
+  "permlevel": 0, 
+  "in_filter": 1
+ }, 
+ {
+  "doctype": "DocField", 
+  "permlevel": 0, 
+  "fieldname": "maintenance_schedule", 
+  "fieldtype": "Link", 
+  "label": "Maintenance Schedule", 
+  "options": "Maintenance Schedule", 
+  "in_filter": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "oldfieldtype": "Button", 
+  "doctype": "DocField", 
+  "label": "Get Items", 
+  "permlevel": 0, 
+  "fieldname": "get_items", 
+  "fieldtype": "Button", 
+  "options": "fetch_items", 
+  "report_hide": 1
+ }, 
+ {
+  "oldfieldtype": "Section Break", 
+  "doctype": "DocField", 
+  "options": "Simple", 
+  "fieldname": "section_break0", 
+  "fieldtype": "Section Break", 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Table", 
+  "doctype": "DocField", 
+  "label": "Maintenance Visit Purpose", 
+  "oldfieldname": "maintenance_visit_details", 
+  "permlevel": 0, 
+  "fieldname": "maintenance_visit_details", 
+  "fieldtype": "Table", 
+  "options": "Maintenance Visit Purpose"
+ }, 
+ {
+  "oldfieldtype": "Section Break", 
+  "doctype": "DocField", 
+  "label": "More Info", 
+  "fieldname": "more_info", 
+  "fieldtype": "Section Break", 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Small Text", 
+  "doctype": "DocField", 
+  "label": "Customer Feedback", 
+  "oldfieldname": "customer_feedback", 
+  "fieldname": "customer_feedback", 
+  "fieldtype": "Small Text", 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "fieldname": "col_break3", 
+  "fieldtype": "Column Break", 
+  "permlevel": 0
+ }, 
+ {
+  "default": "Draft", 
+  "oldfieldtype": "Data", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Status", 
+  "oldfieldname": "status", 
+  "no_copy": 1, 
+  "options": "\nDraft\nCancelled\nSubmitted", 
+  "fieldname": "status", 
+  "fieldtype": "Data", 
+  "reqd": 1, 
+  "permlevel": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "no_copy": 1, 
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Amended From", 
+  "oldfieldname": "amended_from", 
+  "width": "150px", 
+  "fieldname": "amended_from", 
+  "fieldtype": "Data", 
+  "permlevel": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "no_copy": 1, 
+  "oldfieldtype": "Date", 
+  "doctype": "DocField", 
+  "label": "Amendment Date", 
+  "oldfieldname": "amendment_date", 
+  "width": "100px", 
+  "fieldname": "amendment_date", 
+  "fieldtype": "Date", 
+  "permlevel": 0
+ }, 
+ {
+  "print_hide": 1, 
+  "oldfieldtype": "Select", 
+  "doctype": "DocField", 
+  "label": "Company", 
+  "oldfieldname": "company", 
+  "options": "link:Company", 
+  "fieldname": "company", 
+  "fieldtype": "Select", 
+  "search_index": 0, 
+  "reqd": 1, 
+  "permlevel": 0, 
+  "in_filter": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "oldfieldtype": "Select", 
+  "doctype": "DocField", 
+  "label": "Fiscal Year", 
+  "oldfieldname": "fiscal_year", 
+  "options": "link:Fiscal Year", 
+  "fieldname": "fiscal_year", 
+  "fieldtype": "Select", 
+  "search_index": 0, 
+  "reqd": 1, 
+  "permlevel": 0, 
+  "in_filter": 1
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Contact Info", 
+  "fieldname": "contact_info_section", 
+  "fieldtype": "Section Break", 
+  "permlevel": 0
+ }, 
+ {
+  "print_hide": 1, 
+  "doctype": "DocField", 
+  "label": "Customer Address", 
+  "options": "Address", 
+  "fieldname": "customer_address", 
+  "fieldtype": "Link", 
+  "permlevel": 0
+ }, 
+ {
+  "print_hide": 1, 
+  "doctype": "DocField", 
+  "label": "Contact Person", 
+  "options": "Contact", 
+  "fieldname": "contact_person", 
+  "fieldtype": "Link", 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "fieldname": "col_break4", 
+  "fieldtype": "Column Break", 
+  "permlevel": 0
+ }, 
+ {
+  "print_hide": 1, 
+  "doctype": "DocField", 
+  "label": "Territory", 
+  "options": "Territory", 
+  "fieldname": "territory", 
+  "fieldtype": "Link", 
+  "permlevel": 0
+ }, 
+ {
+  "print_hide": 1, 
+  "doctype": "DocField", 
+  "label": "Customer Group", 
+  "options": "Customer Group", 
+  "fieldname": "customer_group", 
+  "fieldtype": "Link", 
+  "permlevel": 0
+ }
 ]
\ No newline at end of file
diff --git a/support/doctype/maintenance_visit_purpose/maintenance_visit_purpose.txt b/support/doctype/maintenance_visit_purpose/maintenance_visit_purpose.txt
index cd25bff..d4c8094 100644
--- a/support/doctype/maintenance_visit_purpose/maintenance_visit_purpose.txt
+++ b/support/doctype/maintenance_visit_purpose/maintenance_visit_purpose.txt
@@ -1,163 +1,136 @@
-# DocType, Maintenance Visit Purpose
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:36:43',
-		'docstatus': 0,
-		'modified': '2012-03-27 14:36:43',
-		'modified_by': u'Administrator',
-		'owner': u'ashwini@webnotestech.com'
-	},
-
-	# These values are common for all DocType
-	{
-		'autoname': u'MVD.#####',
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'istable': 1,
-		'module': u'Support',
-		'name': '__common__',
-		'section_style': u'Simple',
-		'server_code_error': u' ',
-		'version': 13
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'Maintenance Visit Purpose',
-		'parentfield': u'fields',
-		'parenttype': u'DocType'
-	},
-
-	# DocType, Maintenance Visit Purpose
-	{
-		'doctype': 'DocType',
-		'name': u'Maintenance Visit Purpose'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'description',
-		'fieldtype': u'Small Text',
-		'label': u'Description',
-		'oldfieldname': u'description',
-		'oldfieldtype': u'Small Text',
-		'permlevel': 0,
-		'reqd': 1,
-		'width': u'300px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'service_person',
-		'fieldtype': u'Link',
-		'label': u'Service Person',
-		'oldfieldname': u'service_person',
-		'oldfieldtype': u'Link',
-		'options': u'Sales Person',
-		'permlevel': 0,
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'work_done',
-		'fieldtype': u'Small Text',
-		'label': u'Work Done',
-		'oldfieldname': u'work_done',
-		'oldfieldtype': u'Small Text',
-		'permlevel': 0,
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'doctype': u'DocField',
-		'fieldname': u'item_code',
-		'fieldtype': u'Link',
-		'label': u'Item Code',
-		'oldfieldname': u'item_code',
-		'oldfieldtype': u'Link',
-		'options': u'Item',
-		'permlevel': 0,
-		'trigger': u'Client'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'item_name',
-		'fieldtype': u'Data',
-		'label': u'Item Name',
-		'oldfieldname': u'item_name',
-		'oldfieldtype': u'Data',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'serial_no',
-		'fieldtype': u'Small Text',
-		'label': u'Serial No',
-		'oldfieldname': u'serial_no',
-		'oldfieldtype': u'Small Text',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'prevdoc_docname',
-		'fieldtype': u'Data',
-		'hidden': 0,
-		'label': u'Against Document No',
-		'no_copy': 1,
-		'oldfieldname': u'prevdoc_docname',
-		'oldfieldtype': u'Data',
-		'permlevel': 1,
-		'print_hide': 1,
-		'report_hide': 1,
-		'width': u'160px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'prevdoc_detail_docname',
-		'fieldtype': u'Data',
-		'hidden': 1,
-		'label': u'Against Document Detail No',
-		'no_copy': 1,
-		'oldfieldname': u'prevdoc_detail_docname',
-		'oldfieldtype': u'Data',
-		'permlevel': 1,
-		'print_hide': 1,
-		'report_hide': 1,
-		'width': u'160px'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'doctype': u'DocField',
-		'fieldname': u'prevdoc_doctype',
-		'fieldtype': u'Data',
-		'hidden': 0,
-		'label': u'Document Type',
-		'no_copy': 1,
-		'oldfieldname': u'prevdoc_doctype',
-		'oldfieldtype': u'Data',
-		'permlevel': 1,
-		'print_hide': 1,
-		'report_hide': 1,
-		'width': u'150px'
-	}
+ {
+  "owner": "ashwini@webnotestech.com", 
+  "docstatus": 0, 
+  "creation": "2012-03-27 14:36:43", 
+  "modified_by": "Administrator", 
+  "modified": "2012-03-27 14:36:43"
+ }, 
+ {
+  "section_style": "Simple", 
+  "istable": 1, 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "module": "Support", 
+  "server_code_error": " ", 
+  "version": 13, 
+  "doctype": "DocType", 
+  "autoname": "MVD.#####"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Maintenance Visit Purpose", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "Maintenance Visit Purpose", 
+  "doctype": "DocType"
+ }, 
+ {
+  "oldfieldtype": "Small Text", 
+  "doctype": "DocField", 
+  "label": "Description", 
+  "oldfieldname": "description", 
+  "width": "300px", 
+  "fieldname": "description", 
+  "fieldtype": "Small Text", 
+  "reqd": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Link", 
+  "doctype": "DocField", 
+  "label": "Service Person", 
+  "oldfieldname": "service_person", 
+  "permlevel": 0, 
+  "fieldname": "service_person", 
+  "fieldtype": "Link", 
+  "reqd": 1, 
+  "options": "Sales Person"
+ }, 
+ {
+  "oldfieldtype": "Small Text", 
+  "doctype": "DocField", 
+  "label": "Work Done", 
+  "oldfieldname": "work_done", 
+  "fieldname": "work_done", 
+  "fieldtype": "Small Text", 
+  "reqd": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "oldfieldtype": "Link", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Item Code", 
+  "oldfieldname": "item_code", 
+  "permlevel": 0, 
+  "trigger": "Client", 
+  "fieldname": "item_code", 
+  "fieldtype": "Link", 
+  "options": "Item"
+ }, 
+ {
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Item Name", 
+  "oldfieldname": "item_name", 
+  "fieldname": "item_name", 
+  "fieldtype": "Data", 
+  "permlevel": 1
+ }, 
+ {
+  "oldfieldtype": "Small Text", 
+  "doctype": "DocField", 
+  "label": "Serial No", 
+  "oldfieldname": "serial_no", 
+  "fieldname": "serial_no", 
+  "fieldtype": "Small Text", 
+  "permlevel": 0
+ }, 
+ {
+  "print_hide": 1, 
+  "no_copy": 1, 
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Against Document No", 
+  "oldfieldname": "prevdoc_docname", 
+  "width": "160px", 
+  "fieldname": "prevdoc_docname", 
+  "fieldtype": "Data", 
+  "hidden": 0, 
+  "permlevel": 1, 
+  "report_hide": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "no_copy": 1, 
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "label": "Against Document Detail No", 
+  "oldfieldname": "prevdoc_detail_docname", 
+  "width": "160px", 
+  "fieldname": "prevdoc_detail_docname", 
+  "fieldtype": "Data", 
+  "hidden": 1, 
+  "permlevel": 1, 
+  "report_hide": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "no_copy": 1, 
+  "oldfieldtype": "Data", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Document Type", 
+  "oldfieldname": "prevdoc_doctype", 
+  "width": "150px", 
+  "fieldname": "prevdoc_doctype", 
+  "fieldtype": "Data", 
+  "hidden": 0, 
+  "permlevel": 1, 
+  "report_hide": 1
+ }
 ]
\ No newline at end of file
diff --git a/support/page/support_home/support_home.txt b/support/page/support_home/support_home.txt
index a462abd..a1990b4 100644
--- a/support/page/support_home/support_home.txt
+++ b/support/page/support_home/support_home.txt
@@ -1,28 +1,21 @@
-# Page, support-home
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-02-21 13:23:35',
-		'docstatus': 0,
-		'modified': '2012-02-21 13:23:35',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all Page
-	{
-		'doctype': 'Page',
-		'module': u'Support',
-		'name': '__common__',
-		'page_name': u'support-home',
-		'standard': u'Yes',
-		'title': u'Support Home'
-	},
-
-	# Page, support-home
-	{
-		'doctype': 'Page',
-		'name': u'support-home'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-02-21 13:23:35", 
+  "modified_by": "Administrator", 
+  "modified": "2012-02-21 13:23:35"
+ }, 
+ {
+  "name": "__common__", 
+  "title": "Support Home", 
+  "module": "Support", 
+  "doctype": "Page", 
+  "page_name": "support-home", 
+  "standard": "Yes"
+ }, 
+ {
+  "name": "support-home", 
+  "doctype": "Page"
+ }
 ]
\ No newline at end of file
diff --git a/support/search_criteria/amc_summary/amc_summary.txt b/support/search_criteria/amc_summary/amc_summary.txt
index e650095..a83e0d3 100644
--- a/support/search_criteria/amc_summary/amc_summary.txt
+++ b/support/search_criteria/amc_summary/amc_summary.txt
@@ -1,35 +1,28 @@
-# Search Criteria, amc_summary
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-04-03 12:49:50',
-		'docstatus': 0,
-		'modified': '2012-04-03 12:49:50',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all Search Criteria
-	{
-		'add_cond': u"`tabSerial No`.`territory` is not null\n`tabSerial No`.`territory` != ''\n`tabSerial No`.`status` not in ('In Store', 'Scrapped')",
-		'columns': u'Serial No\x01Territory',
-		'criteria_name': u'AMC Summary',
-		'doc_type': u'Serial No',
-		'doctype': 'Search Criteria',
-		'filters': u"{'Serial No\x01Saved':1,'Serial No\x01Status':''}",
-		'group_by': u'`tabSerial No`.`cost_center`',
-		'module': u'Support',
-		'name': '__common__',
-		'page_len': 50,
-		'sort_by': u'`tabSerial No`.`cost_center`',
-		'sort_order': u'ASC',
-		'standard': u'Yes'
-	},
-
-	# Search Criteria, amc_summary
-	{
-		'doctype': 'Search Criteria',
-		'name': u'amc_summary'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-04-03 12:49:50", 
+  "modified_by": "Administrator", 
+  "modified": "2012-04-03 12:49:50"
+ }, 
+ {
+  "module": "Support", 
+  "standard": "Yes", 
+  "sort_order": "ASC", 
+  "filters": "{'Serial No\u0001Saved':1,'Serial No\u0001Status':''}", 
+  "doc_type": "Serial No", 
+  "name": "__common__", 
+  "add_cond": "`tabSerial No`.`territory` is not null\n`tabSerial No`.`territory` != ''\n`tabSerial No`.`status` not in ('In Store', 'Scrapped')", 
+  "doctype": "Search Criteria", 
+  "sort_by": "`tabSerial No`.`cost_center`", 
+  "group_by": "`tabSerial No`.`cost_center`", 
+  "page_len": 50, 
+  "criteria_name": "AMC Summary", 
+  "columns": "Serial No\u0001Territory"
+ }, 
+ {
+  "name": "amc_summary", 
+  "doctype": "Search Criteria"
+ }
 ]
\ No newline at end of file
diff --git a/support/search_criteria/customer_issues/customer_issues.txt b/support/search_criteria/customer_issues/customer_issues.txt
index c313235..caa0775 100644
--- a/support/search_criteria/customer_issues/customer_issues.txt
+++ b/support/search_criteria/customer_issues/customer_issues.txt
@@ -1,33 +1,26 @@
-# Search Criteria, customer_issues
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-04-03 12:49:51',
-		'docstatus': 0,
-		'modified': '2012-04-03 12:49:51',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all Search Criteria
-	{
-		'columns': u'Customer Issue\x01ID,Customer Issue\x01Status,Customer Issue\x01Complaint Date,Customer Issue\x01Complaint,Customer Issue\x01Item Code,Customer Issue\x01Item Name,Customer Issue\x01Allocated To,Customer Issue\x01Allocated On,Customer Issue\x01Resolved By,Customer Issue\x01Resolution Date,Customer Issue\x01Customer Name,Customer Issue\x01Fiscal Year',
-		'criteria_name': u'Customer Issues',
-		'doc_type': u'Customer Issue',
-		'doctype': 'Search Criteria',
-		'filters': u"{'Customer Issue\x01Saved':1,'Customer Issue\x01Submitted':1,'Customer Issue\x01Status':'','Customer Issue\x01Fiscal Year':''}",
-		'module': u'Support',
-		'name': '__common__',
-		'page_len': 50,
-		'sort_by': u'`tabCustomer Issue`.`name`',
-		'sort_order': u'DESC',
-		'standard': u'Yes'
-	},
-
-	# Search Criteria, customer_issues
-	{
-		'doctype': 'Search Criteria',
-		'name': u'customer_issues'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-04-03 12:49:51", 
+  "modified_by": "Administrator", 
+  "modified": "2012-04-03 12:49:51"
+ }, 
+ {
+  "module": "Support", 
+  "standard": "Yes", 
+  "sort_order": "DESC", 
+  "filters": "{'Customer Issue\u0001Saved':1,'Customer Issue\u0001Submitted':1,'Customer Issue\u0001Status':'','Customer Issue\u0001Fiscal Year':''}", 
+  "doctype": "Search Criteria", 
+  "doc_type": "Customer Issue", 
+  "name": "__common__", 
+  "sort_by": "`tabCustomer Issue`.`name`", 
+  "page_len": 50, 
+  "criteria_name": "Customer Issues", 
+  "columns": "Customer Issue\u0001ID,Customer Issue\u0001Status,Customer Issue\u0001Complaint Date,Customer Issue\u0001Complaint,Customer Issue\u0001Item Code,Customer Issue\u0001Item Name,Customer Issue\u0001Allocated To,Customer Issue\u0001Allocated On,Customer Issue\u0001Resolved By,Customer Issue\u0001Resolution Date,Customer Issue\u0001Customer Name,Customer Issue\u0001Fiscal Year"
+ }, 
+ {
+  "name": "customer_issues", 
+  "doctype": "Search Criteria"
+ }
 ]
\ No newline at end of file
diff --git a/support/search_criteria/maintenance_orderwise_pending_amount_to_bill/maintenance_orderwise_pending_amount_to_bill.txt b/support/search_criteria/maintenance_orderwise_pending_amount_to_bill/maintenance_orderwise_pending_amount_to_bill.txt
index 2e6e11d..ad9fe08 100644
--- a/support/search_criteria/maintenance_orderwise_pending_amount_to_bill/maintenance_orderwise_pending_amount_to_bill.txt
+++ b/support/search_criteria/maintenance_orderwise_pending_amount_to_bill/maintenance_orderwise_pending_amount_to_bill.txt
@@ -1,36 +1,29 @@
-# Search Criteria, maintenance_orderwise_pending_amount_to_bill
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-04-03 12:49:51',
-		'docstatus': 0,
-		'modified': '2012-04-03 12:49:51',
-		'modified_by': u'Administrator',
-		'owner': u'ashwini@webnotestech.com'
-	},
-
-	# These values are common for all Search Criteria
-	{
-		'add_col': u"SUM((`tabSales Order Item`.`qty` - `tabSales Order Item`.`billed_qty`) * `tabSales Order Item`.`basic_rate`) AS 'Pending Amount'",
-		'add_cond': u"`tabSales Order`.status != 'Stopped'\n`tabSales Order`.order_type='Maintenance'",
-		'columns': u'Sales Order\x01ID,Sales Order\x01Customer,Sales Order\x01Customer Name,Sales Order\x01Customer Address,Sales Order\x01Status,Sales Order\x01% Billed,Sales Order\x01Sales Order Date',
-		'criteria_name': u'Maintenance Orderwise Pending Amount To Bill',
-		'doc_type': u'Sales Order Item',
-		'doctype': 'Search Criteria',
-		'filters': u"{'Sales Order\x01Saved':1,'Sales Order\x01Submitted':1,'Sales Order\x01Status':'','Sales Order\x01Fiscal Year':''}",
-		'module': u'Support',
-		'name': '__common__',
-		'page_len': 50,
-		'parent_doc_type': u'Sales Order',
-		'sort_by': u'`tabSales Order`.`name`',
-		'sort_order': u'DESC',
-		'standard': u'Yes'
-	},
-
-	# Search Criteria, maintenance_orderwise_pending_amount_to_bill
-	{
-		'doctype': 'Search Criteria',
-		'name': u'maintenance_orderwise_pending_amount_to_bill'
-	}
+ {
+  "owner": "ashwini@webnotestech.com", 
+  "docstatus": 0, 
+  "creation": "2012-04-03 12:49:51", 
+  "modified_by": "Administrator", 
+  "modified": "2012-04-03 12:49:51"
+ }, 
+ {
+  "add_col": "SUM((`tabSales Order Item`.`qty` - `tabSales Order Item`.`billed_qty`) * `tabSales Order Item`.`basic_rate`) AS 'Pending Amount'", 
+  "parent_doc_type": "Sales Order", 
+  "module": "Support", 
+  "standard": "Yes", 
+  "sort_order": "DESC", 
+  "filters": "{'Sales Order\u0001Saved':1,'Sales Order\u0001Submitted':1,'Sales Order\u0001Status':'','Sales Order\u0001Fiscal Year':''}", 
+  "doc_type": "Sales Order Item", 
+  "name": "__common__", 
+  "add_cond": "`tabSales Order`.status != 'Stopped'\n`tabSales Order`.order_type='Maintenance'", 
+  "doctype": "Search Criteria", 
+  "sort_by": "`tabSales Order`.`name`", 
+  "page_len": 50, 
+  "criteria_name": "Maintenance Orderwise Pending Amount To Bill", 
+  "columns": "Sales Order\u0001ID,Sales Order\u0001Customer,Sales Order\u0001Customer Name,Sales Order\u0001Customer Address,Sales Order\u0001Status,Sales Order\u0001% Billed,Sales Order\u0001Sales Order Date"
+ }, 
+ {
+  "name": "maintenance_orderwise_pending_amount_to_bill", 
+  "doctype": "Search Criteria"
+ }
 ]
\ No newline at end of file
diff --git a/support/search_criteria/maintenance_schedule_details/maintenance_schedule_details.txt b/support/search_criteria/maintenance_schedule_details/maintenance_schedule_details.txt
index a81b187..f8a5882 100644
--- a/support/search_criteria/maintenance_schedule_details/maintenance_schedule_details.txt
+++ b/support/search_criteria/maintenance_schedule_details/maintenance_schedule_details.txt
@@ -1,34 +1,27 @@
-# Search Criteria, maintenance_schedule_details
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-04-03 12:49:51',
-		'docstatus': 0,
-		'modified': '2012-04-03 12:49:51',
-		'modified_by': u'Administrator',
-		'owner': u'nabin@webnotestech.com'
-	},
-
-	# These values are common for all Search Criteria
-	{
-		'columns': u'Maintenance Schedule Detail\x01Item Code,Maintenance Schedule Detail\x01Item Name,Maintenance Schedule Detail\x01Serial No,Maintenance Schedule Detail\x01Incharge Name,Maintenance Schedule Detail\x01Scheduled Date,Maintenance Schedule\x01Customer Name,Maintenance Schedule\x01Address,Maintenance Schedule\x01Sales Order No',
-		'criteria_name': u'Maintenance Schedule Details',
-		'doc_type': u'Maintenance Schedule Detail',
-		'doctype': 'Search Criteria',
-		'filters': u"{'Maintenance Schedule\x01Submitted':1,'Maintenance Schedule\x01Status':''}",
-		'module': u'Support',
-		'name': '__common__',
-		'page_len': 50,
-		'parent_doc_type': u'Maintenance Schedule',
-		'sort_by': u'`tabMaintenance Schedule Detail`.`item_code`',
-		'sort_order': u'DESC',
-		'standard': u'Yes'
-	},
-
-	# Search Criteria, maintenance_schedule_details
-	{
-		'doctype': 'Search Criteria',
-		'name': u'maintenance_schedule_details'
-	}
+ {
+  "owner": "nabin@webnotestech.com", 
+  "docstatus": 0, 
+  "creation": "2012-04-03 12:49:51", 
+  "modified_by": "Administrator", 
+  "modified": "2012-04-03 12:49:51"
+ }, 
+ {
+  "parent_doc_type": "Maintenance Schedule", 
+  "module": "Support", 
+  "standard": "Yes", 
+  "sort_order": "DESC", 
+  "filters": "{'Maintenance Schedule\u0001Submitted':1,'Maintenance Schedule\u0001Status':''}", 
+  "doc_type": "Maintenance Schedule Detail", 
+  "name": "__common__", 
+  "doctype": "Search Criteria", 
+  "sort_by": "`tabMaintenance Schedule Detail`.`item_code`", 
+  "page_len": 50, 
+  "criteria_name": "Maintenance Schedule Details", 
+  "columns": "Maintenance Schedule Detail\u0001Item Code,Maintenance Schedule Detail\u0001Item Name,Maintenance Schedule Detail\u0001Serial No,Maintenance Schedule Detail\u0001Incharge Name,Maintenance Schedule Detail\u0001Scheduled Date,Maintenance Schedule\u0001Customer Name,Maintenance Schedule\u0001Address,Maintenance Schedule\u0001Sales Order No"
+ }, 
+ {
+  "name": "maintenance_schedule_details", 
+  "doctype": "Search Criteria"
+ }
 ]
\ No newline at end of file
diff --git a/support/search_criteria/warranty_amc_expiry_details/warranty_amc_expiry_details.txt b/support/search_criteria/warranty_amc_expiry_details/warranty_amc_expiry_details.txt
index a80ee64..bad5c9f 100644
--- a/support/search_criteria/warranty_amc_expiry_details/warranty_amc_expiry_details.txt
+++ b/support/search_criteria/warranty_amc_expiry_details/warranty_amc_expiry_details.txt
@@ -1,33 +1,26 @@
-# Search Criteria, warranty-amc_expiry_details
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-04-03 12:49:53',
-		'docstatus': 0,
-		'modified': '2012-04-03 12:49:53',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all Search Criteria
-	{
-		'columns': u'Serial No\x01ID,Serial No\x01Item Code,Serial No\x01Description,Serial No\x01Status,Serial No\x01Item Group,Serial No\x01Purchase Receipt No,Serial No\x01Delivery Note No,Serial No\x01Customer,Serial No\x01Customer Name,Serial No\x01AMC Expiry Date,Serial No\x01Warranty Expiry Date',
-		'criteria_name': u'Warranty/AMC Expiry Details',
-		'doc_type': u'Serial No',
-		'doctype': 'Search Criteria',
-		'filters': u"{'Serial No\x01Saved':1,'Serial No\x01Status':'','Serial No\x01Maintenance Status':''}",
-		'module': u'Support',
-		'name': '__common__',
-		'page_len': 50,
-		'sort_by': u'`tabSerial No`.`name`',
-		'sort_order': u'DESC',
-		'standard': u'Yes'
-	},
-
-	# Search Criteria, warranty-amc_expiry_details
-	{
-		'doctype': 'Search Criteria',
-		'name': u'warranty-amc_expiry_details'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-04-03 12:49:53", 
+  "modified_by": "Administrator", 
+  "modified": "2012-04-03 12:49:53"
+ }, 
+ {
+  "module": "Support", 
+  "standard": "Yes", 
+  "sort_order": "DESC", 
+  "filters": "{'Serial No\u0001Saved':1,'Serial No\u0001Status':'','Serial No\u0001Maintenance Status':''}", 
+  "doctype": "Search Criteria", 
+  "doc_type": "Serial No", 
+  "name": "__common__", 
+  "sort_by": "`tabSerial No`.`name`", 
+  "page_len": 50, 
+  "criteria_name": "Warranty/AMC Expiry Details", 
+  "columns": "Serial No\u0001ID,Serial No\u0001Item Code,Serial No\u0001Description,Serial No\u0001Status,Serial No\u0001Item Group,Serial No\u0001Purchase Receipt No,Serial No\u0001Delivery Note No,Serial No\u0001Customer,Serial No\u0001Customer Name,Serial No\u0001AMC Expiry Date,Serial No\u0001Warranty Expiry Date"
+ }, 
+ {
+  "name": "warranty-amc_expiry_details", 
+  "doctype": "Search Criteria"
+ }
 ]
\ No newline at end of file
diff --git a/support/search_criteria/warranty_amc_summary/warranty_amc_summary.txt b/support/search_criteria/warranty_amc_summary/warranty_amc_summary.txt
index cdc76d2..098b5d6 100644
--- a/support/search_criteria/warranty_amc_summary/warranty_amc_summary.txt
+++ b/support/search_criteria/warranty_amc_summary/warranty_amc_summary.txt
@@ -1,32 +1,25 @@
-# Search Criteria, warranty-amc_summary
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-04-03 12:49:53',
-		'docstatus': 0,
-		'modified': '2012-04-03 12:49:53',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all Search Criteria
-	{
-		'criteria_name': u'Warranty/AMC Summary',
-		'doc_type': u'Serial No',
-		'doctype': 'Search Criteria',
-		'filters': u"{'Serial No\x01Saved':1,'Serial No\x01Status':''}",
-		'module': u'Support',
-		'name': '__common__',
-		'page_len': 50,
-		'sort_by': u'name',
-		'sort_order': u'DESC',
-		'standard': u'Yes'
-	},
-
-	# Search Criteria, warranty-amc_summary
-	{
-		'doctype': 'Search Criteria',
-		'name': u'warranty-amc_summary'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-04-03 12:49:53", 
+  "modified_by": "Administrator", 
+  "modified": "2012-04-03 12:49:53"
+ }, 
+ {
+  "module": "Support", 
+  "sort_order": "DESC", 
+  "filters": "{'Serial No\u0001Saved':1,'Serial No\u0001Status':''}", 
+  "standard": "Yes", 
+  "doc_type": "Serial No", 
+  "name": "__common__", 
+  "doctype": "Search Criteria", 
+  "sort_by": "name", 
+  "page_len": 50, 
+  "criteria_name": "Warranty/AMC Summary"
+ }, 
+ {
+  "name": "warranty-amc_summary", 
+  "doctype": "Search Criteria"
+ }
 ]
\ No newline at end of file
diff --git a/tests/data/item/android_jack_d.txt b/tests/data/item/android_jack_d.txt
index 24944e3..cfc27e0 100644
--- a/tests/data/item/android_jack_d.txt
+++ b/tests/data/item/android_jack_d.txt
@@ -1,37 +1,33 @@
-# Item, Android Jack D
 [
-
-	# These values are common in all dictionaries
-	{
-		u'creation': '2012-08-26 11:30:44',
-		u'docstatus': 0,
-		u'modified': '2012-08-26 11:30:44',
-		u'modified_by': u'Administrator',
-		u'owner': u'Administrator'
-	},
-
-	# These values are common for all Item
-	{
-		'description': u'Android Jack D',
-		'doctype': 'Item',
-		'has_batch_no': u'No',
-		'has_serial_no': u'No',
-		'inspection_required': u'No',
-		'is_purchase_item': u'Yes',
-		'is_sales_item': u'Yes',
-		'is_service_item': u'No',
-		'is_stock_item': u'Yes',
-		'item_code': u'Android Jack D',
-		'item_group': u'Android',
-		'item_name': u'Android Jack D',
-		u'name': u'__common__',
-		'stock_uom': u'Nos',
-		'default_warehouse': u'Default Warehouse'
-	},
-
-	# Item, Android Jack D
-	{
-		u'doctype': 'Item',
-		'name': u'Android Jack D'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-08-26 11:30:44", 
+  "modified_by": "Administrator", 
+  "modified": "2012-08-26 11:30:44"
+ }, 
+ {
+  "is_service_item": "No", 
+  "is_manufactured_item": "Yes", 
+  "description": "Android Jack D", 
+  "item_code": "Android Jack D", 
+  "is_stock_item": "Yes", 
+  "inspection_required": "No", 
+  "is_purchase_item": "Yes", 
+  "is_pro_applicable": "Yes", 
+  "name": "__common__", 
+  "item_name": "Android Jack D", 
+  "item_group": "Android", 
+  "doctype": "Item", 
+  "is_sales_item": "Yes", 
+  "is_sub_contracted_item": "Yes", 
+  "stock_uom": "Nos", 
+  "has_batch_no": "No", 
+  "has_serial_no": "No", 
+  "default_warehouse": "Default Warehouse"
+ }, 
+ {
+  "name": "Android Jack D", 
+  "doctype": "Item"
+ }
 ]
\ No newline at end of file
diff --git a/tests/data/item/android_jack_s.txt b/tests/data/item/android_jack_s.txt
index feaceef..c9d0ff6 100644
--- a/tests/data/item/android_jack_s.txt
+++ b/tests/data/item/android_jack_s.txt
@@ -1,37 +1,33 @@
-# Item, Android Jack S
 [
-
-	# These values are common in all dictionaries
-	{
-		u'creation': '2012-08-26 11:29:22',
-		u'docstatus': 0,
-		u'modified': '2012-08-26 11:29:22',
-		u'modified_by': u'Administrator',
-		u'owner': u'Administrator'
-	},
-
-	# These values are common for all Item
-	{
-		'description': u'Android Jack S',
-		'doctype': 'Item',
-		'has_batch_no': u'No',
-		'has_serial_no': u'No',
-		'inspection_required': u'No',
-		'is_purchase_item': u'Yes',
-		'is_sales_item': u'Yes',
-		'is_service_item': u'No',
-		'is_stock_item': u'Yes',
-		'item_code': u'Android Jack S',
-		'item_group': u'Android',
-		'item_name': u'Android Jack S',
-		u'name': u'__common__',
-		'stock_uom': u'Nos',
-		'default_warehouse': u'Default Warehouse'
-	},
-
-	# Item, Android Jack S
-	{
-		u'doctype': 'Item',
-		'name': u'Android Jack S'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-08-26 11:29:22", 
+  "modified_by": "Administrator", 
+  "modified": "2012-08-26 11:29:22"
+ }, 
+ {
+  "is_service_item": "No", 
+  "is_manufactured_item": "Yes", 
+  "description": "Android Jack S", 
+  "item_code": "Android Jack S", 
+  "is_stock_item": "Yes", 
+  "inspection_required": "No", 
+  "is_purchase_item": "Yes", 
+  "is_pro_applicable": "Yes", 
+  "name": "__common__", 
+  "item_name": "Android Jack S", 
+  "item_group": "Android", 
+  "doctype": "Item", 
+  "is_sales_item": "Yes", 
+  "is_sub_contracted_item": "Yes", 
+  "stock_uom": "Nos", 
+  "has_batch_no": "No", 
+  "has_serial_no": "No", 
+  "default_warehouse": "Default Warehouse"
+ }, 
+ {
+  "name": "Android Jack S", 
+  "doctype": "Item"
+ }
 ]
\ No newline at end of file
diff --git a/tests/data/item/home_desktop_100.txt b/tests/data/item/home_desktop_100.txt
index 19ef01d..bee1c96 100644
--- a/tests/data/item/home_desktop_100.txt
+++ b/tests/data/item/home_desktop_100.txt
@@ -1,37 +1,31 @@
-# Item, Home Desktop 100
 [
-
-	# These values are common in all dictionaries
-	{
-		u'creation': '2012-08-26 11:25:28',
-		u'docstatus': 0,
-		u'modified': '2012-08-26 11:25:28',
-		u'modified_by': u'Administrator',
-		u'owner': u'Administrator'
-	},
-
-	# These values are common for all Item
-	{
-		'description': u'Home Desktop 100',
-		'doctype': 'Item',
-		'has_batch_no': u'No',
-		'has_serial_no': u'No',
-		'inspection_required': u'No',
-		'is_purchase_item': u'Yes',
-		'is_sales_item': u'Yes',
-		'is_service_item': u'No',
-		'is_stock_item': u'Yes',
-		'item_code': u'Home Desktop 100',
-		'item_group': u'Home Series',
-		'item_name': u'Home Desktop 100',
-		u'name': u'__common__',
-		'stock_uom': u'Nos',
-		'default_warehouse': u'Default Warehouse'
-	},
-
-	# Item, Home Desktop 100
-	{
-		u'doctype': 'Item',
-		'name': u'Home Desktop 100'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-08-26 11:25:28", 
+  "modified_by": "Administrator", 
+  "modified": "2012-08-26 11:25:28"
+ }, 
+ {
+  "is_service_item": "No", 
+  "is_manufactured_item": "No", 
+  "description": "Home Desktop 100", 
+  "item_code": "Home Desktop 100", 
+  "is_stock_item": "Yes", 
+  "is_purchase_item": "Yes", 
+  "name": "__common__", 
+  "default_warehouse": "Default Warehouse", 
+  "item_name": "Home Desktop 100", 
+  "item_group": "Home Series", 
+  "doctype": "Item", 
+  "is_sales_item": "Yes", 
+  "stock_uom": "Nos", 
+  "has_batch_no": "No", 
+  "has_serial_no": "No", 
+  "inspection_required": "No"
+ }, 
+ {
+  "name": "Home Desktop 100", 
+  "doctype": "Item"
+ }
 ]
\ No newline at end of file
diff --git a/tests/data/item/home_desktop_200.txt b/tests/data/item/home_desktop_200.txt
index 053e37c..0fb439e 100644
--- a/tests/data/item/home_desktop_200.txt
+++ b/tests/data/item/home_desktop_200.txt
@@ -1,37 +1,30 @@
-# Item, Home Desktop 200
 [
-
-	# These values are common in all dictionaries
-	{
-		u'creation': '2012-08-26 11:25:54',
-		u'docstatus': 0,
-		u'modified': '2012-08-26 11:25:54',
-		u'modified_by': u'Administrator',
-		u'owner': u'Administrator'
-	},
-
-	# These values are common for all Item
-	{
-		'description': u'Home Desktop 200',
-		'doctype': 'Item',
-		'has_batch_no': u'No',
-		'has_serial_no': u'No',
-		'inspection_required': u'No',
-		'is_purchase_item': u'Yes',
-		'is_sales_item': u'Yes',
-		'is_service_item': u'No',
-		'is_stock_item': u'Yes',
-		'item_code': u'Home Desktop 200',
-		'item_group': u'Home Series',
-		'item_name': u'Home Desktop 200',
-		u'name': u'__common__',
-		'stock_uom': u'Nos',
-		'default_warehouse': u'Default Warehouse'
-	},
-
-	# Item, Home Desktop 200
-	{
-		u'doctype': 'Item',
-		'name': u'Home Desktop 200'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-08-26 11:25:54", 
+  "modified_by": "Administrator", 
+  "modified": "2012-08-26 11:25:54"
+ }, 
+ {
+  "is_service_item": "No", 
+  "description": "Home Desktop 200", 
+  "item_code": "Home Desktop 200", 
+  "is_stock_item": "Yes", 
+  "is_purchase_item": "Yes", 
+  "name": "__common__", 
+  "default_warehouse": "Default Warehouse", 
+  "item_name": "Home Desktop 200", 
+  "item_group": "Home Series", 
+  "doctype": "Item", 
+  "is_sales_item": "Yes", 
+  "stock_uom": "Nos", 
+  "inspection_required": "No", 
+  "has_serial_no": "No", 
+  "has_batch_no": "No"
+ }, 
+ {
+  "name": "Home Desktop 200", 
+  "doctype": "Item"
+ }
 ]
\ No newline at end of file
diff --git a/tests/data/item/home_desktop_300.txt b/tests/data/item/home_desktop_300.txt
index 304b2ef..c7934d9 100644
--- a/tests/data/item/home_desktop_300.txt
+++ b/tests/data/item/home_desktop_300.txt
@@ -1,37 +1,30 @@
-# Item, Home Desktop 300
 [
-
-	# These values are common in all dictionaries
-	{
-		u'creation': '2012-08-26 11:26:37',
-		u'docstatus': 0,
-		u'modified': '2012-08-26 11:26:37',
-		u'modified_by': u'Administrator',
-		u'owner': u'Administrator'
-	},
-
-	# These values are common for all Item
-	{
-		'description': u'Home Desktop 300',
-		'doctype': 'Item',
-		'has_batch_no': u'No',
-		'has_serial_no': u'No',
-		'inspection_required': u'No',
-		'is_purchase_item': u'Yes',
-		'is_sales_item': u'Yes',
-		'is_service_item': u'No',
-		'is_stock_item': u'Yes',
-		'item_code': u'Home Desktop 300',
-		'item_group': u'Home Series',
-		'item_name': u'Home Desktop 300',
-		u'name': u'__common__',
-		'stock_uom': u'Nos',
-		'default_warehouse': u'Default Warehouse'
-	},
-
-	# Item, Home Desktop 300
-	{
-		u'doctype': 'Item',
-		'name': u'Home Desktop 300'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-08-26 11:26:37", 
+  "modified_by": "Administrator", 
+  "modified": "2012-08-26 11:26:37"
+ }, 
+ {
+  "is_service_item": "No", 
+  "description": "Home Desktop 300", 
+  "item_code": "Home Desktop 300", 
+  "is_stock_item": "Yes", 
+  "is_purchase_item": "Yes", 
+  "name": "__common__", 
+  "default_warehouse": "Default Warehouse", 
+  "item_name": "Home Desktop 300", 
+  "item_group": "Home Series", 
+  "doctype": "Item", 
+  "is_sales_item": "Yes", 
+  "stock_uom": "Nos", 
+  "inspection_required": "No", 
+  "has_serial_no": "No", 
+  "has_batch_no": "No"
+ }, 
+ {
+  "name": "Home Desktop 300", 
+  "doctype": "Item"
+ }
 ]
\ No newline at end of file
diff --git a/tests/data/item/nebula_7.txt b/tests/data/item/nebula_7.txt
index 9f61d7a..d92850f 100644
--- a/tests/data/item/nebula_7.txt
+++ b/tests/data/item/nebula_7.txt
@@ -1,38 +1,31 @@
-# Item, Nebula 7
 [
-
-	# These values are common in all dictionaries
-	{
-		u'creation': '2012-08-26 11:32:02',
-		u'docstatus': 0,
-		u'modified': '2012-08-26 11:32:02',
-		u'modified_by': u'Administrator',
-		u'owner': u'Administrator'
-	},
-
-	# These values are common for all Item
-	{
-		'description': u'Nebula 7',
-		'doctype': 'Item',
-		'has_batch_no': u'No',
-		'has_serial_no': u'No',
-		'inspection_required': u'No',
-		'is_sub_contracted_item': 'Yes',
-		'is_purchase_item': u'No',
-		'is_sales_item': u'Yes',
-		'is_service_item': u'No',
-		'is_stock_item': u'Yes',
-		'item_code': u'Nebula 7',
-		'item_group': u'Small Tablets',
-		'item_name': u'Nebula 7',
-		u'name': u'__common__',
-		'stock_uom': u'Nos',
-		'default_warehouse': u'Default Warehouse'
-	},
-
-	# Item, Nebula 7
-	{
-		u'doctype': 'Item',
-		'name': u'Nebula 7'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-08-26 11:32:02", 
+  "modified_by": "Administrator", 
+  "modified": "2012-08-26 11:32:02"
+ }, 
+ {
+  "is_service_item": "No", 
+  "description": "Nebula 7", 
+  "item_code": "Nebula 7", 
+  "is_stock_item": "Yes", 
+  "inspection_required": "No", 
+  "is_purchase_item": "No", 
+  "name": "__common__", 
+  "item_name": "Nebula 7", 
+  "item_group": "Small Tablets", 
+  "doctype": "Item", 
+  "is_sales_item": "Yes", 
+  "is_sub_contracted_item": "Yes", 
+  "stock_uom": "Nos", 
+  "has_batch_no": "No", 
+  "has_serial_no": "No", 
+  "default_warehouse": "Default Warehouse"
+ }, 
+ {
+  "name": "Nebula 7", 
+  "doctype": "Item"
+ }
 ]
\ No newline at end of file
diff --git a/tests/data/item_group/accessories.txt b/tests/data/item_group/accessories.txt
index c4d3b1a..0b9a491 100644
--- a/tests/data/item_group/accessories.txt
+++ b/tests/data/item_group/accessories.txt
@@ -1,27 +1,20 @@
-# Item Group, Accessories
 [
-
-	# These values are common in all dictionaries
-	{
-		u'creation': '2012-08-07 09:55:59',
-		u'docstatus': 0,
-		u'modified': '2012-08-07 09:55:59',
-		u'modified_by': u'Administrator',
-		u'owner': u'Administrator'
-	},
-
-	# These values are common for all Item Group
-	{
-		u'doctype': 'Item Group',
-		'is_group': u'Yes',
-		'item_group_name': u'Accessories',
-		u'name': u'__common__',
-		'parent_item_group': u'All Item Groups'
-	},
-
-	# Item Group, Accessories
-	{
-		u'doctype': 'Item Group',
-		u'name': u'Accessories'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-08-07 09:55:59", 
+  "modified_by": "Administrator", 
+  "modified": "2012-08-07 09:55:59"
+ }, 
+ {
+  "name": "__common__", 
+  "item_group_name": "Accessories", 
+  "is_group": "Yes", 
+  "parent_item_group": "All Item Groups", 
+  "doctype": "Item Group"
+ }, 
+ {
+  "name": "Accessories", 
+  "doctype": "Item Group"
+ }
 ]
\ No newline at end of file
diff --git a/tests/data/item_group/android.txt b/tests/data/item_group/android.txt
index 9d66be5..16e2b79 100644
--- a/tests/data/item_group/android.txt
+++ b/tests/data/item_group/android.txt
@@ -1,27 +1,20 @@
-# Item Group, Android
 [
-
-	# These values are common in all dictionaries
-	{
-		u'creation': '2012-08-07 09:57:11',
-		u'docstatus': 0,
-		u'modified': '2012-08-07 09:57:11',
-		u'modified_by': u'Administrator',
-		u'owner': u'Administrator'
-	},
-
-	# These values are common for all Item Group
-	{
-		u'doctype': 'Item Group',
-		'is_group': u'No',
-		'item_group_name': u'Android',
-		u'name': u'__common__',
-		'parent_item_group': u'Smartphones'
-	},
-
-	# Item Group, Android
-	{
-		u'doctype': 'Item Group',
-		u'name': u'Android'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-08-07 09:57:11", 
+  "modified_by": "Administrator", 
+  "modified": "2012-08-07 09:57:11"
+ }, 
+ {
+  "name": "__common__", 
+  "item_group_name": "Android", 
+  "is_group": "No", 
+  "parent_item_group": "Smartphones", 
+  "doctype": "Item Group"
+ }, 
+ {
+  "name": "Android", 
+  "doctype": "Item Group"
+ }
 ]
\ No newline at end of file
diff --git a/tests/data/item_group/desktops.txt b/tests/data/item_group/desktops.txt
index 7c093d5..ee95f41 100644
--- a/tests/data/item_group/desktops.txt
+++ b/tests/data/item_group/desktops.txt
@@ -1,27 +1,20 @@
-# Item Group, Desktops
 [
-
-	# These values are common in all dictionaries
-	{
-		u'creation': '2012-08-07 09:55:28',
-		u'docstatus': 0,
-		u'modified': '2012-08-07 09:55:28',
-		u'modified_by': u'Administrator',
-		u'owner': u'Administrator'
-	},
-
-	# These values are common for all Item Group
-	{
-		u'doctype': 'Item Group',
-		'is_group': u'Yes',
-		'item_group_name': u'Desktops',
-		u'name': u'__common__',
-		'parent_item_group': u'All Item Groups'
-	},
-
-	# Item Group, Desktops
-	{
-		u'doctype': 'Item Group',
-		u'name': u'Desktops'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-08-07 09:55:28", 
+  "modified_by": "Administrator", 
+  "modified": "2012-08-07 09:55:28"
+ }, 
+ {
+  "name": "__common__", 
+  "item_group_name": "Desktops", 
+  "is_group": "Yes", 
+  "parent_item_group": "All Item Groups", 
+  "doctype": "Item Group"
+ }, 
+ {
+  "name": "Desktops", 
+  "doctype": "Item Group"
+ }
 ]
\ No newline at end of file
diff --git a/tests/data/item_group/full_size_tablets.txt b/tests/data/item_group/full_size_tablets.txt
index 158547c..ea590e4 100644
--- a/tests/data/item_group/full_size_tablets.txt
+++ b/tests/data/item_group/full_size_tablets.txt
@@ -1,27 +1,20 @@
-# Item Group, Full Size Tablets
 [
-
-	# These values are common in all dictionaries
-	{
-		u'creation': '2012-08-07 09:58:20',
-		u'docstatus': 0,
-		u'modified': '2012-08-07 09:58:20',
-		u'modified_by': u'Administrator',
-		u'owner': u'Administrator'
-	},
-
-	# These values are common for all Item Group
-	{
-		u'doctype': 'Item Group',
-		'is_group': u'No',
-		'item_group_name': u'Full Size Tablets',
-		u'name': u'__common__',
-		'parent_item_group': u'Tablets'
-	},
-
-	# Item Group, Full Size Tablets
-	{
-		u'doctype': 'Item Group',
-		u'name': u'Full Size Tablets'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-08-07 09:58:20", 
+  "modified_by": "Administrator", 
+  "modified": "2012-08-07 09:58:20"
+ }, 
+ {
+  "name": "__common__", 
+  "item_group_name": "Full Size Tablets", 
+  "is_group": "No", 
+  "parent_item_group": "Tablets", 
+  "doctype": "Item Group"
+ }, 
+ {
+  "name": "Full Size Tablets", 
+  "doctype": "Item Group"
+ }
 ]
\ No newline at end of file
diff --git a/tests/data/item_group/gamer.txt b/tests/data/item_group/gamer.txt
index bce38c7..55ff0f4 100644
--- a/tests/data/item_group/gamer.txt
+++ b/tests/data/item_group/gamer.txt
@@ -1,27 +1,20 @@
-# Item Group, Gamer
 [
-
-	# These values are common in all dictionaries
-	{
-		u'creation': '2012-08-07 09:56:27',
-		u'docstatus': 0,
-		u'modified': '2012-08-07 09:56:27',
-		u'modified_by': u'Administrator',
-		u'owner': u'Administrator'
-	},
-
-	# These values are common for all Item Group
-	{
-		u'doctype': 'Item Group',
-		'is_group': u'No',
-		'item_group_name': u'Gamer',
-		u'name': u'__common__',
-		'parent_item_group': u'Desktops'
-	},
-
-	# Item Group, Gamer
-	{
-		u'doctype': 'Item Group',
-		u'name': u'Gamer'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-08-07 09:56:27", 
+  "modified_by": "Administrator", 
+  "modified": "2012-08-07 09:56:27"
+ }, 
+ {
+  "name": "__common__", 
+  "item_group_name": "Gamer", 
+  "is_group": "No", 
+  "parent_item_group": "Desktops", 
+  "doctype": "Item Group"
+ }, 
+ {
+  "name": "Gamer", 
+  "doctype": "Item Group"
+ }
 ]
\ No newline at end of file
diff --git a/tests/data/item_group/home_series.txt b/tests/data/item_group/home_series.txt
index 27eeec3..fabd912 100644
--- a/tests/data/item_group/home_series.txt
+++ b/tests/data/item_group/home_series.txt
@@ -1,27 +1,20 @@
-# Item Group, Home Series
 [
-
-	# These values are common in all dictionaries
-	{
-		u'creation': '2012-08-07 09:56:15',
-		u'docstatus': 0,
-		u'modified': '2012-08-07 09:56:15',
-		u'modified_by': u'Administrator',
-		u'owner': u'Administrator'
-	},
-
-	# These values are common for all Item Group
-	{
-		u'doctype': 'Item Group',
-		'is_group': u'No',
-		'item_group_name': u'Home Series',
-		u'name': u'__common__',
-		'parent_item_group': u'Desktops'
-	},
-
-	# Item Group, Home Series
-	{
-		u'doctype': 'Item Group',
-		u'name': u'Home Series'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-08-07 09:56:15", 
+  "modified_by": "Administrator", 
+  "modified": "2012-08-07 09:56:15"
+ }, 
+ {
+  "name": "__common__", 
+  "item_group_name": "Home Series", 
+  "is_group": "No", 
+  "parent_item_group": "Desktops", 
+  "doctype": "Item Group"
+ }, 
+ {
+  "name": "Home Series", 
+  "doctype": "Item Group"
+ }
 ]
\ No newline at end of file
diff --git a/tests/data/item_group/laptops.txt b/tests/data/item_group/laptops.txt
index 2ac14d1..20b7c16 100644
--- a/tests/data/item_group/laptops.txt
+++ b/tests/data/item_group/laptops.txt
@@ -1,27 +1,20 @@
-# Item Group, Laptops
 [
-
-	# These values are common in all dictionaries
-	{
-		u'creation': '2012-08-07 09:55:36',
-		u'docstatus': 0,
-		u'modified': '2012-08-07 09:55:36',
-		u'modified_by': u'Administrator',
-		u'owner': u'Administrator'
-	},
-
-	# These values are common for all Item Group
-	{
-		u'doctype': 'Item Group',
-		'is_group': u'Yes',
-		'item_group_name': u'Laptops',
-		u'name': u'__common__',
-		'parent_item_group': u'All Item Groups'
-	},
-
-	# Item Group, Laptops
-	{
-		u'doctype': 'Item Group',
-		u'name': u'Laptops'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-08-07 09:55:36", 
+  "modified_by": "Administrator", 
+  "modified": "2012-08-07 09:55:36"
+ }, 
+ {
+  "name": "__common__", 
+  "item_group_name": "Laptops", 
+  "is_group": "Yes", 
+  "parent_item_group": "All Item Groups", 
+  "doctype": "Item Group"
+ }, 
+ {
+  "name": "Laptops", 
+  "doctype": "Item Group"
+ }
 ]
\ No newline at end of file
diff --git a/tests/data/item_group/lightweight.txt b/tests/data/item_group/lightweight.txt
index b3e01e5..f470b7b 100644
--- a/tests/data/item_group/lightweight.txt
+++ b/tests/data/item_group/lightweight.txt
@@ -1,27 +1,20 @@
-# Item Group, Lightweight
 [
-
-	# These values are common in all dictionaries
-	{
-		u'creation': '2012-08-07 09:56:57',
-		u'docstatus': 0,
-		u'modified': '2012-08-07 09:56:58',
-		u'modified_by': u'Administrator',
-		u'owner': u'Administrator'
-	},
-
-	# These values are common for all Item Group
-	{
-		u'doctype': 'Item Group',
-		'is_group': u'No',
-		'item_group_name': u'Lightweight',
-		u'name': u'__common__',
-		'parent_item_group': u'Laptops'
-	},
-
-	# Item Group, Lightweight
-	{
-		u'doctype': 'Item Group',
-		u'name': u'Lightweight'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-08-07 09:56:57", 
+  "modified_by": "Administrator", 
+  "modified": "2012-08-07 09:56:58"
+ }, 
+ {
+  "name": "__common__", 
+  "item_group_name": "Lightweight", 
+  "is_group": "No", 
+  "parent_item_group": "Laptops", 
+  "doctype": "Item Group"
+ }, 
+ {
+  "name": "Lightweight", 
+  "doctype": "Item Group"
+ }
 ]
\ No newline at end of file
diff --git a/tests/data/item_group/medium_tablets.txt b/tests/data/item_group/medium_tablets.txt
index 87bda5d..0778337 100644
--- a/tests/data/item_group/medium_tablets.txt
+++ b/tests/data/item_group/medium_tablets.txt
@@ -1,27 +1,20 @@
-# Item Group, Medium Tablets
 [
-
-	# These values are common in all dictionaries
-	{
-		u'creation': '2012-08-07 09:57:51',
-		u'docstatus': 0,
-		u'modified': '2012-08-07 09:57:51',
-		u'modified_by': u'Administrator',
-		u'owner': u'Administrator'
-	},
-
-	# These values are common for all Item Group
-	{
-		u'doctype': 'Item Group',
-		'is_group': u'No',
-		'item_group_name': u'Medium Tablets',
-		u'name': u'__common__',
-		'parent_item_group': u'Tablets'
-	},
-
-	# Item Group, Medium Tablets
-	{
-		u'doctype': 'Item Group',
-		u'name': u'Medium Tablets'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-08-07 09:57:51", 
+  "modified_by": "Administrator", 
+  "modified": "2012-08-07 09:57:51"
+ }, 
+ {
+  "name": "__common__", 
+  "item_group_name": "Medium Tablets", 
+  "is_group": "No", 
+  "parent_item_group": "Tablets", 
+  "doctype": "Item Group"
+ }, 
+ {
+  "name": "Medium Tablets", 
+  "doctype": "Item Group"
+ }
 ]
\ No newline at end of file
diff --git a/tests/data/item_group/pro_series.txt b/tests/data/item_group/pro_series.txt
index e66f91a..0a789a8 100644
--- a/tests/data/item_group/pro_series.txt
+++ b/tests/data/item_group/pro_series.txt
@@ -1,27 +1,20 @@
-# Item Group, Pro Series
 [
-
-	# These values are common in all dictionaries
-	{
-		u'creation': '2012-08-07 09:56:20',
-		u'docstatus': 0,
-		u'modified': '2012-08-07 09:56:20',
-		u'modified_by': u'Administrator',
-		u'owner': u'Administrator'
-	},
-
-	# These values are common for all Item Group
-	{
-		u'doctype': 'Item Group',
-		'is_group': u'No',
-		'item_group_name': u'Pro Series',
-		u'name': u'__common__',
-		'parent_item_group': u'Desktops'
-	},
-
-	# Item Group, Pro Series
-	{
-		u'doctype': 'Item Group',
-		u'name': u'Pro Series'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-08-07 09:56:20", 
+  "modified_by": "Administrator", 
+  "modified": "2012-08-07 09:56:20"
+ }, 
+ {
+  "name": "__common__", 
+  "item_group_name": "Pro Series", 
+  "is_group": "No", 
+  "parent_item_group": "Desktops", 
+  "doctype": "Item Group"
+ }, 
+ {
+  "name": "Pro Series", 
+  "doctype": "Item Group"
+ }
 ]
\ No newline at end of file
diff --git a/tests/data/item_group/small_tablets.txt b/tests/data/item_group/small_tablets.txt
index cbf4399..f8a5f26 100644
--- a/tests/data/item_group/small_tablets.txt
+++ b/tests/data/item_group/small_tablets.txt
@@ -1,27 +1,20 @@
-# Item Group, Small Tablets
 [
-
-	# These values are common in all dictionaries
-	{
-		u'creation': '2012-08-07 09:57:44',
-		u'docstatus': 0,
-		u'modified': '2012-08-07 09:57:44',
-		u'modified_by': u'Administrator',
-		u'owner': u'Administrator'
-	},
-
-	# These values are common for all Item Group
-	{
-		u'doctype': 'Item Group',
-		'is_group': u'No',
-		'item_group_name': u'Small Tablets',
-		u'name': u'__common__',
-		'parent_item_group': u'Tablets'
-	},
-
-	# Item Group, Small Tablets
-	{
-		u'doctype': 'Item Group',
-		u'name': u'Small Tablets'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-08-07 09:57:44", 
+  "modified_by": "Administrator", 
+  "modified": "2012-08-07 09:57:44"
+ }, 
+ {
+  "name": "__common__", 
+  "item_group_name": "Small Tablets", 
+  "is_group": "No", 
+  "parent_item_group": "Tablets", 
+  "doctype": "Item Group"
+ }, 
+ {
+  "name": "Small Tablets", 
+  "doctype": "Item Group"
+ }
 ]
\ No newline at end of file
diff --git a/tests/data/item_group/smartphones.txt b/tests/data/item_group/smartphones.txt
index ee7dfb9..15a7abe 100644
--- a/tests/data/item_group/smartphones.txt
+++ b/tests/data/item_group/smartphones.txt
@@ -1,27 +1,20 @@
-# Item Group, Smartphones
 [
-
-	# These values are common in all dictionaries
-	{
-		u'creation': '2012-08-07 09:55:49',
-		u'docstatus': 0,
-		u'modified': '2012-08-07 09:55:49',
-		u'modified_by': u'Administrator',
-		u'owner': u'Administrator'
-	},
-
-	# These values are common for all Item Group
-	{
-		u'doctype': 'Item Group',
-		'is_group': u'Yes',
-		'item_group_name': u'Smartphones',
-		u'name': u'__common__',
-		'parent_item_group': u'All Item Groups'
-	},
-
-	# Item Group, Smartphones
-	{
-		u'doctype': 'Item Group',
-		u'name': u'Smartphones'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-08-07 09:55:49", 
+  "modified_by": "Administrator", 
+  "modified": "2012-08-07 09:55:49"
+ }, 
+ {
+  "name": "__common__", 
+  "item_group_name": "Smartphones", 
+  "is_group": "Yes", 
+  "parent_item_group": "All Item Groups", 
+  "doctype": "Item Group"
+ }, 
+ {
+  "name": "Smartphones", 
+  "doctype": "Item Group"
+ }
 ]
\ No newline at end of file
diff --git a/tests/data/item_group/tablets.txt b/tests/data/item_group/tablets.txt
index cc44bae..3825305 100644
--- a/tests/data/item_group/tablets.txt
+++ b/tests/data/item_group/tablets.txt
@@ -1,27 +1,20 @@
-# Item Group, Tablets
 [
-
-	# These values are common in all dictionaries
-	{
-		u'creation': '2012-08-07 09:55:42',
-		u'docstatus': 0,
-		u'modified': '2012-08-07 09:55:42',
-		u'modified_by': u'Administrator',
-		u'owner': u'Administrator'
-	},
-
-	# These values are common for all Item Group
-	{
-		u'doctype': 'Item Group',
-		'is_group': u'Yes',
-		'item_group_name': u'Tablets',
-		u'name': u'__common__',
-		'parent_item_group': u'All Item Groups'
-	},
-
-	# Item Group, Tablets
-	{
-		u'doctype': 'Item Group',
-		u'name': u'Tablets'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-08-07 09:55:42", 
+  "modified_by": "Administrator", 
+  "modified": "2012-08-07 09:55:42"
+ }, 
+ {
+  "name": "__common__", 
+  "item_group_name": "Tablets", 
+  "is_group": "Yes", 
+  "parent_item_group": "All Item Groups", 
+  "doctype": "Item Group"
+ }, 
+ {
+  "name": "Tablets", 
+  "doctype": "Item Group"
+ }
 ]
\ No newline at end of file
diff --git a/tests/data/item_group/tough.txt b/tests/data/item_group/tough.txt
index 0d3badd..c905a61 100644
--- a/tests/data/item_group/tough.txt
+++ b/tests/data/item_group/tough.txt
@@ -1,27 +1,20 @@
-# Item Group, Tough
 [
-
-	# These values are common in all dictionaries
-	{
-		u'creation': '2012-08-07 09:56:41',
-		u'docstatus': 0,
-		u'modified': '2012-08-07 09:56:41',
-		u'modified_by': u'Administrator',
-		u'owner': u'Administrator'
-	},
-
-	# These values are common for all Item Group
-	{
-		u'doctype': 'Item Group',
-		'is_group': u'No',
-		'item_group_name': u'Tough',
-		u'name': u'__common__',
-		'parent_item_group': u'Laptops'
-	},
-
-	# Item Group, Tough
-	{
-		u'doctype': 'Item Group',
-		u'name': u'Tough'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-08-07 09:56:41", 
+  "modified_by": "Administrator", 
+  "modified": "2012-08-07 09:56:41"
+ }, 
+ {
+  "name": "__common__", 
+  "item_group_name": "Tough", 
+  "is_group": "No", 
+  "parent_item_group": "Laptops", 
+  "doctype": "Item Group"
+ }, 
+ {
+  "name": "Tough", 
+  "doctype": "Item Group"
+ }
 ]
\ No newline at end of file
diff --git a/tests/data/item_group/ultrabook.txt b/tests/data/item_group/ultrabook.txt
index 4bb19d7..f75c74f 100644
--- a/tests/data/item_group/ultrabook.txt
+++ b/tests/data/item_group/ultrabook.txt
@@ -1,27 +1,20 @@
-# Item Group, Ultrabook
 [
-
-	# These values are common in all dictionaries
-	{
-		u'creation': '2012-08-07 09:56:50',
-		u'docstatus': 0,
-		u'modified': '2012-08-07 09:56:50',
-		u'modified_by': u'Administrator',
-		u'owner': u'Administrator'
-	},
-
-	# These values are common for all Item Group
-	{
-		u'doctype': 'Item Group',
-		'is_group': u'No',
-		'item_group_name': u'Ultrabook',
-		u'name': u'__common__',
-		'parent_item_group': u'Laptops'
-	},
-
-	# Item Group, Ultrabook
-	{
-		u'doctype': 'Item Group',
-		u'name': u'Ultrabook'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-08-07 09:56:50", 
+  "modified_by": "Administrator", 
+  "modified": "2012-08-07 09:56:50"
+ }, 
+ {
+  "name": "__common__", 
+  "item_group_name": "Ultrabook", 
+  "is_group": "No", 
+  "parent_item_group": "Laptops", 
+  "doctype": "Item Group"
+ }, 
+ {
+  "name": "Ultrabook", 
+  "doctype": "Item Group"
+ }
 ]
\ No newline at end of file
diff --git a/utilities/doctype/address/address.txt b/utilities/doctype/address/address.txt
index 338ae88..4a3fe7f 100644
--- a/utilities/doctype/address/address.txt
+++ b/utilities/doctype/address/address.txt
@@ -1,394 +1,319 @@
-# DocType, Address
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-07-02 19:57:47',
-		'docstatus': 0,
-		'modified': '2012-07-02 20:24:15',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'_last_update': u'1319016431',
-		'allow_trash': 1,
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'document_type': u'Master',
-		'in_dialog': 1,
-		'module': u'Utilities',
-		'name': '__common__',
-		'search_fields': u'customer, supplier, sales_partner, country, state',
-		'section_style': u'Simple',
-		'show_in_menu': 0,
-		'version': 1
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'Address',
-		'parentfield': u'fields',
-		'parenttype': u'DocType'
-	},
-
-	# These values are common for all DocPerm
-	{
-		'doctype': u'DocPerm',
-		'name': '__common__',
-		'parent': u'Address',
-		'parentfield': u'permissions',
-		'parenttype': u'DocType',
-		'read': 1
-	},
-
-	# DocType, Address
-	{
-		'doctype': 'DocType',
-		'name': u'Address'
-	},
-
-	# DocPerm
-	{
-		'cancel': 1,
-		'create': 1,
-		'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'System Manager',
-		'write': 1
-	},
-
-	# DocPerm
-	{
-		'cancel': 1,
-		'create': 1,
-		'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'Sales Master Manager',
-		'write': 1
-	},
-
-	# DocPerm
-	{
-		'cancel': 1,
-		'create': 1,
-		'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'Purchase Master Manager',
-		'write': 1
-	},
-
-	# DocPerm
-	{
-		'cancel': 0,
-		'create': 1,
-		'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'Maintenance Manager',
-		'write': 1
-	},
-
-	# DocPerm
-	{
-		'cancel': 0,
-		'create': 1,
-		'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'Accounts Manager',
-		'write': 1
-	},
-
-	# DocPerm
-	{
-		'create': 1,
-		'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'Sales Manager',
-		'write': 1
-	},
-
-	# DocPerm
-	{
-		'create': 1,
-		'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'Purchase Manager',
-		'write': 1
-	},
-
-	# DocPerm
-	{
-		'create': 1,
-		'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'Sales User',
-		'write': 1
-	},
-
-	# DocPerm
-	{
-		'create': 1,
-		'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'Purchase User',
-		'write': 1
-	},
-
-	# DocPerm
-	{
-		'create': 1,
-		'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'Maintenance User',
-		'write': 1
-	},
-
-	# DocPerm
-	{
-		'create': 1,
-		'doctype': u'DocPerm',
-		'permlevel': 0,
-		'role': u'Accounts User',
-		'write': 1
-	},
-
-	# DocPerm
-	{
-		'cancel': 0,
-		'create': 0,
-		'doctype': u'DocPerm',
-		'permlevel': 1,
-		'role': u'All',
-		'write': 0
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'doctype': u'DocField',
-		'fieldname': u'address_details',
-		'fieldtype': u'Section Break',
-		'label': u'Address Details',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'description': u'<em>e.g. Office, Billing, Shipping</em>',
-		'doctype': u'DocField',
-		'fieldname': u'address_type',
-		'fieldtype': u'Data',
-		'label': u'Address Type',
-		'permlevel': 0,
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'doctype': u'DocField',
-		'fieldname': u'address_line1',
-		'fieldtype': u'Data',
-		'label': u'Address Line1',
-		'permlevel': 0,
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'address_line2',
-		'fieldtype': u'Data',
-		'label': u'Address Line2',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'doctype': u'DocField',
-		'fieldname': u'city',
-		'fieldtype': u'Data',
-		'in_filter': 1,
-		'label': u'City/Town',
-		'permlevel': 0,
-		'reqd': 1,
-		'search_index': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'pincode',
-		'fieldtype': u'Data',
-		'in_filter': 1,
-		'label': u'Pincode',
-		'permlevel': 0,
-		'search_index': 1
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'doctype': u'DocField',
-		'fieldname': u'country',
-		'fieldtype': u'Select',
-		'in_filter': 1,
-		'label': u'Country',
-		'options': u'link:Country',
-		'permlevel': 0,
-		'reqd': 1,
-		'search_index': 1,
-		'trigger': u'Client'
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'doctype': u'DocField',
-		'fieldname': u'state',
-		'fieldtype': u'Data',
-		'in_filter': 1,
-		'label': u'State',
-		'options': u'Suggest',
-		'permlevel': 0,
-		'search_index': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'column_break0',
-		'fieldtype': u'Column Break',
-		'permlevel': 0,
-		'print_hide': 0,
-		'width': u'50%'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'phone',
-		'fieldtype': u'Data',
-		'label': u'Phone',
-		'permlevel': 0,
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'email_id',
-		'fieldtype': u'Data',
-		'label': u'Email Id',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'fax',
-		'fieldtype': u'Data',
-		'in_filter': 1,
-		'label': u'Fax',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'depends_on': u'eval:!doc.supplier && !doc.sales_partner',
-		'doctype': u'DocField',
-		'fieldname': u'customer',
-		'fieldtype': u'Link',
-		'label': u'Customer',
-		'options': u'Customer',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'depends_on': u'eval:!doc.supplier && !doc.sales_partner',
-		'doctype': u'DocField',
-		'fieldname': u'customer_name',
-		'fieldtype': u'Data',
-		'in_filter': 1,
-		'label': u'Customer Name',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'depends_on': u'eval:!doc.customer && !doc.sales_partner',
-		'doctype': u'DocField',
-		'fieldname': u'supplier',
-		'fieldtype': u'Link',
-		'label': u'Supplier',
-		'options': u'Supplier',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'depends_on': u'eval:!doc.customer && !doc.sales_partner',
-		'doctype': u'DocField',
-		'fieldname': u'supplier_name',
-		'fieldtype': u'Data',
-		'in_filter': 1,
-		'label': u'Supplier Name',
-		'permlevel': 1,
-		'search_index': 0
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'depends_on': u'eval:!doc.customer && !doc.supplier',
-		'doctype': u'DocField',
-		'fieldname': u'sales_partner',
-		'fieldtype': u'Link',
-		'label': u'Sales Partner',
-		'options': u'Sales Partner',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'default': u'0',
-		'description': u'Check to make primary address',
-		'doctype': u'DocField',
-		'fieldname': u'is_primary_address',
-		'fieldtype': u'Check',
-		'label': u'Is Primary Address',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'default': u'0',
-		'description': u'Check to make Shipping Address',
-		'doctype': u'DocField',
-		'fieldname': u'is_shipping_address',
-		'fieldtype': u'Check',
-		'label': u'Is Shipping Address',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'trash_reason',
-		'fieldtype': u'Small Text',
-		'label': u'Trash Reason',
-		'permlevel': 0
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-07-02 19:57:47", 
+  "modified_by": "Administrator", 
+  "modified": "2012-07-02 20:24:15"
+ }, 
+ {
+  "section_style": "Simple", 
+  "search_fields": "customer, supplier, sales_partner, country, state", 
+  "module": "Utilities", 
+  "_last_update": "1319016431", 
+  "allow_trash": 1, 
+  "in_dialog": 1, 
+  "document_type": "Master", 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "doctype": "DocType", 
+  "show_in_menu": 0, 
+  "version": 1
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Address", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Address", 
+  "read": 1, 
+  "doctype": "DocPerm", 
+  "parenttype": "DocType", 
+  "parentfield": "permissions"
+ }, 
+ {
+  "name": "Address", 
+  "doctype": "DocType"
+ }, 
+ {
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "write": 1, 
+  "role": "System Manager", 
+  "cancel": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "write": 1, 
+  "role": "Sales Master Manager", 
+  "cancel": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "write": 1, 
+  "role": "Purchase Master Manager", 
+  "cancel": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "write": 1, 
+  "role": "Maintenance Manager", 
+  "cancel": 0, 
+  "permlevel": 0
+ }, 
+ {
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "write": 1, 
+  "role": "Accounts Manager", 
+  "cancel": 0, 
+  "permlevel": 0
+ }, 
+ {
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "write": 1, 
+  "role": "Sales Manager", 
+  "permlevel": 0
+ }, 
+ {
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "write": 1, 
+  "role": "Purchase Manager", 
+  "permlevel": 0
+ }, 
+ {
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "write": 1, 
+  "role": "Sales User", 
+  "permlevel": 0
+ }, 
+ {
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "write": 1, 
+  "role": "Purchase User", 
+  "permlevel": 0
+ }, 
+ {
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "write": 1, 
+  "role": "Maintenance User", 
+  "permlevel": 0
+ }, 
+ {
+  "create": 1, 
+  "doctype": "DocPerm", 
+  "write": 1, 
+  "role": "Accounts User", 
+  "permlevel": 0
+ }, 
+ {
+  "create": 0, 
+  "doctype": "DocPerm", 
+  "write": 0, 
+  "role": "All", 
+  "cancel": 0, 
+  "permlevel": 1
+ }, 
+ {
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Address Details", 
+  "fieldname": "address_details", 
+  "fieldtype": "Section Break", 
+  "permlevel": 0
+ }, 
+ {
+  "description": "<em>e.g. Office, Billing, Shipping</em>", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Address Type", 
+  "fieldname": "address_type", 
+  "fieldtype": "Data", 
+  "reqd": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Address Line1", 
+  "fieldname": "address_line1", 
+  "fieldtype": "Data", 
+  "reqd": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Address Line2", 
+  "fieldname": "address_line2", 
+  "fieldtype": "Data", 
+  "permlevel": 0
+ }, 
+ {
+  "search_index": 1, 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "City/Town", 
+  "fieldname": "city", 
+  "fieldtype": "Data", 
+  "reqd": 1, 
+  "permlevel": 0, 
+  "in_filter": 1
+ }, 
+ {
+  "search_index": 1, 
+  "doctype": "DocField", 
+  "label": "Pincode", 
+  "fieldname": "pincode", 
+  "fieldtype": "Data", 
+  "permlevel": 0, 
+  "in_filter": 1
+ }, 
+ {
+  "search_index": 1, 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Country", 
+  "trigger": "Client", 
+  "fieldname": "country", 
+  "fieldtype": "Select", 
+  "reqd": 1, 
+  "options": "link:Country", 
+  "permlevel": 0, 
+  "in_filter": 1
+ }, 
+ {
+  "search_index": 0, 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "State", 
+  "permlevel": 0, 
+  "fieldname": "state", 
+  "fieldtype": "Data", 
+  "options": "Suggest", 
+  "in_filter": 1
+ }, 
+ {
+  "print_hide": 0, 
+  "doctype": "DocField", 
+  "width": "50%", 
+  "fieldname": "column_break0", 
+  "fieldtype": "Column Break", 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Phone", 
+  "fieldname": "phone", 
+  "fieldtype": "Data", 
+  "reqd": 1, 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Email Id", 
+  "fieldname": "email_id", 
+  "fieldtype": "Data", 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Fax", 
+  "fieldname": "fax", 
+  "fieldtype": "Data", 
+  "permlevel": 0, 
+  "in_filter": 1
+ }, 
+ {
+  "depends_on": "eval:!doc.supplier && !doc.sales_partner", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Customer", 
+  "permlevel": 0, 
+  "fieldname": "customer", 
+  "fieldtype": "Link", 
+  "options": "Customer"
+ }, 
+ {
+  "depends_on": "eval:!doc.supplier && !doc.sales_partner", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Customer Name", 
+  "fieldname": "customer_name", 
+  "fieldtype": "Data", 
+  "permlevel": 1, 
+  "in_filter": 1
+ }, 
+ {
+  "depends_on": "eval:!doc.customer && !doc.sales_partner", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Supplier", 
+  "permlevel": 0, 
+  "fieldname": "supplier", 
+  "fieldtype": "Link", 
+  "options": "Supplier"
+ }, 
+ {
+  "search_index": 0, 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Supplier Name", 
+  "fieldname": "supplier_name", 
+  "fieldtype": "Data", 
+  "depends_on": "eval:!doc.customer && !doc.sales_partner", 
+  "permlevel": 1, 
+  "in_filter": 1
+ }, 
+ {
+  "depends_on": "eval:!doc.customer && !doc.supplier", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Sales Partner", 
+  "permlevel": 0, 
+  "fieldname": "sales_partner", 
+  "fieldtype": "Link", 
+  "options": "Sales Partner"
+ }, 
+ {
+  "description": "Check to make primary address", 
+  "default": "0", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Is Primary Address", 
+  "fieldname": "is_primary_address", 
+  "fieldtype": "Check", 
+  "permlevel": 0
+ }, 
+ {
+  "description": "Check to make Shipping Address", 
+  "default": "0", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Is Shipping Address", 
+  "fieldname": "is_shipping_address", 
+  "fieldtype": "Check", 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Trash Reason", 
+  "fieldname": "trash_reason", 
+  "fieldtype": "Small Text", 
+  "permlevel": 0
+ }
 ]
\ No newline at end of file
diff --git a/utilities/doctype/answer/answer.txt b/utilities/doctype/answer/answer.txt
index 75c3f33..80d5077 100644
--- a/utilities/doctype/answer/answer.txt
+++ b/utilities/doctype/answer/answer.txt
@@ -1,102 +1,81 @@
-# DocType, Answer
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:36:01',
-		'docstatus': 0,
-		'modified': '2012-03-27 14:36:01',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'allow_attach': 0,
-		'allow_trash': 1,
-		'autoname': u'_ANS.#######',
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'in_create': 1,
-		'module': u'Utilities',
-		'name': '__common__',
-		'read_only': 1,
-		'section_style': u'Simple',
-		'server_code_error': u' ',
-		'show_in_menu': 0,
-		'version': 3
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'Answer',
-		'parentfield': u'fields',
-		'parenttype': u'DocType',
-		'permlevel': 0
-	},
-
-	# These values are common for all DocPerm
-	{
-		'cancel': 1,
-		'create': 1,
-		'doctype': u'DocPerm',
-		'name': '__common__',
-		'parent': u'Answer',
-		'parentfield': u'permissions',
-		'parenttype': u'DocType',
-		'permlevel': 0,
-		'read': 1,
-		'role': u'All',
-		'write': 1
-	},
-
-	# DocType, Answer
-	{
-		'doctype': 'DocType',
-		'name': u'Answer'
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'question',
-		'fieldtype': u'Link',
-		'label': u'Question',
-		'options': u'Question'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'answer',
-		'fieldtype': u'Text',
-		'label': u'Answer',
-		'oldfieldname': u'question',
-		'oldfieldtype': u'Text'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'points',
-		'fieldtype': u'Int',
-		'label': u'Points'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'_users_voted',
-		'fieldtype': u'Text',
-		'hidden': 1,
-		'label': u'Users Voted',
-		'print_hide': 1
-	}
-]
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-03-27 14:36:01", 
+  "modified_by": "Administrator", 
+  "modified": "2012-03-27 14:36:01"
+ }, 
+ {
+  "section_style": "Simple", 
+  "allow_attach": 0, 
+  "module": "Utilities", 
+  "allow_trash": 1, 
+  "server_code_error": " ", 
+  "in_create": 1, 
+  "read_only": 1, 
+  "autoname": "_ANS.#######", 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "doctype": "DocType", 
+  "show_in_menu": 0, 
+  "version": 3
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Answer", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "permlevel": 0, 
+  "parentfield": "fields"
+ }, 
+ {
+  "parent": "Answer", 
+  "read": 1, 
+  "doctype": "DocPerm", 
+  "cancel": 1, 
+  "name": "__common__", 
+  "create": 1, 
+  "write": 1, 
+  "parenttype": "DocType", 
+  "role": "All", 
+  "permlevel": 0, 
+  "parentfield": "permissions"
+ }, 
+ {
+  "name": "Answer", 
+  "doctype": "DocType"
+ }, 
+ {
+  "doctype": "DocPerm"
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Question", 
+  "fieldname": "question", 
+  "fieldtype": "Link", 
+  "options": "Question"
+ }, 
+ {
+  "oldfieldtype": "Text", 
+  "doctype": "DocField", 
+  "label": "Answer", 
+  "oldfieldname": "question", 
+  "fieldname": "answer", 
+  "fieldtype": "Text"
+ }, 
+ {
+  "doctype": "DocField", 
+  "fieldname": "points", 
+  "fieldtype": "Int", 
+  "label": "Points"
+ }, 
+ {
+  "print_hide": 1, 
+  "doctype": "DocField", 
+  "label": "Users Voted", 
+  "fieldname": "_users_voted", 
+  "fieldtype": "Text", 
+  "hidden": 1
+ }
+]
\ No newline at end of file
diff --git a/utilities/doctype/gl_mapper/gl_mapper.txt b/utilities/doctype/gl_mapper/gl_mapper.txt
index aef8bd2..3cd26b1 100644
--- a/utilities/doctype/gl_mapper/gl_mapper.txt
+++ b/utilities/doctype/gl_mapper/gl_mapper.txt
@@ -1,93 +1,74 @@
-# DocType, GL Mapper
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-04-13 11:56:40',
-		'docstatus': 0,
-		'modified': '2012-04-23 12:27:38',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'_last_update': u'1305006361',
-		'autoname': u'field:doc_type',
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'module': u'Utilities',
-		'name': '__common__',
-		'section_style': u'Simple',
-		'server_code_error': u' ',
-		'show_in_menu': 0,
-		'version': 1
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'GL Mapper',
-		'parentfield': u'fields',
-		'parenttype': u'DocType',
-		'permlevel': 0
-	},
-
-	# These values are common for all DocPerm
-	{
-		'create': 0,
-		'doctype': u'DocPerm',
-		'name': '__common__',
-		'parent': u'GL Mapper',
-		'parentfield': u'permissions',
-		'parenttype': u'DocType',
-		'permlevel': 0,
-		'read': 1
-	},
-
-	# DocType, GL Mapper
-	{
-		'doctype': 'DocType',
-		'name': u'GL Mapper'
-	},
-
-	# DocPerm
-	{
-		'amend': 0,
-		'cancel': 0,
-		'doctype': u'DocPerm',
-		'role': u'Accounts User',
-		'submit': 0,
-		'write': 0
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm',
-		'role': u'System Manager',
-		'write': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'doc_type',
-		'fieldtype': u'Data',
-		'label': u'Doc Type',
-		'oldfieldname': u'doc_type',
-		'oldfieldtype': u'Link',
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'fields',
-		'fieldtype': u'Table',
-		'label': u'Fields',
-		'oldfieldname': u'fields',
-		'oldfieldtype': u'Table',
-		'options': u'GL Mapper Detail'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-04-13 11:56:40", 
+  "modified_by": "Administrator", 
+  "modified": "2012-04-23 12:27:38"
+ }, 
+ {
+  "section_style": "Simple", 
+  "module": "Utilities", 
+  "doctype": "DocType", 
+  "autoname": "field:doc_type", 
+  "show_in_menu": 0, 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "_last_update": "1305006361", 
+  "server_code_error": " ", 
+  "version": 1
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "GL Mapper", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "permlevel": 0, 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "GL Mapper", 
+  "read": 1, 
+  "create": 0, 
+  "doctype": "DocPerm", 
+  "parenttype": "DocType", 
+  "permlevel": 0, 
+  "parentfield": "permissions"
+ }, 
+ {
+  "name": "GL Mapper", 
+  "doctype": "DocType"
+ }, 
+ {
+  "amend": 0, 
+  "doctype": "DocPerm", 
+  "submit": 0, 
+  "write": 0, 
+  "role": "Accounts User", 
+  "cancel": 0
+ }, 
+ {
+  "write": 1, 
+  "role": "System Manager", 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "oldfieldtype": "Link", 
+  "doctype": "DocField", 
+  "label": "Doc Type", 
+  "oldfieldname": "doc_type", 
+  "fieldname": "doc_type", 
+  "fieldtype": "Data", 
+  "reqd": 1
+ }, 
+ {
+  "oldfieldtype": "Table", 
+  "doctype": "DocField", 
+  "label": "Fields", 
+  "oldfieldname": "fields", 
+  "fieldname": "fields", 
+  "fieldtype": "Table", 
+  "options": "GL Mapper Detail"
+ }
 ]
\ No newline at end of file
diff --git a/utilities/doctype/gl_mapper_detail/gl_mapper_detail.txt b/utilities/doctype/gl_mapper_detail/gl_mapper_detail.txt
index fadf1a2..65315446 100644
--- a/utilities/doctype/gl_mapper_detail/gl_mapper_detail.txt
+++ b/utilities/doctype/gl_mapper_detail/gl_mapper_detail.txt
@@ -1,207 +1,162 @@
-# DocType, GL Mapper Detail
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:36:46',
-		'docstatus': 0,
-		'modified': '2012-03-27 14:36:46',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'autoname': u'GLMDetail.#####',
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'istable': 1,
-		'module': u'Utilities',
-		'name': '__common__',
-		'section_style': u'Tray',
-		'server_code_error': u' ',
-		'show_in_menu': 0,
-		'version': 4
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'fieldtype': u'Data',
-		'name': '__common__',
-		'oldfieldtype': u'Data',
-		'parent': u'GL Mapper Detail',
-		'parentfield': u'fields',
-		'parenttype': u'DocType',
-		'permlevel': 0
-	},
-
-	# DocType, GL Mapper Detail
-	{
-		'doctype': 'DocType',
-		'name': u'GL Mapper Detail'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'table_field',
-		'label': u'Table Field',
-		'oldfieldname': u'table_field'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'account',
-		'label': u'Account',
-		'oldfieldname': u'account',
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'debit',
-		'label': u'Debit',
-		'oldfieldname': u'debit',
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'credit',
-		'label': u'Credit',
-		'oldfieldname': u'credit',
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'cost_center',
-		'label': u'Cost Center',
-		'oldfieldname': u'cost_center',
-		'reqd': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'against',
-		'label': u'Against',
-		'oldfieldname': u'against',
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'remarks',
-		'label': u'Remarks',
-		'no_copy': 1,
-		'oldfieldname': u'remarks',
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'voucher_type',
-		'label': u'Voucher Type',
-		'oldfieldname': u'voucher_type',
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'voucher_no',
-		'label': u'Voucher No',
-		'oldfieldname': u'voucher_no',
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'description': u'The date at which current entry will get or has actually executed.',
-		'doctype': u'DocField',
-		'fieldname': u'posting_date',
-		'label': u'Posting Date',
-		'oldfieldname': u'posting_date',
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'description': u'The date at which current entry is made in system.',
-		'doctype': u'DocField',
-		'fieldname': u'transaction_date',
-		'label': u'Transaction Date',
-		'oldfieldname': u'transaction_date',
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'aging_date',
-		'label': u'Aging Date',
-		'oldfieldname': u'aging_date',
-		'reqd': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'fiscal_year',
-		'in_filter': 1,
-		'label': u'Fiscal Year',
-		'oldfieldname': u'fiscal_year',
-		'reqd': 1,
-		'search_index': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'against_voucher',
-		'label': u'Against Voucher',
-		'oldfieldname': u'against_voucher'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'against_voucher_type',
-		'label': u'Against Voucher Type',
-		'oldfieldname': u'against_voucher_type'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'company',
-		'in_filter': 1,
-		'label': u'Company',
-		'oldfieldname': u'company',
-		'search_index': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'is_opening',
-		'label': u'Is Opening',
-		'oldfieldname': u'is_opening'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'is_advance',
-		'label': u'Is Advance',
-		'oldfieldname': u'is_advance'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-03-27 14:36:46", 
+  "modified_by": "Administrator", 
+  "modified": "2012-03-27 14:36:46"
+ }, 
+ {
+  "section_style": "Tray", 
+  "istable": 1, 
+  "module": "Utilities", 
+  "server_code_error": " ", 
+  "doctype": "DocType", 
+  "autoname": "GLMDetail.#####", 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "show_in_menu": 0, 
+  "version": 4
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "GL Mapper Detail", 
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "fieldtype": "Data", 
+  "permlevel": 0, 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "GL Mapper Detail", 
+  "doctype": "DocType"
+ }, 
+ {
+  "oldfieldname": "table_field", 
+  "fieldname": "table_field", 
+  "doctype": "DocField", 
+  "label": "Table Field"
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Account", 
+  "oldfieldname": "account", 
+  "fieldname": "account", 
+  "reqd": 1
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Debit", 
+  "oldfieldname": "debit", 
+  "fieldname": "debit", 
+  "reqd": 1
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Credit", 
+  "oldfieldname": "credit", 
+  "fieldname": "credit", 
+  "reqd": 1
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Cost Center", 
+  "oldfieldname": "cost_center", 
+  "fieldname": "cost_center", 
+  "reqd": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Against", 
+  "oldfieldname": "against", 
+  "fieldname": "against", 
+  "reqd": 1
+ }, 
+ {
+  "no_copy": 1, 
+  "doctype": "DocField", 
+  "label": "Remarks", 
+  "oldfieldname": "remarks", 
+  "fieldname": "remarks", 
+  "reqd": 1
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Voucher Type", 
+  "oldfieldname": "voucher_type", 
+  "fieldname": "voucher_type", 
+  "reqd": 1
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Voucher No", 
+  "oldfieldname": "voucher_no", 
+  "fieldname": "voucher_no", 
+  "reqd": 1
+ }, 
+ {
+  "description": "The date at which current entry will get or has actually executed.", 
+  "doctype": "DocField", 
+  "label": "Posting Date", 
+  "oldfieldname": "posting_date", 
+  "fieldname": "posting_date", 
+  "reqd": 1
+ }, 
+ {
+  "description": "The date at which current entry is made in system.", 
+  "doctype": "DocField", 
+  "label": "Transaction Date", 
+  "oldfieldname": "transaction_date", 
+  "fieldname": "transaction_date", 
+  "reqd": 1
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Aging Date", 
+  "oldfieldname": "aging_date", 
+  "fieldname": "aging_date", 
+  "reqd": 1
+ }, 
+ {
+  "search_index": 0, 
+  "doctype": "DocField", 
+  "label": "Fiscal Year", 
+  "oldfieldname": "fiscal_year", 
+  "fieldname": "fiscal_year", 
+  "reqd": 1, 
+  "in_filter": 1
+ }, 
+ {
+  "oldfieldname": "against_voucher", 
+  "fieldname": "against_voucher", 
+  "doctype": "DocField", 
+  "label": "Against Voucher"
+ }, 
+ {
+  "oldfieldname": "against_voucher_type", 
+  "fieldname": "against_voucher_type", 
+  "doctype": "DocField", 
+  "label": "Against Voucher Type"
+ }, 
+ {
+  "search_index": 0, 
+  "doctype": "DocField", 
+  "label": "Company", 
+  "oldfieldname": "company", 
+  "fieldname": "company", 
+  "in_filter": 1
+ }, 
+ {
+  "oldfieldname": "is_opening", 
+  "fieldname": "is_opening", 
+  "doctype": "DocField", 
+  "label": "Is Opening"
+ }, 
+ {
+  "oldfieldname": "is_advance", 
+  "fieldname": "is_advance", 
+  "doctype": "DocField", 
+  "label": "Is Advance"
+ }
 ]
\ No newline at end of file
diff --git a/utilities/doctype/profile_control/profile_control.txt b/utilities/doctype/profile_control/profile_control.txt
index 3e6affe..7eaff7f 100644
--- a/utilities/doctype/profile_control/profile_control.txt
+++ b/utilities/doctype/profile_control/profile_control.txt
@@ -1,31 +1,24 @@
-# DocType, Profile Control
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:36:47',
-		'docstatus': 0,
-		'modified': '2012-03-27 14:36:47',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'issingle': 1,
-		'module': u'Utilities',
-		'name': '__common__',
-		'section_style': u'Simple',
-		'server_code_error': u' ',
-		'show_in_menu': 0,
-		'version': 12
-	},
-
-	# DocType, Profile Control
-	{
-		'doctype': 'DocType',
-		'name': u'Profile Control'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-03-27 14:36:47", 
+  "modified_by": "Administrator", 
+  "modified": "2012-03-27 14:36:47"
+ }, 
+ {
+  "section_style": "Simple", 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "module": "Utilities", 
+  "show_in_menu": 0, 
+  "version": 12, 
+  "server_code_error": " ", 
+  "doctype": "DocType", 
+  "issingle": 1
+ }, 
+ {
+  "name": "Profile Control", 
+  "doctype": "DocType"
+ }
 ]
\ No newline at end of file
diff --git a/utilities/doctype/question/question.txt b/utilities/doctype/question/question.txt
index 1173867..b63df41 100644
--- a/utilities/doctype/question/question.txt
+++ b/utilities/doctype/question/question.txt
@@ -1,158 +1,127 @@
-# DocType, Question
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:36:01',
-		'docstatus': 0,
-		'modified': '2012-03-27 14:36:01',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'allow_attach': 0,
-		'allow_trash': 1,
-		'autoname': u'QUES.#######',
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'in_create': 1,
-		'module': u'Utilities',
-		'name': '__common__',
-		'read_only': 1,
-		'section_style': u'Simple',
-		'server_code_error': u' ',
-		'show_in_menu': 0,
-		'version': 7
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'Question',
-		'parentfield': u'fields',
-		'parenttype': u'DocType',
-		'permlevel': 0
-	},
-
-	# These values are common for all DocPerm
-	{
-		'cancel': 1,
-		'create': 1,
-		'doctype': u'DocPerm',
-		'name': '__common__',
-		'parent': u'Question',
-		'parentfield': u'permissions',
-		'parenttype': u'DocType',
-		'permlevel': 0,
-		'read': 1,
-		'role': u'All',
-		'write': 1
-	},
-
-	# DocType, Question
-	{
-		'doctype': 'DocType',
-		'name': u'Question'
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'question',
-		'fieldtype': u'Text',
-		'label': u'Question',
-		'oldfieldname': u'question',
-		'oldfieldtype': u'Text'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'points',
-		'fieldtype': u'Int',
-		'hidden': 1,
-		'label': u'Points'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'answer',
-		'fieldtype': u'Text Editor',
-		'label': u'Answer',
-		'oldfieldname': u'answer',
-		'oldfieldtype': u'Text Editor'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'_user_tags',
-		'fieldtype': u'Data',
-		'hidden': 1,
-		'label': u'User Tags'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'tag_1',
-		'fieldtype': u'Link',
-		'label': u'Tag 1',
-		'oldfieldname': u'tag_1',
-		'oldfieldtype': u'Link',
-		'options': u'Question Tag',
-		'search_index': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'_users_voted',
-		'fieldtype': u'Text',
-		'label': u'Users Voted'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'tag_2',
-		'fieldtype': u'Link',
-		'label': u'Tag 2',
-		'oldfieldname': u'tag_2',
-		'oldfieldtype': u'Link',
-		'options': u'Question Tag',
-		'search_index': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'tag_3',
-		'fieldtype': u'Link',
-		'label': u'Tag 3',
-		'oldfieldname': u'tag_3',
-		'oldfieldtype': u'Link',
-		'options': u'Question Tag',
-		'search_index': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'file_list',
-		'fieldtype': u'Text',
-		'hidden': 1,
-		'label': u'File List',
-		'oldfieldname': u'file_list',
-		'oldfieldtype': u'Text'
-	}
-]
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-03-27 14:36:01", 
+  "modified_by": "Administrator", 
+  "modified": "2012-03-27 14:36:01"
+ }, 
+ {
+  "section_style": "Simple", 
+  "allow_attach": 0, 
+  "module": "Utilities", 
+  "allow_trash": 1, 
+  "server_code_error": " ", 
+  "in_create": 1, 
+  "read_only": 1, 
+  "autoname": "QUES.#######", 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "doctype": "DocType", 
+  "show_in_menu": 0, 
+  "version": 7
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Question", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "permlevel": 0, 
+  "parentfield": "fields"
+ }, 
+ {
+  "parent": "Question", 
+  "read": 1, 
+  "doctype": "DocPerm", 
+  "cancel": 1, 
+  "name": "__common__", 
+  "create": 1, 
+  "write": 1, 
+  "parenttype": "DocType", 
+  "role": "All", 
+  "permlevel": 0, 
+  "parentfield": "permissions"
+ }, 
+ {
+  "name": "Question", 
+  "doctype": "DocType"
+ }, 
+ {
+  "doctype": "DocPerm"
+ }, 
+ {
+  "oldfieldtype": "Text", 
+  "doctype": "DocField", 
+  "label": "Question", 
+  "oldfieldname": "question", 
+  "fieldname": "question", 
+  "fieldtype": "Text"
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Points", 
+  "fieldname": "points", 
+  "fieldtype": "Int", 
+  "hidden": 1
+ }, 
+ {
+  "oldfieldtype": "Text Editor", 
+  "doctype": "DocField", 
+  "label": "Answer", 
+  "oldfieldname": "answer", 
+  "fieldname": "answer", 
+  "fieldtype": "Text Editor"
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "User Tags", 
+  "fieldname": "_user_tags", 
+  "fieldtype": "Data", 
+  "hidden": 1
+ }, 
+ {
+  "search_index": 0, 
+  "doctype": "DocField", 
+  "label": "Tag 1", 
+  "oldfieldname": "tag_1", 
+  "fieldname": "tag_1", 
+  "fieldtype": "Link", 
+  "oldfieldtype": "Link", 
+  "options": "Question Tag"
+ }, 
+ {
+  "doctype": "DocField", 
+  "fieldname": "_users_voted", 
+  "fieldtype": "Text", 
+  "label": "Users Voted"
+ }, 
+ {
+  "search_index": 0, 
+  "doctype": "DocField", 
+  "label": "Tag 2", 
+  "oldfieldname": "tag_2", 
+  "fieldname": "tag_2", 
+  "fieldtype": "Link", 
+  "oldfieldtype": "Link", 
+  "options": "Question Tag"
+ }, 
+ {
+  "search_index": 0, 
+  "doctype": "DocField", 
+  "label": "Tag 3", 
+  "oldfieldname": "tag_3", 
+  "fieldname": "tag_3", 
+  "fieldtype": "Link", 
+  "oldfieldtype": "Link", 
+  "options": "Question Tag"
+ }, 
+ {
+  "oldfieldtype": "Text", 
+  "doctype": "DocField", 
+  "label": "File List", 
+  "oldfieldname": "file_list", 
+  "fieldname": "file_list", 
+  "fieldtype": "Text", 
+  "hidden": 1
+ }
+]
\ No newline at end of file
diff --git a/utilities/doctype/sms_control/sms_control.txt b/utilities/doctype/sms_control/sms_control.txt
index c69a34f..9523bc9 100644
--- a/utilities/doctype/sms_control/sms_control.txt
+++ b/utilities/doctype/sms_control/sms_control.txt
@@ -1,57 +1,44 @@
-# DocType, SMS Control
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:36:47',
-		'docstatus': 0,
-		'modified': '2012-03-27 14:36:47',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'in_create': 0,
-		'issingle': 1,
-		'module': u'Utilities',
-		'name': '__common__',
-		'section_style': u'Simple',
-		'server_code_error': u' ',
-		'show_in_menu': 0,
-		'version': 8
-	},
-
-	# These values are common for all DocPerm
-	{
-		'doctype': u'DocPerm',
-		'name': '__common__',
-		'parent': u'SMS Control',
-		'parentfield': u'permissions',
-		'parenttype': u'DocType',
-		'read': 1,
-		'role': u'System Manager'
-	},
-
-	# DocType, SMS Control
-	{
-		'doctype': 'DocType',
-		'name': u'SMS Control'
-	},
-
-	# DocPerm
-	{
-		'create': 1,
-		'doctype': u'DocPerm',
-		'permlevel': 0,
-		'write': 1
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm',
-		'permlevel': 1
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-03-27 14:36:47", 
+  "modified_by": "Administrator", 
+  "modified": "2012-03-27 14:36:47"
+ }, 
+ {
+  "section_style": "Simple", 
+  "in_create": 0, 
+  "module": "Utilities", 
+  "server_code_error": " ", 
+  "doctype": "DocType", 
+  "issingle": 1, 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "show_in_menu": 0, 
+  "version": 8
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "SMS Control", 
+  "read": 1, 
+  "doctype": "DocPerm", 
+  "parenttype": "DocType", 
+  "role": "System Manager", 
+  "parentfield": "permissions"
+ }, 
+ {
+  "name": "SMS Control", 
+  "doctype": "DocType"
+ }, 
+ {
+  "write": 1, 
+  "create": 1, 
+  "permlevel": 0, 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "permlevel": 1, 
+  "doctype": "DocPerm"
+ }
 ]
\ No newline at end of file
diff --git a/utilities/doctype/sms_log/sms_log.txt b/utilities/doctype/sms_log/sms_log.txt
index 55acd7d..455cfef 100644
--- a/utilities/doctype/sms_log/sms_log.txt
+++ b/utilities/doctype/sms_log/sms_log.txt
@@ -1,123 +1,94 @@
-# DocType, SMS Log
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:36:47',
-		'docstatus': 0,
-		'modified': '2012-03-27 14:36:47',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'autoname': u'SMSLOG/.########',
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'module': u'Utilities',
-		'name': '__common__',
-		'section_style': u'Simple',
-		'show_in_menu': 0,
-		'version': 3
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'SMS Log',
-		'parentfield': u'fields',
-		'parenttype': u'DocType',
-		'permlevel': 0
-	},
-
-	# These values are common for all DocPerm
-	{
-		'create': 0,
-		'doctype': u'DocPerm',
-		'name': '__common__',
-		'parent': u'SMS Log',
-		'parentfield': u'permissions',
-		'parenttype': u'DocType',
-		'permlevel': 0,
-		'read': 1,
-		'role': u'System Manager',
-		'write': 0
-	},
-
-	# DocType, SMS Log
-	{
-		'doctype': 'DocType',
-		'name': u'SMS Log'
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'column_break0',
-		'fieldtype': u'Column Break',
-		'width': u'50%'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'sender_name',
-		'fieldtype': u'Data',
-		'label': u'Sender Name'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'sent_on',
-		'fieldtype': u'Date',
-		'label': u'Sent On'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'receiver_list',
-		'fieldtype': u'Small Text',
-		'label': u'Receiver List'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'column_break1',
-		'fieldtype': u'Column Break',
-		'width': u'50%'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'no_of_requested_sms',
-		'fieldtype': u'Int',
-		'label': u'No of Requested SMS'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'no_of_sent_sms',
-		'fieldtype': u'Int',
-		'label': u'No of Sent SMS'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'message',
-		'fieldtype': u'Small Text',
-		'label': u'Message'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-03-27 14:36:47", 
+  "modified_by": "Administrator", 
+  "modified": "2012-03-27 14:36:47"
+ }, 
+ {
+  "section_style": "Simple", 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "module": "Utilities", 
+  "doctype": "DocType", 
+  "version": 3, 
+  "autoname": "SMSLOG/.########", 
+  "show_in_menu": 0
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "SMS Log", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "permlevel": 0, 
+  "parentfield": "fields"
+ }, 
+ {
+  "parent": "SMS Log", 
+  "read": 1, 
+  "name": "__common__", 
+  "create": 0, 
+  "doctype": "DocPerm", 
+  "write": 0, 
+  "parenttype": "DocType", 
+  "role": "System Manager", 
+  "permlevel": 0, 
+  "parentfield": "permissions"
+ }, 
+ {
+  "name": "SMS Log", 
+  "doctype": "DocType"
+ }, 
+ {
+  "doctype": "DocPerm"
+ }, 
+ {
+  "width": "50%", 
+  "fieldname": "column_break0", 
+  "fieldtype": "Column Break", 
+  "doctype": "DocField"
+ }, 
+ {
+  "doctype": "DocField", 
+  "fieldname": "sender_name", 
+  "fieldtype": "Data", 
+  "label": "Sender Name"
+ }, 
+ {
+  "doctype": "DocField", 
+  "fieldname": "sent_on", 
+  "fieldtype": "Date", 
+  "label": "Sent On"
+ }, 
+ {
+  "doctype": "DocField", 
+  "fieldname": "receiver_list", 
+  "fieldtype": "Small Text", 
+  "label": "Receiver List"
+ }, 
+ {
+  "width": "50%", 
+  "fieldname": "column_break1", 
+  "fieldtype": "Column Break", 
+  "doctype": "DocField"
+ }, 
+ {
+  "doctype": "DocField", 
+  "fieldname": "no_of_requested_sms", 
+  "fieldtype": "Int", 
+  "label": "No of Requested SMS"
+ }, 
+ {
+  "doctype": "DocField", 
+  "fieldname": "no_of_sent_sms", 
+  "fieldtype": "Int", 
+  "label": "No of Sent SMS"
+ }, 
+ {
+  "doctype": "DocField", 
+  "fieldname": "message", 
+  "fieldtype": "Small Text", 
+  "label": "Message"
+ }
 ]
\ No newline at end of file
diff --git a/utilities/doctype/sms_receiver/sms_receiver.txt b/utilities/doctype/sms_receiver/sms_receiver.txt
index a36b98a..8bf9352 100644
--- a/utilities/doctype/sms_receiver/sms_receiver.txt
+++ b/utilities/doctype/sms_receiver/sms_receiver.txt
@@ -1,69 +1,54 @@
-# DocType, SMS Receiver
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:36:47',
-		'docstatus': 0,
-		'modified': '2012-03-27 14:36:47',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'istable': 1,
-		'module': u'Utilities',
-		'name': '__common__',
-		'section_style': u'Tray',
-		'server_code_error': u' ',
-		'version': 2
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'fieldtype': u'Data',
-		'name': '__common__',
-		'oldfieldtype': u'Data',
-		'parent': u'SMS Receiver',
-		'parentfield': u'fields',
-		'parenttype': u'DocType',
-		'permlevel': 0
-	},
-
-	# DocType, SMS Receiver
-	{
-		'doctype': 'DocType',
-		'name': u'SMS Receiver'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'customer_name',
-		'label': u'Customer Name',
-		'oldfieldname': u'customer_name'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'receiver_name',
-		'label': u'Receiver Name',
-		'oldfieldname': u'receiver_name',
-		'width': u'350px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'mobile_no',
-		'label': u'Mobile No',
-		'oldfieldname': u'mobile_no',
-		'reqd': 1,
-		'width': u'200px'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-03-27 14:36:47", 
+  "modified_by": "Administrator", 
+  "modified": "2012-03-27 14:36:47"
+ }, 
+ {
+  "section_style": "Tray", 
+  "istable": 1, 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "module": "Utilities", 
+  "doctype": "DocType", 
+  "version": 2, 
+  "server_code_error": " "
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "SMS Receiver", 
+  "oldfieldtype": "Data", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "fieldtype": "Data", 
+  "permlevel": 0, 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "SMS Receiver", 
+  "doctype": "DocType"
+ }, 
+ {
+  "oldfieldname": "customer_name", 
+  "fieldname": "customer_name", 
+  "doctype": "DocField", 
+  "label": "Customer Name"
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Receiver Name", 
+  "oldfieldname": "receiver_name", 
+  "width": "350px", 
+  "fieldname": "receiver_name"
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Mobile No", 
+  "oldfieldname": "mobile_no", 
+  "width": "200px", 
+  "fieldname": "mobile_no", 
+  "reqd": 1
+ }
 ]
\ No newline at end of file
diff --git a/utilities/doctype/trash_control/trash_control.txt b/utilities/doctype/trash_control/trash_control.txt
index 3688342..1ecf9bc 100644
--- a/utilities/doctype/trash_control/trash_control.txt
+++ b/utilities/doctype/trash_control/trash_control.txt
@@ -1,32 +1,25 @@
-# DocType, Trash Control
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:36:47',
-		'docstatus': 0,
-		'modified': '2012-03-27 14:36:47',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'in_create': 1,
-		'issingle': 1,
-		'module': u'Utilities',
-		'name': '__common__',
-		'read_only': 1,
-		'section_style': u'Simple',
-		'server_code_error': u' ',
-		'version': 35
-	},
-
-	# DocType, Trash Control
-	{
-		'doctype': 'DocType',
-		'name': u'Trash Control'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-03-27 14:36:47", 
+  "modified_by": "Administrator", 
+  "modified": "2012-03-27 14:36:47"
+ }, 
+ {
+  "section_style": "Simple", 
+  "in_create": 1, 
+  "module": "Utilities", 
+  "server_code_error": " ", 
+  "doctype": "DocType", 
+  "issingle": 1, 
+  "read_only": 1, 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "version": 35
+ }, 
+ {
+  "name": "Trash Control", 
+  "doctype": "DocType"
+ }
 ]
\ No newline at end of file
diff --git a/utilities/page/calendar/calendar.txt b/utilities/page/calendar/calendar.txt
index 668c909..d8e30e4 100644
--- a/utilities/page/calendar/calendar.txt
+++ b/utilities/page/calendar/calendar.txt
@@ -1,28 +1,21 @@
-# Page, calendar
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-02-24 11:24:12',
-		'docstatus': 0,
-		'modified': '2012-02-24 11:24:12',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all Page
-	{
-		'doctype': 'Page',
-		'module': u'Utilities',
-		'name': '__common__',
-		'page_name': u'calendar',
-		'standard': u'Yes',
-		'title': u'Calendar'
-	},
-
-	# Page, calendar
-	{
-		'doctype': 'Page',
-		'name': u'calendar'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-02-24 11:24:12", 
+  "modified_by": "Administrator", 
+  "modified": "2012-02-24 11:24:12"
+ }, 
+ {
+  "name": "__common__", 
+  "title": "Calendar", 
+  "module": "Utilities", 
+  "doctype": "Page", 
+  "page_name": "calendar", 
+  "standard": "Yes"
+ }, 
+ {
+  "name": "calendar", 
+  "doctype": "Page"
+ }
 ]
\ No newline at end of file
diff --git a/utilities/page/markdown_reference/markdown_reference.txt b/utilities/page/markdown_reference/markdown_reference.txt
index 304f2e3..0418029 100644
--- a/utilities/page/markdown_reference/markdown_reference.txt
+++ b/utilities/page/markdown_reference/markdown_reference.txt
@@ -1,28 +1,21 @@
-# Page, markdown-reference
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-08-07 12:35:30',
-		'docstatus': 0,
-		'modified': '2012-08-07 12:35:30',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all Page
-	{
-		'doctype': 'Page',
-		'module': u'Utilities',
-		'name': '__common__',
-		'page_name': u'Markdown Reference',
-		'standard': u'Yes',
-		'title': u'Markdown Reference'
-	},
-
-	# Page, markdown-reference
-	{
-		'doctype': 'Page',
-		'name': u'markdown-reference'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-08-07 12:35:30", 
+  "modified_by": "Administrator", 
+  "modified": "2012-08-07 12:35:30"
+ }, 
+ {
+  "name": "__common__", 
+  "title": "Markdown Reference", 
+  "module": "Utilities", 
+  "doctype": "Page", 
+  "page_name": "Markdown Reference", 
+  "standard": "Yes"
+ }, 
+ {
+  "name": "markdown-reference", 
+  "doctype": "Page"
+ }
 ]
\ No newline at end of file
diff --git a/utilities/page/messages/messages.txt b/utilities/page/messages/messages.txt
index 4ea71b2..32fab17 100644
--- a/utilities/page/messages/messages.txt
+++ b/utilities/page/messages/messages.txt
@@ -1,28 +1,21 @@
-# Page, messages
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-02-24 11:21:57',
-		'docstatus': 0,
-		'modified': '2012-02-24 11:21:57',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all Page
-	{
-		'doctype': 'Page',
-		'module': u'Utilities',
-		'name': '__common__',
-		'page_name': u'messages',
-		'standard': u'Yes',
-		'title': u'Messages'
-	},
-
-	# Page, messages
-	{
-		'doctype': 'Page',
-		'name': u'messages'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-02-24 11:21:57", 
+  "modified_by": "Administrator", 
+  "modified": "2012-02-24 11:21:57"
+ }, 
+ {
+  "name": "__common__", 
+  "title": "Messages", 
+  "module": "Utilities", 
+  "doctype": "Page", 
+  "page_name": "messages", 
+  "standard": "Yes"
+ }, 
+ {
+  "name": "messages", 
+  "doctype": "Page"
+ }
 ]
\ No newline at end of file
diff --git a/utilities/page/question_view/question_view.txt b/utilities/page/question_view/question_view.txt
index 719b551..d647852 100644
--- a/utilities/page/question_view/question_view.txt
+++ b/utilities/page/question_view/question_view.txt
@@ -1,27 +1,20 @@
-# Page, question-view
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2011-05-04 11:09:50',
-		'docstatus': 0,
-		'modified': '2011-03-29 13:54:27',
-		'modified_by': 'Administrator',
-		'owner': 'Administrator'
-	},
-
-	# These values are common for all Page
-	{
-		'doctype': 'Page',
-		'module': 'Utilities',
-		'name': '__common__',
-		'page_name': 'Question View',
-		'standard': 'Yes'
-	},
-
-	# Page, question-view
-	{
-		'doctype': 'Page',
-		'name': 'question-view'
-	}
-]
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2011-05-04 11:09:50", 
+  "modified_by": "Administrator", 
+  "modified": "2011-03-29 13:54:27"
+ }, 
+ {
+  "name": "__common__", 
+  "module": "Utilities", 
+  "standard": "Yes", 
+  "page_name": "Question View", 
+  "doctype": "Page"
+ }, 
+ {
+  "name": "question-view", 
+  "doctype": "Page"
+ }
+]
\ No newline at end of file
diff --git a/utilities/page/questions/questions.txt b/utilities/page/questions/questions.txt
index 7b0f3cd..64aaa51 100644
--- a/utilities/page/questions/questions.txt
+++ b/utilities/page/questions/questions.txt
@@ -1,27 +1,20 @@
-# Page, questions
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2011-05-04 11:09:49',
-		'docstatus': 0,
-		'modified': '2011-03-29 13:53:57',
-		'modified_by': 'Administrator',
-		'owner': 'Administrator'
-	},
-
-	# These values are common for all Page
-	{
-		'doctype': 'Page',
-		'module': 'Utilities',
-		'name': '__common__',
-		'page_name': 'Questions',
-		'standard': 'Yes'
-	},
-
-	# Page, questions
-	{
-		'doctype': 'Page',
-		'name': 'questions'
-	}
-]
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2011-05-04 11:09:49", 
+  "modified_by": "Administrator", 
+  "modified": "2011-03-29 13:53:57"
+ }, 
+ {
+  "name": "__common__", 
+  "module": "Utilities", 
+  "standard": "Yes", 
+  "page_name": "Questions", 
+  "doctype": "Page"
+ }, 
+ {
+  "name": "questions", 
+  "doctype": "Page"
+ }
+]
\ No newline at end of file
diff --git a/utilities/page/todo/todo.txt b/utilities/page/todo/todo.txt
index 7310906..523bb43 100644
--- a/utilities/page/todo/todo.txt
+++ b/utilities/page/todo/todo.txt
@@ -1,28 +1,21 @@
-# Page, todo
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-02-23 13:59:03',
-		'docstatus': 0,
-		'modified': '2012-02-23 13:59:03',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all Page
-	{
-		'doctype': 'Page',
-		'module': u'Utilities',
-		'name': '__common__',
-		'page_name': u'todo',
-		'standard': u'Yes',
-		'title': u'To Do'
-	},
-
-	# Page, todo
-	{
-		'doctype': 'Page',
-		'name': u'todo'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-02-23 13:59:03", 
+  "modified_by": "Administrator", 
+  "modified": "2012-02-23 13:59:03"
+ }, 
+ {
+  "name": "__common__", 
+  "title": "To Do", 
+  "module": "Utilities", 
+  "doctype": "Page", 
+  "page_name": "todo", 
+  "standard": "Yes"
+ }, 
+ {
+  "name": "todo", 
+  "doctype": "Page"
+ }
 ]
\ No newline at end of file
diff --git a/utilities/page/trash/trash.txt b/utilities/page/trash/trash.txt
index a0a59ca..4be9065 100644
--- a/utilities/page/trash/trash.txt
+++ b/utilities/page/trash/trash.txt
@@ -1,72 +1,48 @@
-# Page, Trash
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2010-10-12 15:19:32',
-		'docstatus': 0,
-		'modified': '2010-12-30 11:44:36',
-		'modified_by': 'Administrator',
-		'owner': 'Administrator'
-	},
-
-	# These values are common for all Page
-	{
-		'doctype': 'Page',
-		'module': 'Utilities',
-		'name': '__common__',
-		'page_name': 'Trash',
-		'show_in_menu': 0,
-		'standard': 'Yes'
-	},
-
-	# These values are common for all Page Role
-	{
-		'doctype': 'Page Role',
-		'name': '__common__',
-		'parent': 'Trash',
-		'parentfield': 'roles',
-		'parenttype': 'Page'
-	},
-
-	# Page, Trash
-	{
-		'doctype': 'Page',
-		'name': 'Trash'
-	},
-
-	# Page Role
-	{
-		'doctype': 'Page Role',
-		'idx': 1,
-		'role': 'Administrator'
-	},
-
-	# Page Role
-	{
-		'doctype': 'Page Role',
-		'idx': 2,
-		'role': 'Sales Master Manager'
-	},
-
-	# Page Role
-	{
-		'doctype': 'Page Role',
-		'idx': 3,
-		'role': 'Material Master Manager'
-	},
-
-	# Page Role
-	{
-		'doctype': 'Page Role',
-		'idx': 4,
-		'role': 'Purchase Master Manager'
-	},
-
-	# Page Role
-	{
-		'doctype': 'Page Role',
-		'idx': 5,
-		'role': 'Accounts Manager'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2010-10-12 15:19:32", 
+  "modified_by": "Administrator", 
+  "modified": "2010-12-30 11:44:36"
+ }, 
+ {
+  "name": "__common__", 
+  "module": "Utilities", 
+  "show_in_menu": 0, 
+  "page_name": "Trash", 
+  "doctype": "Page", 
+  "standard": "Yes"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Trash", 
+  "doctype": "Page Role", 
+  "parenttype": "Page", 
+  "parentfield": "roles"
+ }, 
+ {
+  "name": "Trash", 
+  "doctype": "Page"
+ }, 
+ {
+  "role": "Administrator", 
+  "doctype": "Page Role"
+ }, 
+ {
+  "role": "Sales Master Manager", 
+  "doctype": "Page Role"
+ }, 
+ {
+  "role": "Material Master Manager", 
+  "doctype": "Page Role"
+ }, 
+ {
+  "role": "Purchase Master Manager", 
+  "doctype": "Page Role"
+ }, 
+ {
+  "role": "Accounts Manager", 
+  "doctype": "Page Role"
+ }
 ]
\ No newline at end of file
diff --git a/website/doctype/related_page/related_page.txt b/website/doctype/related_page/related_page.txt
index b107286..66c6377 100644
--- a/website/doctype/related_page/related_page.txt
+++ b/website/doctype/related_page/related_page.txt
@@ -1,49 +1,38 @@
-# DocType, Related Page
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-03-27 14:36:48',
-		'docstatus': 0,
-		'modified': '2012-03-27 14:36:48',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'istable': 1,
-		'module': u'Website',
-		'name': '__common__',
-		'section_style': u'Simple',
-		'show_in_menu': 0,
-		'version': 3
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'page',
-		'fieldtype': u'Link',
-		'label': u'Page',
-		'name': '__common__',
-		'options': u'Page',
-		'parent': u'Related Page',
-		'parentfield': u'fields',
-		'parenttype': u'DocType',
-		'permlevel': 0
-	},
-
-	# DocType, Related Page
-	{
-		'doctype': 'DocType',
-		'name': u'Related Page'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-03-27 14:36:48", 
+  "modified_by": "Administrator", 
+  "modified": "2012-03-27 14:36:48"
+ }, 
+ {
+  "section_style": "Simple", 
+  "istable": 1, 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "module": "Website", 
+  "doctype": "DocType", 
+  "version": 3, 
+  "show_in_menu": 0
+ }, 
+ {
+  "parent": "Related Page", 
+  "name": "__common__", 
+  "doctype": "DocField", 
+  "permlevel": 0, 
+  "parenttype": "DocType", 
+  "fieldname": "page", 
+  "fieldtype": "Link", 
+  "label": "Page", 
+  "options": "Page", 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "Related Page", 
+  "doctype": "DocType"
+ }, 
+ {
+  "doctype": "DocField"
+ }
 ]
\ No newline at end of file
diff --git a/website/doctype/style_settings/style_settings.txt b/website/doctype/style_settings/style_settings.txt
index d5a9e80..cd9d256 100644
--- a/website/doctype/style_settings/style_settings.txt
+++ b/website/doctype/style_settings/style_settings.txt
@@ -1,172 +1,137 @@
-# DocType, Style Settings
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-04-02 16:02:43',
-		'docstatus': 0,
-		'modified': '2012-05-01 15:58:16',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'_last_update': u'1330594969',
-		'allow_attach': 1,
-		'colour': u'White:FFF',
-		'description': u'Set your background color, font and image (tiled)',
-		'doctype': 'DocType',
-		'issingle': 1,
-		'max_attachments': 1,
-		'module': u'Website',
-		'name': '__common__',
-		'section_style': u'Simple',
-		'show_in_menu': 0,
-		'version': 1
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'Style Settings',
-		'parentfield': u'fields',
-		'parenttype': u'DocType'
-	},
-
-	# These values are common for all DocPerm
-	{
-		'doctype': u'DocPerm',
-		'name': '__common__',
-		'parent': u'Style Settings',
-		'parentfield': u'permissions',
-		'parenttype': u'DocType',
-		'read': 1,
-		'role': u'Website Manager'
-	},
-
-	# DocType, Style Settings
-	{
-		'doctype': 'DocType',
-		'name': u'Style Settings'
-	},
-
-	# DocPerm
-	{
-		'create': 1,
-		'doctype': u'DocPerm',
-		'permlevel': 0,
-		'write': 1
-	},
-
-	# DocPerm
-	{
-		'doctype': u'DocPerm',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'description': u'If image is selected, color will be ignored (attach first)',
-		'doctype': u'DocField',
-		'fieldname': u'background_image',
-		'fieldtype': u'Select',
-		'label': u'Background Image',
-		'options': u'attach_files:',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'description': u'Solid background color (default light gray)',
-		'doctype': u'DocField',
-		'fieldname': u'background_color',
-		'fieldtype': u'Data',
-		'label': u'Background Color',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldtype': u'Column Break',
-		'permlevel': 0,
-		'width': u'50%'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'font',
-		'fieldtype': u'Select',
-		'label': u'Font',
-		'options': u'\nHelvetica Neue\nLucida Grande\nVerdana\nArial\nGeorgia\nTahoma\nLato\nOpen Sans',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'font_size',
-		'fieldtype': u'Select',
-		'label': u'Font Size',
-		'options': u'\n12px\n13px\n14px\n15px\n16px',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'heading_font',
-		'fieldtype': u'Select',
-		'label': u'Heading Font',
-		'options': u'\nHelvetica Neue\nLucida Grande\nVerdana\nArial\nGeorgia\nTahoma\nLato\nOpen Sans',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'css',
-		'fieldtype': u'Section Break',
-		'label': u'CSS',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'description': u'add your own CSS (careful!)',
-		'doctype': u'DocField',
-		'fieldname': u'add_css',
-		'fieldtype': u'Code',
-		'label': u'Add CSS',
-		'permlevel': 0
-	},
-
-	# DocField
-	{
-		'colour': u'White:FFF',
-		'description': u'Auto generated',
-		'doctype': u'DocField',
-		'fieldname': u'custom_css',
-		'fieldtype': u'Code',
-		'label': u'Custom CSS',
-		'permlevel': 1
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'file_list',
-		'fieldtype': u'Text',
-		'hidden': 1,
-		'label': u'File List',
-		'no_copy': 1,
-		'permlevel': 0,
-		'print_hide': 1
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-04-02 16:02:43", 
+  "modified_by": "Administrator", 
+  "modified": "2012-05-01 15:58:16"
+ }, 
+ {
+  "section_style": "Simple", 
+  "allow_attach": 1, 
+  "module": "Website", 
+  "doctype": "DocType", 
+  "description": "Set your background color, font and image (tiled)", 
+  "issingle": 1, 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "_last_update": "1330594969", 
+  "show_in_menu": 0, 
+  "max_attachments": 1, 
+  "version": 1
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Style Settings", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Style Settings", 
+  "read": 1, 
+  "doctype": "DocPerm", 
+  "parenttype": "DocType", 
+  "role": "Website Manager", 
+  "parentfield": "permissions"
+ }, 
+ {
+  "name": "Style Settings", 
+  "doctype": "DocType"
+ }, 
+ {
+  "write": 1, 
+  "create": 1, 
+  "permlevel": 0, 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "permlevel": 1, 
+  "doctype": "DocPerm"
+ }, 
+ {
+  "description": "If image is selected, color will be ignored (attach first)", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Background Image", 
+  "permlevel": 0, 
+  "fieldname": "background_image", 
+  "fieldtype": "Select", 
+  "options": "attach_files:"
+ }, 
+ {
+  "description": "Solid background color (default light gray)", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Background Color", 
+  "fieldname": "background_color", 
+  "fieldtype": "Data", 
+  "permlevel": 0
+ }, 
+ {
+  "width": "50%", 
+  "doctype": "DocField", 
+  "fieldtype": "Column Break", 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "options": "\nHelvetica Neue\nLucida Grande\nVerdana\nArial\nGeorgia\nTahoma\nLato\nOpen Sans", 
+  "fieldname": "font", 
+  "fieldtype": "Select", 
+  "label": "Font", 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "options": "\n12px\n13px\n14px\n15px\n16px", 
+  "fieldname": "font_size", 
+  "fieldtype": "Select", 
+  "label": "Font Size", 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "options": "\nHelvetica Neue\nLucida Grande\nVerdana\nArial\nGeorgia\nTahoma\nLato\nOpen Sans", 
+  "fieldname": "heading_font", 
+  "fieldtype": "Select", 
+  "label": "Heading Font", 
+  "permlevel": 0
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "CSS", 
+  "fieldname": "css", 
+  "fieldtype": "Section Break", 
+  "permlevel": 0
+ }, 
+ {
+  "description": "add your own CSS (careful!)", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Add CSS", 
+  "fieldname": "add_css", 
+  "fieldtype": "Code", 
+  "permlevel": 0
+ }, 
+ {
+  "description": "Auto generated", 
+  "colour": "White:FFF", 
+  "doctype": "DocField", 
+  "label": "Custom CSS", 
+  "fieldname": "custom_css", 
+  "fieldtype": "Code", 
+  "permlevel": 1
+ }, 
+ {
+  "print_hide": 1, 
+  "no_copy": 1, 
+  "doctype": "DocField", 
+  "label": "File List", 
+  "fieldname": "file_list", 
+  "fieldtype": "Text", 
+  "hidden": 1, 
+  "permlevel": 0
+ }
 ]
\ No newline at end of file
diff --git a/website/doctype/top_bar_item/top_bar_item.txt b/website/doctype/top_bar_item/top_bar_item.txt
index bd74d84..6a4597e 100644
--- a/website/doctype/top_bar_item/top_bar_item.txt
+++ b/website/doctype/top_bar_item/top_bar_item.txt
@@ -1,75 +1,58 @@
-# DocType, Top Bar Item
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-04-02 16:02:43',
-		'docstatus': 0,
-		'modified': '2012-05-07 15:21:00',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all DocType
-	{
-		'colour': u'White:FFF',
-		'doctype': 'DocType',
-		'istable': 1,
-		'module': u'Website',
-		'name': '__common__',
-		'section_style': u'Simple',
-		'show_in_menu': 0,
-		'version': 1
-	},
-
-	# These values are common for all DocField
-	{
-		'doctype': u'DocField',
-		'name': '__common__',
-		'parent': u'Top Bar Item',
-		'parentfield': u'fields',
-		'parenttype': u'DocType',
-		'permlevel': 0
-	},
-
-	# DocType, Top Bar Item
-	{
-		'doctype': 'DocType',
-		'name': u'Top Bar Item'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'label',
-		'fieldtype': u'Data',
-		'label': u'Label',
-		'width': u'120px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'url',
-		'fieldtype': u'Data',
-		'label': u'URL',
-		'width': u'200px'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'target',
-		'fieldtype': u'Select',
-		'label': u'Target',
-		'options': u'\ntarget = "_blank"'
-	},
-
-	# DocField
-	{
-		'doctype': u'DocField',
-		'fieldname': u'parent_label',
-		'fieldtype': u'Select',
-		'label': u'Parent Label'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-04-02 16:02:43", 
+  "modified_by": "Administrator", 
+  "modified": "2012-05-07 15:21:00"
+ }, 
+ {
+  "section_style": "Simple", 
+  "istable": 1, 
+  "name": "__common__", 
+  "colour": "White:FFF", 
+  "module": "Website", 
+  "doctype": "DocType", 
+  "version": 1, 
+  "show_in_menu": 0
+ }, 
+ {
+  "name": "__common__", 
+  "parent": "Top Bar Item", 
+  "doctype": "DocField", 
+  "parenttype": "DocType", 
+  "permlevel": 0, 
+  "parentfield": "fields"
+ }, 
+ {
+  "name": "Top Bar Item", 
+  "doctype": "DocType"
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Label", 
+  "width": "120px", 
+  "fieldname": "label", 
+  "fieldtype": "Data"
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "URL", 
+  "width": "200px", 
+  "fieldname": "url", 
+  "fieldtype": "Data"
+ }, 
+ {
+  "doctype": "DocField", 
+  "label": "Target", 
+  "fieldname": "target", 
+  "fieldtype": "Select", 
+  "options": "\ntarget = \"_blank\""
+ }, 
+ {
+  "doctype": "DocField", 
+  "fieldname": "parent_label", 
+  "fieldtype": "Select", 
+  "label": "Parent Label"
+ }
 ]
\ No newline at end of file
diff --git a/website/page/website_home/website_home.txt b/website/page/website_home/website_home.txt
index a9af308..5fa93a1 100644
--- a/website/page/website_home/website_home.txt
+++ b/website/page/website_home/website_home.txt
@@ -1,28 +1,21 @@
-# Page, website-home
 [
-
-	# These values are common in all dictionaries
-	{
-		'creation': '2012-02-21 13:23:51',
-		'docstatus': 0,
-		'modified': '2012-02-21 13:23:51',
-		'modified_by': u'Administrator',
-		'owner': u'Administrator'
-	},
-
-	# These values are common for all Page
-	{
-		'doctype': 'Page',
-		'module': u'Website',
-		'name': '__common__',
-		'page_name': u'website-home',
-		'standard': u'Yes',
-		'title': u'Website Home'
-	},
-
-	# Page, website-home
-	{
-		'doctype': 'Page',
-		'name': u'website-home'
-	}
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-02-21 13:23:51", 
+  "modified_by": "Administrator", 
+  "modified": "2012-02-21 13:23:51"
+ }, 
+ {
+  "name": "__common__", 
+  "title": "Website Home", 
+  "module": "Website", 
+  "doctype": "Page", 
+  "page_name": "website-home", 
+  "standard": "Yes"
+ }, 
+ {
+  "name": "website-home", 
+  "doctype": "Page"
+ }
 ]
\ No newline at end of file
