DDK GUI. Parte 4. Tecnologia

Documentos relacionados
DDK GUI. Parte 6. Tecnologia

Curso de Técnicas de Desenvolvimento Utilizando o UIB

Progress DCA Desenvolvendo Aplicações Caracter Parte 3

Desenvolvimento de Programas utilizando DDK2000 ThinTemplates + DBOs. Sandro Kellermann de Carvalho Desenvolvedor Progress Acton

Boas Práticas de Programação

CLAUDIUS EDELSBRUNNER

MANUAL PARA APLICAR NOTAS

ALFACONT 2 Sistema de Contabilidade Versão Eleusmário Mariano Rabelo. Acesso ao Sistema

Sistema de Gestão do Processo de Certificação ABNT (CERTO) Guia do Auditor

Manual de Utilização Sistema de Câmara de Compensação (SCC)

Construção de DBOs 2.0

Para criar um projeto no ambiente eclipse utiliza-se o menu File, New e Project como ilustra a Figura 1.

Importar dados de arquivos de texto para um banco de dados no BioNumerics versão 6.5 no idioma Inglês

Processo de inclusã o de Pãrceiro de Bibliotecã

Padrão ix. Q-Ware Cloud File Publisher - QWCFP. Manual para realização de Download de Arquivos

Painel Administrativo Westlock

SINACOR GUIA UTILIZAÇÃO CADASTRO DE CLIENTES - PCIN

* Procedimentos de definição DE-PARA DE CONTAS EMS5

MANUAL PARA APLICAR NOTAS

Ambiente Virtual de Aprendizagem

VPRS Aplicativo Conversor Vida Manual do Usuário. Manual do Usuário

MANUAL DE INSTALAÇÃO

MANUAL OFICIAL DE JUSTIÇA 1º GRAU

SISTEMA ADM ERP - MANUAL DO USUÁRIO. Conceitos Básicos

BECOMEX Melhores Práticas

Visual Studio+SQL Server Express LocalDB ANTONIO LUIS

Configuração de Conta de no Outlook 2013 e Backup de Segurança dos s

ATUALIZAÇÃO CERTIFICADO NF-E

Manual de utilização do site institucional

Guia de Utilização Portal RH

ADIANTI FRAMEWORK PARA PHP

Configuração de Conta de no Outlook 2003 / 2007 e Backup de Segurança dos s

Novo Sistema de Agenda

SINACOR MODULO DE GARANTIAS.

Universidade da Beira Interior. Sistemas Distribuídos /2015 Curso: Engª Informática. Folha 11. JAX-RS: Java API for RESTful Web Services

Uma solução possível para garantir, em ambiente APEX, a consistência duma estrutura ISA, total e disjuntiva.

TICs IVINHEMA-MS

Guia de Consulta Rápida

MANUAL PARA CONVERSÃO DE BASE DE DADOS

Manual Sistema de Gerenciamento dos Auxiliares da Justiça

PHILAE - SISTEMA DE RELACIONAMENTO - MANUAL DE INSTALAÇÃO

Rotinas do MULTITERM 95.

Crystal Reports - Gerando seus relatórios.

SINACOR TESOURARIA LIQUIDANTE. Classificação das Informações. Confidencial [ ] Uso Interno [ X ] Uso Público 6/6/2016

Programação para web HTML: Formulários

TUTORIAL GERENCIAMENTO DE PRODUTOS

OPERAÇÃO DA PLATAFORMA MANUAL PARA FORNECEDORES

MTG-PR OFFLINE PASSO A PASSO PARA BAIXAR O MTG-PR OFFLINE

Novo Portal de Notas Fiscais

Sumário. 1

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

Tutorial para Primeiro Acesso e Recuperação de Senha (Moodle de Extensão) Autores: Tiago Mazzutti Mauricio Oliveira Haensch

Aprendendo o PowerPoint


Tutorial para atualização de notícias/blog

Atualização de Cadastros de Funcionários

