Cursos GeneXus - Carregando os tipos de dados estruturados

Documentos relacionados
Modelo conceitual de Smart Devices

UTILIZAÇÃO DE RECURSOS AVANÇADOS DO EXCEL EM FINANÇAS (PARTE III): GERENCIAMENTO DE CENÁRIOS

Cadeira de Tecnologias de Informação. Ano lectivo 2009/2010. Sites dinâmicos. Com Expression Web TI2009/10 EWD_1. Filipa Pires da Silva (2009)

Assessoria Técnica de Tecnologia da Informação - ATTI. Projeto de Informatização da. Secretaria Municipal de Saúde do. Município de São Paulo

Manual de Utilização. Ao acessar o endereço chegaremos a seguinte página de entrada: Tela de Abertura do Sistema

MANUAL DE INSTALAÇÃO DO MILLENNIUM BASIC

Programação para Web HTML - Parte 2

Para usar com Impressoras multifuncionais (MFPs) ativadas para a Tecnologia Xerox ConnectKey

APOSTILA DE INFORMÁTICA INTERNET E

CRIAÇÃO DE TABELAS NO ACCESS. Criação de Tabelas no Access

Manual do Usuário (Firma Inspetora) Versão 1.8. CMCP - Controle da Marcação Compulsória de Produtos

FastCube 2.0 Programmer Manual

ENG1000 Introdução à Engenharia

=E4/26 F10 =F4 = G4+F5

Trabalhando com Mala Direta e Etiquetas de Endereçamento no BrOffice/LibreOffice

Sobre o Visual C

EGEA ESAPL - IPVC. Resolução de Problemas de Programação Linear, com recurso ao Excel

REITORA Ulrika Arns. VICE-REITOR Almir Barros da Silva Santos Neto. DIRETOR DO NTIC Leonardo Bidese de Pinho

Os passos a seguir servirão de guia para utilização da funcionalidade Acordo Financeiro do TOTVS Gestão Financeira.

Manual do Usuário. Quiz Online

Curso GeneXus - Eventos em Smart Devices

SocialMap - Como unir o Foursquare, ArcGIS Online e o Facebook? - Parte III de III (opcional)

UNIVERSIDADE FEDERAL DO RIO GRANDE DO SUL INSTITUTO DE INFORMÁTICA DEPARTAMENTO DE INFORMÁTICA APLICADA INF INTRODUÇÃO À INFORMÁTICA

Usando o e a Internet

aplicação arquivo Condições Gerais de Utilização

SISTEMA OPERACIONAL - ANDROID

Unidade: Ferramentas de configuração Tópico: Tabelas e campos definidos pelo usuário

Portal de Sistemas Integrados. Manual do Usuário. Versão: 1.0

Anexação de tabelas, inserção de pontos, geração de polígonos e cálculo de áreas em ArcView

Conhecendo o Delphi 2010

PROCEDIMENTO DO CLIENTE


Manual SAGe Versão 1.2

Disciplina: Unidade III: Prof.: Período:

Configurar Thin Client X1 e X1W

CRIANDO UM MODELO ESTRUTURAL EM REVIT STRUCTURE

Para entender o conceito de objetos em programação devemos fazer uma analogia com o mundo real:

Curso de extensão em Blender Prof. Luiz Gonzaga Damasceno

Manual do Usuário Sistema de Acuidade Visual Digital

Criando um Site. Por: João Paulo Almeida

REITORA Ulrika Arns. VICE-REITOR Almir Barros da Silva Santos Neto. DIRETOR DO NTIC Leonardo Bidese de Pinho

Manual do Usúario Vivo Sync. Manual do Usuário. Versão Copyright Vivo

MANUAL DO PROFESSOR. - Inscrições Colégios. Colégios Participantes de Temporadas anteriores:

Capítulo 9 - Imagens. Imagens

Tutorial do aluno Ambiente Virtual de Aprendizagem (AVA) Rede e-tec Brasil

