Merge branch 'shf_rename' of github.com:webnotes/erpnext into shf_rename
diff --git a/erpnext/hr/search_criteria/salary_register/salary_register.py b/erpnext/hr/search_criteria/salary_register/salary_register.py
index 9b9d5d4..875c7db 100644
--- a/erpnext/hr/search_criteria/salary_register/salary_register.py
+++ b/erpnext/hr/search_criteria/salary_register/salary_register.py
@@ -19,13 +19,14 @@
   if not sal_slips_ids == '': sal_slips_ids +=","
   sal_slips_ids+="'%s'"%r[col_idx['ID']]
 
-earn_heads =[i[0] for i in sql("select distinct e_type from `tabSalary Slip Earning` where parent in (%s)"%sal_slips_ids)]
-ded_heads =[i[0] for i in sql("select distinct d_type from `tabSalary Slip Deduction` where parent in (%s)"%sal_slips_ids)]
+earn_heads, ded_heads = [], []
+if res:
+  earn_heads =[i[0] for i in sql("select distinct e_type from `tabSalary Slip Earning` where parent in (%s)"%sal_slips_ids)]
+  ded_heads =[i[0] for i in sql("select distinct d_type from `tabSalary Slip Deduction` where parent in (%s)"%sal_slips_ids)]
 
 col=[]
-
 for e in earn_heads:
-  l = (len(e)*9) 
+  l = (len(cstr(e))*9) 
   if l < 150 :
     col_width = '150px'
   else:
@@ -35,9 +36,8 @@
 col.append(['Arrear Amount','Currency','150px',''])
 col.append(['Encashment Amount','Currency','170px',''])
 col.append(['Gross Pay','Currency','150px',''])
-
 for d in ded_heads:
-  l = (len(d)*9) 
+  l = (len(cstr(d))*9) 
   if l < 150 : col_width = '150px'
   else:  col_width = '%spx'%(l)
   col.append([d,'Currency',col_width,''])
@@ -54,7 +54,6 @@
 
 grand_tot = 0
 for r in res:
-
   for i in range(6,len(colnames)):
     if colnames[i] not in ('Arrear Amount','Encashment Amount','Net Pay','Gross Pay','Total Deduction'):
       amt = sql("select e_modified_amount from `tabSalary Slip Earning` where e_type = '%s' and parent = '%s'"%(colnames[i],r[0]))
@@ -65,7 +64,6 @@
       
     else:
       fld_nm = cstr(colnames[i]).lower().replace(' ','_')
-      errprint(fld_nm)
       tot = sql("select %s from `tabSalary Slip` where name ='%s'"%(fld_nm,r[0]))
       tot = tot and flt(tot[0][0]) or 0
       if colnames[i] == 'Net Pay':
@@ -75,4 +73,4 @@
 gt_row = ['' for i in range(len(colnames))]
 gt_row[col_idx['Employee Name']] = '<b>Grand Totals</b>'
 gt_row[col_idx['Net Pay']-1] = fmt_money(grand_tot)
-res.append(gt_row)
+res.append(gt_row)
\ No newline at end of file
diff --git a/erpnext/patches/may_2012/reload_so_pending_items.py b/erpnext/patches/may_2012/reload_so_pending_items.py
new file mode 100644
index 0000000..8c9aee7
--- /dev/null
+++ b/erpnext/patches/may_2012/reload_so_pending_items.py
@@ -0,0 +1,8 @@
+def execute():
+	import webnotes
+	from webnotes.model import delete_doc
+	delete_doc("Search Criteria", "sales_order_pending_items1")
+	
+	webnotes.conn.sql("update `tabSearch Criteria` set module = 'Selling' where module = 'CRM'")
+	from webnotes.modules import reload_doc
+	reload_doc('selling', 'search_criteria', 'sales_order_pending_items')
\ No newline at end of file
diff --git a/erpnext/patches/patch_list.py b/erpnext/patches/patch_list.py
index e3eca5a..b2983b5 100644
--- a/erpnext/patches/patch_list.py
+++ b/erpnext/patches/patch_list.py
@@ -357,5 +357,10 @@
 		'patch_file': 'std_pf_readonly',
 		'description': 'Make standard print formats readonly for system manager'
 	},
+	{
+		'patch_module': 'patches.may_2012',
+		'patch_file': 'reload_so_pending_items',
+		'description': 'reload so pending items'
+	},
 
-]
+]
\ No newline at end of file
diff --git a/erpnext/selling/search_criteria/sales_order_pending_items/sales_order_pending_items.txt b/erpnext/selling/search_criteria/sales_order_pending_items/sales_order_pending_items.txt
index 036d689..fc9f7bb 100644
--- a/erpnext/selling/search_criteria/sales_order_pending_items/sales_order_pending_items.txt
+++ b/erpnext/selling/search_criteria/sales_order_pending_items/sales_order_pending_items.txt
@@ -1,37 +1,37 @@
+# Search Criteria, sales_order_pending_items
 [
+
+	# These values are common in all dictionaries
 	{
-		'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`.billed_qty, 0)) AS "Qty To Bill"\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': '(`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"',
-		'add_tab': None,
-		'columns': 'Sales Order\x01ID,Sales Order\x01Sales Order Date,Sales Order\x01Customer,Sales Order\x01Customer Name,Sales Order Item\x01Item Code,Sales Order Item\x01Item Name,Sales Order Item\x01Description,Sales Order Item\x01Quantity,Sales Order Item\x01Delivered Qty,Sales Order Item\x01Billed Qty',
-		'creation': '2011-05-09 11:04:19',
-		'criteria_name': 'Sales Order Pending Items',
-		'custom_query': '',
-		'description': 'Sales Order Pending Items',
-		'dis_filters': None,
-		'disabled': None,
-		'doc_type': 'Sales Order Item',
+		'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': "{'Sales Order\x01Submitted':1,'Sales Order\x01Status':'','Sales Order\x01Fiscal Year':''}",
-		'graph_series': None,
-		'graph_values': None,
-		'group_by': None,
-		'idx': None,
-		'modified': '2011-05-09 11:08:05',
-		'modified_by': 'Administrator',
-		'module': 'CRM',
-		'name': 'sales_order_pending_items',
-		'owner': 'Administrator',
+		'filters': u'{"Sales Order\\u0001Submitted":1,"Sales Order\\u0001Fiscal Year":[],"Sales Order\\u0001Status":[]}',
+		'module': u'Selling',
+		'name': '__common__',
 		'page_len': 50,
-		'parent': None,
-		'parent_doc_type': 'Sales Order',
-		'parentfield': None,
-		'parenttype': None,
-		'report_script': None,
-		'server_script': None,
-		'sort_by': '`tabSales Order`.`name`',
-		'sort_order': 'DESC',
-		'standard': 'Yes'
+		'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'
 	}
-]
+]
\ No newline at end of file