Importação de Sped Contribuições

Comunicador Interno (Mensagens Instantâneas)

SFA Sistema de Fortalecimento das Aprendizagens - SFA Manual Módulo do Professor Versão 01

PORTAL DE COMPRAS PÚBLICAS

PROCEDIMENTO DE INVENTARIO MIM. 1. Logar com usuário e senha no MIM

SINACOR MODULO DE GARANTIAS.

Backup do Banco Sybase Passo a Passo

MATRÍCULAS ON LINE MANUAL DO DISCENTE

MANUAL DE PUBLICAÇÃO NO PORTAL CAMPUS MATÃO

FastCube 2.0 Programmer Manual

Índice. 1. Introdução Instalação: Eclipse e Android Primeira aplicação em Android... 11

Na seqüência, será aberta uma página de login de acesso ao ambiente de gerenciamento do portal, conforme ilustrado na figura 01, abaixo: Figura 01

Cadastro de múltiplos documentos através do XML

SINECON CARREGA CSV. 2) Converter todas as colunas, exceto de números, para o formato Texto, fazendo:

COBOL DB2- CICS. Prof. Maromo [Aula 6]

Manual Autorizador Web

C A R T I L H A. - Recursos Humanos Cargos

ESTUDO DE CASO EM PL/SQL

Manual Sistema de Gerenciamento dos Auxiliares da Justiça

Manual de Padrões. Programação EMS 2.0. Março/2006

Arquiteturas e desenhos finais

SISTEMA CERTORIGEM PERFIL EXPORTADOR

SISTEMA DE GESTÃO PEDAGÓGICA Manual do Professor

Manual SAGe Versão 1.0 (a partir da versão )

Outlook Web App (OWA)

Objectivos: Criar um programa de instalação do projecto desenvolvido

PROCEDIMENTO DE EXPORTAÇÃO A PORTAIS IMOBILIÁRIOS

Como configurar a Contabilidade por Centro de Custo?

Cadastro Nacional de Produtos - CNP

Card Tree Creator. Um Sistema para a criação de árvores de cartões.

BAIXA E INSTALAÇÃO DE CERTIFICADO A1. Versão 1.0r0 de 19 de Janeiro Classificação: Ostensivo

SMS: Envio Coletivo de Mensagem Passo 1: Remetentes

PRODAV 03/2015 Passo a passo para inscrição do projeto

Uso do SIKULI para automação

A JL tem uma super novidade. para sua empresa!!!!

Atualizar o firmware da câmera SLR digital

Agendamento de Exportação Usuário Externo

Transcrição:

DDK GUI Parte 4 Tecnologia 1

Agenda 1 Parte Nomenclatura Estilos Cadastro Simples Cadastro Simples Alteração Cadastro Simples Inclusão Cadastro Complexo Cadastro Complexo Alteração Pai x Filho Atualiza Filho Manutenção de Filhos 2

Agenda Pai x Filho Atualiza Ambos Manutenção de Pais Consulta Simples Consulta Complexa Consulta Relacionamento Relatórios / Cálculos / Fechamentos Parâmetros Únicos Parâmetros Múltiplos Formação Formação sem Navegação 3

Agenda Importação Exportação Pesquisa Vá Para Digitação Rápida Painéis Funções Relatórios Relacionados Funções Consultas Relacionadas Menu de Barra 4

Agenda Parte 2 Construção SmartQuery SmartViewer Padrão SmartViewer Sem Campos de Tabela SmartViewer Só com Campos Chave Parte 3 CustomBrowser Inclui/Modifica CustomBrowser Zoom Wizard Vá Para Pesquisa 5

Agenda Cadastro Simples Parte 4 Cadastro Simples Alteração Cadastro Simples Inclusão Cadastro Complexo Cadastro Inclui/Modifica Filho Cadastro Pai x Filho Atualiza Filho Cadastro Inclui/Modifica Pai Cadastro Pai x Filho Atualiza Ambos Parte 5 Consulta Simples 6

