Você está na página 1de 5

DESENVOLVENDO SOLUÇÕES COM VISUAL FOXPRO 8 E 9

ÍNDICE

Capítulo 1 - O Início de Tudo 1

Reunindo todas as informações necessárias 2


Instalando o Visual FoxPro 2
Configurando o Visual FoxPro 7

Capítulo 2 – Conhecendo o Visual FoxPro 8

A Janela de Comandos 10
O Gerenciador de Projetos 11
A ferramenta Database Designer 15
A ferramenta Form Designer 19
A ferramenta Menu Designer 21
A ferramenta Report Designer 24
A ferramenta Class Browser 27
A ferramenta Class Designer 28
O Editor de Programas 31
A ferramenta Toolbox 34
A ferramenta Task Pane Manager 35
A ferramenta Code References 36
A ferramenta Debugger 38
A ferramenta Document View 40

Capítulo 3 – Introdução à Linguagem do Visual FoxPro 41

O que são dados 43


Como os dados são armazenados 43
Tipos de dados no Visual FoxPro 43
Algumas definições importantes 45
Operadores 45
Operadores de Caracteres 45
Operadores de Data e Hora 46
Operadores Lógicos 46
Operadores Relacionais 46
Operadores Numéricos 47
Declaração de variáveis 47
Definição do escopo de variáveis 47
Exemplos de declaração de variáveis 48
Variáveis do Sistema 49
Convenções para nomenclatura de variáveis 50
Convenções para nomenclatura de constantes 51
Convenções para nomenclatura de campos de tabelas 51
Convenções para nomenclatura de objetos e controles 52
Funções e Procedimentos 53
O Comando Procedure 53
Exemplos de uso do comando Procedure 55
O Comando Function 56
Exemplos de uso do comando Function 57
O que são e para que servem os parâmetros 58
Estruturas de controles condicionais e de repetição 60
O Comando DO WHILE ... ENDDO 60
Exemplo de uso do comando DO WHILE ... ENDDO 62
O Comando IF ... ELSE ... ENDIF 62
Exemplo de uso do comando IF ... ELSE ... ENDIF 63
O comando DO CASE ... ENDCASE 63
Exemplo de uso do comando DO CASE ... ENDCASE 64
O comando SCAN ... ENDSCAN 65
Exemplo de uso do comando SCAN ... ENDSCAN 66
O comando FOR ... ENDFOR 66
Exemplo de uso do comando FOR ... ENDFOR 67
O comando FOR EACH ... ENDFOR 68
Exemplo de uso do comando FOR EACH … ENDFOR 68
Coleções 70
Cláusulas escopo 70

Capítulo 4 – Entendendo e utilizando o Gerenciador de Projetos 72


O gerenciador de projetos 73
Botões do gerenciador de projetos 74
O menu Project 74
Trabalhando com o gerenciador de projetos 77
Adicionando arquivos ao projeto 77
Criando e modificando arquivos com o gerenciador de projetos 79
Adicionando uma descrição para um arquivo 80
Removendo arquivos do projeto 81
Executando programas, formulários e consultas 82
Incluindo e Excluindo arquivos do projeto 82
Definindo o arquivo principal do projeto 83
Compilando e gerando executáveis e dll’s 83

Capítulo 5 – Criando e gerenciando dados com Visual FoxPro 85

O que é um banco de dados 86


O banco de dados do Visual FoxPro 86
Capacidades do banco de dados do Visual FoxPro 86
Tipos de dados que podem ser armazenados 87
Como o banco de dados é constituído 88
Tabelas 88
Local Views (visões locais) 88
Remote View (visões locais) 88
Connections (conexões) 89
Stored Procedures (procedimetnos armazenados) 89
Trigger (gatilho) 89
A ferramenta Database Designer 89
Criando um novo banco de dados 89
A ferramenta Table Designer 91
Criando tabelas 92
Definindo índices na tabela 97
Relacionamentos 100
Definindo relacionamentos permanentes 100
Inserindo dados a partir do ambiente de desenvolvimento 103
Definindo integridade referencial entre tabelas 106
Trabalhando com dados remotos 112
O que são dados remotos 113
O que são views remotas (visões remotas) 113
Criando uma conexão com um banco de dados remoto 113
Criando remote views (visões remotas) 119

