Este aviso aparece na transferência de uma venda do Shopify quando se pede para atualizar o rastreio e a transferência ainda não está terminada. Segundo o código publicado do Odoo 20, é isto que acontece exatamente e o que podes fazer.
O que está por trás da mensagem
A condição é só uma: a transferência não está em Concluído
O método que atualiza o rastreio olha para o estado da transferência. Se não for Concluído, a ação pára e o Odoo mostra A transferência deve estar concluída antes de atualizar o rastreio Shopify. Qualquer estado diferente de Concluído cumpre a condição, e neste aviso não há nenhuma outra verificação misturada.
É a primeira coisa que o método verifica
Depois de se assegurar de que trabalha com uma única transferência, a primeira coisa que o método faz é olhar para o estado. Tudo o resto vem depois: verificar o ID de fulfillment do Shopify, localizar a instância do Shopify da ordem de vendas e pedir ao Shopify que atualize o rastreio. Como a mensagem interrompe a ação, não se guarda nada do que a ação ia alterar e não se chama o Shopify.

Como se chega à mensagem
A mensagem pode surgir ao premir o botão Update Shopify Tracking da vista da transferência. Esse botão chama um método que se liga ao método interno que acabámos de descrever, e é este último que lança o aviso se a transferência não estiver em Concluído.
O botão já se oculta fora de Concluído, e o método volta a verificá-lo
No Odoo 17, 18, 19 e 20 a vista oculta o botão Update Shopify Tracking quando se dá qualquer uma destas três situações:
- a transferência não é de uma ordem do Shopify (a marca interna
Is Shopify Ordernão se vê em nenhuma vista); - a transferência não está em
Concluído; - o campo
Shopify Fulfillmentestá vazio.
Dito de outro modo, para ver o botão é preciso uma transferência do Shopify em Concluído e com Shopify Fulfillment preenchido. Mesmo assim, o método repete a verificação do estado antes de fazer o que quer que seja.

O que fazer e o que vem a seguir
Valida a transferência e repete a atualização
A própria mensagem o diz: a transferência tem de estar validada. Leva a transferência a Concluído. Com esse estado, o botão Update Shopify Tracking aparece sempre que se cumpram as outras duas condições da vista: que a transferência seja de uma ordem do Shopify e que tenha Shopify Fulfillment. Se, depois de validar, o botão continuar sem aparecer, é porque falta uma dessas duas condições. Quando aparecer, podes voltar a pedir a atualização do rastreio.
Com a transferência em Concluído, o método segue com outras verificações
Com a transferência já em Concluído, o método verifica que a transferência tem ID de fulfillment do Shopify, procura a instância do Shopify através da ordem de vendas e pede ao Shopify que atualize o rastreio. Se tudo correr bem, guarda o estado do fulfillment devolvido pelo Shopify, a data e hora da última sincronização do rastreio, limpa o erro anterior, conserva o que foi enviado e a resposta recebida, e deixa uma mensagem na transferência. Se uma dessas verificações falhar, surgirá um aviso diferente: a mensagem que nos ocupa fala apenas do estado da transferência.
A mesma mensagem nas quatro versões
A mensagem está no código publicado do Odoo 17, 18, 19 e 20, e a condição da vista do botão é a mesma nas quatro. O código do método que percorremos é o do Odoo 20. Com o Odoo em português de Portugal vês A transferência deve estar concluída antes de atualizar o rastreio Shopify.; o esquema mostra como o mesmo texto aparece com as traduções publicadas do módulo.

Custo e ajuda
O Shopify Connector custa 9 € por versão do Odoo, para 17, 18, 19 e 20, pagamento único e sem IVA, segundo a sua ficha do Odoo Apps. Além disso, precisa da subscrição do FlexigoTech Cloud, plano Conector: 49 €/mês ou 490 €/ano, sem IVA.
Se estás a implementar o Odoo com o Shopify e queres rever como encaixam as transferências e os envios, a FlexigoTech implementa o Odoo 17, 18, 19 e 20 e desenvolve conectores e integrações à medida.
Continue a ler
Verificado no código do conector (versão 20.0) e nas fontes indicadas
Fontes
- Código do módulo: flexigobe_shopify_connector 20.0 (c7078cd8): models/stock_picking.py
- Código do módulo: flexigobe_shopify_connector 20.0 (c7078cd8): views/stock_picking_views.xml
- apps.odoo.com/apps/modules/20.0/flexigobe_shopify_connector
- apps.odoo.com/apps/modules/17.0/flexigobe_shopify_connector
- apps.odoo.com/apps/modules/18.0/flexigobe_shopify_connector
- apps.odoo.com/apps/modules/19.0/flexigobe_shopify_connector
- flexigotech.com/en/services.html
- flexigotech.com/precios.html