Agenda Consulta Complexa Consulta Relacionamentos Parâmetros Únicos Formação Parte 6 Relatórios Importação Exportação CustomBrowser Digitação Digitação Rápida 7

Agenda Parte 7 Includes e Utilitários Padrão UT_FIELD.I UT-RTLBL.I UT-RUN.I UT-MSGS.P IND01-10.I, IND11-50.I E IND51500.I UT-TABLE.I UT-LITER.I UT-LIMIT.P 8

Agenda UT-GLOB.I I-FREEAC.I UT-DIR.P BTB917ZX.P BTB917ZY.P BTB917ZZ.P UT-VRBIN.P UT-FINFO.P UT-CMDLN.P 9

Agenda UT-OSVER.I I-COUNTDS.I UT-WIN.I UT-TRACE.P Parte 8 Validações Validações de Tela Validações Triggers de Dicionário Mensagens Regras para Criação de Mensagens 10

Agenda Mensagens em Outros Idiomas Procedures Reutilizáveis Portabilidade de RCODES Customizações API - Application Program Interface UPC - User Program Call 11

Cadastro Simples Alteração Pré-requisitos SmartQuery (CustomQuery Wizard); SmartViewer (Custom Viewer com Auto-field); Programa Vá Para; Programa de Pesquisa. 12

Cadastro Simples Alteração 1. Em Arquivo Novo, selecionar o estilo Window CadastroSimples Alteração; 13

Cadastro Simples Alteração 2. Instanciar a SmartQuery na página 0 da Window Cadastro Simples e aceitar as sugestões de SmartLinks do Wizard; 14

Cadastro Simples Alteração 3. Acessar os atributos de instância da SmartQuery e informar, no atributo "Programa Pesquisa, o nome do programa de pesquisa da tabela e, no atributo "Programa Vá para, o nome do programa de Vá para da tabela; 15

Cadastro Simples Alteração 4. Criar um SmartLink do tipo STATE, tendo como Source: p- navega e como Target: SmartQuery; 5. Criar um SmartLink do tipo STATE, tendo Source: p-exihel e como Target: SmartQuery; 6. Instanciar a SmartViewer na página 0 da SmartWindow e aceitar as sugestões de SmartLink do Wizard; 16

Cadastro Simples Alteração 7. Redimensionar a SmartWindow de acordo com os objetos que foram colocados nela. Ter o cuidado para que a SmartViewer fique centralizada na SmartWindow; 8. Salvar a SmartWindow com o nome definido para o Cadastro Simples Alteração; 17

Cadastro Simples Alteração Source h_p-cadsi2 h_p-cadsi2 h_p-exihel h_p-navega h_p-navega h_q-query Link_Type State TableIO State Navigation State Record Target h_p-exihel h_v-viewer h_q-query h_q-query h_q-query h_v-viewer 18

Cadastro Simples Inclusão Pré-requisitos SmartQuery (CustomQuery Wizard); SmartViewer (Custom Viewer com Auto-field); Programa Vá Para; Programa de Pesquisa. 19

Cadastro Simples Inclusão 1. Em Arquivo Novo, selecionar o estilo Window CadastroSimples Inclusão; Os demais passos são iguais ao Cadastro Simples Alteração. 20

Cadastro Complexo Pré-requisitos SmartQuery (CustomQuery Wizard); SmartViewer (Custom Viewer com Auto-field); Programa Vá Para; Programa de Pesquisa. 21

Cadastro Complexo 1. Em Arquivo Novo, selecionar o estilo Window CadastroComplexo; 22

Cadastro Complexo 2. Instanciar a SmartQuery na página 0 e aceitar as sugestões de SmartLinks do Wizard; 23

Cadastro Complexo 3. Acessar os atributos de instância da SmartQuery e informar, no atributo "Programa Pesquisa, o nome do programa de pesquisa da tabela e, no atributo "Programa Vá para, o nome do programa de Vá para da tabela; 24

