Grid

fdavid
Posts: 31
Joined: Tue Jul 19, 2016 1:40 pm

Grid

Post by fdavid »

Tem alguma forma ou função LUA que popular um grid com registros que retornem do banco de dados ou precisa criar as linhas da table e usar laços para jogar os registros ?
User avatar
daniel_bable
Moderadores
Posts: 47
Joined: Wed Jun 19, 2013 1:06 am

Re: Grid

Post by daniel_bable »

Caro David, Bom dia!

Atualmente o Grid do HIscada Pro só aceita valor de Tag.
Para pode mostrar um valor de Banco de Dados você pode utilizar um relatório em forma de Tabela. Colocando um preview do relatório em uma tela.

Em caso de novas dúvidas, basta utilizar nosso fórum!
Daniel Bable Franco
Analista em Automação

HI Tecnologia - Indústria e Comércio Ltda
Campinas - SP
Fone: +55 (19) 2139-1700
Email: daniel.franco@hitecnologia.com.br
Web-site: http://www.hitecnologia.com.br
fdavid
Posts: 31
Joined: Tue Jul 19, 2016 1:40 pm

Re: Grid

Post by fdavid »

É possível incluir novas linhas em runtime no grid?
User avatar
daniel_bable
Moderadores
Posts: 47
Joined: Wed Jun 19, 2013 1:06 am

Re: Grid

Post by daniel_bable »

Caro David, Bom dia!

É possível se sua tabela estiver apontando para um modelo, assim quando você criar uma nova instância os tags que estão criados no modelo ira aparecer no grid.

Lembrando que nosso grid não olha para um Banco de Dados e sim para Tags.

Você pode ver um exemplo neste link.

Comentário: Olhando para o seu caso vimos que você esta precisando pegar uma informação de um Banco de Dados e mostrar em uma tela correto?
Como lembrado o nosso grid não consegue olhar para um Banco de Dados, Você pode criar uma relatório e usar um objeto chamado preview que mostra este relatório em uma tela.

Exemplo de como usar um preview neste link

Em caso de novas dúvidas, basta utilizar nosso fórum!
Daniel Bable Franco
Analista em Automação

HI Tecnologia - Indústria e Comércio Ltda
Campinas - SP
Fone: +55 (19) 2139-1700
Email: daniel.franco@hitecnologia.com.br
Web-site: http://www.hitecnologia.com.br
fdavid
Posts: 31
Joined: Tue Jul 19, 2016 1:40 pm

Re: Grid

Post by fdavid »

Nesse exemplo
http://doc.hitecnologia.com.br/hiscada_ ... model.html

Se eu quiser colocar um botão inserir e cada vez que clicar nesse botão um novo registro ser inserido no grid, na verdade é uma nova instancia que estarei criando, mas como fazer isso em runtime pelo script, pode dar um exemplo ?

É possível usar o Globals.GetTextList para pegar as instâncias e inserir, como é feito em listas de textos ?
http://forum.hitecnologia.com.br/viewto ... ?f=12&t=29
User avatar
daniel_bable
Moderadores
Posts: 47
Joined: Wed Jun 19, 2013 1:06 am

Re: Grid

Post by daniel_bable »

Caro David, Boa Tarde!

Isso você precisa criar um script para que possa ser feito a criação de uma nova instância.
Você pode ver alguns exemplos de scripts de instância neste link.

Não é possível usar o Globals.GetTextList para pegar as instâncias e inserir.

Em anexo a esta resposta, se encontra um arquivo de projeto do HIscada Pro exemplificando como criar instâncias através de um botão.

Basicamente neste exemplo, foram criados os seguintes itens para permitir tal funcionalidade:
Attachments
TutorialCriaModeloInstancia_HSP.H7G
Exemplo de aplicação para simular criação de instância através de um botão do HIscada Pro.
(569.24 KiB) Downloaded 390 times
Daniel Bable Franco
Analista em Automação

HI Tecnologia - Indústria e Comércio Ltda
Campinas - SP
Fone: +55 (19) 2139-1700
Email: daniel.franco@hitecnologia.com.br
Web-site: http://www.hitecnologia.com.br
fdavid
Posts: 31
Joined: Tue Jul 19, 2016 1:40 pm

Re: Grid

Post by fdavid »

Só me confirme então, para colocar os dados do banco de dados em um Grid eu preciso de:
Grid + TableModel + Model + Instance + Kernel.Tags ?

No exemplo indicado, porque é necessário executar o script CriaInstancia somente quando o Tag é alterada, não pode ser executada diretamente pelo botão?
User avatar
daniel_bable
Moderadores
Posts: 47
Joined: Wed Jun 19, 2013 1:06 am

Re: Grid

Post by daniel_bable »

Caro David, Boa Tarde!

Isso mesmo para colocar os dados do Banco de Dados no Grid você precisa pegar as informações do Bando de dados e transferir para tags.

É necessário executar o script CriaInstancia somente quando o Tag é alterada porque os scripts que são criados no Kernel você não consegue aloca-los nos objetos da tela(Não daria para aloca-lo no Botão). O script CriaInstancia é preciso ser criado no Kernel pois se você criar ele no viewer ele não ira funcionar, pois só o Kernel consegui criar instâncias. Então para que possamos executar o script é preciso colocar ele no On Tag Change de um tag do Kernel. Os tags do Kernel conseguimos aloca-los nos objetos de tela.

Em caso de novas dúvidas, basta utilizar nosso fórum!
Daniel Bable Franco
Analista em Automação

HI Tecnologia - Indústria e Comércio Ltda
Campinas - SP
Fone: +55 (19) 2139-1700
Email: daniel.franco@hitecnologia.com.br
Web-site: http://www.hitecnologia.com.br
fdavid
Posts: 31
Joined: Tue Jul 19, 2016 1:40 pm

Re: Grid

Post by fdavid »

Daniel,

Esse processo para popular o grid em runtime, faz com que cada registro do banco de dados fique gravado nas instancias (mesmo com o software sem executar), usando tags locais e estourando o limite da minha licença.

É possível outra solução?
Caso não, posso fazer dessa forma e ao sair do software excluir as instancias?

PS: preciso usar um Grid porque o usuário vai clicar no registro para alterar, em outros pontos que não tem essa interação vou usar preview.
User avatar
daniel_bable
Moderadores
Posts: 47
Joined: Wed Jun 19, 2013 1:06 am

Re: Grid

Post by daniel_bable »

Caro David, Boa Tarde!

Uma solução é você usar Tag vetor para poder contornar esse excesso de limites de tag, o Tag vetor você consegue escrever em todas as colunas da linha com apena um tag. Em anexo segue um exemplo de grid com Tag vetor.

Lembrando que o grid do nosso supervisório não faz acesso ao banco de dados.

Em caso de novas dúvidas, basta utilizar nosso fórum!
Attachments
GridTagVetor.H7G
Exemplo de aplicação de grid com tag vetor através HIscada Pro.
(557.5 KiB) Downloaded 379 times
Daniel Bable Franco
Analista em Automação

HI Tecnologia - Indústria e Comércio Ltda
Campinas - SP
Fone: +55 (19) 2139-1700
Email: daniel.franco@hitecnologia.com.br
Web-site: http://www.hitecnologia.com.br
Post Reply