Capítulo 6 – Introdução á Programação Orientada a Objetos (OOP) 124

O que são objetos e classes 125


O que são propriedades 125
O que são métodos 125
Classes 126
Classes de base (base classes) 126
Herança 126
Instância 127
Encapsulação 127
Criando Classes 130
Reconhecendo métodos, eventos e propriedades 131
Objetos containers 132
Bibliotecas de Classes 135
Criando uma biblioteca visual de classes 135
Criando classes baseadas em subclasses 137
Porque subclassificar as classes básicas do Visual FoxPro 138
Entendendo a Herança na prática 139
Usando SET CLASSLIB TO 142
Instanciando classes de formulário programaticamente 142
Instanciando classes de formulário visualmente 143
Mapeando campos para o tipo de controle apropriado 144

Capítulo 7 – Dominando a programação de formulários 149

O que são formulários 150


Tipos de formulários 150
Os principais tipos de controles para formulários 150
Inserindo controles no formulário 151
Formulários e o ambiente de dados 156
Trabalhando com o ambiente de dados 157
Definindo qual a classe de gabarito para novos formulários 158
Construindo um primeiro formulário para entrada/edição de dados 159
Exemplos de uso do controle ListBox 163
Usando controles ComboBox 167
Utilizando o controle Grid 173
Exemplos de uso de PEM’s dos controles 174
Programando o evento InteractiveChange 174
Programando o evento KeyPress 177
Usando KeyPress para disparar eventos especiais 178
Criando um formulário de pesquisa que retorne o valor do campo chave 180
Exemplo de uso do controle OptionGroup 183

Capítulo 8 – Acesso a dados com CursorAdapter 186

Principais PEM’s da classe CursorAdapter 188


Acessando dados nativos com CursorAdapter 190
Atualizando os dados na origem de dados 191
Usando objetos CursorAdapter em formulários 194
Usando CursorAdapter no ambiente de dados 195
Acessando dados remotos com CursorAdapter 200
Acessando dados remotos através de Drivers ODBC 201
Exemplo de acesso a dados em banco de dados MS SQL Server 201
A propriedade DataSource 204
Usando conexões ODBC compartilhadas 205
Acessando dados remotos através de ADO 210
Definindo consultas parametrizadas usando CursorAdapter e ADO 213
Instanciando o objeto ADODB.Connection 214
Instanciando o objeto ADODB.RecordSet 214
Ajustando o método CursorFill para perceber as modificações 215

Capítulo 9 – Criando um framework básico 217

Definindo a estrutura de diretórios 218


Subclassificando as classes básicas do Visual FoxPro 218
Criando uma biblioteca de classes de formulários 221
Criando uma classe abstrata de formulários 221
Criando uma classe de formulário Splash 222
Criando uma classe de formulário de informações (about) 223
Criando uma classe de formulário para Login 230
Criando uma classe de formulário para pesquisa em tabela estrangeira 233
Classe para configuração do ambiente de execução do aplicativo 253
Classe de pesquisa rápida 255
Criando uma classe de formulário para navegação/pesquisa de dados 258
Criando uma classe de formulário para inclusão/edição de dados 266

Capítulo 10 – Desenvolvendo um projeto passo-a-passo 279

Preparando a estrutura para o projeto 280


