I Have the same problem
Error
pymysql.err.InternalError: (1054, “Unknown column ‘pricing_rules’ in ‘field list’”)
frappe@erpnext:~/frappe-bench$ bench update --patch
Backing up sites…
Patching sites…
Migrating site1.local
Executing erpnext.patches.v12_0.update_pricing_rule_fields in site1.local (1bd3e0294da19198)
Traceback (most recent call last):
File “/usr/lib/python3.6/runpy.py”, line 193, in _run_module_as_main
“main”, mod_spec)
File “/usr/lib/python3.6/runpy.py”, line 85, in _run_code
exec(code, run_globals)
File “/home/frappe/frappe-bench/apps/frappe/frappe/utils/bench_helper.py”, line 97, in
main()
File “/home/frappe/frappe-bench/apps/frappe/frappe/utils/bench_helper.py”, line 18, in main
click.Group(commands=commands)(prog_name=‘bench’)
File “/home/frappe/frappe-bench/env/lib/python3.6/site-packages/click/core.py”, line 764, in call
return self.main(*args, **kwargs)
File “/home/frappe/frappe-bench/env/lib/python3.6/site-packages/click/core.py”, line 717, in main
rv = self.invoke(ctx)
File “/home/frappe/frappe-bench/env/lib/python3.6/site-packages/click/core.py”, line 1137, in invoke
return _process_result(sub_ctx.command.invoke(sub_ctx))
File “/home/frappe/frappe-bench/env/lib/python3.6/site-packages/click/core.py”, line 1137, in invoke
return _process_result(sub_ctx.command.invoke(sub_ctx))
File “/home/frappe/frappe-bench/env/lib/python3.6/site-packages/click/core.py”, line 956, in invoke
return ctx.invoke(self.callback, **ctx.params)
File “/home/frappe/frappe-bench/env/lib/python3.6/site-packages/click/core.py”, line 555, in invoke
return callback(*args, **kwargs)
File “/home/frappe/frappe-bench/env/lib/python3.6/site-packages/click/decorators.py”, line 17, in new_func
return f(get_current_context(), *args, **kwargs)
File “/home/frappe/frappe-bench/apps/frappe/frappe/commands/init.py”, line 25, in _func
ret = f(frappe._dict(ctx.obj), *args, **kwargs)
File “/home/frappe/frappe-bench/apps/frappe/frappe/commands/site.py”, line 234, in migrate
migrate(context.verbose, rebuild_website=rebuild_website, skip_failing=skip_failing)
File “/home/frappe/frappe-bench/apps/frappe/frappe/migrate.py”, line 48, in migrate
frappe.modules.patch_handler.run_all(skip_failing)
File “/home/frappe/frappe-bench/apps/frappe/frappe/modules/patch_handler.py”, line 41, in run_all
run_patch(patch)
File “/home/frappe/frappe-bench/apps/frappe/frappe/modules/patch_handler.py”, line 30, in run_patch
if not run_single(patchmodule = patch):
File “/home/frappe/frappe-bench/apps/frappe/frappe/modules/patch_handler.py”, line 71, in run_single
return execute_patch(patchmodule, method, methodargs)
File “/home/frappe/frappe-bench/apps/frappe/frappe/modules/patch_handler.py”, line 91, in execute_patch
frappe.get_attr(patchmodule.split()[0] + “.execute”)()
File “/home/frappe/frappe-bench/apps/erpnext/erpnext/patches/v12_0/update_pricing_rule_fields.py”, line 33, in execute
“”".format(child_doctype= child_doctype))
File “/home/frappe/frappe-bench/apps/frappe/frappe/database/database.py”, line 171, in sql
self._cursor.execute(query)
File “/home/frappe/frappe-bench/env/lib/python3.6/site-packages/pymysql/cursors.py”, line 170, in execute
result = self._query(query)
File “/home/frappe/frappe-bench/env/lib/python3.6/site-packages/pymysql/cursors.py”, line 328, in _query
conn.query(q)
File “/home/frappe/frappe-bench/env/lib/python3.6/site-packages/pymysql/connections.py”, line 517, in query
self._affected_rows = self._read_query_result(unbuffered=unbuffered)
File “/home/frappe/frappe-bench/env/lib/python3.6/site-packages/pymysql/connections.py”, line 732, in _read_query_result
result.read()
File “/home/frappe/frappe-bench/env/lib/python3.6/site-packages/pymysql/connections.py”, line 1075, in read
first_packet = self.connection._read_packet()
File “/home/frappe/frappe-bench/env/lib/python3.6/site-packages/pymysql/connections.py”, line 684, in _read_packet
packet.check_error()
File “/home/frappe/frappe-bench/env/lib/python3.6/site-packages/pymysql/protocol.py”, line 220, in check_error
err.raise_mysql_exception(self._data)
File “/home/frappe/frappe-bench/env/lib/python3.6/site-packages/pymysql/err.py”, line 109, in raise_mysql_exception
raise errorclass(errno, errval)
pymysql.err.InternalError: (1054, “Unknown column ‘pricing_rules’ in ‘field list’”)
I guess line#42 in /home/frappe/bench/apps/erpnext/erpnext/patches/v12_0/update_pricing_rule_fields.py is somehow buggy!
The line has a string called pricing_rule as parameter as all others are pointers. The GitHub user rohitwaghchaure is responsible for this. Can anyone reach out to him?
today I have same error. Error migrate Items table don’t have pricing_rules field.
I try to skip this step by edit this file: apps/erpnext/erpnext/patches/v12_0/update_pricing_rule_fields.py
set
doctypes = {} or return do not run this patch
run bench migrate
after run success restore update_pricing_rule_fields.py then run
That is good to run a script without error but are we skipping the update routine or this update script is useless altogether? Why isn’t it working in the first run?
It error not reload doc “tabPurchase Order Item” child table => pricing_rules is not found
=> When I skip this patch and I check this child table update well (this child table have pricing_rules field).
=> I run again this patch and It run.
Thanks for the solution. It seems to work and allows to proceed with update from V11 to V12. I am left however with an error - every time I hover on an item or try to click on an item - I get the following message:
InternalError: (1054, u"Unknown column ‘317f1457ae’ in ‘field list’")
Will appreciate any insight on how to resolve. Thanks.
Hi. I tried that - created a custom field 317f1457ae for doctype Item. Then deleted it. When I go back to item - it gives error - with a different column number.
Actually resolved it by creating a manufacturer (same as supplier) for the item. Likely - during upgrade to v12 may have applied manufacturer item patch to this site - though error was reported to another site…