desk.min.js?ver=1505824993.0:1565 Traceback (most recent call last):


 "/home/frappe/frappe-bench/apps/frappe/frappe/app.py", line 57, in application

response = frappe.handler.handle()


 "/home/frappe/frappe-bench/apps/frappe/frappe/handler.py", line 22, in handle

data = execute_cmd(cmd)


 "/home/frappe/frappe-bench/apps/frappe/frappe/handler.py", line 53, in execute_cmd

return frappe.call(method, **frappe.form_dict)


 "/home/frappe/frappe-bench/apps/frappe/frappe/__init__.py", line 923, in call

return fn(*args, **newargs)


 "/home/frappe/frappe-bench/apps/frappe/frappe/model/mapper.py", line 27, in make_mapped_doc

return method(source_name)


 "/home/frappe/frappe-bench/apps/erpnext/erpnext/selling/doctype/sales_order/sales_order.py", line 569, in make_sales_invoice

}, target_doc, postprocess, ignore_permissions=ignore_permissions)


 "/home/frappe/frappe-bench/apps/frappe/frappe/model/mapper.py", line 110, in get_mapped_doc

postprocess(source_doc, target_doc)


 "/home/frappe/frappe-bench/apps/erpnext/erpnext/selling/doctype/sales_order/sales_order.py", line 516, in postprocess

set_missing_values(source, target)


 "/home/frappe/frappe-bench/apps/erpnext/erpnext/selling/doctype/sales_order/sales_order.py", line 525, in set_missing_values

target.run_method("calculate_taxes_and_totals")


 "/home/frappe/frappe-bench/apps/frappe/frappe/model/document.py", line 671, in run_method

out = Document.hook(fn)(self, *args, **kwargs)


 "/home/frappe/frappe-bench/apps/frappe/frappe/model/document.py", line 892, in composer

return composed(self, method, *args, **kwargs)


 "/home/frappe/frappe-bench/apps/frappe/frappe/model/document.py", line 875, in runner

add_to_return_value(self, fn(self, *args, **kwargs))


 "/home/frappe/frappe-bench/apps/frappe/frappe/model/document.py", line 665, in <lambda>

fn = lambda self, *args, **kwargs: getattr(self, method)(*args, **kwargs)


 "/home/frappe/frappe-bench/apps/erpnext/erpnext/controllers/accounts_controller.py", line 88, in calculate_taxes_and_totals

calculate_taxes_and_totals(self)


 "/home/frappe/frappe-bench/apps/erpnext/erpnext/controllers/taxes_and_totals.py", line 15, in __init__

self.calculate()


 "/home/frappe/frappe-bench/apps/erpnext/erpnext/controllers/taxes_and_totals.py", line 19, in calculate

self._calculate()


 "/home/frappe/frappe-bench/apps/erpnext/erpnext/controllers/taxes_and_totals.py", line 38, in _calculate

self.calculate_totals()


 "/home/frappe/frappe-bench/apps/erpnext/erpnext/controllers/taxes_and_totals.py", line 303, in calculate_totals

self._set_in_company_currency(self.doc, ["total_taxes_and_charges", "rounding_adjustment"])


 "/home/frappe/frappe-bench/apps/erpnext/erpnext/controllers/taxes_and_totals.py", line 81, in _set_in_company_currency

val = flt(flt(doc.get(f), doc.precision(f)) * self.doc.conversion_rate, doc.precision("base_" + f))


 "/home/frappe/frappe-bench/apps/frappe/frappe/model/base_document.py", line 692, in precision

if df.fieldtype in ("Currency", "Float", "Percent"):
AttributeError: 'NoneType' object has no attribute 'fieldtype'"
Traceback (most recent call last):


 "/usr/lib/python3.8/site-packages/lutris/gui/application.py", line 317, in do_command_line

self.set_tray_icon()


 "/usr/lib/python3.8/site-packages/lutris/gui/application.py", line 473, in set_tray_icon

self.tray = LutrisStatusIcon(application=self)


 "/usr/lib/python3.8/site-packages/lutris/gui/widgets/status_icon.py", line 20, in __init__

self.icon.set_menu(self.menu)
AttributeError: 'LutrisTray' object has no attribute 'set_menu'
