O caminho normal: a declaração sai sozinha ao validar a entrega
O botão não é o caminho habitual. Ao validar uma guia de entrega com o botão standard do Odoo, que o módulo amplia, o módulo declara à Octopia os volumes de cada encomenda da Octopia que está por trás da encomenda de venda dessa entrega. Se a entrega não vem de uma encomenda de venda, não declara nada, e só são consideradas as encomendas da mesma empresa que a entrega.
Durante essa validação o módulo salta uma encomenda em dois casos: se já existe, para essa encomenda e essa guia de entrega, uma declaração no estado Declarado (Declared), ou se a encomenda tem um modo de fornecimento que não é o do vendedor. O resto é declarado.
Tentar novamente (Retry) é a exceção: serve para uma declaração que ficou no estado Erro e que queres voltar a enviar manualmente. O que se segue descreve o código da versão 20 do Odoo.

Quando aparece Tentar novamente
O botão está no ecrã Declarações de expedição (Shipment Declarations), a que se chega por Octopia › Encomendas › Declarações de expedição (Octopia › Orders › Shipment Declarations). Se não vires a secção Octopia, falta-te a permissão Utilizador Octopia (Octopia User). O botão existe no Odoo 17, 18, 19 e 20.
Só se vê quando o campo Estado (State) vale Erro. Com os valores por defeito, que deixam Estado em Rascunho (Draft), não se vê. Os valores de Estado são Rascunho, Declarado e Erro.


Reintentar; em alemão, Wiederholen; em francês, Réessayer; em italiano, Riprova; em português, Tentar novamente.Antes de premir
- Abre
Octopia › Encomendas › Declarações de expediçãoe localiza a declaração que está emErro. - Abre a sua ficha e vê
Encomenda(Order) eGuia de entrega(Delivery Order): são os dois dados com que o botão voltará a declarar a expedição. - Verifica que
EstadoéErro. O método só atua sobre as declarações nesse estado; as restantes deixa-as como estão. - Tem em conta que o botão não repete as duas salvaguardas da validação (a de «já declarado» e a do modo de fornecimento): só exige que a declaração esteja em
Erro.
Ao premir: o que faz o módulo, por ordem
Isto é o que acontece por dentro. Serve-te para saberes o que esperar no ecrã.
- O módulo toma, de cada declaração em
Erro, a suaEncomendae a suaGuia de entregae usa-as para voltar a declarar a expedição. - Cria uma declaração nova com os volumes dessa encomenda e dessa entrega. A declaração original ainda não é tocada.
- Liga-se à plataforma com a conta da encomenda e declara a expedição com o identificador da Octopia da encomenda e os volumes.
- Se a plataforma a aceitar, a declaração nova passa a
Declaradocom a sua data de expedição e a encomenda da Octopia fica marcada como enviada. - Só então, a declaração original passa também a
Declarado. O botão deixa de se ver nela, porque já não está emErro. - Se a plataforma devolver um erro, a declaração nova fica em
Errocom o texto do erro e o detalhe que dá a API, e a original continua emErro.
Depois de premir
- Abre em
Declarações de expediçãoa ficha da declaração original e a da nova, e vê o seuEstadoe a suaEncomenda. - Se a original está em
Declarado, a nova tentativa correu bem. - Se continua em
Erro, o botão continua visível e podes premi-lo outra vez, mas antes revê porque falhou. - Tem presente que cada tentativa falhada deixa uma declaração nova em
Erro, com a mesmaEncomendana sua ficha.
Que erros pode dar
O código contempla uma falha concreta: que a API da plataforma devolva um erro ao declarar a expedição. Nesse caso o módulo recolhe-o, guarda-o na declaração nova e deixa-a em Erro. O texto guardado é o do erro da API mais o seu detalhe, pelo que muda consoante o que a plataforma responder.
O que fazer: revê o erro que ficou guardado na declaração, corrige o que indicar e prime Tentar novamente de novo. A ligação passa pela FlexigoTech Cloud, que vigia a sincronização e avisa por e-mail se falhar.
Como ajuda a FlexigoTech
As outras ações do módulo explicam-se com o mesmo esquema: Enviar para a Octopia e Importar. O módulo está publicado na Odoo Apps para 17, 18, 19 e 20 (consulta a sua ficha), é de pagamento único por versão e precisa da subscrição da FlexigoTech Cloud (plano Conector: 49 €/mês ou 490 €/ano, sem IVA). Essa ligação guarda as credenciais cifradas. Se estás a implementar o Odoo e queres rever o fluxo de entregas, ou precisas de uma integração à medida, 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_octopia_connector 20.0 (4848da6a): views/octopia_order_actions_views.xml
- Código do módulo: flexigobe_octopia_connector 20.0 (4848da6a): models/octopia_order_actions.py
- apps.odoo.com/apps/modules/20.0/flexigobe_octopia_connector
- flexigotech.com/en/services.html
- flexigotech.com/precios.html
