01. DADOS GERAIS
Linha de Produto: | Microsiga Protheus® |
---|---|
Segmento: | Serviços |
Módulo: | Fiscal |
02. DESCRIÇÃO
Inclusão do ponto de entrada MA080MNU , no fonte MATA080.prx, para adicionar novas Rotinas no Menu do cadastro de TES.
03. Especificação
Com passagem do ParamIxb[1] o aRotina é carregado com o Array do menu e com o ponto de entrada é possível adicionar as novas opções :
Segue detalhado a função aRotina:
Esse array contém as opções disponíveis para o usuário e as respectivas funções que serão executadas quando o usuário selecionar a opção. Ele deve ser declarado antes de se chamar a função mBrowse.
Este array deve ter a seguinte estrutura:
[n][1] --> Título da rotina que será exibido no menu
[n][2] --> Nome da função que será executada
[n][3] --> Parâmetro reservado. Deve ser sempre 0 (zero)
[n][4] --> Número da operação que a função executará. As alternativas são:
- 1=Pesquisa
- 2=Visualização
- 3=Inclusão
- 4=Alteração
- 5=Exclusão
- 6=Alteração sem a permissão para incluir novas linhas. É válido apenas para os objetos GetDados e GetDb.
[n][5] --> Parâmetro descontinuado.
Ao definir as funções no array aRotina, caso o nome da função não seja especificado com os parênteses, “()”, a mBrowse passará as seguintes variáveis de controle como parâmetros:
- cAlias = Nome da área de trabalho definida para a mBrowse;
- nReg = Número (Recno) do registro posicionado na mBrowse;
- nOpc = Posição da opção utilizada na mBrowse, de acordo com a ordem da função no array aRotina.
Segue um exemplo com as funções básicas:
AADD(aRotina, { “Pesquisar”, “AxPesqui”, 0, 1 })
AADD(aRotina, { “Visualizar”, “AxVisual” , 0, 2 })
AADD(aRotina, { “Incluir” , “AxInclui” , 0, 3 })
AADD(aRotina, { “Alterar” , “AxAltera” , 0, 4 })
AADD(aRotina, { “Excluir” , “AxDeleta” , 0, 5 })
A opção das funções no array aRotina define o conteúdo de uma variável de controle, que será repassada para as funções chamadas a partir da mBrowse, convencionada como nOpc. Desta forma, para manter o padrão da aplicação ERP Protheus, a ordem a ser seguida na definição do aRotina é:
- Pesquisar
- Visualizar
- Incluir
- Alterar
- Excluir
- Livre
04. EXEMPLO DE UTILIZAÇÃO
#INCLUDE "rwmake.ch" #INCLUDE "Topconn.ch" #INCLUDE "protheus.ch" #INCLUDE "FWMVCDEF.CH" User Function MA080MNU() Local aRotina := ParamIxb[1] ADD OPTION aRotina TITLE "opção adicionada 01" ACTION 'A080Manut' OPERATION 2 ACCESS 0 //"Visualizar" ADD OPTION aRotina TITLE "opção adicionada 02" ACTION 'A080Manut' OPERATION 2 ACCESS 0 //"Visualizar" ADD OPTION aRotina TITLE "opção adicionada 03" ACTION 'A080Manut' OPERATION 2 ACCESS 0 //"Visualizar" ADD OPTION aRotina TITLE "opção adicionada 04" ACTION 'A080Manut' OPERATION 2 ACCESS 0 //"Visualizar" ADD OPTION aRotina TITLE "opção adicionada 05" ACTION 'Alert("PE MA080MNU")' OPERATION 4 ACCESS 0 //"Executa Função" Return aRotina
05. DEMAIS INFORMAÇÕES
Não se Aplica.
06. ASSUNTOS RELACIONADOS
Para maiores informações : MBROWSE()