ADVPL - Como alterar o tipo de menu para Função de Usuário
Em algumas situações no TOTVS Protheus, pode ser necessário alterar o tipo de um item de menu para que ele seja reconhecido como uma Função de Usuário (User Function).
O comando SQL abaixo realiza essa alteração diretamente na tabela MPMENU_ITEM, modificando o campo I_TYPE para o valor '3', correspondente ao tipo Função de Usuário. O filtro utiliza a função cadastrada na tabela MPMENU_FUNCTION, permitindo localizar exatamente o menu desejado.
Update MPMENU_ITEM
Set I_TYPE = '3'
Where R_E_C_N_O_ IN (
Select ITEM.R_E_C_N_O_
From MPMENU_ITEM ITEM
Inner Join MPMENU_FUNCTION FUNC
On FUNC.D_E_L_E_T_ = ''
And FUNC.F_ID = I_ID_FUNC
Where ITEM.D_E_L_E_T_ = ''
And F_FUNCTION IN ('ATFRXXX')
)
Caso seja necessário alterar mais de uma rotina, basta incluir as funções desejadas na cláusula IN (...).
And F_FUNCTION IN ('ATFRXXX', 'MINHAFUNC', 'OUTRAROTINA')
Antes de executar o comando, recomenda-se realizar um backup do banco de dados e validar a alteração em um ambiente de homologação. Como a atualização é feita diretamente nas tabelas do Protheus, sua utilização deve ser realizada com cautela.
#ADVPL #Protheus #TOTVS #UserFunction #FuncaoDeUsuario #MPMENU #MPMENUITEM #MPMENUFUNCTION #BancoDeDados #SQLServer #Oracle #DBAccess #DesenvolvimentoTOTVS #CustomizacaoProtheus #ERP #Tecnologia #Programacao #DicasADVPL #SQL