Quando compare esattamente
L'avviso compare premendo il pulsante Crea ordine di vendita (Create Sale Order) nella scheda di un ordine Shopify. A quella scheda arrivi dal menu Shopify › Operazioni › Ordini (Shopify › Operations › Orders). Ogni voce del menu richiede il permesso Visualizzatore (Viewer): senza di esso non vedi quella voce. Quel permesso serve per vedere il menu; il pulsante, invece, è per i responsabili Shopify (Shopify Manager), e il metodo lo verifica prima di guardare il contenuto dell'ordine.
Il pulsante è visibile finché il campo Ordine di vendita (Sale Order) dell'ordine è vuoto, e si nasconde quando ne ha già uno. Quando lo premi, Odoo chiede conferma con questo testo: It is created as a quotation that the connector never confirms: check first that this order was not shipped already. Create it?. Se accetti e il tuo utente è responsabile Shopify, il metodo controlla se il campo Payload grezzo (Raw Payload) è vuoto. Se lo è, lancia il messaggio e l'azione si ferma.


Che cos'è il campo che viene controllato
Payload grezzo è un campo di tipo Json dell'ordine Shopify. Si vede nella scheda Imbuto di evasione (Fulfilment Funnel), scheda Tecnico (Technical). A schermo è senza etichetta, si vede solo il suo contenuto, e lo vedono, in sola lettura, solo gli utenti con permesso di amministrazione del sistema.
Non lo scrivi tu: lo compila il codice del modulo, a cui arrivano sia il pulsante Crea ordini di vendita (Create Sale Orders) sia lo stesso Crea ordine di vendita. Per sapere che cosa fa il primo, trovi cosa fa il pulsante Crea ordini di vendita.
Un caso per vederlo
Esempio Caso illustrativo: l'azienda e i suoi dati sono inventati per spiegare il flusso.
Tienda Ejemplo è un'azienda inventata che vende su Shopify e gestisce i suoi ordini in Odoo. Laura, responsabile Shopify, si occupa degli ordini: apre Shopify › Operazioni › Ordini ed entra in uno che non ha un ordine di vendita. Vede il pulsante Crea ordine di vendita e lo preme. Legge la conferma: viene creato come preventivo che il connettore non conferma mai, ed è meglio verificare prima che l'ordine non sia già stato spedito. Laura verifica, accetta e Odoo risponde con Nessun dato Shopify disponibile per creare l'ordine di vendita. Aggiorna prima da Shopify..
Il suo utente non ha il permesso di amministrazione del sistema, quindi non vede il campo Payload grezzo. Chiede a una persona che ce l'ha di aprire la scheda Tecnico della scheda Imbuto di evasione, e questa le conferma che non c'è contenuto. Torna con il codice: con il campo vuoto, il metodo si ferma. Laura aggiorna l'ordine da Shopify, come chiede il messaggio, e preme di nuovo il pulsante.
Cosa imparare dal caso:
- L'avviso parla del contenuto salvato dell'ordine Shopify, non dell'ordine di vendita che volevi creare.
- Per verificare la causa serve vedere il campo
Payload grezzo, e questo dipende da un permesso preciso. - L'avvertenza della conferma conta: l'ordine di vendita viene creato come preventivo che il connettore non conferma mai.
Cosa fa il metodo, in ordine
In Odoo 20.0, premendo Crea ordine di vendita, il metodo fa questo:
- Se l'ordine ha già
Ordine di vendita, il metodo apre quell'ordine e termina. Nessun errore. - Se il tuo utente non è responsabile Shopify (Shopify Manager), il metodo si ferma.
- Se
Payload grezzoè vuoto, lancia il messaggioNessun dato Shopify disponibile per creare l'ordine di vendita. Aggiorna prima da Shopify.e si ferma. - Se c'è contenuto, toglie il contrassegno di blocco dell'ordine e lo segna come creato a mano.
- Elabora di nuovo il contenuto salvato con l'opzione di creazione manuale e rilegge l'ordine.
- Se l'ordine ha già
Ordine di vendita, lo apre; altrimenti termina senza aprire alcun ordine.
Poiché il blocco e il contrassegno di creato a mano vengono scritti dopo il controllo, quando compare l'errore non viene salvata alcuna modifica e l'ordine resta com'era.
Come risolverlo
- Verifica che l'ordine sia ancora senza
Ordine di vendita. Se ce l'ha già, il pulsante non si vede. - Verifica che il tuo utente sia responsabile Shopify: il pulsante è per i responsabili e, se non lo sei, il metodo si ferma prima di guardare il contenuto.
- Se hai il permesso di amministrazione del sistema, apri la scheda
Tecnicodella schedaImbuto di evasionee controlla se c'è contenuto. Se non ce l'hai, chiedi a chi ce l'ha di controllare. - Aggiorna l'ordine da Shopify, come indica il messaggio stesso.
- Premi di nuovo
Crea ordine di vendita, rileggi la conferma e accetta solo se l'ordine non è già stato spedito. - Se l'ordine di vendita viene creato, Odoo lo apre; se non si apre, controlla il campo
Ordine di venditadell'ordine.
Non provare a scrivere il contenuto a mano: il campo è in sola lettura e lo scrive il codice del modulo.
In quali versioni c'è
Il messaggio è nel codice pubblicato dei quattro rami: Odoo 17, 18, 19 e 20. Il pulsante Crea ordine di vendita ha la stessa condizione di vista in tutti e quattro: si nasconde quando l'ordine ha Ordine di vendita. Il modulo è pubblicato su Odoo Apps per quelle quattro versioni.
Con Odoo in spagnolo, l'avviso si legge come nell'introduzione. Lo schema seguente mostra lo stesso testo in altre lingue.

Se ti serve aiuto con l'implementazione
Se vuoi rivedere come sono collegati il tuo negozio e il tuo Odoo, FlexigoTech implementa Odoo 17, 18, 19 e 20 e sviluppa connettori e integrazioni su misura. Trovi maggiori informazioni nella scheda di Odoo Apps e nella pagina del modulo.
Continua a leggere
Verificato nel codice del connettore (versione 20.0) e nelle fonti collegate
Fonti
- Codice del modulo: flexigobe_shopify_seller_connector 20.0 (d7e627b4): models/shopify_order.py
- Codice del modulo: flexigobe_shopify_seller_connector 20.0 (d7e627b4): views/shopify_order_views.xml
- apps.odoo.com/apps/modules/20.0/flexigobe_shopify_seller_connector
- flexigotech.com/en/services.html