FLASH 5 E XML. XML - Simples

Texto: Módulo Geral Unidade 1 - Demonstração. 1 de 180

Documentação do produto SAP Business ByDesign, agosto Dados de parceiros de negócios

T.I. para o DealerSuite: Servidores Versão: 1.1

LOGO DO WEBSITE DA FUTURA APP

Manual do Usuário. VpetConverter Ferramenta para adequação de documentos para Petições Eletrônicas.

NOVA VERSÃO SAFE DOC MANUAL

Manual para Lançamento de Notas fiscais no SICON

TUTORIAL PROCESSOS DE INSTALAÇÃO DO MYMIX MOBILE

Este Procedimento Operacional Padrão define as etapas necessárias para o processo de inventário em um estoque, filial ou loja no APLWeb.

Manual de instalação do Microsoft SQL Server 2008 R2 Express no Windows 10

MANUAL DO PUBLICADOR

GUIA DO USUÁRIO AUTOR GECi Gerenciador de eventos científicos

Guia de Referência OPEN PROJECT Treinamento Essencial

Sistema De Gerenciamento Web UFFS

Administração Portal Controle Público

Bem-vindo ao tópico sobre conceitos de determinação de preços.

UNIMED LITORAL MANUAL DE PROCESSOS E SISTEMAS DE INFORMAÇÃO

SISVAN WEB. Informações Gerais para Navegar no Acesso Restrito

UNIVERSIDADE FEDERAL DO VALE DO SÃO FRANCISCO UNIVASF SECRETARIA DE TECNOLOGIA DA INFORMAÇÃO STI DEPARTAMENTO DE SISTEMAS DE INFORMAÇÕES

ROTEIRO PARA REGISTRO NO CONTAS ONLINE Programa Caminho da Escola Parte I Execução Financeira Data de atualização: 21/6/2012

OI CLOUD SEJA BEM-VINDO!

Configuração para Uso do Tablet no GigaChef e Outros Dispositivos

COMO CRIAR UM PEDIDO DE COMPRAS

Manual SOFIA (Software Inteligente ARPEN-SP) versão 0.1

Criar e formatar relatórios

Treinamento de e-commerce

MicroWork TOUCH CHECKLIST

Módulo e-rede Magento v1.0. Manual de. Instalação do Módulo. estamos todos ligados

Índice. Manual De instalação ProjectNet Manager

Driver Next Versão 1.0 de Português

Backup. O que é um backup?

TUTORIAL WINDOWS 7. Curso Técnico em Informática. Aluno: Ricardo B. Magalhães Período: Noturno Profª: Patrícia Pagliuca

Manual do KLinkStatus. Paulo Moura Guedes Tradução: Marcus Gama

Registro de Retenções Tributárias e Pagamentos

MANUAL DO SEU TABLET DO CONGRESSO

Objetivo do Portal da Gestão Escolar

e Autorizador Odontológico

MANUAL HAE - WEB MANUAL WEB HAE

CONFIGURAçÃO E GERAÇÃO DO LALUR. Parâmetros

WEBFLEET Índice remissivo. Notas de lançamento - Março de 2015

Parametrização do Banco de Dados PROGRESS Base de Dados Origem

Passos para a instalação

Recensão digital Dezembro de 2013

MICROSOFT OFFICE POWERPOINT 2007

SISTEMA QUADRO DE ESTOQUE ON-LINE MANUAL DE OPERAÇÃO

Programação WEB. Prof. André Gustavo Duarte de Almeida www3.ifrn.edu.br/~andrealmeida. Aula II jquery UI

GUIA DO USUÁRIO PARECERISTA GECi Gerenciador de Eventos Científicos

epucc.com.br SAIBA COMO INCLUIR INFORMAÇÕES DE COLABORADORES, CENTROS DE CUSTO E RATEIO DE DESPESAS

1. Como fazer uma pesquisa

CATEGORIA 2 INICIATIVAS DE INOVAÇÃO

