4D v14.3

Construindo uma aplicação 4D

Página Inicial

 
4D v14.3
Construindo uma aplicação 4D

Construindo uma aplicação 4D  


 

 

Uma aplicação é um banco de dados projetado para preencher uma necessidade específica. Ela tem uma interface projetada especificamente para facilitar a sua utilização. As funções que um aplicativo executa são limitadas àquelas adequadas à sua finalidade. Criar aplicações com 4D é mais suave e mais fácil do que com a programação tradicional. 4D pode ser usada para criar uma variedade de aplicações, incluindo:

  • Um sistema de faturação
  • Um sistema de controle de estoque
  • Um sistema de contabilidade
  • Um sistema de folha de pagamento
  • Um sistema de recursos humanos
  • Um sistema de acompanhamento ao cliente
  • Um banco de dados compartilhado através da Internet ou Intranet

É possível que um único aplicativo poderia até mesmo incluir todos esses sistemas. Aplicações como essas são usos típicos de bancos de dados. Além disso, as ferramentas em 4D permitem criar aplicações inovadoras, tais como:

  • Um sistema de rastreamento de documento
  • Um sistema de gestão da imagem gráfica
  • Uma aplicação de publicação de catálogo
  • Um sistema de controle e monitoramento de um dispositivo serial
  • Um sistema de correio eletrônico (e-mail)
  • Um sistema de programação multi-usuário
  • Uma lista como uma lista de menu, videoteca, ou coleção de música

Uma aplicação normalmente pode começar como um banco de dados usado no ambiente de Design. O banco de dados "evolui" para uma aplicação, pois é personalizado. O que diferencia uma aplicação é que os sistemas necessários para gerenciar o banco de dados são escondidos do usuário. Gestão de dados é automatizada, e os usuários usam os menus para realizar tarefas específicas.

Quando você usa um banco de dados 4D no ambiente de design, você deve saber os passos a serem dados para alcançar um resultado. Em um aplicativo, você pode usar o ambiente de aplicativo, que você precisa para gerenciar todos os aspectos que são automáticos no ambiente de design. Isto inclui:

  • Tabela de Navegação: A janela de Lista de tabelas, o comando Últimas tabelas utilizadas ou os botões de navegação não estão disponíveis para o usuário. Você pode usar comandos de menu e métodos para controlar a navegação entre as tabelas.
  • Menus: no ambiente de aplicação, você só tem o menu Arquivo padrão com o comando de menu Sair, no menu Editar, o modo e o menu Help (assim como o menu de aplicações sob Mac OS). Se o aplicativo requer mais menus, você tem que criar e gerenciá-los usando métodos 4D ou ações padrões.
  • Editores: Os editores, como os editores de Query e Order by, já não estão automaticamente disponíveis no ambiente de aplicação. Se você quiser usá-los, você tem que chamá-los através de métodos 4D.

As seções a seguir incluem exemplos que mostram como a linguagem pode automatizar o uso de um banco de dados.

Menus personalizados são a principal parte da interface de uma aplicação. Eles tornam mais fácil para que os usuários aprendam a usar um banco de dados. Criar menus personalizados é muito simples, você associa métodos ou ações automáticas a cada comando de menu (também chamados de itens de menu) no editor de Menu.

A seção "Perspectiva do usuário" descreve o que acontece quando o usuário escolhe um comando de menu. Em seguida, "Por trás das câmeras", descreve o trabalho de design que fez isso acontecer. Embora o exemplo seja simples, ele deve demonstrar clararamente como menus personalizados do banco de dados tornam o aplicativo mais fácil de usar e aprender. Mais do que o "genérico" de ferramentas e comandos de menu no ambiente de design, o usuário só vê as coisas que são adequadas para suas necessidades.

O usuário escolhe um item de menu chamado Criar , a partir do menu Pessoas , para adicionar uma nova pessoa ao banco de dados.

O formulário de entrada para a tabela Pessoas é exibido.

O usuário digita o nome da pessoa e, em seguida, passa ao próximo campo.

O usuário digita o sobrenome da pessoa e, em seguida, passa para o próximo campo.

O usuário passa para o campo seguinte: o sobrenome é convertido em maiúsculas.

