O Smart X moderniza a visualização de dados (Browse) com uma interface muito mais amigável e atualizada.
Como ele foi integrado diretamente à classe FWMBrowse, você pode aplicar esse novo visual facilmente em rotinas já existentes, como o Cadastro de Produtos (MATA010). Sua estrutura modular permite ativar apenas a nova tela inicial de visualização, aproveitando as regras de inclusão, edição e exclusão que o MATA010 já possui.
O desenvolvimento visual manual deixa de existir. O Protheus agora gera a tela automaticamente com base em Metadados/JSON.
Fim do Layout Manual: Funções como ViewDef, CreateHorizontalBox e AddOtherObject não funcionam mais. O layout agora é 100% responsivo e automático.
Fim do "When" Dinâmico: A validação de edição (X3_WHEN) não avalia mais expressões AdvPL em tempo real na tela.
Variáveis de Memória e Tabelas Temporárias: Estão proibidas. Como a API não guarda estado, tudo deve trafegar via JSON e usar tabelas reais no banco.
Markbrowse (Caixa de Seleção): Só funciona na tela principal de listagem (Browse). Não é possível usar Markbrowse nas grids internas de edição (Tabelas Filhas/Itens).
O Browse padrão perdeu algumas flexibilidades manuais para ganhar muita performance e padronização visual.
Painel Mestre/Detalhe: Aquela divisão de tela (Pedido em cima, Itens embaixo na mesma tela) não é mais o padrão. Agora, o usuário clica no registro e abre uma nova página com os detalhes (Drill-down).
Busca Rápida (Lupa): Agora ela só pesquisa o que já está carregado na memória (na página atual da grid). Para buscar algo que está no banco, deve-se usar o Filtro Avançado.
Papel de Trabalho (SIGACFG): Atenção máxima aqui! Toda a configuração de Papel de Trabalho é ignorada no Smart X (filtros forçados, restrição de botões, layout forçado).
O Smart X utiliza um Design System rigoroso (PO UI). O "carnaval visual" acaba em prol da acessibilidade e padronização corporativa.
Adeus Arquivos .BMP: Bolinhas coloridas e ícones antigos não funcionam.
Bem-vindas "Tags": As legendas agora são componentes web padronizados (retângulos com texto).
Cores Padronizadas: Você não pode mais usar RGB ou Hexadecimal. Deve usar as classes CSS do sistema (Ex: color-07 para Vermelho/Erro, color-11 para Verde/Sucesso).
Personalização do Usuário Limitada: O usuário final ainda pode escolher quais colunas ver e ordená-las, mas não pode mais injetar fórmulas AdvPL nas colunas, nem mudar livremente cores e fontes.
A lógica de programação muda de "manipular a tela" para "validar o dado".
Filtros AdvPL não funcionam: Filtros com Date() ou funções de usuário (U_Func) quebrarão. Tudo deve ser feito via SQL ou protocolo oData.
SetFilterDefault: Se for usar, é obrigatório colocar um @ antes da expressão para indicar que é um comando SQL direto (Ex: @ CAMPO = 'VALOR'). O DbSetFilter é simplesmente ignorado.
Pontos de Entrada (PEs): Focados apenas em regras de negócio.
Deixam de existir/Ignorados: MODELPRE, BUTTONBAR (botões agora são Actions da API).
Adaptados: FORMPRE, FORMPOS, MODELCOMMIT passam a receber e validar o objeto de dados (JSON/Modelo), sem manipular interface.
| Funcionalidade | Browser Padrão(MVC) | Bowser Smart X | Status na Migração |
| Botões Customizados | ✅ Faz (Bloco de código) | ⚠️ Adaptar | Converter para Actions/API. |
| Config. Papel Trabalho | ✅ Faz (Filtros, Layout) | ❌ Não Faz | Crítico. Migrar para código ou Dicionário. |
| DbSetFilter Workarea | ✅ Faz (Respeita filtro) | ❌ Não Faz | Crítico. Ignorado pela nova query. |
| Filtro com AdvPL | ✅ Faz (Date(), U_Func) | ❌ Não Faz | Crítico. Converter para SQL/oData. |
| Interface Responsiva | ⚠️ Limitado (HTML antigo) | ✅ Faz | Nativo (PO UI). |
| Legendas (.BMP) | ✅ Faz (Bitmaps/RGB) | ❌ Não Faz | Crítico. Usar Tags/CSS (color-07). |
| Painel Mestre/Detalhe | ✅ Faz (Mesma tela) | ❌ Não Faz | UX muda para Drill-down (Nova tela). |
| Pesquisa por Índice | ✅ Faz (Lupa/DbSeek) | ❌ Não Faz | Usar Filtro Avançado. Busca rápida é só memória. |
| Protocolo oData | ❌ Não Faz | ✅ Faz | Nativo. |
| SetFields | ✅ Faz | ❌ Não Faz | Crítico. Migrar para Dicionário. |
| SetFilterDefault | ✅ Faz (AdvPL e SQL) | ⚠️ Parcial | Requer SQL com prefixo @. |
No Browser Smart X só e permitido a utilização do Ponto de entrada com Retorno na Expressão SQL.
| Ponto de Entrada | Descrição | Browser Smart X |
| MA010FIL | Filtro do Browser expressão ADVPL | ❌ Não Faz |
| M010FILB | Filtro do Browser expressão SQL | ✅ Faz (Respeita filtro) |
| MT010BRW | Criar Botões no aRotina | ✅ Faz (Cria no Menu) |