WEBDESK SURFLOG. MANUAL DO USUÁRIO VERSÃO 2.0.1

Renovação do Semestre 2016/2

Transcrição:

Cursos GeneXus - Carregando os tipos de dados estruturados Em mais de uma oportunidade, precisamos armazenar na memória uma lista de elementos que contem o mesmo tipo de informação, mas diferentes valores guardados. Por exemplo, a agência de viagens pode precisar fazer operações com um grupo de clientes que cumpram determinado requisito Ou podem solicitar-nos processar informações de alguns dados específicos de um conjunto de atrações turísticas E isso pode implicar ter que carregar estas listas temporariamente na memória

Para resolver este tipo de requisito, é necessário criar uma estrutura na memória capaz de armazenar uma coleção de elementos. Já vimos que os tipos de dados estruturados permitem-nos definir estruturas que armazenam vários dados correspondentes a um elemento Por exemplo quando armazenamos o identificador, o nome o endereço de um cliente

Para armazenar vários elementos com dados de clientes, vimos que é necessário definir um tipo de dados estruturado

E marcar que se trata de uma coleção Vamos fazê-lo em GeneXus

Selecionamos o tipo de dados estruturado SDTCustomer que havíamos criado, pressionamos o botão direito do mouse, escolhemos Save as E damos a ele o nome SDTCustomers

Agora, clicamos em checkbox Is Collection : Se comparamos a estrutura do SDTCustomer e o SDTCustomers vemos que este último

Tem os mesmos membros que o anterior, mas agrupados em uma subestrutura denominada SDTCustomersItem Essa subestrutura foi criada automaticamente quando marcamos que se trata de uma coleção

Cada item armazenará os dados de um cliente E a coleção, o conjunto de clientes

Para carregar os dados da coleção vamos utilizar um objeto Data Privider Este objeto permite-nos carregar uma estrutura de dados

(por exemplo, a partir de dados do banco de dados) E nos devolve tal estrutura já carregada

Vamos criar um objeto Data Provider em GeneXus. Pressionamos Ctrl N, escolhemos o tipo Data Provider e damos nome ao objeto: DataProviderCustomers

Vemos que GeneXus nos posiciona na seção Source do Data Provider Aqui é onde vamos declarar como queremos que sejam carregados os dados na coleção que queremos devolver. Observemos como é fácil declarar o carregamento: Vamos à janela do Knowledge Base Navigator, localizamos o tipo de dados estruturado SDTCustomers e o arrastamos até o Source do Data Provider

Vemos que GeneXus escreveu automaticamente varias linhas de texto. Se abrimos as propriedades do DataProvider, Observamos que GeneXus atribuiu o nome da coleção SDTCustomers à propriedade Output

Isso significa que o DataProvider devolverá uma coleção do tipo de dados estruturado SDTCustomers, carregada com dados. Como o SDTCustomers já é uma coleção, não é necessário configurar a propriedade Collection com valor True Isso é o que faríamos se quiséssemos que o DataProvider nos devolva uma coleção a partir de um tipo de dados estruturado simples. Estudemos agora o que foi que GeneXus escreveu no source Reconhecemos o nome do tipo de dados estruturado SDTCustomers que é uma coleção

E depois, entre chaves, está a subestrutura do item da coleção Comparemos isso à estrutura do SDT: Vemos que GeneXus representou em forma de texto a estrutura do SDTCustomers

E nos deixou prontos os membros Id, Name e Address Do item SDTCustomersItem, para carregar-lhes um valor. Como vamos carregar esta condição a partir do conteúdo da tabela CUSTOMER, atribuímos ao membro Id o valor do atributo CustomerId