O usuário termina de inserir o registro e clica no botão de validação (geralmente o último botão na barra de botões).

Outro registro em branco aparece, e o usuário clica no botão Cancel (aquele com o "X") para encerrar o "ciclo de entrada de dados." O usuário é retornado para a barra de menu.

A barra de menu foi criada no ambiente de design, usando a barra de menu Editor.

O novo item de Novo tem um método de projeto chamado Nova pessoa. Este método foi criado no ambiente de design, usando o editor de método.

Quando o usuário escolhe esse item, o método Nova pessoa é executado:

 Repeat
    ADD RECORD([Pessoas])
 Until(OK=0)

O loop  com um comando ADD RECORD dentro do loop funciona como o item de menu Novo Registro  no ambiente de design. Ele exibe o formulário de entrada para o usuário, de modo que ele ou ela pode adicionar um novo registro. Quando o usuário salva o registro, outro novo registro em branco aparece. Este loop ADD RECORD continua a executar até que o usuário clique no botão Cancelar.

Quando um registro é inserido, ocorre o seguinte:

  • Não existe um método para o campo Nome, então nada é executado.
  • Existe um método para o campo Sobrenome. Este método do objeto foi criado no ambiente de design, utilizando os editores de formulário e de método. O método executa:
 [Pessoas]Sobrenome:=Uppercase([Pessoas]Sobrenome)

Esta linha converte o campo Sobrenome em caracteres maiúsculas.

Depois que um registro foi inserido, quando o usuário clique no botão Cancelar para o próximo, a variável OK está definido como zero, terminando assim a execução do loop ADD RECORD.

Como não há mais declarações a serem executadas, o método Nova pessoa pára a execução e retorna o controle para a barra de menu.

Vamos comparar a forma como uma tarefa é executada no ambiente Design e a forma como a mesma tarefa é realizada por meio da linguagem. A tarefa é muito comum:

  • Encontrar um grupo de registros
  • Ordená-los
  • Imprimir um relatório

A próxima seção, "Usando um banco de dados no ambiente de desenho", exibe as tarefas executadas no ambiente de desenho.

A seção seguinte, "Usando editores built-in dentro do ambiente de aplicações", apresenta as mesmas tarefas realizadas em um aplicativo.

Note que, embora ambos os métodos executem a mesma tarefa, os passos na segunda seção são automatizados usando a linguagem.

O usuário escolhe Buscar>Buscar... no menu Registros.

O editor de consultas é exibido.

O usuário digita os critérios e clica no botão Consulta. A pesquisa é realizada.

O usuário escolhe  Ordenar no menu Registros.



Aparece o editor Ordenar.

O usuário digita os critérios e clica no botão Ordenar. A classificação é realizada.

Então, para imprimir os registros, etapas adicionais são necessárias: 

  • O usuário escolhe Imprimir no menu Arquivo.
  • A caixa de diálogo Imprimir formulário é exibida, porque os usuários precisam saber que fazem a impressão.
  • As caixas de diálogo de impressão são exibidas. O usuário escolhe as configurações, e o relatório é impresso.

Vamos analisar como isso pode ser realizado no ambiente da aplicação..

O usuário escolhe o menu Relatório do menu Pessoas.

Mesmo neste momento, utilizar uma aplicação é mais fácil para os usuários, eles não precisam saber que a consulta é o primeiro passo!

Um método chamado o Meu Relatório é anexado ao comando do menu, que se parece com isso:

 QUERY([Pessoas])
 ORDER BY([Pessoas])
 FORM SET OUTPUT([Pessoas];"Relatório")
 PRINT SELECTION([Pessoas])

A primeira linha é executada:

 QUERY([Pessoas])

O editor de consultas é exibido.

O usuário digita os critérios e clica no botão Buscar. A consulta é realizada.

A segunda linha do método Meu Relatório é executado:

 ORDER BY([Pessoas])

Note que o usuário não precisa saber que a ordenação dos registros foi o próximo passo.

Aparece o editor Ordenar.

O usuário digita os critérios e clica no botão Ordenar. A classificação é realizada.

A terceira linha do método Meu Relatório é executada:

 FORM SET OUTPUT([Pessoas];"Relatório")

Mais uma vez, o usuário não precisa saber o que fazer a seguir, o método cuida disso.

