Clipper On Line • Ver Tópico - Acrescentar itens na Grid com Vetor para os campos

Acrescentar itens na Grid com Vetor para os campos

Projeto MiniGui - Biblioteca visual para Harbour/xHarbour

Moderador: Moderadores

 

Acrescentar itens na Grid com Vetor para os campos

Mensagempor rubens » 24 Out 2018 15:10

Boa tarde..
Estou tentando fazer um rotina genérica para as consultas do meus grids.
Tenho essa linha para adicionar os itens no Grid
consulta.Grid_1.AddItem( {CLI->CODIGO,CLI->NOME})

Preciso criar um vetor e usar esse vetor para adicionar itens.
aCampos := {CLI->CODIGO,CLI->NOME}

Se coloco o nome do vetor direto dentro da função ADDITEM()
consulta.Grid_1.AddItem(aCampos)

ele repete a descrição nos itens como na figura abaixo.
Grid repetindo descricao.png

Tentei colocar o nome do vetor entre parenteses ou com macro & e dá erro na compilação.
Como eu faço?

Obrigado
Rubens
"Eu e minha casa servimos ao Senhor e você ???"
Avatar de usuário

rubens
Colaborador

Colaborador
 
Mensagens: 1518
Data de registro: 16 Ago 2003 09:05
Cidade/Estado: Nova Xavantina - MT
Curtiu: 77 vezes
Mens.Curtidas: 104 vezes

Acrescentar itens na Grid com Vetor para os campos

Mensagempor bjbernal » 24 Out 2018 20:27

Você precisa criar UM LOOP para alimentar a grid com cada elemento do vetor.

nelementos := len(vetor)
For i = 1 to nelementos
sitem := vetor[i]
form.grid.AddItem(sitem)
Next i
bjbernal
Usuário Nível 1

Usuário Nível 1
 
Mensagens: 31
Data de registro: 06 Ago 2004 17:27
Curtiu: 0 vez
Mens.Curtidas: 0 vez

Acrescentar itens na Grid com Vetor para os campos

Mensagempor Toledo » 24 Out 2018 21:35

Rubens, se você colocar em aCampos todos os registros que serão apresentados no Grid, então você pode usar:

consulta.Grid_1.SetArray := aCampos


Neste caso, em aCampos você tem que incluir ( AADD(aCampos,{CLI->CODIGO,CLI->NOME}) ) todos os elementos/registros que serão apresentados no Grid, que é diferente do AddItem que inclui um a um os registros.

Abraços,
Toledo - Clipper On Line
toledo@pctoledo.com.br
Harbour 3.2/MiniGui/HwGui
Faça uma doação para o fórum, clique neste link: http://www.pctoledo.com.br/doacao
Avatar de usuário

Toledo
Administrador

Administrador
 
Mensagens: 3038
Data de registro: 22 Jul 2003 18:39
Cidade/Estado: Araçatuba - SP
Curtiu: 263 vezes
Mens.Curtidas: 258 vezes

Acrescentar itens na Grid com Vetor para os campos

Mensagempor rubens » 25 Out 2018 07:39

Bom dia..
bjbernal já estava sendo feito em loop, resultado de um wildseek.

Toledo... funcionou belezinha... perfeito.. obrigado..

:))
Rubens
"Eu e minha casa servimos ao Senhor e você ???"
Avatar de usuário

rubens
Colaborador

Colaborador
 
Mensagens: 1518
Data de registro: 16 Ago 2003 09:05
Cidade/Estado: Nova Xavantina - MT
Curtiu: 77 vezes
Mens.Curtidas: 104 vezes

Acrescentar itens na Grid com Vetor para os campos

Mensagempor rubens » 25 Out 2018 08:12

Ops..
me enganei... fiz alteração no lugar errado...
Quando alterei o local correto me apresentou erro de ITEM lenght mismatch.
Daí dei mais um revisadinha e consegui assim, colocando os campos entre aspas, gerando uma variável texto ao invés de um vetor
Private aCampos   := "{CLI->CODIGO,CLI->NOME,IIF(CLI->JURIDICA='J',CLI->CGC,CLI->CPF),TRAN(CLI->SALDO,PVALOR),CLI->SITUACAO}"   

e na hora de adicionar no grid usando macro.. aí funcionou beleza..
Consulta.Grid_1.AddItem( &aCampos )


detalhe: aCampos está sendo criado em um função que chama a outra função com o AddItem.
Mas funcionou, bola para frente porque estou muito atrasado aqui devido ao esforço da implantação da Nfe 4.00.

Rubens
"Eu e minha casa servimos ao Senhor e você ???"
Avatar de usuário

rubens
Colaborador

Colaborador
 
Mensagens: 1518
Data de registro: 16 Ago 2003 09:05
Cidade/Estado: Nova Xavantina - MT
Curtiu: 77 vezes
Mens.Curtidas: 104 vezes




Retornar para MiniGui

Quem está online

Usuários vendo este fórum: Nenhum usuário registrado online e 7 visitantes


Ola Amigo, espero que meu site e forum tem lhe beneficiado, com exemplos e dicas de programacao.
Entao divulgue o link da Doacao abaixo para seus amigos e redes sociais ou faça uma doacao para o site forum...
MUITO OBRIGADO PELA SUA DOACAO!
Faça uma doação para o forum
cron
v
Olá visitante, seja bem-vindo ao Fórum Clipper On Line!
Efetue o seu login ou faça o seu Registro