|
Bem Vindo, Visitante
|
Todos os Fórums
ADVPL
|
Imprimir
Enviar Para um Amigo Precisa estar Logado
|
|
|
Assunto: |
MVC - Legenda na Grid (Itens) |
|
Versão: |
11 |
|
Plataforma: |
Microsoft |
Complemento: |
|
|
DB: |
SQL Server |
Complemento: |
|
|
TREIN03.PRW (anexo) | |
|
|
|
Mensagem do
CARVALHO_X
em 27/08/2013, 17:54 h
Local: SP Registro: 27/08/2013 Postagens: 1 |
Boa tarde membros do Help Fácil.
Preciso de ajuda para incluir as "bolinhas de legenda" em uma Grid utilizando MVC.
Na Browser é fácil, é só usar o (AddLegend) tem vários materiais mostrando como se faz. Porém, já pesquisei bastante e fiz várias tentativas e ainda não achei nenhum jeito de colocar essa legenda na Grid (Itens).
Alguém sabe como fazer isso utilizando MVC?
Valeu. |
|
|
Mensagem do
MCH
em 15/04/2015, 16:48 h
Local: SP Registro: 18/05/2010 Postagens: 44 |
Boa tarde!
Sei que já faz um tempo seu post, mas estou precisando da mesma coisa.
Você conseguiu descobrir como fazer isso?
Obrigada! |
|
|
Mensagem do
MCH
em 15/04/2015, 16:49 h
Local: SP Registro: 18/05/2010 Postagens: 44 |
Boa tarde!
Sei que já faz um tempo seu post, mas estou precisando da mesma coisa.
Você conseguiu descobrir como fazer isso?
Obrigada! |
|
|
Mensagem do
RBGALO
em 15/04/2015, 21:57 h
Local: MG Registro: 07/06/2013 Postagens: 15 |
Boa noite,
você pode definir no MenuDef e criar a função.
ADD OPTION aRotina TITLE "Legenda" ACTION "U_LEGEN()" OPERATION 9 ACCESS 0
.
.
.
User Function LEGEN()
Local aLegenda := {}
aAdd( aLegenda, { "BR_VERDE" , "Aberto" })
aAdd( aLegenda, { "BR_VERMELHO" , "Fechamento Efetuado" })
aAdd( aLegenda, { "BR_AZUL" , "Medição Efetuada" })
BrwLegenda( cCadastro, "Legenda", aLegenda )
Return Nil
Att,
--
Rafael Bueno Galo |
|
|
Mensagem do
MCH
em 16/04/2015, 08:24 h
Local: SP Registro: 18/05/2010 Postagens: 44 |
Bom dia!
Então Rafael, mas nesse caso, seria a legenda no Browse né?
O que estou precisando é na grid.
Tenho uma rotina que tem os campos no cabeçalho e uma grid. Nessa grid, eu tenho um status nas linhas e queria colocar as legendas nessa grid.
Será que isso é possível?
Obrigada! |
|
|
Mensagem do
TEMESIO
em 16/04/2015, 11:35 h
Local: SP Registro: 11/03/2014 Postagens: 28 |
Em sua user function vc instancia a sua View e aplicas as propriedades do seu Browse.
oBrowse := FWMBrowse():New()
oBrowse:SetAlias(‘ZZB‘)
oBrowse:AddLegend( "ZZB_TIPO==‘1‘", "YELLOW", "Autor" )
oBrowse:AddLegend( "ZZB_TIPO==‘2‘", "BLUE" , "Interprete" )
oBrowse:SetDescription(‘Cadastro de Teste‘)
oBrowse:DisableDetails()
oBrowse:Activate()
Att.,
Jow
|
|
|
Mensagem do
TEMESIO
em 16/04/2015, 11:53 h
Local: SP Registro: 11/03/2014 Postagens: 28 |
Desculpe a minha falta de leitura, não li o seu ultimo post ! No exemplo encima é para colocar no Browser ! Esse aqui adiciona na Grid:
User Function COMP025_MVC()
Private oMark
// Instanciamento do classe
oMark := FWMarkBrowse():New()
// Definição da tabela a ser utilizada
oMark:SetAlias(‘ZA0‘)
// Define se utiliza controle de marcação exclusiva do oMark:SetSemaphore(.T.)
// Define a titulo do browse de marcacao
oMark:SetDescription(‘Seleção do Cadastro de Autor/Interprete‘)
// Define o campo que sera utilizado para a marcação
oMark:SetFieldMark( ‘ZA0_OK‘ )
// Define a legenda
72 - AdvPl utilizando MVC
oMark:AddLegend( "ZA0_TIPO==‘1‘", "YELLOW", "Autor" )
oMark:AddLegend( "ZA0_TIPO==‘2‘", "BLUE" , "Interprete" )
// Definição do filtro de aplicacao
oMark:SetFilterDefault( "ZA0_TIPO==‘1‘" )
// Ativacao da classe
oMark:Activate()
Return NIL
//-------------------------------------------------------------------
Static Function MenuDef()
Local aRotina := {}
ADD OPTION aRotina TITLE ‘Visualizar‘ ACTION ‘VIEWDEF.COMP025_MVC‘ OPERATION 2 ACCESS 0
ADD OPTION aRotina TITLE ‘Processar‘ ACTION ‘U_COMP25PROC()‘ OPERATION 2 ACCESS 0
Return aRotina
//-------------------------------------------------------------------
Static Function ModelDef()
// Utilizando um model que ja existe em outra aplicacao
Return FWLoadModel( ‘COMP011_MVC‘ )
//-------------------------------------------------------------------
Static Function ViewDef()
// Utilizando uma View que ja existe em outra aplicacao
Return FWLoadView( ‘COMP011_MVC‘ )
//-------------------------------------------------------------------
User Function COMP25PROC()
Local aArea := GetArea()
Local cMarca := oMark:Mark()
Local nCt := 0
ZA0->( dbGoTop() )
While !ZA0->( EOF() )
If oMark:IsMark(cMarca)
nCt++
EndIf
AdvPl utilizando MVC - 73
ZA0->( dbSkip() )
End
ApMsgInfo( ‘Foram marcados ‘ + AllTrim( Str( nCt ) ) + ‘ registros.‘ )
RestArea( aArea )
Return NIL
Att.,
Jow |
|
|
Mensagem do
MCH
em 16/04/2015, 12:08 h
Local: SP Registro: 18/05/2010 Postagens: 44 |
Então, mas nesse caso seria uma markbrowse correto?
Estou fazendo uma grid (como a msgetdados), sem opção de marcar, só no esquema de addgrid mesmo.
Comecei a trabalhar com mvc agora, não sei se é possível.
Obrigada!
Mary |
|
|
Mensagem do
FA6RICIO
em 14/01/2019, 16:12 h
Local: DF Registro: 02/02/2010 Postagens: 9 |
Consegui fazer, faz da seguinte forma no model você tem que criar um campo virtual do tipo imagem para receber a legenda depois vc tem que o criar no view também segue abaixo exemplo
No model antes de addgrid você adiciona um campo virtual na variável de estrutura da tabela desta forma, é nesta declaração, posição 11 o darray, que colocamos a regra para a legenda
oStruSE1:AddField( ;
AllTrim('') , ; // [01] C Titulo do campo
AllTrim('') , ; // [02] C ToolTip do campo
'E1_LEGEND' , ; // [03] C identificador (ID) do Field
'C' , ; // [04] C Tipo do campo
50 , ; // [05] N Tamanho do campo
0 , ; // [06] N Decimal do campo
NIL , ; // [07] B Code-block de validação do campo
NIL , ; // [08] B Code-block de validação When do campo
NIL , ; // [09] A Lista de valores permitido do campo
NIL , ; // [10] L Indica se o campo tem preenchimento obrigatório
{ || Iif(SE1->E1_SALDO <> SE1->E1_VALOR, "BR_VERMELHO","BR_VERDE") } , ; // [11] B Code-block de inicializacao do campo
NIL , ; // [12] L Indica se trata de um campo chave
NIL , ; // [13] L Indica se o campo pode receber valor em uma operação de update.
.T. ) // [14] L Indica se o campo é virtual
Depois no grid você cria o campo antes de vincular a estancia do grid a do model da seguinte forma
oStruSE1:AddField( ; // Ord. Tipo Desc.
'E1_LEGEND' , ; // [01] C Nome do Campo
"00" , ; // [02] C Ordem
AllTrim( '' ) , ; // [03] C Titulo do campo
AllTrim( '' ) , ; // [04] C Descricao do campo
{ 'Legenda' } , ; // [05] A Array com Help
'C' , ; // [06] C Tipo do campo
'@BMP' , ; // [07] C Picture
NIL , ; // [08] B Bloco de Picture Var
'' , ; // [09] C Consulta F3
.T. , ; // [10] L Indica se o campo é alteravel
NIL , ; // [11] C Pasta do campo
NIL , ; // [12] C Agrupamento do campo
NIL , ; // [13] A Lista de valores permitido do campo (Combo)
NIL , ; // [14] N Tamanho maximo da maior opção do combo
NIL , ; // [15] C Inicializador de Browse
.T. , ; // [16] L Indica se o campo é virtual
NIL , ; // [17] C Picture Variavel
NIL ) // [18] L Indica pulo de linha após o campo
Estou colocando um fonte de exemplo em anexo. |
|
|
Mensagem do
ALX_ALVES
em 03/08/2022, 21:17 h
Local: SP Registro: 24/11/2011 Postagens: 104 |
Boa noite Fabricio!
Queria agradecer por seu post que hoje, três anos depois, salvou meu projeto!
Que você tenha muito sucesso em tudo o que faz!
Muito obrigado!
Alexandre AS
Consultor Especialista Protheus - RH
xhuntet@gmail.com
Skype: xhuntet@outlook.com |
|
Para postar no Fórum você precisa efetuar o seu login ou se registrar
|
|