A última linha do método de Meu Relatório é executada:

 PRINT SELECTION([Pessoas])

As caixas de diálogo de impressão são exibidas. O usuário escolhe as configurações, e o relatório é impresso.

Os mesmos comandos usados no exemplo anterior pode ser usado para automatizar ainda mais o banco de dados.

Vamos dar uma olhada na nova versão do método Meu Relatório.

O usuário escolhe o menu Relatório do menu Pessoas. Um método chamado Meu Relatório2 está ligado ao comando de menu. É parecido com este:

 QUERY([Pessoas];[Pessoas]Empresa="Acme")
 ORDER BY([Pessoas];[Pessoas]Sobrenome;>;[Pessoas]Nome;>)
 FORM SET OUTPUT([Pessoas];"Relatório")
 PRINT SELECTION([Pessoas];*)

A primeira linha é executada:

 QUERY([Pessoas];[Pessoas]Empresa="Acme")

O editor de consultas não será exibido. Em vez disso, a consulta é especificada e executada pelo comando QUERY. O usuário não precisa fazer nada.

A segunda linha do método Meu Relatório2 é executado:

 ORDER BY([Personas];[Personas]Apellido;>;[Personas]Nombre;>)

O editor de consultas não será exibido, e a Ordenação será realizada imediatamente. Mais uma vez, não é exigida nenhuma ação do usuário.

As linhas finais do método Meu Relatório2 são executadas:

 FORM SET OUTPUT([Pessoas];"Relatório")
 PRINT SELECTION([Pessoas];*)

As caixas de diálogo de impressão são exibidas. O comando de PRINT SELECTION aceita um asterisco opcional (*) parâmetro que instrui o comando a usar as configurações de impressão que estavam em vigor quando o modelo de relatório foi criado. O relatório é impresso.

Esta automação adicional salvou o usuário de ter de entrar em três opções de caixas de diálogo. Aqui estão os benefícios:

  • A consulta é executada automaticamente: os usuários podem selecionar os critérios errados ao fazer uma consulta.
  • A ordenação é executada automaticamente: os usuários podem selecionar os critérios errados ao definir uma classificação.
  • A impressão é executada automaticamente: os usuários podem selecionar a forma errada de impressão.

Como você desenvolve uma aplicação 4D, você vai descobrir muitos recursos que você não notou quando você começou. Você pode até mesmo aumentar a versão standard de 4D, acrescentando outras ferramentas e plug-ins para o seu ambiente de desenvolvimento 4D

4D fornece vários plug-ins que podem ser usados para aumentar as capacidades das suas aplicações 4D.

  • 4D Write: processador de texto
  • 4D View: Planilha e Editor de Lista 
  • 4D Internet Commands (integrado): utilitários de comunicação via Internet.
  • 4D ODBC Pro: Conectividade via ODBC
  • 4D for OCI: Conectividade com o Oracle Call Interface
  • 4D Open for Java: Conectividade com aplicações Java
  • 4D Open for 4D: Conectividade (de 4D a 4D) para a construção de sistemas de informação distribuídos 4D.

Para mais informações, contate 4D ou seus parceiros. Visite nossos sites:

Brasil:
http://www.4d.com/br

América Latina e Espanha:
http://www.4d.com/la

EUA e Internacional:
http://www.4d.com

Há uma comunidade 4D muito ativa em todo o mundo, composta por grupos de usuários, Fóruns eletrônicos, e 4D Partners. 4D Partners produzem ferramentas de terceiros. Você pode se inscrever no fórum de usuário 4D, no seguinte endereço: 

http://forums.4D.fr

A comunidade 4D oferece acesso a dicas e truques, soluções, informações, e ferramentas adicionais que vai lhe economizar tempo e energia, e aumentar a sua produtividade-

 
PROPRIEDADES 

Produto: 4D
Tema: Introdução

 
ARTICLE USAGE

Manual de linguagem 4D ( 4D v14 R3)
Manual de linguagem 4D ( 4D v14 R2)
Manual de linguagem 4D ( 4D v14.3)
Manual de linguagem 4D ( 4D v14 R4)

Inherited from : Construindo uma aplicação 4D ( 4D v12.4)