Árvore de páginas

Versões comparadas

Chave

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

...

Logo abaixo é apresentado uma tabela que será preenchida por Campos que serão utilizados no Filtro da Consulta da Rotina. Esses campos obrigatoriamente tem de ser da Rotina indicada no campo Rotina MVC.

Os campos apresentados no Campo Chave também serão validados, verificando se existem no modelo apresentado.

A Rotina MVC obrigatoriamente tem de ter um Modelo com o pós fixo "MASTER". Por exemplo:  conforme exemplo abaixo. Se a rotina não tiver um modelo MASTER o sistema não irá encontrar a estrutura.

Obs: A rotina precisa estar publicada e disponível para consultas REST. Para disponibilizar o modelo siga a documentação do FWRestModel.

b. Consulta da Rotina Cadastrada

...

  • Campos virtuais: Nenhum campo virtual será demonstrado em tela.
  • Campos F3: Campos com consulta padrão serão disponibilizados em Combos. Os combos irão reproduzir a consulta original e retorna os 10 primeiros resultados. Para filtrar melhor a busca o usuário terá de digitar no campo.
  • Campos com CBOX: Campos com combo pré-definido (X3_CBOX) serão disponibilizados em Bullets (RadioButtons) com as opções abertas no Formulário.

O botão de Salvar s omente somente será habilitado após os campos obrigatórios serem preenchidos.

Ao clicar em Salvar o sistema irá rodas as todas as validações do modelo original.

As regras de When (X3_WHEN) ou Gatilhos (SX7) não  não serão reproduzidas na tela de cadastro.


05. TABELAS UTILIZADAS

  • OHX - Cabeçalho das Rotinas Customizadas

  • OHY - Campos de Filtro da Rotina Customizada



    Bloco de código
    languagevb
    themeRDark
    titleExemplo de MVC
    collapsetrue
    //-------------------------------------------------------------------
    /*/{Protheus.doc} JTest001
    Consulta de Log de aprovação - Modelo MVC de Exemplo
    /*/
    //-------------------------------------------------------------------
    Function JTest001()
    	Local oBrowse := FWMBrowse():New()
    	
    	oBrowse:SetDescription("Log de aprovação") 
    	oBrowse:SetAlias("ZZ1")
    	oBrowse:SetLocate()
    	oBrowse:Activate()
    
    Return Nil
    
    //-------------------------------------------------------------------
    /*/{Protheus.doc} ViewDef
    Estutura do Log de aprovação
    /*/
    //-------------------------------------------------------------------
    Static Function ViewDef()
    Local oStructZZ1 := FWFormStruct(2, "ZZ1")
    Local oModel     := FWLoadModel("JTest001")
    Local oView      := Nil
    	
    	oView := FWFormView():New()
    	oView:SetModel(oModel)
    	oView:AddField("JTest001_VIEW", oStructZZ1 , "ZZ1MASTER")
    	oView:CreateHorizontalBox("FORMFIELD", 100)
    	oView:SetOwnerView("JTest001_VIEW", "FORMFIELD")
    	oView:SetDescription("Log de aprovação")
    	oView:EnableControlBar(.T.)
    
    Return (oView)
    
    //-------------------------------------------------------------------
    /*/{Protheus.doc} ModelDef
    Estrutura do modelo do Log de Aprovação
    /*/
    //-------------------------------------------------------------------
    Static Function Modeldef()
    Local oStructZZ1 := FWFormStruct(1, "ZZ1")
    Local oModel     := NIL
    	
    	oModel:= MPFormModel():New("JTest001", /*Pre-Validacao*/, /*Pos-Validacao*/, /*Commit*/, /*Cancel*/)
    	oModel:AddFields("ZZ1MASTER", Nil, oStructZZ1 , /*Pre-Validacao*/, /*Pos-Validacao*/)
    	oModel:SetDescription("Log de aprovação")
    	oModel:GetModel("ZZ1MASTER"):SetDescription("Log de aprovação")
    
    Return (oModel)



...