Ao membro Name, o valor do atributo CustomerName E ao membro Address o valor do atributo CustomerAddress. Observemos que em nenhum lugar estamos indicando a GeneXus como queremos que se carreguem estes valores, ou seja, que se deveria navegar pela tablea CUSTOMER e que para cada cliente encontrado, deve copiar seus dados a um item da coleção. O que estamos fazendo é simplesmente declarar quais valores queremos que GeneXus carregue na coleção de clientes, a partir dos valores dos atributos definidos na transação de clientes. A partir desta declaração, ao encontrar atributos do lado direito das atribuições

GeneXus trata de encontrar a tabela base que contém estes atributos de forma simular a como foi determinada a tabela base de um For Each. Neste caso, a tabela base é claramente CUSTOMER Como estamos atribuindo valores a um item da estrutura do tipo coleção, GeneXus recorre à tabela CUSTOMER e para cada cliente encontrado, copia os dados armazenados nos atributos Customer Id, CustomerName e CustomerAddress Até os membros Id, Name e Address de um novo item da coleção

O resultado final é que teriam ficado armazenados na coleção os dados de todos os clientes do banco de dados. Criaremos agora um objeto Web Panel para visualizar o conteúdo da coleção de clientes. Uma web panel é um objeto muito versátil que nos permite, entre outras coisas, mostrar informação, registrar dados ou construir uma tela de início do nosso aplicativo. Pressionamos Ctrl N, selecionamos o tipo de objeto web panel e colocamos nele o nome WebPanelViewCustomers. Agora vamos à seção de variáveis da web panel e definimos uma variável &Customers do tipo SDTCustomers Vamos à seção Web Form e, a partir da ToolBox, arrastamos um controle de atributo ou variável

E escolhemos a variável Customers Por tratar-se de uma variável do tipo SDT coleção, GeneXus abre-nos um quadro de diálogo para selecionar quais membros do SDTCustomer queremos ver. Estão todos selecionados e como queremos ver todos, pressionamos OK.

Observamos que GeneXus criou no Web Form uma série de controles para visualizar os diferentes elementos da variável &Customers. Agora vamos à seção Events da web panel e no combo box acima, à direita, nos são oferecidos vários nomes de eventos e escolhemos Start

Ao selecioná-lo, GeneXus escreve os comandos de início ao fim do evento Start Vamos codificar o evento start. Escrevemoss & e escolhemos a variável Customers. Agora, vamos carregar esta variável do tipo coleção, usando o DataProvider que criamos antes. Para isso, escrevemos o símbolo de igual e logo vamos à janela Knowledge Base Navigator, localizamos o DataProvider Customers e arrastamos até direita do símbolo de igual.

Completamos a instrução adicionando parênteses: Com esta instrução que escrevemos, estamos invocando o DataProviderCustomers, e este retornará uma coleção de clientes, que ficará carregada na variável &Customers. Lembremos que a variável &Customers é do tipo SDTCustomers E no Data Provider É carregada e devolve uma coleção de tipo do momento que arrastamos SDTCustomer a seu Source. Agora, dado que já temos definido o evento start da web panel, que carrega a variável &customers

invocando o Data Provider que definimos e como já incluímos a variável &Customers no Form está tudo pronto para que pressionemos F5 e possamos ver os dados carregados na coleção.

Vemos que GeneXus adicionou um link correspondente ao Web Panel View Customers Clicamos no link... E vemos exibidos na tela todos os clientes que estavam armazenados no banco de dados. Estes dados foram extraídos do banco de dados pelo Data Provider, carregados na memória temporária em uma variável de tipo SDT coleção e seu conteúdo foi exibido no form do web panel.

Em vez de simplesmente exibir os dados, ao estar disponíveis na memória, poderíamos ter realizado algum processo ou operações sobre os eles, sem necessidade de ter que acessar outra vez o banco de dados para obtê-los. Vimos a flexibilidade e potência dos Data Providers para carregar dados em uma estrutura de dados, em particular uma do tipo coleção e o simples que foi declarar que queríamos carregar, resolvendo GeneXus tudo o que for necessário para fazê-lo acontecer. Mais para frente, veremos outros exemplos de uso dos Data Providers.