Criando o banco de dados 281
Definindo os relacionamentos persistentes 283
Inserindo a Stored Procedure para gerar chaves primárias no banco de dados 286
Construindo os formulários da aplicação 286
Construindo o formulário de navegação/pesquisa de clientes 286
Definindo a conexão com a origem de dados 287
Como editar o CursorAdapter sem perder as configurações da conexão personalizada 290
Associando a tabela ao grid 291
Definindo que dados exibir no grid 292
Preenchimento das propriedades do formulário 293
Construindo de inclusão/edição de clientes 294
Propriedades obrigatórias do formulário de edição 298
Formatando máscaras de edição para os campos 300
Validando dados diretamente em controles do formulário 302
Criticando os dados antes de gravar 302
Construindo o Cadastro de Produtos 304
Criando o formulário de navegação/pesquisa 304
Criando o formulário de inclusão/edição de produtos 309
Construindo o Movimento de Compras 314
Criando o formulário de navegação/pesquisa 314
Criando o formulário de inclusão/edição de compras 318
Construindo o Movimento de Vendas 333
Criando o formulário de navegação/pesquisa 333
Criando o formulário de inclusão/edição de vendas 336
Construindo o Movimento de Contas a Pagar 357
Criando o formulário de navegação/pesquisa 358
Criando o formulário de inclusão/edição de contas a pagar 362
Construindo o Movimento de Contas a Receber 372
Criando o formulário de navegação/pesquisa 372
Criando o formulário de inclusão/edição de contas a receber 377
Construindo o Cadastro de Usuários 390
Construindo um formulário para controle de acesso 398
Construindo menus 402
Construção do menu do aplicativo 404
Criando o arquivo principal (main) do aplicativo 407

Capítulo 11 – Transformando dados em Informações 411

Criando consultas 411


Recuperando informações do banco de dados 411
Conhecendo em detalhes o comando SELECT – SQL 411
Usando o Construtor de Consultas (Query Designer) 421
Conhecendo o motor de pesquisa do Visual FoxPro 426
Criando diversos tipos de consultas manualmente 426
Funções de agregação e dados 426
Condições de filtragem para a cláusula WHERE 428
O operador LIKE 428
O operador SQL [NOT] EXISTS 429
Conectando tabelas com a cláusula WHERE 429
Conectando tabelas com a cláusula JOIN 430
Definindo um destino para o resultado do comando SELECT 430
Definindo a ordem dos dados resultantes (ORDER BY) 431
União de tabelas (UNION) 431

Capítulos 12 – Relatórios 433


A interface do Report Designer na versão 8 434
A interface do Report Designer na versão 9 436
Aprendendo a criar relatórios 441
Executando relatórios 444
Relatórios envolvendo várias tabelas 444
Incluindo banda de sumário 448
Diferença entre relatórios na versão 9 e versões anteriores 450
Como usar os recursos da versão 9 451
Gerando relatórios para saída HTML 453
Gerando relatórios para saída TIFF multi páginas 454
Gerando relatórios em formato PDF 455

Capítulo 13 – Debug – Identificando e corrigindo erros no aplicativo gerado 456

Funções usadas na captura e tratamento de erros 457


Usando a ferramenta Debugger 459
Rotina para tratamento de erros genéricos 464
Ativando a rotina de tratamento de erros 464
Tratamento estruturado de erros 465

Capítulo 14 – Distribuição do aplicativo 467

Usando o InstallShield Express 468


Criando um projeto de instalação usando o InstallShield Express 468
Incluindo arquivos no projeto de instalação 471
Incluindo bibliotecas e módulos dependentes 472
Compilando o projeto de instalação e gerando o instalador 473
Instalando o aplicativo gerado 473

Capítulo 15 – Desenvolvendo Web Services (por Pablo Sollar) 474


Introdução aos Web Services 475
Esquema de um Web Service no Visual FoxPro 475
Principais vantagens de um Web Service 476
SOAP Toolkit 476
Projeto do sistema – lado cliente 478
Projeto do sistema – lado servidor 783
Registrando componentes 494
Publicando o Web Service 500

Capítulo 16 – Extendendo o Visual FoxPro 509

Usando componentes de terceiros 510


Usando o componente W3 Jmail para enviar Email 510
Compactando e descompactando arquivos em formato ZIP 516
Biblioteca West Wind Internet e Client Tools 518
Envio e Recebimento de arquivos por FTP 518
Introdução á API do Windows 522
Testando se há um disco na unidade 522
Verificando informações do disco 523
Obtendo informações da placa de rede 523
Reiniciar, hibernar ou desligar o computador 525
Alterar resolução do vídeo 525
Como registrar automaticamente um componente 526
Alterar a data do computador 527
Mudando o visual dos formulários do aplicativo 527
Usando Skins em formulários 527

Capítulo 17 – Guia de Referência para os principais controles do Visual FoxPro 530