Cadastro Complexo 4. Criar um SmartLink do tipo STATE, tendo como Source: p- navega e como Target: SmartQuery; 5. Criar um SmartLink do tipo STATE, tendo Source: p-exihel e como Target: SmartQuery; 6. Instanciar a SmartViewer na página 0 da SmartWindow, acima do folder, e aceitar as sugestões de SmartLink do Wizard; 25

Cadastro Complexo 26

Cadastro Complexo 7. Repetir os seguintes passos para as demais SmartViewers que devem estar colocadas nas páginas do folder: 1. Instanciar a SmartViewer em determinada página do folder e aceitar as sugestões de SmartLink do Wizard; 2. Criar um SmartLink de GROUP-ASSIGN, tendo como Source: SmartViewer da página 0 e como Target: SmartViewer recém instanciada no folder; 27

Cadastro Complexo 28

Cadastro Complexo 8. Acessar as propriedades do folder e renomear os labels das páginas; 9. Salvar a SmartWindow com o nome definido para o Cadastro Complexo. 29

Cadastro Complexo Source h_folder h_p-cadsim h_p-cadsim h_p-navega h_q-query h_q-query Link_Type PAGE State TableIO Navigation Record Record Target THIS-PROCEDURE h_p-exihel h_q-query h_q-query h_v-viewer1 h_v-viewer2 30

Cadastro Complexo Source h_q-query h_v-viewer1 h_v-viewer1 h_p-exihel h_p-navega Link_Type Record Group-Assign Group-Assign State State Target h_v-viewer3 h_v-viewer2 h_v-viewer3 h_q-query h_q-query 31

Cadastro Complexo Laboratório Tabela: Campos Viewer1: Campos Viewer2: Customer Customer.Cust-Num; Customer.Name Customer.Address Customer.Address2 Customer.Phone Customer.City Customer.State Customer.Postal-Code Customer.Country 32

Cadastro Complexo Campos Viewer3: Customer.Sales-Rep Customer.Credit-Limit Customer.Discount Customer.Balance 33

Cadastro Inclui/Modifica Filho Pré-requisitos SmartQuery (CustomQuery Wizard); SmartViewer (Custom Viewer com Auto-field). 34

Cadastro Inclui/Modifica Filho 1. Em Arquivo Novo, selecionar o estilo Window Inclui/Modifica Filho; 35

Cadastro Inclui/Modifica Filho 2. Se os campos a serem inclusos/modificados couberem em uma única viewer, o cadastro deve ser do tipo Simples, devendo-se eliminar o folder da SmartWindow; 36

Cadastro Inclui/Modifica Filho 3. Se os campos a serem inclusos/modificados não couberem em uma única viewer, estes devem ser divididos em mais viewers que devem ser colocadas nas páginas do folder, formando um cadastro do tipo Complexo; 37

Cadastro Inclui/Modifica Filho 4. Verificar se já existe uma SmartQuery para a tabela em que se deseja construir o Cadastro Inclui/Modifica Filho. Caso não exista, criar uma nova utilizando o estilo CustomQuery Wizard; 5. Instanciar a SmartQuery na página 0 (zero) da Window; 6. Para cada viewer a ser utilizada deve-se seguir os seguintes passos: 38

Cadastro Inclui/Modifica Filho 1. Verificar se já existe uma SmartViewer com os atributos da tabela a serem editados. Caso não exista, criar uma nova SmartViewer utilizando o estilo CustomViewer com Auto- Field; 2. Instanciar a SmartViewer na SmartWindow ou na página correspondente do folder no caso de um cadastro complexo, e aceitar as sugestões de SmartLinks do Wizard; 39

Cadastro Inclui/Modifica Filho 3. Criar um SmartLink de TABLEIO, tendo como Source: THIS-PROCEDURE e como Target: SmartViewer recém instanciada. 40

