Á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.

A Rotina MVC obrigatoriamente tem de ter um Modelo com o pós fixo "MASTER". Por exemplo: 

...

b. Consulta da Rotina Cadastrada

Na aba Caso ao informar o Código do Cliente e Loja na inclusão ou alteração do Caso, alguns campos exibem informações sugeridas, de acordo com os dados do Cadastro de Clientes são eles:

...

consulta da Rotina o usuário irá visualizar todos os registros da rotina. Para controle das colunas no Grid só serão demonstradas as colunas que estão marcadas como Browse igual a "Sim".

Na tela de Cadastro da Rotina MVC o sistema irá interpretar a Estrutura MVC obedecendo os seguintes critérios:

  • 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 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 serão reproduzidas na tela de cadastro.


05. TABELAS UTILIZADAS



  • Bloco de código
    languagevb
    themeRDark
    titleExemplo de MVC
    collapsetrue
    
    //-------------------------------------------------------------------
    /*/{Protheus.doc} JTest001
    Cadastro 
    /*/
    //-------------------------------------------------------------------
    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 da tela de 
    
    @author Jonatas Martins
    @since  06/05/2020
    /*/
    //-------------------------------------------------------------------
    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 de dados do Tipo de Fechamento
    
    @author Jonatas Martins
    @since  06/05/2020
    /*/
    //-------------------------------------------------------------------
    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)