Escolar Documentos
Profissional Documentos
Cultura Documentos
Parte 1
Tecnologia
1
Agenda
Parte 1
9 Introdução ao Progress
9 Movimentação dos Dados
9 Manipulando os Dados
9 Blocos
9 Localizando Registros
9 Variáveis
9 Processamento Condicional
Parte 2
9 Frames
9 Includes
9 Relatórios
9 Programação Orientada a Eventos
2
Agenda
9 Widgets
9 Tipos de Widgets
9 Menus
9 Tabelas Temporárias (TEMP-TABLE)
Parte 3
9 Procedures
9 Compartilhamento de Dados
9 Importação e Exportação de Dados
9 Tratamento de Erros
9 Transações
9 Bloqueio de Registro
9 Funções
3
Introdução ao Progress
INTRODUÇÃO AO PROGRESS
4
Introdução ao Progress
9 É composto por:
Sistema Gerenciador de Banco de Dados Relacional.
Linguagem de 4a. Geração.
Ferramentas de Programação.
5
Benefícios
FLEXÍVEL ABERTO
COMPLETO
6
Benefícios
9 Flexível
Assegura portabilidade das aplicações em outras plataformas.
9 Aberto
Suporta o padrão industrial.
Assegura opções de desenvolvimento heterogêneo.
9 Completo
Permite construção de grandes aplicações.
Produz soluções Client/Server.
7
Componentes Lógicos
9 Base de Dados
Tabela
• Registro
• Campo
Índice
8
Componentes Lógicos
= Base Dados
9
Componentes Lógicos
Tabela
Registro
Nome Campo
Índice
10
Componentes Físicos
.DB
.BI .LG .LK
11
Componentes Físicos
12
Componentes Físicos
13
Componentes da Linguagem
9 Blocos
9 Declarações
9 Funções
9 Operadores
9 Variáveis
9 Expressões
9 Símbolos especiais
9 Eventos
14
Tipos de Dados do Progress
Rowid ----
Recid >>>>>9
15
Movimentação dos Dados
16
Localização dos Dados
BASE DE DADOS
BUFFER TELA
BUFFER REGISTRO
17
Movimentando Dados
18
Movimentando Dados
19
Regras para Movimentação de Dados
9 O usuário não pode interagir com os dados até que eles sejam
copiados do buffer de registro para o buffer de tela.
20
Comandos de Movimentação de Dados
21
Manipulando os Dados
MANIPULANDO OS DADOS
22
Insert
23
Create
24
Update
25
Display
26
Set
27
Prompt-For
28
Assign
29
Delete
9 Ex.: REPEAT:
PROMPT-FOR customer.cust-num.
FIND customer USING customer.cust-num.
DELETE customer.
END.
30
Quadro de Comandos
INSERT
UPDATE
SET
CREATE DISPLAY PROMPT-FOR ASSIGN
31
Observe a Movimentação
insert customer.
create customer.
update customer.
create customer.
display customer.
prompt-for customer.
assign customer.
32
Quadro de Comandos
INSERT
UPDATE
SET
DELETE CREATE DISPLAY PROMPT-FOR ASSIGN FIND FOR EACH RELEASE
33
Laboratório 1
LABORATÓRIO 1
Exercício disponível no
material de apoio
34
Blocos
BLOCOS
35
Tipos de Blocos
9 REPEAT
9 FOR EACH
9 DO
9 PROCEDURES
9 TRIGGERS
36
Repeat
9 Ex:
REPEAT WITH 1 COLUMN:
CREATE customer.
UPDATE customer.
END.
37
For Each
9 Ex:
FOR EACH customer:
DISPLAY customer.cust-num
customer.name.
END.
38
Do
9 Ex:
FOR EACH customer:
DISPLAY customer.cust-num.
IF credit-limit > 15000 THEN DO:
UPDATE customer.name
customer.address.
MESSAGE "Registro Alterado".
END.
END.
39
Desvio de Execução de Blocos
9 Comandos:
– NEXT
– LEAVE
40
Laboratório 2
LABORATÓRIO 2
Exercício disponível no
material de apoio
41
Localizando Registros
LOCALIZANDO REGISTROS
42
Find
43
Where
44
Using
45
Of
46
By
47
Use-Index
48
Begins
49
Matches
50
Contains
51
Buffer
52
Query
9 Exemplos:
Definir a query:
DEFINE QUERY nome-da-query
FOR tabela SCROLLING.
Abrir a query:
OPEN QUERY nome-da-query FOR EACH tabela.
Acessar os registros:
GET FIRST nome-da-query.
53
Get
9 Ex:
– GET FIRST nome-da-query.
– GET NEXT nome-da-query.
– GET PREV nome-da-query.
– GET LAST nome-da-query.
54
Exemplo: Query + Get
55
Laboratório 3
LABORATÓRIO 3
Exercício disponível no
material de apoio
56
Variáveis
VARIÁVEIS
57
Variáveis
58
Message
9 Sintaxe:
MESSAGE “texto”
[ UPDATE variavel ]
[ VIEW-AS ALERT-BOX
[ QUESTION | INFORMATION | WARNING | ERROR ]
]
[ BUTTONS YES-NO | YES-NO-CANCEL |
OK | OK-CANCEL | RETRY-CANCEL ]
[ TITLE “título” ].
59
Exemplo: Message
60
Laboratório 4
LABORATÓRIO 4
Exercício disponível no
material de apoio
61
Processamento Condicional
PROCESSAMENTO CONDICIONAL
62
Processamento Condicional
BUSCA REGISTRO NO
BANCO DE DADOS
SIM NÃO
ENCONTROU?
63
Processamento Condicional: IF
IF expression THEN
comando.
ELSE DO:
comando.
comando. BLOCO
comando.
END.
64
Processamento Condicional: Case
CASE expression:
WHEN value THEN
comando.
WHEN value THEN DO:
bloco.
END.
WHEN value THEN
comando.
OTHERWISE DO:
bloco.
END.
END CASE.
65
Laboratório 5
LABORATÓRIO 5
Exercício disponível no
material de apoio
66
Agradecimento
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.
67