Forum

Benvenuto!

Questo è il forum ufficiale dell'Associazione Odoo Italia. Dopo esserti registrato potrai partecipare ponendo domande o rispondendo a quelle esistenti. Non scordarti di compilare il tuo profilo e consultare le linee guida prima di iniziare a scrivere.

0

odoo16 fatturapa_out

Avatar
vittorio tomasi

Ciao,

sto testando la generazione del XML di una fattura cliente ma mi genera questo errore:

Traceback (most recent call last):
  File "/opt/odoo16/odoo/odoo/tools/translate.py", line 447, in __call__
    return translation % (args or kwargs)
TypeError: format requires a mapping

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/opt/odoo16/odoo/odoo/http.py", line 1534, in _serve_db
    return service_model.retrying(self._serve_ir_http, self.env)
  File "/opt/odoo16/odoo/odoo/service/model.py", line 134, in retrying
    result = func()
  File "/opt/odoo16/odoo/odoo/http.py", line 1563, in _serve_ir_http
    response = self.dispatcher.dispatch(rule.endpoint, args)
  File "/opt/odoo16/odoo/odoo/http.py", line 1760, in dispatch
    result = self.request.registry['ir.http']._dispatch(endpoint)
  File "/opt/odoo16/odoo/addons/website/models/ir_http.py", line 222, in _dispatch
    response = super()._dispatch(endpoint)
  File "/opt/odoo16/odoo/odoo/addons/base/models/ir_http.py", line 138, in _dispatch
    result = endpoint(**request.params)
  File "/opt/odoo16/odoo/odoo/http.py", line 673, in route_wrapper
    result = endpoint(self, *args, **params_ok)
  File "/opt/odoo16/odoo/addons/web/controllers/dataset.py", line 46, in call_button
    action = self._call_kw(model, method, args, kwargs)
  File "/opt/odoo16/odoo/addons/web/controllers/dataset.py", line 33, in _call_kw
    return call_kw(request.env[model], method, args, kwargs)
  File "/opt/odoo16/odoo/odoo/api.py", line 461, in call_kw
    result = _call_kw_multi(method, model, args, kwargs)
  File "/opt/odoo16/odoo/odoo/api.py", line 448, in _call_kw_multi
    result = method(recs, *args, **kwargs)
  File "/opt/odoo16/odoo-custom-addons/l10n-italy-16.0/l10n_it_fatturapa_out/wizard/wizard_export_fatturapa.py", line 262, in exportFatturaPA
    fatturapa, progressivo_invio = self.exportInvoiceXML(
  File "/opt/odoo16/odoo-custom-addons/l10n-italy-16.0/l10n_it_fatturapa_out/wizard/wizard_export_fatturapa.py", line 240, in exportInvoiceXML
    invoice_ids.preventive_checks()
  File "/opt/odoo16/odoo-custom-addons/l10n-italy-16.0/l10n_it_fatturapa_out/models/account.py", line 63, in preventive_checks
    _(
  File "/opt/odoo16/odoo/odoo/tools/translate.py", line 451, in __call__
    translation = source % (args or kwargs)
TypeError: format requires a mapping

I files della contabilitè italiana sono aggornati come da repository Github
Avatar
Abbandona
1 risposta
0
Avatar
Sergio Zanchetta
Migliore risposta

Ciao, questa PR dovrebbe risolvere.

https://github.com/OCA/l10n-italy/pull/3126

Puoi testarla per cortesia e approvare la PR se risolve?


Avatar
Abbandona
0
Avatar
vittorio tomasi
Migliore risposta

Ciao ,

no non risolve. Stesso errore.

Aggiornato odoo da command line ........-u all --stop-after-init -d databasexxxx              dopo aggiornamento codice sul file l10n_it_fatturapa_out/models/account.py come da PR


Avatar
Abbandona
0
Avatar
Sergio Zanchetta
Migliore risposta

Prova su runboat e vedi se riesci a riprodurre l'errore (fai clic su "live")

https://runboat.odoo-community.org/webui/build.html?name=b3143f0e1-4fda-46e1-bc35-7b731348db9c

Avatar
Abbandona
0
Avatar
vittorio tomasi
Migliore risposta

Stesso errore sull runboat

RPC_ERROR

Odoo Server Error

Traceback (most recent call last):
  File "/opt/odoo/odoo/tools/translate.py", line 458, in __call__
    return translation % (args or kwargs)
TypeError: format requires a mapping

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/opt/odoo/odoo/http.py", line 1579, in _serve_db
    return service_model.retrying(self._serve_ir_http, self.env)
  File "/opt/odoo/odoo/service/model.py", line 134, in retrying
    result = func()
  File "/opt/odoo/odoo/http.py", line 1608, in _serve_ir_http
    response = self.dispatcher.dispatch(rule.endpoint, args)
  File "/opt/odoo/odoo/http.py", line 1805, in dispatch
    result = self.request.registry['ir.http']._dispatch(endpoint)
  File "/opt/odoo/odoo/addons/base/models/ir_http.py", line 144, in _dispatch
    result = endpoint(**request.params)
  File "/opt/odoo/odoo/http.py", line 698, in route_wrapper
    result = endpoint(self, *args, **params_ok)
  File "/opt/odoo/addons/web/controllers/dataset.py", line 46, in call_button
    action = self._call_kw(model, method, args, kwargs)
  File "/opt/odoo/addons/web/controllers/dataset.py", line 33, in _call_kw
    return call_kw(request.env[model], method, args, kwargs)
  File "/opt/odoo/odoo/api.py", line 461, in call_kw
    result = _call_kw_multi(method, model, args, kwargs)
  File "/opt/odoo/odoo/api.py", line 448, in _call_kw_multi
    result = method(recs, *args, **kwargs)
  File "/mnt/data/odoo-addons-dir/l10n_it_fatturapa_out/wizard/wizard_export_fatturapa.py", line 262, in exportFatturaPA
    fatturapa, progressivo_invio = self.exportInvoiceXML(
  File "/mnt/data/odoo-addons-dir/l10n_it_fatturapa_out/wizard/wizard_export_fatturapa.py", line 240, in exportInvoiceXML
    invoice_ids.preventive_checks()
  File "/mnt/data/odoo-addons-dir/l10n_it_fatturapa_out/models/account.py", line 63, in preventive_checks
    _(
  File "/opt/odoo/odoo/tools/translate.py", line 462, in __call__
    translation = source % (args or kwargs)
TypeError: format requires a mapping

The above server error caused the following client error:
RPC_ERROR: Odoo Server Error
    at makeErrorFromResponse (http://oca-l10n-italy-16-0-pr3126-6b0539ef421b.runboat.odoo-community.org/web/assets/debug/web.assets_backend.js:10149:19) (/web/static/src/core/network/rpc_service.js:34)
    at XMLHttpRequest.<anonymous> (http://oca-l10n-italy-16-0-pr3126-6b0539ef421b.runboat.odoo-community.org/web/assets/debug/web.assets_backend.js:10202:27) (/web/static/src/core/network/rpc_service.js:87)


Avatar
Abbandona
0
Avatar
Sergio Zanchetta
Migliore risposta

Ho reinizializzato il runboat.

Per cortesia, fai un prova senza attivare la lingua italiana.

Da una prima occhiata (a parte il problema risolto dalla PR) sembra che weblate non abbia rigenerato i file .po dopo la migrazione del modulo.

Avatar
Abbandona
0
Avatar
Sergio Zanchetta
Migliore risposta

Ho aggiornato la PR, adesso dovrebbe essere ok.

Avatar
Abbandona
0
Avatar
vittorio tomasi
Migliore risposta

Dunque:

sulla mia istanza lingua in italiano dopo aver aggiornato il file account.py come da tua ultima modifica:

Errore generato se documento allegato = Null

failed validating <Element IdFiscaleIVA at 0x7f0566e24500> with XsdGroup(model='sequence', occurs=[1, 1]): Reason: Unexpected child with tag 'IdCodice' at position 1. Tag 'IdPaese' expected. Schema: <xs:complexType xmlns:xs="http://www.w3.org/2001/XMLSchema" name="IdFiscaleType"> <xs:sequence> <xs:element name="IdPaese" type="NazioneType" /> <xs:element name="IdCodice" type="CodiceType" /> </xs:sequence> </xs:complexType> Instance (line 70): <IdFiscaleIVA xmlns:ns1="http://ivaservizi.agenziaentrate.gov.it/docs/xsd/fatture/v1.2"><IdCodice>99999999999</IdCodice></IdFiscaleIVA> Path: /ns1:FatturaElettronica/FatturaElettronicaHeader/RappresentanteFiscale/DatiAnagrafici/IdFiscaleIVA


Errore generato se Documento allegato = fattura

Traceback (most recent call last):
  File "/opt/odoo16/odoo/odoo/tools/cache.py", line 85, in lookup
    r = d[key]
  File "<decorator-gen-6>", line 2, in __getitem__
  File "/opt/odoo16/odoo/odoo/tools/func.py", line 87, in locked
    return func(inst, *args, **kwargs)
  File "/opt/odoo16/odoo/odoo/tools/lru.py", line 34, in __getitem__
    a = self.d[obj]
TypeError: unhashable type: 'list'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/opt/odoo16/odoo/odoo/http.py", line 1534, in _serve_db
    return service_model.retrying(self._serve_ir_http, self.env)
  File "/opt/odoo16/odoo/odoo/service/model.py", line 134, in retrying
    result = func()
  File "/opt/odoo16/odoo/odoo/http.py", line 1563, in _serve_ir_http
    response = self.dispatcher.dispatch(rule.endpoint, args)
  File "/opt/odoo16/odoo/odoo/http.py", line 1760, in dispatch
    result = self.request.registry['ir.http']._dispatch(endpoint)
  File "/opt/odoo16/odoo/addons/website/models/ir_http.py", line 222, in _dispatch
    response = super()._dispatch(endpoint)
  File "/opt/odoo16/odoo/odoo/addons/base/models/ir_http.py", line 138, in _dispatch
    result = endpoint(**request.params)
  File "/opt/odoo16/odoo/odoo/http.py", line 673, in route_wrapper
    result = endpoint(self, *args, **params_ok)
  File "/opt/odoo16/odoo/addons/web/controllers/dataset.py", line 46, in call_button
    action = self._call_kw(model, method, args, kwargs)
  File "/opt/odoo16/odoo/addons/web/controllers/dataset.py", line 33, in _call_kw
    return call_kw(request.env[model], method, args, kwargs)
  File "/opt/odoo16/odoo/odoo/api.py", line 461, in call_kw
    result = _call_kw_multi(method, model, args, kwargs)
  File "/opt/odoo16/odoo/odoo/api.py", line 448, in _call_kw_multi
    result = method(recs, *args, **kwargs)
  File "/opt/odoo16/odoo-custom-addons/l10n-italy-16.0/l10n_it_fatturapa_out/wizard/wizard_export_fatturapa.py", line 262, in exportFatturaPA
    fatturapa, progressivo_invio = self.exportInvoiceXML(
  File "/opt/odoo16/odoo-custom-addons/l10n-italy-16.0/l10n_it_fatturapa_out/wizard/wizard_export_fatturapa.py", line 250, in exportInvoiceXML
    self.generate_attach_report(inv)
  File "/opt/odoo16/odoo-custom-addons/l10n-italy-16.0/l10n_it_fatturapa_out/wizard/wizard_export_fatturapa.py", line 296, in generate_attach_report
    attachment, attachment_type = report_model._render_qweb_pdf(inv.ids)
  File "/opt/odoo16/odoo/addons/account/models/ir_actions_report.py", line 49, in _render_qweb_pdf
    if self._get_report(report_ref).report_name in ('account.report_invoice_with_payments', 'account.report_invoice'):
  File "/opt/odoo16/odoo/odoo/addons/base/models/ir_actions_report.py", line 509, in _get_report
    report = self.env.ref(report_ref)
  File "/opt/odoo16/odoo/odoo/api.py", line 582, in ref
    res_model, res_id = self['ir.model.data']._xmlid_to_res_model_res_id(
  File "/opt/odoo16/odoo/odoo/addons/base/models/ir_model.py", line 2018, in _xmlid_to_res_model_res_id
    return self._xmlid_lookup(xmlid)[1:3]
  File "<decorator-gen-40>", line 2, in _xmlid_lookup
  File "/opt/odoo16/odoo/odoo/tools/cache.py", line 95, in lookup
    return self.method(*args, **kwargs)
  File "/opt/odoo16/odoo/odoo/addons/base/models/ir_model.py", line 2006, in _xmlid_lookup
    module, name = xmlid.split('.', 1)
AttributeError: 'list' object has no attribute 'split'
Avatar
Abbandona
0
Avatar
Sergio Zanchetta
Migliore risposta

La PR corregge il problema che avevi indicato nel primo messaggio. Testato in locale e su runboat.

Dato che la situazione inizia a complicarsi ti chiedo la cortesia di aprire una issue su github per il primo problema che avevi riscontrato, con un copia/incolla del traceback. In questo modo è più facile tenere traccia del tutto e collegare il problema alla PR. Il forum non è il posto più indicato per queste cose.

https://github.com/OCA/l10n-italy/issues/new/choose

Grazie

Avatar
Abbandona
0
Avatar
Sergio Zanchetta
Migliore risposta

Non serve più che crei la issue per il problema che avevi indicato inizialmente, è stato fatto il merge della PR.

Per l'altro problema, quello che hai indicato dopo, ho aperto una nuova issue.

https://github.com/OCA/l10n-italy/issues/3127

È meglio che ora la discussione prosegua lì, commenta pure direttamente nella issue.

Avatar
Abbandona
0
Avatar
vittorio tomasi
Migliore risposta

Ciao 

ho testato fatturaPA_out su una istanza pulita enterprise. E funziona correttamente se non alleghi il documento fattura. Se alleghi una fattura ritorna questo errore:

AttributeError: 'list' object has no attribute 'split'
Avatar
Abbandona