On surt i quan es veu el botó
Surt des d'un botó de la sol·licitud de cancel·lació
Les fitxes de les sol·licituds de cancel·lació s'obren des del menú Octopia › Orders › Cancellations. El tram Octopia demana el permís Octopia User: si no el tens, no veus aquest tram.
El missatge The order has no sales channel to fetch reasons for. pot sortir en prémer el botó Fetch Eligible Reasons d'aquesta fitxa. Està al codi publicat d'Odoo 17, 18, 19 i 20.

Amb les traduccions publicades del mòdul, el mateix missatge es llegeix així:
| Idioma | Text del missatge |
|---|---|
| Castellà | El pedido no tiene canal de ventas del que obtener los motivos. |
| Anglès | The order has no sales channel to fetch reasons for. |
| Alemany | Die Bestellung hat keinen Verkaufskanal, für den Gründe abgerufen werden könnten. |
| Francès | La commande n'a aucun canal de vente pour lequel récupérer des motifs. |
| Italià | L'ordine non ha un canale di vendita per cui recuperare i motivi. |
| Portuguès | A encomenda não tem canal de vendas para o qual obter motivos. |

El botó només es veu mentre la sol·licitud és en el seu estat inicial
La vista amaga Fetch Eligible Reasons quan la sol·licitud ja no és en el seu estat inicial, el que té per defecte al camp State. Amb els valors per defecte, el botó es veu. És igual a Odoo 17, 18, 19 i 20.
Té una conseqüència pràctica: si obres una sol·licitud i no veus el botó, no hi ha res a prémer i, per tant, aquest missatge no surt des d'aquesta fitxa. Si el veus, la sol·licitud continua en el seu estat inicial.

Què comprova el codi i en quin ordre
Es mira el canal de la comanda, no el de la sol·licitud
El canal de vendes no es llegeix de la sol·licitud de cancel·lació, sinó de la comanda a la qual està lligada. La condició exacta del codi és aquesta: que el canal de vendes d'aquesta comanda estigui buit. Per això dues sol·licituds diferents poden donar resultats diferents: depèn de si la seva comanda té canal de vendes.
És el primer que fa el mètode
El botó crida un mètode que recorre les sol·licituds sobre les quals es llança. Per a cadascuna pren la seva comanda i mira el canal de vendes d'aquesta comanda. Si està buit, llança el missatge i l'acció s'atura aquí.
Aquesta comprovació va abans de qualsevol altra cosa del mètode: abans de decidir quin estat de la comanda s'utilitzarà i abans de passar cap dada al pas següent del mòdul.
Prémer una altra vegada no ho arregla
El mètode només llegeix el canal de vendes de la comanda. No l'omple ni el canvia, així que tornar a prémer Fetch Eligible Reasons sense tocar res dona el mateix resultat: el missatge continuarà sortint mentre la comanda no tingui canal de vendes.
Quan sí que hi ha canal, el mètode continua
Si la comanda té canal, el mètode decideix amb quin estat de la comanda continuarà: si l'estat de la comanda és Accepted, InPreparation, Shipped o Delivered, fa servir aquest; amb qualsevol altre fa servir Accepted.
Després passa el compte de la comanda, el codi del canal, el valor Seller i aquest estat al pas següent del mòdul, i acaba. Per això el canal importa de debò: el seu codi és una de les dades que el mètode passa, i sense canal el mètode ni arriba a aquest punt.
Com resoldre-ho
El que demana el missatge és que la comanda de la sol·licitud tingui canal de vendes. Com que el botó no l'escriu, l'arranjament és a la comanda, no al botó.
- Obre la sol·licitud des de
Octopia › Orders › Cancellationsi comprova que veusFetch Eligible Reasons. Si no el veus, la sol·licitud ja no és en el seu estat inicial. - Identifica la comanda a la qual pertany la sol·licitud: és la que ha de tenir canal de vendes.
- Quan aquesta comanda tingui canal de vendes, torna a prémer
Fetch Eligible Reasons.
Si després d'això torna a sortir el mateix missatge, la comanda continua amb el canal de vendes buit: la comprovació del codi no mira res més.
Si necessites una mà
FlexigoTech implanta Odoo 17, 18, 19 i 20 i desenvolupa connectors i integracions a mida. Octopia Connector és un mòdul de pagament únic per versió i necessita la subscripció a FlexigoTech Cloud: el pla Connector costa 49 €/mes o 490 €/any sense IVA.
Si vols veure com actua un altre botó de la sol·licitud, tens el de Submit to Octopia.
Continua llegint
Comprovat al codi del connector (versió 20.0) i a les fonts enllaçades
Fonts
- Codi del mòdul: flexigobe_octopia_connector 20.0 (4848da6a): models/octopia_order_actions.py
- Codi del mòdul: flexigobe_octopia_connector 20.0 (4848da6a): views/octopia_completeness2_views.xml
- flexigotech.com/en/services.html
- flexigotech.com/precios.html