Cadastro Inclui/Modifica Filho 7. Se o cadastro for do tipo complexo: 1. Criar links de group-assign entre a viewer principal (viewer que conterá a chave da tabela) e as demais viewers; 2. Incluir a seguinte linha após o Dispatch padrão no Local- Initialize: {include/i-inifld.i} 41

Cadastro Inclui/Modifica Filho 8. Deve-se atribuir a página 1 como sendo a página inicial do programa. Para isso, é necessário: 1. Acessar o Procedure Properties na janela do App Builder; 2. Entrar em Propertie Pages; 3. Em Startup on Page atribuir o valor 1; 42

Cadastro Inclui/Modifica Filho 43

Cadastro Inclui/Modifica Filho 8. Na Local-Initialize da window, devem ser substituídas as ocorrências de "<viewer_principal>", pelo nome da viewer que contém o(s) campo(s) chave(s) da tabela. run pi-atualiza-parent in h_v06pd001 (input v-rowparent). 44

Cadastro Inclui/Modifica Filho 9. Nas triggers de Choose dos botões de 'Ok' e 'Salvar', substituir as ocorrências de "<handle da viewer principal>" pelo handle da viewer que contém o campo chave da tabela; {include/okfil.i h_v06pd001} 45

Cadastro Inclui/Modifica Filho 10. Na procedure pi-reposiciona da window, substituir a ocorrência "<query-name>" pelo nome da query utilizada no cadastro; RUN pi-reposiciona-query IN h-q06pd001 (input v-row-table). 46

Cadastro Inclui/Modifica Filho 11. Na SmartViewer que possuir a chave da tabela, deve ser criada uma local-create-record e após o run dispatch deve ser inserida a seguinte lógica: find <tabela pai> where rowid (<tabela pai>) = v-rowparent no-lock no-error. if available <tabela pai> then do: assign <tabela filho>.<chave pai> = <tabela pai>.<chave pai>. end. 47

Cadastro Inclui/Modifica Filho <tabela pai>: deve ser substituído pelo nome da tabela pai utilizada no cadastro. A tabela pai deve ser a mesma utilizada na query do Cadastro PaiXFilho que deve chamar este programa; <tabela filho>: deve ser substituído pelo nome da tabela que deve estar sendo utilizada no cadastro; <chave pai>: deve ser substituído pelo nome do campo chave da tabela pai que estabelece relacionamento com a tabela que deve estar sendo utilizada no cadastro; 48

Cadastro Inclui/Modifica Filho RUN dispatch IN THIS-PROCEDURE ( INPUT 'create-record':u ). /* Code placed here will execute AFTER standard behavior. */ find order where rowid (order) = v-row-parent no-error. if available order then assign order-line.order-num = order.order-num. 49

Cadastro Inclui/Modifica Filho 12. Salvar a SmartWindow com o nome definido para o Cadastro Inclui/Modifica Filho. 50

Cadastro Inclui/Modifica Filho Lista de Links (Uma Viewer): h_q-query Source THIS-PROCEDURE TableIO Record Link_Type h_viewer h_viewer Target 51

Cadastro Inclui/Modifica Filho Lista de Links (Mais de uma Viewer): Source h_q-query THIS-PROCEDURE h_viewer1 h_viewer1 h_q-query h_q-query Link_Type Record TableIO GROUP-ASSIGN GROUP-ASSIGN Record Record Target h_viewer1 h_viewer1 h_viewer2 h_viewer3 h_viewer2 h_viewer3 52

Cadastro Inclui/Modifica Filho Laboratório Tabela: Campos Viewer1: Ref-Call Ref-Call.Call-Num Ref-Call.Cust-Num Ref-Call.Call-Date Ref-Call.Sales-Rep Ref-Call.Parent 53

