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..db1ebb6 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", 
@@ -148,8 +149,7 @@
   "options": "Account", 
   "fieldname": "expense_head", 
   "fieldtype": "Link", 
-  "reqd": 1, 
-  "permlevel": 0
+  "reqd": 1
  }, 
  {
   "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.js b/accounts/search_criteria/itemwise_purchase_register/itemwise_purchase_register.js
index 8c5fc7f..7f47fc3 100644
--- a/accounts/search_criteria/itemwise_purchase_register/itemwise_purchase_register.js
+++ b/accounts/search_criteria/itemwise_purchase_register/itemwise_purchase_register.js
@@ -32,7 +32,7 @@
 
 	set_filter_property("Purchase Invoice", "From Posting Date", "in_first_page", 1);
 	set_filter_property("Purchase Invoice", "To Posting Date", "in_first_page", 1);
-	set_filter_property("Purchase Invoice", "Item", "in_first_page", 1);
+	set_filter_property("Purchase Invoice Item", "Item", "in_first_page", 1);
 	
 	set_filter_property("Purchase Invoice", "From Posting Date", 
 		"report_default", sys_defaults.year_start_date);
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.js b/accounts/search_criteria/itemwise_sales_register/itemwise_sales_register.js
index 25c8954..b52b472 100755
--- a/accounts/search_criteria/itemwise_sales_register/itemwise_sales_register.js
+++ b/accounts/search_criteria/itemwise_sales_register/itemwise_sales_register.js
@@ -26,13 +26,13 @@
 	for(var i=0;i<filter_list_main.length;i++) {
 		set_filter_property("Sales Invoice", filter_list_main[i], "filter_hide", 0);
 	}
-	filter_list_item = ["Item", "item Group", "Brand Name", "Cost Center"]
+	filter_list_item = ["Item", "Item Group", "Brand Name", "Cost Center"]
 	for(var i=0;i<filter_list_item.length;i++) {
 		set_filter_property("Sales Invoice Item", filter_list_item[i], "filter_hide", 0);
 	}
 	set_filter_property("Sales Invoice", "From Posting Date", "in_first_page", 1);
 	set_filter_property("Sales Invoice", "To Posting Date", "in_first_page", 1);
-	set_filter_property("Sales Invoice", "Item", "in_first_page", 1);
+	set_filter_property("Sales Invoice Item", "Item", "in_first_page", 1);
 	
 	set_filter_property("Sales Invoice", "From Posting Date", 
 		"report_default", sys_defaults.year_start_date);
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..3ac277b
--- /dev/null
+++ b/manufacturing/doctype/production_order/production_order.js
@@ -0,0 +1,113 @@
+// 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) {
+	erpnext.hide_naming_series();
+	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..3ba368e 100644
--- a/production/doctype/production_order/production_order.py
+++ b/manufacturing/doctype/production_order/production_order.py
@@ -33,23 +33,6 @@
 		self.doc = doc
 		self.doclist = doclist
 
-
-	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
-
-
 	def validate(self):
 		if self.doc.production_item :
 			item_detail = sql("select name from `tabItem` where name = '%s' and docstatus != 2"
@@ -59,8 +42,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 +55,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 +127,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..0f94d4e
--- /dev/null
+++ b/manufacturing/doctype/production_order/production_order.txt
@@ -0,0 +1,203 @@
+[
+ {
+  "owner": "Administrator", 
+  "docstatus": 0, 
+  "creation": "2012-12-20 14:31:18", 
+  "modified_by": "Administrator", 
+  "modified": "2012-12-20 15:50:43"
+ }, 
+ {
+  "is_submittable": 1, 
+  "autoname": "naming_series:", 
+  "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"
+ }, 
+ {
+  "default": "PRO", 
+  "doctype": "DocField", 
+  "label": "Series", 
+  "fieldname": "naming_series", 
+  "fieldtype": "Select", 
+  "reqd": 1, 
+  "options": "\nPRO"
+ }, 
+ {
+  "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": "Manufactured quantity will be updated 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 Stock Entry of type Manufacture/Repack", 
+  "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"
+ }, 
+ {
+  "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..5880448
--- /dev/null
+++ b/patches/december_2012/production_cleanup.py
@@ -0,0 +1,51 @@
+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")
+	
+	modules_list = webnotes.conn.get_global('modules_list')
+	if modules_list:
+		webnotes.conn.set_global("modules_list", 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/production_order_naming_series.py b/patches/december_2012/production_order_naming_series.py
new file mode 100644
index 0000000..df011cb
--- /dev/null
+++ b/patches/december_2012/production_order_naming_series.py
@@ -0,0 +1,15 @@
+import webnotes
+
+def execute():
+	from webnotes.utils import cstr
+	from webnotes.model.code import get_obj
+	
+	fy_list = webnotes.conn.sql("""select name from `tabFiscal Year` 
+		where docstatus < 2 order by year_start_date desc""")
+	series_list = []
+	for fy in fy_list:
+		series_list.append("PRO/" + cstr(fy[0][2:5]) + cstr(fy[0][7:9]) + "/")
+	
+	naming_series_obj = get_obj("Naming Series")
+	naming_series_obj.doc.user_must_always_select = 1
+	naming_series_obj.set_series_for("Production Order", series_list)
\ 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..728e80a
--- /dev/null
+++ b/patches/december_2012/stock_entry_cleanup.py
@@ -0,0 +1,75 @@
+import webnotes
+def execute():
+	# removed following fields
+	webnotes.reload_doc("stock", "doctype", "stock_entry")
+	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/november_2012/production_order_patch.py b/patches/november_2012/production_order_patch.py
index 4bc0912..e64af59 100644
--- a/patches/november_2012/production_order_patch.py
+++ b/patches/november_2012/production_order_patch.py
@@ -1,12 +1,9 @@
 def execute():
 	import webnotes
 	
-	webnotes.reload_doc("production", "doctype", "production_order")
+	webnotes.reload_doc("manufacturing", "doctype", "production_order")
 	webnotes.reload_doc("stock", "doctype", "stock_entry")
 	
-	webnotes.conn.sql("""update `tabProduction Order` 
-		set use_multi_level_bom = if(consider_sa_items='Yes', 0, 1)""")
-		
 	webnotes.conn.sql("""update `tabStock Entry` 
 		set use_multi_level_bom = if(consider_sa_items_as_raw_materials='Yes', 0, 1)""")
 	
\ No newline at end of file
diff --git a/patches/patch_list.py b/patches/patch_list.py
index 090bbc9..86bb188 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,12 @@
 		'patch_module': 'patches.december_2012',
 		'patch_file': 'remove_quotation_next_contact',
 	},
+	{
+		'patch_module': 'patches.december_2012',
+		'patch_file': 'stock_entry_cleanup',
+	},
+	{
+		'patch_module': 'patches.december_2012',
+		'patch_file': 'production_order_naming_series',
+	},
 ]
\ 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 45cc754..37554a2 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',
@@ -64,7 +64,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.css b/public/js/startup.css
index 9b17bec..c367cbb 100644
--- a/public/js/startup.css
+++ b/public/js/startup.css
@@ -69,7 +69,7 @@
 .small-module-icons-hr{ background-position: 0 -330px; width: 17px; height: 14px; margin-top: -1px; } 
 .small-module-icons-kb{ background-position: 0 -394px; width: 10px; height: 17px; margin-top: -2px; margin-bottom: -2px; } 
 .small-module-icons-messages{ background-position: 0 -461px; width: 17px; height: 11px; } 
-.small-module-icons-production{ background-position: 0 -522px; width: 17px; height: 14px; margin-top: -1px; } 
+.small-module-icons-manufacturing{ background-position: 0 -522px; width: 17px; height: 14px; margin-top: -1px; } 
 .small-module-icons-projects{ background-position: 0 -586px; width: 17px; height: 10px; } 
 .small-module-icons-buying{ background-position: 0 -646px; width: 17px; height: 17px; margin-top: -2px; margin-bottom: -2px; } 
 .small-module-icons-setup{ background-position: 0 -713px; width: 16px; height: 17px; margin-top: -2px; margin-bottom: -2px; } 
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..8e58e9a 100644
--- a/stock/doctype/stock_entry/stock_entry.js
+++ b/stock/doctype/stock_entry/stock_entry.js
@@ -14,81 +14,77 @@
 // 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(this.frm.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) {
+	disable_from_warehouse = inList(["Material Receipt", "Sales Return"], doc.purpose);
+	disable_to_warehouse = inList(["Material Issue", "Purchase Return"], doc.purpose)
+	
+	cur_frm.toggle_enable("from_warehouse", !disable_from_warehouse);
+	cur_frm.toggle_enable("to_warehouse", !disable_to_warehouse);
+		
+	cur_frm.fields_dict["mtn_details"].grid.set_column_disp("s_warehouse", !disable_from_warehouse);
+	cur_frm.fields_dict["mtn_details"].grid.set_column_disp("t_warehouse", !disable_to_warehouse);
+	
 	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 +96,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 +104,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 +189,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 +201,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 +209,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..7f2a23e 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,250 @@
 		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 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)
+							
+			if d.s_warehouse == d.t_warehouse:
+				msgprint(_("Source and Target Warehouse cannot be same"), 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 +297,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 +318,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 +407,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 +424,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 +489,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
