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.
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:
- Backend compara catálogo atual com
$metadataretornado - Se há diferenças, dialog mostra: +N novos · −M retirados
- Você aprova → catálogo é gravado
- 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çãobotão verde) - Edição de integração existente (botão "Editar")
Nos 3 fluxos, comportamento idêntico.
Histórico de versões
- 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.
8/25/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).
5/19/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.
5/7/2026 · new