MaSXBManager
Classe pra criar/editar consultas padrao do Protheus (tabela SXB). Substitui edicao manual via Configurador.
Assinatura: MaSXBManager():New() -> oManager
Retorna: object
Consultas padrao (F3 / browse de campos) sao cadastradas na tabela SXB. MaSXBManager permite manipular essas consultas via codigo — util pra deploy automatizado e patches.
Sintaxe basica
Local oMgr := MaSXBManager():New()
// Criar nova consulta padrao
oMgr:CreateNew("CXBCLI", "01", "SA1", "Cliente Custom")
oMgr:AddDescricao("01", "CXBCLI", "P", "Cliente Custom")
oMgr:AddDescricao("02", "CXBCLI", "P", "Pesquise pelo codigo")
oMgr:AddRetornoCampo("CXBCLI", "A1_COD")
oMgr:Save()Uso real: padronizar consulta entre clientes
Em projeto multi-cliente, voce quer que todos tenham a mesma consulta padrao customizada. Em vez de cada um cadastrar manual via Configurador, voce roda um U_DeployConsultas() que usa MaSXBManager pra criar tudo do mesmo jeito.
Editar consulta existente
Local oMgr := MaSXBManager():New()
If oMgr:Load("CXBCLI")
oMgr:SetWhere("A1_MSBLQL = '2'") // so clientes ativos
oMgr:Save()
EndIfPegadinha
Mudancas na SXB precisam de logout/login dos usuarios pra serem visiveis (cache de dicionario). Considere RPCSendMessage pra notificar.
Exemplos
Criar consulta
oMgr := MaSXBManager():New()
oMgr:CreateNew("CXBCLI", "01", "SA1", "Cli Custom")
oMgr:Save()