Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

...

Comportamento Anterior X Novo Comportamento (SmartX)

AntesDepois
Opções adicionadas via PE apareciam exclusivamente no menu de Outras ações, sem possibilidade de destaque visual diferenciado.As opções podem ser exibidas como Page Actions, permitindo destacar botões diretamente no browse, fora do menu dropdown, facilitando o acesso às ações mais utilizadas.
Não havia distinção visual entre uma ação principal e uma ação secundária, pois todos os itens recebiam o mesmo tratamento visual.A distinção entre ação principal e ação secundária passa a ser realizada através do parâmetro PAGEACTION, definido em cada item de menu.

Em rotinas não-MVC, não existia a utilização da 10ª posição do array de retorno para definir o parâmetro responsável pela exibição do item como Page Action.

Em rotinas não-MVC, a 10ª posição do array de retorno deve receber o valor .T. para indicar que o item será exibido como Page Action.
Rotinas MVC utilizavam o comando ADD OPTION, porém sem suporte ao parâmetro PAGEACTION.Em rotinas MVC, o parâmetro PAGEACTION pode ser utilizado diretamente ao final da instrução ADD OPTION.
Dica
titleDica:

Botões adicionados ao menu Ações do registro (sem a utilização do lPageAction ou PAGEACTION) normalmente representam funcionalidades que dependem de um registro selecionado para sua execução. Já os botões exibidos como Page Action (lPageAction = .T. ou utilização do PAGEACTION no ADD OPTION) geralmente representam funcionalidades independentes da seleção de registros, ficando disponíveis diretamente no browse para acesso rápido.

02. Ponto de Entrada - Inclusão de Opções no Menu da Rotina

...

Bloco de código
languagecpp
themeMidnight
titleExemplo de PE - Não MVC
#INCLUDE 'TLPP-CORE.TH'

User Function CT240BUT()

    Local aNovoItemMenu As Array
    Local lPageAction   As Logical

    aNovoItemMenu := {}
    lPageAction   := .T. // Indica que o Botão Será Adicionado ao PageAction do Browse da Rotina.

    // Opção no Menu - Ações de Registro.
    aAdd( aNovoItemMenu, { 'Teste SmartX - Page Action', 'Alert( "Teste SmartX" )', 0, 9,,,,,, lPageAction } )

    // Opção Exibida Diretamente no Browse da Rotina.
    aAdd( aNovoItemMenu, { 'Teste SmartX', 'Alert( "Teste SmartX" )'			  , 0, 7 				   } )

Return( aNovoItemMenu )

03. Exemplo de Browse da Rotina

Abaixo são demonstrados dois exemplos de inclusão de botões: um utilizando os parâmetros PAGEACTION/lPageAction, que exibe o botão diretamente no PageAction do browser, e outro sem a utilização desses parâmetros, no qual o botão é exibido dentro do menu Ações do registro.

...