Connectors mailing list archives
connectors@odoo-community.org
Browse archives
Re: Force Automatic Workflo
by Michael Aigner <m.aigner@spontaneousorder.de> - 11/03/2016 12:14:14Yes exactly and I wrote to this list because it is happening in the Automatoic Workflow. We solved this problem now, although we don’t really now why we had it in the first place.
Let me quickly write down what happened:
1) orders errored out at the connector because we did not configure the fiscal year for 2016
2) we fixed the fiscal year settings for 2016
3) orders were all synced, but the invoices were not created, therefore we had a more detailed look into that and discovered that error
4) we then found out that there was no invoice at all in the system with a SAJ/2016/… number, but one where the number was set to /
5) so we changed the number and internal number on that record to the next one in sequence for 2016 and now it is working again
Can you please let me know if on a fiscal year change we need to do some additional configuration for the connector so that we don’t run into that issue again?
Thanks,
Michael
On Mar 11, 2016, at 1:38 AM, Dominique KON SUN TACK <dominique.k@elico-corp.com.sg> wrote:The log says that there is a problem of duplicated invoice number?
On 11 Mar, 2016 2:53 am, "Michael Aigner" <michael@stilnest.com> wrote:Sorry to blow this topic up so much, but I guess I am to the ground of the problem now, but I quite don’t understand what’s happening here as we’ve never had issues like that before. This is what I get now during validating invoices: “ Traceback (most recent call last): File "/usr/lib/python2.7/dist-packages/openerp/http.py", line 537, in _handle_exception return super(JsonRequest, self)._handle_exception(exception) File "/usr/lib/python2.7/dist-packages/openerp/http.py", line 574, in dispatch result = self._call_function(**self.params) File "/usr/lib/python2.7/dist-packages/openerp/http.py", line 310, in _call_function return checked_call(self.db, *args, **kwargs) File "/usr/lib/python2.7/dist-packages/openerp/service/model.py", line 118, in wrapper return f(dbname, *args, **kwargs) File "/usr/lib/python2.7/dist-packages/openerp/http.py", line 307, in checked_call return self.endpoint(*a, **kw) File "/usr/lib/python2.7/dist-packages/openerp/http.py", line 803, in __call__ return self.method(*args, **kw) File "/usr/lib/python2.7/dist-packages/openerp/http.py", line 403, in response_wrap response = f(*args, **kw) File "/usr/lib/python2.7/dist-packages/openerp/addons/web/controllers/main.py", line 955, in exec_workflow return request.session.exec_workflow(model, id, signal) File "/usr/lib/python2.7/dist-packages/openerp/http.py", line 1111, in exec_workflow r = self.proxy('object').exec_workflow(self.db, self.uid, self.password, model, signal, id) File "/usr/lib/python2.7/dist-packages/openerp/http.py", line 879, in proxy_method result = dispatch_rpc(self.service_name, method, args) File "/usr/lib/python2.7/dist-packages/openerp/http.py", line 115, in dispatch_rpc result = dispatch(method, params) File "/usr/lib/python2.7/dist-packages/openerp/service/model.py", line 37, in dispatch res = fn(db, uid, *params) File "/usr/lib/python2.7/dist-packages/openerp/service/model.py", line 118, in wrapper return f(dbname, *args, **kwargs) File "/usr/lib/python2.7/dist-packages/openerp/service/model.py", line 188, in exec_workflow return exec_workflow_cr(cr, uid, obj, signal, *args) File "/usr/lib/python2.7/dist-packages/openerp/service/model.py", line 182, in exec_workflow_cr return execute_cr(cr, uid, obj, 'signal_workflow', [res_id], signal)[res_id] File "/usr/lib/python2.7/dist-packages/openerp/service/model.py", line 164, in execute_cr return getattr(object, method)(cr, uid, *args, **kw) File "/usr/lib/python2.7/dist-packages/openerp/api.py", line 250, in wrapper return old_api(self, *args, **kwargs) File "/usr/lib/python2.7/dist-packages/openerp/models.py", line 3570, in signal_workflow result[res_id] = workflow.trg_validate(uid, self._name, res_id, signal, cr) File "/usr/lib/python2.7/dist-packages/openerp/workflow/__init__.py", line 85, in trg_validate return WorkflowService.new(cr, uid, res_type, res_id).validate(signal) File "/usr/lib/python2.7/dist-packages/openerp/workflow/service.py", line 91, in validate res2 = wi.validate(signal) File "/usr/lib/python2.7/dist-packages/openerp/workflow/instance.py", line 80, in validate wi.process(signal=signal, force_running=force_running, stack=stack) File "/usr/lib/python2.7/dist-packages/openerp/workflow/workitem.py", line 120, in process ok = self._split_test(activity['split_mode'], signal, stack) File "/usr/lib/python2.7/dist-packages/openerp/workflow/workitem.py", line 248, in _split_test self._join_test(t[0], t[1], stack) File "/usr/lib/python2.7/dist-packages/openerp/workflow/workitem.py", line 257, in _join_test WorkflowItem.create(self.session, self.record, activity, inst_id, stack=stack) File "/usr/lib/python2.7/dist-packages/openerp/workflow/workitem.py", line 95, in create workflow_item.process(stack=stack) File "/usr/lib/python2.7/dist-packages/openerp/workflow/workitem.py", line 116, in process if not self._execute(activity, stack): File "/usr/lib/python2.7/dist-packages/openerp/workflow/workitem.py", line 162, in _execute returned_action = self.wkf_expr_execute(activity) File "/usr/lib/python2.7/dist-packages/openerp/workflow/workitem.py", line 313, in wkf_expr_execute return self.wkf_expr_eval_expr(activity['action']) File "/usr/lib/python2.7/dist-packages/openerp/workflow/workitem.py", line 291, in wkf_expr_eval_expr result = eval(line, env, nocopy=True) File "/usr/lib/python2.7/dist-packages/openerp/tools/safe_eval.py", line 314, in safe_eval return eval(c, globals_dict, locals_dict) File "", line 1, in File "/usr/lib/python2.7/dist-packages/openerp/api.py", line 248, in wrapper return new_api(self, *args, **kwargs) File "/usr/lib/python2.7/dist-packages/openerp/addons/account/account_invoice.py", line 927, in action_move_create inv.with_context(ctx).write(vals) File "/usr/lib/python2.7/dist-packages/openerp/api.py", line 248, in wrapper return new_api(self, *args, **kwargs) File "/usr/lib/python2.7/dist-packages/openerp/api.py", line 565, in new_api result = method(self._model, cr, uid, self.ids, *args, **kwargs) File "/usr/lib/python2.7/dist-packages/openerp/addons/mail/mail_thread.py", line 432, in write result = super(mail_thread, self).write(cr, uid, ids, values, context=context) File "/usr/lib/python2.7/dist-packages/openerp/api.py", line 250, in wrapper return old_api(self, *args, **kwargs) File "/usr/lib/python2.7/dist-packages/openerp/api.py", line 372, in old_api result = method(recs, *args, **kwargs) File "/opt/odoo/addons/connector/connector/producer.py", line 62, in write result = write_original(self, vals) File "/usr/lib/python2.7/dist-packages/openerp/api.py", line 248, in wrapper return new_api(self, *args, **kwargs) File "/usr/lib/python2.7/dist-packages/openerp/models.py", line 3787, in write self._write(old_vals) File "/usr/lib/python2.7/dist-packages/openerp/api.py", line 248, in wrapper return new_api(self, *args, **kwargs) File "/usr/lib/python2.7/dist-packages/openerp/api.py", line 565, in new_api result = method(self._model, cr, uid, self.ids, *args, **kwargs) File "/usr/lib/python2.7/dist-packages/openerp/models.py", line 4039, in _write recs.recompute() File "/usr/lib/python2.7/dist-packages/openerp/api.py", line 248, in wrapper return new_api(self, *args, **kwargs) File "/usr/lib/python2.7/dist-packages/openerp/models.py", line 5732, in recompute rec._write(values) File "/usr/lib/python2.7/dist-packages/openerp/api.py", line 248, in wrapper return new_api(self, *args, **kwargs) File "/usr/lib/python2.7/dist-packages/openerp/api.py", line 565, in new_api result = method(self._model, cr, uid, self.ids, *args, **kwargs) File "/usr/lib/python2.7/dist-packages/openerp/models.py", line 3898, in _write cr.execute(query, params + (sub_ids,)) File "/usr/lib/python2.7/dist-packages/openerp/sql_db.py", line 158, in wrapper return f(self, *args, **kwargs) File "/usr/lib/python2.7/dist-packages/openerp/sql_db.py", line 234, in execute res = self._obj.execute(query, params) ValueError: "duplicate key value violates unique constraint "account_invoice_number_uniq" DETAIL: Key (number, company_id, journal_id, type)=(/, 1, 1, out_invoice) already exists. " while evaluating u'action_move_create()’ “ Any idea what’s wrong here? Thanks, Michael > On Mar 10, 2016, at 7:07 PM, Michael Aigner <michael@stilnest.com> wrote: > > Ok, I guess I found an issue with the Automatic Workflow in the log files: > > "2016-03-10 18:05:24,231 17177 ERROR odoo-production openerp.addons.sale_automatic_workflow.automatic_workflow_job: Error during an automatic workflow action. > Traceback (most recent call last): > File "/opt/odoo/addons/e-commerce/sale_automatic_workflow/automatic_workflow_job.py", line 63, in commit > yield > File "/opt/odoo/addons/e-commerce/sale_automatic_workflow/automatic_workflow_job.py", line 113, in _validate_pickings > pickings.validate_picking() > File "/usr/lib/python2.7/dist-packages/openerp/api.py", line 248, in wrapper > return new_api(self, *args, **kwargs) > File "/opt/odoo/addons/e-commerce/sale_automatic_workflow/stock_picking.py", line 43, in validate_picking > self.force_assign() > File "/usr/lib/python2.7/dist-packages/openerp/api.py", line 248, in wrapper > return new_api(self, *args, **kwargs) > File "/usr/lib/python2.7/dist-packages/openerp/api.py", line 565, in new_api > result = method(self._model, cr, uid, self.ids, *args, **kwargs) > File "/usr/lib/python2.7/dist-packages/openerp/addons/stock/stock.py", line 915, in force_assign > self.write(cr, uid, ids, {'recompute_pack_op': True}, context=context) > File "/usr/lib/python2.7/dist-packages/openerp/api.py", line 250, in wrapper > return old_api(self, *args, **kwargs) > File "/usr/lib/python2.7/dist-packages/openerp/api.py", line 372, in old_api > result = method(recs, *args, **kwargs) > File "/opt/odoo/addons/connector-ecommerce/connector_ecommerce/stock.py", line 39, in write > res = super(StockPicking, self).write(vals) > File "/usr/lib/python2.7/dist-packages/openerp/api.py", line 248, in wrapper > return new_api(self, *args, **kwargs) > File "/usr/lib/python2.7/dist-packages/openerp/api.py", line 565, in new_api > result = method(self._model, cr, uid, self.ids, *args, **kwargs) > File "/usr/lib/python2.7/dist-packages/openerp/addons/stock/stock.py", line 958, in write > res = super(stock_picking, self).write(cr, uid, ids, vals, context=context) > File "/usr/lib/python2.7/dist-packages/openerp/api.py", line 250, in wrapper > return old_api(self, *args, **kwargs) > File "/usr/lib/python2.7/dist-packages/openerp/addons/mail/mail_thread.py", line 432, in write > result = super(mail_thread, self).write(cr, uid, ids, values, context=context) > File "/usr/lib/python2.7/dist-packages/openerp/api.py", line 250, in wrapper > return old_api(self, *args, **kwargs) > File "/usr/lib/python2.7/dist-packages/openerp/api.py", line 372, in old_api > result = method(recs, *args, **kwargs) > File "/opt/odoo/addons/connector/connector/producer.py", line 62, in write > result = write_original(self, vals) > File "/usr/lib/python2.7/dist-packages/openerp/api.py", line 248, in wrapper > return new_api(self, *args, **kwargs) > File "/usr/lib/python2.7/dist-packages/openerp/models.py", line 3787, in write > self._write(old_vals) > File "/usr/lib/python2.7/dist-packages/openerp/api.py", line 248, in wrapper > return new_api(self, *args, **kwargs) > File "/usr/lib/python2.7/dist-packages/openerp/api.py", line 565, in new_api > result = method(self._model, cr, uid, self.ids, *args, **kwargs) > File "/usr/lib/python2.7/dist-packages/openerp/models.py", line 4039, in _write > recs.recompute() > File "/usr/lib/python2.7/dist-packages/openerp/api.py", line 248, in wrapper > return new_api(self, *args, **kwargs) > File "/usr/lib/python2.7/dist-packages/openerp/models.py", line 5732, in recompute > rec._write(values) > File "/usr/lib/python2.7/dist-packages/openerp/api.py", line 248, in wrapper > return new_api(self, *args, **kwargs) > File "/usr/lib/python2.7/dist-packages/openerp/api.py", line 565, in new_api > result = method(self._model, cr, uid, self.ids, *args, **kwargs) > File "/usr/lib/python2.7/dist-packages/openerp/models.py", line 3898, in _write > cr.execute(query, params + (sub_ids,)) > File "/usr/lib/python2.7/dist-packages/openerp/sql_db.py", line 158, in wrapper > return f(self, *args, **kwargs) > File "/usr/lib/python2.7/dist-packages/openerp/sql_db.py", line 234, in execute > res = self._obj.execute(query, params) > TransactionRollbackError: could not serialize access due to concurrent update” > > Any Ides on why the automator could run into a concurrent update?? I guess that’s the problem why my transactions are not completed. > > Thanks, > Michael > >> On Mar 10, 2016, at 6:57 PM, Michael Aigner <michael@stilnest.com> wrote: >> >> hi, >> >> i have around 10000 open orders and stock pickings that are on status available. how can i mass process them? i guess the problem was that “Confirm and Close Picking” was not activated in the Automatic Workflow, which I changed now. Is there a way to batch process all of them? >> >> thanks, >> michael >_______________________________________________
Mailing-List: http://odoo-community.org/groups/connectors-30
Post to: mailto:connectors@odoo-community.org
Unsubscribe: http://odoo-community.org/groups?unsubscribe_______________________________________________
Mailing-List: http://odoo-community.org/groups/connectors-30
Post to: mailto:connectors@odoo-community.org
Unsubscribe: http://odoo-community.org/groups?unsubscribe
Reference
-
Force Automatic Workflo
bymichael-
Re: Force Automatic Workflo
by Michael Aigner <m.aigner@spontaneousorder.de> - 11/03/2016 12:14:14 - 0
-