## Description of the issue
Upgrading to v13 is falling due to "DocType POS Inv…oice not found" error
## Context information (for bug reports)
**Output of `bench version`**
```
erpnext 13.0.0
frappe 13.0.0
Traceback (most recent call last):
File "/usr/lib64/python3.7/runpy.py", line 193, in _run_module_as_main
"__main__", mod_spec)
File "/usr/lib64/python3.7/runpy.py", line 85, in _run_code
exec(code, run_globals)
File "/opt/bench/erpnext/apps/frappe/frappe/utils/bench_helper.py", line 101, in <module>
main()
File "/opt/bench/erpnext/apps/frappe/frappe/utils/bench_helper.py", line 18, in main
click.Group(commands=commands)(prog_name='bench')
File "/opt/bench/erpnext/env/lib/python3.7/site-packages/click/core.py", line 764, in __call__
return self.main(*args, **kwargs)
File "/opt/bench/erpnext/env/lib/python3.7/site-packages/click/core.py", line 717, in main
rv = self.invoke(ctx)
File "/opt/bench/erpnext/env/lib/python3.7/site-packages/click/core.py", line 1137, in invoke
return _process_result(sub_ctx.command.invoke(sub_ctx))
File "/opt/bench/erpnext/env/lib/python3.7/site-packages/click/core.py", line 1137, in invoke
return _process_result(sub_ctx.command.invoke(sub_ctx))
File "/opt/bench/erpnext/env/lib/python3.7/site-packages/click/core.py", line 956, in invoke
return ctx.invoke(self.callback, **ctx.params)
File "/opt/bench/erpnext/env/lib/python3.7/site-packages/click/core.py", line 555, in invoke
return callback(*args, **kwargs)
File "/opt/bench/erpnext/apps/frappe/frappe/commands/utils.py", line 683, in get_version
app_hooks = frappe.get_module(m + ".hooks")
File "/opt/bench/erpnext/apps/frappe/frappe/__init__.py", line 910, in get_module
return importlib.import_module(modulename)
File "/opt/bench/erpnext/env/lib64/python3.7/importlib/__init__.py", line 127, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
File "<frozen importlib._bootstrap>", line 1006, in _gcd_import
File "<frozen importlib._bootstrap>", line 983, in _find_and_load
File "<frozen importlib._bootstrap>", line 965, in _find_and_load_unlocked
ModuleNotFoundError: No module named 'xlrd.hooks'
```
## Steps to reproduce the issue
1. bench switch-to-branch version-13 frappe erpnext --upgrade
### Stacktrace / full error message
```
Executing erpnext.patches.v13_0.create_uae_pos_invoice_fields in erp.hakengineering.org (_c5b6d1c07f7eafbe)
Traceback (most recent call last):
File "/usr/lib64/python3.7/runpy.py", line 193, in _run_module_as_main
"__main__", mod_spec)
File "/usr/lib64/python3.7/runpy.py", line 85, in _run_code
exec(code, run_globals)
File "/opt/bench/erpnext/apps/frappe/frappe/utils/bench_helper.py", line 101, in <module>
main()
File "/opt/bench/erpnext/apps/frappe/frappe/utils/bench_helper.py", line 18, in main
click.Group(commands=commands)(prog_name='bench')
File "/opt/bench/erpnext/env/lib/python3.7/site-packages/click/core.py", line 764, in __call__
return self.main(*args, **kwargs)
File "/opt/bench/erpnext/env/lib/python3.7/site-packages/click/core.py", line 717, in main
rv = self.invoke(ctx)
File "/opt/bench/erpnext/env/lib/python3.7/site-packages/click/core.py", line 1137, in invoke
return _process_result(sub_ctx.command.invoke(sub_ctx))
File "/opt/bench/erpnext/env/lib/python3.7/site-packages/click/core.py", line 1137, in invoke
return _process_result(sub_ctx.command.invoke(sub_ctx))
File "/opt/bench/erpnext/env/lib/python3.7/site-packages/click/core.py", line 956, in invoke
return ctx.invoke(self.callback, **ctx.params)
File "/opt/bench/erpnext/env/lib/python3.7/site-packages/click/core.py", line 555, in invoke
return callback(*args, **kwargs)
File "/opt/bench/erpnext/env/lib/python3.7/site-packages/click/decorators.py", line 17, in new_func
return f(get_current_context(), *args, **kwargs)
File "/opt/bench/erpnext/apps/frappe/frappe/commands/__init__.py", line 27, in _func
ret = f(frappe._dict(ctx.obj), *args, **kwargs)
File "/opt/bench/erpnext/apps/frappe/frappe/commands/site.py", line 300, in migrate
skip_search_index=skip_search_index
File "/opt/bench/erpnext/apps/frappe/frappe/migrate.py", line 67, in migrate
frappe.modules.patch_handler.run_all(skip_failing)
File "/opt/bench/erpnext/apps/frappe/frappe/modules/patch_handler.py", line 41, in run_all
run_patch(patch)
File "/opt/bench/erpnext/apps/frappe/frappe/modules/patch_handler.py", line 30, in run_patch
if not run_single(patchmodule = patch):
File "/opt/bench/erpnext/apps/frappe/frappe/modules/patch_handler.py", line 71, in run_single
return execute_patch(patchmodule, method, methodargs)
File "/opt/bench/erpnext/apps/frappe/frappe/modules/patch_handler.py", line 91, in execute_patch
frappe.get_attr(patchmodule.split()[0] + ".execute")()
File "/opt/bench/erpnext/apps/erpnext/erpnext/patches/v13_0/create_uae_pos_invoice_fields.py", line 14, in execute
make_custom_fields()
File "/opt/bench/erpnext/apps/erpnext/erpnext/regional/united_arab_emirates/setup.py", line 130, in make_custom_fields
create_custom_fields(custom_fields)
File "/opt/bench/erpnext/apps/frappe/frappe/custom/doctype/custom_field/custom_field.py", line 151, in create_custom_fields
create_custom_field(doctype, df, ignore_validate=ignore_validate)
File "/opt/bench/erpnext/apps/frappe/frappe/custom/doctype/custom_field/custom_field.py", line 135, in create_custom_field
custom_field.insert()
File "/opt/bench/erpnext/apps/frappe/frappe/model/document.py", line 230, in insert
self.run_method("before_insert")
File "/opt/bench/erpnext/apps/frappe/frappe/model/document.py", line 847, in run_method
out = Document.hook(fn)(self, *args, **kwargs)
File "/opt/bench/erpnext/apps/frappe/frappe/model/document.py", line 1136, in composer
return composed(self, method, *args, **kwargs)
File "/opt/bench/erpnext/apps/frappe/frappe/model/document.py", line 1119, in runner
add_to_return_value(self, fn(self, *args, **kwargs))
File "/opt/bench/erpnext/apps/frappe/frappe/model/document.py", line 841, in <lambda>
fn = lambda self, *args, **kwargs: getattr(self, method)(*args, **kwargs)
File "/opt/bench/erpnext/apps/frappe/frappe/custom/doctype/custom_field/custom_field.py", line 36, in before_insert
meta = frappe.get_meta(self.dt, cached=False)
File "/opt/bench/erpnext/apps/frappe/frappe/__init__.py", line 852, in get_meta
return frappe.model.meta.get_meta(doctype, cached=cached)
File "/opt/bench/erpnext/apps/frappe/frappe/model/meta.py", line 43, in get_meta
return load_meta(doctype)
File "/opt/bench/erpnext/apps/frappe/frappe/model/meta.py", line 46, in load_meta
return Meta(doctype)
File "/opt/bench/erpnext/apps/frappe/frappe/model/meta.py", line 83, in __init__
super(Meta, self).__init__("DocType", doctype)
File "/opt/bench/erpnext/apps/frappe/frappe/model/document.py", line 112, in __init__
self.load_from_db()
File "/opt/bench/erpnext/apps/frappe/frappe/model/meta.py", line 88, in load_from_db
super(Meta, self).load_from_db()
File "/opt/bench/erpnext/apps/frappe/frappe/model/document.py", line 155, in load_from_db
frappe.throw(_("{0} {1} not found").format(_(self.doctype), self.name), frappe.DoesNotExistError)
File "/opt/bench/erpnext/apps/frappe/frappe/__init__.py", line 424, in throw
msgprint(msg, raise_exception=exc, title=title, indicator='red', is_minimizable=is_minimizable, wide=wide, as_list=as_list)
File "/opt/bench/erpnext/apps/frappe/frappe/__init__.py", line 403, in msgprint
_raise_exception()
File "/opt/bench/erpnext/apps/frappe/frappe/__init__.py", line 357, in _raise_exception
raise raise_exception(msg)
frappe.exceptions.DoesNotExistError: DocType POS Invoice not found
```
## Additional information
OS version / distribution, `ERPNext` install method, etc.