Cadastro Pai x Filho Atualiza Filho Pré-requisitos SmartQuery para a tabela pai (CustomQuery Wizard); SmartViewer para a tabela pai (Custom Viewer com Autofield); SmartBrowser para a tabela filho (CustowBrowser Inclui/Modifica); Programa de atualização para a tabela filho (Cadastro Inclui/Modifica Filho); Programa Vá Para para a tabela pai; Programa de Pesquisa para a tabela pai. 54

Cadastro Pai x Filho Atualiza Filho 1. Em Arquivo Novo, selecionar o estilo Window Cadastro PaixFilho - Filho; 55

Cadastro Pai x Filho Atualiza Filho 2. Instanciar a SmartQuery na página 0 e aceitar as sugestões de SmartLinks do Wizard; 56

Cadastro Pai x Filho Atualiza Filho 3. Acessar os atributos de instância da SmartQuery e informar no atributo "Programa Pesquisa" o nome do programa de pesquisa da tabela e no atributo "Programa Vá para" o nome do programa de Vá para da tabela; 57

Cadastro Pai x Filho Atualiza Filho 4. Criar um SmartLink do tipo STATE, tendo como Source: p- navega e como Target: SmartQuery; 5. Criar um SmartLink do tipo STATE, tendo Source: p-exihel e como Target: SmartQuery; 6. Instanciar a SmartViewer na página 0 da SmartWindow e aceitar as sugestões de SmartLink do Wizard; 58

Cadastro Pai x Filho Atualiza Filho 59

Cadastro Pai x Filho Atualiza Filho 7. Repetir os seguintes passos para os SmartBrowsers que devem estar colocadas nas páginas do folder: 1. Verificar se já existe um SmartBrowser para a tabela filho. Caso não exista, criar um novo utilizando o estilo CustomBrowser Inclui/Modifica; 2. Colocar o SmartBrowser na página correspondente do folder, aceitando os links indicados pelo Wizard; 60

Cadastro Pai x Filho Atualiza Filho 61

Cadastro Pai x Filho Atualiza Filho 3. Acessar os atributos de instância do SmartBrowser e informar o nome do programa de atualização da tabela filha. Se este programa não existir, deve ser criado utilizando-se o template Cadastro Inclui/Modifica Filho; 62

Cadastro Pai x Filho Atualiza Filho 63

Cadastro Pai x Filho Atualiza Filho 4. Criar um SmartLink de Record, tendo como Source: SmartQuery e como Target: SmartBrowser recém instanciado no folder; 5. Caso seja necessário incluir botões de Seleção e/ou Parâmetros para a tabela do SmartBrowser, deve-se incluir os botões abaixo do browse. 64

Cadastro Pai x Filho Atualiza Filho 8. Ter o cuidado para que a SmartViewer fique centralizada na SmartWindow; 9. Salvar a SmartWindow com o nome definido para o Cadastro Pai x Filho. 65

Cadastro Pai x Filho Atualiza Filho Source h_folder h_p-exihel h_p-navega h_p-navega h_q-query h_q-query h_p-exihel Link_Type Page State Navigation State Record Record State Target THIS-PROCEDURE THIS-PROCEDURE h_q-query h_q-query h_viewer h_browser1 h_q-query 66

Cadastro Pai x Filho Atualiza Filho Laboratório Tabela: Viewer: Browser: Tabela: Campos: Customer Customer.Cust-Num Customer.Name Ref-Call X Customer Ref-Call.Call-Num Ref-Call.Call-Date Ref-Call.Sales-Rep Ref-Call.Parent 67

Cadastro Inclui/Modifica Pai Pré-requisitos SmartQuery para a tabela pai (CustomQuery Wizard); SmartViewer para a tabela pai (Custom Viewer com Autofield). 68

Cadastro Inclui/Modifica Pai 1. Em Arquivo Novo, selecionar o estilo Window Inclui/Modifica Pai; 69

