Voltar para Central de ajuda
FT-CATALOG-REFRESH-V1· 1.1.2Catálogo

Atualização do catálogo: preview + confirmação

Quando você testa conexão OData e o SAP tem fields diferentes do catálogo local, abre um dialog mostrando added/removed antes de gravar.

Atualizado em 05/10/2026

Filosofia



  • Auto-disparado pelo sistema (test connection) → dialog de confirmação
  • Disparado explicitamente por você (botão "Atualizar catálogo" do banner stale, "Sincronizar com catálogo") → silencioso, info no toast/audit


Fluxo do dialog



Após test OData bem-sucedido:

  1. Backend compara catálogo atual com $metadata retornado
  2. Se há diferenças, dialog mostra: +N novos · −M retirados
  3. Você aprova → catálogo é gravado
  4. Você cancela → catálogo fica como está (teste continua sucesso)


Onde aplica



  • Wizard de criação (Step 2 source + Step 3 destino)
  • Criação manual (+ Nova Integração botão verde)
  • Edição de integração existente (botão "Editar")


Nos 3 fluxos, comportamento idêntico.

O que a comparação mostra (28/09/2026)



A tela de comparação do catálogo com o $metadata traz três contagens:

  • Nomes: campos que entram e que saem.
  • Estrutura: campos que continuam com o mesmo nome mas mudaram de forma — laço (loopPath), cardinalidade, repetição (maxOccurs), caminho qualificado, segmento ou tipo. A tela diz quantos campos mudaram em cada item e lista os primeiros 50, com o valor antes e depois.
  • Coleções: itens, parceiros e outros grupos que passam a ser (ou deixam de ser) coleção.


Uma atualização que só muda a forma dos campos não aparece mais como "0 diferenças". Se uma coleção vai deixar de existir, confira a fonte antes de confirmar: os mapeamentos daquela coleção passariam a ler só a primeira linha.

Qual mensagem é atualizada (05/10/2026)



O Atualizar via $metadata grava na mensagem que você abriu no catálogo — a mesma versão e o mesmo serviço SAP — e nunca cria outra mensagem com o mesmo código. Se o catálogo não puder ser lido naquele momento, nada é gravado e a tela mostra o erro: tente de novo. A lista do catálogo também não aparece pela metade: se a leitura falhar, a tela mostra o erro em vez de esconder mensagens.

Histórico de versões

  • 1.1.2

    Correção no "Atualizar fonte" do catálogo: mensagem global sem versão (como os IDocs ORDERS05 e INVOIC02) agora é encontrada no banco e atualizada por mescla — a estrutura nova da fonte entra e o que foi curado (campos de envelope preenchidos automaticamente, tipo do campo, obrigatoriedade técnica) fica. Antes, a mensagem sem versão não era encontrada e a atualização regravava a mensagem só com a fonte, perdendo o curado. Se a mensagem não puder ser identificada com certeza, nada é gravado. O ORDERS05 afetado em 07/10/2026 teve o curado restaurado.

    07/10/2026 · updated

  • 1.1.1

    Fix: normalizeFormatKey nunca normaliza code alfanumérico pra vazio (code "SAP" do rest-autodetect ficava inresolvível e travava o Nova Mensagem); FormatPicker agora exibe warning âmbar quando suggest-format responde isEmpty/not_found (antes engolia em silêncio). 3 testes novos.

    25/08/2026 · updated

  • 1.1.0

    Catálogo 19/05: bugfix do upsert com partial unique NULL (lookup+UPDATE/INSERT manual) (#93), auto-atualizar após test connection OData bem-sucedido com helper extraído upsertCatalogFromMetadata (#106), C2 preview+confirm pós test (#113), C4 refresh implícito pré-sincronizar (#113).

    19/05/2026 · updated

  • 1.0.0

    Backend pra atualizar fonte de mensagem do catálogo. Endpoint POST /api/edi-hub/refresh-catalog-message: lookup DB→hard-coded fallback, fetch URL nova ou usa generatedFrom existente (se URL), parse, UPDATE em DB ou INSERT overlay sobre hard-coded. Helper loadAllStandards atualizado: marca _origin db|hardcoded em cada msg + dedup (DB sobrepõe hard-coded com mesmo code+version). LocalFormat type ganha _origin opcional. Audit log catalog.message_refreshed.

    07/05/2026 · new