Saltar para o conteúdo principal
Temu

O que faz o botão «Refresh Reports» do Temu Connector for Odoo

O botão Refresh Reports de uma campanha de anúncios pede à Temu, através da instância, o relatório de anúncios do produto da campanha dos últimos sete dias, entrega as linhas recebidas e regista a data em Last Report Sync; se algo falhar, a ação para e o Odoo mostra o erro no ecrã.

FlexigoTech · Responsável: Víctor Gómez · Atualizado em 5 de novembro de 2026

O essencial

Módulo
Temu
Versões
Odoo 17, 18, 19 e 20
Verificado
no código do conector, versão 19.0 · nas fontes indicadas no fim
Leitura
4 min

Onde está o botão e quando se vê

O botão Refresh Reports está na ficha das campanhas de anúncios da Temu. Chega-se lá pelo menu Temu › Marketing › Ad Campaigns, que abre o ecrã Ads Campaigns. Aí, tanto a ficha como a lista mostram os campos Instance, Goods, Last Report Sync e Last Error.

O botão não tem condição de visibilidade: vê-se sempre. Existe nos ramos 17.0, 18.0 e 19.0 do Odoo; no Odoo 19.0, ao clicar nele acontece o seguinte.

Esquema feito com código: o menu Temu › Marketing › Ad Campaigns e, por baixo, o botão Refresh Reports, com os rótulos em inglês do código
Esquema do percurso até ao botão, feito com código a partir do código publicado do módulo (não é uma captura do Odoo). Vale para o Odoo 17.0, 18.0 e 19.0.
Esquema feito com código: o texto Refresh Reports e a sua tradução
Esquema feito com código a partir das traduções publicadas do módulo (não é uma captura do Odoo): com o Odoo em português de Portugal, o botão continua a chamar-se Refresh Reports, porque o módulo não o traduz.
Temu orders in Odoo every 15 minutes. Stock out every 5
Vídeo: Temu orders in Odoo every 15 minutes. Stock out every 5 (vídeo em inglês)

Passo a passo: o que acontece ao clicar

  1. Abra Temu › Marketing › Ad Campaigns e entre na ficha da campanha cujo relatório quer atualizar.
  2. Veja os campos Instance e Goods da ficha: a consulta é lançada com essa instância e com esse produto. Repare também em Last Report Sync e Last Error para comparar antes e depois.
  3. Clique em Refresh Reports. O botão percorre as campanhas sobre as quais foi lançado e repete o que se segue com cada uma.
  4. Calcula a janela de datas: termina no momento atual e começa sete dias antes. O botão não pergunta por datas, usa essa janela.
  5. Pede à Temu, através da instância, o relatório de anúncios desse produto entre essas duas datas, convertidas em marcas de tempo em milissegundos. Se uma tentativa falhar, consoante o erro a instância tenta a alternativa seguinte ou para; se as alternativas se esgotarem, devolve-se o último erro. Quando a Temu responde, a instância guarda o método que funcionou, se for diferente do que tinha.
  6. Procura na resposta a lista de linhas do relatório: primeiro no sítio onde a espera; se não houver nada, noutras posições previstas da resposta e, como último recurso, toma a primeira lista que apareça nela.
  7. Entrega cada linha, uma a uma, ao registo de relatórios da Temu como relatório do tipo produtos, ligado a esta campanha e a este produto.
  8. Se tudo correu bem, escreve em Last Report Sync a data e hora do momento e esvazia Last Error.
  9. Confirme na ficha, ou na lista de Ads Campaigns, que Last Report Sync mudou e que Last Error está vazio.

O que muda e o que fica como estava

Na campanha, o botão escreve dois campos quando termina bem: Last Report Sync, que recebe a data e hora desse momento, e Last Error, que fica vazio. Na instância, só mexe no método que respondeu, e apenas se for diferente do guardado.

As linhas do relatório são entregues ao registo de relatórios da Temu com o tipo produtos e a referência à campanha e ao produto.

Que erros pode dar e o que verificar

A consulta à Temu e a entrega das linhas decorrem dentro de um bloco que apanha qualquer erro. Se algo falhar aí, o código atribui o texto do erro a Last Error e volta a lançar o erro: a ação para e o Odoo mostra a mensagem no ecrã. As campanhas seguintes não são processadas.

O botão não acrescenta texto próprio ao erro: o que vê é o do passo que falhou, a consulta à Temu ou a entrega das linhas.

Uma resposta sem linhas não é um erro

Se a Temu responder mas a resposta não trouxer nenhuma lista de linhas, o ciclo de entrega não tem nada para processar e o botão termina igualmente bem: atualiza Last Report Sync e esvazia Last Error. Uma data recente em Last Report Sync indica que a consulta terminou sem erro, não que tenham sido recebidas linhas.

Uma rotina que partilha com outras partes do módulo

A procura da lista de linhas na resposta (o passo seis) é uma rotina da instância que também é usada pela leitura de categorias da Temu. A essa leitura chega-se, sem clicar em nenhum botão, a partir da tarefa agendada Temu Sync Reference Cache, que corre a cada cinco minutos e está ativa ao instalar. Não confunda as duas coisas: o botão Refresh Reports clica-se numa campanha concreta e trabalha com o produto dessa campanha.

Como a FlexigoTech o ajuda

O Temu Connector for Odoo é um módulo de pagamento único por versão e precisa da subscrição do FlexigoTech Cloud, plano Conector: 49 €/mês ou 490 €/ano, sem IVA. A ligação passa pelo FlexigoTech Cloud, que guarda as credenciais cifradas, vigia a sincronização e avisa por e-mail se falhar. Pode ver o módulo na sua ficha do Odoo Apps ou na sua página em flexigotech.com.

Se está a implementar o Odoo e precisa de ligar a Temu, ou quer uma integração à medida, a FlexigoTech implementa o Odoo 17, 18, 19 e 20 e desenvolve conectores e integrações à medida.

Continue a ler

Campos da ficha Temu Dashboard: o que significa cada um e o que definirChecklist dos campos da ficha Temu Dashboard no Temu Connector for Odoo: o que diz a ajuda de cada um, o valor por defeito e o que convém decidir.
Verificado no código do conector (versão 19.0) e nas fontes indicadas

Fontes

  • Código do módulo: flexigobe_temu_connector 19.0 (455b3f0f): views/temu_ads_views.xml
  • Código do módulo: flexigobe_temu_connector 19.0 (455b3f0f): models/temu_ads.py
  • Código do módulo: flexigobe_temu_connector 19.0 (455b3f0f): models/temu_instance.py
  • flexigotech.com/en/services.html
  • flexigotech.com/precios.html