Cadastro Inclui/Modifica Pai 2. Se os campos a serem inclusos/modificados couberem em uma única viewer, o cadastro deve ser do tipo Simples, devendo-se eliminar o folder da SmartWindow; 3. Se os campos a serem inclusos/modificados não couberem em uma única viewer, estes devem ser divididos em mais viewers, que devem ser colocadas nas páginas do folder, formando um cadastro do tipo Complexo; 70

Cadastro Inclui/Modifica Pai 4. Verificar se já existe uma SmartQuery para a tabela em que se deseja construir o Cadastro Inclui/Modifica Pai. Caso não exista, criar uma nova utilizando o estilo CustomQuery Wizard; 5. Instanciar a SmartQuery na página 0 (zero) da Window; 6. Para cada viewer a ser utilizada, deve-se seguir os seguintes passos: 71

Cadastro Inclui/Modifica Pai 1. Verificar se já existe uma SmartViewer com os atributos da tabela a serem editados. Caso não exista, criar uma nova SmartViewer utilizando o estilo CustomViewer com Auto- Field; 2. Instanciar a SmartViewer na SmartWindow ou na página correspondente do folder no caso de um cadastro complexo, e aceitar as sugestões de SmartLinks do Wizard; 72

Cadastro Inclui/Modifica Pai 3. Criar um SmartLink de TABLEIO, tendo como Source: THIS-PROCEDURE e como Target: SmartViewer recém instanciada; 7. Se o cadastro for do tipo complexo: 1. Criar links do group-assign entre a viewer principal (viewer que deve conter a chave da tabela) e as demais viewers ; 73

Cadastro Inclui/Modifica Pai 2. Incluir a seguinte linha após o Dispatch padrão na Local- Initialize: {include/i-inifld.i} 8. Deve-se atribuir a página 1 como sendo a página inicial do programa. Para isso é necessário: 1. Acessar a Procedure Properties na janela do App Builder; 74

Cadastro Inclui/Modifica Pai 2. Entrar em Propertie Pages; 3. Em Startup on Page atribuir o valor 1; 75

Cadastro Inclui/Modifica Pai 76

Cadastro Inclui/Modifica Pai 9. Nas triggers de Choose dos botões de 'Ok' e 'Salvar', substituir as ocorrências de "<handle da viewer principal>" pelo handle da viewer que contém o campo chave da tabela; {include/okpai.i h_v07pd002} 77

Cadastro Inclui/Modifica Pai 10. Na procedure pi-reposiciona da window, substituir a ocorrência "<query-name>" pelo nome da query utilizada no cadastro; RUN pi-reposiciona-query IN h_q07pd001 (input v-rowtable). 78

Cadastro Inclui/Modifica Pai Lista de Links (Uma Viewer): h_q-query Source THIS-PROCEDURE TableIO Record Link_Type h_viewer h_viewer Target 79

Cadastro Inclui/Modifica Pai Lista de Links (Mais de uma Viewer): Source h_q-query THIS-PROCEDURE h_viewer1 h_viewer1 h_q-query h_q-query Link_Type Record TableIO GROUP-ASSIGN GROUP-ASSIGN Record Record Target h_viewer1 h_viewer1 h_viewer2 h_viewer3 h_viewer2 h_viewer3 80

Cadastro Pai x Filho Atualiza Ambos Pré-requisitos SmartQuery para a tabela pai (CustomQuery Wizard); SmartViewer para a tabela pai (Custom Viewer com Autofield); Programa de atualização para a tabela pai (Cadastro Inclui/Modifica Pai ); Programa de atualização para a tabela filho (Cadastro Inclui/Modifica Filho); SmartBrowser para a tabela filho (CustowBrowser Inclui/Modifica); Programa Vá Para para a tabela pai; Programa de Pesquisa para a tabela pai. 81

Cadastro Pai x Filho Atualiza Ambos 1. Em Arquivo Novo, selecionar o estilo Window Cadastro PaixFilho - Ambos; 82

