Base de conhecimento
Encontre respostas para suas dúvidas em quatro fontes de conhecimento diferentes ao mesmo tempo, simplificando o processo de pesquisa.

Cross Segmentos - TOTVS Backoffice Linha Protheus - ADVPL - Grid MVC

time.pngTempo aproximado para leitura: 00:02:00 min

Dúvida
Existe alguma classe que permite criarmos uma grid com as linhas editáveis e com uma coluna checkBox?

Ambiente
Cross Segmentos - Backoffice (Linha Protheus) - ADVPL -a partir da versão 12.1.17

Solução
Segue abaixo um modelo de exemplo apenas com grid e uma coluna checkBox em MVC.

#Include 'protheus.ch'
#Include 'fwmvcdef.ch'

#define cNomeArq "zProjetoMvc"
#define cTab    "SB1"

//-------------------------------------------------------------------
/*/{Protheus.doc} Eduardo Paro de Simoni
   Função principal da rotina MVC. 
-------------------------------------------------------------------*/
Function u_zGridMvc()
    FWExecView'GRID Sem Cabeçalho', "VIEWDEF."+cNomeArq+"", MODEL_OPERATION_INSERT, , { || .T. }, , 30 )
Return

//-------------------------------------------------------------------
/*/{Protheus.doc} ModelDef
//-------------------------------------------------------------------/*/
Static Function ModelDef()
    local oModel    as object
    local oStrCampo as object
    local oStrGrid  as object

    // Estrutura Fake de Field
    oStrCampo := FWFormModelStruct():New()

    //Adiciona uma estrutura que represente uma tabela, essa tabela
    oStrCampo:AddTable'' , { 'X_ZMVC' } , "Grid_Eduardo" , {|| ''} ) 

    //Adiciona um campo a estrutura.
    oStrCampo:AddField'X_ZMVC' , 'X_ZMVC' , 'X_ZMVC' , 'C' , 15 ) 

    //Estrutura de Grid
    oStrGrid := FWFormStruct1, cTab )

    oModel   := MPFormModel():New'MIDMAIN' )

    //Atribuindo formulários para o modelo
    oModel:AddFields('CABEC', , oStrCampo )
    oModel:AddGrid'GRID', 'CABEC', oStrGrid )
   
    //Setando a chave primária da rotina
    oModel:SetRelation'GRID', { { 'X_ZMVC', 'X_ZMVC' } } )
   
    //Adicionando descrição ao modelo
    oModel:SetDescription"Grid_Eduardo" )

    oModel:SetPrimaryKey( { 'X_ZMVC' } )
    oStrGrid:AddField('SELECT', ' ', 'SELECT', 'L', 1, 0, , , {}, .F.,FWBuildFeature( STRUCT_FEATURE_INIPAD, ".F."))

    // Necessário que haja alguma alteração na estrutura
    oModel:SetActivate( { | oModel | FwFldPut"X_ZMVC", "FAKE" ) } )

Return oModel

//-------------------------------------------------------------------
/*/{Protheus.doc} ViewDef
Função estática do ViewDef
//-------------------------------------------------------------------/*/
Static Function ViewDef()
    local oView    as object
    local oModel   as object
    local oStrCabec  as object
    local oStrGrid as object
   
    // Instancia a Estrutura
    oStrCabec := FWFormViewStruct():New()
    oStrCabec:AddField'X_ZMVC' , '01' , 'X_ZMVC' , 'X_ZMVC',{},'@!'  )
   
    // Instancia a Estrutura
    oStrGrid := FWFormStruct2, cTab )
    oStrGrid:AddField'SELECT','01','SELECT','SELECT',, 'Check')
   
    // Carrega o Modelo
    oModel  := FWLoadModel( cNomeArq )

    // Instancia a VIEW
    oView   := FwFormView():New()

    // Seta o Modelo da View
    oView:SetModeloModel )
   
    // Estrutura visual dos campos
    oView:AddField('CAB', oStrCabec, 'CABEC')
   
    // Estrutura visual das grids
    oView:AddGrid('GRID', oStrGrid, 'GRID')
   
    //Criando um container com nome tela com 100%
    oView:CreateHorizontalBox'CABEC', 0 )
    oView:CreateHorizontalBox'GRID', 100 )
   
    oView:SetOwnerView('CAB' , 'CABEC' )
    oView:SetOwnerView('GRID', 'GRID')

    oView:SetDescription"Grid_Eduardo" )
  
Return oView

Saiba mais
Esse artigo foi útil?
Usuários que acharam isso útil: 0 de 0

1 Comentários

  • Avatar
    Lucas Leandro de Moura

    Não encontra o 

    ViewDef.zProjetoMvc
    0
    Ações de comentário Permalink
Por favor, entre para comentar.
X Fechar

Olá ,

Há pendência referente a um de seus produtos contratados para a empresa ().

Entre em contato com o Centro de Serviços TOTVS para tratativa.

Ligue! 4003-0015 opção 4 e 9 ou registre uma solicitação para CST – Cobrança – Verificação de pendências financeiras . clique aqui.

TOTVS

X Fechar

Olá ,

Seu contato não está cadastrado no Portal do Cliente como um perfil autorizado a solicitar consultoria telefônica.

Por gentileza, acione o administrador do Portal de sua empresa para: (1)configurar o seu acesso ou (2)buscar um perfil autorizado para registro desse atendimento.

Em caso de dúvidas sobre a identificação do contato administrador do Portal, ligue (11) 4003-0015, opção 7 e, em seguida, opção 4 para buscar o suporte com o time de Assessoria ao Portal do Cliente. . clique aqui.

TOTVS

X Fechar

Olá ,

Para o atendimento de "Consultoria Telefônica" você deverá estar de acordo com o Faturamento.

TOTVS

X Fechar

Olá,

Algo inesperado ocorreu, e o usuario nao foi reconhecido ou você nao se encontra logado

Por favor realize um novo login

Em caso de dúvidas, entre em contato com o administrador do Portal de Clientes de sua empresa para verificação do seu usuário, ou Centro de Serviços TOTVS.

Ligue! 4003-0015 opção 4 e 9 ou registre uma solicitação para CST – Cadastros . clique aqui.

TOTVS

Chat _

Preencha os campos abaixo para iniciar o atendimento:

Chat _