Sie sind auf Seite 1von 618

GAS 2007

GAS 2007 - Manual do Usurio

2007 GAS Tecnologia

GAS 2007 - Manual do Usurio


2007 GAS Tecnologia
GAS Tecnologia Ltda
Braslia-DF
Todos os direitos reservados. Nenhuma parte deste material poder ser reproduzida, transmitida, transcrita,
armazenada em meio recupervel ou traduzida para outras lnguas, no todo ou em parte, em qualquer forma ou por
quaisquer meios, seja eletrnico, mecnico, magntico, tico ou manual, sem o consentimento prvio e por escrito
da GAS Tecnologia Ltda.
A GAS Tecnologia Ltda reserva-se, outrossim, o direito de revisar e fazer mudanas peridicas no contedo deste
manual, sem a obrigao de notificar a quaisquer pessoas ou instituies. Alguns nomes de produtos que aparecem
neste manual so marcas registradas de seus respectivos proprietrios.
Verso de: outubro 2007

Crditos

Prefcio:
Esta a quinta verso do GAS para Windows.

Projetistas e programadores
Evandro Rodrigo da Silva
Heber Jorge da Silva
Danilo de Oliveira Pimentel
Pablo Hadler Gomez
Silvano Guimares da Matta
Almeida dos Santos Neto
Documentao
GAS Tecnologia Ltda
Reviso
Maurcio da Costa Jatob
Teresa Cristina de Deus Oliveira
Paulo Henrique P. Cortez
Editorao eletrnica
Paulo Henrique P. Cortez
Edson dos Santos
Agradecimentos especiais
Arnaldo Rocha Netto
Blay Vives Gil
Concrdio P. Souza Filho
Hilton Silva Jnior
Leonardo Soares da Silva

Lanada h alguns anos aps o incio da comercializao da sua


predecessora, esta verso j incorpora, conforme prometemos,
quase todos os recursos existentes na verso MS-DOS deste
produto, consideradas as enormes diferenas entre os dois
ambientes, alm de recursos de extrema necessidade em nossa
atual conjuntura de mercado, como o acesso a diversos tipos de
base de dados corporativas.
Alguns recursos no puderam ainda ser disponibilizados; porm,
conforme sempre dizemos, outras verses viro sempre
acompanhadas de diversas novidades e implementaes que
colocaro, com certeza, este produto entre os melhores de sua
classe.

Heber & Evandro & Danilo & Silvano

Contents

ndice
0

I Captulo 1- Introduo

26

1 O que o...................................................................................................................................
GAS 2007
26
Aspectos da Interface
.......................................................................................................................................................... 27
Modelagem da rvore
.......................................................................................................................................................... 28
Definio da Soluo\Projeto
.......................................................................................................................................................... 29
Solues multi-projetos
......................................................................................................................................................... 30
Definio de Banco..........................................................................................................................................................
de Dados
30
Banco de Campos .......................................................................................................................................................... 32
Editor Interno
.......................................................................................................................................................... 32
Definio do Aspecto
..........................................................................................................................................................
da Aplicao
33
Marca d'gua ......................................................................................................................................................... 35
Definio da Janela..........................................................................................................................................................
de Dados
36
Definio de uma tabela
..........................................................................................................................................................
em grid
41
Formatao da Janela
..........................................................................................................................................................
de Dados
42
Processos Pr-definidos
.......................................................................................................................................................... 45
Definio de Relatrios
..........................................................................................................................................................
e Etiquetas
46
Definio de Consultas
.......................................................................................................................................................... 51
Tela de Variveis Complementares
.......................................................................................................................................................... 51
Cupom Fiscal - ECF/TEF
.......................................................................................................................................................... 52
Programas Executveis
.......................................................................................................................................................... 52
Rotinas avulsas
.......................................................................................................................................................... 52
Formulrios existentes
.......................................................................................................................................................... 52
Formulrios avulsos.......................................................................................................................................................... 52
Gabaritos ou templates
.......................................................................................................................................................... 52
Dirio de bordo
.......................................................................................................................................................... 53
Arquivos resource .......................................................................................................................................................... 53
Segurana de acesso
..........................................................................................................................................................
aplicao
54
Programas fontes .......................................................................................................................................................... 54
Compilao de programas
.......................................................................................................................................................... 55
Adaptador de arquivos
.......................................................................................................................................................... 56
Documentao da aplicao
..........................................................................................................................................................
gerada
56
Equipamento mnimo
..........................................................................................................................................................
necessrio
56

2 Caractersticas
...................................................................................................................................
das aplicaes geradas pelo GAS
57
3 O que h...................................................................................................................................
de novo no GAS 2007
62
Solues multi-projetos
.......................................................................................................................................................... 62
Executveis independentes
.......................................................................................................................................................... 63
Sistemas multi-empresa
.......................................................................................................................................................... 63
Gerenciamento de projetos
.......................................................................................................................................................... 64
Controle de plano de
..........................................................................................................................................................
senha pela soluo
64
Acesso nativo a outros
..........................................................................................................................................................
bancos de dados
65
Access
SQL Server
Oracle

......................................................................................................................................................... 66
......................................................................................................................................................... 66
......................................................................................................................................................... 66

Firebird
......................................................................................................................................................... 66
My Sql
......................................................................................................................................................... 67
Escolha do banco de
..........................................................................................................................................................
dados pelo usurio final
67

2007 GAS Tecnologia

GAS 2007 - Manual do Usurio


Acesso a dados via..........................................................................................................................................................
classes
72
Definio de banco..........................................................................................................................................................
de dados
73
Tipo de integridade.......................................................................................................................................................... 74
Novas propriedades
..........................................................................................................................................................
para bancos
74
Novas propriedades..........................................................................................................................................................
para tabelas
75
Novas propriedades
..........................................................................................................................................................
para campos
76
Novas propriedades..........................................................................................................................................................
para ndices
77
Novo controle GRID.......................................................................................................................................................... 77
Transformao de controles
..........................................................................................................................................................
OCXs em controles internos
79
Usar o mouse para ..........................................................................................................................................................
selecionar itens
80
Redefinio de combo
..........................................................................................................................................................
box
80
Formulrios sem vnculos
..........................................................................................................................................................
de dados
80
Formulrios com alterao
..........................................................................................................................................................
bloqueada por default
81
Validao imediata .......................................................................................................................................................... 81
Vinculao de label..........................................................................................................................................................
a campos
82
Alterar se existir dados
.......................................................................................................................................................... 82
Avisar se registro existir
.......................................................................................................................................................... 82
Ao ltimo campo .......................................................................................................................................................... 83
Forma de abertura .......................................................................................................................................................... 83
Seleo de controles
..........................................................................................................................................................
com "retngulo de seleo"
84
Cor de fundo para textbox
.......................................................................................................................................................... 84
Histrico de gerao
..........................................................................................................................................................
de fontes
84
Teclas de atalho .......................................................................................................................................................... 85
Barra de status no MDI
.......................................................................................................................................................... 86
Menus POP-UP em..........................................................................................................................................................
botes
87
Mltiplos filtros
.......................................................................................................................................................... 88
Mltiplas ordenaes
.......................................................................................................................................................... 89
Suporte a impressora
..........................................................................................................................................................
Daruma
90
Sempre preservar um
..........................................................................................................................................................
item de gerao
90
Remodelado mdulo
..........................................................................................................................................................
de gerao de fontes
91
Ordem inicial
.......................................................................................................................................................... 91
Pano de fundo
.......................................................................................................................................................... 92
Marca d'gua
.......................................................................................................................................................... 92
Quebra na impresso
..........................................................................................................................................................
de consultas
93
Mdulos extras com..........................................................................................................................................................
caminho completo
94
Autenticao na emisso
..........................................................................................................................................................
de email
95
Gravar filtros e ordem
.......................................................................................................................................................... 95
Incluso de referncias
..........................................................................................................................................................
no projeto
95
Propriedade lista (Pesquisa)
.......................................................................................................................................................... 96
Controle avaando ..........................................................................................................................................................
para o servio de backup
96

II Captulo 2 - Instalao e requisitos

99

1 Instalao
...................................................................................................................................
do GAS no equipamento
99
2 Procedimentos
...................................................................................................................................
de instalao
99
3 Habilitao
...................................................................................................................................
e registro da cpia
99
4 Habilitar ...................................................................................................................................
a execuo
99
5 Requisitos
...................................................................................................................................
para instalao e execuo
100

III Captulo 3 - Conceitos preliminares

102

1 Consideraes
................................................................................................................................... 102
2 Componentes
...................................................................................................................................
de um projeto GAS
102
2007 GAS Tecnologia

Contents

Modelador do projeto
.......................................................................................................................................................... 102
Mltiplos projetos
......................................................................................................................................................... 103
Mdulos que podem
..........................................................................................................................................................
ser inseridos em cada projeto
104
Menu
......................................................................................................................................................... 104
Janela de dados
......................................................................................................................................................... 104
Tabela em grid......................................................................................................................................................... 105
Rotina avulsa ......................................................................................................................................................... 105
Consulta pr-definida
......................................................................................................................................................... 105
Relatrio

......................................................................................................................................................... 105

Etiqueta
......................................................................................................................................................... 105
Processos pr-definidos
......................................................................................................................................................... 106
Programa executvel
......................................................................................................................................................... 106
Formulrio avulso
......................................................................................................................................................... 106
Formulrio existente
......................................................................................................................................................... 106
Linha separadora
......................................................................................................................................................... 106
Apoio impresso
.........................................................................................................................................................
fiscal
106
Opes que podem
..........................................................................................................................................................
ser inseridas na rvore
106
Arquivo
Editar
Exibir

......................................................................................................................................................... 107
......................................................................................................................................................... 107
......................................................................................................................................................... 107

Janela
Ajuda

......................................................................................................................................................... 107
......................................................................................................................................................... 107

3 Como so
...................................................................................................................................
organizadas as informaes
107

IV Captulo 4: Guia rpido para criar um


aplicao

109

1 Via expressa
................................................................................................................................... 109
Abrir um novo projeto
.......................................................................................................................................................... 109
Configurar a rvore
..........................................................................................................................................................
Default
110
Definir o projeto .......................................................................................................................................................... 110
Inserir as janelas de
..........................................................................................................................................................
dados
111
Definir as janelas de
..........................................................................................................................................................
dados inseridas
112
Geral
......................................................................................................................................................... 112
Tabelas auxiliares
......................................................................................................................................................... 112
Lanamentos ......................................................................................................................................................... 112
Processos ......................................................................................................................................................... 112
Inserir outros mdulos,
..........................................................................................................................................................
se necessrio
112
Verificar rvore do..........................................................................................................................................................
projeto
112
Acionar a gerao..........................................................................................................................................................
de programas fontes e executvel
113

V Captulo 5 - Operando o GAS

115

1 Abertura
...................................................................................................................................
ou criao de um projeto
115
2 A barra...................................................................................................................................
de ferramentas do GAS
115
Botes de controle..........................................................................................................................................................
do editor de programas
117

3 A barra...................................................................................................................................
de status do GAS
118
4 As opes
...................................................................................................................................
de menu do GAS
118
O menu arquivo .......................................................................................................................................................... 119
Novo projeto ......................................................................................................................................................... 119
Abrir projeto existente
......................................................................................................................................................... 119
Abrir gabarito ......................................................................................................................................................... 119
Salvar como gabarito
......................................................................................................................................................... 119
2007 GAS Tecnologia

GAS 2007 - Manual do Usurio


Dirio de bordo
......................................................................................................................................................... 120
Gerar fontes ......................................................................................................................................................... 120
Criar executveis
......................................................................................................................................................... 120
Reparar projeto
......................................................................................................................................................... 120
Utilitrios
......................................................................................................................................................... 120
Documentao do projeto
......................................................................................................................................... 120
Criar programa instalador
......................................................................................................................................... 120
Criar conversor de arquivos
.........................................................................................................................................
DBF
121
Imprimir dirio de bordo
......................................................................................................................................... 121
Rever mensagem erro
.........................................................................................................................................
de gerao
121
Finalizar
......................................................................................................................................................... 121
O menu Editar
Inserir
Cortar

.......................................................................................................................................................... 121
......................................................................................................................................................... 122
......................................................................................................................................................... 122

Copiar
Colar
Apagar

......................................................................................................................................................... 122
......................................................................................................................................................... 122
......................................................................................................................................................... 123

Procura
Substitui
Sincroniza

......................................................................................................................................................... 123
......................................................................................................................................................... 123
......................................................................................................................................................... 123

Desfaz
Refaz
Endenta

......................................................................................................................................................... 123
......................................................................................................................................................... 123
......................................................................................................................................................... 123

Desendenta ......................................................................................................................................................... 123


Comenta
......................................................................................................................................................... 124
Descomenta ......................................................................................................................................................... 124
Editor de cones
......................................................................................................................................................... 124
Editar cdigo de
.........................................................................................................................................................
programa
124
Formatar relatrio
......................................................................................................................................................... 124
Formatar tela ......................................................................................................................................................... 124
Definir
......................................................................................................................................................... 124
O menu exibir
.......................................................................................................................................................... 124
O menu opes .......................................................................................................................................................... 124

5 Opes...................................................................................................................................
para personalizar as operaes do GAS
125
Opes do menu Exibir
.......................................................................................................................................................... 125
Barra de ferramentas
......................................................................................................................................................... 125
Banco de campos
......................................................................................................................................................... 125
Ferramentas da
.........................................................................................................................................................
tela
125
Dirio em zoom
......................................................................................................................................................... 126
Texto exemplo.........................................................................................................................................................
na tela
126
Opes do menu Opes
.......................................................................................................................................................... 126
Opes da tela.........................................................................................................................................................
padro
127
Tratamento de.........................................................................................................................................................
nomes
127
Capitalizar
Maisculas
Minsculas

......................................................................................................................................... 127
......................................................................................................................................... 127
......................................................................................................................................... 127

Nenhum
......................................................................................................................................... 127
Configuraes......................................................................................................................................................... 127
Modelador
......................................................................................................................................... 128
Fontes do modelador
................................................................................................................................... 128
Cores do mdulo ................................................................................................................................... 128
Telas e relatrios ......................................................................................................................................... 129
Tamanho da grade ................................................................................................................................... 129
Texto exemplo
................................................................................................................................... 129
2007 GAS Tecnologia

Contents

Default para texto 3D


................................................................................................................................... 130
Relatrios

......................................................................................................................................... 130

Cores das rguas ................................................................................................................................... 131


Distncia entre registros
................................................................................................................................... 131
Papel
................................................................................................................................... 131
Diretrios
......................................................................................................................................... 132
Idioma
......................................................................................................................................................... 132

6 Reparao
...................................................................................................................................
do projeto
132
7 rvore ...................................................................................................................................
ou modelador de projetos
133
Menu pop-up da rvore
.......................................................................................................................................................... 134
Inserindo um mdulo
..........................................................................................................................................................
na rvore do projeto
134
Mundando posies
..........................................................................................................................................................
de mdulos na rvore do projeto
135
Copiando definies
.......................................................................................................................................................... 136
Apagando um mdulo
..........................................................................................................................................................
na rvore
136
Definio da soluo
.......................................................................................................................................................... 137
Aba estrutura da
.........................................................................................................................................................
soluo
137
Definio do banco .........................................................................................................................................
de dados
138
Definio das tabelas
......................................................................................................................................... 142
Definio dos campos
......................................................................................................................................... 143
Definio dos ndices
......................................................................................................................................... 146
Definio das integridades
......................................................................................................................................... 148
Sistemas multi-empresa
......................................................................................................................................... 149
Aba icones da.........................................................................................................................................................
soluo
150
Aba dados genericos
......................................................................................................................................................... 151
Aba miscelnia......................................................................................................................................................... 153
Criando uma tela
.........................................................................................................................................................
inicial para a aplicao
156
Inserindo uma nova .........................................................................................................................................
figura
156
Removendo uma figura
......................................................................................................................................... 157
Alterando o tamanho.........................................................................................................................................
da tela inicial
157
Alterando a cor e o aspecto
.........................................................................................................................................
da moldura
157
Aba histrico ......................................................................................................................................................... 158
Aba instalao......................................................................................................................................................... 158
Formatao de tela
..........................................................................................................................................................
da soluo
166
Gerenciamento.........................................................................................................................................................
de projetos
166
Definio do projeto
.......................................................................................................................................................... 167
Formatao da tela
..........................................................................................................................................................
do projeto
168
Desenhando a.........................................................................................................................................................
barra de ferramentas da aplicao
168
Estabelecendo.........................................................................................................................................................
uma ao para um boto
171
Menus POP-UP em .........................................................................................................................................
botes
172
Colocando um.........................................................................................................................................................
logotipo lateral na janela da aplicao
173
Ttulo logotipo
......................................................................................................................................... 173
Fonte logotipo
......................................................................................................................................... 173
Largura logotipo
......................................................................................................................................... 173
Cor incio do logotipo
......................................................................................................................................... 173
Cor final do logotipo......................................................................................................................................... 173
Colocando uma
.........................................................................................................................................................
imagem como fundo da janela da aplicao
174
Colocando uma
.........................................................................................................................................................
figura transparente no interior do formulrio
174
Encolhendo e expandindo
..........................................................................................................................................................
mdulos da rvore
175
Definindo mdulos..........................................................................................................................................................
na rvore do projeto
176
Definindo um mdulo
.........................................................................................................................................................
do tipo "Menu"
176
Definindo um mdulo
.........................................................................................................................................................
tipo janela de dados
178
Desenhando telas para
.........................................................................................................................................
entrada de dados
187
Colocando campos...................................................................................................................................
na tela
188

2007 GAS Tecnologia

GAS 2007 - Manual do Usurio


Definindo atributos ...................................................................................................................................
de campos
188
Pr-validao

................................................................................................................................... 189

Validao

................................................................................................................................... 189

Validao imediata ................................................................................................................................... 191


Mensagem
................................................................................................................................... 191
Valor inicial
Visvel

................................................................................................................................... 191
................................................................................................................................... 191

Colocando frmulas.........................................................................................................................................
nas telas
191
Estabelecendo condies
.........................................................................................................................................
especiais
192
Condio para incluir
................................................................................................................................... 192
Condio para excluir
................................................................................................................................... 192
Condio para alterar
................................................................................................................................... 192
Definindo uma.........................................................................................................................................................
tabela em grid
192
Colocando um grid na
.........................................................................................................................................
tela
196
Caractersticas e propriedade
.........................................................................................................................................
do controle GRID
197
Propriedades do grid
................................................................................................................................... 199
Definindo uma.........................................................................................................................................................
rotina avulsa
202
Definindo um processo
.........................................................................................................................................................
pr-definido
203
Cabealho do processo
.........................................................................................................................................
pr-definido
203
Cupom fiscal
................................................................................................................................... 204
Processo pr-definido
......................................................................................................................................... 204
Definindo uma.........................................................................................................................................................
consulta
207
Contedos
......................................................................................................................................... 208
Grupos e ordenao......................................................................................................................................... 209
Seleo
......................................................................................................................................... 209
Criao de filtragem
................................................................................................................................... 210
Unio de tabelas ................................................................................................................................... 211
Definindo um relatrio
.........................................................................................................................................................
ou etiqueta
211
Geral
......................................................................................................................................... 212
Nome do .RPT
Tabela bsica
Apelido

................................................................................................................................... 212
................................................................................................................................... 212
................................................................................................................................... 212

Cupom fiscal
................................................................................................................................... 213
Tabelas auxiliares e .........................................................................................................................................
Contedo
213
Formatao de relatrios
......................................................................................................................................... 213
Criando um relatrio.........................................................................................................................................
padro
213
Criando uma janela de
.........................................................................................................................................
previso (preview) para o relatrio
214
Formatando um relatrio
......................................................................................................................................... 215
Propriedades do relatrio
................................................................................................................................... 215
Seleo de controles
...................................................................................................................................
com "retngulo de seleo"
218
Mltiplos filtros
................................................................................................................................... 219
Colocando um campo
...................................................................................................................................
no relatrio
219
Inserindo sub-relatrios
................................................................................................................................... 224
Colocando um totalizador
...................................................................................................................................
no relatrio
224
Colocando uma quebra
...................................................................................................................................
no relatrio
225
Imprimindo um cdigo
...................................................................................................................................
de barra em relatrio ou etiqueta
225
Imprimindo valores ...................................................................................................................................
em cores diferentes no relatrio
226
Formatando etiquetas
......................................................................................................................................... 227
Definindo um programa
.........................................................................................................................................................
executvel
228
Ttulo no menu
......................................................................................................................................... 228
Programa executvel......................................................................................................................................... 228
Mdulo pronto
......................................................................................................................................... 229
Integrando um.........................................................................................................................................................
formulrio existente ao projeto
229
Ttulo no menu

......................................................................................................................................... 229
2007 GAS Tecnologia

Contents

Nome do formulrio ......................................................................................................................................... 229


Mdulo pronto

......................................................................................................................................... 229

Criando um formulrio
.........................................................................................................................................................
avulso no projeto
230
Geral e Tabelas auxiliares
......................................................................................................................................... 230
Criando uma tela
.........................................................................................................................................................
complementar
231
Boto continua
Boto cancela

......................................................................................................................................... 231
......................................................................................................................................... 231

Nmero de cpias ......................................................................................................................................... 231


Destino do relatrio ......................................................................................................................................... 232
Formato do arquivo ......................................................................................................................................... 232
Arquivo de sada ......................................................................................................................................... 232
Impressora padro ......................................................................................................................................... 232
Critrio
......................................................................................................................................... 232
Boto Filtra
......................................................................................................................................... 232
Configura impressora
......................................................................................................................................... 232
Definindo mdulos
.........................................................................................................................................................
para impressora fiscal
232
Mdulos de apoio
.........................................................................................................................................................
Emisso de Cupom Fiscal e TEF
232
Definindo rotina
.........................................................................................................................................................
de backup para a aplicao
233
Aba "Geral"
......................................................................................................................................... 234
Aba "Armazenamento"
......................................................................................................................................... 235
Aba "Notificao" ......................................................................................................................................... 237
Aba "Agendamento"......................................................................................................................................... 237

8 Utilizando
...................................................................................................................................
o editor de cones
238
Controles do editor.......................................................................................................................................................... 239

9 Utilizando
...................................................................................................................................
o editor de programas
241
Declaraes de variveis
..........................................................................................................................................................
ou funes externas
242
Designaes de variveis
.......................................................................................................................................................... 242
Funes e rotinas ..........................................................................................................................................................
globais
243
Controles do editor
..........................................................................................................................................................
na barra de ferramentas
243
Boto procura......................................................................................................................................................... 243
Boto procura/substitui
......................................................................................................................................................... 244
Boto de sincronia
......................................................................................................................................................... 244
Botes para desfazer/refazer
.........................................................................................................................................................
modificaes
244
Botes para manipular
.........................................................................................................................................................
as endentaes do cdigo
244
Botes para manipular
.........................................................................................................................................................
comentrios
245
Opes de configurao
..........................................................................................................................................................
do Editor de Programas
245
Ajuste de cores
......................................................................................................................................................... 246
Endentao ......................................................................................................................................................... 246
Fonte

......................................................................................................................................................... 246

10 Utilizando
...................................................................................................................................
o Editor de Recursos
246
As ferramentas de..........................................................................................................................................................
formatao de tela
247
Selecionando .........................................................................................................................................................
um controle na tela
248
Selecionando .........................................................................................................................................................
mltiplos controles na tela
249
Retirando controles
.........................................................................................................................................................
da tela
249
Alterando a posio
.........................................................................................................................................................
de controles
249
Alterando o tamanho
.........................................................................................................................................................
de um controle
250
Colocando controles
.........................................................................................................................................................
pr-programados na tela
250
Colocando um.........................................................................................................................................................
controle na tela
251
Tab ou abas
Label
Boto

......................................................................................................................................... 251
......................................................................................................................................... 251
......................................................................................................................................... 251

Imagem
Painel

......................................................................................................................................... 252
......................................................................................................................................... 252

2007 GAS Tecnologia

10

GAS 2007 - Manual do Usurio


Frame

......................................................................................................................................... 252

Gmask

......................................................................................................................................... 252

Grid

......................................................................................................................................... 252

Sub-relatrio
Quebra

......................................................................................................................................... 252
......................................................................................................................................... 252

Linha
Shape

......................................................................................................................................... 252
......................................................................................................................................... 252

Texto 3D

......................................................................................................................................... 253

Picture

......................................................................................................................................... 253

Designando propriedades
.........................................................................................................................................................
para controles
253
Definindo um campo
.........................................................................................................................................................
no-editvel
253
Definindo condio
.........................................................................................................................................................
de visibilidade de campos
253
Controles de formatao
......................................................................................................................................................... 253
Gravao da tela ......................................................................................................................................... 253
Restaurao da tela ......................................................................................................................................... 254
Ordem de acesso aos
.........................................................................................................................................
controles
254
Criao de tela padro
......................................................................................................................................... 254
Seleciona todos
......................................................................................................................................... 254
Apaga coluna do grid......................................................................................................................................... 254
Insere coluna no grid.........................................................................................................................................
- aps
254
Insere coluna no grid.........................................................................................................................................
- antes
255
Alinha esquerda ......................................................................................................................................... 255
Alinha direita
......................................................................................................................................... 255
Alinha pelo topo
......................................................................................................................................... 255
Travamento de controles
......................................................................................................................................... 255
Categorizao de propriedades
......................................................................................................................................... 255
Coloca ou retira grade
.........................................................................................................................................
de formatao
255
Recorta formulrio ......................................................................................................................................... 255
Exibindo e ocultando
.........................................................................................................................................................
as ferramentas
256
Usando o Clipboard
.........................................................................................................................................................
de tela
256

11 Definindo
...................................................................................................................................
opes da tela padro
256
Disposio dos campos
.......................................................................................................................................................... 257
Disposio dos ttulos
.......................................................................................................................................................... 257
Dimenses das imagens
.......................................................................................................................................................... 257
Dimenses memo/texto
.......................................................................................................................................................... 257
Margens e distncias
.......................................................................................................................................................... 257
Maior controle......................................................................................................................................................... 257
Distncia
......................................................................................................................................................... 257
Margem esquerda
......................................................................................................................................................... 257
Margem do topo
......................................................................................................................................................... 257
Quantidade de colunas
.......................................................................................................................................................... 258
Recalcular o tamanho
..........................................................................................................................................................
da tela
258
Fonte dos ttulos .......................................................................................................................................................... 258
Fonte dos campos.......................................................................................................................................................... 258

12 Utilizando
...................................................................................................................................
o banco de campos
258
13 Utilizando
...................................................................................................................................
o Dirio de Bordo
260
Apresentando e ocultando
.......................................................................................................................................................... 260
Mostrando o dirio..........................................................................................................................................................
em zoom
260
Abrindo e folheando
.......................................................................................................................................................... 260
Navegando no texto
.......................................................................................................................................................... 260
Imprimindo o contedo
.......................................................................................................................................................... 260

VI Captulo 6 - Gerao de programas fontes

262
2007 GAS Tecnologia

Contents
1 .BAS

11

................................................................................................................................... 262

2 .FRM ................................................................................................................................... 262


3 .FRX

................................................................................................................................... 262

4 .VBP

................................................................................................................................... 262

5 .DEF

................................................................................................................................... 262

6 .SQL

................................................................................................................................... 262

7 .RC

................................................................................................................................... 263

8 .HHK .HHP
...................................................................................................................................
.HHC .HTM
263
9 Disparando
...................................................................................................................................
a gerao de fontes
263
Histrico de gerao
..........................................................................................................................................................
de fontes
265

VII Captulo 7 - Gerao de executveis

268

1 Estabelecendo
...................................................................................................................................
uma ao ps-compilao
268
Gerar

.......................................................................................................................................................... 268

Gerar e executar .......................................................................................................................................................... 268


Gerar, executar e sair
..........................................................................................................................................................
do GAS
268
Gerar e abrir no VB
.......................................................................................................................................................... 268

2 Executvel
...................................................................................................................................
da aplicao
269
3 Arquivo...................................................................................................................................
resource da aplicao
270
4 Arquivo...................................................................................................................................
de ajuda on-line
270
5 Adaptador
...................................................................................................................................
de arquivos
270
6 Disparando
...................................................................................................................................
a gerao dos executveis
270
7 Compilao
...................................................................................................................................
manual
271
FAZ_EXE.BAT
FAZ_HLP.BAT

.......................................................................................................................................................... 271
.......................................................................................................................................................... 271

FAZ_RES.BAT

.......................................................................................................................................................... 271

VIII Captulo 8 - Gerao da documentao

273

1 Editar gabaritos
................................................................................................................................... 273
Regras para a edio
..........................................................................................................................................................
de gabaritos
273
GABPRO.DOC
......................................................................................................................................................... 274
GABMAN.DOC
......................................................................................................................................................... 274
INICIO.HTM / .........................................................................................................................................................
CORPO.HTM / INDEX.HTM
274
Criar o documento.......................................................................................................................................................... 274
Editar documento .......................................................................................................................................................... 274
Compilar
.......................................................................................................................................................... 275
Visualizar
.......................................................................................................................................................... 275
Dicas para otimizar
..........................................................................................................................................................
a documentao
275
Captura de telas
......................................................................................................................................................... 275
Resoluo
......................................................................................................................................................... 275
Aparncia
......................................................................................................................................................... 275
Momento certo......................................................................................................................................................... 276
A documentao gerada
.......................................................................................................................................................... 276
Projeto fsico ......................................................................................................................................................... 276
Manual do usurio
.........................................................................................................................................................
da aplicao
276
Arquivo de ajuda
.........................................................................................................................................................
para a aplicao final
277
Diretivas de substituio
......................................................................................................................................................... 277
2007 GAS Tecnologia

11

12

GAS 2007 - Manual do Usurio


Para substituio textual
......................................................................................................................................... 278
Analista

................................................................................................................................... 278

APELIDO_TAB_AUXILIAR
................................................................................................................................... 278
rvore
CAMPO_ATRIB

................................................................................................................................... 278
................................................................................................................................... 278

CAMPO_UNIAO ................................................................................................................................... 278


COND_ALTERACAO
................................................................................................................................... 278
COND_DIRETA

................................................................................................................................... 278

COND_EXCLUSAO
................................................................................................................................... 278
COND_EXC_LANC................................................................................................................................... 278
COND_INCLUSAO................................................................................................................................... 279
COND_INC_LANC................................................................................................................................... 279
COND_INVERSA ................................................................................................................................... 279
CONS_SQL
................................................................................................................................... 279
CONS_TITULO ................................................................................................................................... 279
CP_ALVO_LANC ................................................................................................................................... 279
CP_ALVO_PROC ................................................................................................................................... 279
CP_APELIDO
................................................................................................................................... 279
CP_CAMPO_ESTRANGEIRO
................................................................................................................................... 279
CP_CASAS_DECIMAIS
................................................................................................................................... 279
CP_LST_INTERNA................................................................................................................................... 279
CP_MASCARA ................................................................................................................................... 280
CP_MSG_AJUDA ................................................................................................................................... 280
CP_NOME
................................................................................................................................... 280
CP_SEQUENCIA ................................................................................................................................... 280
CP_TABELA_ESTRANGEIRA
................................................................................................................................... 280
CP_TAMANHO
CP_TIPO
DATA

................................................................................................................................... 280
................................................................................................................................... 280
................................................................................................................................... 280

DESCRICAO
DESC_BD
DESC_TAB

................................................................................................................................... 280
................................................................................................................................... 280
................................................................................................................................... 280

FORM_DIRETA ................................................................................................................................... 281


FORM_INVERSA ................................................................................................................................... 281
INDICE_AUXILIAR................................................................................................................................... 281
IND_CHAVES
IND_NOME
INT_CP1

................................................................................................................................... 281
................................................................................................................................... 281
................................................................................................................................... 281

INT_CP2
INT_NOME
INT_TABELA

................................................................................................................................... 281
................................................................................................................................... 281
................................................................................................................................... 281

JANELA
................................................................................................................................... 281
JANELA_MDI
................................................................................................................................... 281
MSG VALIDACAO ................................................................................................................................... 282
MSG_CRIT_RELACAO
................................................................................................................................... 282
MSG_MENU
................................................................................................................................... 282
NOME_BD
................................................................................................................................... 282
NOME_EMPRESA................................................................................................................................... 282
NOME_EXECUTAVEL
................................................................................................................................... 282
NOME_FORM
................................................................................................................................... 282
PRE-VALIDACAO ................................................................................................................................... 282
Q_LANCAMENTOS
................................................................................................................................... 282
REL_SQL
................................................................................................................................... 282
REL_TITULO

................................................................................................................................... 282
2007 GAS Tecnologia

Contents

13

TABELA_AUXILIAR
................................................................................................................................... 283
TABELA_BASICA ................................................................................................................................... 283
TAB_ALVO_LANC................................................................................................................................... 283
TAB_ALVO_PROC................................................................................................................................... 283
TB_APELIDO
................................................................................................................................... 283
TB_NOME
................................................................................................................................... 283
TITULO_JANELA ................................................................................................................................... 283
TITULO_PROJETO
................................................................................................................................... 283
TIT_LANCAMENTO
................................................................................................................................... 283
TIT_PROCESSAMENTO
................................................................................................................................... 283
VALIDACAO
................................................................................................................................... 283
VALOR INICIAL ................................................................................................................................... 284
VALOR_LANC
................................................................................................................................... 284
Para substituio
.........................................................................................................................................................
de imagens
284
BMP_BAJUDA
......................................................................................................................................... 284
BMP_BANTERIOR......................................................................................................................................... 284
BMP_BAPAGACOL......................................................................................................................................... 284
BMP_BCANCELA ......................................................................................................................................... 284
BMP_BCONFGRAF......................................................................................................................................... 284
BMP_BCONFIMP ......................................................................................................................................... 284
BMP_BCONSULTA......................................................................................................................................... 284
BMP_BEXCLUI
......................................................................................................................................... 285
BMP_BFILTRO
......................................................................................................................................... 285
BMP_BFINALIZA ......................................................................................................................................... 285
BMP_BGRADE
......................................................................................................................................... 285
BMP_BGRAFA
......................................................................................................................................... 285
BMP_BGRAVA
BMP_BIMPRE
BMP_BINCLUI

......................................................................................................................................... 285
......................................................................................................................................... 285
......................................................................................................................................... 285

BMP_BINFODB
......................................................................................................................................... 285
BMP_BPRIMEIRO ......................................................................................................................................... 285
BMP_BPROCURA ......................................................................................................................................... 285
BMP_BREPARA ......................................................................................................................................... 286
BMP_BSEGUINTE ......................................................................................................................................... 286
BMP_BSENHA
......................................................................................................................................... 286
BMP_BTOTALIZA ......................................................................................................................................... 286
BMP_BULTIMO ......................................................................................................................................... 286
BMP_CBOIND
......................................................................................................................................... 286
ICONE_APLICACAO
......................................................................................................................................... 286
TELA_INICIAL
......................................................................................................................................... 286
Indicativos ou .........................................................................................................................................................
flags
286
AC_ALTERACAO ......................................................................................................................................... 287
AC_EXCLUSAO ......................................................................................................................................... 287
AC_FILTRAGENS ......................................................................................................................................... 287
AC_INCLUSAO
......................................................................................................................................... 287
AC_PESQUISAS ......................................................................................................................................... 287
CP_AJUDA
......................................................................................................................................... 287
CP_INVISIVEL
CP_LISTAEXT
CP_LISTAINT

......................................................................................................................................... 287
......................................................................................................................................... 287
......................................................................................................................................... 287

CP_NUMERICO ......................................................................................................................................... 287


CP_SEQUENCIAL ......................................................................................................................................... 288
CRITICAR
......................................................................................................................................... 288
DEIXAR_NA_SENHA
......................................................................................................................................... 288
2007 GAS Tecnologia

13

14

GAS 2007 - Manual do Usurio


EXC_LANC

......................................................................................................................................... 288

FORCAR_RELACAO
......................................................................................................................................... 288
IND_PRIMARIO

......................................................................................................................................... 288

IND_UNICO
INT_1-N

......................................................................................................................................... 288
......................................................................................................................................... 288

MONOUSUARIO
MULTIUSUARIO

......................................................................................................................................... 288
......................................................................................................................................... 288

QDE_CAMPOS

......................................................................................................................................... 288

QDE_BD

......................................................................................................................................... 288

QDE_CAMPOS_ALVO
......................................................................................................................................... 289
QDE_CONSULTAS......................................................................................................................................... 289
QDE_CP_TAB_BASICA
......................................................................................................................................... 289
QDE_INDICES
......................................................................................................................................... 289
QDE_INTEGRIDADES
......................................................................................................................................... 289
QDE_INT_CPS
......................................................................................................................................... 289
QDE_JANELAS
......................................................................................................................................... 289
QDE_LANCAMENTOS
......................................................................................................................................... 289
QDE_PROCESSOS......................................................................................................................................... 289
QDE_RELATORIOS......................................................................................................................................... 289
QDE_TABELAS ......................................................................................................................................... 289
QDE_TAB_AUXILIAR
......................................................................................................................................... 290
TB_PARAMETROS......................................................................................................................................... 290
TEM_AJUDA
......................................................................................................................................... 290
TEM_ATRIBUTOS ......................................................................................................................................... 290
TEM_BAJUDA
......................................................................................................................................... 290
TEM_BANTERIOR ......................................................................................................................................... 290
TEM_BAPAGACOL......................................................................................................................................... 290
TEM_BCANCELA ......................................................................................................................................... 290
TEM_BCONFGRAF......................................................................................................................................... 290
TEM_BCONFIMP ......................................................................................................................................... 290
TEM_BCONSULTA......................................................................................................................................... 290
TEM_BEXCLUI
......................................................................................................................................... 291
TEM_BFILTRO
TEM_BFINALIZA
TEM_BGRADE

......................................................................................................................................... 291
......................................................................................................................................... 291
......................................................................................................................................... 291

TEM_BGRAFA
TEM_BGRAVA
TEM_BIMPRE

......................................................................................................................................... 291
......................................................................................................................................... 291
......................................................................................................................................... 291

TEM_BINCLUI
......................................................................................................................................... 291
TEM_BINFODB
......................................................................................................................................... 291
TEM_BOTAO_INTERNET
......................................................................................................................................... 291
TEM_BPRIMEIRO ......................................................................................................................................... 291
TEM_BPROCURA ......................................................................................................................................... 292
TEM_BREPARA ......................................................................................................................................... 292
TEM_BROWSE ......................................................................................................................................... 292
TEM_BSEGUINTE ......................................................................................................................................... 292
TEM_BSENHA
......................................................................................................................................... 292
TEM_BTOTALIZA ......................................................................................................................................... 292
TEM_BULTIMO ......................................................................................................................................... 292
TEM_CBOIND
......................................................................................................................................... 292
TEM_COND_ALT_REG
......................................................................................................................................... 292
TEM_COND_EXC_LAN
......................................................................................................................................... 292
TEM_COND_EXC_PRO
......................................................................................................................................... 292
TEM_COND_EXC_REG
......................................................................................................................................... 293
2007 GAS Tecnologia

Contents

15

TEM_COND_INC_LAN
......................................................................................................................................... 293
TEM_COND_INC_PRO
......................................................................................................................................... 293
TEM_COND_INC_REG
......................................................................................................................................... 293
TEM_CONSULTAS......................................................................................................................................... 293
TEM_CPMEMO ......................................................................................................................................... 293
TEM_CPS_LANCAMENTOS
......................................................................................................................................... 293
TEM_DESC_BD ......................................................................................................................................... 293
TEM_DESC_TAB ......................................................................................................................................... 293
TEM_FORMULA_INV_PRO
......................................................................................................................................... 293
TEM_GRAFICOS ......................................................................................................................................... 293
TEM_GRID
......................................................................................................................................... 294
TEM_INDICES
......................................................................................................................................... 294
TEM_INTEGRIDADES
......................................................................................................................................... 294
TEM_LANCAMENTOS
......................................................................................................................................... 294
TEM_MAJUDA
......................................................................................................................................... 294
TEM_MANTERIOR......................................................................................................................................... 294
TEM_MAPAGACOL......................................................................................................................................... 294
TEM_MCANCELA ......................................................................................................................................... 294
TEM_MCONFGRAF......................................................................................................................................... 294
TEM_MCONFIMP ......................................................................................................................................... 294
TEM_MCONSULTA......................................................................................................................................... 294
TEM_MEXCLUI ......................................................................................................................................... 295
TEM_MFILTRO
......................................................................................................................................... 295
TEM_MFINALIZA ......................................................................................................................................... 295
TEM_MGRADE
......................................................................................................................................... 295
TEM_MGRAFA
......................................................................................................................................... 295
TEM_MGRAVA
TEM_MIMPRE
TEM_MINCLUI

......................................................................................................................................... 295
......................................................................................................................................... 295
......................................................................................................................................... 295

TEM_MINFODB ......................................................................................................................................... 295


TEM_MPRIMEIRO ......................................................................................................................................... 295
TEM_MPROCURA ......................................................................................................................................... 295
TEM_MREPARA ......................................................................................................................................... 296
TEM_MSEGUINTE......................................................................................................................................... 296
TEM_MSENHA
......................................................................................................................................... 296
TEM_MSG_VALIDACAO
......................................................................................................................................... 296
TEM_MTOTALIZA ......................................................................................................................................... 296
TEM_MULTIMO ......................................................................................................................................... 296
TEM_PARAMETROS
......................................................................................................................................... 296
TEM_PRE-VALIDACAO
......................................................................................................................................... 296
TEM_PROCESSOS......................................................................................................................................... 296
TEM_QTDEREG ......................................................................................................................................... 296
TEM_RELATORIOS
......................................................................................................................................... 296
TEM_SCRNAV
......................................................................................................................................... 297
TEM_SENHA
......................................................................................................................................... 297
TEM_TAB_AUXILIAR
......................................................................................................................................... 297
TEM_TELAINICIAL......................................................................................................................................... 297
TEM_VALIDACAO ......................................................................................................................................... 297
TEM_VALOR_INICIAL
......................................................................................................................................... 297
TEM_VALOR_LANC
......................................................................................................................................... 297
UM_BD
......................................................................................................................................... 297
Indicativos do .........................................................................................................................................................
projetista
297
Comandos e condies
......................................................................................................................................................... 297
SE

......................................................................................................................................... 298

2007 GAS Tecnologia

15

16

GAS 2007 - Manual do Usurio


SE Linear

......................................................................................................................................... 298

REPETE

......................................................................................................................................... 298

IX Captulo 9 - Gerao do Instalador e


Adaptador de Banco

301

1 Criando...................................................................................................................................
o Instalador da Aplicao
301
2 O Utilitrio
...................................................................................................................................
Adaptador de Arquivos
301
3 O Utilitrio
...................................................................................................................................
Conversor de Arquivos DBF
303

X Captulo 10 - Um exemplo prtico

307

1 Aspectos
...................................................................................................................................
do funcionamento da aplicao
307
2 Definio
...................................................................................................................................
do projeto
308
Dados genricos .......................................................................................................................................................... 310
Estrutura do BD .......................................................................................................................................................... 310
Banco de dados .......................................................................................................................................................... 311
Tabelas
.......................................................................................................................................................... 311
Campos da tabela
......................................................................................................................................................... 313
Fornecedores
......................................................................................................................................... 313
Indexadores
......................................................................................................................................... 315
Parmetros do Sistema
......................................................................................................................................... 316
Produtos em estoque
......................................................................................................................................... 317
Contas a pagar
......................................................................................................................................... 322
Notas fiscais
......................................................................................................................................... 324
Itens da NF
......................................................................................................................................... 326
Movimentao de produtos
......................................................................................................................................... 328
Sadas de mercadorias
......................................................................................................................................... 330
ndices das tabelas
......................................................................................................................................................... 332
Contas a pagar
Fornecedores

......................................................................................................................................... 333
......................................................................................................................................... 333

Indexadores

......................................................................................................................................... 333

Itens da NF
......................................................................................................................................... 334
Movimentao de produtos
......................................................................................................................................... 334
Notas fiscais
......................................................................................................................................... 335
Parmetros do sistema
......................................................................................................................................... 335
Produtos em estoque
......................................................................................................................................... 335
Sadas de mercadorias
......................................................................................................................................... 336
Integridades ......................................................................................................................................................... 337
Notas Fiscais
......................................................................................................................................... 338
Itens da nf
......................................................................................................................................... 339
Produtos em estoque
......................................................................................................................................... 339
Sadas de mercadorias
......................................................................................................................................... 340
Tela inicial
......................................................................................................................................................... 340
Inserindo as janelas
..........................................................................................................................................................
de dados
341
Definindo as janelas
..........................................................................................................................................................
de dados
345
Fornecedores ......................................................................................................................................................... 346
Indexadores ......................................................................................................................................................... 351
Produtos

......................................................................................................................................................... 353

Entradas de produtos
......................................................................................................................................................... 359
Itens da NF ......................................................................................................................................................... 366
Colocando o grid
.........................................................................................................................................................
na tela
376
Financeiro

......................................................................................................................................................... 381

2007 GAS Tecnologia

Contents

17

Sada de mercadorias
......................................................................................................................................................... 382
Parmetros do.........................................................................................................................................................
sistema
390
Movimentao.........................................................................................................................................................
dos produtos
391
Ajuste de estoque
......................................................................................................................................................... 394
Formulrios sem
.........................................................................................................................................................
vnculos de dados
396
Formulrios com
.........................................................................................................................................................
alterao bloqueada por default
396
Gerando os programas
..........................................................................................................................................................
fontes
397
Gerando os programas
..........................................................................................................................................................
executveis
399

XI Captulo 11 - Utilizando a aplicao gerada

401

1 Ativando
...................................................................................................................................
a aplicao gerada
401
2 Informando
...................................................................................................................................
os diretrios de trabalho
401
Dados (com extenso
..........................................................................................................................................................
MDB)
401
Controle (com extenso
..........................................................................................................................................................
LDB)
402
Inicializao (com extenso
..........................................................................................................................................................
INI)
402

3 Informando
...................................................................................................................................
a senha e acessando a aplicao
402
4 Operando
...................................................................................................................................
a aplicao
404
Teclas de controle..........................................................................................................................................................
de edio (janelas)
404
Teclas de controle..........................................................................................................................................................
de edio (grid)
405
Incluindo Fornecedores
.......................................................................................................................................................... 407
Incluindo indexadores
.......................................................................................................................................................... 410
Incluindo Parmetros
.......................................................................................................................................................... 410
Incluindo produtos.......................................................................................................................................................... 410
Carregando um
.........................................................................................................................................................
campo do tipo multimdia
416
Retirando um .........................................................................................................................................................
arquivo do campo multimdia
416
Operando o plano..........................................................................................................................................................
de senhas
416
Alterando a senha
......................................................................................................................................................... 417
Criando Grupos
......................................................................................................................................................... 418
Removendo um
.........................................................................................................................................................
grupo
419
Alterando permisses
.........................................................................................................................................................
de grupos
419
Credenciando .........................................................................................................................................................
usurios
420
Descredenciando
.........................................................................................................................................................
usurios
421
Digitando Notas Fiscais
..........................................................................................................................................................
de Fornecedores
421
Uilizando os recursos
..........................................................................................................................................................
da aplicao
422
Boto para alternar
.........................................................................................................................................................
visualizao
423
Boto de incluso
......................................................................................................................................................... 425
Boto de apresentao
.........................................................................................................................................................
de grfico
425
Boto de procura
......................................................................................................................................................... 425
Boto de filtragem
.........................................................................................................................................................
e ordenao
425
Barra de navegao......................................................................................................................................... 426
Boto de imprimir
......................................................................................................................................................... 427
Boto de consulta
......................................................................................................................................................... 428
Boto de informaes
......................................................................................................................................................... 428
Boto de finalizar
......................................................................................................................................................... 428
Operando com consultas
.......................................................................................................................................................... 428
Vizualizando uma
.........................................................................................................................................................
consulta existente
429
Criando uma nova
.........................................................................................................................................................
consulta
429
Contedos
......................................................................................................................................... 430
Nome da consulta ................................................................................................................................... 430
Tabelas
................................................................................................................................... 431
Campos a mostrar ................................................................................................................................... 431
Coluna avulsa
................................................................................................................................... 431

2007 GAS Tecnologia

17

18

GAS 2007 - Manual do Usurio


Grupos e ordenao......................................................................................................................................... 432
Agrupar por
Ordenado por
Seleo
Os primeiros

................................................................................................................................... 432
................................................................................................................................... 432
......................................................................................................................................... 432
................................................................................................................................... 433

Seleo de registros/Unio
...................................................................................................................................
de tabelas
433
Apagando uma.........................................................................................................................................................
consulta
434
Apagando colunas
.........................................................................................................................................................
das grades de consulta
435
Quebra na impresso
.........................................................................................................................................................
de consultas (COPY)
435
Procurando um registro
.......................................................................................................................................................... 436
Trabalhando com ..........................................................................................................................................................
grficos
437
Alterando a forma
.........................................................................................................................................................
de visualizao do grfico
439
Gravando um .........................................................................................................................................................
grfico
439
Imprimindo um.........................................................................................................................................................
grfico
440
Reparao do banco
..........................................................................................................................................................
de dados
440

XII Captulo 12 - O GAS como ferramenta de


desenvolvimento

442

1 Funes
...................................................................................................................................
genricas geradas na aplicao
442
DDMM
DDMMAA

.......................................................................................................................................................... 442
.......................................................................................................................................................... 442

Existe
Extenso
GDV1

.......................................................................................................................................................... 443
.......................................................................................................................................................... 443
.......................................................................................................................................................... 443

GDV2
GDvCb
GravaNoIni

.......................................................................................................................................................... 443
.......................................................................................................................................................... 444
.......................................................................................................................................................... 444

HaNaString
LoadGasPicture
LoadGasString

.......................................................................................................................................................... 444
.......................................................................................................................................................... 445
.......................................................................................................................................................... 445

LPad
MMAA
NMes

.......................................................................................................................................................... 445
.......................................................................................................................................................... 445
.......................................................................................................................................................... 446

NSem
PegaIntDoIni
PegaSequencia

.......................................................................................................................................................... 446
.......................................................................................................................................................... 446
.......................................................................................................................................................... 447

PegaStrDoIni
PTab
RAt

.......................................................................................................................................................... 447
.......................................................................................................................................................... 448
.......................................................................................................................................................... 448

Retira
RPad
Substitui

.......................................................................................................................................................... 448
.......................................................................................................................................................... 449
.......................................................................................................................................................... 449

ValBrasil
VCGC
VDV1

.......................................................................................................................................................... 449
.......................................................................................................................................................... 450
.......................................................................................................................................................... 450

VDV2
VDvCB
VHORA

.......................................................................................................................................................... 450
.......................................................................................................................................................... 451
.......................................................................................................................................................... 451

VUF

.......................................................................................................................................................... 451

2 Variveis
...................................................................................................................................
de sistema
452
De abrangncia global
.......................................................................................................................................................... 452
vgPwUsuario ......................................................................................................................................................... 452
vgPwGrupo ......................................................................................................................................................... 452
2007 GAS Tecnologia

Contents

19

vgPwSenha

......................................................................................................................................................... 452

vgPwObS

......................................................................................................................................................... 452

vgNomeDB ......................................................................................................................................................... 452


vgDBAtual
vgDirDb

......................................................................................................................................................... 453
......................................................................................................................................................... 453

vgDirExe
vgDB

......................................................................................................................................................... 453
......................................................................................................................................................... 453

vgNomeIni

......................................................................................................................................................... 453

vgNomeSistema
......................................................................................................................................................... 453
vgProjetista ......................................................................................................................................................... 453
vgBotoesOk ......................................................................................................................................................... 453
vgAtencao
vgImpConv
vgCtHint

......................................................................................................................................................... 453
......................................................................................................................................................... 454
......................................................................................................................................................... 454

vgBarraFerr ......................................................................................................................................................... 454


vgAjudaAtiva ......................................................................................................................................................... 454
vgNomeEstacao
......................................................................................................................................................... 454
vgRsPwGrupo......................................................................................................................................................... 454
vgRsPwUsuario
......................................................................................................................................................... 454
vgRsPwTabelas
......................................................................................................................................................... 454
vgTipoAcrescDesc
......................................................................................................................................................... 454
vgAcrescDesc......................................................................................................................................................... 455
vgValorAcrescDesc
......................................................................................................................................................... 455
vgQtdItem
......................................................................................................................................................... 455
vgValorTroco ......................................................................................................................................................... 455
vgValorSubtotal
......................................................................................................................................................... 455
vgNumeroCupom
......................................................................................................................................................... 455
vgTotalPago ......................................................................................................................................................... 455
vgItemAtual ......................................................................................................................................................... 456
vgMoeda
......................................................................................................................................................... 456
De abrangncia de..........................................................................................................................................................
formulrio
456
vgSituacao ......................................................................................................................................................... 456
vgCaracteristica
......................................................................................................................................................... 456
vgTipo
......................................................................................................................................................... 457
vgUltimoFiltro ......................................................................................................................................................... 458
vgUltimoTabIndex
......................................................................................................................................................... 458
vgFormID
......................................................................................................................................................... 458
vgTb
......................................................................................................................................................... 458
vgTbFiltro
......................................................................................................................................................... 458
vgTemInclusao......................................................................................................................................................... 458
vgTemExclusao
......................................................................................................................................................... 458
vgTemProcura......................................................................................................................................................... 458
vgTemFiltro ......................................................................................................................................................... 458
vgTemAlteracao
......................................................................................................................................................... 459
vgTemCondicoesEsp
......................................................................................................................................................... 459
vgEmBrowse ......................................................................................................................................................... 459
vgCpRel??? ......................................................................................................................................................... 459
vgRegLancado......................................................................................................................................................... 459
De abrangncia local
.......................................................................................................................................................... 459
vgNParc
......................................................................................................................................................... 459
vgCodLan

......................................................................................................................................................... 459

3 Como ...................................................................................................................................
feito o controle de lanamentos?
460
4 Os arquivos
...................................................................................................................................
de formato .DEF e .SQL
462
2007 GAS Tecnologia

19

20

GAS 2007 - Manual do Usurio


5 O esquema
...................................................................................................................................
de segurana utilizado nas aplicaes
465
Na primeira vez que
..........................................................................................................................................................
a aplicao executada...
467

6 Esquema de compatibilidade do GAS Enterprise com o SQL


Server e...................................................................................................................................
Oracle
468
7 Sistemas
...................................................................................................................................
com acesso multiusurio
469
8 Consideraes sobre o campo multimdia (gCpMM.OCX) e
digitalizao
...................................................................................................................................
de imagens
470
Compatibilidade do
..........................................................................................................................................................
campo multimdia com o Crystal Reports
471

9 Definindo
...................................................................................................................................
mdulos para impressora fiscal
472
A primeira...
A segunda...
A terceira

.......................................................................................................................................................... 473
.......................................................................................................................................................... 475
.......................................................................................................................................................... 477

A quarta...
.......................................................................................................................................................... 481
Implementando TEF
..........................................................................................................................................................
- Transferncia Eletrnica de Fundos discada
486
Suporte a impressora
..........................................................................................................................................................
Daruma
488

10 Mdulos
...................................................................................................................................
de apoio Emisso de Cupom
488
Modelo da impressora
.......................................................................................................................................................... 489
Porta de conexo .......................................................................................................................................................... 489
Horrio de vero .......................................................................................................................................................... 489
Configuraes para
..........................................................................................................................................................
TEF
489
Abertura de caixa .......................................................................................................................................................... 489
Fechamento de caixa
.......................................................................................................................................................... 489
Leitura X
Reduo Z
Sangria

.......................................................................................................................................................... 489
.......................................................................................................................................................... 490
.......................................................................................................................................................... 490

Suprimentos
Cancela item

.......................................................................................................................................................... 490
.......................................................................................................................................................... 490

Cancela cupom

.......................................................................................................................................................... 490

XIII Captulo 13 - Propriedades dos objetos de


tela

492

1 Lista das
...................................................................................................................................
propriedades
492

XIV Captulo 14 - Tutoriais

514

1 Tutorial...................................................................................................................................
Mysql
514
Introduo

.......................................................................................................................................................... 514

O que o banco de
..........................................................................................................................................................
dados MySQL
514
Viso geral ......................................................................................................................................................... 514
Passo 1 - Instalao
..........................................................................................................................................................
do banco
515
Fazer o download
.........................................................................................................................................................
do MySQL 5.1
515
Instalar o MySQL
......................................................................................................................................................... 519
Download MySQL
.........................................................................................................................................................
ODBC Driver
532
Instalar MySQL
.........................................................................................................................................................
ODBC Driver
536
Download MySQL
.........................................................................................................................................................
GUI Tools
538
Instalar MySQL
.........................................................................................................................................................
GUI Tools
541
Passo 2 - Definio
..........................................................................................................................................................
no GAS
546
Selecionar tipo.........................................................................................................................................................
do BD no GAS
546
Gerar projeto ......................................................................................................................................................... 548
Passo 3 - Definio
..........................................................................................................................................................
no Banco
553
Criar banco e .........................................................................................................................................................
estrutura
553
2007 GAS Tecnologia

Contents

21

Passo 4 - Conexo..........................................................................................................................................................
no projeto gerado
559
Dados sobre o.........................................................................................................................................................
banco no servidor
559

2 Tutorial...................................................................................................................................
Firebird
562
Introduo

.......................................................................................................................................................... 562

O que o banco de
..........................................................................................................................................................
dados Firebird
562
Viso geral ......................................................................................................................................................... 562
Passo 1 - Instalao
..........................................................................................................................................................
do banco
563
Fazer o download
.........................................................................................................................................................
do Firebird 2.0
563
Instalar o Firebird
......................................................................................................................................................... 564
Download Firebird
.........................................................................................................................................................
ODBC Driver
571
Instalar Firebird
.........................................................................................................................................................
ODBC Driver
572
Passo 2 - Definio
..........................................................................................................................................................
no GAS
578
Selecionar tipo.........................................................................................................................................................
do BD no GAS
578
Gerar projeto ......................................................................................................................................................... 578
Passo 3 - Definio
..........................................................................................................................................................
no Banco
579
Criar banco e .........................................................................................................................................................
estrutura
579
Passo 4 - Conexo..........................................................................................................................................................
no projeto gerado
583
Oitavo item ......................................................................................................................................................... 583

XV Captulo 15 - Extra

587

1 Do Clipper
...................................................................................................................................
para o VB - Analogias
587
Funes e procedures
.......................................................................................................................................................... 587
No Clipper ......................................................................................................................................................... 587
No Visual Basic
......................................................................................................................................................... 588
Retornando o valor
..........................................................................................................................................................
de uma funo em Visual Basic
588
Uso de parmetros..........................................................................................................................................................
opcionais
588
Chamadas a funes
..........................................................................................................................................................
externas
588
Variveis de memria
.......................................................................................................................................................... 588
Arquivos DBF, NTX
..........................................................................................................................................................
e DBT versus TABELAS
588
Tipos de campos .......................................................................................................................................................... 589
Operadores
.......................................................................................................................................................... 589
Estruturas de cdigo
.......................................................................................................................................................... 589
Funes do Clipper
..........................................................................................................................................................
e do GAS-DOS versus Visual Basic
590
Funes idnticas
......................................................................................................................................................... 590
Funes com .........................................................................................................................................................
correspondncia no Visual Basic
590
Funcoes criadas
.........................................................................................................................................................
pela GAS Informatica
592

2 Glossario
................................................................................................................................... 592
Alias

.......................................................................................................................................................... 593

ANSI
Aplicao
rea de cliente

.......................................................................................................................................................... 593
.......................................................................................................................................................... 593
.......................................................................................................................................................... 593

Argumento
.......................................................................................................................................................... 593
Arquivo de inicializao
.......................................................................................................................................................... 593
Arquivo DEF
.......................................................................................................................................................... 593
Arquivo resource .......................................................................................................................................................... 593
Arranjo ou varivel..........................................................................................................................................................
indexada
594
ASCII
.......................................................................................................................................................... 594
Asterisco
.......................................................................................................................................................... 594
Banco de campos.......................................................................................................................................................... 594
Banco de dados .......................................................................................................................................................... 594
Banco de dados multiusurio
.......................................................................................................................................................... 595
Campo invisvel .......................................................................................................................................................... 595
Campo no editvel
.......................................................................................................................................................... 595
2007 GAS Tecnologia

21

22

GAS 2007 - Manual do Usurio


Barra de ferramentas
.......................................................................................................................................................... 595
Bit

.......................................................................................................................................................... 595

Bitmap

.......................................................................................................................................................... 595

Bookmark
.......................................................................................................................................................... 595
Booleano ou lgico
.......................................................................................................................................................... 596
Caixa de dilogo .......................................................................................................................................................... 596
Campo
.......................................................................................................................................................... 596
Campo Alvo

.......................................................................................................................................................... 596

Campo chave

.......................................................................................................................................................... 596

Campo estrangeiro.......................................................................................................................................................... 596


Caracteres curinga.......................................................................................................................................................... 596
Caractere de declarao
.......................................................................................................................................................... 597
Chave estrangeira.......................................................................................................................................................... 597
Chave primria .......................................................................................................................................................... 597
Classe
.......................................................................................................................................................... 598
Clusula From
.......................................................................................................................................................... 598
Clusula Group by.......................................................................................................................................................... 598
Clusula Order by .......................................................................................................................................................... 598
Clusula Select .......................................................................................................................................................... 598
Clusula Where .......................................................................................................................................................... 598
Clipboard
Cdigo Fonte
Compilao

.......................................................................................................................................................... 598
.......................................................................................................................................................... 598
.......................................................................................................................................................... 599

Consulta pr-definida
.......................................................................................................................................................... 599
Controle
.......................................................................................................................................................... 599
Controles externos.......................................................................................................................................................... 599
Controle vinculado.......................................................................................................................................................... 599
Copy buffer
.......................................................................................................................................................... 599
Crystal reports
.......................................................................................................................................................... 599
Data control
Data bound
Default

.......................................................................................................................................................... 600
.......................................................................................................................................................... 600
.......................................................................................................................................................... 600

DLL
Domnio
Dynaset

.......................................................................................................................................................... 600
.......................................................................................................................................................... 600
.......................................................................................................................................................... 600

Equi-join
Etiqueta
Evento

.......................................................................................................................................................... 601
.......................................................................................................................................................... 601
.......................................................................................................................................................... 601

Event procedure .......................................................................................................................................................... 601


Exclusive
.......................................................................................................................................................... 601
Filtro
.......................................................................................................................................................... 601
Form
.......................................................................................................................................................... 601
Frmula
.......................................................................................................................................................... 601
Formulrio avulso .......................................................................................................................................................... 602
Funo (Function) .......................................................................................................................................................... 602
Funo agregada .......................................................................................................................................................... 602
Grade
.......................................................................................................................................................... 602
Grupo
Handle
cone

.......................................................................................................................................................... 602
.......................................................................................................................................................... 602
.......................................................................................................................................................... 602

ndice
.......................................................................................................................................................... 602
Inner join
.......................................................................................................................................................... 603
Integridade referencial
.......................................................................................................................................................... 603
Instncia

.......................................................................................................................................................... 603
2007 GAS Tecnologia

Contents

23

Janela

.......................................................................................................................................................... 603

Janela modal

.......................................................................................................................................................... 603

Janela tipo parmetro


.......................................................................................................................................................... 603
Jet Database Engine
.......................................................................................................................................................... 603
Join
.......................................................................................................................................................... 604
keyword
keyword

.......................................................................................................................................................... 604
.......................................................................................................................................................... 604

Left join

.......................................................................................................................................................... 604

Left outer join

.......................................................................................................................................................... 604

Linha separadora .......................................................................................................................................................... 604


Mscara
.......................................................................................................................................................... 605
MDI
Menu
Mtodo

.......................................................................................................................................................... 605
.......................................................................................................................................................... 606
.......................................................................................................................................................... 606

Modal
Mdulo
Objeto

.......................................................................................................................................................... 606
.......................................................................................................................................................... 606
.......................................................................................................................................................... 606

OLE
.......................................................................................................................................................... 606
Outer join
.......................................................................................................................................................... 606
Parmetros do sistema
.......................................................................................................................................................... 607
Permisses
Pixel
Procedure

.......................................................................................................................................................... 607
.......................................................................................................................................................... 607
.......................................................................................................................................................... 607

Processamentos .......................................................................................................................................................... 607


Processos pr-definidos
.......................................................................................................................................................... 607
Programa fonte .......................................................................................................................................................... 607
Projeto
Property
Propriedade

.......................................................................................................................................................... 608
.......................................................................................................................................................... 608
.......................................................................................................................................................... 608

Query
.......................................................................................................................................................... 608
Query de ao
.......................................................................................................................................................... 608
Query de parmetro
.......................................................................................................................................................... 608
Query de seleo .......................................................................................................................................................... 608
Recordset
.......................................................................................................................................................... 608
Registro
.......................................................................................................................................................... 609
Registro corrente .......................................................................................................................................................... 609
Relao
.......................................................................................................................................................... 609
Relatrio
.......................................................................................................................................................... 609
Reparao de banco
..........................................................................................................................................................
de dados
609
Rotina avulsa
.......................................................................................................................................................... 609
Self join
.......................................................................................................................................................... 609
Separador
Servidor OLE
Snapshot

.......................................................................................................................................................... 610
.......................................................................................................................................................... 610
.......................................................................................................................................................... 610

SQL
Sub
Tabela

.......................................................................................................................................................... 610
.......................................................................................................................................................... 610
.......................................................................................................................................................... 610

Tabela-alvo
.......................................................................................................................................................... 610
Tabela anexada .......................................................................................................................................................... 610
Tabela ANSI
.......................................................................................................................................................... 611
Tabela ASCII
.......................................................................................................................................................... 611
Tabela bsica
.......................................................................................................................................................... 611
Tabela estrangeira.......................................................................................................................................................... 611
Tipo de campo

.......................................................................................................................................................... 611

2007 GAS Tecnologia

23

24

GAS 2007 - Manual do Usurio


Tipo de campo carto
..........................................................................................................................................................
de crdito
611
Tipo de campo CEP
.......................................................................................................................................................... 611
Tipo de campo CGC
.......................................................................................................................................................... 611
Tipo de campo Cdigo
..........................................................................................................................................................
de Barras
612
Tipo de campo CPF
.......................................................................................................................................................... 612
Tipo de campo data
.......................................................................................................................................................... 612
Tipo de campo email
.......................................................................................................................................................... 612
Tipo de campo Fone
.......................................................................................................................................................... 612
Tipo de campo Fone
..........................................................................................................................................................
com DDD
612
Tipo de campo Hora
.......................................................................................................................................................... 612
Tipo de campo Lista
..........................................................................................................................................................
Interna
612
Tipo de campo Lgico
.......................................................................................................................................................... 612
Tipo de campo Memo
.......................................................................................................................................................... 613
Tipo de campo Multimdia
.......................................................................................................................................................... 613
Tipo de campo Numrico
.......................................................................................................................................................... 613
Tipo de campo Optativo
.......................................................................................................................................................... 613
Tipo de campo Rotativo
.......................................................................................................................................................... 613
Tipo de campo UF.......................................................................................................................................................... 613
Tipo de campo WebPage
.......................................................................................................................................................... 614
Tipo de dado
.......................................................................................................................................................... 614
Tipo de dado Binrio
..........................................................................................................................................................
Longo
614
Tipo de dado Booleano
.......................................................................................................................................................... 614
Tipo de dado Byte.......................................................................................................................................................... 614
Tipo de dado Data/hora
.......................................................................................................................................................... 614
Tipo de dado Dinheiro
.......................................................................................................................................................... 614
Tipo de dado Inteiro
.......................................................................................................................................................... 614
Tipo de dado Lgico
.......................................................................................................................................................... 615
Tipo de dado Longo
.......................................................................................................................................................... 615
Tipo de dado Memo
.......................................................................................................................................................... 615
Tipo de dado Preciso
..........................................................................................................................................................
Dupla
615
Tipo de dado Preciso
..........................................................................................................................................................
Simples
615
Tipo de dado String
.......................................................................................................................................................... 615
Tipo de dado Variant
.......................................................................................................................................................... 615
Update
.......................................................................................................................................................... 615
Usurio
.......................................................................................................................................................... 616
Validao
.......................................................................................................................................................... 616
Varivel
.......................................................................................................................................................... 616
Visual Basic - VB .......................................................................................................................................................... 616
Windows API
.......................................................................................................................................................... 616
Windows metafile .......................................................................................................................................................... 616
Workgroup
.......................................................................................................................................................... 616

Index

617

2007 GAS Tecnologia

Captulo

I
Captulo 1- Introduo

26

GAS 2007 - Manual do Usurio

Captulo 1- Introduo
Esta a quinta verso do GAS para Windows. Lanada h alguns anos aps o incio da
comercializao da sua predecessora, esta verso j incorpora, conforme prometemos, quase todos
os recursos existentes na verso MS-DOS deste produto, consideradas as enormes diferenas entre
os dois ambientes, alm de recursos de extrema necessidade em nossa atual conjuntura de
mercado, como o acesso a diversos tipos de base de dados corporativas. Alguns recursos no
puderam ainda ser disponibilizados; porm, conforme sempre dizemos, outras verses viro sempre
acompanhadas de diversas novidades e implementaes que colocaro, com certeza, este produto
entre os melhores de sua classe.
Esperamos que voc faa bom uso deste material. Criticas e sugestes so sempre bem vindas.
GAS Tecnologia.

1.1

O que o GAS 2007


O GAS um software gerador de sofisticadas aplicaes para a manipulao de banco de dados
em ambiente Windows, voltado tanto para desenvolvedores quanto para usurios finais, face a
simplicidade de sua interface. O desenvolvimento deste produto o resultado do trabalho rduo de
profissionais com larga experincia no desenvolvimento de aplicaes voltadas para banco de dados
e deste tipo de ferramenta. Nossos esforos foram concentrados para que esta nova verso Windows
alcanasse um igual padro de versatilidade e qualidade das verses anteriores (MS-DOS e
Windows), que hoje so reconhecidas nacional e internacionalmente como poderosas ferramentas de
desenvolvimento de aplicaes.
Os programas fontes so gerados na linguagem Microsoft Visual Basic 5.0/6.0, sendo, portanto,
necessrio que o usurio tenha instalado em seu equipamento a verso Professional ou Enterprise
deste produto. As aplicaes geradas fazem uso do banco de dados Microsoft Jet Engine v3.6 (GAS
Professional, International ou Enterprise) ou do Microsoft SQL Server 7.0 e Oracle 8i (somente GAS
Enterprise). Salientamos que futuras verses deste produto podero ser contempladas de
compatibilidade com outros bancos de dados, tais como SyBase, etc.
GAS Professional - gera aplicaes em Visual Basic que utilizam o banco de dados Jet Engine,
em um dos seguintes idiomas: Portugus, Ingls ou Espanhol.
GAS Enterprise - que tem as mesmas caractersticas da verso Professional, porm, capaz
de gerar aplicaes tambm para utilizar o Microsoft SQL Server 2000/2005 e Oracle 8i/10i Mysql
5.0 e Firebird 2.0, alm disto, capaz de gerar aplicaes em Visual Basic em qualquer um dos
idiomas citados, por escolha de menu.
As aplicaes geradas pelo GAS contm todos os recursos e funes necessrias manipulao
do banco de dados, podendo ser prontamente compiladas e utilizadas, sem qualquer esforo de
programao. Para as organizaes, a utilizao desta ferramenta proporciona ganhos
extremamente significativos nos aspectos de produtividade, padronizao e reduo dos custos
relativos a desenvolvimento e manuteno de aplicaes. Para profissionais de informtica que ainda
no se consolidaram no desenvolvimento em ambiente Windows, o GAS quebra os paradigmas da
incerteza e coloca-se como ponto de partida para a migrao, sem traumas, de aplicaes
provenientes do ambiente MS-DOS.

2007 GAS Tecnologia

Captulo 1- Introduo

27

Os desenvolvedores profissionais para ambiente Windows encontraro no GAS todos os recursos


necessrios para o desenvolvimento de aplicaes de alto grau de complexidade, eficincia e
rapidez, consolidando a combinao perfeita entre performance e funcionalidade, e recursos de
altssimo nvel, adequados s necessidades de aplicaes de banco de dados.
GAS Tecnolologia
Telefone: 0-xx-61- 349-1188
Fax: 0-xx-61-340-7607
Web: http://www.gastecnologia.com.br

1.1.1

Aspectos da Interface
Tanto o GAS quanto as aplicaes por ele geradas possuem interface padro do Windows, com
caracterstica MDI ou interface de mltiplos documentos. Isto significa que todas as janelas da
aplicao esto contidas em uma nica janela principal (MDI) dentro da qual as demais podem ser
utilizadas, minimizadas e maximizadas.

Exemplo de Tela MDI

Aplicaes com este tipo de interface apresentam, normalmente, um alto grau de qualidade e
sofisticao pela inexistncia, salvo em raras situaes, de janelas modais - aquelas que o usurio

2007 GAS Tecnologia

28

GAS 2007 - Manual do Usurio

obrigado a resolver, antes que consiga clicar e ativar outras janelas da aplicao.
Alm de possuir a ajuda de operao on-line padro Windows, o GAS apresenta uma ajuda
especfica para os objetos de sua interface, atravs de bales com textos elucidativos relativos ao
contexto.

1.1.2

Modelagem da rvore
O GAS possui modelador prprio que permite ao projetista desenhar a estrutura hierrquica do
projeto (rvore) conforme necessrio, com uma interface bastante amigvel.
Sempre que um novo projeto criado, o GAS coloca diversos mdulos da interface padro
Windows (opes Arquivo, Editar, Exibir, Janela, etc.) na rvore do projeto, que podem ser retirados
ou modificados, a qualquer instante, pelo projetista.
O modelador apresenta cones especiais para identificar o tipo de mdulo existente na rvore
(menu, janela de entrada de dados, relatrio, rotina avulsa, etc.). A modelagem da hierarquia do
projeto feita livremente atravs da insero, movimentao ou eliminao de mdulos.

Arvore da soluo\projeto

O modelador do projeto do GAS possui diversos recursos para facilitar o trabalho do projetista.
Alguns deles:

2007 GAS Tecnologia

Captulo 1- Introduo

29

possibilidade de utilizar fontes de cores diferentes na identificao de mdulos j definidos,


mdulos ainda no definidos e mdulos que no sero gerados por opo do projetista. Com
isto, ao visualizar a rvore do projeto, o projetista tem a imediata percepo do estgio em que
se encontra o seu trabalho;
medida que vai inserindo mdulos na rvore, o projetista est automaticamente montando a
estrutura de menus da aplicao final a ser gerada, pois, a rvore hierrquica espelha
exatamente a estrutura de menus a ser oferecida ao usurio final da aplicao.
clipboard para copiar definies inteiras de mdulos j definidos para um outro ponto da rvore
ou mesmo para outros projetos GAS, com o objetivo de alterar e aproveitar suas definies para
a criao de novos mdulos, permitindo que o analista ou projetista ganhe tempo precioso na
fase de projeto;
drag and drop (arrasta e solta) para mover troncos inteiros para outras posies da rvore;
possibilidade de abrir ou fechar troncos inteiros na rvore, para que o projetista os visualize ou
no, conforme desejar;
edio in-loco da identificao dos mdulos na rvore;

1.1.3

Definio da Soluo\Projeto
Aspectos da Soluo\projeto podem ser definidos pelo projetista pela simples marcao de
opes. Algumas opes que podem ser marcadas so:

a gerao de aplicao multiusuria;


se os programas fontes apresentaro comentrios linha a linha;

2007 GAS Tecnologia

30

GAS 2007 - Manual do Usurio

quantidade de caracteres a serem utilizados para endentar as estruturas no cdigo fonte Visual
Basic;
botes estilo Internet. O GAS poder gerar, caso tenha sido configurado, barra de ferramenta
na aplicao com botes de estilo semelhante aos existentes nos browsers da Internet.
se a aplicao final ir ficar estacionada na senha, sempre que for abandonada por um usurio,
caso esteja provida do plano de senhas (veja item Segurana de Acesso Aplicao, mais
adiante). Esta opo especialmente til na confeco de aplicaes voltadas para balco
(PDV) onde diversos vendedores utilizam o sistema na mesma estao de trabalho. Na
definio do projeto, bem como nas definies de tabelas e outros lugares, o projetista poder
digitar texto para ser utilizado na documentao do projeto.
1.1.3.1

Solues multi-projetos
A estrutura principal para definio de projetos do GAS foi alterada visando possibilitar a definio
de vrios projetos de forma agrupada dentro de uma nica soluo (.GAS). Essa caracterstica pode
ser comparada a solues (nome dado em algumas IDE's como, por exemplo, o Visual Studio). O
projetista definir a estrutura dos bancos de dados em um local centralizado e, depois de definidos
os bancos, poder determinar quais bancos sero utilizados dentro de cada projeto.

1.1.4

Definio de Banco de Dados


Atravs de uma interface super amigvel, o projetista poder definir um ou mais banco de dados
do tipo MDB, SQL Server 2000/2005, Oracle 8i/10i, Mysql 5.0 ou Firebird 2.0 que a aplicao
manipular, as tabelas que estaro neles contidas, suas estruturas e atributos (campos), bem como
ndices e as regras de integridade existentes entre essas tabelas (relacionamentos 1-1 e 1-N).

2007 GAS Tecnologia

Captulo 1- Introduo

31

Com a definio de mais de um banco de dados a aplicao poder acessar informaes de


outros sistemas, utilizando-as em consultas, relatrios e validaes bem como incluir registros, criar
processamentos e lanamentos em qualquer um dos bancos de dados.
Para bancos de dados MDB, o projetista poder entrar com uma senha para que a aplicao final
mantenha o banco de dados na forma encriptada de modo a impedir que seus dados possam ser
manipulados por outras aplicaes.
A qualquer momento, o projetista poder alterar o tipo de acesso dos diversos bancos de dados
da aplicao a ser gerada, adicionando ou alterando os tipos de banco de dados desejados. Uma
utilidade bastante interessante desse recurso que, em virtude das formalidades de se criar e alterar
estruturas de dados no banco de dados SQL Server, Firebird, MySQL ou Oracle (bancos de dados
corporativos), o projetista poder construir toda a sua aplicao utilizando o banco de dados do Jet
Engine (MDB) e, somente quando ela estiver instalando a aplicao escolher o banco desejado, sem
necessidade de alterar nada no projeto, ele poder ajustar a gerao dos programas fontes para
utilizar o banco de dados SQL Server, Oracle, MySQL ou Oracle, ficando desta forma o projeto
totalmente compatvel com qualquer um destes bancos.
Diversas facilidades so oferecidas pelo GAS para a definio de campos:
mscaras de digitao podem ser definidas para forar maisculas, dgitos numricos e
insero de caracteres especiais (parnteses, traos, vrgulas, etc.) dentro dos campos;
dicionrio de dados ativo - ao modificar um atributo de campo em uma determinada tabela,
modificaes pertinentes so efetuadas automaticamente em todas as tabelas onde exista o

2007 GAS Tecnologia

32

GAS 2007 - Manual do Usurio

campo modificado;
tipos intrnsecos de campos. Quando, por exemplo, o projetista define um campo do tipo CGC,
o GAS estabelece automaticamente o seu tamanho, validao, mscara e outros detalhes
inerentes a este tipo de campo. Alguns dos campos intrnsecos oferecidos so: rotativo
(spinners), optativo (botes de radio), telefone, CPF, CGC, e-mail, web page, carto de crdito,
cdigos de barra EAN e UPCA (EAN 13 e 8, UPC-A, 3 de 9 e 2 de 5 interleaved), etc.

EAN

UPCA

estabelecimento de apelidos para os campos, facilitando as suas referncias dentro do cdigo


dos programas;
estabelecimento da posio ordinal que determina a ordem de digitao dos campos;
campos do tipo seqencial, com incremento automtico num valor determinado pelo projetista,
para campos do tipo numrico, caracter e data;
existe tambm a opo de importao de uma estrutura qualquer, contida em um arquivo de
formato MDB ou no banco SQL-SERVER com total aproveitamento da estrutura e dados nele
existentes. Para isto, o projetista ter apenas de clicar um boto e informar o nome do arquivo a
ser importado.

1.1.5

Banco de Campos
medida que as definies so feitas, um banco de campos vai sendo formado a partir das
informaes definidas. Assim, sempre que se fizer necessrio ou que desejar, o projetista poder
clicar para capturar definies de campos j feitas, para serem aproveitadas em novas definies que
estiverem sendo efetuadas, economizando assim um precioso tempo.

1.1.6

Editor Interno
Sempre que o projetista desejar o editor de programas interno do GAS pode ser invocado para
oferecer ao projetista as condies de escrever cdigo Visual Basic para ser integrado ao sistema
aplicativo gerado.
O editor interno do GAS possui trs reas distintas para a insero de cdigo:
declaraes de variveis e funes externas, que deve ser utilizada para declarar os nomes das
variveis que tero visibilidade dentro do escopo do mdulo que estiver sendo definido.

2007 GAS Tecnologia

Captulo 1- Introduo

33

Se o mdulo em definio for o ttulo do projeto, as variveis tero escopo global, em toda a
aplicao;
funes ou rotinas globais, que devem ser utilizada para que o projetista crie suas prprias
funes para o mdulo e
designao de variveis, que podem ser utilizadas para designar valores para as variveis
criadas na primeira rea do editor.
O editor possui diversas facilidades para auxiliar o projetista no seu trabalho, como por exemplo,
procura e substituio de texto, auto-endentao e cores diferentes para palavras chaves, comandos,
comentrios, etc.

1.1.7

Definio do Aspecto da Aplicao


Alm da estrutura de menus da aplicao final, que o projetista define ao modelar a rvore
hierrquica do projeto, existe ainda a total liberdade para definir o aspecto da aplicao a ser gerada.
Recursos foram colocados para que o projetista insira ou retire botes na barra de ferramentas da
aplicao final. tambm facultada a escolha do tamanho e posio onde esta barra aparecer. Sua
formatao semelhante formatao de telas para as janelas de dados, descrita no item
Formatao da Janela de Dados, a ser referenciado mais adiante.

2007 GAS Tecnologia

34

GAS 2007 - Manual do Usurio

uma imagem de padro bitmap (.BMP) pode ser escolhida para ser utilizada como
apresentao (splash screen) da aplicao final,podendo-se, ainda, definir as dimenses e a
moldura da tela onde a imagem ser apresentada.
todos os cones a serem utilizados na aplicao gerada podem ser configurados utilizando-se
os que so oferecidos pelo GAS na sua galeria de cones, ou quaisquer outros que o projetista
desejar utilizar.

ainda para manipular a aparncia da aplicao final a ser gerada, o projetista poder criar
logotipos verticais laterais com texto em degrad em qualquer dos forms da aplicao, para
identific-los com um visual mais agradvel;
texturas em bitmap podem ser escolhidas para servir como pano de fundo dos forms da
aplicao com uma apresentao bastante profissional. O projetista pode ainda colocar nos
forms diversos objetos como icones, imagens ou texto em 3-D, em qualquer ngulo.

2007 GAS Tecnologia

Captulo 1- Introduo

1.1.7.1

35

Marca d'gua
O projetista pode definir uma marca d'gua na aplicao final, em tempo de execuo. Na figura
abaixo mostrado como se coloca no projeto.

2007 GAS Tecnologia

36

1.1.8

GAS 2007 - Manual do Usurio

Definio da Janela de Dados


Uma vez estabelecida a estrutura dos bancos de dados, o projetista poder definir janelas ou
forms para acessar os dados existentes em suas tabelas. Neste momento, diversas opes de
acessibilidade podem ser marcadas, como por exemplo:
permitir ou no a incluso de registros atravs da janela que est sendo definida;
permitir ou no a excluso de registros;
permitir ou no que registros sejam alterados atravs desta janela;
permitir ou no o estabelecimento de filtros de seleo de registros;
permitir ou no a pesquisa de registros;
criar ou no o form desvinculado ao banco de dados, agilizando assim a abertura;

2007 GAS Tecnologia

Captulo 1- Introduo

37

desligar a gerao do cdigo fonte para um determinado mdulo;


permitir ou no que a janela em definio conste do menu;
determinar se, durante a incluso de registros no mdulo em definio, informaes sero
enviadas para uma impressora fiscal (ECF). Mesmo que essas opes estejam marcadas como
permitidas ao usurio da aplicao final, pode-se ainda estabelecer condies para negar essas
permisses. Essas condies so estabelecidas atravs da prpria interface do GAS no
momento da construo da tela do mdulo (form).
permitir ou no que o item seja preservado na gerao, em casos em que forem feitas
alteraes diretamente no visual basic, e que o usurio queira que o GAS preserve estes
cdigos;

definir ou no um nome ao menu. Caso seja definido, o usurio pode chamar pelo nome
definido dentro do seu projeto;
permitir ou no que o menu seja visvel, podendo ser atravs do atendimento de uma
determinada condio;
definir ou no uma pre-validao, podendo assim criar uma condio para que o menu esteja
ou no habilitado;
definir ou no uma tecla de atalho para que ao pressionada seja chamado este formulrio;

2007 GAS Tecnologia

38

GAS 2007 - Manual do Usurio

O projetista poder ainda utilizar expresses do prprio Visual Basic ou ainda funes escritas
nesta linguagem, atravs do editor interno do GAS, que so automaticamente integradas ao cdigo
gerado na aplicao final.
Na definio de uma janela de dados, uma tabela eleita como tabela bsica e o projetista tem a
oportunidade de estabelecer os relacionamentos entre a tabela bsica e outras tabelas existentes em
qualquer um dos bancos de dados definidos para a aplicao final. Ento, a partir desses
relacionamentos, diversas outras definies podem ser feitas:
processamentos podem ser definidos de modo que, contedos de campos digitados possam
ser utilizados em frmulas para modificar campos de outras tabelas da aplicao ou da prpria
tabela em digitao, inclusive em registros diferentes daquele em que a digitao esteja sendo
efetuada. Por exemplo, pode-se estabelecer que, quando da digitao de um item de Nota
Fiscal de fornecedor, a tabela de produtos em estoque seja processada em seus campos
"quantidade em estoque" e "preo mdio", com o acrscimo da quantidade de produto recebida
e o reclculo do preo mdio do produto;

2007 GAS Tecnologia

Captulo 1- Introduo

39

lanamentos podem ser estabelecidos para a criao de novos registros em quaisquer tabelas
de qualquer banco de dados da aplicao (ou na prpria tabela em digitao) com a imediata
colocao de valores em seus campos, da mesma maneira e facilidade como feita nos
processamentos do item anterior. Por exemplo, ao registrar um recebimento em "contas a
receber", pode-se estabelecer que um lanamento de crdito seja feita na tabela de
"contacorrente", referente ao valor recebido.

2007 GAS Tecnologia

40

GAS 2007 - Manual do Usurio

Atravs das definies de processos e lanamentos, o projetista capaz de criar aplicaes


bastante complexas e sofisticadas, com integrao total inclusive com outras aplicaes que
estiverem sendo executadas no mesmo ambiente, como por exemplo, folha de pagamento integrada
com gesto de recursos humanos, contabilidade integrada com controle de estoques, etc.

2007 GAS Tecnologia

Captulo 1- Introduo

1.1.9

41

Definio de uma tabela em grid


Se existir um relacionamento 1-N entre duas tabelas na rvore ou modelador do projeto, a tabela
referente parte "N" do relacionamento pode ser apresentada em um grid, que permite a
visualizao de diversos registros de uma s vez, durante a digitao e alterao de registros. A
rigor, uma tabela pode ser mostrada em grid sempre que estiver relacionada na rvore a uma outra
tabela me, mesmo que no banco de dados no exista especificamente este relacionamento.
Tambm aberta tabela me, via ao disparada do MDI principal, a sua visualizao em grid,
podendo-se efetuar modificaes e excluses necessrias. A definio da tabela em grid
semelhante definio da janela de dados explicada no item anterior, exigindo, porm, que seja
especificada a forma de ligao com a tabela me.

2007 GAS Tecnologia

42

GAS 2007 - Manual do Usurio

Se desejar que uma tabela seja apresentada em grid, entretanto, sem nenhum relacionamento
com a tabela da janela de dados(pai), tambm possivel, bastando apenas informar nas definies
do Grid, que o mesmo no possui relacionamento com o PAI.

1.1.10 Formatao da Janela de Dados


Uma vez estabelecida uma janela de dados, o projetista pode elaborar a tela para a digitao e
visualizao das informaes nela contidas.

2007 GAS Tecnologia

Captulo 1- Introduo

43

Figura 1.8

Diversas facilidades foram colocadas no GAS para facilitar ao projetista formatar janelas de dados.
A barra de ferramentas de tela que aparece automaticamente ou pode ser invocada contm diversos
desses recursos:
boto magic button para a criao de tela padro. A partir de parmetros que o prprio
projetista tenha determinado atravs da tela de opes, este boto cria automaticamente uma
tela padro de digitao para a tabela bsica da janela de dados;

2007 GAS Tecnologia

44

GAS 2007 - Manual do Usurio

boto para permitir o estabelecimento automtico da posio ordinal dos campos na janela
(ordem na qual sero digitados);
boto para restaurar a tela anterior, caso o projetista tenha trabalhado um certo tempo em uma
tela que deseja descartar;
boto para seleo, de uma s vez, de todos os controles que estejam presentes na janela;

botes para a insero na janela de dados, de pictureboxes, texto 3D, frames, shapes, lines,
botes, labels, imagens, painis e tabs. Uma vez colocado um controle na janela, alm de
designar propriedades para o mesmo, o projetista poder escrever rotinas para controlar os
eventos sobre este controle;
podem ser inseridos na janela de dados controles para receber variveis de memria (no
existentes em bancos de dados);
boto para bloquear a movimentao dos controles posicionados na tela;
grade em milmetros, que pode ser configurada, para facilitar o posicionamento dos objetos na
tela;

2007 GAS Tecnologia

Captulo 1- Introduo

45

h um objeto clipboard persistente (que permanece mesmo depois que o GAS abandonado)
para permitir cpia e colagem de controles de container para container;
uma lista para a designao de propriedades para qualquer um dos objetos colocados na tela,
tais como:
1. expresso de validao e respectiva mensagem ao usurio, caso esta no seja atendida
quando da digitao do campo;
2. pr-validao ou condio para que o campo seja editado;
3. valor inicial ou default a ser assumido para o campo e oferecido como sugesto ao usurio final
da aplicao;
4. frmulas a serem mostradas na janela de digitao de dados. Por exemplo, ao digitar um
cdigo de fornecedor.
5. em uma Nota Fiscal, pode-se facilmente estabelecer que alguns dados da tabela de
fornecedores, como nome e endereo, sejam apresentados dentro de labels ou painis;
6. possibilidade de se programar eventos como FormLoad(), FormUnload(), FormActivate(),
KeyDown(), KeyPress(), etc.
Para utilizar esses recursos, o projetista poder utilizar uma interface semelhante do prprio
Visual Basic, como por exemplo, selecionar mltiplos controles e arrast-los de uma s vez ou
designar propriedades comuns a diversos controles ao mesmo tempo.
Outro recurso importante que o GAS oferece para a formatao de tela o reconhecimento
automtico de certos tipos de campos definidos. Por exemplo, se existe um campo do tipo optativo
definido na tabela bsica, ao ser colocado na tela aparecem automaticamente os botes de rdio
correspondentes s opes do campo, dentro de um frame com o ttulo deste campo. Um campo do
tipo imagem que colocado na tela, apresenta automaticamente um objeto para conter a figura e um
boto para permitir ao usurio final inserir figuras, quando operando a aplicao.

1.1.11 Processos Pr-definidos


Com o GAS possvel a criao de mdulos de processos pr-definidos na rvore hierrquica do
projeto. Este tipo de mdulo permite a definio de processamentos especiais, pr-definidos pelo
projetista, para executar certas tarefas como por exemplo, fechamento de ms, clculo de folha de
pagamento, baixas em estoque, histricos, etc.
Na definio desses mdulos, o projetista tem total flexibilidade para envolver vrios outros
bancos de dados, efetuar clculos, emitir relatrios ou etiquetas, apagar registros, etc., correndo uma
mesma tabela quantas vezes se fizer necessrio efetuando processamentos diferentes a cada
passagem.
Telas complementares podem ser criadas para serem apresentadas antes dos processos, de
modo a permitir o estabelecimento de filtros e condies de processos e lanamentos.

2007 GAS Tecnologia

46

GAS 2007 - Manual do Usurio

Esses processamentos podem ser definidos de modo entremeado com relatrios dando uma
enorme flexibilidade aplicao. Numa entrada de Notas Fiscais, por exemplo, o projetista poder
definir que, aps conferidos os itens digitados na nota sejam creditados s quantidades de produtos
em estoque, um relatrio seja disparado para imprimir os tens agregados, um outro processo poder
ser disparado para calcular um novo preo mdio dos produtos, outro relatrio pode ser disparado
para a emisso das etiquetas para afixao nos produtos,etc., tudo isso em uma s ao.

1.1.12 Definio de Relatrios e Etiquetas


Para a formatao de relatrios ou etiquetas nos projetos, o GAS apresenta ao projetista duas
opes, que podem ser escolhidas no momento da elaborao do relatrio ou etiqueta: o G-Reports
e o Crystal Reports.
O G-Reports o formatador de relatrios e etiquetas do GAS. definido como um mdulo
qualquer quando inserido na rvore do projeto.
Aps a entrada de algumas definies como tabelas, relacionamentos, nome do relatrio, etc., o
GAS disponibiliza uma interface com recursos semelhantes aos existentes para a formatao de
telas de entrada de dados. O G-Reports permite a formatao de relatrios bastante sofisticados,
com quebras, totalizaes, quantificaes, sumarizaes, subrelatrios, etc. Objetos como imagens
e fontes cdigos de barras podem ser utilizados naturalmente, sem qualquer esforo adicional,
bastando coloc-los na posio desejada e ajustar algumas propriedades. Se o projetista inserir este
tipo de relatrio no projeto, um programa fonte em Visual Basic ser criado e integrado aos fontes da
aplicao final, para a emisso do referido relatrio. Uma tela inicial para o recebimento de
parmetros e botes para o disparo do relatrio pode tambm ser facilmente elaborada pelo
projetista. Atravs dessa tela o projetista poder disponibilizar para o usurio final uma janela de
preview com diversas possibilidades de zoom, bem como navegao e impresso pgina a pgina
do relatrio, dentre outros recursos.
O projetista poder, opcionalmente, definir os relatrios G-Reports com base em expresso SQL
para definir a query a ser utilizada no relatrio. Esse recurso proporciona uma flexibilidade enorme na
elaborao dos relatrios, uma vez que o projetista poder utilizar todo o poder da linguagem SQL,
como funes agregadas, juno de tabelas, ordenao por campo de outra tabela, etc. O conjunto
de dados (recordset) a ser utilizado como base do relatrio poder ser totalmente flexibilizado.

2007 GAS Tecnologia

Captulo 1- Introduo

Figura 1.10

2007 GAS Tecnologia

47

48

GAS 2007 - Manual do Usurio

Figura 1.11

Figura 1.12

2007 GAS Tecnologia

Captulo 1- Introduo

49

Figura 1.13

Crystal Reports - se constitui numa interface prpria que permite ao usurio fazer as definies
que depois, so passadas automaticamente ao Crystal Reports. Importante dizer que toda a
definio do relatrio feita por meio da interface amigvel do GAS , atravs de simples cliques
sobre botes, tabs e listas. O utilitrio Crystal Reports ser invocado pelo GAS apenas para a
definio do layout e do posicionamento dos campos definidos para constar no relatrio ou etiqueta.
Dentre as definies solicitadas para este tipo de relatrio, destacam-se:
a) ttulo sob o qual aparecer no menu a ser acionado pelo usurio da aplicao final;
b) nome do arquivo onde sero armazenadas as definies do relatrio (.RPT) para serem
utilizadas pelo Crystal Reports;
c) expresso SQL que define a query a ser utilizada no relatrio;
d)agrupamentos (quebras) e ordenaes que porventura o projetista deseja colocar no relatrio;
e) seleo dos registros a serem impressos.
Telas demonstrando a criao,propriedades e apresentao dos relatrios e etiquetas:

2007 GAS Tecnologia

50

GAS 2007 - Manual do Usurio

2007 GAS Tecnologia

Captulo 1- Introduo

51

1.1.13 Definio de Consultas


O projetista poder inserir na rvore do projeto, mdulos de consultas prdefinidas para o usurio
da aplicao final gerada. Essas consultas so estabelecidas atravs de uma interface semelhante
utilizada para estabelecer as queries para os relatrios (quebras, seleo de registros, ordenaes,
etc.).

1.1.14 Tela de Variveis Complementares


Telas iniciais para receber variveis podem ser definidas pelo projetista utilizando o editor de
recursos do GAS, para serem apresentadas ao usurio da aplicao antes da emisso de relatrios,
processos pr-definidos e consultas.

2007 GAS Tecnologia

52

GAS 2007 - Manual do Usurio

As informaes recebidas nessas telas podem ser utilizadas para o estabelecimento de filtros e
condies diversas, proporcionando grande flexibilidade no controle da aplicao.

1.1.15 Cupom Fiscal - ECF/TEF


Basta ajustar algumas propriedades dos objetos colocados na janela de dados ou relatrio para
que as rotinas de emisso de CUPOM FISCAL e Transferncia Eletrnica de Fundos sejam geradas
nos programas fontes. H quatro maneiras diferentes para se fazer a emisso do cupom fiscal,
inclusive prevendo oramento prvio de venda. So oferecidos tambm mdulos para serem
inseridos na rvore do projeto, para fazer a manuteno da impressora fiscal, como por exemplo,
horrio de vero, sangria, suprimento, leitura-X, etc.
So quatro os modos de se efetuar tal compatibilizao, os quais sero descritos no Manual do
usurio, especificamente no Captulo 5 - Operando o GAS.

1.1.16 Programas Executveis


O GAS permite que outros programas executveis sejam disparados de dentro do menu da
aplicao final, bastando que o projetista os insira na rvore do projeto.

1.1.17 Rotinas avulsas


Mdulos de rotinas avulsas podem ser inseridos em qualquer ponto da rvore do projeto. Uma
rotina avulsa se constitui em um fragmento de cdigo na linguagem Visual Basic, escrito pelo prprio
projetista para ser executado quando o usurio final da aplicao selecionar a opo de menu
correspondente.

1.1.18 Formulrios existentes


O GAS permite que formulrios (forms) desenhados fora do seu ambiente, sejam integrados aos
projetos de sistemas. Isto pode ser bastante til para a reutilizao de interface e cdigos
provenientes de outros projetos.

1.1.19 Formulrios avulsos


O GAS permite a criao de forms avulsos, sem vnculos a bancos de dados, que o projetista
pode ativar e programar livremente.

1.1.20 Gabaritos ou templates


Com o GAS possvel a criao de gabaritos ou templates de aplicaes. Com isto, o projetista
poder criar as interfaces de aplicao que desejar e salv-las como gabaritos para utilizao
posterior. Sempre que um gabarito aberto, um projeto iniciado com todas as especificaes
existentes, a partir do qual o projetista poder continuar a definio de sua aplicao.

2007 GAS Tecnologia

Captulo 1- Introduo

53

1.1.21 Dirio de bordo


Dirio de Bordo um objeto existente na interface do GAS, na forma de livro, que o projetista
poder invocar sempre que desejar para fazer anotaes inerentes ao projeto, como por exemplo,
contatos, memria de clculos, lembretes, etc.

Figura 1.14

Tudo o que for anotado neste livro gravado automaticamente junto com as definies do projeto,
estando sempre disponveis a um clique do mouse, sempre que um projeto aberto.

1.1.22 Arquivos resource


Todas as mensagens utilizadas na aplicao gerada, bem como as figuras utilizadas, so
colocadas em um arquivo resource com o mesmo nome da aplicao. Uma das vantagens da
utilizao deste recurso que, para passar uma aplicao para o espanhol ou ingls, por exemplo,
basta simplesmente traduzir este arquivo e recompil-lo. Nada mais sendo necessrio fazer na
aplicao a nvel de programao ou mudana de aparncia!
O GAS utiliza um formato proprietrio de arquivo resource (.RES) que permite a vinculao de
quaisquer formatos de imagem e sem limite de tamanho. Alm disso, o executvel tende a diminuir
consideravelmente com o uso do arquivo resource, visto que as imagens no mais estaro
vinculadas diretamente no executvel. O arquivo resource deve acompanhar o aplicativo final gerado
para que este possa funcionar.

2007 GAS Tecnologia

54

GAS 2007 - Manual do Usurio

1.1.23 Segurana de acesso aplicao


As aplicaes geradas pelo GAS podero estar providas de um plano de senhas para cercear o
acesso de usurios aplicao. Basta que o projetista deixe inserido na rvore do projeto esta opo
(al colocada por default) para que o GAS coloque o cdigo necessrio nos programas fontes da
aplicao. Optou-se por utilizar um esquema proprietrio, com os mesmos recursos existentes no
MS-Jet Engine/SQL Server/Oracle, porm mais verstil, que permitisse a criao de aplicaes
sofisticadas contendo lanamentos e processamentos externos, sem que o esquema de integridade
do banco de dados interferisse diretamente sobre eles. O esquema utilizado permite, na aplicao
final, o cadastramento de grupos de trabalho e de usurios dentro desses grupos. A cada grupo
podem ser designadas, em funo de cada tabela da aplicao, permisses para digitao,
alterao, apagamento e visualizao de registros.

Pode-se tambm fazer um cerceamento em nvel de menus, de modo que possam ser sempre
ocultos a determinados grupos de usurios. Um usurio cadastrado dentro de um grupo "herda" as
permisses do seu grupo e, durante a operao da aplicao, os botes e opes de menu sero
habilitados ou desabilitados (ou mesmo ocultos), conforme o credenciamento designado ao usurio
que a esteja operando.

1.1.24 Programas fontes


Todos os programas fontes necessrios aplicao so gerados pelo GAS como se tivessem
sido programados manualmente pelo projetista. Nenhum cdigo colocado dentro de bibliotecas
(DLL) no sendo necessrios quaisquer outros tipos de controles, seno aqueles que acompanham
o Microsoft Visual Basic verso 5.0. Isto significa que 100% do cdigo fonte da aplicao gerado
pelo GAS. Opcionalmente, as linhas de cdigo so geradas com comentrios elucidativos, linha a
linha. Isto proporciona uma facilidade imensa na continuidade manual do trabalho, caso seja
desejada, bem como auxilia o aprendizado da linguagem para os profissionais que ainda no
possuem bastante experincia nesta linguagem. Acionada a opo de emisso de programas fontes,
um dilogo oferecido ao projetista para que ele possa selecionar os mdulos que deseja gerar.

2007 GAS Tecnologia

Captulo 1- Introduo

55

Acionada a opo de emisso de programas fontes, um dilogo oferecido ao projetista para que
ele possa selecionar os mdulos que deseja gerar.

1.1.25 Compilao de programas


Aps solicitar ao GAS a criao dos programas fontes da aplicao, o projetista poder acionar a
opo de gerao de executveis, simplesmente clicando em um boto existente na barra de
ferramentas.
O GAS ir invocar o programa apropriado para compilar o que lhe de direito: o Visual Basic para
compilar os programas fontes gerados, o utilitrio RC.EXE (Resource Compiler do Windows) para
compilar o arquivo "resource" da aplicao, o utilitrio HC.EXE (compilador de arquivos .RTF) para
compilar o arquivo de ajuda, etc.
Naturalmente, o projetista poder desativar as compilaes que no deseja executar,
desmarcando as suas opes correspondentes, antes de clicar sobre o boto de prosseguir.

2007 GAS Tecnologia

56

GAS 2007 - Manual do Usurio

1.1.26 Adaptador de arquivos


Sempre que a estrutura das tabelas de um banco definidas em um projeto for alterada, como por
exemplo, insero e retirada de campos, ou ainda, alterao de seus nomes e tamanhos, no
momento de gerar os programas fontes do projeto o GAS detecta essas alteraes e cria tambm
um utilitrio adaptador (para banco de dados MDB), que pode ser levado para o equipamento do
usurio final e ser utilizado para adaptar o banco de dados MDB existente. Caso o banco de dados
tenha sido definido como Firebird, MySQL, SQL Server ou Oracle (quando utilizado o GAS
Enterprise), ser gerado um script a ser executado no seu respectivo ambiente pelo administrador do
banco de dados, de forma que as modificaes possam vigorar. Por intermdio do processo
supracitado, sero reaproveitados totalmente os dados que porventura tenham sido digitados no
banco.

1.1.27 Documentao da aplicao gerada


O GAS gera, por opo de menu, a documentao tcnica e de usurio, bem como a ajuda
on-line para a aplicao final. A documentao gerada em arquivo de formato compatvel com o
MS-Word. A documentao tcnica se constitui no projeto fsico com todas as especificaes que o
analista definiu para o projeto. A de usurio est contida no manual de operao da aplicao final e
a ajuda on-line em um arquivo com os recursos de ajuda hiper-texto padro Windows.
Para gerar a documentao do projeto, o GAS utilizar como base os arquivos-gabaritos (
GABMAN.DOC , GABPRO.DOC, etc). A abertura desses arquivos assim como todo o processo de
alterao feita via OLE, utilizando-se automao direta com o MS-Word.

1.1.28 Equipamento mnimo necessrio


Para a execuo do GAS necessrio o ambiente Windows 95, 98 ou NT 4.x, equipamento com
32 MB de RAM (recomendvel 256MB) e cerca de 30 MB de espao livre no disco rgido. Para a
compilao dos programas fontes gerados pelo GAS, o usurio dever ter instalado o MS-Visual
Basic 6 - Edio Professional, pelo menos. As aplicaes geradas podem ser executadas no
Windows 95, 98, 2000 e NT 4.x, em equipamento com 32 MB de memria RAM e cerca de 6 MB
livre no HD.

2007 GAS Tecnologia

Captulo 1- Introduo

57

O banco de dados manipulado pela aplicao gerada (JET Engine, SQL Server ou Oracle) dever
estar instalado no ambiente do usurio final para que as aplicaes possam funcionar corretamente.

1.2

Caractersticas das aplicaes geradas pelo GAS


A seguir so descritos alguns aspectos contidos nas aplicaes gerados pela ferramenta GAS:
Design avanado com uma interface moderna de mltiplos documentos (MDI);
Operao atravs de uma nica barra de ferramentas, evitando a repetio de botes para as
diversas janelas da aplicao;
Barra de ferramenta com botes estilo Internet. Este tipo de boto se levanta e se ilumina
quando o mouse passa sobre o mesmo, dando uma aparncia bem moderna s aplicaes
geradas. Neste tipo de boto podem ser utilizadas alm das imagens para os estados normal e
desabilitado, tambm uma imagem para quando o mouse estiver sobre o boto e uma outra
para quando o boto estiver pressionado.
Ajuda ativa (hints) para os controles da aplicao, configurada pelo projetista;
Pesquisa direta por qualquer um dos ndices estabelecidos para a tabela;
Estabelecimento de critrios de filtragem, utilizando expresses SQL montadas pelo prprio
usurio final, atravs de interface bastante amigvel;
Possibilidade de navegar na tabela na ordem de qualquer de seus ndices ou ainda somente
nos registros que atendam a um determinado critrio de filtragem;
Visualizao de tabelas tela a tela ou em grade, mostrando diversos registros de uma s vez;
Possibilidade de criao de consultas definidas pelo prprio usurio, paraserem apresentadas
em grades. Tais consultas so montadas em inteface bastante amigvel, aparecendo somente
para o prprio usurio que as criou, a menos que, no momento da criao, o usurio determine
que fique disponvel para todos;
Totalizao de colunas (campos) selecionadas, quando em grade;
Controle de edio de campos - o GAS permite a edio e exibio mais apurada das
informaes existentes nos campos, atravs de um nico objeto denominado gMask. Com ele,
pode-se criar mscaras especiais como por exemplo:

2007 GAS Tecnologia

58

GAS 2007 - Manual do Usurio

1. Nmeros com separadores de milhares e decimais. Neste tipo de dado, durante a digitao, os
nmeros vo sendo apresentados da direita para a esquerda, sendo ainda possvel utilizar-se
de um extensor (boto opcionalmente colocado junto ao campo) que apresenta uma
calculadora completa logo abaixo do campo na qual podem ser feitas operaes com captura
do resultado;
2. Datas em diversos formatos, inclusive com o nome do ms por extenso. Neste tipo de campo,
tambm possvel a utilizao do extensor para apresentar um calendrio de onde podem ser
consultadas e capturadas as datas desejadas;
3. Campos do tipo caracter com formato especial, como CPF, CGC, etc.
4. Lista externa (semelhante a uma DbComboBox) com a possibilidade de se escolher vrios
campos (colunas) para serem visualizados segundo uma ordem preestabelecida. Esses
campos podero ser provenientes de qualquer um dos bancos de dados com que a aplicao
esteja trabalhando, independentemente do nmero de registros existentes nas tabelas.
5. Campos do tipo rotativo (spinner), optativos, lgicos, memo, etc.
Apresentao de vrios tipos de grficos envolvendo campos (colunas) das tabelas
apresentadas nas grades;
Impresso de janelas de dados, consultas e grficos que estiverem sendo apresentados;

2007 GAS Tecnologia

Captulo 1- Introduo

59

Campo especial para multimdia - este tipo de campo permite a carga e gravao no banco de
dados, de qualquer tipo de arquivo, como por exemplo, DOC, AVI, ZIP, MID, EXE, MP3, etc.,
alm de qualquer tipo de imagem. Se o micro do usurio final possuir um scanner conectado,
este poder digitalizar imagens diretamente para o campo! Se for necessria a edio do
contedo deste campo, a aplicao acionar automaticamente o aplicativo Windows que estiver
associado ao tipo de arquivo, ou seja, se voc armazenou um DOC em um campo, a aplicao
invocar o MS-Word para edit-lo; se este campo contm um arquivo JPG gravado, ser
convocado o editor de imagens preferido do usurio. A aplicao gerencia automaticamente se
o arquivo foi modificado e, se for o caso, disparar o evento datachanged da aplicao,
habilitando automaticamente os botes de gravao e cancelamento, para que o usurio possa
regravar o arquivo modificado no campo do banco de dados. Aplicaes manipulando imagens
BMP criadas com a verso anterior do GAS (GAS- 98) podero ser convertidas com o utilitrio
conversor disponibilizado pela GAS Informtica. Este conversor transformar rapidamente
campos imagem BMP gravados no banco em campos multimidia contendo imagens JPG, com
a compresso que voc selecionar.

2007 GAS Tecnologia

60

GAS 2007 - Manual do Usurio

Assim fazendo, o tamanho do banco de dados ser drasticamente reduzido. S para exemplificar,
tipicamente, um BD com 40 MB poder ficar, aps convertido, com menos de 2MB!
Digitao em grid - o GAS possui um objeto especial para permitir a digitao em grid. Todos
os tipos de campos podem ser digitados dentro do prprio grid, inclusive campos do tipo listas
externas e internas, rotativos, lgicos, memo, etc. Todos os recursos de mscaras, calculadora,
calendrio, etc. existentes na digitao em telas so disponibilizados para os campos digitados
no grid. A cada nova linha includa ou alterada no grid, todos os processos e lanamentos
definidos so disparados automaticamente e todos os forms visveis no momento so
imediatamente atualizados para espelhar os novos valores que porventura tenham sido
alterados.
Tratamento da tecla ENTER e das setas para funcionar como se fosse a tecla TAB e
SHIFT-TAB para avanar e retroceder campos na tela;

2007 GAS Tecnologia

Captulo 1- Introduo

61

Correo ortogrfica via automao OLE com o MS-Word para campos do tipo texto e memo
na aplicao final.
O projetista poder colocar boto na barra de ferramentas da aplicao (ou deixar opo de
men) para fazer esse trabalho automaticamente. No entanto, para utilizar este recurso, o usurio
final dever ter o MS-Word instalado em seu equipamento;
Rotinas de reparao e compactao de banco de dados;
Os registros visualizados nas janelas de dados podem obedecer a um filtro inicial estabelecido
por campos informados em uma outra janela, antes da janela de dados ser mostrada. Por
exemplo, uma tela recebe o cdigo do fornecedor e este campo far parte de uma expresso
para filtrar registros que aparecero na prxima janela.
Informaes em tabelas relacionadas 1-N com diversos nveis (pai, filho,neto...), podem ser
digitadas em grids colocados em uma mesma janela;
Recursos de previso (preview) de relatrios com zoom em qualquer escala. O usurio poder
imprimir apenas uma pgina, se necessrio. Poder tambm facilmente navegar em todas as
pginas do relatrio.

2007 GAS Tecnologia

62

1.3

GAS 2007 - Manual do Usurio

O que h de novo no GAS 2007

O contedo abaixo, uma viso geral das mudanas chaves, das melhorias e de caractersticas
novas na verso 2007 do GAS.
Alteraes gerais e implementaes:

1.3.1

Solues multi-projetos
A estrutura principal para definio de projetos do GAS foi alterada visando possibilitar a definio
de vrios projetos de forma agrupada dentro de uma nica soluo (.GAS). Essa caracterstica pode
ser comparada a solues (nome dado em algumas IDEs como, por exemplo, o Visual Studio). O
projetista definir a estrutura dos bancos de dados em um local centralizado e, depois de definidos
os bancos, poder determinar quais bancos sero utilizados dentro de cada projeto.

2007 GAS Tecnologia

Captulo 1- Introduo

1.3.2

63

Executveis independentes
Com esta funcionalidade, cada modulo (projeto) ter a sua gerao dos fontes de forma
independentes, ou seja, cada um ter o seu prprio executvel, entretanto, podendo estar
interligados ou no.

1.3.3

Sistemas multi-empresa
Na definio da estrutura dos bancos de dados o projetista poder optar por realizar o controle
multi empresa para quaisquer bancos de dados. Uma vez definido que o banco de dados ter
controle multi- empresa, ser disponibilizada a opo para determinar quais tabelas estaro sob esse
controle. Pode-se, portanto, trabalhar com apenas algumas das tabelas de um banco com o controle
interno para multi-empresa. O controle multi empresa disponibilizado no GAS baseado em uma
tabela do banco que ser escolhida como sendo a tabela de empresas que tambm conter o campo
"Cod~Emp". Esse mesmo campo ser criado de forma automtica para todas as tabelas que tiverem
o controle multi empresa definido. Assim que o usurio tentar acessar o sistema ser solicitada a
empresa que ir utilizar para trabalhar, e todos os registros inclusos ou lanados recebero de forma
automtica o campo Cod~Emp de acordo com essa empresa selecionada;

2007 GAS Tecnologia

64

1.3.4

GAS 2007 - Manual do Usurio

Gerenciamento de projetos
Alm de gerenciar os projetos, o mdulo de soluo pode ser usado para gerar fontes de um
aplicativo, que controle os outros executveis e as rotinas globais a todos os outros projetos.

1.3.5

Controle de plano de senha pela soluo


Agora possivel que o projeto da soluo principal controle as senhas para todos os projetos.
Tambm foram efetuadas mudana na encriptao, onde o usurio pode escolher agora a chave que

2007 GAS Tecnologia

Captulo 1- Introduo

65

ser utilizada para encriptao do plano de senhas. Sendo assim, at mesmo solues diferentes
podero compartilhar mdulos de senhas de um mesmo banco de dados.

1.3.6

Acesso nativo a outros bancos de dados


Todos os cdigos gerados para acesso aos bancos de dados (consulta, incluso, alterao e dele
o de registros) foram reescritos.
Agora, oferecido ao projetista, at 5 opes de acesso a banco de dados nativo. Alm disto,
para o access oferecido o acesso via componentes DAO e ADO.

2007 GAS Tecnologia

66

1.3.6.1

GAS 2007 - Manual do Usurio

Access
Nas verses anteriores, o GAS j acessava nativamente o banco de dados Access (jet 3.6),
utilizando a forma de conexo pelos componentes DAO.
Agora, para o banco de dados ACCESS oferecido tambm a conexo via componentes ADO.

1.3.6.2

SQL Server
O Acesso ao banco de dados SQL Server por aplicaes geradas, foram mantidos e melhorados
nesta verso.

O cdigo gerado compativel com SQL Server 2000/2005.

Alm disto, o cdigo gerado perfeitamente compatvel com as verses gratuitas do SQL Server,
conhecida como: SQL Server 2005 express Edition, e pode ser baixada diretamente no site do
fabricante.
1.3.6.3

Oracle
O Acesso ao banco de dados Oracle por aplicaes geradas, foram mantidos e melhorados nesta
verso.

O cdigo gerado compatvel com Oracle 8i/10g.

Alm disto, o cdigo gerado perfeitamente compatvel com as verses gratuitas do Oracle,
sendo ela: Oracle 10g Express Edition, e pode ser baixada diretamente no site do fabricante.
1.3.6.4

Firebird
Implementado nessa verso o acesso nativo ao banco de dados Firebird. Esta implementao foi
realizada tomando-se como base a verso 2.0 (Release Candidate 2) devido a vrias caractersticas
presentes nessa verso que no existem na verso 1.5. Para maiores detalhes sobre o projeto
Firebird 2.0, acesse o site do desenvolvedor (http://www.firebirdsql.com). O driver utilizado para conex
o o Firebird ODBC-JDBC v. 2.0.0.138. Para maiores detalhes sobre o projeto Firebird
ODBC-JDBC acesse ao site do desenvolvedor (http://www.praktik.km.ua/).

2007 GAS Tecnologia

Captulo 1- Introduo

1.3.6.5

67

My Sql
Foi tambm implementado nessa verso o acesso nativo ao banco de dados MySQL. A
implementao foi realizada tomando-se como base a verso 5.0. O driver utilizado para conexo o
MyOleDb v.3.9.

1.3.7

Escolha do banco de dados pelo usurio final


O Projetista poder escolher qual ou quais bancos de dados sua aplicao ir funcionar. Com
isto, oferecida a opo de escolha do banco no momento da instalao, e no mais na gerao do
projeto. O projetista desenvolver o projeto, e definir qual banco utilizar no momento de sua
instalao. So cinco opes atualmente disponveis, e para cada uma opo ser solicitada
informaes pertinentes:

Caso escolha o banco de dados: ACCESS - DAO:

Caso escolha o banco de dados: ACCESS - ADO:

2007 GAS Tecnologia

68

GAS 2007 - Manual do Usurio

Caso escolha o banco de dados: SQL Server:

2007 GAS Tecnologia

Captulo 1- Introduo

Caso escolha o banco de dados: Oracle:

2007 GAS Tecnologia

69

70

GAS 2007 - Manual do Usurio

Caso escolha o banco de dados: Firebird:

2007 GAS Tecnologia

Captulo 1- Introduo

Caso escolha o banco de dados: MySql:

2007 GAS Tecnologia

71

72

1.3.8

GAS 2007 - Manual do Usurio

Acesso a dados via classes


O aplicativo agora utilizar vrias classes para a conexo com a base e manuteno dos dados.

2007 GAS Tecnologia

Captulo 1- Introduo

73

Sendo assim pode-se construir, por exemplo, um nico projeto, gerar um nico cdigo fonte e
uma nica instalao que possibilite o usurio utilizar o aplicativo gerado com banco de dados MDB
ou SQL Server. Quando a aplicao for executada pela primeira vez, ser solicitado o tipo de banco
de dados a ser utilizado. Com as novas classes para acesso a dados, a padronizao do cdigo
possibilita que at mesmo cdigos escritos manualmente pelo programador possam ser executados
em qualquer um dos tipos de banco de dados selecionados. Assim sendo, no existe mais a
preocupao de escrever um cdigo especfico para MDB, SQL Server, Oracle, etc. As classes se
encarregam de fazer as devidas converses para o banco especificado. Ao acessar a aplicao, ser
solicitado o preenchimento de informaes sobre qual banco deseja utilizar.

1.3.9

Definio de banco de dados


Na definio dos bancos de dados, na estrutura do projeto, pode-se agora especificar qual ou
quais os tipos que cada um dos bancos de dados poder assumir.

3 - Projetos: Permite ao projetista definir quais projetos da soluo utilizaram o banco de dados
selecionado. possivel definir para cada banco, para quais projetos eles estaro disponveis.

2007 GAS Tecnologia

74

GAS 2007 - Manual do Usurio

1.3.10 Tipo de integridade


Agora, para todos os bancos que suportarem tal recurso, possivel definir o tipo de integridade,
para que seja construida utilizando trigger ou constraint.

1.3.11 Novas propriedades para bancos


Criadas novas propriedades na estrutura de criao de tabelas. As novas opes so:

1 - Multi Empresa: Permite ao projetista definir se este banco de dados, ter o controle Multi
empresa.

2 - Tipos de DB: Permite ao projetista definir quais os tipos de banco de dados, o banco de
dados escolhido ir trabalhar. Em projetos com mais de um banco de dados, possivel definir os
tipos que estaram disponveis no aplicativo gerado, para cada um dos bancos.

2007 GAS Tecnologia

Captulo 1- Introduo

75

1.3.12 Novas propriedades para tabelas


Criadas novas propriedades na estrutura de criao de tabelas. As novas opes so:

1 - Permitir incluso em consulta: Por opo do projetista, caso esta opo esteja marcada,
quando for construido uma consulta, ser possivel efetuar a incluso de um novo registro.

2 - Permitir alterao em consultas: Por opo do projetista, caso esta opo esteja marcada,
quando for construido uma consulta, ser possivel efetuar a alterao de um registro existente.

3 - Permitir Excluso em consultas: Por opo do projetista, caso esta opo esteja marcada,
quando for construido uma consulta, ser possivel efetuar a excluso de um registro existente.

4 - Tipo empresa: Com esta opo marcada, a tabela ser tratada com uma tabela de controle de
empresas. Esta tabela ser utilizada para cadastrar os registros que o usurio quiser utilizar como
registro das empresas na entrada do programa.

5 - Multi empresa: Com esta opo marcada, esta tabela ter o controle de empresa em cada
registro cadastrado.

6 - Invisivel: Com esta opo marcada, a tabela no ser apresentada ao usurio final.

2007 GAS Tecnologia

76

GAS 2007 - Manual do Usurio

1.3.13 Novas propriedades para campos


Criadas novas propriedades na estrutura de criao dos campos. As novas propriedades so:
1 - Descrio para empresa: Define se o campo ser usado para armazenar o nome da empresa.
Esta opo estar disponvel se o banco estiver marcado a opo "Multi empresa".

2 - Permitir Nulo: Define se o campo permitir que sejam gravados valores nulos. Muito utilizado
em integridades.

3 - Valor Default: Permite criar um valor default (padro) para o campo. O valor default registrado
no banco de dados, e ser gravado quando nenhum valor for enviado ao campo.

2007 GAS Tecnologia

Captulo 1- Introduo

77

1.3.14 Novas propriedades para ndices


Novas propriedades na estrutura de criao de tabelas. As novas opes so:

1 - Invisvel: Possibilidade de definir, em tempo de projeto, um ndice, entretanto, deixa-lo como


invisivel, para que o usurio no o veja em na opo de procura.

2 - Ordem de ndices: Possibilidade de definir, em tempo de projeto, a ordem que os ndices iro
aparecer na janela de procura e na lista de ndices da aplicao gerada.

1.3.15 Novo controle GRID


Foi desenvolvido um controle GRID totalmente novo para utilizao nas janelas de dados e
consultas da aplicao gerada. O novo controle, que tem como base a ListView (no mais o dbgrid),
est muito mais rpido, verstil e sofisticado. Utiliza tcnicas de subclasse e controle "owner draw"
com aquisio de dados em modo virtual. O conjunto dessas tcnicas possibilita uma extrema
economia de memria e uma tima performance. Apenas os dados que esto sendo mostrados no

2007 GAS Tecnologia

78

GAS 2007 - Manual do Usurio

grid esto carregados efetivamente na memria do controle. Se o driver utilizado para conexo com o
banco de dados permitir o grid tambm poder utilizar o preenchimento gradual.

Dessa maneira, enquanto os registros estiverem sendo retornados da base de dados, o grid j
poder mostrar a parte dos registros que j foram adquiridos. O novo controle permitir definio de
cor para fundo e texto individualmente para cada clula. Assim, o projetista tem a possibilidade de
determinar, por exemplo, condies para determinao da cor de fundo ou de texto de alguma
informao. Tambm estar disponvel nessa verso do controle recursos especficos para colunas
numricas: o usurio poder ver na barra de status do grid informaes de total, mximo, mnimo e
mdia das informaes. Agora tambm possvel selecionar vrias linhas no grid para para operar
com eles, por exemplo, para excluir, grafar, etc.

O controle permitir que o usurio modifique a ordem de apresentao das colunas, bem como
determinar a ordenao de registros (crescente/decrescente) clicando sobre o ttulo de uma ou de v
rias colunas. Tambm foi embutido no controle uma barra de filtro (antes era externa), que poder ser
habilitada ou no pelo usurio em tempo de execuo. Ser possvel ainda definir a quantidade de
registros que sero retornados pela query (TOP). Todos os recursos comentados aqui estaro dispon
veis tanto em grids de consultas como em grids filhos (em janelas de dados);

2007 GAS Tecnologia

Captulo 1- Introduo

79

Algumas caratersticas novas:


1 - Linhas zebradas com configurao das cores;
2 - A barra de filtro possibilitando a filtragem de vrias colunas;
3 - Opo de Soma, Mdia, Mnimo e Mximo para as colunas numricas com habilitao /
desabilitao;
4 - Possibilidade de deletar vrias linhas intercaladas simultaneamente;
5 - Arrastar uma coluna para outra posio;
6 - Apagar uma coluna (basta marc-la e teclar DELETE);
7 - Recuperar a coluna deletada (basta ir na linha separadora de colunas que onde tiver coluna
oculta o cursor do mouse mudar, indicando que pode-se expandir uma coluna oculta naquela posi
o);
8 - Uso de CTRL-Home, CTRL End, CTRL PgUp e CTRL PgDown para navegao no GRID.
9 - Adicionado a propriedade: "Ao no duplo click". Agora possivel definir uma funo a ser
executada no duplo click do grid.

1.3.16 Transformao de controles OCXs em controles internos


Todos os controles ActiveX OCX que eram utilizados pela aplicao (GMasked, GDbGrid,
GCpMM, GBotao e GPainel) foram acoplados ao aplicativo gerado, dessa maneira no h mais
incompatibilidade entre aplicativos gerados com verses diferentes do GAS, pois as dependncias
da aplicao sero praticamente apenas as dependncias determinadas pelo Visual Basic, com
algumas excees. O projetista ter agora acesso ao cdigo fonte de todos esses controles e,
portanto, a possibilidade de realizar qualquer alterao visando a customizao dos mesmos.

2007 GAS Tecnologia

80

GAS 2007 - Manual do Usurio

1.3.17 Usar o mouse para selecionar itens


Agora, pode-se usar o mouse para selecionar itens, seja do relatorio, ou de uma tela. Se o item de
uma tela estiver dentro de um Frame ou outro item, utilize a tecla CTRL mais a seleo do mouse
para selecionar o que est dentro apenas.

1.3.18 Redefinio de combo box


Todos os controles do tipo combobox da aplicao gerada agora estaro tambm baseados no
novo grid, portanto algumas das caractersticas citadas anteriormente sero tambm expandidas
para as comboboxes. A definio do controle de combobox tambm foi alterada, no sendo mais
necessrio fazer a abertura dos recordsets relacionados s combo-box para a visualizao de
registros. Essa mudana afeta significativamente a performance de janelas de dados que contiverem
esses controles, o processamento do relacionamento do registro visualizado com os dados a serem
mostrados na combobox foi agora passado para o lado do servidor de banco de dados;

1.3.19 Formulrios sem vnculos de dados


Todas as janelas de dados definidas tero a opo de trabalho sem vnculo de dados. Quando
definida essa opo, o formulrio ser aberto sem mostrar nenhum dado da base, sendo sua
abertura, portanto, extremamente rpida. Essa opo extremamente til para formulrios cuja

2007 GAS Tecnologia

Captulo 1- Introduo

81

principal funo a incluso de registros (em tabelas com um grande volume de informaes) ou
para formulrios em que sero realizados, obrigatoriamente, filtros para a aquisio de dados;

Um excelente recurso a possibilidade de abrir um form desvinculado dos dados, dando mais
velocidade, ideal para bancos em servidores na internet:

1.3.20 Formulrios com alterao bloqueada por default


O projetista poder agora determinar que um formulrio no permita a alterao de seus registros
at que o usurio explicitamente informe que deseja essa funo, tendo, para isso, que pressionar
um boto de liberao na barra de ferramentas. Essa funcionalidade muito til para usurios no
muito atentos que, s vezes, alteram um registro de determinada tabela com o intuito de incluir um
novo registro;

1.3.21 Validao imediata


A validao definida para cada campo de um formulrio poder agora ser do tipo imediata, dessa
maneira assim que o usurio abandonar o campo em questo a validao ser executada, no
necessitando mais que todos os campos sejam digitados e depois o registro seja gravado;

2007 GAS Tecnologia

82

GAS 2007 - Manual do Usurio

1.3.22 Vinculao de label a campos


Na definio de tela de uma janela de dados o projetista poder vincular os labels que indicam o
contedo de determinados campos aos nomes de campos definidos na estrutura da base de dados,
quando um label for vinculado a um nome de campo, sempre que o Ttulo amigvel (definido na
estrutura) for mudado, automaticamente todos os labels que estiverem vinculados quele campo
tambm tero seu caption alterado. Esse recurso centralizar a manuteno, na definio, da prpria
estrutura do banco, facilitando ainda mais o desenvolvimento;

1.3.23 Alterar se existir dados


O projetista poder definir, tambm na formatao de uma janela de dados, quais os campos que
sero utilizados como chave para incluso dos registros, definindo que, quando o usurio efetuar
uma incluso de registros e o valor de determinado campo coincidir com um valor j registrado para
aquele campo em outro registro nessa mesma tabela, o aplicativo ir questionar o usurio se ele
deseja mesmo alterar o registro j existente. Essa caracterstica visa uma melhor integridade dos
dados evitando, com isso, duplicao desnecessria de informao;

1.3.24 Avisar se registro existir


Na aplicao final aparecer o seguinte aviso quando o usurio tentar incluir um registro j
existente:

2007 GAS Tecnologia

Captulo 1- Introduo

83

1.3.25 Ao ltimo campo


Ainda na definio de janelas de dados, podemos agora definir qual a ao que o aplicativo
executar automaticamente aps o preenchimento do ltimo campo presente na janela de dados
(quando fizer uma incluso ou alterao). Dentre as aes disponveis podemos optar por "Salvar e
incluir", o que bastante til para formulrios em que a incluso de registro ocorrer de forma cont
nua e seqencial. O usurio ter uma agilidade muito maior para essa ao;

1.3.26 Forma de abertura


Poder ser determinada uma forma especial para abertura de qualquer uma das janelas de
dados, podendo o projetista determinar que, quando da abertura do formulrio, o cursor seja
automaticamente posicionado no primeiro registro (default) ou no ltimo registro. Pode ainda forar
que o formulrio seja aberto em modo de incluso, agilizando, tambm, a operao em vrias situa
es;

2007 GAS Tecnologia

84

GAS 2007 - Manual do Usurio

1.3.27 Seleo de controles com "retngulo de seleo"


Para facilitar o design de formulrios e relatrios o GAS-2007 permitir agora que o projetista
possa fazer seleo de mltiplos controles utilizando caixa se seleo definida com o mouse
(clicando no fundo e arrastando), como acontece na interface de formatao do Visual Studio bem
como de outras ferramentas;

1.3.28 Cor de fundo para textbox


Possibilidade de definio de condies para determinar a cor de fundo dos controles de texto.
Agora podemos ressaltar determinado campo com uma cor especial, quando alguma situao for
atendida;

1.3.29 Histrico de gerao de fontes


O projetista ter agora como verificar o histrico de todas as geraes que foram feitas para um
projeto, contendo a informao do nmero da verso, data e hora de gerao, verso e release do
GAS utilizada para a gerao, alm de um comentrio descrito pelo prprio projetista. no momento
da gerao daquela verso;

2007 GAS Tecnologia

Captulo 1- Introduo

85

Histrico para gerao de fontes em que se guardado log de data/hora, verso, observaes do
programador e verso/release do GAS,utilizada para gerao

1.3.30 Teclas de atalho


Possibilidade para definio de teclas de atalho para acesso aos mdulos definidos na aplicao;

2007 GAS Tecnologia

86

GAS 2007 - Manual do Usurio

1.3.31 Barra de status no MDI


Agora possvel definir um novo container no MDI da aplicao gerada do tipo status bar, em
que podero ser colocadas informaes sobre o usurio logado no sistema, data/hora, botes, etc;

2007 GAS Tecnologia

Captulo 1- Introduo

87

1.3.32 Menus POP-UP em botes


Tambm possvel definir menus popup que sero disparados ao clique de botes de comando.
Para cada menu popup, o projetista poder configurar quantos itens sejam necessrios, com aes
personalizadas;

2007 GAS Tecnologia

88

GAS 2007 - Manual do Usurio

1.3.33 Mltiplos filtros


Para todos os filtros definidos, janelas de dados, grids ou relatrios, o projetista pode definir vrios
filtros distintos, de um mesmo mdulo, segundo condies definidas;

2007 GAS Tecnologia

Captulo 1- Introduo

89

1.3.34 Mltiplas ordenaes


Para todas as ordenaes definidas, janelas de dados, grids ou relatrios, o projetista pode definir
vrias ordenaes distintas, de um mesmo mdulo, segundo condies definidas. Segue exemplo
de uma tela possivel, usando filtro e ordem Multiplas:

2007 GAS Tecnologia

90

GAS 2007 - Manual do Usurio

1.3.35 Suporte a impressora Daruma


Mantendo-se compatibilidade com todo o cdigo j existente de impressora fiscal. Possibilidade
tambm de utilizao dessa impressora com mdulos TEF. As rotinas de emisso fiscal tambm
foram remodeladas e tero nomes nicos. Sendo assim, um mesmo cdigo escrito manualmente
pelo programador funcionar para impressoras Bematech, Daruma ou Yanco.

1.3.36 Sempre preservar um item de gerao


Possibilidade de proteo de determinados mdulos da rvore para no serem gerados, mesmo
que o projetista clique o boto "Gerar todos" no mdulo de gerao. Recurso para evitar a gerao
indevida de determinados mdulos, principalmente em projetos muito grandes;

2007 GAS Tecnologia

Captulo 1- Introduo

91

1.3.37 Remodelado mdulo de gerao de fontes


Na interface para escolha dos mdulos definidos para gerao, o projetista agora ter um preview
idntico rvore do projeto, facilitando assim a escolha ou no de mdulos para gerao.

1.3.38 Ordem inicial


Possibilidade de definir qual a ordem inicial ser usada na abertura de uma janela de dados.

2007 GAS Tecnologia

92

GAS 2007 - Manual do Usurio

1.3.39 Pano de fundo


Possibilidade de definir, em tempo de execuo da aplicao, o pano de fundo que ser utilizado.

1.3.40 Marca d'gua


Possibilidade de definir uma marca d'gua na aplicao final, em tempo de execuo. Na figura
abaixo mostrado como se coloca no projeto.

2007 GAS Tecnologia

Captulo 1- Introduo

93

1.3.41 Quebra na impresso de consultas


Possibilidade de definir quebra ao imprimir qualquer consulta criada pelo usurio na aplicao
final, bem como definir totalizadores para cada nvel de quebra.

2007 GAS Tecnologia

94

GAS 2007 - Manual do Usurio

1.3.42 Mdulos extras com caminho completo


Agora, na incluso de mdulos extras, o GAS mantm o caminho original ou possibilita copiar o
arquivo para a pasta do projeto. Desta forma, o mesmo arquivo pode ser utilizado em vrios projetos
sem a necessidade de duplicao.

2007 GAS Tecnologia

Captulo 1- Introduo

95

1.3.43 Autenticao na emisso de email


Na emisso de email, agora existe a possibilidade de incluir o usurio e senha para autenticao
no servidor SMTP.

1.3.44 Gravar filtros e ordem


Agora o usurio final poder gravar filtros e ordenaes extras para utiliz-los quando necessrio
em suas janelas de dados. possivel criar em uma janela de dados por exemplo, uma lista de filtro
em tempo de execuo, que o usurio poder selecionar, e escolher de uma lista previamente
montada, ou ento criar mais um filtro ou ordem desejada.

1.3.45 Incluso de referncias no projeto


Agora possvel adicionar referencias ao projeto. Com isto, o projetista pode adicionar qualquer
controle externo a seu projeto, seja ele criado pela GAS, por ele mesmo ou por terceiros. Isto abre
um grande leque de possibilidades para uso e incluso de itens anteriormente no suportados pelo
GAS: HookMenus, componentes de msicas, componentes de relatrios, grids, trees, progressbar...
tudo isto que usa referncia, agora simples para adicionar a seu projeto.

2007 GAS Tecnologia

96

GAS 2007 - Manual do Usurio

1.3.46 Propriedade lista (Pesquisa)


Adicionada a propriedade de pesquisa, onde o projetista pode agora adicionar uma procura
vinculada a um campo. Esta procura tem a flexibilidade de um grid, e pode ser exibida em dois
modos:

1 - em modo combobox:, ser aberto junto ao campo, como um combobox


mesmo, mas se ao texto, apenas capturando. Isto pode ser utilizado em um cadastro
de bairro por exemplo, onde mostra os bairros existentes de acordo com os
clientes(Select bairros from clientes group by bairros), mas, se for um novo bairro, o
usurio poder digitar a vontade.

2 - em modo Janela: Ser apresentado um formulrio, como o form de pesquisa,


ideal para muitos registros (ex: tabela de preos).

1.3.47 Controle avaando para o servio de backup


a execuo do servio pode ser feita diretamente da aplicao, com isto, o projetista oferece maior
controle ao usurio de seus sistemas, visto que possvel ativar e desativar o servio de backup,
bem como visualizar se o mesmo encontra-se ativo.

2007 GAS Tecnologia

Captulo 1- Introduo

2007 GAS Tecnologia

97

Captulo

II
Captulo 2 - Instalao e requisitos

Captulo 2 - Instalao e requisitos

Captulo 2 - Instalao e requisitos

2.1

Instalao do GAS no equipamento

99

O GAS pode ser adquirido opcionalmente em CD-ROM ou mesmo atravs de download


diretamente da pgina da Gas Tecnologia na Internet: http://www.suportegas.com.br, ou solicite pelo
email suporte@gastecnologia.com.br.
A instalao do GAS no equipamento compreende duas fases distintas. A primeira delas, a
instalao propriamente dita, que segue os procedimentos padro de instalao de aplicaes no
ambiente Windows, com a cpia de arquivos para o disco rgido do microcomputador e criao de
uma pasta e atalhos para ativao do programa. A segunda, implica na habilitao da cpia do GAS,
para que possa funcionar corretamente.

2.2

Procedimentos de instalao
Para instalar o GAS no equipamento, deve-se proceder conforme se segue:
Insira o CD no drive CD-ROM;
Selecione, a partir do menu Iniciar, escolha a opo Executar;
Clique sobre o boto Procurar e selecionar o programa SETUP.EXE no CD;
Siga as instrues do programa utilitrio de instalao.
Aps a execuo desses passos, o utilitrio instalador dever ter criado em seu computador uma
pasta contendo alguns cones, representando atalhos para ativao de programas, bem como,
opcionalmente, ter aberto o arquivo LEIAME.TXT e criado um atalho para o GAS na rea de
trabalho.

2.3

Habilitao e registro da cpia


Caso no tenha selecionada a habilitao via plugue, na primeira vez que for utilizar o GAS,
necessrio um contato com a Gas Tecnologia para o registro e a obteno da contra-senha
necessria habilitao da cpia que acaba de ser instalada no equipamento. Esta operao
necessria somente na primeira vez em que o GAS for instalado no equipamento. Opcionalmente,
conforme citado anteriormente, o GAS poder seguir acompanhado de um plugue, a ser conectado
na porta paralela (impressora) ou em uma porta USB do microcomputador, habilitando o produto sem
necessitar de contacto telefnico e proporcionando, assim, a utilizao / instalao do GAS.

2.4

Habilitar a execuo
Na sua primeira execuo, aps ter sido instalado no equipamento, se adquirido sem o plugue, o
GAS apresentar uma tela requisitando dados de cadastro.

2007 GAS Tecnologia

100

GAS 2007 - Manual do Usurio

Neste momento, voc dever entrar em contato com a Gas Tecnologia para obter a sua contra
senha de instalao. Uma vez devidamente registrada, sua cpia estar habilitada para uso em seu
equipamento.

2.5

Requisitos para instalao e execuo


Para executar o GAS, necessrio o ambiente Windows 32 bits em um microcomputador com,
pelo menos, 40 MB de espao livre, podendo variar bastante para menos, se o Visual Basic 6.0 j
tiver sido instalado no equipamento. A quantidade de memria RAM mnima para a execuo do
GAS de 32 MB e a recomendada de 128 MB.
Para a compilao dos programas gerados pelo GAS, necessrio que o Visual Basic 6.0
Professional ou Enterprise esteja instalado no equipamento. altamente recomendvel que o
Visual Basic 6.0 instalado no equipamento esteja atualizado com o ltimo service pack disponvel, o
qual poder ser obtido por download, no site da Microsoft Corporation.

2007 GAS Tecnologia

Captulo

III
Captulo 3 - Conceitos preliminares

102

GAS 2007 - Manual do Usurio

Captulo 3 - Conceitos preliminares

3.1

Consideraes
Recomendamos a leitura deste captulo mesmo aos que possuam experincia em programao.
Alguns conceitos abordados so importantes para o entendimento de como o GAS trata as
informaes que vo sendo a ele passadas pelo projetista no decorrer da execuo de um projeto de
sistema. H tambm alguns conceitos na forma de glossrio, que so importantes de se conhecer
para um melhor entendimento da programao no ambiente Windows e da manipulao de dados
em bancos de dados relacionais atravs de instrues SQL.

3.2

Componentes de um projeto GAS


Todas as aplicaes definidas atravs do GAS so tratadas como projeto de sistema. Um projeto
de sistema constitui-se de um conjunto de informaes necessrias construo de uma aplicao,
que so organizadas e armazenadas para serem utilizadas no momento apropriado. O GAS possui
recursos para se desenvolver no conceito de Multi-Projetos, neste caso, cada projeto gerado ser
uma aplicao, e o desenvolvimento destes projetos estaro dentro de uma soluo. Tambm
possvel gerar um aplicativo que funcione como soluo para o controle dos projetos.

3.2.1

Modelador do projeto
A modelagem ou desenho de um projeto com o GAS feita utilizando-se o seu modelador. Por
intermdio deste recurso, pode-se estabelecer toda a hierarquia dos mdulos que comporo a
aplicao final. Os mdulos so inseridos no projeto na forma de rvore hierrquica, verticalizada,
aparecendo dentro do modelador conforme exemplo da figura 3.1. Um fato importante a ser
observado na rvore do projeto que ela espelha exatamente a estrutura de menus que sero
levados para a aplicao final.
Os mdulos inseridos imediatamente abaixo do ttulo do projeto (no segundo nvel) aparecero na
barra de menu da aplicao enquanto os demais aparecero em sub-menus.

2007 GAS Tecnologia

Captulo 3 - Conceitos preliminares

103

Figura 3.1

O primeiro item da Arvore, trata-se das configuraes globais e da definio da soluo(


Multi-Projetos 103 ). Isto porque voc pode em uma soluo ter vrios projetos, ou seja, criar um
aplicativo totalmente modular.
Quando se tem mais de um projeto em uma soluo, aberta a possibilidade de gerar os fontes
tambm da soluo, que neste caso, tratar de um aplicativo voltado apenas para o acesso aos
outros mdulos, fazendo uma espcie de interligao. Cada projeto gerado com um .exe
respectivo, por isto, caso o usurio no queira gerar a soluo, pode-se opcionalmente executar
diretamente cada aplicativo gerado do projeto desejado.
3.2.1.1

Mltiplos projetos
A estrutura principal para definio de projetos do GAS foi alterada visando possibilitar a definio
de vrios projetos de forma agrupada dentro de uma nica soluo (.GAS). Essa caracterstica pode
ser comparada a solues (nome dado em algumas IDE's como, por exemplo, o Visual Studio). O
projetista definir a estrutura dos bancos de dados em um local centralizado e, depois de definidos
os bancos, poder determinar quais bancos sero utilizados dentro de cada projeto.

2007 GAS Tecnologia

104

GAS 2007 - Manual do Usurio

Figura 3.2

3.2.2

Mdulos que podem ser inseridos em cada projeto


Diversos tipos de mdulos podem ser inseridos no projeto, podendo alguns, inclusive, conter
mdulos subordinados. Destacamos os seguintes tipos de mdulos:

3.2.2.1

Menu
Constitui-se de um mdulo de bifurcao para outras opes. apresentado na forma de
retngulo com as demais opes que podem ser selecionadas pelo usurio.
Abaixo de mdulos do tipo menu podem ser inseridos quaisquer outros tipos de mdulos.

3.2.2.2

Janela de dados
um mdulo que serve para a definio de uma tabela que tenha sido inserida na estrutura do
banco de dados do projeto. Esta definio compreende a sua estrutura, como campos, validaes,
ndices, relacionamentos, processos, lanamentos, etc. Quando inserimos uma janela de dados na
rvore do projeto, o GAS coloca automaticamente uma opo no menu para a sua ativao na
aplicao final. As demais opes necessrias, como, por exemplo, incluso de registros, alterao,
consultas, etc, sero colocadas em outras opes de menu ou botes na barra de ferramentas,
servindo para atender a todas as janelas de dados que forem definidas na aplicao e atuando sobre
a janela que estiver ativa no momento da operao.
Abaixo de um mdulo janela de dados, podero ser inseridas outras janelas de dados ou tabelas
em grid 105 , estabelecendo um relacionamento 1-N (pai e filho), relacionamento este que o projetista
ter de criar quando definir a estrutura do banco de dados para a aplicao.
A criao deste tipo de mdulo, compreende duas etapas, sendo a definio do modulo
formatao da janela de dados.

ea

Sobre definio de um mdulo do tipo janela de dados, todos os detalhes de como definir est
disponvel no captulo 5 - Operando o GAS, no menu definindo um mdulo tipo janela de dados 178 .

2007 GAS Tecnologia

Captulo 3 - Conceitos preliminares

3.2.2.3

105

Tabela em grid
Este tipo de mdulo pode ser inserido somente abaixo de uma janela de dados, compondo a
parte "N" de um relacionamento 1-N que o projetista dever ter criado na estrutura do banco de
dados. A rigor, uma tabela pode ser mostrada em grid sempre que estiver relacionada na rvore a
uma outra tabela me, mesmo que no banco de dados no exista especificamente este
relacionamento. Porm, na aplicao final, a nica forma de garantir a excluso de registros filhos por
integridade referencial criando-se o relacionamento no banco de dados. Outros mdulos podem ser
inseridos abaixo de uma tabela em grid, concedendo total abertura na apresentao de mdulo que
obedeam a relacionamentos do tipo me-filha-irm-neta-bisneta...
Uma vez que uma tabela seja apresentada em grid na aplicao final gerada, com exceo de
campos do tipo imagem, todos os demais tipos de campos podem ser digitados dentro do prprio
grid, inclusive campos do tipo listas externas e internas, rotativos, lgicos, memo, etc. Todos os
recursos de edio, como por exemplo, a digitao com mscaras, so disponibilizados para os
campos digitados no grid. A cada nova linha includa ou alterada no grid, todos os processos e
lanamentos definidos so disparados automaticamente e todos os forms visveis no momento so
imediatamente atualizados para espelhar os valores que, porventura, tenham sido alterados.
Tambm, podem ser definidas frmulas para serem apresentadas nas colunas, sendo atualizadas
simultaneamente no momento da digitao. Naturalmente, essas frmulas podem envolver campos
de qualquer um dos bancos de dados manipulados pela aplicao. Com isto, o GAS oferece duas
maneiras de trabalhar com relacionamento 1-N: da forma onde a tabela me e filha aparecem em
forms separados e a forma onde as tabelas filhas so disponibilizadas em grids dentro do mesmo
form onde aparece a tabela me.

3.2.2.4

Rotina avulsa
Uma rotina avulsa constitui-se de um programa ou fragmento de programa no gerado pelo GAS,
ou seja, elaborado manualmente pelo projetista utilizando o Editor de Programas do GAS.

3.2.2.5

Consulta pr-definida
Este tipo de mdulo possibilita a criao de consultas aos registros das tabelas definidas na
aplicao. denominada pr-definida porque estabelecida pelo projetista em tempo de projeto,
diferindo, assim, das consultas que o usurio poder criar em tempo de execuo da aplicao, caso
o projetista queira disponibilizar este recurso. Essas consultas sero sempre apresentadas na
aplicao em forma de grade, onde os registros aparecero em linhas e os campos em colunas.

3.2.2.6

Relatrio
Um mdulo do tipo relatrio tem por finalidade emitir, em papel, o resultado da leitura dos
registros de uma ou mais tabelas definidas para a aplicao. Os relatrios so definidos utilizandose
totalmente a interface do GAS, por intermdio do G-Reports, ou utilizando-se do utilitrio Crystal
Reports, que acompanha o Visual Basic, para que seja efetuada externamente a formatao dos
mesmos.

3.2.2.7

Etiqueta
Tudo o que se aplica a mdulos do tipo relatrio tambm se aplica aos mdulos do tipo etiqueta
que, nada mais do que um tipo especial de relatrio. A Gas Tecnologia desenvolveu, ainda, oito
conjuntos de fontes true-type para a impresso dos seguintes cdigos de barras: EAN-13, EAN-8,

2007 GAS Tecnologia

106

GAS 2007 - Manual do Usurio

UPC-A, cada uma delas com dois estilos (normal e curto), 2 de 5 interleaved e o cdigo 3 de 9.
3.2.2.8

Processos pr-definidos
Este tipo de mdulo permite a definio de processamentos especiais, pr-definidos pelo
projetista, para executar certas tarefas, como por exemplo, fechamento de ms, clculo de folha de
pagamento, baixas em estoque, histricos, etc. Na definio desses mdulos, o projetista tem total
flexibilidade para envolver outros bancos de dados, efetuar clculos, apagar registros, etc., correndo
uma mesma tabela quantas vezes se fizer necessrio e efetuando processos diferentes a cada
passagem. Telas complementares podem ser criadas para serem apresentadas antes dos processos,
de modo a permitir o estabelecimento de filtros e condies de processos e lanamentos. Abaixo de
um mdulo processo pr-definido, agora, podem ser inseridos relatrios, etiquetas ou outros
processos pr-definidos, podendo-se ou no gerar relacionamentos entre eles.

3.2.2.9

Programa executvel
Um mdulo do tipo executvel pode ser inserido na rvore do projeto para disparar a execuo de
um programa executvel qualquer, do DOS ou do Windows, a partir da aplicao final gerada.

3.2.2.10 Formulrio avulso


Forms podem ser desenhados dentro do prprio ambiente do GAS para serem integrados
aplicao. Normalmente esta opo utilizada para que o projetista insira mdulos especiais
elaborados por ele mesmo.
3.2.2.11 Formulrio existente
Um mdulo de formulrio existente pode ser inserido na rvore para permitir que o projetista
reutilize objetos de interface que j tenha sido elaborada para outras aplicaes.
3.2.2.12 Linha separadora
Este tipo de mdulo, como o seu prprio nome indica, no significa nada mais alm de uma linha
separadora de itens de menu. Uma vez que a modelagem da estrutura da rvore do projeto (ver
tpico Modelador, neste captulo) implica na estruturao do prprio menu da aplicao, este
mdulo foi criado para permitir que uma linha seja inserida para separar opes, onde o projetista
julgar necessrio.
3.2.2.13 Apoio impresso fiscal
Ao gerar o aplicativo final, estes mdulos auxiliaro o usurio no processo de manuteno da
impressora fiscal, sendo os dispositivos por intermdio dos quais efetivar-se-o diversas operaes
fiscais, como por exemplo, abrir e fechar caixa, mudar horrio de vero, sangria, cancelar itens
impressos, etc.

3.2.3

Opes que podem ser inseridas na rvore


Existem outras opes que podem ser inseridas na rvore do projeto que no correspondem a

2007 GAS Tecnologia

Captulo 3 - Conceitos preliminares

107

mdulos propriamente ditos. Existem apenas para completar a estrutura de menu que qualquer
aplicao padro Windows deve ter.
3.2.3.1

Arquivo
Esta opo normalmente aparece como a primeira de qualquer aplicao Windows, sob a qual
so disponibilizadas normalmente opes de apoio (backup de banco de dados, manuteno de
senhas, etc), sada da aplicao, etc.

3.2.3.2

Editar
Abaixo desta opo normalmente so disponibilizadas opes genricas de edio, como copiar,
colar, cortar, etc.

3.2.3.3

Exibir
Esta opo normalmente utilizada para agrupar opes de exibio de objetos da interface que
podem ser exibidas ou ocultadas do usurio.

3.2.3.4

Janela
Sob esta opo so disponibilizadas comumente as opes de organizar cones da aplicao e,
ainda, a lista de janelas abertas em aplicaes MDI.

3.2.3.5

Ajuda
Finalmente, sob este ttulo so disponibilizadas algumas opes de ajuda da aplicao, bem
como a janela de crditos (sobre...).

3.3

Como so organizadas as informaes


As informaes digitadas nas aplicaes so organizadas em um arquivo contendo tabelas,
ndices, registros e campos, alm de outros objetos. Uma tabela pode ter diversos registros que, por
sua vez, podem ter diversos campos. Apenas para fazer uma analogia entre um arquivo magntico e
um arquivo fsico, poderamos tomar como exemplo um conjunto de cartes de clientes, que
representa uma tabela. Cada carto, com os dados do cliente representa um registro e cada
informao do cliente, como nome, telefone, etc., representa um campo. Se fosse elaborada uma
lista ordenada onde constasse que o carto do cliente tal o de nmero N, esta lista estaria
representando um ndice. Uma consulta a esta lista permitiria que se pegasse o ensimo carto de
cliente de um conjunto sem ter de percorrer todos os cartes.

2007 GAS Tecnologia

Captulo

IV
Captulo 4: Guia rpido para criar um aplicao

Captulo 4: Guia rpido para criar um aplicao

Captulo 4: Guia rpido para criar um aplicao

4.1

Via expressa

109

A cpia do GAS pode ser instalada com diversos exemplos para servir de base de conhecimento
e aprendizado dos recursos da ferramenta. Cada um desses exemplos explora de forma diferente as
facilidades de criao de aplicaes. Se voc optou por instalar esses exemplos, eles podem se
constituir de uma tima base de consulta para a assimilao da maneira correta de definir o que
pode ser implementado nas aplicaes. Este captulo no entrar no mrito dos exemplos. Ele
procurar auxili-lo na criao de um novo projeto, descrevendo, pela ordem e de maneira sucinta,
os passos necessrios para sua criao. O seu objetivo apontar a seqncia exata dos tpicos
deste manual que devem ser consultados para possibitar que, em poucos minutos, voc se
familiarize com os recursos oferecidos pelo GAS e obtenha um resultado concreto e imediato.
Primeiramente voc dever configurar o GAS de acordo com as suas preferncias. O tpico Opes
para personalizar a operao do GAS descreve os aspectos de sua configurao.

4.1.1

Abrir um novo projeto


Ao acessar o GAS, ser exibida a tela de Projetos do GAS, a qual permitir a criao de um
novo projeto (baseado ou no em gabaritos existentes), selecionar um projeto existente ou, ainda,
projetos que tenham sido recentemente abertos, como verificamos nas figuras abaixo:

Figura 4.1

2007 GAS Tecnologia

110

GAS 2007 - Manual do Usurio

Figura 4.2

Figura 4.3

A abertura de um novo projeto tambm pode ser efetuada selecionando-se as opes de menu
Arquivo/Novo projeto e dispondo o nome do novo projeto a ser criado. O GAS utiliza a extenso .GAS
para identificar os arquivos que armazenam projetos. Informado o nome do novo projeto, este
criado e carregado na rvore do projeto.

4.1.2

Configurar a rvore Default


Sempre que um novo projeto criado, o GAS monta uma rvore com opes default para o
mesmo. Nela j so disponibilizadas as opes normais da interface padro Windows, como por
exemplo, os menus Arquivo, Editar, Exibir, Janelas, Ajuda, etc. Tambm so disponibilizados
alguns mdulos genricos que podero ou no estar presentes na aplicao final, como, por
exemplo, o plano de senhas e as informaes sobre o BD. De acordo com a necessidade, preserve
ou retire esses mdulos da rvore do projeto. O tpico Apagando um Mdulo da rvore 136
descreve como isto pode ser feito.

4.1.3

Definir o projeto
A definio de um projeto deve sempre comear pelo mdulo que aparece em primeiro lugar na

2007 GAS Tecnologia

Captulo 4: Guia rpido para criar um aplicao

111

rvore. neste ponto que a definio dos dados relativos ao projeto como um todo feita. O ttulo
deste mdulo , inicialmente, SEM NOME DEFINIDO. Voc dever alterar este ttulo para que ali
aparea o ttulo do seu projeto. Isto pode ser feito clicando com o boto direito do mouse sobre este
ttulo e selecionando a opo "Define o mdulo selecionado" no menu pop-up que surgir. Assim
procedendo, sero disponibilizadas definies a serem feitas neste mdulo. Pode-se, ainda, clicar
diretamente sobre o boto de definio de mdulos existente na barra de ferramentas, caso esta
esteja visvel.
A definio do projeto compreende cinco etapas, das quais, pelo menos as duas a seguir so
obrigatrias:
Dados genricos do projeto - nesta parte so definidos alguns aspectos genricos do projeto
como, por exemplo, o ttulo da aplicao e seu nome executvel, tipo de banco de dados
utilizado, endentao e comentrios nos programas fontes, etc. Consulte o tpico Definindo os
dados genricos do projeto para executar esta tarefa.
Estrutura do banco de dados da aplicao - esta , talvez, a parte mais importante da definio
de um projeto. Aqui, so criadas as tabelas que iro compor o banco de dados. Mais de um
banco de dados pode ser utilizado. Para cada tabela sero estabelecidos os campos que esta
ir conter. Cada campo dever ser definido segundo o tipo de informao que ir receber.
ndices e integridades podero tambm ser criados para serem ligados s tabelas. O tpico
Definindo a Estrutura do Banco de Dados 137 explica detalhadamente como estas definies
podem ser feitas.
Alm dessas definies, voc poder fazer tambm a formatao da barra de ferramentas da
aplicao. Para executar esta operao, voc poder consultar, os tpicos Desenhando a barra de
ferramentas da aplicao e Utilizando o Editor de Recursos 246 . Se voc no desejar fazer esta
operao, o GAS definir uma barra de ferramentas default na aplicao final, o queatender
perfeitamente. Aps este passo, a situao dever ser a seguinte:
Criada a estrutura do banco de dados necessria, fato que nos permitir referir s tabelas,
campos, ndices e, dependendo da aplicao, relaes de integridades.
Criada a barra de ferramentas para atender a aplicao (ou ser apresentada a barra default).
Definidos o ttulo e nome do programa executvel da aplicao, bem como o nome de seus
arquivos de dados.

4.1.4

Inserir as janelas de dados


Normalmente, algumas das tabelas que foram criadas na definio da estrutura do banco de
dados, no passo anterior, estaro vinculadas a uma janela de dados inserida na rvore do projeto.
Este o ponto em que a digitao e manuteno de dados acionada a partir da aplicao final.
O tpico Inserindo um Mdulo na rvore do Projeto 134 mostra como voc pode inserir janelas
de dados na rvore do projeto. Se desejar, voc poder inserir mdulos do tipo menu para agrupar
outras tabelas. Poder criar, por exemplo, um menu de nome "Movimentao" e inserir logo abaixo,
todas as tabelas que esto envolvidas neste processo.

2007 GAS Tecnologia

112

4.1.5

GAS 2007 - Manual do Usurio

Definir as janelas de dados inseridas


Para definir uma janela de dados inserida na rvore, basta clicar com o boto direito do mouse
sobre o seu ttulo na rvore e selecionar a opo "Define o mdulo selecionado", abrindo a
interface de definio, que efetuada em cinco etapas (dependendo da aplicao, nem todas so
necessrias) apresentadas nas abas intituladas:

4.1.5.1

Geral
Aqui so feitas algumas definies genricas como, por exemplo, qual a tabela bsica desta
janela, nome do mdulo .FRM que ir ser gerado, as permisses de acesso a esta janela, etc. O
tpico Definindo uma Janela de Dados - Geral 345 explica os aspectos desta parte da definio.

4.1.5.2

Tabelas auxiliares
Esta etapa da definio necessria somente quando voc precisar abrir outras tabelas, alm da
tabela bsica, para se referenciar a seus campos, process-los e criar lanamentos a partir da tabela
bsica. Consulte o tpico Definindo uma Janela de Dados - Tabelas Auxiliares 183 para maiores
detalhes.

4.1.5.3

Lanamentos
A definio de lanamentos s necessria em certo tipo de aplicao. Nesta parte da definio
so estabelecidas as tabelas que iro receber os lanamentos, quais dos seus campos sero
modificados e os valores a serem lanados. Os detalhes dessas definies esto no tpico "
Definindo uma Janela de Dados - Lanamentos 184 ".

4.1.5.4

Processos
Nesta parte da definio so estabelecidos os processamentos de campos de tabelas do banco
de dados, baseando-se nos campos a serem modificados e seus respectivos valores. Consulte o
tpico "Definindo uma janela de dados - Processos 186 " para se inteirar dos detalhes. Para
completar a definio da janela de dados, falta a formatao da tela de digitao de dados para a
tabela bsica. Esta operao feita utilizando-se o Editor de Recursos do GAS. Consulte o tpico
Utilizando o Editor de Recursos para conhecer os detalhes da elaborao de telas de digitao.

4.1.6

Inserir outros mdulos, se necessrio


Alguns mdulos so comuns em quase todas as aplicaes, como, por exemplo, relatrios e
consultas. Esses mdulos, se existirem, devem ser inseridos na rvore da mesma maneira que foram
inseridas as janelas de dados, devendo ser definidos em seguida. Os tpicos Definindo um
relatrio ou etiqueta 211 e Definindo uma consulta 207 abordam os aspectos dessas definies.

4.1.7

Verificar rvore do projeto


Quando julgar que a aplicao j est completamente definida, o projetista dever visualizar a
rvore do projeto e verificar se existe algum mdulo ainda por definir. Os mdulos ainda no
definidos aparecem em cor diferente dos mdulos j prontos, caso o projetista tenha assim
configurado.

2007 GAS Tecnologia

Captulo 4: Guia rpido para criar um aplicao

113

Se existir algum mdulo ainda no definido, o projetista dever selecionar este mdulo e verificar
os fatores ainda a definir. Em alguns mdulos voc ter de marcar explicitamente a opo mdulo
pronto para dizer ao GAS que o mdulo est pronto para ser gerado, segundo o seu critrio.

4.1.8

Acionar a gerao de programas fontes e executvel


A gerao de programas fontes e executvel deve ser acionada por intermdio dos botes
apropriados existentes na barra de ferramentas do GAS ou por intermdio, respectivamente, das
opes "Gerar fontes..." e "Criar executveis..." do menu "Arquivo".
Boto gerar fontes
Boto Executar
A gerao dos fontes somente estar habilitada se todos os mdulos na rvore estiverem prontos
para serem gerados (veja item anterior). O Captulo 6 - Gerao de Programas Fontes 262 detalha
os aspectos desta operao. Aps gerados os programas fontes, o GAS automaticamente
disponibilizar uma interface para a gerao do programa executvel, gerao tal que poder ser
executada de forma independente, acionando-se o boto de gerao de executveis presente na
barra de ferramentas. O Captulo 7 - Gerao de executveis 268 detalha com maior profundidade
os aspectos desta operao.

2007 GAS Tecnologia

Captulo

V
Captulo 5 - Operando o GAS

Captulo 5 - Operando o GAS

Captulo 5 - Operando o GAS

5.1

Abertura ou criao de um projeto

115

Ao ser ativado, o GAS apresenta uma interface semelhante que aparece na figura 5.1 a seguir
para ser utilizada na abertura de projetos.

Figura 5.1

A primeira aba permite a criao de novos projetos ou, ainda, a abertura de um gabarito que
tenha sido previamente gravado no diretrio de instalao do GAS, por intermdio da opo
Gravar como gabarito, a ser vista mais adiante neste captulo;
A segunda aba utilizada para se abrir um projeto qualquer do GAS que esteja acessvel em
um drive local ou de rede;
A terceira aba apresenta uma lista com os doze ltimos projetos abertos pelo GAS. Basta
selecionar um deles para que este seja aberto e disponibilizado na rvore do projeto.

5.2

A barra de ferramentas do GAS


A interface do GAS foi projetada de modo a apresentar o mnimo de complexidade possvel com
um mximo de eficincia. Alguns poucos botes dispostos na barra de ferramentas so suficientes
para acessar todos os recursos necessrios criao de aplicaes em Visual Basic. A barra de
ferramentas , na verdade, um atalho para as opes mais importantes que constam do menu e, por
isso, todas as funes programadas nos botes existentes na barra de ferramentas pussuem um
atalho correspondente na estrutura de menus. A barra de ferramentas pode, opcionalmente, ser
ocultada ou mostrada. Os botes da barra de ferramentas so apresentados a seguir. Observe,
dependendo da situao da operao, alguns deles podero estar desabilitados por no se aplicar
ao contexto do momento.
Este boto pode ser utilizado para abrir e carregar um projeto de sistema j existente. Os
projetos de sistemas criados pelo GAS utilizam a extenso .GAS.

2007 GAS Tecnologia

116

GAS 2007 - Manual do Usurio

Este boto pode ser utilizado para disparar a gerao dos programas fontes da aplicao.
S aparece habilitado quando todos os mdulos da rvore do projeto esto completamente definidos.
Posteriormente, por meio de um dilogo, o projetista poder ligar ou desligar a gerao de certos
mdulos. O Captulo 6 - Gerao de programas fontes 262 para a aplicao detalha os aspectos
da gerao de fontes.
Logo aps a gerao dos programas fontes, o GAS dispe ao projetista, automaticamente, a
interface de gerao dos programas executveis necessrios ao seu funcionamento. No entanto, este
boto poder ser utilizado para acessar o mdulo de compilao, de uma forma independente, no
qual o projetista poder selecionar os mdulos que deseja compilar. Para maiores detalhes, referir-se
ao Captulo 7 - Gerao de Executveis 268 .
Se os programas fontes da aplicao foram gerados pelo menos uma vez, este boto estar
habilitado para ativar a criao do kit de instalao da aplicao. O Captulo 9 - Gerao de
programas auxiliares e converses 301 descreve detalhadamente esta operao.
Este boto pode ser utilizado para ativar e desativar a disponibilizao do Dirio de Bordo,
utilizado para anotaes que devero ser vinculadas ao projeto de sistema em definio. Por esta
razo, s estar habilitado quando existir uma definio de projeto em andamento. Os aspectos da
utilizao deste recurso esto descritos no tpico Utilizando o Dirio de Bordo 260 .
Este boto poder ser clicado para invocar o Editor de Programas do GAS. Existem diversas
situaes, durante a fase do desenvolvimento do projeto, em que este boto poder ser utilizado.
Consulte o tpico Utilizando o Editor de Programas 241 para obter detalhes de sua utilizao.
Este boto poder ser clicado para invocar o editor de cones do GAS. Assim como o Editor
de Programas, existem diversas situaes, durante a fase do desenvolvimento do projeto, em que
este boto poder ser utilizado. Consulte o tpico Utilizando o Editor de cones 238 para obter
detalhes de sua utilizao.
Este boto serve para ativar o Editor de Recursos do GAS para a formatao de telas e da
barra de ferramentas para a aplicao a ser gerada, processo que detalhado no tpico Utilizando
o Editor de Recursos 246 .
Este boto s estar habilitado se um mdulo do tipo relatrio ou etiqueta estiver
completamente definido e selecionado na rvore do projeto. A formatao de relatrios e etiquetas
utilizando o G-Reports, formatador interno do GAS, est descrito no tpico Definindo um Relatrio
ou Etiqueta 211 deste captulo. A interface com o Crystal Reports tambm efetuada
automaticamente, por meio deste boto, caso o projetista tenha optado por este utilitrio na insero
do mdulo de relatrio no projeto.
Este boto ativa a interface de definio do mdulo que se encontra selecionado na rvore.
Para estabelecer as definies do mdulo, o projetista dever clicar sobre este boto.

2007 GAS Tecnologia

Captulo 5 - Operando o GAS

117

Este boto tem por finalidade permitir a insero de novos mdulos na rvore do projeto. S
estar ativado se o mdulo selecionado na rvore suportar um mdulo subordinado. Esses mdulos
so o ttulo do projeto, menus, janelas de dados, tabelas em grid, processos pr-definidos, relatrios,
formulrios avulsos, etc.
Este boto serve para cortar para o clipboard textos do Editor de Programas, mdulos da
rvore do projeto ou suas definies. O texto selecionado apagado do editor e disponibilizado na
rea de transferncia (ou clipboard). J o mdulo movido para outra posio da rvore do projeto
ou mesmo para outro projeto, utilizando-se a opo de colagem a ser referenciada logo a seguir. O
mesmo ocorre com as definies de mdulo recortadas.
Este boto serve para copiar todas as definies efetuadas no mdulo selecionado para uma
rea de transferncia. Este recurso foi disponibilizado no GAS para permitir a herana de definies
de um mdulo para outro, dentro da rvore, ou para ser levado a um outro projeto. Quando o Editor
de Programas for a janela ativa, este boto pemitir copiar o texto nele selecionado para o objeto
clipboard (ou rea de transferncia). Mdulos da rvore do projeto tambm podero ser copiados.
Uma vez que algum texto do Editor de Programas, os mdulos da rvore do projeto ou as
definies do mdulo tenham sido copiadas para a rea de transferncia, o projetista poder clicar
sobre este boto para aproveitar tudo o que foi definido, com a finalidade de modificar somente o que
for necessrio, com um ganho considervel de tempo na fase do projeto. No caso de ser o Editor de
Programas a janela ativa, o texto existente na rea de transferncia ser inserido no texto, na posio
do cursor.
Este boto, se estiver habilitado, poder ser utilizado para apagar o que estiver sendo feito no
momento, o que pode ser tanto um mdulo selecionado na rvore do projeto, quanto controles
selecionados no Editor de Recursos do GAS ou texto selecionado no Editor de Programas. Exceto
para este ltimo, o apagamento de informaes sempre feito mediante uma confirmao prvia.
Este boto serve como atalho para a apresentao da ajuda de operao do GAS.
Finalmente, este boto um atalho para o abandono da operao do GAS.

5.2.1

Botes de controle do editor de programas


Se a janela ativa for o Editor de Programas do GAS, os seguintes botes estaro ativos na barra
de ferramentas:
Este boto serve para apresentar o dilogo de procura de texto dentro do Editor de
Programas. A tecla CTRL+F pode ser utilizada como atalho desta operao.
Este boto serve para apresentar o dilogo de procura e substituio dentro do Editor de
Programas do GAS. A tecla CTRL+H pode ser utilizada como atalho para esta operao.

2007 GAS Tecnologia

118

GAS 2007 - Manual do Usurio

Este boto serve para sincronizar o mdulo selecionado na rvore com o texto do editor. Se
este boto estiver ligado (em baixo), o texto apresentado na rea ativa do editor estar sempre
sincronizado com o mdulo selecionado na rvore, ou seja, se o projetista selecionar um novo
mdulo na rvore, o texto da janela apresentar imediatamente o cdigo que foi digitado para aquele
mdulo. Se este boto estiver desligado (em cima), nenhum sincronismo ocorrer.
Este boto serve para desfazer, de modo ilimitado, quaisquer alteraes que tenham sido
efetuadas no Editor de Programas do GAS.
Este boto serve para refazer, de modo ilimitado, quaisquer aes que tenham sido desfeitas
no Editor de Programas do GAS.
Este boto serve para endentar cada uma das linhas do bloco selecionado, proporcionando
uma facilidade maior na formatao das estruturas da linguagem definidas diretamente pelo
projetista.
Este boto serve para retirar a endentao de cada uma das linhas do bloco selecionado,
proporcionando uma facilidade maior na formatao das estruturas da linguagem definidas
diretamente pelo projetista.

Este boto serve para comentar cada uma das linhas do bloco selecionado. Caso o projetista
no tenha selecionado algum bloco de linhas e pressione este boto, o caracter de comentrio
(apstrofo) ser includo no incio da linha indicada.
Este boto serve para retirar o comentrio de cada uma das linhas do bloco selecionado.

5.3

A barra de status do GAS


Como forma de projetar uma interface ainda mais amigvel, encontra-se disponibilizada no rodap
do aplicativo uma barra de status, a qual informa o estgio de progresso do processo efetuado no
corrente momento, como criao e carregamento de projetos, gerao de fontes, dentre outros.
Quando a referida barra de progresso se encontrar na cor azul, o processo tem a possibilidade de ser
interrompido. Tal procedimento no pode ser efetuado quando esta barra de progresso se apresentar
na cor vermelha.

5.4

As opes de menu do GAS


A seguir, vamos conhecer as opes disponveis no menu do GAS. Como j vimos, a barra de
ferramentas serve de atalho para algumas dessas opes que so mais utilizadas. A estrutura de
menus do GAS segue os padres Windows, razo pela qual sero abordadas somente as opes
especficas da sua operao.

2007 GAS Tecnologia

Captulo 5 - Operando o GAS

5.4.1

119

O menu arquivo
A figura a seguir um exemplo do que pode estar aparecendo no menu Arquivo do GAS:

Figura 5.2

A exemplo do que ocorre na barra de ferramentas, algumas opes podem estar desabilitadas por
no se aplicarem ao contexto do momento da operao. As seguintes opes podem ser ativadas a
partir deste menu:
5.4.1.1

Novo projeto
Esta opo serve para criar um novo projeto de sistema. O projetista dever informar um nome
para o novo projeto e o GAS criar e iniciar este novo projeto, carregando as opes default na
rvore do novo projeto.

5.4.1.2

Abrir projeto existente


Esta opo serve para abrir um projeto j existente. Existe um boto com funo correspondente
na barra de ferramentas.

5.4.1.3

Abrir gabarito
Esta opo serve para abrir um gabarito de projeto previamente gravado com a opo explicada a
seguir. Todas as definies gravadas em gabaritos so aproveitadas em um novo projeto.

5.4.1.4

Salvar como gabarito


A qualquer momento da definio de um projeto com o GAS, esta opo pode ser ativada para
salvar todas as definies como um gabarito de nome a ser especificado. Uma vez que um gabarito
tenha sido salvo, pode-se utilizar a opo "Abrir gabarito..." explicada anteriormente, para aproveitar
todas as definies existentes.

2007 GAS Tecnologia

120

5.4.1.5

GAS 2007 - Manual do Usurio

Dirio de bordo
Apresenta ou oculta o Dirio de Bordo vinculado ao projeto. Esta opo tem um boto
correspondente na barra de ferramentas e s est disponvel quando existe um projeto em definio.

5.4.1.6

Gerar fontes
Esta opo aciona a gerao dos programas fontes para a aplicao. S aparece habilitada
quando todos os mdulos da rvore do projeto esto completamente definidos. Existe boto com
funo idntica na barra de ferramentas.

5.4.1.7

Criar executveis
Esta opo aciona a interface de criao de programas executveis necessrios ao
funcionamento da aplicao gerada. A barra de ferramentas possui um boto com esta
funcionalidade.

5.4.1.8

Reparar projeto
Esta opo serve para corrigir problemas de integridade ou ndices que, porventura, venham a
ocorrer nos projetos doGAS. Esta opo s estar disponvel para seleo se nenhum projeto estiver
carregado no GAS. O tpico Reparao do Projeto detalha as razes da necessidade desta opo.

5.4.1.9

Utilitrios
Esta opo abre um sub-menu de onde podem ser acionadas diversas opes de utilitrios do
GAS. Aqui tambm, algumas opes podero no estar habilitadas para seleo por no se
aplicarem ao contexto do momento da operao. A figura a seguir mostra quais so as opes
disponveis:

5.4.1.9.1 Documentao do projeto

Esta opo exibe a interface de criao da documentao para a aplicao gerada.


5.4.1.9.2 Criar programa instalador

Tambm com um boto de funcionalidade idntica na barra de ferramentas, esta opo aciona a
interface que cria o programa instalador para a aplicao final.

2007 GAS Tecnologia

Captulo 5 - Operando o GAS

121

5.4.1.9.3 Criar conversor de arquivos DBF

Esta opo serve para solicitar ao GAS que crie um utilitrio conversor de arquivos do formato
DBF para o formato MDB. Com isto, possvel o reaproveitamento total dos dados das aplicaes
provenientes do DOS. O tpico Utilitrio Conversor de Arquivos DBF aborda detalhadamente a
utilizao deste recurso.
5.4.1.9.4 Imprimir dirio de bordo

Utilize esta opo para passar para a impressora as anotaes referentes ao projeto existente no
Dirio de Bordo.
5.4.1.9.5 Rever mensagem erro de gerao

Durante o processo de gerao de programas fontes, o GAS executa testes de consistncia sobre
as definies do projeto. Qualquer incoerncia reportada em uma mensagem de erro com o
conseqente cancelamento do processo de gerao. O projetista poder, ao corrigir o problema,
selecionar esta opo para rever a ltima mensagem de erro reportada. A seguir, podero estar
aparecendo no menu, os nomes de um ou mais projetos recentemente abertos. O GAS armazena os
nomes dos 3 ltimos projetos que carregou, ficando o mais recente posicionado em primeiro lugar.
5.4.1.10 Finalizar
Com um boto correspondente na barra de ferramentas, esta opo serve para encerrar a
operao do GAS.

5.4.2

O menu Editar
A figura abaixo corresponde ao menu Editar. Algumas opes podem aparecer desabilitadas por
no se enquadrarem no contexto do momento da operao:

2007 GAS Tecnologia

122

GAS 2007 - Manual do Usurio

Figura 5.3

Todas as opes deste menu tm um boto com a mesma funcionalidade na barra de


ferramentas.
5.4.2.1

Inserir
Esta opo serve para inserir mdulos na rvore do projeto. Um mdulo inserido sempre
subordinado ao que estiver, naquele momento, selecionado na rvore. A insero de mdulos na
rvore do projeto detalhada no tpico Inserindo um Mdulo na rvore do Projeto 134 .

5.4.2.2

Cortar
Esta opo serve para cortar o texto selecionado no Editor de Programas do GAS para a rea de
transferncia(clipboard).

5.4.2.3

Copiar
Esta opo serve para copiar definies inteiras de mdulos para um posterior aproveitamento em
outro mdulo semelhante do mesmo ou de outro projeto. Se a janela ativa for o Editor de Programas
do GAS, esta opo servir para copiar o texto selecionado no Editor para a rea de transferncia.

5.4.2.4

Colar
Complementando a opo anterior, esta opo serve para dispor na rvore do projeto as
definies copiadas. Se a janela ativa for o Editor de Programas do GAS, esta opo servir para
colar o texto existente na rea de transferncia na janela de edio.

2007 GAS Tecnologia

Captulo 5 - Operando o GAS

5.4.2.5

123

Apagar
Esta opo serve para apagar o objeto selecionado no momento, tanto podendo ser um mdulo
da rvore quanto um objeto qualquer durante a formatao de telas. Se a janela ativa for o Editor de
Programas do GAS, esta opo servir para apagar o texto selecionado no Editor.

5.4.2.6

Procura
Esta opo serve para ativar o dilogo de pesquisa de texto dentro da janela em edio do Editor
de Programas do GAS.

5.4.2.7

Substitui
Esta opo serve para ativar o dilogo de pesquisa e substituio de texto dentro da janela do
Editor de Programas do GAS.

5.4.2.8

Sincroniza
Esta opo tem por finalidade sincronizar o mdulo selecionado na rvore com o texto do Editor
de Programas do GAS. Se esta opo estiver marcada, o texto apresentado na rea ativa do editor
estar sempre sincronizado com o mdulo selecionado na rvore, ou seja, se o projetista selecionar
um novo mdulo na rvore, o texto da janela apresentar imediatamente o cdigo que foi digitado
para aquele mdulo. Se estiver desmarcada, nenhum sincronismo ocorrer.

5.4.2.9

Desfaz
Esta opo serve para desfazer, de modo ilimitado, quaisquer alteraes que tenham sido
efetuadas no Editor de Programas do GAS.

5.4.2.10 Refaz
Esta opo serve para refazer, de modo ilimitado, quaisquer alteraes que tenham sido
efetuadas no Editor de Programas do GAS.
5.4.2.11 Endenta
Esta opo serve para endentar cada uma das linhas do bloco selecionado na tela de edio do
Editor de Programas do GAS, proporcionando uma facilidade maior na formatao das estruturas da
linguagem definidas diretamente pelo projetista.
5.4.2.12 Desendenta
Esta opo serve para retirar a endentao de cada uma das linhas do bloco selecionado na tela
de edio do Editor de Programas do GAS, proporcionando uma facilidade maior na formatao das
estruturas da linguagem definidas diretamente pelo projetista.

2007 GAS Tecnologia

124

GAS 2007 - Manual do Usurio

5.4.2.13 Comenta
Esta opo serve para comentar cada uma das linhas do bloco selecionado na tela de edio do
Editor de Programas do GAS. Caso o projetista no tenha selecionado algum bloco de linhas e
pressione este boto, o caracter de comentrio (apstrofo) ser includo no incio da linha indicada.
5.4.2.14 Descomenta
Esta opo serve para retirar o comentrio de cada uma das linhas do bloco selecionado na tela
de edio do Editor de Programas do GAS.
5.4.2.15 Editor de cones
Esta opo aciona o Editor de cones do GAS para permitir sua utilizao.
5.4.2.16 Editar cdigo de programa
Esta opo ativa o Editor de Programas do GAS. Este recurso pode ser utilizado em diversos
pontos da definio do projeto.
5.4.2.17 Formatar relatrio
Esta opo ativa a interface de formatao do relatrio ou etiqueta que est selecionado na
rvore.
5.4.2.18 Formatar tela
Esta opo aciona o Editor de Recursos para a formatao da tela de digitao para a janela de
dados selecionada na rvore.
5.4.2.19 Definir
Esta opo abre uma interface para que sejam estabelecidas as definies do mdulo
selecionado na rvore ou modelador do projeto.

5.4.3

O menu exibir
Este menu apresenta algumas opes de exibio de peas da interface do GAS. Sua utilizao
est detalhada no tpico seguinte, denominado Opes para Personalizar a Operao do GAS 125
.

5.4.4

O menu opes
Este menu serve para configurar opes de operao que esto tambm detalhadas no tpico a
seguir.

2007 GAS Tecnologia

Captulo 5 - Operando o GAS

5.5

125

Opes para personalizar as operaes do GAS


Existem diversas opes na operao do GAS que podem ser personalizadas para satisfazer as
preferncias do projetista. Uma vez configuradas, essas opes so guardadas pelo GAS para
serem assumidas nas prximas sees. Essas opes aparecem nos dois menus Exibir e Opes
mencionados no tpico anterior. Algumas delas so do tipo liga/desliga, enquanto outras necessitam
de definies mais detalhadas.

5.5.1

Opes do menu Exibir


A figura a seguir apresenta este menu:

Figura 5.4

Neste menu, encontramos:


5.5.1.1

Barra de ferramentas
Clicando sobre esta opo, o projetista poder ocultar ou exibir a barra de ferramentas do GAS.
Como todas as opes que se encontram na barra de ferramentas esto tambm disponveis nas
opes de menus, quando aquela estiver oculta, a operao do GAS poder ser feita por essas
opes, embora com um pouco mais de dificuldade.

5.5.1.2

Banco de campos
Por intermdio desta opo, o projetista poder ocultar ou apresentar o banco de campos
disponveis para captura, que o GAS monta a partir das informaes existentes na estrutura definida.
Esse mesmo banco de campos relaciona a lista de variveis, constantes e funes (function e sub)
disponveis para o objeto em definio. O banco de campos s aparece habilitado no menu se a
situao de operao indicar a sua necessidade. Para facilitar a manipulao das informaes nele
relacionadas, a janela do banco de campos apresenta botoeira com diversos operadores, como
mostrado na figura a seguir, inclusive transferncia de dados como inteiro, quociente e resto da
diviso inteira, concatenao de strings, etc.

O tpico Utilizando o Banco de Campos


5.5.1.3

258

explica a utilizao deste recurso.

Ferramentas da tela
As ferramentas de formatao de telas ou barra de ferramentas so parte da interface do Editor
de Recursos do GAS, sendo que sua janela pode ser exibida ou ocultada por meio desta opo. S
est disponvel se a situao de operao estiver indicando que ela necessria. Consulte o tpico

2007 GAS Tecnologia

126

GAS 2007 - Manual do Usurio

Utilizando o Editor de Recursos

246

para conhecer os detalhes.

Figura 5.5

5.5.1.4

Dirio em zoom
Esta opo s estar habilitada quando o Dirio de Bordo estiver sendo exibido, servindo para
apresent-lo em tamanho normal ou ampliado, ocupando toda a rea de cliente do GAS.

5.5.1.5

Texto exemplo na tela


Esta opo serve para alterar ligar e desligar a apresentao de texto exemplo dentro dos campos
dispostos nas telas e relatrios. Este recurso auxilia a avaliao dos tamanhos dos campos a serem
deixados para o usurio digitar nas telas, auxiliando tambm a visualizao de labels disponibilizados
em relatrios. O texto a ser apresentado como exemplo pode ser determinado por meio da opo
Configuraes a ser abordado um pouco mais adiante, neste captulo.

5.5.2

Opes do menu Opes


No menu de opes, podem ser configurados outros aspectos da interface do GAS. A figura a
seguir apresenta este menu:

2007 GAS Tecnologia

Captulo 5 - Operando o GAS

127

Figura 5.6

Neste menu, temos:


5.5.2.1

Opes da tela padro


Por meio desta opo, o projetista estabelece os parmetros para a criao da tela padro,
disponvel no Editor de Recursos. O tpico Definindo Opes da Tela Padro 256 aborda os
detalhes desta operao.

5.5.2.2

Tratamento de nomes
Esta opo permite ao projetista especificar como o GAS tratar os nomes das tabelas, campos e
apelidos que sero digitados durante a entrada de informaes na definio da estrutura para o
banco de dados. As opes so:

5.5.2.2.1 Capitalizar

No importando o que o projetista esteja digitando, o GAS ir capitalizar a primeira letra, ou seja,
convert-la em maiscula.
5.5.2.2.2 Maisculas

Todas as informaes digitadas sero transformadas em maisculas.


5.5.2.2.3 Minsculas

Tudo o que for digitado ser transformado para letras minsculas.


5.5.2.2.4 Nenhum

Nenhum tratamento ser dado pelo GAS ao que o projetista digitar para os nomes de tabelas e
campos.
5.5.2.3

Configuraes
As configuraes de diversas fases da operao do GAS esto divididas em uma interface com
cinco abas. Ao ser selecionada esta opo de menu, a tela da figura a seguir apresentada:

2007 GAS Tecnologia

128

GAS 2007 - Manual do Usurio

Figura 5.7
5.5.2.3.1 Modelador

Nesta aba podem ser configuradas diversas opes do modelador do projeto. medida que as
configuraes vo sendo efetuadas, o seu efeito vai sendo mostrado imediatamente na janela de
amostra existente nesta janela:
5.5.2.3.1.1 Fontes do modelador

Esta opo serve para configurar a fonte a ser utilizada na vore do projeto.
5.5.2.3.1.2 Cores do mdulo

As cores utilizadas para identificar os mdulos existentes na rvore do projeto pode ser
configurada da maneira que o projetista julgar mais conveniente. Esta opo til para permitir a
visualizao imediata do estgio em que se encontra o desenvolvimento do projeto. O GAS permite
que sejam configuradas tipos de fontes e cores para as situaes a seguir:
Definidos
Todo mdulo que estiver totalmente pronto para ser gerado, aparecer na cor aqui configurada.
Em definio
Os mdulos que estejam incompletos na sua definio, aparecero na cor configurada para este
item.

2007 GAS Tecnologia

Captulo 5 - Operando o GAS

129

Preservados
Alguns mdulos que o projetista no deseja gerar, ele poder marcar o desligamento da sua
gerao. Isto se aplica a qualquer tipo de mdulo que possa ser disponibilizado na rvore. Por
exemplo, o tpico Definindo uma janela de dados - Geral 178 explica os detalhes desta opo.
Mdulos que o projetista tenha marcado para no serem gerados aparecero na cor configurada para
este item.
Todos
Esta opo serve para trocar, de uma s vez, os atributos de cor para as opes anteriores.
5.5.2.3.2 Telas e relatrios

Nesta aba, aparecem algumas opes para utilizar em telas e relatrios, como mostra a figura a
seguir:

Figura 5.8
5.5.2.3.2.1 Tamanho da grade

Ajuste o tamanho, em pixels, da grade a ser utilizada para a rea de formatao de telas e
relatrios, quando esta estiver visvel.
5.5.2.3.2.2 Texto exemplo

Informe um texto a ser utilizado como exemplo nos campos dispostos nas telas e labels em
relatrios para a impresso de campos, quando a opo denominada "Texto exemplo na tela",
explicada anteriormente neste captulo, estiver marcada.
2007 GAS Tecnologia

130

GAS 2007 - Manual do Usurio

5.5.2.3.2.3 Default para texto 3D

Configure as opes default para os objetos 3D disponibilizados na tela ou relatrio. Essas


opes se referem apenas forma como esses objetos so disponibilizados na tela ou relatrio. O
projetista sempre poder mudar individualmente essas propriedades no momento da formatao. As
opes so:
Fonte
Selecione o nome, tamanho e cor da fonte a ser utilizada para imprimir o texto 3D.
Sombra
Informe o tamanho em pixels da sombra a ser projetada pelo texto.
ngulo
Informe o ngulo, de 0 a 359 graus, para ser utilizado na impresso do texto 3D.
Cor do contorno
Estabelea uma cor para ser utilizada no contorno ou outline do texto 3D.
Cor da sombra
Escolha uma cor para a sombra a ser projetada pelo texto 3D.
5.5.2.3.3 Relatrios

Nesta aba, como mostra a figura a seguir, aparecem as opes a serem configuradas
exclusivamente para os relatrios e etiquetas a serem formatados por meio do G-Reports do GAS.

2007 GAS Tecnologia

Captulo 5 - Operando o GAS

131

Figura 5.9
5.5.2.3.3.1 Cores das rguas

Estabelea os atributos de cores a serem utilizadas para exibir nas rguas auxiliares de
formatao.
5.5.2.3.3.2 Distncia entre registros

Especifique a distncia, em milmetros, a ser utilizada como default da propriedade para separar
registros. Esta informao poder ser reajustada posteriormente, no momento da formatao de
relatrio.
5.5.2.3.3.3 Papel

Informe o tipo de papel a ser utilizado para o relatrio e tambm algumas medidas de margens
para clculo da rea til da impresso.
Consideraes sobre margens de papel
Existe, hoje, disponvel no mercado, uma grande quantidade de marcas e modelos de
impressoras. Alm de serem diferentes em aspectos como resoluo, velocidade, qualidade, etc.,
essas impressoras diferem no aspecto do aproveitamento do papel. Todas elas s conseguem
imprimir dentro de uma rea til circunscrita por margens (topo, esquerda, direita e fundo). Essas
margens existem possivelmente por problemas de concepo, como, por exemplo, pela necessidade
de trao de papel. Elas podem ser maiores ou menores, de acordo com a impressora utilizada. Por
meio da funo API GetDeviceCaps(), possvel recuperar os valores exatos dessas margens, desde
que a impressora esteja instalada na mquina. Como as impressoras dos equipamentos de
desenvolvimento nem sempre so as mesmas existentes nas mquinas onde a aplicao ser

2007 GAS Tecnologia

132

GAS 2007 - Manual do Usurio

executada, o projetista dever estabelecer manualmente essas margens para que o GAS
disponibilize na rea de formatao somente a rea til calculada por meio dessas medidas.
5.5.2.3.4 Diretrios

Finalmente, na ltima aba, mostrada na figura a seguir, podem ser configurados os diretrios dos
diversos utilitrios com os quais o GAS ir manter algum tipo de interface.

Figura 5.10

Informe, nos campos correspondentes, os diretrios onde residam os diversos aplicativos. O


boto Procura pode ser utilizado para apresentar um dilogo de localizao.
5.5.2.4

Idioma
Ainda no menu Opes, esta opo permite a livre seleo do idioma (Portugus, Espanhol ou
Ingls) ao qual a aplicao estar ou est sendo desenvolvida. Cabe aqui ressaltar o fato da seleo
de idiomas s estar disponvel na verso Enterprise do gerador em questo, sem que nenhum
projeto esteja aberto no momento corrente.

5.6

Reparao do projeto
Os projetos desenvolvidos pelo GAS ficam armazenados em um arquivo de extenso .GAS. As
informaes que vo sendo passadas pelo projetista, como, por exemplo, nomes de bancos de
dados, tabelas, campos, relaes, ndices, janelas de entrada de dados, estrutura hierrquica, dirio
de bordo, enfim, toda a definio do projeto fica armazenada neste arquivo que, por sua vez, um
banco de dados de formato MDB. E, por se tratar de um banco de dados com alto grau de
dependncia de ndices e relacionamentos, possvel que, por um motivo qualquer, haja a perda de
ndices ou de relacionamentos, compromentendo a integridade do que foi definido para o projeto. Por

2007 GAS Tecnologia

Captulo 5 - Operando o GAS

133

esta razo, foi disponibilizada, no GAS, a opo "Reparar projeto", abaixo da opo de menu
Arquivo. O projetista poder utilizar esta opo para fazer a reparao do banco de dados do
projeto, a fim de corrigir os possveis erros existentes, caso sinta essa necessidade.

5.7

rvore ou modelador de projetos


O modelador do projeto o mdulo por meio do qual o projetista define a hierarquia do seu
projeto. O mdulo modelador se constitui de uma lista hierrquica representando a rvore do projeto.

Figura 5.11

A figura acima mostra um exemplo da rvore Hierrquica ou Modelador de Projetos. Por


intermdio desta interface, o projetista tem plena liberdade de manipular a hierarquia do projeto em
definio, inserindo, apagando ou movendo mdulos.
Para essas operaes, o GAS possui recursos que facilitam o trabalho do projetista, como, por
exemplo, o clipboard para copiar definies inteiras de mdulos para outros pontos da rvore do
projeto ou, mesmo, para outros projetos, e os recursos drag and drop (arrasta e solta) para

2007 GAS Tecnologia

134

GAS 2007 - Manual do Usurio

movimentar troncos inteiros por meio da rvore. Cada tipo de mdulo tem uma figura diferente para
represent-lo, permitindo a sua identificao imediata, com uma rpida visualizao.
medida que os mdulos so inseridos na rvore, o menu da aplicao final tambm vai sendo
naturalmente definido, pois a disposio dos mdulos na rvore do projeto espelha exatamente o
menu da aplicao final. Os mdulos inseridos imediatamente abaixo do ttulo do projeto aparecero
no primeiro nvel do menu. Os demais, aparecero em submenus.
Conforme vimos no tpico Opes para Personalizar a Operao do GAS, para facilitar ao
projetista visualizar o estgio em que se encontra o desenvolvimento do projeto, o GAS permite a
configurao de cores para os mdulos que j esto definidos (prontos para serem gerados) e para
os mdulos que ainda no esto definidos. Os mdulos que no sero gerados por opo do
projetista tambm podem aparecer em cores diferentes.

5.7.1

Menu pop-up da rvore


Clicando-se com o boto direito do mouse sobre um mdulo da rvore, um menu pop-up
apresentado com algumas opes aplicveis ao mdulo, podendo ser utilizadas como atalhos para
as algumas das operaes descritas a seguir.

5.7.2

Inserindo um mdulo na rvore do projeto


Para inserir um mdulo na rvore, o projetista dever proceder conforme segue:
Selecione, na rvore, o mdulo sob o qual deseja inserir o novo mdulo. Observe que, nem
todos os mdulos podem ter subordinados na rvore. Somente os mdulos Ttulo do Projeto,
Menus, Janelas de Dados, Relatrios do G-Reports e Processos pr-definidos podem ter
mdulos inseridos de forma subordinada;
Selecione as opes de menu "Editar/Inserir" ou clique diretamente sobre o boto de inserir
existente na barra de ferramentas, caso esta esteja visvel ou, ainda, clique com o boto direito
do mouse sobre o mdulo, selecionando a opo "Insere novo mdulo abaixo" existente no
menu pop-up que surgir;

Selecione no menu apresentado pela figura a seguir, o tipo de mdulo a ser inserido;

2007 GAS Tecnologia

Captulo 5 - Operando o GAS

135

Figura 5.12

Selecione, quando solicitado, a posio em que o mesmo deve ser inserido. O GAS apresenta
uma segunda rvore contendo apenas os mdulos de nvel igual ou superior ao que est sendo
inserido. O projetista dever clicar sobre o mdulo aps o qual (e de seus filhos) o novo mdulo
ser inserido.
Os mdulos que so inseridos no primeiro nvel da rvore, ou seja, diretamente ligados ao
ttulo do projeto, ficaro sempre visveis no menu da aplicao final, aparecendo um ao lado do
outro. aconselhvel para uma melhor esttica que o projetista evite dispor palavras compostas
(que contenham espaos) para definir os ttulos dos menus que aparecem neste primeiro nvel.
Os demais mdulos sempre aparecero em submenus, um abaixo do outro, no sendo
necessrio este cuidado.

5.7.3

Mundando posies de mdulos na rvore do projeto


Os mdulos inseridos na rvore podem ter suas posies alteradas, utilizando-se as operaes
de drag and drop (arrastar e soltar) disponveis no modelador do projeto. Para trocar a posio de um
mdulo e de todos os seus mdulos subordinados, proceda como segue:
Clique com o boto esquerdo do mouse sobre o mdulo cuja posio deseja alterar,
mantendo-o pressionado;
Arraste o mdulo para a nova posio. Observe que nem todo tipo de mdulo suporta itens
subordinados e, por isso, o cone utilizado na operao de arrasto mudar para indicar ao
projetista onde o novo mdulo poder ser inserido;
Libere o boto do mouse na posio desejada.
Cuidados especiais devem ser observados ao trocar a posio de janelas de dados, pois este tipo
de mdulo pode possuir tabelas vinculadas com regras de integridade no banco de dados que
impedem a sua insero em determinadas posies da rvore.

2007 GAS Tecnologia

136

5.7.4

GAS 2007 - Manual do Usurio

Copiando definies
Definies j efetuadas para um mdulo, banco de dados, tabelas e mdulos do projeto podem
ser copiadas para o clipboard e depois inseridas em outros pontos da rvore ou, ainda, em outros
projetos do GAS, a fim de se reaproveitar as informaes. Para copiar um banco de dados, tabela ou
mdulo para outro ponto da rvore ou para outro projeto, proceda conforme se segue:
Selecione o item que deseja copiar para o clipboard;
Selecione a opo de menu "Editar/Copiar" ou clique sobre o boto de copiar existente na barra
de ferramentas, caso esta esteja visvel. Caso o item a ser copiado seja um mdulo da rvore
do projeto, isto , no seja um banco de dados ou tabela criados nas definies do projeto, o
projetista poder, ainda, clicar com o boto direito do mouse sobre o referido item e selecionar a
opo Copiar presente no menu pop-up que surgir;

Caso o projetista queira colar o item copiado para um projeto diferente, primeiramente o mesmo
dever selecionar o projeto que receber o mdulo copiado. O projetista dever, ainda,
selecionar o item sob o qual (caso seja um mdulo da rvore do projeto) ou a rea
correspondente (caso seja um banco de dados ou tabela) onde deseja inserir o novo mdulo;
Selecione a opo de menu "Editar/Colar" ou clique sobre o boto de colar existente na barra
de ferramentas, caso esta esteja visvel. Caso o item a ser colado seja um mdulo da rvore do
projeto, isto , no seja um banco de dados ou tabela criados nas definies do projeto, o
projetista poder, ainda, clicar com o boto direito do mouse sobre o item sob o qual o novo
mdulo ser colado e selecionar a opo Colar presente no menu pop-up que surgir;

Neste ponto, o novo item ter herdado todas as definies que foram designadas para o item
copiado. Faa as modificaes nas definies do novo item, conforme necessrio. Cabe
ressaltar que os banco de dados e tabelas no possuem um clipboard comum com os mdulos
da rvore de projeto. Assim sendo, poder ser efetuada, por exemplo, a cpia do banco de
dados e de um mdulo da rvore ao mesmo tempo.

5.7.5

Apagando um mdulo na rvore


Para apagar um mdulo existente na rvore do projeto, proceda da seguinte maneira: selecione
o mdulo que deseja apagar, clicando o mouse sobre o mesmo;
Pressione SHIFT+DEL ou clique sobre o boto de apagamento existente na barra de
ferramentas, caso esta esteja presente, ou, ainda, clique com o boto direito do mouse sobre o
mdulo, selecionando a opo "Apaga o mdulo selecionado" existente no menu pop-up que
surgir;

2007 GAS Tecnologia

Captulo 5 - Operando o GAS

137

Confirme, quando solicitado, o apagamento do mdulo, clicando no boto Sim.


Observe que a retirada de um mdulo na rvore implica tambm, por conseqncia, na retirada
de todos os mdulos que estejam a ele subordinados!

5.7.6

Definio da soluo
A definio da soluo deve, obrigatoriamente, ser feita em primeiro lugar, por ser o ponto onde
definida toda a estrutura do banco de dados da aplicao. O dilogo para captar as informaes
dessas definies aparece em uma interface que varia de duas a cinco abas:

5.7.6.1

Aba estrutura da soluo


Quando voc cria um projeto novo, ou converte um projeto da verso GAS2003 ou anterior, a
soluo criada com apenas um projeto, visto que apenas apartir do GAS2007 que foi adicionado
a opo de se trabalhar com mais de um projeto na aplicao.
Quando se possui apenas um projeto, a definio da soluo apresentada da seguinte forma:

Figura 5.16

Aba Estrutura: A definio da estrutura dos bancos de dados e das tabelas que iro compor a
aplicao a parte mais importante do desenvolvimento do projeto.
A figura acima apresenta a interface que o GAS oferece para a definio do banco de dados:
Os seguintes botes devem ser utilizados nestas definies:

2007 GAS Tecnologia

138

GAS 2007 - Manual do Usurio

boto de gravao

boto de cancelamento

boto de incluso

boto de excluso
Pode-se, ainda, fazer uso das teclas de atalho CTRL-S, CTRL-A, CTRL-I e CTRL-E, assim como
ocorre na aplicao final gerada, para, respectivamente, salvar as alteraes definidas, cancelar as
alteraes efetuadas, incluir novas informaes e excluir informaes j existentes.
Ao clicar em cada uma das listas, a mesma se tornar ativa, e a parte inferior da mesma mudar
apresentado o frame respectivo a seleo de cada lista:
5.7.6.1.1 Definio do banco de dados

Definindo Banco: Primeiramente, o projetista deve definir um nome para o banco de dados a ser
utilizado. Mais de um banco de dados pode ser especificado permitindo que o projetista
informe, por exemplo, o nome de um banco de dados j existente com o qual a aplicao em
definio poder ter algum tipo de integrao. Para cadastrar bancos de dados deve-se
selecionar a lista de bancos de dados e utilizar o boto de incluso.
Aba Geral

Nome: o nome fsico que ser dado ao banco de dados;


Apelido: o nome interno da varivel que ser dado ao banco de dados, no cdigo
gerado. Caso o desenvolvedor tenha o interesse de desenvolver rotinas manuais, este
nome poder ser utilizado para referenciar-se ao banco de dados.
Principal - esta opo dever ser marcada para somente um dos bancos de dados
definidos, de modo a informar ao GAS onde estaro as tabelas especiais para

2007 GAS Tecnologia

Captulo 5 - Operando o GAS

139

gerenciamento de senhas e controles de campos seqenciais que, porventura, venham


a existir nas tabelas.
Multi Empresa - se esta opo estiver marcada, o GAS gerar rotinas na aplicao para
realizar o controle multi empresa para o banco de dados selecionado. Uma vez definido
que o banco de dados ter o controle multi-empresa, ser disponibilizada a opo para
determinar quais tabelas estaro sob esse controle. Pode-se, portanto, trabalhar com
apenas algumas das tabelas de um banco com o controle interno para multi empresa.
O controle multi empresa disponibilizado baseado em uma tabela do banco que ser
escolhida como sendo a tabela de empresas que tambm conter o campo
"Cod~Emp". Esse mesmo campo ser criado de forma automtica para todas as
tabelas que tiverm o controle multi empresa definido. Assim que o usurio tentar
acessar o sistema ser solicitada a empresa que ir utilizar para trabalhar, e todos os
registros inclusos ou lanados recebero de forma automtica o campo "Cod~Emp" de
acordo com essa empresa selecionada.
Gerar log de atividade - se esta opo estiver marcada, o GAS gerar rotinas na aplica
o para criar e manter um arquivo de log para o banco de dados em definio. No
arquivo de log so gravadas diversas informaes - encriptadas - tais como, nome do
usurio, tipo de transao efetuada (execuo de processos pr-definidos, manipulao
de registros, relatrios, etc), data, hora e ainda as informaes dos campos modificados
com seus valores antes e depois das modificaes. Este recurso permite um
gerenciamento perfeito da operao da aplicao. Mediante o acionamento de um
visualizador de log externo (LOGVIEW.EXE) fornecido juntamente com o GAS, o conte
do do arquivo de log pode ser visto a qualquer momento pelo administrador do
sistema, utilizando uma senha master definida no campo Senha.
Senha: Caso tenha marcado a opo de Gerar log de atividade, o campo "senha" ser
habilitado para que seja informado a senha para ser utilizada no arquivo de log a ser
gerado.
Na verso Enterprise do GAS, outros botes sero exibidos dentro desse espao para
permitir a importao da estrutura completa de bancos de dados MDB ou SQL Server.
Podero ser importados, por intermdio dessa opo, quantos bancos de dados o
projetista julgar necessrios, no havendo quaisquer limitaes de quantidade.
Aba tipo db
Tipo de banco de dados: Na verso Enterprise do GAS, o projetista poder selecionar o
tipo de banco de dados a ser utilizado - as opes so Access (MDB) via DAO, Access
(MDB) via ADO, SQL Server, Oracle, Firebird ou MySql. Dependendo do banco de
dados escolhido, algumas opes de definio da estrutura aparecero de maneira
diferente. Em uma soluo, possivel definir quais os tipos de bancos de dados a
aplicao poder utilizar. Com esta opo, caso seja definido mais de um banco de
dados, ser criado na aplicao final a possibilidade de escolha, no momento da instala
o, qual o tipo de banco de dados ser utilizado pela aplicao

2007 GAS Tecnologia

140

GAS 2007 - Manual do Usurio

O projetista pode escolher qual ou quais bancos de dados sua aplicao ir funcionar.
Com isto, oferecida a opo de escolha do banco no momento da instalao.
Access: Nas verses anteriores, o GAS j acessava nativamente o banco de dados
Access (jet 3.6), utilizando a forma de conexo pelos componentes DAO. Agora,
para o banco de dados ACCESS oferecido tambm a conexo via componentes
ADO.
SQL Server: O Acesso ao banco de dados SQL Server por aplicaes geradas,
foram mantidos e melhorados nesta verso. O cdigo gerado compativel com
SQL Server 2000/2005. Alm disto, o cdigo gerado perfeitamente compatvel
com as verses gratuitas do SQL Server, conhecida como: SQL Server 2005
Express Edition, e pode ser baixada diretamente no site do fabricante.
Oracle: O Acesso ao banco de dados Oracle por aplicaes geradas, foram
mantidos e melhorados nesta verso. O cdigo gerado compatvel com Oracle
8i/10g. Alm disto, o cdigo gerado perfeitamente compatvel com as verses
gratuitas do Oracle, sendo ela: Oracle 10g Express Edition, e pode ser baixada
diretamente no site do fabricante.
Firebird: Implementado nessa verso o acesso nativo ao banco de dados Firebird.
Esta implementao foi realizada tomando-se como base a verso 2.0 (Release
Candidate 2) devido a vrias caractersticas presentes nessa verso que no
existem na verso 1.5. Para maiores detalhes sobre o projeto Firebird 2.0, acesse o
site do desenvolvedor (http://www.firebirdsql.com). O driver utilizado para conexo
o Firebird ODBC-JDBC v. 2.0.0.138. Para maiores detalhes sobre o projeto Firebird
ODBC-JDBC acesse ao site do desenvolvedor (http://www.praktik.km.ua/).
MySQL: Tambm implementado nessa verso o acesso nativo ao banco de dados
MySQL. A implementao foi realizada tomando-se como base a verso 5.0. O
driver utilizado para conexo o MyOleDb v.3.9.
Acesso via Internet - na verso Enterprise do GAS, o projetista poder utilizar-se dessa
opo para habilitar o uso do banco SQL Server ou Oracle via Internet. Para
estabelecer o acesso em questo, bastar ser informado aplicao o IP ou host no
qual o banco de dados se encontra. Opes para script - na Verso Enterprise do GAS,
o projetista tem a sua disposio, oferece opes avanadas para personalizao do
script, as quais para alguns bancos de dados interessante a sua definio, de acordo

2007 GAS Tecnologia

Captulo 5 - Operando o GAS

141

com o configurado em uma base de dados criada ou a ser criada.


Conexo - na verso Enterprise do GAS, o projetista poder determinar manualmente a
string de conexo ao banco SQL Server ou Oracle, caso no queira utilizar-se da string
montada automaticamente pelo GAS. A string de conexo a ser determinada deve
obedecer o padro a seguir:
Para definio de usurio e senha:
Provider=SQLOLEDB.1;Persist
Security
Info=False;DRIVER={Sql
Server}
;SERVER=NOME_DO_SERVIDOR; uid=NOME_DO_USUARIO ;pwd=SENHA; DATAB
ASE=NOME_DO_BANCO; TRUSTED_CONNECTION=NO
Para assumir login da rede:
Provider=SQLOLEDB.1;Persist
SERVER=NOME_DO_SERVIDOR
TRUSTED_CONN ECTION=YES

Security
Info=False;DRIVER={Sql
Server};
;DATABASE=
NOME_DO_BANCO;

Aba Projetos:

Projetos do banco de dados - Esta opo estar disponvel apenas se a soluo


possuir mais de um banco de dados e tambm mais de um projeto. Se esta condio
for atendida, o projetista poder definir quais os projetos (aplicaes) utilizaram o banco
de dados selecionado. Esta opo poder ser definida para cada banco de dados
adicionado a soluo.
Aba Descrio:

2007 GAS Tecnologia

142

GAS 2007 - Manual do Usurio

Descrio do banco de dados - digite informaes sobre o banco de dados em defini


o para que sejam utilizadas na documentao da aplicao, que gerada pelo GAS.
5.7.6.1.2 Definio das tabelas

A seguir, o projetista deve cadastrar as tabelas que iro compor o banco de dados selecionado.
Para cadastrar uma tabela, basta clicar na lista de tabelas, clicar sobre o boto de incluso e informar
o seu nome e apelido. Se desejar, o projetista poder tambm digitar um texto descritivo da tabela
que est sendo criada para que seja inserido na documentao do projeto. Se a tabela que est
sendo definida for uma tabela do tipo parmetro, esta opo dever ser assinalada nesta janela
(vide Glossrio). Informados esses dados, o projetista poder pressionar o boto de gravao para
salvar as informaes.
1 - Permitir incluso em consulta: Por opo do projetista, caso esta opo esteja marcada,
quando for construido uma consulta, ser possivel efetuar a incluso de um novo registro.
2 - Permitir alterao em consultas: Por opo do projetista, caso esta opo esteja marcada,
quando for construido uma consulta, ser possivel efetuar a alterao de um registro existente.
3 - Permitir Excluso em consultas: Por opo do projetista, caso esta opo esteja marcada,
quando for construido uma consulta, ser possivel efetuar a excluso de um registro existente.
4 - Tipo empresa: Com esta opo marcada, a tabela ser tratada com uma tabela de controle
de empresas. Esta tabela ser utilizada para cadastrar os registros que o usurio quiser utilizar como
registro das empresas na entrada do programa.
5 - Multi empresa: Com esta opo marcada, esta tabela ter o controle de empresa em cada
registro cadastrado.
6 - Invisivel: Com esta opo marcada, a tabela no ser apresentada ao usurio final.

2007 GAS Tecnologia

Captulo 5 - Operando o GAS

143

5.7.6.1.3 Definio dos campos

Uma vez cadastrada uma tabela, o projetista dever definir a sua estrutura. Para isto, deve
selecionar, na lista de tabelas, a tabela a ser definida. A seguir, dever clicar na lista de campos e
adicionar o campo, clicando sobre o boto de incluso.

Figura 5.17

Quando um novo campo adicionado tabela, o dilogo da figura acima apresentado para
permitir a definio deste campo. Neste momento, o projetista dever fornecer as seguintes
informaes:
Nome do campo
Esta informao se constitui na identificao do campo dentro do banco de dados. O nome do
campo pode conter espaos, acentos e outros caracteres. Alguns caracteres, no entanto, no
podero constar do nome do campo, pois so utilizados no cdigo fonte a ser gerado, como, por
exemplo, colchetes, exclamao, ponto, etc., sendo vetados automaticamente pelo GAS no momento
da digitao. Os projetos do GAS so dicionarizados, significando que os nomes dos campos
correspondentes em tabelas diferentes tm de ter o mesmo nome. Por exemplo, o campo Cdigo do
Fornecedor em uma tabela de fornecedores tem de ser referenciado com este nome em todas as
tabelas onde venha a aparecer dentro do banco de dados. A contra-partida que, quando o
projetista necessitar alterar o nome de um campo ou qualquer um dos seus atributos, o GAS faz
automaticamente todas as alteraes necessrias nas demais tabelas definidas no projeto. Por esta
razo, caso o novo campo j exista em alguma outra tabela definida no projeto, o projetista poder
selecionar o campo desejado, ao invs de digitar suas informaes. Com isto, todas as demais
informaes como tipo, tamanho, mscara, etc., so automaticamente capturadas, poupando o
tempo precioso do projetista.
Ttulo amigvel
Ao contrrio do campo Nome, esta informao se constitui na identificao do campo para o
usurio final. O ttulo amigvel utilizado no processo de formatao da tela de uma janela de
2007 GAS Tecnologia

144

GAS 2007 - Manual do Usurio

dados. Para o usurio final, essa informao exibida via janela de dados, mesmo quando esta
visualizada na forma de grid. Para habilitar a utilizao dos ttulos amigveis, o projetista dever
marcar a opo Usar ttulos amigveis na aba Miscelnea.
Tipo do campo
Ao informar o tipo do campo, o projetista poder utilizar os tipos de campos normais do Visual
Basic ou, ainda, os tipos de campos intrnsecos que o GAS oferece, como, por exemplo, Multimdia,
Lista Interna, Rotativo, Optativo, CPF, CGC, CEP, UF, Hora, Fone, Fone com DDD, E-Mail,
WebPage, Carto de Crdito e Cdigos de barra diversos. Para definir um tipo de campo, basta
capturar da lista o tipo desejado. Se selecionar um dos tipos intrnsecos, o GAS disponibilizar
automaticamente todos os demais atributos do tipo de campo selecionado. Caso seja selecionado o
tipo de campo UF, o GAS preencher automaticamente o item "Lista" com todas as Unidades da
Federao, possibilitando que o usurio do aplicativo final gerado utilize uma lista com todas as
possibilidades. Se um campo j estiver posicionado na janela de dados e o seu tipo for alterado, em
alguns casos, ele ir desaparecer da tela, aps um aviso do GAS. Isto se deve ao fato de que o tipo
de campo est diretamente relacionado com o tipo de objeto disponibilizado na tela. Por exemplo, um
campo do tipo caractere alterado para lgico ir desaparecer porque o primeiro usa uma textbox e o
outro usa uma checkbox.
Lista
Esta informao s ser solicitada se o projetista tiver selecionado os tipos de campos Lista
Interna ou Optativo. Neste caso, esta informao dever ser preenchida com as opes, separadas
pelo caractere "|" (pipe), como, por exemplo: Casado|Solteiro|Vivo|Outros.
Apelido
Como o prprio nome indica, o apelido (ou alias) uma maneira abreviada de se referir ao campo.
O GAS sugere automaticamente um apelido para o campo em definio, o que pode ser,
naturalmente, modificado pelo projetista, se ele assim o desejar. O apelido ser utilizado dentro dos
programas fontes gerados para efetuar referncias a este campo.
Tamanho
Esta informao passada ao GAS para a criao, nos programas fontes, de rotina para controlar
a quantidade mxima de dgitos ou caracteres que podero ser digitadas no campo.
Decimais
Caso o campo em definio seja do tipo numrico, o projetista poder especificar uma quantidade
de casas decimais a ser considerada para este campo. Se for especificado um nmero de casas
decimais maior do que 0, no tamanho j estar computado a posio da vrgula.
Mscara
Os programas fontes gerados pelo GAS so providos de um mdulo (classe) para controlar os
caracteres que esto sendo digitados no campo pelo usurio final. Este controle efetuado segundo
a mscara que estiver sendo aqui definida. As mscaras possveis para os campos esto detalhadas
no tpico de mesmo nome existente no Glossrio deste manual.

2007 GAS Tecnologia

Captulo 5 - Operando o GAS

145

Seqncia
Se o projetista dispor nesta informao um nmero diferente de zero, este campo ser
incrementado automaticamente na quantidade especificada, quando for digitado na aplicao final.
Os campos que podem se autoincrementados so os do tipo numrico, data ou, ainda, caractere
com mscara para dgitos numricos.
Descrio para empresa
Define se o campo ser usado para armazenar o nome da empresa. Esta opo estar disponvel
se o banco estiver marcado a opo "Multi empresa".
Permitir Nulo
Define se o campo permitir que sejam gravados valores nulos. Muito utilizado em integridades.
Valor Default
Permite criar um valor default (padro) para o campo. O valor default registrado no banco de
dados, e ser gravado quando nenhum valor for enviado ao campo.
Invisvel
O projetista dever marcar esta opo se desejar criar um campo invisvel dentro da tabela em
definio. Um campo invisvel , normalmente, criado com o objetivo de servir de alvo para
processamentos por meio de outras tabelas. Um campo com atributo invisvel nunca poder ser visto
por usurios, diferentemente da visibilidade estabelecida por condio, a ser vista mais adiante neste
captulo, nos tpicos Definindo uma janela de dados/Definindo atributos de campos, na qual a
visibilidade est em funo de uma condio que analisada para cada registro corrente e pode
envolver o usurio, campos de registros de tabelas relacionadas, etc.
Ajuda
Se o projetista desejar apresentar ao usurio da aplicao algum tipo de ajuda especfica (dica ou
hint) para o campo, dever informar a mensagem desejada.
Descrio
Digite informaes sobre o campo em definio para que sejam utilizadas na documentao da
aplicao, que gerada pelo GAS.
Diversos campos podero ser criados para uma tabela. Sempre que terminar a informao para
um campo, o projetista dever clicar sobre o boto de gravao para salvar as informaes digitadas.
Informados todos os campos, o projetista ainda poder trocar a sua ordem dentro da tabela. Para
isto, dever selecionar o campo desejado e utilizar as setas qua aparecem direita da lista da figura
abaixo, para moviment-lo para cima ou para baixo, dentro da lista, alterando a sua posio ou
ordem dentro da tabela.

2007 GAS Tecnologia

146

GAS 2007 - Manual do Usurio

Figura 5.18

5.7.6.1.4 Definio dos ndices

Aps definir as tabelas, o projetista poder tambm definir os seus ndices. A definio de ndices
efetuada de maneira semelhante definio de tabelas e campos, por meio do dilogo da figura
abaixo. Basta clicar sobre a lista de ndices e sobre o boto de incluso. Depois, basta fornecer as
informaes adicionais:

Figura 5.19

Nome
Este campo representa a identificao do ndice dentro dos programas fontes gerados. O nome
do ndice pode conter espaos, acentos e outros caracteres. Alguns caracteres, no entanto, no
podero constar do nome do campo, pois so utilizados no cdigo fonte a ser gerado, como, por
exemplo, colchetes, exclamao, ponto, etc., sendo vetados automaticamente pelo GAS no momento
da digitao.
Ttulo amigvel
Ao contrrio do campo Nome, esta informao se constitui na identificao do ndice para o
usurio final. Durante a operao da aplicao final, o usurio poder selecionar o ndice, por meio
deste nome, a ser utilizado na navegao dentro da tabela. Para habilitar a utilizao dos ttulos
amigveis, o projetista dever marcar a opo Usar ttulos amigveis na aba Miscelnea.
Campos
A partir desta lista, podem ser selecionados os campos que constituiro a chave para o ndice em
definio. Uma chave pode ser composta de diversos campos.

2007 GAS Tecnologia

Captulo 5 - Operando o GAS

147

Primrio
O projetista dever marcar esta opo, se este ndice de chave primria. Em uma tabela,
somente um ndice primrio poder ser definido, no sendo, no entanto, obrigatrio. Porm, se um
ndice primrio for definido, este, obrigatoriamente, dever ser nico (o GAS marca automaticamente
a opo seguinte).
nico
O projetista dever marcar esta opo se a chave do ndice em definio tem este tipo de atributo.
Diversos ndices podem ser definidos como nicos para uma tabela.
Decrescente
No caso de utilizao de banco de dados do Access (MDB), para cada campo selecionado na lista
de campos chaves, o projetista poder marcar se a ordem para o campo ser crescente ou
decrescente. Deste modo, podem ser criadas chaves para os ndices com diversos campos e
direcionamentos diferentes.
Tipo de ndice
Esta opo e a seguinte (FillFactor) s estaro disponveis no caso de utilizao de banco de
dados SQL Server (verso Enterprise do GAS). O projetista dever selecionar uma das opes:
CLUSTERED - Cria um objeto no qual a ordem fsica dos registros a mesma da ordem do
ndice primrio criado e o nvel leaf do ndice (fundo) contm os dados reais dos registros.
NONCLUSTERED - Cria um ndice que especifica a ordem lgica de uma tabela. Com este tipo
de ndice, a ordem fsica dos registros no a mesma da sua ordem indexada. O nvel leaf de um
ndice desse tipo contm registros do ndice. Cada registro de ndice contm o valor da chave
NONCLUSTERED e um ou mais localizadores de registros que apontam para o registro da tabela.
Fillfactor
Esta opo especifica um percentual que indica quanto o SQL Server deve encher o nvel leaf de
cada pgina do ndice, durante a sua criao. Quando uma pgina de ndice fica cheia, o SQL
Server precisa ter um tempo para dividir a pgina do ndice a fim de abrir lugar para novos registros,
o que muito dispendioso. Para uma atualizao intensiva de tabelas, um valor de FILLFACTOR
bem estabelecido leva a um ganho de performance.
Invisvel
Possibilidade de definir, em tempo de projeto, um ndice, entretanto, deixa-lo como invisivel, para
que o usurio no o veja em na opo de procura.
Ordem de ndices
Pode-se definir, em tempo de projeto, a ordem que os ndices vo aparecer na janela de procura e
na lista de ndices da aplicao gerada.

2007 GAS Tecnologia

148

GAS 2007 - Manual do Usurio

5.7.6.1.5 Definio das integridades

Caso seja necessrio, relaes de integridade 1-N (pai/filhos) e 1-1 (referncias) podem ser
definidas entre as tabelas. Essas relaes so utilizadas para efetuar a integridade entre tabelas do
sistema bem como para efetuar integridades de validaes onde certo tipo de informao s pode
ser digitada em uma tabela segundo a sua existncia em outra. Uma relao inserida no projeto da
mesma forma que feita para as definies explicadas nos itens anteriores, observando que a tabela
bsica a ser considerada no relacionamento a tabela que estiver selecionada na lista de tabelas. A
partir do dilogo da figura 5.20, clique sobre a lista de relaes e sobre o boto de incluso, inserindo
as demais definies para vincular as tabelas:

Figura 5.20

Ttulo amigvel
Informe uma informao que identifica esta relao de integridade dentro do projeto.
Opes 1-1 e 1-N
Selecione o tipo de relao a ser efetuada.
Tabela/Campos estrangeiros
Escolha a tabela a ser relacionada e um de seus campos para sincronizar com a tabela base.
Campos da tabela base
Selecione um dos campos para sincronismo com o campo da tabela estrangeira. Para efetivar o
estabelecimento da integridade entre os campos selecionados, clique sobre o boto de concatenar
exibido a seguir: boto para concatenar definies Se existir mais de um campo definindo a
integridade, selecione os outros campos e pressione novamente este boto acima. O boto limpar,
mostrado a seguir, pode ser utilizado para recomear a seleo dos campos da relao de
integridades. boto para limpar definies Para o estabelecimento de uma integridade, voc deve
levar em considerao os seguintes aspectos:
neste tipo de relacionamento, os campos dastabelas bsica e estrangeira a serem ligadas no
precisam ter os mesmos nomes, mas devem apresentar as mesmas caractersticas (atributos).
a tabela estrangeira ou a tabela bsica da integridade dever ter ndice primrio ou nico com os
campos que compem a integridade.
se a integridade for 1-1, a tabela/campo estrangeiro dever ter um ndice primrio ou nico pelos

2007 GAS Tecnologia

Captulo 5 - Operando o GAS

149

campos selecionados para constituir a integridade. Tambm, a integridade deve ser efetuada no
sentido da tabela original para a tabela consultada, como, por exemplo, de Sadas de produtos para
a Tabela de produtos.
se a integridade for do tipo 1-N, a tabela bsica da integridade (tabela selecionada na lista
Tabelas) dever ter um ndice primrio ou nico pelos campos selecionados para constituir a
integridade. Tambm, a integridade deve ser efetuada no sentido da tabela me para a tabela filha,
como, por exemplo, de Notas para Itens de Notas.
Tipo de Integridade
Para todos os bancos que suportarem tal recurso, possvel definir o tipo de integridade, para
que seja construida utilizando trigger ou constraint.
5.7.6.1.6 Sistemas multi-empresa

Na definio da estrutura dos bancos de dados o projetista pode realizar o controle multi empresa
para quaisquer bancos de dados.

Uma vez definido que o banco de dados ter controle multi- empresa, ser disponibilizada a op
o para determinar quais tabelas estaro sob esse controle.

Pode-se, portanto, trabalhar com apenas algumas das tabelas de um banco com o controle
interno para multi-empresa. O controle multi empresa disponibilizado no GAS baseado em uma
tabela do banco que ser escolhida como sendo a tabela de empresas que tambm conter o campo
"Cod~Emp". Esse campo dever ter a seguinte opo marcada:

2007 GAS Tecnologia

150

GAS 2007 - Manual do Usurio

Esse mesmo campo ser criado de forma automtica para todas as tabelas que tiverem o controle
multi empresa definido. Assim que o usurio tentar acessar o sistema ser solicitada a empresa que
ir utilizar para trabalhar:

Todos os registros inclusos ou lanados recebero de forma automtica o campo Cod~Emp de


acordo com a empresa selecionada;
5.7.6.2

Aba icones da soluo


O GAS permite ao projetista definir todos os cones a serem utilizados na aplicao final. Por
intermdio de uma interface amigvel, representada na figura a seguir, o projetista poder visualizar
uma estrutura com a indicao onde cada cone ser utilizado.

Para efetuar a troca de um cone selecionado, basta proceder conforme segue:

2007 GAS Tecnologia

Captulo 5 - Operando o GAS

151

Selecione, na rvore, o cone que deve ser trocado;


Clique sobre o boto Muda cone;
Escolha o cone desejado a partir do dilogo apresentado, confirmando sua troca.
O boto Restaura serve para restabelecer as mudanas que tenham sido efetuadas, retornando
as configuraes "de fbrica" ou default.
Ao alterar quaisquer um dos cones da aplicao, o projetista poder visualizar o cone
selecionado no painel de preview apresentado na tela de seleo de arquivo que se abrir,
facilitando assim sua identificao. A opo "Zoom" promover o redimensionamento da figura
para o tamanho exato do painel de preview.
O projetista ainda poder utilizar o Editor de cones do GAS para elaborar cones que
melhor atendam s suas necessidades. Para um melhor detalhamento da sua utilizao,
consulte o tpico Utilizando o Editor de cones 238 , presente neste captulo.
O boto Restaura serve para restabelecer as mudanas que tenham sido efetuadas,
retornando as configuraes "de fbrica" ou default.
O projetista ainda tem a opo de definir o diretrio de figuras do projeto, bastando
indic-lo no campo identificado como "Diretrio para figuras do projeto" mostrado na figura
acima. Vrios projetos podero compartilhar o mesmo diretrio de figuras, o que permite manter
uma melhor padronizao dos sistemas desenvolvidos, alm de evitar a necessidade de replicar
esse diretrio para um dos projetos existentes. .
Se a opo de botes estilo Internet, na aba intitulada Miscelnea, estiver configurada, a lista
de cones apresentar tambm cones marcados com (Hab) - para serem utilizados em estado
normal - e com (Atv) - a serem utilizados quando o mouse estiver sobre os botes. Assim, os
cones utilizados marcados com (Atv) devem ser desenhados com cores mais claras, oferecendo
o efeito de "iluminao" do boto.
5.7.6.3

Aba dados genericos


Quando uma soluo tem mais de um projeto, algumas abas a mais so apresentadas na
definio da soluo.

2007 GAS Tecnologia

152

GAS 2007 - Manual do Usurio

A soluo pode tambm ser um aplicativo, tipo um "centralizador" ou "gerente" onde ser
possivel atravs dele acessar as aplicaes. Por este motivo, apresentado a aba de dados
genricos, onde as informao sobre os dados constante no aplicativo so solicitados.
Titulo: Informe um ttulo para a aplicao, que ser utilizado como ttulo do formulrio principal
(MDI), quando a aplicao estiver sendo executada.
Nome executvel(EXE): Informe um nome para o programa executvel da aplicao, sob o qual
ela ser ativada dentro do ambiente Windows.
Nome da empresa - informe o nome da empresa ou softwarehouse que desenvolve este projeto.

Analista/projetista - informe o nome do projetista.


Email: Informe o endereo de email do projetista\desenvolvedor. Este endereo utilizado caso
ocorra algum erro na aplicao, quando o usurio clicar no boto para "Notificar o
desenvolvedor".
Descrio do projeto: Digite informaes sobre o projeto para que seja utilizada na documenta
o, gerada pelo GAS.

2007 GAS Tecnologia

Captulo 5 - Operando o GAS

5.7.6.4

153

Aba miscelnia

Figura 5.21

Mdulos extras: O GAS permite ao projetista adicionar, a um projeto, mdulos (.BAS),


formulrios (.FRM) e classes (.CLS), que exibida na figura a seguir. Por exemplo, o projetista
poder adicionar a um projeto do GAS um mdulo no qual j tenha escrito diversas funes e
procedures para outras aplicaes. Formulrios tambm podero ser adicionados pelos
mesmos motivos ou, ainda, para aproveitamento de interfaces. O reaproveitamento de classes
tambm poder ser efetuada.
Quando um item .FRM, .BAS ou .CLS inserido no projeto, o GAS faz uma cpia deste
item para o diretrio do projeto. No caso de insero de formulrio, qualquer arquivo .FRX a
ele associado, que porventura exista, tambm ser copiado;
Objetos ou controles externos disponibilizados sobre formulrios possuem referncias que
so dispostas pelo Visual Basic no arquivo de definio do projeto .VBP. Se estiver
adicionando um formulrio a um projeto do GAS, certifique-se de que este formulrio
contenha somente controles nativos do Visual Basic, pois as referncias a controles externos
no sero dispostas no arquivo .VBP gerado pelo GAS;
A nica providncia do GAS com respeito a mdulos adicionais a insero de sua
referncia no arquivo de definio do projeto, de extenso .VBP, para ser carregado pelo
Visual Basic;
Diferentemente de formulrios avulsos e formulrios existentes, que podem ser inseridos
na rvore do projeto para figurar opcionalmente no menu (vide tpico Integrando um
formulrio existente ao projeto 229 ), os itens adicionais que so aqui anexados ao projeto

2007 GAS Tecnologia

154

GAS 2007 - Manual do Usurio

no aparecem no menu da aplicao. Qualquer chamada a funes ou apresentao de


formulrios na aplicao de responsabilidade exclusiva do projetista, que dever programar
esses eventos na propriedade "Ao no clique" de um boto j existente na barra de
ferramentas ou de um outro boto qualquer que seja disponibilizado na barra ou nas telas
para este fim;
Caso haja modificaes nesses itens fora do diretrio da aplicao, o projetista dever ter
o cuidado de copi-los novamente para o diretrio da aplicao, para atualiz-los. Em se
tratando de formulrio (.FRM), deve-se copiar tambm arquivo .FRX a ele associado, caso
exista.
Referncias: O GAS permite ao projetista adicionar qualquer controle externo a seu projeto, seja
ele criado pela GAS, por ele mesmo ou por terceiros. Isto abre um grande leque de
possibilidades para uso e incluso de itens anteriormente no suportados pelo GAS:
HookMenus, componentes de msicas, componentes de relatrios, grids, trees, progressbar...
Senha default da aplicao: Neste frame o projetista poder definir uma senha padro, que ser
utilizado em todos os projetos da soluo. Essa opo d ao projetista a possibilidade de
determinar o primeiro usurio e senha com o qual ser possvel acessar o aplicativo gerado.
Caso o projetista queira, aps instalado o aplicativo final gerado, modificar a senha ou mesmo
excluir o usurio aqui definidos, bastar acessar o plano de senhas daquele aplicativo. Com a
opo "usar plano de senhas" marcada, a soluo utilizar o plano de senhas para centralizar o
cerceamento e liberaes definidas no plano de senhas. . Para maiores detalhes sobre a
utilizao do plano de senhas, consulte o tpico Operando o plano de senhas 416 presente no
Captulo 11 - Utilizando a aplicao gerada 401 .
Chave encriptao: Em uma soluo multi-projetos, possvel definir utilizar uma chave de
encriptao que ser utilizada em todas as aplicaes.
Default para procura: Selecione uma das opes de operador para a execuo das pesquisas
de registros na aplicao final, quando o usurio desejar procurar registros nas tabelas.
Opes de gerao da aplicao: Dentro deste frame, o projetista dever marcar as opes
para a gerao da aplicao:
Comentrios
Se o projetista marcar esta opo, os programas fontes gerados pelo GAS contero
comentrios elucidativos linha a linha.
Deixar na senha
Marcando esta opo, os programas fontes contero uma rotina que permitir que a
aplicao, ao ser abandonada pelo usurio, fique estacionada na tela de solicitao de senha
(caso esteja provida deste recurso). Esta opo til para aplicaes de ponto de vendas
(PDV), onde diversos vendedores utilizam a mesma estao da rede.
Sistema multiusurio
Marcando esta opo, o GAS criar nos programas fontes todos os controles necessrios

2007 GAS Tecnologia

Captulo 5 - Operando o GAS

155

aos bloqueios de tabelas e registros, onde se fizer necessrio.


Auto-incrementar verso
Se selecionada, essa opo provoca, a cada nova gerao dos programas fontes, o
incremento automtico da release (nmero de reviso) do projeto, viabilizando ao projetista
um melhor controle da verso do mesmo. Para maiores informaes sobre o controle de
verso do projeto, consulte o Captulo 5I - Gerao de programas fontes.
Cdigo nativo
Se esta opo estiver marcada, o GAS passar ao Visual Basic a informao de que a
compilao do projeto para ser feita gerando cdigo nativo. Se estiver desmarcada, o
cdigo gerado nas compilaes ser P-Code ou pseudo-cdigo. Deve-se observar que a
gerao de cdigo nativo pelo Visual Basic mais demorada, criando cdigo
consideravelmente maior, ainda que mais rpido e eficiente.
Usar ttulos amigveis
Se marcada, essa opo habilitar o uso do recurso de ttulo amigvel para os campos,
tabelas endices. Esse recurso facilita a identificao desses itens quando a aplicao estiver
sendo executada pelo usurio final, inclusive em grids (consultas, etc).
Hits: O projetista pode definir se na sua aplicao ter a ajuda on-line sobre cada campo que o
usurio posicionar o cursor.
Estilo balo
Caso esteja selecionada, essa opo habilitar o uso de ajuda (hint) no formato de balo
para os campos, conforme visualizado na figura abaixo.

Figura 5.22

Cor frente e fundo


O projetista poder ainda determinar as cores de frente (texto) e fundo para os hints,

2007 GAS Tecnologia

156

GAS 2007 - Manual do Usurio

bastando alter-las apropriadamente.


Endentao: Informe a quantidade de caracteres para endentar os programas fontes, ou seja, a
quantidade de espaos a ser utilizada para formatar as estruturas da linguagem Visual Basic.
5.7.6.5

Criando uma tela inicial para a aplicao


comum, nas aplicaes Windows, a utilizao de uma janela mais elaborada, com uma imagem
ligada ao contexto da aplicao para ser exibida ao usurio antes que aparea a sua janela principal.
Mais do que uma simples tela de apresentao, na verdade, uma tcnica ou artifcio chamado
splash screen utilizado para permitir a carga inicial da aplicao, em background, o que, s vezes,
pode ser demorada devido abertura de bancos de dados, carga de formulrios, configuraes, etc.,
expondo algo agradvel para o usurio. A utilizao desta tcnica passa a impresso de que a
aplicao instantaneamente carregada assim que a tela inicial desaparece. Uma imagem pode ser
utilizada como tela de apresentao ou splash screen da aplicao, sendo definida por meio da aba
intitulada "Tela Inicial", conforme mostrado na figura abaixo.

Figura 5.24
5.7.6.5.1 Inserindo uma nova figura

Para inserir uma figura na tela inicial basta clicar sobre o boto a seguir: boto para inserir figura
Escolha uma figura que esteja gravada em um diretrio qualquer, por intermdio de um dilogo
padro do Windows.

Boto para inserir figura


Ao definir a tela inicial, o projetista poder visualizar a imagem selecionada no painel de preview
apresentado na tela de seleo de arquivo que se abrir, facilitando assim sua identificao. A opo
"Zoom" promover o redimensionamento da figura para o tamanho exato do painel de preview.

2007 GAS Tecnologia

Captulo 5 - Operando o GAS

157

O projetista ainda tem a opo de utilizar um diretrio de figuras nico para todos os projetos, o
que permite manter uma melhor padronizao dos sistemas desenvolvidos, alm de evitar a
necessidade de replicao desse diretrio para cada um dos projetos existentes. Esse recurso
especialmente vlido para o caso do projetista optar por utilizar a mesma tela inicial em todos os
projetos. Para definir o diretrio unificado de figuras para os projetos, basta indic-lo no campo
identificado como "Diretrio para figuras do projeto", disponvel na aba cones da Definio do
projeto.
5.7.6.5.2 Removendo uma figura

Para remover a figura, basta clicar sobre o boto a seguir e confirmar a sua remoo.

Boto para retirar figura


5.7.6.5.3 Alterando o tamanho da tela inicial

Para alterar o tamanho da tela inicial, basta utilizar a barra de rolagem para estabelecer o
percentual em relao ao tamanho total da tela que dever ocupar.
5.7.6.5.4 Alterando a cor e o aspecto da moldura

O aspecto da moldura utilizada para apresentar a tela inicial pode ser configurada, alterando-se os
valores das opes:
Chanfro interno
Chanfro externo
Largura do chanfro
Largura da borda
O boto a seguir serve para apresentar o dilogo de escolha de cores para a moldura: boto para
ajuste de cor da moldura

boto para ajuste de cor da moldura

2007 GAS Tecnologia

158

5.7.6.6

GAS 2007 - Manual do Usurio

Aba histrico

O projetista ter agora como verificar o histrico de todas as geraes que foram feitas para um
projeto, contendo a informao do nmero da verso, data e hora de gerao, verso e release do
GAS utilizada para a gerao, alm de um comentrio descrito pelo prprio projetista. no momento
da gerao daquela verso;

5.7.6.7

Aba instalao
A partir do GAS2007, o prprio GAS oferece opo de gerar um aplicativo que voce poder
utilizar para instalar seu programa em uma outra mquina, ou fazer a distribuio do mesmo.

2007 GAS Tecnologia

Captulo 5 - Operando o GAS

159

Habilitar gerao de instalador: Com esta opo marcada, o GAS ir criar um aplicativo que
poder ser utilizado para distribuir seu aplicativo, para os casos de instalao e de atualizao
tambm.
Na aba Instalao, aps habilitar a gerao do instalador, o projetista tambm tem disponvel uma
rvore, e de acordo com o item selecionado, ser exibido os campos para o devido preenchimento:
Dados para instalao:
Nome do instalador: o nome que o projetisa ir dar ao aplicativo de instalao. Em geral
se utilizar Setup.exe, entretanto, o projetista pode definir o nome que lhe for mais
conveniente.
Pasta para instalao: a pasta onde o aplicativo ser instalado. Em geral se utiliza a pasta
"arquivos de programas", e ainda com uma pasta com o nome da empresa. Por exemplo o
GAS, instalado na pasta: "c:\arquivos de programas\GAS informtica\GAS2007".
Grupo do menu iniciar: Deve ser informado qual o grupo de aplicativos ser criado. Por
exemplo, o GAS utiliza a pasta GAS2007.
Arquivos texto com informaes:

2007 GAS Tecnologia

160

GAS 2007 - Manual do Usurio

Inicio do instalador: Texto que ser exibido no inicio da instalao


Fim do instalador: Texto que ser exibido no final da instalao
Licena de uso: Texto que ser exibido como licena de uso do seu software
Figuras utilizadas no instalador:

2007 GAS Tecnologia

Captulo 5 - Operando o GAS

161

Figura lateral: Figura que ser mostrada na lateral esquerda da instalao.


Figura superior: Figura que ser mostrada na parte superior da instalao.
Figura splash: Figura que ser mostrada no inicio da instalao, como tela de abertura.
Arquivos adicionais:

2007 GAS Tecnologia

162

GAS 2007 - Manual do Usurio

Caminho do do arquivo: Local onde se encontra o arquivo a ser adicionado.


Destino da instalao: Local onde ser instalado o aplicativo ao rodar o instalador.
Botes de opes: utilize os botes para incluir, gravar, cancelar a gravao ou excluir uma
informao.
Atalhos criados na instalao:

2007 GAS Tecnologia

Captulo 5 - Operando o GAS

163

Atalho do Desktop: Cria um atalho no Desktop na instalao.


Atalho do Quick Launch: Cria um atalho na barra de acesso rpido do windows, conhecida
como Quick Launch.
Atalho para o Help: Adiciona um atalho no grupo do menu iniciar para o Help do projeto.
Atalho para desistalao: Adiciona um atalho no grupo do menu iniciar para a desistalao
do aplicativo.
Janela de fundo:

2007 GAS Tecnologia

164

GAS 2007 - Manual do Usurio

Mostrar janela: Cria o instalador com uma janela de fundo.


Mostrar titulo da janela: Mostra o ttulo da instalao dentro da janela de fundo.
Iniciar maximizado: Inicia a janela de instalao em formato maximizado.
Idioma da instalao:

2007 GAS Tecnologia

Captulo 5 - Operando o GAS

Portugus: Cria a instalao no idioma Portugus.


Ingls: Cria a instalao no idioma Ingls.
Espanhol: Cria a instalao no idioma Espanhol.
Sistemas Operacionais:

2007 GAS Tecnologia

165

166

GAS 2007 - Manual do Usurio

Selecione para qual sistema operacional esta instalao ser compatvel. De acordo com o
sistema operacional escolhido, a aplicao poder variar de tamanho, ficando menor ou
maior, visto que alguns dos arquivos so especficos de cada S.O.

5.7.7

Formatao de tela da soluo


Ser possvel formatar uma tela para a soluo, caso seja uma soluo Multi-Projetos. Caso no
seja, esta opo no estar disponivel.
Acessando o menu de formatao de tecla, pressione ALT+T para efetuar a formatao padro da
tela.

5.7.7.1

Gerenciamento de projetos
Alm de gerenciar os projetos, o mdulo de soluo pode ser usado para gerar fontes de um
aplicativo, que controle os outros executveis e as rotinas globais a todos os outros projetos.

2007 GAS Tecnologia

Captulo 5 - Operando o GAS

5.7.8

167

Definio do projeto
A definio do projeto, segue o mesmo padro da definio da soluo, sendo que ela no
apresenta todas as abas disponveis na definio da soluo.

2007 GAS Tecnologia

168

GAS 2007 - Manual do Usurio

Titulo: Informe um ttulo para a aplicao, que ser utilizado como ttulo do formulrio principal
(MDI), quando a aplicao estiver sendo executada.
Nome executvel(EXE): Informe um nome para o programa executvel da aplicao, sob o qual
ela ser ativada dentro do ambiente Windows.
Nome da empresa - informe o nome da empresa ou softwarehouse que desenvolve este projeto.

Analista/projetista - informe o nome do projetista.


Email: Informe o endereo de email do projetista\desenvolvedor. Este endereo utilizado caso
ocorra algum erro na aplicao, quando o usurio clicar no boto para "Notificar o
desenvolvedor".
Descrio do projeto: Digite informaes sobre o projeto para que seja utilizada na documenta
o, gerada pelo GAS.
Aba Miscelnia: Segue o mesmo padro da aba respectiva na definio da soluo: Aba
Miscelnia 153
Aba Tela Inicial: Segue o mesmo padro da aba respectiva na definio da soluo: Aba Tela
Inicial 156
Aba Histrico: Segue o mesmo padro da aba respectiva na definio da soluo: Aba Histrico
158

Aba Instalao: Segue o mesmo padro da aba respectiva na definio da soluo: Aba
Instalao 158

5.7.9

Formatao da tela do projeto

5.7.9.1

Desenhando a barra de ferramentas da aplicao


O GAS disponibiliza na aplicao final uma barra de ferramentas contendo todos os botes e
objetos necessrios ao seu funcionamento. No entanto, se o projetista desejar, poder reconfigur-la
totalmente, por meio do Editor de Recursos que serve tanto para a formatao da barra de
ferramentas quanto para a formatao de telas para as janelas de dados, conforme descrito no tpico
Utilizando o Editor de Recursos, neste manual. Para executar a formatao da barra de
ferramentas, proceda conforme se segue:
Selecione o Ttulo do Projeto (primeiro item que aparece na rvore);
Selecione "Editar/Formatar tela" no menu ou clique sobre o boto de formatao de tela,
existente na barra de ferramentas do GAS, caso esteja sendo mostrada ou, ainda, clique com o
boto direito do mouse sobre o mdulo, selecionando a opo "Formata tela" existente no menu
pop-up que surgir.

2007 GAS Tecnologia

Captulo 5 - Operando o GAS

169

boto para ativar o editor de recursos


Isto ativar o Editor de Recursos do GAS. A janela da figura a seguir apresentada como default
para a formatao da barra de ferramentas da aplicao.

Figura 5.25

Associada a essa janela dever aparecer tambm a janela de Ferramentas da tela, representada
pela figura abaixo. A tecla F4 serve para mostrar e ocultar esta janela.

2007 GAS Tecnologia

170

GAS 2007 - Manual do Usurio

Figura 5.26

Ao formatar a barra de ferramentas da aplicao, o projetista estar, na verdade, definindo no s


a sua funcionalidade como tambm a sua aparncia final. A barra de ferramentas poder estar
alinhada em qualquer posio da janela principal e poder conter os botes que o projetista desejar
oferecer ao usurio, nas posies que julgue conveniente. Usando o Editor de Recursos, o projetista
poder:
Selecionar um controle ou a prpria barra de ferramentas, clicando com o mouse.;
Selecionar mais de um controle de uma s vez, utilizando o clique do mouse com a tecla CTRL
(control) do teclado pressionada;
Designar propriedades para controles selecionados, por meio da lista de propriedades. O
Captulo 13- Propriedades dos objetos de tela trata exclusivamente dessas propriedades;
Alterar a posio de um ou mais controles selecionados, utilizando a funo arrasta e solta
(drag and drop) do mouse ou por meio das teclas CTRL + Setas;
Alterar o tamanho de um ou mais controles selecionados, utilizando o mouse ou as teclas
SHIFT + Setas ou diretamente na lista de propriedades;
Disponibilizar na barra outros controles prdefinidos que no aparecem na barra que
oferecida como default, como, por exemplo, dentre outros, os botes exibidos a seguir, que

2007 GAS Tecnologia

Captulo 5 - Operando o GAS

171

servem para apagar colunas nas grades e para configurao da impressora, respectivamente;

boto para apagar colunas de consultas


boto para configurar impressora.
Disponibilizar, na tela, o controle "Contador de Registros", que apresenta a quantidade de
registros existente em uma tabela ou consulta selecionada na aplicao final. Para utilizar este
objeto, basta inser-lo na barra de ferramentas. Este objeto tem diversas propriedades que
podem ser designadas;
Ateno especial deve ser dispensada propriedade Ttulo deste objeto, que ter que conter,
obrigatoriamente, o caractere # , a ser substitudo pela quantidade de registros existente na
tabela ou consulta, quando a aplicao final estiver sendo executada.
Disponibilizar, na barra, novos botes e objetos, que no sejam pr-definidos pelo GAS,
programando eventos para os mesmos;
Retirar da barra de ferramentas um ou mais controles que estejam selecionados, acessando o
menu "Editar/Apagar", pressionando a hot key SHIFT-DEL ou, mais facilmente, clicando na
barra de ferramentas sobre o boto a seguir. O projetista poder, ainda, clicar com o boto
direito do mouse sobre o mdulo, selecionando a opo "Apaga o mdulo selecionado"
existente no menu pop-up que surgir:
Boto para apagar seleo
5.7.9.2

Estabelecendo uma ao para um boto


Os novos botes criados pelo projetista durante a formatao da barra de ferramentas ou das
janelas de dados no possuem quaisquer aes prprogramadas. J os botes possveis de serem
inseridos na barra de ferramentas da aplicao (aqueles que o GAS oferece) tm funes
prprogramadas geradas pelo GAS, segundo a sua finalidade especfica. Em qualquer desses tipos
de botes, se o projetista desejar, poder elaborar, em sua propriedade "Ao no clique", uma
funo para ser executada da seguinte maneira:
Selecione o boto desejado, que tanto pode ser um novo boto quanto um dos
pr-programados que o GAS oferece;
Selecione a propriedade "Ao no clique" deste boto, na janela Ferramentas da tela,
representado na figura 5.20;
Ative o Editor de Programas e elabore a funo para ser executada.
No caso dos botes normais da barra de ferramentas, que j possuem uma funo
especfica, a rotina que o projetista escrever para associar propriedade "Ao no clique" ser
executada somente se a funo pr-programada for executada com sucesso.

2007 GAS Tecnologia

172

GAS 2007 - Manual do Usurio

Apesar dos aplicativos gerados apresentarem interface MDI, os botes que possuem funes
pr-programadas pelo GAS e presentes na barra de ferramentas do aplicativo final podem ser
disponibilizados livremente nos formulrios do referido aplicativo. Com o GAS, tais botes
prprogramados sero automaticamente habilitados/desabilitados de acordo com o status das
opes de menu/barra de ferramentas do MDI.
No que se refere a chamadas a janela de dados pormeio de uma Ao no clique de boto,
pode-se, inclusive, efetuar as mais diversas filtragens necessrias, de forma que sejam
apresentados somente os dados convenientes.
Em se tratando do boto de abandonar a aplicao (sair), a funo escrita pelo projetista ser
disponibilizada na sub-rotina QueryUnload do formulrio principal, que o penltimo fragmento
de cdigo executado pela aplicao, antes de retornar ao Windows.
5.7.9.2.1 Menus POP-UP em botes

Tambm possvel definir menus popup que sero disparados ao clique de botes de comando.
Para cada menu popup, o projetista pode configurar quantos itens sejam necessrios, com aes
personalizadas;

2007 GAS Tecnologia

Captulo 5 - Operando o GAS

5.7.9.3

173

Colocando um logotipo lateral na janela da aplicao


Um logotipo lateral em cores dgrad com texto, semelhante ao que aparece na figura abaixo,
pode ser disponibilizado em qualquer form definido para a aplicao.

Figura 5.27

Este logotipo implementado apenas ajustando-se as propriedades da janela, agrupadas sob o


ttulo Logotipo:
5.7.9.3.1 Ttulo logotipo

Informe a frase que ser exibida no logotipo esquerda da janela.


5.7.9.3.2 Fonte logotipo

Selecione a fonte a ser utilizada para exibir o ttulo. Somente fontes do tipo true-type podem ser
selecionadas.
5.7.9.3.3 Largura logotipo

Informe a largura a ser aplicada no logotipo.


5.7.9.3.4 Cor incio do logotipo

Selecione a cor inicial para a formao do efeito dgrad do logotipo.


5.7.9.3.5 Cor final do logotipo

Selecione a cor final para a formao do efeito dgrad do logotipo.

2007 GAS Tecnologia

174

5.7.9.4

GAS 2007 - Manual do Usurio

Colocando uma imagem como fundo da janela da aplicao


Um padro de textura ou imagem pode ser disposto nas janelas da aplicao, conforme exibido
na figura abaixo, ajustando-se a propriedade Textura com um nome de arquivo existente. A
propriedade Exibir textura tambm poder ser manipulada para alterar a disposio da figura definida
como textura.

Figura 5.28

5.7.9.5

Colocando uma figura transparente no interior do formulrio


Uma figura transparente pode ser disposta nas janelas da aplicao, conforme exibido na figura
abaixo, ajustando-se a propriedade Figura transparente com um nome de arquivo existente.

2007 GAS Tecnologia

Captulo 5 - Operando o GAS

175

Figura 5.29

O GAS tomar a cor do primeiro pixel da figura como sendo a cor de transparncia.

5.7.10 Encolhendo e expandindo mdulos da rvore


Os mdulos que possuem subordinados (filhos) apresentam um pequeno quadrado esquerda
com os sinais de mais e menos. O sinal "+" surgir quando os seus subordinados no estiverem
visveis e o sinal "-" quando seus subordinados estiverem visveis. A figura abaixo apresenta um
fragmento da rvore (menu Arquivo) na situao contrada:

Figura 5.13

Um clique sobre o sinal alterna a situao, ou seja, expande ou contrai o mdulo, exibindo ou no
os mdulos que lhe so subordinados. A figura abaixo apresenta o mesmo fragmento da rvore na

2007 GAS Tecnologia

176

GAS 2007 - Manual do Usurio

situao expandida. Observe que, na figura a seguir, os mdulos "filhos" de Arquivo j esto sendo
exibidos.
Este recurso pode ser utilizado para esconder no modelador certos mdulos que o projetista no
tenha interesse, no momento, de visualizar.

Figura 5.14

5.7.11 Definindo mdulos na rvore do projeto


Uma vez que um mdulo tenha sido inserido na rvore do projeto, necessrio efetuar a sua
definio. Para definir um mdulo existente na rvore, selecione as opes de menu "Editar/Definir"
ou clique diretamente sobre o boto de propriedades existente na barra de ferramentas, caso esta
esteja visvel ou, ainda, clique com o boto direito do mouse sobre o mdulo, selecionando a opo "
Define o mdulo selecionado" existente no menu pop-up que surgir:

Os dilogos que aparecem para solicitar as definies do mdulo variam de acordo com o tipo de
mdulo.
5.7.11.1 Definindo um mdulo do tipo "Menu"
Este tipo de mdulo bastante fcil de definir. Sero necessrias ao GAS apenas duas
informaes, como mostra a interface da figura abaixo

2007 GAS Tecnologia

Captulo 5 - Operando o GAS

177

Figura 5.32

Ttulo do menu: Refere-se ao texto que aparecer no menu oferecido ao usurio. O caractere
"&" poder ser utilizado para criar o atalho para esta opo de menu. A letra que precede este
caractere ser o atalho e aparecer sublinhada no menu.
Nome do controle: um nome utilizado para referenciar este item de menu dentro dos
programas fontes.
Ocultar: Esta opo existe em alguns dos mdulos inseridos na rvore, como, por exemplo,
janelas de dados, relatrios, etiquetas, etc. Se estiver marcada, este mdulo no ir aparecer
em menus, ficando a cargo do projetista programar a sua apresentao quando e onde
desejado.
Visvel: Informe uma condio que, se avaliada como verdade, permitir que o usurio visualize
este mdulo no menu. Este recurso pode ser utilizado para cercear mdulos a certos usurios,
em sistemas multi-usurio com plano de senhas. Para a entrada desta informao, o projetista
poder utilizar tabelas, variveis, constantes ou funes globais do sistema ou mesmo o Editor
de Programas Interno do GAS.
Pr-validao: Informe uma condio que, se avaliada como verdade, permitir ao usurio
acessar o item de menu (visvel) referente a essa janela de dados. Essa condio est
submissa condio de visibilidade definida no item anterior. Assim como aquele, este recurso
pode ser tambm utilizado para cercear mdulos a certos usurios, em sistemas multi-usurio
com plano de senhas. Para a entrada desta informao, o projetista poder utilizar tabelas,
variveis, constantes ou funes globais do sistema ou mesmo o Editor de Programas
Interno do GAS.
Atalho: Trata-se da tecla escolhida para que ao pressionada ative o mdulo em questo.
exibido uma lista contendo todas as teclas possveis para se utilizar como atalho para este
mdulo.
Criar lista de janelas: Marque se, neste menu, estar vinculada a lista de janelas abertas. Em
aplicaes MDI, comumente necessrio que um dos menus da aplicao contenha a lista das
janelas que esto abertas na rea de cliente da aplicao, de forma a facilitar o acesso s
mesmas pelo usurio. Todo formulrio que aberto na rea de cliente, adicionado
automaticamente nesta lista, sendo removido no momento em que o usurio fech-lo. O GAS

2007 GAS Tecnologia

178

GAS 2007 - Manual do Usurio

dispe, por default, esta lista no menu Janelas, que disposto na rvore do projeto.
Em vista de somente um dos menus poder conter esta lista, a marcao desta opo para
uma janela desmarca, automaticamente, aquela que tiver sido efetuada anteriormente em outro
menu.
5.7.11.2 Definindo um mdulo tipo janela de dados

Figura 5.33

O mdulo do tipo Janela de Dados, alm de ser o que mais comumente aparece na rvore do
projeto, o que requer maiores detalhes para ser definido. Sua definio efetuada em cinco
etapas, na interface da acima. Aps a definio de um mdulo do tipo Janela de Dados, necessrio
executar a formatao da tela de digitao para esta janela.
Geral: Na primeira aba da interface de definio de uma janela de dados, os aspectos gerais
podem ser definidos.
Titulo do Menu: Deve ser informado o titulo do menu para este modulo. Este titulo facilitar
a identificao deste modulo durante o desenvolvimento do seu projeto. o texto que
aparecer no menu da aplicao para disponibilizar esta opo ao usurio final.
Titulo da Janela: o texto a ser utilizado no ttulo da janela de entrada de dados.
Nome do Modulo: Corresponde ao nome do arquivo, de extenso .FRM, no qual sero

2007 GAS Tecnologia

Captulo 5 - Operando o GAS

179

gravadas as informaes das definies deste mdulo ou formulrio.


Banco/Esquema: Deve ser informado qual o banco de dados ou esquema, est a tabela
que ir se utilizada neste mdulo. o nome de um dos bancos de dados ou esquema
definidos para a aplicao.
Tabela bsica: uma das tabelas j definidas no projeto, quando da definio da estrutura
do banco de dados, que servir como base para esta janela de dados. Basta selecionar
uma das tabelas existentes na lista.
Apelido: uma varivel utilizada para se referir tabela bsica aberta dentro dos
programas fontes gerados. Este apelido deve ser utilizado preferencialmente em processos
pr-definidos, tabelas em grid e relatrios. Em janelas de dados (pai), deve-se usar a
varivel vgTb como apelido da tabela bsica do mdulo.
Dentro da aba geral, algumas opes podem ainda ser selecionadas se necessrio:

Mdulo pronto: Marque somente quando todas as definies para este mdulo
estiverem completamente prontas. Isto informar ao GAS que as rotinas deste mdulo
podero ser geradas, quando for solicitada a gerao de programas fontes.
No gerar este mdulo: Esta opo existe em todos os tipos de mdulos e serve para o
projetista dizer ao GAS para no gerar mais os programas deste mdulo, a fim de
ganhar tempo. Isto poder ocorrer quando j tenham sido gerados pelo menos uma vez
e caso no haja modificaes..
Cupom fiscal: Marque essa opo se esse mdulo ir se comportar como emissor de
cupom fiscal. Vale lembrar que, alm dessa opo marcada, diversas propriedades
devem ser ajustadas durante a formatao da janela de dados para que a emisso
funcione corretamente. Uma vez marcada esta opo, este mdulo s servir para a
incluso de registros, ficando desabilitadas e ignoradas as outras opes.
Sempre preservar este item: Marque essa opo, quando desejar efetuar uma alterao
manual no cdigo fonte, diretamente pelo VB, e no quiser mais que o GAS gere os
fontes deste mdulo, preservando o que voc fez. Desta forma, o GAS ir ignorar a
gerao deste mdulo, e usar sempre o cdigo que voc alterou e gravou na respectiva
pasta, com o mesmo nome do formulrio.

2007 GAS Tecnologia

180

GAS 2007 - Manual do Usurio

Opes "Permitir": Estas opes quando marcadas, habilitam o modulo a permitir a


opo desejada.
No vincular a dados: Com esta opo marcada, o formulrio ser aberto sem efetuar a
abertura do banco de dados. Desta forma, o acesso ao banco de dados no ser feito
no momento da abertura. Isto d um ganho de velocidade, principalmente em
aplicaes cujo banco de dados est sendo acesso em um local remoto, na internet, ou
com bases de dados que contm muitos registros. Em formulrio cujo interesse seja
apenas a incluso de registros, esta opo muito interessante, pois trar um ganho
enorme de velocidade na abertura.
Aba Menu - Nesta aba, sero adicionado informaes sobre o menu disponibilizado em sua
aplicao para acesso ao mdulo que est sendo definido.

Nome do controle: um nome utilizado para referenciar este item de menu dentro dos
programas fontes.
Ocultar: Esta opo existe em alguns dos mdulos inseridos na rvore, como, por
exemplo, janelas de dados, relatrios, etiquetas, etc. Se estiver marcada, este mdulo
no ir aparecer em menus, ficando a cargo do projetista programar a sua
apresentao quando e onde desejado.
Visvel: Informe uma condio que, se avaliada como verdade, permitir que o usurio
visualize este mdulo no menu. Este recurso pode ser utilizado para cercear mdulos a
certos usurios, em sistemas multi-usurio com plano de senhas. Para a entrada desta
informao, o projetista poder utilizar tabelas, variveis, constantes ou funes globais
do sistema ou mesmo o Editor de Programas Interno do GAS.
Pr-validao: Informe uma condio que, se avaliada como verdade, permitir ao
usurio acessar o item de menu (visvel) referente a essa janela de dados. Essa

2007 GAS Tecnologia

Captulo 5 - Operando o GAS

181

condio est submissa condio de visibilidade definida no item anterior. Assim


como aquele, este recurso pode ser tambm utilizado para cercear mdulos a certos
usurios, em sistemas multi-usurio com plano de senhas. Para a entrada desta
informao, o projetista poder utilizar tabelas, variveis, constantes ou funes globais
do sistema ou mesmo o Editor de Programas Interno do GAS.
Atalho: Trata-se da tecla escolhida para que ao pressionada ative o mdulo em
questo. exibido uma lista contendo todas as teclas possveis para se utilizar como
atalho para este mdulo.
Identificao do Formulrio: A moldura intitulada Identificao mostra duas informaes
relevantes que podem ser utilizadas nos programas fontes para identificar um formulrio:

Nome do formulrio: um nome montado pelo GAS, a partir do nome do mdulo


informado pelo projetista, para referenciar este formulrio dentro dos programas fontes
por meio da propriedade Name ou referenciando-se diretamente ao objeto por essa
identificao.
Nmero do formulrio: um nmero criado para identificar o formulrio dentro dos
programas fontes por meio da propriedade vgFormID, que o GAS cria para este
formulrio.
Quando necessria a identificao de formulrios, o GAS utiliza essas informaes nos
programas fontes, da seguinte maneira:
IF ActiveForm.Name = "frmProdutos" Then ...
ActiveForm.Left = 0
...
IF ActiveForm.vgFormID = 6 Then ...
ActiveForm.Left = 0
...
ou ...
IF Not frmProdutos is Nothing Then ...
frmProdutos.Left = 0
...

Alguns formulrios so constantes nas aplicaes, sendo gerados automaticamente


pelo GAS sem a interveno do projetista, como, por exemplo, o formulrio para
montagem de consultas, o de filtragem, informaes de banco de dados, senhas, etc.
Nestes casos, os seus nomes e nmeros identificadores j esto fixados na forma que
aparecem na tabela a seguir:

2007 GAS Tecnologia

Nome

Nmero

mdiXXXX.frm

Browse.frm

182

GAS 2007 - Manual do Usurio

ConfGraf.frm

Grafico.frm

Help.frm

InfoDB.frm

MontaSQL.frm

Procura.frm

Relat.frm

SelQuery.frm

10

Senhas.frm

11

Sobre.frm

12

Apresent.frm

13

Controle.frm

14

Filtra.frm

15

Gauge.frm

16

GMCalc.frm

17

Cale.frm

18

EcfAux.frm

19

EcfCanc.frm

20

EcfDesc,frm

21

EcfPgto.frm

22

FrmMM.frm

23

Preview.frm

24

2007 GAS Tecnologia

Captulo 5 - Operando o GAS

183

Uma vez definida esta primeira aba - Geral, o projetista poder gravar ou cancelar as informaes
digitadas, clicando sobre os botes correspondentes.

Tabelas Auxiliares
A aba representada na figura a seguir serve para forar a abertura e disponibilizao de outras
tabelas (tabelas estrangeiras) definidas no projeto, para serem consultadas, processadas ou,
ainda, para servirem de alvo de lanamentos a partir da digitao de informaes na tabela
bsica definida na aba anterior.
Para inserir uma tabela auxiliar na lista, proceda conforme se segue:
Clique sobre o boto intitulado Adiciona, para adicionar uma tabela auxiliar;
Selecione a tabela desejada a partir da lista intitulada "Tabela auxiliar";
Selecione um dos ndices para a tabela escolhida, a partir da lista intitulada ndice;
Escolha um campo para unir a tabela bsica nova tabela auxiliar adicionada, a partir da
lista apresentada. Na rea intitulada "Ordem dos campos", aparecem, em seqncia, os
campos escolhidos para a unio das tabelas. O boto Limpa pode ser utilizado para
reinicializar as informaes desta rea;

Figura 5.34

Se a opo "Forar relacionamento" estiver marcada, o GAS criar rotina na aplicao para
tentar posicionar no registro da tabela estrangeira. Esta operao necessria se um

2007 GAS Tecnologia

184

GAS 2007 - Manual do Usurio

processamento ser definido nesta tabela auxiliar, para que seja modificado o registro correto. J
no caso de um lanamento, este posicionamento desnecessrio, pois as modificaes sero
efetuadas sempre sobre o novo registro que criado.
Se o relacionamento estiver sendo forado (opo "Forar relacionamento" marcada), o
projetista poder, ainda, marcar a opo Criticar. Neste caso, o GAS criar rotina na aplicao
para apresentar a mensagem definida no campo "Mensagem de crtica", caso no consiga fazer
orelacionamento durante a execuo.
Lembre-se que, se esta tabela auxiliar estiver sendo aberta como alvo de um lanamento,
este lanamento s ser executado aps a incluso do registro na tabela bsica (origem do
lanamento) razo pela qual deve-se ter um cuidado especial com a opo Criticar, pois ela ser
executada antes que o lanamento seja efetivado. Na maioria dos casos, as tabelas auxiliares
que sejam alvo de lanamentos devem estar com esta opo desmarcada.

Lanamentos
Se o projetista relacionou uma ou mais tabelas auxiliares, a interface representada pela figura
abaixo estar habilitada para a definio de lanamentos. Para criar um lanamento em uma tabela
auxiliar, proceda conforme se segue:
Clique sobre o boto Adiciona para criar um novo lanamento;
Digite uma identificao para o lanamento no campo denominado Ttulo;
Selecione, na lista intitulada "Tabela alvo", a tabela que ir receber o lanamento.

Figura 5.36

2007 GAS Tecnologia

Captulo 5 - Operando o GAS

185

Lembre-se que este lanamento s ser executado aps a incluso do registro na tabela bsica
(origem do lanamento) razo pela qual deve-se ter um cuidado especial sobre o modo como foi
aberta esta tabela-alvo (na aba "Tabelas auxiliares"), no que diz respeito opo Criticar, pois
esta crtica ser executada antes que o lanamento seja efetivado. Na grande maioria dos
casos, as tabelas auxiliares que sero alvo de lanamentos devem estar com a opo Criticar
desmarcada.
Informe, no campo Quantidade, a quantidade de lanamentos que dever ser efetuada.
Observe que este valor pode ser informado, pelo projetista, de diversas formas:
1. Informando diretamente um nmero;
2. Informando uma varivel que tenha criado e designado;
3. Capturando um campo qualquer do banco de campos;
4. Informando uma frmula que envolva um ou mais campos;
5. Invocando o Editor do GAS (duplo clique no campo ou por meio do boto presente na barra de
ferramentas) para elaborar uma funo que retorne um valor a ser utilizado. Esta flexibilidade
til, por exemplo, quando so efetuados diversos lanamentos em uma tabela, de acordo com
o nmero de parcelas de pagamento de mercadorias.
Conforme o caso exigir, marque a opo "Excluir lanamento", para que o GAS crie rotinas na
aplicao final para apagar o registro alvo do lanamento, quando o registro que o gerou for
apagado;
Se desejar, o projetista pode estabelecer duas condies envolvendo o lanamento em
definio:
1. Para que o lanamento seja efetivado. Esta condio pode ser estabelecida preenchendo-se o
campo "Condio de incluso de lanamento", utilizando os mesmos recursos existentes para
a criao das validaes e prvalidaes explicadas anteriormente neste tpico. Uma vez
estabelecida uma condio, o lanamento s ser criado quando esta condio for atendida;
2. Para que o lanamento seja retirado. Esta condio pode ser estabelecida preenchendo- se o
campo intitulado "Condio de excluso", utilizando aqueles mesmos recursos. Uma vez
estabelecida uma condio, o lanamento s ser retirado se a mesma for atendida;
Finalmente, fazendo uso da coluna "Expresso a ser colocada no campo alvo", para cada
campo alvo, estabelea uma expresso para processlo. Esta expresso pode ser definida
utilizandose o banco de campos ou mesmo invocando o Editor do GAS para elaborar uma
funo para retornar o valor desejado.
Quando o campo alvo do lanamento for um campo seqencial, deve-se utilizar a funo
PegaSequencia, exemplificada a seguir, para que o mesmo seja incrementado automaticamente;
caso contrrio, ele no ser incrementado.
PegaSequencia([Nome BD],"<Nome Tab Alvo do Lanam>", "<Nome Campo
Alvo>", Default, <Incremento>)

2007 GAS Tecnologia

186

GAS 2007 - Manual do Usurio

O parmetro "Nome BD" s ser utilizado se existir mais de um banco de dados


envolvido. Para remover da lista um lanamento que tenha sido criado, basta selecion-lo,
clicar sobre o boto Remove e confirmar a sua excluso. Quando existir mais de um
lanamento, a ordem de execuo dos mesmos determinada pela sua ordem na lista de
lanamentos. Por isso, se desejar modificar esta ordem, utilize as setas (para cima e para
baixo) que aparecem ao lado da lista de lanamentos.
Em toda janela de dados inserida no projeto cuja tabela bsica seja alvo de lanamento, o GAS
cria uma varivel de sistema como propriedade do form, de nome vgRegLancado, para controlar se o
registro presente na janela (registro corrente) foi criado por um lanamento (no foi digitado). Durante
a execuo da aplicao, esta varivel inicializada a cada vez que um novo registro se torna
corrente na janela e o projetista poder, em validaes, pr-validaes, condies especiais, etc.,
consultar o seu valor. Para maiores detalhes, consulte o tpico Variveis de Sistema neste manual.

Processos
Caso o projetista tenha definido tabelas auxiliares relacionadas, a interface da figura abaixo estar
disponvel para que se possa definir processamentos naquelas tabelas. A definio de
processamentos muito semelhante definio de lanamentos, explicado no item anterior. A
principal diferena que, no lanamento, um registro novo criado na tabela alvo e seus campos
so modificados. J no processamento, um registro dever ser localizado e posicionado na tabela
alvo para que um ou mais de seus campos sejam modificados.

Figura 5.37

Os passos para a definio de um processamento so os seguintes:


Clique sobre o boto Adiciona para criar um novo processamento;

2007 GAS Tecnologia

Captulo 5 - Operando o GAS

187

Identifique o processamento, preenchendo o campo de nome Ttulo;


Selecione, por intermdio da lista intitulada "Tabela alvo", a tabela-alvo na qual o
processamento ser efetuado;
Selecione o campo-alvo, ou seja, um campo da tabela-alvo que dever sofrer o processamento;
Se necessitar, o projetista poder executar o processamento em definio antes que os dados
sejam gravados efetivamente, devendo para isso marcar a opo "Executar antes de gravar o
registro efetivamente".
Essa opo abre um enorme leque de possibilidades no que se refere execuo do
processamento, sendo este invocado antes do primeiro update da tabela bsica. Essa opo
habilitada somente se o processamento for efetuado sobre a tabela bsica da janela de dados,
visto que nas tabelas auxiliares, essa opo no tem motivo para ser utilizada; se desejar, o
projetista poder utilizar o campo intitulado "Condio para frmula direta" e estabelecer uma
condio para que o processamento seja efetivado. Esta condio pode ser estabelecida
utilizando-se os mesmos recursos existentes para a criao das validaes e pr-validaes,
explicadas anteriormente neste tpico. Uma vez estabelecida uma condio, o processamento s
ser executado quando esta condio for atendida;
Informe, no campo intitulado "Frmula direta", uma frmula ou expresso para ser inserida no
campo- alvo durante a incluso de registros na tabela bsica. As mesmas facilidades do Banco
de Campos e Editor de Programas esto disponveis para o projetista estabelecer esta
expresso;
Caso seja necessrio, utilize o campo "Condio para frmula inversa" e estabelea uma
condio para que a frmula inversa, a ser definida, seja executada.
Informe, no campo intitulado "Frmula inversa", uma expresso para ser executada quando
ocorrer excluso de registros na tabela bsica. Esta frmula ou expresso dever ser
exatamente a inversa da frmula direta para desfazer ou anular completamente a operao
efetuada pela mesma.
Para apagar as definies de um processamento, basta selecionar o processamento desejado na
lista, clicar sobre o boto Remove e confirmar a retirada do mesmo. Quando existir mais de um
processo, a ordem de execuo dos mesmos determinada pela sua ordem na lista de processos.
Por isso, se desejar modificar esta ordem, utilize as setas (para cima e para baixo) que aparecem ao
lado da lista de processos.
5.7.11.2.1 Desenhando telas para entrada de dados

Uma vez que uma janela de dados tenha sido inserida na rvore e esteja totalmente definida,
necessrio desenhar a sua janela de entrada de dados. O GAS est provido de um Editor de
Recursos especialmente criado para permitir ao projetista uma completa liberdade de formatao
das telas de entrada de dados. A utilizao do Editor de Recursos j foi mencionada neste captulo,
no tpico Desenhando a barra de ferramentas da aplicao. Para um completo detalhamento da
sua utilizao, consulte o tpico Utilizando o Editor de Recursos 246 , um pouco mais adiante neste
captulo.

2007 GAS Tecnologia

188

GAS 2007 - Manual do Usurio

Durante a formatao de telas para digitao, botes podem ser criados e posicionados na
mesma para executar uma ao qualquer que o projetista venha a programar, se desejar. Consulte o
tpico Estabelecendo uma ao para um boto descrito anteriormente neste captulo, quando
elucidada a formatao da barra de ferramentas.
5.7.11.2.1.1 Colocando campos na tela

A formatao da tela de uma janela de dados consiste basicamente na disponibilizao de


objetos para receber os campos definidos na tabela bsica. Para disponibilizar campos na tela de
entrada de dados, proceda da seguinte forma:
Clique sobre o painel de fundo para selecion-lo;
A partir da janela de Ferramentas da tela, selecione o campo desejado, conforme a figura
abaixo.

Figura 5.38

Ao clicar sobre o nome do campo, um objeto disponibilizado sobre o painel de fundo


previamente selecionado. A partir da, o projetista poder utilizar o mouse para posicionar este
campo, arrastando-o para a posio desejada, modificar suas dimenses, etc. Consulte o tpico
Utilizando o Editor de Recursos 246 para um detalhamento mais completo dessas operaes.
Dependendo do tipo de campo, o GAS dipor objetos variados, segundo a necessidade.
5.7.11.2.1.2 Definindo atributos de campos

Uma vez que um campo seja inserido na tela, seus atributos podem ser definidos,
selecionando-se o campo na tela e o atributo a ser definido, a partir da grade existente na janela
Ferramentas da tela, representada na figura mostrada anteriormente. Os atributos do campo so
informaes que o projetista dever passar ao GAS para definir como este campo dever ser digitado

2007 GAS Tecnologia

Captulo 5 - Operando o GAS

189

(ou mesmo se ser digitado), que tipo de dado ser aceito para este campo, etc.
A pr-validao se constitui no estabelecimento de uma expresso que, sendo atendida, o
usurio poder acessar o campo e digitar informaes. Caso no seja atendida, o usurio no
poder acessar o campo.

A validao deve conter a expresso que determinar se o dado informado pelo usurio ou no
vlido, de acordo com o que o projetista desejar. Caso seja invlido, o usurio visualizar uma
mensagem para digitar a informao correta para o campo. Para a definio destas expresses, o
projetista poder:
Digitar diretamente uma expresso em Visual Basic. Se for necessrio utilizar campos da
tabela bsica ou de tabelas auxiliares, estes podero ser capturados do banco de campos
oferecido pelo GAS por meio da janela da figura seguinte. Sempre que for necessria a captura
de campos, basta dispor o cursor na posio desejada para inserir o nome do campo,
selecionar o banco de campos e aplicar um duplo-clique sobre o campo a ser capturado. O
banco de campos tambm permite a captura de variveis, constantes e funes (function e
sub) para que sejam inseridas na expresso que define a validao;
Invocar o Editor de Programas do GAS para elaborar uma funo em Visual Basic;

Figura 5.39

Clicar sobre o boto marcado com reticncias (...), situado direita do campo, para utilizar a
interface da figura abaixo, e montar a expresso desejada.

2007 GAS Tecnologia

190

GAS 2007 - Manual do Usurio

Figura 5.40

Existem diversas expresses pr-definidas que o projetista poder montar apenas com alguns
cliques do mouse. Por exemplo, para evitar que um campo seja deixado em branco pelo usurio
(validao), basta selecionar o campo desejado, selecionar a opo Vazio, clicar em "Negar
condio" e concatenar a expresso (veja exemplo na figura 5.29). A opo "Registro de lanamento"
permite testar a varivel de sistema vgRegLancado (vide tpico Variveis de Sistema, neste manual).
Se estiver definindo uma pr-validao, o projetista poder ainda marcar a opo "Limpar campo",
se desejar que o campo seja inicializado, mesmo que j contenha uma informao anterior, caso a
expresso de pr-validao no seja atendida.

Figura 5.41

Na segunda aba desta interface, representada pela figura acima, o projetista pode definir
expresses envolvendo as tabelas auxiliares relacionadas, caso tenham sido definidas. Para montar

2007 GAS Tecnologia

Captulo 5 - Operando o GAS

191

uma expresso segundo a existncia de um registro relacionado em uma das tabelas auxiliares,
basta selecionar a tabela, o ndice desejado e o campo a ser utilizado na pesquisa e, em seguida,
concatenar a expresso montada pelo GAS, clicando sobre o boto a seguir:

boto para concatenar definies.


A validao definida para cada campo de um formulrio pode ser do tipo imediata, dessa maneira
assim que o usurio abandonar o campo em questo a validao ser executada, no necessitando
mais que todos os campos sejam digitados e depois o registro seja gravado;

Para este atributo, informe o texto que deseja apresentar ao usurio, caso a expresso de
validao falhe, ou seja, quando o usurio digitar informaes que no podem ser aceitas.
Para esta informao, se desejar, o projetista poder invocar o Editor de Programas e elaborar
uma funo para retornar uma mensagem. Isto pode ser interessante quando existirem diversas
expresses de validao concatenadas para o campo e o projetista queira depurar melhor a
mensagem a ser exibida ao usurio.
Informe um valor a ser sugerido ao usurio, sempre que o mesmo desejar acessar este campo.
Este valor pode, inclusive, ser um campo de um arquivo de parmetros existente na aplicao. Neste
caso, basta capturar o campo desejado por meio do banco de campos.

Informe uma condio para a visibilidade do campo. Os mesmos recursos de montagem de


expresses explicados anteriormente valem para este atributo. Quando da definio da estrutura dos
bancos de dados, no tpico Definio do projeto visto anteriormente, existe uma opo que, se
marcada, inibe definitivamente a visibilidade do campo, o que diferente da condio aqui
estabelecida, a qual analisada a cada registro acessado. Outras propriedades e atributos podem
ser alteradas, utilizando-se os recursos aqui descritos. O Captulo 13- Propriedades dos objetos
de tela 492 trata exclusivamente das propriedades que podem ser aplicadas aos objetos
disponibilizados na tela.
5.7.11.2.2 Colocando frmulas nas telas

Durante a formatao de janelas para a digitao de dados (ou na formatao da barra de


ferramentas da aplicao), o projetista poder estabelecer frmulas ou outras informaes para
serem exibidas ao usurio. Os controles label, gMask, frame e imagem so os nicos que podem ser
utilizados para exibir essas informaes. Para efetuar esta operao, o projetista dever proceder da
seguinte maneira:
Clique na janela de Ferramentas da tela sobre um boto do tipo label, gMask, frame ou imagem
para inserir um desses objetos na tela:
Selecione na janela Ferramentas da tela, na grade de propriedades, a propriedade Frmula e
estabelea a frmula que ser exibida.
No caso de frmulas disponibilizadas no controle do tipo imagem, s sero aceitos campos

2007 GAS Tecnologia

192

GAS 2007 - Manual do Usurio

de arquivos relacionados, abertos na aba "Tabelas auxiliares", que sejam do tipo multimdia.
Frmulas tanto podem ser resultados de operaes entre campos numricos quanto campos de
tabelas estrangeiras relacionadas que necessitam ser exibidos na tela. Por exemplo, ao digitar o
cdigo do fornecedor em uma Nota Fiscal, o projetista poder exibir o nome do fornecedor, que
se encontra em uma outra tabela relacionada.
Em se tratando de um resultado numrico, a frmula precisa ser tratada pelo projetista, que
poder utilizar a funo STR$( ) do Visual Basic ou outra qualquer que transforme este resultado
em uma expresso do tipo caractere, sendo aceita na propriedade do controle.
Exemplos:
Str$([Produtos em estoque].Qde * 10)
"Preo: " + Format$(Produtos.Preo, ", "##,##0.00")
5.7.11.2.3 Estabelecendo condies especiais

Selecionando-se o painel de fundo da tela em elaborao (basta clicar com o mouse sobre o
painel), trs definies importantes podem ser efetuadas para a digitao nesta tabela, criando-se
condies por meio de qualquer um dos mtodos explicados anteriormente:
5.7.11.2.3.1 Condio para incluir

Caso seja necessrio, o projetista poder estabelecer uma condio para que haja incluso de
registros na tabela bsica. Se esta condio no for atendida o usurio no poder digitar registros
nesta tabela.
5.7.11.2.3.2 Condio para excluir

Caso necessrio, informe uma condio para permitir excluses de registros nesta tabela bsica.
5.7.11.2.3.3 Condio para alterar

Informe, se necessrio, uma condio para permitir que registros sejam alterados pelo usurio
nesta tabela bsica.
5.7.11.3 Definindo uma tabela em grid
Este tipo de mdulo pode ser inserido somente abaixo de uma janela de dados ou sob um outro
mdulo de tabela em grid, compondo a parte "N" de um relacionamento 1-N que o projetista
preferencialmente dever ter criado na estrutura do banco de dados. A rigor, uma tabela pode ser
exibida em grid sempre que estiver relacionada na rvore a uma outra tabela me, mesmo que no
banco de dados no exista especificamente este relacionamento. Porm, na aplicao final, a nica
forma de garantir a excluso de registros filhos por integridade referencial criando-se o
relacionamento no banco de dados. Nenhum outro tipo de mdulo pode ser inserido abaixo de uma
tabela em grid, exceto uma outra tabela em grid.
Uma vez que uma tabela seja apresentada em grid na aplicao final gerada, todos os tipos de
campos podem ser digitados dentro do prprio grid, inclusive campos do tipo listas externas e
internas, rotativos, lgicos, memo, etc. Todos os recursos de edio, como, por exemplo, a digitao

2007 GAS Tecnologia

Captulo 5 - Operando o GAS

193

com mscaras so disponibilizados para os campos digitados no grid. A cada nova linha includa ou
alterada no grid, todos os processos e lanamentos definidos so disparados automaticamente e
todos os forms visveis no momento so imediatamente atualizados para espelhar os novos valores
que, porventura, tenham sido alterados. Tambm, podem ser definidas frmulas para serem
apresentadas nas colunas, sendo atualizadas simultaneamente no momento da digitao.
Naturalmente, essas frmulas podem envolver campos de qualquer um dos bancos de dados
manipulados pela aplicao. Com isto, o GAS oferece duas maneiras de trabalhar com
relacionamento 1-N: da forma onde a tabela me e filha aparecem em forms separados e a forma
onde as tabelas filhas so disponibilizadas em grids dentro do mesmo form no qual exibida a tabela
me.
Os passos para adicionar um grid a um projeto, bastante simples, e pode ser feito nesta
sequencia:
1 - Inserir uma tabela em grid: Escolha a janela de dados ao qual deseja adicionar o grid, e com o
boto direito do mouse, clique e escolha a opo "adicionar novo modulo". Na sequencia, ser
exibido outro menu, com a opo de "tabela em grid".

2 - Configurar o novo modulo: Aps adicionar o novo modulo, um novo "menu" adcionado a
rvore, ficando o mesmo logo abaixo da janela de dados ao qual o mesmo ser incluido. Selecione o
novo modulo, e com o lado direito do mouse, escolha a opo de "Definir modulo selecionado". Ser
apresentado, um formulrio com algumas "abas", que devem ser preenchidas com informaes para
a definio deste novo modulo. As abas principais so:

2007 GAS Tecnologia

194

GAS 2007 - Manual do Usurio

Aba Geral - Contm as mesmas solicitaes da janela de dados, todas as informaes esto
disponveis em: Definindo um Mdulo - Aba Geral 178
Aba Tabelas Auxiliares - Contm as mesmas solicitaes da janela de dados, todas as
informaes esto disponveis em: Definindo um Mdulo - Aba Tabelas Auxiliares 183
Aba Opes - Caso o mdulo em definio seja uma "Tabela em grid", uma aba extra
denominada Opes estar presente. A figura abaixo representa essas opes.

2007 GAS Tecnologia

Captulo 5 - Operando o GAS

195

Figura 5.35

Para estabelecer a expresso de ligao com o pai (relacionamento 1-N), proceda do seguinte
modo:
Selecione, na lista "Cps do filho...", o campo comum s duas tabelas a ser utilizado para
fazer a ligao;
Caso exista, na lista "Cps do pai...", um campo com um mesmo nome e mesmos atributos,
o GAS selecionar automaticamente este campo. Se o campo de ligao no for este, voc
tem a liberdade de selecionar outro;
Aps selecionados os campos nas duas listas, utilize o boto de concatenao para
confirmar a expresso;

boto para concatenar definies


Se a ligao for efetuada em funo de mais de um campo, repita os passos anteriores;
O boto a seguir tem por finalidade limpar a expresso, permitindo recomear a sua
definio.

boto para limpar definies


Sem ligao com o pai: Esta opo, quando marcada, ignora a ligao com este grid. Esta
opo til quando se tratar de um grid totalmente independente, onde os registros no
dependam de um registro pai. O grid ser criado sem nenhum vinculo com a tabela pai
deste modulo.

2007 GAS Tecnologia

196

GAS 2007 - Manual do Usurio

Aba Lanamentos - Contm as mesmas solicitaes da janela de dados, todas as


informaes esto disponveis em: Definindo um Mdulo - Aba Lanamentos 184
Aba Processos - Contm as mesmas solicitaes da janela de dados, todas as informaes
esto disponveis em: Definindo um Mdulo - Aba Processos 186
Outras Informaes:
Acessando o item Tempo refresh da seo [Opcoes] do arquivo de inicializao (.INI) da
aplicao final, seja via cdigo ou depois de instalada a aplicao, o projetista poder manipular
o tempo de refresh dos grids da mesma.
Cabe ressaltar que o grid, agora, apresenta uma elevada performance, mesmo existindo
outros controles contendo filtros na tela, tais como combobox, etc, serem referenciados no
Captulo 10 - Um exemplo prtico.
A fim de proporcionar maior flexibilidade na digitao de dados no grid, agora, ao pressionar
ENTER em qualquer clula do mesmo, o cursor se direcionar de acordo com a ltima
movimentao efetuada por intermdio das setas cursoras no grid (para cima, para a direita convencional, para esquerda, etc).
5.7.11.3.1 Colocando um grid na tela

No existe formatao de tela para um mdulo do tipo Tabela em grid. A tela formatada no
mdulo pai, sobre a qual inserido um objeto gDbGrid. Para inserir grids na tela, proceda da
seguinte maneira:
Insira um ou mais mdulos do tipo "Tabela em grid" na rvore e defina as tabelas bsicas e a
ligao com o pai de cada um deles;
Acesse a tela definida para o mdulo pai e coloque os grids necessrios, por meio do boto
exibido a seguir, existente na janela de Ferramentas da tela;

boto para inserir grid na tela


A primeira propriedade que deve ser designada para este objeto Tabela. Clicando no boto
extensor desta propriedade (com reticncias), voc ver todas as tabelas que voc definiu para
serem disponibilizadas em grid. Aps definida esta propriedade, todos os campos do grid sero
preenchidos automaticamente com os campos da tabela selecioda, exceto aqueles utilizados na
ligao com o mdulo-pai;
Utilizando os botes da janela Ferramentas da tela, voc poder agora inserir ou apagar
colunas do grid, conforme explicado no tpico Utilizando o Editor de Recursos, mais adiante,
neste manual;
Clique em cada uma das colunas (campos) para definir os atributos necessrios, como
validao, mensagens, etc.

2007 GAS Tecnologia

Captulo 5 - Operando o GAS

197

5.7.11.3.2 Caractersticas e propriedade do controle GRID

Nesta verso(GAS2007), foi desenvolvido um controle GRID totalmente novo para utilizao nas
janelas de dados e consultas da aplicao gerada. O novo controle, que tem como base a ListView (n
o mais o dbgrid), est muito mais rpido, verstil e sofisticado. Utiliza tcnicas de subclasse e
controle "owner draw" com aquisio de dados em modo virtual. O conjunto dessas tcnicas
possibilita uma extrema economia de memria e uma tima performance. Apenas os dados que est
o sendo mostrados no grid esto carregados efetivamente na memria do controle. Se o driver
utilizado para conexo com o banco de dados permitir o grid tambm poder utilizar o preenchimento
gradual.
Dessa maneira, enquanto os registros estiverem sendo retornados da base de dados, o grid j
poder mostrar a parte dos registros que j foram adquiridos.

Este novo controle permite a definio de cor para fundo e texto individualmente para cada clula.
Assim, o projetista tem a possibilidade de determinar, por exemplo, condies para determinao da
cor de fundo ou de texto de alguma informao. Tambm estar disponvel nessa verso do controle
recursos especficos para colunas numricas: o usurio poder ver na barra de status do grid informa
es de total, mximo, mnimo e mdia das informaes. Agora tambm possvel selecionar vrias
linhas no grid para para operar com eles, por exemplo, para excluir, grafar, etc.
O controle permitir que o usurio modifique a ordem de apresentao das colunas, bem como
determinar a ordenao de registros (crescente/decrescente) clicando sobre o ttulo de uma ou de v
rias colunas. Tambm foi embutido no controle uma barra de filtro (antes era externa), que poder ser
habilitada ou no pelo usurio em tempo de execuo. Ser possvel ainda definir a quantidade de
registros que sero retornados pela query (TOP). Todos os recursos comentados aqui estaro dispon
veis tanto em grids de consultas como em grids filhos (em janelas de dados);

2007 GAS Tecnologia

198

GAS 2007 - Manual do Usurio

Algumas caratersticas novas:


1 - Linhas zebradas com configurao das cores;
2 - A barra de filtro possibilitando a filtragem de vrias colunas;
3 - Opo de Soma, Mdia, Mnimo e Mximo para as colunas numricas com habilitao /
desabilitao;
4 - Possibilidade de deletar vrias linhas intercaladas simultaneamente;
5 - Arrastar uma coluna para outra posio;
6 - Apagar uma coluna (basta marc-la e teclar DELETE);
7 - Recuperar a coluna deletada (basta ir na linha separadora de colunas que onde tiver coluna
oculta o cursor do mouse mudar, indicando que pode-se expandir uma coluna oculta naquela posi
o);
8 - Uso de CTRL-Home, CTRL End, CTRL PgUp e CTRL PgDown para navegao no GRID.

2007 GAS Tecnologia

Captulo 5 - Operando o GAS

199

9 - Adicionado a propriedade: "Ao no duplo click". Agora possivel definir uma funo a ser
executada no duplo click do grid.

5.7.11.3.2.1 Propriedades do grid

Com o grid selecionado, pressionado a tecla F4, o projetista tem a disposio o form de
Ferramentas da tela:

As propriedades exclusivas do componente grid so:

2007 GAS Tecnologia

200

GAS 2007 - Manual do Usurio

Aparncia(cores): Nesta categoria, possvel definir a aparncia dos itens disponveis no grid

Propriedade
Fonte

Descrio
Esta propriedade determina a fonte da linha referente aos registros do
grid.

Fundo barra de
filtro

Determina a cor de fundo que ter a barra de filtro

Fundo
lateral

barra

Determina a cor de fundo da barra lateral esquerda

Fundo
mximo

barra

Determina a cor de fundo barra mximo

Fundo
mdia

barra

Determina a cor de da propriedade em questo

Fundo
mnimo

barra

Determina a cor de da propriedade em questo

Fundo
somatrio

barra

Determina a cor de da propriedade em questo

Fundo
status

barra

Determina a cor de da propriedade em questo

Fundo coluna
Fundo
ativa

coluna

Fundo clula

Determina a cor de da propriedade em questo


Determina a cor de da propriedade em questo

Determina a cor de da propriedade em questo

Fundo
edio

clula

Determina a cor de da propriedade em questo

Fundo
selec.

clula

Determina a cor de da propriedade em questo

Fundo
zebra

clula

Determina a cor de da propriedade em questo

Fundo grid

Determina a cor de da propriedade em questo

2007 GAS Tecnologia

Captulo 5 - Operando o GAS

Fundo linha

Determina a cor de da propriedade em questo

Fundo
coluna

ttulo

Determina a cor de da propriedade em questo

Fundo ttulo grid

Determina a cor de da propriedade em questo

Fundo
colunas

ttulo

Determina a cor de da propriedade em questo

Linha de grid

Determina a cor de da propriedade em questo

Texto barra filtro

Determina a cor de da propriedade em questo

Texto
mdia

barra

Determina a cor de da propriedade em questo

Texto
mnimo

barra

Determina a cor de da propriedade em questo

Texto
mximo

barra

Determina a cor de da propriedade em questo

Texto
status

barra

Determina a cor de da propriedade em questo

Texto
somatrio

barra

Determina a cor de da propriedade em questo

Texto coluna
Texto
ativa

coluna

Texto clula

Determina a cor de da propriedade em questo


Determina a cor de da propriedade em questo

Determina a cor de da propriedade em questo

Texto
selec.

clula

Determina a cor de da propriedade em questo

Texto
edio

clula

Determina a cor de da propriedade em questo

Texto
zebra

clula

Determina a cor de da propriedade em questo

Texto linha

2007 GAS Tecnologia

Determina a cor de da propriedade em questo

201

202

GAS 2007 - Manual do Usurio

Texto
coluna

ttulo

Texto ttulo grid

Determina a cor de da propriedade em questo

Determina a cor de da propriedade em questo

Texto
colunas

ttulo

Determina a cor de da propriedade em questo

Auto
registro

incluir

Determina a cor de da propriedade em questo

Outras propriedades, esto disponveis no Captulo 13 - Lista de Propriedades

492

5.7.11.4 Definindo uma rotina avulsa


Para definir uma rotina avulsa a ser integrada a um projeto do GAS, o projetista utiliza a interface
da figura a seguir, devendo proceder conforme segue:
Informe o ttulo a ser oferecido ao usurio da forma que dever ser exibido no menu. O
caractere "&" poder ser utilizado para criar o atalho para esta opo de menu - a letra que o
precede ser o atalho e aparecer sublinhada no menu;

Figura 5.42

Selecione "Editar/Editar cdigo de programa" no menu, tecle F9 ou, ento, clique no boto
abaixo para invocar o Editor de Programas do GAS;
boto para ativar o Editor
Elabore a rotina em Visual Basic;

2007 GAS Tecnologia

Captulo 5 - Operando o GAS

203

Marque a opo mdulo pronto, quando acabar de elaborar a sua rotina para informar ao GAS
que este mdulo poder ser gerado, quando for solicitada a gerao de fontes.
5.7.11.5 Definindo um processo pr-definido
Este tipo de mdulo permite a definio de processamentos especiais, pr-definidos pelo
projetista, para executar certas tarefas, como, por exemplo, fechamento de ms, clculo de folha de
pagamento, baixas em estoque, histricos, etc. Na definio desses mdulos, o projetista tem total
flexibilidade para envolver outros bancos de dados, efetuar clculos, apagar registros, etc.,
percorrendo uma mesma tabela quantas vezes se fizer necessrio e efetuando processos diferentes
a cada passagem. Telas complementares podem ser criadas para serem apresentadas antes dos
processos, de modo a permitir o estabelecimentos de filtros e condies de processos e
lanamentos.
Mesmo que no haja uma tela definida para o processo pr-definido em questo, o projetista
poder definir mensagens a serem exibidas no incio e fim do processamento. Para isso, basta
defin-las respectivamente por meio das propriedades Mensagem inicial e Mensagem final do
painel de fundo da tela do processo prdefinido. Para obter maiores detalhes, consulte o Captulo
13- Propriedades dos objetos de tela. Um processo pr-definido definido em duas etapas:
5.7.11.5.1 Cabealho do processo pr-definido

A primeira dela a definio do mdulo-pai, que uma espcie de cabealho do processo


prdefinido, no qual so definidos alguns aspectos de natureza geral, utilizando-se a interface
representada na figura abaixo

Figura 5.43

A maior parte dos aspectos de definio do cabealho dos processos pr-definidos idntica aos
da definio de Janela de dados, vista em tpicos anteriores deste captulo; por isso, reporte-se
quele tpico para conhecer como so executados. O nico aspecto particular definio do

2007 GAS Tecnologia

204

GAS 2007 - Manual do Usurio

cabealho de processos pr-definidos ser explanado a seguir:


5.7.11.5.1.1 Cupom fiscal

Marque essa opo se este mdulo ir comportar como emissor de cupom fiscal. Neste caso, os
itens vendidos devero ser inclusos por meio de lanamentos.
A aba "Tabelas auxiliares", representada na figura abaixo, serve para relacionar tabelas com os
campos que, porventura, tenham sido inseridos em uma tela complementar criada previamente para
receber informaes a serem utilizadas durante o processamento. Uma tela complementar para
receber variveis antes de processos criada conforme descrito no tpico Criando uma tela
complementar mais adiante neste captulo. Se nenhuma tela for criada, esta aba no ter serventia
neste tipo de mdulo.

Figura 5.44
5.7.11.5.2 Processo pr-definido

Aps definido o mdulo de cabealho do processo pr-definido, outros mdulos de processos


prdefinidos podem ser inseridos, efetuando um relacionamento 1-N. A figura abaixo representa a
interface para definio do processo pr-definido.

2007 GAS Tecnologia

Captulo 5 - Operando o GAS

205

Figura 5.45

Na aba Geral, as definies so semelhantes s dos demais mdulos descritos anteriormente. A


informao do campo Apelido pode ser utilizada como apelido da tabela bsica na definio dos
processos e lanamentos que, porventura, venham a ser estabelecidos. Na aba "Tabelas auxiliares"
so definidos os relacionamentos entre tabelas que sejam necessrios ao estabelecimento do
processo prdefinido. Sua utilizao j foi descrita no tpico Definindo um mdulo tipo janela de
dados 183 , anteriormente neste captulo. A figura a seguir representa as opes para os processos
pr-definidos. Para estabelecer a expresso de ligao com o pai (relacionamento 1- N), proceda de
maneira idntica descrita no item Opes, tpico Definindo um mdulo tipo tabela em grid 194 ,
neste captulo. Observe que, a interface de estabelecimento de "ligao com o pai" s estar
disponvel se a tabela em definio estiver inserida abaixo (subordinada) a um outro processo.

2007 GAS Tecnologia

206

GAS 2007 - Manual do Usurio

Figura 5.46

O campo "Filtro inicial" deve ser preenchido com uma expresso vlida que determinar a
seleo dos registros, diferenciando-se do campo "Condio para processar o registro"pelo fato
deste ltimo no ser agregado clusula WHERE;
O campo "Condio para processar o registro" deve ser preenchido com uma expresso
vlida que determina se o registro ser ou no processado. Utilize o boto marcado com
reticncias para montar esta expresso de uma maneira mais fcil;
Caso voc deseje a excluso do registro da tabela bsica aps o processamento, marque a
opo "Excluir registro da tabela bsica";
Caso tenha marcado a opo acima, voc ainda poder definir uma condio para que este
registro seja excludo. Esta condio pode ser estabelecida da mesma maneira descrita
anteriormente para "Condio para processar o registro";
O projetista ainda poder definir a ordem de execuo dos processos pr-definidos (para um
mesmo grupo de registros a serem processados) por meio da lista "Ordem", na qual devero
ser selecionados os campos para a referida ordenao.
Quando terminar, utilize o boto Grava para salvar as informaes. A definio de lanamentos
e processos a ser efetuada por meio das duas abas seguintes j foi explicada neste captulo, no
tpico Definindo um mdulo tipo janela de dados 184 .

2007 GAS Tecnologia

Captulo 5 - Operando o GAS

207

5.7.11.6 Definindo uma consulta


Esta definio efetuada por meio de uma interface com trs abas. A primeira delas, denominada
Geral definida da mesma forma como utilizado para os mdulos descritos anteriormente.
A segunda aba, denominada "Tabelas auxiliares", a exemplo do que foi descrito no tpico
Cabealho do processo pr-definido, ainda h pouco neste captulo, s dever ser utilizada se
uma tela complementar tiver sido definida anteriormente. O tpico Criando uma tela complementar
, citado mais adiante neste captulo, descreve os passos necessrios para esta operao.
A terceira aba, que aparece na figura abaixo, serve para acessar a interface de montagem da
expresso que define a consulta (SQL), devendo-se, para isso, clicar sobre o boto Cria, conforme
mostra a figura abaixo:

Figura 5.47

A rea denominada "Expresso que define a consulta" conter a expresso SQL a ser
montada pela interface da figura acima. Se desejar, o projetista poder manualmente editar esta rea
e construir a expresso SQL que desejar. No entanto, ao fazer isto, o GAS desabilitar a interface
automtica para lhe dar maior liberdade. Para voltar a utilizar a interface automtica, o projetista ter
que recome-la, apagando a expresso. A opo "Query Externa" permite ao projetista definir uma
query manualmente sem que o GAS faa qualquer tipo de tratamento quanto a nomes de campos,
apelidos, etc. Com isso, o cdigo ser gerado exatamente como o projetista o definir.

2007 GAS Tecnologia

208

GAS 2007 - Manual do Usurio

Figura 5.48

Convm lembrar que a expresso que define a consulta deve conter uma sintaxe correta no
padro SQL, pois esta ser avaliada somente durante a execuo da aplicao final, resultando em
erros de execuo, caso no esteja correta. Os botes existentes na janela da figura acima tm as
seguintes funes:
Prosseguir
Tem por finalidade aceitar a expresso montada e transfer-la para a tela anterior, na aba
Contedo.
Cancela
Tem por finalidade cancelar a operao de montagem da expresso da consulta.
Limpar seleo
Tem por finalidade retirar da expresso somente a clusula de seleo (WHERE).
Limpa
Tem por finalidade limpar toda a expresso que est sendo montada, permitindo recomear toda
a definio.
5.7.11.6.1 Contedos

Para a montagem desta expresso, o projetista dever efetuar os passos que se seguem:
Selecione uma tabela na lista Tabelas. Com isto, a lista "Campos a mostrar" preenchida
com os campos da tabela selecionada;

2007 GAS Tecnologia

Captulo 5 - Operando o GAS

209

A seguir, selecione na lista "Campos a mostrar" os campos que deseja visualizar na consulta.
Desta maneira, diversas tabelas e campos podem ser selecionados para a consulta. medida
que um campo selecionado, o mesmo ser inserido automaticamente na expresso que
apresentada no espao "Expresso que define a consulta". Se for selecionado um campo j
inserido, este automaticamente retirado da expresso. Essas definies acrescentam
expresso SQL da consulta, respectivamente, as clusulas FROM e SELECT. Consulte o
Glossrio para maiores detalhes sobre esses termos.
5.7.11.6.2 Grupos e ordenao

Caso seja necessrio, por meio da terceira aba, representada na figura abaixo, o projetista poder
estabelecer agrupamentos para sumarizao da consulta, bem como a ordem em que os registros
devero aparecer. Estas informaes adicionam, respectivamente, a clusula GROUP BY e ORDER
BY expresso SQL que define a consulta.

Figura 5.49

Caso voc esteja elaborando um agrupamento, deve ter em mente que todos os registros que
contenham o mesmo campo escolhido para agrupar sero sumarizados como se fossem um nico
registro. Portanto, todos os campos que compem a consulta devero ser, obrigatoriamente, do tipo
numrico, exceto aqueles utilizados para efetuar o agrupamento. Devido a esta particularidade,
agrupamento no deve ser confundido com "quebra". O projetista dever selecionar, na lista "
Agrupar por", os campos que comandaro o agrupamento de sumarizao, devendo ter o cuidado
de selecionar estes mesmos campos, na lista Ordenao, para comandar a ordem dos registros.
Aps selecionar os campos para ordenao, o projetista poder tambm estabelecer se ela ser
Ascendente ou Descendente, selecionando a opo correspondente.
O usurio do aplicativo final gerado poder ainda estabelecer ordenaes a seu critrio, tendo
como base os campos exibidos na consulta.
5.7.11.6.3 Seleo

Finalmente, na tela representada pela figura abaixo, a seleo ou filtragem de registros poder ser

2007 GAS Tecnologia

210

GAS 2007 - Manual do Usurio

estabelecida.

Figura 5.50

Caso a opo Selecionar ou a opo "Unir tabelas" esteja marcada, a expresso estabelecida ir
compor a clusula WHERE da expresso SQL. Se a opo Filtrar estiver selecionada, a expresso
estabelecida no ir fazer parte da clusula WHERE, no sendo, portanto, gravada no banco de
dados. O filtro estabelecido por esta opo ter seu contedo avaliado na hora e seu resultado
passado para as devidas propriedades da consulta ou relatrio (propriedade Filter do recordset, etc).
Qualquer que seja a opo selecionada, este passo ir definir quais registros iro participar da
consulta.
5.7.11.6.3.1 Criao de filtragem

Para estabelecer uma seleo, o projetista dever proceder conforme se segue:


Marque a opo Filtrar;
Selecione um campo na lista "Nome do Campo";
Selecione o operador desejado na lista Operadores;
Informe, na lista Valor, o valor a ser comparado.
Desta lista podem tambm ser selecionados campos das tabelas que estejam relacionadas para
utilizar como valor de comparao (vide Unio de tabelas mais adiante, neste tpico).
Em "Os primeiros...", o projetista poder informar um nmero e selecionar uma das opes. Isto
permitir que os primeiros N registros ou N porcento dos registros que atendem expresso
SQL sejam considerados;

2007 GAS Tecnologia

Captulo 5 - Operando o GAS

211

5.7.11.6.3.2 Unio de tabelas

Se mais de uma tabela foi selecionada para a consulta ou sendo necessria a criao de
relacionamento entre elas, o projetista poder selecionar a opo "Unir tabelas" e os campos das
diversas tabelas que devem ser iguais. Para aglomerar diversas filtragens em uma mesma
expresso, o projetista dever fazer uso do boto Concatena.
5.7.11.7 Definindo um relatrio ou etiqueta
H duas maneiras de se formatar relatrios para serem integrados s aplicaes criadas pelo
GAS.
A primeira delas, mantida ainda nesta verso do GAS apenas por questes de compatibilidade
com verses anteriores, consiste na utilizao do programa Crystal Reports. Este programa
formatador de relatrios acompanhava o Visual Basic at a sua verso 5.0. A partir do
lanamento do Visual Basic 6.0, este programa deixou de ser fornecido nos discos do Visual
Basic, tendo, por isso, de ser adquirido separadamente, caso o projetista deseje fazer uso
dessa ferramenta. Informaes sobre os aspectos de sua operao podem ser encontradas na
documentao fornecida juntamente com aquele produto. Quando este tipo de formatao
utilizada, o GAS faz toda a interface de escolha de tabela, montagem de recordsets, fitros, etc.
e dispe o projetista no controle do Crystal Reports, para que este possa dar forma ao relatrio.
Uma vez terminada essa tarefa, o GAS far a integrao de menu necessria ativao do
referido relatrio, previamente denominado pelo projetista e gravado sob a forma de um arquivo
de extenso .RPT. altamente recomendvel que se utilize o segundo mtodo de formatao
de relatrio, a ser descrito a seguir, uma vez que a Gas Tecnologia poder, em futuras verses
do GAS, retirar este tipo de interface sem prvio aviso.
A segunda maneira de se formatar relatrios e etiquetas para as aplicaes geradas por meio
da utilizao do G-Reports que integrado ao GAS. Os relatrios so criados de modo
semelhante formatao das telas da aplicao, que descrito no tpico Utilizando o Editor
de Recursos neste manual. Os relatrios e etiquetas formatados, utilizando-se desse mtodo,
so integrados aplicao na forma de programa fonte Visual Basic.
O projetista poder, opcionalmente, definir os relatrios G-Reports com base em
expresso SQL para definir a query a ser utilizada no relatrio. Esse recurso proporciona
uma flexibilidade enorme na elaborao dos relatrios, uma vez que o projetista poder
utilizar todo o poder da linguagem SQL, como funes agregadas, juno de tabelas,
ordenao por campo de outra tabela, etc. O conjunto de dados (recordset) a ser utilizado
como base do relatrio poder ser totalmente flexibilizado.
Para habilitar a utilizao de relatrios Crystal Reports, o projetista dever habilitar a opo
"Habilitar Crystal Reports", presente nas opes de configurao do GAS.
Quanto definio de relatrios, neste tpico, trataremos dos dois tipos de relatrio; porm, com
respeito sua formatao, abordaremos somente o segundo mtodo, nativo do GAS. Durante a
instalao do GAS, so tambm instalados diversos exemplos de aplicaes com relatrios.
altamente recomendvel que se observe como os mesmos foram criados e as propriedades
aplicadas aos objetos na rea de formatao. Nas explicaes que se seguiro, o termo relatrio
dever ser entendido como relatrio e etiqueta, a menos que sejam feitas ressalvas para detalhar um
ou outro fato. Relatrios so inseridos na rvore do projeto de modo semelhante aos demais
mdulos, bastando selecionar o mdulo sob o qual se deseja inserir o relatrio ou etiqueta, clicar o

2007 GAS Tecnologia

212

GAS 2007 - Manual do Usurio

boto apropriado para insero de mdulos, selecionar o tipo relatrio ou etiqueta e escolher o
mtodo GReports ou Crystal Reports.
5.7.11.7.1 Geral

A interface da figura abaixo destinada definio de algumas das informaes dos relatrios, as
quais sero abordadas a seguir.

Figura 5.51

A maior parte dos aspectos de definio de relatrios idntica aos da definio de Consultas,
vista no tpico anterior deste captulo; por isso, reporte-se quele tpico para conhecer como so
executados. Os aspectos particulares definio dos relatrios sero explanados a seguir:
5.7.11.7.1.1 Nome do .RPT

Se relatrio do tipo Crystal Reports, informe um nome de arquivo a ser utilizado pelo Crystal
Reports para guardar as informaes referentes formatao do relatrio. Posteriormente, quando
da execuo da aplicao gerada, este arquivo dever estar disponvel no equipamento do usurio,
pois o Crystal Reports utilizar as informaes nele contidas para imprimir o relatrio.
5.7.11.7.1.2 Tabela bsica

Esta informao est presente somente em relatrios do G-Reports. Selecione a tabela bsica do
relatrio a ser formatado.
5.7.11.7.1.3 Apelido

Presente tambm somente em relatrios a serem formatados pelo G-Reports. Informe o apelido
para ser utilizado em referncias tabela bsica do relatrio.

2007 GAS Tecnologia

Captulo 5 - Operando o GAS

213

5.7.11.7.1.4 Cupom fiscal

Somente para relatrios do G-Reports, informe se este relatrio dever ser enviado para
impressora fiscal.
5.7.11.7.2 Tabelas auxiliares e Contedo

Esses dois aspectos da definio do relatrio so idnticos aos da definio de Consultas, vista
no tpico anterior deste captulo; por isso, reporte-se quele tpico para conhecer como so
executados.
Convm observar que a seleo ou filtragem de registros estabelecida para um relatrio uma
seleo primria e permanente, pois, ao executar a aplicao final, o usurio sempre poder
estabelecer novos critrios de filtragem sempre subordinados (concatenados) ao que foi aqui definido
pelo projetista. Portanto, se o projetista quiser dar plena liberdade ao usurio, no dever estabelecer
filtros para relatrios em tempo de projeto.
5.7.11.7.3 Formatao de relatrios

Uma vez que o relatrio tenha sido definido, pode-se ativar a sua formatao, clicando-se sobre o
boto a seguir, presente na barra de ferramentas:
boto para formatar relatrio
O GAS saber distinguir o formatador de relatrios que dever ativar. Caso um relatrio do tipo
Crystal Reports tenha sido definido e, se o relatrio estiver sendo acessado pela primeira vez, antes
de invocar o Crystal Reports, o GAS apresenta um dilogo informando qual o banco de dados e
query a ser utilizada, bem como o nome do arquivo RPT a ser gravado. Nas demais oportunidades,
quando este relatrio estiver sendo acessado para qualquer alterao que se fizer necessria, o GAS
no mais apresentar este dilogo.
Ainda com respeito aos relatrios do Crystal Reports, convm observar que, em tempo de projeto,
na maioria das vezes, o banco de dados da aplicao ainda no existe! Por isso, o GAS sempre cria
um banco de dados temporrio, de nome DBTEMP.MDB, com a estrutura at o momento definida,
para que o Crystal Reports possa ter as referncias de que necessita. Portanto, uma boa idia
deixar a definio dos relatrios para uma fase mais ao final do projeto, quando toda a estrutura do
banco de dados j estiver completamente definida, no necessitando mais de modificaes. Os
detalhes da utilizao do Crystal Reports devem ser obtidos na prpria documentao daquele
programa utilitrio.
5.7.11.7.4 Criando um relatrio padro

De maneira semelhante ao que feito nas telas da aplicao, os relatrios padro tambm
podem ser criados. As opes de configurao para este tipo de relatrio podem tambm ser
acionadas por meio de "Opes/Opes de tela padro", conforme descrito no tpico Definindo
opes da tela padro 256 deste captulo.
boto para tela padro

2007 GAS Tecnologia

214

GAS 2007 - Manual do Usurio

Ao acionar o boto para gerar a tela padro, o GAS cria um relatrio padro na rea de
formatao, tentando alocar tantos campos quanto possvel. Este relatrio pode ento ser utilizado
como ponto de partida para a formatao do relatrio desejado.
5.7.11.7.5 Criando uma janela de previso (preview) para o relatrio

Para garantir que seu relatrio possa ser visto em uma janela de previso na aplicao final, o
projetista ter que, obrigatoriamente, criar uma tela preliminar para o relatrio.
boto para criar previso do relatrio
Tal procedimento poder ser efetuado, selecionando-se o relatrio em questo e clicandose o
boto apropriado na barra de ferramentas do GAS. a partir dessa tela, exibida na figura 5.52, que a
janela de previso acionada.

Figura 5.52

A janela mostrada na figura 5.52, que permite o acionamento da tela de preview para relatrios e
etiquetas, tambm disponibiliza aos usurios do aplicativo final gerado recursos como o destino
(direcionamento) do relatrio (Janela, Impressora, Arquivo ou Destinatrio de Correio), o formato do
arquivo de sada (HTML, Texto (ASCII), Microsoft Word (DOC), JPEG, GIF ou Bitmap), o local e
nome do arquivo de sada, o intervalo de pginas, o nmero de cpias, o tipo de impresso (grfico
ou texto), boto para configurao de impressora e filtragem a ser promovida nos dados a serem
impressos.
Caso seja utilizada a opo "Destinatrio de Correio" pelo usurio da aplicao final gerada, ser
exibida a janela da figura 5.53 para que possam ser definidas algumas informaes.

2007 GAS Tecnologia

Captulo 5 - Operando o GAS

215

Figura 5.53

O usurio final poder utilizar tanto o envio do relatrio gerado via MAPI (aproveitamento das
configuraes j definidas do cliente de e-mail), como por envio direto (alm das informaes
padres para MAPI, devero ser definidos o Servidor SMTP, Nome e E-mail do remetente, etc). Essa
ltima forma de envio independe de cliente de e-mail instalado no equipamento do usurio final. Ao
trmino, ser exibida mensagem de confirmao para o usurio final. Esses recursos proporcionam
uma flexibilidade enorme ao usurio do aplicativo final gerado no momento de imprimir seus
relatrios e etiquetas.
Se esta tela no for criada para um relatrio, o GAS assumir que o relatrio deve ser enviado
diretamente para a impressora e, sendo assim, no disponibilizar, nos fontes, as rotinas para o
acionamento da janela de previso.
5.7.11.7.6 Formatando um relatrio

Para a formatao de um novo relatrio, alguns ajustes preliminares devem ser efetuados por
meio da janela de propriedades, que conhecemos da formatao de telas.
5.7.11.7.6.1 Propriedades do relatrio

As propriedades a seguir devero ser ajustadas para o relatrio. Clicando-se no fundo da rea de
formatao do relatrio, o projetista dever conferir as suas propriedades:

Propriedade

2007 GAS Tecnologia

Descrio

216

GAS 2007 - Manual do Usurio

Altura e largura til


ajustada automaticamente pelo GAS. Todas as impressoras trabalham com
uma rea til do papel que obtida por meio dos descontos das quatro margens
do papel
(topo, esquerda, direita e fundo), onde a impressora no consegue imprimir
informaes (espao deixado para tracionamento do papel, etc). Essas margens
variam de acordo com a marca e modelo da impressora. O GAS assume para a
rea de formatao somente a rea til do papel, ou seja, desconta as margens e
considera apenas a rea onde a impressora efetivamente disponibiliza
informaes. Para maiores detalhes, veja o item Consideraes sobre margens de
papel, sob o tpico Opces para personalizar a operao do GAS - Configuraes,
neste captulo.
Condio
impresso

de

Filtro inicial

Esta propriedade, aplicada ao relatrio, utilizada para determinar se o registro


bsico do relatrio ser impresso. Aqui, pode ser utilizada uma expresso
diretamente na rea apropriada ou por intermdio do Editor de Programas do
GAS. Se existir uma condio especificada, o GAS criar no programa fonte a
instruo "IF.." para testar se o registro ser ou no impresso.
Esta propriedade semelhante anterior. O que as diferencia o fato de que,
na anterior, um "IF..." criado permitindo maior flexibilidade, sendo porm mais
lenta. J nesta, a expresso de filtragem ser incorporada expresso SQL do
relatrio (clusula WHERE). Por isso, este filtro limitado aos seguintes detalhes:
O primeiro operando da expresso tem que ser um campo da tabela bsica
do relatrio;
O segundo operando pode ser qualquer um dos campos das tabelas
relacionadas, campos recebidos na tela, etc.

Distncia
registros

entre

Informe a distncia, em milmetros, entre um registro e outro do relatrio.


Observe que, se existirem outras informaes impressas entre um registro e outro
(como, por exemplo, um subrelatrio), esta medida ser aplicada sempre aps
estas informaes terem sido impressas.

Fonte

Estabelece a fonte default para os objetos a serem disponibilizados no relatrio.


Logicamente, podem ser alteradas, posteriormente, em nvel do prprio objeto.

Ordem

Estabelece a ordem a ser obedecida para a impresso dos registros do


relatrio. Vrios campos podem ser concatenados para formar a expresso de
ordenao do relatrio. A partir da janela que permite o acionamento da tela de
preview para relatrios e etiquetas, o usurio do aplicativo final gerado poder
ainda estabelecer ordenaes a seu critrio, tendo como base os campos
envolvidos no relatrio.

Orientao

Estabelece a posio do papel a ser utilizada durante a formatao e


impresso do relatrio. As opes so retrato (vertical) e paisagem (horizontal).

2007 GAS Tecnologia

Captulo 5 - Operando o GAS

217

Posio mxima para


a posio mais baixa da folha a ser considerada para imprimir informaes
que no sejam ajustadas como mscara de pgina, isto , estabelece o limite para
dados
se imprimir informaes que variam de posio (impressas a cada registro).
Normalmente, esta propriedade j vem ajustada igual altura til da pgina do
relatrio. O ajuste dessa propriedade para um nmero um pouco menor, possibilita
a insero de rodaps nas pginas
Saltar pgina

2007 GAS Tecnologia

utilizada para estabelecer se, aps a impresso de um registro, uma pgina


dever ser saltada.

218

GAS 2007 - Manual do Usurio

Tamanho do papel

Selecione o tamanho do papel (tipo utilizado pela maioria das impressoras - A4,
Letter, etc.). Esta propriedade ir influenciar as propriedades altura e largura til do
papel.
A rea de formatao de relatrio, representada pela figura 5.54, bastante
semelhante rea de formatao de telas, com a diferena de que, no caso de
relatrios, duas rguas, uma vertical e outra horizontal so disponibilizadas, com
marcao em milmetros, de modo a facilitar ao projetista a insero de objetos na
rea. Ao ser movido um objeto nesta rea, uma fina linha projetada sobre a
rgua, permitindo a visualizao correta de sua posio. Os relatrios so
formatados por meio da insero de objetos e do ajuste de suas propriedades. A
figura a seguir mostra as ferramentas de formatao de relatrios:

Figura 5.54

Objetos do tipo label ou texto3d so utilizados para a impresso de


informaes textuais ao passo que objetos do tipo imagem so utilizados para
exibir imagens. Essas informaes podero ou no estar vinculadas aos campos
das tabelas eleitas para o relatrio. Linhas tambm podem ser inseridas para
melhorar a apresentao visual do relatrio.

5.7.11.7.6.2 Seleo de controles com "retngulo de seleo"

Para facilitar o design de formulrios e relatrios o GAS-2007 permite que o projetista possa fazer
seleo de mltiplos controles utilizando caixa se seleo definida com o mouse (clicando no fundo e
arrastando), como acontece na interface de formatao do Visual Studio bem como de outras
ferramentas;

2007 GAS Tecnologia

Captulo 5 - Operando o GAS

219

5.7.11.7.6.3 Mltiplos filtros

Para todos os filtros definidos, janelas de dados, grids ou relatrios, o projetista tem a opo de
definir vrios filtros distintos, de um mesmo mdulo, segundo condies definidas;

5.7.11.7.6.4 Colocando um campo no relatrio

Os campos disponveis nas tabelas selecionadas para o relatrio podem ser capturados por meio
da lista (combobox) existente na janela de propriedades. Quando um campo disponibilizado na
tela, desta maneira, dois objetos do tipo label so utilizados - um para o ttulo do campo e outro para
o contedo. Algumas propriedades como, por exemplo, mscara, alinhamento, imprimir a cada
registro, etc. j vm pr-ajustadas. Outra maneira de disponibilizar campos na tela selecionar um
objeto na tela de ferramentas de relatrio e ajustar a sua propriedade Campo para o campo desejado.
Os trs objetos existentes para se imprimir informaes no relatrio so label, texto 3d, imagem e
linhas:
Label
Utilizados para informaes textuais vinculadas ou no a campos. As propriedades possveis para
este objeto so:
Alinhamento - Estabelece se a informao impressa ser alinhada esquerda ou direita
ou, ainda, se ser centralizada ou justificada (ambos os lados). Em se tratando de campos
numricos, o GAS j dispe automaticamente um alinhamento direita.

2007 GAS Tecnologia

220

GAS 2007 - Manual do Usurio

Altura - Determina a altura do label em milmetros.


Apelido - o apelido do campo que, porventura, esteja associado ao label. O contedo do
campo ou da frmula deste label associado a este apelido e o mesmo poder ser
referenciado em outros labels ou texto3D, como parte de clculos de frmulas.
Campo - Poder ser preenchida com um nome de campo existente nas tabelas eleitas para
o relatrio. Todas as informaes definidas para este campo so utilizadas para preencher
outras propriedades inerentes a esse label, como, por exemplo, mscara, imprimir, largura,
etc.
Cor do fundo - Utilize esta propriedade se desejar imprimir a informao dentro de um
retngulo em cor diferente. Normalmente, esta propriedade utilizada em conjunto com a
propriedade "Tipo de borda" para que informaes sejam impressas em um retngulo
colorido.
Esquerda - Distncia em milmetros do controle em relao borda esquerda do papel
(incio da rea til).
Expandir - Estabelece se a informao contida no label ir ser truncada na largura deixada
pelo projetista para o mesmo ou se ser expandida de modo a imprimir toda a informao.
Se esta propriedade for ajustada para Sim, nos campos que no forem do tipo memo, o
texto ser impresso na totalidade de sua largura, independentemente de se sobrepor a
outro campo que estiver frente. Em campos do tipo memo, esta expanso considerada
verticalmente.
Fonte do ttulo - Estabelece a fonte a ser utilizada para imprimir a informao.
Frmula - Utilize esta propriedade para exibir frmulas envolvendo campos, operaes
aritmticas, concatenao de strings, ou, at mesmo, criar funes complexas em Visual
Basic, utilizando o editor do GAS, as quais retornem valores a serem impressos no relatrio.

Imprimir - Tem por finalidade estabelecer o momento em que a informao dever ser
impressa. Esta propriedade deve ser observada com bastante ateno, pois a que,
provavelmente, levantar maior quantidade de dvidas. As opes so:
1. Como mscara de pgina - Se esta opo for selecionada, a informao ser
impressa de maneira esttica na pgina. Informaes impressas como mscara de
pgina so dispostas antes de qualquer outra informao. Por isso, esta ajustagem
deve ser utilizada sempre quando a informao for esttica e for aparecer em um ponto
fixo de cada uma das pginas do relatrio, como, por exemplo, uma linha, uma imagem
no vinculada a campo, um texto que o projetista queira imprimir em todas as pginas
naquela posio, ttulo do relatrio, cabealho de colunas, rodaps, etc.;
2. Incio da pgina - Utilizada para imprimir informaes uma nica vez em cada pgina,
diferindo da opo anterior pelo aspecto de poder ser impressa em posio varivel.
utilizada normalmente para informaes do tipo, por exemplo, "Saldo da pgina
anterior";

2007 GAS Tecnologia

Captulo 5 - Operando o GAS

221

3. Incio do relatrio - Esta opo deve ser escolhida se a informao deve ser
impressa, uma nica vez, no incio do relatrio (somente na primeira folha), logo aps o
cabealho. Da segunda folha em diante, essa informao suprimida e todas as
informaes subseqentes ajustadas com posio varivel "sobem", ou seja, so
impressas mais acima, ocupando o seu lugar;
4. A cada registro - Esta a informao que deve ser utilizada para imprimir contedos
de campos oriundos do banco de dados. Observe cuidados especiais ao utilizar esta
opo em relatrios que possuam quebras. Neste caso, se esta opo for utilizada, a
informao ser impressa como se fosse um cabealho de quebra (semelhante
opo 7, como mscara da quebra);
5. Fim do relatrio - Utilize esta opo para informaes que sero impressas, uma
nica vez, na ltima folha do relatrio. Normalmente, utilizada para impresso de
dados como "Total Geral", por exemplo, podendo ter posio varivel, o que possibilita
a sua impresso logo abaixo da ltima informao impressa;
6. Fim da pgina - Semelhante ao anterior; porm, considerando a pgina do relatrio.
Normalmente, utilizado para dados como "Total da Pgina", por exemplo, podendo
tambm ter posio varivel;
7. Como mscara Quebra N - Se o relatrio contiver quebras, este ajuste deve ser
utilizado para imprimir informaes estticas pertencentes quebra, como, por
exemplo, o cabealho da quebra;
8. Incio Quebra N - Utilizada para imprimir informaes, uma nica vez, a cada quebra
N, diferindo da opo anterior pelo aspecto de poder ser impressa em posio varivel;
9. A cada registro da Quebra N - Se o relatrio possui quebras, esta opo deve ser
ajustada para todas as informaes que sero impressas na referida quebra;
10.Fim da quebra N - Utilize esta opo para imprimir informaes como "Total da
Quebra" ou rodaps de quebra.
Inicializar - Utilizada somente quando a propriedade Totalizador estiver ajustada para uma
opo diferente de No. Determina em que ponto do relatrio a varivel que controla o
totalizador ser inicializada com 0 ou com o valor estabelecido pela propriedade "Valor
inicial".
Largura - a largura, em milmetros, que ser assumida para a impresso da informao,
que a prpria largura do label disponibilizado na rea de formatao. Se a propriedade
Expandir estiver ajustada para No, a informao ser truncada nessa largura.
Mscara - Informe a mscara para formatar a informao a ser impressa. Podem ser
utilizadas as mesmas mscaras disponveis quando da definio de campos para as
tabelas.
Omitir se igual - Esta informao utilizada para inibir a impresso de informaes iguais
nos registros subseqentes. normalmente utilizada em agrupamentos de registros para
inibir informaes repetitivas. As opes so:

2007 GAS Tecnologia

222

GAS 2007 - Manual do Usurio

1. No - A informao ser sempre impressa com relao aos registros subseqentes;


2. No relatrio - Se o contedo deste campo no for alterado durante a emisso do
relatrio, essa informao nunca mais ser impressa;
3. Na pgina - Se o contedo deste campo no se alterar dentro da mesma pgina, s
voltar a ser impresso na pgina seguinte;
4. Em quebra N - Se o contedo deste campo no se alterar dentro da mesma quebra,
s ser impresso nos registros da quebra seguinte.
Posio - Designa se a informao ser impressa de modo fixo, ou seja, sempre na
mesma posio dentro da pgina ou se a sua posio ir variar de acordo com os registros
impressos. Quando um campo vinculado a um label, o GAS automaticamente ajusta essa
propriedade para 1 (varivel). H casos em que o projetista poder querer que um campo
seja impresso em posio fixa, como, por exemplo, em cabealho ou rodap (mscara de
pgina). Neste caso, dever alterar essa propriedade para 0 (fixa).
Tipo de borda - Ajustando-se esta propriedade para 1 (Sim), a informao ser impressa
em um retngulo. A propriedade "Cor do fundo" pode ser utilizada para colorir este
retngulo.
Tipo de dado - Informe o tipo de dado a ser impresso por meio do label. Essa propriedade
altera a propridade Alinhamento, de acordo com o tipo de dado escolhido.
Topo - Representa a distncia, em milmetros, do label em relao borda de cima do
papel (incio da rea til);
Totalizador - Estabelece o momento em que o contedo (propriedade Campo ou Frmula)
deste label ser totalizado. Essa informao pode ser ajustada para 0 (No) ou pode, ainda,
ser ajustada como totalizador a cada registro ou a cada registro de quebras.
Transparente - Esta propriedade, quando ajustada para 1 (Sim), permite que se imprima
texto sobre outros objetos, como, por exemplo, imagens, de modo transparente, ou seja, as
letras sero recortadas e disponibilizadas sobre o objeto que estiver abaixo.
Ttulo - utilizada para determinar a informao que ser impressa no label. Se um campo
estiver vinculado por meio da propriedade Campo, o contedo deste campo oriundo da
tabela que ser impresso no lugar desta propriedade. mais utilizada para imprimir
ttulos de relatrios, colunas, etc.
Valor inicial - Somente utilizado no caso de totalizadores, onde uma expresso ou
funo pode ser utilizada como valor inicial do totalizador, como, por exemplo, transporte de
valor do ms passado, etc.
Visvel - Informe uma expresso para que a informao seja impressa ou no.
Texto 3D

2007 GAS Tecnologia

Captulo 5 - Operando o GAS

223

Este objeto pode tambm ser utilizado para a impresso de informaes textuais em
relatrios, com efeitos visuais mais interessantes. A sua utilizao semelhante do label,
descrito no item anterior. A maioria de suas propriedades so idnticas s daquele objeto, sendo,
portanto, utilizadas da mesma forma. A seguir, esto descritas apenas as propriedades aplicadas
exclusivamente a este objeto:
ngulo - Especifique o ngulo, em graus, a ser utilizado para imprimir a informao. A faixa
aceitvel de 0 (normal) at 359 graus.
Contorno - Determina se o texto a ser impresso ir apresentar uma linha de contorno
(outline).
Cor do contorno - Caso a primeira propriedade esteja ajustada para 1 (Sim), esta
propriedade determina a cor a ser utilizada para colorir o contorno das letras.
Cor da sombra - Especifica a cor da sombra a ser projetada pelo texto, caso a propriedade
"Tamanho da sombra", a ser vista mais adiante, esteja ajustada para um nmero maior do
que zero.
Figura - Permite a designao de uma imagem para ser exibida no fundo do texto 3D.
Fonte - Determina a fonte, tamanho e cor a ser utilizada na informao a ser impressa.
Tamanho da sombra - Especifique o tamanho (em pontos) da sombra a ser projetada pelo
texto impresso.
Imagem
Este objeto pode ser utilizado para imprimir nos relatrios, campos do tipo multimdia
contendo imagens ou mesmo imagens estticas no vinculadas a campos das tabelas
selecionadas para o relatrio. Todas de suas propriedades podem ser utilizadas exatamente
como as propriedades dos labels ou texto 3D. O que existe de diferente neste objeto a
propriedade "Expande figura" que, se ajustada para 1 (Sim), determina que a imagem deve ser
ajustada ao tamanho deixado pelo projetista na rea de formatao.
Linha
Este objeto imprimir uma linha em seu relatrio. As propriedades so algumas das
disponibilizadas para labels ou texto 3D. A propriedade diferente, trata-se da:
Direo - Determina a direo da linha, podendo ser:
1. Horizontal
2. Vertical
3. Diagonal para baixo

2007 GAS Tecnologia

224

GAS 2007 - Manual do Usurio

4. Diagonal para cima


5.7.11.7.6.5 Inserindo sub-relatrios

Diversos sub-relatrios com relacionamento 1-N podem ser facilmente inseridos nos relatrios
formatados pelo G-Reports do GAS. Para inserir sub-relatrios, proceda conforme se segue:
Na rvore do projeto, insira um sub-relatrio abaixo de um mdulo do tipo relatrio;
Da mesma forma descrita para mdulos do tipo tabela, explicada anteriormente neste manual,
informe, se necessrio, as informaes nas abas correspondentes a Geral, Tabelas auxiliares e
Opes, sendo que nesta ltima se deve estabelecer a relao de ligao com o mdulo pai.
Se esta ligao no for estabelecida, todos os registros constantes na tabela bsica do
subrelatrio sero impressos na sua totalidade, ou seja, no aparecem vinculados 1-N;
Selecione, na rvore do projeto, o mdulo principal do relatrio (pai) e acesse a formatao do
relatrio por meio do boto apropriado, j mostrado neste captulo, que se encontra na barra de
ferramentas do GAS;
Posicione, na rea de formatao, os campos do mdulo pai, ajustando todas as suas
propriedades, conforme necessrio;
Insira um sub-relatrio na rea de formatao, clicando sobre o boto apresentado abaixo,
existente na barra de ferramentas de relatrio;
boto para inserir subrelatrio
Vincule uma tabela ao sub-relatrio, por meio da propriedade Tabela. Note que esta
propriedade pode ser preenchida somente com as tabelas inseridas na rvore abaixo do
mdulo pai.
Posicione os campos dessa tabela na rea de formatao do sub-relatrio, ajustando as suas
propriedades conforme necessrio. Essas propriedades so semelhantes s descritas nos
tpicos acima. Vale salientar que a facilidade do relatrio padro poder tambm ser utilizada
para o posicionamento dos campos no subrelatrio, bastando selecionar a rea de formatao
do subrelatrio e acionar a gerao do relatrio padro.
5.7.11.7.6.6 Colocando um totalizador no relatrio

Para criar um totalizador de uma coluna, o projetista deve criar um label com o valor a ser
impresso (normalmente, j est posicionado no relatrio). Dever tambm criar um segundo label e
ajustar as propriedades:
Campo
Estabelea o campo numrico que dever ser totalizado por meio do label inserido na rea de
formatao. Este o mesmo campo que consta no label da coluna a ser totalizada;

2007 GAS Tecnologia

Captulo 5 - Operando o GAS

225

Totalizador
Estabelea o tipo de totalizao desejada;
Posio
Estabelea tambm a posio onde dever aparecer o total ou subtotal. Observe que as posies
dos totalizadores no esto presas a posies exatamente abaixo de campos totalizados na mesma
pgina. Por exemplo, desde que o resultado de uma totalizao esteja dentro de uma mesma
pgina, o seu valor poder ser impresso nesta pgina, inclusive em cabealhos e rodaps.
5.7.11.7.6.7 Colocando uma quebra no relatrio

Qualquer quantidade de quebras podem ser inseridas em um relatrio do G-Reports. Quebras


so estabelecidas da seguinte maneira: Por meio da barra de ferramantas de relatrios, selecione o
objeto Quebra, representado pelo boto a seguir:
boto para inserir quebra no relatrio
Defina as suas propriedades que so, praticamente, as mesmas j descritas para os demais
objetos com exceo de:
Expresso
Defina a expresso que comandar a quebra;
Saltar pgina
Designa se uma pgina deve ser saltada a cada quebra.
importante observar que, aps inseridas as quebras, as propriedades inerentes aos campos,
especialmente a propriedade Imprimir... pode apresentar a necessidade de ser alterada para atender
s necessidades.
5.7.11.7.6.8 Imprimindo um cdigo de barra em relatrio ou etiqueta

A insero de cdigos de barras em relatrios ou, mais freqentemente em etiquetas, bastante


simples. A Gas Tecnologia desenvolveu oito conjuntos de fontes true-type para a impresso dos
seguintes cdigos de barras: EAN-13, EAN-8, UPC-A, cada uma delas com dois estilos (normal e
curto) e, ainda, o Cdigo 2/5 interleaved e o Cdigo 3 de 9. Alm disso, o GAS contempla tipos de
campos instrnsecos para informao dos diversos cdigos de barras. Para disponibilizar um cdigo
de barras no relatrio, proceda conforme se segue:
Insira um label na posio desejada;
Vincule-o a um campo de cdigo de barras que tenha sido definido nas tabelas eleitas para o
relatrio;

2007 GAS Tecnologia

226

GAS 2007 - Manual do Usurio

Ajuste a sua fonte e tamanho para o cdigo desejado. Na realidade, o segundo passo no
obrigatrio. Qualquer informao pode ser utilizada para imprimir cdigos de barras, desde que
sejam obedecidas as regras a seguir:
Tipos EAN-13, EAN-8 e UPC-A aceitam somente dgitos numricos e tm de ter o tamanho
exato de 13, 8 e 12 caracteres, respectivamente, incluindo o dgito verificador.
Tipo 2/5 interleaved tambm aceita somente nmeros; porm, no est limitado a tamanho,
embora, dependendo da quantidade de informao, pode ficar impraticvel a sua leitura.
Tipo 3 de 9 pode tambm aceitar letras (maisculas), tambm no tendo limite terico de
tamanho, embora, na prtica, uma certa quantidade de caracteres pode ocasionar dificuldades
de leitura para recuperao do cdigo. O tamanho das fontes utilizadas para impresso de
cdigos de barras, normalmente, devem ser ajustados em valores bem maiores do que o
normal. Tipicamente, apenas como sugesto, as fontes 2/5 interleaved e 3/9 apresentam bom
resultados nos tamanhos entre 20 e 22 pontos, enquanto as demais podem precisar de ajustes
com valores acima de 28 pontos.
5.7.11.7.6.9 Imprimindo valores em cores diferentes no relatrio

Posicionando dois labels em posies idnticas e ajustando-se as condies de visiblidade por


meio da propriedade Visvel e, ainda, manipulando-se a cor da fonte a ser utilizada para imprimir a
informao, fica bastante fcil imprimir-se, por exemplo, valores negativos em vermelho e positivos
em preto.
Consideraes sobre o funcionamento intrnseco dos relatrios
Em linhas gerais, os relatrios so gerados da seguinte forma:
Aps o relatrio ter sido definido, o GAS separa os objetos e campos em grupos definidos pela
propriedade Imprimir ("Como mscara da pgina", "Incio do relatrio", "Incio da pgina", "A cada
registro", etc). Os grupos so impressos na seguinte ordem:
1. Como mscara da pgina;
2. Incio do relatrio;
3. Incio da pgina;
4. A cada registro;
4. 1 Como mscara de quebra;
4. 2 Incio de quebra;
4. 3 A cada reg quebra;
4. 4 Fim de quebra;

2007 GAS Tecnologia

Captulo 5 - Operando o GAS

227

5. Fim da pgina;
6. Fim do relatrio.
No momento apropriado impresso de cada um dos grupos, estes so separados em trs
subgrupos: sub-relatrios, campos memo e outros (restante dos objetos). Os subgrupos so sempre
gerados na seguinte ordem:
1. Subgrupos outros;
2. Subgrupos de campos memo;
3. Subgrupos de sub-relatrios.
Os campos memo de cada grupo so sempre impressos simultaneamente, podendo inser-los
um ao lado do outro que sero impressos normalmente. Entretanto, o projetista dever tomar
cuidados especiais quando quiser inser-los abaixo um do outro, pois poder ocorrer sobreposio
dos mesmos. Existem duas formas para inserir um campo memo abaixo de outro. A primeira inserir
o campo memo superior com a propriedade Expandir definida como No. Desta forma, o projetista
determinar o tamanho mximo para este campo. A segunda forma definir um sub-relatrio que
utiliza a mesma tabela base do relatrio e, nele, inserir o campo memo desejado. Por meio desta
segunda opo, o projetista no ter sobreposio de campos e os campos memo sero impressos
em sua totalidade. No caso dos sub-relatrios, estes tambm so divididos em grupos e subgrupos,
obedecendo a mesma regra descrita acima.
5.7.11.7.7 Formatando etiquetas

Os procedimentos para a definio e formatao de etiquetas so idnticos aos adotados para a


confeco de relatrios convencionais. Tambm no caso das etiquetas, se o projetista quiser
proporcionar janela de previso (preview) na aplicao final, ter de criar uma tela inicial (pode utilizar
a tela padro), a partir da qual o usurio far o acionamento da janela de previso. Pela sua
natureza, as propriedades de relatrios do tipo etiquetas diferem das dos relatrios convencionais.
Para v-las, o projetista dever clicar na rea de formatao da etiqueta. A seguir, apenas as
propriedades inerentes s etiquetas sero descritas. As demais propriedades podem ser
referenciadas no que foi descrito para as propriedades dos relatrios, anteriormente visto neste
captulo:
Altura da etiqueta - Informe a altura, em milmetros, das etiquetas existentes no formulrio a
ser impresso;
Distncia carreiras - Informe a distncia vertical, em milmetros, entre uma etiqueta e a que
est sua direita;
Distncia colunas - Esta propriedade define a distncia horizontal, em milmetros, entre uma
etiqueta e outra, que esteja imediatamente abaixo;
Duplicatas - Informe a quantidade de etiquetas idnticas que devem ser impressas para cada
registro lido do banco de dados, ou seja, a quantidade de etiquetas a ser impressa para o
mesmo produto;

2007 GAS Tecnologia

228

GAS 2007 - Manual do Usurio

Largura da etiqueta - Informe a largura, em milmetros, da etiqueta a ser utilizada na


impresso. Com respeito a esta propriedade e seguinte, veja detalhes no item Consideraes
sobre margens de papel, sob o tpico Opces para personalizar a operao do GAS
-Configuraes, neste captulo;
Margem esquerda - a medida horizontal, em milmetros, da primeira posio til do papel
at a primeira etiqueta;
Margem superior - a medida vertical, em milmetros, da primeira posio til do papel at a
primeira etiqueta;
Quantidade de carreiras - No sentido vertical, a quantidade de carreiras de etiquetas
existentes no formulrio;
Quantidade de colunas - Informe a quantidade de colunas de etiquetas existentes no papel.
5.7.11.8 Definindo um programa executvel
Se o projetista desejar acionar um programa executvel de algum ponto do menu da aplicao,
onde tenha inserido na rvore do projeto, esta definio deve ser efetuada, na interface da figura
5.55, da seguinte maneira:

Figura 5.55
5.7.11.8.1 Ttulo no menu

Informe um ttulo para constar na opo do menu da aplicao final que ir acionar o programa.
5.7.11.8.2 Programa executvel

Informe o nome completo (drive, path e nome) do programa executvel a ser acionado. Se
desejar, o projetista poder clicar sobre o boto com reticncias para abrir o dilogo de localizao
deste programa.

2007 GAS Tecnologia

Captulo 5 - Operando o GAS

229

5.7.11.8.3 Mdulo pronto

Marque esta opo para informar ao GAS que este mdulo est pronto para ser gerado quando
solicitada a gerao dos programas fontes da aplicao.
5.7.11.9 Integrando um formulrio existente ao projeto
Enter topic text here.
5.7.11.9.1 Ttulo no menu

Informe um ttulo para que este formulrio seja acionado na aplicao.


5.7.11.9.2 Nome do formulrio

Informe o nome do formulrio a ser integrado ao projeto. Se desejar, o projetista poder clicar
sobre o boto com reticncias para abrir o dilogo de procura do formulrio desejado.
5.7.11.9.3 Mdulo pronto

Marque esta opo para informar ao GAS que este mdulo j poder ser gerado.

Figura 5.56

Um formulrio existente integrado a um projeto ir figurar no menu da aplicao final e o GAS


criar uma linha para exib-lo, assim que o usurio clicar sobre a opo. possvel tambm, inserir
mdulos (.BAS), formulrios (.FRM) e classes (.CLS) nos projetos do GAS, sem que apaream no
menu, bastando clicar na aba denominada Miscelnea, na definio do projeto. Consulte o tpico
Inserindo Mdulos e Formulrios Adicionais neste manual.
A integrao de formulrios existentes nos projetos de responsabilidade do projetista. Nenhuma
verificao de integridade e compatibilidade com o resto do projeto ser efetuada pelo GAS, que ir
simplesmente integrar este mdulo no menu da aplicao. Por isso, o projetista dever ter a certeza
de que o cdigo escrito para este formulrio compatvel com o resto dos mdulos, principalmente
no compartilhamento de variveis, funes pblicas, etc.

2007 GAS Tecnologia

230

GAS 2007 - Manual do Usurio

Todos os forms no modais das aplicaes do GAS necessitam que algumas variveis pblicas
sejam nele definidas. Essas variveis armazenam caractersticas ou situaes do mesmo. Por isso,
os forms existentes integrados ao projeto tm que, obrigatoriamente, conter essas variveis para
evitar erros em rotinas internas e genricas da aplicao. Essas variveis tm de ser declaradas
como Pblicas no mdulo genrico do form:

Varivel

Valor a ser atribudo

vgSituacao

ACAO_NAVEGANDO

vgCaracteristic
a

F_COMUM

vgTipo

TP_COMUM

vgFormID

(um nmero negativo


qualquer)

5.7.11.10Criando um formulrio avulso no projeto


Para criar um formulrio avulso no projeto de uma aplicao, o projetista dever, aps inser-lo na
rvore do projeto, utilizar a interface da figura 5.57 a seguir:

Figura 5.57
5.7.11.10.1 Geral e Tabelas auxiliares

Esses dois aspectos da definio de um formulrio avulso so idnticos aos da definio dos

2007 GAS Tecnologia

Captulo 5 - Operando o GAS

231

mdulos explicados anteriormente. Neste mdulo obrigatrio o projetista criar uma tela
complementar para receber as variveis desejadas e que justifique a criao do form.
5.7.11.11Criando uma tela complementar
A criao de telas complementares serve para propocionar um meio de captao de variveis
cujos contedos so utilizados em alguns tipos de mdulos gerados pelo GAS, como, por exemplo,
relatrios, etiquetas, processos pr-definidos, consultas, etc. Para a criao deste tipo de tela, o
projetista deve proceder de maneira semelhante descrita para a criao de janelas para entrada de
dados, exposta anteriormente neste captulo, contando com as facilidades do Editor de recursos
cuja operao descrita, um pouco mais adiante, neste captulo sob o ttulo Utilizando o Editor de
Recursos. Algumas diferenas bsicas devem, no entanto, serem observadas:
As telas complementares no apresentam campos do banco de dados na lista para serem
posicionados na tela. As variveis devem ser recebidas por meio do objeto gMask, exibido a
seguir, que pode ser inserido na tela e ter as suas propriedades designadas;
boto para inserir o objeto gMask
A propriedade Campo, ao ser atribuda ao objeto gMask, no vincula o campo selecionado a
nenhuma tabela do banco de dados, servindo apenas para captar as caractersticas desse
campo, como mscaras, validaes, etc.
Ao invs da lista de campos existente nas janelas para entrada de dados, apresentada uma
lista contendo dois objetos pr-programados, que podem ser disponibilizados na tela:
5.7.11.11.1 Boto continua

Se inserido na tela, este boto ir automaticamente executar todas as crticas e validaes das
variveis designadas para serem recebidas na tela e para as quais tenham sido designadas as
propriedades Validao, Mensagem, etc. A propriedade "Ao no clique", que deve ser designada e
programada pelo projetista, ser executada logo aps essas validaes.
5.7.11.11.2 Boto cancela

Se inserido na tela, este boto estar prprogramado para simplesmente descarregar o form.
no caso de mdulos do tipo Relatrio ou Etiqueta, mais alguns objetos estaro disponveis
para, opcionalmente, serem inseridos na tela, permitindo a criao de uma interface bastante
elaborada. Todos esses objetos j esto pr-programados segundo a sua funo:
5.7.11.11.3 Nmero de cpias

Campo do tipo rotativo para que o usurio informe o nmero de cpias a serem emitidas do
relatrio ou etiqueta.

2007 GAS Tecnologia

232

GAS 2007 - Manual do Usurio

5.7.11.11.4 Destino do relatrio

disponibilizado um frame e 3 botes de rdio para que o usurio selecione o destino do


relatrio, ou seja, selecione se a sada ser para janela, arquivo ou impressora.
5.7.11.11.5 Formato do arquivo

O projetista poder disponibilizar este objeto para permitir ao usurio designar o formato do
arquivo a ser exportado, caso tenha escolhido destinar o relatrio para um arquivo. Diversos formatos
esto disponveis.
5.7.11.11.6 Arquivo de sada

Caso o usurio tenha selecionado destinar o relatrio para um arquivo, este objeto utilizado para
receber o nome do arquivo a ser gerado. J vem com interface completa constante de um objeto
gMask, com ttulo e boto para ativar o dilogo de arquivos.
5.7.11.11.7 Impressora padro

O projetista pode disponibilizar este objeto na tela para exibir qual a impressora configurada como
padro no Windows.
5.7.11.11.8 Critrio

Este objeto deve ser inserido na tela para exibir o critrio de seleo de registros (expresso
SQL), caso o boto filtra a seguir tenha tambm sido inserido.
5.7.11.11.9 Boto Filtra

Este boto, se inserido na tela, serve para o usurio ativar a interface de montagem da expresso
SQL que define a seleo de registros do relatrio ou etiqueta.
5.7.11.11.10 Configura impressora

Este boto, se inserido na tela, permite ao usurio ativar o dilogo padro do Windows para
configurar impressoras.
5.7.11.12Definindo mdulos para impressora fiscal
A compatibilidade dos aplicativos gerados pelo GAS com a Emisso de Cupom Fiscal e TEF Transferncia Eletrnica de Fundos Discada fora disponibilizada de forma a oferecer a maior
flexibilidade possvel ao projetista. O Captulo 12- O GAS Como Ferramenta de Desenvolvimento
retrata as mais diversas formas de se implementar a Emisso de Cupom Fiscal e TEF Discada s
aplicaes geradas.
5.7.11.13Mdulos de apoio Emisso de Cupom Fiscal e TEF
Os mdulos de apoio Emisso de Cupom Fiscal e TEF Discada tm por finalidade

2007 GAS Tecnologia

Captulo 5 - Operando o GAS

233

proporcionar maior flexibilidade na manuteno da impressora fiscal, efetuando diversas operaes


fiscais, tais como fechamento de caixa, alterao de horrio de vero, sangria, cancelamento de
itens, etc. O Captulo 12- O GAS Como Ferramenta de Desenvolvimento 442 retrata a
funcionalidade de cada um dos mdulos de apoio Emisso de Cupom Fiscal e TEF Discada
presentes, opcionalmente, nas aplicaes geradas com o GAS.
5.7.11.14Definindo rotina de backup para a aplicao
O projetista poder definir rotina de backup do banco de dados da aplicao final de modo fcil e
intuitivo.
A execuo do servio pode ser feita diretamente da aplicao, com isto, o projetista oferece
maior controle ao usurio de seus sistemas, visto que possvel ativar e desativar o servio de
backup, bem como visualizar se o mesmo encontra-se ativo.
Para habilitar tal rotina, o projetista dever inserir, sob o menu Arquivo da rvore do projeto, a
opo Configuraes de backup, como mostra a figura abaixo.

Figura 5.30

Alm de inserir a opo acima referenciada, o projetista dever instalar o servio de backup no
ambiente do usurio final. Para isso, disponibilizado junto com a instalao do GAS o utilitrio
BACKUPSERVICE.EXE, que incorporado automaticamente ao kit de instalao do aplicativo final
gerado. Para instalar o servio de backup, instalao tal que dever ser efetuada no servidor de
arquivos, o projetista dever:
Primeiramente, copiar o arquivo BACKUPSERVICE.EXE para um diretrio do servidor. Como
a configurao desse servio ser efetuada a partir do aplicativo final gerado, utilizado nas
estaes de trabalho, ao menos um usurio dever ter permisso de escrita no diretrio do
servio.
Aps copiar o arquivo, via menu "Iniciar/Executar" do Windows, execute a linha de comando
<diretrio do servio>\backupservice.exe -i. Aps instalado o servio, ser exibida uma janela

2007 GAS Tecnologia

234

GAS 2007 - Manual do Usurio

mencionando o sucesso da instalao do mesmo.


Cabe ressaltar que no h restries de instalao do servio de backup no Windows 9X e
M E, devendo ser informada a mesma linha decomando para instalao do mesmo.
Caso o servidor do usurio final utilize o Windows NT, 2000, XP ou outras variantes NT, uma
vez que o servio esteja instalado, o projetista dever inicializ-lo da primeira vez. Para isso, os
procedimentos a seguir devem ser observados:
1. Windows 2000 ou XP - Acessar o menu Iniciar/Configuraes/Painel de controle/
Ferramentas Administrativas/Servios, clicar com o boto direito do mouse sobre o servio
denominado GAS Backup Service e ento clicar em "Iniciar" para rodar o servio.
2. Windows NT - Acessar o menu Iniciar/Configuraes/Painel de controle/Servios,
selecionar o servio denominado GAS Backup Service e ento clicar em "Iniciar" para rodar
o servio.
Instalado e inicializado o servio no servidor, a rotina de backup dever ser configurada em uma
estao de trabalho, a partir da qual seja possvel acessar o diretrio do servio. A configurao
de uma boa rotina de backup permitir manter a integridade do banco de dados da aplicao,
em caso de perda ou corrupo da base original. Da advm a vital importncia de se utilizar
bem esse recurso. A configurao da rotina de backup est disponvel no menu
Arquivo/Configuraes de backup.
Ao acessar esse item de menu da aplicao final gerada, apresentada uma janela como a da
figura abaixo:

Figura 5.31
5.7.11.14.1 Aba "Geral"

Arquivo de configuraes
Esse campo permite designar o caminho e nome do arquivo de configurao do backup. Ao
efetuar quaisquer alteraes nas opes de backup, essas so automaticamente gravadas nesse
arquivo e disponibilizadas para o servio de backup. aconselhvel que o endereo seja
discriminado nesse campo utilizando-se o padro UNC (\\servidor\c$\gasbackup\...) e no por drive

2007 GAS Tecnologia

Captulo 5 - Operando o GAS

235

remoto, uma vez que aquele padro garante que todos os usurios acessem por um mesmo
endereo o diretrio do servio no servidor para que as alteraes das configuraes do backup
possam ser escritas.
Quando o diretrio do banco de dados for solicitado ao usurio do aplicativo final gerado, ao ser
este executado pela primeira vez, de extrema importncia para o funcionamento da rotina de
backup que a indicao desse diretrio seja feita no padro UNC (\\servidor\compartilhamento\...).
Esse caminho, gravado no arquivo .INI do aplicativo, passado no arquivo de configuraes do
backup para que o servio possa acessar o banco de dados.
Nome do usurio
Esse campo permite designar o nome do usurio responsvel pela realizao do backup. Alm
de ser utilizada nos comentrios do arquivo de backup a ser criado, essa informao tambm ser
utilizada na notificao a ser encaminhada para os endereos configurados na aba "Notificao".
Senha para compactao
Esse campo designar a senha, de at 20 caracteres, que ser utilizada na criao do backup do
banco de dados. Caso seja necessria a restaurao futura do backup, o usurio dever dever
informar a referida senha para descompactar o backup criado. Caso o campo em questo no seja
preenchido, no ser utilizada senha alguma na compactao.
Complemento
Esse campo define os comentrios que sero inseridos nos arquivos de backup para referncia
futura. O contedo desse campo ser exibido, por exemplo, logo ao abrir o arquivo de backup e no
email de notificao de execuo do backup.
Habilitar backup
Essa opo define se a rotina de backup ser ou no utilizada. Ao desmarcar essa opo,
nenhum dos backups agendados sero executados.
5.7.11.14.2 Aba "Armazenamento"

Diretrio para backup


Esse campo designa o diretrio no qual sero gravados os backups agendados. A critrio do
usurio do aplicativo final gerado, os arquivos debackup criados podero ser gravados pelo servio
em um outro servidor (storage), bastando indicar adequadamente o caminho nesse campo.
Arquivo de backup
Esse campo designa as primeiras letras do nome do arquivo de backup. Os demais caracteres
que formaro o nome do arquivo sero estabelecidos de acordo com a periodicidade do mesmo.
Para exemplificar a nomenclatura utilizada para esses nomes, suponha que esse campo seja
preenchido com a informao "bkp_estoque_bd" e que ainda no tenha sido feito nenhum backup
dirio ou mensal. Assim sendo, o nome do arquivo de backup dirio do dia 20/05/2003 ser

2007 GAS Tecnologia

236

GAS 2007 - Manual do Usurio

"bkp_estoque_bd-D0001-2003-05-20.zip". J o arquivo de backup do ms de maio de 2003 ser


"bkp_estoque_bd-M001-MES-05-2003.zip".
Armazenar backups... Semanalmente, Mensalmente, Anualmente Essa opo determina quais
sero as periodicidades utilizadas no processo de backup, alm do dirio. Obviamente, caso sejam
marcadas respectivamente as opes Semanalmente, ensalmente e Anualmente, sero
ativados os backups semanais, mensais e anuais do banco de dados.
Cabe salientar que esses backups sero realizados na primeira oportunidade que surgir para que
sejam feitos. Assim sendo, para que a lgica desse processo fique mais intelegvel, vamos
exemplificar esse processo. Suponha que no existam quaisquer backups, sejam eles dirios,
semanais, mensais ou anuais. No primeiro agendamento, o servio de backup verificar se existe
backup dirio (para o dia corrente), disparando o processo caso no exista. Caso exista, o servio de
backup verificar se o nmero mximo de backups armazenados para o perodo menor ou igual
quantidade designada no campo "Quantidade de backups que sero armazenados a cada...",
disparando a execuo do backup e convenientemente excluindo ou movendo aqueles mais antigos.
Aps fazer o backup dirio, o servio verificar se j existe um backup semanal para a semana
corrente, mensal para o ms corrente e anual para o ano corrente, executando cada um deles caso
no existam. Por outro lado, caso existam backups para a semana, ms e ano correntes, os backups
para os referidos perodos no mais sero feitos. Somente quando houver uma virada de perodo,
seja ele semanal, mensal ou anual, o bakcup ser novamente executado. Quando houver, por
exemplo, uma virada de semana para outra (sbado para domingo), o servio de backup perceber
que j iniciou uma nova semana e far o backup na primeira oportunidade que tiver (logo aps o
backup dirio ser executado). Caso mesmo no domingo seja efetuado um backup dirio, o semanal
tambm o ser. Assim, muito importante salientar que caso se deseje restaurar um backup da 35a
semana do ano, por exemplo, dever ser restaurado o backup realizado no primeiro agendamento da
36a semana, que logicamente corresponder semana anterior. Essa mesma lgica servir para os
backups mensais e anuais. Para clarificar com mais um exemplo, caso seja necessrio restaurar o
backup do ms de maio (eventos e informaes naquele ms gerados), por exemplo, a restaurao
dever ser efetuada tomando como base o primeiro backup realizado no ms de junho, que
logicamente corresponder ao ms de maio.
Quantidade de backups que sero armazenados a cada... Esse campo mltiplo permite designar
a quantidade de ltimos backups dirios, semanais, mensais e anuais que sero preservados. A
atitude a ser tomada em relao aos backups que se fizerem antigos por esse campo poder ser
determinada pelo campo "Ao com arquivos de backup antigos".
Ao com arquivos de backup antigos
A ao a ser tomada com os arquivos de backup que no mais atenderem s condies
especificadas no campo "Quantidade de backups..." poder ser:
Excluir arquivo - provoca a excluso sumria do arquivo de backup.
Mover para a pasta - provoca a remoo do arquivo de backup para o diretrio aqui
designado.

2007 GAS Tecnologia

Captulo 5 - Operando o GAS

237

5.7.11.14.3 Aba "Notificao"

Enviar e-mail de notificao


Essa opo determina se o envio de notificao de backup estar habilitado ou no. Essa
notificao se faz muito pertinente por reunir diversas informaes, como horrio de incio e fim do
backup, aes realizadas no decorrer do processo, etc. A notificao, em caso de erros ocorridos
durante a execuo do backup, tambm rene informaes que levaram ocorrncia dos
problemas.
Servidor SMTP
Esse campo permite designar o servidor de envio de mensagens que permita o envio da
notificao.
Enviar para
Permite designar o endereo de e-mail para o qual ser enviada a notificao. Caso queira
envi-la para mais de um endereo de e-mail, basta digitlos neste campo, separando-os com
ponto-evrgula (;).
Endereo remetente
Permite designar o endereo de e-mail a ser utilizado como origem da notificao.
Assunto (sucesso)
Permite designar o Subject da mensagem de notificao, caso o processo de backup transcorra
com sucesso, permitindo ao usurio uma melhor identificao do teor da mensagem enviada.
Assunto (erro)
Permite designar o Subject da mensagem de notificao, caso ocorra algum erro nodecorrer do
processo de backup, permitindo ao usurio uma melhor identificao do teor da mensagem enviada.
Mensagem adicional
Permite personalizar uma mensagem a ser inserida no corpo da mensagem de notificao de
backup.
5.7.11.14.4 Aba "Agendamento"

Dia da semana / Horrio


Por meio desses dois campos, o usurio pode personalizar os horrios e dias para execuo do
backup, podendo este ser realizado em dias e horrios especficos durante a semana ou mesmo
diariamente. plenamente possvel estabelecer mltiplos horrios, em dias diferentes ou no, para
que o backup seja efetuado.

2007 GAS Tecnologia

238

GAS 2007 - Manual do Usurio

Para inserir um novo agendamento, o usurio dever clicar no boto de insero de agendamento
mostrado a seguir e definir o dia da semana e horrio em que o backup ser efetuado.

Os botes abaixo relacionados servem respectivamente para salvar ou cancelar as informaes


inseridas durante o agendamento.

Caso opte ainda por excluir algum agendamento j cadastrado, o usurio dever utilizar o boto
de excluso mostrado a seguir.

5.8

Utilizando o editor de cones


O GAS dispe de um editor que pode ser utilizado pelo projetista para personalizar os cones de
sua aplicao. Este editor acionado selecionando-se o menu "Editar/Editor de cones" ou por meio
da barra de ferramentas, clicando-se no boto que aparece a seguir:
boto para ativar o editor de cones
Ao abrir o Editor de cones, a tela a seguir ser apresentada:

Figura 5.58

2007 GAS Tecnologia

Captulo 5 - Operando o GAS

5.8.1

239

Controles do editor
Para viabilizar sua operao, sempre que o editor invocado, so apresentados os seguintes
controles em sua interface:

Os botes acima relacionados servem respectivamente para criar um novo arquivo cone, abrir um
arquivo j existente, salvar o arquivo em definio e, por ltimo, apresente-se a opo Salvar como...
Ao criar um novo cone, o Editor de cones utilizar o forma padro de 32 x 32 pixels e 16 cores para
o cone. Conforme veremos mais adiante, a dimenso e a quantidade de cores podero ser alteradas
facilmente.

Na figura abaixo esto relacionados botes que permitem ao projetista recortar, copiar e colar
fragmentos do cone em definio. Alm desses recursos, o projetista poder desfazer e refazer
modificaes que porventura tenham sido efetuadas na imagem. O ltimo dos botes ali
relacionados, limpa toda a rea de edio do cone, permitindo ao projetista iniciar a definio
novamente.

Na figura acima, est representado primeiramente o controle que permite ao projetista alterar o
zoom do cone em definio. Logo a seguir, h um controle para que o projetista possa selecionar o
tamanho do cone em definio. O projetista poder ainda editar diversos cones em um mesmo
arquivo .ICO, recurso muito comum em editores de cone do mercado. Quando isso ocorre, o prprio
sistema operacional se encarregar de selecionar o tamanho do cone que melhor se adapte
apresentao. Caso apenas um tamanho de cone seja utilizado, o que mais usual, o cone ser
redimensionado pelo prprio sistema operacional para atender apresentao. Para alterar ou inserir
novos tamanhos de cones a um arquivo .ICO, basta o projetista clicar sobre o boto de
gerencimento de imagens (extensor) e efetuar as devidas trocas ou inseres. O mesmo
procedimento pode ser efetuado para definir a utilizao de cones de 16 ou 256 cores. A patela de
cores ajusta-se automaticamente ao nmero de cores definido para o cone. Finalmente, so
apresentadas as cores ativas no momento.

Logo abaixo da barra de ferramentas, o projetista poder visualizar informaes como o diretrio e
nome do arquivo corrente, coordenadas (horizontal e vertical) do ponto indicado pelo mouse, item
selecionado na paleta de ferramentas e escala de vermelho, verde e azul (RGB) da cor selecionada.

2007 GAS Tecnologia

240

GAS 2007 - Manual do Usurio

No Editor de cones, o projetista poder utilizar de uma poderosa paleta de ferramentas,


apresentada nas figuras V.43.6 e V.46.7. Na parte superior da paleta de ferramentas, o projetista
poder selecionar diveros itens de fcil utilizao e entendimento. So eles: Seleciona tudo, Seleo
(dimensionvel) , Lpis, Broxa (pincel), Borracha, Linha, Retngulo, Retngulo arredondado, Elipse
(com ou sem preenchimento), Prenchimento e Seletor de cor.

J na parte inferior da paleta de ferramentas, o projetista poder rotacionar o cone em definio


horizontal e verticalmente, alm de provocar rotao em 90 graus e inverso das cores utilizadas na
imagem. O projetista ainda poder facilmente salvar e carregar paletas de cores montadas a partir
de arquivos .ICO j existentes, de forma a reaproveit-las em outros arquivos. O editor de cones
ainda oferece um painel de previso do cone que est sendo definido no momento. O projetista
poder utilizar o boto de previso para visualizar ou omitir esse painel. Para finalizar a patela de
ferramentas, o projetista ainda poder utilizar o boto de ajuste de grade, o qual, se pressionado,
apresenta tela como a da figura 5.59.

Figura 5.59

Para efeito de visualizao, o projetista poder omitir ou no a representao dos pixels do cone
em definio, utilizando para isso a opo "Usar pixels". Com base nos valores determinados nos

2007 GAS Tecnologia

Captulo 5 - Operando o GAS

241

campos Largura e Altura, a opo "Agrupar" traa linhas de agrupamento de pixels, auxiliando sua
manipulao.

5.9

Utilizando o editor de programas


O GAS dispe de um editor que pode ser utilizado pelo projetista para elaborar suas prprias
rotinas avulsas e funes que sero integradas aplicao. Este editor acionado selecionando-se o
menu "Editar/Editar cdigo de programa", pela tecla F9 (hot key), aplicando-se um duplo clique em
um campo onde seja possvel o seu acionamento ou, ainda, por meio da barra de ferramentas,
clicando-se no boto que aparece a seguir: boto para ativar o editor de programas Este recurso
importante no s para elaborar rotinas avulsas a serem integradas ao projeto como tambm em
diversos pontos da sua definio, como, por exemplo, no estabelecimento de validaes e
pr-validaes de campos, condies especiais, etc.
Caso o projetista defina no Editor de Programas do GAS uma funo com o mesmo nome de
uma funo gerada automaticamente, o cdigo fonte do aplicativo ser gerado com a funo definida
pelo projetista e no mais com a funo default. Esse recurso vlido para as janelas de dados,
processos pr-definidos, relatrios, etiquetas, consultas, formulrios avulsos e mdulos (modulo.bas
e modulo2.bas). O Editor de Programas do GAS apresenta algumas facilidades para auxiliar o
projetista, como, por exemplo, capitalizao automtica de palavras-chaves, utilizao de cores
diferentes para apresentar comentrios, texto e palavraschaves da sintaxe do Visual Basic. Possui
tambm recursos de clipboard alm de procura e substituio de texto, bem como a manipulao de
endentao e comentrios.
A utilizao do Editor de Programas do GAS requer que o projetista tenha algum conhecimento
da linguagem Visual Basic. Quando o projetista posiciona o cursor em um campo da definio do
projeto onde possa haver a necessidade de edio, o Editor de Programas poder ser invocado com
um duplo-clique do mouse sobre este campo. Se o Ttulo do Projeto ou uma Janela de Dados estiver
selecionada na rvore do projeto e o projetista acionar o editor, uma tela semelhante da figura 5.60
aparecer:

2007 GAS Tecnologia

242

GAS 2007 - Manual do Usurio

Figura 5.60

As trs divises do editor, separadas por uma linha em vermelho, representam reas de edio,
tendo, cada uma, a sua finalidade:

5.9.1

Declaraes de variveis ou funes externas


A primeira rea de edio serve para o projetista declarar variveis e constantes que tero escopo
(sero "vistas") dentro do mdulo que estiver selecionado na rvore. No caso de ser este o Ttulo do
Projeto, essas variveis ou constantes tero escopo global dentro do projeto, devendo, portanto,
serem declaradas com as palavras Public, Public Const, etc., sendo disponibilizadas em um mdulo
(.BAS) da aplicao. Nesta rea tambm tm que ser declaradas quaisquer funes externas,
residentes em DLL (Windows API). Se o mdulo selecionado for uma janela de dados, as variveis
sero vistas somente dentro deste mdulo, podendo ser declaradas com a palavra Dim, sendo
inserida na rea de declaraes do mdulo.
Exemplos:
Public Const MAX_MOD = 3'declara constante pblica
Public DirAplic As String'declara varivel pblica
Dim QdeModulos As Integer'declara varivel de mdulo

5.9.2

Designaes de variveis
A segunda rea de edio est reservada para as designaes (atribuio de valores iniciais) das
variveis criadas na primeira rea. Em se tratando do Ttulo do Projeto, o contedo aqui digitado ser
inserido dentro da funo MAIN( ) do mdulo principal da aplicao. No caso de Janela de Dados,
ser inserido na procedure FORM_LOAD( ) do mdulo selecionado.

2007 GAS Tecnologia

Captulo 5 - Operando o GAS

5.9.3

243

Funes e rotinas globais


Finalmente, a terceira rea de edio deve ser utilizada para a criao das funes e rotinas (sub)
que tero escopo dentro do mdulo selecionado. Aqui, tambm, se o mdulo selecionado for o
Ttulo do Projeto, essas rotinas ou funes tero escopo global no projeto, devendo serem
declaradas com a palavra Public e sendo inseridas em um mdulo (.BAS) da aplicao. Em mdulos
do tipo "Janela de Dados", essas funes so declaradas com a palavra chave Private e so
inseridas dentro da rea General do mdulo (.FRM).
Exemplos:
' cria funo pblica
Public Function Fatorial (Numero As Integer) As Long
...
End Function
' cria funo com escopo de mdulo
Private Function ContaPalavras(St As String) As Long
...
End Function

5.9.4

Controles do editor na barra de ferramentas


Sempre que o editor invocado, a barra de ferramentas do GAS apresenta um grupo de botes
exclusivamente para serem utilizados na operao do editor:

5.9.4.1

Boto procura
Tem por finalidade ativar o dilogo de procura de texto no editor, representado na figura 5.61:
boto para ativar pesquisa de texto

Figura 5.61

Neste dilogo, podem ser marcadas as opes de "Palavra inteira" e "Considerar caixa",
respectivamente, para que a pesquisa considere apenas palavras completas e diferencie letras
maisculas das minsculas. Os botes existentes neste dilogo podem estar disponveis ou no,
pois atendem tambm as opes de substituio, explicada a seguir. Em particular, o boto
intitulado "Marca todos" marcar todas as ocorrncias do texto procurado nas reas do Editor de
Programas.

2007 GAS Tecnologia

244

5.9.4.2

GAS 2007 - Manual do Usurio

Boto procura/substitui
Tem por finalidade ativar o dilogo de procura/substituio de texto no editor, representado na
figura 5.62:
boto para ativar pesquisa/substituio de texto

Figura 5.62

A opo "Preservar caixa" permite que a definio de letras maisculas e minsculas das
ocorncias encontradas sejam preservadas no momento da substituio. J a moldura intitulada
"Substituir em" permitir ao projetista definir a regio na qual a substituio ser efetuada: apenas no
texto selecionado ou no texto inteiro.
5.9.4.3

Boto de sincronia
Tem por finalidade sincronizar o mdulo selecionado na rvore com o texto do editor. Se este
boto estiver ligado (em baixo), o texto apresentado na rea ativa do editor estar sempre incronizado
com o mdulo selecionado na rvore, ou seja, se o projetista selecionar um novo mdulo na rvore, o
texto da janela apresentar imediatamente o cdigo que foi digitado para aquele mdulo. Se este
boto estiver desligado (em cima), nenhum sincronismo ocorrer.
boto para ativar/desativar sincronia do mdulo

5.9.4.4

Botes para desfazer/refazer modificaes


Tm por finalidade desfazer e refazer, de modo ilimitado, quaisquer alteraes que tenham sido
efetuadas no Editor de Programas do GAS.
boto para desfazer modificaes
boto para refazer modificaes

5.9.4.5

Botes para manipular as endentaes do cdigo


Tm por finalidade endentar ou retirar a endentao de cada uma das linhas do bloco
selecionado, proporcionando uma facilidade maior na formatao das estruturas da linguagem

2007 GAS Tecnologia

Captulo 5 - Operando o GAS

245

definidas diretamente pelo projetista.


boto para endentar linhas de cdigo definidas pelo projetista
boto para retirar a endentao das linhas de cdigo definidas pelo projetista
5.9.4.6

Botes para manipular comentrios


Tm por finalidade comentar ou retirar o comentrio de cada uma das linhas do bloco
selecionado. Caso o projetista no tenha selecionado algum bloco de linhas e pressione o boto de
inserir comentrio, o caracter de comentrio (apstrofo) ser includo no incio da linha indicada.

boto para comentar linhas de cdigo definidas pelo projetista


boto para retirar o comentrio das linhas de cdigo definidas pelo projetista
Alm desses botes, existe tambm, na janela do editor, a lista que aparece na figura 5.63,
contendo os mdulos da rvore que suportam cdigo escrito pelo projetista, bastando selecionar
qualquer uma das opes e elaborar o cdigo necessrio.

Figura 5.63

Utilizando o boto direito do mouse sobre a rea de edio do Editor de Programas, o projetista
poder ainda selecionar todo o texto exibido da rea de edio corrente (Designaes de variveis,
Declaraes de variveis ou funes externas e Funes e rotinas globais), remover todos os
marcadores do texto, inserir arquivos de diversos formatos, inserir quaisquer caracteresda tabela
ASCII ou editar as propriedades do editor, as quais veremos no tpico a seguir.

5.9.5

Opes de configurao do Editor de Programas


Caso o projetista queira, adaptaes podero ser efetuadas no Editor de Programas, bastando
para isso ativar o menu de opes com o boto direito do mouse e selecinar a opo "Propriedades".
Uma vez acionada a opo, a tela da figura 5.64 ser exibida.

2007 GAS Tecnologia

246

GAS 2007 - Manual do Usurio

Figura 5.64

5.9.5.1

Ajuste de cores
Por meio dessa moldura, o projetista poder ajustar as cores de primeiro e segundo planos para
os itens Nmero de pginas, Strings, Texto, Nmeros, Funes API, Palavras escopo e Janela. O
estilo de fonte (normal, negrito, itlico, dentre outros) tambm poder ser estabelecido para cada um
desses itens por meio da lista"Estilo de fonte".

5.9.5.2

Endentao
Esta opo permite ao projetista definir o padro do nmero de caracteres para a endentao no
Editor de Programas. O valor padro 1.

5.9.5.3

Fonte
Esta opo permite ao projetista manipular o tipo de fonte para a edio no Editor de Programas.
Para alter-lo, basta pressionar o boto "Mudar..." e selecionar a melhor combinao de fonte e
tamanho que lhe convier. Outras opes tambm existentes so "Nmero de linhas" e "Margem
esquerda" que permitem respectivamente inserir o nmero de linhas na margem esquerda da janela
do editor e exibir ou no a margem esquerda da mesma janela.

5.10

Utilizando o Editor de Recursos


O Editor de Recursos do GAS uma interface que permite a criao das janelas da aplicao
final. Essas janelas podem ser, tanto a janela principal - MDI (mais especificamente a sua Barra de
Ferramentas) quanto qualquer uma das Janelas de Dados, utilizadas para a digitao e edio de
informaes nas tabelas da aplicao. Para utilizar o Editor de Recursos, selecione a opo de menu
"Editar/Formatar tela" ou clique sobre o boto a seguir, existente na barra de ferramentas do GAS,
caso esteja sendo exibida. boto para ativar o Editor de Recursos

2007 GAS Tecnologia

Captulo 5 - Operando o GAS

247

Se o primeiro item da rvore (Soluo) estiver selecionado no momento e esta soluo possuir
mais de um projeto, o projetista poder executar a formatao da tela de soluo, que ir
acessar os aplicativos dos projetos inclusos na soluo, funcionando como um "gerente" dos
mdulos criados. Consulte o tpico Desenhando a tela da soluo para obter maiores detalhes.
Se o segundo nvel da rvore (Ttulo do Projeto) estiver selecionado no momento, o projetista
poder executar a formatao da barra de ferramentas da janela principal da aplicao. Uma
barra default apresentada como ponto de partida para as modificaes que se fizerem
necessrias. Consulte o tpico Desenhando a barra de ferramentas da aplicao para obter
maiores detalhes.
Se um mdulo do tipo "Janela de Dados" estiver selecionado na rvore do projeto, o Editor de
Recursos invocado para a formatao da janela de entrada de dados da tabela bsica
referente ao mdulo selecionado.
Se um mdulo do tipo Consulta, Relatrio, Etiqueta, Processo pr-definido ou Formulrio
avulso estiver selecionado na rvore do projeto, o Editor de Recursos invocado para a
formatao de uma tela complementar, utilizada para receber variveis de memria digitadas
pelo usurio da aplicao. O tpico de nome Criando uma tela complementar descrito
anteriormente neste captulo detalha este tipo de operao.
Nas explicaes a seguir, o termo tela ser utilizado para se referir aos dois casos (tela ou barra
de ferramentas), visto que no h diferenas no aspecto operacional de sua formatao. O
editor de recursos proporciona diversas facilidades, como, por exemplo, selecionar diversos
controles de uma s vez, drag and drop (arrasta e solta), designao de propriedades para os
objetos, insero de novos controles, etc.

5.10.1 As ferramentas de formatao de tela


A janela Ferramentas da tela, representada na figura 5.65, um componente do Editor de
Recursos do GAS. Trata-se de uma janela flutuante, que fica sempre por cima das demais, a partir
da qual o projetista pode selecionar os controles e campos que deseja inserir na tela, bem como
designar suas propriedades, dentre outras facilidades.

2007 GAS Tecnologia

248

GAS 2007 - Manual do Usurio

Figura 5.65

As propriedades existentes nesta lista aparecem, por default, categorizadas segundo a sua
natureza. Se desejar, o projetista poder tambm apresentla em ordem alfabtica, utilizando o
boto que aparece a seguir:

boto para ligar/desligar categorizao

O Captulo 13- Propriedades dos objetos de tela trata exclusivamente dessas propriedades.
5.10.1.1 Selecionando um controle na tela
Para selecionar um controle na tela em formatao, basta clicar sobre o controle desejado.

2007 GAS Tecnologia

Captulo 5 - Operando o GAS

249

Quando um controle fica selecionado, oito pequenos objetos quadrados aparecem nos seus cantos e
bordas. Uma vez selecionado um controle, pode-se alterar a sua posio, designar suas
propriedades, retir-lo da tela, etc.
5.10.1.2 Selecionando mltiplos controles na tela
Mltiplos controles podem ser selecionados, de uma s vez, para serem trabalhados em conjunto.
Para selecionar diversos controles de uma s vez, proceda conforme se segue:
Clique sobre um dos controles, selecionando-o;
Pressione a tecla CTRL, retendo-a;
Clique sobre os demais controles que deseja selecionar.
Os mltiplos controles selecionados apresentam, cada um deles, um retngulo que os contorna.
Outra forma de selecionar mltiplos controles clicar sobre o boto especial para selecionar todos os
controles, explicado mais adiante neste tpico.
Existem controles disponibilizados na tela que so capazes de conter outros controles, sendo, por
isso, chamados de containers. Esses controles so o Tab, Frame e o Painel. S possvel selecionar
mltiplos controles que tenham um container comum, ou seja, que estejam posicionados dentro do
mesmo container.
Tambm possvel utilizar o mouse, mantendo pressionado o boto de seleo e arrastando o
mesmo sobre os objetos, de forma a criar um "retangulo de seleo" e em seguida liberando o boto.
Desta forma, os controles que estiverem nesta rea sero selecionados. Caso estes controles
estejam dentro de um frame ou outro objeto, utilize o mesmo procedimento com a tecla "Control"
pressionada, que a seleo abranger o que est dentro do objeto em questo apenas.
5.10.1.3 Retirando controles da tela
Controles que tenham sido inseridos na tela podem ser retirados da seguinte maneira:
Selecione um ou mais controles;
Pressione as teclas SHIFT+DEL ou clique sobre o boto a seguir, existente na barra de
ferramentas do GAS;
boto para apagar seleo
Confirme a retirada do boto, quando solicitado.
5.10.1.4 Alterando a posio de controles
Uma vez selecionados, os controles podem ser movidos para outros pontos da tela, utilizando-se
a operao conhecida como drag and drop (arrastar e soltar). Para alterar a posio de um ou mais

2007 GAS Tecnologia

250

GAS 2007 - Manual do Usurio

controles selecionados, proceda conforme se segue:


Clique com o boto esquerdo do mouse sobre um dos controles selecionados, mantendo o
boto pressionado;
Arraste o mouse para a posio desejada;
Libere o boto do mouse.
Uma outra maneira de alterar a posio de um ou mais controles selecionados manter a tecla
CTRL pressionada e acionar as setas cursoras.
5.10.1.5 Alterando o tamanho de um controle
Para alterar o tamanho de um controle, posicione o mouse em um dos seletores da borda do
controle e mova o mouse com o boto pressionado. Uma outra maneira de alterar o tamanho de um
ou mais controles selecionados ao mesmo tempo manter a tecla SHIFT pressionada e acionar as
setas cursoras.
5.10.1.6 Colocando controles pr-programados na tela
Colocando controles pr-programados na tela Quando o GAS apresenta a barra de ferramentas
para ser formatada, disponibiliza automaticamente, como default, diversos controles com funes
pr-programadas. Qualquer uma das janelas de dados, relatrios, consultas, etc., definidas no
projeto pode ter um boto de acesso na barra de ferramentas, alm da opo de menu que o GAS
dispe automaticamente para ativ-la. Um boto de acesso deste tipo pode ser inserido
selecionando-se, na lista da figura 5.65, o recurso que se deseja acessar por meio do novo boto.
Dependendo do tipo de mdulo, esta lista poder estar apresentando campos de tabelas.
Ao selecionar a janela de dados, um boto criado na barra de ferramentas bastando que o
projetista modifique, se desejar, as demais propriedades deste boto.
Se estiver formatando uma barra de ferramentas, o projetista visualizar nesta lista somente os
botes e outros objetos que podem ser nela inseridos. Para maiores detalhes sobre a formatao da
barra de ferramentas, consulte o tpico Desenhando a barra de ferramentas da aplicao neste
captulo.
Se estiver formatando uma tela para entrada de dados, os campos definidos na tabela bsica
estaro nela disponveis para seleo. Uma vez que os campos estejam posicionados, o GAS insere
um check antes do nome do campo para indicar que esse j est posicionado na tela, como mostra a
figura 5.66 a seguir.

2007 GAS Tecnologia

Captulo 5 - Operando o GAS

251

Figura 5.66

Nenhum controle inserido na tela como default. Para maiores detalhes sobre o desenho de
telas, consulte o tpico Desenhando telas para entrada de dados neste captulo.
5.10.1.7 Colocando um controle na tela
Diversos outros controles podem ser inseridos na tela que esteja sendo formatada. Dependendo
do tipo de mdulo selecionado na rvore, alguns deles podem no estar disponveis. A figura 5.67
apresenta os objetos que podem ser inseridos. A funo de cada um deles, seguindo a ordem da
esquerda para a direita, ser descrita a seguir.

Figura 5.67

5.10.1.7.1 Tab ou abas

Este objeto ou controle pode ser utilizado para conter outros controles organizados em pginas ou
abas. Por exemplo, os dados pessoais de um funcionrio podem ser digitados na primeira pgina e
os seus dados funcionais na segunda, etc.;
5.10.1.7.2 Label

Este controle tem por finalidade exibir mensagens nas janelas de entrada de dados, como, por
exemplo, uma frmula qualquer envolvendo um ou mais campos das tabelas relacionadas. Para
utilizar um label na apresentao de frmula, basta designar a sua propriedade Frmula.
5.10.1.7.3 Boto

Um boto , normalmente, inserido na tela para acionar uma rotina avulsa, que o projetista deseja
elaborar. Para utilizar este recurso, proceda da seguinte forma:
Insira o boto na tela ou na barra de ferramentas;
Utilizando a grade de propriedades, designe o seu aspecto, como figura, altura, largura, etc.;
Designe a sua propriedade "Ao no clique", elaborando uma funo para apresentar a janela
desejada com o auxlio do Editor de Programas. Para obter maiores detalhes, consulte o tpico
Estabelecendo uma ao para um boto neste captulo.

2007 GAS Tecnologia

252

GAS 2007 - Manual do Usurio

5.10.1.7.4 Imagem

Utilize este controle para inserir imagens na tela, como, por exemplo, um logotipo da aplicao ou
da empresa usuria.
5.10.1.7.5 Painel

Este tipo de controle pode ser utilizado para agrupar outros controles ou campos. Pode tambm
ser utilizado para conter uma figura para pano de fundo da tela.
5.10.1.7.6 Frame

Um frame pode ser utilizado para agrupar outros controles em uma determinada rea da tela.
Para este controle, pode-se tambm designar a propriedade Frmula, da mesma maneira que feita
para o label. O resultado da frmula aparecer no ttulo do frame.
5.10.1.7.7 Gmask

Este tipo de objeto um controle genrico de edio desenvolvido pela Gas Tecnologia, que
serve virtualmente para receber qualquer tipo de dado, como, por exemplo, campos numricos com
calculadora, campos data com calendrio, imagens, etc.
5.10.1.7.8 Grid

Este tipo de objeto um controle especial desenvolvido pela Gas Tecnologia para possibilitar a
digitao de registros em tabelas filhas (com relacionamento 1-N). As suas clulas possuem os
mesmos recursos do objeto gMask descrito anteriormente. S estar disponvel para utilizao se o
mdulo em definio for uma janela de dados que esteja subordinada a uma outra em relao 1-N.
5.10.1.7.9 Sub-relatrio

Este tipo de objeto utilizado somente na formatao de relatrios e tem por finalidade inserir um
sub-relatrio na rea de formatao.
5.10.1.7.10 Quebra

Este tipo de objeto tambm utilizado somente em relatrios e tem por finalidade inserir uma
quebra (agrupamento) no relatrio em formatao.
5.10.1.7.11 Linha

Este tipo de objeto utilizado, normalmente, para traar linhas na tela, separando objetos com
efeito puramente esttico.
5.10.1.7.12 Shape

A exemplo do objeto anteriormente descrito, o shape pode ser utilizado para inserir formas na tela
tambm com finalidades estticas ou por qualquer outra razo que o projetista julgar conveniente.

2007 GAS Tecnologia

Captulo 5 - Operando o GAS

253

5.10.1.7.13 Texto 3D

Este tipo de objeto utilizado, normalmente, para inserir textos com efeitos especiais em 3D, com
sombra, contorno e um ngulo de impresso qualquer.
5.10.1.7.14 Picture

Este tipo de objeto pode ser utilizado para inserir imagens nas telas em formatao. Pode
tambm ser utilizado como container (rea onde outros objetos podem ser posicionados).
5.10.1.8 Designando propriedades para controles
A grade de propriedades tem por finalidade alterar o comportamento e aspecto dos controles que
so inseridos na tela durante a sua formatao. Quando um controle selecionado, o contedo
desta grade se altera para espelhar as propriedades possveis de serem designadas para ele. Se o
projetista selecionar mltiplos controles, esta grade apresentar apenas as propriedades que so
comuns aos controles selecionados, podendo uma propriedade ser designada para os controles
selecionados, de uma s vez. O Captulo 13- Propriedades dos objetos de tela trata exclusivamente
dessas propriedades.
5.10.1.9 Definindo um campo no-editvel
A definio de um campo no editvel (que o usurio nunca pode digitar) possvel
selecionando-se o controle tipo textbox correspondente ao campo e designando a sua propriedade
Editvel para o valor No.
5.10.1.10Definindo condio de visibilidade de campos
Por meio da propriedade Visvel pode-se estabelecer uma condio segundo a qual o campo ser
visvel ou no. Este recurso tem inmeras possibilidades e muito til, por exemplo, para esconder
um campo de um usurio ou grupo de usurios, utilizando-se na expresso da condio o nome do
usurio ou nome do grupo de usurios. Esta condio poder tambm envolver campos das tabelas
relacionadas para que um campo aparea ou no quando o contedo de um campo qualquer
apresentar um determinado valor.
5.10.1.11Controles de formatao
Na janela de formatao da tela existem, ainda, alguns controles que auxiliam o trabalho de
formatao. A figura 5.68 mostra esses controles, que sero explicados a seguir, pela ordem:

Figura 5.68
5.10.1.11.1 Gravao da tela

Deve ser acionada para gravar a tela aps a sua formatao. aconselhvel utilizar este boto,
quando a formatao da janela for muito demorada, evitando assim perda de trabalho.

2007 GAS Tecnologia

254

GAS 2007 - Manual do Usurio

5.10.1.11.2 Restaurao da tela

Utilizada para restabelecer a ltima situao em que se encontrava a tela, na ltima vez em que
foi gravada.
5.10.1.11.3 Ordem de acesso aos controles

Este boto estabelece automaticamente, da esquerda para a direita e de cima para baixo, a
ordem com que os controles so acessados quando o usurio da aplicao pressionar a tecla TAB.
5.10.1.11.4 Criao de tela padro

Esta operao formata automaticamente uma tela padro. No caso de formatao de barra de
ferramentas, apresenta a barra que o GAS disponibiliza como default para a aplicao a ser gerada.
No caso de formatao de uma janela para entrada de dados, o GAS apresenta uma tela padro na
qual tenta posicionar todos os campos definidos para a tabela bsica, obedecendo ao que estiver
estabelecido nas opes da tela padro (vide tpico Definindo as Opes de Tela Padro, um pouco
mais adiante) que podem ser visualizadas e alteradas clicando-se com o boto direito do mouse no
boto apresentado a seguir ou selecionando-se "Opes/Opes da tela padro" por meio do menu.
importante observar que, ao construir a tela padro, o GAS tentar posicionar, a partir do
primeiro campo da tabela bsica, quantos campos forem possveis de serem posicionados. Com isto,
poder ocorrer que o projetista tenha que posicionar manualmente os campos finais, que o GAS no
tenha conseguido fixar. Uma vez que os campos estejam posicionados, o GAS insere um check
antes do nome do campo na janela de Ferramentas da tela para indicar que esse j est
posicionado.
Em se tratando de uma tela de arquivo subordinado (filho), que o projetista no deseje inserir em
grid, o projetista ter que retirar, manualmente, os campos correspondentes s chaves de
relacionamento com a tabela pai (normalmente os primeiros da tela), cujos valores no so digitados
pelo usurio, pois so preenchidos automaticamente por rotinas da aplicao.
5.10.1.11.5 Seleciona todos

Este boto tem por finalidade selecionar, de uma s vez, todos os controles posicionados na tela,
permitindo que sejam trabalhados em conjunto.
5.10.1.11.6 Apaga coluna do grid

Este controle s estar disponvel se o mdulo em definio for do tipo Tabela em grid, tendo por
finalide apagar a coluna (campo) que esteja selecionado no grid.
5.10.1.11.7 Insere coluna no grid - aps

Este controle tambm s estar disponvel se o mdulo em definio for do tipo Tabela em grid,
tendo por finalidade inserir uma nova coluna (campo) imediatamente aps a coluna selecionada.

2007 GAS Tecnologia

Captulo 5 - Operando o GAS

255

5.10.1.11.8 Insere coluna no grid - antes

Tambm este controle estar disponvel somente se o mdulo em definio for do tipo Tabela em
grid, tendo por finalidade inserir uma coluna (campo) imediatamente antes da coluna selecionada no
grid.
5.10.1.11.9 Alinha esquerda

Este controle s estar disponvel se mais de um controle estiver selecionado na tela, tendo por
finalidade alinhar, verticalmente, esquerda os controles selecionados.
5.10.1.11.10 Alinha direita

A exemplo do controle anterior, este tambm s estar disponvel se mais de um controle estiver
selecionado na tela, tendo por finalidade alinhar, verticalmente, direita os controles selecionados.
5.10.1.11.11 Alinha pelo topo

Tambm este controle, a exemplo dos dois controles anteriores, s estar disponvel se mais de
um controle estiver selecionado na tela, tendo por finalidade alinhar ao topo os controles
selecionados.
5.10.1.11.12 Travamento de controles

Este boto bloqueia os controles posicionados na tela, no permitindo que sejam movidos. Aps
terminar a formatao, o projetista poder desejar clicar sobre este boto para evitar que sejam
movimentados involuntariamente.
5.10.1.11.13 Categorizao de propriedades

Por default, a lista de propriedades da janela de Ferramentas da tela aparece dividida em


categorias, segundo as caractersticas da propriedades. Este boto, que tem dois estgios, seestiver
ligado, fora a aparesentao alfabtica das propriedades.
5.10.1.11.14 Coloca ou retira grade de formatao

Este boto tem por finalidade ligar ou desligar a apresentao da grade auxiliar de formatao de
telas e relatrios. O seu tamanho configurvel por meio do menu "Opes/Configuraes/Telas e
relatrios".
5.10.1.11.15 Recorta formulrio

Este boto tem por finalidade implementar efeito visual de recorte no formulrio em definio,
semelhante aos forms irregulares disponveis na aba Miscelnea (vide tpico Forms irregulares j
visto neste captulo). Caso o projetista tenha definido uma imagem para a propriedade Figura, o
recorte do formulrio contornar a imagem definida. O mesmo efeito ocorrer sobre o prprio
formulrio, caso a propriedade Figura no tenha sido definida.

2007 GAS Tecnologia

256

GAS 2007 - Manual do Usurio

5.10.1.12Exibindo e ocultando as ferramentas


A janela de Ferramentas da tela pode ser ocultada ou exibida, de acordo com a necessidade do
projetista. Para exibir ou ocultar esta janela, marque a opo de menu "Exibir/Ferramentas da tela"
ou pressione a tecla F4.
5.10.1.13Usando o Clipboard de tela
Durante a formatao de telas o projetista poder necessitar efetuar cpias de controles de um
projeto para outro, de uma tela para outra de um mesmo projeto ou, ainda, de um container para
outro de uma mesma tela. As operaes normais de clipboard podem ser utilizadas para cortar,
copiar, colar e apagar controles que estejam selecionados. Para essas operaes, pode-se utilizar as
teclas de atalho padro do Windows (CTRL+X, CTRL+C, CTRL+V e tecla DEL, respectivamente) ou,
ainda, os botes de clipboard da barra de ferramentas do GAS, representados na figura a seguir:

5.11

Definindo opes da tela padro


Como j vimos, durante a criao da barra de ferramentas ou de telas para entrada de dados, o
projetista poder solicitar ao GAS a criao de uma tela padro por meio do boto:
boto para montar tela padro
Na criao de uma tela padro, o GAS tenta posicionar os campos da tabela ou botes da barra
de ferramentas, de acordo com algumas especificaes que o projetista pode estabelecer. Essas
especificaes so efetuadas a partir do dilogo da figura 5.69, que pode ser acionado
selecionado-se a opo de menu "Opes/Opes da tela padro" ou, ainda, clicando com o boto
direito do mouse sobre o boto de criao da tela padro, exibido neste tpico.

Figura 5.69

2007 GAS Tecnologia

Captulo 5 - Operando o GAS

257

5.11.1 Disposio dos campos


Selecione a direo desejada para que o GAS tente posicionar os campos na tela (na horizontal
ou na vertical). Observe que, aps a criao da tela padro, nem todos os campos podem ter sido
posicionados. Isto porque o GAS disponibilizar campos na janela, enquanto esses puderem ser
totalmente visualizados na tela, parando logo que um deles no puder ser fixado. Se a opo
"Recalcular tamanho da tela" estiver marcada, o GAS ter mais liberdade para executar esta tarefa.

5.11.2 Disposio dos ttulos


Selecione a posio na qual o GAS dever dispor os labels (rtulos) que contm os ttulos dos
campos. As opes disponveis so: "Acima do campo" e "Ao lado do campo" ( esquerda).

5.11.3 Dimenses das imagens


Informe a quantidade de pixels que o GAS dever considerar para dimensionar a altura e largura
iniciais dos campos de contedo imagem (do tipo multimdia), quando a tabela bsica de uma janela
de dados tiver um ou mais campos deste tipo.

5.11.4 Dimenses memo/texto


A exemplo da opo de dimensionamento de imagens, informe a quantidade de pixels a serem
considerados para dimensionar a altura e a largura iniciais da rea de digitao de campos do tipo
memo, caso existam na tabela cuja janela de dados ser formatada.

5.11.5 Margens e distncias


Nestas opes podem ser definidos alguns aspectos que o GAS dever respeitar:
5.11.5.1 Maior controle
Especifique a quantidade mxima de pixels a ser considerada na altura e largura para alocar um
controle na tela.
5.11.5.2 Distncia
Especifique a distncia, em pixels, a ser considerada na separao de controles na tela (distncia
entre um controle e outro).
5.11.5.3 Margem esquerda
Especifique a distncia, em pixels, a ser considerada entre a borda esquerda da tela e os
controles alocados na tela.
5.11.5.4 Margem do topo
Especifique a distncia, em pixels, a ser considerada entre a borda superior da tela e os controles

2007 GAS Tecnologia

258

GAS 2007 - Manual do Usurio

alocados na tela.

5.11.6 Quantidade de colunas


Informe a quantidade mxima de colunas de campos que o GAS dever criar na janela padro.

5.11.7 Recalcular o tamanho da tela


Se esta opo estiver marcada, o GAS ir, caso necessrio, ajustar o tamanho da janela segundo
a quantidade de campos alocados na tela. Se esta opo no estiver marcada, o projetista dever
dimensionar manualmente o tamanho desejado. Neste caso, a rea definida ser respeitada pelo
GAS.

5.11.8 Fonte dos ttulos


Determina a fonte default para os objetos (Labels) a serem inseridos nas telas e relatrios, sendo
utilizadas apenas as fontes True Type. A propriedade Fonte do ttulo dos labels pode ser alterada
individualmente durante a formatao.

5.11.9 Fonte dos campos


Determina a fonte default de digitao para os campos a serem inseridos nas telas, sendo
utilizadas apenas as fontes True Type. A propriedade Fonte pode ser alterada individualmente
durante a formatao. Existem ainda trs botes que o projetista poder utilizar para Aceitar,
Cancelar ou, ainda, Restaurar as configuraes "de fbrica".

5.12

Utilizando o banco de campos


De vez em quando, durante a definio do projeto, o projetista poder ter a necessidade de se
referir a campos de outras tabelas no preenchimento de informaes, como, por exemplo, validaes,
frmulas para processamentos e lanamentos, etc. Alm disso, poder haver necessidade de
referenciar variveis, constantes e funes (function e sub) presentes no projeto. Com essa
finalidade, o GAS disponibiliza um banco de campos para captura sempre que detectar esta
necessidade por parte do projetista, apresentando uma tela semelhante a que aparece, a seguir, na
figura 5.70:

2007 GAS Tecnologia

Captulo 5 - Operando o GAS

259

Figura 5.70

Alm dos campos, esse mesmo banco de campos relaciona a lista de variveis, constantes e
funes (function e sub) disponveis para o objeto em definio. Esta janela constituda por uma
srie de abas nas quais esto disponveis no s variveis, constantes e funes (function e sub)
disponveis para o objeto ou campo em definio, mas tambm os campos das diversas tabelas que
esto, no momento, relacionadas situao. Sobre esta lista, convm observar que:
O nome do campo aparece nesta lista, seguido do alias (apelido), entre parnteses, definido
para o mesmo;
Para facilitar a visualizao, os campos da tabela bsica sempre so exibidos na cor preta. A
partir disso, o GAS utiliza duas outras cores, alternando-as, para diferenciar cada nova tabela
relacionada;
Nas abas de variveis, constantes e funes, para facilitar a identificao dos itens, o GAS
exibir na cor preta aqueles itens que sejam globais para todo o sistema, na cor vermelha
aqueles que sejam globais para o mdulo em questo e na cor azul aqueles que forem
privados.
Outras informaes so exibidas, como tipo, tamanho e mscara do campo, para que o
projetista possa saber com que tipo de informao est trabalhando no momento. A partir desta
janela, o projetista poder capturar informaes j definidas no projeto, devendo primeiro clicar
sobre o campo que receber a captura e depois aplicar um duplo-clique no item que deseja
capturar.
Para facilitar a manipulao das informaes, a janela do banco de campos apresenta botoeira
com diversos operadores, como mostrado na figura 5.71, inclusive transferncia de dados como
inteiro, quociente e resto da diviso inteira, concatenao de strings, etc.

Figura 5.71

2007 GAS Tecnologia

260

5.13

GAS 2007 - Manual do Usurio

Utilizando o Dirio de Bordo


O Dirio de Bordo um livro de notas criado para reunir, em um s lugar, todas as anotaes que
o projetista deseje ou necessite fazer em referncia a um projeto de sistema do GAS. Neste livro, h
quatro pginas, cada uma delas podendo conter at 64 KB de texto. Nelas podem ser anotados
todos os detalhes do desenvolvimento do projeto, como, por exemplo, os nomes das pessoas de
contato e seus telefones, frmulas, memrias de clculos, lembretes, etc. Uma vez anotada no Dirio
de Bordo, a informao automaticamente gravada e vinculada ao projeto que est sendo definido,
evitando a utilizao de papis com anotaes que se perdem facilmente.

5.13.1 Apresentando e ocultando


Para apresentar ou ocultar o Dirio de Bordo, selecione "Arquivo/Dirio de Bordo" a partir do
menu ou clique sobre o boto correspondente na barra de ferramentas, caso esta esteja visvel.
boto para abrir e fechar o Dirio de Bordo

5.13.2 Mostrando o dirio em zoom


O Dirio de Bordo pode ser apresentado em zoom, selecionando-se a opo de menu "
Exibir/Dirio em zoom". Quando o Dirio de Bordo exibido em zoom, ocupar toda a rea de
cliente do GAS. Para exib-lo em tamanho normal, basta desmarcar esta opo.

5.13.3 Abrindo e folheando


Para abrir o Dirio de Bordo, deve-se aplicar um duplo-clique sobre a capa do livro. As sees
podem ser acessadas aplicando um clique sobre as etiquetas correspondentes, enquanto as pginas
podero ser alternadas aplicando um clique nas pequenas dobras (orelhas) existentes nas mesmas.

5.13.4 Navegando no texto


As pginas do Dirio de Bordo no possuem barras de rolagem, razo pela qual o projetista
dever utilizar as teclas de setas, para cima e para baixo, para navegar no texto.

5.13.5 Imprimindo o contedo


O contedo do dirio de bordo pode ser enviado para a impressora padro do Windows,
selecionando-se as opes "Arquivo/Utilitrios/ Imprimir Dirio de Bordo".

2007 GAS Tecnologia

Captulo

VI
Captulo 6 - Gerao de programas fontes

262

GAS 2007 - Manual do Usurio

Captulo 6 - Gerao de programas fontes


Uma vez que todo o projeto da aplicao tenha sido definido, o GAS habilitar o boto para que o
projetista possa disparar a gerao dos programas fontes necessrios ao funcionamento da
aplicao.
boto para ativar a gerao de programas fontes
Os programas fontes gerados podem estar distribudos em diversos mdulos, gravados em
arquivos com as extenses:

6.1

.BAS
Contm definies de escopo global dentro na aplicao. O Visual Basic dividir o que o GAS
gerar dentro deste mdulo em duas reas distintas: a rea de declaraes de variveis e a rea de
definies de funes e procedures (Sub).

6.2

.FRM
Contm definies de escopo do formulrio ou janela. Nestes arquivos, o GAS ir gerar as
definies dos objetos que fazem parte da interface grfica (GUI), bem como as declaraes de
variveis, funes e procedures.

6.3

.FRX
Arquivos binrios, associados aos arquivos .FRM, contendo definies de alguns tipos de objetos
que so colocados no formulrio.

6.4

.VBP
Um nico arquivo criado por projeto, contendo diversas especificaes, inerentes ao projeto
como um todo, utilizadas peloVisual Basic.

6.5

.DEF
Contm as especificaes da estrutura do banco de dados definido para o projeto. por
intermdio das especificaes contidas neste arquivo que a aplicao final cria o banco de dados, na
primeira vez que executado. Este arquivo tem formato proprietrio do GAS, no sendo utilizado
pelo VB e, sim, pela aplicao gerada. Sua presena tambm necessria para o funcionamento
dos utilitrios de adaptao de projetos e converso de arquivos DBF.

6.6

.SQL
De forma anloga ao arquivo de formato .DEF, o arquivo de formato .SQL um script contendo as

2007 GAS Tecnologia

Captulo 6 - Gerao de programas fontes

263

especificaes da estrutura do banco de dados SQL Server ou Oracle definido para o projeto. Ele
tambm necessrio para o funcionamento dos utilitrios de adaptao de bancos de dados SQL
Server ou Oracle.

6.7

.RC
Contm todas as imagens, bem como as mensagens utilizadas na aplicao gerada, necessrias
ao seu funcionamento. O GAS gera todas as mensagens da aplicao dentro deste arquivo. Isto
significa que, se for necessria uma traduo da aplicao para o francs (exceto ingls e espanhol),
por exemplo, horas e horas de trabalho sero economizadas com a traduo de um nico arquivo!
Este arquivo compilado em separado, por meio do utilitrio RC.EXE (resource compiler) do
Windows, criando um arquivo resource de extenso .RES, utilizado pela aplicao final.
O GAS utiliza um formato proprietrio de arquivo resource (.RES) que permite a vinculao de
quaisquer formatos de imagem e sem limite de tamanho. Alm disso, o executvel tende a diminuir
consideravelmente com o uso do arquivo resource, visto que as imagens no mais estaro
vinculadas diretamente no executvel. O arquivo resource deve acompanhar o aplicativo final gerado
para que este possa funcionar. Obedecendo estrutura do arquivo .RC, o projetista poder alterar
seu contedo, implementando novas referncias a imagens e strings, utilizando-se das funes
LoadGasPicture e LoadGasString para recuperar essas informaes. Para maiores detalhes sobre
a sintaxe dessas funes, consulte o Captulo 12- O GAS como Ferramenta de Desenvolvimento
442 deste manual.

6.8

.HHK .HHP .HHC .HTM


Contm informaes a partir das quais ser gerado por compilao o arquivo de ajuda on-line da
aplicacao (.CHM).

6.9

Disparando a gerao de fontes


Por intermdio do dilogo da figura 6.1, o projetista poder disparar a gerao dos programas
fontes. Eventualmente, a gerao de mdulos pode ser desligada, desmarcando-se a opo
correspondente. Os botes existentes na borda esquerda desta janela servem para marcar ou
desmarcar todos os mdulos, respectivamente.
Existe tambm a possibilidade de proteo de determinados mdulos da rvore para no serem
gerados, mesmo que o projetista clique o boto "Gerar todos" no mdulo de gerao. Este recurso
para evitar a gerao indevida de determinados mdulos, principalmente em forms que foram feitas
alteraes manuais e o projetista deseja preservar ese item.
Por este motivo, ao clicar no boto de "desmarcar", a seguinte mensgem ser apresentada:

2007 GAS Tecnologia

264

GAS 2007 - Manual do Usurio

Caso a opo seja "Sim" o modulo desmarcado para gerao neste momento e marcado como
preservado e no mais ser gerado pelo GAS, at que o usurio mude esta opo na definio do
modulo.
Caso a opo seja "No" o modulo desmarcado para gerao neste momento, mas no
marcado como preservado. Este recurso interessante em projetos grandes, ganhando velocidade
na gerao dos fontes, pois evita a gerao novamente. Isto recomendado apenas para ganho de
velocidade e em mdulos que no sofreram alterao.
Ao marcar a opo de "Gerar todos", todos os mdulos sero gerados, exceto os que esto
marcados como preservados.
Antes de iniciar a gerao dos programas fontes o GAS efetua uma verificao de consistncia
nas especificaes do projeto. Encontrando alguma inconsistncia ou falta de informaes
imprescindveis, o mesmo interrompe o processo de gerao e apresenta mensagem relativa
inconsistncia encontrada. O projetista dever voltar s definies do projeto e corrigir o problema.
Durante esta operao, se desejar rever a ltima mensagem de erro informada pelo GAS durante
a gerao, o projetista poder selecionar o menu: Arquivo/Utilitrios/Rever mensagem erro de
gerao.

2007 GAS Tecnologia

Captulo 6 - Gerao de programas fontes

265

Figura 6.1

Na interface para escolha dos mdulos definidos para gerao, o projetista tem um preview id
ntico rvore do projeto, facilitando assim a escolha ou no de mdulos para gerao.
O projetista poder ainda criar e gerenciar um nmero de verso para o projeto, por meio da
moldura intitulada Verso. So trs os campos que controlam a verso, os quais podemos
denominar:
Principal - Nmero principal da verso do projeto, podendo variar de 0 a 999.
Secundrio - Nmero secundrio da verso do projeto, podendo tambm variar de 0 a 999.
Reviso - Nmero de reviso do projeto, podendo variar de 0 a 99999.
Caso a opo "Auto-incrementar verso" esteja marcada, o prprio GAS se encarregar de
incrementar os nmeros de verso. Para maiores informaes, consulte o tpico Definindo os dados
genricos do projeto do Captulo 5 - Operando o GAS. Mesmo com essa opo marcada, caso lhe
convier, o projetista poder ainda intervir manualmente na definio desses nmeros.

6.9.1

Histrico de gerao de fontes


O projetista pode verificar o histrico de todas as geraes que foram feitas para um projeto,
contendo a informao do nmero da verso, data e hora de gerao, verso e release do GAS

2007 GAS Tecnologia

266

GAS 2007 - Manual do Usurio

utilizada para a gerao, alm de um comentrio descrito pelo prprio projetista. no momento da
gerao daquela verso;

Aps a gerao nos casos em que a opo manter histrico esteja ativada, o histrico da gerao
de fontes gravado na aba histrico da definio do projeto.

2007 GAS Tecnologia

Captulo

VII
Captulo 7 - Gerao de executveis

268

GAS 2007 - Manual do Usurio

Captulo 7 - Gerao de executveis

7.1

Estabelecendo uma ao ps-compilao


Antes de disparar a criao dos executveis, o projetista poder configurar uma ao para o GAS
executar aps a gerao dos executveis.
A opo selecionada gravada no arquivo do projeto de modo que, da prxima vez em que esta
janela for acionada, a mesma opo ser oferecida.

Figura 7.1

As opes so:

7.1.1

Gerar
Nenhuma ao ser executada alm da gerao dos executveis, propriamente dita.

7.1.2

Gerar e executar
Aps gerar cada um dos executveis marcados, o GAS os executar em modo sncrono, ou seja,
ficar esperando o trmino da execuo para reassumir o controle.

7.1.3

Gerar, executar e sair do GAS


O GAS proceder de maneira semelhante ao descrito no item anterior; porm, finalizando a sua
operao e no mais assumindo o controle.

7.1.4

Gerar e abrir no VB
O GAS proceder a gerao dos arquivos de resource e outros, exceto o executvel da aplicao.
Aps a gerao executado a chamada ao Visual Basic abrindo o projeto da aplicao dentro do
mesmo. Este recurso interessante para identificao de erros e para usurios mais experientes,

2007 GAS Tecnologia

Captulo 7 - Gerao de executveis

269

que queiram testar a aplicao para identificao de erros, antes da gerao em definitiva do
executvel.
Caso nas opes anteriores tenha sido mostrada tela de erro ao gerar o executvel, esta opo
pode ser interessante para descobrir em que linha est o problema. Aps executar a opo de "Gerar
e abrir no VB", j com o VB aberto no projeto em questo, basta utilizar as teclas "Control" + F5 para
que o VB faa uma teste na aplicao, e caso o erro seja na compilao, o titulo do erro exibido, e
o VB estar com o cursor exatamente na linha onde o erro ocorreu, facilitando assim a correo na
maioria dos casos.
Para utilizar esta opo, recomendamos a configurao do VB instalado na mquina, para que a
opo de erros esteja marcada como mostra a figura abaixo:

7.2

Executvel da aplicao
O Visual Basic ser invocado para compilar o projeto, criando um nico programa executvel,
cujo nome o mesmo do projeto com a extenso .EXE. Enquanto o Visual Basic estiver
trabalhando, o GAS ficar gerenciando se o mesmo j acabou a tarefa, assumindo novamente o
controle quando isto acontecer.
Em casos de soluo com mais de um projeto(Multi-Projetos), Cada projeto tem a sua gerao
dos fontes de forma independente, ou seja, cada um tem o seu prprio executvel, entretanto,

2007 GAS Tecnologia

270

GAS 2007 - Manual do Usurio

podendo estar interligados ou no.

7.3

Arquivo resource da aplicao


O utilitrio resource compiler do Windows (RC.EXE) ser ativado para compilar o arquivo resource
de mesmo nome do projeto e com a extenso .RC gerado pelo GAS, gerando um arquivo com a
extenso .RES. Este utilitrio uma aplicao DOS. Por isso, uma janela do DOS poder aparecer
por alguns instantes, quando este programa for ativado. O GAS gerenciar se este programa
conseguiu compilar o arquivo resource.
O GAS utiliza um formato proprietrio de arquivo resource (.RES) que permite a vinculao de
quaisquer formatos de imagem e sem limite de tamanho. Alm disso, o executvel tende a diminuir
consideravelmente com o uso do arquivo resource, visto que as imagens no mais estaro
vinculadas diretamente no executvel. O arquivo resource deve acompanhar o aplicativo final gerado
para que este possa funcionar.
Se, por ventura, ocorrer duplicao no nmero de resources gerados, o projetista dever efetuar a
gerao de todos os mdulos que foram includos no projeto para que os nmeros dos resources
sejam refeitos. Obedecendo estrutura do arquivo .RC, o projetista poder alterar seu contedo,
implementando novas referncias a imagens e strings, utilizando-se das funes LoadGasPicture e
LoadGasString para recuperar essas informaes. Para maiores detalhes sobre a sintaxe dessas
funes, consulte o Captulo 12- O GAS como Ferramenta de Desenvolvimento deste manual.

7.4

Arquivo de ajuda on-line


O utilitrio compilador de ajuda HTML Help Workshop (HHC.EXE) ser ativado para compilar o
arquivo de ajuda on-line. Aps a sua execuo, o GAS verificar se o arquivo de ajuda com o mesmo
nome da aplicao e com a extenso .CHM foi criado.

7.5

Adaptador de arquivos
Este programa (quando utilizado JET) ou script (quando utilizado SQL Server, MySQL, Firebird
ou Oracle) nem sempre estar disponvel para ser selecionado e compilado. Sempre que o GAS
detectar que ocorreram mudanas na estrutura do banco de dados durante a fase do projeto, o
mesmo criar automaticamente um projeto/script do utilitrio adaptador de arquivos (vide tpico O
Utilitrio Adaptador de Arquivos, neste manual), disponibilizando a sua compilao/gerao. Se
no houver necessidade, o GAS no criar este utilitrio nem habilitar a sua compilao/gerao.

7.6

Disparando a gerao dos executveis


Assim que o projetista clicar sobre o boto Prossegue, o GAS ir invocar os programas
compiladores para compilar o que for necessrio. O VB para compilar os projetos, o RC.EXE para
compilar o arquivo resource, o HHC.EXE para compilar o arquivo de ajuda on-line. Se a compilao
de algum desses programas falhar, o GAS apresentar uma mensagem e no tentar compilar as
partes restantes.

2007 GAS Tecnologia

Captulo 7 - Gerao de executveis

7.7

271

Compilao manual
Aps o processo de compilao, o GAS gera tambm trs pequenos arquivos .BAT no diretrio
da aplicao:

7.7.1

FAZ _EXE.BAT
Para compilar o executvel da aplicao.

7.7.2

FAZ _HLP.BAT
Para compilar a ajuda on-line da aplicao.

7.7.3

FAZ _RES.BAT
Para compilar o arquivo resource da aplicao. Embora no faa uso de nenhum desses
arquivos, o GAS os cria para permitir ao projetista, se desejar ou por algum problema qualquer,
compilar manualmente o que for necessrio, apenas executando esses arquivos de lote a partir de
uma janela DOS. Para utilizar qualquer desses arquivos, acione um atalho para o DOS, posicione-se
no diretrio onde a aplicao foi gerada e digite o nome do arquivo desejado.

2007 GAS Tecnologia

Captulo

VIII
Captulo 8 - Gerao da documentao

Captulo 8 - Gerao da documentao

273

Captulo 8 - Gerao da documentao


Alm de gerar a aplicao na forma de programas fontes, o GAS pode gerar, por opo de menu,
a sua documentao tcnica e de usurio, bem como o arquivo de ajuda on-line da aplicao final.
As janelas que fazem parte da interface fixa da aplicao, como montagem de consultas, pesquisas,
entre outras, bem como todas as janelas que o projetista tenha definido para a aplicao, so
automaticamente capturadas e inseridas na documentao pelo GAS sem qualquer interferncia
manual do projetista.
Para gerar a documentao do projeto, o GAS utilizar como base os arquivos-gabaritos (
GABMAN.DOC , GABPRO.DOC , etc). A abertura desses arquivos assim como todo o processo de
alterao feita via OLE, utilizando-se automao direta com o MS-Word. Opcionalmente, o
projetista poder fazer uso dos arquivos-gabaritos GABMANE.DOC , GABPROE.DOC (verso em
espanhol), GABMANI.DOC e GABPROI.DOC (verso em ingls). As opes de documentao
podem ser acessadas atravs das opes de menu Arquivo/Utilitrios. O arquivo de ajuda on-line
tambm gerado e apresentado nas opes de gerao de executveis, juntamente com os
programas fontes da aplicao.

Figura 8.1

A interface da figura 8.1 permite a manipulao da documentao da aplicao. A partir desta


janela, o projetista poder selecionar a opo de documentao que desejar:

8.1

Editar gabaritos
O boto Gabarito tem por finalidade editar o arquivo-gabarito da documentao selecionada.
Normalmente, esses gabaritos j esto completos, no necessitando de modificaes; porm, se o
projetista desejar, poder edit-los para enriquec-los de detalhes, alterar formatao de textos,
inserir figuras, etc. Para este trabalho, o GAS tentar localizar o editor de textos MS-Word no
equipamento. Caso no consiga, apresentar dilogo solicitando ao projetista o nome do editor a ser
utilizado, armazenando esta informao para as utilizaes subseqentes.

8.1.1

Regras para a edio de gabaritos


Para a gerao da documentao das aplicaes, o GAS sempre utiliza gabaritos
pr-estabelecidos em arquivos no formato DOC compatveis com o MS-Word, exceo daqueles

2007 GAS Tecnologia

274

GAS 2007 - Manual do Usurio

referentes ajuda on-line, que so de formato HTM. Esses gabaritos so criados dentro da pasta
onde o GAS instalado e so em nmero de trs:
8.1.1.1

GABPRO.DOC
Contm a formatao do Projeto Fsico ou especificao do sistema criado.

8.1.1.2

GABMAN.DOC
Contm o texto utilizado para o Manual do Usurio da aplicao final.

8.1.1.3

INICIO.HTM / CORPO.HTM / INDEX.HTM


Contm o texto de ajuda on-line da aplicao.
Opcionalmente, o projetista poder fazer uso dos arquivos-gabaritos GABMANE.DOC,
GABPROE. DOC (verso em espanhol), GABMANI.DOC e GABPROI.DOC (verso em ingls).
Clicando sobre o boto para editar um gabarito, o GAS ir ativar o editor e disponibilizar o texto
pertinente em uma janela. Durante a edio do gabarito, o projetista dever ter conhecimento de
diversas diretivas que o GAS utiliza para substituo de textos e imagens que ele captura da prpria
aplicao, bem como indicativos, comandos e condies de insero. Os tpicos Diretivas de
Substituio, Indicativos ou Flags e Comandos e Condies, neste captulo, relacionam esses
componentes.
Os gabaritos referentes ao Projeto Fsico e Manual do Usurio, GABPRO.DOC e
GABMAN.DOC respectivamente, j possuem um ndice analtico dos assuntos constantes nos
mesmos. Caso venha a inserir novos tpicos nesses gabaritos e desejar que os mesmos constem
neste ndice, o projetista ter que aplicar nesses tpicos os estilos Ttulo 1, Titulo 2, ... Ttulo N (de 1
a 9), para que o MS-Word os reconhea automaticamente. Ao elaborar esses gabaritos, a Gas
Tecnologia j criou teclas de atalhos (Alt-1, Alt-2, ... Alt-N ) para aplicar os respectivos estilos.
Observe tambm que este ndice pode necessitar de atualizao, conforme descrito nos tpicos
Projeto Fsico e Manual do Usurio.

8.1.2

Criar o documento
O boto Criar tem por finalidade iniciar a criao da documentao selecionada. O GAS cria a
documentao de uma aplicao gerada por intermdio de arquivos-gabaritos, previamente
estabelecidos com diretivas de substituio e condicionais, bem como comandos de repetio.
A abertura desses arquivos assim como todo o
utilizandose automao direta com o MS-Word.

8.1.3

processo de alterao feita via OLE,

Editar documento
O boto Documento, se estiver habilitado, tem por finalidade ativar o editor com o qual o
projetista poder dar a forma final ao documento, antes de imprim-lo ou de compil-lo, caso assim o
deseje. Deve-se lembrar, no entanto, que o GAS ignorar essas modificaes, se porventura for

2007 GAS Tecnologia

Captulo 8 - Gerao da documentao

275

solicitada uma nova criao da documentao, uma vez que ele parte sempre dos arquivos gabaritos
para executar esta tarefa.

8.1.4

Compilar
O boto Compila, se estiver habilitado, tem por finalidade compilar, de maneira totalmente
transparente, o arquivo de ajuda para aplicao, gerando um arquivo de extenso .CHM. Para esta
tarefa, o GAS utiliza o utilitrio HTML Help Workshop do Windows. Este boto estar desabilitado
caso a ajuda on-line ainda no estiver sido gerada.

8.1.5

Visualizar
O boto Visualiza, se estiver habilitado, fato que somente ocorrer mediante existncia de um
arquivo .CHM no diretrio do projeto, tem por finalidade ativar o utilitrio HTML Help Workshop
Executable do Windows para mostrar a forma final da ajuda on-line, assim como aparecer para o
usurio final. O boto Cancela serve para fechar a janela de documentao e cancelar as operaes.

8.1.6

Dicas para otimizar a documentao


A seguir, algumas dicas importantes para auxiliar a otimizao e padronizao da documentao
criada para a aplicao:

8.1.6.1

Captura de telas
Algumas telas pertencentes interface fixa da aplicao gerada j foram previamente capturadas
e inseridas no texto dos arquivos-gabaritos. Para estabelecer um padro, resolveu-se capturar essas
imagens utilizando-se uma configurao do Windows, a qual recomendamos seu uso na criao da
documentao. Adotando-a, as novas telas capturadas pelo GAS sero inseridas na documentao
com tamanho e cores padronizadas com aquelas, bem como os tamanhos dos arquivos gerados
estaro otimizados.

8.1.6.2

Resoluo
Foi utilizada a resoluo de 800 por 600 pixels para a tela. As imagens so capturadas pelo GAS
a partir da sua apresentao em vdeo e, portanto, telas maiores do que o formulrio principal (MDI)
do GAS sero capturadas parcialmente. Com esta configurao, consegue-se imagens integrais das
telas desenhadas para a aplicao. Se necessrio, o projetista poder aumentar ainda mais a
resoluo para que as mesmas sejam capturadas integralmente. Esta configurao pode ser
efetuada na mesma aba utilizada para configurar a quantidade de cores, indicada no item anterior.

8.1.6.3

Aparncia
Utilizou-se o esquema de cores denominado "Padro do Windows". Esta configurao definida
na aba denominada "Aparncia", a qual est localizada na mesma interface dos itens anteriores, por
intermdio da lista intitulada "Esquema". Esta configurao assegura que as novas telas capturadas
fiquem da mesma cor das que foram anteriormente capturadas da interface fixa, mantendo um
mesmo padro para a documentao gerada.

2007 GAS Tecnologia

276

8.1.6.4

GAS 2007 - Manual do Usurio

Momento certo
aconselhvel deixar a criao da documentao para o momento em que o projeto estiver
realmente completo, com todas as informaes feitas em sua forma definitiva, incluindo suas telas
nas posies mais apropriadas, telas as quais que sero capturadas automaticamente pelo GAS e
inseridas na documentao. Em se tratando da ajuda on-line, aps a sua gerao, deve-se clicar
sobre o boto Compila para executar a compilao do arquivo de ajuda, de modo que a aplicao
possa assumir a ltima verso deste arquivo.

8.1.7

A documentao gerada
As seguintes peas de documentao podem ser criadas pelo GAS:

8.1.7.1

Projeto fsico
No projeto fsico emitido pelo GAS, a partir do arquivo-gabarito GABPRO.DOC , aparecem todas
as especificaes feitas pelo projetista para a aplicao. As diretivas de substituio, os indicativos e
os comandos e condies existentes no texto do gabarito asseguram que somente texto pertinente a
um projeto especfico seja disponibilizado no arquivo resultante. Opcionalmente, o projetista poder
fazer uso dos arquivos-gabaritos GABMANE.DOC , GABPROE.DOC (verso em espanhol),
GABMANI.DOC e GABPROI.DOC (verso em ingls). As janelas de digitao de dados definidas na
aplicao so automaticamente montadas e capturadas pelo GAS, que cria imagens no formato
BMP para serem inseridas na documentao em um local apropriado.
Sempre que gerar esta documentao, imprescindvel que o projetista siga os seguintes
passos:
Clique sobre o boto Documento para ativar o MS-Word e carregar o Projeto Fsico que
acabou de ser criado;
Clique sobre qualquer parte do ndice do documento para selecion-lo;
Pressione F9 para acionar o dilogo Atualizar Campo daquele editor, atualizando o ndice
inteiro;
Grave o documento.
A razo disto que o gabarito do Projeto Fsico trabalha com comandos @REPETE para inserir,
no documento final, as tabelas, campos, ndices e outros objetos que existam na definio do projeto
e a execuo dos procedimentos acima assegura que novos objetos que, porventura, tenham sido
inseridos no projeto, passem a constar do ndice do documento.

8.1.7.2

Manual do usurio da aplicao


A documentao da aplicao final criada pelo GAS a partir do arquivo GABMAN.DOC. As
diretivas de substituio e os indicativos, bem como os comandos e condies existentes neste
arquivo, asseguram a insero no arquivo resultante somente dos tpicos existentes na aplicao
que foi definida pelo projetista. As janelas de digitao de dados definidas na aplicao so
automaticamente montadas e capturadas pelo GAS, que cria imagens no formato BMP para serem

2007 GAS Tecnologia

Captulo 8 - Gerao da documentao

277

inseridas no manual.
Sempre que gerar esta documentao, pelas mesmas razes explicadas para o Projeto Fsico, o
projetista dever seguir os mesmos passos descritos para aquela documentao.
8.1.7.3

Arquivo de ajuda para a aplicao final


Ao gerar os programas fontes, o GAS cria, paralelamente, arquivos contendo o texto de ajuda
pertinente operao da aplicao gerada. Aps o processo de compilao, um arquivo de extenso
.CHM (padro HTML) criado para oferecer os recursos de hipertexto padro do Windows. Para criar
o arquivo de ajuda, o GAS utiliza de arquivos que contm diretivas de substituio, indicativos e
comandos e condies, de modo a permitir que sejam gerados apenas os tpicos existentes na
aplicao e definidos pelo projetista.
O formato CHM o padro atual de help das aplicaes Windows (98 em diante). O conjunto de
gabaritos para este tipo de help compreende os seguintes arquivos levados na aplicao:
MENU.HHC, INICIO.HTM, INDEX.HTM, INDEX.HHK, GABHLP.HHP e CORPO.HTM.
As regras para a modificao dos gabaritos (insero de diretivas) so as mesmas do formato
DOC. No entanto, devido a se tratar de um conjunto de arquivos de diversos formatos a serem
compilados em um s (.CHM), haver a necessidade de utilizar mais de um editor para fazer as
modificaes que julgar necessrias. O editor que utilizamos para arquivos HTM (normalmente,
somente o arquivo CORPO.HTM precisar ser modificado) foi o DreamWeaver da MacroMedia. No
entanto, qualquer outro bom editor pode ser utilizado para editar esses arquivos. Outro arquivo que,
normalmente, necessitar de modificaes o MENU.HHC, o qual dever ser editado com o Bloco
de Notas do Windows (NOTEPAD.EXE).
A compilao deste conjunto efetuada com o utilitrio HCC.EXE, parte do software HTML Help
Workshop, que acompanha o Service Pack 4 do Visual Basic 6.0 (HTMLHELP.EXE). A instalao do
GAS j inclui, no seu diretrio, o compilador on-line HCC.EXE e HHA.DLL para automatizar o
processo de compilao.
O help gerado em um diretrio \HELP, logo abaixo do diretrio da aplicao. Embora no seja
necessrio, visto que o instalador da aplicao final j dever faz-lo, apenas o arquivo
NOME_EXEC.CHM dever ser copiado para o diretrio da aplicao, pois esta s necessitar deste
arquivo para exibir a ajuda.

8.1.7.4

Diretivas de substituio
As diretivas para a substituio de textos e imagens (BMP) em arquivos-gabaritos utilizadas pelo
GAS funcionam como se fossem variveis cujo valor depende do que foi definido no projeto. Os
nomes dessas diretivas foram estabelecidas com palavras de fcil associao com o seu contedo
(mnemnicos) e aparecem sempre com letras maisculas entre colchetes [ ].
Dentro dos arquivos-gabaritos, quando o projetista desejar inserir uma informao proveniente do
projeto, dever utilizar uma diretiva entre colchetes. Uma diretiva de substituio trocada
incondicionalmente pelo seu texto ou imagem correspondente, sempre que encontrada dentro do
arquivo-gabarito, exatamente na mesma posio, mantendo seus atributos de texto e formatao de
pargrafo. No caso de substituio de texto, se o colchete de abertura estiver precedido do caractere
"^", a substituio ser efetuada em maisculas. Por exemplo:

2007 GAS Tecnologia

278

GAS 2007 - Manual do Usurio

[TITULO_PROJETO] ser substitudo por Controle de estoques (se o projeto o tiver definido)
^[TITULO_PROJETO] ser substitudo por CONTROLE DE ESTOQUES.
8.1.7.4.1 Para substituio textual

A lista a seguir contm a relao, em ordem alfabtica, das diretivas de substituio (ttulo e
explanaes) de textos existentes nos arquivosgabaritos.
8.1.7.4.1.1 Analista

Nome do analista ou projetista


8.1.7.4.1.2 APELIDO_TAB_AUXILIAR

Apelido da tabela auxiliar.


8.1.7.4.1.3 rvore

rvore hierrquica do projeto.


8.1.7.4.1.4 CAMPO_ATRIB

Nome ou apelido do campo definido na tela


8.1.7.4.1.5 CAMPO_UNIAO

Campo de unio de relacionamentos.


8.1.7.4.1.6 COND_ALTERACAO

Condio de alterao de registros.


8.1.7.4.1.7 COND_DIRETA

Condio para execuo da frmula direta de processo.


8.1.7.4.1.8 COND_EXCLUSAO

Condio para excluso de registros.


8.1.7.4.1.9 COND_EXC_LANC

Condio para excluso de lanamentos.

2007 GAS Tecnologia

Captulo 8 - Gerao da documentao

8.1.7.4.1.10 COND_INCLUSAO

Condio para incluir registros.


8.1.7.4.1.11 COND_INC_LANC

Condio para que um lanamento seja feito.


8.1.7.4.1.12 COND_INVERSA

Condio para execuo de frmula inversa de processo.


8.1.7.4.1.13 CONS_SQL

Expresso que define uma consulta SQL.


8.1.7.4.1.14 CONS_TITULO

Ttulo da consulta SQL.


8.1.7.4.1.15 CP_ALVO_LANC

Campo alvo de lanamento.


8.1.7.4.1.16 CP_ALVO_PROC

Campo alvo de processamento.


8.1.7.4.1.17 CP_APELIDO

Apelido de campo.

8.1.7.4.1.18 CP_CAMPO_ESTRANGEIRO

Nome do campo estrangeiro de uma relao.


8.1.7.4.1.19 CP_CASAS_DECIMAIS

Quantidade de casas decimais de campo numrico.


8.1.7.4.1.20 CP_LST_INTERNA

Lista de opes de um campo do tipo lista interna

2007 GAS Tecnologia

279

280

GAS 2007 - Manual do Usurio

8.1.7.4.1.21 CP_MASCARA

Mscara do campo
8.1.7.4.1.22 CP_MSG_AJUDA

Mensagem de ajuda (hint) do campo


8.1.7.4.1.23 CP_NOME

Nome do campo definido no banco de dados


8.1.7.4.1.24 CP_SEQUENCIA

Seqncia do campo
8.1.7.4.1.25 CP_TABELA_ESTRANGEIRA

Tabela estrangeira para lista externa


8.1.7.4.1.26 CP_TAMANHO

Tamanho de campo
8.1.7.4.1.27 CP_TIPO

Tipo de campo
8.1.7.4.1.28 DATA

Data de hoje
8.1.7.4.1.29 DESCRICAO

Descrio do projeto
8.1.7.4.1.30 DESC_BD

Descrio do banco de dados


8.1.7.4.1.31 DESC_TAB

Descrio de tabela

2007 GAS Tecnologia

Captulo 8 - Gerao da documentao

8.1.7.4.1.32 FORM_DIRETA

Frmula direta de processamento


8.1.7.4.1.33 FORM_INVERSA

Frmula inversa de processamento


8.1.7.4.1.34 INDICE_AUXILIAR

Nome do ndice auxiliar de uma relao


8.1.7.4.1.35 IND_CHAVES

Chaves do ndice
8.1.7.4.1.36 IND_NOME

Nome do ndice de uma tabela


8.1.7.4.1.37 INT_CP1

Campo da tabela bsica de uma relao


8.1.7.4.1.38 INT_CP2

Campo da tabela estrangeira de uma relao


8.1.7.4.1.39 INT_NOME

Nome de uma integridade


8.1.7.4.1.40 INT_TABELA

Tabela estrangeira de uma integridade


8.1.7.4.1.41 JANELA

Janela definida para entrada de dados


8.1.7.4.1.42 JANELA_MDI

Janela MDI definida para a aplicao

2007 GAS Tecnologia

281

282

GAS 2007 - Manual do Usurio

8.1.7.4.1.43 MSG VALIDACAO

Mensagem de validao de campo


8.1.7.4.1.44 MSG_CRIT_RELACAO

Mensagem de crtica de relao forada


8.1.7.4.1.45 MSG_MENU

Mensagem a aparecer no menu


8.1.7.4.1.46 NOME_BD

Nome do banco de dados


8.1.7.4.1.47 NOME_EMPRESA

Nome da empresa usuria da aplicao


8.1.7.4.1.48 NOME_EXECUTAVEL

Nome do programa executvel da aplicao


8.1.7.4.1.49 NOME_FORM

Nome de form a ser gerado para o mdulo


8.1.7.4.1.50 PRE-VALIDACAO

Expresso de pr-validao de campo


8.1.7.4.1.51 Q_LANCAMENTOS

Quantidade de lanamentos a serem feitos


8.1.7.4.1.52 REL_SQL

Expresso SQL que define um relatrio


8.1.7.4.1.53 REL_TITULO

Ttulo do relatrio

2007 GAS Tecnologia

Captulo 8 - Gerao da documentao

8.1.7.4.1.54 TABELA_AUXILIAR

Nome da tabela auxiliar


8.1.7.4.1.55 TABELA_BASICA

Nome da tabela bsica em uma relao


8.1.7.4.1.56 TAB_ALVO_LANC

Tabela alvo de um lanamento


8.1.7.4.1.57 TAB_ALVO_PROC

Tabela alvo de um processamento


8.1.7.4.1.58 TB_APELIDO

Apelido de uma tabela


8.1.7.4.1.59 TB_NOME

Nome da tabela
8.1.7.4.1.60 TITULO_JANELA

Ttulo de uma janela de dados


8.1.7.4.1.61 TITULO_PROJETO

Ttulo do projeto
8.1.7.4.1.62 TIT_LANCAMENTO

Ttulo de um lanamento definido


8.1.7.4.1.63 TIT_PROCESSAMENTO

Ttulo de um processo definido


8.1.7.4.1.64 VALIDACAO

Expresso de validao de campo

2007 GAS Tecnologia

283

284

GAS 2007 - Manual do Usurio

8.1.7.4.1.65 VALOR INICIAL

Valor inicial (default) de um campo


8.1.7.4.1.66 VALOR_LANC

Valor a ser lanado em um campo


8.1.7.5

Para substituio de imagens


As diretivas de substituio de imagens podem ser utilizadas exatamente como as diretivas de
substituio textuais e servem para inserir na documentao as imagens de telas e objetos que
tenham sido definidos no projeto para a aplicao. Uma vez encontrada uma diretiva de substituio
de imagem, o GAS monta em background o objeto necessrio, captura a sua imagem e a insere no
texto, exatamente na posio indicada pela diretiva.
A lista a seguir apresenta essas diretivas:

8.1.7.5.1 BMP_BAJUDA

Boto de ajuda on-line


8.1.7.5.2 BMP_BANTERIOR

Boto de movimentao para registro anterior


8.1.7.5.3 BMP_BAPAGACOL

Boto de apagar coluna na grade


8.1.7.5.4 BMP_BCANCELA

Boto de cancelar
8.1.7.5.5 BMP_BCONFGRAF

Boto de configurar grfico


8.1.7.5.6 BMP_BCONFIMP

Boto de configurar impressora


8.1.7.5.7 BMP_BCONSULTA

Boto de criar consultas

2007 GAS Tecnologia

Captulo 8 - Gerao da documentao

8.1.7.5.8 BMP_BEXCLUI

Boto de excluso
8.1.7.5.9 BMP_BFILTRO

Boto de filtrar registros


8.1.7.5.10 BMP_BFINALIZA

Boto de finalizar operaes


8.1.7.5.11 BMP_BGRADE

Boto de visualizar em grade


8.1.7.5.12 BMP_BGRAFA

Boto de construir grficos


8.1.7.5.13 BMP_BGRAVA

Boto de gravar
8.1.7.5.14 BMP_BIMPRE

Boto de impresso
8.1.7.5.15 BMP_BINCLUI

Boto de incluso
8.1.7.5.16 BMP_BINFODB

Enter topic text here.


8.1.7.5.17 BMP_BPRIMEIRO

Boto de movimentao para o primeiro registro


8.1.7.5.18 BMP_BPROCURA

Boto de pesquisa de registros

2007 GAS Tecnologia

285

286

GAS 2007 - Manual do Usurio

8.1.7.5.19 BMP_BREPARA

Boto de reparar banco de dados


8.1.7.5.20 BMP_BSEGUINTE

Boto de movimentao para registro seguinte


8.1.7.5.21 BMP_BSENHA

Boto de manuteno de senhas


8.1.7.5.22 BMP_BTOTALIZA

Boto de totalizar coluna na grade


8.1.7.5.23 BMP_BULTIMO

Boto de movimentao para o ltimo registro


8.1.7.5.24 BMP_CBOIND

Combobox de ndices de navegao


8.1.7.5.25 ICONE_APLICACAO

cone utilizado na aplicao


8.1.7.5.26 TELA_INICIAL

Imagem utilizada na tela inicial


8.1.7.6

Indicativos ou flags
Os indicativos ou flags so utilizados dentro do texto de um arquivo-gabarito para estabelecer
testes executados pelo GAS a fim de comparar o que est contido no gabarito e o que foi
disponibilizado pelo projetista nas especificaes do projeto. Isto permite ao GAS determinar o que
deve ser retirado do arquivo-gabarito e levado para o arquivo de documentao definitivo. Esses
indicativos, diferentemente das Diretivas de Substituio, no so exibidos entre colchetes (por isso,
no podem conter espaos) e so utilizadas sempre aps os Comandos e Condies (@SE... e
@REPETE...).
Os indicativos ou flags podem ser concatenados com operadores E, OU e ! (not) com ou sem
parnteses. Alguns exemplos de utilizao de indicativos:
@SE !TEM_VALOR_INICIAL

2007 GAS Tecnologia

Captulo 8 - Gerao da documentao

287

@SE TEM_COND_INC OU TEM_COND_EXC OU TEM_COND_ALT


@SE[(TEM_COND_INC OU TEM_COND_EXC) E TEM_COND_ALT|Texto1|Texto2]
Na lista a seguir aparecem, alfabeticamente, todos os indicativos utilizados pelo GAS nos
arquivosgabaritos e, ao lado, a sua associao com o que o projetista definiu no projeto:
8.1.7.6.1 AC_ALTERACAO

Se foi definida possibilidade de alterao na tabela


8.1.7.6.2 AC_EXCLUSAO

Se foi definida possibilidade de excluso na tabela


8.1.7.6.3 AC_FILTRAGENS

Se foi definida possiblidade de executar filtragens


8.1.7.6.4 AC_INCLUSAO

Se foi definida possiblidade de incluso na tabela


8.1.7.6.5 AC_PESQUISAS

Se foi definida possibilidade de pesquisas na tabela


8.1.7.6.6 CP_AJUDA

Se texto de ajuda (dica) foi definido para o campo


8.1.7.6.7 CP_INVISIVEL

Se campo definido como invisvel


8.1.7.6.8 CP_LISTAEXT

Se campo apresentar uma lista externa


8.1.7.6.9 CP_LISTAINT

Se o campo foi definido como lista interna


8.1.7.6.10 CP_NUMERICO

Se tipo do campo numrico


2007 GAS Tecnologia

288

GAS 2007 - Manual do Usurio

8.1.7.6.11 CP_SEQUENCIAL

Se o campo seqencial
8.1.7.6.12 CRITICAR

Se um relacionamento forado ser criticado


8.1.7.6.13 DEIXAR_NA_SENHA

Se a opo deixar na senha foi marcada


8.1.7.6.14 EXC_LANC

Se a opo excluir o lanamento foi marcado


8.1.7.6.15 FORCAR_RELACAO

Se marcada a opo de forar o relacionamento


8.1.7.6.16 IND_PRIMARIO

Se o ndice primrio
8.1.7.6.17 IND_UNICO

Se o ndice nico
8.1.7.6.18 INT_1-N

Se o relacionamento foi definido como 1-N


8.1.7.6.19 MONOUSUARIO

Se no foi marcada a opo multiusurio


8.1.7.6.20 MULTIUSUARIO

Se foi marcada a opo multiusurio


8.1.7.6.21 QDE_CAMPOS

Quantidade de campos definidos na tabela


8.1.7.6.22 QDE_BD

Quantidade de bancos de dados com que a aplicao trabalha simultaneamente

2007 GAS Tecnologia

Captulo 8 - Gerao da documentao

8.1.7.6.23 QDE_CAMPOS_ALVO

Quantidade de campos alvo de um lanamento


8.1.7.6.24 QDE_CONSULTAS

Quantidade de consultas definidas no projeto


8.1.7.6.25 QDE_CP_TAB_BASICA

Quantidade de campos da tabela bsica


8.1.7.6.26 QDE_INDICES

Quantidade de ndices da tabela


8.1.7.6.27 QDE_INTEGRIDADES

Quantidade de integridades definidas


8.1.7.6.28 QDE_INT_CPS

Quantidade de campos para comandar integridade


8.1.7.6.29 QDE_JANELAS

Quantidade de janelas de dados definidas


8.1.7.6.30 QDE_LANCAMENTOS

Quantidade de lanamentos definidos


8.1.7.6.31 QDE_PROCESSOS

Quantidade de processos definidos


8.1.7.6.32 QDE_RELATORIOS

Quantidade de relatrios definidos


8.1.7.6.33 QDE_TABELAS

Quantidade de tabelas definidas

2007 GAS Tecnologia

289

290

GAS 2007 - Manual do Usurio

8.1.7.6.34 QDE_TAB_AUXILIAR

Quantidade de tabelas auxiliares definidas


8.1.7.6.35 TB_PARAMETROS

Se a tabela do tipo parmetros de sistema


8.1.7.6.36 TEM_AJUDA

Se tem ajuda on-line na aplicao


8.1.7.6.37 TEM_ATRIBUTOS

Se foram definidos atributos para a tabela bsica


8.1.7.6.38 TEM_BAJUDA

Se o boto de ajuda foi disponibilizado na barra


8.1.7.6.39 TEM_BANTERIOR

Se o boto registro anterior foi disponibilizado na barra


8.1.7.6.40 TEM_BAPAGACOL

Se o boto de apagar coluna foi disponibilizado na barra


8.1.7.6.41 TEM_BCANCELA

Se o boto de cancelar foi disponibilizado na barra


8.1.7.6.42 TEM_BCONFGRAF

Se o boto de configurar grfico foi disponibilizado na barra


8.1.7.6.43 TEM_BCONFIMP

Se o boto de configurar impressora foi disponibilizado na barra


8.1.7.6.44 TEM_BCONSULTA

Se o boto de criar consultas foi disponibilizado na barra

2007 GAS Tecnologia

Captulo 8 - Gerao da documentao

8.1.7.6.45 TEM_BEXCLUI

Se o boto de excluso foi disponibilizado na barra


8.1.7.6.46 TEM_BFILTRO

Se o boto de filtrar foi disponibilizado na barra


8.1.7.6.47 TEM_BFINALIZA

Se o boto de finalizar foi disponibilizado na barra


8.1.7.6.48 TEM_BGRADE

Se o boto de visualizar em grade foi disponibilizado na barra


8.1.7.6.49 TEM_BGRAFA

Se o boto de construir grficos foi disponibilizado na barra de ferramentas


8.1.7.6.50 TEM_BGRAVA

Se o boto de gravar foi disponibilizado na barra de ferramentas


8.1.7.6.51 TEM_BIMPRE

Se o boto de impresso foi disponibilizado na barra


8.1.7.6.52 TEM_BINCLUI

Se o boto de incluso foi disponibilizado na barra


8.1.7.6.53 TEM_BINFODB

Se o boto de informaes do BD foi disponibilizado na barra


8.1.7.6.54 TEM_BOTAO_INTERNET

Se os botes da barra de ferramenta da aplicao tero estilo InterNet


8.1.7.6.55 TEM_BPRIMEIRO

Se o boto primeiro registro foi disponibilizado na barra

2007 GAS Tecnologia

291

292

GAS 2007 - Manual do Usurio

8.1.7.6.56 TEM_BPROCURA

Se o boto para pesquisar registros foi disponibilizado na barra.


8.1.7.6.57 TEM_BREPARA

Se o boto de reparar banco de dados foi disponibilizado na barra


8.1.7.6.58 TEM_BROWSE

Se existe algum objeto do tipo grade na aplicao


8.1.7.6.59 TEM_BSEGUINTE

Se o boto prximo registro foi disponibilizado na barra


8.1.7.6.60 TEM_BSENHA

Se o boto de manuteno de senhas foi disponibilizado na barra


8.1.7.6.61 TEM_BTOTALIZA

Se o boto de totalizar foi disponibilizado na barra


8.1.7.6.62 TEM_BULTIMO

Se o boto ltimo registro foi disponibilizado na barra


8.1.7.6.63 TEM_CBOIND

Se disponibilizada na barra a combo de ndices de navegao


8.1.7.6.64 TEM_COND_ALT_REG

Se definida condio de alterao de registros


8.1.7.6.65 TEM_COND_EXC_LAN

Se definida condio de excluso de lanamento


8.1.7.6.66 TEM_COND_EXC_PRO

Se definida condio de excluso de processamento

2007 GAS Tecnologia

Captulo 8 - Gerao da documentao

8.1.7.6.67 TEM_COND_EXC_REG

Se definida condio de excluso de registros


8.1.7.6.68 TEM_COND_INC_LAN

Se definida condio de incluso de lanamento


8.1.7.6.69 TEM_COND_INC_PRO

Se definida condio de incluso de processamento


8.1.7.6.70 TEM_COND_INC_REG

Se definida condio de incluso de registros


8.1.7.6.71 TEM_CONSULTAS

Se h consultas definidas no projeto


8.1.7.6.72 TEM_CPMEMO

Se definido algum campo do tipo memo na aplicao


8.1.7.6.73 TEM_CPS_LANCAMENTOS

Se h campos a serem lanados


8.1.7.6.74 TEM_DESC_BD

Se h descrio para o banco de dados


8.1.7.6.75 TEM_DESC_TAB

Se h descrio definida para a tabela


8.1.7.6.76 TEM_FORMULA_INV_PRO

Se o projetista definiu frmula inversa para o processo


8.1.7.6.77 TEM_GRAFICOS

Se o projetista disponibilizou a apresentao de grficos

2007 GAS Tecnologia

293

294

GAS 2007 - Manual do Usurio

8.1.7.6.78 TEM_GRID

Se o projetista definiu uma tabela em grid dentro do projeto


8.1.7.6.79 TEM_INDICES

Se tem ndices definidos para a tabela


8.1.7.6.80 TEM_INTEGRIDADES

Se foi definida alguma integridade


8.1.7.6.81 TEM_LANCAMENTOS

Se h algum lanamento definido


8.1.7.6.82 TEM_MAJUDA

Se colocada opo de ajuda no menu


8.1.7.6.83 TEM_MANTERIOR

Se disponibilizada opo de registro anterior no menu


8.1.7.6.84 TEM_MAPAGACOL

Se disponibilizada opo de apagar colunas no menu


8.1.7.6.85 TEM_MCANCELA

Se disponibilizada a opo de cancelar operaes no menu


8.1.7.6.86 TEM_MCONFGRAF

Se disponibilizada opo de configurar grfico no menu


8.1.7.6.87 TEM_MCONFIMP

Se disponibilizada opo configura impressora no menu


8.1.7.6.88 TEM_MCONSULTA

Se disponibilizada opo de menu para criar consultas

2007 GAS Tecnologia

Captulo 8 - Gerao da documentao

8.1.7.6.89 TEM_MEXCLUI

Se disponibilizada opo de excluso de registros no menu da aplicao


8.1.7.6.90 TEM_MFILTRO

Se disponibilizada opo de menu para filtrar registros


8.1.7.6.91 TEM_MFINALIZA

Se disponibilizada opo de finalizar no menu


8.1.7.6.92 TEM_MGRADE

Se disponibilizada opo de menu para visualizar tabelas em grade


8.1.7.6.93 TEM_MGRAFA

Se disponibilizada opo de criar grficos no menu


8.1.7.6.94 TEM_MGRAVA

Se disponibilizada opo de gravao de registros no menu


8.1.7.6.95 TEM_MIMPRE

Se disponibilizada opo de impresso no menu


8.1.7.6.96 TEM_MINCLUI

Se disponibilizada opo de incluso de registros no menu


8.1.7.6.97 TEM_MINFODB

Se o projetista disponibilizou opo de informaes do BD no menu.


8.1.7.6.98 TEM_MPRIMEIRO

Se disponibilizada opo primeiro registro no menu


8.1.7.6.99 TEM_MPROCURA

Se disponibilizada opo de menu para pesquisar registros

2007 GAS Tecnologia

295

296

GAS 2007 - Manual do Usurio

8.1.7.6.100 TEM_MREPARA

Se disponibilizada opo de reparao de banco de dados no menu


8.1.7.6.101 TEM_MSEGUINTE

Se disponibilizada opo prximo registro no menu


8.1.7.6.102 TEM_MSENHA

Se disponibilizada opo de manuteno de senhas no menu


8.1.7.6.103 TEM_MSG_VALIDACAO

Se h mensagem de validao para o campo


8.1.7.6.104 TEM_MTOTALIZA

Se disponibilizada no menu a opo de totalizar registros


8.1.7.6.105 TEM_MULTIMO

Se disponibilizada no menu a opo de ltimo registro


8.1.7.6.106 TEM_PARAMETROS

Se h tabela de parmetros na aplicao


8.1.7.6.107 TEM_PRE-VALIDACAO

Se h expresso de pr-validao para o campo


8.1.7.6.108 TEM_PROCESSOS

Se algum processamento foi definido


8.1.7.6.109 TEM_QTDEREG

Se disponibilizado o controle contador de registros na barra


8.1.7.6.110 TEM_RELATORIOS

Se definido algum relatrio no projeto

2007 GAS Tecnologia

Captulo 8 - Gerao da documentao

297

8.1.7.6.111 TEM_SCRNAV

Se colocada opo de navegao na barra


8.1.7.6.112 TEM_SENHA

Se o plano de senhas foi deixado pelo projetista


8.1.7.6.113 TEM_TAB_AUXILIAR

Se definida alguma tabela auxiliar


8.1.7.6.114 TEM_TELAINICIAL

Se definida uma tela inicial para a aplicao


8.1.7.6.115 TEM_VALIDACAO

Se h validao definida para o campo


8.1.7.6.116 TEM_VALOR_INICIAL

Se h valor inicial definido para o campo


8.1.7.6.117 TEM_VALOR_LANC

Se definido valor a lanar no campo alvo


8.1.7.6.118 UM_BD

Se a aplicao trabalha com um nico banco de dados


8.1.7.7

Indicativos do projetista
Se desejar, o projetista poder criar os seus prprios indicativos para inserir texto nos gabaritos,
exatamente da mesma forma como feito para os indicativos desta tabela, obervando que no
podem conter espaos. Quando o GAS encontrar um indicativo que no seja seu (no esteja na
tabela) assumir que um indicativo criado pelo projetista. Quando isto acontecer, o GAS far uma
pausa, mostrar o indicativo e perguntar ao projetista se o texto correspondente deve ou no ser
inserido na documentao resultante.

8.1.7.8

Comandos e condies
A fim de permitir ao GAS decidir o que dever ser disponibilizado na documentao a ser criada,
existe dentro dos arquivos-gabaritos alguns comandos e condies para insero de texto. Os
comandos e condies sempre so iniciados pelo caractere @ (arroba), no podendo conter espao
entre este caractere e o comando que segue. As condies para a colocao de texto podem ser

2007 GAS Tecnologia

298

GAS 2007 - Manual do Usurio

estabelecidas de duas formas:


8.1.7.8.1 SE

uma condio com uma nica possibilidade. O indicativo avaliado pelo GAS de acordo com o
que o projetista tenha colocado nas especificaes da aplicao. Sua frmula genrica :
@SE indicativo
Texto...
Texto...
...
@FIM SE [indicativo]
Observe o exemplo:
@SE TEM_TELAINICIAL
Tela de apresentao: [TELA_INICIAL]
@FIM SE TEM_TELAINICIAL
Se o GAS verificar que o indicativo TEM_TELA_INICIAL verdade (se o projetista optou por gerar
uma tela inicial para a aplicao), disponibilizar a figura correspondente na documentao. Observe
que a abertura de um bloco SE implica no seu fechamento com a instruo @FIM SE
correspondente, sem o qual ocorrer um erro. A insero do indicativo na frente do fechamento do
bloco opcional, servindo apenas para facilitar o controle dos blocos inseridos no gabarito.
8.1.7.8.2 SE Linear

uma condio com duas possibilidades. O indicativo avaliado pelo GAS de acordo com o que
o projetista tenha disponibilizado nas especificaes da aplicao. Sua frmula genrica :
@SE[indicativo|TEXTO1|TEXTO2]
Se "indicativo" for verdade, o GAS inserir na documentao gerada o texto correspondente a
TEXTO1; caso contrrio, inserir o texto correspondente a TEXTO2. No exemplo a seguir,
Segurana: @SE[TEM_SENHA|Com|Sem] senhas Se o GAS verificar que o indicativo TEM_SENHA
verdade (se o projetista disponibilizou o plano de senhas na rvore), inserir o texto "Com" na
frente de " senhas" na documentao gerada; seno, inserir a palavra "Sem ".
8.1.7.8.3 REPETE

Define uma condio de repetio cujo nmero de vezes est em indicativo, que avaliado pelo
GAS de acordo com o que o projetista definiu nas especificaes da aplicao. Sua frmula genrica

2007 GAS Tecnologia

Captulo 8 - Gerao da documentao

299

:
@REPETE indicativo
Texto...
Texto...
...
@FIM REPETE [indicativo]
No exemplo a seguir o GAS ir verificar quanto vale QDE_CAMPOS_ALVO e repetir as
informaes existentes, entre o @REPETE... e o @FIM REPETE..., o nmero correspondente de vezes.
@REPETE QDE_CAMPOS_ALVO
@SE TEM_VALOR_LANC
Campo: [CP_ALVO_LANC]
Com a expresso: [VALOR_LANC]
@FIM SE TEM_VALOR_LANC
@FIM REPETE QDE_CAMPOS_ALVO

2007 GAS Tecnologia

Captulo

IX
Captulo 9 - Gerao do Instalador e Adaptador de Banco

Captulo 9 - Gerao do Instalador e Adaptador de Banco

301

Captulo 9 - Gerao do Instalador e Adaptador de Banco


Alm de gerar todos os programas fontes da aplicao propriamente dita, o GAS gera tambm
alguns programas auxiliares ou utilitrios para complementar a aplicao.

9.1

Criando o Instalador da Aplicao


Escrever programas de instalao para aplicaes em Windows requer um pouco mais do que
conhecimentos normais de programao. uma tarefa que, embora aparentemente simples, pode
se tornar um pesadelo pela quantidade de informaes que envolve. Quem se habilitar a escrever
este tipo de programa ter de lidar com o Registry do Windows (uma espcie de cartrio que a
Microsoft criou para ns...), Windows API, estampas de verso dentro de programas, alm de uma
srie de outras informaes no muito bem documentadas. Felizmente, o GAS possui opo que
pode tornar este trabalho mais intuitivo, no qual, virtualmente, tem-se apenas que seguir algumas
intrues.
So dois passo para criar a instalao, um na definio do projeto, e outra na criao da
instalao.
A definio, ser feita conforme mencionado na definio do projeto: Aba Instalao

158

Na tela de gerao de fontes, utilize a opo para gerar o programa instalador.

9.2

O Utilitrio Adaptador de Arquivos

Figura 9.1

Sempre que o GAS detectar a existncia de alteraes na


estrutura do banco de dados definido para a aplicao, como por
exemplo, a insero e retirada de tabelas ou campos ou, ainda,
alterao de tamanho de campos, o mesmo criar
automaticamente um programa utilitrio adaptador de arquivos de
nome ADAPTA, totalmente independente, no momento de gerar os
2007 GAS Tecnologia

302

GAS 2007 - Manual do Usurio

programas fontes da aplicao, podendo o projetista selecionar a


sua compilao por intermdio da janela de gerao de
executveis (consulte o Captulo 7 - Gerao de Executveis). Em
se tratando de base de dados JET, uma vez compilado, o
programa executvel deste utilitrio pode ser levado, juntamente
com o novo arquivo .DEF, para o equipamento do usurio da
aplicao, realizando a adaptao do .MDB existente. A presena
do arquivo .DEF se faz necessria, pois nele est contida a nova
estrutura do banco de dados para a qual o arquivo MDB existente
ser convertido. De forma anloga ao executvel adaptador de
arquivos (MDB), quando utilizado o GAS Enterprise com o SQL
Server, MySQL, Firebird ou Oracle, gerado o arquivo-script
ADAPTA.SQL, a ser executado via Query Analyzer ou SQL Plus,
ferramentas respectivamente do SQL Server e Oracle, para que
ento a adaptao necessria seja efetivada. Para os outros
bancos, veja os aplicativos para este fim com seus respectivos
fabricantes. Para assegurar a incorruptibilidade do banco de
dados, recomendamos que se faa o backup do banco de dados
antes que o script seja utilizado na adaptao do referido banco.
Em geral, o prprio SGBD oferece utilitrio para a execuo e
restaurao de backup.
Se mais de um arquivo de dados estiver sendo utilizado pela aplicao, o projetista dever
executar este utilitrio para adaptar cada um deles.
A operao do adaptador de arquivos bastante simples, no requerendo maiores detalhes. Ao
ser executado, em sua verso para JET, tal utilitrio apresenta a janela da figura 9.2:

Figura 9.2

Basta informar diretamente no campo ou utilizar o boto com reticncias para capturar o nome do
arquivo MDB a adaptar e clicar sobre o boto Ok. Durante o processo de adaptao, quando este
utilitrio adaptador encontrar alguma incoerncia entre as estruturas antiga e nova, apresentar
dilogos solicitando informaes do usurio, como nos exemplos das figura 9.3 e 9.4:

2007 GAS Tecnologia

Captulo 9 - Gerao do Instalador e Adaptador de Banco

303

Figura 9.3

Neste exemplo, o adaptador encontrou uma tabela (ENCOMENDAS) que no existia na estrutura
anterior e est solicitando ao operador para eleger uma das tabelas da lista como base para a nova
tabela. Se desejar, o operador poder cancelar ou ignorar esta operao. Poder tambm escolher
uma tabela e prosseguir com a operao.

Figura 9.4

Neste outro exemplo, o adaptador solicita para entrar com a correspondncia de campos anterior
e atual de uma das tabelas do banco de dados. Quando o usurio clica em um dos campos, um
boto marcado com reticncias aparece para ser clicado e apresentar os campos disponveis em
uma lista.
O projetista poder ainda adicionar valores pr-fixados no momento da adaptao dos bancos de
dados, bastando para isso preencher o novo campo com o contedo desejado, sendo este replicado
para todos os registros da tabela. Aps o trmino da converso, o adaptador avisa que renomeou o
arquivo antigo para a extenso .ANT (anterior).

9.3

O Utilitrio Conversor de Arquivos DBF


Por opo de menu, o GAS poder gerar um programa utilitrio para converter arquivos de dados
do formato DBF para o formato MDB. Este conversor permite o total aproveitamento dos dados
manipulados por uma
aplicao DOS que utilize este tipo de arquivo. Para utilizar esta opo, deve-se proceder

2007 GAS Tecnologia

304

GAS 2007 - Manual do Usurio

conforme segue: carregue, no GAS, o projeto da aplicao que ir manipular os dados convertidos;
Selecione Arquivo/Utilitrios/Gerar conversor de arquivos DBF... no menu, procedimento que
permitir a visualizao de tela semelhante da figura 9.5:

Figura 9.5

Selecione ou informe o diretrio onde esto os arquivos DBF;


Faa a associao das tabelas sob o ttulo No MDB, onde esto as tabelas da estrutura criada
para o projeto, e sob o ttulo No DBF, onde devero estar os nomes dos arquivos DBF
correspondentes. Pode-se clicar sobre o boto marcado com reticncias para capturar o nome
do arquivo;
Para cada tabela que tenha sido associada, faa tambm a associao dos campos
correspondentes, ou seja, na frente de cada campo do MDB, informe qual o campo do arquivo
DBF que ser utilizado para preench-lo. Aqui tambm poder ser utilizado o boto de
reticncias para capturar o nome do campo desejado;
Clique sobre o boto Prossegue.
O GAS gerar um projeto em Visual Basic do utilitrio conversor de nome CONVDBF, totalmente
independente. Isso significa que este poder ser selecionado para ser compilado na janela de
gerao de executveis do GAS para posteriormente ser levado ao equipamento do usurio, onde
quer que esteja. Lembre que o arquivo .DEF correspondente ao projeto dever ser levado em
conjunto ao programa executvel do conversor para o equipamento do usurio. Sua presena se faz
necessria devido ao fato de que nele esto contidas as definies da estrutra do banco de dados
MDB para a qual os DBF sero convertidos. Durante a converso dos dados, os seguintes aspectos
devem ser observados:
uma vez que este utilitrio normalmente gerado em um equipamento (o do projetista) e
utilizado em uma mquina diferente (a do usurio), durante o processo de sua criao, necessrio
que uma cpia dos arquivos DBF a serem convertidos (mesmo que vazios) estejam presentes na
mquina do projetista. Isto explicado pelo fato de que o GAS precisa conhecer as suas estruturas
para criar corretamente as correspondncias na estrutura do MDB;

2007 GAS Tecnologia

Captulo 9 - Gerao do Instalador e Adaptador de Banco

305

todos os campos do tipo numrico dentro dos arquivos DBF sero transformados para preciso
dupla no arquivo MDB. Isto se deve ao fato de que, nas linguagens XBase que manipulam arquivos
DBF, o tipo de dado numrico alcanava sempre 19 dgitos numricos, enquanto que, no mbito do
Visual Basic, os campos numricos possuem diversos tipos dependendo da magnitude de seus
valores;
campos do tipo memo nos arquivos DBF que eram acentuados (dentro das aplicaes criadas
pelo GASPro DOS) tero a acentuao automaticamente convertida para o padro Windows;
erros de converso que porventura ocorram durante a execuo so gravados em um arquivo
.LOG e, ao final da converso, se existir algo a ser exibido, o utilitrio conversor oferecer a opo de
visualizar este arquivo por intermdio do programa WordPad do Windows;
A operao deste utilitrio bastante simples, no requerendo muitos detalhes uma vez que o
GAS j disponibilizou, em seus programas, todos os detalhes informados pelo projetista. Quando
executado, o utilitrio apresenta uma tela semelhante da figura 9.6:

Figura 9.6

A partir desta tela, o projetista dever proceder conforme segue:


informar o diretrio onde esto os arquivos DBF a converter. O boto extensor (com reticncias)
abre um dilogo para a escolha do diretrio de origem;
informar o diretrio de destino, onde as informaes convertidas sero gravadas no MDB. Aqui
tambm, o boto extensor (com reticncias) abre um dilogo para a escolha do diretrio de destino;
se o arquivo MDB ainda no existir, marcar Criar MDB;
clicar sobre o boto Ok.

2007 GAS Tecnologia

Captulo

X
Captulo 10 - Um exemplo prtico

Captulo 10 - Um exemplo prtico

10

307

Captulo 10 - Um exemplo prtico


Neste captulo ser demonstrada a utilizao efetiva do GAS na gerao de um sistema exemplo
de Controle de Estoques elaborado somente para efeitos didticos, sendo, no entanto,
completamente funcional. Este tipo de sistema foi escolhido para exemplo devido ao fato de que,
pelas suas caractersticas, nos dar a oportunidade de abordar os mais diversos recursos oferecidos
pelo GAS, como a definio de validaes, lanamentos, processamentos, campos no editveis,
plano de senhas, etc.
Durante o processo de instalao do GAS no equipamento, alguns exemplos so, opcionalmente,
instalados, inclusive o exemplo descrito neste captulo. O acompanhamento passo-a-passo deste
exemplo proporcionar subsdios para uma utilizao mais eficiente do GAS. Recomendamos que os
profissionais, mesmo com prtica de programao, sigam os passos para a execuo desta
aplicao, ganhando tempo no aprendizado dos diversos recursos disponveis.
O primeiro passo para a criao de uma aplicao a sua concepo: como desejamos que
funcione, o que vai e o que no vai fazer. Existem diversas metodologias para desenvolvimento de
projetos de sistemas e seria impossvel, neste manual, discorrer sobre qualquer uma delas, mesmo
porque esse no nosso objetivo. No entanto, qualquer que seja a metodologia empregada, o GAS
ser sempre uma ferramenta inestimvel para a construo completa da aplicao final, com seus
programas fontes, documentao e ajuda on-line.
Vamos entender como o nosso exemplo de Controle de Estoques ser estruturado. Nossa
aplicao exemplo manipular um banco de dados com 9 tabelas. Nas explicaes seguintes, a sigla
NF significa Nota Fiscal.
Fornecedores - Dados dos Fornecedores
Indexadores - Indexadores financeiros
Parmetros - Parmetros da aplicao
Notas fiscais - Dados genricos das NFs
Itens da NF - Itens digitados das NFs
Sadas de mercadoria - Sadas de estoque
Produtos em estoque - Cadastro de produtos
Movimentao de produtos - Histrico entradas/sadas
Contas a pagar - Contas a pagar (valores das NFs)

10.1

Aspectos do funcionamento da aplicao


A entrada de produtos em estoque ser efetuada mediante a digitao da NF de fornecedor na
tabela Notas Fiscais. A cada item de produto digitado na tabela de Itens da NF, as quantidades

2007 GAS Tecnologia

308

GAS 2007 - Manual do Usurio

recebidas sero creditadas no estoque (tabela Produtos em Estoque) e o valor do item ser
operado com a quantidade recebida e acumulado no valor total da NF (tabela Notas Fiscais).
Com as operaes acima, ilustraremos a criao de processamentos de campos em tabelas
estrangeiras, a partir de digitao de informaes em outras tabelas. Aps a digitao de uma NF,
um registro de pagamento criado na tabela de Contas a Pagar, no valor total da NF digitada.
Tambm, na tabela de Movimentao de produtos, criado (caso no exista ainda) um registro para
cada item digitado e os seus campos so atualizados com as quantidades recebidas. Durante a
digitao em Sada de mercadorias, os campos desta tabela so tambm atualizados, de modo que
possam espelhar a quantidade de entradas e sadas de cada item de produto.
Com isto, estaremos conhecendo a definio de lanamentos em tabelas estrangeiras a partir de
digitao de informaes em outras tabelas, inclusive com o estabelecimento de condies para que
lanamentos sejam criados (neste caso, sob a condio do registro no existir na tabela).

10.2

Definio do projeto
Conhecemos alguns aspectos gerais do funcionamento da aplicao exemplo que iremos criar.
Vamos, agora, iniciar a sua criao. Durante este processo, vamos nos ater somente ao aspecto da
criao propriamente dita para que as explicaes no se extendam em demasia. Iremos comentar
as aes somente quando for estritamente necessrio. bom lembrar que, enquanto segue estas
instrues, o projetista sempre poder pressionar a tecla F1 para obter ajuda detalhada para o
contexto ou, ainda, para consultar os diversos tpicos da ajuda on-line do GAS.
Acione o GAS, aplicando um duplo-clique sobre o seu cone na pasta onde tenha sido instalado.
Ao abr-lo, ser apresentada a tela "Projetos do GAS" a partir da qual deve ser selecionada a opo
Novo projeto localizada na aba denominada Novo.
A partir do dilogo padro do Windows, informe o nome de arquivo C:\ESTOQUE\EST. Clique em
Salvar e em seguida confirme a criao do diretrio que, por se tratar de um novo projeto, poder
no existir em seu computador. Sempre que o GAS trabalha com um novo projeto, ele cria um banco
de dados com o nome informado e com a extenso .GAS para que sejam armazenadas as definies
que sero digitadas para este novo projeto. Aps a sua criao, ele carrega diversas definies
default e as apresenta na rvore ou modelador do projeto. A partir deste ponto, o trabalho de
modelagem pode ser iniciado. A figura 10.1 exibe a rvore default para o novo projeto com o qual
iremos trabalhar.

2007 GAS Tecnologia

Captulo 10 - Um exemplo prtico

309

Figura 10.1

Clique com o boto direito do mouse sobre o primeiro mdulo da rvore (SEM NOME DEFINIDO)
e selecione a opo "Define o mdulo selecionado". A janela de definio do projeto apresentada.

2007 GAS Tecnologia

310

GAS 2007 - Manual do Usurio

Figura 10.2

10.2.1 Dados genricos


Informe os dados necessrios, na aba "Dados Genricos", para que se torne igual ao que aparece
na Figura 10.2.
Clique sobre o boto Grava para salvar essas informaes, que so os dados genricos do
projeto.

10.2.2 Estrutura do BD
A seguir, clique na aba intitulada Estrutura. Aqui, vamos definir os aspectos mais importantes da
aplicao: o banco de dados e sua estrutura. A tela da figura 10.3 apresentada. Os botes
existentes nesta janela tm, pela ordem, a finalidade de:
gravar as informaes digitadas;
cancelar as informaes digitadas;
adicionar item na lista, dependendo da que estiver selecionada;
apagar um item da lista, dependendo da que estiver selecionada.

2007 GAS Tecnologia

Captulo 10 - Um exemplo prtico

311

Figura 10.3

Vamos comear definindo um banco de dados de nome ESTOQUE. Em seguida vamos definir a
sua estrutura inserindo primeiramente as tabelas e, em cada uma delas, os campos que a comporo.
Convm observar que, a partir da definio das tabelas, no existe uma regra exata para
executarmos esta tarefa. Por exemplo, podemos adicionar primeiramente todas as tabelas e depois,
selecionando uma a uma, definir os seus campos, ndices e integridades. Podemos tambm, a cada
tabela inserida, definir esses atributos imediatamente. Para facilitar as explicaes, neste exemplo,
vamos inserir primeiramente todas as tabelas e depois trabalharemos com os seus atributos.

10.2.3 Banco de dados


Clique sobre a lista intitulada "Banco de dados" e, em seguida, acione o boto de adicionar.
Informe o nome ESTOQUE no campo destinado ao nome do banco de dados.
A opo Principal deve ser marcada no caso da aplicao manipular mais de um banco de
dados, o que no o caso do nosso exemplo. O banco de dados marcado como principal ser
aquele em que o GAS criar as tabelas de apoio ao sistema, que so as tabelas de senhas e a
tabela de controle de seqenciais. Em nosso exemplo tambm no faremos uso de senha para
impedir o acesso do banco de dados por aplicativos externos, bem como optaremos, por motivos
meramente didticos, pelo tipo de banco Access (MDB) ao invs de SQL Server ou Oracle.

10.2.4 Tabelas
Clique sobre a lista tabelas e sobre o boto de adicionar para inserir as informaes constantes da
tabela a seguir:
Durante esta operao, observe os seguintes detalhes:
aps a insero de uma tabela, o boto de gravao deve ser clicado para salvar as
2007 GAS Tecnologia

312

GAS 2007 - Manual do Usurio

informaes;
a cada nova tabela inserida o boto de adicionar dever ser novamente acionado;
para efeito do nosso exemplo, a informao "Descrio da tabela" no vital, sendo, no entanto,
interessante para verificar onde e como esta informao ser utilizada quando o GAS criar a
documentao da aplicao;
o apelido inserido automaticamente pelo GAS, no havendo necessidade de ser modificado.

Ttulo

Descrio da tabela

Fornecedores

Tabela que contm os dados dos


fornecedores
de
mercadorias
controladas pelo sistema

Indexadores

Contm os indexadores financeiros


utilizados pelo sistema

Notas Fiscais

Dados da NF de recebimento de
mercadorias

Itens da NF

Dados de quantidade e preo dos itens


recebidos por meio da NF

Contas a Pagar

Informaes de contas a pagar de


recebimento de mercadorias

Movimentao de

Tabela para armazenar dados de

produtos

histrico de entrada e sada de


mercadorias

Produtos em

Cadastro com os dados dos produtos

estoque

que so manipulados pela aplicao

Sadas de

Informaes das sadas (baixas) de

mercadorias

mercadorias do estoque

2007 GAS Tecnologia

Captulo 10 - Um exemplo prtico

Parmetros do

313

Parmetros utilizados pelo sistema

sistema (*)

(*) A tabela Parmetros do sistema a nica que dever ser marcada como sendo do tipo
parmetro, na respectiva caixa de verificao que aparece no canto inferior esquerdo da tela em
questo.
10.2.4.1 Campos da tabela
Agora que todas as tabelas esto criadas, selecione cada uma delas e defina os seus campos. Os
quadros a seguir indicam as informaes que devem ser digitadas para os campos de cada tabela.
As regras para a entrada dessas informaes so:
selecione a tabela na lista Tabelas;
clique sobre a lista Campos;
clique no boto de adicionar;
digite as informaes dos campos;
clique sobre o boto de gravao para efetivar as informaes.
Observe que, quando um campo j tiver sido definido anteriormente em uma tabela, basta
selecion-lo na combobox destinada a receber o nome do campo.
10.2.4.1.1 Fornecedores

Selecione a tabela Fornecedores, clique na lista de campos e, depois, no boto de adicionar.


Informe os campos de Fornecedores. Para o atributo Ajuda, digite a informao que desejar ou aceite
o que o GAS ofereceu como default:

Atributo

2007 GAS Tecnologia

Informe ou selecione

Nome

Cdigo do fornecedor

Tipo

Numrico

Apelido

Codigo_do_fornecedor

Tamanho

314

GAS 2007 - Manual do Usurio

Mscara

9999

Atributo

informe ou selecione

Nome

Nome do fornecedor

Tipo

Caractere

Apelido

Nome_do_fornecedor

Tamanho

40

Mscara

@!

Atributo

informe ou selecione

Nome

Contato

Tipo

Caracter

Apelido

Contato

Tamanho

30

Mscara

@!@A

Atributo

informe ou selecione

Nome

Telefone do fornecedor

Tipo

Fone

2007 GAS Tecnologia

Captulo 10 - Um exemplo prtico

Apelido

Telefone_do_fornecedor

Tamanho

16

Mscara

999-99-#999-9999

Atributo

315

informe ou selecione

Nome

Ramal

Tipo

Caracter

Apelido

Ramal

Tamanho

Mscara

@!

Atributo

informe ou selecione

Nome

Fax

Tipo

Fone

Apelido

Fax

Tamanho

16

Mscara

999-99-#999-9999

10.2.4.1.2 Indexadores

Selecione a tabela Indexadores, clique na lista de campos e, depois, no boto de adicionar.


Informe os campos da tabela Indexadores.

2007 GAS Tecnologia

316

GAS 2007 - Manual do Usurio

Atributo

informe ou selecione

Nome

Data

Tipo

Data

Apelido

Data

Mscara

999-99-#999-9999

Atributo

informe ou selecione

Nome

Valor

Tipo

Numrico

Apelido

Valor

Tamanho

12

Decimais

Mscara

999.999.999,99

10.2.4.1.3 Parmetros do Sistema

Selecione a tabela Parmetros, clique na lista de campos e, depois, no boto de adicionar.


Informe os campos da tabela "Parmetros do sistema".

Atributo

informe ou selecione

Nome

Nome da moeda

Tipo

Caractere

Apelido

Nome_da_moeda

2007 GAS Tecnologia

Captulo 10 - Um exemplo prtico

Tamanho

10

Mscara

@!@A

Atributo

317

informe ou selecione

Nome

Sigla da moeda

Tipo

Caractere

Apelido

Sigla_da_moeda

Tamanho

Mscara

@!

10.2.4.1.4 Produtos em estoque

Selecione a tabela "Produtos em estoque", clique na lista de campos e, depois, no boto de


adicionar. Informe os campos da tabela "Produtos em estoque", que conter os dados cadastrais
dos produtos, com quantidades, preos, etc.

Atributo

2007 GAS Tecnologia

informe ou selecione

Nome

Cdigo

Tipo

Numrico

Apelido

Codigo

Tamanho

Mscara

999

318

GAS 2007 - Manual do Usurio

Atributo

informe ou selecione

Nome

Descrio do produto

Tipo

Caractere

Apelido

Descricao_do_produto

Tamanho

30

Mscara

@!

Atributo

informe ou selecione

Nome

Unidade

Tipo

Lista interna

Lista

Un|Cx|Lt|Mt

Apelido

Unidade

Observe que o campo acima de um tipo especial, onde as opes digitadas em Lista,
separadas pelo caractere "|", podero ser selecionadas pelo usurio final, por meio de um objeto
denominado combobox, que uma lista que aparece sempre fechada e que pode ser aberta para
seleo. em estoque", que conter os dados cadastrais dos produtos, com quantidades, preos, etc.

Atributo

informe ou selecione

Nome

Referncia tcnica

Tipo

Memo

Apelido

Referencia_tecnica

2007 GAS Tecnologia

Captulo 10 - Um exemplo prtico

319

Este campo do tipo textual, apresentado para digitao em uma rea com mltiplas linhas
(textbox multiline).

Atributo

informe ou selecione

Nome

Quantidade em estoque

Tipo

Numrico

Apelido

Quantidade_em_estoque

Tamanho

Mscara

999.999

O campo acima receber processamentos com as quantidades digitadas na NF e nas


movimentaes de sada, sendo, por isso, definido mais adiante como "No editvel", ou seja, o
usurio nunca digitar informaes neste campo. Campos no editveis so definidos normalmente,
como qualquer outro tipo de campo, sendo que, quando o inserirmos na tela, designaremos a
propriedade Editvel para o valor No, como veremos mais adiante.

Atributo

informe ou selecione

Nome

Quantidade em estoque

Tipo

Rotativo

Apelido

Quantidade_minima

O campo acima tambm de um tipo especial. Um campo do tipo rotativo sempre um valor do
tipo inteiro e, na tela, aparece com dois objetos associados: uma caixa de texto para digitao e uma
barra de rolagem, onde o usurio pode clicar para incrementar ou decrementar o valor numrico
existente no campo. Este campo do nosso exemplo conter a quantidade mnima em estoque a ser
considerada para efetuar pedidos ao fornecedor.

Atributo
Nome

2007 GAS Tecnologia

informe ou selecione
Preo de custo

320

GAS 2007 - Manual do Usurio

Tipo

Numrico

Apelido

Preco_de_custo

Tamanho

12

Decimais

Mscara

999.999.999,99

Atributo

informe ou selecione

Nome

Preo indexado

Tipo

Numrico

Apelido

Preco_indexado

Tamanho

10

Decimais

Mscara

9.999.999,99

Atributo

informe ou selecione

Nome

Lucro bruto

Tipo

Numrico

Apelido

Lucro_bruto

Tamanho

2007 GAS Tecnologia

Captulo 10 - Um exemplo prtico

Decimais

Mscara

999,99

Atributo

321

informe ou selecione

Nome

Perecvel

Tipo

Lgico

Apelido

Perecivel

O campo acima tambm de um tipo especial. Ser apresentado em uma check box, na qual o
usurio marcar ou desmarcar a opo.

Atributo

Informe ou selecione

Nome

Localizao do produto

Tipo

Optativo

Lista

Loja|Depsito|Fornecedor

Apelido

Localizacao_do_produto

O campo acima tambm tem tipo especial, cujas informaes inseridas em Lista, separadas pelo
caractere "|", aparecero dentro de objetos tipo botes de rdio, circunscritas dentro de uma moldura
(frame) com o ttulo do campo.

Atributo

2007 GAS Tecnologia

Informe ou selecione

Nome

Foto do produto

Tipo

Multimdia

322

GAS 2007 - Manual do Usurio

Apelido

Foto_do_produto

Campos do tipo multimdia, como o definido acima, aparecem com dois objetos associados
quando inseridos na tela: um para apresentar a multimdia e outro (boto) para permitir a carga da
multimdia. Neste nosso exemplo, inserimos este tipo de campo para exibir a figura do produto em
estoque.

Atributo

Informe ou selecione

Nome

Data ltima atualizao

Tipo

Data

Apelido

Data_ultima_atualizacao

Mscara

99/99/9999

O campo acima receber um processamento com a ltima data em que foi atualizado (entradas e
sadas) e ser, por isso, definido como "No editvel", a exemplo do campo "Quantidade em
estoque" j definido nesta tabela. Lembre-se sempre que campos no editveis so definidos
normalmente, como qualquer outro tipo de campo, sendo que, quando o inserirmos na tela,
designaremos a propriedade Editvel para o valor No, como veremos mais adiante.
10.2.4.1.5 Contas a pagar

Selecione a tabela "Contas a pagar", clique na lista de campos e, depois, no boto de adicionar.
Informe os campos da tabela "Contas a pagar". Esta tabela receber lanamentos de contas a pagar,
que, neste exemplo, sero representadas pelos valores totais dos itens digitados da NF.

Atributo

informe ou selecione

Nome

Nmero do lanamento

Tipo

Numrico

Apelido

Numero_da_lancamento

Tamanho

2007 GAS Tecnologia

Captulo 10 - Um exemplo prtico

Mscara

999.999

Sequncia

323

O primeiro campo desta tabela tem duas particularidades que merecem meno:
a primeira delas que vamos definir este campo para ser incrementado automaticamente de 1
em 1. Por isso, definimos o valor 1 para Seqncia;
a segunda que este campo ser definido como "No editvel", conforme j vimos em dois
campos da tabela "Produtos em estoque", para que o usurio no tenha acesso.

Atributo

informe ou selecione

Nome

Nmero da NF

Tipo

Numrico

Apelido

Numero_da_nf

Tamanho

Mscara

999

Atributo

2007 GAS Tecnologia

Informe ou selecione

Nome

Data

Tipo

Data

Apelido

Data

Mscara

99/99/9999

324

GAS 2007 - Manual do Usurio

Atributo

Informe ou selecione

Nome

Valor

Tipo

Numrico

Apelido

Valor

Tamanho

12

Decimais

Mscara

999.999.999,99

10.2.4.1.6 Notas fiscais

Selecione a tabela "Notas Fiscais", clique na lista de campos e, depois, no boto de adicionar.
Informe os campos da tabela "Notas Fiscais". Esta tabela conter os dados gerais das NF de
fornecedores para a entrada de mercadorias em estoque. Neste sistema, estar fazendo um
relacionamento 1-N (pai-filho) com a tabela que iremos definir daqui a pouco: "Itens da NF". As
tabelas so definidas normalmente, como qualquer uma outra e o relacionamento designado em
uma etapa mais adiante.

Atributo

Informe ou selecione

Nome

Nmero da NF

Tipo

Numrico

Apelido

Numero_da_nf

Tamanho

Mscara

999

Atributo

Informe ou selecione

2007 GAS Tecnologia

Captulo 10 - Um exemplo prtico

Nome

Data

Tipo

Data

Apelido

Data

Mscara

99/99/9999

325

Vamos abrir um parnteses para efetuarmos alguns comentrios sobre este campo, o que se
aplica tambm a outros campos existentes nas diversas tabelas desta aplicao (Cdigo do
fornecedor, Nmero da NF, etc). Observe que este campo existe em cinco tabelas:
Indexadores
Contas a pagar
Notas Fiscais
Movimentao de produtos, a ser definida mais adiante
Sadas de mercadorias, tambm a ser definida
Na verdade eles tm correspondncias diretas, pois as datas que nelas existem, na digitao da
"Nota Fiscal" e das "Sadas de mercadorias", so verificadas na tabela de Indexadores e, no trmino
da digitao da NF, esta data ser inserida nas tabelas de "Contas a pagar" e "Movimentao de
produtos". Por esta razo, estes campos so tratados no dicionrio de dados do GAS como sendo o
mesmo campo, ou seja, se voc alterar qualquer um de seus atributos, como, por exemplo, o seu
nome, o GAS ir tambm alter-lo, automaticamente nas demais tabelas j definidas na aplicao,
tanto na estrutura da tabela quanto em validaes e rotinas escritas manualmente; enfim, em
qualquer ponto da definio onde aparea.

Atributo

2007 GAS Tecnologia

informe ou selecione

Nome

Cdigo do fornecedor

Tipo

Numrico

Apelido

Codigo_do_fornecedor

Tamanho

Mscara

9999

326

GAS 2007 - Manual do Usurio

O campo acima definido tambm tem uma particularidade interessante. Trata-se de um campo de
"caracterstica" Lista Externa, isto , no momento da digitao desta informao pelo usurio, uma
lista com os nomes dos fornecedores estar disponvel para seleo. Entretanto, apenas o "Cdigo
do fornecedor" ser gravado nesta tabela.
Voc deve ter notado que o campo de "caracterstica" Lista Externa, que mencionamos acima,
no aparece na lista de tipos de campos para ser selecionado, como aparece, por exemplo, a Lista
Interna. Acontece que um campo com esta caracterstica pode ser de qualquer tipo, como, por
exemplo, numrico, data, caractere, etc., razo pela qual no aparece naquela lista e deve ser
definido de maneira diferente, quando da formatao da tela para esta tabela, um pouco mais adiante
neste captulo.

Atributo

informe ou selecione

Nome

Valor

Tipo

Numrico

Apelido

Valor

Tamanho

12

Decimais

Mscara

999.999.999,99

Este campo ser destinado a sofrer um processamento a cada registro digitado na entrada de
produtos, com uma frmula que acumule o valor total da NF. Ser tambm definido como "No
editvel", quando o inserirmos na tela.
10.2.4.1.7 Itens da NF

Selecione a tabela "Itens da nf", clique na lista de campos e, depois, no boto de adicionar.
Informe os campos da tabela "Itens da NF". Esta tabela estar relacionada com a tabela "Notas
Fiscais", numa relao (filho-pai ou N-1), a ser estabelecida mais adiante.

Atributo

Informe ou selecione

Nome

Nmero da NF

Tipo

Numrico

2007 GAS Tecnologia

Captulo 10 - Um exemplo prtico

Apelido

Numero_da_nf

Tamanho

Mscara

999

327

Este campo est sendo definido nesta tabela porque pretendemos criar um relacionamento N-1
com a tabela de "Notas Fiscais" definida anteriormente. Por isso, este campo o mesmo que existe
naquela tabela e, no momento apropriado, utilizaremos este campo para unir essas duas tabelas.
O campo Cdigo, que iremos definir a seguir, o cdigo do produto, ou seja, o mesmo existente
na tabela "Produtos em estoque".

Atributo

Informe ou selecione

Nome

Cdigo

Tipo

Numrico

Apelido

Codigo

Tamanho

Mscara

999

Atributo

2007 GAS Tecnologia

Informe ou selecione

Nome

Quantidade entrada

Tipo

Numrico

Apelido

Quantidade_entrada

Tamanho

Mscara

9.999

328

GAS 2007 - Manual do Usurio

Atributo

Informe ou selecione

Nome

Valor

Tipo

Numrico

Apelido

Valor

Tamanho

12

Decimais

Mscara

999.999.999,99

Mais tarde, durante a definio dos processamentos, utilizaremos estes dois ltimos campos em
operaes para apurar o valor total da NF que atualizar as tabelas "Notas Fiscais" e "Contas a
pagar".
10.2.4.1.8 Movimentao de produtos

Selecione a tabela "Movimentao de produtos", clique na lista de campos e, depois, no boto de


adicionar. Informe os campos da tabela "Movimentao de produtos". No nosso exemplo, esta tabela
receber lanamentos de entradas e sadas de produtos, mantendo um histrico de entradas e
sadas no perodo por produto.

Atributo

Informe ou selecione

Nome

Cdigo

Tipo

Numrico

Apelido

Codigo

Tamanho

Mscara

999

2007 GAS Tecnologia

Captulo 10 - Um exemplo prtico

Atributo

Informe ou selecione

Nome

Data

Tipo

Data

Apelido

Data

Mscara

99/99/9999

Atributo
Nome

Entradas

Tipo

Numrico

Apelido

Entradas

Tamanho

Mscara

999.999

Atributo

2007 GAS Tecnologia

Informe ou selecione

Informe ou selecione

Nome

Sadas

Tipo

Numrico

329

330

GAS 2007 - Manual do Usurio

Apelido

Saidas

Tamanho

Mscara

999.999

10.2.4.1.9 Sadas de mercadorias

Finalmente, selecione a tabela "Sadas de mercadorias", clique na lista de campos e, depois, no


boto de adicionar. Informe os campos da tabela "Sadas de mercadorias". Esta tabela ser
utilizada para a digitao de requisies de mercadorias do estoque, efetuando o processamento das
baixas de estoque.

Atributo

Informe ou selecione

Nome

Cdigo

Tipo

Numrico

Apelido

Codigo

2007 GAS Tecnologia

Captulo 10 - Um exemplo prtico

Tamanho

Mscara

999

Atributo

Informe ou selecione

Nome

Data

Tipo

Data

Apelido

Data

Mscara

99/99/9999

Atributo

2007 GAS Tecnologia

Informe ou selecione

Nome

Quantidade de sada

Tipo

Numrico

Apelido

Quantidade_de_saida

Tamanho

Mscara

9.999

331

332

GAS 2007 - Manual do Usurio

Atributo

Informe ou selecione

Nome

Valor

Tipo

Numrico

Apelido

Valor

Tamanho

12

Decimais

Mscara

999.999.999,99

At este ponto, j efetuamos as definies das tabelas e seus campos. Vamos, agora, definir os
ndices e integridades entre as tabelas.

10.2.4.2 ndices das tabelas


Primeiramente vamos definir os ndices. As regras de criao de ndices so semelhantes s
utilizadas para os campos, ou seja:

selecione uma tabela na lista Tabelas;


clique na lista ndices;
clique no boto de adicionar;
digite as informaes;
clique sobre o boto de gravao.

No existe a obrigatoriedade da criao de ndices. Em alguns casos, eles so criados para


garantir a integridade e relacionamentoentre tabelas ou, ainda, para proporcionar uma ordem de

2007 GAS Tecnologia

Captulo 10 - Um exemplo prtico

333

navegao dentro da tabela correspondente, bem como pesquisas rpidas aos seus registros. No
entanto, o usurio da aplicao final gerada poder estabelecer seu prprio critrio de ordenao de
registros, independente dos ndices criados pelo projetista. Existe, ainda, o caso especial da tabela
do tipo parmetro, que no pode conter ndice definido, uma vez que tabelas desse tipo contm
somente um registro.
10.2.4.2.1 Contas a pagar

Para esta primeira tabela, definiremos dois ndices, cada um deles com um campo:

Ttulo

Tipo

Campos

Lanamento

Primrio nico

Nmero do lanamento

Tipo

nico

Nmero da NF

10.2.4.2.2 Fornecedores

Definiremos tambm dois ndices:

Ttulo
Cdigo
fornecedor

Tipo
do

Nome decrescente

Campos

Primrio nico

Cdigo do fornecedor

Decresc

Nome do fornecedor

A informao Decrescente deve ser marcada para cada campo selecionado para compor o ndice
e antes de selecion-lo. Esta marcao tem utilidade somente neste momento, no sendo atualizada
durante a visualizao deste ndice. Observe o sinal de menos (-) que inserido frente do nome do
campo que tenha a informao Decrescente na expresso do ndice.
10.2.4.2.3 Indexadores

Para indexadores, basta um ndice simples por meio do campo Data:

2007 GAS Tecnologia

334

GAS 2007 - Manual do Usurio

Ttulo
Data

Tipo
Primrio nico

Campos
Data

10.2.4.2.4 Itens da NF

Para esta tabela, definiremos um s ndice, sendo ele composto de dois campos:

Ttulo

Tipo

Campos
Nmero da nf

NF e produto

Primrio nico
Cdigo

10.2.4.2.5 Movimentao de produtos

Para esta tabela, definiremos um ndice composto pelos campos "Cdigo do Produto" e Data:

2007 GAS Tecnologia

Captulo 10 - Um exemplo prtico

Ttulo

Tipo

335

Campos
Cdigo

Cdigo e data

Primrio nico
Data

10.2.4.2.6 Notas fiscais

A tabela "Notas Fiscais" conter apenas um ndice simples pelo campo "Nmero da NF":

Ttulo
Nmero da NF

Tipo
Primrio nico

Campos
Nmero da nf

10.2.4.2.7 Parmetros do sistema

Para esta tabela no iremos - nem podemos - definir ndices. Para tabelas do tipo parmetro no
podem ser definidos ndices, pois tabelas desse tipo contm um s registro. Este registro criado
quando da criao do prprio banco de dados e, posteriormente, o usurio s ter permisso para
modificar este registro e nunca incluir nesta tabela.

10.2.4.2.8 Produtos em estoque

Aqui, definiremos dois ndices para permitir ao usurio navegar no cadastro de produtos em
funo da ordem do "Cdigo do produto" e da "Descrio do produto":

Ttulo
Cdigo
Descrio

2007 GAS Tecnologia

Tipo
Primrio nico

Campos
Cdigo
Descrio do produto

336

GAS 2007 - Manual do Usurio

10.2.4.2.9 Sadas de mercadorias

Nesta tabela, vamos observar algo diferente. Primeiramente, iremos definir para a mesma um
ndice composto de dois campos:

Ttulo

Tipo

Campos
Cdigo

Cdigo e data de
sada

Data

Como poderemos ter registros com um mesmo cdigo de produto em uma mesma data (sadas
das mercadorias), este ndice no pode ter atributos Primrio ou nico. Isto acarretar o seguinte
comportamento na aplicao final, com referncia a esta tabela: a operao de filtragem de registros
ficar desabilitada, no sendo possvel o usurio selecion-la. Isto acontece devido ao fato de que,
para a apresentao de um conjunto de registros referente a um critrio de filtragem, criado um
objeto (dynaset) que no trabalha diretamente com a tabela e, sim, com uma cpia de um
subconjunto de seus registros.

Sem um ndice primrio ou nico nesta tabela, no h meios de, num tempo aceitvel, vincular
um determinado registro do filtro com o registro daquela tabela.
Para solucionar este problema, vamos usar o seguinte artifcio:
criaremos um campo invisvel e seqencial nesta tabela;
criaremos um outro ndice para esta tabela, com atributo nico , em funo deste novo campo.
Sendo assim, clique sobre a lista de campos e adicione mais este:

Atributo

Informe ou selecione

Nome

Controle de filtro

Tipo

Numrico

2007 GAS Tecnologia

Captulo 10 - Um exemplo prtico

Apelido

Controle_de_filtro

Tamanho

Mscara

9999

Sequncia

Invisvel

(marcar opo de invisibilidade)

337

Pronto! Agora, podemos criar um ndice em funo deste campo. Clique sobre ndices e adicione:

Ttulo
Controle filtro

Tipo
nico

Campos
Controle filtro

No entanto, outro mtodo para filtrar informaes em consultas ou janelas de dados (visualizadas
na forma de grid) poder ser utilizado. Esse mtodo, denominado de filtragem dinmica, poder ser
acionado com o simples preenchimento do campo localizado sobre as colunas do grid.
Podemos, finalmente, criar as integridades de relacionamentos da aplicao.

10.2.4.3 Integridades
As integridades de relacionamentos podem ser criadas para assegurar o funcionamento correto
da aplicao. Esses relacionamentos podem ser 1-1 (referencial) e 1-N (pai e filho), conforme
veremos a seguir. As regras de criao das integridades so as seguintes:
selecione uma tabela na lista Tabelas;
clique na lista Integridades;

2007 GAS Tecnologia

338

GAS 2007 - Manual do Usurio

clique no boto de adicionar;


informe os dados necessrios;
clique sobre o boto de gravao.
10.2.4.3.1 Notas Fiscais

Selecione esta tabela e clique na lista Integridades. Vamos criar duas integridades referenciais,
respectivamente, com Indexadores e Fornecedores, de modo que um registro de qualquer uma
dessas tabelas no possa ser apagado se estiver sendo referenciado por uma NF.

Ttulo

Indexadores

Tipo

Tabela e campo
estrangeiro

Cp tab bsica

1-1

Indexadores/Data

Data

No se esquea de, neste ponto, clicar sobre o boto de concatenao para que o campo
selecionado seja assumido como campo de unio entre as tabelas.

boto de concatenao

Ttulo

Tipo

Tabela e campo
estrangeiro

Cp tab bsica

Fornecedores/
Fornecedore
s

1-1

Cdigo
fornecedor

Cdigo
fornecedor
do

do

Agora, vamos criar uma outra integridade 1-N (pai-filho) com "Itens da NF". Neste tipo de
relacionamento, quando uma NF excluda, todos os seus itens so excludos automaticamente.

2007 GAS Tecnologia

Captulo 10 - Um exemplo prtico

Ttulo

Tipo

Tabela e campo
estrangeiro

339

Cp tab bsica

Itens da nf/
Itens

1-N

Nmero da NF
Nmero da NF

10.2.4.3.2 Itens da nf

Selecione esta tabela, clique na lista Integridades e vamos adicionar uma integridade para impedir
o apagamento de registros dentro da tabela de "Produtos em Estoque" que estejam sendo
referenciados na tabela "Itens da nf".

Ttulo

Produtos

Tipo

1-1

Tabela e campo
estrangeiro
Produtos
estoque/ Cdigo

Cp tab bsica

em

Cdigo

10.2.4.3.3 Produtos em estoque

Selecione esta tabela, clique na lista Integridades e vamos adicionar uma integridade que forar
o apagamento automtico dos registros de "Movimentao de produtos" referentes a um produto que
tenha sido apagado do cadastro.

Ttulo

Movimenta
o

2007 GAS Tecnologia

Tipo

1-N

Tabela e campo
estrangeiro
Movimentao
produtos/ Cdigo

Cp tab bsica

de

Cdigo

340

GAS 2007 - Manual do Usurio

10.2.4.3.4 Sadas de mercadorias

Finalmente, selecione esta tabela, clique na lista Integridades e sobre o boto de adicionar para
criar mais uma integridade. Esta impedir que um registro da tabela "Produtos em estoque" seja
apagado se existir um registro de sada para o mesmo.

Ttulo

Produtos

Tipo

1-1

Tabela e campo
estrangeiro
Produtos
estoque/ Cdigo

em

Cp tab bsica

Cdigo

Aps a entrada das informaes da estrutura do banco de dados da nossa aplicao, podemos,
ainda, definir outros aspectos, dos quais, para este exemplo, vamos apenas criar a tela de
apresentao.
10.2.4.4 Tela inicial
Clique sobre a aba intitulada "Tela inicial" para criar uma tela de apresentao para esta nossa
aplicao exemplo, como mostra a tela da figura 10.5. Voc poder clicar sobre o boto de adicionar
imagem e selecionar um arquivo qualquer de extenso .BMP ou .ICO por meio de um dilogo padro
do Windows.

2007 GAS Tecnologia

Captulo 10 - Um exemplo prtico

341

Figura 10.5

Feche, agora, a janela de definio do projeto.

10.2.5 Inserindo as janelas de dados


Agora, cada uma das tabelas que foram definidas na estrutura do banco de dados precisam ser
inseridas na rvore do projeto para que sejam definidos mais alguns aspectos, como, por exemplo,
validao de campos, telas para entrada de dados, etc. Para facilitar estas explicaes, vamos
inser-las, uma a uma, nas posies corretas e, depois, selecionaremos cada uma delas para
entrarmos com as definies pertinentes. Vamos clicar, agora, sobre o pequeno quadrado com o
sinal de menos (-) esquerda dos nomes dos mdulos Arquivo, Editar e Exibir. Isto far com que
esses mdulos ocultem os seus subordinados, facilitando as explicaes seguintes.
Para inserir mdulos na rvore do projeto, devemos primeiro selecionar o mdulo de nvel maior,
sob o qual inseriremos o novo mdulo.
Primeiramente, vamos agrupar as tabelas de Fornecedores e Indexadores abaixo de um menu,
que intitularemos Tabelas. Proceda conforme se segue:
selecione o ttulo do projeto - primeiro mdulo da rvore;
clique no boto de insero de mdulos e selecione o tipo Menu;
a janela representada na figura 10.6 aparecer.

2007 GAS Tecnologia

342

GAS 2007 - Manual do Usurio

Figura 10.6

Esta janela tem por finalidade definir a posio de insero do novo mdulo. Ela exibe s os
mdulos que ficaro no mesmo nvel do mdulo inserido, permitindo a seleo do mdulo aps o
qual o novo mdulo ficar. Aplique um duplo-clique sobre Exibir. Observe que um mdulo do tipo
menu, intitulado Menu foi inserido logo abaixo da opo Exibir. Agora, selecione e clique sobre o
mesmo e altere o seu nome para &Tabelas. Observe que o caractere "&" utilizado para indicar que
a letra que o segue imediatamente ser utilizada como atalho (hot key) para a opo, aparecendo
sublinhada no menu da aplicao final, pois a estrutura que aparece na rvore do projeto espelha
exatamente a estrutura de menus da aplicao final. Posteriormente, voc poder reparar que existe
outra maneira de alterar os nomes das opes que aparecem na rvore. Agora, repita os passos a
seguir, por duas vezes, observando que, na primeira vez, o passo 3 no ser necessrio, bastando
apenas confirmar a incluso do novo mdulo:
selecione este novo mdulo Tabelas;
insira um mdulo do tipo "Janela de dados" da maneira descrita anteriormente;
aplique um duplo-clique em Tabelas. Com isto, inserimos duas janelas de dados sob o menu
Tabelas. O detalhe da figura 10.7 mostra como dever estar esta parte da rvore do nosso projeto
exemplo:

2007 GAS Tecnologia

Captulo 10 - Um exemplo prtico

343

Figura 10.7

At aqui, voc deve ter observado que os mdulos que acabamos de inserir aparecem em uma
cor diferente (normalmente a vermelha), dependendo do que estiver configurado no GAS, pois, para
facilitar a visualizao do andamento do trabalho no projeto, existe uma configurao de fontes de
letras para mdulos ainda no definidos e para mdulos j definidos. Vamos, agora, alterar os nomes
dessas janelas de dados. Selecione e clique sobre cada uma delas, alterando seus nomes para
&Fornecedores e &Indexadores, respectivamente. A seguir, vamos inserir outro mdulo do tipo menu
para agrupar algumas tabelas que chamaremos Movimentao. Procedendo da mesma forma
explicada acima, vamos proceder conforme se segue:
selecione o ttulo do projeto - o primeiro mdulo da rvore;
insira uma opo de menu logo aps o mdulo Exibir;
altere o seu nome para &Movimentao.
agora, sempre selecionando Movimentao antes de cada insero, insira trs janelas de dados
e altere seus nomes para &Entrada de produtos, &Sada de mercadorias, e &Movimentao de
produtos, respectivamente.
A figura 10.8 mostra como dever estar esta parte da rvore.

Figura 10.8

2007 GAS Tecnologia

344

GAS 2007 - Manual do Usurio

Vamos, agora, inserir um mdulo especial. J vimos que os dados de "Notas Fiscais" tm um
relacionamento 1-N com seus itens. Quando o nosso usurio acabar de digitar os dados genricos
de uma NF, gostaramos que passasse automaticamente a digitar os dados de seus "N" itens. Para
que isto acontea, temos de inserir na rvore do projeto, os itens da NF imediatamente abaixo da
janela de digitao dos dados da NF ("Entrada de produtos") de modo subordinado. Para isto, basta
efetuar o que segue: selecione o mdulo "Entrada de produtos" e clique sobre o boto de definies
para estabelecermos a tabela bsica desse mdulo; selecione a tabela "Notas fiscais" na lista
denominada "Tabela bsica";
clique no mdulo "Entrada de Produtos" para selecion-lo;
volte arvore do projeto e insira, abaixo do mdulo "Entrada de Produtos", um mdulo do tipo
"Tabela em grid"; altere o seu nome para "Itens da NF".

Nesta ltima insero, voc deve ter observado que, ao clicar sobre o boto de insero, s duas
opes de tipo de mdulo foram oferecidas. que, abaixo de uma janela de dados, somente uma
outra janela de dados ou uma tabela em grid pode ser inserida, efetuando um relacionamento 1-N.
Agora, esta parte da nossa rvore dever estar espelhando o que aparece na figura 10.9 a seguir:

Figura 10.9

Precisamos, ainda, inserir mais trs janelas de dados para que, depois, possamos defin-las uma
a uma:
selecione o ttulo do projeto e insira uma janela de dados logo aps o mdulo Movimentao,
alterando o seu nome para &Produtos;
novamente, selecione o ttulo do projeto e insira outra janela de dados logo aps Tabelas,
denominando-a &Financeiro; agora, selecione o menu Arquivo e insira outra janela de dados, logo
aps Arquivo, denominando-a &Parmetros. Pronto! Todas as tabelas que criamos na estrutura do
banco de dados j tm o seu lugar correspondente na rvore do projeto, inclusive com os nomes que
devero ser utilizados para o seu acionamento, durante a operao da aplicao final. Conforme j

2007 GAS Tecnologia

Captulo 10 - Um exemplo prtico

345

explicado, feche (encolha) novamente o tronco Arquivo na rvore do projeto. Mais tarde, voltaremos a
trabalhar com este mdulo.

Figura 10.10

A figura 10.10 exibe como esta parte da rvore do projeto dever estar aparecendo para voc.
Podemos, agora, entrar na parte de definio de cada uma das janelas de dados que inserimos na
rvore.

10.2.6 Definindo as janelas de dados


Comearemos definindo as duas janelas de dados que esto sob o menu Tabelas.

2007 GAS Tecnologia

346

GAS 2007 - Manual do Usurio

10.2.6.1 Fornecedores
Selecione Fornecedores na rvore do projeto e, em seguida, clique sobre o boto de definio,
situado na barra de ferramentas:

boto de definio de mdulo

Um clique com o boto direito do mouse sobre a opo Fornecedores e a seleo da opo
"Define o mdulo selecionado" produzir tambm o mesmo efeito, que a apresentao da interface
de definio de janelas de dados exibida na figura 10.11.

Figura 10.11

Na primeira aba desta interface, selecione na lista "Tabela Bsica", a tabela Fornecedores e
digite as informaes necessrias para que fique igual ao que representado pela figura 10.10.
Durante a entrada dessas informaes, observe que:
os dados da identificao do form no precisam ser informados, pois so inseridos

2007 GAS Tecnologia

Captulo 10 - Um exemplo prtico

347

automaticamente pelo GAS; o campo "Ttulo no menu" permite a alterao do nome da opo de
menu, que aparece na rvore do projeto. Antes, foram alteradas diretamente na rvore por intermdio
da seleo do mdulo e com um clique do mouse;
a informao Identificao ser utilizada para criar o arquivo .FRM que armazena a interface
para esta janela;
a informao que aparece em "Ttulo da janela" ser utilizada como ttulo do formulrio (form)
correspondente a esta janela;
clique sobre o boto de gravao para gravar estas informaes.
Acabamos de informar os dados genricos desta janela de dados. Agora, vamos definir a tela de
digitao e alterao dos registros da tabela Fornecedores, bem como os atributos dos campos que
sero digitados pelo usurio. A formatao de telas efetuada ativando-se o Editor de Recursos do
GAS. Selecione, na rvore do projeto, o mdulo Fornecedores e clique sobre o boto que aparece a
seguir, situado na barra de ferramentas do GAS:

boto para ativar o Editor de Recursos

Isto ativar o Editor de Recursos do GAS para a formatao da tela do mdulo de


Fornecedores. A janela de Ferramentas da tela, representada na figura 10.12, dever tambm
aparecer. Caso no esteja presente, pressione a tecla F4 que serve para exib-la ou ocult-la,
alternadamente.
A janela de Ferramentas da tela pode ser movida para outras posies da tela, bem como ser
redimensionada a gosto do projetista. Alm desta tela de ferramentas, uma outra janela vazia
tambm apresentada para que nela seja projetada a tela de digitao dos registros.

2007 GAS Tecnologia

348

GAS 2007 - Manual do Usurio

Figura 10.12

Vamos iniciar a insero dos campos na janela de digitao:


abra a lista Campos, situada na janela de ferramentas de tela, e clique sobre o primeiro campo: "
Cdigo do fornecedor";
observe que dois objetos foram inseridos na tela, no canto superior esquerdo, ambos
selecionados (selees mltiplas so efetuadas utilizando-se a tecla CTRL e um clique sobre o objeto
desejado). O objeto label contm o ttulo do campo e o objeto text box ser destinado entrada de
informaes para este campo. Estando selecionados, arraste-os (drag and drop) para uma posio
adequada, como, por exemplo, a que aparece na tela da figura 10.13.
depois, repita esses passos para todos os campos da tabela, selecionando cada um deles e
posicionando-os, de modo que, ao terminar o ltimo campo, voc obtenha uma tela semelhante
que aparece na figura 10.14.

2007 GAS Tecnologia

Captulo 10 - Um exemplo prtico

349

Figura 10.13

Figura 10.14

Agora, podemos definir alguns atributos para os campos inseridos na tela, como validaes,
pr-validaes, valores iniciais, etc.

Selecione o campo "Cdigo do Fornecedor", clicando sobre o campo destinado a receber essa
informao. Observe que a lista de propriedades da janela de ferramentas de tela se alterou,
espelhando as propriedades que podem ser designadas para este objeto. Vamos estabelecer uma
expresso de validao para este campo, de modo que o usurio no o possa deixar vazio. Procure
na janela de propriedades a categoria Atributos e clique sobre a propriedade Validao. Poderamos
digitar diretamente uma expresso para efetuar a validao do campo. No entanto, vamos utilizar a
interface do GAS para montar esta expresso. Por default, o GAS j inseriu uma expresso de
validao. Por isso, limpe a expresso desse campo e clique sobre o boto extensor (com

2007 GAS Tecnologia

350

GAS 2007 - Manual do Usurio

reticncias), direita do atributo Validao, e a tela da figura 10.15 ser apresentada.

Figura 10.15

Para montar a nossa expresso de validao, faa o seguinte:


selecione a a opo Vazio;
clique sobre a opo "Negar condio";
clique sobre o boto de concatenao:

boto de concatenao

Observe que a nossa expresso de validao j foi montada, aparecendo no espao presente na
base da tela. Agora, para aceitar, clique sobre o boto que aparece a seguir:

2007 GAS Tecnologia

Captulo 10 - Um exemplo prtico

351

boto para aceitar definies

A expresso de validao , automaticamente, transferida para a propriedade Validao. A seguir,


clique sobre a propriedade Mensagem Validao e digite a seguinte informao: CDIGO DO
FORNECEDOR no pode ser vazio. Esta mensagem ser apresentada ao usurio quando a
expresso de validao falhar. Limpe as validaes dos campos Ramal e FAX que o GAS inseriu
automaticamente. Isto permitir ao usurio deixar esses campos em branco.
Para informar ao GAS que j definimos Fornecedores, clique sobre o referido mdulo na rvore do
projeto. Isto fora a gravao da tela. Agora, aplique um clique com o boto direito do mouse no
mesmo mdulo e selecione a opo "Define o mdulo selecionado" para abrir o form de definio
do mdulo. Na aba Geral, marque a opo "Mdulo pronto" e acione o boto Grava.

10.2.6.2 Indexadores
Aplique um clique com o boto direito do mouse no item Indexadores, na rvore do projeto,
selecione a opo "Define o mdulo selecionado" e informe o que aparece na tela da Figura 10.16.

Figura 10.16

2007 GAS Tecnologia

352

GAS 2007 - Manual do Usurio

Vamos elaborar a tela de digitao para os indexadores. Desta vez, vamos deixar que o GAS a
crie para ns, automaticamente:
acione o Editor de Recursos do GAS, conforme explicado no item anterior;
clique com o boto direito do mouse sobre o boto de criao de tela padro para que seja
apresentada a tela da Figura 10.17.

boto para criar tela padro

Figura 10.17

a partir da tela da figura 10.17, onde esto as opes da tela padro, altere os parmetros
"Margem esq" e "Margem topo" para o valor 250, clicando sobre o boto Ok em seguida;
agora, clique normalmente sobre o boto de criao de tela padro exibido ainda h pouco.

2007 GAS Tecnologia

Captulo 10 - Um exemplo prtico

353

a tela da Figura 10.18 dever ter sido criada pelo GAS. Agora, se desejar, voc poder
aumentar o seu tamanho ou adapt-la.

Figura 10.18

Tendo terminado as definies deste mdulo, vamos acessar a aba Geral da definio da janela e
marcar a opo "Mdulo pronto", gravando as informaes.
10.2.6.3 Produtos
Vamos definir, agora, a janela de "Produtos em Estoque". As definies das janelas de dados
so semelhantes em muitos aspectos; porm, algumas necessitam maiores definies, razo pela
qual estamos comeando pelas mais simples e nos direcionando, em seguida, s que apresentam
um grau maior de dificuldade. Aplique um clique com o boto direito do mouse sobre o item Produtos
na rvore do projeto, selecione a opo "Define o mdulo selecionado" e informe os dados da aba
Geral, conforme aparece na Figura 10.19.

2007 GAS Tecnologia

354

GAS 2007 - Manual do Usurio

Figura 10.19

Clique na aba Processos para que a tela da Figura 10.20 seja apresentada:

Figura 10.20

2007 GAS Tecnologia

Captulo 10 - Um exemplo prtico

355

Agora, temos algo diferente. Como j vimos na definio da estrutura do banco de dados, h
nesta tabela bsica, alguns campos que iremos definir como no editveis. Esses campos no sero
digitados pelo usurio, sendo atualizados por meio de processamentos. Vamos definir, agora, um
desses processos. O campo "Data ltima atualizao" vai ser atualizado com a data do sistema
(hoje) sempre que acontecer uma modificao no cadastro do produto. Portanto, vamos definir este
processamento para que, quando o usurio cadastrar um produto pela primeira vez, este campo seja
atualizado automaticamente (processamento na prpria tabela).
Posteriormente, a partir de entradas e sadas de produtos que modificam esta tabela, definiremos
processos idnticos para alterar esta data.
Para criar este processamento, proceda conforme os passos abaixo:
clique sobre o boto Adiciona;
digite o ttulo do processo: "Atualiza data";
selecione a tabela alvo: "Produtos em estoque";
selecione o campo alvo: "Data ltima atualizao";
digite no campo frmula direta: Date;
clique sobre o boto Grava para salvar as informaes.

Podemos, agora, formatar a tela de digitao de dados para esta tabela, onde tambm veremos
algumas novidades. Clique no boto que j conhecemos para acionar o Editor de Recursos do
GAS.

Para formatar a tela da figura 10.21, utilize a experincia que adquiriu na formatao das telas
anteriores, alm das seguintes dicas:
Os objetos painel, frame e tab podem ser utilizados como recipientes para agrupar outros
controles. Por isso, so denominados containers. Observe, por exemplo, o frame Quantidade: para
criar este grupo, voc dever tomar os cuidados a seguir.
coloque o container na tela, neste caso, um frame, e selecione-o;
clique, na janela ferramentas de tela, sobre o campo ou objeto que deseja disponibilizar.

2007 GAS Tecnologia

356

GAS 2007 - Manual do Usurio

Neste caso, selecione o campo "Quantidade em estoque" na lista. Observe que o campo inserido
fica restrito ao seu container, dentro do qual pode ser alinhado e posicionado;
repita os passos acima para o campo "Quantidade mnima".
designe a propriedade Ttulo do container para Quantidade.
Esses campos, em relao tela, so movimentados sempre por meio de seu container, o qual
voc pode selecionar e arrastar para onde desejar.

Figura 10.21

Voc deve ter observado, ao formatar esta tela, que os objetos associados aos campos variam
segundo o seus tipos.
O campo Localizao, por exemplo, um campo do tipo optativo, no qual disponibilizado um
frame (container) e, dentro deste, os botes de radio correspondentes s opes. Para alterar a
posio deste campo, voc deve selecionar e arrastar somente o frame (o seu contedo ir junto).
Vamos, agora, conhecer como se evita com que o usurio acesse um campo para digitao.
Nesta tabela h dois campos para os quais desejamos determinar esta situao.
clique na caixa de texto destinada a receber a informao "Quantidade em estoque" para
selecion-la;
localize a categoria Comportamento na lista de propriedades da janela de ferramentas de tela e
selecione Editvel;

2007 GAS Tecnologia

Captulo 10 - Um exemplo prtico

357

clique no boto extensor (com reticncias), direita da propriedade, e selecione a opo No;
repita os passos acima para o campo "Data ltima atualizao".

A seguir, vamos definir diversos outros atributos de validao para os demais campos desta
janela. Selecionando cada um dos campos na tela, digite as informaes constantes nos quadros a
seguir. Para essas definies, voc poder utilizar a interface de montagem de expresses que j
exibimos anteriormente, bem como poder, sempre que desejar selecionar um nome de campo,
utilizar o banco de campos que aparece na figura 10.22.

Figura 10.22

Se o banco de campos no for exibido, automaticamente, quando necessrio, pressione a tecla


F5 que tem por finalidade exibir/ocultar esta janela, alternadamente.

Cdigo

2007 GAS Tecnologia

Validao

Not Vazio(Codigo)

Mensagem

Cdigo no pode ser vazio

358

GAS 2007 - Manual do Usurio

Descrio do produto
Validao

Not Vazio(Descricao_do_produto)

Mensagem

Descrio no pode ser vazio!

Quantidade Mnima
Validao

Not Vazio(Quantidade_minima)

Mensagem

Quantidade mnima ilegal!

Valor inicial

Preo de custo
Validao
Mensagem

Preco_de_custo > 0
Preo de custo deve ser maior que
zero

Preo indexado

2007 GAS Tecnologia

Captulo 10 - Um exemplo prtico

Validao

Not Vazio(Preco_indexado)

Mensagem

Preo indexado no pode ser vazio!

359

Lucro bruto

Validao

Lucro_bruto > 0 AND Lucro_bruto <=


100

Mensagem

Lucro bruto ilegal!

Valor inicial

30

Limpe as validaes dos campos a seguir, pois eles foram definidos como no editveis:

Quantidade em estoque;
Data ltima atualizao.

Finalmente, para terminar a definio da janela de dados "Produtos em estoque", acesse a aba
Geral da janela de definies e marque a opo "Mdulo Pronto".

10.2.6.4 Entradas de produtos


Definiremos, agora, a janela de "Entradas de produtos" que corresponde aos dados gerais das
Notas Fiscais de fornecedores. Aplique um clique com o boto direito do mouse sobre o item "
Entradas de produtos" na rvore do projeto, selecione a opo "Define o mdulo selecionado" e
informe os dados da aba Geral, conforme aparece na figura 10.23.

2007 GAS Tecnologia

360

GAS 2007 - Manual do Usurio

Figura 10.23

A seguir, vamos utilizar pela primeira vez a aba Tabelas Auxiliares desta janela. Clique sobre esta
aba para que a tela da figura 10.24 seja apresentada:

2007 GAS Tecnologia

Captulo 10 - Um exemplo prtico

361

Figura 10.24

Esta interface utilizada para forar a abertura de outras tabelas da aplicao, quando a tabela
bsica estiver sendo acessada.

Neste nosso exemplo, quando o usurio estiver digitando informaes na tabela bsica desta
janela que estamos definindo ("Notas Fiscais"), outras tabelas devero ser acessadas:
a de Indexadores, pois necessitamos exibir uma mensagem mais elucidativa quando o usurio
informar uma data na NF que no tenha um indexador correspondente. Lembre-se que, durante a
definio da estrutura do banco de dados, criamos uma integridade entre "Notas Fiscais" e
Indexadores, fato que, por si s, impede que uma NF com data inexistente em Indexadores seja
digitada;
a de "Contas a Pagar", pois naquela tabela ser criado um novo registro (lanamento) contendo
o valor total da NF digitada. Observe que, no caso desta tabela, quando digitarmos a NF, ainda no
temos o valor total da mesma, visto que este ser acumulado a partir dos valores digitados para os
itens da NF. Assim, ao digitar a NF, um registro de lanamento ser criado nesta tabela com o
campo Valor zerado e, durante a digitao de cada item da NF, um processamento que iremos
definir em "Itens da NF" ir alterar este campo. Poderamos, tambm, efetuar tal procedimento de

2007 GAS Tecnologia

362

GAS 2007 - Manual do Usurio

uma maneira diferente: no criaramos este lanamento a partir da digitao em "Notas Fiscais" e,
sim, a partir da digitao dos itens (arquivo filho). Neste caso, porm, teramos que definir uma
condio, determinando que o lanamento fosse criado somente se no existisse (para evitar que
cada item criasse um novo lanamento).
Para adicionar essas duas tabelas auxiliares, basta executar as seguintes regras:
clique no boto Adiciona;
selecione a tabela auxiliar a partir da lista "Tabela Auxiliar";
deixe marcada a opo "Forar relacionamento", caso deseje que a aplicao tente se posicionar
no registro da tabela auxiliar. No caso de Indexadores, esta opo deve ficar marcada. J no de
"Contas a Pagar", esta opo dever ficar desmarcada, pois esta tabela ser aberta apenas para a
criao de um novo registro, no havendo a necessidade de relacionamento;
selecione o ndice a ser utilizado, a partir da lista ndice. No caso da tabela auxiliar "Contas a
Pagar", esta escolha e as trs seguintes devero estar desabilitadas, pois, como no foraremos o
relacionamento, elas no se aplicaro;
selecione o campo para unir a tabela bsica e a tabela auxiliar;
deixe marcada a opo Criticar para que uma mensagem seja exibida ao usurio, caso o
relacionamento no tenha sido efetuado com sucesso;
digite no campo "Mensagem de crtica" a mensagem que deseja mostrar ao usurio, caso o
relacionamento no tenha sido efetuado com sucesso;
clique sobre o boto Grava para salvar as informaes. Inseridas essas duas tabelas auxiliares e
com a tabela Indexadores selecionada, a tela da figura 10.25 dever estar sendo exibida para voc:

2007 GAS Tecnologia

Captulo 10 - Um exemplo prtico

363

Figura 10.25

Agora, vamos definir o primeiro lanamento nesta aplicao, que a criao de um registro na
tabela auxiliar "Contas a Pagar". Clique sobre a aba Lanamentos para que a tela da figura 10.26
seja apresentada:

2007 GAS Tecnologia

364

GAS 2007 - Manual do Usurio

Figura 10.26

Os lanamentos so inseridos de maneira muito semelhante s demais informaes inseridas at


agora. Para criar o lanamento necessrio em "Contas a Pagar", proceda conforme se segue:
clique no boto Adiciona;
no campo Ttulo, informe "Contas a Pagar";
na lista "Tabela alvo" esto as tabelas auxiliares que j determinamos. Selecione a tabela
"Contas a Pagar";
em Quantidade, informe o nmero 1 para criarmos apenas um registro.
Efetuamos a primeira parte da definio do lanamento. Com isto, um registro em branco ser
criado na tabela "Contas a Pagar". Agora, necessitamos determinar os valores que iremos inserir em
cada um dos campos deste novo registro.
Na parte inferior da tela de definio de lanamentos, representada na figura X.25, apresentada
uma grade com os campos da tabela alvo do lanamento e uma rea intitulada "Expresso a ser
colocada no campo alvo", a qual utilizaremos agora.
at as verses anteriores ao GAS, necessitaramos clicar na rea correspondente ao campo
"Nmero de lanamento" e digitar a seguinte instruo:

2007 GAS Tecnologia

Captulo 10 - Um exemplo prtico

365

PegaSequencia("Contas a pagar", "Nmero de Lanamento", 1, 1)

No entanto, agora tal instruo no mais ser necessria na execuo de nosso lanamento, visto
que o GAS j efetuar, automaticamente, todo controle necessrio para que o autoincremento desse
tipo de campo seja efetuado. Voc deve se lembrar que definimos este campo, na estrutura do banco
de dados, como um campo seqencial (de incremento automtico) e tambm que iramos defin-lo
como no editvel.
Exclusivamente para atender a casos de campos seqenciais, o GAS criar na aplicao,
automaticamente, a funo PegaSequencia, que cuida deste detalhe para ns. Os parmetros que
sero utilizados pelo GAS nesta funo sero, pela ordem: nome da tabela que contm o campo
seqencial;
nome do campo seqencial;
valor default para iniciar a seqncia;
incremento a ser utilizado.

Assim sendo, basta que deixemos em branco o campo "Nmero de lanamento". clique, agora,
na rea correspondente ao campo "Nmero da nf" e, a partir do banco de campos representado na
figura 10.27, aplique um duploclique sobre o campo "Nmero da nf" (Numero_da_nf). Observe que o
campo foi capturado do banco de campos;

Figura 10.27

2007 GAS Tecnologia

366

GAS 2007 - Manual do Usurio

clique na rea correspondente ao campo Data e capture o campo Data (Data) do banco de
campos;
clique sobre o boto Grava para salvar as informaes deste lanamento. J explicamos que o
campo Valor ser processado por meio da digitao na tabela "Itens da NF", razo pela qual no nos
preocupamos, agora, com o seu valor.
Agora, para esta janela de dados, falta apenas criar a sua janela de digitao, conforme j
efetuamos para aquelas que definimos anteriormente. Porm, neste caso, no vamos faz-la agora!
A razo que esta tabela tem uma outra subordinada, que so os "Itens da nf" (observe na rvore
do projeto). Quando o inserimos na rvore do projeto, decidimos que o mdulo filho seria do tipo
Tabela em grid, ou seja, decidimos oferecer ao usurio da nossa aplicao um grid para digitao
dos itens da Nota Fiscal. Necessitamos, primeiramente, definir o mdulo inferior ("Itens da nf") para
depois voltarmos a este ponto do mdulo pai ("Entradas de produtos") e formatarmos a sua tela,
inserindo o grid dos itens na mesma tela. O tpico "Colocando o grid na tela", um pouco mais
adiante, descrever a continuao desta definio.
10.2.6.5 Itens da NF
A janela dos itens da NF corresponde aos dados de cada um dos itens de produto recebidos em
uma Nota Fiscal de fornecedor. Aplique um clique com o boto direito do mouse sobre o item "Itens
da NF" na rvore do projeto, selecione a opo "Define o mdulo selecionado" e informe os dados
que aparecem na tela da figura 10.28.

Figura 10.28

2007 GAS Tecnologia

Captulo 10 - Um exemplo prtico

367

Clique na aba "Tabelas auxiliares" para definirmos as tabelas que necessitamos abrir quando os
itens da NF estiverem sendo digitados, procedendo de maneira semelhante ao que efetuamos para a
janela de dados anterior. Note que, vrias tabelas j so inseridas automaticamente na lista de
tabelas auxiliares. Essas tabelas foram definidas anteriormente no mdulo-pai, sendo aqui
disponibilizadas. Necessitamos abrir a tabela "Produtos em estoque" (cadastro de produtos) com
relacionamento, pois logo definiremos processamentos para creditar a quantidade que est sendo
recebida por meio da NF na quantidade do produto em estoque, alm de outros processamentos.

Informao

Tabela auxiliar

Produtos em estoque

Forar relacionamento

ndice

Cdigo

Campo
tabelas

Criticar

2007 GAS Tecnologia

Contedo

par

unir

as

Cdigo(Codigo)

368

GAS 2007 - Manual do Usurio

Mensagem

Produto no cadastrado!

Necessitamos abrir a tabela de "Movimentao de Produtos", pois criaremos um lanamento


(quando no existir o produto na data de entrada da NF) e, em seguida, processaremos o campo
Entradas com a quantidade recebida do item. Observe que, neste caso, necessitamos forar o
relacionamento sem controlar se foi ou no efetivado. Por isso, deixaremos desmarcada a opo
Criticar.

Informao

Contedo

Tabela auxiliar

Movimentao de produtos

Forar relacionamento

ndice

Cdigo e Data

Campo
tabelas

par

unir

as

Cdigo(Codigo)
Notas_fiscais!Data

2007 GAS Tecnologia

Captulo 10 - Um exemplo prtico

369

Observe que, diferentemente de outros mdulos, neste existe uma outra aba denominada
Opes na interface de definio do mdulo. Clique sobre esta aba e a tela da Figura 10.29 ser
apresentada.

Figura 10.29

Nesta tela, vamos estabelecer quais so os campos de ligao com o mdulo pai. Neste caso, o "
Nmero da nf" ser utilizado. Na lista da esquerda (campos do filho), clique sobre o campo "
Nmero da nf".
Observe que o GAS marca automaticamente o campo de mesmo nome na lista da direita, que
contm os campos do mdulo pai. O GAS sempre efetua esta seleo automtica quando encontra
na lista da direita um campo com nome e atributos idnticos ao que foi selecionado na lista da
esquerda. O projetista poder aceitar ou no esta seleo. No caso do nosso exemplo, exatamente
isto que necessitamos. Clique no boto de concatenao que j conhecemos e a expresso de
ligao montada automaticamente. Em seguida, clique no boto Grava para salvar essas
informaes. Clique na aba Lanamentos para que possamos definir um lanamento na tabela de "
Movimentao de produtos".

2007 GAS Tecnologia

370

GAS 2007 - Manual do Usurio

Este lanamento dever ser condicional, ou seja, dever obedecer uma determinada condio
para ser efetuado. A tabela "Movimentao de produtos" mantm o controle das quantidades de
entrada e sada de cada um dos itens de produtos, diariamente. Sendo assim, quando estivermos
digitando um item de produto, vamos verificar se este item ainda no existe nesta tabela neste dia e,
se isto for verdade, criaremos um novo registro por meio deste lanamento.
A tela da figura 10.30 apresentada para a definio do lanamento.

Figura 10.30

A partir desta tela, vamos criar um lanamento procedendo da seguinte maneira:


clique em Adiciona para criar um novo lanamento;
para Ttulo, informe Movimentao;
na lista "Tabela alvo", selecione "Movimentacao_de_produtos";
digite 1 no campo Quantidade;

clique no boto extensor (com reticncias), no lado direito do campo "Condio incluso
lanamento";

2007 GAS Tecnologia

Captulo 10 - Um exemplo prtico

371

a tela de montagem de expresses, j conhecida, ser apresentada; porm, desta vez,


utilizaremos a sua segunda aba, pois montaremos uma expresso que testar a existncia de
registro dentro de uma das tabelas auxiliares que definimos anteriormente. Portanto, clique sobre a
aba intitulada "Em Tabela" para que a tela da figura 10.31 seja apresentada:

Figura 10.31

selecione a tabela "Movimentacao_de_produtos", a partir desta tela. Observe que a lista de


campos disponveis foi preenchida com campos que podem ser utilizados na expresso que
criaremos;
em "Campos disponveis", clique sobre o campo Cdigo (Codigo) da tabela bsica. Voc deve
tambm ter observado que, ao lado do nome dos campos, o tipo dos mesmos vm expressamente
designados;
marque o campo "Notas_fiscais!Data";
marque tambm a opo "Negar condio";
clique sobre o boto de concatenar, que j conhecemos;
clique tambm sobre o boto de confirmao, para aceitar as informaes.
Com isto, acabamos de montar a condio para que o lanamento seja efetuado. Agora, vamos
estabelecer tambm uma outra condio para que este lanamento seja retirado da tabela.

2007 GAS Tecnologia

372

GAS 2007 - Manual do Usurio

marque a opo "Excluir lanamento";


clique sobre o campo "Condio excluso lanamento";
capture, com um duplo-clique, o campo "Movimentacao_de_produtos!Entradas" a partir do
banco de campos;
aps transferir este campo, complete para que fique conforme aparece no texto abaixo:

Movimentacao_de_produtos!Entradas = 0 AND

agora,
posicione
o
cursor
logo
aps
a
palavra
AND
"Movimentacao_de_produtos!Sadas", da mesma forma aplicada anteriormente;

capture

finalmente, complete a informao da condio de excluso, digitando um igual seguido de um


zero, conforme aparece a seguir:

... Movimentacao_de_produtos!Sadas = 0

Com isto, fica estabelecido que este lanamento somente ser retirado quando os campos
Entradas e Sadas da tabela auxiliar apelidada de "Movimentacao_de_produtos" estiverem zerados.
Para terminar a definio deste lanamento, s nos resta designar os valores que sero inseridos nos
campos do novo registro por ele criado.
na rea "Expresso a ser colocada no campo alvo", clique na rea correspondente ao campo
Cdigo;
a partir do banco de campos, capture o campo Cdigo (Codigo) da tabela bsica;
clique na rea correspondente ao campo Data e capture o campo "Notas_fiscais!Data", a partir
do banco de campos.
Clique sobre o boto Grava, pois acabamos de definir o lanamento. Observe que este
lanamento atualiza somente os dois primeiros
campos do registro criado (Cdigo e Data), ficando os outros dois campos para serem
modificados por meio de processamentos que definiremos a seguir. Clique sobre a aba Processos e
a tela da figura 10.32 ser apresentada:

2007 GAS Tecnologia

Captulo 10 - Um exemplo prtico

373

Figura 10.32

J utilizamos esta janela anteriormente, definindo um processamento para o campo "Data ltima
atualizao" na janela de dados de "Produtos em estoque". Procedendo da mesma forma, vamos
criar 6 processamentos para serem executados quando os itens da NF (tabela bsica desta janela)
estiverem sendo digitados na aplicao final. Para criar esses processamentos, lembre-se de que
voc poder utilizar o banco de campos para capturar informaes e que cada processamento
iniciado clicando-se sobre o boto Adiciona e terminado clicando-se sobre o boto Grava.

Informao

Contedo a informar/selecionar

Ttulo

Atualiza estoque

Tabela alvo

Produtos_em_estoque

Campo alvo

Quantidade_em_estoque

Frmula direta

2007 GAS Tecnologia

Produtos_em_estoque![Quantidade
Quantidade_entrada

em

estoque]

374

GAS 2007 - Manual do Usurio

Frmula inversa

Produtos_em_estoque![Quantidade
Quantidade_entrada

Informao

estoque]

Contedo a informar/selecionar

Ttulo

ltima atualizao

Tabela alvo

Produtos_em_estoque

Campo alvo

Data ltima atualizao

Frmula direta

Date

Informao

Contedo a informar/selecionar

Ttulo

Preo de custo

Tabela alvo

Produtos_em_estoque

Campo alvo

Preo de custo

Frmula direta

Valor

Informao

em

Contedo a informar/selecionar

2007 GAS Tecnologia

Captulo 10 - Um exemplo prtico

Ttulo

Movimenta entrada

Tabela alvo

Movimentacao_de_produtos

Campo alvo

Entradas

Frmula direta

Movimentacao_de_produtos!Entradas + Quantidade_entrada

Frmula inversa

Movimentacao_de_produtos!Entradas - Quantidade_entrada

Informao

Contedo a informar/selecionar

Ttulo

Atualiza contas a pagar

Tabela alvo

Contas_a_pagar

Campo alvo

Valor

Frmula direta

Contas_a_pagar!Valor + (Quantidade_entrada * Valor)

Frmula inversa

Contas_a_pagar!Valor - (Quantidade_entrada * Valor)

Informao

Contedo a informar/selecionar

Ttulo

Valor da NF

Tabela alvo

Notas_fiscais

Campo alvo

Valor

2007 GAS Tecnologia

375

376

GAS 2007 - Manual do Usurio

Frmula direta

Notas_fiscais!Valor + (Quantidade_entrada * Valor)

Frmula inversa

Notas_fiscais!Valor - (Quantidade_entrada * Valor)

Terminados os processamentos, aproveite para clicar sobre a primeira aba Geral e marcar a
opo "Mdulo pronto", clicando no boto Grava posteriormente.

10.2.6.6 Colocando o grid na tela


Agora que j efetuamos as definies do mdulo "Itens da nf", necessitamos oferecer uma
maneira do usurio inserir os dados. Como definimos que este mdulo seria do tipo Tabela em grid,
teremos que inserir um objeto gDbGrid na tela do mdulopai. Portanto, selecione na rvore do
projeto o mdulo "Entrada de produtos" e preparemos a tela de digitao dos dois mdulos ao
mesmo tempo. Primeiramente, vamos criar a tela do mdulo pai que so os dados de notas fiscais.
Clique sobre o boto de formatao da tela, j conhecido, na barra de ferramentas do GAS e formate
uma tela semelhante que aparece na figura 10.33. Lembre-se de que voc pode utilizar o boto de
tela padro (wizard) para cri-la, como j vimos anteriormente.

Figura 10.33

O campo "Cdigo do fornecedor" ser definido como lista externa, ou seja, apresentar uma lista
da tabela de fornecedores que o usurio poder selecionar. Para informar isto ao GAS, temos que
ajustar algumas propriedades, utilizando a janela de ferramentas de tela. Pressione F4 se ela no
estiver presente na tela e proceda conforme se segue:
selecione na tela o campo "Cdigo do fornecedor";

2007 GAS Tecnologia

Captulo 10 - Um exemplo prtico

377

na lista de propriedades, localize a categoria Dados, clique sobre a propriedade "BD estrangeiro"
e, utilizando o boto extensor (com reticncias), selecione ESTOQUE;
na mesma categoria, clique sobre "Tabela estrangeira" e selecione a tabela Fornecedores;
clique, agora, em "Campo a mostrar" e selecione "Nome do fornecedor". Repita esse mesmo
procedimento para a propriedade "Campo a ordenar";
finalmente, clique em "Campo a capturar" e selecione o campo "Cdigo do fornecedor".
O campo Valor, por definio nossa, ser um campo no editvel; porm, necessitamos informar,
neste momento, isto ao GAS. Selecione na tela este campo e altere a sua propriedade Editvel para
o valor No.
Vamos, agora, definir atributos de validao para a janela de notas fiscais, como j efetuamos
anteriormente. Observe que o GAS oferece, automaticamente, valores default para a maioria dessas
informaes.

Nmero da NF
Mensagem

No pode ser vazio!

Data

2007 GAS Tecnologia

Validao

Not VAzio(Data)

Mensagem

Data ilegal!

Valor inicial

Date

378

GAS 2007 - Manual do Usurio

Cdigo do fornecedor
Validao

Not Vazio(Codigo do fornecedor)

Mensagem

Cdigo no pode ser vazio!

Valor
Validao

(retirar as informaes sugeridas)

Mensagem

(retirar as informaes sugeridas)

Conforme j foi citado, o campo Valor ser atualizado por intermdio de processamentos a partir
dos itens digitados para a NF. Por esta razo, voc deve retirar as informaes que foram sugeridas
automaticamente. Agora estamos prontos para inserir o grid para a digitao dos itens da nota fiscal.
Aumente o tamanho da tela que acabamos de criar, abrindo espao para o posicionamento do grid.
Selecione o painel da tela e clique sobre o boto a seguir na janela de ferramentas de tela.

boto para inserir grid na tela

Um objeto gDbGrid ser exibido no topo da tela. Arraste-o e redimensione-o, criando uma tela
semelhante que aparece na figura 10.34.

2007 GAS Tecnologia

Captulo 10 - Um exemplo prtico

379

Figura 10.34

Clique sobre o gDbGrid para selecion-lo.Vamos ajustar algumas propriedades, a partir da lista
de propriedades da janela de ferramentas de tela. Primeiramente, na categoria Dados, clique sobre a
propriedade Tabela e selecione "Itens_da_nf". Observe que o GAS preenche, automaticamente, o
gDbGrid com os campos dos itens da nota fiscal, exceto o campo de ligao com o mdulo-pai
("Nmero da nf"). Agora, vamos inserir uma coluna para conter uma frmula para apurar o valor total
do item digitado, que o produto da quantidade entrada pelo valor do item. Para inserir a nova
coluna, proceda conforme se segue:
selecione a coluna Valor;
clique sobre o boto de inserir coluna aps, na janela de ferramentas de tela;

boto para inserir coluna aps a selecionada

inserida a coluna, selecione-a e designe a propriedade "Ttulo da coluna" (categoria Ttulo) para
"Valor total";
designe tambm a propriedade Ttulo, nesta mesma categoria, para "Produtos da Nota Fiscal".
Esta propriedade aplicada no ttulo do gDbGrid;

2007 GAS Tecnologia

380

GAS 2007 - Manual do Usurio

na categoria Miscelnea, clique sobre a propriedade Frmula e, por intermdio do boto


extensor (com reticncias), insira a seguinte frmula: "Quantidade_entrada * Valor";
na categoria Atributos, designe a propriedade Mscara para 999.999.999,99.
Finalmente, redimensione os ttulos do gDbGrid para que fique semelhante tela da Figura
10.35.

Figura 10.35

Ns podemos tambm definir o campo Cdigo no grid como uma lista externa, como efetuamos
para o "Cdigo do fornecedor":
na lista de propriedades, localize a categoria Dados, clique sobre a propriedade "BD
estrangeiro" e, utilizando o boto extensor (com reticncias), selecione ESTOQUE;
na mesma categoria, clique sobre "Tabela estrangeira" e selecione a tabela "Produtos em
estoque";
clique, agora, em "Campo a mostrar" e selecione "Descrio do produto". Repita esse
mesmo procedimento para a propriedade "Campo a ordenar";
finalmente, clique em "Campo a capturar" e selecione o campo "Cdigo".

2007 GAS Tecnologia

Captulo 10 - Um exemplo prtico

381

Note que para listas extenas em grids, a combo box no exibida em tempo de projeto. Para
terminar esta definio, necessitamos somente marcar a opo "Mdulo pronto", na aba Geral de
definies para informar ao GAS que este mdulo est pronto e gravar.

10.2.6.7 Financeiro
Vamos definir esta janela de dados elegendo como tabela bsica a tabela de "Contas a Pagar",
que ser alimentada por meio dos lanamentos e processamentos j estabelecidos nas janelas de
dados definidas anteriormente. Aplique um clique com o boto direito do mouse no item Financeiro,
na rvore do projeto, selecione a opo "Define o mdulo selecionado" e informe os dados que
aparecem na tela da figura 10.36.

Figura 10.36

Esta janela de dados ser definida muito facilmente, pois, em virtude de ser alimentada por meio
de digitao em outras tabelas (lanamentos e processamentos), o que necessitamos, na verdade,
formatar a sua tela conforme aparece na Figura 10.37, a seguir, utilizando o recurso de tela padro
do GAS:

2007 GAS Tecnologia

382

GAS 2007 - Manual do Usurio

Figura 10.37

Da mesma forma como fora efetuado com as janelas de dados anteriores, marque a opo "
Mdulo pronto" e salve as informaes, clicando no boto Grava.

10.2.6.8 Sada de mercadorias


Agora, necessitamos definir o mdulo responsvel pela movimentao de sada de produtos em
estoque. Aplique um clique com o boto direito do mouse no item "Sada de mercadorias", na
rvore do projeto, selecione a opo "Define o mdulo selecionado" e informe os dados que
aparecem na figura 10.38:

Figura 10.38

2007 GAS Tecnologia

Captulo 10 - Um exemplo prtico

383

Para definir os lanamentos e processamentos necessrios a partir desta tabela, necessitamos


forar a abertura de duas tabelas auxiliares. Portanto, clique na aba "Tabelas auxiliares" e adicione as
informaes que se seguem. Necessitamos abrir a tabela de "Produtos em estoque" com
relacionamento, pois logo definiremos processamentos para debitar a quantidade que est saindo da
quantidade do produto em estoque. Tambm definiremos um outro processo nesta tabela para
modificar o campo "Data ltima atualizao" da mesma forma que efetuamos quando definimos a
entrada de produtos.

Informo

Contedo a informar / selecionar

Tabela auxiliar

Produtos em estoque

Forar relacionamento

ndice

Cdigo

Campo p/ unir tabelas

Cdigo(Codigo)

Criticar

Mensagem

Produto no cadastrado!

Necessitamos, ainda, abrir a tabela de "Movimentao de produtos", pois definiremos um


processamento no campo Sadas com a quantidade que est saindo do produto. Observe que,
neste caso, necessitamos forar o relacionamento sem controlar se foi ou no conseguido. Por isso,
deixaremos desmarcada a opo Criticar.

Informo

Contedo a informar / selecionar

Tabela auxiliar

Movimentao de produtos

Forar relacionamento

2007 GAS Tecnologia

384

GAS 2007 - Manual do Usurio

ndice

Cdigo e Data
Cdigo(Codigo)

Campo p/ unir tabelas


Data

Clique na aba Lanamentos e proceda conforme se segue:

clique em Adiciona para criar um novo lanamento;


para Ttulo, informe Movimentao;

na lista de nome "Tabela alvo", selecione o campo "Movimentacao_de_produtos";


em Quantidade, informe o nmero 1 para criarmos apenas um registro;
acione a tela da figura 10.39, clicando no boto extensor (com reticncias) do campo "Condio
incluso lanamento" e, em seguida, na aba "Em Tabelas".

2007 GAS Tecnologia

Captulo 10 - Um exemplo prtico

385

Figura 10.39

selecione a tabela "Movimentacao_de_produtos", a partir desta tela;


em "Campos disponveis", clique sobre o campo Cdigo da tabela bsica;
clique no campo Data;
marque a opo "Negar condio";
clique sobre o boto de concatenar que j conhecemos;
clique sobre o boto de confirmao para aceitar as informaes.

Com isto, acabamos de montar a condio para que o lanamento seja efetuado, ou seja, quando
um registro de produto no for encontrado na tabela alvo em uma data especfica. Agora, vamos
estabelecer a condio para que este lanamento seja retirado da tabela.
clique sobre a opo "Excluir lanamento" e sobre o campo "Condio excluso lanamento";
selecione "Movimentacao_de_produtos!Entradas" a partir do banco de campos;
transfira este campo, aplicando um duplo clique sobre tal campo;
aps transferir este campo, complete a condio para que fique conforme aparece no texto

2007 GAS Tecnologia

386

GAS 2007 - Manual do Usurio

abaixo:

Movimentacao_de_produtos!Entradas = 0 AND

agora,
coloque
o
cursor
logo
aps
a
palavra
AND
"Movimentacao_de_produtos!Sadas" da mesma forma efetuada anteriormente;

capture

finalmente, complete a informao da condio de excluso, digitando um igual seguido de um


zero, conforme aparece a seguir:

... Movimentacao_de_produtos!Sadas = 0

Com isto, fica estabelecido que este lanamento somente ser retirado quando os campos
Entradas e Sadas da tabela auxiliar "Movimentacao_de_produtos" estiverem zerados. Para terminar
a definio deste lanamento, s nos resta designar os valores que sero inseridos nos campos do
novo registro por ele criado.
na rea "Expresso a ser colocada no campo alvo", clique na rea correspondente ao campo
Cdigo;
a partir do banco de campos, capture o campo Cdigo;
clique na rea correspondente ao campo Data e capture o campo Data, a partir do banco de
campos.
Clique sobre o boto Grava e assim, acabamos de definir o lanamento. Observe que este
lanamento atualiza somente os dois primeiros campos do registro criado (Cdigo e Data), ficando os
outros dois campos para serem modificados por meio de processamentos que definiremos a seguir.
Utilizando a aba Processos, informe:

Informao

Contedo a informar / selecionar

2007 GAS Tecnologia

Captulo 10 - Um exemplo prtico

Ttulo

Atualiza estoque

Tabela alvo

Produtos_em_estoque

Campo alvo

Quantidade em estoque

Frmula direta

Frmula inversa

Produtos_em_estoque![Quantidade
estoque] - Quantidade_de_saida

em

Produtos_em_estoque![Quantidade
estoque] + Quantidade_de_saida

em

Informao

Contedo a informar / selecionar

Ttulo

ltima atualizao

Tabela alvo

Produtos_em_estoque

Campo alvo

Data ltima atualizao

Frmula direta

Date

Informao

Contedo a informar / selecionar

Ttulo

Movimenta sada

Tabela alvo

Movimentacao_de_produtos

Campo alvo

Sadas

2007 GAS Tecnologia

387

388

GAS 2007 - Manual do Usurio

Frmula direta

Frmula inversa

Movimentacao_de_produtos!Sadas
Quantidade_de_saida

Movimentacao_de_produtos!Sadas
Quantidade_de_saida

Finalizando, vamos criar a tela para executar as sadas de estoque. Voc j sabe como pedir ao
GAS para criar, automaticamente, uma tela. Utilizando este recurso, faa uma tela semelhante que
aparece na figura 10.40. Nesta tela, vamos inserir uma frmula para exibir a descrio do produto
cujo cdigo ser digitado pelo usurio.

Figura 10.40

Para criar esta frmula, insira um objeto label sobre a tela na posio que aparece na figura
10.41.

Figura 10.41

2007 GAS Tecnologia

Captulo 10 - Um exemplo prtico

389

Com este controle selecionado, localize a categoria Miscelnea na lista de propriedades e clique
sobre a propriedade Frmula. Em seguida, a partir do banco de campos, selecione o campo
"Produtos_em_estoque![Descrio do produto]" e transfira-o para a propriedade, conforme j
efetuamos anteriormente. Aproveite para alterar tambm a propriedade Ttulo, na categoria Ttulo,
para "Descrio do produto".

Continuando, vamos estabelecer alguns atributos para os campos inseridos nesta tela. Conforme
j efetuamos anteriormente, clique sobre cada um dos campos inseridos na tela para selecion-los e
informe os dados seguintes, lembrando-se de que a utilizao do banco de campos recurso valioso
para executar esta tarefa:

Cdigo
Validao

Not Vazio(Cdigo)

Mensagem

Cdigo no pode ser vazio!

Data

2007 GAS Tecnologia

Validao

Not Vazio(Data)

Mensagem

Data ilegal!

Valor Inicial

Date

390

GAS 2007 - Manual do Usurio

Quantidade de sada
Quantidade_de_saida > 0 AND
Validao

Quantidade_de_saida <=
Produtos_em_estoque![Quantida
de em estoque]

Mensagem

Quantidade ilegal ou insuficiente!

Valor inicial

Valor
Validao
Mensagem

Valor > 0
Valor tem que ser maior do que
zero!

No esquea de marcar a opo "Mdulo pronto", na aba Geral da interface de definio de


janelas de dados e de gravar as informaes.

10.2.6.9 Parmetros do sistema


Temos uma ltima tabela para definir. Trata-se da tabela "Parmetros do sistema" que, como
voc deve se lembrar, foi inserida sob o menu Arquivo. Para definir a janela correspondente a esta
tabela, voc ter que expandir o mdulo Arquivo (clicando sobre o objeto marcado com "+"
esquerda desta opo) e inserir as informaes que aparecem na tela da figura 10.42 a seguir:

2007 GAS Tecnologia

Captulo 10 - Um exemplo prtico

391

Figura 10.42

Observe que diversas opes de acesso e abas foram desativadas. Isto se deve ao fato da tabela
bsica desta janela ter sido definida como uma tabela do tipo parmetro. Aproveite este momento e
marque a opo "Mdulo pronto". Neste mdulo, vamos aceitar tudo o que o GAS oferece como
default. Clique no boto para ativar o Editor de Recursos e crie uma tela padro.

10.2.6.10Movimentao dos produtos


Mais uma janela de dados temos que definir. Aplique um clique com o boto direito do mouse no
item "Movimentao de produtos", na rvore do projeto, selecione a opo "Define o mdulo
selecionado" e informe os dados constantes da figura 10.43 a seguir:

2007 GAS Tecnologia

392

GAS 2007 - Manual do Usurio

Figura 10.43

Observe que, diversas opes de acesso foram desmarcadas. Ocorre que esta tabela
alimentada exclusivamente a partir de lanamentos, no devendo ser permitidas ao usurio as
operaes de:

incluso de registros;
alterao de registros;
excluso de registros.

Aproveite e marque, de uma vez, a opo "Mdulo pronto", pois esta definio ser efetuada
rapidamente. Na aba "Tabelas auxiliares", vamos forar a abertura da tabela "Produtos em estoque"
com relacionamento pela nica razo de exibirmos uma frmula na tela para apresentar a "Descrio
do produto". Assim, informe os dados que aparecem na tela da figura 10.44 a seguir:

2007 GAS Tecnologia

Captulo 10 - Um exemplo prtico

393

Figura 10.44

Finalmente, vamos definir uma tela para este mdulo. Esta tela ser utilizada exclusivamente para
visualizao de registros, uma vez que as opes de manuteno nesta tabela esto vetadas.
Solicite ao GAS que crie para voc a tela da figura 10.45 a seguir. O label que aparece selecionado
deve ser inserido manualmente para conter a frmula "Descrio do produto", que voc deve definir
da mesma forma descrita anteriormente.

Figura 10.45

Acesse a lista de propriedades e limpe as propriedades Validao e Msg de validao que o GAS
possa ter inserido automaticamente.

2007 GAS Tecnologia

394

GAS 2007 - Manual do Usurio

10.2.6.11Ajuste de estoque
Agora, para ilustrar nosso exemplo prtico, vamos criar na aplicao uma maneira do usurio
atualizar a quantidade em estoque de produtos diretamente sobre a tabela "Produtos em estoque",
cuja janela de dados j definimos. Isto demonstrar que podemos acessar uma mesma tabela de
outros pontos da aplicao, disponibilizando apenas os campos que queremos e, ainda, inibindo
certas aes do usurio.
Primeiramente, insira uma nova janela de dados na rvore do projeto, procedendo conforme se
segue:
clique sobre o mdulo Movimentao para selecion-lo. Vamos inserir abaixo desta opo de
menu;
clique sobre o boto de insero de mdulos na rvore;
selecione o tipo de mdulo "Janela de dados";
quando solicitada a escolha da posio de insero, aplique um duplo-clique sobre "Sada de
mercadorias";
clique sobre o mdulo recentemente inserido na rvore e altere o seu nome para &Ajuste de
estoque.
Agora, aplique um clique com o boto direito do mouse neste item, na rvore do projeto, selecione
a opo "Define o mdulo selecionado" e informe o que aparece na janela da figura 10.46. Observe
que algumas opes de operao foram alteradas, aparecendo de maneira diferente do que foi
definido nas janelas de dados anteriores:
a opo Permitir incluso foi desmarcada. Isto significa que, a partir deste mdulo, o usurio
no poder incluir registros na tabela bsica;
a opo Permitir excluso tambm foi desativada para que o usurio no possa efetuar
excluses por esse mdulo.

2007 GAS Tecnologia

Captulo 10 - Um exemplo prtico

395

Figura 10.46

Observe que a manuteno da tabela "Produtos em estoque" j foi totalmente estabelecida


anteriormente, de modo que, na janela que estamos agora definindo, nada mais necessitamos
efetuar do que criar uma tela que apresente somente os campos necessrios para a identificao do
registro e alterao do campo de nosso interesse, que so, respectivamente, o Cdigo, "Descrio
do produto" e a "Quantidade em estoque".
Sendo assim, marque a opo "Mdulo pronto" e ative o Editor de Recursos do GAS e crie a tela
da figura 10.47 a seguir:

Figura 10.47

2007 GAS Tecnologia

396

GAS 2007 - Manual do Usurio

Voc deve ter observado que, neste caso, mais produtivo criar esta tela manualmente, ao invs
de utilizar os recursos de tela padro do GAS.
Para o label que aparece selecionado, voc deve ajustar a sua propriedade Frmula de modo que
exiba a descrio do produto correspondente ao cdigo digitado pelo usurio.
10.2.6.12Formulrios sem vnculos de dados
Todas as janelas de dados definidas tero a opo de trabalho sem vnculo de dados. Quando
definida essa opo, o formulrio ser aberto sem mostrar nenhum dado da base, sendo sua
abertura, portanto, extremamente rpida. Essa opo extremamente til para formulrios cuja
principal funo a incluso de registros (em tabelas com um grande volume de informaes) ou
para formulrios em que sero realizados, obrigatoriamente, filtros para a aquisio de dados;

Um excelente recurso a possibilidade de abrir um form desvinculado dos dados, dando mais
velocidade, ideal para bancos em servidores na internet:

10.2.6.13Formulrios com alterao bloqueada por default


O projetista poder agora determinar que um formulrio no permita a alterao de seus registros
at que o usurio explicitamente informe que deseja essa funo, tendo, para isso, que pressionar

2007 GAS Tecnologia

Captulo 10 - Um exemplo prtico

397

um boto de liberao na barra de ferramentas. Essa funcionalidade muito til para usurios no
muito atentos que, s vezes, alteram um registro de determinada tabela com o intuito de incluir um
novo registro;

10.2.7 Gerando os programas fontes


A nossa aplicao est toda definida. Podemos, agora, clicar no boto a seguir para solicitar a
gerao de fontes:

boto para gerar os programas fontes

O boto de gerao de fontes s estar habilitado se todos os mdulos da rvore estiverem


sendo exibidos na cor de mdulos definidos, conforme esteja configurado no GAS. Se este boto
no estiver disponvel, verifique se voc no se esqueceu de marcar a opo "Mdulo pronto" em
qualquer um dos mdulos da aplicao. Observe que o ttulo do projeto - primeiro mdulo da rvore s aparece na cor definida para mdulo pronto quando todos os demais mdulos da rvore estiverem
marcados como prontos.

A interface para a gerao de programas fontes aparece representada na figura 10.48. Esta janela
est dividida em duas partes: a primeira delas, a de mdulos auxiliares, esto contidos os mdulos
genricos que so sempre gerados pelo GAS para apoiar a aplicao e na segunda so agrupados
os mdulos efetivamente definidos pelo projetista. Em ambas as partes, a gerao de mdulos pode
ser ligada ou desligada pelo projetista a seu critrio. Naturalmente, na primeira vez que uma
aplicao gerada, nenhum mdulo pode ser desligado, sob pena da aplicao no compilar
corretamente.
Na interface para escolha dos mdulos definidos para gerao, o projetista tem um preview id
ntico rvore do projeto, facilitando assim a escolha ou no de mdulos para gerao.

2007 GAS Tecnologia

398

GAS 2007 - Manual do Usurio

Figura 10.48

Clique sobre o boto Prossegue para disparar a gerao dos programas fontes. Durante esta
fase, o GAS criar tambm o arquivo de ajuda on-line para a aplicao.

H a possibilidade de proteo de determinados mdulos da rvore para no serem gerados,


mesmo que o projetista clique o boto "Gerar todos" no mdulo de gerao. Recurso para evitar a
gerao indevida de determinados mdulos, principalmente em projetos muito grandes;

2007 GAS Tecnologia

Captulo 10 - Um exemplo prtico

399

10.2.8 Gerando os programas executveis


Uma vez que os programas fontes tenham sido gerados, a tela da figura 10.49 ,
automaticamente, apresentada.

Figura 10.49

Clique sobre o boto Prossegue desta tela para disparar a gerao dos executveis. Se o Visual
Basic estiver instalado corretamente em seu equipamento, todos os programas executveis da nossa
aplicao estaro disponveis para execuo aps esse processo. O Captulo 11 - Utilizando a
aplicao gerada, a seguir, aborda os aspectos da operao da aplicao que acabamos de criar.

2007 GAS Tecnologia

Captulo

XI
Captulo 11 - Utilizando a aplicao gerada

Captulo 11 - Utilizando a aplicao gerada

11

401

Captulo 11 - Utilizando a aplicao gerada


Para uma melhor compreenso da operao do sistema gerado, as instrues aqui apresentadas
correspondem aplicao gerada como exemplo do captulo anterior denominado Um Exemplo
Prtico. bom lembrarmos tambm que o GAS gera, como parte da documentao da aplicao, o
"Manual do Usurio", que contm todas as instrues necessrias sua operao, conforme
descrito no Captulo 8 - Gerao da Documentao.

11.1

Ativando a aplicao gerada


Localize o cone que representa o sistema Estoque no diretrio onde o mesmo fora criado ou
outro onde tambm se faa presente.

11.2

Informando os diretrios de trabalho


Ao ser ativada pela primeira vez ou caso no encontre o arquivo de nome ESTOQUE.INI no
mesmo diretrio do aplicativo Estoque, a aplicao apresenta a tela da figura 11.1, solicitando os
diretrios onde iro residir os arquivos de dados:

Figura 11.1

Se o arquivo de dados existir no diretrio informado, este ser utilizado pela aplicao; caso
contrrio, a aplicao o criar automaticamente. No diretrio informado, para o nosso exemplo, sero
manipulados os seguintes arquivos:
Cabe ressaltar que, ao ser solicitado ao usurio o caminho do banco de dados para aplicaes
que fazem uso da rotina de backup, de extrema importncia para o funcionamento dessa rotina
que a indicao desse diretrio seja feita no padro UNC (\\servidor\ compartilhamento\...). Esse
caminho, gravado no arquivo .INI do aplicativo, passado no arquivo de configuraes do backup
para que o servio, instalado em um servidor, possa acessar o banco de dados.

11.2.1 Dados (com extenso MDB)


o arquivo destinado a armazenar e manipular os dados digitados durante a operao da
aplicao.

2007 GAS Tecnologia

402

GAS 2007 - Manual do Usurio

Devido utilizao do Microsoft Jet Engine v3.6, os aplicativos gerados pelo GAS so
compatveis com bancos de dados MS-Access 2000 e verses anteriores.

11.2.2 Controle (com extenso LDB)


um arquivo auxiliar que controla os bloqueios dos registros acessados pelos usurios do
sistema.

11.2.3 Inicializao (com extenso INI)


Este o arquivo de configurao utilizado pela aplicao. Nele sero mantidas as informaes de
configurao, tais como diretrio de trabalho, posio das janelas (forms), etc. Este arquivo criado
no diretrio de instalao, ou seja, no diretrio onde se encontrar o arquivo ESTOQUE.EXE.

Caso o aplicativo utilizasse o SQL Server ou Oracle como banco de dados, a tela da figura 11.2
seria apresentada para indicao do diretrio no qual se encontra presente o arquivo INI das
consultas criadas por meio do construtor de consultas da aplicao final.

Figura 11.2

11.3

Informando a senha e acessando a aplicao


Como a aplicao Controle de Estoques foi criada com um plano de senhas, a janela da figura
11.3 apresentada:

2007 GAS Tecnologia

Captulo 11 - Utilizando a aplicao gerada

403

Figura 11.3

Na primeira vez que a aplicao executada, o projetista dever entrar no aplicativo, informando o
usurio e senha determinados por meio da moldura intitulada "Senha default da aplicao",
presente na aba Miscelnea da definio do projeto no GAS. Para maiores informaes, consulte o
tpico Definindo os dados genricos do projeto do Captulo 5 - Operando o GAS. Este usurio no
tem restries na operao da aplicao e, por isso, importante efetuar o credenciamento dos seus
usurios e descredenciar esse usurio, procedimento que ser demonstrado mais adiante neste
captulo. Ao ativar a aplicao, a tela principal da aplicao, representada na figura 11.4 aparecer:

2007 GAS Tecnologia

404

GAS 2007 - Manual do Usurio

Figura 11.4

11.4

Operando a aplicao
Antes de iniciarmos a descrio da operao da aplicao, vamos conhecer o funcionamento de
algumas teclas.

11.4.1 Teclas de controle de edio (janelas)


Durante os processos de digitao e alterao de registros nas janelas, existem diversas teclas
com funes especiais. A tabela a seguir mostra apenas algumas dessas teclas e a sua
funcionalidade:

2007 GAS Tecnologia

Captulo 11 - Utilizando a aplicao gerada

Tecla

Funo que desempenha

Seta esquerda

Move o cursor uma posio para a


esquerda

Seta direita

Move o cursor uma posio para a


direita

Seta
para
SHIFT+TAB

405

cima

ou

Move o cursor para o campo anterior


ao que est sendo digitado

Seta para baixo ou TAB

Move o cursor para o campo seguinte


ao que est sendo digitado

HOME

Move o cursor para o incio do campo


em edio

END

Move o cursor para o final do campo


em edio

DEL

Apaga o caractere direita do cursor

ENTER

Aceita o contedo digitado no campo e


passa para o campo seguinte

SHIFT e Seta direita

Seleciona uma parte do contedo do


campo digitado

TAB
BACKSPACE

para para o campo seguinte


Apaga o caractere esquerda do
cursor

Se esta a primeira vez que a aplicao est sendo utilizada, para maior facilidade,
aconselhvel que os dados das tabelas e de parmetros sejam digitados primeiro, pois so
informaes imprescindveis para o funcionamento da aplicao, visto que os demais mdulos
referenciam as tabelas em validaes, relacionamentos, etc. Para este nosso exemplo, vamos
assumir que a implantao ainda no foi efetuada; portanto,temos que digitar alguns registros
fictcios nos arquivos.

11.4.2 Teclas de controle de edio (grid)


Durante os processos de digitao e alterao de registros disponibilizados em grid, existem
diversas teclas com funes especiais.

2007 GAS Tecnologia

406

GAS 2007 - Manual do Usurio

A tecla F2 determina a forma com que o grid ir se portar, no sentido de recepo dos registros.
O grid sempre aberto em modo de navegao e o acionamento da tecla F2 habilita o grid para ser
possivel a digitao de uma nova informao ou alterao de uma informao existente.
A tabela a seguir mostra apenas algumas dessas teclas e a sua funcionalidade, que podem variar
de acordo com a forma em que ele se encontra, entre navegao e pre-edio(F2):

Tecla

F2
Seta esquerda

Funo que desempenha


(em modo navegao)
Habilita a pr-edio no grid.

Funo que desempenha


(em modo pr edio)
Sem efeito especfico

Move o cursor uma posio


Move o cursor uma posio
para a esquerda dentro do grid
para a esquerda dentro da coluna

Seta direita

Move o cursor uma posio


Move o cursor uma posio
para a direita dentro do grid
para a direita dentro da coluna

Seta para cima

Move o cursor para o registro


Move o cursor para o registro
disponibilizado imediatamente a disponibilizado imediatamente a
cima(anterior) ao registro corrente cima(anterior) ao registro corrente

Seta para baixo

Move o cursor para o registro


disponibilizado imediatamente a
baixo
(posterior)
ao
registro
corrente

Idntica ao modo navegao

HOME

Move o cursor para o incio do


Move o cursor para o inicio da
grid
coluna

END

Move o cursor para o final do


Move o cursor para o final da
grid
coluna

DEL

Apaga o registro corrente,


Apaga o caractere direita do
desde que a linha toda esteja cursor
selecionada.

ENTER

Sem efeito especfico

Aceita o contedo digitado no


campo e passa para o campo
seguinte

SHIFT e Seta direita

Sem efeito especfico

Seleciona
uma
parte
contedo do campo digitado

do

2007 GAS Tecnologia

Captulo 11 - Utilizando a aplicao gerada

TAB

Muda o foco para o controle


seguinte

BACKSPACE

Sem efeito especfico

407

Idntica ao modo navegao

Apaga o caractere esquerda


do cursor

F5

Atualiza(refresh)
o
recarregando os dados.

grid,

Sem efeito especfico

CONTROL + HOME

Vai para a primeira coluna do


grid.

Idntica ao modo navegao

CONTROL + END

Vai para a ultima coluna do


grid.

Idntica ao modo navegao.

CONTROL + Seta de
Move uma coluna para o lado
Move uma coluna para o lado
movimentao
da seta
da seta
PageUp

Move um pgina acima da


Move um pgina acima da
coluna atual
coluna atual

PageDown

Move um pgina abaixo da


Move um pgina abaixo da
coluna atual
coluna atual

11.4.3 Incluindo Fornecedores


selecione o menu Tabelas e clique sobre a opo intitulada Fornecedores;
clique sobre o boto de incluso de registros ou utilize a hot-key CTRL-I:

boto para incluso de registro

digite os dados dos registros a seguir, observando que, a cada registro digitado, o boto de
gravao ou o atalho CTRL-S deve ser acionada para efetivar a gravao do mesmo.

boto de gravao de informaes

2007 GAS Tecnologia

408

GAS 2007 - Manual do Usurio

Cd. do fornec.

Nome do fornec.

INDSTRIAS QUMICAS IQL LTDA

Contato

JOO DA SILVA

Telef. do fornec.

111-11-111-1111

Ramal

111

Fax

101-01-010-1010

Cd. do fornec.

Nome do fornec.

ABC CELULOSE S.A.

Contato

MRCIO

Telef. do fornec.

222-22-222-2222

Ramal
Fax

212-12-121-2121

Cd. do fornec.

Nome do fornec.

XP CELULOSE E DERIVADOS LTDA

2007 GAS Tecnologia

Captulo 11 - Utilizando a aplicao gerada

Contato

PEDRO ANTONIO

Telef. do fornec.

333-33-333-3333

Ramal

333

Fax

323-23-232-3232

Cd. do fornec.

Nome do fornec.

SANTA MARTA EQUIPAMENTOS

Contato

MARLENE

Telef. do fornec.

444-44-444-4444

Ramal

2007 GAS Tecnologia

Fax

434-34-343-4343

Cd. do fornec.

Nome do fornec.

ATILA FABRIL LTDA

Contato

JORGE

Telef. do fornec.

555.55.555-5555

Ramal

555

409

410

GAS 2007 - Manual do Usurio

Fax

545-45-454-5454

Em seguida, feche a janela para encerrar a operao com a tabela de Fornecedores.

11.4.4 Incluindo indexadores


Selecione a tabela Indexadores da mesma forma explanada anteriormente para Fornecedores e
pressione o boto de incluso para digitar apenas a data de hoje e o valor do dlar correspondente
data informada, j que, no nosso exemplo, utilizaremos o indexador Dlar. A seguir, feche a janela
para encerrar a operao com a tabela de Indexadores.

11.4.5 Incluindo Parmetros


Selecione "Arquivo/Parmetros do sistema" e digite na tabela de Parmetros as informaes a
seguir:

Nome da moeda

Dlar

Sigla da moeda

US$

Em seguida, feche a janela para encerrar a operao com a tabela de Parmetros.

11.4.6 Incluindo produtos


Agora que j cadastramos os dados das tabelas e dos parmetros da aplicao, vamos digitar
alguns registros de produtos constantes das grades abaixo para facilitar o entendimento da operao
da aplicao. Em geral, esta opo utilizada somente na implantao da aplicao para digitar o
resultado do inventrio inicial efetuado no estoque. As modificaes de estoque sero efetuadas por
meio das movimentaes de entrada e sada de mercadorias, conforme veremos mais adiante.

2007 GAS Tecnologia

Captulo 11 - Utilizando a aplicao gerada

Cdigo

Descri. do prod.

Lpis preto nmero


1

Unidade

Un

Quant. mnima

200

Preo de custo

2,30

Preo indexado

0,23

Lucro bruto

75

Cdigo

Descri. do prod.

2007 GAS Tecnologia

Lpis preto nmero


2

Unidade

Un

Quant. mnima

200

Preo de custo

2,30

Preo indexado

0,23

Lucro bruto

75

Cdigo

411

412

GAS 2007 - Manual do Usurio

Descri. do prod.

Caneta BIC Azul

Unidade

Un

Quant. mnima

200

Preo de custo

7,50

Preo indexado

0,75

Lucro bruto

60

Cdigo

Descri. do prod.

Pincel atmico azul

Unidade

Un

Quant. mnima

100

Preo de custo

12,50

Preo indexado

1,25

Lucro bruto

80

Cdigo

Descri. do prod.

Borracha macia

2007 GAS Tecnologia

Captulo 11 - Utilizando a aplicao gerada

Unidade

Un

Quant. mnima

400

Preo de custo

6,00

Preo indexado

0,60

Lucro bruto

70

Cdigo

Descri. do prod.

Borracha bicolor

Unidade

Un

Quant. mnima

300

Preo de custo

7,80

Preo indexado

1,00

Lucro bruto

50

Cdigo

Descri. do prod.

Unidade

2007 GAS Tecnologia

Caderno
100 fls
Un

espiral

413

414

GAS 2007 - Manual do Usurio

Quant. mnima

1.000

Preo de custo

10,00

Preo indexado

1,00

Lucro bruto

70

Cdigo

Descri. do prod.

Caderno
150 fls

Unidade

Un

Quant. mnima

1.000

Preo de custo

12,50

Preo indexado

1,25

Lucro bruto

70

Cdigo

Descri. do prod.

Caderno
200 fls

Unidade

Un

Quant. mnima

1.000

espiral

espiral

2007 GAS Tecnologia

Captulo 11 - Utilizando a aplicao gerada

Preo de custo

15,00

Preo indexado

1,50

Lucro bruto

70

Cdigo

Descri. do prod.

415

10
Grampeador
modelo 1

Unidade

Un

Quant. mnima

30

Preo de custo

18,00

Preo indexado

1,80

Lucro bruto

90

inox

Ao digitar os registros acima, voc deve ter percebido que o cursor no estacionou nos campos
"Quantidade em estoque" e "Data ltima atualizao" para serem digitados. Isto ocorreu porque, na
fase do projeto, esses campos foram definidos com atributo de "no editvel" e as modificaes
ocorrero somente pelas movimentaes de entrada, sada e ajustes de estoque. Para executar esta
tarefa, foram definidos alguns processamentos.
As informaes do campo "Referncia tcnica" (campo do tipo memo) no so relevantes para o
nosso exemplo, podendo ser digitadas quaisquer informaes. Entretanto, para a entrada de
informaes em campos do tipo memo, o usurio poder posicionar o cursor no campo e digitar uma
quantidade imensa de caracteres. As teclas utilizadas para edio deste tipo de campo so as
mesmas exibidas na tabela que explanamos anteriormente com a diferena de que a tecla ENTER
ser utilizada para terminar o pargrafo digitado no campo e no para aceitar e mover o cursor para o
campo seguinte. Para passar para o prximo campo a tecla TAB pode ser utilizada.

2007 GAS Tecnologia

416

GAS 2007 - Manual do Usurio

11.4.6.1 Carregando um campo do tipo multimdia


Na janela de "Produtos em estoque", existe um campo do tipo multimdia que manipulado de
uma forma diferente dos demais. Como no h digitao sobre este campo, existe um boto a ele
associado para permitir a insero e retirada dos arquivos a serem armazenados no banco de dados
por meio dele:

clique sobre o boto "Foto do produto";


a partir do dilogo padro de seleo de arquivos, selecione o nome do arquivo desejado;
clique sobre o boto OK.

Caso o micro do usurio final possuir um scanner ou qualquer outro dispositivo de captura de
imagens conectado, o usurio poder ainda digitalizar as imagens diretamente para o campo!
11.4.6.2 Retirando um arquivo do campo multimdia
Para retirar um arquivo que j esteja no campo multimdia, clique sobre o boto associado a este
campo e selecione a opo "Retirar mdia".

11.4.7 Operando o plano de senhas


Selecione a opo "Arquivo/Manuteno de senhas" para que a aplicao apresente a tela da
figura 11.5 a seguir:

2007 GAS Tecnologia

Captulo 11 - Utilizando a aplicao gerada

417

Figura 11.5

11.4.7.1 Alterando a senha


A partir desta janela, qualquer usurio cadastrado, independentemente do grupo a que pertena,
est apto a alterar a prpria senha, bastando:
clicar na aba "Muda Senha";
digitar a senha que est sendo utilizada no campo "Senha atual";
digitar a nova senha a ser utilizada no campo "Nova senha";
redigitar a nova senha a ser utilizada no campo "Redigite a nova senha" para efeito de
confirmao;
clicar sobre o boto de gravao a seguir para efetivar a troca de senhas.

boto de gravao de informaes

Se desejar cancelar os dados digitados, clique sobre o boto de cancelamento a seguir:

2007 GAS Tecnologia

418

GAS 2007 - Manual do Usurio

boto de cancelamento
11.4.7.2 Criando Grupos
O sistema de senhas da aplicao contm um nvel para agrupar usurios denominado Grupo.
Assim, cada usurio dever estar ligado a um grupo, "herdando" as permisses de acesso que
so atribudas para o grupo. Para a operao com grupos, clique na aba Grupos para que a
aplicao apresente a tela da figura 11.5 apresentada a seguir:

Figura 11.6

Para cadastrar um novo grupo, proceda conforme se segue:


clique sobre o boto de incluso, que aparece a seguir:

boto para incluso de informaes

digite o nome do novo grupo no campo "Novo grupo";

2007 GAS Tecnologia

Captulo 11 - Utilizando a aplicao gerada

419

estabelea as permisses que deseja designar ao novo grupo, marcando ou desmarcando as


opes Visualiza, Inclui, Modifica e Exclui conforme desejado;

clique sobre o boto de gravao para efetivar a incluso do novo grupo.

boto de gravao de informaes


11.4.7.3 Removendo um grupo
Para remover um grupo j cadastrado no plano de senhas, proceda conforme se segue:
clique sobre o grupo que se deseja remover para selecion-lo;
clique sobre o boto de remover grupo, que aparece a seguir:

boto para excluso de grupos

quando solicitado, confirme a remoo do grupo, clicando sobre o boto Sim.

importante lembrar que a excluso de um grupo acarretar na excluso de todos os usurios


que estejam cadastrados sob o mesmo. O grupo ADMINISTRAO no pode ser excludo, visto
que somente usurios deste grupo podem cadastrar novos grupos ou modificar as permisses de
acesso de um grupo existente.

11.4.7.4 Alterando permisses de grupos


Como j vimos anteriormente, as permisses so designadas a nvel de grupo para que os
usurios deste grupo "herdem" essas permisses. Para modificar permisso de grupo, deve-se
proceder conforme se segue:

2007 GAS Tecnologia

420

GAS 2007 - Manual do Usurio

clique sobre a aba Grupos;


selecione, na lista de grupos, o grupo cujas permisses deseja alterar;
nas abas intituladas Tabelas e Menus, a aplicao disponibilizar os nomes das tabelas e
menus existentes e, logo abaixo, opes de permisses que podem ser designadas. Selecione a
tabela desejada, marque as operaes a serem permitidas e deixe desmarcadas as que sero
cerceadas para a tabela ou menu selecionado.
11.4.7.5 Credenciando usurios
Para que uma pessoa possa utilizar esta aplicao, devemos credenci-la como usurio dentro do
plano de senhas.
Assim, clique sobre a aba Usurios e a tela da figura 11.7 aparecer:

Figura 11.7

selecione o grupo ao qual o novo usurio ir pertencer. Lembre-se de que os usurios "herdam"
as permisses designadas ao grupo;
clique sobre o boto de incluso, que j conhecemos;
digite o nome do novo usurio no campo "Novo usurio";

2007 GAS Tecnologia

Captulo 11 - Utilizando a aplicao gerada

421

digite a senha do novo usurio;


redigite a senha para efeito de conferncia;
digite, se desejar, uma observao sobre o novo usurio;
clique sobre o boto de gravao.
11.4.7.6 Descredenciando usurios
O descredenciamento de usurios pode ser efetuado na mesma janela apresentada na figura
11.6 da seguinte forma:
selecione o usurio a ser descredenciado ou removido do plano de senhas a partir da lista
"Usurios do grupo";
clicar sobre o boto de excluso:
clique sobre o boto Sim, quando solicitada a confirmao da excluso do usurio.

11.4.8 Digitando Notas Fiscais de Fornecedores


Iremos, agora, efetuar algumas operaes de movimentao de estoque. Selecione
"Movimentao/Entrada de produtos" no menu para acessar a digitao de dados da Nota Fiscal de
produtos recebidos. Lembre-se que, para iniciar a incluso de registros, devemos clicar sobre o boto
de incluso, que j conhecemos, existente na barra de ferramentas da aplicao:

Nmero da NF - Informe o nmero 1 para esta Nota Fiscal.

Data - Informe uma data qualquer. bom lembrar que dever haver um registro na tabela de
indexadores com esta data, pois a validao deste campo a existncia de um registro com o valor
do ndice nesta data para que se possa efetuar o clculo do valor indexado.

Fornecedor - Para este campo, basta abrir a lista e selecionar o nome do fornecedor. Na fase do
projeto, definimos este campo para apresentar uma tabela estrangeira (lista externa). Para esta Nota
Fiscal, vamos inserir o fornecedor ATILA FABRIL LTDA. Observe que o campo Valor no pode ser
digitado. Na fase do projeto, definimos este campo como "no editvel" e criamos um processamento
para atualiz-lo com os valores dos itens da Nota Fiscal que sero digitados.
A primeira parte desta janela recebe os dados da Nota Fiscal propriamente dita e a segunda,

2007 GAS Tecnologia

422

GAS 2007 - Manual do Usurio

composta de um grid, se destina a receber os dados dos itens constantes desta Nota Fiscal.
Portanto, aps a digitao dos dados da Nota Fiscal, teremos que digitar os dados de seus itens
que, para exemplificar, podem ser os da tabela que aparece a seguir. Para iniciar a digitao dos
itens, basta clicar na primeira coluna (campo) da primeira linha do grid.

Cdigo

Quantidade

Valor

Borracha bicolor

500

1000

Borracha macia

500

800

200

4000

Caderno
100 fls

espiral

O primeiro campo, a exemplo do fornecedor que informamos para Nota Fiscal, deve ser
selecionado da lista. medida que os dados acima so digitados, alguns aspectos interessantes
podem ser observados:
o valor da Nota Fiscal vai sendo calculado e exibido no campo destinado para isto. Durante o
projeto, definimos um processamento para executar esta tarefa;
se, por ventura, a janela de produtos estiver aberta na tela e exibindo o item que est sendo
digitado, poderemos observar que a quantidade em estoque vai sendo atualizada com a adio da
quantidade do item que est sendo digitado.
Isto se deve aos processamentos que definimos na fase do projeto;
o dado "Valor total" no grid no um campo da tabela de itens da NF. Trata-se de uma frmula
que estabelecemos na fase do projeto que , automaticamente, atualizada quando o item digitado;
diversos registros so digitados para uma s Nota Fiscal, caracterizando o relacionamento 1- N
(um para N) que definimos na fase do projeto.
Para encerrar a digitao de Notas Fiscais, basta clicar sobre o boto de gravao e fechar a sua
janela.

11.4.9 Uilizando os recursos da aplicao


Agora, aprenderemos como navegar nos registros de uma tabela e como alterar dados j
digitados. Veremos, ainda, alguns recursos disponveis no momento em que estivermos navegando

2007 GAS Tecnologia

Captulo 11 - Utilizando a aplicao gerada

423

na tabela. Selecione a opo Produtos a partir do menu e a tela da figura 11.8 aparecer:

Figura 11.8

As explicaes que veremos a seguir, para o arquivo de produtos, so vlidas para qualquer um
dos arquivos da aplicao.
Existem diversos botes inseridos na barra de ferramentas que podem ser utilizados como
recursos de operao. Na verdade, so atalhos para opes de menu , pois todos tm uma opo
correspondente no menu da aplicao. importante notar que alguns desses botes podero estar
habilitados ou desabilitados, dependendo da situao de operao.

11.4.9.1 Boto para alternar visualizao


Temos duas formas de visualizar uma tabela: tela a tela, conforme figura 11.8, ou em grade, como
na figura 11.9.

2007 GAS Tecnologia

424

GAS 2007 - Manual do Usurio

Figura 11.9

Um boto de dois estgios existente na barra de ferramentas serve para alternar esses dois
modos de visualizao.

boto de alternar visualizao

O operador do sistema poder, ainda, fazer uso da hot-key F9 para alternar a forma de
visualizao referida anteriormente.
Quando o referido boto exibido em estado normal, a visualizao tela a tela estar vigorando.
J quando aparece ligado (em baixo), aciona a visualizao em grade.

2007 GAS Tecnologia

Captulo 11 - Utilizando a aplicao gerada

425

11.4.9.2 Boto de incluso


O boto para incluir um novo registro na tabela ativa aparece abaixo. Ns j fizemos uso do
mesmo quando cadastramos registros nas tabelas.

boto de incluso de registros

O operador do sistema poder, ainda, fazer uso do atalho CTRL-I para incluir novos registros na
tabela ativa.

11.4.9.3 Boto de apresentao de grfico


O boto a seguir tem por finalidade criar um grfico envolvendo uma ou mais colunas da grade.

boto para apresentao de grfico

O operador do sistema poder, ainda, fazer uso do atalho CTRL-G para grafar da mesma forma
como executada pelo boto acima mencionado. Para marcar mais de uma coluna na grade, clique
sobre uma coluna, retenha o boto e arraste o ponteiro do mouse para outras colunas adjacentes.
11.4.9.4 Boto de procura
Clique sobre o boto a seguir para procurar um registro na tabela ativa (ver tpico Procurando um
registro).
boto de procura de registros
O operador do sistema poder, ainda, fazer uso do atalho CTRL-P para procurar da mesma forma
como executada pelo boto acima mencionado.
11.4.9.5 Boto de filtragem e ordenao
Clique sobre o boto a seguir para visualizar somente um grupo de registros da tabela ativa no
presente momento, obedecendo a uma ordenao especfica, com base em quaisquer campos,

2007 GAS Tecnologia

426

GAS 2007 - Manual do Usurio

determinada pelo usurio.

Outro mtodo para filtrar informaes em consultas ou janelas de dados (visualizadas na forma de
grid) a filtragem dinmica. Para utilizar esse mtodo, basta preencher o campo localizado sobre as
colunas do grid.

boto de filtragem e ordenao de registros

O operador do sistema poder, ainda, fazer uso da hot-key CTRL-F para filtrar ou ordenar da
mesma forma como executada pelo boto acima mencionado.

11.4.9.5.1 Barra de navegao

A barra de rolagem a seguir tem por finalidade efetuar a navegao dentro de uma tabela,
obedecendo-se a ordem estabelecida na lista que aparece ao lado dessa barra:

barra de navegao

Lista para escolha da ordem da navegao

A opo "A definir..." permite ao usurio estabelecer seu prprio critrio de ordenao. Ao clicar
sobre esta opo, a janela de ordenao de registros ser exibida, como mostrado na Figura 11.10,
para que sejam selecionados os campos que comandaro a ordenao.

2007 GAS Tecnologia

Captulo 11 - Utilizando a aplicao gerada

427

Figura 11.10

O operador do sistema poder, ainda, fazer uso das hot-keys F5, F6, F7 e F8 para,
respectivamente, acessar o primeiro registro, registro anterior, registro seguinte e ltimo registro,
analogamente utilizao da barra de navegao.

11.4.9.6 Boto de imprimir


Clique sobre o boto a seguir para imprimir a tela do registro corrente, se no formato tela, ou a
grade corrente, se no formato grade. Outras janelas que no sejam de dados podem tambm ser
impressas com este boto.

boto para ativar impresso

2007 GAS Tecnologia

428

GAS 2007 - Manual do Usurio

11.4.9.7 Boto de consulta


Clique sobre o boto a seguir para visualizar uma consulta ou criar uma nova (ver tpico
Operando com consultas neste captulo).

Boto para a criao de consultas


11.4.9.8 Boto de informaes
Clique sobre o boto que aparece a seguir para obter informaes sobre o banco de dados
manipulado pela aplicao.

boto para exibir informaes do banco de dados


11.4.9.9 Boto de finalizar
Clique sobre o boto a seguir para finalizar a operao.

boto para finalizar as operaes

11.4.10 Operando com consultas


Uma consulta uma forma de visualizar registros de diversos arquivos de uma s vez, podendo
ser estabelecido um filtro e/ou uma ordem especial.
Aps prepararmos uma determinada consulta podemos grav-la para posterior visualizao.
Assim, veremos como operar com consultas.
Para acessar a janela de contruo de consultas, clique sobre o boto a seguir na barra de
ferramentas ou selecione a opo de menu "Arquivo/Construo de consultas".

boto para a criao de consultas

A tela da figura 11.11 ser apresentada:

2007 GAS Tecnologia

Captulo 11 - Utilizando a aplicao gerada

429

Figura 11.11

11.4.10.1Vizualizando uma consulta existente


Para visualizar uma consulta existente, a partir do construtor de consultas da figura 11.9,
devemos selecion-la e clicar sobre o boto a seguir:

boto para apresentar a coluna selecionada


Uma vez que estejamos visualizando a consulta, podemos contar com diversos recursos:
estabelecer uma seleo e pesquisa de registros;
totalizar uma coluna, se for numrica (consultar o tpico Totalizando uma coluna neste captulo);
construir um grfico a partir de dados da consulta (consultar o tpico Trabalhando com grficos
neste captulo);
filtrar informaes dinamicamente com base no campo presente sobre cada uma das colunas;
imprimir os dados da consulta.
11.4.10.2Criando uma nova consulta
Para criar uma nova consulta e adicion-la ao menu da tela que aparece na figura 11.9, clique
com o mouse sobre o boto a seguir:

2007 GAS Tecnologia

430

GAS 2007 - Manual do Usurio

boto para criar a nova consulta

A tela da figura 11.12 apresentada:

Figura 11.12

As seguintes informaes devem ser digitadas:


11.4.10.2.1 Contedos

Apresenta as seguintes opes:


11.4.10.2.1.1 Nome da consulta

Informe o nome pelo qual esta consulta ser identificada no construtor de consultas que aparece
na figura 11.11.

2007 GAS Tecnologia

Captulo 11 - Utilizando a aplicao gerada

431

11.4.10.2.1.2 Tabelas

Selecione uma ou mais tabelas na lista Tabelas. Ao clicar sobre uma tabela, os seus campos so
exibidos na lista "Campos a mostrar".
11.4.10.2.1.3 Campos a mostrar

Clique sobre um ou mais campos da tabela selecionada, que deseja visualizar na consulta. Se
desejar exibir campos de outras tabelas, clique sobre as outras tabelas e, em seguida, sobre os seus
campos a serem inseridos na consulta.
11.4.10.2.1.4 Coluna avulsa

Utilize essa opo caso queira criar colunas extras (avulsas) em sua consulta, bastando fazer uso
das listas "Contedo da coluna" e "Ttulo para a coluna".

Esse recurso proporciona uma enorme flexibilidade na definio de frmulas ou valores


pr-fixados a serem inseridos na consulta. O usurio do aplicativo final gerado poder, por exemplo,
exibir mais de um contedo por coluna
(concatenao), como mostrado no exemplo a seguir:

Fornecedores->Telefone do fornecedor + ' - ' + Fornecedores->Ramal

A lista "Funo agregada" contm as funes que fazem parte da linguagem SQL. So elas:

Mdia
Somar
Contar
Mnimo

Para que as informaes sejam extradas corretamente do banco de dados, o uso dessas funes
implica na utilizao do recurso de agrupamento a ser explicado mais adiante. Alm dessas funes
SQL, aparecem tambm nesta lista outras funes colocadas para flexibilizar a elaborao da nova
coluna, como Dia, Ms, Ano, Data e AnoMs.

2007 GAS Tecnologia

432

GAS 2007 - Manual do Usurio

11.4.10.2.2 Grupos e ordenao

Apresenta as seguintes opes:


11.4.10.2.2.1 Agrupar por

Podemos utilizar este recurso para criar um registro de resumo para cada grupo definido. Por
exemplo, se voc agrupar os registros de sada de produtos por produto, ser exibido apenas um
registro por produto, contendo a totalizao de todas as suas sadas.
11.4.10.2.2.2 Ordenado por

Para especificar a ordenao da consulta, proceda conforme se segue:

abra a lista, clicando sobre o boto direita da lista;

selecione um dos campos;

selecione a opo Ascendente ou Descendente, conforme desejado, na moldura Ordenao;

repita os passos acima para selecionar quantos campos julgar necessrio;

se desejar retirar um campo da ordenao, basta selecion-lo novamente na lista.

O usurio poder ainda utilizar-se da opo "A definir...", mostrada na lista de ndices, para
estabelecer seu prprio critrio de ordenao. Ao clicar sobre esta opo, a janela de ordenao de
registros ser exibida para que sejam selecionados os campos que comandaro a ordenao.
11.4.10.2.3 Seleo

Apresenta as opes seguintes

2007 GAS Tecnologia

Captulo 11 - Utilizando a aplicao gerada

433

11.4.10.2.3.1 Os primeiros

Pode-se especificar que sejam exibidos somente os primeiros registros retornados por uma
consulta.

Para tanto, proceda conforme se segue:

clique na janela "Os primeiros";

digite o nmero desejado;

o nmero digitado poder ser tratado como quantidade absoluta de registros ou percentual,
dependendo da opo que for selecionada (Registros ou Porcento).
11.4.10.2.3.2 Seleo de registros/Unio de tabelas

Esta opo refere-se ao estabelecimento de uma condio para que os registros sejam exibidos
pela consulta, isto , somente os registros que atenderem condio informada faro parte da
consulta. Assim, poderemos criar grficos, somas de colunas e relatrios com um grupo especfico
de registros. Para estabelecer uma condio de filtragem, proceda do seguinte modo:

abra a lista "Nome do campo" para que sejam exibidos os nomes dos campos que fazem parte
da consulta;

selecione o campo desejado para estabelecer uma condio;

abra a lista Operador e selecione um dos operadores:

Operando

2007 GAS Tecnologia

Significado

434

GAS 2007 - Manual do Usurio

igual a

<>

diferente de

>

maior que

>=

maior ou igual a

<

menor que

<=

menor ou igual a

LIKE

operador de padres

clique no campo Valor e informe o argumento que dever ser comparado com o valor contido no
campo selecionado (no utilize aspas para valores literais constantes).

At este ponto foi estabelecida apenas uma condio para a consulta. Para a criao de mais de
uma condio, clique sobre o boto intitulado Concatena, selecionando a seguir um dos operadores
E/OU, antes de iniciar a montagem do prximo critrio de seleo de registros. J a opo "Unir
tabelas" deve ser utilizada sempre que se desejar relacionar duas tabelas cujos campos devero ser
exibidos na consulta. Neste caso, o campo Valor ser transformado em uma lista que poder ser
aberta para a seleo de um campo a ser comparado, sempre com o operador de igualdade (=) com
o campo da primeira tabela selecionada.

Para gravar uma consulta, clique sobre o boto de gravao que j conhecemos.

O usurio final poder ainda utilizar a opo "Permitir que outros usurios visualizem esta
consulta" caso queira compartilhar com outros usurios as consultas por ele elaboradas.

11.4.10.3Apagando uma consulta


Consultas que tenham sido criadas podem ser retiradas do menu, bastando selecionar a consulta,
clicar sobre o boto a seguir e confirmar o seu apagamento.

2007 GAS Tecnologia

Captulo 11 - Utilizando a aplicao gerada

435

boto para apagar a consulta selecionada


11.4.10.4Apagando colunas das grades de consulta
possvel apagar uma ou mais colunas da grade que exibe registros, sem que se perca os dados
das mesmas. Para tanto, basta efetuar o seguinte:

marque as colunas que se deseja apagar, clicando sobre o seu ttulo e arrastando o mouse para
marcar mais de uma;

clique com o boto direito do mouse para que seja apresentado o menu da figura 11.13:

Figura 11.13

clique sobre a opo "Apagar colunas" para apagar as colunas que estiverem marcadas.

O operador do sistema poder, ainda, fazer uso do atalho CTRL-L para apagar as colunas da
mesma forma como executada pela opo de menu acima mencionada.
11.4.10.5Quebra na impresso de consultas (COPY)
Possibilidade de definir quebra ao imprimir qualquer consulta criada pelo usurio na aplicao
final, bem como definir totalizadores para cada nvel de quebra.

2007 GAS Tecnologia

436

GAS 2007 - Manual do Usurio

11.4.11 Procurando um registro


Para localizar um registro qualquer dentro de uma tabela, basta selecionar a opo "Editar/
Procurar" no menu ou clicar sobre o boto de procurar registros, que j exibimos anteriormente
neste captulo.
A tela da figura 11.14 aparecer:

Figura 11.14

2007 GAS Tecnologia

Captulo 11 - Utilizando a aplicao gerada

437

O usurio dever selecionar um ndice da lista ndices, clicar num dos operadores e, finalmente,
informar, em Contedo, o valor a ser localizado no campo.
Se o ndice for composto de mais de um campo, outras chaves de pesquisa se abriro para que
possam receber valores a pesquisar. Para iniciar a pesquisa, clique sobre o boto de confirmao. O
registro encontrado ser exibido na janela ativa. O boto a seguir tem por finalidade limpar e reiniciar
uma pesquisa.

boto para reiniciar a definio da pesquisa

11.4.12 Trabalhando com grficos


Durante a visualizao de uma consulta ou no trabalho em grade, pode-se selecionar colunas da
grade e traar grficos para serem visualizados, impressos ou gravados em disco para utilizar em
outras aplicaes. Vamos utilizar, como exemplo, a consulta representada na tela da figura 11.15 a
seguir:

Figura 11.15

Para montar um grfico da quantidade mnima de cada produto, deve-se proceder conforme se
segue:
2007 GAS Tecnologia

438

GAS 2007 - Manual do Usurio

selecione as colunas que se localizam entre as "Descrio do produto" e "Quantidade mnima",


clicando sobre rea de ttulo de uma das colunas e arrastando-a at a rea de ttulo da outra;

exclua as colunas selecionadas, fazendo uso do atalho CTRL-L;

selecione as colunas "Descrio do produto" e "Quantidade mnima" da mesma forma


aplicada acima;

clique sobre o boto de apresentao grfica que j exibimos e um grfico semelhante ao da


figura 11.16, a seguir, ser apresentado.

Figura 11.16

2007 GAS Tecnologia

Captulo 11 - Utilizando a aplicao gerada

439

11.4.12.1Alterando a forma de visualizao do grfico


Clique com o boto direito do mouse sobre o grfico apresentado e ser exposta a tela da figura
11.17, a qual permitir a alterao da forma de visualizar o grfico exibido.

Figura 11.17

Altere os dados que julgar conveniente, como, por exemplo, tipo, ttulo, cores, etc. Quando
encontrar o aspecto desejado, clique sobre o boto de confirmao. Caso deseje restaurar a forma
original do grfico, basta clicar sobre o boto a seguir:

boto para restaurar uma definio de grfico


11.4.12.2Gravando um grfico
A imagem de um grfico que esteja sendo apresentada pode ser gravada em disco, em formato .
BMP ou .WMF, para ser exportada para outras aplicaes, por meio do boto de gravao situado
na barra de ferramentas ou por meio do atalho CTRL-S.

2007 GAS Tecnologia

440

GAS 2007 - Manual do Usurio

Um dilogo padro do Windows ser apresentado para solicitar um nome de arquivo sob o qual o
grfico deve ser gravado.
11.4.12.3Imprimindo um grfico
Da mesma forma, para imprimir a imagem do grfico na impressora padro do Windows, clique
sobre o boto de impresso que j exibimos neste captulo.

11.4.13 Reparao do banco de dados


A reparao do banco de dados uma funo de apoio da aplicao que tem por finalidade
restabelecer os ndices das tabelas bem como eliminar os "buracos" deixados por registros que
tenham sido apagados (compactao). Esta operao pode ser necessria quando, devido a causas
externas (queda ou pico de energia), o banco de dados for danificado. Esta operao s pode ser
efetuada com o banco de dados fechado, ou seja, sem nenhum usurio estar acessando suas
tabelas. Caso seja necessria, esta operao poder ser ativada por meio da opo de menu
"Arquivo/Reparao" ou por meio do boto exibido a seguir:

boto para reparao do banco de dados

2007 GAS Tecnologia

Captulo

XII
Captulo 12 - O GAS como ferramenta de desenvolvimento

442

12

GAS 2007 - Manual do Usurio

Captulo 12 - O GAS como ferramenta de


desenvolvimento
O presente captulo voltado para pessoas ligadas rea de informtica, pois apresenta
informaes mais tcnicas que possibilitam ou facilitam a modificao de programas fontes gerados
pelo GAS.

12.1

Funes genricas geradas na aplicao


As aplicaes geradas utilizam diversas funes de uso geral que o GAS disponibiliza no mdulo
.BAS criado junto com os programas fontes. Algumas dessas funes, principalmente as de
validao de campos, nem sempre so geradas. O GAS detecta se h necessidade da sua
existncia na aplicao quando gera os programas fontes. Todas essas funes aparecem neste
tpico documentadas e, para serem utilizadas, no necessitam quaisquer declaraes especiais.

12.1.1 DDMM
DDMM(ExpC)
Retorna True (-1) se a data especificada no argumento string ExpC, no formato Dia/Ms, vlida.

Exemplo:

If DDMM("01/08") Then
Print "Data vlida..."
End If
Data vlida...

12.1.2 DDMMAA
DDMMAA(ExpC)

Retorna True (-1) se a data especificada no argumento string ExpC, no formato Dia/Ms/ Ano,
vlida.
Exemplo:
If DDMMAA("01/08/00") Then
Print "Data vlida..."
End If
Data vlida...

2007 GAS Tecnologia

Captulo 12 - O GAS como ferramenta de desenvolvimento

443

12.1.3 Existe
Existe (ExpC)
Retorna True (-1) se o arquivo especificado por
ExpC existe no disco.

Exemplo:
Arquivo$ = "C:\APLIC\ESTOQUE\ESTOQUE.INI"
If Not Existe(Arquivo$) Then
Print "O arquivo "; Arquivo$; " no foi encontrado!"
End If

12.1.4 Extenso
Extenso(Valor[,NaoMoeda]
[,NomeSing][,NomePlur])

Retorna a frase, por extenso, correspondente a Valor. Se a flag NaoMoeda for passada como
True, Valor ser tratado como uma quantidade inteira qualquer, podendo serem agregadas palavras
para definir unidades, como, por exemplo, Habitantes, Peas, etc. Os parmetros opcionais
NomeSing e NomePlur correspondem ao nome da moeda corrente com que se deseja retornar a
frase.

12.1.5 GDV1
GDV1(ExpC)
Retorna o Dgito Verificador (DV), de mdulo 11, do argumento ExpC.
Exemplo:
x$="0002"
Print GDV1$(x$)

12.1.6 GDV2
GDV2(ExpC)
Retorna dois Dgitos Verificadores (DV), de mdulo 11, do argumento ExpC. Primeiramente,
calculado o primeiro dgito que incorporado ao argumento e, em seguida, calculado o segundo
dgito.

2007 GAS Tecnologia

444

GAS 2007 - Manual do Usurio

Exemplo:
x$="184173611"
Print GDV2$(x$)

12.1.7 GDvCb
GDvCb(ExpC)
Retorna um dgito verificador do argumento string ExpC. Esta funo deve ser utilizada para
padro EAN 8, EAN 13 ou UPC-A.
Exemplo:

x$ = "000000000001"
x$ = x$ + GDvCb(x$)
MsgBox "O nmero composto com o seu dgito verificador : " + x$

12.1.8 GravaNoIni
GravaNoIni(ExpC1, ExpC2, ExpC3, ExpC4)
Esta procedure executa a gravao de uma informao do tipo caractere no arquivo de
configurao (.INI) do GAS ou das aplicaes por ele geradas. O argumento ExpC1 contm o nome
da seo onde ser gravada a informao, sendo criada (entre colchetes) caso no exista. ExpC2
contm o nome do item que conter a informao (tambm criado, se no existir). ExpC3 contm a
informao a ser gravada e, finalmente, ExpC4 contm o nome completo (drive, diretrio e nome) do
arquivo .INI. Para gravar informaes numricas no arquivo, utilize a funo Str$( ) do VB no
argumento ExpC3.

Exemplo:
GravaNoIni ("Geral", "Dir", "C:\AP","C:\AP\ESTOQUE.INI")
GravaNoIni ("Geral", "Cor", Str$(15), "C:\AP\ESTOQUE.INI")
Resultado no arquivo .INI
[Geral]
Dir=C:\AP
Cor = 15

12.1.9 HaNaString
HaNaString(ExpN1, ExpC1, ExpC2, ExpN2)
Retorna a posio da primeira ocorrncia da expresso caractere ExpC2 dentro de ExpC1, a partir
da posio ExpN1. Se ExpN2 for passada com o valor True (-1), a pesquisa ser efetuada, caractere
a caractere, de ExpC2 independentemente da ordem das mesmas.

2007 GAS Tecnologia

Captulo 12 - O GAS como ferramenta de desenvolvimento

445

Exemplos:
Alvo$="Palavra"
Oque$="lavra"
Print HaNaString(1, Alvo$, Oque$, False)
3 'posio de "lavra" em "Palavra"

Agora,
Print HaNaString(1,Alvo$, Oque$, True)
2 'pesquisa caractere a caractere, na qual a letra "a" de "lara"
'foi encontrada na posio 2

Esta funo case sensitive, ou seja, maisculas no correspondem a minsculas.

12.1.10 LoadGasPicture
LoadGasPicture(ExpN)
Retorna o caminho e nome do arquivo, identificado no resource por ExpN, para onde a imagem foi
extrada.

12.1.11 LoadGasString
LoadGasPicture(ExpN)
Retorna o caminho e nome do arquivo, identificado no resource por ExpN, para onde a imagem foi
extrada.

12.1.12 LPad
LPad(ExpC1, ExpN, ExpC2)
Retorna a string em ExpC1 "completada" esquerda com o caractere passado em ExpC2,
forando um tamanho igual a ExpN.
Exemplo:
x$ = "Gas Tecnologia Ltda"
Print LPad$(x$, 40, "*")
********************Gas Tecnologia Ltda

12.1.13 MMAA
MMAA(ExpC)

2007 GAS Tecnologia

446

GAS 2007 - Manual do Usurio

Retorna True (-1) se a data especificada no


argumento string ExpC, no formato Ms/Ano,
vlida.

Exemplo:

If MMAA("08/00") Then
Print "Data vlida..."
End If
Data vlida...

12.1.14 NMes
NMes(ExpC)
Retorna o nome do ms correspondente data especificada em ExpC.

Exemplo:
Print NMes$("01/08/00")
Agosto

12.1.15 NSem
NSem(ExpC)
Retorna o nome do dia da semana correspondente data especificada em ExpC.

Exemplo:
Print NSem$("01/08/00")
Tera

12.1.16 PegaIntDoIni
PegaIntDoIni(ExpC1, ExpC2, ExpN, ExpC3)
Esta funo retorna uma informao do tipo numrico (inteiro), que esteja gravada no arquivo de
configurao (.INI) do GAS ou das aplicaes por ele geradas. O argumento ExpC1 dever conter o
nome da seo existente no arquivo .INI, sempre includa entre colchetes. O argumento ExpC2
contm o nome do item cuja informao se deseja pegar. J o agumento ExpN contm o valor a ser
2007 GAS Tecnologia

Captulo 12 - O GAS como ferramenta de desenvolvimento

447

assumido (default) caso o valor no seja recuperado e, finalmente, o argumento ExpC3 dever conter
o nome completo (drive, diretrio, nome) do arquivo .INI.

Exemplo:

Contedo do arquivo .INI


[Geral]
Nome da aplicao=EST
Dir=C:\AP
Cor=15
etc...
Dim QCor As Integer
QCor = PegaIntDoIni("Geral", "Cor", 0,"C:\AP\EST.INI")
Print QCor
15

12.1.17 PegaSequencia
PegaSequencia([ExpC1], ExpC2, ExpC3, V1, V2)
Esta funo serve para incrementar o valor de um campo do tipo seqencial em uma tabela. O
argumento ExpC1 opcional, contendo o nome do arquivo MDB. ExpC2 o nome da tabela que
contm o campo seqencial, enquanto ExpC3 o nome do campo seqencial. V1 o valor para
servir como default do campo e V2 o valor a ser utilizado para incrementar o campo.

12.1.18 PegaStrDoIni
PegaStrDoIni(ExpC1, ExpC2, ExpC3)
Esta funo retorna uma informao do tipo caractere, que esteja gravada no arquivo de
configurao (.INI) do GAS ou das aplicaes por ele geradas. O argumento ExpC1 dever conter o
nome da seo existente no arquivo .INI; o argumento ExpC2 contm o nome do item cuja
informao se deseja pegar e, finalmente, o argumento ExpC3 contm o nome completo (drive,
diretrio, nome) do arquivo .INI.

Exemplo:
Contedo do arquivo .INI
[Geral]
Nome da aplicao=ESTOQUE
Diretrio=C:\APLIC
etc...
Dim DirAplic As String
DirAplic$ = PegaStrDoIni("Geral", "Dir", "C:\AP\EST.INI")
Print DirAplic$
C:\AP

2007 GAS Tecnologia

448

GAS 2007 - Manual do Usurio

12.1.19 PTab
ExpC1.PTab( ExpC2, ArrV)
Esta funo executa uma pesquisa indexada no recordset especificado em ExpC1, utilizando o
ndice de nome ExpC2. Os argumentos a serem pesquisados so passados no arranjo ArrV, do tipo
variant. Caso seja encontrado o registro, esta funo retorna True, deixando o ponteiro no registro
encontrado. Se o registro no for encontrado, esta funo retorna False.

Exemplo:
i = Fornecedores.Ptab( "Cdigo", CodFor)

12.1.20 RAt
RAt(ExpC1, ExpC2)
Retorna a posio da ltima ocorrncia da expresso caractere ExpC2 dentro de ExpC1. Esta
funo semelhante funo InStr() do Visual Basic; porm, a posio pesquisada de trs para a
frente.

Exemplo:
Alvo$="Computador"
Oque$="o"
Print Rat(Alvo$, Oque$)
9

12.1.21 Retira
Retira (ExpC1, ExpC2, ExpN)
Retira (remove) todas as ocorrncias de ExpC2 dentro de ExpC1. Se a expresso ExpN for
passada com o valor True (-1), a remoo ser efetuada caractere a caractere de ExpC2.

Exemplo:
Alvo$="abacadabra"
Oque$="bac"
Print Retira$(Alvo$, Oque$, False)
aadabra 'removida a palavra "bac"

Agora,

2007 GAS Tecnologia

Captulo 12 - O GAS como ferramenta de desenvolvimento

449

Print Retira$(Alvo$, Oque$, True)


dr remoo feita caractere a caractere de Oque$,
excluindo os caracteres b, a, c

12.1.22 RPad
RPad(ExpC1, ExpN, ExpC2)
Retorna a string ExpC1 "completada" direita com o caractere passado em ExpC2, forando um
tamanho igual a ExpN.

Exemplo:

x$ = "Gas Tecnologia Ltda"


Print RPad$(x$, 40, "*")
Gas Tecnologia Ltda********************

12.1.23 Substitui
Substitui(ExpC1, ExpC2, ExpC3, ExpN)
Substitui todas as ocorrncias de ExpC2 em ExpC1 por ExpC3. Se o argumento ExpN for
passado como True (-1), a substituio ser feita caractere a caractere, ou seja, cada caractere de
ExpC2 ser substitudo pelo caractere correspondente em ExpC3. No existindo um caractere
correspondente em ExpC3, o caractere de ExpC2 ser removido, resultando numa string que poder
ser maior ou menor, dependendo dos argumentos.

Exemplo:
Alvo$="abacadabra"
Oque$="bac"
PeloQue$="***"
Print Substitui$(Alvo$, Oque$, PeloQue$, False)
a***adabra ' "bac" foi substitudo por "***"

Agora,
Print Substitui$(Alvo$, Oque$, PeloQue$, True)
*****d**r* ' a, b, c foram substudos por *

12.1.24 ValBrasil
ValBrasil(ExpC)
Esta funo til quando se quer pegar o valor numrico de uma string passada em ExpC, no
formato brasileiro, no aceitvel pela funo VAL() do Visual Basic, com vrgulas separando as
decimais e pontos separando os milhares.
Exemplo:
2007 GAS Tecnologia

450

GAS 2007 - Manual do Usurio

Valor$="1.234,56"
Print ValBrasil(Valor$)
1234.56 ' retorna o valor numrico exato da expresso

12.1.25 VCGC
VCGC(ExpC)
Retorna True (-1) se o argumento passado em ExpC um nmero do Cadastro Geral de
Contribuintes (CGC vlido) ou False (0) se no o for. O argumento ExpC poder conter ou no,
pontos, barras, hfens, etc...

Exemplo:
CGC$="44.990.901/0001-41"
If VCGC(CGC$) Then
Print "O GCG informado invlido!
End If
O CGC informado invlido!

12.1.26 VDV1
VDV1(ExpC)
Retorna True (-1) se o DV (dgito verificador) de 1 dgito, mdulo 11, vlido para a expresso
ExpC. O argumento ExpC poder conter ou no, pontos, barras, hfens, etc..

Exemplo:

Numero$="0001-8"
If Not VDV1(Numero$) Then
Print "Nmero invlido!"
End If
Nmero invlido!

12.1.27 VDV2
VDV2(ExpC)
Retorna True (-1) se o DV (dgito verificador) de 2 dgitos, mdulo 11, vlido para a expresso
ExpC. O argumento ExpC poder conter ou no, pontos, barras, hfens, etc..

Exemplo:

2007 GAS Tecnologia

Captulo 12 - O GAS como ferramenta de desenvolvimento

451

Numero$="184.173.611-21"
If Not VDV2(Numero$) Then
Print "Nmero invlido!"
End If
Nmero invlido!

12.1.28 VDvCB
VDvCB(ExpC)
Retorna True (-1) se o DV (dgito verificador) vlido para a expresso string ExpC (padres EAN
8, EAN 13 ou UPC-A).

Exemplo:
x$ = "0000000000017"
If VDvCB(x$) Then
MsgBox "O cdigo vlido!"
Else
MsgBox "O cdigo est incorreto!"
End If

12.1.29 VHORA
VHora(ExpC)
Retorna True (-1) se a hora passada em ExpC representa uma hora vlida.

Exemplo:
Hora$="10:25:60"
If Not VHora(Hora$) Then
Print "Hora ilegal!"
End If
Hora ilegal!

12.1.30 VUF
VUf(ExpC)
Retorna True (-1) se ExpC representa uma Unidade da Federao vlida. Esta funo no case
sensitive, ou seja, minsculas so tratadas como se fossem maisculas e vice-versa.

Exemplo:
Estado$="DF"
If Not VUf(Estado$) Then
Print "Estado invlido!"

2007 GAS Tecnologia

452

GAS 2007 - Manual do Usurio

End If
Estado invlido!

12.2

Variveis de sistema
Nos programas fontes da aplicao so criadas algumas variveis de sistema para controlar
alguns aspectos da sua operao. Essas variveis podem ser testadas pelo projetista, para auxiliar a
tomada de decises, dentro de fragmentos de programas, validaes, condies, etc que tenha
escrito. Algumas tm abrangncia Global (so vistas em qualquer ponto da aplicao), enquanto
outras tm escopo a nvel do formulrio, onde so criadas, funcionando como se fossem
propriedades do form. Outras, ainda, so vistas apenas nas rotinas onde so criadas (abrangncia
Local).
Para minimizar a possibilidade de conflito com variveis que o projetista possa vir a criar, as
variveis criadas pelo GAS dentro dos programas fontes so prefixadas por vg (Varivel do GAS) .
A seguir, esto listadas as variveis mais importantes:

12.2.1 De abrangncia global


So as seguintes:
12.2.1.1 vgPwUsuario
Do tipo caractere, essa varivel contm o nome do usurio, dentro do plano de senhas, que est
acessando a aplicao no momento.
12.2.1.2 vgPwGrupo
Do tipo caractere, essa varivel contm o nome do grupo a que est vinculado, dentro do plano
de senhas, o usurio que est operando a aplicao.
12.2.1.3 vgPwSenha
Do tipo caractere, essa varivel contm a senha do usurio que est acessando a aplicao no
momento.
12.2.1.4 vgPwObS
Do tipo caractere, essa varivel contm uma informao qualquer que se deseje vincular ao
operador.
12.2.1.5 vgNomeDB
Do tipo caractere, essa varivel armazena o nome completo (caminho e nome) do arquivo MDB
que armazena os dados da aplicao.

2007 GAS Tecnologia

Captulo 12 - O GAS como ferramenta de desenvolvimento

453

12.2.1.6 vgDBAtual
Do tipo numrico, essa varivel corresponde ao nmero do banco de dados atualmente em uso,
caso mais de um banco de dados esteja sendo manipulado pela aplicao.
12.2.1.7 vgDirDb
Do tipo caractere, essa varivel contm o nome do diretrio onde existe o arquivo de dados MDB
ou o nome do servidor SQL ou Oracle utilizado. Esta varivel, caso necessrio, j conter a
contra-barra "\" agregada ao final de seu contedo. Poder, ainda, tornar-se um arranjo se,
porventura, existirem mais de um banco de dados MDB ou servidores SQL e Oracle integrados
aplicao.
12.2.1.8 vgDirExe
Do tipo caractere, essa varivel contm o diretrio onde reside o programa executvel (.EXE) da
aplicao. Esta varivel j tem a contra-barra ("\") agregada ao final de seu contedo.
12.2.1.9 vgDB
Do tipo database, essa varivel armazena um objeto do tipo database relativo ao banco de dados
manipulado pela aplicao.
12.2.1.10vgNomeIni
Do tipo caractere, essa varivel armazena o nome do arquivo de inicializao (.INI) da aplicao.
12.2.1.11vgNomeSistema
Do tipo caractere, essa varivel armazena o nome (ttulo da aplicao).
12.2.1.12vgProjetista
Do tipo caractere, essa varivel contm o nome do projetista.
12.2.1.13vgBotoesOk
Do tipo booleano ou flag, essa varivel tem o valor True (verdadeiro) se os botes da barra j
tiverem sido acertados (habilitados ou desabilitados) para atender situao do momento.
12.2.1.14vgAtencao
Do tipo caractere, essa varivel contm a string "ATENO!" para ser utilizada em ttulos de
caixas de mensagens.

2007 GAS Tecnologia

454

GAS 2007 - Manual do Usurio

12.2.1.15vgImpConv
Do tipo booleano ou flag, essa varivel tem o valor True se a impressora padro do Windows
uma impressora convencional (no um fax, um modem, etc.) para impresso de consultas.
12.2.1.16vgCtHint
Do tipo control, essa varivel armazena um objeto do tipo control e contm o controle por sobre o
qual o mouse est sendo movimentado. utilizada para identificar qual "dica" ser exibida.
12.2.1.17vgBarraFerr
Do tipo booleano, essa varivel assume True se a barra de ferramentas est visvel na aplicao.
12.2.1.18vgAjudaAtiva
Do tipo booleano, essa varivel contm True se a ajuda ativa deve ser exibida.
12.2.1.19vgNomeEstacao
Do tipo caractere, se em ambiente de rede, essa varivel contm o nome da estao onde a
aplicao est rodando.
12.2.1.20vgRsPwGrupo
Do tipo recordset, essa varivel armazena um objeto do tipo recordset criado a partir da tabela de
grupos de usurios no plano de senhas.
12.2.1.21vgRsPwUsuario
Do tipo recordset, essa varivel armazena um objeto do tipo recordset criado a partir da tabela de
usurios no plano de senhas.
12.2.1.22vgRsPwTabelas
Do tipo recordset, essa varivel armazena um objeto do tipo recordset criado a partir da tabela que
armazena os nomes das tabelas e permisses dentro do plano de senhas.
12.2.1.23vgTipoAcrescDesc
Do tipo numrico (inteiro), essa varivel corresponde ao tipo de acrscimo/desconto (Valor ou
Porcentagem) aplicado ao cupom fiscal ou item corrente. Deve-se lembrar, no entanto, que o
acrscimo s aplicvel ao cupom fiscal. O aplicativo final no s controlar o emprego dessa
varivel para o cupom ou item, visto que ela aplicvel a ambos, como tambm ir inicializar (zerar)
seu contedo para cada cupom/item em particular.

2007 GAS Tecnologia

Captulo 12 - O GAS como ferramenta de desenvolvimento

455

12.2.1.24vgAcrescDesc
Do tipo numrico (inteiro), essa varivel identifica se o cupom fiscal corrente ser acrescido ou
descontado em seu valor original (Acrscimo ou Desconto). O aplicativo final ir inicializar (zerar)
seu contedo para cada cupom em particular.
12.2.1.25vgValorAcrescDesc
Do tipo numrico (preciso dupla), essa varivel corresponde, independente de estar sendo
representado em Valor ou Porcentagem, ao valor do acrscimo/desconto utilizado para o cupom
fiscal ou item corrente. O aplicativo final no s controlar o emprego dessa varivel para o cupom ou
item, visto que ela aplicvel a ambos, como tambm ir inicializar (zerar) seu contedo para cada
cupom/item em particular.
12.2.1.26vgQtdItem
Do tipo numrico (inteiro), essa varivel corresponde quantidade do item corrente. O aplicativo
final ir inicializar (zerar) seu contedo para cada item em particular.
12.2.1.27vgValorTroco
Do tipo numrico (preciso dupla), essa varivel corresponde ao valor de troco verificado no
pagamento do cupom fiscal corrente. Se a Ao Forma Pgto for programada pelo projetista, esta
ser executada primeiramente para, s ento, o contedo da varivel em questo ser inicializado
(zerado).
12.2.1.28vgValorSubtotal
Do tipo numrico (preciso dupla), essa varivel corresponde ao valor de subtotal (a pagar)
verificado para o cupom fiscal corrente, desconsiderando o eventual desconto/acrscimo
estabelecido. Aps a insero de todos os itens no referido cupom, o valor do subtotal no mais se
altera at que o cupom fiscal seja fechado. O aplicativo final ir inicializar (zerar) seu contedo para
cada cupom em particular.
12.2.1.29vgNumeroCupom
Do tipo caractere (string), essa varivel corresponde ao nmero do cupom fiscal corrente, tendo
seu valor resgatado a partir da impressora fiscal na abertura do cupom fiscal. Seu valor inicializado
na abertura de quaisquer mdulos tipo cupom fiscal, caso haja algum cupom aberto. No entanto,
somente para a terceira forma de compatibilizao com a Emisso de Cupom Fiscal a ser descrita
mais adiante nesse captulo, seu valor ser limpo (zerado). Caso haja cupons fiscais abertos, seu
valor ser reinicializado com o nmero do cupom aberto no momento.
12.2.1.30vgTotalPago
Do tipo numrico (preciso dupla), essa varivel corresponde ao valor total pago at o momento
para o cupom fiscal corrente, totalizando-se o pagamento efetuado por intermdio de cada uma das
formas de pagamento utilizadas. O aplicativo final ir inicializar (zerar) seu contedo para cada
cupom em particular.

2007 GAS Tecnologia

456

GAS 2007 - Manual do Usurio

12.2.1.31vgItemAtual
Do tipo numrico (inteiro), essa varivel corresponde ao nmero do item corrente, dentre aqueles
j utilizados para o cupom fiscal atualmente aberto. O aplicativo final ir inicializar (zerar) seu
contedo para cada cupom em particular.
12.2.1.32vgMoeda
Do tipo caractere, essa varivel corresponde ao smbolo da moeda corrente contida internamente
na impressora fiscal, sem, no entanto, englobar o $. Veja o exemplo de seu contedo: R, US, etc.
Seu valor ser resgatado a partir da impressora fiscal na abertura de quaisquer mdulos tipo cupom
fiscal. Cabe ressaltar que a vgMoeda s estar disponvel se for utilizada, em qualquer mdulo do
sistema, a picture box de simulao de fita de impressora fiscal (propriedade Retorno ECF = Sim),
independente do modo de compatibilizao com ECF adotado.

12.2.2 De abrangncia de formulrio


So as seguintes:
12.2.2.1 vgSituacao
Do tipo numrico, essa varivel contm um valorque indica a situao atual em que se encontra
um formulrio (form). Para facilitar o teste desses valores, foram criadas algumas constantes fceis
de memorizar:

ACAO_NAVEGANDO
ACAO_INCLUINDO
ACAO_EDITANDO
ACAO_EXCLUINDO
ACAO_EM_PROGRESSO
12.2.2.2 vgCaracteristica
Do tipo numrico, essa varivel assume valores que identificam a caracterstica de um form da
aplicao. Para facilitar o teste desses valores, foram criadas algumas constantes fceis de
memorizar:

F_COMUM
F_DADOS

2007 GAS Tecnologia

Captulo 12 - O GAS como ferramenta de desenvolvimento

457

F_COM_PAI
F_COM_FILHO
F_COM_PAI_E_FILHO
F_GRAFICO
F_BROWSE
F_RELATORIO
F_VARIAVE
12.2.2.3 vgTipo
Do tipo numrico, essa varivel assume valores que identificam o tipo do formulrio ao qual se
deseja referir. Para facilitar o teste desses valores, foram criadas algumas constantes fceis de
memorizar:

TP_COMUM
TP_TABELA
TP_PARAMETROS
TP_GRAFICO
TP_CONFGRAF
TP_BROWSE
TP_INFODB
TP_SELEQUERY
TP_RELATORIO
TP_SENHAS
TP_HELP
TP_CALC
TP_CALE

2007 GAS Tecnologia

458

GAS 2007 - Manual do Usurio

TP_VARIAVEL
12.2.2.4 vgUltimoFiltro
Do tipo caractere, essa varivel contm a expresso de filtragem que foi utilizada por ltimo dentro
deste formulrio.
12.2.2.5 vgUltimoTabIndex
Do tipo numrico, essa varivel contm o maior nmero da propriedade tabindex existente no
formulrio dentre os controles possveis de receberem dados digitados.
12.2.2.6 vgFormID
Do tipo numrico, essa varivel contm o nmero identificador deste formulrio.
12.2.2.7 vgTb
Do tipo recordset, essa varivel contm um objeto recordset do tipo table (tabela) que contm a
tabela bsica vinculada ao formulrio.
12.2.2.8 vgTbFiltro
Do tipo recordset, essa varivel contm um objeto recordset do tipo dynaset que contm a
tabela bsica vinculada ao formulrio.
12.2.2.9 vgTemInclusao
Do tipo booleano, essa varivel contm True se permitida a incluso de registros neste
formulrio e, conseqentemente, False se no.
12.2.2.10vgTemExclusao
Do tipo booleano, essa varivel contm True se permitida a excluso de registros neste
formulrio e, conseqentemente, False se no.
12.2.2.11vgTemProcura
Do tipo booleano, essa varivel contm True se permitida a pesquisa de registros neste
formulrio e, conseqentemente, False se no.
12.2.2.12vgTemFiltro
Do tipo booleano, essa varivel contm True se permitida a filtragem de registros neste
formulrio e, conseqentemente, False se no.

2007 GAS Tecnologia

Captulo 12 - O GAS como ferramenta de desenvolvimento

459

12.2.2.13vgTemAlteracao
Do tipo booleano, essa varivel contm True se permitida a alterao de registros neste
formulrio e, conseqentemente, False se no.
12.2.2.14vgTemCondicoesEsp
Do tipo booleano , essa varivel contm True se tem, pelo menos, uma condio especial (para
incluir, alterar ou excluir registros) neste formulrio e, conseqentemente, False se no.
12.2.2.15vgEmBrowse
Do tipo booleano, essa varivel contm True se o formulrio atual estiver sendo visualizado em
uma grade e, conseqentmente, False se estiver sendo visualizado em modo tela a tela.
12.2.2.16vgCpRel???
As variveis que iniciam com este prefixo so variveis que armazenam os contedos dos
campos de relacionamento com o formulrio pai. Os caracteres "???" so substitudos pelos nomes
dos respectivos campos de relacionamentos e seus tipos tambm variam de acordo com os tipos
desses campos.
12.2.2.17vgRegLancado
Do tipo booleano , essa varivel contm True se o registro corrente, que est sendo mostrado na
janela de dados, foi criado por um lanamento (no foi digitado).

12.2.3 De abrangncia local


So as seguintes:
12.2.3.1 vgNParc
Do tipo numrico, essa varivel criada em todos os mdulos que geram lanamentos, desde
que a quantidade desses lanamentos seja diferente de 1. Esta varivel indica o nmero da parcela
que est sendo gerada no momento do lanamento. Em vista disto, existe a possibilidade de se
utilizar o nmero da parcela (esta varivel) para criar uma frmula nos campos a serem lanados,
conforme o exemplo a seguir, que calcula a data de vencimento a cada 30 dias.

Date + 30 * vgNParc

12.2.3.2 vgCodLan
Do tipo numrico, essa varivel criada em todos os mdulos que geram lanamentos e contm
uma estrutura de controle do lanamento.

2007 GAS Tecnologia

460

12.3

GAS 2007 - Manual do Usurio

Como feito o controle de lanamentos?


O GAS permite a definio de lanamentos para serem feitos em outras tabelas da aplicao,
durante a digitao de registros. Um lanamento bastante semelhante a um processamento. Neste
ltimo, nenhum registro gerado dentro da tabela-alvo, sendo que somente os campos de um
determinado registro so modificados. Por isso, uma tabela que sofre processamento sempre est
relacionada com a tabela que gerou este processamento por intermdio de relacionamentos definidos
via aba Tabelas Auxiliares. No caso do lanamento, novos registros so inseridos na tabela-alvo e
seus campos imediatamente modificados com os valores estabelecidos, no havendo a necessidade
de existir relacionamento entre as tabelas. No entanto, mesmo assim necessrio que esta tabela
seja informada nas Tabelas Auxiliares.

As aplicaes geradas pelo GAS so capazes de controlar no s a gerao desses lanamentos


como tambm a sua manuteno. Vamos ver, agora, como que a aplicao controla quais
registros foram gerados por meio de lanamentos e a partir de qual arquivo foram originados. Sempre
que um lanamento definido no projeto, o GAS cria, automaticamente, dois campos especiais nas
estruturas das tabelas envolvidas:
um campo invisvel e seqencial (de incremento automtico) de nome INT~LAN criado dentro
da tabela geradora do lanamento para servir de ligao com o registro lanado na tabela alvo.
um campo invisvel de nome COD~LAN criado dentro da tabela alvo do lanamento, para
conter as informaes exibidas pela figura 12.1:

Figura 12.1

Para ilustrar, considere a seguitne tabela de Nota Fiscal:

2007 GAS Tecnologia

Captulo 12 - O GAS como ferramenta de desenvolvimento

Campo

461

Valor

Nmero

3.452

Valor

1.500,00

Data

01/08/00

Parcelas

Vendedor

PEDRO

INT~LAN

00000001

Por intermdio da sada de uma Nota Fiscal, desejamos gerar, na tabela de Contas a Pagar e
Receber, dois lanamentos: um deles lanando um pagamento da comisso do vendedor e um
outro lanando o valor recebido em 3 parcelas. Note que so DOIS lanamentos distintos em uma
mesma tabela e, um deles, com mltiplos registros na tabela-alvo (3 no nosso exemplo).

Aps a sada da Nota Fiscal acima, a nossa tabela de Contas a Pagar e a Receber ficaria
conforme exibido na tabela a seguir:

Data

2007 GAS Tecnologia

Not

Valor

HIST.

CD-LAN

01/08/00

15,00

Comiss

048-0000 0001-001

01/08/00

500,00

NF 3452

048-0000
001

01/09/00

500,00

NF 3452

048-0000-0001-001002

0001-001-

462

GAS 2007 - Manual do Usurio

01/10/00

500,00

NF 3452

048-0000
003

0001-001-

Observe que os valores disponibilizados nos campos (colunas Nat, Valor e Histrico) dependem
do que foi definido, na fase do projeto, para esses lanamentos. Os registros gerados por um
lanamento podem ser modificados ou excludos pelo usurio diretamente da tela definida para a
tabela e isto pode no ser desejvel. Caso queira impedir essas manutenes, a dica utilizar a
varivel de sistema vgRegLancado para montar uma condio especial de alterao ou excluso do
registro. Esta expresso poder ser definida por meio da interface de montagem de expresses (a
mesma utilizada para estabelecer condies, validaes, etc.) para ficar assim:

Not VgRegLancado

Outro aspecto que merece ser abordado para lanamentos que as modificaes efetuadas
sobre registros gerados por lanamentos podero se perder, caso a tabela geradora desses
lanamentos seja modificada, pois quando h uma alteraco na tabela de origem do lanamento, os
campos da tabela alvo do lanamento so refeitos.

12.4

Os arquivos de formato .DEF e .SQL


Os arquivos de extenso .DEF possuem um formato texto, proprietrio do GAS, e so por ele
criados e utilizados para controlar as estruturas do banco de dados da aplicao gerada e, ainda, na
criao dos utilitrios de Adaptao de Arquivos e Conversor de DBF para controlar as novas
estruturas de dados. O que mostrado a seguir um fragmento do arquivo .DEF definido para a
aplicao Controle de Estoque que faz parte do conjunto de exemplos que acompanha o GAS:
' esquema para a criao do banco de dados da aplicao ESTOQUE
{
' TABELAS * * * *
TABELA Contas a pagar
{
Campo Nmero de lanamento (Contador) - 9999
Campo Nmero da nf (Inteiro) - 999
Campo Data (Data) - 99/99/99
Campo Valor (Dupla) - 999999999.99
Campo Cod~lan (Texto 20) - Invisvel
Indice Lanamento (Nmero de lanamento Primario)
Indice Nota fiscal (Nmero da nf Unico)
Indice Cod~lan (Cod~lan Unico)
2007 GAS Tecnologia

Captulo 12 - O GAS como ferramenta de desenvolvimento

463

}
...
' RELACOES * * * *
RELACAO Notas fiscais/Itens
{
Base Notas fiscais
Estrangeira Itens da nf
Atributo ESQUERDA + ATUALIZA CASCATA + EXCLUI CASCATA
Campo Nmero da nf / Nmero da nf
}
...
' INTEGRIDADES * * * *
RELACAO PW~Usuarios em PW~Grupo
{
Base PW~Grupos
Estrangeira PW~Usuarios
Atributo ESQUERDA + ATUALIZA CASCATA + EXCLUI CASCATA
Campo Nome / Grupo
}
}

O fragmento de arquivo acima, apresenta algumas definies:


linhas iniciadas com apstrofe so consideradas comentrios;
as chaves "{" e "}" so utilizadas respectivamente para iniciar e terminar estruturas que definem
os elementos do banco de dados;
as palavras-chaves TABELA, CAMPO, INDICE, INTEGRIDADE, RELACAO, etc., definem os
objetos correspondentes dentro do banco de dados;
a palavra ESQUERDA define o tipo de join utilizado para a juno de tabelas em
relacionamentos 1-N (left-join);
ATUALIZA CASCATA significa que os campos da tabela que est relacionada do lado "N" sero
atualizados automaticamente quando campos correspondentes na tabela do lado "1" forem
atualizados;
EXCLUI CASCATA significa que os registros da tabela relacionada do lado "N" sero excludos
automaticamente (em cascata) quando registros correspondentes na tabela do lado "1" forem
excludos;
as palavras-chaves PRIMARIO e UNICO definem ndices com essas propriedades para a tabela
correspondente;
ao lado de cada campo definido em TABELAS, aparece o seu nome no banco de dados e, entre
parnteses, o seu tipo e tamanho (se tipo caractere). A seguir, poder aparecer, aps um hfen, a
mscara a ser utilizada para a entrada de dados neste campo ou, ainda, a palavra INVISIVEL, se o
campo foi definido com este atributo.
Ao acessar este arquivo o GAS cria automaticamente um banco de dados, se optado pelo formato
JET, correspondente ao que nele est definido. Usurios experientes do GAS, aps se familializarem
com a sua estrutura, podero editar este arquivo com um editor ASCII qualquer e alterar seus
parmetros, se for desejado. Cabe ressaltar que, quando utilizado o SQL Server ou Oracle, no caso
do GAS Enterprise, ser gerado um arquivo-script de extenso .SQL, o qual dever ser executado

2007 GAS Tecnologia

464

GAS 2007 - Manual do Usurio

via Query Analyzer ou SQL Plus, ferramentas respectivamente do SQL Server e Oracle. Tal script,
responsvel por toda criao da estrutura de um banco SQL Server ou esquema Oracle (tabelas,
campos, etc) exemplificado abaixo, possui semelhana aos arquivos .DEF.

/* Esquema para a criao do banco de dados da aplicao */


/* Banco de dados: ESTOQUE */
/* Seleciona o banco de dados */
Use ESTOQUE
/*------------------------------------------------------------*/
/* Excluso de triggers */
/*------------------------------------------------------------*/
if exists (select * from sysobjects where id =
object_id('Fornecedores_UPD') and sysstat & 0xf = 8)
drop trigger Fornecedores_UPD
GO
...
/*------------------------------------------------------------*/
/* Excluso de tabelas */
/*------------------------------------------------------------*/
if exists (select * from sysobjects where id = object_id('[Contas a
pagar]') and sysstat & 0xf = 3)
drop table [Contas a pagar]
GO
...
/*------------------------------------------------------------*/
/* Excluso de default */
/*------------------------------------------------------------*/
if exists (select * from sysobjects where id = object_id('defZero')
and sysstat & 0xf = 6)
drop default defZero
GO
...

Cabe ressaltar que as excluses de triggers (integridades relacionais), tabelas e defaults


executadas inicialmente no script de criao do banco so exclusivamente necessrias para que se
garanta o marco da inicializao do banco de dados, evitando, assim, possveis erros em funo de
triggers, tabelas e defaults criados anteriormente no mesmo banco.

/* Criao de default */
/*------------------------------------------------------------*/
CREATE DEFAULT defZero AS 0
GO
...
/*------------------------------------------------------------*/
/* Criao de Tabelas, Indices e Atribuio de Default */
/* Produtos em estoque */
/*------------------------------------------------------------*/
CREATE TABLE [Produtos em estoque] (
Cdigo varchar (8) NOT NULL,
[Descrio do produto] varchar (30) NOT NULL,
Unidade varchar (2) NOT NULL,
[Referncia tcnica] text NOT NULL,
[Quantidade em estoque] int NOT NULL,
[Quantidade mnima] smallint NOT NULL,
[Preo de custo] decimal (12, 2) NOT NULL,
[Preo indexado] decimal (10, 2) NOT NULL,
[Lucro bruto] decimal (6, 2) NOT NULL,
Perecvel bit NOT NULL,
[Localizao do produto] smallint NOT NULL,
[Foto do produto] image NULL,
[Data ltima atualizao] datetime NULL,
[quick~rs] timestamp NULL,
CONSTRAINT Cdigo PRIMARY KEY CLUSTERED
(
2007 GAS Tecnologia

Captulo 12 - O GAS como ferramenta de desenvolvimento

465

Cdigo
) WITH FILLFACTOR = 90
)
GO
...
/*------------------------------------------------------------*/
/* Criao de triggers */
/*------------------------------------------------------------*/
CREATE TRIGGER Fornecedores_UPD ON Fornecedores FOR UPDATE AS
IF UPDATE([Cdigo do fornecedor])
BEGIN
IF (SELECT COUNT(*) FROM deleted INNER JOIN [Notas fiscais] ON
deleted.[Cdigo do fornecedor] = [Notas fiscais].[Cdigo do
fornecedor]) > 0
BEGIN
SET NOCOUNT ON
UPDATE [Notas fiscais]
SET [Notas fiscais].[Cdigo do fornecedor] = (SELECT
inserted.[Cdigo do fornecedor] FROM inserted INNER JOIN
Fornecedores ON inserted.[Cdigo do fornecedor] =
Fornecedores.[Cdigo do fornecedor])
FROM deleted INNER JOIN [Notas fiscais] ON deleted.[Cdigo do
fornecedor] = [Notas fiscais].[Cdigo do fornecedor]
END
END
GO
...

Excludas as triggers, tabelas e defaults, garantindo o marco concreto de inicializao do referido


banco, o script automaticamente executar a criao das entidades acima relacionadas, como
tambm informa o cdigo descrito imediatamente acima. Para assegurar a incorruptibilidade do
banco de dados, recomendamos que se faa o backup do banco de dados antes do script ser
utilizado na adaptao do referido banco. Os ambientes SQL Server e Oracle oferecem utilitrios
para a execuo e restaurao do backup.

12.5

O esquema de segurana utilizado nas aplicaes


O JET, SQL Server e Oracle possuem seus prprios esquemas de segurana para controlar as
permisses de acesso de usurios s tabelas. Este esquema, embora seja bastante abrangente, no
permite uma maior flexibilidade para aplicaes mais complexas como, por exemplo, gerao de
processamentos, lanamentos, etc. Por esta razo, optou-se por no utilizar nas aplicaes geradas
pelo GAS o esquema de segurana interno do JET/ SQL Server/Oracle. Em contrapartida, se a
opo de gerar aplicaes com plano de senhas estiver ligada, o GAS cria nas aplicaes o seu
prprio esquema de segurana, oferecendo a devida flexibilidade onde se faz necessria.

Se existir plano de senhas no projeto, o GAS gera nas aplicaes um mdulo de manuteno de
senhas que permite o cadastramento de novos Grupos, desde que o usurio que esteja operando a
aplicao pertena ao grupo denominado ADMINISTRAO. A tela da figura 12.2 permite o
cadastramento e personalizao dos grupos.

2007 GAS Tecnologia

466

GAS 2007 - Manual do Usurio

Figura 12.2

Usurios, permisses para cada uma das tabelas existentes e visualizao para cada item de
menu da aplicao podem tambm ser cadastrados. Esse ltimo recurso permite ao projetista
elaborar aplicativos com um elevado grau de personalizao, pois um grupo de usurios denominado
FINANCEIRO, por exemplo, no apenas ter restrio de acesso, mas tambm de visualizao aos
itens de menu, relacionando-se apenas com os itens pertinentes ao seu grupo.

Cada usurio cadastrado est sempre vinculado a um determinado grupo. As permisses,


referentes s tabelas, designadas para os grupos so:

visualizao de dados;
modificao de dados;
incluso de registros;
excluso de registros.

A tela da figura 12.3 permite o cadastramento de usurios dentro dos grupos.

2007 GAS Tecnologia

Captulo 12 - O GAS como ferramenta de desenvolvimento

467

Figura 12.3

Usurios que no pertenam ao grupo ADMINISTRAO tm a permisso apenas de alterar as


suas respectivas senhas. Para acessar uma aplicao gerada com esquema de segurana, o
usurio dever entrar com o seu nome (identificador) e com a sua senha, por intermdio de uma
janela de dilogo criada na aplicao, como mostra o exemplo da figura 12.4:

Figura 12.4

12.5.1 Na primeira vez que a aplicao executada...


o nome do usurio SUPERVISOR e a senha o nome do programa executvel da aplicao,
sem a extenso, como, por exemplo, ESTOQUE. Este nome informado durante a definio do
mdulo geral do projeto.

2007 GAS Tecnologia

468

GAS 2007 - Manual do Usurio

o grupo ADMINISTRAO criado automaticamente dentro de plano de senhas, com um


nico usurio de nome SUPERVISOR. A partir da, novos grupos e usurios podem ser
acrescentados. As permisses so sempre dadas ao GRUPO, sendo que os usurios cadastrados
neste grupo "herdam" suas permisses. O grupo ADMINISTRAO, que tem permisses irrestritas,
nunca pode ser apagado e o usurio SUPERVISOR, dentro deste grupo, s pode ser apagado se
existir um outro usurio cadastrado neste grupo.

12.6

Esquema de compatibilidade do GAS Enterprise com o SQL


Server e Oracle
O SQL Server e Oracle, a exemplo de outros bancos de dados corporativos, so bancos de
dados que, praticamente, s existem nas empresas de mdio e grande porte. Esses bancos de
dados corporativos no so necessariamente mais rpidos, sendo sim muito mais confiveis. A
filosofia de banco de dados corporativo bastante organizada, tendo uma pessoa designada
especificamente para cuidar do banco de dados (Administrador de Banco de Dados ou DBA) que
gerencia, d manuteno e, sobretudo, autoriza a criao de tabelas e campos em tabelas j
existentes e utilizadas por outras aplicaes da empresa. Normalmente, o desenvolvedor dos
aplicativos necessitar solicitar a ele que crie para a sua aplicao o meio de armazenamento dos
dados. Ele, provavelmente, disponibilizar reas de testes, durante a fase de desenvolvimento e, s
quando a sua aplicao estiver bem testada e pronta para ser implantada, ele ligar-la- rea de
produo. Numa corporao, no pense em um banco de dados em separado para a sua aplicao.

Raciocine que as empresas no fazem duplicao de cadastros e que, com certeza, a sua
aplicao ter de estar integrada a algumas tabelas j criadas e usadas por outras aplicaes
(fornecedores, clientes, produtos, etc.). Para voc criar mais campos nessas tabelas, vai ter que
justificar muito bem. mais ou menos o que acontecia nas empresas, utilizando bancos de dados de
mainframes, antes do boom dos microcomputadores. Aplicaes desenvolvidas para esses
ambientes esto em um patamar mais elevado, significando que, no momento de negociar o seu
desenvolvimento, so bastante mais caras.

Quando uma empresa decide pela utilizao de um banco corporativo, ela deve inicialmente
adquirir o engine do banco de dados e comprar as licenas necessrias para que os micros da rede
possam acess-lo. Isso quer dizer que, o engine instalado em apenas um micro da rede, intitulado
servidor, que deve utilizar sistema operacional Windows NT 4.0/2000. As outras estaes que iro
acessar este servidor apenas devem receber a informao de onde se encontra o servidor. Numa
aplicao do GAS, isto acontece quando ela executada pela primeira vez. Esta informao
armazenada em um arquivo .INI que se encontra no diretrio da aplicao. Todas as aplicaes
desenvolvidas na empresa devero estar utilizando o mesmo servidor, onde diversos bancos de
dados podero existir.

Do ponto de vista do desenvolvimento de aplicao com o GAS para SQL Server e Oracle, a
filosofia a mesma empregada para aplicaes para o Jet Engine (MDB). A diferena bsica que,
nesses bancos de dados corporativos, o projetista dever trabalhar, provavelmente, com vrios
bancos de dados para buscar informaes a serem utilizadas pela sua aplicao. Para que o GAS

2007 GAS Tecnologia

Captulo 12 - O GAS como ferramenta de desenvolvimento

469

possa gerar aplicaes para esses bancos de dados, basta escolher o tipo na janela de definio da
estrutura do mesmo. Um benefcio imediato dessa facilidade que o projetista vai poder fazer a sua
aplicao utilizando o Jet Engine (MDB) na sua prpria casa, escritrio ou mesmo, em separado, na
prpria empresa do cliente.
Poder testar o prottipo do seu sistema, apresent-lo a quem for de interesse e, quando tudo
estiver de acordo, vai precisar apenas ajustar essa opo para gerar para o SQL Server ou Oracle.
Diferentemente de aplicaes que utilizam o Jet Engine (MDB), o banco de dados das aplicaes
geradas para SQL Server e Oracle no ser criado automaticamente. O GAS gerar um script com
instrues SQL a ser passado ao DBA que o executar no servidor. Normalmente, o DBA cria o
banco de dados diretamente nesse servidor e, utilizando as ferramentas SQL Query Analyser (SQL
Server) ou SQL Plus (Oracle), executa o script gerado pelo GAS para criar as tabelas, ndices e
triggers para este banco de dados. O DBA dever estar ciente de que esse script que o GAS
gera,contm instrues para apagar tabelas, ndices e triggers existentes e recri-las com estrutura
vazia. Isto significa que, sempre que o script for executado, um banco de dados vazio ser criado e
todos os dados se perdero! Nos casos de modificao de estrutura, onde se pretende preservar
dados existentes, o projetista dever marcar a opo para que o GAS gere os fontes do Programa
Adaptador que, ao ser compilado e executado, ir comparar a nova estrutura com a estrutura
existente no servidor. O prprio adaptador gerar um script (ADAPTA.SQL ) que, de maneira
semelhante para criao de banco de dados, dever ser executado pelo DBA. Neste caso,
altamente recomendvel que se faa um backup do banco de dados antes de executar o script, para
que se possa retornar a uma situao anterior, caso necessrio. Aplicaes SQL Server ou Oracle
geradas pelo GAS exigem ADO 2.5 e respectivamente o SQL Server 7.0 SP2 e Oracle 8.1.x.

12.7

Sistemas com acesso multiusurio


Os sistemas aplicativos criados pelo GAS podem, opcionalmente, ter caractersticas de
processamento que permitem mltiplos usurios acessar simultaneamente os dados. Uma vez
estabelecida esta opo, os programas fontes gerados contero toda a codificao para garantir a
funcionalidade necessria. A programao de aplicativos multiusurio requer cuidados especiais e,
dependendo do tipo de aplicativo, pode ser bastante complexa.

Os controles utilizados pelo GAS dentro dos programas criados so diversos, dependendo da
situao e do que o JET, SQL Server e Oracle permitem:

em algumas situaes, todo o banco de dados dever ser bloqueado ao acesso de outros
usurios (aberto em modo exclusivo), como no caso de execuo da rotina de reparao do banco
de dados ou em caso de existir processamento simultneo em diversas tabelas ao mesmo tempo.
Esta a forma mais restritiva de sua utilizao.

na maioria dos casos, os bloqueios de acesso a outros usurios ocorrem em uma tabela inteira,
o que menos restritivo. As tabelas podem ser abertas com proibio para leitura, impedindo que
seus dados sejam examinados por outros usurios ou, ainda, com proibio somente para gravao
de dados nesta tabela. Os bloqueios de tabelas inteiras ocorrem normalmente quando se faz

2007 GAS Tecnologia

470

GAS 2007 - Manual do Usurio

necessria uma atualizao total de uma tabela por um determinado processamento.

a forma menos restritiva o bloqueio a nvel de registro, que ocorre quando um registro
individual esteja sofrendo um processo de atualizao qualquer como na edio. Deixar que dois
usurios atualizem um mesmo registro ao mesmo tempo pode redundar em desastre. Portanto, as
rotinas de edio de registros devem estar providas das instrues para bloquear o registro em
edio ao acesso de outros usurios. O JET, SQL Server e Oracle fazem o tratamento de dados em
"pginas" (normalmente de 2.048 bytes) de cada vez. O resultado disto que, salvo em rarssimas
ocasies em que o tamanho do registro tenha exatamente 2K, esses sistemas de gerenciamento de
banco de dados no bloqueiam individualmente um registro e sim TODOS os registros que estejam
em uma mesma pgina. Por exemplo, uma tabela que tenha um tamanho de registro igual a 230
bytes, teriam 9 registros bloqueados de uma s vez. Quando uma pgina bloqueada por um
usurio, outros usurios no podem modificar quaisquer registros dessa pgina (embora possam ler
esses registros). Para o bloqueio de "pginas" de dados, esses sistemas de gerenciamento de banco
de dados permitem dois tipos de bloqueio:

o bloqueio pessimista, que mantm a pgina bloqueada a partir do momento em que o mtodo
EDIT (edio) invocado at o momento em que gravado no banco de dados pelo mtodo
UPDATE (atualizao).

o bloqueio otimista, utilizado nos programas criados pelo GAS, que bloqueia a pgina de dados
somente durante a execuo do mtodo UPDATE (atualizao).

12.8

Consideraes sobre o campo multimdia (gCpMM.OCX) e


digitalizao de imagens
Os campos do tipo imagem, em verses anteriores ao GAS-2001, eram implementados via
vinculao do controle gPicture a um controle Data Control (data bound), e podiam ser utilizados
somente imagens de formato .BMP e .WMF. A partir do GAS-2001, essas implementaes so
efetuadas por meio do controle gCpMM sem vinculao a Data Control, sendo tal controle capaz de
armazenar qualquer tipo de imagem (.BMP, .JPG, .GIF, .TIF, etc), alm de qualquer outro tipo de
mdia, como, por exemplo, .AVI, .MPG, .WAV, .MID, .MP3, etc., e qualquer tipo de documento de
aplicativos Windows, como .DOC, .RTF, .TXT, .HTM, .XLS, .WK1, .GAS, .MDB, etc.

O campo utilizado para o armazenamento dessas mdias do tipo BLOb (Binary Large Object) e
o controle gCpMM cuida, automaticamente, da sua manipulao. Por exemplo, quando o usurio
selecionar a opo de abertura do menu do controle, o mesmo disponibilizar a mdia e utilizar o
programa aplicativo que estiver associado ao mesmo para abrir e executar essa mdia. Alm disso,
se a mdia for do tipo editvel (.DOC, .RTF, .XLS, etc.), quando o aplicativo for fechado, o controle
verificar, automaticamente, se a mdia foi modificada e habilitar os botes de gravao e
cancelamento para o usurio gravar no banco de dados, caso deseje, a nova mdia modificada pelo
aplicativo associado. Por esta considervel razo, todos os bancos de dados manipulados por

2007 GAS Tecnologia

Captulo 12 - O GAS como ferramenta de desenvolvimento

471

aplicaes geradas pelo GAS-98 que utilizavam campos do tipo imagem tero de ser convertidos
para o novo formato. A Gas Tecnologia disponibiliza um pequeno utilitrio, que instalado em
conjunto com o GAS, que torna esta operao bastante simples. s executar este conversor
(CONVIMG.EXE), antes de qualquer adaptao no banco de dados, fornecendo as informaes
solicitadas para que o aplicativo cuide de toda a transformao do banco de dados.

12.8.1 Compatibilidade do campo multimdia com o Crystal Reports


Cabe ressaltar que, da forma como as imagens passaram a ser gravadas no campo multimdia do
GAS, os bancos de dados j existentes e utilizados nas aplicaes se tornaram incompatveis com o
Crystal Reports. Por essa razo, a Gas Tecnologia adotou o campo multimdia (gCpMM.OCX) para
que funcione da maneira a seguir:

se a mdia a ser inserida no campo for do tipo BMP, WMF ou DIB (que so os tipos que o Visual
Basic aceita gravar no banco de dados), o campo ser, automaticamente, gravado no formato
utilizado pelo Visual Basic como se estivesse vinculado a um controle Data Control. Isto assegura a
compatibilidade com o Crystal Reports;

os demais tipos de imagens (GIF, JPG, TIF, etc.), bem como arquivos de qualquer outro tipo de
mdia ou extenso, sero inseridos no formato proprietrio do GAS;

o projetista que j converteu o banco de dados para o GAS e estiver tendo problemas com
relatrios do Crystal Reports, poder utilizar o referido utilitrio conversor para retornar as imagens
ao formato anterior (GAS-98). Neste caso, dentro de um mesmo campo multimdia, em registros
diferentes, no poder haver outro tipo de mdia gravado, alm de imagens;

no momento da converso do banco de dados do GAS-98 para GAS, se desejar manter a


compatibilidade com o Crystal Reports, o projetista ter de selecionar a opo de tipo de imagem
BMP. Neste caso, embora mantenha a compatibilidade com relatrios do Crystal Reports, o banco de
dados no sofrer qualquer reduo de tamanho;

se o projetista desejar assegurar que o seu usurio s carregar mdias do tipo BMP, WMF ou
DIB na aplicao, a propriedade OnlyImageBMP dever ser ajustada para True (o default False)
durante a fase de projeto.

As recomendaes de converso aqui abordadas devem ser observadas somente se o projetista


estiver tendo problemas com o Crystal Reports para imprimir as imagens desses campos. Se esses

2007 GAS Tecnologia

472

GAS 2007 - Manual do Usurio

campos no estiverem sendo utilizados para impresso em relatrios do Crystal Reports,


recomendamos veementemente que o projetista converta as imagens do campo multimdia do GAS
para o formato JPG, que proporciona reduo drstica no tamanho do banco de dados e,
conseqentemente, um ganho considervel na performance da aplicao. O G-Reports no
afetado pelos formatos das imagens gravadas no banco de dados.
O campo multimdia dotado, ainda, de dois outros recursos importantes para facilitar a sua
manipulao:

foi criada a propriedade MediaName (read only) para permitir obter, programaticamente, o nome
da mdia que est gravada no campo. Observe que o nome da mdia retornado sem nenhum path
anexado. Veja um exemplo de utilizao abaixo:

NomeArqMidia$ = MMCampo(0).MediaName 'retorna: Foto1.jpg

foi criado o mtodo ExportMedia para exportar, programaticamente, o arquivo da mdia gravada
no campo. Este mtodo tem um parmetro opcional, que o nome completo (path+nome) do
arquivo a ser exportado. Se nenhum nome for passado como parmetro, a mdia exportada com o
nome original, dentro do diretrio temporrio configurado no sistema. Se passado um nome de
arquivo para exportao, este no necessita, obrigatoriamente, ser o mesmo que esteja gravado no
campo. Porm, deve ser tomado cuidado especial com a extenso que designa o tipo de arquivo que
est gravado no campo. Por exemplo, se existir um arquivo BMP gravado no campo multimdia e for
passado um parmetro para exportar tal arquivo como "C:\ARQUIVO.AVI", o arquivo ser exportado
corretamente, mas com extenso que no corresponde corretamente ao seu tipo.

Uma boa prtica obter o nome da mdia gravada por meio da propriedade MediaName e apurar
a extenso correta ou, se a troca de nome no for importante, anexar um path vlido de destino
frente do nome. Veja um exemplo de utilizao abaixo:
MMCampo(0).ExportMedia("C:\Arquivos Exportados\" +
MMCampo(0).MediaName)

12.9

Definindo mdulos para impressora fiscal


A compatibilidade dos aplicativos gerados pelo GAS com a Emisso de Cupom Fiscal fora
disponibilizada de forma a oferecer a maior flexibilidade possvel ao projetista. A seguir, exporemos as
mais diversas formas de se implementar a Emisso de Cupom Fiscal s aplicaes geradas.

Cabe, ainda, ressaltar que os nomes das tabelas citados nas explanaes abaixo so meramente
elucidativos, devendo o projetista, no entanto, seguir a filosofia de trabalho aqui estabelecida.

2007 GAS Tecnologia

Captulo 12 - O GAS como ferramenta de desenvolvimento

473

12.9.1 A primeira...
A primeira forma de compatibilizao de aplicaes geradas com o GAS com a Emisso de
Cupom Fiscal consiste em disponibilizar, como mostra a figura 12.6 abaixo, as definies de
Vendas, Itens de Venda e Pagamento em uma estrutura nica.

Figura 12.6

Para utilizar dessa primeira forma, o projetista dever guiar-se pelos procedimentos a seguir:

Definidas as estruturas das tabelas referentes Vendas, Itens de Venda e Pagamento na


definio da estrutura do banco de dados, devese inserir na rvore do projeto a janela de dados
correspondente tabela de Vendas e duas tabelas em grid correspondentes s tabelas de Itens de
Venda e Pagamento. O nico diferencial na definio desses mdulos em referncia aos
convencionais que deve-se marcar a opo "Cupom Fiscal" na aba Geral da janela de dados em
questo (Vendas), estabelecendo devidamente todas as tabelas auxiliares, lanamentos e processos
necessrios.

Na definio das tabelas auxiliares da tabela de Vendas, caso o projetista queira, porventura,
disponibilizar uma combobox na qual os dados exibidos (Nome e CGC/CPF, por exemplo) se diferem
dos dados a serem capturados (Cdigo), o projetista no dever se esquecer de selecionar a opo
"Forar relacionamento" com a tabela de Clientes. J na definio das tabelas auxiliares do grid de
Itens de Venda, o projetista dever "Forar relacionamento" com a tabela de Produtos em Estoque,
permitindo, assim, um perfeito decremento da quantidade de itens emitidos de seu respectivo
registro na tabela de Produtos em estoque. Agora, na definio das tabelas auxiliares do grid de
Pagamento, caso o projetista queira, porventura, disponibilizar uma combobox na qual os dados
exibidos (Descrio da forma de pgto, por exemplo) se diferem dos dados a serem capturados
(Cdigo), o projetista no dever se esquecer de selecionar a opo "Forar relacionamento" com a
tabela de Formas de pagamento.

Com o intuito de proporcionar maior flexibilidade ao projetista, foram criadas diversas variveis
de sistema especialmente para a Emisso de Cupom Fiscal, as quais sero de grande utilidade para
a definio dos lanamentos e processos dos mdulos em questo. Reporte-se ao tpico Variveis
de sistema, presente no Captulo 12 - O GAS como ferramenta de desenvolvimento para obter
maiores informaes.

A partir de ento, formata-se a tela de entrada de dados para a referida estrutura. Cabe ressaltar
que o nico vnculo da tabela de Vendas com a Emisso de Cupom Fiscal ocorre por intermdio da

2007 GAS Tecnologia

474

GAS 2007 - Manual do Usurio

opo "Cupom Fiscal" anteriormente citada, enquanto que os grids de Itens de Venda e Pagamento
so vinculados por intermdio de diversas propriedades presentes na janela de Ferramentas da tela.

Formatada a tela da tabela de Vendas e inseridos os grids necessrios, o projetista poder


reparar que, ao selecionar qualquer um dos grids, aparecero dois novos conjuntos de propriedades:
"ECF - Venda item" (a ser definido por meio do grid Itens de Venda) e "ECF - Forma pgto" (a ser
definido por meio do grid Pagamento).

Selecionando-se o grid de Itens de Venda, o projetista dever definir obrigatoriamente, nessa


primeira forma de compatibilizao, as propriedades "Cdigo do item", "Descrio do item", "Qde do
item", "Situao tributria", "Tipo de tributo" e "Valor item unitrio" do grupo "ECF - Venda item".

Se, porventura, no forem definidos contedos para as propriedades "Tipo desconto item" e
"Valor desconto item" do grupo "ECF - Venda item", o operador poder acionar a hot-key SHIFT-F12,
durante a insero dos itens de venda, para conceder um eventual desconto para o item corrente,
sendo exibida uma tela como a da figura 12.7 a seguir. O desconto poder ser alterado a qualquer
instante. No entanto, uma vez emitido o item de venda, a modificao do desconto no mais poder
ser executada para o referido item.

Figura 12.7

Selecionando-se o grid de Pagamento, o projetista dever definir obrigatoriamente, nessa


primeira forma de compatibilizao, as propriedades "Descrio forma pgto" e "Valor forma de pgto"
do grupo "ECF - Forma pgto". Apresentada a tela acima e se, porventura, no forem definidos
contedos para as propriedades "Acrscimo/desconto", "Tipo acrsc/desc" e "Valor acrsc/desc" do
grupo "ECF - Forma pgto", a hot-key SHIFT-F12 poder ser reutilizada pelo operador do sistema
para que seja concedido eventual acrscimo/ desconto para o cupom fiscal corrente, devendo ser
selecionado seu tipo por intermdio das telas subseqentes quela acima apresentada. O
acrscimo/desconto poder ser alterado a qualquer instante. No entanto, uma vez emitida a primeira
forma de pagamento e seu respectivo valor, a modificao do acrscimo/desconto no mais poder
ser executada para o cupom corrente.

O operador que estiver em qualquer mdulo vinculado Emisso de Cupom Fiscal por meio
dessa forma de compatibilizao, poder, a qualquer momento, efetuar a abertura de gaveta,
pressionando a hot-key CTRL-F12.

2007 GAS Tecnologia

Captulo 12 - O GAS como ferramenta de desenvolvimento

475

O projetista poder, ainda, incluir uma picturebox na tela de entrada de dados para que aquela
possa espelhar a impresso do cupom fiscal pela impressora fiscal. Para isso, basta ajustar a
propriedade "Retorno da ECF" da referida picturebox para 1 - Sim. Para reproduzir melhor a
impresso do cupom fiscal na referida picturebox, deve-se dar preferncia s fontes monoespaadas,
como a Courier New, e dimensionar sua largura para 50 posies, largura essa que tambm
utilizada nos cupons fiscais emitidos pela Bematech e que so compatveis com os da Yanco.

Concludos os passos acima relacionados, bastar que sejam inseridas as rotinas de apoio
ECF na rvore do projeto, de forma a facilitar o processo de manuteno da impressora fiscal pelos
usurios do sistema.

12.9.2 A segunda...
A segunda forma de compatibilizao de aplicaes geradas com o GAS com a Emisso de
Cupom Fiscal consiste em disponibilizar, como mostra a figura 12.8 abaixo, as definies de Vendas
e Itens de Venda em uma estrutura nica, habilitando um controle interno, via F12, para a efetivao
dos pagamentos.

O projetista poder utilizar-se dessa forma de compatibilizao para adequar o sistema gerado
TEF - Transferncia Eletrnica de Fundos Discada. Reporte-se para isso ao tpico Implementando
TEF - Transferncia Eletrnica de Fundos Discada, presente mais adiante neste captulo.

Figura 12.8

Para utilizar dessa segunda forma, o projetista dever guiar-se pelos procedimentos a seguir:
Definidas as estruturas das tabelas referentes Vendas e Itens de Venda na definio da
estrutura do banco de dados, deve-se inserir na rvore do projeto a janela de dados correspondente
tabela de Vendas e uma tabela em grid correspondente de Itens de Venda. O nico diferencial
na definio desses mdulos em referncia aos convencionais que deve-se marcar a opo
"Cupom Fiscal" na aba Geral da janela de dados em questo (Vendas), estabelecendo devidamente
todas as tabelas auxiliares, lanamentos e processos necessrios.

Na definio das tabelas auxiliares da tabela de Vendas, caso o projetista queira, porventura,
disponibilizar uma combobox na qual os dados exibidos (Nome e CGC/CPF, por exemplo) se diferem
dos dados a serem capturados (Cdigo), o projetista no dever se esquecer de selecionar a opo
"Forar relacionamento" com a tabela de Clientes. J na definio das tabelas auxiliares do grid de
Itens de Venda, o projetista dever "Forar relacionamento" com a tabela de Produtos em Estoque,
permitindo, assim, um perfeito decremento da quantidade de itens emitidos de seu respectivo

2007 GAS Tecnologia

476

GAS 2007 - Manual do Usurio

registro na tabela de Produtos em estoque.

Com o intuito de proporcionar maior flexibilidade ao projetista, foram criadas diversas variveis
de sistema especialmente para a Emisso de Cupom Fiscal, as quais sero de grande utilidade para
a definio dos lanamentos e processos dos mdulos em questo. Reporte-se ao tpico Variveis
de sistema, presente no Captulo 12- O GAS como ferramenta de desenvolvimento para obter
maiores informaes.
A partir de ento, formata-se a tela de entrada de dados para a referida estrutura. Cabe ressaltar
que o nico vnculo da tabela de Vendas com a Emisso de Cupom Fiscal ocorre por intermdio da
opo "Cupom Fiscal" anteriormente citada, enquanto que o grid de Itens de Venda vinculado por
intermdio de diversas propriedades presentes na janela de Ferramentas da tela.

Formatada a tela da tabela de Vendas e inserido o grid necessrio tabela de Itens de Venda, o
projetista poder reparar que, ao selecionar o referido grid, aparecero dois novos conjuntos de
propriedades: "ECF - Venda item" e "ECF - Forma pgto", devendo, nessa segunda forma de
compatibilizao com a Emisso de Cupom Fiscal, ambos serem definidos por meio do grid Itens de
Venda.

Como essa segunda forma de compatibilizao no apresenta um grid especfico para os


pagamentos, o controle interno para a efetivao desse (F12) ser disparado por intermdio da
definio obrigatria, no prprio grid de Itens de Venda, da propriedade "Descrio forma pgto" do
grupo "ECF - Forma pgto", propriedade tal que tornar-se- habilitada para o grid de Itens de Venda
enquanto outro no for expressamente designado para os pagamentos. Selecionando-se o grid de
Itens de Venda, o projetista dever definir obrigatoriamente, nessa segunda forma de
compatibilizao, as propriedades "Cdigo do item", "Descrio do item", "Qde do item", "Situao
tributria", "Tipo de tributo" e "Valor item unitrio" do grupo "ECF - Venda item", alm da propriedade
Descrio forma pgto do grupo "ECF - Forma pgto". Se, porventura, no forem definidos contedos
para as propriedades "Tipo desconto item" e "Valor desconto item" do grupo "ECF - Venda item", o
operador poder acionar a hot-key SHIFT-F12, durante a insero dos itens de venda, para conceder
um eventual desconto para o item corrente, sendo exibida uma tela como a da figura 12.9 a seguir. O
desconto poder ser alterado a qualquer instante. No entanto, uma vez emitido o item de venda, a
modificao do desconto no mais poder ser executada para o referido item.

Figura 12.9

Ao ser acionada a hot-key F12 no grid de Itens de Venda na aplicao final, surgir uma tela
como a da figura 12.10 a seguir para que o operador do sistema possa definir o pagamento dos itens
de venda, sendo apresentadas as descries de formas de pagamento, a partir da tabela de Formas
de pagamento, por meio da listbox presente nessa tela. Tambm devero ser informados, por

2007 GAS Tecnologia

Captulo 12 - O GAS como ferramenta de desenvolvimento

intermdio do campo Valor do pagamento, os valores referentes a cada uma


pagamento utilizadas.

477

das formas de

Figura 12.10

Caso o projetista deseje suprimir o campo Acrscimo/Desconto da janela de pagamentos, a


propriedade Mostra Acresc/Desc poder para isso ser utilizada. O projetista poder ainda vincul-la a
um campo lgico especfico em uma tabela de parmetros, deixando a cargo do usurio do aplicativo
final gerado tomar a deciso de exibir ou no. Caso o campo no seja exibido, o operador poder
acionar uma janela especfica de Acrscimo / Desconto, utilizandose da hot-key SHIFT-F12.

Como supracitado, apresentada a tela acima, a hot-key SHIFT-F12 poder ser reutilizada pelo
operador do sistema para que seja concedido eventual acrscimo/desconto para o cupom fiscal
corrente, devendo ser selecionado seu tipo por intermdio das telas subseqentes quela acima
apresentada. O acrscimo/ desconto poder ser alterado a qualquer instante. No entanto, uma vez
emitida a primeira forma de pagamento e seu respectivo valor, a modificao do acrscimo/desconto
no mais poder ser executada para o cupom corrente.

O operador que estiver em qualquer mdulo vinculado Emisso de Cupom Fiscal por meio
dessa forma de compatibilizao, poder, a qualquer momento, efetuar a abertura de gaveta,
pressionando a hot-key CTRL-F12.

O projetista poder, ainda, incluir uma picturebox na tela de entrada de dados para que aquela
possa espelhar a impresso do cupom fiscal pela impressora fiscal. Para isso, basta ajustar a
propriedade "Retorno da ECF" da referida picturebox para 1 - Sim. Para reproduzir melhor a
impresso do cupom fiscal na referida picturebox, deve-se dar preferncia s fontes monoespaadas,
como a Courier New, e dimensionar sua largura para 50 posies, largura essa que tambm
utilizada nos cupons fiscais emitidos pela Bematech e que so compatveis com os da Yanco.
Concludos os passos acima relacionados, bastar que sejam inseridas as rotinas de apoio ECF na
rvore do projeto, de forma a facilitar o processo de manuteno da impressora fiscal pelos usurios
do sistema.

12.9.3 A terceira
A terceira forma de compatibilizao de aplicaes geradas com o GAS com a Emisso de
Cupom Fiscal consiste em disponibilizar, como mostra a figura 12.11 abaixo, um processo
prdefinido para efetuar toda essa tarefa.

2007 GAS Tecnologia

478

GAS 2007 - Manual do Usurio

O projetista poder utilizar-se dessa forma de compatibilizao para adequar o sistema gerado
TEF - Transferncia Eletrnica de Fundos Discada. Reporte-se para isso ao tpico Implementando
TEF - Transferncia Eletrnica de Fundos Discada, presente mais adiante neste captulo.

Figura 12.11

Para utilizar dessa terceira forma, o projetista dever guiar-se pelos procedimentos a seguir:
Definidas as estruturas das tabelas referentes Vendas e Itens de Venda na definio da
estrutura do banco de dados, deve-se inserir na rvore do projeto o processo pr-definido
responsvel por tal compatibilizao. O nico diferencial na definio desse mdulo em referncia
aos processos pr-definidos convencionais que deve-se marcar a opo "Cupom Fiscal" na aba
Geral do mdulo em questo, fato que proporcionar a possibilidade de se definir lanamentos e
processos a partir do denominado cabealho do processo prdefinido. Assim sendo, deve-se
estabelecer devidamente no s as tabelas auxiliares, mas tambm todos os lanamentos e
processamentos necessrios, tais como Lanamento da Venda, Lanamento do item, Processo de
atualizao do total da venda, etc.

Com o intuito de proporcionar maior flexibilidade ao projetista, foram criadas diversas variveis
de sistema especialmente para a Emisso de Cupom Fiscal, as quais sero de grande utilidade para
a definio dos lanamentos e processos do mdulo em questo, como mostra as telas das figuras
12.12, 12.13 e 12.14 a seguir. Reporte-se ao tpico Variveis de sistema, presente no Captulo 12 O GAS como ferramenta de desenvolvimento para obter maiores informaes.

Figura 12.12

Figura 12.13

Figura 12.14

A partir de ento, formata-se a tela do referido processo pr-definido, como mostra a tela da
figura 12.11, viabilizando a entrada de dados para a Emisso de Cupom Fiscal. Cabe ressaltar que o
vnculo do processo pr-definido em questo com a ECF ocorre por intermdio de diversas

2007 GAS Tecnologia

Captulo 12 - O GAS como ferramenta de desenvolvimento

479

propriedades presentes na janela de Ferramentas da tela e por meio da opo "Cupom Fiscal"
anteriormente citada.

No decorrer da formatao da tela, dever ser inserido pelo menos um gMask para que sejam
definidos os dois novos conjuntos de propriedades: "ECF - Venda item" e "ECF - Forma pgto". Como
poderemos constatar mais adiante, de forma a auxiliar no estabelecimento das tabelas auxiliares do
mdulo em questo, sugerimos a definio da propriedade Apelido para o gMask principal.
Sugerimos, ainda, ao projetista que insira gMasks adicionais contendo frmulas para representarem
variveis importantes ao operador, tais como Quantidade dos itens, Subtotal, etc.

Ao contrrio da primeira forma de compatibilizao, a terceira no apresenta um controle


especfico para os pagamentos. Assim sendo, o controle interno para a efetivao dos pagamentos
(F12) ser disparado por intermdio da definio obrigatria, no prprio gMask que comandar a
compatibilizao, da propriedade "Descrio forma pgto" do grupo "ECF - Forma pgto", propriedade
tal que sempre habilitar-se- para tal gMask quando utilizada essa terceira forma de
compatibilizao.

Selecionando-se o gMask que comandar a definio dos conjuntos de novas propriedades, o


projetista dever definir obrigatoriamente, nessa terceira forma de compatibilizao, as propriedades
"Cdigo do item", "Descrio do item", "Situao tributria", "Tipo de tributo" e "Valor item unitrio"
do grupo "ECF - Venda item", alm da propriedade "Descrio forma pgto" do grupo "ECF - Forma
pgto", conforme elucidado acima.
Se, porventura, no forem definidos contedos para as propriedades "Tipo desconto item" e
"Valor desconto item" do grupo "ECF - Venda item", o operador poder acionar a hot-key SHIFT-F12,
durante a insero dos itens de venda, no gMask principal na aplicao final para conceder um
eventual desconto para o item corrente, sendo exibida uma tela como a da figura 12.15 a seguir. O
desconto poder ser alterado a qualquer instante. No entanto, uma vez emitido o item de venda, a
modificao do desconto no mais poder ser executada para o referido item.

Figura 12.15

Se, porventura, no for definido contedo para a propriedade "Qde do item", tambm do grupo
"ECF - Venda Item", o operador poder acionar a hot-key * (asterisco), no gMask principal na
aplicao final, aps a digitao da referida quantidade, indicando, assim, a quantidade dos itens de
venda.

Ao ser acionada a hot-key F12, ainda no gMask principal na aplicao final, surgir uma tela

2007 GAS Tecnologia

480

GAS 2007 - Manual do Usurio

como a da figura 12.16 a seguir para que o operador do sistema possa definir o pagamento dos itens
de venda, sendo apresentadas as descries de formas de pagamento, a partir da tabela de Formas
de pagamento, por meio da listbox presente nessa tela. Tambm devero ser informados, por
intermdio do campo Valor do pagamento, os valores referentes a cada uma das formas de
pagamento utilizadas.

Figura 12.16

Caso o projetista deseje suprimir o campo Acrscimo/Desconto da janela de pagamentos, a


propriedade Mostra Acresc/Desc poder para isso ser utilizada. O projetista poder ainda vincul-la a
um campo lgico especfico em uma tabela de parmetros,deixando a cargo do usurio do aplicativo
final gerado tomar a deciso de exibir ou no. Caso o campo no seja exibido, o operador poder
acionar uma janela especfica de Acrscimo / Desconto, utilizandose da hot-key SHIFT-F12.

Como supracitado, apresentada a tela acima, a hot-key SHIFT-F12 poder ser reutilizada pelo
operador do sistema para que seja concedido eventual acrscimo/desconto para o cupom fiscal
corrente, devendo ser selecionado seu tipo por intermdio das telas subseqentes quela acima
apresentada. O acrscimo/ desconto poder ser alterado a qualquer instante. No entanto, uma vez
emitida a primeira forma de pagamento e seu respectivo valor, a modificao do acrscimo/desconto
no mais poder ser executada para o cupom corrente.

O operador que estiver em qualquer mdulo vinculado Emisso de Cupom Fiscal por meio
dessa forma de compatibilizao, poder, a qualquer momento, efetuar a abertura de gaveta,
pressionando a hot-key CTRL-F12.

O projetista poder, ainda, incluir uma picturebox na tela de entrada de dados para que aquela
possa espelhar a impresso do cupom fiscal pela impressora fiscal. Para isso, basta ajustar a
propriedade "Retorno da ECF" da referida picturebox para 1 - Sim. Para reproduzir melhor a
impresso do cupom fiscal na referida picturebox, deve-se dar preferncia s fontes monoespaadas,
como a Courier New, e dimensionar sua largura para 50 posies, largura essa que tambm
utilizada nos cupons fiscais emitidos pela Bematech e que so compatveis com os da Yanco.

Caso queira, o projetista poder fazer uso das propriedades Ao Cancela Cupom e Ao
Cancela Item (consulte o Captulo 13 - Propriedades dos objetos de tela), prevendo, por exemplo, o
cancelamento de cupons e itens de venda no prprio banco de dados, respectivamente, dentre
outras providncias que o projetista julgar necessrias.
Aps a formatao da tela em questo, o projetista dever retornar, ento, definio das

2007 GAS Tecnologia

Captulo 12 - O GAS como ferramenta de desenvolvimento

481

tabelas auxiliares deste mdulo para que possa selecionar a opo "Forar relacionamento" do
gMask (Apelido) para a tabela de Produtos em estoque (Cdigo), permitindo, assim, um perfeito
decremento da quantidade de itens emitidos de seu respectivo registro na tabela de Produtos em
estoque.

Concludos os passos acima relacionados, bastar que sejam inseridas as rotinas de apoio
ECF na rvore do projeto, de forma a facilitar o processo de manuteno da impressora fiscal pelos
usurios do sistema.

12.9.4 A quarta...
A quarta forma de compatibilizao de aplicaes geradas com o GAS com a Emisso de Cupom
Fiscal consiste em disponibilizar, como mostram as figuras 12.17 e 12.18 abaixo, oramentos para
que sejam emitidos, s ento e por intermdio de relatrios, os cupons fiscais.

Figura 12.17

Figura 12.18

O projetista dever utilizar a estrutura de tabelas Oramentos, Itens do Oramento e Pagamento


do Oramento (em uma estrutura nica) e Vendas, Itens de Venda e Pagamento da Venda (tambm
em uma estrutura nica), como mostra a figura 12.19 a seguir.

Figura 12.19

Nessa quarta forma, o projetista poder adotar os mais diversos caminhos. Estaremos expondo o
mais completo de se utilizar nessa quarta forma de compatibilizao com a Emisso de Cupom
Fiscal, cabendo ao projetista avaliar os mdulos que julga imprescindveis. Assim, o projetista dever
guiar-se pelos procedimentos a seguir:

Definidas as estruturas das tabelas referentes aos Oramentos, Itens do Oramento, Pagamento
do Oramento, Vendas, Itens de Venda e Pagamento da Venda na definio da estrutura do banco
de dados, deve-se inserir na rvore do projeto as janelas de dados correspondentes s tabelas de
Oramentos e Vendas, bem como as tabelas em grid correspondentes s demais tabelas aqui
envolvidas. O projetista dever definir tais mdulos de modo convencional, no devendo selecionar a
2007 GAS Tecnologia

482

GAS 2007 - Manual do Usurio

opo "Cupom Fiscal" para os mdulos acima relacionados, como ocorre com as primeiras formas de
compatibilizao com a Emisso de Cupom Fiscal. Alm disso, dever estabelecer devidamente
todas as tabelas auxiliares, lanamentos e processos necessrios.

A estrutura referente aos Oramentos funcionar de forma independente da estrutura de


Vendas, no efetuando quaisquer lanamentos ou processos nesta ltima. Se, porventura, o
operador do sistema quiser converter um oramento qualquer em venda efetiva, aquele poder
utilizar de um processo pr-definido elaborado pelo projetista, emitindo o cupom fiscal ao seu
trmino. A figura 12.18 reflete parte desse processo, o qual detalharemos mais adiante com maior
profundidade.

Cabe, aqui, uma relevante ressalva ao que acima expomos: fica a critrio do projetista fazer uso
ou no de um processo pr-definido para converter os oramentos em vendas efetivas. Visto que o
GAS cede total abertura para o desenvolvimento de seus aplicativos, o projetista pode gerar
dependncia entre as estruturas de Oramentos e Vendas. Para exemplificar, o projetista poderia
converter automaticamente os oramentos em vendas efetivas por intermdio de lanamentos e
processos definidos diretamente nos referidos mdulos (abas Lanamentos e Processos,
respectivamente), ficando a emisso do cupom fiscal, depois de incluso o referido oramento (e,
portanto, criada a venda efetiva), a cargo do operador do sistema, bastando para isso acessar o
mdulo de emisso de cupom fiscal. Compare a figura 12.17 com a 12.18 e repare que a primeira
reflete parte do processo aqui ressaltado.

Depois da relevante ressalva supracitada, voltemos ao caminho enriquecido de recursos dessa


quarta forma de compatibilizao. Na definio das tabelas auxiliares da tabela de Oramentos e
Vendas, caso o projetista queira, porventura, disponibilizar uma combobox na qual os dados exibidos
(Nome e CGC/CPF, por exemplo) se diferem dos dados a serem capturados (Cdigo), o projetista
no dever se esquecer de selecionar a opo "Forar relacionamento" com a tabela de Clientes. J
na definio das tabelas auxiliares do grid de Itens de Venda, o projetista dever "Forar
relacionamento" com a tabela de Produtos em Estoque, permitindo, assim, o correto decremento da
quantidade de itens emitidos de seu respectivo registro na tabela de Produtos em estoque. Agora, na
definio das tabelas auxiliares do grid de Pagamento do Oramento e Pagamento da Venda, caso o
projetista queira, porventura, disponibilizar uma combobox na qual os dados exibidos (Descrio da
forma de pgto, por exemplo) se diferem dos dados a serem capturados (Cdigo), o projetista no
dever se esquecer de selecionar a opo "Forar relacionamento" com a tabela de Formas de
pagamento.

Caso o projetista no queira fazer uso de processos pr-definidos para converter os Oramentos
em Vendas, utilizando de lanamentos e processos definidos diretamente nos referidos mdulos
(abas Lanamentos e Processos, respectivamente), o projetista dever "Forar relacionamento" com
a tabela de Produtos em Estoque, na definio das tabelas auxiliares do grid de Itens do Oramento,
permitindo, assim, o correto decremento da quantidade de itens emitidos de seu respectivo registro
na tabela de Produtos em estoque.

2007 GAS Tecnologia

Captulo 12 - O GAS como ferramenta de desenvolvimento

483

Com o intuito de proporcionar maior flexibilidade ao projetista, foram criadas diversas variveis
de sistema especialmente para a Emisso de Cupom Fiscal, as quais sero de grande utilidade para
a definio dos lanamentos e processos dos mdulos em questo. Reporte-se ao tpico Variveis
de sistema, presente no Captulo 12 - O GAS como ferramenta de desenvolvimento para
obter maiores informaes.

A partir de ento, formata-se a tela de entrada de dados para as referidas estruturas. Cabe
ressaltar que tais mdulos no tm quaisquer vnculos com a Emisso de Cupom Fiscal. Como
descreveremos mais adiante, o projetista dever disponibilizar relatrios e sub-relatrios, fazendo uso
de diversas propriedades presentes na janela de Ferramentas da tela, para proporcionar a
compatibilizao do aplicativo final com a Emisso de Cupom Fiscal.

Formatada a tela da tabela de Oramentos e Vendas, o projetista dever inserir, na rvore do


projeto, os mdulos responsveis pela Emisso de Cupom Fiscal propriamente dita: 1.quatro
processos pr-definidos, os quais convertero os Oramentos, Itens do Oramento e Pagamento do
Oramento em Vendas, Itens de Venda e Pagamento da Venda, respectivamente. O primeiro dos
processos pr-definidos servir apenas de cabealho para os demais, permitindo o acesso do
operador do sistema converso aqui abordada. A estrutura dever assemelhar-se com aquela
disponibilizada na figura 12.18, estrutura tal que detalharemos com mais profundidade a seguir.
2.um relatrio e dois sub-relatrios do GReports para que as vendas efetivas sejam emitidas como
Cupom Fiscal. Tais subrelatrios sero vinculados aos grupos de propriedades referentes Emisso
de Cupom Fiscal, como veremos mais adiante. A estrutura de relatrios e sub-relatrios em questo
dever ser inserida aps os processos pr-definidos de converso e sob o processo pr-definido
como cabealho dos demais, como mostra a tela representada pela figura 12.18 ao topo desse
tpico.

Ressaltamos, aqui, que o projetista no necessita expressamente disponibilizar tabelas


auxiliares e nem deve, muito menos, selecionar a opo "Cupom Fiscal" para o cabealho, visto que
estamos abordando a quarta forma de compatibilizao com a Emisso de Cupom Fiscal. No
entanto, ao formatar a tela do cabealho, tela essa que ceder acesso ao operador do sistema
execuo aos processos e emisso do cupom fiscal, o projetista poder disponibilizar uma combobox
para que sejam exibidos os oramentos existentes e para que seja selecionado aquele que ser
convertido efetivamente em venda. Para que o projetista possa estabelecer, mais adiante, a
necessria condio para processar o registro, deve-se definir um contedo para a propriedade
Apelido, como mostra a figura 12.20 a seguir. Caso contrrio, todos os oramentos sero convertidos
em vendas efetivas ao acionar o mdulo de converso em questo. Figura 12.20

Inserido o primeiro processo pr-definido abaixo daquele denominado cabealho, o projetista


dever estabelecer todas as informaes necessrias, inclusive as tabelas auxiliares, lanamentos e
processos para o mdulo em questo, como mostram as figuras 12.21, 12.22 e 12.23 a seguir. O

2007 GAS Tecnologia

484

GAS 2007 - Manual do Usurio

projetista poder, ainda, habilitar o processo pr-definido para alterar o campo (flag) Convertido em
venda da tabela de Oramentos para que, dessa forma, mantenha-se o controle necessrio sobre a
referida converso.

Figura 12.21

Figura 12.22

Figura 12.23

Alm dos parmetros acima especificados, o projetista dever estabelecer, na aba Opes do
mdulo em questo, uma condio para que, por intermdio da combobox disponibilizada durante a
formatao da tela, somente os oramentos selecionados sejam convertidos em vendas efetivas.
Para efetuar tal processo, basta clicar sobre o boto extensor (com reticncias) do campo "Condio
para processar o registro". Na tela de montagem da expresso, o campo Campo dever ser
preenchido com o campo da tabela bsica que representa o nmero do oramento (em nosso caso,
Orcamento![Nmero do oramento]), enquanto que no campo "Segundo operando" dever ser
selecionado o apelido dado combobox disponibilizada na tela (em nosso caso,
Numero_do_orcamento), complementando com o Operador = (igual).
Abaixo deste mdulo, devero ser inseridos dois outros processos pr-definidos que serviro
para que os Itens do Oramento e Pagamento do Oramento sejam convertidos. Da mesma forma
como o item anterior, o projetista dever estabelecer todas as informaes necessrias, inclusive as
tabelas auxiliares, lanamentos e processos para os mdulos em questo, como mostram as figuras
12.24, 12.25, 12.26, 12.27, 12.28 e 12.29 a seguir:

Figura 12.24

Figura 12.25

Figura 12.26

2007 GAS Tecnologia

Captulo 12 - O GAS como ferramenta de desenvolvimento

485

Figura 12.27

Figura 12.28

Figura 12.29

Acessando a aba Opes de cada um dos mdulos em questo, o projetista dever estabelecer
a expresso que define a ligao dos mesmos com o processo pr-definido pai, selecionando os
devidos campos que se encontram nas listas "Cps do filho" e "Cps do pai", como mostram as figuras
12.30 e 12.31 abaixo.

Figura 12.30

Figura 12.31

A partir de ento, o projetista dever definir a estrutura de relatrio e sub-relatrios do GReports


responsvel pela emisso, como Cupons Fiscais, das vendas efetivas. O nico diferencial na
definio do relatrio principal em referncia aos relatrios convencionais que deve-se marcar a
opo "Cupom Fiscal" na aba Geral do mdulo em questo. Acessando a aba Opes de cada um
dos sub-relatrios durante suas respectivas definies, o projetista dever estabelecer a expresso
que define a ligao dos mesmos com o relatrio pai, selecionando os devidos campos que se
encontram nas listas "Cps do filho" e "Cps do pai", como mostram as telas das figuras 12.32 e 12.33
a seguir. Para todos os mdulos da estrutura aqui citada, o projetista poder estabelecer, ainda, as
devidas tabelas auxiliares que, porventura, julgar necessrias, tais como Clientes, Produtos em
Estoque, Formas de Pagamento, etc.

Figura 12.32

Figura 12.33

2007 GAS Tecnologia

486

GAS 2007 - Manual do Usurio

Durante a formatao do relatrio principal, devero ser inseridos apenas dois subrelatrios, por
intermdio do boto apresentado a seguir, presente na tela de Ferramentas de relatrio. Inseridos os
sub-relatrios necessrios, o projetista poder reparar que, ao selecionar qualquer um dos
sub-relatrios, aparecero dois novos conjuntos de propriedades: "ECF - Venda item" e "ECF Forma pgto", cada um deles definidos por subrelatrios diferentes.

BOTO

Selecionando-se o primeiro sub-relatrio, o projetista dever definir obrigatoriamente, nessa


quarta forma de compatibilizao, as propriedades "Cdigo do item", "Descrio do item", "Qde do
item", "Situao tributria", "Tipo de tributo" e "Valor item unitrio" do grupo "ECF - Venda item".

Selecionando-se o segundo sub-relatrio, o projetista dever definir obrigatoriamente, nessa


quarta forma de compatibilizao, as propriedades "Descrio forma pgto" e "Valor forma de pgto" do
grupo "ECF - Forma pgto".

Nessa quarta forma de compatibilizao com a Emisso de Cupom Fiscal, o operador do


aplicativo final no poder fazer uso das hotkeys SHIFT-F12, para definio de acrscimo - cupom
fiscal - e desconto - cupom fiscal e item de cupom, F12, para definio das formas e valores de
pagamento, e CTRL-F12, para abertura de gaveta, visto que tais definies no so estabelecidas
durante a emisso propriamente dita e, sim, por intermdio de tabelas ou rotinas, acessveis ou no
ao operador, especificadas pelo projetista em tempo de projeto. Da mesma forma, o projetista no
poder disponibilizar uma picturebox na tela de entrada de dados para que aquela possa espelhar a
impresso do cupom fiscal pela impressora fiscal. Diferente do que ocorre com as formas anteriores
de compatibilizao, a emisso nessa quarta forma no ocorre de modo on-line e, sim, somente
quando acessada a estrutura de processos pr-definidos e relatrios responsveis por tal emisso.

Concludos os passos acima relacionados, bastar que sejam inseridas as rotinas de apoio
ECF na rvore do projeto, de forma a facilitar o processo de manuteno da impressora fiscal pelos
usurios do sistema.

12.9.5 Implementando TEF - Transferncia Eletrnica de Fundos discada


O GAS permite ao projetista implementar a TEF - Transferncia Eletrnica de Fundos Discada
nos aplicativos gerados, quando utilizadas a segunda ou terceira formas de compatibilizao com a
ECF, explanadas anteriormente.

2007 GAS Tecnologia

Captulo 12 - O GAS como ferramenta de desenvolvimento

487

Para utilizar-se da TEF Discada, tanto em tempo de projeto como no aplicativo final gerado, o
projetista dever fazer uso, ou mesmo necessitar por diversas vezes, dos gerenciadores padro
para TEF Discada, fornecidos pelas operadoras de crdito. Informaes a esse respeito, podero ser
obtidas junto quelas operadoras, bem como informaes de instalao e utilizao. Para
implementar a TEF Discada, o projetista dever primeiramente utilizar-se da propriedade
"TEF/Cheque Eletrnico", que indicar se a forma de pagamento necessitar ou no de
comunicao com os gerenciadores padro. O segundo passo para habilitar a utilizao da TEF
Discada a insero do mdulo "Configuraes para TEF" na rvore do projeto, mdulo o qual
abordaremos mais adiante.
A indicao da propriedade em questo poder ser efetuada por intermdio, por exemplo, de um
campo da tabela Formas de pagamento, funo, constante ou varivel. Reporte-se ao Captulo 13 Propriedades dos Objetos de Tela para obter maiores informaes sobre a propriedade em
questo. Em nosso exemplo, como mostra a figura 12.34, acresceremos o campo TEF Cheque
eletrnico na tabela de Formas de pagamento.

Figura 12.34

Uma vez que o operador j poder determinar quais formas de pagamento faro comunicao
com os gerenciadores padro, essa comunicao ser habilitada automaticamente, no aplicativo final
gerado, quando selecionada uma dessas formas de pagamento, como mostrado na figura 12.35 a
seguir.

Figura 12.35

Ao selecion-las, caso exista mais de um gerenciador padro instalado, o operador poder


selecionar, na lista de gerenciadores apresentados, aquele que deseja utilizar. Escolhido o
gerenciador, ser apresentada tela como a das figuras 12.36 e 12.37.

Figura 12.36

Figura 12.37

Aberta a interface do gerenciador padro, o operador ter acesso a todas as funes operacionais
do mesmo, ficando a cargo do gerenciador a comunicao com a operadora de crdito.

2007 GAS Tecnologia

488

GAS 2007 - Manual do Usurio

Cabe ressaltar que a forma de pagamento Cheque eletrnico funciona apenas como consulta,
no impedindo que, mesmo no caso de uma resposta negativa para o cheque em questo, o
operador d continuidade venda em andamento.

Conforme exigncia das administradoras de crdito para compatibilizao com TEF, o aplicativo
final gerado se responsabilizar pela exibio de toda e qualquer mensagem de retorno do
gerenciador padro utilizado, sendo que, em algumas das vezes, deixar a mensagem em exibio
por no mnimo 5 segundos, dependendo do tipo e status da transao realizada. O mdulo "
Configuraes para TEF", citado anteriormente, viabilizar o acesso s configuraes
administrativas do gerenciador padro, permitindo incluir, excluir, acessar e configurar esses
gerenciadores, como mostra a tela da figura 12.38.

Figura 12.38

12.9.6 Suporte a impressora Daruma


Adicionado suporte impressora fiscal Daruma, mantendo-se compatibilidade com todo o cdigo
j existente de impressora fiscal. Possibilidade tambm de utilizao dessa impressora com mdulos
TEF. As rotinas de emisso fiscal tambm foram remodeladas e tero nomes nicos. Sendo assim,
um mesmo cdigo escrito manualmente pelo programador funcionar para impressoras Bematech,
Daruma ou Yanco.

12.10 Mdulos de apoio Emisso de Cupom


Os mdulos de apoio Emisso de Cupom Fiscal, como mostra a tela da figura 12.39 abaixo,
tm por finalidade proporcionar maior flexibilidade na manuteno da impressora fiscal, efetuando
diversas operaes fiscais, tais como fechamento de caixa, alterao de horrio de vero, sangria,
cancelamento de itens, etc.

Figura 12.39

2007 GAS Tecnologia

Captulo 12 - O GAS como ferramenta de desenvolvimento

489

12.10.1 Modelo da impressora


Este mdulo permite ao operador da aplicao final selecionar o modelo de impressora fiscal que
deseja utilizar, podendo ser selecionado os modelos Bematech ou Yanco.

12.10.2 Porta de conexo


Este mdulo permite ao operador da aplicao final redirecionar a sada da impressora fiscal para
uma determinada porta de conexo (COM1, COM2, COM3, etc) disponvel.

12.10.3 Horrio de vero


Este mdulo permite ao operador da aplicao final alterar o atributo de horrio de vero da
impressora fiscal. A cada vez que o operador disparar esta opo, ele estar realizando um
"chaveamento" entre os horrios de vero e convencional.

12.10.4 Configuraes para TEF


Este mdulo permite ao administrador da aplicao final incluir, excluir, acessar e configurar os
gerenciadores padro que sero utilizados na comunicao TEF - Transferncia Eletrnica de
Fundos Discada. Cabe ressaltar que os gerenciadores padro devero ser instalados
adequadamente, conforme documentao de cada operadora de crdito.
Esses gerenciadores so necessrios em virtude dessa compatibilizao ser efetuada sobre o
TEF Discada e no TEF Dedicada.

12.10.5 Abertura de caixa


Este mdulo permite ao operador da aplicao final efetuar a abertura do caixa, emitindo
automaticamente uma Leitura "X" e enviando o contedo do grande total para a memria fiscal.

12.10.6 Fechamento de caixa


Este mdulo permite ao operador da aplicao final fechar o caixa, caracterizando, assim, o fim do
dia. Aps o acionamento desta opo pelo operador, um relatrio "Z" ser emitido automaticamente,
enviando o contedo do grande total para a memria fiscal e zerando todos os totalizadores parciais.
Visto que no h horrio pr-estabelecido para que o caixa seja fechado, caso isto no seja
executado at as 02:00 H do dia seguinte, a Bematech entrar automaticamente em Reduo Z,
cancelando o cupom atual e, obviamente, seus respectivos itens de venda.

12.10.7 Leitura X
Este mdulo permite ao operador da aplicao final imprimir o relatrio "X", cuja funo principal
a de gerar um parecer exato do movimento dirio da impressora at o momento em que emitido.

2007 GAS Tecnologia

490

GAS 2007 - Manual do Usurio

12.10.8 Reduo Z
Este mdulo permite ao operador da aplicao final emitir um relatrio "Z", cuja funo principal
a de gerar um parecer do movimento dirio da impressora at o momento em que emitido, alm de
efetuar a gravao efetiva de todos os totalizadores na memria no voltil.

12.10.9 Sangria
Este mdulo permite ao operador da aplicao final retirar quantias do caixa, efetuando, para isso,
a abertura de gaveta automaticamente.

12.10.10Suprimentos
Este mdulo permite ao operador da aplicao final inserir quantias no caixa para que possam
servir de troco, etc, efetuando, para isso, a abertura de gaveta automaticamente.

12.10.11Cancela item
Este mdulo permite ao operador da aplicao final cancelar os ltimos 100 itens impressos do
cupom fiscal corrente, sendo 0 (zero) o ltimo item vendido, como mostra a tela da figura 12.40 a
seguir.

Figura 12.40

12.10.12Cancela cupom
Este mdulo permite ao operador da aplicao final cancelar exclusivamente o atual ou ltimo
cupom emitido, sendo imprescindvel que o operador abra (disponha visualmente), na aplicao final,
o cupom fiscal a ser cancelado. Um outro cancelamento s poder ser solicitado aps a emisso de
um outro cupom.

2007 GAS Tecnologia

Captulo

XIII
Captulo 13 - Propriedades dos objetos de tela

492

13

GAS 2007 - Manual do Usurio

Captulo 13 - Propriedades dos objetos de tela


No Captulo 5 - Operando o GAS deste manual foi explicada detalhadamente a utilizao do
Editor de Recursos do GAS na elaborao de telas para a entrada de dados e barra de
ferramentas. Uma das partes mais importantes do editor de recursos a sua janela de ferramentas
de tela, por intermdio da qual se pode inserir objetos na tela e ajustar as suas propriedades via lista
de propriedades. O objetivo deste captulo descrever esta ltima parte, ou seja, as propriedades
que podem ser designadas para cada tipo de objeto.

13.1

Lista das propriedades


Sempre que um objeto selecionado na tela (ou na combobox que aparece na parte superior da
janela de ferramentas de tela), a lista de propriedades enchida com as propriedades vlidas para
este objeto. Esta lista aparece, normalmente, por default, categorizada segundo a natureza da
propriedade. Se o projetista desejar, poder utilizar o boto que aparece a seguir para mostrlas
alfabeticamente ordenadas.

boto para categorizar as propriedades

Algumas propriedades podem ser ajustadas diretamente na prpria lista. Outras possuem um
boto extensor marcado com reticncias (...) que pode ser utilizado para ativar algum dilogo padro,
como, por exemplo, para seleo de fontes, cores ou mesmo para ativar o Editor de Programas do
GAS, usado para escrever alguma funo a ser integrada ao cdigo fonte a ser gerado.

A seqncia a ser obedecida para o ajuste de propriedades a seguinte:


selecionar um ou mais objetos na tela;
localizar a propriedade na lista e clicar sobre a mesma;
designar o seu valor.

Se mais de um controle estiver selecionado simultaneamente, a lista de propriedades espelhar


somente aquelas propriedades que so comuns aos objetos selecionados. A seguir, em ordem
alfabtica, aparece a descrio de todas as propriedades existentes, os objetos a que se aplicam,
tipo de valor que armazenam e para que servem. Para todas as propriedades que tenham Evento
por categoria, o Editor de Programas do GAS poder ser utilizado para criar rotinas ou trechos de
programa para executar uma determinada tarefa e sero acionadas aps a execuo dos
procedimentos normais gerados pelo GAS, excetuando-se aqui apenas a Ao FormUnload, a qual

2007 GAS Tecnologia

Captulo 13 - Propriedades dos objetos de tela

493

acionada antes da execuo dos procedimentos normais gerados pelo GAS. Algumas
propriedades do objeto gMask so dependentes da propriedade Tipo de dado; por isso, algumas
podero no estar disponveis em determinado momento. O mesmo pode acontecer com relao ao
objeto Painel, quando este for utilizado como fundo da tela, sobre o qual os demais controles so
colocados.
Lista de propriedades

Propriedade

Descrio

Abas por linha

Esta propriedade determina o nmero de abas em uma mesma carreira


para o controle tab. Se esta propriedade tiver um nmero menor do que o
que estiver ajustado para a propriedade Qde de abas, mais de uma carreira
de abas aparecer no controle tab.

Ao aps alterao

Esta propriedade pode ser preenchida com uma expresso em Visual


Basic para ser executada logo aps a alterao de registros no form ou
grid. Alm disso, podero ser invocados formulrios presentes na
aplicao, inclusive para emisso de relatrios, ou executadas aes
pr-definidas como "Enviar E-Mail", "Abrir WebPage", "Executar arquivo",
etc.

Ao aps excluso

Esta propriedade pode ser preenchida com uma expresso em Visual


Basic para ser executada logo aps a excluso de registros no form ou
grid. Alm disso, podero ser invocados formulrios presentes na
aplicao, inclusive para emisso de relatrios, ou executadas aes
pr-definidas como "Enviar E-Mail", "Abrir WebPage", "Executar arquivo",
etc.

Ao aps incluso

Esta propriedade pode ser preenchida com uma expresso em Visual


Basic para ser executada logo aps a incluso de registros no form ou grid.
Alm disso, podero ser invocados formulrios presentes na aplicao,
inclusive para emisso de relatrios, ou executadas aes pr-definidas
como "Enviar E-Mail", "Abrir WebPage", "Executar arquivo", etc.

Ao Cancela Cupom

Esta propriedade pode ser preenchida com uma expresso em Visual


Basic para ser executada quando o cancelamento de cupons de venda for
acionado, aps a execuo dos procedimentos normais gerados pelo GAS
em aplicaes que utilizam da Emisso de Cupom Fiscal. Disponvel
apenas para o terceiro modo de compatibilizao com ECF (consulte o
tpico Definindo mdulos para impressora fiscal do Captulo 12 - O GAS
como ferramenta de desenvolvimento), esta propriedade permite ao
projetista programar, por exemplo, o cancelamento de cupons de venda no
prprio banco de dados dentre outras providncias que o projetista julgar
necessrias.

2007 GAS Tecnologia

494

GAS 2007 - Manual do Usurio

Ao Cancela Item

Esta propriedade pode ser preenchida com uma expresso em Visual


Basic para ser executada quando o cancelamento de itens de venda for
acionado, aps a execuo dos procedimentos normais gerados pelo GAS
em aplicaes queutilizam da Emisso de Cupom Fiscal. Disponvel
apenas para o terceiro modo de compatibilizao com ECF (consulte o
tpico Definindo mdulos para impressora fiscal do Captulo 12- O GAS
como ferramenta de desenvolvimento), esta propriedade permite ao
projetista programar, por exemplo, o cancelamento de itens de venda no
prprio banco de dados dentre outras providncias que o projetista julgar
necessrias.

Ao Change

Esta propriedade pode ser preenchida com uma expresso em Visual


Basic para ser executada quando o evento Change do controle acionado

Ao Forma Pgto

Esta propriedade pode ser preenchida com uma expresso em Visual


Basic para ser executada aps serem definidas todas as informaes
referentes ao cupom fiscal em aplicaes que utilizam da Emisso de
Cupom Fiscal, para que se possa, por exemplo, gravar no banco de dados
determinadas informaes referentes forma de pagamento e outras que o
projetista julgar necessrias. Cabe ressaltar que tal ao recebe as
variveis vgDescricao, do tipo caractere (string), e vgValor , do tipo
numrico (preciso dupla). A primeira corresponde descrio da forma de
pagamento atualmente em uso no pagamento do cupom fiscal, enquanto a
segunda corresponde ao valordo pagamento de cada uma das formas de
pagamento utilizadas no cupom fiscal corrente.

Ao FormActivate

Esta propriedade pode ser preenchida com uma expresso em Visual


Basic para ser executada quando este evento do form acionado. Essa
propriedade s estar disponvel no painel de fundo sobre o qual os outros
objetos so disponibilizados

Ao Formload

Semelhante propriedade FormActivate, o diferencial que este evento


executado dentro do evento Form_Load do form criado para o mdulo em
definio. Essa propriedade tambm s estar disponvel no painel de
fundo sobre o qual os outros objetos so disponibilizados

Ao FormResize

Semelhante propriedade FormActivate, o diferencial que este evento


executado dentro do evento Form_Resize do form criado para o mdulo
em definio. Essa propriedade tambm s estar disponvel no painel de
fundo sobre o qual os outros objetos so disponibilizados.

Ao FormUnload

Semelhante propriedade FormActivate, o diferencial que este evento


executado dentro do evento Form_Unload do form criado para o mdulo
em definio, antes da execuo dos procedimentos normais gerados pelo
GAS. Essa propriedade tambm s estar disponvel no painel de fundo
sobre o qual os outros objetos so disponibilizados.

Ao GotFocus

Esta propriedade pode ser preenchida com uma expresso em Visual


Basic para ser executada dentro do evento GotFocus do controle

2007 GAS Tecnologia

Captulo 13 - Propriedades dos objetos de tela

495

Ao KeyDown

Esta propriedade pode ser preenchida com uma expresso em Visual


Basic para ser executada dentro do evento KeyDown do gMask

Ao KeyPress

Semelhante propriedade KeyDown, o diferencial que este evento


executado dentro do evento KeyPress do gMask.

Ao no Clique

Esta propriedade pode ser preenchida com uma expresso em Visual


Basic para ser executada dentro do evento ButtonClick (que o clique no
boto extensor do gMask) e no evento Click do boto. No caso do gDbGrid,
refere-se ao clique no extensor da coluna (campo) selecionada.

Ao PrepBotoes

Esta propriedade pode ser preenchida com uma expresso em Visual


Basic para ser ativada quando este evento executado. O evento
PrepBotoes ocorre sempre que alterado o status dos botes da barra de
ferramentas da aplicao gerada.

Ao Reposition

Esta propriedade pode ser preenchida com uma expresso em Visual


Basic para ser executada sempre que o recordset tem seu ponteiro de
registros modificado, ou seja, quando ele altera de um registro para outro.

Ao ltimo campo

Dentre as aes disponveis podemos optar por "Salvar e incluir", o que


bastante til para formulrios em que a incluso de registro ocorrer de
forma contnua e seqencial. O usurio ter uma agilidade muito maior
para essa ao;

Acrscimo/Desconto

Esta propriedade determina o campo ou controle por intermdio do qual


ser determinado acrscimo ou desconto para cupons fiscais em
aplicaes que utilizam da Emisso de Cupom Fiscal. As possibilidades
so: 0 - Acrscimo e 1 (ou quaisquer outros valores) - Desconto. Uma vez
estabelecido
um
contedo
para
essa
propriedade,
deve-se
obrigatoriamente determinar contedos para as propriedades Tipo
acrsc/desc e Valor acrsc/desc.

Alinhamento

Determina a posio onde dever aparecer o ttulo do objeto. Se o


objeto for do tipo label, existem 3 tipos de alinhamento que so Esquerda,
Direita e Centro. Caso o objeto for do tipo boto, existem mais duas
possibilidades: Em baixo e Em cima. Ainda sobre o boto, se a
propriedade configurada no for Centro e se uma das propriedades de
figura estiver designada, a figura deslocada em sentido contrrio a uma
distncia definida pela propriedade Distncia ttulo.

Altura

Determina a altura que o controle dever ter.

Altura da etiqueta

Esta propriedade determina a altura, em milmetros, das etiquetas


existentes no formulrio a ser impresso.

Altura da linha

Esta propriedade determina a altura, em pixels, de cada uma das linhas


(registro) de um grid. Deve-se observar que o Visual Basic ir limitar o seu
nmero ao tamanho da fonte utilizada.

2007 GAS Tecnologia

496

GAS 2007 - Manual do Usurio

Altura das abas

Esta propriedade determina a altura que dever ter as abas do controle


tab.

Altura til do papel

Esta propriedade determina, nos relatrios elaborados por intermdio do


G-Reports, a altura til do papel, fora da qual a impressora no consegue
inserir informaes (espao deixado para tracionamento do papel, etc).

ngulo

Esta propriedade determina, em graus, o ngulo a ser utilizado para


dispor a informao contida no controle, podendo variar de 0 (normal) at
359 graus.

Aparncia

Determina a aparncia do objeto label, que pode ser Plana ou 3D.

Apelido

Determina o apelido para o valor do campo ou frmula vinculada ao


controle. O apelido vai ter o mesmo tipo de dado correspondente ao campo
ou frmula. No caso do gDbGrid, refere-se ao apelido da coluna (campo ou
frmula) selecionada

Auto ajuste

Determina se o label ir se ajustar automaticamente para o tamanho do


seu ttulo, determinado pela propriedade Ttulo.

Avano da barra

Determina a quantidade a ser incrementada no valor do controle quando


a barra de rolagem clicada. Este valor dever ser ajustado entre 1 e
32.767, devendo ser definido com um nmero maior do que o valor da
propriedade Avano do boto. No caso do gDbGrid, refere-se coluna
(campo) selecionada.

Avano do boto

Determina a quantidade a ser incrementado no valor do controle quando


o boto da barra de rolagem clicado. Normalmente, este valor deve ser
configurado como 1. No caso do gDbGrid, refere-se coluna (campo)
selecionada

BD estrangeiro

Esta propriedade o nome do banco de dados que fornecer os dados


para encher a lista a ser apresentada no objeto. No caso do gDbGrid,
refere-se coluna (campo) selecionada.

Campo

Esta propriedade contm o nome do campo da tabela em definio que


dever ser associado ao objeto. Ao ser selecionada esta propriedade, todas
as propriedades de atributos referentes a este campo sero
automaticamente preenchidas; porm, no so disponibilizadas para
modificao. Qualquer modificao necessria nesses atributos dever ser
efetuada por intermdio da interface de definio do banco de dados. Em
mdulos do tipo form avulso e telascomplementares, esta propriedade
servir somente para preencher as propriedades de atributos, sendo a
propriedade Campo automaticamente removida aps a sua definio. No
caso do gDbGrid, refere-se coluna (campo) selecionada.

2007 GAS Tecnologia

Captulo 13 - Propriedades dos objetos de tela

497

Campo a capturar

Esta propriedade o nome do campo que ter o seu valor gravado no


banco de dados, independentemente de figurar ou no na lista de campos
estrangeiros. No caso do gDbGrid, refere-se coluna (campo) selecionada.

Campo a mostrar

Esta propriedade contm os nomes dos campos a serem apresentados


em uma lista externa. Clique no boto extensor desta propriedade e
escolha um ou mais campos para fazer parte desta lista. No caso do
gDbGrid, refere-se coluna (campo) selecionada..

Campo para ordenar

Esta propriedade contm o nome dos campos utilizados para comandar


a ordem de apresentao da lista de campos estrangeiros. Clique no boto
extensor desta propriedade e escolha um ou mais campos para fazer parte
desta lista. No caso do gDbGrid, refere-se coluna (campo) selecionada.
O projetista ainda poder ordenar um campo de forma descendente,
bastando para isso selecionar na lista o campo com sinal de menos
frente.

Caracter esquerda

Esta propriedade tem por finalidade definir um caractere a ser utilizado


para preencher a parte esquerda do campo, forando um tamanho igual ao
que foi definido pela propriedade "Tamanho mximo". Normalmente,
utilizada para forar zeros ou espaos esquerda de um valor do tipo
caracter. No caso do gDbGrid, refere-se coluna (campo) selecionada.

Chanfro externo

Esta propriedade serve para designar o tipo de chanfro a ser aplicado


do lado externo do objeto painel disponibilizado na tela. Os valores
possveis so Alto-relevo, Baixo-relevo ou Nenhum.

Chanfro interno

A exemplo da propriedade anterior, esta serve para designar o tipo de


chanfro a ser aplicado do lado interno do objeto painel colocado na tela. Os
valores possveis so Alto-relevo, Baixo-relevo ou Nenhum.

Cdigo do item

Esta propriedade determina o campo ou controle por intermdio do qual


sero determinados os cdigos de itens de venda em aplicaes que
utilizam da Emisso de Cupom Fiscal, sendo de preenchimento
obrigatrio.

Coluna atual

Esta propriedade indica a coluna em definio dentro de um objeto


gDbGrid disponibilizado na tela.

Condio alterar

Esta propriedade deve ser preenchida com uma expresso ou funo


em Visual Basic que retorne um valor lgico (True ou False), indicando se o
registro atualmente na tela pode ou no ser alterado. Normalmente, o
Editor de Programas do GAS utilizado para criar esta funo. Esta
condio avaliada dentro do evento Reposition do DataControl. No caso
do objeto Painel, esta propriedade se aplica somente para o painel de
fundo, sobre o qual so dispostos os outros objetos.

2007 GAS Tecnologia

498

GAS 2007 - Manual do Usurio

Condio excluir

Esta propriedade deve ser preenchida com uma expresso ou funo


em Visual Basic que retorne um valor lgico (True ou False), indicando se o
registro atualmente na tela pode ou no ser excludo. Esta condio
avaliada a cada registro disponibilizado na tela, habilitando ou desabilitando
o boto de excluir (e a opo de menu correspondente) na barra de
ferramentas. Normalmente, o Editor de Programas do GAS utilizado para
criar esta funo. Esta condio avaliada dentro do evento Reposition do
DataControl. No caso do objeto Painel, esta propriedade se aplica somente
para o painel de fundo, sobre o qual so dispostos os outros objetos.

Condio impresso

Esta propriedade, aplicada ao relatrio, utilizada para determinar se o


registro bsico do relatrio ser impresso. Aqui, pode ser utilizada uma
expresso diretamente na rea apropriada ou por intermdio do Editor de
Programas do GAS.Se existir uma condio especificada, o GAS criar a
instruo "IF.." no programa fonte para testar se o registro ser ou no
impresso.

Condio incluir

Esta propriedade deve ser preenchida com uma expresso ou funo


em Visual Basic que retorne um valor lgico (True ou False), indicando se
registros podem ser ou no includos na tabela atual. Normalmente, o
Editor de Programas do GAS utilizado para criar esta funo. Esta
condio avaliada dentro do evento Reposition do DataControl. No caso
do objeto Painel, esta propriedade se aplica somente para o painel de
fundo, sobre o qual so colocados os outros objetos.

Contorno

Esta propriedade determina se o texto a ser impresso ir apresentar


uma linha de contorno (outline).

Cor da borda

Esta propriedade tem por finalidade designar uma cor para ser utilizada
na borda do objeto.

Cor da sombra

Esta propriedade especifica a cor da sombra a ser projetada pelo texto,


caso a propriedade Tamanho sombra esteja ajustada para um nmero
maior do que zero.

Cor do contorno

Caso a primeira propriedade esteja ajustada para 1 (sim), esta


propriedade determina a cor a ser utilizada para colorir o contorno das
letras.

Cor do enchimento

Esta propriedade serve para designar uma cor a ser utilizada para
encher a rea interna do objeto. Esta propriedade s ser aplicada se a
propriedade Enchimento tiver um valor diferente de Transparente.

Cor do fundo

Esta propriedade serve para designar uma cor a ser utilizada para
encher o fundo do objeto (backcolor).

Cor do ttulo

Esta propriedade serve para designar uma cor a ser utilizada no texto do
ttulo do objeto.

2007 GAS Tecnologia

Captulo 13 - Propriedades dos objetos de tela

499

Cor fim logotipo

Esta propriedade define a cor de fim do logotipo lateral. Ser


proporcionado um efeito de "dgrad" no referido logotipo se escolhida
uma segunda cor para incio do logotipo.

Cor incio logotipo

Esta propriedade define a cor de incio do logotipo lateral. Ser


proporcionado um efeito de "dgrad" no referido logotipo se escolhida
uma segunda cor para fim do logotipo.

Cor ttulo c/ foco

Esta propriedade serve para designar uma cor a ser utilizada para
encher o formato do ttulo do objeto, quando o objeto gMask contiver o
cursor (foco). Esta propriedade no oferecer qualquer efeito se a
propriedade Enchimento tiver valor definido com Transparente ou se a
propriedade Ttulo no tiver sido definida.

Cor ttulo s/ foco

Esta propriedade serve para designar uma cor a ser utilizada para
encher o formato do ttulo do objeto, quando o objeto gMask no contiver o
cursor (foco). Esta propriedade no oferecerqualquer efeito se a
propriedade Enchimento tiver valor definido com Transparente ou se a
propriedade Ttulo no tiver sido definida.

Venda item

Esta propriedade determina o campo ou controle por intermdio do qual


sero determinadas as descries de itens de venda em aplicaes que
utilizam da Emisso de Cupom Fiscal, sendo de preenchimento obrigatrio

Descrio forma de
pgto

Esta propriedade determina o campo de uma tabela (deve haver vnculo


com tabela) por intermdio do qual sero determinadas as descries de
formas de pagamento em aplicaes que utilizam da Emisso de Cupom
Fiscal, sendo de preenchimento obrigatrio.

Direo

Designa um sentido para traar a linha, dentro da rea que a define. Os


valores possveis so: Horizontal, Vertical, Diagonal para baixo, Diagonal
para cima.

Distncia carreiras

Esta propriedade tem por finalidade informar a distncia vertical, em


milmetros, entre uma etiqueta e a que est sua direita.

Distncia colunas

Esta propriedade define a distncia horizontal, em milmetros, entre


uma etiqueta e outra, que esteja imediatamente abaixo.

Distncia entre regs

Esta propriedade tem por finalidade informar a distncia, em milmetros.


entre um registro e outro do relatrio. importante ressaltar que, se
existirem outras informaes impressas entre umregistro e outro (como por
exemplo, um subrelatrio), esta medida ser aplicada sempre aps estas
informaes ter sido impressas.

Distncia entre regs

Define a distncia a ser observada entre o ttulo e a figura utilizada no


objeto (no caso de boto) ou caixa de texto (no caso do gMask).

2007 GAS Tecnologia

500

GAS 2007 - Manual do Usurio

Duplicatas

Esta propriedade tem por finalidade informar a quantidade de etiquetas


idnticas que devem ser impressas para cada registro lido do banco de
dados, ou seja, a quantidade de etiquetas a ser impressa para o mesmo
produto.

Editar em grade

Esta propriedade tem por finalidade permitir ou no a modificao e


excluso de registros visualizados em grade, estando disponvel apenas
para o painel de fundo sobre o qual os outros objetos so disponibilizados.

Editvel

Define se o campo associado ao objeto ou coluna atualmente


selecionada no gDbGrid poder ter seu valor modificado por intermdio de
digitao pelo usurio da aplicao.

Enchimento

Define o padro a ser utilizado para encher o formato utilizado no objeto.


Os valores possveis so Slido, Transparente, Linha horizontal, Linha
vertical, Diagonal para cima, Diagonal para baixo, Em cruz, Diagonal em
cruz. Se esta propriedade for designada como Transparente, apenas uma
borda contornando o objeto ser visvel.

Esquerda

Determina a posio da margem esquerda do objeto, em relao ao seu


container. Esta propriedade no est disponvel para o painel de fundo,
onde so colocados os demais objetos na tela.

Estilo

Determina o estilo a ser aplicado no objeto. Em se tratando de boto, os


valores possveis so: Normal ou Internet. Se o objeto for Tab, os valores
possveis so Windows 95 ou MS-Office.

Estilo da borda

Determina o estilo a ser aplicado na borda do objeto selecionado. Os


valores possveis so: Slido, Transparente, Trao, Ponto, Trao-ponto,
Trao-Trao-ponto e Slido interno. O efeito desta propriedade s ser visto
se a propriedade Largura da borda for igual ou maior a 1.

Exibir textura

Define a disposio da figura definida para textura ser exibida no


formulrio. Os valores possveis so Lado-a-lado, Expandido e Centralizado

Expande figura

Determina se a figura disponibilizada sobre o objeto poder ser


expandida at o tamanho total do objeto. O efeito desta propriedade poder
causar distoro na imagem, caso no haja proporcionalidade entre a
imagem e as dimenses do objeto.

Expandir

Estabelece se a informao contida no label ir ser truncada na largura


deixada pelo projetista para o mesmo ou se ser expandida de modo a
imprimir toda a informao. Se esta propriedade for ajustada para "Sim",
nos campos que no forem do tipo memo, o texto ser impresso na
totalidade de sua largura, independentemente de se sobrepor a outro
campo que estiver frente. Em campos do tipo memo, esta expanso
considerada verticalmente.

2007 GAS Tecnologia

Captulo 13 - Propriedades dos objetos de tela

501

Expresso

Esta propriedade tem por finalidade definir a expresso que comandar


a quebra.

Extensor

Determina se o objeto apresentar o boto extensor direita do objeto.


Este boto , normalmente, utilizado para apresentar um dilogo extra,
como, por exemplo, calculadora ou calendrio, quando o usurio acion-lo,
disparando o evento Ao no clique. Os valores possveis so: DropDown e
Reticncias.

Figura

Esta propriedade serve para designar o nome de um arquivo do tipo


.BMP, .ICO ou .WMF que contm a figura a ser apresentada no objeto.
Quando esta propriedade designada, o GAS copia esta figura para o
diretrio de figuras indicado no campo identificado como "Diretrio para
figuras do projeto", disponvel na aba cones da Definio do projeto. Esse
diretrio poder reunir ainda as figuras e cones de todos os projetos
desenvolvidos, promovendo uma melhor padronizao dos sistemas
desenvolvidos. Para um melhor detalhamento, consulte o tpico Definindo
os cones a utilizar na aplicao presente no Captulo 5 deste manual. Em
se tratando do objeto Tab, esta propriedade ser aplicada na aba
selecionada. Ao alterar quaisquer uma das figuras ou cones da aplicao,
o projetista poder visualizar o arquivo selecionado no painel de preview
apresentado na tela de seleo de arquivo que se abrir, facilitando assim
sua identificao. A opo "Zoom" promover o redimensionamento da
figura para o tamanho exato do painel de preview. O projetista ainda
poder utilizar o Editor de cones do GAS para elaborar cones que melhor
atendam s suas necessidades. Para um melhor detalhamento da sua
utilizao, consulte o tpico Utilizando o Editor de cones presente no
Captulo 5 deste manual.

Desativado

Esta propriedade serve para designar o nome de um arquivo do tipo


.BMP, .ICO ou .WMF que contm a figura a ser apresentada no boto
quando o mesmo estiver desativado. As mesmas observaes descritas
para a propriedade Figura, referentes ao diretrio de figuras, o painel de
preview e o Editor de cones tambm so vlidas para essa propriedade.

Figura em baixo

Esta propriedade serve para designar o nome de um arquivo do tipo


.BMP, .ICO ou .WMF que contm a figura a ser apresentada no boto
quando o mesmo estiver sendo pressionado com o mouse. As mesmas
observaes descritas para a propriedade Figura, referentes ao diretrio de
figuras, o painel de preview e o Editor de cones tambm so vlidas para
essa propriedade.

Figura iluminado

Esta propriedade serve para designar o nome de um arquivo do tipo


.BMP, .ICO ou .WMF que contm a figura a ser apresentada no boto
quando o mouse estiver passando por cima do mesmo. Esta propriedade
s tem efeito se a propriedade Estilo estiver ajustada para InterNet. As
mesmas observaes descritas para a propriedade Figura, referentes ao
diretrio de figuras, o painel de preview e o Editor de cones tambm so
vlidas para essa propriedade.

2007 GAS Tecnologia

502

GAS 2007 - Manual do Usurio

Figura transparente

Esta propriedade permite a definio de uma figura transparente a ser


inserida, em tamanho real, no centro do form. O GAS tomar a cor do
primeiro pixel da figura como sendo a cor de transparncia. As mesmas
observaes descritas para a propriedade Figura, referentes ao diretrio de
figuras e o painel de preview tambm so vlidas para essa propriedade.

Filtro

Esta propriedade serve para selecionar os registros que aparecero


dentro de uma lista externa. Se esta propriedade no for utilizada, todos os
registros da tabela estrangeira associada sero mostrados e
disponibilizados para seleo. Quando se tratar do controle gDBGrid, esta
propriedade se aplicar coluna selecionada.

Filtro inicial

Esta propriedade semelhante anterior. O que as diferencia o fato


de que, na anterior, um "IF..." criado proporcionando maior flexibilidade,
sendo, porm, mais lenta. J nesta, a expresso de filtragem ser
incorporada expresso SQL do relatrio (clusula WHERE) e, por isso,
este filtro limitado aos seguintes detalhes:
o primeiro operando da expresso tem que ser um campo da tabela
bsica do relatrio;
o segundo operando pode ser qualquer um dos campos das tabelas
relacionadas, campos recebidos na tela, etc.
Para os grids, esta propriedade determina a seleo de registros que
sero listados, possibilitando, por exemplo, a definio de
consultas a tabelas relacionadas ao grid.

Fonte

Esta propriedade designa os atributos da fonte a ser utilizada no objeto.


No caso do gMask, esta propriedade ser aplicada somente na caixa de
texto associada.

Fonte do ttulo

Esta propriedade designa os atributos da fonte a ser utilizada no ttulo


do objeto.

Logotipo

Esta propriedade define a fonte que estar sendo utilizada no logotipo


lateral do formulrio. Podero ser utilizadas apenas fontes True Type.

Formato

Esta propriedade designa a forma que ter o objeto. No caso do gMask,


este formato ser
aplicado na forma que envolve o ttulo. Os valores possveis so
Retngulo, Quadrado, Oval, Crculo, Retngulo arredondado e Quadrado
arredondado.

2007 GAS Tecnologia

Captulo 13 - Propriedades dos objetos de tela

503

Frmula

Esta propriedade deve ser preenchida com uma expresso que retorne
um valor caracter a ser exibido no objeto. Normalmente, esta propriedade
serve para mostrar resultados de clculos que envolvam campos das
tabelas. No caso do objeto imagem, somente campos do tipo multimdia
podero ser disponibilizados.

Grupo

Esta propriedade designa um nome utilizado para agrupar vrios


objetos gMask. Esta propriedade estar disponvel somente se a
propriedade Tipo de dado for designada como Optativo. A finalidade desta
propriedade permitir que somente um item deste grupo esteja
selecionado a um determinado momento.

Imprimir

Esta propriedade tem por finalidade estabelecer o momento em que a


informao dever ser impressa, devendo ser observada com bastante
ateno, pois a que, provavelmente, levantar maior quantidade de
dvidas. As opes so: Como mscara de pgina, Incio da pgina, Incio
do relatrio, A cada registro, Fim do relatrio, Fim da pgina, Como
mscara QuebraN, Incio Quebra N, A cada registro da Quebra N e Fim da
quebra N. Para maiores detalhes sobre cada uma dessas opes, consulte
o Captulo 5 - Operando o GAS.

Inicializar

Utilizada somente quando a propriedade Totalizador estiver ajustada


para uma opodiferente de "No", essa propriedade determina em que
ponto do relatrio a varivel que controla o totalizador ser inicializada, ou
com "0" ou com o valor estabelecido pela propriedade Valor inicial.

Item do grupo

Esta propriedade serve para designar um valor a ser retornado e testado


no cdigo fonte, quando o objeto for selecionado. Este valor ser gravado
no banco de dados.

Junta separadores

Esta propriedade determina a maneira como ser feita a interseo dos


separadores estabelecidos pelas propriedades Separador esq e Separador
topo. As possibilidades so Nenhum, Horizontal e Vertical.

Largura

Esta propriedade determina a largura do objeto selecionado. Esta


propriedade no se aplica ao painel de fundo.

Largura coluna

Esta propriedade determina a largura da coluna selecionada no objeto


gDbGrid.

Largura da borda

Esta propriedade designa a largura a ser aplicada na borda do objeto.


No caso do painel, esta propriedade utilizada para estabelecer a largura
entre os chanfros interno e externo.

Largura da etiqueta

Esta propriedade tem finalidade informar a largura, em milmetros, da


etiqueta a ser utilizada na impresso.

Largura do chanfro

Esta propriedade estabelece a largura a ser aplicada nos chanfros


interno e externo do objeto painel.

2007 GAS Tecnologia

504

GAS 2007 - Manual do Usurio

Largura logotipo

Esta propriedade tem por finalidade definir a expessura do logotipo


lateral do formulrio

Largura til do papel

Esta propriedade determina, nos relatrios elaborados por intermdio do


G-Reports, a largura til do papel, fora da qual a impressora no consegue
inserir informaes (espao deixado para tracionamento do papel, etc).

Limpar campo

Esta propriedade determina se a informao contida no objeto ser


apagada, caso a expresso disponibilizada na propriedade Pr-validao
no seja atendida.

Lista\Pesquisa

em modo combobox:, ser aberto junto ao campo, como um


combobox mesmo, mas se ao texto, apenas capturando. Isto pode ser
utilizado em um cadastro de bairro por exemplo, onde mostra os bairros
existentes de acordo com os clientes(Select bairros from clientes group by
bairros), mas, se for um novo bairro, o usurio poder digitar a vontade.
em modo Janela: Ser apresentado um formulrio, como o form de
pesquisa, ideal para muitos registros (ex: tabela de preos).

Lista de opes

Esta propriedade estabelece a lista a ser apresentada no objeto. Os


itens devem ser digitados, lado a lado, separados pelo caractere "|" (pipe).
Esta lista s ser aberta se a propriedade Extensor estiver definida. Nos
objetos nos quais esta propriedade definida, no podem ser digitadas
informaes diretamente e as setas cursoras podem ser utilizadas para
efetuar a rolagem dos itens.

Margem esquerda

Esta propriedade define a medida horizontal, em milmetros, da primeira


posio til do papel at a primeira etiqueta.

Margem horizontal

Esta propriedade define a distncia horizontal, em pixels, da primeira


posio do texto at a primeira posio do controle propriamente dito,
independente do ngulo aplicado ao texto do controle.

Margem superior

Esta propriedade define a medida vertical, em milmetros, da primeira


posio til do papel at a primeira etiqueta.

Margem vertical

Esta propriedade define a distncia vertical, em pixels, da primeira


posio do texto at a primeira posio do controle propriamente dito,
independente do ngulo aplicado ao texto do controle.

Mscara

Esta propriedade estabelece o gabarito de digitao da informao


associada ao objeto. Para maiores detalhes sobre a sua utilizao, consulte
o Captulo 1- Introduo.

Mensagem final

Esta propriedade determina o texto a ser apresentado ao usurio ao


final da execuo de um processo pr-definido, no devendo ser utilizada
aspas nesta informao.

2007 GAS Tecnologia

Captulo 13 - Propriedades dos objetos de tela

505

Mensagem inicial

Esta propriedade determina o texto a ser apresentado ao usurio ao


incio da execuo de um processo pr-definido, no devendo ser utilizada
aspas nesta informao. O texto default apresentado pelo GAS "Esta
operao poder ser demorada! Deseja continuar?".

Mensagem
promocional

Esta propriedade determina o campo ou controle por intermdio do qual


ser determinada a mensagem promocional, de at 492 caracteres, em
aplicaes que utilizam da Emisso de Cupom Fiscal, no sendo,
entretanto, de preenchimento obrigatrio.

Mensagem validao

Esta propriedade determina o texto a ser apresentado ao usurio caso a


expresso estabelecida na propriedade Validao no seja atendida, no
devendo ser utilizada aspas nesta informao. Voc pode tambm utilizar o
Editor de Programas do GAS para escrever uma funo que retorne um
valor caracter para ser aqui utilizado.

Modal

Esta propriedade, que est disponvel somente no painel do fundo,


serve para estabelecer o modo como a tela ser apresentada. Se esta
propriedade for designada para "Sim", o usurio no poder clicar fora
desta tela enquanto ela estiver sendo apresentada, ficando a execuo da
aplicao temporariamente suspensa at que esta tela seja resolvida.

Mostra acresc / desc

Esta propriedade determina se o campo Acrscimo / Desconto ser ou


no mostrado na tela de Pagamentos em aplicaes que utilizam a
Emisso de Cupom Fiscal. Caso no seja exibido, o operador poder
acionar uma janela especfica de Acrscimo / Desconto, utilizando-se da
hot-key SHIFT-F12.

Mostrar valor inicial

Esta propriedade estabelece se, na incluso de registros, os valores


iniciais de todos os campos sero ou no exibidos de uma s vez. O valor
padro para essa propriedade "No", o que faz com que os valores
iniciais dos campos s sejam exibidos quando estes recebem o foco. A
utilizao dessa propriedade permite, por vezes, automatizar o processo de
entrada de dados, visto que todos os objetos com valor inicial sero
preenchidos logo aps o pressionamento do boto de incluso e antes que
qualquer outro campo seja preenchido.

Nome do controle

Designa um nome a ser utilizado em uma associao com o controle


dentro do cdigo do programa. Esta associao permite que o projetista se
refira a qualquer uma das propriedades do controle associado por
intermdio do nome desta propriedade, a qual s necessria se o
projetista estiver utilizando o Editor de Programas do GAS para escrever
cdigo de programa.

Omitir se igual

Esta informao utilizada para inibir a impresso de informaes


iguais nos registros subseqentes. , normalmente, utilizada em
agrupamentos de registros para inibir informaes repetitivas. As opes
so: No, No relatrio, Na pgina e Em quebra N. Para maiores detalhes
sobre cada uma dessas opes, consulte o Captulo 5- Operando o GAS.

2007 GAS Tecnologia

506

GAS 2007 - Manual do Usurio

Ordem

Esta propriedade estabelece a ordem a ser obedecida para a impresso


dos registros de relatrios elaborados pelo G-Reports. Vrios campos
podem ser concatenados para formar a expresso de ordenao do
relatrio. Para os grids, esta propriedade estabelece a ordem de exibio
dos registros listados.

Ordem de impresso

Esta propriedade estabelece a ordem a ser obedecida para a impresso


dos sub-relatrios ou quebras existentes em relatrios elaborados pelo
G-Reports. Para exemplificar, mesmo que um subrelatrio esteja
visualmente situado abaixo de outro, aquele que estiver situado mais
prximo ao rodap do relatrio poder ser impresso antes que o
sub-relatrio de cima o seja, devendo designar uma ordem de impresso
concernente a esta necessidade. Caso seja informado um valor para esta
propriedade que extrapole, de acordo com o nmero de sub-relatrios ou
quebras, um nmero vlido, o GAS ir ajustar, automaticamente, o referido
valor. Para os labels e textos 3D, essa propriedade estabelece sua ordem
de apresentao, o que proporciona enorme facilidade na determinao da
ordem de clculo de frmulas.

Ordem do tab

Esta propriedade estabelece a seqncia de acesso aos objetos na tela,


quando o usurio pressiona a tecla tab ou, durante a digitao, a tecla
Enter.

Orientao

Esta propriedade, no caso do Tab, determina o sentido em que as abas


aparecero. Os valores possveis so: Em cima, Em baixo, Na esquerda e
Na direita. J no caso do gMask, esta propriedade estar disponvel
somente se a propriedade Tipo de dado estiver designada com tipo
Rotativo, servindo para determinar o sentido da barra de rolagem
(Horizontal ou Vertical).

Parar com tab

Esta propriedade determina se um objeto receber ou no foco por


meio da tecla TAB. Caso essa propriedade esteja definida como "No" para
um objeto, mesmo com a propriedade "Ordem do TAB" definida, este no
receber o foco do cursor por meio da tecla TAB.

Permitir repetio

Esta propriedade habilita os campos para os quais o usurio final


poder utilizar a repetio automtica do registro anteriormente digitado.
Esta funo especialmente til quando se faz digitaes de informaes
que podem estar repetidas em diversos registros, como cidade, Estado,
etc. Para utilizar esse recurso, basta que o projetista selecione os campos
de repetio e altere a propriedade Permitir repetio para "Sim". Uma vez
que, na aplicao final gerada, os dados estejam presentes na tela, basta
que o operador pressione o boto de repetio de campos mostrado a
seguir para aproveitar estes dados. Quando esta funo no for mais
desejada, basta pressionar o boto novamente.

2007 GAS Tecnologia

Captulo 13 - Propriedades dos objetos de tela

507

Pos mx p/ dados

Esta propriedade determina a posio mais baixa da folha a ser


considerada para imprimir informaes que no sejam ajustadas como
mscara de pgina, isto , estabelece o limite para se imprimir informaes
que variam de posio (impressas a cada registro). Normalmente, esta
propriedade j vem ajustada igual altura til da pgina do relatrio. O
ajuste dessa propriedade para um nmero um pouco menor, possibilida a
insero de rodaps nas pginas.

Posio

Esta propriedade designa, para os relatrios, se a informao ser


impressa de modo fixo, ou seja, sempre na mesma posio dentro da
pgina ou se a sua posio ir variar de acordo com os registros
impressos. Quando um campo vinculado a um label, o GAS
automaticamente ajusta essa propriedade para 1 (varivel). H casos em
que o projetista poder querer que um campo seja impresso em posio
fixa, como, por exemplo, em cabealhos ou rodaps (mscara de pgina).
Neste caso, dever alterar essa propriedade para 0 (fixa). Para o painel,
essa propriedade determina a posio onde o painel utilizado como barra
de ferramentas da aplicao aparecer posicionado, determinao tambm
vlida para os outros tipos de controles.

Posio do ttulo

Determina a posio na qual o ttulo dever ser posicionado em relao


caixa de texto. Os valores possveis so Em cima, Em baixo, esquerda
e direita.

Pr-validao

Esta propriedade deve ser preenchida com uma expresso ou funo


em Visual Basic que retorne um valor lgico (True ou False), indicando se o
objeto corrente pode ou no ser acessado durante a operao da
aplicao. Esta condio avaliada quando o cursor sai do objeto (evento
LostFocus). Pode-se utilizar o Editor de Programas do GAS para criar esta
funo.

Qde de abas

Determina a quantidade de abas que o objeto tab ir apresentar. Se


esta propriedade for designada com um valor maior do que o valor da
propriedade Abas por linha, o controle ir apresentar mais de uma carreira
de abas.

Qde de carreiras

Esta propriedade define a quantidade de carreiras de etiquetas


existentes no formulrio a ser impresso.

Qde de colunas

Esta propriedade determina a quantidade de colunas apresentadas pelo


gDbGrid disponibilizado na tela.

Qde do item

Esta propriedade determina o campo ou controle por intermdio do qual


ser determinada a quantidade de itens de venda em aplicaes que
utilizam da Emisso de Cupom Fiscal, no sendo, entretanto, de
preenchimento obrigatrio. Se e somente se no for informado um campo
ou controle para indicar a quantidade de itens de venda, o controle desse
campo ser efetuado de forma interna ao sistema, devendo ser acionada a
tecla * (asterisco) pelo operador do sistema logo aps a digitao da
referida quantidade.

2007 GAS Tecnologia

508

GAS 2007 - Manual do Usurio

Retorno da ECF

Esta propriedade determina se a picturebox disponibilizada na tela


(venda de itens) ir espelhar exatamente os itens impressos na impressora
fiscal em aplicaes que utilizam da Emisso de Cupom Fiscal. Para
reproduzir melhor a impresso do cupom fiscal na referida picturebox,
deve-se dar preferncia s fontes monoespaadas, como a Courier New, e
dimensionar sua largura para 50 posies, largura essa que tambm
utilizada nos cupons fiscais emitidos pela Bematech e que so compatveis
com os da Yanco.

Saltar pgina

Esta propriedade determina se, aps a impresso de um registro ou


quebra, uma pgina dever ser saltada. importante observar que, aps
inseridas as quebras, as propriedades inerentes aos campos,
especialmente a propriedade "Imprimir...", podem apresentar a
necessidade de serem alteradas para atender s necessidades.

Salvar colunas grid

Esta propriedade determina se as dimenses intrnsecas ao gDbGrid


(largura das colunas e altura das linhas) sero salvas com base
nasdimenses que o usurio definir, em run-time, para tal controle. Cabe
ressaltar que a personalizao das dimenses do gDbGrid ocorrer a nvel
de usurio, proporcionando um grau de customizao mais elevado para o
aplicativo final.

Salvar filtro

Esta propriedade determina se o filtro estabelecido para determinada


janela de dados ser salvo com base nos filtros especificados, em
design-time, pelo projetista e, em run-time, pelo usurio. Cabe ressaltar
que a personalizao desses filtros tambm ocorrer a nvel de usurio,
proporcionando um grau de customizao mais elevado para o aplicativo
final.

Separador esq

Determina se o boto ir apresentar uma linha separadora sua


esquerda, linha tal que poder ser utilizada na separao de grupos de
botes que tenham finalidades semelhantes.

Separador topo

Esta propriedade determina se o boto ir apresentar uma linha


separadora na sua parte superior, linha tal que poder ser utilizada na
separao de grupos de botes que tenham finalidades semelhantes.

Situao tributria

Esta propriedade determina o campo ou controle por intermdio do qual


ser determinada a situao tributria (Isento, Sujeito a ISS, Sujeito a
ICMS, Substituio tributria, etc) dos itens de venda em aplicaes que
utilizam da Emisso de Cupom Fiscal, sendo de preenchimento
obrigatrio.

Tabela

Esta propriedade dever conter o nome de uma tabela inserida na


estrutura do projeto em mdulos do tipo Tabela em grid. Quando esta
propriedade designada, o GAS preenche automaticamente o objeto
gDbGrid inserido na tela com os campos desta tabela, exceto os campos
definidos como de ligao com o mdulo-pai.

2007 GAS Tecnologia

Captulo 13 - Propriedades dos objetos de tela

509

Tabela estrangeira

Esta propriedade dever conter o nome de uma tabela do banco de


dados selecionado na propriedade "BD estrangeiro", cujos campos sero
exibidos em uma lista externa.

Tamanho da sombra

Esta propriedade determina o tamanho, em pixels, da sombra a ser


projetada pelo texto.

Tamanho do papel

Esta propriedade determina o tamanho do papel (tipo utilizado pela


maioria das impressoras - A4, Letter, etc.), influenciando as propriedades
"Altura til" e "Largura til" do papel.

Tamanho mximo

Esta propriedade serve para determinar a quantidade de caracteres que


podem ser digitados em um objeto gMask. Esta propriedade desprezada
caso a propriedade "Mscara" for designada com um valor que no
contenha o caractere "@".

TEF / Cheque
eletrnico

Esta propriedade determina se a forma de pagamento necessitar de


comunicao ou no com o gerenciador padro da TEF Discada, quando
utilizadas a segunda ou terceira formas de compatibilizao com a ECF. A
ela podem ser atribudos os seguintes valores: 0 (zero) - forma de
pagamento normal, em que no h necessidade de comunicao com o
gerenciador padro, como ocorre em pagamento em dinheiro, tickets, etc;
1 - forma de pagamento vinculada s vendas com carto de crdito ou
dbito e que, portanto, necessitaro de comunicao com o gerenciador
padro;
2 - forma de pagamento vinculada s consultas de cheque eletrnico e
que, portanto, necessitaro de comunicao com o gerenciador padro.
Ressaltamos o termo consultas de cheque eletrnico em funo dessa
forma de pagamento funcionar apenas como consulta, no impedindo que,
mesmo no caso de uma resposta negativa para o cheque em questo, o
operador d continuidade venda em andamento.

Texto de ajuda

Esta propriedade dever conter a frase a ser utilizada como ajuda do


objeto, quando o mouse estaciona sobre o mesmo. O caracter "|" (pipe)
pode ser utilizado para forar a quebra de linha.

Textura

Esta propriedade permite a definio de uma textura de fundo para


todos os formulrios da aplicao final, correspondendo propriedade Tile
do Visual Basic.

Tipo

Esta propriedade determina se o boto funcionar de maneira


convencional ou como dois estgios, ou seja, quando pressionado, o
mesmo poder ficar ou no em baixo relevo at que um novo clique do
mouse seja nele aplicado. Este tipo de boto pode ser utilizado para
apresentar valores do tipo liga/desliga por intermdio de sua propriedade
Value.

2007 GAS Tecnologia

510

GAS 2007 - Manual do Usurio

Tipo acrsc/desc

Esta propriedade determina o campo ou controle por intermdio do qual


ser determinado o tipo de acrscimo ou desconto dos cupons fiscais em
aplicaes que utilizam da Emisso de Cupom Fiscal, no sendo,
entretanto, de preenchimento obrigatrio. As possibilidades so: 0 - Valor e
1 (ou quaisquer outros valores) - Porcentagem. Uma vez estabelecido um
contedo para essa propriedade, deve-se obrigatoriamente determinar
contedos para as propriedades "Acrscimo/desconto" e "Valor
acrsc/desc".

Tipo da borda

Esta propriedade determina se


apresentar uma linha de contorno.

objeto,

inclusive

formulrio,

Tipo de dado

Designa o tipo de informao que o objeto ir manipular na aplicao


final. As possibilidades so Caractere, Numrico, Data/hora, Rotativo,
Memo, Lgico, Optativo e Multimdia.

Tipo de tributo

Esta propriedade determina o campo ou controle por intermdio do qual


ser determinado o tipo de tributo a ser aplicado aos itens de venda em
aplicaes que utilizam da Emisso de Cupom Fiscal, no sendo,
entretanto, de preenchimento obrigatrio. As possibilidades so: 0 - ISS e
1 (ou quaisquer outros valores) - ICMS.

Tipo desconto item

Esta propriedade determina o campo ou controle por intermdio do qual


ser determinado o tipo de desconto dos itens de venda em aplicaes que
utilizam da Emisso de Cupom Fiscal, no sendo, entretanto, de
preenchimento obrigatrio. As possibilidades so: 0 - Valor e 1 (ou
quaisquer outros valores) - Porcentagem. Uma vez estabelecido um
contedo para essa propriedade, deve-se obrigatoriamente determinar
contedo para a propriedade "Valor desconto item".

Ttulo

Esta propriedade determina um texto que ser exibido como ttulo do


objeto selecionado.

Ttulo da coluna

Esta propriedade determina um texto que ser exibido no ttulo da


coluna selecionada no objeto gDbGrid.

Ttulo logotipo

Esta propriedade determina um texto que ser exibido como ttulo do


logotipo lateral do form.

Topo

Serve para determinar a distncia entre a margem do topo do objeto


selecionado em relao ao seu container. Esta propriedade no est
disponvel para o painel de fundo sobre o qual os outros objetos so
disponibilizados.

Totalizador

Esta propriedade estabelece o momento em que o contedo


(propriedade "Campo" ou "Frmula") do controle ser totalizado. As
possibilidades so: 0 - No ou 1 - A cada registro (de quebras ou no).

2007 GAS Tecnologia

Captulo 13 - Propriedades dos objetos de tela

511

Transparente

Se esta propriedade estiver ajustada para Sim, determina que o objeto


apresentar transparncia em relao ao seu container. Se estiver
designada para No, o objeto ser opaco.

Validao

Esta propriedade deve ser preenchida com uma expresso ou funo


em Visual Basic que retorne um valor lgico (True ou False), indicando se a
informao digitada no objeto ou no vlida. Esta condio avaliada no
momento em que o usurio clica sobre o boto de gravao ou sobre o
boto de prosseguir (em forms que no tenham vinculao direta com
dados). Pode-se utilizar o Editor de Programas do GAS para criar tal
funo.

Valor acrsc/desc

Esta propriedade determina o campo ou controle por intermdio do qual


ser determinado o valor do desconto ou acrscimo dos cupons fiscais em
aplicaes que utilizam da Emisso de Cupom Fiscal, no sendo,
entretanto, de preenchimento obrigatrio. Uma vez estabelecido um
contedo para essa propriedade, deve-se obrigatoriamente determinar
contedos para as propriedades "Acrscimo/desconto" e "Tipo
acrsc/desc".

Valor desconto item

Esta propriedade determina o campo ou controle por intermdio do qual


ser determinado o valor do desconto dos itens de venda em aplicaes
que utilizam da Emisso de Cupom Fiscal, no sendo, entretanto, de
preenchimento obrigatrio. Uma vez estabelecido um contedo para essa
propriedade, deve-se obrigatoriamente determinar contedo para as
propriedade "Tipo desconto item". Se e somente se no for informado um
campo ou controle para indicar o valor de desconto dos itens de venda, o
controle desse campo ser efetuado de forma interna ao sistema, devendo
ser acionada a tecla F11 pelo operador do sistema para que, ento, seja
efetuada a digitao do referido desconto.

Valor forma pgto

Esta propriedade determina o campo ou controle por intermdio do qual


ser determinado o valor pago por intermdio de cada uma das formas de
pagamento utilizadas nas vendas em aplicaes que utilizam da Emisso
de Cupom Fiscal, sendo de preenchimento obrigatrio.

Valor inicial

Esta propriedade designa uma expresso a ser utilizada como default


para o contedo do objeto. O projetista dever estar atento ao designar
esta propriedade, pois o valor retornado tem de ser compatvel ao valor
estabelecido na propriedade "Tipo de dado". Pode-se utilizar o Editor de
Programas do GAS para criar tal funo.

Valor item unitrio

Esta propriedade determina o campo ou controle por intermdio do qual


ser informado o valor unitrio de cada um dos itens de venda em
aplicaes que utilizam da Emisso de Cupom Fiscal, sendo de
preenchimento obrigatrio.

Valor mximo

Estabelece um valor mximo aceitvel pelo controle, quando utilizada


barra de rolagem.

2007 GAS Tecnologia

512

GAS 2007 - Manual do Usurio

Valor mnimo

Estabelece um valor mnimo aceitvel pelo controle, quando utilizada


barra de rolagem.

Visvel

Esta propriedade deve ser preenchida com uma expresso ou funo


em Visual Basic que retorne um valor lgico (True ou False), indicando se o
objeto ser ou no visvel ao usurio. Esta condio avaliada quando o
cursor sai do objeto (evento LostFocus). Pode-se utilizar o Editor de
Programas do GAS para criar esta funo.

Visualizar em grade

Esta propriedade tem por finalidade permitir ou no a visualizao de


uma janela de dados em forma de grade (F4), estando disponvel apenas
para o painel de fundo sobre o qual os outros objetos so disponibilizados.
Quando definida como Sim, mesmo que a janela de dados no esteja
sendo visualizada em grade (F4), disponibilizado um grid no referido
formulrio para que, quando solicitado, tal janela de dados possa ser
visualizada no referido formato. No entanto, a presena do grid no
formulrio em questo pode causar certa lentido, pois necessria a
leitura de toda a base de dados para preench-lo, obedecendo ou no aos
filtros estabelecidos pelo projetista. A presena de filtros para abertura de
janelas de dados pode degradar, ainda mais, o desempenho do aplicativo
final em tal processo. Definindo essa propriedade para No, a abertura do
formulrio referente janela de dados tornar-se- mais rpida, visto que
no mais ser necessria a leitura de toda a base de dados e o
preenchimento do referido grid, independente dos eventuais filtros que
tenham sido estabelecidos.

2007 GAS Tecnologia

Captulo

XIV
Captulo 14 - Tutoriais

514

GAS 2007 - Manual do Usurio

14

Captulo 14 - Tutoriais

14.1

Tutorial Mysql

14.1.1 Introduo
Este breve tutorial apresenta passo-a-passo as definies para o projeto exemplo
"Estoque" que permitem que o mesmo use adequadamente o banco de dados MySQL.
Para todos os passos so utilizadas as ferramentas bsicas que acompanham o banco de
dados.
14.1.2 O que o banco de dados MySQL
14.1.2.1 Viso geral

- Textos extrados da Wide Word Web, sobre o banco de dados em questo;


O MySQL foi criado na Sucia por dois suecos e um finlands: David Axmark, Allan Larsson e
Michael "Monty" Widenius, que trabalham juntos desde a dcada de 1980. Hoje seu
desenvolvimento e manuteno empregam aproximadamente 70 profissionais no mundo
inteiro, e mais de mil contribuem testando o software, integrando-o a outros produtos, e
escrevendo a respeito do mesmo.
O sucesso do MySQL deve-se em grande medida fcil integrao com o PHP includo, quase
que obrigatoriamente, nos pacotes de hospedagem de sites da Internet oferecidos
atualmente. Empresas como Yahoo! Finance, MP3.com, Motorola, NASA, Silicon Graphics e
Texas Instruments usam o MySQL em aplicaes de misso crtica[3]. A Wikipdia um
exemplo de utilizao do MySQL em stios de grande audincia.
O MySQL hoje suporta Unicode, Full Text Indexes, replicao, Hot Backup, GIS, OLAP e muitos
outros recursos.
Fonte: http://pt.wikipedia.org/wiki/MySQL (08/10/2007)

O MySQL se tornou o mais popular banco de dados open source do mundo porque possui
consistncia, alta performance, confiabilidade e fcil de usar. Atualmente usado em mais
de 6 milhes de instalaes em todos os continentes ( inclusive na Antrtica ), que vo desde
instalaes em grandes corporaes a especficas aplicaes embarcadas. Alm disso, o
MySQL se tornou a escolha de uma nova gerao de aplicaes, que utilizam o modelo LAMP (
Linux, Apache, MySQL, PHP ).
O MySQL funciona em mais de 20 plataformas, incluindo Linux, Windows, HP-UX, AIX,

2007 GAS Tecnologia

Captulo 14 - Tutoriais

515

Netware, dando a voc flexibilidade e controle. Se voc novo na tecnologia de banco de


dados ou um colaborador, ou um DBA experiente, a MySQL oferece uma gama completa de
produtos certificados, testados e homologados pela prpria MySQL AB, alm de treinamento
consultoria e suporte para fazer o seu projeto bem sucedido.
Fonte: http://www.mysqlbrasil.com.br/porquemysql (08/10/2007)
14.1.3 Passo 1 - Instalao do banco
14.1.3.1 Fazer o download do MySQL 5.1

Acessar o site oficial do MySQL (http://www.mysql.com);


Clicar no link "Community" na barra superior de menu;

Fonte: http://www.mysql.com/ (08/10/2007)


Clicar no link "Downloads";

Fonte: http://dev.mysql.com/ (08/10/2007)

Clicar no link "MySQL Community Server" para baixar a verso gratuita;

2007 GAS Tecnologia

516

GAS 2007 - Manual do Usurio

Fonte: http://dev.mysql.com/downloads/ (08/10/2007)


Clicar no link "5.1";

Fonte: http://dev.mysql.com/downloads/mysql/5.1.html (08/10/2007)

Rolar a pgina e localizar os trechos como abaixo e clicar no link "Pick a mirror"
correspondente a sua plataforma operacional;

2007 GAS Tecnologia

Captulo 14 - Tutoriais

517

Fonte: http://dev.mysql.com/downloads/mysql/5.1.html (08/10/2007)


ou

Fonte: http://dev.mysql.com/downloads/mysql/5.1.html (08/10/2007)


O link "Pick a mirror" levar para a pgina a seguir. Poder registrar-se como usurio do
MySQL ou clicar diretamente em "No, thanks, just take me to the downloads!";

Fonte: http://dev.mysql.com/get/Downloads/MySQL-5.1/mysql-essential-5.1.22-rcwin32.msi/from/pick (08/10/2007)


Ser informado que no existe um mirror (espelho) localizado no Brazil e listados vrios
mirrors espalhados pelo mundo. Portanto, escolha um mirror e clique no link de HTTP ou
FTP para o download do servidor MySQL;

2007 GAS Tecnologia

518

GAS 2007 - Manual do Usurio

Fonte: http://dev.mysql.com/get/Downloads/MySQL-5.1/mysql-essential-5.1.22-rcwin32.msi/from/pick#mirrors (08/10/2007)


Salve o arquivo em uma pasta conhecida ou execute-o diretamente. Siga as instrues do
prximo tpico: "Instalar o MySQL";

2007 GAS Tecnologia

Captulo 14 - Tutoriais

14.1.3.2 Instalar o MySQL

2007 GAS Tecnologia

519

520

GAS 2007 - Manual do Usurio

2007 GAS Tecnologia

Captulo 14 - Tutoriais

2007 GAS Tecnologia

521

522

GAS 2007 - Manual do Usurio

2007 GAS Tecnologia

Captulo 14 - Tutoriais

2007 GAS Tecnologia

523

524

GAS 2007 - Manual do Usurio

2007 GAS Tecnologia

Captulo 14 - Tutoriais

2007 GAS Tecnologia

525

526

GAS 2007 - Manual do Usurio

2007 GAS Tecnologia

Captulo 14 - Tutoriais

2007 GAS Tecnologia

527

528

GAS 2007 - Manual do Usurio

2007 GAS Tecnologia

Captulo 14 - Tutoriais

2007 GAS Tecnologia

529

530

GAS 2007 - Manual do Usurio

2007 GAS Tecnologia

Captulo 14 - Tutoriais

2007 GAS Tecnologia

531

532

GAS 2007 - Manual do Usurio

14.1.3.3 Download MySQL ODBC Driver

Acessar o site oficial do MySQL (http://www.mysql.com);


Clicar no link "Community" na barra superior de menu;

Fonte: http://www.mysql.com/ (08/10/2007)


Clicar no link "Downloads";

Fonte: http://dev.mysql.com/ (08/10/2007)

Clicar no link "Connectors";

2007 GAS Tecnologia

Captulo 14 - Tutoriais

2007 GAS Tecnologia

533

534

GAS 2007 - Manual do Usurio

2007 GAS Tecnologia

Captulo 14 - Tutoriais

2007 GAS Tecnologia

535

536

GAS 2007 - Manual do Usurio

14.1.3.4 Instalar MySQL ODBC Driver

2007 GAS Tecnologia

Captulo 14 - Tutoriais

2007 GAS Tecnologia

537

538

GAS 2007 - Manual do Usurio

14.1.3.5 Download MySQL GUI Tools

2007 GAS Tecnologia

Captulo 14 - Tutoriais

2007 GAS Tecnologia

539

540

GAS 2007 - Manual do Usurio

2007 GAS Tecnologia

Captulo 14 - Tutoriais

14.1.3.6 Instalar MySQL GUI Tools

2007 GAS Tecnologia

541

542

GAS 2007 - Manual do Usurio

2007 GAS Tecnologia

Captulo 14 - Tutoriais

2007 GAS Tecnologia

543

544

GAS 2007 - Manual do Usurio

2007 GAS Tecnologia

Captulo 14 - Tutoriais

2007 GAS Tecnologia

545

546

GAS 2007 - Manual do Usurio

14.1.4 Passo 2 - Definio no GAS


14.1.4.1 Selecionar tipo do BD no GAS

Na estrutura do banco de dados, marque o tipo "MySQL" para que seja criado o
script de gerao do banco e as rotinas adequadas para a manipulao de seus
dados;

Os dados de login no so obrigatrio j que agora podem ser informados no


momento da conexo com o banco, na primeira vez que a aplicao executada,
ou seja, no momento da criao do arquivo .INI;
2007 GAS Tecnologia

Captulo 14 - Tutoriais

2007 GAS Tecnologia

547

548

GAS 2007 - Manual do Usurio

14.1.4.2 Gerar projeto

Selecionar todos os mdulos para gerao;

2007 GAS Tecnologia

Captulo 14 - Tutoriais

2007 GAS Tecnologia

549

550

GAS 2007 - Manual do Usurio

2007 GAS Tecnologia

Captulo 14 - Tutoriais

2007 GAS Tecnologia

551

552

GAS 2007 - Manual do Usurio

2007 GAS Tecnologia

Captulo 14 - Tutoriais

553

14.1.5 Passo 3 - Definio no Banco


14.1.5.1 Criar banco e estrutura
Para a criao do banco de dados do projeto, no necessrio a execuo do Script atravs de
uma ferramenta de execuo de script. Bastar executar a aplicao que, aps definies da
conexo com o servidor, ser perguntado ao usurio, caso o banco ainda no exista, se deseja
cri-lo;

2007 GAS Tecnologia

554

GAS 2007 - Manual do Usurio

Se por algum motivo, desejar criar o banco atravs do Script, seguem os procedimentos:

Localizar no menu iniciar, programas, o grupo "MySQL";


Clicar no item "MySQL Query Browser";

2007 GAS Tecnologia

Captulo 14 - Tutoriais

2007 GAS Tecnologia

555

556

GAS 2007 - Manual do Usurio

2007 GAS Tecnologia

Captulo 14 - Tutoriais

2007 GAS Tecnologia

557

558

GAS 2007 - Manual do Usurio

2007 GAS Tecnologia

Captulo 14 - Tutoriais

559

14.1.6 Passo 4 - Conexo no projeto gerado


14.1.6.1 Dados sobre o banco no servidor
Na sua aplicao, ao executar pela primeira vez, ser exibido a tela de configurao da conexo
com o banco de dados:
Voc deve configurar a tela de acesso ao banco de dados, como segue abaixo:

2007 GAS Tecnologia

560

GAS 2007 - Manual do Usurio

2007 GAS Tecnologia

Captulo 14 - Tutoriais

2007 GAS Tecnologia

561

562

GAS 2007 - Manual do Usurio

Os campos disponveis so:


Tipo de banco: Determina o tipo de banco de dados
Nome do banco: Nome do banco de dados que a aplicao ir se conectar.
Servidor: Nome do servidor que a aplicao ir conectar. No caso do firebird, no necessrio
informar.
Diretrio do banco: Local onde o arquivo do banco de dados ir ser disponibilizado.
Provider: Nome do provedor de acesso a dados a ser utilizado. No caso do firebird no
necessrio informar.
Driver: Driver de conexo com o banco de dados.
Trusted Connection: Utiliza a conexo usando usurio definido no acesso ao S.O. Caso no
marque, ser solicitado o usurio e senha nos campos abaixo.
Usurio: Usurio para acesso ao banco de dados, previamente criado.
Senha: Senha para acesso ao banco de dados previamente criado.

14.2

Tutorial Firebird

14.2.1 Introduo
Este breve tutorial apresenta passo-a-passo as definies para o projeto exemplo "Estoque" que
permitem que o mesmo use adequadamente o banco de dados Firebird.
Para todos os passos so utilizadas as ferramentas bsicas que acompanham o banco de dados.

14.2.2 O que o banco de dados Firebird


14.2.2.1 Viso geral
- Textos extrados da Wide Word Web, sobre o banco de dados em questo;
Firebird (algumas vezes chamado de FirebirdSQL) um sistema gerenciador de bases de dados. Corre em
Linux, Windows, Mac OS e uma variedade de plataformas Unix. A Fundao FirebirdSQL coordena a manuten
o e desenvolvimento do Firebird, sendo que os cdigos fonte so disponibilizados sob o CVS da sourceforge.net
.
Baseado no cdigo do InterBase da Borland, quando da abertura de seu cdigo na verso 6.0 (em 25 de Julho de
2000), alguns programadores em associao, assumiram o projecto de identificar e corrigir inmeros bugs da vers
o original, surgindo a o Firebird, que se tornou um banco com caractersticas prprias, obtendo uma aceitao
2007 GAS Tecnologia

Captulo 14 - Tutoriais

563

imediata no crculo de programadores, a primeira verso 1.0. Quase que totalmente ainda compatvel com sua
origem, estando actualmente em sua verso 1.5, com muitas novidades. A verso 2.0 em fase de produo ainda,
dever trazer muitas inovaes, j est se falando at em uma verso 3.0 que hoje tem o codinome Vulcan, cujas
caracter sticas j ento seria de um super banco de dados, seu maior diferencial ainda se baseia na gratuidade, o
banco free em todos os sentidos: no h limitaes de uso, e seu suporte amplamente discutido em listas na
internet, o que facilita enormemente a obteno de ajuda tcnica. O produto se mostrou bastante seguro,
suportando sistemas com dezenas de usurios simultneos e bases de dados acima de 2GB de tamanho.
Fonte: http://pt.wikipedia.org/wiki/Firebird_(servidor_de_base_de_dados) (15/05/2007)

O Firebird derivado do cdigo do Borland InterBase 6.0. Ele tem o cdigo aberto e no possui licena dupla,
portanto voc pode utiliz-lo em qualquer tipo de aplicao, seja ela comercial ou no, sem pagar nada por isso totalmente GRATUITO!
A tecnologia usada no Firebird tem mais de 20 anos, fazendo com que ele seja um produto muito maduro e est
vel.
Fonte: http://www.firebirdnews.org/docs/fb2min_ptbr.html (15/05/2007)

Firebird 1.5 um SGBD SQL completo. poderoso e leve ao mesmo tempo, com mnima
necessidade de configurao e administrao. Atende igualmente bem a aplicaes de um nico
usurio e a aplicaes corporativas. Um simples servidor Firebird pode manipular mltiplas bases de
dados independentes, cada uma com mltiplas conexes clientes. E o melhor de tudo:
verdadeiramente Open Source, assim, livre de qualquer exigncia de licenas, mesmo para uso
comercial.
Fonte:
http://www.comunidade-firebird.org/cflp/html_docs/001_FacSheet/Firebird%201_5%20Factsheet.htm
(15/05/2007)

14.2.3 Passo 1 - Instalao do banco


14.2.3.1 Fazer o download do Firebird 2.0

Acessar o site oficial do Firebird (http://www.firebirdsql.org) ;


Clicar no link "Download" da verso mais atual do Firebird;

No exemplo abaixo, a verso mais atual a verso 2.0.1:

2007 GAS Tecnologia

564

GAS 2007 - Manual do Usurio

Trecho da pgina de download do Firebird

Fonte: http://www.firebirdsql.org/index.php?op=files (15/05/2007)


14.2.3.2 Instalar o Firebird

2007 GAS Tecnologia

Captulo 14 - Tutoriais

2007 GAS Tecnologia

565

566

GAS 2007 - Manual do Usurio

2007 GAS Tecnologia

Captulo 14 - Tutoriais

2007 GAS Tecnologia

567

568

GAS 2007 - Manual do Usurio

2007 GAS Tecnologia

Captulo 14 - Tutoriais

2007 GAS Tecnologia

569

570

GAS 2007 - Manual do Usurio

2007 GAS Tecnologia

Captulo 14 - Tutoriais

571

14.2.3.3 Download Firebird ODBC Driver

Entrar no site www.firebirdsql.org ;


Localizar no menu de navegao de "Donwload" o item "Firebird ODBC Driver";
Baixar a verso mais atual disponvel no site;
No exemplo abaixo, mesmo sendo uma verso beta, pode ser baixada a verso 2.0.

2007 GAS Tecnologia

572

GAS 2007 - Manual do Usurio

Trecho da pgina de download do Driver ODBC


Fonte: http://www.firebirdsql.org/index.php?op=files&id=odbc (15/05/2007)
14.2.3.4 Instalar Firebird ODBC Driver

2007 GAS Tecnologia

Captulo 14 - Tutoriais

2007 GAS Tecnologia

573

574

GAS 2007 - Manual do Usurio

2007 GAS Tecnologia

Captulo 14 - Tutoriais

2007 GAS Tecnologia

575

576

GAS 2007 - Manual do Usurio

2007 GAS Tecnologia

Captulo 14 - Tutoriais

2007 GAS Tecnologia

577

578

GAS 2007 - Manual do Usurio

14.2.4 Passo 2 - Definio no GAS


14.2.4.1 Selecionar tipo do BD no GAS

Na estrutura do banco de dados, marque o tipo "Firebird" para que seja criado o
script de gerao do banco e as rotinas adequadas para a manipulao de seus
dados;

Os dados de login no so obrigatrio j que agora podem ser informados no


momento da conexo com o banco, na primeira vez que a plicao executada, ou
seja, no momento da criao do arquivo .INI;

14.2.4.2 Gerar projeto

Selecionar todos os mdulos para gerao;

2007 GAS Tecnologia

Captulo 14 - Tutoriais

14.2.5 Passo 3 - Definio no Banco


14.2.5.1 Criar banco e estrutura
Localizar no menu iniciar, programas, o grupo "Firebird_2_0";
Clicar no item "Firebird ISQL Tool";

2007 GAS Tecnologia

579

580

GAS 2007 - Manual do Usurio

2007 GAS Tecnologia

Captulo 14 - Tutoriais

2007 GAS Tecnologia

581

582

GAS 2007 - Manual do Usurio

2007 GAS Tecnologia

Captulo 14 - Tutoriais

583

14.2.6 Passo 4 - Conexo no projeto gerado


14.2.6.1 Oitavo item
Na sua aplicao, ao executar pela primeira vez, ser exibido a tela de configurao da conexo
com o banco de dados:

2007 GAS Tecnologia

584

GAS 2007 - Manual do Usurio

Voc deve configurar a tela de acesso ao banco de dados, como segue abaixo:

Os campos disponveis so:


Tipo de banco: Determina o tipo de banco de dados
Nome do banco: Nome do banco de dados que a aplicao ir se conectar.
Servidor: Nome do servidor que a aplicao ir conectar. No caso do firebird, no necessrio
informar.
Diretrio do banco: Local onde o arquivo do banco de dados ir ser disponibilizado.
Provider: Nome do provedor de acesso a dados a ser utilizado. No caso do firebird no
necessrio informar.
Driver: Driver de conexo com o banco de dados.
Trusted Connection: Utiliza a conexo usando usurio definido no acesso ao S.O. Caso no
marque, ser solicitado o usurio e senha nos campos abaixo.

2007 GAS Tecnologia

Captulo 14 - Tutoriais

Usurio: Usurio para acesso ao banco de dados, previamente criado.


Senha: Senha para acesso ao banco de dados previamente criado.

2007 GAS Tecnologia

585

Captulo

XV
Captulo 15 - Extra

Captulo 15 - Extra

15

Captulo 15 - Extra

15.1

Do Clipper para o VB - Analogias

587

A Gas Tecnologia no pode ignorar que a maioria das pessoas que trabalhavam e ainda
trabalham com bancos de dados no ambiente MS-DOS, mesmo que no tenham tido a oportunidade
de um contato com a ferramenta GAS Pro para este ambiente (o que ainda est em tempo!), tiveram,
pelo menos, bastante contato com a linguagem CA-Clipper da empresa Computer Associates,
detentora de uma imensa faixa do mercado de aplicaes para banco de dados no ambiente
MS-DOS. De repente, aparecem novas tecnologias e o mercado tende para as aplicaes que rodem
no ambiente grfico do Windows. Todo mundo quer conhecer e ter o que h de mais moderno no
mercado e, neste momento, nos vem a necessidade premente do profissional se atualizar para
atender demanda e, s vezes, vem-nos aquela sensao de orfandade, impotncia e frustrao de
esquecer tudo o que sabemos e comear de novo, somente com a experincia!
Mas s a experincia j muita coisa! No h por que se desesperar e desanimar! A informtica
assim mesmo! Enquanto, por um lado, mostra-se fascinante e envolvente, por outro, o seu
dinamismo no permite acomodaes. O profissional tem de estar atento s tendncias impostas por
quem tem este poder e prosseguir sempre, se quiser continuar competitivo... Este tpico dedicado
aos profissionais que vieram da linguagem CA-Clipper e que no possuem experincia na
linguagem Visual Basic. A GAS Informtica espera que, de alguma forma, essas informaes
possam auxiliar aos usurios do GAS na migrao de suas aplicaes para o ambiente Windows.
No nosso intuito, nem seria possvel, dissecar aqui os detalhes das duas linguagens.
Sabemos, no entanto, que a maior dificuldade em se assimilar uma segunda linguagem saber o
que, nesta nova linguagem, corresponde ao que conhecemos e dominamos na primeira. S assim
fica um pouco mais fcil! exatamente isto o que pretendemos com este tpico: mostrar as
principais diferenas, chamando a ateno do projetista para os aspectos cujos detalhes podero
buscar diretamente nos manuais e na ajuda on-line do Visual Basic sem perder muito tempo. Nas
explicaes que se seguem, a sigla VB ser aplicada ao Visual Basic e a sigla CLIPPER ser
aplicada ao CA-Clipper. As palavras que aparecerem sublinhadas devem ser utilizadas para procurar
os tpicos correspondentes nos manuais do VB ou mesmo na sua ajuda on-line (boto LOCALIZAR
). Alguns termos tcnicos utilizados no somente neste tpico mas em todo o manual podem estar
definidos no Glossrio existente neste captulo.

15.1.1 Funes e procedures


As funes e procedures do CLIPPER (FUNCTION e PROCEDURE) possuem os seus
correspondentes no VB (FUNCTION e SUB) com algumas diferenas:
15.1.1.1 No Clipper
So pblicas, sendo vistas em todos os mdulos da aplicao, podendo ser declaradas com o
termo STATIC para indicar que as variveis nela declaradas tero seus valores preservados. Os
valores so retornados utilizando-se a palavrachave RETURN seguida da expresso que se deseja
retornar.

2007 GAS Tecnologia

588

GAS 2007 - Manual do Usurio

15.1.1.2 No Visual Basic


So declaradas PUBLIC ou PRIVATE podendo ser combinadas com STATIC, visando tambm
preservar suas variveis. Quando declaradas como PUBLIC, mesmo que seja dentro de um mdulo
do tipo form, podero ser vistas e referenciadas por outros mdulos. Alm do mais, uma funo deve
ser declarada utilizando-se um caractere de declarao, segundo o tipo de dado que ir retornar. Sua
sintaxe geral :
'sintaxe geral - aps o apstrofe em VB tudo comentrio
[Public | Private] [Static] Function NomeFunc [(Par1, ParN)][Astipo]
Dim a As Tipo, b As Tipo
[instrues]
[NomeFunc = expresso]
[Exit Function]
[instruoes]
[NomeFunc = expresso]
End Function

15.1.2 Retornando o valor de uma funo em Visual Basic


As funes em VB no tm a palavra chave RETURN para retornar o valor de uma funo. Para
retornar este valor, basta igualar o nome da funo expresso que se quer retornar, como na
penltima linha da funo exemplo mostrado anteriormente.

15.1.3 Uso de parmetros opcionais


Parmetros opcionais podem ser passados s funes e procedures do VB; porm, devem ser
passados em ltimo lugar na lista de parmetros formais. Procure, na ajuda do VB, as
palavras-chaves Optional e ParamArray para se inteirar dos detalhes.

15.1.4 Chamadas a funes externas


Funes externas no Windows so residentes em arquivos do tipo DLL e devem ser declaradas
dentro de um mdulo do VB com a palavra-chave DECLARE.

15.1.5 Variveis de memria


As variveis de memria em VB tm uma abrangncia muito semelhante do CLIPPER e isto
no deve apresentar muitas dificuldades de assimilao. Devem ser declaradas com as
palavras-chaves Dim dentro de uma Function ou de uma Sub. A maior diferena, no entanto, est
nos tipos de variveis, que, no VB, utilizam um caractere de declarao no nome para distinguir o
seu tipo. O projetista dever ter cuidados especiais com os tipos de variveis numricas, pois elas
so distribudas por faixas no VB, dependendo da magnitude dos valores que iro armazenar. O tipo
de dado Variant do VB se assemelha mais s variveis do CLIPPER pois no requer caracteres de
declarao e armazenam qualquer tipo de dado.

15.1.6 Arquivos DBF, NTX e DBT versus TABELAS


Enquanto que, no CLIPPER, o banco de dados composto de diversos arquivos de formato DBF,
DBT e NTX, o VB trata o banco de dados em um s arquivo com extenso MDB e dentro deste
rmazena o que seria os arquivos DBF (todos denominados tabelas). Os arquivos do tipo DBT usados
para armazenar os textos de campo memo no tm correspondentes dentro do VB. Os campos

2007 GAS Tecnologia

Captulo 15 - Extra

589

memo do VB so armazenados diretamente, como um campo normal de uma tabela. O que seriam
os arquivos NTX so armazenados como objetos do tipo ndice. Outros objetos so tambm
armazenados nos arquivos MDB do VB, como, por exemplo, queries e relaes.

15.1.7 Tipos de campos


Os tipos de campos armazenados nas tabelas do banco de dados se assemelham muito aos do
CLIPPER. Os diversos tipos de campos numricos existentes no VB requerem cuidados especiais
devido magnitude do valor que armazenam. Por esta razo, o utilitrio conversor de arquivos DBF,
que o GAS gera por solicitao do projetista, transforma todos os campos numricos existentes nos
arquivos DBF em campos do tipo preciso dupla no arquivo MDB para ter a certeza de que no
ocorrero erros de overflow (estouro). Se desejar, o projetista poder, por sua conta e risco,
alter-los para outro tipo. Campos do tipo memo existem no VB da mesma forma que no CLIPPER;
porm, no esto vinculados a arquivos em separado. Localize o tpico Data Types, dentro da ajuda
do VB, para obter maiores detalhes.

15.1.8 Operadores
Os operadores em VB funcionam da mesma maneira que no CLIPPER, ressaltando apenas que
no existem no VB os operadores INLINE (:=), INCREMENTO (+= e ++) e DECREMENTO (-= e -- ).
O operador Not Equal (!=) tem o seu corrrespondente <> (diferente de) em VB. Tambm os
operadores NOT, AND e OR no necessitam dos pontos no incio e no final no VB.

15.1.9 Estruturas de cdigo


A maioria das estruturas da linguagem CLIPPER tem seu correspondente VB de maneira muito
semelhante. A estrutura em VB, a seguir, corresponde instruo DO... CASE do CLIPPER:
Select Case MinhaVar
Case 1
[Instrues]
Case 2
[Instrues]
Case Else
[Instrues]
End Select

A estrutura em VB, a seguir, corresponde estrutura DO.. WHILE ... SKIP ... ENDDO do
CLIPPER para ler um arquivo:
Do While Not objeto.EOF
[Instrues]
[objeto.MoveNext]
[Exit Do]
Loop

Esta estrutura em VB corresponde ao FOR ... NEXT do CLIPPER:


For k = 1 To N [STEP n]
[Instrues]
Exit For
Next

2007 GAS Tecnologia

590

GAS 2007 - Manual do Usurio

A estrutura em VB, a seguir, corresponde mesma estrutura IF... ELSEIF... ELSE... ENDIF do
CLIPPER:
If a = 1 Then
[Instrues]
Else If a=2 Then
[Instrues]
Else
[Instrues]
End If

15.1.10 Funes do Clipper e do GAS-DOS versus Visual Basic


Diversas funes existentes no CLIPPER no tm mais razo de ser dentro do VB, devido ao
ambiente grfico do Windows e programao voltada a objeto do VB. Algumas, no entanto, podem
ser utilizadas exatamente da mesma maneira como eram utilizadas no CLIPPER e outras, com
alguma variao de nome e sintaxe, podem ser utilizadas para se obter os mesmos resultados.
Existem ainda outras funes que a GAS Informtica desenvolveu para suprir a necessidade de
compatibilizao. Essas funes tm o seu cdigo fonte disponibilizado no mdulo principal, de
extenso .BAS, que o GAS gera nas aplicaes.
15.1.10.1Funes idnticas
As funes e comandos do CLIPPER, que constam da lista a seguir, tm seus correspondentes
em VB, com a mesma sintaxe e finalidade, podendo ser utilizadas da mesma maneira:
Abs( )
Asc( )
Chr( )
Cls
Close
CurDir( )
Date( )
Exp( )
Int( )
Left( )
Len( )
Log( )
LTrim( )
M ax ( )
Min( )
Mid( )
Mod( )
Right( )
RTrim( )
Str( )
Val( )

Retorna valor absoluto de expresso numrica


Retorna valor ASCII do primeiro caractere
Retorna o caractere de um valor ASCII
Limpa a sada de vdeo
Fecha arquivo
Retorna diretrio corrente
Retorna data do sistema
Retorna logartimo base E
Retorna inteiro de uma expresso numrica
Retorna poro esquerda
Retorna tamanho de string
Retorna logartmo decimal
Retira brancos esquerda
Mximo entre duas expresses numricas
Mnimo entre duas expresses numricas
Retorna poro de uma string
Retorna resto de uma diviso
Retorna poro direita
Remove espaos ao final de uma string
Transforma nmero em caractere
Retorna o valor de uma expresso string

15.1.10.2Funes com correspondncia no Visual Basic


As funes e comandos do CLIPPER, que constam na relao a seguir, tm correspondentes em
VB ou nos programas fontes gerados pelo GAS e executam a mesma funo com sintaxe diferente.
Na lista infracitada, pesquise a ajuda do VB, utilizando as palavras que aparecem em negrito. As
funes marcadas com o caractere * foram implementadas pela GAS Informtica, devendo ser

2007 GAS Tecnologia

Captulo 15 - Extra

591

procuradas no tpico Funes Genricas Utilizadas na Aplicao ou nos comentrios dos


programas fontes gerados pelo GAS dentro do mdulo principal de extenso .BAS:
?A
??
ALLTRIM( )
APPEND BLANK
AT( )
ATAIL
BOF( )
CALCDATA( )
CDOW( )
CMONTH( )
CTOD( )
DBSEEK( )
DBSETORDER( )
DBSTRUCT( )
DECLARE
DELETE FILE
DISPOUT( )
EMPTY( )
EOF( )
ERASE
FCLOSE( )
FCOUNT( )
FCREATE( )
FILE( )
FIND
FOPEN( )
FOUND( )
FREAD
FREADSTR( )
FRENAME( )
FSEEK( )
FWRITE( )
GETENV( )
GO BOTTOM
GO TOP
INPUT
KEYBOARD
LASTREC( )
LOCATE
LOWER( )
MEMOREAD( )
NOTE
PACK
PADR( )
PADL( )
PCOL( )
PROCEDURE
PROW( )
QUIT
RAT( )

2007 GAS Tecnologia

Print A
Print A;
Trim
Objeto.Recordset.AddNew
Instr
Ubound
Objeto.Recordset.BOF
DateDiff
NSem *
NMes *
CDate
Objeto.Recordset.Seek
Objeto.Recordset.Index="nome"
Collection object
Dim
Kill NomeArquivo
Print
Vazio *
Objeto.Recordset.EOF
Kill NomeArquivo
Close
Collection object
Open
Existe *
Objeto.Recordset.FindNext
Open "Arq" For Binary As # Area
Objeto.Recordset.Nomatch = False
Get # Area
Get # Area
Name Arq1 As Arq2
Seek
Put # Area
Environ
Objeto.Recordset.MoveLast
Objeto.Recordset.MoveFirst
InputBox
SendKeys
Collection object
Objeto.Recordset.FindNext
Lcase
GetChunk
Rem ou '
CompactDataBase
RPad *
LPad *
Printer.CurrentX
Sub
Printer.CurrentY
End
Rat *

592

GAS 2007 - Manual do Usurio

RECCOUNT( )
RELEASE
RENAME
REPLICATE
RUN
SEEK
SET
Open X For Output |
SKIP
SKIP -1
SQRT
STRTRAN( )
STUFF( )
SUBSTR( )
TIME( )
UPPER( )

Collection Object
ReDim
Name
String function
Shell
Seek
ALTERNATE TO/ON
Append As # n
Objeto.Recordset.MoveNext
Objeto.Recordset.MovePrevious
SQR
Substitui *
Substitui *
Mid
Now
Ucase

15.1.10.3Funcoes criadas pela GAS Informatica


As funes da lista a seguir foram desenvolvidas pela GAS Tecnologia nos programas gerados
pelo GAS-DOS e continuam a existir no GAS com seus cdigos fontes dispostos na aplicao
gerada ou possuem algum correspondente no VB com sintaxe diferente.
CALCDATA( )
CHDIR( )
CHDRIVE( )
DBOX( )
DDMM( )
DDMMAA( )
DOSDATA( )
GDV1( )
GDV2( )
MKDIR( )
MMAA( )
MTAB( )
MTAB( )
PARSE( )
PWORD( )
RMDIR( )
USEARQ( )
VDV1( )
VDV2( )
VHORA
VUF( )

15.2

DateDiff
ChDir
ChDrive
MsgBox
DDMM *
DDMMAA *
Date Statement
GDV1 *
GDV2 *
MkDir
MMAA *
Campo tipo Lista Interna
Parse *
PTab *
Permitido *
RmDir
AbreBancoDados *
VDV1 *
VDV2 *
VHora *
VUf *

Glossario
Este pequeno glossrio tem a finalidade de proporcionar alguns termos de uso corrente nas
aplicaes Windows. Os termos que aparecem sublinhados tambm possuem entradas neste
glossrio, no singular ou no plural.

2007 GAS Tecnologia

Captulo 15 - Extra

593

15.2.1 Alias
um nome alternativo dado a um campo ou expresso para ser utilizado na clusula SELECT de
uma instruo SQL, no intuito de faz-la mais curta, mais significativa ou, ainda, para evitar conflitos
na sua execuo.

15.2.2 ANSI
ANSI significa American National Standards Institute. uma tabela ou conjunto de caracteres (8
bits) usado pelo Windows para permitir a representao de at 256 caracteres (0 - 255). Os
primeiros 128 caracteres (0 - 127) correspondem basicamente s letras encontradas no teclado. Os
demais caracteres representam caracteres especiais, como letras de alfabeto internacional, acentos,
smbolos de moedas e fraes.

15.2.3 Aplicao
Uma aplicao ou sistema aplicativo um conjunto de cdigos e elementos visuais que trabalham
juntos em um s programa. So elaboradas com o objetivo de executar operaes inter-relacionadas
de modo a permitir a organizao de informaes que possam ser rapidamente recuperadas,
consultadas, processadas, listadas, etc.

15.2.4 rea de cliente


toda a rea til de um formulrio MDI, excetuando-se a barra de ferramentas (se visvel) ou
outros objetos que possam ser colocadas neste tipo de formulrio (painel e PictureBox). Na rea de
cliente, os formulrios filhos so agrupados, minimizados e maximizados.

15.2.5 Argumento
Um valor qualquer que passado a uma funo ou sub-rotina para ser por ela utilizado e, s
vezes, transformado.

15.2.6 Arquivo de inicializao


um arquivo de formato texto ASCII, utilizado para conter parmetros de configurao de uma
aplicao no ambiente Windows. Geralmente um arquivo de inicializao utiliza a extenso .INI e o
nome do programa executvel que o manipula.

15.2.7 Arquivo DEF


Os arquivos de extenso .DEF possuem um formato texto, proprietrio do GAS e so por ele
criados e utilizados para controlar as estruturas do banco de dados da aplicao a ser gerada ou
mesmo na criao dos utilitrios de adaptao de arquivos e conversor de DBF para controlar as
novas estruturas de dados.

15.2.8 Arquivo resource


Tambm denominado arquivo de recursos, este um arquivo criado pelo GAS, com extenso

2007 GAS Tecnologia

594

GAS 2007 - Manual do Usurio

.RC, que se apresenta com a xtenso .RES aps o processo de compilao, podendo ser includo
num projeto Visual Basic. Este tipo de arquivo pode conter imagens, strings de texto, cones e outros
recursos. Dispondo essas informaes em um arquivo separado, pode-se mudar a informao sem
reeditar o cdigo do programa fonte, sendo muito til para aplicaes que sero traduzidas para
outras lnguas. Cada projeto em Visual Basic pode conter somente um arquivo resource associado.
O GAS utiliza um formato proprietrio de arquivo resource (.RES) que permite a vinculao de
quaisquer formatos de imagem e sem limite de amanho. Alm disso, o executvel tende a diminuir
consideravelmente com o uso do arquivo resource, visto que as imagens no mais estaro
vinculadas diretamente no executvel. O arquivo resource deve acompanhar o aplicativo final gerado
para que este possa funcionar.

15.2.9 Arranjo ou varivel indexada


um conjunto de elementos indexados seqencialmente contendo o mesmo tipo de dado. Cada
elemento em um arranjo tem um nico nmero de ndice identificador. Mudanas feitas em um
elemento do arranjo no atingem os outros elementos deste. Quando s elementos de um arranjo so
controles, este recebe o nome de arranjo de controles.

15.2.10 ASCII
ASCII significa American Standard Code for Information Interchange. uma tabela ou conjunto
de caracteres (7 bits) usado largamente para representar letras e smbolos encontrados nos teclados.
O conjunto de caracteres ASCII representa os primeiros 128 caracteres da tabela ANSI. Certos tipos
de arquivos so normalmente denominados arquivos ASCII em virtude de s conterem esses tipos
de caracteres e, ainda, cada uma de suas linhas, serem terminadas com os caracteres de cdigo 13
e 10 (retorna ao incio e nova linha).

15.2.11 Asterisco
O caractere (*) utilizado como "curinga" em expresses SQL que contenham a clusula LIKE
para aceitar qualquer seqncia de caracteres. Por exemplo, a expresso LIKE "*cidade*" aceita
qualquer nome contendo a palavra "cidade". O asterisco pode tambm ser utilizado para incluir todos
os campos existentes nas tabelas envolvidas em uma query SQL. Por exemplo, SELECT * FROM
MinhaTab retorna todos os campos (colunas) da tabela MinhaTab.

15.2.12 Banco de campos


Coleo de campos e atributos, formada durante a execuo de um projeto, que serve para criar
novas definies de campos a partir de outros previamente definidos.

15.2.13 Banco de dados


uma coleo organizada de informaes. Existem muitas maneiras de se organizar um banco
de dados. Dentre as mais populares esto o mtodo de sistema de arquivos seqencial indexado
(ISAM), bancos de dados modelo network, bancos de dados hierrquicos e bancos de dados
relacionais. Esses tipos diferem no somente na maneira como armazenam e recuperam os dados,
mas tambm no modelo conceitual que eles se apresentam aos usurios e programadores.
Ultimamente o modelo relacional em se firmado como padro para projetos de bancos de dados. Isto

2007 GAS Tecnologia

Captulo 15 - Extra

595

se deve ao prprio poder do modelo relacional e, ainda, por proporcionar uma interface padro
chamada SQL (Structured Query Language) que permite muitas ferramentas e produtos diferentes
de bancos de dados trabalharem em conjunto, de maneira consistente e de fcil aprendizado. Um
banco de dados pode conter diversos objetos, como tabelas, ndices, relaes, queries, etc.

15.2.14 Banco de dados multiusurio


um banco de dados que permite mais de um usurio acessar e modificar o mesmo conjunto de
dados ao mesmo tempo. Em alguns casos, o usurio adicional pode ser uma outra instncia da
prpria aplicao executando no mesmo ambiente e que acessa os mesmos dados como se fosse
qualquer outra aplicao.

15.2.15 Campo invisvel


Um campo invisvel um tipo de campo que o usurio nunca pode visualizar. Este tipo de campo
definido normalmente com a finalidade de receber valores por meio de processos de digitao em
outras tabelas. A visibilidade de um campo estabelecida durante a definio da estrutura do banco
de dados.

15.2.16 Campo no editvel


um campo que nunca pode ser editado pelo usurio, utilizado normalmente para receber
valores a partir de processos de digitao em outras tabelas. Campos no editveis podem ser
definidos no momento da formatao da tela de entrada de dados, por intermdio da propriedade
Editvel do controle textbox que ser utilizado para a sua digitao. Esta propriedade pode ser
ajustada para Sim (default = editvel) ou No (no editvel).

15.2.17 Barra de ferramentas


Constitui-se de um painel na parte superior da janela, contendo diversos botes com cones
representativos de suas funes, servindo para acelerar o acesso a operaes mais comumente
usadas (atalho). Normalmente, as funes que so colocadas em botes na barra de ferramentas
podem tambm ser acessadas via menu.

15.2.18 Bit
Abreviao de "binary digit" (ou dgito binrio). a menor unidade de dados que um computador
pode armazenar. Bits so expressos por valores 1 e 0.

15.2.19 Bitmap
uma imagem representada por pixels e armazenada como uma coleo de bits, na qual cada
bit corresponde a um pixel. Em sistemas a cores, mais de um bit corresponde a cada pixel. Um
arquivo bitmap tem normalmente a extenso .BMP.

15.2.20 Bookmark
uma string gerada pelo sistema identificando o registro que est contido na propriedade
2007 GAS Tecnologia

596

GAS 2007 - Manual do Usurio

Bookmark de um objeto recordset. Se o valor da propriedade Bookmark for designado para uma
varivel, podese posteriormente tornar este registro novamente corrente, designando para a
propriedade Bookmark o valor desta varivel.

15.2.21 Booleano ou lgico


um tipo de dado cujo valor pode ser Falso (False) ou Verdadeiro (True). Valores booleanos
podem ser resultados de avaliao de expresses, podendo ser armazenadas em banco de dados.

15.2.22 Caixa de dilogo


uma janela especial mostrada pelo sistema ou aplicao para solicitar uma resposta do usurio
ou para exibir algum tipo de informao.

15.2.23 Campo
uma diviso do registro. Nos projetos do GAS, um campo possui diversos atributos como nome,
tamanho, tipo, etc. Em uma tabela, os campos correspondem s suas colunas e os registros s suas
linhas.

15.2.24 Campo Alvo


o campo na tabela-alvo que sofre um processamento qualquer, determinado por um
lanamento ou por um processamento a partir da digitao de dados em outras tabelas.

15.2.25 Campo chave


um campo de uma tabela designado para compor a chave de indexao da mesma, ou seja, o
campo que identifica um registro ou grupo de registros em uma tabela. Uma tabela poder ter mais
de um campo-chave; porm, pesquisas no SQL sobre um determinado campo esto sempre
subordinados aos campos precedentes, ou seja, se a pesquisa for feita sobre a informao do
segundo campo, o primeiro tambm tem que ser informado.

15.2.26 Campo estrangeiro


um campo qualquer definido dentro de uma tabela estrangeira, que pode ser referenciado e
mostrado em uma janela de digitao de informaes, dentro de uma frmula ou como campo alvo
de um processamento ou de um lanamento.

15.2.27 Caracteres curinga


Alguns caracteres como o asterisco (*), ponto de interrogao (?), cancela (# ), ponto de
exclamao (!), hfen (-) e colchetes ([ ]) so considerados caracteres "curingas". Voc pode usar
esses caracteres em queries e expresses que incluam todos os registros, nomes de arquivos e
outros itens que se iniciam com caracteres que correspondam a um determinado padro. Voc pode
usar tambm esses caracteres para refinar mais uma pesquisa usando uma instruo SQL.

2007 GAS Tecnologia

Captulo 15 - Extra

597

Veja a tabela a seguir:

Caractere

Exemplo

Localiza

pes*
*

pessoa, peste, pesca, mdico, ortopdico


*dico

p?lha

palha, pilha, pulha

1#3

103, 113, 143

[]

p[ai]lha

pulha (no palha)

p[!ai]lha

pulha (no palha)

p[a-c]lha

palha, pclha, pblha

Os caracteres *, ? , # e [ podem localizar a si mesmos somente se includos entre colchetes.

15.2.28 Caractere de declarao


um caractere anexado ao final de um nome de uma varivel que determina o tipo de dado que a
mesma pode armazenar, como, por exemplo, Nome$, Valor!, Total# , etc. Alguns dos tipos utilizados
so: % para varivel inteira, ! para preciso simples, # para preciso dupla e $ para varivel do tipo
string. O tipo de dado variant no requer qualquer caractere de declarao em especial e pode
armazenar qualquer tipo de dado.

15.2.29 Chave estrangeira


Um ou mais campos de tabelas que se referem a um campo ou campos de uma chave primria
de outra tabela. Por exemplo, uma lista de cdigos de peas contm uma chave estrangeira para
uma tabela de inventrio que contenha referncias a esses cdigos de peas. utilizada quando se
estabelece uma integridade referencial para um banco de dados.

15.2.30 Chave primria


Um ou mais campos cujo valor ou valores unicamente identificam cada registro em uma tabela.
Em uma tabela pode existir somente uma chave primria. Uma tabela de empregados, por exemplo,
poderia usar o nmero de identidade como chave primria.

2007 GAS Tecnologia

598

GAS 2007 - Manual do Usurio

15.2.31 Classe
a definio formal de um objeto. A classe atua como um gabarito a partir do qual uma instncia
de um objeto criada em tempo de execuo. A classe define as propriedades de um objeto e os
mtodos usados para controlar o comportamento do mesmo.

15.2.32 Clusula From


a parte da instruo SQL que indica a localizao do dado a ser examinado pela query,
especificando qual banco de dados e quais tabelas sero includas na pesquisa dos dados
desejados. A localizao especificada pela clusula FROM algumas vezes chamada de domnio.

15.2.33 Clusula Group by


a parte da instruo SQL que determina a maneira como os registros sero agrupados para
serem sumarizados.

15.2.34 Clusula Order by


a parte da instruo SQL que determina a ordem em que os registros sero recuperados e
mostrados.

15.2.35 Clusula Select


a parte da instruo SQL que determina quais os campos (colunas) das tabelas envolvidas
sero considerados nos registros a serem recuperados.

15.2.36 Clusula Where


a parte da instruo SQL que especifica quais registros sero recuperados. A clusula WHERE
limita o domnio de uma query e especifica quais colunas sero usadas para ligar mltiplas tabelas.

15.2.37 Clipboard
uma localizao temporria de memria, usada para transferir texto, grficos e cdigo entre
janelas ou aplicaes. No GAS tambm utilizada para transferncia de definies inteiras de
tabela, janelas de dados, etc.

15.2.38 Cdigo Fonte


Veja o tpico Programa fonte.

2007 GAS Tecnologia

Captulo 15 - Extra

599

15.2.39 Compilao
o processo de transformao de instrues escritas em uma linguagem de programao
qualquer, existente em um programa fonte, em uma linguagem numrica, que diretamente
executada pelo processador da mquina. O programa utilitrio que executa esta tarefa o
compilador, cujo resultado um programa executvel (.EXE).

15.2.40 Consulta pr-definida


um tipo de mdulo que inserido na rvore com o intuito de proporcionar ao usurio final uma
interface de consulta aos dados de uma ou mais tabelas da aplicao. Uma consulta definida por
intermdio de uma interface amigvel oferecida pelo GAS.

15.2.41 Controle
um objeto que pode ser colocado em uma janela que tem o seu prprio conjunto de
propriedades e eventos. Os controles so usados para receber informaes do usurio, mostrar
informaes e disparar eventos. Os controles podem ser manipulados utilizando-se os mtodos
disponveis para o mesmo. Alguns controles so interativos (respondem a aes do usurio),
enquanto outros so estticos (acessados somente via cdigo do programa).

15.2.42 Controles externos


A filosofia de arquitetura aberta do Visual Basic permite que terceiros possam desenvolver
controles para serem adicionados a seus projetos. Esses controles externos ou de terceiros podem
conter objetos de interface e funes exportadas, que podem ser utilizadas por outras aplicaes. A
Microsoft os denomina atualmente de controles ActiveX, o que antes chamava de controle OLE. Uma
vez adicionado a um projeto do Visual Basic, estes aparecem na sua caixa de ferramentas (toolbox),
podendo ser utilizados como se fossem controles internos do prprio Visual Basic.

15.2.43 Controle vinculado


um controle que reconhece dados e que proporcionam acesso a um campo especfico em um
banco de dados atravs de um data control. Um controle vinculado pode ser ligado ao dado por meio
de suas propriedades DataSource e DataField. Quando um data control move de um registro para
outro, todos os controles a ele ligados mudam para mostrar os dados dos campos no registro
corrente. Quando o usurio altera o dado em um controle vinculado e ento move para um outro
registro, as alteraes so automaticamente gravadas no banco de dados.

15.2.44 Copy buffer


uma determinada rea de memria criada pelo gerenciador do banco de dados para armazenar
temporariamente o contedo de um registro que esteja aberto para edio.

15.2.45 Crystal reports


Programa utilitrio formatador de relatrios que acompanha o Visual Basic ou pode ser adquirido
independente deste. Este programa invocado pelo GAS para permitir que o projetista possa
formatar os relatrios e etiquetas que necessitam ser criados na aplicao, quando o referido
2007 GAS Tecnologia

600

GAS 2007 - Manual do Usurio

projetista no faz uso do G-Reports, outro utilitrio formatador de relatrios e etiquetas desenvolvido
pela Gas Tecnologia e intrnseco ao GAS. As especificaes dos relatrios do Crystal Reports so
gravadas em arquivos de extenso .RPT, cuja presena necessria durante a operao da
aplicao final, para que o relatrio correspondente seja emitido.

15.2.46 Data control


um controle do Visual Basic utilizado para conectar uma aplicao com uma fonte de dados
selecionada. Um controle vinculado requer o uso deste objeto como fonte de dados.

15.2.47 Data bound


Ver tpico Controle Vinculado.

15.2.48 Default
Significa "padro" e corresponde a uma informao ou situao que ser assumida pelo
programa quando esta no for obtida durante a sua execuo.

15.2.49 DLL
um tipo de biblioteca dinmica (Dynamic Link Library) contendo funes e sub-rotinas
reutilizveis. Desde que exista em uma DLL, uma funo ou sub-rotina pode ser invocada pelo
programa para executar uma tarefa qualquer, bastando que seja declarada previamente. Essas
bibliotecas se apresentam em arquivos com extenso .DLL.

15.2.50 Domnio
Tambm denominado de escopo, domnio um conjunto de registros definidos por uma tabela,
query ou expresso SQL. O termo escopo tambm utilizado para especificar a abrangncia de uma
varivel. Por exemplo, uma varivel que tenha escopo Global "vista" em qualquer parte da
aplicao. Uma varivel Local somente pode ser referida dentro da rotina onde foi definida.

15.2.51 Dynaset
um tipo de recordset que retorna um conjunto dinmico de ponteiros para um banco de dados.
A exemplo de um recordset do tipo table ou snapshot, um dynaset retorna dados em registros
(linhas) e campos (colunas). Diferentemente de um recordset tipo table, um dynaset pode ser
resultante de uma query que junta duas ou mais tabelas. Os registros em um dynaset podem ser
atualizados.

2007 GAS Tecnologia

Captulo 15 - Extra

601

15.2.52 Equi-join
um tipo de relacionamento onde registros de duas tabelas so combinados e adicionados ao
objeto recordset somente se existirem valores iguais nos campos de ligao entre elas. Em Visual
Basic, equi-join referido como sendo inner-join.

15.2.53 Etiqueta
um tipo de mdulo que pode ser inserido nos projetos do GAS. Este tipo de mdulo tratado e
definido da mesma maneira como tratado o mdulo do tipo relatrio.

15.2.54 Evento
uma ao reconhecida por um objeto, como um clique de mouse ou uma tecla pressionada, e
para o qual podem ser programadas instrues a serem executadas (cdigo). Eventos podem ocorrer
como resultado de uma ao do usurio ou pelo cdigo do programa ou, ainda, podem ser
disparados pelo sistema.

15.2.55 Event procedure


uma procedure que automaticamente invocada em resposta a um evento iniciado pelo
usurio, cdigo de programa ou sistema (Windows).

15.2.56 Exclusive
Indica se um banco de dados ou tabela pode ser compartilhado por outros usurios em um
ambiente multiusurio. Se o banco de dados ou tabela for aberto em modo exclusivo, no poder ser
compartilhado.

15.2.57 Filtro
um conjunto de critrios aplicados a registros de modo a criar um subconjunto destes. Os filtros
usados nas aplicaes do GAS utilizam queries SQL.

15.2.58 Form
Quer dizer "formulrio". uma janela ou caixa de dilogo. Forms so recipientes (containers) de
controles. Um form para interface de documentos mltiplos (MDI) pode tambm atuar como
recipiente de outros forms (filhos) e de outros controles.

15.2.59 Frmula
Durante o desenvolvimento de um projeto por meio do GAS, uma frmula pode ser definida tanto
como sendo o resultado de uma operao envolvendo campos numricos de uma ou mais tabelas,
bem como sendo um campo de uma tabela qualquer (campo estrangeiro) que mostrado em uma
janela de digitao. Para definir uma frmula a ser colocada na janela de digitao de dados, o
projetista dever designar a propriedade frmula de um controle do tipo label, painel ou frame.

2007 GAS Tecnologia

602

GAS 2007 - Manual do Usurio

15.2.60 Formulrio avulso


Este tipo de mdulo o ponto de entrada que o GAS coloca no menu da aplicao para um
formulrio (form) pertencente a uma outra aplicao, que o projetista deseja inserir na rvoredo
projeto. O GAS no controla o cdigo existente em mdulos deste tipo inseridos na rvore, sendo
responsabilidade do projetista a compatibilidade com os demais mdulos do projeto.

15.2.61 Funo (Function)


uma procedure que realiza uma tarefa especfica dentro de um programa e retorna um valor.
Uma Function inicia com a instruo Function e termina com a instruo End Function.

15.2.62 Funo agregada


uma funo, como por exemplo Count (conta) e Avg (mdia), usada ao criar uma query que
calcula totais. Ao escrever expresses e em programao, pode-se usar funes agregadas de SQL
para determinar vrias estatsticas.

15.2.63 Grade
um objeto para visualizao e digitao de tabelas, que possibilita a visualizao de diversos
registros ao mesmo tempo. A Gas Tecnologia desenvolveu um controle OCX (gDbGrid) constitudo
de uma grade onde podem ser digitadas informaes com diversos recursos de edio. Este recurso
implementado nas aplicaes geradas sempre que necessrio.

15.2.64 Grupo
uma coleo de usurios de uma aplicao, identificada por um nome de grupo e por um
identificador pessoal. Permisses designadas a um grupo se aplicam a todos os usurios deste
grupo.

15.2.65 Handle
um valor inteiro definido pelo ambiente de operao (Windows) e usado por um programa para
identificar e acessar um objeto, como, por exemplo, um form ou controle.

15.2.66 cone
a representao grfica de um objeto ou conceito, comumente usado para representar
aplicaes em estado minimizado dentro do Windows. Essencialmente, um cone um bitmap com
um tamanho mximo de 32 x 32 pixels. Nomes de cones tm a extenso .ICO.

15.2.67 ndice
uma referncia cruzada dinmica de campos (colunas) de uma ou mais tabelas, que permite a

2007 GAS Tecnologia

Captulo 15 - Extra

603

recuperao rpida de registros especficos de uma tabela. medida que registros so adicionados,
atualizados ou apagados, o sistema de gerenciamento do banco de dados atualiza automaticamente
o ndice para refletir as mudanas. Quando utilizado em um recordset do tipo table, o ndice atual
determina a ordem sob a qual os registros so retornados no recordset. Uma tabela pode ter diversos
ndices associados. O termo ndice pode tambm se referir subscrio de um arranjo ou varivel
indexada.

15.2.68 Inner join


um tipo de relacionamento entre duas tabelas na qual os registros das duas tabelas so
combinados e adicionados ao recordset somente se os valores dos campos de ligao
corresponderem a uma condio especfica. Por exemplo, um equi-join um inner-join na qual os
valores dos campos de ligao precisam ser iguais.

15.2.69 Integridade referencial


Regras que estabelecem e preservam os relacionamentos entre tabelas quando se adiciona,
altera ou apaga registros. Forando-se a integridade referencial, o usurio fica proibido de adicionar
registros em uma tabela relacionada para a qual no exista uma chave primria, de alterar registros
de uma tabela primria que redundem em registros rfos na tabela relacionada ou apagar registros
de uma tabela primria quando existam registros correspondentes na tabela relacionada.

15.2.70 Instncia
Qualquer conjunto de objetos que compartilha a mesma classe. Por exemplo, mltiplas instncias
de uma classe Form compartilham o mesmo cdigo de programa e so carregados com os mesmos
controles que foram projetados na classe do Form. Em tempo de execuo da aplicao,
propriedades individuais dos controles em cada instncia podem ser ajustadas com valores
diferentes.

15.2.71 Janela
um recipiente para os controles utilizados em uma aplicao. Sempre existe uma janela ativa
dentro de uma aplicao. Seu ttulo aparece normalmente em uma cor diferente das demais.

15.2.72 Janela modal


Descreve um form (window) ou caixa de dilogo que requer uma ao do usurio, antes que o
foco possa passar para outro form ou caixa de dilogo.

15.2.73 Janela tipo parmetro


Veja tpico Parmetros do sistema.

15.2.74 Jet Database Engine


o Sistema de Gerenciamento de Banco de Dados (SGBD) desenvolvido pela Microsoft, que
permite o uso de uma linguagem de programao para acessar, manipular e gerenciar bancos de
2007 GAS Tecnologia

604

GAS 2007 - Manual do Usurio

dados, seus objetos e sua estrutura. Uma das linguagens utilizada para a sua manipulao o
Visual Basic. O GAS cria programas nesta linguagem para controlar os bancos de dados das
aplicaes geradas.
Devido utilizao do Microsoft Jet Engine v3.6, os aplicativos gerados pelo GAS so
compatveis com bancos de dados MS-Access 2000 e verses anteriores.

15.2.75 Join
uma operao de banco de dados que combina alguns ou todos os registros de duas ou mais
tabelas, com um equi-join, outer-join ou self-join. Geralmente, um join se refere associao entre
um campo de uma tabela e um outro campo, do mesmo tipo de dado, em uma outra tabela. Um join
criado por meio de uma instruo SQL.

15.2.76 keyword
Palavra chave. uma palavra ou smbolo reconhecido como parte da linguagem de programao,
como, por exemplo, uma instruo, um nome de funo, um operador, etc.

15.2.77 keyword
Durante a definio de um projeto de sistema atravs do GAS, podem ser definidos processos
especiais sobre as diversas tabelas do banco de dados. Um deles o lanamento que se constitui na
criao de um ou mais registros vazios dentro da tabela alvo seguido do preenchimento dos campos
dos novos registros com informaes contidas em frmulas ou informaes contidas em outras
tabelas. O lanamento semelhante ao processamento, s que, com este ltimo, no ocorre a
criao de novos registros. Um processamento anlogo a uma edio de registros e um
lanamento anlogo a uma incluso de registros.

15.2.78 Left join


um tipo de relacionamento entre duas tabelas, que inclui todos os registros da primeira tabela
(esquerda), mesmo se no existirem valores correspondentes nos campos dos registros da tabela da
direita.

15.2.79 Left outer join


um outer-join no qual todos os registros do lado esquerdo de uma operao left-join so
adicionados ao objeto recordset, mesmo que no existam valores correspondentes nos campos dos
registros da tabela da direita. Registros da tabela da direita so combinados com aqueles da tabela
da esquerda somente quando existem valores correspondentes nos campos de ligao. Quando um
registro da tabela da esquerda no corresponde, uma coluna com valores nulos criada no lado
direito.

15.2.80 Linha separadora


medida que o projetista vai inserindo mdulos na rvore do projeto, o mesmo est
automaticamente modelando o menu da aplicao final. Este tipo de mdulo existe apenas para

2007 GAS Tecnologia

Captulo 15 - Extra

605

permitir que se insira na rvore do projeto as linhas separadoras de itens de menus.

15.2.81 Mscara
um conjunto de caracteres associados ao campo, que serve para controlar o tipo e a posio de
dgitos que sero inseridos pelo usurio. Os caracteres especiais especificados nas mscaras so:
ponto de exclamao (!) - significa que o caractere que for digitado nesta posio ser
transformado para maisculo, aceitando qualquer tipo de caractere;
letra maiscula (A) - significa que o caractere que for digitado nesta posio s poder ser
alfabtico, acentuado ou no, impedindo a insero de dgitos numricos;
nmero nove (9) - significa que somente dgitos numricos podero ser digitados no campo em
uma determinada posio;
caractere (# ) - funciona de maneira idntica ao nmero 9 com a diferena que espaos tambm
podero ser digitados;
letra maiscula (N) - significa que somente dgitos numricos ou caracteres alfabticos podero
ser digitados nesta posio;
letra maiscula (X) - significa que qualquer caractere poder ser digitado na posio;
caractere arroba (@) - usado, na primeira posio da mscara, em conjunto com qualquer um
dos acima especificados. Quando este caractere figura na mscara, o caractere seguinte a este
servir para todos os caracteres digitados no campo. Por exemplo: @! (tudo maisculo), @A (tudo
alfabtico), etc. Combinaes podem ser feitas, como por exemplo: @!@A (tudo o que for digitado
no campo s poder ser alfabtico e em maisculas).
Existem alguns tipos de caracteres (insertveis) que podem ser colocados na mscara para
serem automaticamente inseridos no campo, no sendo necessrio que o usurio os digite. Esses
caracteres so: o hfem, o ponto, barras, parnteses, colchetes e chaves. Por exemplo, na mscara
de telefone (999)999-9999 o usurio s precisar digitar os nmeros. Mantendo compatibilidade com
as aplicaes geradas pelo GAS-DOS, as mscaras de campos do tipo caractere preenchidas
totalmente com o caractere 9, a aplicao preencher com zeros esquerda. Se preenchidas
totalmente com #, a aplicao preencher automaticamente com espaos esquerda. Por exemplo:
o caractere "1" com mscara "9999" resultar em "0001"
o caractere "1" com mscara "####" resultar em " 1"
Se no for desejvel este efeito, o projetista poder trocar o tipo deste campo para numrico.

15.2.82 MDI
a abreviao de "Multiple Document Interface" (ou interface de mltiplos documentos). um
tipo de interface no ambiente Windows na qual diversos forms (filhos) ficam contidos em um nico
form (MDI form). O MDI Form uma janela que faz o background de uma aplicao de mltiplos

2007 GAS Tecnologia

606

GAS 2007 - Manual do Usurio

documentos. Um form MDI o recipiente dos forms filhos de uma aplicao. Este tipo de interface
proporciona um alto padro de qualidade aplicao, uma vez que os forms so agrupados em um
s recipiente na rea de cliente, podendo ali serem organizados, manipulados e minimizados, dando
grande flexibilidade de operao aplicao. Tanto o GAS quanto as aplicaes por ele geradas
possuem este tipo de interface.

15.2.83 Menu
Este tipo de mdulo estabelece uma ponte ou bifurcao de acessos para outros mdulos do
projeto. Abaixo deste tipo de mdulo, podem ser inseridos diversos outros.

15.2.84 Mtodo
um procedimento interno que atua sobre um objeto.

15.2.85 Modal
Veja tpico Janela Modal.

15.2.86 Mdulo
Um mdulo nos projetos do GAS corresponde a um tipo de entidade que se agrega ao projeto de
sistema. Os mdulos so colocados hierarquicamente em uma estrutura denominada rvore do
projeto (ou modelador). Os mdulos que podem ser colocados na rvore do projeto so: menu,
janela de dados, relatrio, etiqueta, consulta, rotina avulsa, programa executvel, formulrio avulso,
formulrio existente, processo pr-definido e, ainda, a linha separadora. Em Visual Basic, um mdulo
um item de projeto, com a extenso .BAS, contendo declaraes de variveis de escopo global
(pblicas), funes externas residentes em bibliotecas DLL, as Windows API, e ainda o cdigo fonte
de funes e procedures pblicas, que podem ser chamadas de qualquer ponto da aplicao.

15.2.87 Objeto
a combinao de cdigo (programas) e dados que possam ser tratados como uma unidade,
como, por exemplo, um controle, um form ou uma aplicao. Cada objeto definido como uma
classe.

15.2.88 OLE
Abreviao de Object Linking and Embedding (Ligao e Embutimento de Objetos). a
tecnologia que habilita a criao de aplicaes que contenham componentes de vrias outras.

15.2.89 Outer join


um tipo de relacionamento no qual todos os registros de uma tabela so adicionados ao objeto
recordset, mesmo se no existirem valores correspondentes nos campos de ligao da segunda
tabela. Registros da segunda tabela so combinados com aqueles da primeira tabela somente
quando existirem valores correspondentes nos campos de ligao. Registros com valores nulos so
criados quando no existirem valores correspondentes.
2007 GAS Tecnologia

Captulo 15 - Extra

607

15.2.90 Parmetros do sistema


um tipo de janela de dados que pode ser inserida nos projetos do GAS. Este mdulo define
uma tabela contendo um nico registro sem quaisquer ndices associados, contendo campos que
podem armazenar informaes que mudam com certa freqncia, como, por exemplo, taxa de juros
de mercado, moeda indexadora, taxa de inflao, etc. Esta tabela permite a parametrizao da
aplicao de modo que essas mudanas possam ser manipuladas pelo prprio usurio da aplicao.

15.2.91 Permisses
um ou mais atributos que especificam o tipo de acesso que um usurio tem aos registros.
Permisses podem ser designadas, dentre outras aes, para incluir, alterar, visualizar e excluir
registros.

15.2.92 Pixel
Abreviao de "picture element" (ou elemento de figura). Um ponto que representa a menor
unidade de medida grfica sobre uma tela. Um pixel dependente do padro de vdeo, ou seja, as
dimenses dos elementos da tela variam com o sistema e com a resoluo.

15.2.93 Procedure
uma sequncia que contm instrues ou cdigo de programa que executam como uma
unidade. Uma Function, Sub ou Property so tipos de procedures.

15.2.94 Processamentos
Um processamento se caracteriza pela alterao de campos de uma tabela a partir de
informaes que estejam sendo digitadas em outra tabela. A tabela que sofre o processamento
denominada de tabela-alvo e o campo que sofre o processamento chamado de campo-alvo. O
processamento semelhante ao lanamento sendo diferente apenas no fato de que, neste ltimo,
existe a criao de novos registros na tabela-alvo. Um processamento anlogo a uma edio de
registros, e um lanamento anlogo a uma incluso de registros.

15.2.95 Processos pr-definidos


um tipo de mdulo definido dentro do GAS que permite a definio de processamentos
especiais, pr-definidos pelo projetista, para executar certas tarefas, como, por exemplo, fechamento
de ms, clculo de folha de pagamento, baixas em estoque, histricos, etc.

15.2.96 Programa fonte


um conjunto de instrues codificadas em uma determinada linguagem que executam alguma
tarefa especfica. Um programa fonte precisa ser compilado para que as suas instrues possam ser
traduzidas para uma linguagem que seja entendida pelo microcomputador.

2007 GAS Tecnologia

608

GAS 2007 - Manual do Usurio

15.2.97 Projeto
Todas as aplicaes definidas por meio do GAS so tratadas como projeto de sistema, o qual se
constitui de um conjunto de informaes necessrias construo de uma aplicao que so
armazenadas e utilizadas no momento apropriado.

15.2.98 Property
um tipo de procedure que cria e manipula propriedades de um mdulo Classe. Uma procedure
do tipo Property inicia com a instruo Property Let, Property Get ou Property Set e termina com a
instruo End Property.

15.2.99 Propriedade
um determinado atributo de um objeto. Propriedades definem caractersticas dos objetos, tais
como cor, tamanho e localizao na tela ou um estado do objeto, tais como habilitado ou
desabilitado.

15.2.100Query
uma instruo formalizada a um banco de dados para retornar um conjunto de registros ou
realizar uma ao especfica em um conjunto de registros determinados.

15.2.101Query de ao
uma query que move ou altera dados. Queries de ao podem adicionar, apagar ou atualizar
registros. Em contraste, queries de seleo retornam registros de dados.

15.2.102Query de parmetro
uma query que requer um ou mais valores (parmetros) informados pelo usurio para ser
executada, como, por exemplo, o nome de uma cidade. Uma query de parmetro no estritamente
um outro tipo de query, sendo mais uma flexibilizao de queries.

15.2.103Query de seleo
uma query que questiona sobre os dados armazenados nas tabelas e retorna um objeto
recordset sem mudar os dados. Uma vez que os dados do recordset so recuperados, consultas e
alteraes podem ser feitas sobre os dados das tabelas envolvidas. Em contraste, queries de ao
podem mudar os dados e no retornar registros.

15.2.104Recordset
um conjunto lgico de registros. Existem 3 tipos de recordset: Dynaset, Snapshot e Table.

2007 GAS Tecnologia

Captulo 15 - Extra

609

15.2.105Registro
Em uma tabela, todos os dados existentes para um determinado item chamado de registro. Por
exemplo, em um conjunto de cartes de clientes, cada carto corresponde a um registro contendo
todas as informaes de um cliente em particular. Cada item de informao dentro de um registro
chamado de campo. Um carto de cliente possui campos para nome, telefone, endereo, etc.

15.2.106Registro corrente
o registro em um recordset que voc pode usar para modificar ou examinar seus dados, ou
seja, o registro que est sendo correntemente acessado. Existem diversos mtodos para se
movimentar no banco de dados, alterando o registro corrente.

15.2.107Relao
Um banco de dados pode conter mltiplas tabelas e essas tabelas podem ser relacionadas umas
com as outras por meio de campos em comum. Uma vez relacionadas duas tabelas, os seus campos
esto disponveis para seremacessados, independentemente de qual tabela pertencem. O
relacionamento de tabelas feito normalmente para evitar a duplicao desnecessria de
informaes no banco de dados, conforme explicado no item normalizao. Um relacionamento pode
ser 1-1 (1 registro de uma tabela corresponde a um nico registro da tabela estrangeira) ou 1-N
(cada registro da tabela corresponde a N registros da tabela estrangeira, tambm denominada
pai-filho).

15.2.108Relatrio
Um relatrio um tipo de mdulo que pode ser colocado na rvore do projeto. Para estabelecer
definies dos relatrios (layout), o projetista poder fazer uso do G-Reports ou Cristal Reports,
invocando-os por meio do GAS.

15.2.109Reparao de banco de dados


uma rotina especial que o GAS disponibiliza nos programas fontes das aplicaes geradas,
rotina tal que permite corrigir diversos problemas no banco de dados, como, por exemplo, perda de
ndices, integridades, etc. Durante o processo de reparao do banco de dados, este compactado,
eliminando-se os "buracos" deixados por registros que tenham sido apagados em suas tabelas,
tendo ainda todos os seus ndices e integridades atualizados.

15.2.110Rotina avulsa
Uma rotina avulsa um fragmento de cdigo fonte na linguagem Visual Basic que o projetista
labora, utilizando o Editor de Programas do GAS, de forma que integre automaticamente o projeto da
aplicao gerada.

15.2.111Self join
um join no qual registros de uma tabela so combinados com outros registros da mesma tabela
nos quais existam valores similares nos campos de ligao. Uma self-join pode ser um equi-join ou
um outer-join. Uma self-join til quando se deseja formular perguntas hierrquicas, como uma
2007 GAS Tecnologia

610

GAS 2007 - Manual do Usurio

query que mostre os gerentes e as pessoas que se reportam a cada um deles.

15.2.112Separador
Veja tpico Linha Separadora.

15.2.113Servidor OLE
Tambm chamado de Servidor de Automao OLE, uma aplicao que disponibiliza seus
objetos a outras aplicaes.

15.2.114Snapshot
uma cpia esttica de um conjunto de registros recuperados de um banco de dados e copiado
para a memria. Um objeto tipo recordset pode ser criado a partir de uma tabela bsica, de uma
query ou de um outro recordset. Por serem apenas cpias de registros, os snapshots no podem ser
atualizados.

15.2.115SQL
SQL significa Structured Query Language (linguagem estruturada para pesquisa). Esta linguagem
utiliza comandos como SELECT (selecione), UPDATE (atualize), DELETE (apague) contendo
clusulas como WHERE (na qual...), GROUP BY (agrupado por) e ORDER BY (ordenado por...).
Essas instrues, quando aplicadas a um objeto recordset, permitem a pesquisa e atualizao de
seus registros.

15.2.116Sub
um tipo de procedure que realiza uma tarefa especfica dentro de um programa; porm, no
retorna qualquer valor explcito. Uma Sub inicia com uma instruo Sub e termina com uma
instruo End Sub.

15.2.117Tabela
uma unidade bsica de armazenamento em um banco de dados relacional. Uma tabela pode
ser vista como um conjunto de linhas e colunas, semelhantes a uma planilha, onde cada linha
corresponde a um registro e cada coluna corresponde a um campo.

15.2.118Tabela-alvo
Uma tabela alvo referida durante a fase de definio do projeto como sendo uma tabela
destinatria de uma validao, processamento ou lanamento, a partir de informaes geralmente
contidas em outras tabelas do banco de dados.

15.2.119Tabela anexada
uma tabela existente em um outro banco de dados que ligada ao banco de dados nativo do

2007 GAS Tecnologia

Captulo 15 - Extra

611

Visual Basic. Os dados das tabelas anexadas permanecem nos bancos de dados externos, onde
podem ser manipulados por outras aplicaes. No possvel utilizar tabelas anexadas em um
objeto recordset do tipo table.

15.2.120Tabela ANSI
Veja tpico ANSI.

15.2.121Tabela ASCII
Veja tpico ASCII.

15.2.122Tabela bsica
uma tabela que serve como ponto de partida para a montagem de conjuntos de registros pelas
queries. Em algumas fases da definio de projetos do GAS, uma tabela-bsica precisa ser definida.

15.2.123Tabela estrangeira
uma tabela de um banco de dados que contm chaves estrangeiras. Geralmente, as tabelas
estrangeiras so usadas para estabelecer ou forar uma integridade referencial. A tabela estrangeira
, normalmente, o lado "N" de um relacionamento 1-N. Um exemplo de tabela estrangeira uma
tabela de cdigos de estados para pedidos de clientes.

15.2.124Tipo de campo
a caracterstica do campo que identifica o tipo e formato de dados que o mesmo pode
armazenar.

15.2.125Tipo de campo carto de crdito


um campo do tipo caractere destinado a armazenar nmeros de cartes de crdito, contendo
mscara nica (9999 9999 9999 9999).

15.2.126Tipo de campo CEP


um campo do tipo caractere destinado a armazenar valores do Cdigo de Endereamento
Postal (CEP) estabelecido pela ECT.

15.2.127Tipo de campo CGC


um campo do tipo caractere destinado a armazenar valores do Cadastro Geral de Contribuintes
(CGC) estabelecido pela Receita Federal.

2007 GAS Tecnologia

612

GAS 2007 - Manual do Usurio

15.2.128Tipo de campo Cdigo de Barras


um campo do tipo caractere destinado a armazenar os cdigos de barras pr-definidos pelo
GAS, podendo seguir os padres EAN-8, EAN-13, UPC-A, 3 de 9 e 2 de 5 interleaved.

15.2.129Tipo de campo CPF


um campo do tipo caractere destinado a armazenar valores do Cadastro de Pessoas Fsicas
(CPF) estabelecido pela Receita Federal.

15.2.130Tipo de campo data


um tipo de campo destinado a armazenar valores de datas. A quantidade de posies de
armazenamento obedece o que determinado pelo tipo de dado Data.

15.2.131Tipo de campo email


um campo do tipo caractere destinado a armazenar dados referentes a endereos de email,
disponibilizando, de forma automtica, um extensor para envio de mensagens ao endereo exposto
pelo campo, executando o programa de envio de mensagens associado (padro).

15.2.132Tipo de campo Fone


um campo do tipo caractere destinado a armazenar dados de nmeros de telefone.

15.2.133Tipo de campo Fone com DDD


um campo do tipo caractere destinado a armazenar dados de telefone com a informao do
cdigo DDD (Discagem Direta Distncia).

15.2.134Tipo de campo Hora


um tipo de campo destinado a armazenar dados de horas. A quantidade necessria para
armazenamento a mesma para o tipo de dado Data.

15.2.135Tipo de campo Lista Interna


um campo do tipo caractere que possibilita ao usurio escolher uma opo dentre uma lista
para colocar no campo.

15.2.136Tipo de campo Lgico


um tipo de campo numrico, inteiro, que armazena valores booleanos. Veja tambm, tipo de
dado lgico. Um campo do tipo lgico manipulado nas aplicaes do GAS por meio de um objeto
checkbox que associado automaticamente.

2007 GAS Tecnologia

Captulo 15 - Extra

613

15.2.137Tipo de campo Memo


Um campo do tipo memo destinado a armazenar grande quantidade de texto. A quantidade de
armazenamento a que est estabelecida no tipo de dado memo.

15.2.138Tipo de campo Multimdia


Este tipo de campo permite a carga e gravao no banco de dados, de qualquer tipo de arquivo,
como por exemplo, DOC, AVI, ZIP, MID, EXE, MP3, etc., alm de qualquer tipo de imagem. Se o
micro do usurio final possuir um scanner ou qualquer outro dispositivo de captura de imagens
conectado, este poder digitalizar imagens diretamente para o campo! Se for necessria a edio do
contedo deste campo, a aplicao acionar automaticamente o aplicativo Windows que estiver
associado ao tipo de arquivo, ou seja, se voc armazenou um DOC em um campo, a aplicao
invocar o MS-Word para edit-lo; se este campo contm um arquivo JPG gravado, ser convocado
o editor de imagens preferido do usurio. A aplicao gerencia automaticamente se o arquivo foi
modificado e, se for o caso, disparar o evento datachanged da aplicao, habilitando
automaticamente os botes de gravao e cancelamento, para que o usurio possa regravar o
arquivo modificado no campo do banco de dados. Aplicaes manipulando imagens BMP criadas
com a verso anterior ao GAS podero ser convertidas com o utilitrio conversor disponibilizado pela
Gas Tecnologia. Este conversor transformar rapidamente campos imagem BMP gravados no banco
em campos multimidia contendo imagens JPG, com a compresso que voc selecionar. Assim
fazendo, o tamanho do banco de dados ser drasticamente reduzido. S para exemplificar,
tipicamente, um BD com 40 MB poder ficar, aps convertido, com menos de 2MB(!!!!) Sempre que
um campo do tipo multimdia for definido, o GAS associar automaticamente um objeto para conter o
arquivo e um boto para permitir o carregamento do mesmo.

15.2.139Tipo de campo Numrico


um tipo de campo que pode armazenar valores numricos. O tamanho de armazenamento de
um campo numrico depende do tipo de dado numrico que armazena. Alguns tipos de dados
numricos so byte, inteiro, longo, preciso simples, preciso dupla e dinheiro.

15.2.140Tipo de campo Optativo


um campo do tipo numrico com caracterstica de mltipla-escolha. As opes aparecem em
objetos do tipo boto de radio e so mutuamente exclusivas.

15.2.141Tipo de campo Rotativo


um tipo de campo numrico no qual o usurio, alm de poder digitar diretamente o dado, pode
tambm clicar com o mouse em um objeto (scroll bar) para mudar o seu contedo. Sempre que um
campo rotativo definido, o GAS associa automaticamente os objetos necessrios.

15.2.142Tipo de campo UF
um campo do tipo caractere destinado a armazenar valores de Unidades da Federao (UF).

2007 GAS Tecnologia

614

GAS 2007 - Manual do Usurio

15.2.143Tipo de campo WebPage


um campo do tipo caractere destinado a armazenar dados referentes a endereos de pginas
da InterNet, disponibilizando, de forma automtica, um extensor para acesso ao endereo exposto
pelo campo, executando o browser associado (padro).

15.2.144Tipo de dado
a caracterstica de uma varivel que determina que espcie de dado ela pode armazenar. Tipos
de dados incluem byte, lgico (booleano), preciso simples, preciso dupla, inteiro, longo, dinheiro,
data, string, objeto, variant (default) e tipos definidos pelo prprio programador, bem como tipos
especficos de objetos, como por exemplo, database (banco de dados), table (tabela), etc.

15.2.145Tipo de dado Binrio Longo


um tipo de dado capaz de conter valores at 1.2 gigabytes de tamanho. utilizado
normalmente para armazenar imagens no banco de dados.

15.2.146Tipo de dado Booleano


Veja tpico Tipo de dado Lgico.

15.2.147Tipo de dado Byte


um tipo de dado fundamental usado para armazenar pequenos valores positivos variando entre
0 e 255.

15.2.148Tipo de dado Data/hora


Datas e horas so armazenadas internamente como partes diferentes de um nmero real. O valor
esquerda do ponto decimal representa uma data entre 1 de janeiro de 100 e 31 de dezembro de
9999. Valores negativos representam datas anteriores a 30 de dezembro de 1899. O valor direita
do ponto decimal representa uma hora entre 00:00:00 e 23:59:59.

15.2.149Tipo de dado Dinheiro


um tipo de dado til para clculos envolvendo dinheiro ou clculos de ponto fixo nos quais a
preciso extremamente importante. Este tipo de dado utilizado para armazenar nmeros de at
11 dgitos esquerda do ponto decimal e 4 dgitos direita. O caractere de declarao @.

15.2.150Tipo de dado Inteiro


um tipo de dado fundamental que armazena nmeros inteiros. Uma varivel inteira armazenada
como um nmero de 16 bits (2 bytes) variando na faixa de -32.768 at 32.767. O caractere de
declarao deste tipo %. Na linguagem Visual Basic, pode-se usar inteiros para armazenar valores
booleanos (True=-1, False =0).

2007 GAS Tecnologia

Captulo 15 - Extra

615

15.2.151Tipo de dado Lgico


um valor que pode ser Falso (False) ou Verdadeiro (True). Valores booleanos podem ser
resultados de avaliao de expresses, podendo ser armazenadas em banco de dados.

15.2.152Tipo de dado Longo


um nmero inteiro armazenado em 4 bytes, podendo variar de -2.147.483.648 at
2.147.483.647. O seu caractere de declarao &.

15.2.153Tipo de dado Memo


um tipo de dado ou campo que pode conter informaes textuais com um tamanho de at 1.2
GB.

15.2.154Tipo de dado Preciso Dupla


um tipo de dado fundamental que pode armazenar nmeros de pontos flutuantes de preciso
dupla. Uma varivel de preciso dupla (double) armazenada como um nmero de 64 bits (8 bytes)
podendo o seu valor variar de - 1.79769313486232E308 at -4.94065645841247E-324 para valores
negativos e de 4.94065645841247E- 324 at 1.797693134862325E308 para valores positivos. O
caractere de declarao deste tipo de dado # .

15.2.155Tipo de dado Preciso Simples


um tipo fundamental de dado que armazena nmeros de ponto flutuante. Um valor de preciso
simples armazenado como um nmero de 32 bits (4 bytes) variando de -3.402823E38 at
-1.401298E- 45 para valores negativos e de 1.401298E-45 at 3.402823E38 para valores positivos.
O caractere de declarao !.

15.2.156Tipo de dado String


um tipo fundamental que armazena informao do tipo caractere. Uma varivel string pode
conter aproximadamente 65.535 bytes (64K), podendo ser de tamanho fixo ou de tamanho varivel,
contendo um caractere por byte. Strings de tamanho fixo so declaradas como tendo um tamanho
especfico enquanto as strings de tamanho varivel podem ter um tamanho de at 64K. O caractere
de declarao $.

15.2.157Tipo de dado Variant


um tipo de dado especial que pode conter valores numricos, string e datas, bem como os
valores especiais Empty e Null (vazio e nulo). Se nenhum caractere de declarao for adicionado ao
final de um nome de varivel, esta ser tratada como Variant.

15.2.158Update
o processo que salva as mudanas dos dados em um registro. At que um registro seja salvo,
as mudanas so armazenadas em um registro temporrio chamado copy buffer. A clusula

2007 GAS Tecnologia

616

GAS 2007 - Manual do Usurio

UPDATE em uma instruo SQL muda valores dos dados em um ou mais registros (linhas) em uma
tabela.

15.2.159Usurio
Um usurio qualquer pessoa que esteja utilizando uma determinada aplicao. Em sistemas
gerados pelo GAS que contenham esquemas de segurana, usurios podem ser cadastrados dentro
de grupos, herdando as permisses inerentes a este.

15.2.160Validao
o processo de verificao se uma certa informao fornecida em um campo atende a certas
condies ou limitaes.

15.2.161Varivel
Tecnicamente, uma localizao de memria que contm um dado que pode ser modificado
durante a execuo de um programa. Cada varivel tem um nome sob o qual identificada como
nica dentro do seu nvel de atuao. O tipo de dado armazenado pode ou no ser especificado. Os
nomes de variveis necessitam comear com uma letra e no podem conter pontos ou caracteres
embutidos e usados para especificar tipo. Devem tambm ser nicas dentro da sua rea de atuao
e no podem ter mais de 255 caracteres.

15.2.162Visual Basic - VB
Linguagem de programao de aplicaes para o ambiente Windows, desenvolvida pela Microsoft
Corporation, baseada na linguagem Basic (Beginners All Purpose Simbolic Instructions Code),
composta de elementos visuais (controles) e cdigo (programas).

15.2.163Windows API
A interface de programao de aplicao (API) se constitui de funes, mensagens, estrutura de
dados, tipos de dados e instrues que voc pode usar quando cria aplicaes que rodam no
ambiente Windows.

15.2.164Windows metafile
um arquivo que armazena uma imagem como objetos grficos (linhas, crculos, polgonos) ao
invs de pixels. Existe dois tipos de metafiles: padro e implementado. Arquivos metafile do tipo
padro possuem usualmente a extenso (.WMF) enquanto os arquivos metafile implementados
possuem a extenso .EMF. Arquivos metafile preservam a imagem de uma maneira mais precisa do
que os pixels.

15.2.165Workgroup
um grupo de usurios em um ambiente multiusurio que compartilha dados de um mesmo
sistema de banco de dados.

2007 GAS Tecnologia

Index

Index
-EExecutveis Independentes

63

-Ggas2007

62

-Nnovo

62

-SSolues Multi-Projetos

2007 GAS Tecnologia

30, 62, 63

617

Das könnte Ihnen auch gefallen