Cadastro Pai x Filho Atualiza Ambos 2. Verificar se já existe uma SmartQuery para a tabela pai. Caso não exista, criar uma nova utilizando o estilo CustomQuery Wizard; 3. Instanciar a SmartQuery na página 0 da SmartWindow e aceitar as sugestões de SmartLink do Wizard; 4. Verificar se já existe um programa de Cadastro Inclui/Modifica Pai para manutenção da tabela Pai e, caso não exista, deve ser criado, para isso utilizar o template Cadastro Inclui/Modifica Pai; 83

Cadastro Pai x Filho Atualiza Ambos 5. Verificar se já existe um programa "Vá para" e um programa de pesquisa para a tabela pai. Caso não existam, eles devem ser criados; 6. Acessar os atributos de instância da SmartQuery e informar o nome do programa de pesquisa da tabela pai, o nome do programa de "Vá Para" da tabela pai e o nome do programa de Inclui/Modifica/Copia da tabela pai; 84

Cadastro Pai x Filho Atualiza Ambos 85

Cadastro Pai x Filho Atualiza Ambos 7. Criar um SmartLink do tipo STATE, tendo como Source o Painel p-navega e como Target a SmartQuery; 8. Criar um SmartLink do tipo STATE, tendo como Source o Painel p-cadpai e como Target a SmartQuery; 9. Criar um SmartLink do tipo STATE, tendo como Source o Painel p-exihel e como Target a SmartQuery; 86

Cadastro Pai x Filho Atualiza Ambos 10. Verificar se já existe uma SmartViewer com os atributos da tabela pai, que estão expostos na página 0 da SmartWindow, ou seja, acima do folder. Caso não exista, criar uma nova SmartViewer, utilizando o estilo CustomViewer com Auto- Field; 11. Instanciar a SmartViewer na página 0 da SmartWindow e aceitar as sugestões da SmartLink do Wizard; 87

Cadastro Pai x Filho Atualiza Ambos 12. Repetir os seguintes passos para os SmartBrowsers que devem estar colocadas nas páginas do folder: 1. Verificar se já existe um SmartBrowser para a tabela filho. Caso não exista, criar um novo utilizando o estilo CustomBrowser Inclui/Modifica; 2. Colocar o SmartBrowser na página correspondente do folder, aceitando os links indicados pelo Wizard; 88

Cadastro Pai x Filho Atualiza Ambos 3. Acessar os atributos de instância do SmartBrowser e informar o nome do programa de atualização da tabela filha. Se este programa não existir, deve ser criado utilizando-se o template Cadastro Inclui/Modifica Filho; 89

Cadastro Pai x Filho Atualiza Ambos 90

Cadastro Pai x Filho Atualiza Ambos 10. Ter o cuidado para que a SmartViewer fique centralizada na SmartWindow; 11. Caso seja necessário incluir botões de Seleção e/ou Parâmetros para a tabela do SmartBrowser, deve-se incluir os botões abaixo do browse; 12. Salvar a SmartWindow com o nome definido para o Cadastro Pai x Filho. 91

Cadastro Pai x Filho Atualiza Ambos Source h_folder p-cadpai p-cadpai h_p_exihel h_p-navega h_q-query h_q-query h_q-query Link_Type Page TableIO State State Navigation Record Record Record Target THIS-PROCEDURE h_viewer h_q-query h_q-query h_q-query h_viewer h_browse1 h_browse2 92

Obrigada Obrigada! universidade@datasul.com.br http://universidade.datasul.com.br Este material é de propriedade da DATASUL S.A., sendo proibida a sua reprodução em qualquer meio, total ou parcial, sem aprovação por escrito. Todos os direitos estão reservados. A informação contida aqui é confidencial e não pode ser utilizada fora da empresa ou das franquias que fazem parte da nossa rede, não podendo ser divulgada para clientes, parceiros ou outra empresa ou indivíduo sem o prévio consentimento de um diretor da DATASUL S.A. As opiniões expressas aqui estão sujeitas a modificação sem aviso prévio. 93