O que faz a tarefa em cada passagem
A tarefa agendada Mirakl - Sincronizar Devoluções existe em todas as versões publicadas do Mirakl Connector (Odoo 17, 18, 19 e 20), corre a cada 30 minutos e vem ativa ao instalar.
No Odoo 20.0, em cada passagem, a tarefa verifica que quem a executa é administrador, procura os marketplaces ativos com a sincronização de devoluções ativada, fica com os que consegue chamar e, para cada um, pede as suas devoluções ao marketplace por páginas e processa uma a uma as que chegam. As fichas dos marketplaces abrem-se a partir do menu Mirakl › Configuração › Marketplaces; para ver o menu Mirakl basta ser utilizador interno do Odoo.

Com o Odoo em português de Portugal a tarefa chama-se Mirakl - Sincronizar Devoluções; o esquema seguinte reúne o seu nome noutros idiomas.


Como se comporta a tarefa
Corre a cada 30 minutos e exige um administrador
A frequência é a cada 30 minutos. No Odoo 17.0 a tarefa repete-se sem fim. No Odoo 20.0, a primeira coisa que cada passagem faz é verificar o utilizador: se for lançada por alguém que não é administrador, para com Só um administrador pode executar esta ação agendada. (Only an administrator can run this scheduled action.) e não se processa nenhum marketplace.
Nem todos os marketplaces entram na passagem
No Odoo 20.0, a pesquisa parte dos marketplaces ativos com a sincronização de devoluções ativada; os restantes não são tocados. Depois, o módulo filtra os que consegue chamar: primeiro os de ligação direta e depois os que passam pela FlexigoTech Cloud, e destes apenas os que têm uma chave guardada. Além disso, se a permissão guardada não incluir o serviço do módulo (isto verifica-se sem sair para a rede), nenhum dos da FlexigoTech Cloud é chamado nessa passagem. Os de ligação direta seguem o seu curso.
Uma pausa da FlexigoTech Cloud corta o resto da passagem
Se a FlexigoTech Cloud não deixa passar o pedido (porque não há subscrição ou há uma pausa do serviço), não se marca nem se apaga nada e a passagem corta-se aí: os marketplaces que faltavam esperam pela seguinte, que segue o seu curso. Por isso os de ligação direta vão primeiro: uma pausa não deixa nenhum deles sem atendimento. A pausa só conta para o relatório de saúde da FlexigoTech Cloud, com códigos e nunca texto. Sem subscrição, ou com o serviço suspenso, pára o que a subscrição dá; os dados ficam no teu Odoo.
Uma falha num marketplace não trava os outros
Qualquer outro erro num marketplace é registado no log do servidor do Odoo e o módulo tenta deixar uma linha de registo do tipo erro com o texto do erro; depois passa ao marketplace seguinte. Se nem sequer for possível escrever essa linha, o módulo deixa um aviso no log do servidor, e essa falha do registo não substitui o erro original.
Se o marketplace responde com um 404 às devoluções
Se o marketplace responde com um 404 (HTTP 404) ao pedido de devoluções, o módulo deixa uma linha de registo do tipo aviso com o texto Endpoint de devoluções não disponível (HTTP 404). (Returns endpoint not available (HTTP 404).). Depois, se o marketplace tem ativado o recurso por encomendas, o módulo passa a outro método de sincronização; se não, adianta para este momento a marca da última sincronização de devoluções e termina sem processar nada.
Uma resposta que o conector não reconhece não é uma página vazia
Se chega uma página sem devoluções, a passagem desse marketplace termina. Mas se a resposta tem uma forma que o conector não reconhece, o módulo deixa uma linha de registo do tipo erro e não adianta a janela de sincronização, para não passar ao lado de devoluções que não leu.
Páginas, limite e quando pára
A tarefa pede páginas de um tamanho fixo, processa cada devolução e conta-a. Pára quando uma página traz menos devoluções do que o tamanho da página, quando já leu o total que o marketplace anuncia ou quando chega ao limite de páginas por passagem (no mínimo, uma página).
O que verificar se parece não fazer nada
- A tarefa aparece entre as ações agendadas do Odoo com o nome
Mirakl - Sincronizar Devoluçõese está ativa. - O marketplace está ativo e com a sincronização de devoluções ativada; se não, não entra na pesquisa (as suas fichas abrem-se a partir de
Mirakl › Configuração › Marketplaces). - Se se liga pela FlexigoTech Cloud, tem uma chave guardada e o serviço está em vigor. A FlexigoTech Cloud vigia a sincronização e avisa por e-mail se falhar.
- Se outro marketplace da mesma passagem deu uma pausa da FlexigoTech Cloud, a passagem cortou-se e os que faltavam esperam pela seguinte.
- Se o marketplace respondeu com um 404, procura uma linha de registo do tipo aviso com o texto
Endpoint de devoluções não disponível (HTTP 404). - Se há uma linha de registo do tipo erro, lê o seu texto: é o erro desse marketplace.
Como ajuda a FlexigoTech
A FlexigoTech implementa Odoo 17, 18, 19 e 20 e desenvolve conectores e integrações à medida. O Mirakl Connector é um módulo de pagamento único por versão e precisa da subscrição da FlexigoTech Cloud (plano Conector: 49 €/mês ou 490 €/ano, sem IVA). Podes ver o módulo na sua página ou na ficha do Odoo Apps.
Continue a ler
Verificado no código do conector (versão 17.0 e 20.0) e nas fontes indicadas
Fontes
- Código do módulo: flexigobe_mirakl_connector 20.0 (aa05e537): data/ir_cron_data.xml
- Código do módulo: flexigobe_mirakl_connector 17.0 (e430de3e): data/ir_cron_data.xml
- Código do módulo: flexigobe_mirakl_connector 20.0 (aa05e537): models/mirakl_instance.py
- Código do módulo: flexigobe_mirakl_connector 20.0 (aa05e537): models/mirakl_ai.py
- apps.odoo.com/apps/modules/20.0/flexigobe_mirakl_connector
- flexigotech.com/en/services.html
- flexigotech.com/precios.html
