CLARION 5
52 CLARION 5 CLARION
Aprendiendo
aprendizage
m Clarion
Copyright 1994, 1995, 1996; 1997 por TopSpeed Corporao
Copyright 1998, Unisoft SRL
Todos os direitos reservados
Este trabalho protegido por copyright e todos os direitos reservados. no pode ser copiado,
fotocopiado, reproduzido, traduzido ou passado para mdia eletrnica ou computador sem o
consentimento escrito dos detentores de direitos.
Esta publicao acompanha Clarion 5. Pode conter erros tcnicos ou tipogrficos. TopSpeed e
Unisoft o entregue "como est" sem garantia, expressa ou implcita.
TopSpeed Corporao
150 East Road Amostra
Pompano Beach, Florida 33064
(+ 1-954) 785-4555
Unisoft SRL
Uruguai 263, piso 5
1015 - Buenos Aires
Tel./Fax: (54-11) 4372-7243 / 9850; 4374-2298 / 9469
Mark Reconhecimento:
EuCONTEDO 53
CONTEDO
EuNTRODUO
59
Bem-vindo de volta! 59
O que h nesta Seo ............................................. .................................................. ...... 59
convenes da documentao 60
Convenes tipogrficas ................................................ ................................................. 60
convenes de teclado ............................................... .................................................. .. 60
Anatomia de um banco de dados
61
sistemas de arquivos e drivers de ............................................. ............................................ 62
Tipos de Dados ............................................... .................................................. ........... .................
62
Classificao de dados: chaves .......................................... e ndices ..................................... 64
subindo e descendo ordens .............................................. ................................. 65
Usando as teclas como limitando ............................................ ................................................ 66
As relaes entre arquivos ............................................... .................................................. .......... 66
53
54 CLARION 5 CLARION
Aprendiendo
1 - PLANEAMIENTO DE A APLICAO 69
Definio de tarefas do aplicativo 69
banco de dados de projeto 70
............................................... arquivo do cliente .................................................. ........... 71
arquivo telefones ............................................... .................................................. ....... 71
............................................... arquivo de ordem .................................................. ........... 72
Arquivo Detalhe .............................................. .................................................. ......... 72
Arquivo produto .............................................. .................................................. .... 72
Integridade Referencial ................................................ .................................................. .......
72
esquema completo a base Dados ................................................ ............................. 73
Interface do aplicativo 74
55
56 CLARION 5 CLARION
Aprendiendo
57
58 CLARION 5 CLARION
Aprendiendo
VOCABULARY 265
INTRODUO
EuCONTEDO 59
Bem-vindo de volta!
A seo anterior apresentou o ambiente Clarion e Assistente. Agora vamos estudar como usar as
outras ferramentas que Clarion oferece para criar aplicaes eficazes. Esta seo contm dois
cursos, em muitos nveis diferentes.
Workshop sobre Gerador de aplicaes que familiariza-lo com todo o ambiente de
desenvolvimento ferramentas Clarion.
Workshop sobre Clarion Idioma apresentado por esta linguagem e contatos com o tipo de
cdigo que gera o ambiente de desenvolvimento.
convenes da documentao
Convenes tipogrficas:
59
60 CLARION 5 CLARION
Aprendiendo
convenes de teclado
definies
Um banco de dados (banco de dados) um conjunto de informaes (dados) organizado em um
sistema de arquivos, registros e campos. O banco de dados mantido por um ou mais programas
ou aplicaes.
Um grupo de diferentes campos que esto ligados logicamente fazer um registro (registro). Um
registro contm todas as informaes relacionadas a um tpico. por exemplo, todos os campos
com informaes sobre um estudante (nome, endereo, nmero de telefone, nmero de estudante,
etc.) esto reunidos no registro do estudante. Isto semelhante ao arquivo ou registro que a escola
tem cada aluno.
Neste formato, a tabela inteira um arquivo, cada linha um registro, e as colunas representam
campos.
Um banco de dados uma coleo de arquivos vinculados, tambm chamados tabelas (tabelas).
Isto assemelha-se a um grupo de arquivos que todos os registros escolares so mantidos. Um
arquivo salva arquivos com dados pessoais dos alunos; outros dados sobre cursos; e um terceiro,
com informaes sobre a equipe.
Um banco de dados um conjunto de tabelas que mantm relaes juntos definidos bom banco de
dados projeto separa informaes relacionadas que so ligados por arquivos campos de link. Mais
sobre isso em breve.
resumo:
61
62 CLARION 5 CLARION
Aprendiendo
Existem inmeros formatos de arquivo usados em PCs. Este o armazenamento fsico formata o
disco usando os programas que mantm arquivos de dados. Clarion suporta muitos formatos,
graas aos drivers de tecnologia (drivers) de TopSpeed. Esses drivers permitem Clarion a ler e
escrever programas para estes formatos diferentes.
Standard Edition traz drivers para TopSpeed, Clarion, ASCII, BASIC e formatos DOS. edies
Professional e Enterprise incluem Btrieve, ODBC, Clipper, dBase III e IV, e FoxPro. Se voc
precisa usar dados de outro sistema de arquivos, voc pode comprar os drivers apropriados e
adicion-los para as questes profissionais e de negcios. Contacte o seu revendedor para ver se o
driver que voc precisa est disponvel.
Cada sistema de arquivos tem suas peculiaridades e limitaes. Para mais informaes, consulte o
Apndice Drivers de banco de dados emdo Usurio'Guia S.
Tipos de dados
Campos pode armazenar muitos tipos diferentes de dados, mas cada campo individual s pode
salvar um tipo. Quando o campo definido, o tipo de dados especificado. Por exemplo, para salvar
um nmero de0 a 100, um definido como um nico campo de byte ocupa menos espao definido
como um nmero decimal (um byte pode armazenar qualquer nmero inteiro, sem sinal, entre 0 e
225).
Clarion suporta os seguintes tipos de dados (totalmente documentados no Captulo 3 referncia
Language):
alfanumrico (Alfanumrico)
STRING Campo que armazena um nmero especfico de caracteres
alfanumricos e outros caracteres ASCII.
pString Campo que armazena uma cadeia de caracteres com um byte
comprimento inicial indicando o nmero de bytes na cadeia. Este
o tipo de dados utilizados no Pascal idioma e tipo de dados
"lstring" Btrieve Registro Manager.
cstring Campo que armazena uma cadeia de caracteres e que encerra em
um carrer null; ASCII zero (0). Este tipo de dados usado na
linguagem "C" e tipo de dados "ZSTRING 'Btrieve Registro
Manager.
Inteiro (inteiros)
EuCONTEDO 63
REAIS O campo que mantm um total de oito bytes ponto assinado com
15 dgitos significativos flutuantes.
SREAL Campo que armazena um nmero de quatro bytes, com sinal,
ponto flutuante seis dgitos significativos. O formato usa SREAL
curta Real (preciso simples) do processador Intel 8087.
BFLOAT8 Variation REAL, este tipo armazena um nmero oito bytes com
sinal, ponto flutuante oito bytes como o formato de preciso dupla
Microsoft BASIC.
BFLOAT4 SREAL dados variao da taxa, um campo BFLOAT4 economiza
um nmero de quatro bytes, com sinal-clon flutuante, que usa o
formato preciso simples Microsoft BASIC.
63
64 CLARION 5 CLARION
Aprendiendo
Um dos aspectos mais poderosos de uma base de dados informatizada a capacidade de classificar
os dados em muitas maneiras diferentes. Fazer isso requer manualmente vrias cpias dos
arquivos, muitas pastas e vrios armrios de arquivo. Tambm preciso um longo tempo para
arquivar cada cpia em lugares diferentes, dependendo de sua ordem.
Pelo contrrio, em uma base de dados informatizada, o sistema exige apenas definir um nmero de
"chave" ou "ndices". Estas ordens adicionais declarar a ordem fsica de registros no arquivo de
dados. Em alguns sistemas de arquivos chaves so mantidos em arquivos separados, em outros
compartilham o mesmo arquivo de dados. motoristas Tecnologia Topspeed arquivos de forma
transparente lida com essas diferenas.
Chaves e ndices so funcionalmente equivalentes. Eles diferem apenas na forma como eles so
mantidos em cada aplicao:
A chave mantida de forma dinmica. Cada vez que voc adicionar, alterar ou excluir um
registro, o sistema atualizado. As teclas so usadas para utilizar tipo frequentemente.
Um ndice no mantida de forma dinmica, uma vez que constri (compilao) apenas
QUAD necessrio. Os ndices so teis para a criao de sistemas para uso ocasional, como
por processos que so executados no final do ms ou no final do ano.
Seguindo o nosso exemplo de um registro de escola, suponha que queremos classificar os registros
de estudantes de duas maneiras: em ordem alfabtica pelo nome e pelo nome dentro de cada
assunto. Isso produz dois sistemas alternados.
Este exemplo usa um componente-chave em nome dos estudantes.
EuCONTEDO 65
O exemplo a seguir tem duas componentes principais: curso eo nome do aluno. Uma chave pode
conter mais do que um campo, permitindo que outros sistemas dentro de sistemas.
Alguns sistemas de arquivos permitem que ambos os tipos de sistema de chaves ou componentes
(por exemplo, arquivos de sistema Topspeed). Outros sistemas suportam apenas a ordem
ascendente, o que significa que os dados s podem ser encomendados menor para o maior (por
exemplo, os arquivos do sistema Clarion).
O exemplo a seguir tem duas componentes principais: Ano da formatura (descendente), e nome do
aluno).
65
66 CLARION 5 CLARION
Aprendiendo
Suponha que voc queira criar um relatrio de cursos de matrcula um banco de dados contendo
informaes dos ltimos quinze anos. Para este relatrio, que s se preocupam com os ltimos trs
anos. Voc pode reduzir drasticamente o tempo de processamento se uma parte do arquivo de
dados contendo apenas registra os ltimos trs anos usado. Isso feito em duas etapas:
Primeiro, voc deve definir uma chave para classificar os dados por data de cada curso.
Ento voc tem que definir os limites de interesse. faixa de limite (faixa limite), tambm
chamado de "busca limite" especifica um subconjunto (subconjunto) para ser processado,
tirada de todo o arquivo. Apenas os registros que se enquadram dentro do limite considerado.
Neste exemplo, apenas um quinto dos registros sero processados (assumindo que a cada ano tem
caractersticas semelhantes). Ao reduzir o nmero de registos de 80 por cento, o tempo de
processamento diminui em proporo.
Um dos propsitos de criao de bancos de dados relacionais reduzir dados redundantes. A regra
bsica que os dados s devem estar localizados em um s lugar. Este fraudada dois tipos de
benefcios: primeiro, reduz os requisitos de espao de armazenamento. Em segundo lugar, facilita
a manuteno do banco de dados. Para atingir este objectivo, as bases so divididos em arquivos
separados, mas relacionados, atravs de um processo chamado de normalizao de dados.
O primeiro passo mover os dados a serem repetidas atravs de arquivos. Por exemplo, se um
estudante poderia tomar um dede mximo seis indivduos, voc tem que projetar o arquivo de
estudantes para conter seis campos de materiais (Matl, mat2, mat3, etc). Mas todos esses
campos no so utilizados em cada registro. Se um estudante leva seis temas, o registo completa;
mas se um outro estudante leva apenas um, haver seis campos vazios em seu registro. Por esta
razo, os campos de materiais so movidos para um arquivo separado, eliminando a necessidade
de reservar espao para os campos vazios. Isto cria um relacionamento um-para-muitos. (Um
estudante pode assumir muitas classes) entre os registros dos alunos e materiais de arquivo.
O prximo passo mover os dados redundantes para arquivos separados. Cada campo nos alunos
de arquivos devem depender da chave primria (Student Number). O nome, endereo e telefone
permanecem no arquivo do aluno. Mas a descrio do curso de cada aluno pudesse se mover para
um arquivo separado. Isso elimina a necessidade de repetir a descrio do curso para cada aluno
naquele curso. Para fazer isso, adicione um campo de golfe com o nmero de arquivo de
estudantes e cursos de arquivo. Isso cria uma relao muitos-para-um (Muitos estudantes seguem
um curso) entre os registros dos alunos e cursos de arquivamento.
Uma vez que voc tem "normalizado" o armazenamento de dados de informaes relacionadas
esto ligados de modo que cada arquivo tem um campo idntico ao campo no arquivo relacionado.
EuCONTEDO 67
Um campo de ligao poderia ser o nmero de aluno, nmero do curso, ou uma srie de sala de
aula. Qualquer campo (ou grupo de campos) que identifica univocamente um registro no arquivo
primrio, pode ser usado como link.
Voc pode encontrar exemplos destas relaes no arquivo de dados.
um professor ensina muitas (vrios) materiais (um-para-muitos).
67
68 CLARION 5 CLARION
Aprendiendo
Como regra geral, cada minuto gasto na aplicao de planejamento poupa dez minutos depois.
Este captulo descreve o processo informalmente planejando aplicativo que ir criar nos captulos
subsequentes. No mundo real, ele provavelmente teria de criar uma especificao funcional prvia,
aplicaes escritas para executar. Esta descrio informal define:
Como ponto de partida, a implementao do Builder claro aplicativo usa o aplicativo de dicionrio
de dados que voc criou e usando os assistentes na seo anterior deste manual. Estende o conceito
de um sistema de pedidos simples, usando o dicionrio de dados para rastrear os clientes.
O aplicativo ir manter arquivos do cliente e ordens de uma empresa industrial. A primeira tarefa
de planejar o que a aplicao vai fazer avaliar o que a empresa espera fazer.
Para os fins deste tutorial, vamos criar o aplicativo um sistema de entrada de pedidos simples.
comum que os clientes para fazer pedidos por telefone para um ou mais produtos de uma s vez.
noite, o servio administrativo imprime a ordem para o depsito.
ordem informaes bsicas necessrias para montar os dados necessrios para imprimir um
formulrio de pedido. "consultas" feitas a informaes
de outros arquivos, como nome e endereo de clientes.
Quando uma pessoa faz uma nova ordem, adicionado
um registro para este arquivo.
69
70 CLARION 5 CLARION
Aprendiendo
arquivo do cliente
Clientes salvar arquivos de dados "constante", como nomes e endereos. Eficiente para armazenar
essas informaes em um nico lugar, tornando mais fcil para realizar uma nica atualizao
quando h uma mudana. Ele tambm economiza espao, evitando informaes duplicadas no
arquivo de ordem. Caso contrrio, se houver mil encomendas para a empresa XYZ, o endereo
repetido 1000 vezes. Reduzindo as necessidades de armazenamento, recorrendo para salvar os
dados apenas uma vez chamado de normalizao.
Os dados do cliente requer um campo que identifica o cliente. O nome da empresa no funciona,
porque pode haver duplicatas. Por exemplo, pode haver vrios registros para um cliente chamado
"Hardware <<A mangueira>> "se voc tiver vrios ramos. A aplicao j fizemos especificado
cusno que o campo seria uma chave autonumbered, que voc criar e salvar nmeros exclusivos
para cada cliente.
Cusno campo serve como uma "chave primria" (chave primria) para o arquivo de dados.
Quaisquer outros arquivos que esto ligados ao arquivo do cliente deve declarar o campo cusno
como "chave estrangeira" (FOREIGN KEY). Uma chave primria um campo ou combinao de
campos que distingue exclusivamente cada registro em um arquivo. A tecla "estrangeiro" um
campo ou uma combinao dos mesmos, em um arquivo (ou mesa) cuja chave deve ser igual a
uma chave primria em outro arquivo vinculado.
Porque h muitas ordens para cada nmero de cliente, a relao entre o arquivo de clientes e
pedidos de arquivos ser um-para-muitos (1: Many). Dizemos que o arquivo do cliente o arquivo
principal e as solicitaes de arquivo filho.
Telefones Arquivo
arquivo Telefonos armazena os nmeros de cada cliente e pode haver muitos nmeros para cada
cliente.
arquivo telefones tambm inclui um campo de texto em que indicam se o nmero de telefone
pertence ao escritrio, fax, celular ou endereo de casa. Usando o dicionrio de dados, especificar
o controle de entrada de dados uma lista drop-down com opes pr-carregados.
arquivo de ordens
EuCONTEDO 71
O arquivo de ordem leva informaes de cada transaco de todos os outros arquivos (como dados
de clientes). Porque grande parte da informao bsica neste arquivo est impresso na "header"a
nota Ordem, normalmente llamrselo "Order Header".
Cada transao de vendas exige registro no arquivo de ordem. Registro da empresa est ligada
informao do cliente atravs do nmero de clientes. Porque algumas ordens podem ter um nico
artigo, e mais de dez, tem que criar um arquivo "Detail" separado para ser ligada com o nmero de
ordem nico. Isso cria uma relao de um-para-muitos, com ordens de arquivo como um pai e de
arquivo "detalhe" como um filho. produtos pedidos so identificados pelos respectivos cdigos de
produto no "detalhe" arquivo.
Assim, a entrada de pedidos tem um nmero de cliente para vincul-lo aos dados dos clientes
(chave estrangeira) e um nmero exclusivo para ligar o "detalhe". Multicomponente criar uma
chave primria em ambos os campos para criar facilmente um procedimento de visualizao
(browse) ordenados por cliente e nmero de ordem.
Detalhe Arquivo
Este arquivo armazena os itens ordenados pelos respectivos cdigos de produto (chave Produtos de
arquivo de referncia estrangeiros), preos, quantidades e taxa de imposto. Um campo adicional
armazena o nmero de ordem, que vinculado ao arquivo fim em uma relao de muitos-para-um.
arquivos duplicados Detalhe precificao informaes j armazenadas no arquivo do produto. Isto
porque os preos podem variar. importante para manter o preo dentro do arquivo em detalhes,
porque, caso contrrio, se o preo for alterado, o mdulo de faturamento levar diferente do que as
acordadas com o cliente no tempo dos preos de encomenda.
arquivo do produto
Este arquivo armazena os nmeros exclusivos para cada produto, descries e preos. Quando o
vendedor procura de um produto pelo nome, o aplicativo insere o nmero do produto no registro
de detalhe. O cdigo do produto a chave primria: Nenhum nmero item pode ser repetido, e
cada produto deve ter um nmero. Um campo adicional contm a taxa de imposto para esse
produto.
integridade referencial
71
72 CLARION 5 CLARION
Aprendiendo
Como os dados para uma determinada transao residem em vrios arquivos, este pedido deve
manter a integridade referencial. Isto crtico, no entanto, muitos outros bancos de dados
ferramentas de desenvolvimento exigem a escrever procedimentos manuais para prend-lo.
Generator aplicativo implementado automaticamente no cdigo-fonte gerado, quando voc escolhe
algumas opes Dicionrio de Dados.
O grfico a seguir fornece uma viso geral da base de dados completa.Si olhar para ele do ponto de
vista de um vendedor que tem uma ordem de telefone, os registros do arquivo ordem que a ordem,
detalhe mantm os artigos encomendados, e arquivos de clientes e produtos manter a informao
constante em ambos os temas.
O artigo referem-se a descrio e preo. O cdigo do cliente procura o nome e endereo do cliente.
Outros dados, tais como a data da operao, so preenchidos automaticamente (na data do sistema,
por exemplo).
Finalmente, o workshop ir criar um novo dicionrio de dados, que voc copie os arquivos
definidos acima, o novo dicionrio.
Como para a aplicao criado, porque o curso uma ferramenta educacional que tenta mostrar o
que Clarion pode ajudar voc no criar um sistema de encomendas em grande escala. No entanto,
certas partes da aplicao ser muito revelador, para aprender como aplicar procedimentos
semelhantes em suas prprias aplicaes.
EuCONTEDO 73
Interface do aplicativo
A maior tarefa ainda antes de comear a codificar planejar a interface do usurio. Em uma
aplicao de negcio como este, importante que o vendedor localizar rapidamente os dados que
voc precisa para que voc pode gravar a venda e atender a prxima chamada. Portanto, o
aplicativo deve colocar todos os dados importantes para olhar, desde o incio, de modo que
nenhuma renda ou modificao de dados mais do que um boto ou comando de menu de
distncia.
Alm disso, a empresa j usa outros aplicativos do Windows; por isso importante que o
aplicativo tem uma aparncia comum e comportamento com os outros. Os usurios finais aprender
mais rapidamente uma interface familiar.
Para o exerccio das funes, o pedido deve ser implementado de forma consistente com as
orientaes indicadas abaixo. Embora o seguinte no substitui uma especificao real do programa
devem servir o objectivo dos Cursilhos.
Desde a aplicao ir lidar com a manuteno de ficheiros dos clientes, itens e ordens em
vrias formas, necessrio interface para vrios documentos (MDI).
A aplicao deve ter uma barra de ferramentas com botes para carregar e formas de vdeo do
Windows (Procurar) para controlar seu funcionamento.
Para manter a consistncia na interface, as opes do menu principal so Arquivo, Editar,
Exibir, Janela e Ajuda. menu Arquivo acessa os procedimentos de impresso e sair. Os botes
nas caixas de dilogo chamada barra de ferramentas para modificar um registro existente (se
selecionado em um Procurar) ou para adicionar / excluir registros, e para percorrer os arquivos.
O menu View chama os procedimentos de exame dos arquivos de dados. Ajudar a janela e
executar as aes habituais.
Quando novas encomendas so adicionados, os vendedores e os clientes devem ser capazes de
escolher os produtos listas de correr. Muitos dados de pedidos (endereos, descries e preos)
deve ir "enchendo", conforme necessrio.
Agora que temos descrito no modo de aplicao bastante completa, estamos prontos para comear
a trabalhar. O primeiro passo criar o dicionrio de dados.
73
74 CLARION 5 CLARION
Aprendiendo
arquivos Cursilho
Nota: Quando existem vrias maneiras de fazer a mesma tarefa, este workshop ir
mostrar vrios, para demonstrar a flexibilidade do ambiente de
desenvolvimento Clarion.
criao Dicionrio
Sempre que um novo aplicativo criado, voc deve primeiro definir o dicionrio de dados
(arquivo .dct). Generator aplicao leva todas as suas informaes no dicionrio: os arquivos de
dados usados pelo aplicativo, suas relaes mtuas, bem como informaes adicionais, como os
controles de formatao predefinidos.
EuCONTEDO 75
Como regra geral, quanto mais viso e trabalho posto em projetar o dicionrio de dados, mais voc
pode fazer o Gerador de Aplicativos. E quanto mais trabalho feito Gerador de Aplicativos para
voc, menos voc ter que fazer a si mesmo!
Quando o curso anterior, execute o Assistente para um incio rpido, simplesmente definir o
arquivo de dados. Agora, apresentamos o editor do dicionrio.
Ponto inicial:
Ele deve ter aberto o ambiente de desenvolvimento Clarion, e Pick caixa
fechada dilogo (escolha).
nota: Dicionrio de Dados permite que voc insira nomes de arquivos e campos com
acentos como "Telefone", e estes so processados corretamente pelo Gerador
de Aplicativos. Ao verificar a traduo deste manual descobriu, no entanto, que
75
76 CLARION 5 CLARION
Aprendiendo
Voc pode usar comandos normais de copiar e colar no Windows para copiar o arquivo de
definies de outro dicionrio (ou para copiar campos de um arquivo para outro). Em outras
palavras, uma vez que voc definiu ... Para redefinir a preocupao se voc acabou de copiar o que
j foi feito!
EuCONTEDO 77
77
78 CLARION 5 CLARION
Aprendiendo
Vamos agora usar os comandos de copiar e colar para copiar os outros arquivos de definio.
Escolha o arquivo e copiar
1. Clique no dicionrio caixa QWKTUTOR.DCT dilogo.
2. Telefone Escolha lista de arquivos Files.
3. Escolha Editar Copy (ou pressione CTRL + C).
4. Pressione CTRL + F6 ou clique na caixa de dilogo do dicionrio TUTORIAL.DCT.
5. Escolha Editar Paste (ou pressione CTRL + V).
caixa de dilogo Editar aparece propriedades do arquivo.
6. Pressione o boto OK para fechar a caixa de dilogo Propriedades de editar o arquivo.
Voc pode copiar as definies (incluindo a respectiva chave), mas no pode copiar relaes de
arquivo Clarion outros dicionrios. Portanto, voc deve redefinir a relao entre esses dois
arquivos.
EuCONTEDO 79
Ns definimos a relao de forma diferente do que fizemos no ano anterior. Desta vez, vamos a
partir do lado de muitos ( "filho") em vez do prximo ( "Pai"), s para provar que pode ser feito.
1. Telefones realce o arquivo e adicione o boto Add Relation.
caixa de dilogo Propriedades nova relao aparece. Como o arquivo foi ltimos telefones
selecionados, estabelecemos a relao de sua perspectiva.
Cada cliente pode ter mais de um telefone. "Cliente" o Pai, em uma relao pai-filho.
Portanto, um muitos para um (muitos: 1) Vista para o cliente a partir de telefones.
2. Escolha muitos: 1 a partir da lista suspensa Tipo na relacao telefones Grupo.
3. . Escolha KeyClienteNum de Estrangeira lista suspensa Key.
Esta a chave que est ligada a uma chave primria no arquivo do cliente; portanto, uma
chave estrangeira.
Definio do outro lado do relacionamento
Para indicar tais restries, voc pode especificar como o cdigo-fonte de gravao Generator
aplicativo que controla o que acontece se um usurio final tenta modificar um valor em uma chave
primria, ou se voc tentar excluir um registro de "pai" com "crianas". Se as restries no esto
definidas, o usurio poderia comprometer a integridade dos registros do banco de dados criando
"rfo" de duas maneiras: pela excluso de um registro "pai" ou alterar o valor do campo
relacional. Em aplicaes geradas com molde Clarion Application Builder Classe, a necessidade
de manter este cdigo de integridade incorporada nas aplicaes de construo de bibliotecas
(ABC).
79
80 CLARION 5 CLARION
Aprendiendo
Para este tutorial, especificar que a aplicao deve atualizar a chave estrangeira, se o valor da
chave primria alterado. Alm disso, ns especificar que voc no pode permitir que o usurio
exclua um pai com filhos.
1. Escolha Cascade ( "Cascade") da atualizao da lista ( "Quando modificada") no grupo de
integridade referencial constrangimentos.
Faa uma cascata mudana significa que a aplicao se estende a mudana e atualiza a chave
estrangeira (filho de arquivos), as crianas em todos os registros relacionados ao registro pai.
2. Escolha Restringir ( "Restringir") Em Excluir da lista ( "Quando voc excluir")
restringir excluso significa que o aplicativo no elimina um pai com filhos (o usurio deve
eliminar primeiro as crianas).
3. Pressione OK para fechar a caixa de dilogo Novo propriedades de relacionamento.
Observe a pequena seta direita do nome do arquivo vinculado na lista de arquivos relacionados.
Ele indica a natureza da relao entre os dois arquivos.
Dois sinais (>> ou <<) prximo ponto "muitos" do lado "um". Um sinal (> ou <) prximo ponto
"um" do lado "muitos". Portanto, Celulares << -> Clientes indica que muitos registros de telefone
pode ser ligado a um registro de cliente.
Salve o seu trabalho
um bom hbito de salvar seu trabalho com freqncia enquanto as aplicaes em
desenvolvimento (falhas e interrupes vm sem aviso prvio). Para isso, escolha Save
arquivo, ou pressione o boto Salvar na barra de ferramentas. Este escreve o arquivo de
dicionrio no disco.
81
82 CLARION 5 CLARION
Aprendiendo
83
84 CLARION 5 CLARION
Aprendiendo
Ponto de partida:
O arquivo TUTORIAL.DCT (dicionrio) deve estar aberta.
com um grande banco de dados que atualizado com freqncia, ou que os condutores so
melhores quando o que mais importa a busca curto espao de tempo.
2. Pressione o boto OK.
Voc pode aceitar os padres para todas as outras opes. a caixa de dilogo fechada ea caixa
dicionrio mostra o arquivo de ordens, com o esclarecimento "ordens de cabealho" ao seu
lado.
85
86 CLARION 5 CLARION
Aprendiendo
Definio de campos
Neste momento vrios campos que iro definir campos de ligao entre os arquivos no banco de
dados. Vamos usar um mecanismo chamado Piscina Dicionrio de Dados Campo (Pool Field) para
garantir que eles so definidos exatamente como nos ficheiros que necessitam dele.
1. Clique no boto Add File.
Um pool de Campos tratada no Dicionrio de dados como um arquivo, mesmo que no seja
normalmente qualquer cdigo em aplicaes. Voc pode definir no Dicionrio de dados como
muitos campos como voc como piscinas, no entanto, no geralmente necessrio usar mais de
um.
2. Escolha a opo Pool.
3. CamposPool Tipee no campo Nome.
4. Escrever POOL no campo Prefixo.
5. Pressione o boto OK.
Abrir venda Campo Definio e Chaves
1. Iluminar arquivo CamposPool na lista Arquivos.
2. Pressione o boto Campo / Chaves ...
Esta janela mostra todos os campos definidos e chaves em um arquivo. Uma vez que um novo
arquivo est em branco. Poderamos comear a adicionar campos, mas em vez disso vai comear a
copiar os clientes de um campo de arquivo.
3. Clique na barra de ttulo da janela / do campo Key Definio e arraste para ver a caixa de dilogo
dicionrio est abaixo.
4. Clientes Realce o arquivo na lista Arquivos de dicionrio. Note-se que o foco se move esta janela
5. Pressione o boto Campos / Chaves ...
Agora uma outra venda Campo / Definio Key aparece com os campos definidos nos clientes de
arquivo.
Escolha e copiar um campo
EuCONTEDO 87
87
88 CLARION 5 CLARION
Aprendiendo
89
90 CLARION 5 CLARION
Aprendiendo
Neste ponto, vamos definir campos de arquivo do produto. Este o ltimo arquivo.
Derivar a definio do campo de ligao
1. Produtos realce o arquivo na caixa de dilogo Dicionrio caixa de listagem Files.
Pode ser necessrio para mover algumas janelas para faz-lo. O foco se move para a caixa de
dilogo dicionrio.
2. Pressione as teclas / ... boto de campo.
Agora, uma nova janela aberta Campo / definio da chave com os campos definidos para
produtos de arquivamento.
3. Pressione o boto Insert para abrir caixa de dilogo Propriedades novo campo.
4. Digite partNum no campo Nome do campo.
91
92 CLARION 5 CLARION
Aprendiendo
Agora que ns definimos todos os arquivos, podemos adicionar chaves e especifique as relaes
entre os arquivos. O Assistente de Incio Rpido e definiu as chaves dos dois arquivos criados para
a implementao do primeiro curso. Neste captulo, vamos definir as chaves para outros arquivos
Ponto de partida:
O arquivo TUTORIAL.DCT (dicionrio) deve estar aberta.
Clientes Pedidos
NumCliente NumCliente Detalle
Nombres NumPedido NumPedido
Apellidos MontoFactura NumProducto
Empresa Fecha Cantidad
Direccin Nota ProdPrecio
Ciudad TasaImponible
Provincia
CP
93
94 CLARION 5 CLARION
Aprendiendo
H muitos registros de detalhes de um nmero de pedido nico. Portanto, esta uma relao de
um-para-muitos: o arquivo de ordem o "pai" file Detalhe.
campo NumClente est vinculado ao arquivo do cliente.
No ser duplicada nos valores cusno campo. A chave que definimos no arquivo de ordem
estrangeira. O arquivo de chave fim no permite duplicatas e nulos, e foi definida como a
chave primria para esse arquivo.
Pode haver vrios pedidos para cada cliente, tornando-se uma relao muitos-para-um: o
arquivo de ordem o "filho" do arquivo do cliente.
Nomeie a chave
1. Ordens Realce o arquivo na lista Arquivos.
2. Pressione o boto Campo / Key ...
3. Selecione a guia Chaves.
4. Pressione o boto Inserir.
nova caixa de dilogo aparece Propriedades chave.
5. Tipo KeyNumPedido no campo Nome da chave.
Como conveno mnemnico, sugerimos incorporando a "chave" a palavra e o nome do campo
no nome da chave (como faz o Assistente para um comeo rpido).
6. Selecione a guia Atributos, marque a caixa Exigir Valor nico ( "um valor nico
necessria"), e marque a caixa de chave primria.
Isto especifica que a chave primrio. O cdigo de fonte gerado automaticamente impede o
utilizador para introduzir valores duplicados ou nulo.
7. Marque a caixa Nmero Auto.
O cdigo gerado pelos modelos aumentar a tecla numrica para cada novo registro.
Agora podemos definir a cusno chave. Duplicatas so permitidas neste arquivo. Ela est ligada
chave primria nos clientes de arquivo, por isso uma chave estrangeira.
1. Tipo KeyNumCliente no campo Nome da chave.
2. Selecione a guia Atributos.
A chave permite duplicatas, assim tambm as configuraes predefinidas.
95
96 CLARION 5 CLARION
Aprendiendo
8. Pressione o boto Fechar para fechar o dilogo Definio caixa Campo / Key.
9. Escolha Salvar arquivo, ou pressione o boto Salvar na barra de ferramentas.
EuCONTEDO 97
Os campos no arquivo detalhes que esto ligados a outros arquivos no banco de dados so
NumProductos e ordno.
KeyNumProducto definido de modo que pode haver valor partNum duplicado neste arquivo.
1. Detalhe realce o arquivo na lista Arquivos.
2. Pressione o boto Fiel / Chaves ...
3. Selecione a guia Chaves.
4. Pressione o boto Inserir.
5. Tipee KeyNumProducto no campo Nome da chave.
6. Selecione a guia Atributos.
97
98 CLARION 5 CLARION
Aprendiendo
Box Campo / dilogo Detalhe Definition File Key agora se parece com isso:
EuCONTEDO 99
7. Pressione o boto Fechar para fechar o dilogo Definio caixa Campo / Key.
8. Escolha Salvar arquivo, ou pressione o boto Salvar na barra de ferramentas.
Detalle Producto
NumPedido NumProducto
NumProducto Descripcion
Cantidad Precio
ProdPrecio TasaImponible
TasaImponible
No deve haver nmeros duplicados ou arquivo do produto ordem zero, porque uma chave
primria.
Para cada partNum no registro pode haver muitos registros de detalhes. Este um, onde o
arquivo do produto "Pai" file detalhe de um-para-muitos.
Nomeie a chave
1. Realce o arquivo na lista de produtos Files.
2. Pressione o boto Campo / Chaves ...
3. Selecione a guia Chaves.
4. Pressione o boto Inserir.
5. Digite KeyNumProducto no campo KeyName.
6. Escolha a guia Atributos.
99
100 CLARION 5 CLARION
Aprendiendo
Os usurios provavelmente vo querer ver a lista de produtos em ordem alfabtica, por isso,
adicionar a chave apropriada.
7. Pressione o boto Fechar para fechar o dilogo Definio caixa Campo / Key.
8. Escolha Salvar arquivo, ou pressione o boto Salvar na barra de ferramentas.
Agora que ns definimos todas as chaves, podemos adicionar relacionamentos. Uma vez definidas
essas verificaes de validade podem ser adicionados dos campos devem conter apenas os valores
existentes em outro arquivo. Estes so os estgios finais para completar o dicionrio de dados.
KeyNumPedido vincula o arquivo para arquivar Detalhe em uma proporo de um-para-muitos
..
arquivo KeyNumCliente links de arquivos Pedidos de clientes em um de muitos para.
101
102 CLARION 5 CLARION
Aprendiendo
arquivo "filho"; o lado oposto do relacionamento que j fez. Uma chave primria sempre
no arquivo de "pai", enquanto um arquivo de chave estrangeira sempre pertence criana.
4. Escolha KeyNumCliente da lista drop-down chave estrangeira.
5. Clientes relacionadas escolher a lista de arquivos.
Isto estabelece o arquivo do cliente como o "pai" nesta relao
6. KeyNumCliente escolher da lista drop-down de chave primria.
7. Pressione o Mapa pelo boto Name.
103
104 CLARION 5 CLARION
Aprendiendo
Cada vez que um relacionamento definido no Editor de dicionrio vlido para ambos os
arquivos de uma vez. Portanto, uma vez que voc j definiu todas as relaes arquivar ordens,
apenas uma relao definida.
Este ltimo pertence relao detalhe arquivo.
O arquivo de chave KeyNumPedido liga ordens Detalhe em uma proporo de um-para-
muitos. Isso j foi definido.
O KeyNumProducto ligaes-chave do ficheiro Detalhes do produto em um de muitos para.
Definir o relacionamento
1. Destacar os detalhes do arquivo lista Arquivos.
2. Adicionar Relao pressione o boto.
3. Escolha muitos: 1 a partir da lista drop-down Tipo.
4. Escolha KeyNumProducto da lista drop-down chave estrangeira.
5. Escolha produtos da lista deaplegable arquivo relacionado.
6. KeyNumProducto escolher da lista drop-down de chave primria.
7. Pressione o Mapa pelo boto Nome ( "Correlacionando nome").
Configurando restries de integridade referencial
1. Escolha Restringir a lista suspensa Em Update.
Isso vai evitar que os nmeros de produto forem alterados.
2. Em Restringir escolha Excluir da lista drop-down.
3. Pressione o boto OK.
A caixa de dilogo Dicionrio agora deve ter esta aparncia:
EuCONTEDO 105
Agora que ns definimos todas as relaes entre os arquivos, voc pode definir verificaes dos
dois campos que esperamos fichas ou formulrios de validade.
Quando uma nova entrada de pedidos for inserido, voc pode especificar que o cusno
corresponde a um registro existente no arquivo do cliente.
105
106 CLARION 5 CLARION
Aprendiendo
Quando um novo registro detalhe digitado, voc pode especificar que o partNum deve
corresponder a um registro existente no arquivo de produtos.
Ponto de partida:
O arquivo TUTORIAL.DCT deve estar aberta.
107
108 CLARION 5 CLARION
Aprendiendo
Uma maneira simples para converter arquivos de dados exportar os dados existentes a partir dos
arquivos de aplicativos anteriores Valores separados por vrgulas (.csv). Este o formato de
arquivo usado originalmente pela linguagem Basic, os dados contidos entre aspas, os campos so
separados por vrgulas e os registros so separados por um retorno de carro e alimentao de linha.
Clarion BASIC arquivo de driver l e escreve esses arquivos .csv.
Ir importar a definio de um arquivo CSV existente que contm os dados do cliente, em seguida,
gerar um programa de converso de dados simples (para mostrar como fcil), que TopSpeed
colocada em um arquivo.
Voc tem agora a IMPORT1.CSV definio arquivo. O prximo passo olhar para os dados
do administrador de banco de dados.
Alterar os dados
Clique direito sobre o arquivo IMPORT1.CSV, iluminar Navegar Import1 e clique para chamar o
administrador de banco de dados.
Observe que o primeiro registro contm nomes de campo, no dados. Esta a maneira padro de
construir arquivos .csv. Alm disso, esses nomes de campo so exatamente o mesmo que o arquivo
de definies de nomes de campos clientes (o que ir facilitar a converso muito)
Neste ponto, voc tomou no arquivo de dados CSV no Gerenciador de Banco de Dados Clarion.Lo
seguinte informao trazer esses dados para um TopSpeed arquivo para que programas Clarion
pode cham-los.
109
110 CLARION 5 CLARION
Aprendiendo
111
112 CLARION 5 CLARION
Aprendiendo
teste
Agora voc pode verificar os dados no novo arquivo, abri-lo com o administrador de banco de
dados e rolagem atravs de registros.
1. Escolha Arquivo Abrir (ou pressione CTRL + O)
2. arquivo de banco de escolher o arquivo da lista drop-down Tipo, selecione o arquivo
CLIENTES.TPS, e pressione o boto Abrir.
uma caixa de dilogo pedindo o arquivo de driver (driver), password (senha), e as opes
necessrias para abrir o arquivo aberto.
Tendo completado o Dicionrio de Dados agora Gerador de Aplicativos pode ser usado para criar
o aplicativo. Este captulo mostra como:
Criando o arquivo .app, que armazena todo o trabalho do projeto.
Definir o primeiro procedimento (Principal) para criar uma estrutura de aplicativo MDI, e
como chamar procedimentos no menu do aplicativo.
Ponto inicial:
Deve ser aberto somente ambiente de desenvolvimento Clarion.
113
114 CLARION 5 CLARION
Aprendiendo
Aparce caixa de dilogo com a aplicao (aplicao Tree) rvore. Isto apresenta uma lista de todos
os procedimentos de aplicao em uma rvore lgica que fornece um guia visual para mostrar a
ordem em que um procedimento chama outro. Vimo-lo pela primeira vez no Cursilho Quick Start.
O procedimento principal o ponto de partida. A implementao do workshop ser um programa
com Multiple Document Interface (MDI). Portanto, o lugar natural para comear definir o
procedimento usando o modelo do quadro principal para criar um quadro para a aplicao.
115
116 CLARION 5 CLARION
Aprendiendo
3. Um clique na janela de ttulo para dar-lhe concentrar-se, que lida aparecer ( "manijitas" ou
pegas) coloradas nas bordas da janela.
4. Tipo "Implementao do curso" no campo de texto na barra de ferramentas flutuante
propriedade, em seguida, pressione TAB.
Desde o designer de menu do Windows, voc pode chamar o Editor de Menu, que lhe permite
adicionar ou modificar os itens de menu da janela do quadro da aplicao. Quando voc adicionar
cada item, voc pode selecionar a guia TAB para nomear o procedimento a ser executado quando
o usurio escolhe esse item.
Para cada novo procedimento adicionado ao menu, o Gerador de Aplicativos adiciona um
procedimento de "todo" ( "fazer") a rvore da aplicao. Pode ser definido aps a funcionalidade
deste processo, da mesma maneira que agora est a definir a funcionalidade da estrutura de
aplicao.
Quando o Gerador de Aplicativos gera o cdigo-fonte do aplicativo, ele abre automaticamente
uma nova "thread de execuo" para cada procedimento chamado a partir do menu principal (que
necessrio em qualquer aplicao MDI).
EuCONTEDO 117
117
118 CLARION 5 CLARION
Aprendiendo
Isso define o texto que aparece no menu. O comercial (&) indica que o caractere seguinte (r)
sublinhado e fornecer um "atalho de teclado" (o usurio pode pressionar ALT + R para ativar
este menu).
119
120 CLARION 5 CLARION
Aprendiendo
3. Escolha Janela.
4. Menu Designer Janela, escolha Toolbar NewToolbar ("Barra de ferramentas Novo
").
Isso adiciona barra de ferramentas, que sempre aparece logo abaixo do menu na janela do
display. Voc pode adicionar qualquer controle para a barra de ferramentas clicando em um
cone de ferramenta na Controles caixa de ferramentas flutuante, e em seguida, clicando na
barra de ferramentas.
121
122 CLARION 5 CLARION
Aprendiendo
123
124 CLARION 5 CLARION
Aprendiendo
Isso coloca "manijitas" ou "pegas" em torno de ambos os botes, eo boto de Clientes tem
punhos vermelhos, indicando que tem o foco.
D CTRL + clique a ao de "mltipla escolha" para executar aes em vrios controles ao
mesmo tempo. Uma vez que vrios controlos foram seleccionados, pode tambm mover-se
arrastando qualquer um dos controlos transeccionados, ou pode ser utilizado quer alinhamento
ferramenta (Alinhamento), agindo sobre todo o grupo seleccionado.
2. Com os dois botes ainda selecionado, CTRL + clique no boto produtos.
Agora, os trs botes tm alas eo ltimo boto selecionado, produtos, tem vermelho,
indicando que possui o foco, e o "controle mestre" para o alinhamento.
3. Direito do mouse e escolha a opo "Alinhamento Top" (Align Top) menu de contexto.
Quando voc tiver selecionado vrios controles, um clique mostra um alinhamento direita do
menu de contexto, em vez do menu de contexto do controle isolado. Esta ao alinha os trs
botes na altura de produtos.
4. Clique direito e escolha "espaamento horizontal" (Espalhe horizontalmente) menu de
contexto.
Esta distncia proporcionalmente os trs botes. Isso no esto muito distantes, livre para
deixar espao para o que est vindo!
Na barra de ferramentas aparecem treze botes de controle de navegao. Sabe aqueles botes,
o aplicativo que voc criou na seo anterior. Estes botes controlam o movimento da lista e
chamar o procedimento de atualizao que ir criar mais tarde.
O layout da tela agora deve ser muito parecido com este:
125
126 CLARION 5 CLARION
Aprendiendo
1. Com a rvore aplicativo aberto, escolha Project corridaOu pressione o boto Executar na
barra de tarefas.
Generator aplicao gera o cdigo-fonte, mostrando o andamento do processo em uma janela
de mensagem, o procedimento por procedimento.
Em seguida, a janela de Marca aparece, mostrando o andamento dos trabalhos e compilador
linkeador.
EuCONTEDO 127
Depois da janela inicial aparece a aplicaoQue deve ser algo como isto:
Agora vamos ver o que o Gerador de Aplicativos tem. O objetivo do Gerador de Aplicativos (e
modelos) escrever o Clarion cdigo fonte para voc. No h "mgica em fazer este conjunto
de ferramentas para criar aplicativos: tudo se resume em linguagem de programao Clarion.
127
128 CLARION 5 CLARION
Aprendiendo
3. Quando tiver terminado de observar o cdigo, escolha Arquivo perto para fechar o editor
de texto e retornar para o Gerador de Aplicativos.
Mas no vai escolher Arquivo sadaOu ser completamente Clarion para Windows.
4. Agora clique sobre o Procedimento de guia.
No, mudar seu ponto de vista da aplicao dos procedimentos de rvores.
5. Realce o DIREITO procedimento Main (Frame) CLIC para ativar o menu de contexto e clique
em Mdulo.
Isso leva voc de volta para o editor de texto para ver o cdigo fonte mais recente gerado para
o procedimento principal. Mais uma vez, as alteraes feitas na Application Builder a partir do
ltimo cdigo de tempo gerado no aparecer neste cdigo.
Voc pode notar que logo abaixo da seleo tinha outra chamada Mdulo Fonte. No confundi-
los, porque eles fazem coisas muito diferentes. Mais tarde, vamos demonstrar a seleco da
fonte.
Se voc fizer alteraes no cdigo, voc pode compilar e executar o programa para ver os
efeitos que as alteraes. No entanto, as alteraes feitas aqui sero perdidas na prxima vez
que voc gerar o cdigo-fonte. Portanto, no uma boa prtica para fazer alteraes aqui.
Esta capacidade de visualizar o cdigo-fonte muito til para estudar o cdigo gerado para
determinar o contexto em que o cdigo que voc deseja adicionar sobre os pontos de insero
(mais tarde tentar isso) aparecer.
6. Quando tiver terminado de observar o cdigo, escolha Arquivo Fechar para fechar o editor
de texto e retornar para o Gerador de Aplicativos.
129
130 CLARION 5 CLARION
Aprendiendo
- CA RIANDO BROWSE
Ponto de partida:
O arquivo TUTORIAL.APP deve estar aberta.
Voc deve se lembrar que o Assistente de Incio Rpido criado uma janela para o procedimento de
procura Clientes que ficou assim:
Usando a lista Caixas Designer, voc pode preencher e formatar os campos de dicionrio de dados
que aparecem nas colunas da lista.
Prepare-se para formatar a janela da lista
Clique direito sobre a caixa listados na janela e escolha caixa de listagem Formato ... no menu de
contexto.
131
132 CLARION 5 CLARION
Aprendiendo
Marque a caixa de dilogo Campo, que fornece acesso a arquivos definidos no dicionrio aparece.
lista de arquivos mostra todos selecionado para uso neste processo em uma hierarquia, ou rvore de
arquivos (Esquema de arquivos), incluindo arquivos de lista caixas de controle.
1. Destaque o item "todo" sob FilemBrowsing caixa de lista e pressione o boto Inserir.
2. Clientes Realce o arquivo na caixa de dilogo Inserir arquivo, e pressione o boto Select.
Isso adiciona o arquivo rvore na caixa de dilogo Selecionar campo, que agora exibe o
arquivo e seus campos.
3. Pressione o boto Edit.
4. KeyNumCliente ficar na caixa de dilogo Acesso Mudana chave e pressione o boto Select.
Isto importante, pois indica a ordem de visulaizacin de registros. Se a chave no for
especificado, os registros aparecem na ordem em que foram incorporados ao arquivo (tambm
chamado de "ordem dos registros")
5. Ilumine CLI: Empresa na lista Campos e pressione o boto Select. Isso retorna as caixas de
listagem Designer, com o campo selecionado adicionado lista. A guia direita permitem que
voc crie a aparncia do campo.
EuCONTEDO 133
133
134 CLARION 5 CLARION
Aprendiendo
Isto fornece o texto para o cabealho do grupo. Cada campo que adicionado direita sero
includas no grupo at que um novo grupo definido.
Note-se que os efeitos produzidos pela adio de campos e as mudanas realizadas so refletidas
na amostra caixa de lista que aparece no topo do Designer Lista Boxes. Alm disso, voc pode
usar trs botes localizados no lado direito da nova coluna para remover correspondente coluna
135
136 CLARION 5 CLARION
Aprendiendo
Quando o Assistente de Incio Rpido criado este procedimento, ele controla guias mudando a
ordem de exibio da lista de acordo com a guia selecionada. Portanto, vamos adicionar esta
funcionalidade para mostrar como fcil de fazer.
6. Arraste o "punho vermelho" no canto inferior direito para que ele aparece logo abaixo e
esquerda do boto Fechar.
Isto altera o tamanho da folha de propriedades de modo que parece que a caixa de lista e os
botes esto na lngua. Na verdade, eles no so, e no quer que eles sejam, porque queremos
que esses controles so visveis, independentemente da guia o usurio tenha selecionado. A
janela ser agora algo parecido com isto:
1. Clique no controle Tab nos controles de caixa de ferramenta (que como uma nica pasta)
flutuantes.
137
138 CLARION 5 CLARION
Aprendiendo
Ocultar botes
Quando o Assistente de Incio Rpido criado este procedimento no tinha botes Adicionar, Alterar,
Apagar e Fechar; ou pelo menos Voc no pode v-los quando voc executar o programa! Na
verdade, os botes esto l, mas so escondidos do usurio para usar apenas os botes na barra de
ferramentas para modificar o arquivo.
O "segredo" que os botes na barra de ferramentas apenas arrumado os botes ocultos Procurar o
procedimento para fazer o que sempre fizeram. Portanto, quando voc cria um procedimento
Navegar sem utilizar os assistentes, voc precisa da atualizao de botes na tela; mas no
necessrio que o usurio para ver a execuo do programa.
1. Clique direito sobre o boto Fechar na janela de amostra, em seguida, clique em Propriedades ...
no menu de contexto.
2. Marque a caixa "Ocultar" (Hide), e pressione o boto OK.
Isso adiciona o controle de atributo esconder, de modo que no visvel na tela durante a
execuo. Claro que voc sempre pode v-lo na janela Designer.
3. Clique direito sobre o boto Select, em seguida, clique em Propriedades ....
4. Esconder marque a caixa e pressione o boto OK.
5. Clique direito sobre o boto Excluir e clique em Propriedades ....
6. Esconder marque a caixa e pressione o boto OK.
7. Clique direito sobre o boto Alterar.
8. Esconder marque a caixa e pressione o boto OK.
9. Clique direito sobre o boto Inserir e clique em Propriedades ....
10. Esconder marque a caixa e pressione o boto OK.
No h necessidade de desperdiar o espao ocupado por estes botes (o usurio no pode ver), de
modo que vai chamar no meio.
1. Clique no boto Fechar e, em seguida, pressione SHIFT + clique e arraste o boto para cima
dentro da lista.
Arrastando um boto com a tecla SHIFT (SHIFT) pressionado move o controle em linha reta: se
voc comear a se mover para baixo somente ir para cima e para baixo; Se voc comear a
mov-lo para um lado, apenas rolar horizontalmente.
2. NO Pressione o boto quando for solicitado para mover dentro da guia (Tab).
EuCONTEDO 139
3. Clique no boto Select e, em seguida, CRTL + clique sobre a inserir, alterar e excluir botes para
selecionar todos eles, e, em seguida, clique e arraste os botes para a caixa de lista.
Arrastar vrios controlos permite mover simultaneamente manter as suas posies relativas
dentro do grupo.
4. NO Pressione o boto quando for solicitado para mover dentro da guia (Tab).
5. Agora, vamos usar o espao ganho para estender a lista.
6. Clique na caixa de lista, e arraste a ala central inferior para baixo para aumentar a lista.
Designer Windows tem um modo de teste, oferecendo uma prvia de como a janela no desktop.
Uma vez que uma janela MDI aparece no quadro da janela Designer.
sistemas de visualizao
Agora que as guias foram colocadas, devemos dizer caixa de listagem que sistemas de usar.
1. Clique direito na caixa de lista e escolha Aes ... do menu de contexto.
A caixa de lista realmente um BrowseBox modelo de controle que foi colocado no
procedimento de janela de modelo pr-configurado em Procurar, no modelo Record (Template
Registry) (ver do Usurio'S Guia para obter mais informaes sobre o Registro modelo). Isso
significa que ele tem associado indicadores que informam sobre como preencher a lista e as
aes a serem tomadas.
139
140 CLARION 5 CLARION
Aprendiendo
Os indicadores que aparecem na guia Aes vm diretamente dos modelos (neste caso, o modelo
BrowseBox). Dessa forma, voc pode se comunicar exatamente o que modelos de cdigo deve
gerar para produzir exatamente a funcionalidade que voc precisa. Estes indicadores, seus usos e
significados, so abordados ema guia usurio ea ajuda online para cada janela em que eles
aparecem.
2. Selecione a operao condicional guia (Comportamento Condicional).
3. Pressione o boto Inserir.
4. Tipo de escolha (? Folha1) = 2 no campo Condio.
Isto indica a condio em que a ordem de apresentao alternativa ser usado. Esta expresso usa
a funo escolha da lngua Clarion (ver referncia Language) para detectar quando o usurio
escolheu a segunda folha do separador. O cdigo gerado ir usar essa expresso em uma
instruo condicional que vai mudar a ordem de exibio quando o programa executado.
5. Pressione o boto com trs pontos (...) ao lado da tecla de campo para usar.
6. Destaque CLI: KeyEmpresa e pressione o boto Select na caixa de dilogo Select Key.
Agora, quando o usurio escolhe a segunda lngua template Controle BrowseBox ir gerar o
cdigo para selecionar a empresa chave campo. No h necessidade de saber o que fazer com a
primeira guia, como sempre usa a senha que estabelecemos na rvore de arquivos (esquema de
arquivo).
7. Pressione o boto OK.
8. Pressione o boto Inserir.
9. Tipo de escolha (? Folha1) = 3 no campo Condio.
10. Pressione o boto com trs pontos (...) ao lado da tecla de campo para usar.
11. Destaque CLI: KeyCP e pressione o boto Select na caixa de dilogo Select Key.
12. Pressione o boto OK.
EuCONTEDO 141
Escolha Exit! na barra de menu Janela Designer e salvar as alteraes na janela quando solicitado.
Pressione o boto OK na caixa de dilogo para fechar Propriedades do Procedimento.
Escolha Salvar Arquivo ou pressione o boto Save para salvar seu trabalho.
141
142 CLARION 5 CLARION
Aprendiendo
Ponto de partida:
O arquivo TUTORIAL.APP deve estar aberta.
Note que no tinha para iniciar uma nova thread de execuo para este procedimento. Voc
deve executar no mesmo segmento que navegar para que o usurio no pode abrir uma guia de
janela ou formulrio para alterar um registro, em seguida, selecione a janela de procura de
novo e abrir outra aba no mesmo registro. Em outras palavras, seria bom deixar as tentativas do
usurio para alterar o mesmo registro duas vezes de uma vez!
143
144 CLARION 5 CLARION
Aprendiendo
Preencha as caixas
O projeto da janela proconfigurado e contm trs campos. O boto OK fecha a caixa de dilogo,
aceitando a entrada do usurio e as informaes gravadas no disco. O boto Cancelar fecha o
formulrio sem salvar as alteraes. E o campo de texto fornece uma mensagem informativa para
o usurio sobre a ao que est sendo executada no registro. Esta ao chamada em Ingls para
preencher, cuja traduo literal que as pessoas (a janela).
EuCONTEDO 145
Isso mostra uma caixa de ferramentas flutuante contendo todos os campos especificados na
rvore de arquivo do aplicativo.
2. Cusno clique na caixa de ferramentas flutuante Preencher campo, e mova o cursor sobre o
projeto da janela.
O cursor muda para uma cruz e um "booklet", indicando que o campo vem do dicionrio de
dados.
3. Clique perto do canto superior esquerdo da janela.
Isso coloca o campo e seu rtulo associado. Esses controles trazer todos acima especificado nas
definies de dicionrio.
4. D um duplo clique Empresa na caixa de ferramentas flutuante Preencher campo.
DUPLO CLIC imediatamente colocado tanto no campo e com a etiqueta logo abaixo dos
primeiros campos que voc acabou de colocar. Voc poderia selecionar e colocar cada campo
como fizemos com o primeiro, mas muito mais rpido, clicando duas vezes.
5. D um duplo clique sobre a caixa de ferramentas flutuantes preencher os nomes de campo.
6. Clique duas vezes no Sobrenomes na caixa de ferramentas de campo Preencher flutuantes.
7. D um duplo clique sobre Gesto na caixa flutuante ferramentas campo Preencher.
8. Clique duas vezes sobre a flutuao ferramentas caixa Cidade Preencher campo.
9. D um duplo clique provncia na caixa de ferramentas flutuante Preencher campo.
145
146 CLARION 5 CLARION
Aprendiendo
Isso coloca o rtulo e na lista drop-down. No dicionrio de dados que predefinir este campo
como um controle de lista com o atributo DROP. Uma vez que os valores vlidos (BA | SF |
ER | CBA | MZA) contendo so pr-definidos, no h necessidade de mudar seu formato.
10. Clique duas vezes no CP na caixa de ferramentas de campo Preencher flutuantes.
guia de janela ou formulrio agora se parece com isso:
Para uma aparncia mais profissional, temos de mover os campos e alinhar as bordas de todos os
controles.
4. Mova a provncia de lista drop-down e etiqueta (clique e arraste em qualquer um dos controles
selecionados), canto superior direito dos controles cidade.
Quando vrios controlos so seleccionados, eles podem ser movidos em grupos, tal como
controle individual mudaria.
5. Clique na entrada de dados de controle CP.
6. Pressione SHIFT + arrastar na caixa de CP para a esquerda, mais perto de seu rtulo.
7. CTRL + clique no rtulo CP.
8. Mova a entrada de dados caixa de CP e rotular canto superior direito dos controles da cidade e
da provncia.
Voc pode ter que ampliar a janela um pouco para alcan-lo.
9. Clique sobre os dados caixa de entrada Nome, para a direita, mais perto de seu rtulo.
10. SHIFT + DRAG ltimo nome na caixa esquerda, mais perto de seu rtulo.
11. CTRL + clique no rtulo Nome.
12. Mova a caixa Nome de entrada de dados acima e direita dos nomes.
Agora, a janela deve ser algo como isto:
147
148 CLARION 5 CLARION
Aprendiendo
4. Pressione o boto esquerdo Align (boto superior esquerdo) na caixa flutuante ferramentas
Alinhar.
Os controles esto alinhados no lado esquerdo, em relao ao ltimo item selecionado (com
punhos vermelhos).
Para identificar os controles na caixa de ferramentas Align, basta colocar o cursor do mouse
sobre o controle e esperar meio segundo at que a dimenso identificar aparece.
7. Ctrl + clique entrada controles imediatamente abaixo, para selecionar todos eles.
8. Clique direito e escolha "alinhamento esquerda" (Alinhar esquerda) menu de contexto que
aparece.
Isto deve alinhar todos os controlos de entrada de dados com as respectivas etiquetas, que j
tenham sido submetidos a este alinhamento.
11. CTRL + clique sobre os trs controles do lado esquerdo (o rtulo, os nomes de campo e
rtulo).
No h outra maneira para selecionar vrios controles na janela Designer: Use o loop.
13. Colocar o cursor do rato ligeiramente acima e para a direita do primeiro controlo na linha
inferior (que seria Cidade).
14. CTRL + clique e arraste um pouco para baixo e para a direita at o desenho da caixa em torno
dos cinco controles direita (os rtulos e campos City, Provncia e CP), e solte o boto do
mouse.
16. Use a mesma ferramenta para alinhar os campos cusno, Negcios e Gesto com etiquetas.
149
150 CLARION 5 CLARION
Aprendiendo
A janela est quase pronto. Agora adicionar uma listagem caixa de registros telefnicos
ligados.
Modelos (templates) gerar controle de todo o cdigo fonte necessrio para criar e manter um
controle ou conjunto de controles, especfico na janela. Todos os controles de entrada de dados
simplesmente no so simplesmente colocados controles ou modelos de controle, porque eles
precisam de cdigo extra para executar suas funes normais. modelos de controle so usados
somente quando um controle especfico precisa funcionalidade extra no fornecida pelo prprio
controle. Por exemplo, o OK e Cancelar botes so ambos controle de modelo: o boto OK salva o
arquivo no disco, enquanto o Anular controle de modelo executa toda a "limpeza" necessria para
cancelar a operao atual.
Agora vamos colocar um modelo de controle BrowseBox que exibe todos os registros no arquivo
do telefone ligado ao registo de cliente atual.
151
152 CLARION 5 CLARION
Aprendiendo
4. Escolha "relao entre arquivos" (Relao Arquivo) na lista suspensa de limite de pesquisa
(limite de alcance Type).
5. Pressione a reticncias (...) ao lado do campo de arquivo e caixa de dilogo Cliente caixa
relacionadas Selecione Arquivo escolher.
Isso identifica o arquivo do cliente eo arquivo relacionado. Estes estgios limitar os registros
exibidos na caixa listados somente os registros relacionados ao registro do cliente que est
sendo exibido no momento da consulta.
Em seguida, adicione o Insert padro, Alterar e os botes para controlar o caixa listados em
Excluir.
Colocar outro modelo de controle
1. Preencher escolha Modelo de controle, ou clique na ferramenta de modelo na ferramenta de
controles de caixa de controle (o ltimo cone da lista na linha inferior).
2. Realce o modelo de controle BrowseUpdateButton e pressione o boto Select.
O cursor muda para uma cruz e um livreto.
3. Clique abaixo da parte inferior caixa de lista esquerda.
Inserir, parecem alterar e excluir botes. Lembre-se: estes so os botes que permitem o
funcionamento dos botes na barra de tarefas, e, portanto, deve estar presente na janela de
153
154 CLARION 5 CLARION
Aprendiendo
design. No h necessidade de ser visvel para o usurio, para que possa escond-los, se
desejar. No entanto, uma vez que esta caixa de listagens (BrowseBox) est localizado em um
procedimento de atualizao (Form), nesta aplicao, vamos sair desse grupo de botes
visveis. Isso permitir que voc use qualquer um dos dois grupos de botes. Os botes da
barra de ferramentas s ir funcionar nesta lista quando a caixa listados tem o foco (no quando
o usurio insere dados em qualquer outro controle), de modo que deixar visvel para aqueles
botes ir garantir que o usurio pode facilmente manter registros telefone.
Neste ponto, a janela deve ser algo como isto:
- CPROCEDIMENTOS opiceos
Procedimentos "Produtos"
Agora que voc j criou a navegao do cliente, podemos reutilizar esse trabalho para o prximo
procedimento, copiando e em seguida, alterando campos. Neste captulo, copiar o procedimento
VerClientes para criar VerProductos.
Tambm usaremos os "pontos de insero" (pontos incorpora) para escrever "cdigo fonte
inserida" VerProductos chamar o procedimento da aplicao de menu e barra de ferramentas.
Ento, ns apresentamos os muitos pontos que voc pode adicionar alguns (ou muitos) linhas de
cdigo prpria fonte para adicionar funcionalidade a qualquer procedimento.
Ponto de partida:
O arquivo TUTORIAL.APP deve estar aberta.
Recorde-se quando o item de menu Ver produtos foi criado, e o boto na barra de ferramentas
intitulada "Produtos", no especifique um procedimento para chamar quando o usurio final ir
executar. Comeamos a criar a chamada de procedimento.
1. Destaque procedimento VerClientes na rvore da aplicao.
Este o procedimento que ir copiar.
2. Escolha Copiar Procedimento ...
caixa de dilogo caixa Novo Procedimento aparece.
3. Tipo VerProductos na caixa de entrada e pressione o boto OK.
Porque o procedimento est ligada a VerClientes FichaCliente (que est copiando), uma caixa
de dilogo alertando sobre o conflito de nome (nome do procedimento confronto) com opes
para lidar com a situao parece. A traduo da mensagem : "O procedimento de cpia chama
outros procedimentos Voc quer dar-lhes novo nome automaticamente para os procedimentos
155
156 CLARION 5 CLARION
Aprendiendo
chamados, usando os mesmos nomes, ou indicar nomes alternativos em cada caso.?". H trs
botes na parte inferior: "Auto Rename" (dar um novo nome automaticamente), "Same"
(deix-lo), e "Prompt" (perguntar).
modelos Clarion permitem que voc adicione seu prprio cdigo fonte de muitos pontos pr-
definidos dentro do cdigo gerado. uma maneira muito eficiente para alcanar o mximo de
flexibilidade e reutilizao de cdigo. O ponto em que o cdigo digitado chamado de "ponto de
insero" (Embed Point). Estes pontos esto disponveis para todos os eventos comuns e cada
janela de controle e em muitas outras posies lgicas dentro o cdigo gerado.
Neste exemplo, adicionar cdigo introduzido fonte (usando um modelo de cdigo que ir escrever
a fonte de cdigo) nos pontos onde o usurio final escolhe os itens do menu Ver opo , eo ponto
onde o usurio pressiona o boto produtos na barra de ferramentas do aplicativo.
A nomeao de um procedimento
1. Clique direito o procedimento rvore da aplicao principal.
Existem vrias maneiras de inserir os pontos de insero dentro de um procedimento. Dois
aparecer no menu de contexto que acaba de aparecer ..
A primeira opo Incorpora, que chama a caixa de dilogo Fonte incorporado, que exibe uma
lista de todos os pontos de insero dentro do procedimento.
A segunda maneira que realmente gera fonte para o cdigo do procedimento e chama a (o
editor de texto no cdigo modo de insero) "Embeditor" para que voc possa modificar todos
os pontos de insero no contexto opo de fonte de cdigo-fonte do gerado . Este ltimo
parece "cinza" para indicar que no possvel modific-lo, e cada ponto possvel de
procedimento de insero identificado por comentrios, aps o qual voc pode inserir seu
prprio cdigo.
H vantagens em cada mtodo de trabalho com os pontos de insero, de modo cobrir tanto
durante este curso. Primeiro, use a caixa de dilogo Fonte incorporado.
2. No menu de contexto, escolha Incorpora.
a caixa de dilogo Fonte incorporado, que lhe d acesso a todos os pontos de insero
procedimento aparece. Voc tambm pode chegar aqui com o boto Procedimento Incorpora
na janela Propriedades, mas mais rpido usando o menu de contexto. A lista ordenada
alfabeticamente ou na ordem em que os itens aparecem no cdigo-fonte gerado, dependendo da
configurao Incorpora Ordenar por ordem alfabtica no ambiente de opes (Opes de
configurao Aplicao).
3. Pressione o contrato All boto.
Isto ir facilitar a localizao a necessidade especfica ponto de insero.
4. Controle de Manipulao de Eventos Localize a pasta, clique no sinal + para expandir o
contedo.
O menu seleco um controle, como uma caixa de entrada de dados, ou a prpria janela.
No lado direito da janela, voc ver os botes de seta caixa de rotao que lhe permitem definir
uma prioridade (prioridade) para cima e para baixo e; estes so importantes. s vezes voc
quer escrever cdigo para ser executado antes do cdigo gerado pelo modelo, e s vezes a
correr atrs e s vezes deve executar algum lugar no meio dentro do cdigo gerado. A
prioridade determina a localizao exata de seu cdigo incorporado. Isto ir fornecer muita
flexibilidade para localizar o cdigo incorporado possvel. O prprio valor de prioridade no
importante, mas a sua posio lgica dentro do cdigo gerado. Em breve vamos esclarecer
mais sobre esse assunto.
157
158 CLARION 5 CLARION
Aprendiendo
caixa de dilogo Selecionar parece incorporar tipo com uma lista de todas as opes incorporar
cdigo. Voc pode simplesmente chamar um procedimento (Chamar um procedimento),
escreva seu prprio cdigo fonte (Source) linguagem Clarion ou usar um cdigo de modelo
(modelo Cdigo) para escrever o cdigo necessrio. Esta uma vantagem para editar os pontos
de insero dentro da caixa de dilogo Fonte incorporado: Voc pode usar modelos de cdigo
para voc escrever cdigo, em vez de ter que faz-lo sozinho.
segmento da chamada execuo por ele INICIAR procedimento, o procedimento que voc
especificar.
8. VerProductos escolher a lista drop-down Nome do Procedimento.
Isso indica o procedimento para chamar quando o usurio seleciona o item de menu. Este o
procedimento que tenha copiado anteriormente.
de ferramentas
Neste ponto, voc pode fazer o mesmo para chamar o procedimento VerProductos a partir do
boto produtos. No entanto, existe uma maneira mais fcil para reescrever este cdigo: basta
copiar e col-lo a partir de um ponto de insero para o outro!
1. Clique no boto Copiar (o grupo boto do meio no boto contrato certo Todos).
O modelo de cdigo que voc acabou de adicionar ainda deve ser destacado, assim que esta
ao ir copi-lo a partir da rea de transferncia do Windows.
2. Localize a pasta? BotonProductos (na mesma pasta no controle, mesmo que voc j
manipulao localizado) e clique nela para abri-la.
3. Ilumine aceitado ( "Accepted") e colar (o boto com o grupo de extrema direita de botes
direita do boto contrato Todos) ( "Colar").
caixa de dilogo procedimento parece nome novamente classe para avisar que voc j tenha
chamado uma vez este procedimento.
4. Pressione o "mesmo" (Same).
Agora, este ponto de insero ir gerar o mesmo cdigo acima.
5. Pressione o boto Fechar.
159
160 CLARION 5 CLARION
Aprendiendo
modificao Browse
campos repovoada
1. Ilumine PROD: partNum na lista Campos e pressione o boto Select.
2. Marque as caixas borda direita e redimensionveis, e aumentar Ident uma caixa (1).
3. Pressione o boto New Column.
4. Mark PROD: Viso geral sobre a lista de campos (Field), e pressione o boto Select.
5. Selecione Esquerda para justifficacin os dados.
6. Pressione o boto New Column.
7. Ilumine PROD: Preo na lista Campos e pressione o boto Select.
8. Aumentar recuo no grupo de dados 12. Como justificao necessria decimal este passo para
garantir que colocamos a visualizar a parte fraccionada
9. Pressione o boto New Column.
10. Ilumine PROD: TasaImponible na lista Campos e pressione o boto Select.
Note-se que padro justificao decimal, e que o spin indicando o recuo de dados grupo
mantido em 12 (doze) como observamos no campo anterior.
11. Pressione o boto OK para fechar a lista de Designer.
No se preocupe com os botes que aparecem na caixa de listagem. Lembre-se que estes so
escondidos e so chamados pelos botes na barra de ferramentas.
EuCONTEDO 161
renomear janela
1. Clique na barra de ttulo da janela.
2. Tipo VerProductos no campo de texto (Text) caixa de ferramentas flutuante Propriedade e
pressione TAB.
Adicionando um localizador
Se a lista de produtos a ser exibido muito longo, voc vai precisar fazer uma extensa pesquisa
antes de encontrar o produto desejado. Inicialmente todas as listas exibir caixas de trazer um
localizador de "passos" (STEP) que vai para o primeiro registro que comea com a letra do
operador para digitar no teclado.
Mas, com grandes bases de dados, o usurio precisa digitar vrias letras iniciais para alcanar o
registo pedido. entrada Locator (Localizador de entrada) um campo no qual o usurio pode
escrever. Pressionando TAB, a lista desloca-se para o primeiro registro que coincide com o
digitado. Este recurso funciona apenas com cdigos alfanumricos (string).
161
162 CLARION 5 CLARION
Aprendiendo
1. Se voc ainda no estiver presente, selecione Opes Mostrar Fielbox para exibir a caixa
flutuante ferramentas campo Preencher.
Se a caixa de ferramentas Preencher campo ainda mostra os campos de arquivo Os clientes
simplesmente fechar a caixa de ferramentas (com duplo clique na barra de ttulo) e reabri-lo
para atualizar a caixa de ferramentas com campos de arquivo produtos.
2. Clique duas vezes em Descrio das ferramentas de preencher a caixa campo.
Isso coloca tanto o rtulo e caixa de login para o campo localizado perto do canto superior
esquerdo da janela. Este o campo localizador.
3. Escolha Exit! Designer de menu para fechar as janelas, e salvar as alteraes.
Quando ele deu novo nome a referncia ao copiar VerClientes o procedimento de atualizao para
VerProductos, ele se virou em um procedimento FichaProducto "todo". Portanto, voc deve criar
um guia ou formulrio para atualizar o arquivo do produto.
Selecione o tipo de Procedimento para FichaProducto
1. FichaProducto ficar de p, e, em seguida, clique no boto Propriedades.
2. Ilumine Form, limpar o Usar assistente procedimento de caixa, e pressione o boto Select.
3. Pressione o boto Arquivos na caixa de dilogo Procedure Propriedades.
4. Realce o arquivo "todo" e pressione o boto Inserir.
5. Produtos Illuminate arquivo e pressione o boto Select.
6. Pressione o boto OK para retornar caixa de dilogo Procedure Propriedades.
7. Pressione o boto Janela para estruturar o formulrio.
campos povoam
1. Se voc ainda no estiver presente, selecione Opes Mostrar Fieldbox para mostrar
PopulateField caixa de ferramentas.
2. D um duplo clique sobre a caixa de ferramentas partNum campo Preencher.
163
164 CLARION 5 CLARION
Aprendiendo
Isso coloca automaticamente tanto o rtulo eo campo de caixa de login perto do canto superior
esquerdo da janela.
3. D um duplo clique sobre a caixa de Inscrio Ferramenta campo Preencher.
Isso coloca automaticamente tanto o rtulo e caixa de login localizado abaixo do campo acima.
4. D um duplo clique sobre a caixa de ferramentas Preo Campo preenchido.
5. D um duplo clique sobre a caixa de ferramentas TasaImponible campo Preencher.
A forma parecida com esta:
Ponto de partida:
O arquivo TUTORIAL.APP deve estar aberta.
criao procedimento
165
166 CLARION 5 CLARION
Aprendiendo
17. Ajuste o tamanho da caixa de lista, arrastando a ala central no lado direito para a direita,
fazendo a caixa quase to largo como a janela.
Melhoradas listagens caixa de aparncia
1. Clique direito sobre as listagens de caixa, e escolha Propriedades no menu de contexto.
2. Selecione a guia extra e marque as caixas verticais e horizontais na caixa de dilogo
Propriedades da lista.
Isso adiciona lista horizontal e verticalmente rolagem.
3. Pressione o boto source (fonte)
Porque um campo (descrio) longo, voc pode especificar que listou esta caixa uma fonte
menor, o que lhe permite exibir mais informaes sem que o usurio ter que mover o cursor.
4. Escolha uma fonte eo tamanho fixado em 8 pontos.
Consulte o Guia do Usurio para algumas dicas sobre temas como a escolha das fontes da
direita para controles. No geral, bom limitada para as fontes que vm com o Windows;
porque ele no pode garantir que o usurio tenha uma fonte diferente em seu sistema. A
ilustrao mostra a fonte definida para Arial, que comum no Windows.
167
168 CLARION 5 CLARION
Aprendiendo
Em seguida, coloque uma caixa listada com o detalhe o contedo do arquivo. Isto ir atualizar
automaticamente quando o usurio altera a seleo no topo da lista.
EuCONTEDO 169
169
170 CLARION 5 CLARION
Aprendiendo
171
172 CLARION 5 CLARION
Aprendiendo
- TEMAS AVANZADOS
Ponto de partida:
O arquivo TUTORIAL.APP deve estar aberta.
173
174 CLARION 5 CLARION
Aprendiendo
1. Clique direito sobre o Controle PED: cusno e escolha Aes no menu de contexto.
EuCONTEDO 175
aes ordinrias de cada controle de entrada permitem que voc para validar a entrada de dados
contra um registro em outro arquivo, ou quando o controle selecionado (apenas antes que o
usurio insere dados) ou quando aceitou (imediatamente aps a admisso dados).
2. Quando no grupo de controle for aceite, pressione o boto reticncias (...) para a caixa de login
Lookup Key.
3. Ordens Realce o arquivo na caixa de dilogo Select Key, e clique no boto Inserir.
4. Clientes Realce o arquivo na lista de arquivos, e pressione o boto Select.
Essas aes mais recentes adicionar o arquivo para o procedimento de Clientes rvore de
arquivos como uma consulta automtica do arquivo Orders. Isso ir gerar uma "consulta" nos
Clientes arquivo vinculado, com base na relao dos arquivos configurados no dicionrio.
5. Destaque CLI: KeyNumCliente a caixa de dilogo Key Select, e pressione o boto Select.
Isto indica a chave que usado para tentar obter um arquivo de registro vlido vinculado no
cliente para o valor que o usurio digitar este controle.
6. Pressione o reticncias (...) aponta caixa campo de pesquisa.
7. Destaque CLI: cusno na caixa de dilogo Select Component, e pressione o boto Select.
Isso faz com CLI: cusno o campo deve conter o valor correpondiente que o usurio entra o
controle.
8. Escolha o procedimento VerClientes da lista drop-down Lookup Procedimento.
Isso chama o procedimento chamado quando o usurio digita um nmero de cliente invlido,
assim voc pode escolher a partir de uma lista de clientes.
9. Marque as caixas Execute Lookup Durante Non-Stop Select ( "Fazendo consulta durante a
reviso automtica do disco") e forar a janela de atualizao Quando aceitado ( "redesenhar a
tela para aceitar"), para garantir que os dados apresentados sempre vlido e atualizado .
175
176 CLARION 5 CLARION
Aprendiendo
O elemento chave prximo nesta janela uma listas de controle (Navegar), sincronizados com o
nmero de ordem dessa guia. Isto ir mostrar todos os registros no detalhe arquivo relacionado
ordem de entrada.
Adicionando uma lista Detalhe
1. Escolher modelo de controle Preencher ou clique no modelo de controle sobre os flutuantes
Controls toolbox (ltimo cone direita, linha inferior).
2. BrowseBox destaques e pressione o boto Select.
3. Clique abaixo os dados do cliente caixa de login.
4. Destaque o item "todo" localizado sob File-Navegao da caixa de lista e pressione o boto
Inserir.
5. Marque a caixa de dilogo Inserir arquivo detalhe arquivo e clique no boto Inserir.
6. Pressione o boto Edit.
7. KeyNumPedido ficar na caixa de Acesso Alterar chave da caixa e pressione o boto Select.
8. Destaque Preo de varejo: partNum na lista de campos (Campos), e pressione o boto Select.
9. Centro de selecionar a partir da lista suspensa para a justificao dos dados (grupo de Dados).
10. Pressione o boto New Column.
11. Destaque Retail Price: Quantidade na lista de campos (Campos), e pressione o boto Select.
12. Centro de selecionar a partir da lista suspensa para a justificao de dados.
13. Pressione o boto New Column.
14. Destaque Preo de varejo: ProdPrecio na lista de campos (Campos), e pressione o boto Select.
15. Centro de selecionar a partir da lista suspensa para a justificao de dados.
16. Pressione o boto New Column.
17. Destaque LOCAL ordem de tabulao de dados na lista de arquivos, e pressione o boto
"New" (Novo).
O boto Novo permite a adio de uma varivel local sem ter que ir at a janela Procedimento
Propriedades e pressione o boto de dados. Usaremos esta nova varivel para exibir o preo
total para cada item (quantidade multiplicada pelo preo unitrio).
18. Tipee ItemTotal no campo Nome.
19. Select decimais a partir da lista drop-down Tipo.
20. Tipo 7 como de comprimento de campo (caracteres).
21. Digite 2 para o nmero de casas decimais (Places) e pressione o boto OK.
177
178 CLARION 5 CLARION
Aprendiendo
179
180 CLARION 5 CLARION
Aprendiendo
1. Pressione o boto pequena seta localizada direita da lngua move it Hot Campos para as abas,
e selecione a guia totalizando quando ela aparece.
2. Pressione o boto Inserir.
3. Pressione o reticncias total campo Target Field.
4. Ordens Realce o arquivo na lista de arquivos (Arquivos), selecione PED: MontoFactura, e
pressione o boto Select.
Este o campo que ir receber o resultado do clculo total.
5. Escolha "Sum" (Soma) a partir da lista drop-down Total Tipo.
6. Pressione a reticncias (...) o campo total (campo de Total).
7. FichaPedidos dados locais destacar a opo na lista de arquivos (Arquivos), selecione
ItemTotal lista Campos e pressione o boto Select.
Este o campo cujo contedo ser usado no clculo total. At agora s tm declarado neste
campo e ns no fizemos nada para introduzir qualquer valor, mas em breve vamos.
8. Escolha "Para cada leitura record" (Cada registro lido) a partir da base na lista total drop-down.
e pressione TAB.
3. Escolha Exit! Designer para fechar as janelas.
181
182 CLARION 5 CLARION
Aprendiendo
faz-lo funcionar
H um par de coisas que devemos fazer para este procedimento para obter a funcionalidade
completa: adicionar uma frmula, e definir o "modificado in situ".
Para fazer ItemTotal calcular a quantidade de cada registro de detalhe listado na caixa, voc
precisa adicionar uma frmula para o procedimento. Isso tambm ir fazer a soma total no PED:
MontoFactura.
1. Pressione o boto sobre as frmulas de caixa de dilogo Propriedades Procedimento de.
Frmulas caixa caixa de dilogo aparece. Aqui todas as frmulas do procedimento so listados.
2. Pressione o boto Novo para adicionar uma nova frmula.
caixa de dilogo Editor de Frmula aparece.
3. Total Tipo item Frmula no campo Nome.
4. Pressione a reticncias (...) no campo Classe.
5. Formato destaque Navegue na lista classes de modelo e pressione o boto OK.
O domnio de Classe simplesmente especificar a posio lgica dentro do cdigo de fonte
gerado em que a frmula calculada. Navegar na classe Format indica o modelo de controle
BrowseBox para realizar o clculo cada vez que um formato de gravao para exibio na
caixa de lista.
6. Pressione a reticncias (...) no campo Resultado.
7. FichaPedidos dados locais esto na lista de arquivos, selecione ItemTotal lista Campos e
pressione o boto Select.
Isto d nome ao campo que receber o resultado do clculo. Este o campo que definimos
anteriormente na Listagem Designer.
8. Pressione o boto de dados no operando grupo (Operandos).
9. Realce o arquivo na lista Detalhe arquivos, selecione Preo de varejo: Nmero de lista Campos
e pressione o boto Select.
Isto coloca-lo automaticamente no campo Declarao. Este campo contm as construes de
expresso. Se desejar, voc tambm pode escrever diretamente sobre ele para construir a
expresso.
10. * Pressione o boto no grupo de operadores (Operators).
Este o operador de multiplicao.
11. Pressione o boto de dados no grupo Operandos.
12. Realce o arquivo na lista Detalhe arquivos, selecione Preo de varejo: ProdPrecio lista Campos
e pressione o boto Select.
13. Pressione o boto de teste (Confira) para verificar a sintaxe de expresso.
EuCONTEDO 183
uma marca de verificao verde aparece esquerda da sentena, o que indica que a sintaxe
est correta. Se um "X" vermelho aparece, a sintaxe incorreta, e destacado parte da sentena
a ser alterado.
Agora vamos configurar as caractersticas do "modificado in situ" (Edit in Place). J usamos esse
recurso no arquivo de telefones, e simplesmente aceitar o comportamento padro, porque era um
arquivo muito simples. No entanto, estamos agora trabalhando em uma linha de log Detalhe de um
sistema de entrada de pedidos, o que significa que precisamos para validar os dados inseridos pelo
operador. Para fazer isso, precisamos estender a funcionalidade simples oferecidoa biblioteca
classe ABC.
183
184 CLARION 5 CLARION
Aprendiendo
biblioteca ABC contm uma classe de objetos chamados EditEntryClass que o Editar classe
padro no lugar. "Ns vamos ignorar" alguns dos mtodos da classe, para esta coluna, voc
pode modificar o comportamento padro. A adio deste campo lista de campos de coluna
especfica o que nos permite "colocar de lado" mtodos pr-configurados para este caso.
Vamos fazer a validao para realizar a entrada de dados: queremos garantir que os usurios s
podem inserir nmeros de produto vlida.
7. Pressione o boto OK.
8. Pressione o boto Inserir.
9. Pressione a reticncias (...) no campo campo.
10. Destaque Retail Price: Nmero e pressione o boto Select.
A classe EditEntryClass s proporciona a entrada de dados de controles (ENTRADA). Para
este campo, ns queremos usar um controle de rotao para que o usurio faz isso aumente a
quantidade que voc deseja. Portanto, precisamos ignorar alguns dos mtodos da classe
tambm pr-configurado para esta coluna para ter um controle de rotao em vez de um
controle de entrada.
11. ABC Use caixa padro limpo.
Isso permite que voc especificar a classe exata a partir do qual deriva.
12. Selecione na lista suspensa EditClass classe base.
o EditEntryClassEle faz muito mais do que precisamos e mesmo assim vamos ignorar mtodos.
Ento, vamos derivar e sobre-escrever a classe da qual todos Editar nas aulas lugar so
derivadas:o EditClass.
Somente campos primrios Navegar arquivo pode ser modificado in situ e opo de pr-
configurado que todos os arquivos primrios so modificados. Neste caso, isso significa que
voc pode alterar os campos de detalhe, mas no o produto. No entanto, neste caso, no
queremos que o usurio modificar o preo, porque vamos obter o arquivo diretamente do
produto, e ns no queremos isso mudou. por isso que ir desativar a caixa Permitir Editar no
local.
18. Pressione o boto OK cinco vezes para retornar rvore da aplicao.
Usando o Editor do Ponto de Insero (Embeditor)
Clique direito sobre FichaPedido e escolha Fonte no menu de contexto.
Esta opo de menu abre a Incluso editor de ponto: o terceiro mtodo de acesso a esses pontos.
Este o mesmo editor de texto que j foi utilizado, mas aberto em um modo especial que lhe
permite no s editar os pontos de insero no procedimento, mas faz-lo no contexto dos modelos
de cdigo gerado.
O cdigo-fonte se parece com isso:
Note-se que a maior parte do cdigo est localizado sobre um fundo cinza, e os pontos que voc
escreveu cdigo tem fundo branco. H tambm comentrios identificatrios para cada ponto de
insero. Voc pode ver ou no tais comentrios como sua opo opes de configurao de
aplicativos. Quando estiver familiarizado com eles, voc pode querer remov-los para ver mais do
prprio cdigo.
Voc vai notar que apareceu brevemente uma mensagem: "tutorial Generating".
185
186 CLARION 5 CLARION
Aprendiendo
Este editor mostra todos os pontos de insero possveis que poderiam ser gerados para o
procedimento. Observe a distino: o editor no mostra o cdigo que ser gerado, mas todo o
cdigo que poderia ser gerada, se voc escolheu cada possvel cdigo de opo e coloque sobre
cada item disponvel. muito improvvel que voc nunca fazer isso. Portanto, muito mais cdigo
exibido no editor quando o aplicativo compilado. Assim que terminarmos aqui, vamos olhar
para o cdigo gerado para apreciar a diferena.
O lado direito da barra de ferramentas, existem quatro botes que so muito importantes para saber
quando se trabalha no editor. Eles so (da esquerda para a direita): ponto de insero anterior, o
prximo ponto, ponto utilizado acima, e ponto utilizado abaixo (se voc parar o ponteiro do mouse
sobre eles voc vai ver as direes de palco em Ingls para cada um dos botes). Deixar de ir
rapidamente de um ponto de insero para outro, especialmente quando voc j escreveu algum
cdigo.
Ordens de deteco modificado
Uma das coisas que queremos fazer este procedimento detectar alteraes nos pedidos existentes
e garantir que nenhum dado causar desequilbrios entre ordens e arquivos detalhe. Este sistema
mantm a quantidade total de uma ordem no PED campo: MontoFactura, de modo que quando o
usurio muda um item de detalhes em um pedido existente, voc deve ser o registro atualizado.
H uma maneira simples de fazer isso, o que nos permitir demonstrar a manipulao flexvel de
erros cometidos pela biblioteca ABC.
1. Clique no prximo ponto de insero boto (cinco vezes) at atingir o ponto de insero
imediatamente anterior a linha de cdigo em que ThisWindow CLASSE (gerenciador de
janelas), (este deve ser em [Prioridade 7500] lido.
Cada ponto de insero tem potencialmente 10000 nveis de prioridade dentro. Este sistema de
prioridade concebido para permitir que o cdigo para inserir antes ou depois do cdigo
gerado (quer pelo ABC Modelos Clarion ou terceiros). Isso faz com que o sistema de insero
completamente flexvel, permitindo que voc adicione o cdigo em qualquer ponto lgico
necessrio, antes ou depois de qualquer "pea" de cdigo gerado.
2. Digite o seguinte cdigo:
modelos Clarion ABC gerado cdigo orientado a objetos usando a biblioteca ABC. Esta
biblioteca contm uma classe chamada manipulao de erro ErrorClass. A poro de cdigo
que ns escrevemos declara um GRUPO LocalErrGroup (exatamente da forma exigidao
ErrorClass: Ver Manual de Aplicao) contendo um nmero de erro "custom" e uma
mensagem que estamos a definir para o uso de ErrorClass objeto de nossa aplicao. A
declarao SaveTotal uma varivel local que definido como (como, sempre com o mesmo
tipo de dados) o campo PED: MontoFactura. Vamos usar essa varivel para armazenar a ordem
total quando o usurio atualiza um pedido existente.
EuCONTEDO 187
Este cdigo chama o mtodo addErrors GlobalErrors LocalErrGroup objeto para adicionar
lista de erros disponveis que gerencia o objeto. O objecto GlobalErrors um exemplo deo
ErrorClassmodelos ABC que declaram a nvel mundial para lidar com todas as condies de
erro na aplicao. A adio do nosso LocalErrGroup permite que os GlobalErrors objeto para
lidar com a nossa condio de erro "custom". Isso demonstra a flexibilidade da biblioteca ABC
Clarion. A declarao IF detecta quando o usurio est modificando um pedido existente e
manter o original total.
187
188 CLARION 5 CLARION
Aprendiendo
Talvez voc no tenha notado, mas os modelos ABC gerar exatamente uma linha de cdigo
fonte executvel dentro do prprio FichaPedido PROCEDIMENTO (GlobalResponse =
ThisWindow.Run) para que todas as funcionalidades do PROCEDIMENTO FichaPedido
realizada em mtodos de objeto; mtodos virtuais especficos so os mesmos ou FichaPedido
mtodos padro PROCEDIMENTO da biblioteca ABC. Isso se aplica a cada procedimento
gerada por modelos ABC. gerao de cdigo completamente orientado a objeto torna este
muito compacto e eficiente: apenas o cdigo deve ser necessariamente diferente em um
procedimento individual tratado de forma diferente. Tudo o resto cdigo padro que reside
em um s lugar, e que foi testado e refinado para garantir um desempenho consistente e
confivel.
Programao orientadaObjeto (POO) Clarion comea com a estrutura de classe. Veja CLASS
na referncia da linguagem para o tratamento de sintaxe OOP. Guia do desenvolvedor (Guia do
Programador) contm vrios artigos que tratamOOP em profundidade, e h uma documentao
completa Biblioteca ABC Clarion.
7. No rescaldo da linha de ponto de cdigo incorporado (deve ser em [Prioridade 2500], insira o
seguinte cdigo:
Este mtodo chama Biblioteca ABCpara remover o nosso erro "personalizado". O mtodo
ThisWindow.Kill um "limpa" (realiza tarefas na sada) que executado quando o usurio
EuCONTEDO 189
189
190 CLARION 5 CLARION
Aprendiendo
Este cdigo ir detectar qualquer tentativa por parte do usurio para sair do procedimento sem
guardar a entrada de pedidos depois de fazer alteraes a um pedido existente. Note-se a barra
vertical (|) no final das primeiras linhas de cdigo. Eles so absolutamente necessrias. A barra
vertical o caractere de continuao de linguagem Clarion. Isto significa que as trs primeiras
linhas de cdigo, em seguida, formar uma nica instruo lgico que avalia trs condies
distintas e s executar GlobalErrors.Throw instruo (99), se todas as trs condies.
Esse cdigo cria um controle de rotao e assume que no haver erros. A instruo de retorno
necessria porque precisamos ter certeza de que a chamada para o mtodo pai no ocorre.
3. V at o EditInPlace :: mtodo de retalho: Cantidad.Init (este deve ser imediatamente abaixo da
EditInPlace method :: Preo de varejo: Cantidad.CreateControl).
EuCONTEDO 191
Este cdigo define a entrada de dados mscara e o intervalo de valores vlidos para o controle
de rotao.
5. Role para o mtodo EditInPlace :: VAREJO: Cantidad.SetAlerts (este deve ser imediatamente
abaixo da EditInPlace method :: Preo de varejo: Cantidad.Kill).
Este cdigo "-alerting" duas das teclas padro que alerta os SetAlerts mtodo o EditClassQue
so as setas para cima e para baixo. Precisamos fazer isso porque o SPIN usado para operar o
monitoramento, aumentando e diminuindo o valor do campo, respectivamente, quando
pressionado.
Para ver o cdigo que iremos excesso de escrever, pesquisa o EditClass no \ CLARION5 \
LIBSRC \ ABEIP.CLW.
191
192 CLARION 5 CLARION
Aprendiendo
8. No seguinte inmediatamiente incorporado para apontar a linha de cdigo que diz ReturnValue
= Parent.TakeEvent () (esta deve ser [Prioridade 7500], digite o seguinte:
Todo o resto do cdigo dar esta classe derivada funcionalidade extra no est presente na
classe pai. Este o verdadeiro poder deOOP: Se voc quiser tudo o que faz o pai, mas algo
mais, no precisa duplicar todo o cdigo do pai, mas simplesmente cham-lo. Neste caso, todo
o cdigo extra para executar algumas tarefas de validao de dados padro. Este cdigo ir
verificar se o usurio digitou um produto vlido e, se no o fizesse, ele ir chamar os
VerProductos procedimento para escolher a partir de uma lista.
mtodos "negligencia"
H uma coisa muito importante para entender sobre como trabalhar no Editor de ponto pontos de
insero quando "esquecido" mtodos: basta escrever algo em um ponto de insero de um mtodo
que pode ser negligenciado J fez !. Mesmo uma linha de comentrio simples (!) Pode fazer isso
porque o Gerador de Aplicao adverte que voc tenha escrito algum cdigo, e gera o prottipo
correspondente do mtodo dentro da instruo class local. Para evitar que voc acidentalmente
digitar um comentrio que causam "ignorar" mtodo e destruir sua funcionalidade, os modelos
ABC gerar automaticamente chamadas para o mtodo PADRE (pai) e retornar decises (regresso)
por voc, conforme necessrio.
Voc vai notar que todos os nossos mtodos "esquecido" contido chamadas geradas seu mtodo
pai, e os mtodos TakeEvent tambm tiveram instrues de retorno gerados. s vezes voc quer
executar esses julgamentos; embora s vezes no. Nestes ltimos casos, basta digitar o cdigo no
ponto de insero antes a chamada de mtodo pai e inserir sua prpria instruo RETURN no
final do cdigo (como fizemos no final do cdigo que escrevemos para mtodos EditinPlace ::
VAREJO : Cantidad.CreateControl). Isto significa que o mtodo pai gerado ea declarao
RETURN nunca ser executado. compilador Clarion suficientemente inteligente para reconhecer
que estas declaraes nunca ser executado, e otimizado cdigo objeto, remov-los a partir dele.
193
194 CLARION 5 CLARION
Aprendiendo
Gerao de cdigo
1. Escolher projeto Gerar para gerar o cdigo-fonte de sua aplicao.
2. Clique direito sobre FichaPedido e selecione mdulo a partir do menu de contexto. Editor de
texto contendo o cdigo fonte gerado para o procedimento FichaPedido aparece. Note-se que
h muito menos cdigo aqui do que tinha nos pontos de insero Editor. H todo o cdigo
estava presente para que voc possa apreciar o contexto, e para fornecer pontos de insero
pelo qual "ignorar" os mtodos, se houver necessidade. No entanto, o Gerador de Aplicao e
Template ABC Clarion tem inteligncia suficiente para gerar o cdigo necessrio somente
quando necessrio.
3. Escolha Exit! para fechar o editor de texto.
EuCONTEDO 195
Agora um bom momento para testar o aplicativo. Eles so todas as partes de entrada de
dados, e a nica coisa que resta a fazer declaradamente a ser discutido nas listas de aula
prximos.
- CRIANDO EuELATRIOS
Ponto de partida:
TUTORIAL deve ser arquivo aberto. APP
Em primeiro lugar, precisamos adicionar selees para o menu, para que o usurio pode chamar
relatrios, e assim o Gerador de Aplicativos pode chamar procedimentos "todo" que se aplicam.
item de menu Novo
1. Clique direito sobre o procedimento principal na rvore de aplicao e escolha Janela no menu
de contexto.
2. Escolha menu Editar Menu Designer Window.
3. Destaque item de P & Setup rint no Editor de lista de menus. Se desejar, voc pode editar o
campo de texto Menu e traduzi-lo para: Configuraes e impressora.
4. Pressione o boto Item.
5. Digite Imprimir List & Clientes no campo de texto Menu, e pressione TAB.
Especifique a ao do novo item
1. Selecione a guia Aes.
2. Escolha chamar um procedimento a partir da lista drop-down quando pressionado.
3. Tipo InformeClientes.
4. Marque a caixa Tpico Iniciado.
195
196 CLARION 5 CLARION
Aprendiendo
criao de relatrios
Para este relatrio, voc colocar controles nmero da pgina no topo, e colocar os campos do
arquivo de clientes na banda de detalhes.
197
198 CLARION 5 CLARION
Aprendiendo
detalhe
uma banda de detalhe (detalhe) para cada registro do relatrio impresso. Para este procedimento,
voc vai colocar os campos em um bloco de matriz, que produz um relatrio de etiqueta de
endereamento.
1. Multiple escolher preencher os campos, ou clique na caixa de controle do dicionrio campo
controla ferramentas.
2. Na caixa de dilogo Selecionar campo, realce a pasta "todo" e pressione o boto Inserir.
3. Os clientes selecionam a caixa de dilogo Inserir arquivo caixa de arquivo e pressione o boto
Select.
4. Pressione o boto Edit.
5. KeyNumCliente ficar na caixa de dilogo Acesso Alterar chave, e pressione o boto Select.
6. Destaque CLI: Empresa na lista Campos e pressione o boto Select.
7. Clique na faixa de detalhe perto do canto superior esquerdo.
8. Destaque CLI: Nomes na lista de campos e pressione o boto Select.
9. Clique na banda de detalhes, logo abaixo do primeiro controle.
10. Destaque CLI: Sobrenomes na lista Campos e pressione o boto Select.
11. Clique na faixa de detalhe, direita do controle que voc acabou de colocar.
12. Destaque CLI: Endereo na lista Campos e pressione o boto Select.
13. Clique dentro da banda de detalhes, abaixo do segundo controle apenas colocado.
2. Clique na faixa de detalhe, mas no em um dos cadeia de controlo. lida com rea de detalhes
aparecem.
3. Redimensionar, arrastando a ala central inferior, deixar espao para uma ou mais linhas.
199
200 CLARION 5 CLARION
Aprendiendo
Visualize o relatrio
1. Escolha Pr-Visualizao! para visualizar como ser a pgina impressa.
2. Destaque Detalhe na lista de detalhes e pressione o boto Adicionar repetidamente.
Isto preenche a pr-visualizao com vrias bandas "impressas" para ver como eles se parecem.
Como cada relatrio pode conter vrias bandas de diferentes tipos, voc selecione o que voc
quer ver antes de visualizao. Assim, o Report Designer saber o que a compor na tela.
5. Escolha Exit! para retornar caixa de dilogo Procedure Properties (e salvar seu trabalho).
6. Pressione o boto OK para fechar a caixa de dilogo Procedure Propriedades.
7. Escolha Salvar arquivo, ou pressione o boto Salvar na barra de ferramentas para salvar seu
trabalho.
relatrio de encomendas
Ento vamos criar um dos tipos mais comuns de relatrio. Uma ordem usa a maioria dos arquivos
no dicionrio de dados, e demonstra como criar quebras e totais do grupo. Ele tambm ir mostrar
como controlar quebras de pgina grupo com sede.
criao de relatrios
201
202 CLARION 5 CLARION
Aprendiendo
relatrio de arquivos
1. Pressione o boto Arquivos na caixa de dilogo Procedure Propriedades.
caixa de dilogo arquivo aparece Definio esquemtica.
2. Realce a pasta "todo" e pressione o boto Inserir.
3. Os clientes selecionam a caixa de dilogo Inserir arquivo caixa de arquivo e pressione o boto
Select.
4. Pressione o boto Edit.
5. Destaque CLI: caixa de dilogo KeyNumCliente Mudana na tecla de acesso, e pressione o
boto Select.
Este relatrio ir processar todos os registros do arquivo Clientes ordenados por cusno.
6. Clientes Realce o arquivo e pressione o boto Inserir.
7. Selecione Pedidos de arquivo Box Inserir arquivo de dilogo e pressione o boto Select.
Isto ir processar todos os pedidos para cada cliente.
8. Ordens de destacar o arquivo e pressione o boto Inserir.
9. Marque a caixa de dilogo Inserir arquivo detalhe arquivo e pressione o boto Select.
Cada ordem impresso com todas as linhas de detalhe que lhes correspondem.
10. Detalhe Realce o arquivo e pressione o boto Inserir.
11. Marque a caixa de dilogo Inserir arquivo arquivo do produto, e pressione o boto Select.
Cada registro de detalhe vai pesquisar os produtos de registro de arquivo vinculados. Neste
ponto, a rvore de arquivos ser parecido com este:
12. Pressione o boto OK para retornar caixa de dilogo Procedure Propriedades.
EuCONTEDO 203
Se voc no escolher uma fonte para o relatrio, ele impresso usando a fonte padro da
impressora. Voc deve escolher uma fonte que voc sabe que o usurio tenha instalado (fontes
seguras normalmente ser considerado que vm com o Windows).
5. Pressione OK para fechar a caixa de dilogo Selecionar fonte.
6. Pressione OK para fechar a caixa de dilogo Propriedades do relatrio.
A "pgina de base" BAND (pgina Form) impresso uma vez para cada pgina do relatrio; mas o
seu contedo feita apenas uma vez, quando voc abre o relatrio. Isto o torna til para a
informao constante, que estar presente em cada pgina.
203
204 CLARION 5 CLARION
Aprendiendo
6. Escolha uma fonte, estilo e tamanho do texto (aqui seria apropriado uma fonte grande, negrito).
9. Redimensionar o controle para que ele possa conter texto, arrastando as alas.
2. Clique na parte superior do formulrio de banda pgina, logo abaixo da ltima cadeia que
colocou.
5. Pressione o boto Font e escolha uma fonte, estilo e tamanho adequado (apenas ligeiramente
menor do que o campo anterior seria timo aqui).
8. Redimensionar o controle para que ele possa conter texto, arrastando as alas.
EuCONTEDO 205
A faixa de detalhe (detalhe) impresso sempre que um novo arquivo de informaes, leia "Filho"
no nvel mais baixo da rvore de arquivos. Pedidos para este relatrio, o nvel mais baixo o
arquivo "Detail" (lembre-se os produtos um arquivo de "consulta" muitos-para-um a partir do
arquivo detalhe).
1. Multiple escolher preencher os campos, ou clique na ferramenta dicionrio campo nos
controles de caixa de ferramentas.
2. Destaque Detalhe na lista de arquivos e escolha Retail Price: Quantidade na lista Campos e
pressione o boto Select.
3. Clique na faixa de detalhe perto do canto superior esquerdo.
4. Destaque Preo de varejo: partNum na lista Campos e pressione o boto Select.
5. Clique na faixa de detalhe, direita do primeiro controle.
6. Produtos em destaque na lista Arquivos e escolha PROD: Viso geral sobre a lista Campos e
pressione o boto Select.
7. Clique na faixa de detalhe, direita do controle anterior.
8. Destaque Detalhe na lista Arquivos e escolha Preo de varejo: ProdPrecio na lista Campos e
pressione o boto Select.
9. Clique na faixa de detalhe, direita do controle anterior.
205
206 CLARION 5 CLARION
Aprendiendo
10. InformePedidos dados locais esto na lista de arquivos e clique no boto Novo.
Ento voc pode adicionar uma varivel local sem ter que ir janela Propriedades do
Regimento, e pressione o boto de dados. Esta varivel usada para exibir o preo total para
cada linha de pedido.
11. Digite ItemTotal no campo Nome do campo.
12. Select decimais a partir da lista drop-down Tipo de Dados.
13. Digite 7 nos caracteres de campo (caracteres).
14. Tipo 2 no campo de casas decimais (Places) e pressione o boto OK.
15. Clique na faixa de detalhe, direita do controle final colocado.
16. Pressione o boto Cancelar para sair deste modo de operao.
17. Mover todos os controlos para o topo da banda de detalhe, alinhados horizontalmente, e ajustar
o tamanho da banda, a ser mal maior do que os prprios controlos.
Precisamos imprimir informaes diferentes em cada ordem. Portanto, precisamos criar estruturas
quebrar (INTERVALO) para imprimir algo cada vez que voc alterar as informaes no arquivo
de Pedidos e cada vez que mudar os clientes informaes sobre o arquivo.
na banda de detalhes, recuado esquerda, que est dentro do Quebra estrutura: um salto de
banda (Pausa [cusno CLI]) aparece.
EuCONTEDO 207
207
208 CLARION 5 CLARION
Aprendiendo
2. Os clientes esto na lista de arquivos e escolha CLI: Empresa na lista Campos e pressione o
boto Select.
3. CLIC dentro da banda Group Header (PED: ordno) perto do canto superior esquerdo.
4. Destaque CLI: Nomes na lista de campos e pressione o boto Select.
5. Clique dentro da banda Group Header (PED: ordno), abaixo do primeiro controle.
6. Destaque CLI: Sobrenomes na lista Campos e pressione o boto Select.
7. Clique no Grupo Header (PED: ordno), controle de direito j colocado.
8. Destaque CLI: Endereo na lista Campos e pressione o boto Select.
9. Clique no Grupo Header (PED: ordno), abaixo do segundo controle definiu.
10. CLI esto: CP na lista Campos e pressione o boto Select.
11. Clique no Grupo Header (PED: ordno), sob a direo.
12. Destaque CLI: Cidade na lista Campos e pressione o boto Select.
13. CLIC no grupo cabealho (PED: ordno), ao lado do ltimo controle que ele colocou.
14. Destaque CLI: Provncia na lista Campos e pressione o boto Select.
15. CLIC no grupo cabealho (PED: ordno), CLI direita: City.
5. CLIC dentro da banda Group Header (PED: ordno), deixou data de controle.
209
210 CLARION 5 CLARION
Aprendiendo
8. CLIC dentro da banda Group Header (PED: ordno), esquerda sob Cliente.
10. Escolha Controls corda, ou um "pique" na caixa de ferramentas String Controla ferramentas.
11. CLIC dentro da banda do cabealho de grupo (PED: ordno), para a direita de controle final
colocado.
12. Produto campo Tipo na ferramenta Caixa de texto de propriedade e pressione TAB.
13. Escolha Controls corda, ou um "pique" na caixa de ferramentas String Controla ferramentas.
14. Clique dentro da banda Group Header (PED: ordno), direita da ltima cadeia de caracteres
colocado acima do Controle DETAL: Detalhe Taxa em banda.
15. Tipo de campo Preo unitrio na ferramenta Caixa de texto de propriedade e pressione TAB.
16. Escolha Controls corda, ou um "pique" na caixa de ferramentas String Controla ferramentas.
17. CLIC dentro da banda Group Header (PED: ordno), direita da ltima seqncia de caracteres
situados diretamente acima do controle ItemTotal na banda de detalhes.
18. campo Total tipo de item na ferramenta Caixa de texto de propriedade e pressione TAB.
2. CLIC dentro da banda do cabealho de grupo (PED: ordno) com o nmero corrente.
3. Ajustar a linha arrastando as alas at que aparea largura de todos os ttulos das colunas.
211
212 CLARION 5 CLARION
Aprendiendo
213
214 CLARION 5 CLARION
Aprendiendo
19. InformePedidos dados locais esto na lista Arquivos e escolha ItemTotal na lista Campos e
pressione o boto Select.
20. Escolha Soma de lista drop-down Tipo total.
21. Selecione CLI: NumClienteBreak Na lista drop-down Reset.
Este o mesmo tipo de campo totalizador esto localizadas no sop do grupo PED: ordno, mas
apenas ser restaurado quando voc altera o CLI nmero: cusno.
22. Pressione o boto OK.
Field e sair
1. Escolha Populate Vrios campos, ou clique na ferramenta dicionrio campo nos controles
de caixa de ferramentas.
2. Os clientes esto na lista Arquivos e selecione CLI: Empresa na lista Campos e pressione o
boto Select.
3. CLIC dentro da banda Grupo rodap (CLI: cusno), direita do texto Resumo do Pedido para:
que foi colocado.
4. Pressione o boto Cancelar para sair deste modo de operao.
O layout do relatrio est completo.
5. Escolha Exit! para retornar para o procedimento caixa de dilogo Propriedades (certifique-se
de salvar o layout).
215
216 CLARION 5 CLARION
Aprendiendo
Para tornar o campo ItemTotal contm a quantidade certa de cada registro de detalhes do pedido,
voc deve adicionar uma frmula para o procedimento.
Isto ir eliminar todos os clientes que no fizeram pedidos. Internamente, o modelo de relatrio
gera uma estrutura VISTA (vera referncia da linguagem). Esta estrutura faz VIEW "externo
Join" arquivos na rvore de arquivos. "Junte-se External" (associao externa) uma expresso
comum na teoria de bancos de dados relacionais: meiosVIEWEle vai apelo a todos os registros
no Pai arquivo, se eles tm crianas ou registros no vinculados. Se voc encontrar um registro
pai sem Filho, os campos de estas ltimas so consideradas em branco ou "zero", embora no
so vlidos nos dados de arquivo Pai. Portanto, esta a condio que ir verificar.
expresso PED: ordno <> 0 verifica se o campo de mesmo nome tem um valor diferente de
zero. Uma vez que este o campo de chave do arquivo para que cria o link para o registro de
cliente relacionado deve conter um valor, se houver pedidos para o cliente atual. Se PED:
ordno zero, o registro atual ignorada Cliente ( "vazou"). Isso elimina a impresso de Pai
registros ligados sem filhos (neste caso, os clientes sem ordens).
Nota: Se voc tem dificuldade em colocar os sinais <e> (ALT + ALT + 60 e 62),
voc pode usar a expresso equivalente "NO =". Leria: PED: NO ordno
= 0.
3. Pressione o boto OK.
217
218 CLARION 5 CLARION
Aprendiendo
criao de relatrios
1. Destaque relatrio InformePedidos.
2. Copie o procedimento: Procedimento Escolha Copiar ...
caixa de dilogo caixa Novo Procedimento aparece.
3. Tipo InformePedidosCliente e pressione o boto OK.
O procedimento copiada aparece na rvore da aplicao, substituindo o procedimento de
"fazer" ( "todo") que estava no local.
Modificao do novo relatrio
1. Destaque procedimento InformePedidosCliente.
2. Boto direito do mouse e escolha Propriedades no menu de contexto.
3. Incorpora pressione o boto.
4. Toda a imprensa Contrato o boto.
Isto tornar mais fcil para localizar o ponto desejado incorporado.
5. Objetos locais Localize a pasta, e clique no sinal + para expandir seu contedo.
modelos ABC gerado cdigo orientado a objeto. Cada instncia do processo um conjunto de
objectos que so derivados a partir deBiblioteca ABC. Objetos de pastas locais (objetos locais)
exibe todos os objetos e mtodos que podem ser substitudos no processo, simplesmente
absorvendo prprio cdigo para aumentar a funcionalidade Biblioteca ABC, Para mais
informaes sobre esta tcnica poderosa, consulte os artigos e fcil em OOP Programao
Orientada a Objetos no Guia manual do Programer.
6. ThisWindow localize a pasta, clique para expandi-lo.
7. Coloque o Init PROCEDIMENTO (), BYTE, pasta virtual e clique para expandi-lo.
8. CDIGO localize a pasta e clique para expandi-lo.
9. Ilumine os arquivos abertos e pressione o boto Inserir.
Este ponto incorporado est no incio do procedimento, antes que o relatrio comeou a
processar a informao. importante que os arquivos para o relatrio j esto abertos, porque
chamar um outro procedimento para que o usurio selecione um registro de cliente. Se o
relatrio no arquivos j aberto, o procedimento para abrir o arquivo chamados clientes para
seu prprio uso, e depois desligar, que perderia as informaes que precisamos para o relatrio.
Isto tem a ver com multithreading einterfaceDocumento mltipla (MDI); Para mais
informaes, consulte segmento em referncia da linguagem.
10. Destaque Fonte ( "Fonte") e pressione o boto Select para ligar para o editor de texto.
11. Digite o seguinte cdigo:
EuCONTEDO 219
Note-se que duas entradas aparecem agora sob o ponto insero. Em cada ponto, voc pode
colocar como muitos itens como voc deseja, misturando modelos de cdigo (cdigo de
templates) com as suas prprias chamadas para o cdigo-fonte (Source) ou procedimentos
(procedimento). Voc tambm pode mover itens individuais em torno do ponto de insero,
alterao da ordem lgica de execuo (que o primeiro na primeira corrida). Note-se que
mudana vai alterar a prioridade opo (Prioridade) atribuda ao item movido se voc tentar
mover um item maior prioridade sobre um com uma prioridade mais baixa.
16. Pressione o boto Fechar para retornar caixa de dilogo Procedure Propriedades.
Configurao de gama
1. Pressione o boto Propriedades do Relatrio.
a caixa de dilogo Propriedades do Relatrio aparece. Esta caixa permite que voc defina
registros filtros ou limites de faixa (alm dos campos quentes e filtra detalhe): verdo Usurio'S
Guia.
registros de filtros (filtros registro) e ou do alcance da pesquisa (limites da faixa) so muito
semelhantes. Um filtro de registro uma expresso condicional para eliminar registros
indesejados no relatrio, enquanto um limite de alcance limitado impressa registros para
apenas aqueles que correspondam na sua chave. Ambos podem ser usados para criar relatrios
em um subconjunto dos arquivos. A diferena que o limite de alcance opera em uma chave,
219
220 CLARION 5 CLARION
Aprendiendo
enquanto os filtros, no. Assim, os ltimos so muito flexvel; Alcance e limites muito rpido.
Eles podem ser utilizados simultaneamente por seleco de um limite de intervalo e, em
seguida, filtrando registos desnecessrios dentro desse limite.
2. Selecione os limites de Alcance guia.
3. Pressionar os pontos de reticncias (...) Limite faixa de campo.
4. Destaque CLI: cusno, e pressione o boto Select.
5. Deixe a Faixa Limite Type (tipo de faixa de limite) como "valor presente" (valor atual), e
pressione o boto OK.
Isso indica que qualquer valor (valor atual) presente no campo no incio do relatrio atingir o
seu limite. Desde o usurio escolher um registro de cliente no procedimento VerClientes, o
valor correto ser no campo CLI: cusno para comear.
Exit Saving
1. Pressione o boto OK na caixa de dilogo para fechar Propriedades do Procedimento.
2. Escolha Salvar arquivo, ou pressione o boto Salvar na barra de ferramentas para salvar seu
trabalho.
criao de relatrios
Ns selecionamos os mesmos arquivos, mas agora o arquivo principal ordens, e vai consultar
o registo de cliente ligado. Isto importante porque ns limitar este relatrio a uma nica
ordem e que seria muito mais difcil de fazer se o arquivo principal ser clientes.
13. Pressione o boto OK.
221
222 CLARION 5 CLARION
Aprendiendo
linhas de conexo
1. Destaque procedimento VerPedidos.
2. Right Click e escolha Janela no menu de contexto.
3. Escolha Preencher Control Template ou Control-clique sobre a ferramenta de modelo na
caixa de ferramentas de controle (inferior esquerdo).
4. Ilumine BrowsePrintButton e pressione o boto Selecionar.
5. Ilumine BrowsePedidos e pressione o boto Selecionar.
6. Boto direito do mouse no boto Excluir para localizar o novo controle de boto.
7. Right Click no boto Novo e escolha Propriedades no menu de contexto.
8. Digite Print & Order no campo campo.
9. Escrever? ImprimePedido no campo Uso.
10. Selecione a guia Aes.
11. Select InformeUnPedido Boto Imprimir a partir da lista drop-down.
Modelo Este controle projetado especificamente para chamar um escopo do relatrio
iluminado limitado ao registro na caixa de lista selecionada (Procurar em ordens). As Ordens
buffer de registro de arquivo contm o valor correto para operar o mbito limitado o valor atual
no relatrio relativo a uma ordem. Alm disso, a ao automaticamente adicionado ao menu
de contexto Browse.
12. Pressione o boto OK. O design da tela deve ser algo como isto:
223
224 CLARION 5 CLARION
Aprendiendo
Que segue?
8. Pressione o controle VCR "fim do documento" (o tringulo apontando para a direita com uma
linha vertical no final), e pressione algumas vezes o boto de controle "pgina anterior" (ele se
parece com um tringulo apontando esquerda).
Ele agora est olhando para a posio de ndice do UsurioGuia `S.
9. Selecione o "zoom in" (uma lupa com sinal de mais) e clique em qualquer lugar da pgina (se o
cursor muda para um "apontar o dedo", em seguida, ir diretamente para o item aponta para, em
vez de fazer uma ferramenta de abordagem ).
Voc pode "zoom in" a qualquer texto que voc escolher usar esta ferramenta. Observe o
nmero da pgina de qualquer item que voc deseja.
10. CTRL + CLICK para retornar exibio anterior.
11. Pressione CTRL + 5 para ir para a caixa Ir caixa de dilogo pgina Para, digite o nmero da
pgina que voc escreveu para baixo, e pressione o boto OK.
Agora voc pode ver como fcil ir a qualquer lugar que voc deseja.
12. Feche o arquivo e sair do Acrobat Reader.
Onde aprender mais?
Onde devo ir daqui para aprender mais? Os melhores lugares (alm de criar um aplicativo em si)
so:
O Manual de Aplicao explica o Clarion ABC ABC Modelos de biblioteca; todas as
ferramentas oferecidas pelo Gerador de Aplicao.
O Workshop Clarion em Idioma no prximo captulo o melhor lugar para comear a aprender
a lngua.
Os utilizadores registados a Argentina e outros pases de lngua espanhola tm acesso ao
suporte tcnico atravs da Internet em http://www.unisoft.com.ar endereo (ou tambm
www.clarion.com.ar mail :. soporte@unisoft.com.ar ) por servios de grupos de discusso e
FTP. Uma equipe de tcnicos locais experientes (CST: Suporte Clarion Equipe Argentina) ir
responder s suas perguntas. Eles tambm podem ser dirigidas para o fax: (+541) 374-9469.
TopSpeed oferece seminrios educacionais em vrios locais. Chamada de Atendimento ao
Cliente (800)354-5444 ou (954)785-4555 nmeros para informaes.
CompuServe tipo GO Topspeed para entrar no frum de suporte tcnico TopSpeed, ou - na
Internet, para o grupo de notcias comp.lang.clarion por qualquer servidor Usenet (Altamente
recomendado!).
Boa sorte, e continuar a trabalhar: o poder da programao que coloca em suas mos Clarion
cresce medida que voc aprender mais sobre ele!
225
226 CLARION 5 CLARION
Aprendiendo
Neste ponto, voc deve ter concludo todos os cursos sobre o Gerador de Aplicativos em captulos
anteriores. O objetivo deste curso apresentar os fundamentos da linguagem Clarion,
particularmente na sua orientao para a programao de negcios usando o paradigma de
gerenciamento do Windows prprios eventos. Palavras-chave linguagem (idioma palavras-chave)
so mostrados em maisculas, e este workshop se concentra no uso de cada palavra-chave e sua
interao com outros elementos da linguagem nica no contexto especfico em que ele est sendo
usado. Deve ser sempre consultadoa referncia da linguagem Para uma explicao mais completa
de cada palavra-chave e capacidades individuais.
Ao concluir este curso de curta durao, voc vai estar familiarizado com:
A estrutura bsica de um programa Clarion.
A estrutura mais comum para o cdigo de manipulao de eventos.
Como compilar e programas de link manuscrita.
Windows programas so geridos pelos acontecimentos. O usurio faz com que um evento clicando
com o mouse sobre a tela de controle ou pressionando uma tecla. Cada ao do usurio faz com
que o Windows para enviar um programa de mensagem (ou evento) para a janela proprietrio,
indicando que o usurio fez.
Assim que o Windows tenha enviado a mensagem indicando um evento, o programa tem a
oportunidade de lidar com isso de forma adequada. Isto significa que o paradigma de programao
do Windows exatamente o oposto do que acontece em DOS. No sistema operacional Windows,
ele diz ao programa que o usurio tenha feito, em vez do programa informa ao sistema operacional
o que fazer.
Este o conceito mais importante na programao do Windows: o usurio est sempre no controle
(ou deveria ser). Portanto, esses programas so reativa ao invs de pr-ativa; sempre lidar com o
que o operador tem, em vez de dizer-lhe o que fazer a seguir. O exemplo mais comum disso a
EuCONTEDO 227
entrada de dados caixa de dilogo. Na maioria dos programas DOS, o usurio deve seguir um
caminho de um campo para inserir dados. Voc sempre deve inserir dados em um campo antes de
prosseguir para a prxima. Isso faz com que a validao de dados simples: basta executar
somente o usurio deixar o campo.
Em programas do Windows, o operador pode usar o mouse ou um atalho de teclado para comear
a partir de um controle para outro, a qualquer momento, em nenhuma ordem particular, e omitindo
percorrer os controles que voc v o ajuste. Portanto, voc deve executar duas vezes a receita de
dados de validao, para ter certeza de que ele executado pelo menos uma vez: quando o usurio
acabou de entrar controle de dados, e novamente quando voc pressiona OK para sair caixa de
dilogo. Se no, ento executado, dados importantes podem ser omitidos. Isso faz com que os
programas do Windows so reativas ao invs de pr-ativa.
Ol do Windows
Tradicionalmente, todos os cursos em uma linguagem de programao que comea com a criao
de um programa tipo: "Ol, mundo", e este tambm.
Ponto de partida:
O ambiente Clarion deve ser aberto, e aplicao
TUTORIAL.APP fechado.
1. Por instrumento adequado para o seu sistema operacional (Gerenciador de Arquivos, Explorer,
etc.), criar um novo diretrio sob o subdiretrio chamado Clarion5 Language. (No Windows
95, voc pode pressionar KEY-OF-JANELA + E para acessar o Explorer).
2. Voltar para Clarion
3. Escolha Arquivo novo fonte.
nova caixa de dilogo aparece. Este um padro do Windows caixa de dilogo Abrir arquivo,
que permite que voc altere o diretrio e digite o nome do arquivo.
227
228 CLARION 5 CLARION
Aprendiendo
229
230 CLARION 5 CLARION
Aprendiendo
porque o simples fato de abrir um arquivo de origem no editor de texto no muda o projeto
atual para o compilador.
Escreva o programa
1. Digite o seguinte cdigo:
PROGRAMA
MAP
END
MyWin JANELA ( "Ol do Windows), SYSTEM
END
CDIGO
ABERTO (MyWin)
ACEITAR
END
Este cdigo comea com o PROGRAMA sentena. Esta deve ser a primeira instruo (excepto um
comentrio) durante todo programa Clarion. Note-se que a palavra-chave PROGRAMA recuado
em relao ao MyWin. Clarion, as nicas frases que comeam em um (1) coluna so cdigo-fonte
declaraes rtulo. Por definio, um rtulo deve comear em um (1) coluna. A declarao
programa comea com a seo de declarao de dados global (Global).
Temos agora uma estrutura de MAP vazio. A declarao final uma concluso necessria da
estrutura de dados MAP. Este tipo de estrutura contm os prottipos que definem tipos de
parmetros de dados, tipos de dados de resposta, e outras opes que dizem ao compilador como
lidar com chamadas de procedimento (tente isso mais tarde). uma estrutura de MAP necessria
quando o cigo de programa em mtodos (procedimentos) dividido. Ns no fizemos ainda, mas
precisamos tambm da seco que haja uma instruo OPEN no cdigo executvel.
MyWin o rtulo da Janela de estrutura de dados (o "H" deve ser coluna 1). Clarion, as janelas
so declarados como estruturas de dados, e no so construdos dinamicamente, por acrdos de
cdigo executvel, como em outros idiomas. Este um dos aspectos que tornam a linguagem de
quarta gerao Clarion. Embora Clarion pode construir caixas de dilogo dinamicamente em
tempo de execuo, isso desnecessrio. Usando uma estrutura de dados, o compilador cria o
apelo do Windows para cada dilogo, permitindo um melhor desempenho durante a execuo.
O parmetro ( 'Ol do Windows) na janela governando define o texto da barra de ttulo da janela.
declarao sistema adiciona a janela do menu de sistema padro. A declarao END exigido
dados da estrutura janela de concluso. Cristalino, todas as estruturas complexas (ambos os dados
de cdigo como executveis) deve terminar com uma extremidade ou um ponto (.). Isto significa
que o seguinte cdigo funcionalmente equivalente ao anterior:
PROGRAMA
EuCONTEDO 231
MAP
END
MyWin JANELA ( "Ol do Windows), SYSTEM
END
CDIGO
ABERTO (MyWin)
ACEITAR.
Embora eles so funcionalmente equivalentes, este cdigo se torna muito mais difcil de ler, uma
vez que acrescenta algo ao estruturas MAP, janela, ou aceitar. Convencionalmente, usamos END
para concluir as frases complexas que abrangem vrias linhas, colocando a extremidade na mesma
coluna que a palavra-chave que est dando acabamento, e tudo o mais sangramento dentro da
estrutura. Ns usamos apenas ponto para completar um estruturas de linha, tais como instrues IF
com uma nica clusula ENTO. Esta conveno torna o cdigo mais fcil de ler, e tambm que
os "terminadores" falta muito mais fcil de localizar.
A declarao cdigo necessrio para identificar o incio da seo de cdigo executvel. Dados
(variveis de memria, arquivos de dados, estruturas de janelas, relatrios, etc.) so declaradas em
uma seo de dados (antes do cdigo de frase), e instrues executveis s pode vir aps o cdigo
dominante.
Uma vez que este programa no contm qualquer procedimento (todos discutidos abaixo), mas
tem uma seo Global Data seguido por trs linhas de cdigo executvel. Variveis declaradas
nesta seo so visveis e disponveis para uso em qualquer lugar do programa.
A instruo OPEN (MyWin) abre a janela, mas no a amostra. A janela s aparecer na tela
quando um display ou aceitar instruo executada. Este recurso permite alterar dinamicamente as
propriedades da janela, ou qualquer controle sobre ele, antes de aparecer na tela.
ACEITAR o processador de eventos. A maioria das mensagens (eventos) do Windows so
gerenciados internamente pelo ACEITAR. Estes so os eventos comuns manipulados pela
biblioteca de tempo de execuo (redesenhar a tela, etc.). Apenas os eventos que exigem programa
de aco so passados por aceitar o Cdigo Clarion. Isto simplifica a programao, permitindo que
o programador se concentrar apenas em questes de alto nvel.
A declarao ACCEPT tem um comando END como terminao, o que significa que um cdigo
de estrutura complexa. ACCEPT uma estrutura de reentrada ou loop (circular), que "passar por"
todos os eventos que o desenvolvedor pode querer gerenciar (nenhum neste caso, mas ento
veremos alguns), e depois de volta para lidar com o prximo evento .
um loop de aceitar para cada janela aberta em um programa Clarion necessrio. Uma janela
aberta "paus" para o prximo ciclo aceitar que no cdigo, e toma como seus eventos processador.
Para este programa, aceite tratado internamente tudo o que faz o menu do sistema (localizado no
atributo sistema Windows). Portanto, quando o usurio utiliza o menu do sistema para fechar a
janela, aceita automaticamente passa o controle para qualquer frase que se segue END
terminator. Desde que no h nenhum outro Clarion sentena para ser executado, o programa
termina. Quando qualquer programa Clarion atinge o final do cdigo executvel, ele executa um
retorno implcito que, por sua vez, retorna o usurio para o sistema operacional.
2. Clique no boto Executar (Run).
O programa compila e executa linkea. O ttulo da janela exibe a mensagem "Ol Windows" e deve
fechar a janela com o sistema de menu.
231
232 CLARION 5 CLARION
Aprendiendo
controles Ol do Windows
Este programa o mais pequeno que pode ser criado em Clarion. Agora vamos expandir um pouco
para mostrar como alguns controles so adicionados janela e como os eventos so tratados
gerada por esses controles.
Mudando a fonte
1. Modificar o cdigo para ler:
PROGRAMA
MAP
END
MyWin JANELA ( "Ol do Windows), AT (,, 100,100), SYSTEM ! mudado
String ( "Ol do Windows), AT (26.23), USE (? String1)
adicionado
BUTTON ( 'OK'), AT (34.60), USE (? Ok), PADRO adicionado
END
CDIGO
ABERTO (MyWin)
ACEITAR
Se for aceite () = Ok seguida, quebrar. adicionado
END
A mudana a adio de corda e boto controla a estrutura JANELA. "STRING" texto constante
colocado na janela, e Button adiciona um boto de comando.
A nica outra adio a instruo Se for aceite () = Ok seguida, quebrar. Esta declarao detecta
quando o usurio pressionou o boto OK e quebra (break) ACEITAR loop, terminando o
programa. O procedimento aceite devolve o nmero de campo de controlo para o qual o evento
recentemente expandido: aceites. (EVENTO: aceito uma equivalncia ou igualar, contido no
arquivo \ CLARION5 \ LIBSRC \ EQUATES.CLW, o compilador automaticamente includo em
todos os programas).
? Ok equivalncia (Rtulo de Campo Equate) do controle Button, definido pelo controle atributo
USE (ver rtulos de campo em Equate a referncia da linguagem). O compilador combina
automaticamente? Ok, o nmero atribudo ao campo de controle (usando o cdigo equivalncias
mais fcil de ler).
Quando o procedimento aceite retorna um valor igual ao nmero do campo atribudo pelo
compilador para o boto OK, a instruo break executada e o lao termina ACEITAR.
EuCONTEDO 233
233
234 CLARION 5 CLARION
Aprendiendo
Novamente, voc pode fechar a janela tanto com o menu do sistema, ou o boto OK, como
acontece com o cdigo anterior, mas agora o cdigo estruturado de acordo com o estilo comum.
O novo evento estrutura CASE () lida com dois eventos de campo independentes: EVENTO:
openWindow e Evento: GainFocus. O procedimento utilizado neste cdigo mensagem apenas
para mostrar visualmente, durante a execuo do evento foi disparado. Mensagem em vez do
procedimento, pode ser adicionado aqui qualquer outro cdigo que o programa precisa ser
executado quando esses eventos so acionados usurio.
Isto mostra o fluxo lgico e a estrutura de cdigo para os procedimentos de janela: um circuito de
ACEITAR contendo um evento estrutura PROCESSO () que lida com todos os campos de eventos
independentes, seguido por um campo de estrutura PROCESSO () com estruturas aninhadas
PROCESSO DE EVENTOS ( ) para lidar com eventos especficos todos os campos.
2. Clique no boto Executar.
Note-se que os eventos so gerados EVENTO: GainFocus e EVENTO: OpenWindow quando a
janela aberta pela primeira vez (nessa ordem). EVENTO: GainFocus (entrar em foco) ser
atualizada quando o usurio clica ALT + TAB para outro aplicativo e depois volta novamente Ol
do Windows! utilizando a mesma combinao de teclas.
Adicionando um PROCEDIMENTO
Mudando a fonte
1. Modificar o cdigo fonte desta forma:
PROGRAMA
MAP
Ol PROCEDIMENTO
adicionado
END
CDIGO
adicionado
Ol adicionado
Ol PROCEDIMENTO adicionado
MyWin JANELA ( "Ol do Windows), AT (,, 100,100), SYSTEM
String ( "Ol do Windows), AT (26.23), USE (? String1)
BUTTON ( 'OK'), AT (34.60), USE (? Ok), PADRO
END
CDIGO
235
236 CLARION 5 CLARION
Aprendiendo
ABERTO (MyWin)
adicionado
ACEITAR
CASO CASE ()
DE EVENTO: OpenWindow
MENSAGEM ( 'Janela Aberta')
DE EVENTO: GainFocus
MENSAGEM ( 'Foco Ganhou')
END
CAMPO DO CASO ()
DE? Ok
CASO CASE ()
DE EVENTO: Aceite
INTERVALO
END
END
END
As nicas mudanas so aqui no incio do programa. Dentro da estrutura do MAP vemos agora o
julgamento Ol fazendo procedimento prottipo PROCEDIMENTO Ol. Um prottipo a
declarao do procedimento para o compilador para dizer o que esperar quando o cdigo chama o
procedimento. Este prottipo indica que o procedimento no tem parmetros e no retorna um
valor. Todos os procedimentos de seu programa deve ter seu prottipo em uma estrutura de MAP.
Ver procedimento Prottipos ema referncia da linguagem conhecer os outros prottipos.
O cdigo palavra-chave imediatamente aps a estrutura MAP termina seo Global Data (Dados
Global) e marca o incio da seo global de cdigo executvel, que contm apenas frase Oi, que
uma chamada para executar o procedimento Ol. Um procedimento que no retorna um valor
sempre chamado com uma nica frase com seu nome no cdigo executvel.
O segundo perodo termina seo de cdigo executvel Ol global PROCEDIMENTO e marca o
incio da definio do cdigo do procedimento Ol.
Uma declarao procedimento contm uma seo de dados da mesma maneira que voc faz um
programa (PROGRAM) e tambm requer a palavra-chave cdigo para definir a fronteira entre
declaraes de dados e cdigo executvel. por isso que o resto do cdigo no alterado no
exemplo anterior. Esta a declarao de dados locais (declarao de dados local) para o
procedimento.
A maior diferena entre as declaraes de dados global e local est dentro do escopo dos dados
comunicados. Qualquer dado indicado na seo local visvel apenas para o procedimento que
declara, enquanto qualquer declarada nos dados seo global visvel em todo o programa. Veja
declaraes de dados e alocao de memria noa referncia da linguagem Para um tratamento
mais completo de diferenas.
Adicionando um Procedimento
MAP
Ol PROCEDIMENTO
EventString PROCEDIMENTO (PassedEvent LONG), corda! agregado
END
237
238 CLARION 5 CLARION
Aprendiendo
O rtulo EventString (lembrar que ser um rtulo, deve ser a coluna 1) do procedimento de
julgamento d este procedimento enquanto a lista de parmetros anexado ao procedimento
palavra-chave nomes de parmetro tempo o PassedEvent nomeado.
um nmero igual de nomes parmetro listados na declarao PROCEDIMENTO como existem
tipos de dados listados no prottipo para esse procedimento deve sempre existir.
ReturnString uma varivel local declarado como um campo alfanumrico (STRING) 255
caracteres na pilha. declarao CDIGO encerra a seo de dados locais (dados locais) do
procedimento. A estrutura deve ser conhecido PROCESSO PassedEvent, uma vez que o mesmo
que um evento de estrutura PROCESSO (), mas condio PROCESSO PassedEvent , em vez do
procedimento de evento (). PROCESSO Esta estrutura simplesmente atribui o que corresponde a
ReturnString varivel para cada passada para o valor procedimento de evento.
O cdigo interessante aqui a declarao RETURN (ReturnString). Um procedimento sem valor
de retorno no requer um retorno especfico, como sempre executa um retorno implcito quando
no h mais cdigo para ser executado. No entanto, um prottipo indicado PROCEDIMENTO
para retornar um valor sempre contm uma instruo de retorno explcito que especifica o valor
para retornar. Neste caso, a declarao RETURN retorna qualquer valor que foi atribudo ao
ReturnString na estrutura PROCESSO.
CASO CASE ()
DE EVENTO: OpenWindow
MENSAGEM (EventString (EVENTO: OpenWindow))! mudado
DE EVENTO: GainFocus
MENSAGEM (EventString (EVENTO: GainFocus))! mudado
END
Isso muda procedimentos mensagem para exibir o valor de retorno do procedimento EventString.
O nmero do evento passado EventString como o evento equivalente (EQUATE Event) para
torn-lo mais compreensvel para leitura.
4. Clique no boto Executar.
O programa ainda funciona exatamente como antes.
PROGRAMA
MAP
principal PROCEDIMENTO ! agregado
Ol PROCEDIMENTO
EventString PROCEDIMENTO (PassedEvent LONGO), STRING
END
CDIGO
principal ! mudado
Isso adiciona o prottipo do procedimento MAP estrutura principal e substitui a chamada para Ol
com um procedimento chamar principal.
2. Adicionar definio do procedimento ao final do arquivo:
principal PROCEDIMENTO
AppFrame APLICAO ( "Ol do Windows), AT (,, 280,200), SYSTEM,
redimensionar, MAX
MENUBAR
MENU ( '& File'), USE (? Arquivo)
ITEM ( '& Procurar Phone'), USE (? FileBrowseTelefono)
ITEM, separador
ITEM ( '& Sair'), USE (FileExit?), STD (STD: close)
END
ITEM ( '& About!'), USE (? Sobre)
END
END
CDIGO
ABERTO (AppFrame)
ACEITAR
CASE aceite ()
DE? Sobre
Ol
END
END
O mtodo principal no aceita parmetros. APLICAO AppFrame contm a estrutura. A
estrutura da aplicao a chave para a criao de programas com interface de documentos
mltiplos (MDI). Uma aplicao MDI pode conter vrios segmentos. Este o quadro "pai" MDI
necessrio para criar uma aplicao MDI.
estrutura de menu define os itens de menu disponveis para o usurio. MENU ( '& File') estrutura
cria o menu Arquivo padro em quase todos os programas do Windows. O comercial (&) precede
o "F" especifica que este o "atalho de teclado" e realar o sistema operativo durante a execuo.
ITEM ( '& BrowseTelefono') opo cria um item de menu que usamos para chamar um
procedimento (como veremos). sentena ITEM, separador cria uma linha divisria no menu e
selecionando Navegar Phone.
O item ( '& Sair') cria um item de menu para sair do procedimento (e do programa, uma vez que
este procedimento a nica conhecida do cdigo executvel Global). A DST (DST: Close)
atributo especifica a aco normal de fecho de uma janela para sair do ciclo ACCEPT. Este
esporque qualquer cdigo executvel associado a este item de menu no circuito ACCEPT no v: a
biblioteca Clarion tempo de execuo carregada automaticamente.
239
240 CLARION 5 CLARION
Aprendiendo
ITEM ( '& About') instruo cria um item de menu na barra de ao, direita do menu Arquivo. O
ponto de exclamao (!) uma conveno para indicar aos usurios que este item executa uma
ao, e no exibe um menu, mesmo que seja na barra de ao.
O loop ACCEPT contm apenas uma estrutura PROCESSO aceite (). O procedimento aceite
(aceito) retorna o nmero de controle de foco campo, quando um evento gerado: Aceito.
Podemos usar o procedimento aceito aqui, em vez de procedimentos de evento de campo e itens de
menu porque eles s gerar EVENTO: Aceite. O DE? Sobre clusula simplesmente chama o
procedimento Ol.
3. Clique no boto Executar.
O programa executado e apenas o item Sobre! Arquivo Sair e fazer algo. Note, porm, que faz
Arquivo Sair para terminar o programa, apesar de no ter escrito cdigo para executar essa ao.
ordem
Ter um menu bom, mas agora devemos fazer alguma programao negcio real. Agora adicione
um arquivo e procedimentos para mant-lo de dados.
Alterar o Cdigo Mundial
1. Modificar o incio do arquivo para ler:
PROGRAMA
Include ( 'KeyCodes.CLW') ! agregado
Include ( 'Errors.CLW') ! agregado
MAP
principal PROCEDIMENTO
BrowseTelefono PROCEDIMENTO ! agregado
UpdateTelefono PROCEDIMENTO (Ao LONG), LONG ! agregado
Ol PROCEDIMENTO
EventString PROCEDIMENTO (PassedEvent LONGO), STRING
END
CDIGO
principal
Os dois novo padro incluem declaraes equivale adicionados aos cdigos-chave e nmeros de
erro. Usando equivalncias (iguala) em vez de nmeros torna o cdigo mais compreensvel e,
portanto, mais fcil de manter.
declarao Telefone arquivo cria um arquivo de dados simples usando o controlador TopSpeed.
Existem dois campos de dados: nome e nmero, tanto declarados como alfanumrico: String (20).
O campo de nmero declarao deste modo permite que voc contm nmeros de telefone em
qualquer lugar do mundo (mais sobre isso em breve)
Igualam cinco declaraes definir valores constantes que tornam o cdigo mais legvel.
InsertRecord, ChangeRecord e DeleteRecord definir aces a serem transmitidos como parmetros
para o procedimento UpdateTelefono. O ActionComplete e equivalncias ActionAborted definir
dois possveis valores devolvidos pelo procedimento UpdateTelefono.
2. Modificar o CASE cdigo aceite () procedimento principal assim:
CASE aceite ()
DE? FileBrowseTelefono ! agregado
START (BrowseTelefono, 25000) ! agregado
DE? Sobre
Ol
END
A declarao START (BrowseTelefono, 25000) executado quando o usurio escolhe o menu de
seleo Navegar Phone. O mtodo INICIAR cria um novo segmento de execuo do procedimento
BrowseTelefono e o segundo parmetro (25.000) especifica o tamanho (em bytes) da pilha de
novo segmento de execuo. procedimento de partida pode ser usado quando voc est chamando
um procedimento que contm uma janela filho MDI a partir do quadroo APLICAOComo cada
janela filho MDI deve estar em um segmento separado da execuo. Se voc no abrir (START) o
filho MDI, durante a execuo do erro "No possvel abrir a janela MDI em fio de aplicao"
aparece quando voc tenta chamar o procedimento BrowseTelefono eo programa ser encerrada
imediatamente.
241
242 CLARION 5 CLARION
Aprendiendo
Depois de ter iniciado uma nova thread de execuo, uma criana MDI pode simplesmente chamar
outro filho MDI no mesmo segmento sem iniciar um novo. Isto significa que, embora
BrowseTelefono e UpdateTelefono ambos contm janelas MDI, nica BrowseTelefono deve
iniciar (START) um novo segmento, como chamada a partir da janela do aplicativo.
Adicionar o procedimento BrowseTelefono
BrowseTelefono PROCEDIMENTO
TelefonoQue FILA
nome CORDA (20)
nmero CORDA (20)
posio CORDA (512)
END
A estrutura da "cauda" TelefonoQue FILA define a estrutura de dados contendo todos os arquivos
de registros de telefone e exibe-os no controle de lista. A "cauda" (FILA) Clarion semelhante a
um arquivo de dados, porque tem um buffer de dados e permite um nmero ilimitado de registros,
mas s existe na memria durante a execuo. Uma fila tambm pode ser comparado a um alocada
dinamicamente a matriz de tempo de execuo. Veja o Captulo memria filas ema referncia da
linguagem Para mais informaes sobre estas estruturas.
A fila TelefonoQue contm trs campos. campos nome e nmero de duplicar os campos na
estrutura do telefone arquivo e exibida nas duas colunas definidas pelo formato do atributo
controle List. O campo Posio ir conter o valor de retorno do procedimento POSIO telefone
cada arquivo de registro. Salvar a posio de cada registro nos permitir mudar imediatamente o
registro do arquivo de dados, antes de chamar UpdateTelefono para alterar ou excluir um registro.
A estrutura de janela de janela da lista contm um controlo e quatro botes (Button). O controle de
lista a chave para este procedimento. O ALRT (MouseLeft2) LISTA aviso de alerta de uma
possvel clicar duas vezes para o julgamento ACEITAR passar um evento: AlertKey o cdigo
Clarion. Isto ir permitir-nos para escrever cdigo para trazer o procedimento UpdateTelefono
para alterar o registro no qual o usurio d CLIQUE DUPLO.
EuCONTEDO 243
A barra vertical (|) no final da lista sentena o caractere de continuao Clarion, o que significa
que o controle de lista continua na prxima linha com o atributo de formato ( '84L | 80L M ~ nome
~ ~ I ~') embora se voc quiser, pode colocar tudo em uma nica linha, sem a barra de
afastamento. O atributo de parmetro FORMATO define a aparncia do controle da lista em tempo
de execuo.
melhor deixar os resultados projetista de ferramentas de design no Windows que seqncias de
formato tipo, como eles rapidamente tornar-se muito complexa. Este formato define duas colunas.
A primeira coluna tem 84 unidades de dilogo de largura (84), justificado esquerda (L), tem
uma borda direita (|) Ajustvel (M) ea palavra "Nome" o seu cabealho (~ nome ~). A segunda
coluna tem 80 unidades de dilogo de largura (80), com a justificao para a esquerda (L), e o seu
ttulo "N" (Nmero ~ ~).
LISTA automaticamente que permite aos usurios navegar pela lista sem codificao adicional.
LISTAfeito porque o atributo IMM (imediato) no est presente. Se existisse, deve escrever
cdigo para lidar com os registros de deslocamento (rolagem), como no modelo Procurar.
Button ( '& Insert) instruo define um boto de comando o usurio vai pressionar para adicionar
um novo registro. O atributo chave (InsertKey) especifica que o boto pressionado
automaticamente para o usurio pressione a tecla Insert. Note-se que os outros trs controles
Button tm atributos semelhantes KEY. Isso significa que voc no precisa escrever qualquer
cdigo especial para lidar com acesso ao teclado, se o usurio prefere o mouse.
CDIGO
DO OpenFile
DO FillQue
ABERTO (janela)
ACEITAR
CASO CASE ()
DE EVENTO: OpenWindow
DO QueRecordsCheck
DE EVENTO: AlertKey
Keycode SE () = MouseLeft2
POST (EVENTO: aceitado, a mudana?)
END
END
END
243
244 CLARION 5 CLARION
Aprendiendo
O princpio da seo de cdigo comea com a frase DO OpenFile. DO executa uma rotina, neste
caso openfile, e quando este cdigo estiver concludo, o controle retorna para a prxima linha de
cdigo aps a instruo do que chamou de rotina.
O cdigo que define uma rotina deve ser no final do processo depois de tudo lgica do ncleo,
porque a rotina julgamento termina a seo de cdigo executvel de um procedimento.
H duas razes para usar uma rotina dentro PROCEDIMENTO: para escrever um monte de
instrues de cdigo a serem executadas em vrios pontos lgicos dentro do procedimento ou para
tornar o cdigo mais compreensvel para substituir com uma frase simples fazem um grupo de
frases eles executam uma obra nica lgica.
Neste caso, o julgamento DO OpenFile serve o segundo propsito, movendo o cdigo que abre ou
cria o arquivo fora do principal lgica do procedimento. Em seguida, a sentena FAZER FillQue
executa o cdigo que preenche a estrutura TelefonoQue fila com todos os registros retirados do
arquivo. Ambos fazem declaraes torn-lo fcil de seguir o fluxo lgico do mtodo.
Ento caso de clusula contm o cdigo de acesso IF AlertKey () = Estrutura MouseLeft2 para
verificar duplo-clique LIST. dado o ALRT (MouseLeft2) atribuem s aparece no controle List,
sabemos que o POST julgamento (EVENTO: aceitado, Mudana) ser executado somente quando
o usurio clicar duas vezes em LIST.
declarao POST diz ACEITAR para "forward" o evento em seu primeiro parmetro (EVENTO:
aceitado) (? Mudar) de controle em seu segundo parmetro. O efeito que o cdigo executado
boto Alterar, como se o usurio tivesse pressionado o boto com o mouse ou teclado.
Isto ilustra uma excelente prtica de programao: escrever cdigo especfico uma vez e cham-lo
de muitos lugares. Este conceito de programao estruturada nos deu os procedimentos e rotinas.
Embora o cdigo EVENTO: Aceito para boto Alterar separado em um procedimento ou rotina,
o uso do POST julgamento ( "enviar") significa que esta a nica seo do cdigo que deve ser
mantida: se voc quer mudar a lgica, simplesmente fazer tudo isso em um s lugar.
CAMPO DO CASO ()
DE? Fechar
CASO CASE ()
DE EVENTO: Aceite
POST (CASO: CloseWindow)
END
EuCONTEDO 245
DE? Insert
CASO CASE ()
DE EVENTO: Aceite
SE UpdateTelefono (InsertRecord) = ActionComplete
DO AssignToQue
ADD (TelefonoQue)
IF ERRORCODE () depois parar (ERROR ()).
SORT (TelefonoQue, TelefonoQue.Nombre)
HABILITAO (? Alterar ,? Apagar)
END
SELECT (? List)
END
DE? Alterar
CASO CASE ()
DE EVENTO: Aceite
DO GetRecord
SE UpdateTelefono (ChangeRecord) = ActionComplete
DO AssignToQue
PUT (TelefonoQue)
IF ERRORCODE () depois parar (ERROR ()).
SORT (TelefonoQue, TelefonoQue.Nombre)
END
SELECT (? List)
END
DE? Excluir
CASO CASE ()
DE EVENTO: Aceite
DO GetRecord
SE UpdateTelefono (DeleteRecord) = ActionComplete
APAGAR (TelefonoQue)
IF ERRORCODE () depois parar (ERROR ()).
DO QueRecordsCheck
SORT (TelefonoQue, TelefonoQue.Nombre)
END
SELECT (? List)
END
END
FREE (TelefonoQue)
CLOSE (Telefone)
Aps o evento estrutura PROCESSO () a CAMPO DO CASO () estrutura est localizado. Note-se
que cada um contm o seu prprio DO EVENTO estrutura clusula PROCESSO (), cada um
contendo apenas uma clusula DO EVENTO: aceites. Devido a isso, que poderia ter substitudo a
estrutura PROCESSO CAMPO () com um caso aceite () e casos aninhados removido. Isso teria
um pouco melhor desempenho; mas muito pouco para perceber isso na tela. Ns no conseguimos
para manter a consistncia; haver muitas ocasies em que voc deve capturar eventos de campo
mais especficos nico evento: Aceito, e quando isso acontece, essa estrutura Case aninhada
lgico usar, por isso bom para acostumar agora. Ele tambm mostra o tipo de estrutura que
geram modelos de cdigo Clarion gerador de aplicaes.
245
246 CLARION 5 CLARION
Aprendiendo
A declarao ATIVAR (? Alterar ,? Apagar) garante que a mudana e apagar botes esto ativos
(se esta foi a primeira entrada em a FILA, Os botes ficam cinza por A rotina QueRecodsCheck).
A instruo SELECT (? List) retorna o usurio para o controle de lista.
O cdigo na Mudana clusula? quase idntico ao cdigo no DOS? Insira clusula. H uma frase
adicional DO GetRecord chamar uma rotina para definir o recorde aceso dentro do arquivo de log
telefone tampo TelefonoQue. A nica outra diferena a PUT sentena (TelefonoQue)
incorporando o usurio muda TelefonoQue.
O cdigo no DOS? Excluir clusula quase idntico ao cdigo no DOS? Alterar clusula. A
diferena o EXCLUIR (TelefonoQue) declarao de que remove o registro de TelefonoQue e
DO QueRecordsCheck chamada para verificar se o usurio tiver eliminado o ltimo registro.
AssignToQue ROTINA
TelefonoQue.Nombre = Telefono.Rec.Nombre
EuCONTEDO 247
TelefonoQue.Numero = Telefono.Rec.Numero
TelefonoQue.Position = POSITION (Telefone)
QueRecordsCheck ROTINA
Se no for Records (TelefonoQue)
DISABLE (? Alterar ,? Apagar)
SELECT (? Insert)
MAIS
SELECIONAR (? Lista 1)
END
GetRecord ROTINA
GET (TelefonoQue, escolha (? List))
IF ERRORCODE () depois parar (ERROR ()).
ReGet (telefone, TelefonoQue, posio)
IF ERRORCODE () depois parar (ERROR ()).
OpenFile ROTINA
ABERTO (telefone, 42h)
errorcode CASE ()
DE NoError oude IsOpenErr
SAIR
DE NoFileErr
CRIE (Telefone)
IF ERRORCODE () depois parar (ERROR ()).
ABERTO (telefone, 42h)
IF ERRORCODE () depois parar (ERROR ()).
MAIS
STOP (ERRO ())
RETURN
END
FillQue ROTINA
SET (telefone, KeyNombre)
LOOP
NEXT (Telefone)
SE errorcode () em seguida, quebrar.
DO AssignToQue
ADD (TelefonoQue)
IF ERRORCODE () depois parar (ERROR ()).
END
Como voc pode ver, h cinco rotinas neste procedimento. Note que, embora essas rotinas so
semelhantes a um procedimento no contm instrues de cdigo. Isso ocorre porque as aes
locais um dado procedimento de rotina e no costuma ter um dos dados da declarao seo
separada (embora possa t-lo: ROTINA ver ema referncia da linguagem Para um tratamento
completo deste tpico).
247
248 CLARION 5 CLARION
Aprendiendo
fazer referncia a seus campos de acordo com os campos de classificao sintaxe Clarion,
juntando-se o nome do arquivo (telefone), o nome do registro (Rec), eo nome campo (Name),
conectando com um ponto (Telefono.Rec.Nombre). Veja campo Qualificao ema referncia da
linguagem para mais informacao.
GetRecord ROTINA rotina sincroniza o arquivo de log buffer telefone eo tampo fila
TelefonoQue dados atualmente iluminado com registro LIST. o declarao GET (TelefonoQue,
escolha (? List) usa o procedimento de escolha para "point" para "record" em destaque na lista e
recuperar (GET) "Register" ligada a tampo TelefonoQue (sempre a verificao de erros
inesperados.) Em seguida, o julgamento ReGet (telefone, TelefonoQue.Position) usa as
informaes armazenadas gravadas no disco para recuperar e enviar a fila de buffer de log.
OpenFile ROTINA rotina o telefone aberto ou criar arquivo. OPEN (telefone, 42h) declarao
tenta abrir o arquivo de telefone para ser compartilhado. O segundo parmetro um nmero
hexadecimal (condio indicada por "h"). Clarion suporta decimal sistema numrico, hexadecimal,
binria e octal. Este nmero representa o acesso totalmente compartilhada arquivo (Leitura /
Gravao, Negar nenhum) (veja a instruo OPEN ema referncia da linguagemPara saber mais
sobre maneiras de acessar os arquivos). Pedimos para acesso compartilhado, porque este um
programa MDI eo usurio poderia chamar vrias cpias do mesmo procedimento no mesmo
programa. No entanto, este programa faz todas as verificaes de acesso simultneo que so
necessrios para uma aplicao multi-utilizador real. Consulte a seo apropriadao
programador'Guia de S Para mais informaes sobre o assunto.
A estrutura CASE errorcode () verifica qualquer erro no aberto. Clusula DE NoError oude
IsOpenErr (agora pode ver porque ns inclumos o arquivo ERRORS.CLW) executa a instruo
Exit para sair imediatamente essa rotina. muito importante no confundir com RETURN SAIR,
uma vez que este termina imediatamente o procedimento enquanto Sada somente termina a rotina.
EuCONTEDO 249
RETURN vlida para usar dentro de uma rotina, mas certifique-se de terminar todo o processo, e
no apenas a rotina em si.
O DE NoFileErr clusula detecta nenhum arquivo de dados para abrir. CREATE (telefone)
declarao ir criar um novo arquivo de dados vazio. Voc deve garantir que, se voc tentar usar a
instruo CREATE que a declarao arquivo tambm contm o atributo CRIAR, ou a instruo
CREATE pode no funcionar. Esta declarao no abrir o arquivo, o que explica a instruo
OPEN (telefone, 42h). O cdigo na clusula ELSE executado se qualquer erro que no os ocorre.
A paragem de declarao (ERROR ()) exibe a mensagem de erro para o processo do usurio em
uma janela modal do sistema, o que lhe d a oportunidade de cancelar o programa (voltando ao
Windows) ou ignorar o erro. A declarao RETURN termina o procedimento, se o usurio escolhe
a ltima opo.
FillQue rotina ROTINA enche o rabo TelefonoQue com todo o arquivo de registros telefnicos. A
instruo SET (Telefono.KeyNombre) prepara o processamento de pedidos e o ponto do arquivo
de telefone de partida. O parmetro Telefono.KeyNombre faz com que o processamento alfabtica
de acordo com o campo Nome. A ausncia de um segundo parmetro no conjunto faz o ponto de
partida o incio (ou final) do arquivo. A estrutura LOOP no tem nenhuma condio, o que
significa que voc deve ter uma instruo break em algum lugar do LOOP, ou possa ter um loop
infinito. A declarao NEXT (Telefone) recupera o prximo registro no telefone arquivo de dados,
em seguida, a declarao ERROCODE IF () em seguida, quebrar assegura-nos para fora
(INTERVALO) de LOOP, quando eles foram lidos todos os registros. FAZER AssignToQue
julgamento chama a rotina de mesmo nome j foi discutido, e ADD (TelefonoQue) adiciona o
novo recorde para a fila.
249
250 CLARION 5 CLARION
Aprendiendo
ReturnValue LONG, AUTOLONGO declara uma varivel que permanece no inicializada pelo
compilador (devido ao atributo AUTO). Por padro, as variveis de memria so inicializados com
espaos em branco ou nulo (dependendo do tipo de dados). AUTO especificar economiza um
pouco de memria, mas com a condio de que o programador est convencido de que atribuir um
valor varivel no inicializada antes de verificar o seu contedo em primeiro lugar, ou muito
difcil de localizar bug intermitente iria ocorrer.
A estrutura janela tem a mscara atributo (mscara), o que significa que os padres de entrada de
dados so verificados como os dados so inseridos, em vez do comportamento padro de entrada
de dados Windows "forma livre".
Os dois controles de prompt de entrada e se combinam para entrada de dados. Os dois controles
Button permitir que o usurio para completar ou cancelar a ao atual.
Os controles de prompt definir rtulos de campos exibidos, e a tecla "acelerador" (ou atalho de
teclado) para navegar at a entrada de controle do PROMPT segue. Atalhos de teclado so
formadas usando ALT mais a letra seguinte e comercial. Por exemplo ( 'N & ombre') indica que
ALT + A ir concentrar para NOTCHcontrol.
atributos usar a entrada controla campos de dados Nome receber automaticamente a entrada do
usurio. A biblioteca de tempo de execuo assegura que o valor atual na varivel chamada no
atributo USO exibido quando o controle tem foco. Quando o usurio insere os dados no controle
de entrada e, em seguida, passar para outro controle, a biblioteca de tempo de execuo assegura
que a varivel chamada no uso atributo receber o valor atual exibido no controle.
O atributo REQ do primeiro controlo ENTRADA significa que o usurio no pode deix-lo em
branco, enquanto o atributo REQ no boto OK verifica se o usurio inseriu dados em todos os
controles de entrada de dados que necessitam dele. Esta verificao feita apenas quando o boto
pressionado com o atributo REQ, porque o usurio no pode sequer passaram pelo controle de
entrada com este atributo.
DO SetupInsert
END
DE? Ok
CASO CASE ()
DE EVENTO: Aceite
EXECUTAR Ao
ADD (Telefone)
PUT (Telefone)
APAGAR (Telefone)
END
IF ERRORCODE () depois parar (ERROR ()).
ReturnValue = ActionComplete
POST (CASO: CloseWindow)
END
DE? Anular
CASO CASE ()
DE EVENTO: Aceite
ReturnValue = ActionAborted
POST (CASO: CloseWindow)
END
END
END
RETURN (ReturnValue)
FAZER julgamentos SetupScreen A rotina SetupScreenpara executar algumas funes de
inicializao da janela. Note que segue a instruo OPEN (janela). Quando alterar
dinamicamente a janela em um procedimento, ele deve ser aberto em primeiro lugar.
? Rec: O DE clusula de nmero de telefone no campo estrutura CASE () mostra duas coisas
importantes. O primeiro o campo de equivalncia (Campo Equate Label) em si. O atributo USE
(Telefono.Rec.Numero) contm pontos no nome do campo, e os pontos no so vlidos para
etiquetas de cdigo de Clarion. Portanto, para construir uma equivalncia para
Telefono.Rec.Numero, o compilador substitui clon item (desde que ambos os pontos so tag
vlido Clarion).
O segundo ponto a considerar o evento da clusula: Selecionado no EVENTO estrutura CASE ().
EVENTO: Selected gerado quando o controle tem foco para entrada de dados, mas antes que o
usurio comea a faz-lo. NO SetupInsert julgamento corre para dar ao operador uma opo e,
em seguida, defina a entrada de formato de exibio e os dados para esse controle ENTRADA.
O Cdigo de EVENTO: Aceito em DE Ok o cdigo que escreve o log para o disco. A estrutura
EXECUTAR ao executada exatamente uma das frases ADD (Telefone), PUT (telefone) ou
DELETE (Telefone).
Neste cdigo, executar a consulta o parmetro Ao, e ento executa ADD (Telefone) se o valor
da ao 1, PUT (telefone), se dois ou DELETE (Telefone) se 3.
251
252 CLARION 5 CLARION
Aprendiendo
Em geral, quando o que estrutura avaliada cdigo Clarion a ser usado para uma clusula
condicional (SE / ELSIF, PROCESSO ou EXECUTE), a estrutura SE / ELSIF mais flexvel e
menos eficiente. CASE menos flexvel, mas mais eficiente do que IF / ELSIF e executar no
flexvel, mas muito eficiente. Portanto, quando se avalia a condio pode ser resolvido em um
nmero inteiro no intervalo1 an, utilize execute, caso contrrio, tente usar CASE. Se isso no
suficientemente flexvel, vire IF / ELSIF.
IF frase ERRORCODE () depois parar (ERROR ()) verificar se h erros, no importa qual
executar instruo executada. A sentena ReturnValue = ActionComplete definido para retornar ao
processo que fez a chamada, observando que o usurio tenha completado o arquivo de ao, e
ento o POST (EVENTO: CloseWindow) termina o circuito ACCEPT, deixando cair o controle
para a instruo return (ReturnValue ).
ROTINA SetupScreen
Ao CASE
DE InsertRecord
CLEAR (Telefono.Rec)
TARGET {PROP: texto} = 'Adicionar nova srie'
DE ChangeRecord
TARGET {PROP: Texto} = 'nmero de telefone Modifica' |
& CLIP (Telefono.Rec.Nombre)
SE Telefone: Rec: Number [1] <> '+'
? Telefone: Rec: Number [PROP: Texto] = '@ P ### - ### -
#### P'
END
DE DeleteRecord
TARGET {PROP: Texto} = 'nmero de telefone Elimina' |
& CLIP (Telefonos.Rec.Nombre)
DISABLE (FIRSTFIELD (), LASTFIELD ())
HABILITAO (? Ok? Cancelar)
END
SetupInsert ROTINA
SE Action = InsertRecord
MENSAGEM CASE ( 'International?', 'Format', ICON: Pergunta, |
BUTTON: Se + BUTTON: No, BUTTON: No, 1)
DE BOTO: Sim
TARGET {PROP: Texto} = 'Adicionar nmero internacional'
? Telefone: Rec: Nmero {PROP: Texto} = '@ S20'
Telefone: Rec: Number [1] = '+'
EXIBIO
Selecione (?, 2)
DE BOTO: No
TARGET {PROP: Texto} = 'Adicionar nmero nacional'
? Telefone: Rec: Nmero {PROP: Texto} = '@ P ### - ###
- #### P'
EuCONTEDO 253
END
END
ALVO uma varivel incorporado sempre "pontos" para a estrutura janela aberta. chaves ({}), que
delimita a mesma propriedade, e PROP: Text um parmetro de equivalncia (contido no
EQUATES.CLW) que identifica o item de dados (neste caso, a janela acrdo).
O cdigo indicando ChangeRecord da meta {PROP: Texto} = 'Modificar o nmero de telefone &
CLIP (Telefono.Rec.Nombre) faz o mesmo, mas muda a barra de ttulo para mostrar: "Alterar o
nmero de telefone de algum" O comercial (&) as cordas alfanumricos operador de
concatenao em Clarion, eo clipe procedimento (Telefono.Rec.Nombre) remove espaos direita
do nome. Rec: IF estrutura nmero de telefone [1] <> '+' verifica a presena de um sinal de +
como o campo de nmero primeiro caractere. Este sinal de mais usado aqui como um sinal de
que um nmero internacional.
Note que o telefone: Rec: N [1] aponta para o primeiro byte do campo como uma matriz (array).
Mas voc deve se lembrar que havia atribuir DIM na declarao (que havia declarado um array).
Todos os tipos de corda, cstring, e pString em dados Clarion tambm implicitamente uma matriz
de cadeia (1), DIM (SIZE (Stringfield)). Isso significa que voc pode fazer referncia diretamente
a qualquer caractere nico na string, se foi declarada como uma matriz ou no.
O SetupInsert ROTINAEle executado pouco antes de o usurio vai para o controle de entrada de
nmero. A declarao Ao IF = InsertRecord verifica o valor de Ao e executa apenas o caso
MENSAGEM estrutura quando o usurio est adicionando um novo recorde. O mtodo de
253
254 CLARION 5 CLARION
Aprendiendo
mensagem pode ser utilizada para criar escolhas simples Sim / No para os usurios. Neste caso,
ser perguntado se o nmero internacional.
CDIGO DE BOTO: Se voc executar quando o usurio pressionou o boto Sim na mensagem
de caixa de dilogo. A declarao TARGET {PROP: Texto} = 'Adiciona nmero internacional'
alterar o ttulo da barra de ttulo, e depois Telefone: Rec: Nmero {PROP: Texto} = '@ S20'
mudanas de renda mascarar ENTRADA. Rec: O nmero frase telefone [1] = '+' coloca um sinal
de + na primeira posio do caractere, em seguida, exibe (display) e lugares selecionar o ponto de
insero do usurio na segunda posio (2?) controle atual.
O cdigo de Button: No como mudar o texto na barra de ttulo da janela, e uma mscara de
controle renda.
O Mdulo de Programa
Este o mdulo de programa (o cdigo deve ser semelhante a este, mas pode no ser exatamente o
mesmo). A estrutura bsica de um programa Clarion OOP o mesmo que usar a linguagem
procedural. As duas primeiras frases so equivale definindo valores constantes que
precisamBiblioteca ABC.Abaixo esto vrias declaraes incluem. Estes dizer ao compilador para
colocar o arquivo de texto chamado no programa no ponto exato da declarao INCLUDE.
PROGRAMA
_ABCD11Mode_ EQUATE (0)
_ABCLinkMode_ EQUATE (1)
255
256 CLARION 5 CLARION
Aprendiendo
Include ( 'ABERROR.INC')
Include ( 'ABFILE.INC')
Include ( 'ABUTIL.INC')
Include ( 'ABWINDOW.INC')
Include ( 'EQUATES.CLW')
Include ( 'ERRORS.CLW')
Include ( 'KEYCODES.CLW')
Os quatro primeiros incluir arquivos (todos comeam com "AB" e terminam com ".INC") contm
definies de classe para algumas das classes biblioteca ABC. Os trs seguintes arquivos includos
(todos com a extenso ".CLW") contm uma srie de declaraes equiparar usada por modelos e
biblioteca.
MAP
MDULO ( 'TELEFOCB.CLW')
DctInit PROCEDIMENTO
DctKill PROCEDIMENTO
END
! --- Aplicao Global e Procedimento definies exportadas -------------
MDULO
principal PROCEDIMENTO ! Clarion 5 aplicao rpida
END
END
A estrutura do mapa contm duas estruturas MDULO. O primeiro declara dois procedimentos
DctInit e DctKill definidos no arquivo TELEFOCB.CLW. Estes dois procedimentos so gerados
para inicializar e no inicializar corretamente os arquivos de dados para uso pela biblioteca ABC.
A segunda estrutura MDULO simplesmente nomear a primeira aplicao chamada de
procedimento (neste caso, Main).
GlobalErrors ErrorClass
INIMgr INIClass
Esses objetos lidar com todos os erros e seu arquivo de inicializao do programa (se houver),
respectivamente. Esses objetos so amplamente utilizados por outras classes de biblioteca ABC,
ento deve estar presente (como ser discutido em breve).
EuCONTEDO 257
CDIGO
GlobalErrors.Init
DctInit
principal
DctKill
GlobalErrors.Kill
As duas primeiras frases chamar mtodos Init (no jargo OOP, Um procedimento em uma classe
chamado de "mtodo": ver classe em a referncia da linguagem e dois artigos sobre OOP o
programador'Guia de S). Estes so os mtodos construtores para GlobalErrors e objetos INIMgr.
Ser notado que este mtodo leva um parmetro. Na biblioteca ABC, todos os construtores objeto
mtodos so explicitamente chamado e chamado Init. H vrias razes para isso. A linguagem
Clarion suporta construtores (e destruidores) objeto automtico, e perfeitamente uso "legal" em
qualquer classe que voc escreve. No entanto, os construtores automticos no pode receber
parmetros e muitos dos mtodos InitBiblioteca ABCEles devem receber parmetros. Devido a
isso, e para a consistncia, os mtodos de todos os construtores ABC so nomeados explicitamente
objetos e nomeado Init. Esta prtica acrescenta a vantagem de aumentar a legibilidade do cdigo,
desde que voc pode ver explicitamente que est executando um construtor, enquanto que com os
construtores automticos devem observar a declarao classe para ver se um para ser executado
ou no.
O DctInit chamada de procedimento inicializa variveis de referncia de acesso: Telefone e
relacionar: telefone, para que o cdigo gerado pelos modelos (e qualquer cdigo que voc insira),
pode referir-se os mtodos de arquivo de dados usando a sintaxe de acesso: Telefono.Methodname
ou Relacionar: Telefono.Methodname. Isso fornece uma maneira consistente para fazer referncia
a qualquer arquivo em um programa gerado por modelos ABC: cada um ter a sua objetos de
acesso a arquivos: e se relacionam: correspondente.
O procedimento de chamada principal comea a execuo do resto do programa. Uma vez que o
usurio retorna ao procedimento principal, DctKill e GlobalErrors.Kill executar operaes de
limpeza necessrias antes de retornar para o sistema operacional.
257
258 CLARION 5 CLARION
Aprendiendo
O mdulo UpdateTelefono
Vamos agora examinar o cdigo-fonte que foi gerado por um dos procedimentos. Ns
UpdateTelefono observar o procedimento, que representante de todos os procedimentos gerados
por modelos ABC basicamente seguem o mesmo padro (alertamos novamente, o cdigo que voc
encontrar ser semelhante a este, mas no necessariamente iguais)
1. Escolha Fechar arquivo
2. UpdateTelefono destacar e clique direito e escolha mdulo a partir do menu de contexto.
A primeira coisa a notar a declarao MEMBRO na primeira linha. Esta uma declarao
exigida que diz ao compilador para mdulo de programa "pertence" este arquivo de origem.
Tambm marca o incio de uma "Seo de Dados Mdulo": uma rea onde as declaraes de
dados fonte que so visveis para qualquer procedimento no mesmo mdulo pode ser, mas no fora
dela (ver Declarao de dados e alocao de memria noa referncia da linguagem).
MEMBRO ( 'Telefono.clw') ! Este um membro do mdulo
Include ( 'ABRESIZE.INC')
Include ( 'ABTOOLBA.INC')
Include ( 'ABWINDOW.INC')
MAP
Include ( 'TELEF004.INC') ! Declarao do mdulo de procedimento local
END
Todos os trs contm definies classe incluem arquivos para algumas das classes biblioteca ABC.
Note que a lista de arquivos de incluso diferente do nvel global. s necessrio para incluir as
definies de classe que o compilador precisa saber para compilar apenas este cdigo-fonte. por
isso que a lista de arquivos de incluso um pouco diferente em cada mdulo.
Observe a estrutura de MAP. Por padro, modelos ABC Geral "Os mapas locais do" contendo as
declaraes include para incluir prottipos dos procedimentos definidos no mdulo e quaisquer
outras chamadas a partir do mdulo. Isto permite a compilao mais eficiente, j que apenas uma
recompilao global ser feita quando voc alterar alguns dados globais, e no apenas pela adio
de um novo procedimento de aplicao. Neste caso, h outros procedimentos chamados a partir
deste mdulo.
A declarao procedimento comea procedimento UpdateTelefono (que tambm termina do
Mdulo de Dados Seo).
PROCEDIMENTO UpdateTelefono ! Gerado a partir do modelo - Janela
Os trs ltimos so simples declaraes que criam objetos locais que permitem que o usurio use a
barra de ferramentas e redimensionar a janela. O que interessante aqui a classe declarao
ThisWindow. Esta estrutura de classe declara uma classe de janelas objeto derivado no qual pede,
Init, e que o Pai Kill (gerenciador de janelas) mtodos de classe so "ignorados" localmente.
mtodos virtuais que significa que todos os mtodos herdados da classe de janelas podem
continuar chamando mtodos negligenciados. Este um conceito muito importante naOOP, Que
mais profundo em referncias para a aula e OOP em Referncia de linguagem e Guia do
Programador.
Em seguida, vem o cdigo executvel do seu procedimento:
CDIGO
GlobalResponse = ThisWindow.Run ()
Exatamente ... uma nica frase! A chamada para ThisWindow.Run todo o cdigo executvel do
procedimento! Desta forma, voc perguntar: "Mas onde est todo o cdigo que executa todas as
funes que eu vejo correndo quando eu executar o programa" A resposta : "Na biblioteca ABC",
ou pelo menos a maioria . A boa notcia que todo o cdigo padro para operar qualquer
procedimento j est incorporado na biblioteca, o que reduz significativamente o "peso" total do
programa, uma vez que todos os procedimentos de partilhar o mesmo conjunto de cdigo comum
que foi refinado (e improvvel para entrar em qualquer problema que voc gerar programas).
Toda a funcionalidade especfica para este procedimento gerado nos mtodos "esquecido". Para
este procedimento, existem apenas trs mtodos que ao deve sofrer. Como a funcionalidade
que voc aplica para o procedimento, os modelos ABC vai esquecer os mtodos necessrios. Voc
tambm tem pontos de insero disponveis em cada mtodo possvel "ignorar" por isso fcil
para forar modelos para "ignorar" qualquer mtodo voc precisa de algo funcionalidade diferente,
simplesmente adicionando seu prprio cdigo nestes pontos insero (usando pontos de insero
editor do gerador de aplicaes).
Ok, ento vamos olhar para os mtodos "esquecido" neste procedimento:
PROCEDIMENTO ThisWindow.Ask
CDIGO
self.request CASE
DE InsertRecord
'Telefone Adicionando um Record' ActionMessage =
Registro de Mudana
'Telefone Mudando um Record' ActionMessage =
END
QuickWindow {Prop: Text} = ActionMessage
PARENT.Ask
A linha de realmente interessante deste procedimento a ltima. PARENT.Ask pai chama o
mtodo que foi "esquecido" pelo mesmo procedimento, para exercer a sua funcionalidade padro.
259
260 CLARION 5 CLARION
Aprendiendo
palavra-chave pai poderoso porque permite que um ltimo mtodo alta em uma chamada classe
derivada o mtodo que substitui a fazer o seu trabalho, permitindo que o passado mtodo para
aumentar a funcionalidade do pai mtodo esquecido.
PROCESSO ThisWindow.Init ()
CDIGO
Self.request = GlobalRequest
PARENT.Init IF () em seguida, retornar Nvel: Notificar.
SELF.FirstField = TEL: Nome: Prompt
SELF.VCRRequest & = VCRRequest
SELF.Errors & = GlobalErrors
CLEAR (GlobalRequest)
CLEAR (GlobalResponse)
SELF.AddItem (barra de ferramentas)
SELF.AddUpdateFile (Acesso: Telefone)
AUTO: HistoryKey = 734
SELF.AddHistoryFile (TEL: Record, Histria :: TEL: Record)
SELF.AddHistoryField (TEL: Nome, 1)
SELF.AddHistoryField (TEL: Nmero, 2)
SELF.AddItem (? Cancelar RequestCancelled)
Relacionar: Telefono.Open
FilesOpened = True
SELF.Primary & = Referir: Telefone
SELF.OkControl = Ok
SELF.PrimeUpdate IF () em seguida, retornar Nvel: Notificar.
ABERTO (QuickWindow)
ABERTO (QuickWindow)
SELF.Opened = True
Resizer.Init (AppStrategy: Superfcie, Redimensionar: SetMinSize)
SELF.AddItem (redimensionador)
Resizer.AutoTransparent = True
ToolBarForm.HelpButton = Ajuda
SELF.AddItem (ToolbarForm)
SELF.SetAlerts ()
RETURN Nvel: Benigna
Alm de chamar mtodo PARENT.Kill () para executar todas as funes de perto (o mais
prximo), ThisWindow.Kill fecha todos os ficheiros abertos sobre o procedimento, e definir a
varivel GlobalResponse.
Escolha Fechar arquivo
Este curso foi apenas uma breve introduo linguagem de programao Clarion e o cdigo
gerado pelos modelos ABC. H muito mais a aprender com o que ns cobrimos aqui, ento ...
Onde continuar?
artigos em o programador'Guia de S. Estes abrangem vrios aspectos da programao nesta
lngua. Apesar de no ser "cursos" fornecer informaes detalhadas lidar com reas
especficas, e h vrios que tratam especificamenteOOP Clarion.
O Manual do aplicativo de documentos totalmente a biblioteca e modelos ABC. Esta a
chave para obter o mximo de Generator Aplicao de recursos de tecnologia.
A referncia da linguagem a "Bblia" da lngua Clarion. sempre boa idia para l-lo
completamente.
Estudar o cdigo fonte produzido pelo gerador de aplicaes. Tendo feito este curso, a
estrutura bsica do cdigo deve parecer familiar, embora no a lgica especfica de
determinados sectores.
do Usurio'S GuiaEle contm oficinas sobre o uso de purificadores (depuradores). Isso
permitir que voc para ir passo a passo pelo cdigo Clarion como ele executado para ver
exatamente o efeito que cada declarao na execuo de um programa.
Os utilizadores registados a Argentina e os pases de lngua espanhola tm acesso ao suporte
tcnico atravs da Internet em http://www.unisoft.com.ar (ou tambm, www.clarion.com.ar)
Correio eletrnico: soporte@unisoft.com.ar
TopSpeed oferece seminrios educacionais em vrios locais. Contactar o Servio de Cliente
para os nmeros: (800) 354-5444 ou (954) 785-4555 para obter informaes.
CompuServe tipo GO Topspeed para entrar no frum de suporte tcnico TopSpeed, ou on-
line, digite a notcia grupo comp.lang.clarion por qualquer servidor Usenet (Altamente
recomendado!)
Boa sorte, e continuar trabalhando. Como dissemos: o poder da programao que coloca em suas
mos Clarion cresce medida que voc aprende mais sobre!
VOCABULARY
261
262 CLARION 5 CLARION
Aprendiendo
Ingls castelhano
classe construtor de aplicao [ABC] biblioteca = aplicaes high-end edifcio da Biblioteca
manual de aplicao = Aplicao manual
Assistente de aplicao = aplicaes Assistant
caixa = Box (para colocar tiles), segurana
pausa = salto
procurar = Exibir as listagens
amortecedor = rea de armazenamento temporrio
biblioteca de matemtica de negcios = Funo matemtica biblioteca de negcios
comportamento condicional = Operao condicional
criar = criar
omisso = Padro, pr-configurado
guia Dployment do usurio kit = Guide, Kit de Instalao
dilogo = Caixa de dilogo
editor de Dicionrio = Editor Dicionrio
motoristas = motoristas
editar-in-place = Modificao in situ
pontos incorporar = Pontos de insero
cdigo embutido = Insero Cdigo
ferramentas empresariais = Ferramentas do negcio
caixa de entrada = Caixa de entrada de dados
EQUATE = equivalncia
programao orientada a eventos = Agendamento Baseado
campo equiparar rtulo = Campo de rtulo Equivalent
arquivo = arquivo
arquivo esquema = rvore de arquivos
acabamento = Fim, extremidade
formas = fichas
manusear = Asa, "puxar gabinete"
ajudar = Ajuda
Ajuda ndice contedo de ajuda =
incrementais = progressiva
incrementalmente = progressivamente
iniciar fio = Comece segmento de execuo
EuCONTEDO 263
chaves = chave
etiqueta = Sinal; etiqueta
referncia languaje = Referncia da Linguagem
Lista Box Formatter = Designer Lista Boxes
Lookup = Consulta (um arquivo relacionado)
mapa = Mapa, mapeamento, correlao, correlacionando
ndice mestre = ndice Geral
novo = new
prximo = prxima
Objet Oriented Programming (OOP) = OOP (POO)
Form pgina = Pgina de Base (relatrios)
pgina estouro = Pgina Overflow (relatrios)
caminho = Caminho ou rota pesquisa
formato de imagem = Formato de dados (P #### P); visualizao padro e
arquivamento
token de imagem = Rendimento mscara (ou monitor) dados
menu pop-up = Menu Contextual
mecanismo de impresso = Motor de impresso (relatrios)
procedimento assistentes = Procedimento Assistentes
janela de progresso = Janela Indicator
carga rpida = (Assistente) "carga rpida"
de incio rpido = (Assistente) "Quick Start"
limite de alcance = Intervalo de limite (limite de pesquisa)
filtro de registro = Filtrar registros
de pedidos recorde = Ordem de registros
relatrio = relatrio
relatrio formatador = Report Designer
repor em = Redefinir sobre
corrida = executar
Salvar como tipo = Salvar como ...
instalao = Instalando, configurando
aba = Tab, chave de guia, guia
tally = marcador
modelo = template
thred = Segmento de execuo
263
264 CLARION 5 CLARION
Aprendiendo
corrida = executar
registros = Forms
filtrar registros = Filtro da ficha
formato de (P #### P) ou "padro
visualizao e arquivamento " = Formato de imagem
operao condicional = Comportamento condicional
salvar como ... Salvar como tipo =
Guia do Programador = Guia do Programador
Guia do Usurio = Guia do Usurio
Guia para Kit de Instalao = Guia de Implementao do Utilizador do Kit
ferramentas de negcios = ferramentas da empresa
thread de execuo = fio
ndice do frum = ndice de Mestrado
relatrio = relatrio
iniciar thread de execuo = Iniciado rosca
instalao = configurao
limite de alcance = Limite de Gama
limitar pesquisa = Limite de Gama
Guia de aplicaes = Manual de Aplicao
marcador = contagem
renda mscara (ou exibio)
dados = Imagem Sinal, formato de imagem
modificao in situ = Editar no lugar
mecanismo de impresso = Imprimir pgina
novo = new
ordem dos registros = Ordem Gravar
pgina base = Pgina de formulrio
modelo = template
programao baseada em evento = Programao orientada a eventos
OOP (POO) = Objet Programao Orientada (OOP)
pontos de insero = pontos Incorporar
Referncia da linguagem Idioma = referncia
sinal = rtulo
rota (ou faixa) pesquisa = caminho
saltar = pausa
265
266 CLARION 5 CLARION
Aprendiendo
seguinte = prxima
Finalmente, a extremidade = acabamento
janela do indicador = Janela Progresso
verificaes de validade = cheks Validade
rota (ou caminho) pesquisa = caminho
display = navegar
CLARION 5
EuCONTEDO 267
Primeiros
passos
Copyright 1994, 1995, 1996; 1997 por TopSpeed Corporao
Copyright 1998, Unisoft SRL
Todos os direitos reservados
Este trabalho protegido por copyright e todos os direitos reservados. no pode ser copiado,
fotocopiado, reproduzido, traduzido ou passado para mdia eletrnica ou computador sem o
consentimento escrito dos detentores de direitos.
Esta publicao acompanha Clarion 5. Pode conter erros tcnicos ou tipogrficos. TopSpeed e
Unisoft o entregue "como est" sem garantia, expressa ou implcita.
TopSpeed Corporao
150 East Road Amostra
Pompano Beach, Florida 33064
(+ 1-954) 785-4555
Unisoft SRL
Uruguai 263, piso 5
1015 - Buenos Aires
Tel./Fax: (54-11) 4372-7243 / 9850; 4374-2298 / 9469
267
268 CLARION 5 CLARION
Aprendiendo
Mark Reconhecimento:
TopSpeed marca registrada da TopSpeed Corporation.
Clarion5 marca registrada da TopSpeed Corporation.
Btrieve Btrieve Technologies uma marca registrada.
Microsoft, Windows , e Visual Basic so marcas registradas da Microsoft Corporation.
Todos os outros nomes de produtos e empresas so marcas comerciais ou marcas registradas de
seus respectivos proprietrios.
CONTEDO
1 - INTRODUO 7
Bem-vindo! 7
Nveis de usurios / desenvolvedor ............................................. ...........................................
7
O que h nesta seo ............................................. .................................................. ....... 9
Onde encontrar mais informaes .............................................. ....................................... 10
convenes da documentao 12
Convenes tipogrficas ................................................ .................................................. 12
convenes de teclado ............................................... .................................................. .. 12
Informaes sobre o produto 13
Registro ................................................. .................................................. ............................ 13
suporte tcnico ................................................ .................................................. ................. 13
Fax sistema de resposta ............................................. ................................................ 13
Configurao: Configurao 14
EuCONTEDO 269
O Tao da Clarion 39
Clarion uma linguagem de programao ............................................ ................................
39
............................................... nveis de abstraco .................................................. ....... 39
nveis de abstrao Clarion ............................................. ......................................... 41
.............................................. modelos de programao controlados ............................... 42
ambiente de desenvolvimento Clarion 45
Qual ser a prxima? .................................................. .................................................. ..........
48
269
270 CLARION 5 CLARION
Aprendiendo
- EuNTRODUO
Bem-vindo!
Muito obrigado por adquirir Clarion. Agora voc tem em suas mos a ferramenta mais poderosa e
flexvel para desenvolvimento de aplicativos. Muito em breve, voc vai apreciar a si mesmo.
Quando voc precisa de uma aplicao "simples" para a manuteno de um banco de dados, o
trabalho vai levar apenas alguns minutos usando Clarion. A chave est no dicionrio de dados. Se
o Application Builder (Gerador de Aplicativos) arquivos conhecidos ou tabelas que voc precisa, e
como eles link, voc pode construir um aplicativo completo. Ento tudo que voc tem a fazer
escolher um ou mais arquivos, e indicar o tipo de relaes que eles tm uns com os outros (se dois
ou mais). curso de curta durao no Incio Rpido este livro voc vai encontrar uma demonstrao
de como fcil todo o processo.
Assim, o Application Wizard (Assistente de aplicao) pode criar uma aplicao completa usando
o conceito genrico de aplicaes Clarion. Chamamos de navegao-forma de conceito (
"procedimento de display / record"), que se estende directamente a partir da estrutura do banco de
dados. O aplicativo funciona da seguinte forma: (1) O usurio final navega o banco de dados -
tudo ou parte de um arquivo de dados ou bancos de dados mltiplos relacionadas-- percorrer uma
lista em que cada item representa um inscrio. A janela em que isso feito chamado de
"browse" (pronunciado / Braus /). (2) O utilizador selecciona um registo da lista para executar uma
aco, tal como a modificao de dados. Isso geralmente feito em uma janela separada, em que
os campos de banco de dados aparecem na edio caixas separadas. Isso chamado de "forma guia
ou update" ( "forma" update). A guia tambm pode aceitar novos dados. (3) Opcionalmente, o
utilizador final pode verificar um valor de uma tabela ligada para entrada de dados para a pgina.
EuCONTEDO 271
Isso abre outro em uma janela de navegao separada. O usurio pode escolher um item, fechando
a janela e colocar o valor na caixa de edio no separador. Isso chamado de "consulta" (lookup).
Esta seria a descrio mais genrica. Alm disso, cada janela de exibio ou navegar, voc pode
navegar a partir da barra de ferramentas, que se abre para um segmento separado da execuo,
com o seu prprio buffer de log, permitindo a manipulao de dados mais seguros. Vrios sistemas
podem ser selecionados por chave ( "chaves"), clicando em uma guia. Um duplo clique em uma
entrada da lista abre um guia de atualizao com o uso de verificao automtica simultnea (para
aplicaes multi-utilizador) e restries de integridade opcionalmente referenciais que mantm
relaes do banco de dados.
Qualquer um pode fazer isso. Comea simplesmente, escolher um arquivo de dados da lista.
Com Clarion, coloque um controle em uma janela faz muito mais do que em outro rpido
desenvolvimento de aplicaes, tipicamente uma vez controlar as ferramentas de interface de
usurio colocados, espero que voc escreva o cdigo para faz-lo funcionar. Com Clarion, voc
adicionar um modelo ou modelo, que contm o controle e todos os elementos de dados e cdigo
executvel necessrios. Isso significa que no escrever o cdigo, basta um clique para obter uma
soluo completa: interface de usurio de controle, e o cdigo que faz com que funcione. Alm
disso, cada modelo tem sua prpria interface do usurio. Quando se observam as propriedades do
modelo, que a guia "Aes" (aes). Atravs de aes como responder a uma caixa de dilogo,
selecione um item de uma lista drop-down, ou preencher uma caixa, voc pode alterar o
funcionamento do modelo para que ele responde exatamente s necessidades da aplicao. Durante
o curso aqui apresentado, haver muitas oportunidades para configurar essas aes. O workshop
sobre o Application Builder na seo Clarion Aprendizagem apresenta todas as ferramentas de
desenvolvimento rpido de aplicaes (RAD), que tem o programa.
271
272 CLARION 5 CLARION
Aprendiendo
Desenvolvedores profissionais realmente apreciar a linguagem Clarion. Ele foi projetado desde o
incio para programadores de aplicativos de negcios. Facilidade de aprendizagem (em
comparao com outras linguagens de baixo nvel) no impede que voc tenha um desempenho
brilhante. compilador TopSpeed converte todo o cdigo, seja escrito mo ou usando o
Application Builder, altamente otimizado cdigo binrio.
NOTA: No importa o nvel tentar trabalhar, eventualmente: ele vai fazer muito
melhor se voc praticar cada curso at o final.
Esta a introduo ao ambiente Clarion. A seguir est uma lista de partes desta seo, e resumiu
seu contedo:
Cursilho para um incio rpido Captulo Dois:algumas etapas fceis com o assistente
(Wizard) de incio rpido permitem que voc crie uma
aplicao completa em cinco minutos. Ento, em menos
de uma hora, este captulo vai te ensinar a usar os
assistentes e procedimentos Application Wizard para
criar uma aplicao simples, e depois estender sua
funcionalidade a um programa elaborado trabalhar com
dois arquivos. Este objectivo ser alcanado sem
escrever uma nica linha de cdigo.
EuCONTEDO 273
O primeiro lugar a olhar a seo Como posso ...? ( "Como posso ...?"). Estes tpicos responder a
muitas das perguntas mais comuns feitas recm-chegados a Clarion. Pressione o boto Como
posso ...? seo de ajuda do contens para ir a essa seo.
Clarion tem um sistema de ajuda muito extensa. ajuda hipertextual aparece quando voc pressiona
a tecla F1 ou selecione uma das ordens a partir do menu Ajuda. A ajuda on-line tratado por caixa
de dilogo para fornecer ajuda sensvel contexto, quando necessrio.
273
274 CLARION 5 CLARION
Aprendiendo
Todos os livros esto no formato .PDF no CD (ou em disquetes separados, no caso das verses em
espanhol) so acessveis pelo programa Adobe Acrobat ReaderQue tambm pode ser instalado a
partir do CD Clarion. pesquisas por assunto ou palavra podem ser feitas nesses arquivos .PDF, e
tambm pode ser impresso, se desejado.
convenes da documentao
convenes tipogrgicas:
convenes de teclado
275
276 CLARION 5 CLARION
Aprendiendo
Antes de comear a usar Clarion, preencher e devolver o carto de registro encontrada na caixa
UniSoft, Uruguai 263 piso 5 (1015), Buenos Aires, Argentina ou seu representante local. Este
carto permite-lhe desfrutar de vrios benefcios importantes. Uma vez cadastrado, voc pode usar
os servios de suporte tcnico, e receber automaticamente notificaes de anncios e melhorias do
produto.
suporte tcnico
em a Argentina
Usurios cadastrados a Argentina e os pases de lngua espanhola tm suporte tcnico
gratuito via Internet em: http://www.clarion.com.ar (ou, ww.unisoft.com.ar) por
servios de grupos de discusso e FTP. Uma equipe de tcnicos locais experientes
(CST: Suporte Clarion Equipe Argentina) ir responder s suas perguntas. Eles
tambm pode obter assistncia por e-mail para apoiar @ UniSoft, com.ar, ou pelo fax
(+ 54-11) 4.374-9.469.
H tambm planos de apoio alternativos por assinatura anual ou horas de consultoria,
como o "Suporte Corporativo", que inclui suporte ilimitado telefone,
acompanhamento de problemas, aconselhamento e outros servios. Para mais
informaes, consulte o (+ 54-11) 4372-7243.
apoio internacional
Voc pode receber suporte tcnico ilimitado de Informao CompuServe Servio Clarion e na
Internet. funcionrios Topspeed e Associates Certified Suporte TopSpeed Tcnica (um grupo
voluntrio de usurios conhecidos como Team TopSpeed Clarion), responder s suas perguntas
prontamente. Alm disso, voc pode obter conselhos e respostas de outros usurios Clarion.
Recomendamos vivamente os nossos clientes a fazer uso desses servios.
CompuServe tipo GO Topspeed para entrar no frum Topspeed suporte tcnico.
Internet, digite o servidor de notcias grupo comp.lang.clarion atravs de qualquer servidor
Usenet.
Internet, indique as topspeed.products grupo tsnews.clarion.com servidor de notcias.
Tambm na Internet, visite o website em http://www.topspeed.com TopSpeed. Clarion para
mais recursos.
O pagamento tambm pode ser obtido o servio de telefone o Coporacin TopSpeed em (1) (954)
785-4556.
EuCONTEDO 277
TopSpeed tambm oferece discagem por fax para acessar os documentos tcnicos e de negcios
mais comuns. documentos online, incluindo folhetos de produtos, documentos tcnicos,
reimpresses de artigos, listas de preos, e at mesmo uma atualizao dos mais recentes produtos
TopSpeed ( "What'sHot").
Para pedir documentos especficos, disque (+ 1- 954) 4785-4555, pressione 53 e ouvir as
instrues do sistema. O menu interativo e acessvel. Primeiros chamadores podem solicitar uma
lista de documentos disponveis para fazer a sua escolha. Voc pode, em seguida, digite o nmero
do cdigo do documento, eo material ser transmitida para ele imediatamente. Voc pode acessar
o sistema a partir de sua mquina de fax ou qualquer telefone multifrecuente.
Configurao: Configurao
O programa de instalao descompacta e copia os arquivos Clarion para seu disco rgido.
Em todos os sistemas operacionais, oferece opes para instalar os vrios componentes, tais
como arquivos de amostra.
Em todas as verses do Windows, questionar antes de atualizar o caminho (PATH) no arquivo
AUTOEXEC.BAT para incluir o diretrio Clarion.
No Windows 3.x pergunta se pretende instalar os cones do gerente de programa para o
ambiente de desenvolvimento Clarion, e arquivos Debugger (depurador), Ajuda e ReadMe.
No Windows 95 e Windows NT, sugere a instalao de todo o ambiente de desenvolvimento
cones entre os programas menu Iniciar ( "Start").
Requisitos do sistema
Voc pode executar o ambiente de desenvolvimento Clarion em qualquer sistema que atenda aos
requisitos mnimos para Microsoft Windows 3.x, Windows 95 , ou Windows NT. Estes so os
nossos mnima recomendada:
Windows 3.x, 8 megabytes de RAM.
Windows 95, 16 megabytes de RAM.
Windows NT, 32 megabytes de RAM.
mnima de 12 35 megabytes de espao livre em disco, dependendo das configuraes (
"Setup") escolhido.
Aplicaes que voc desenvolve com Clarion ir correr confortavelmente em computadores que
atendem apenas aos requisitos mnimos para esses sistemas operacionais.
277
278 CLARION 5 CLARION
Aprendiendo
Iniciando o Setup
Opes de instalao
1. Escolha as opes de configurao oferecidas pelas telas (tais como disco e diretrio de
destino), premindo o boto Prximo para rolar as telas de opes.
A instalao ir instalar os componentes principais do ambiente de desenvolvimento Clarion
para um subdiretrio BIN localizado em um diretrio de nvel inferior que voc indicou.
O programa instala todos os arquivos para o diretrio de destino e subdiretrios que esto
abaixo dele. no instala todos os arquivos em outros diretrios.
Durante a instalao, barras de progresso parecem mostrar uma cpia dos arquivos.
2. Escolha Sim ou No quando a instalao pergunta se ele pode modificar o caminho.
3.x Windows e Windows 95, o ambiente de desenvolvimento Clarion requer o subdiretrio
BIN est listado na varivel de ambiente PATH. Se voc escolher No, voc deve editar
manualmente o arquivo AUTOEXEC.BAT.
A nica outra alterao que faz com que seus arquivos de sistema Clarion adicionar sua
prpria seo para o arquivo de inicializao do Windows (Win.ini), quando executado pela
primeira vez.
EuCONTEDO 279
execuo Clarion
Para executar Clarion, localize o cone apropriado no grupo Clarion de programas e clique duas
vezes nele, ou simplesmente clique no cone no menu Iniciar.
ambiente de desenvolvimento Clarion aparece, pronto para trabalhar.
Voc vai encontrar um guia rpido para o ambiente de desenvolvimento do partido, como um
diagrama dos cones na barra de tarefas, no captulo trs desta seo.
Agora v para o captulo dois deste livro para criar duas aplicaes impressionantes (do
dicionrio de dados, janelas para navegar, para Windows Forms), tudo em menos de uma hora.
Clarion, voc pode criar um dicionrio de dados e aplicao funcional sem codificao.
Tudo que voc precisa definir os campos no arquivo de dados e o Assistente de Incio
Rpido (Quick Start Wizard) cria um ... aplicao em cinco minutos, completa o
Windows se voc digitar rapidamente. O aplicativo inclui um guia de atualizao
procedimento para manter o arquivo, um visor (browse) em todas as chaves de
classificao, e muitos relatrios como chaves.
Usando o Assistente de Incio Rpido, voc s precisa definir o nome de cada campo no
arquivo de dados, a sua exibio formato (exibio de imagem) e informaes sobre as
chaves. Tudo o resto fornecido nos padres. O Assistente de Incio Rpido cuida do
resto!
279
280 CLARION 5 CLARION
Aprendiendo
Neste captulo:
Voc usar o Assistente de Incio Rpido para criar um arquivo do cliente e uma
aplicao para manter o arquivo, em seguida, compilar e executar o programa.
Use Carga rpida ( "carga rpida"). Este Clarion outro atalho que permite adicionar
rapidamente um arquivo para um dicionrio de dados.
Ele vai definir uma relao entre dois arquivos no Editor de dicionrio, incluindo
regras de integridade referencial.
Voc usa o Gerador de Aplicativos para adicionar mais funcionalidade para o
aplicativo, usando um do Procedimento Assistentes (Wizards of Procedure) Clarion.
Finalmente usar o Assistente de aplicao (Application Wizard) para criar uma
segunda base de dados relacionais completas a partir do mesmo dicionrio de dados.
Tudo isso levar cerca de 15 minutosSem "codificao" da sua parte. Para o final do
captulo, voc ter duas aplicaes completas para um banco de dados que contm dois
arquivos.
Ponto de partida:
Voc deve ser aberto apenas o ambiente de desenvolvimento
Clarion. dilogo Pic deve ser aberto.
2. Escolha Aplicattion (* .app) do Salvar lista drop-down tipo ( "Cuardar como ...")
3. Selecione C: \ CLARION5 \ tutuorial.
4. QWKTUTOR Tipee no nome do campo File ( "File")
O Assistente de Incio Rpido usa isso tanto quanto o nome do aplicativo e dicionrio para
criar QWKTUTOR.DCT (dicionrio de dados de arquivo) e QWKTUTOR.APP (o arquivo do
aplicativo). Voc pode usar nomes de arquivos longos, mas no vamos considerar isso os
usurios do workshop do Windows 3.1.
5. Tilde Use a caixa de incio rpido, pressione o boto ( "Save") Save. Clarion Quick Start (
"Quick Start") caixa de dilogo aparece.
6. Na coluna Key, pressione seta para baixo para exibir as opes. Destaque Autonumber (
"serializao") e pressione TAB.
Assim, uma chave nica a este campo como um componente ser criado. Autonumber
especificando a aplicao garante que cada cliente tem um nmero prprio, que aumentam
automaticamente cada vez que um cliente adicionado. O Assistente de Incio Rpido cria
navega e com base em cada chave que voc criar relatrios. Esta chave ir permitir o
movimento entre registros classificados por cusno.
O cursor colocado automaticamente na prxima linha, permitindo-lhe definir o prximo
campo.
7. Negcios no campo Tipo da coluna e TAB.
Isso cria um campo chamado Empresa para usar como o nome da empresa cliente.
8. Digite S20 na coluna Imagem e pressione TAB.
Este espcifica o formato dos nmeros exibidos em controles de janela e relatrios. Neste caso,
o campo tipo de dados uma seqncia de 20 caracteres.
9. Na coluna Key, pressione seta para baixo para exibir as opes. Destaque Duplicate, e TAB.
10. Terminar de definir o arquivo criando os campos restantes de acordo com a seguinte tabela:
formato de nota (P #### P) especificado para o campo CP (CEP). uma "visualizao padro
e arquivo", que formata dgitos CEP.
EuCONTEDO 283
283
284 CLARION 5 CLARION
Aprendiendo
Generator aplicativo cria o cdigo-fonte para as suas aplicaes, executa compilao, linkeado
e executa o programa resultante.
Parabns! A sua aplicao j est em execuo!
Explorando o aplicativo
Primeiro vamos adicionar alguns registros.
1. Escolha Browse Clientes procurar o arquivo
2. Pressione o boto Inserir na barra de tarefas.
1. Depois de ter digitado os primeiros dados de clientes, pressione o boto OK para fechar a guia
e salvar o registro.
Isso demonstra o conceito de aplicaes Clarion Browse-Form. Navegar na lista de exibio
mostra banco de dados de registros e processo Form usado para atualizar (adicionar, alterar
ou eliminar) os registros de arquivos individuais. Clarion tambm suporta o conceito de
rolagem Form ( "Slider Tab"), em que os registros podem ser modificados diretamente na lista
de exibio (tente isso mais alelante).
EuCONTEDO 285
2. Adicionar mais alguns registros (voc tambm pode dar CLIQUE DIREITO [boto direito do
mouse] na lista de slides e escolha menu de contexto Inserir para adicionar registros). Veja
como cada vez que voc adicionar um novo registro para o arquivo do cliente, o valor de cusno
campo aumenta automaticamente por um. Observe os diferentes sistemas para consulta no
procedimento de procura, ento variar o tamanho das colunas e usar a barra de rolagem
horizontal para navegar os dados nos campos que esto escondidos direita da tela. Se desejar,
voc tambm pode imprimir relatrios.
285
286 CLARION 5 CLARION
Aprendiendo
definio criada no dicionrio. Esta opo est disponvel sempre que um novo arquivo
adicionado ao dicionrio.
Adicionar um arquivo
Nesta seo, vamos adicionar um arquivo para salvar o nmero de telefone dos clientes. Isso
permite que cada cliente ter tantos nmeros de telefone, conforme necessrio (que cria uma relao
de um-para-muitos).
Usando carga rpida no Editor Dicionrio
1. Escolha Arquivo aberto (Ou pressione o boto Abrir na barra de tarefas).
caixa de dilogo Abrir aparece.
2. Escolha o tipo de dicionrio (* .dct) a partir da lista arquivos do tipo drop-down, selecione
QWKTUTOR.DCT, e pressione o boto Abrir.
caixa de dilogo Dicionrio Box Editor aparece.
5. Selecione o campo Arquivo de Dados Nome ( "Data File Name"), e do tipo de telefone e
pressione TAB.
6. Pressione TAB novamente para aceitar prefixo TEL.
Em seguida, voc ser solicitado a selecionar um arquivo de driver (Driver File).
7. Pressione TAB para aceitar Topspeed como um controlador.
Isto levar a uma lista de caixa em que os campos esto definidos.
8. Digite cusno na primeira linha da coluna Nome do campo, e pressionar TAB.
Isso cria um campo chamado cusno. Este campo a ligao (link) para o campo cusno os
clientes de arquivo. Usar os mesmos nomes de campo faz com que seja mais fcil para vincular
os dois arquivos. Do cristalino no cdigo que gera o ficheiro prefixo adicionado para os
nomes de campo (com dois pontos [:], tal como a separao), que produz nomes originais para
os campos que partilham o mesmo nome de ficheiro separados.Por portanto, este campo
realmente chamado, TEL: cusno, enquanto o campo no arquivo do cliente chamado CLI:
cusno.
9. N4 Digite a coluna de imagem, e pressione TAB.
10. Na coluna Key, pressione seta para baixo para exibir as opes. Duplicar e escolher TAB.
Isto especifica uma chave que permite duplicatas assentos, o que permite que mais de um
registro para cada cliente. Assim voc pode criar uma relao de relacionamento um-para-
muitos entre os dois arquivos (um cliente pode ter muitos telefones).
O cursor est localizado na prxima linha, que permite definir o prximo campo.
11. Na coluna Nome do Campo da prxima linha, digite DDN, e pressione TAB.
12. Na coluna de Quadro, tipo P (0 ###) P, e pressione TAB duas vezes (uma chave no
definido) para prosseguir para o prximo campo.
Esta ao inicia o campo DDN (National Discagem Direta) como um zero e mais trs dgitos,
entre parnteses, que a maneira padro de telediscado cdigos na Argentina. O padro
muito semelhante em todos os pases, mas pode se adaptar localmente, se necessrio.
13. Completar o arquivo de criao de campos da tabela:
287
288 CLARION 5 CLARION
Aprendiendo
Uma vez que este arquivo tem apenas quatro campos, um bom exemplo do direito de modificar
os dados no arquivo de lista de slide.
1. Realce a lista Arquivos arquivo Telefone e clique no boto Propriedades ... ( "Propriedades")
2. Escolha a guia Opes.
3. Opes no usurio ( "Opes de utilizador") de controle, tipo EDITINPLACE.
Ento avisar Assistants ( "assistentes") do cdigo de gerao de Clarion que permite que voc
modifique os dados do arquivo diretamente na caixa de exibio o deslizamento (browse).
Adicionar um relacionamento
Obviamente, queremos que o arquivo Telefonos contm os nmeros de telefone dos clientes. Isto
significa que os dois arquivos devem ser relacionados. Neste caso, um cliente pode ter muitos
telefones, o que o torna um "one-to-many". Para definir essa relao, que deve ligar os arquivos no
dicionrio de dados, para fornecer o gerador de aplicaes com as informaes necessrias para
acessar os registros relacionados.
Estabelecer uma relao entre dois arquivos
1. Selecione Arquivos de Cliente caixa de dilogo e clique no boto Add Relation.
EuCONTEDO 289
289
290 CLARION 5 CLARION
Aprendiendo
4. escolher arquivo Salvar, ou pressione o boto Salvar na barra de tarefas para salvar o
dicionrio de dados.
5. selecionar arquivo Close, ou pressione o boto Fechar na caixa de dilogo dicionrio para
fechar o dicionrio.
EuCONTEDO 291
assistentes Procedimentos
(Procedimentos Assistentes)
Alm do Quick Start Wizard, Clarion tambm tem assistentes que criam procedimentos mostrar
arquivos, registros ou relatrios (Procurar, formulrio ou relatrio), to facilmente como o Assistente
de Incio Rpido cria um dicionrio de dados e uma aplicao. Esses assistentes esto disponveis
sempre que um novo processo criado em um aplicativo existente.
Agora vamos usar o Assistente de Pesquisa para criar um mtodo de exibio para o arquivo de
telefone. Voc tambm pode criar o procedimento de atualizao (Form), mas no desta vez, j que
modificaes podem ser feitas diretamente na exibida ( "editar no lugar")
Carregar Application Builder
1. Escolha Arquivo Escolha (ou pressione o boto correspondente na barra de tarefas).
2. Selecione a guia aplicativos, realce C: \ CLARION5 \ Tuturial \ QWKTUTOR.APP e pressione o
boto Select.
Box aplicao Tree ( "aplicativo rvore") caixa de dilogo aparece.
A modificao da guia procedimento
1. UpdateCliente ficar (Form) na rvore da aplicao, e clique direito para ativar o menu de contexto.
Este menu permite o acesso direto s ferramentas Application Builder sem primeiro abrir as
propriedades do procedimento.
291
292 CLARION 5 CLARION
Aprendiendo
4. Clique perto do canto inferior esquerdo da janela para colocar o novo controle (boto) abaixo
da guia de lmina (folha guia).
5. Com o novo boto selecionado, clique direito para ativar o dilogo chamada Propriedades do
boto.
6. Escrever Phones no campo de texto.
Isso muda o texto que aparece no boto.
7. Selecione as Aes ( "Aes") de guia.
neste guia onde possvel especificar o que o controle. Neste caso, queremos chamar um
mtodo de navegao para mostrar todos os registros de telefone que esto ligados arquivo para
os clientes de arquivo registro atual.
8. Escolha chamar um procedimento a partir da lista drop-down quando pressionado.
caixa procedimentos que definem (Procedimento Definio) sobre as aes guia aparece.
3. Depois de ler a primeira caixa de dilogo Assistente de informaes, clique no boto Avanar
para comear a criar o procedimento.
4. Entre telefone na caixa de entrada de dados (ou pressione o boto ... e selecione-o da lista),
respondendo pergunta "Qual voc quer arquivar navegar?" (Que arquivo para exibir?), E
pressione no boto Avanar.
293
294 CLARION 5 CLARION
Aprendiendo
5. Desmarque a caixa utilizando Procurar todas as chaves de registro ( "Display usando todas as
chaves de pesquisa), pressione o boto ... e escolha TEL: KeyNumCliente da lista e clique no
boto Avanar.
Isto especifica a chave a ser usada para classificar os registros para visualizao na lista.
6. Deixe em branco a caixa Procedimento de actualizao ( "Procedimento de atualizao") e
pressione o boto Avanar.
Esta caixa de entrada de dados permite que voc especifique o procedimento para criar a
Navegar Assistente para atualizar os registros no arquivo Phone. Neste caso, isso
desnecessrio, uma vez que o assistente ir criar o cdigo apropriado para modificar o arquivo
na mesma lista (no local), eliminando a necessidade de um procedimento de atualizao (guia).
No entanto, se no tivssemos especificado EDITINPLACE no arquivo de opes do usurio,
chame as folhas de Assistente de Assistente de Pesquisa para criar o guia interno. Nomeao
Aqui um "procedimento Update" evitar o trabalho das folhas Assistente tendo que, em
seguida, ativar.
7. Marque a caixa usando atualizao menu pop-up Chamada, e clique no boto Avanar.
Isso permite que os usurios usem um menu de contexto (que aparece quando voc d Boto
direito do mouse na lista) para chamar o procedimento de atualizao (ou a capacidade de fazer
alteraes na mesma lista).
EuCONTEDO 295
8. Desmarque a caixa Fornecer botes para arquivos filho ( "Faa botes para crianas Files"), e
clique no boto Avanar.
9. Selecione o boto de assumir que o registro pai est ativo ( "a presuno de que o registro de"
pai "est ativo") e pressione o boto Avanar.
Isso garante que o processo est configurado para exibir apenas os registros de telefone que
esto relacionados no arquivo de log clientes ativos na memria quando voc chamar o
procedimento.
10. Desmarque a caixa de fornecer um boto "Select" ( "Criar um boto" Select") e clique no boto
Avanar.
Uma vez que este procedimento no ser usado para consultar os dados que o operador deve
introduzir uma guia, o boto Select desnecessrio.
11. Vamos definir o controle boto de opo que deve o modelo de aplicao Uso ( "Que tipo de
controles vai usar o aplicativo?") Na barra de ferramentas ( "barra de ferramentas"), e clique no
boto Avanar.
12. Pressione o boto Finish para aceitar o padro da caixa Substituir procedimentos existentes (
"Substituir os procedimentos existentes").
295
296 CLARION 5 CLARION
Aprendiendo
14. escolha Executar projeto (ou pressione o boto Executar na barra de ferramentas).
Agora ele tem uma aplicao relacional completo com mltiplos sistemas para exibir o pai
listas de arquivos, criana verificao de arquivos limitados a registros ligados a um arquivo de
registro pai e integridade referencial cdigo para garantir que o banco de dados no registros
esto corrompidos com crianas "rfos".
Pressione o boto e adicionar novos registros de telefone celular para o arquivo para cada um
dos seus clientes.
15. Quando tiver terminado a explorar seu aplicativo, selecione Arquivo Sair para retornar ao
Clarion.
EuCONTEDO 297
16. Escolha Fechar arquivo ( "File: Close"), ou pressione o boto OK para fechar o Gerador de
Aplicativos.
297
298 CLARION 5 CLARION
Aprendiendo
H muito mais que isso pode ser feito no Editor de dicionrio para personalizar o trabalho de
assistentes. Aps a concluso deste curso, ver a Seco Optimizar os assistentes de Aplicao
Manual para mais informaes sobre este importante tema.
AppWizard produz aplicativos completos sobre as informaes fornecidas em resposta a uma srie de janelas
que vo Assistente pedindo informaes ao mesmo tempo.
299
300 CLARION 5 CLARION
Aprendiendo
12. escolha Executar projeto (ou pressione Run no boto da barra de ferramentas)
Agora voc pode explorar esta nova aplicao, e compar-lo com o j criado. Voc vai notar que
existem algumas pequenas diferenas entre os dois. Estas diferenas so devidas simplesmente
para construir a primeira aplicao de uma pea de cada vez, em vez de usar as aplicaes do
Assistente.
Que segue
Se voc pode fazer ambos os "atalhos" em Clarion, o que mais pode ser feito com todas as outras
ferramentas oferecidas?
Alm dos assistentes, Clarion tem um conjunto de ferramentas de produtividade no Gerador de
aplicaes, comeando com os modelos de controle, ramal e cdigo para adicionar mais
funcionalidades para o processo. Estas ferramentas tornam mais fcil de modificar e personalizar
os procedimentos tanto como assistentes e no requer escrever qualquer cdigo!
O prximo captulo deste livro a filosofia subjacente desenvolvimento Clarion. Ns sugerimos
que voc l-lo com cuidado. um importante apoio material, porque, como vimos, Clarion uma
ferramenta diferente de outro desenvolvimento. Clarion entender a filosofia ir torn-lo mais fcil
de traar a curva de aprendizagem.
O workshop sobre o Gerador de Aplicao est na seo de Aprendizagem Clarion. So
apresentados todas as ferramentas de Clarion, e tambm mostrar quanta energia estar disponvel
quando finalmente escrever algum cdigo fonte mesmo, para obter mais funcionalidade.
Por favor, v em frente. Ns mal arranhamos a superfcie, e h ainda mais!
- PANORAMA PROCESSO DE
DESENVOLVIMENTO
O Tao da Clarion
"Tao" significa "o caminho" em chins. Clarion uma forma completamente nova para criar
aplicaes do Windows. Assim demonstram os aplicativos que voc acabou de criar em cerca de
30 minutos! No entanto, Clarion vai muito alm de seus assistentes, ento agora dedicar algum
tempo para explicar os conceitos centrais por trs dessas ferramentas.
301
302 CLARION 5 CLARION
Aprendiendo
Nveis de abstrao
H um computador princpio indicando que quanto mais se afasta-se dos "ferros" mais produtivos
(cdigo binrio) pode ser.
Um pouco de histria
Os primeiros computadores foram programados em binrio, o que tornou muito difcil trabalhar o
programador. Ento veio a linguagem Assembly (ou "assemblia") que facilitou a tarefa, tornando
o cdigo pode ser lido em termos "humanos". Cada instruo de linguagem assembly produzido
apenas uma instruo para a mquina.
O mesmo processo repetido para criar a quarta gerao de linguagens (4GL) e Clarion. Por
exemplo, a linguagem Clarion automaticamente manipula todas as tarefas comuns do Windows
(como a tela redesenha), os programadores devem escrever pessoalmente em linguagens 3GL.
EuCONTEDO 303
Clarion, um programa clssico que diz apenas "Ol, mundo!" Leva apenas nove linhas de cdigo
fonte Enquanto em C / C ++ para ser escrito mais de oitenta!
Up, o mais geral o nvel de abstrao pode ser programador mais produtivo. Como voc subir o
nvel de abstrao, o trabalho do programador paga mais, desde que o computador cuida dos
aspectos de rotina, gerando o cdigo padro para tarefas comuns. Este o princpio fundamental
por trs do kit de ferramentas que tornam Clarion.
O segredo da produtividade.
O "problema" para operar em nveis mais altos de abstrao perder a flexibilidade para fazer as
coisas exatamente da maneira que quiser. Com Clarion, este problema resolvido.
O segredo da verdadeira produtividade sem perda de flexibilidade esta: voc sempre tem de
operar no maior nvel de abstrao possvel do trabalho feito, da maneira que voc deseja que seja
feito. barra de ferramentas jogo Clarion contm vrios nveis de abstrao, tornando mais fcil
para trabalhar com o melhor nvel para fazer exatamente o que precisa ser feito. Nunca se est
"preso" a um nvel elevado ou forados a "pegar" baixa. O kit de ferramentas gera cdigo Clarion
fonte, orientado a objetos, usando a biblioteca construo de aplicaes high-end (Application
Builder Class [ABC] Library) e, quando necessrio, pode adicionar seu cdigo em um nvel baixo,
para aumentar funcionalidade dos templates.
Em outras palavras, o segredo da produtividade trabalhar mais esperto, no mais difcil. Isto o
que Clarion permite: escrever o cdigo padro de modo que voc no deve escrev-lo
pessoalmente. Mas tem flexibilidade suficiente para voc adicionar todos os "sinos e assobios" que
voc quer (o que muito mais divertido).
Neste ponto, voc j trabalhou com nveis mais altos de abstrao Clarion: Assistentes. Mais tarde,
voc interage com a maioria dos seguintes (deixar os ttulos em Ingls, porque como a encontrar
os menus do programa):
editor de Dicionrio ( "Dicionrio Editor")
O dicionrio de dados o ponto central de armazenamento de todas as definies de arquivos
de dados e as configuraes padro para as configuraes de entrada de dados. Se h
necessidade de tomar essas definies de um arquivo de dados existente, o dicionrio pode
importar consultar o arquivo de dados em si.
Assistente de aplicao
AppWizard gera uma completa aplicao "standard" em questo de minutos, com base em
definies de dados e configuraes de dicionrio.
procedimento de Magos
Assistentes Procedimentos gerar procedimentos comuns (como listado para exibio ou de
entrada de dados -browse-- fichas) com base nas configuraes definidas no Dicionrio de
Dados.
303
304 CLARION 5 CLARION
Aprendiendo
Gerador de aplicao "controlado por modelos". Isso significa que ele uma ferramenta que
muda de acordo com o modelo de configuraes usado para gerar o cdigo. procedimento
modelos, controle e extenso de cdigo toda a linguagem Clarion voc escreve, dando um grande
impulso sua produtividade. modelos Clarion oferecem muitos dos benefcios de, especialmente a
programao reutilizao orientada a objeto e um conjunto de modelos padro gerados usando
verdadeira biblioteca orientada a objeto a construo de aplicaes high-end (Biblioteca ABC) de
cdigo. Isso faz com que os modelos em A verdadeira chave ofertas Rpido Desenvolvimento de
Aplicaes Clarion.
O que um modelo?
Clarion, um modelo no uma ferramenta de gerao de cdigo "de uso nico", que, em seguida,
voc deve tomar cuidado para manter (tais como os chamados "modelos" ou "modelos" em outros
idiomas), mas uma ferramenta interativa permanente solicitando a informao especfica
necessria para gerar o cdigo. Se voc alterar as informaes, escreva modelo de cdigo diferente
da prxima vez que voc criar o aplicativo. esta interatividade que permite uma manuteno
rpida de aplicaes.
modelos Clarion permitem inserir seu prprio cdigo fonte Clarion em qualquer um dos muitos
pontos de insero disponveis dentro de cada modelo. Isso torna desnecessrio manter o cdigo
gerado para modificar o comportamento do aplicativo. Ele tambm garante que h personalizaes
especiais sero substitudas na prxima vez que o cdigo fonte gerado: o modelo respeita o
inserido dentro de seu prprio cdigo. Esta facilidade de personalizao e adaptao dos modelos
faz com que a chave para a melhoria rpida das aplicaes.
305
306 CLARION 5 CLARION
Aprendiendo
modelos Clarion so modificveis. Voc tambm pode adicionar modelos de terceiros, ou voc
pode escrever seu, e alm deles, e, juntamente com os modelos originais. Isso faz com que a
ferramenta infinitamente extensvel Gerador de Aplicativos.
A maneira usual para personalizar ou modificar um procedimento est sendo executado uma das
ferramentas de design. designers de janela e relatrios so ferramentas de design visual para
trabalhar pelo mtodo de "point-and-click". Voc s deve assumir o controle de uma caixa de
ferramentas, clique para colocar o controle, e ento um clique com o boto direito de modificarle
propriedades.
Depois de ter criado um procedimento, voc tambm pode usar modelos de controle, extenso e
Cdigo para adicionar ainda mais funcionalidades. modelos de controle conter controles e gerar
todas as informaes necessrias para usar e manter o cdigo executvel. Todos os controles pr-
configurados que aparecem em projetos padro modelos janelas em procedimentos so realmente
controlar modelos que executam todas as funes necessrias.
modelos de extenso adicionar cdigo executvel que aumenta a funcionalidade do processo. Cada
um oferece instrues na tela sobre quais os dados que devem fornecer o programador para
incorporar a funcionalidade do modelo de aplicativo.
Clarion tem uma grande variedade de modelos padro para ajud-lo a desenvolver aplicaes
rapidamente. Assim como Cursilho para um captulo de incio rpido introduziu os participantes, o
workshop sobre Aplicaes Builderseo dois este manual lhe ensina como utilizar modelos
Clarion para produzir qualquer aplicativo do Windows que voc precisa.
EuCONTEDO 307
307
308 CLARION 5 CLARION
Aprendiendo
Esta seco fornece uma descrio de cada ferramenta, a fim de que um programador tpico
usando o Gerador de Aplicativos poderia encontr-los. Cada ferramenta contm caixas de dilogo
que enchiam o programador para indicar a funcionalidade do aplicativo para o Gerador de
Aplicao. Quando voc quiser, o Gerador de Aplicao gera a fonte especificada, e Sistema de
projetos compila e linkea para transform-lo em um programa executvel.
EuCONTEDO 309
programa Clarion , de vrias maneiras, uma jornada pessoal atravs de uma srie de caixas de
dilogo. No h nenhuma sequncia obrigatria a ser seguido; mas eu ter preenchido alguns, um
pr-requisito para alcanar outros.
editor de Dicionrio
Dicionrio de Dados (um arquivo .dct), mantido pelo editor do dicionrio. Aqui est uma
descrio do banco de dados, que inclui arquivos, chaves, ndices, motoristas, as relaes entre os
arquivos, campos, regras de validao de campo, restries de integridade referencial, e
armazenado. Este o primeiro arquivo que voc cria ao projetar um aplicativo.
Voc pode criar arquivo de definies "do zero", ou podem ser importados definies de arquivos
de dados existentes. Se voc possui a edio Enterprise, voc pode usar o dicionrio sincronizador
para coordenar um dicionrio de Clarion dicionrio de dados motor de SQL. Isso permite que voc
tomar uma vez arquivo a partir de um banco de dados SQL (que elimina um monte de trabalho) e
dicionrio de dados mantendo Clarion permanentemente coordenado com o ambiente SQL
RDBMS todas as definies, independentemente das mudanas feitas pelo Gerentea base Dados
SQL.
Gerador de aplicao
Generator aplicao gera o cdigo fonte da aplicao, um processo de cada vez, com base em
modelos que escolheram o registro modelo. Ele permite que voc adicionar variveis de memria
global e local, e procedimentos de adaptao com ferramentas de design visual e cdigo fonte
inseridos.
Designer do Windows
Aqui realizada o design visual de todas as janelas e controles da aplicao (tudo que voc v o
usurio final). gera automaticamente o cdigo-fonte para os elementos que voc projeta
visualmente na tela.
309
310 CLARION 5 CLARION
Aprendiendo
Report Designer
Report Designer trabalha com o Gerador de Aplicativos em uma janela de designer de moda muito
semelhantes. O programador simplesmente colocar controles em uma pgina do relatrio. Em
tempo de execuo, o mecanismo de relatrios processa registros, manipulao de todo o
gerenciamento de pginas impressas, a diviso de dados em grupos, cabealhos e rodaps, como
especificado.
editor de texto
O Editor de Texto um editor de programao totalmente funcional que pode ser usado para
escrever o cdigo fonte de seu aplicativo precisa. As chances so de que, usando Application
Builder, use o editor de texto para criar o cdigo-fonte embedded, personalizar o funcionamento
do processo. Ou, ainda, voc pode criar aplicaes completas "do zero" (se voc realmente quer ter
todo o trabalho).
cores editor de texto destacado por diferentes partes da sintaxe, tornando mais fcil para identificar
as diferentes partes da linguagem Clarion, ler e modificar. Ele tambm tem plena capacidade de
procurar e substituir, alm das ferramentas usuais para edio.
O editor de Frmula
O Editor de Frmula ajuda a gerar e gerenciar frmulas simples ou complexas baseadas em todos
os tipos de expresses matemticas ou alfanumricos. O Editor de Frmula oferece verificao de
sintaxe, e acesso imediato a todas as variveis, funes e operadores, para que as frmulas gerados
so sempre sintaticamente correto.
Sistema de projetos
Generator aplicao cria automaticamente os aplicativos arquivo de projeto (.PRJ). Este arquivo
contm opes para compilao e ligada a, como se para incluir o cdigo para depurao, opes
de otimizao, arquivos externos, arquivos de origem, bibliotecas e outros arquivos a serem
includos no processo de compilao e de cdigo linkeado.
lavadores
Depurao de um programa normalmente requer a execuo de um programa e ir vrias vezes
parando em vrios pontos na sua execuo para examinar o valor de diferentes variveis para
determinar a causa de erros lgicos que possa ter. Purificadores (depuradores) Clarion (ambos 16 e
32 bit) tm vrias janelas que exibem o cdigo fonte, o contedo das variveis, os processos
activos, e mais.
H trs oficinas sobre o uso de purificadores contidas no Guia do Usurio. Recomendamos estudar
depois de concluir todos os cursos neste livro.
ajuda on-line
EuCONTEDO 311
Clarion oferece um extenso contexto ajuda online sensvel, a partir de praticamente qualquer tela.
Um clique no boto Ajuda ou pressione F1.
Sistema de Ajuda Online Clarion inclui um arquivo de ajuda principal e arquivos auxiliares. Voc
pode olhar para os arquivos online usando palavras-chave e utilizando um ndice. Para procurar os
arquivos de suporte, abri-los diretamente do Windows Explorer ou o Gerenciador de programas.
311