software‎ > ‎módulos‎ > ‎engine‎ > ‎artigos‎ > ‎

conceitos do engine

UNUMjavascript objects

DataSet

O objeto DataSet armazena resultados de consultas na memória e têm campos de informações em vários registros, de forma similar a uma tabela de banco de dados. Ele é o objeto mais importante de uma aplicação empresarial, pois toda a manipulação de dados acontece através dele.

Ele permite que o desenvolvedor navegue através dos resultados, indexe-os, salve-os em disco ou realize outras diversas ações com o máximo de performance.

Algumas das principais características deste método são:
  • Acesso direto aos campos e informação, não precisando chamar qualquer método especial para adquirir a referência de campo. Esta transformação do fieldName em fieldReference acontece internamente e é otimizada na execução do token do UNUMjavascript, de forma rápida e fácil. O exemplo seguinte colocará o valor do campo de fieldName do registro atual do DataSet ds na variável finalValue (para os exemplos seguintes, ds é um objeto do tipo DataSet):
  • var finalValue = ds.fieldname
  • Suporte a índices dinâmicos e cruzados. O exemplo a seguir criará, dinamicamente, o índice de deliveryDate e o Código do País de uma pessoa cujo índice ainda não exista:
  • ds.indexFieldNames = 'deliveryDate;person.country.code'
  • Operações de soma. O exemplo seguinte criará um novo DataSet baseado em uma soma do campo 'invoiceTotal', agrupado pelo Código do País de uma pessoa no DataSet ds.
  • dsSum = ds.sum( 'person.country.code', 'invoiceTotal')
  • Buscas inexatas. O exemplo a seguir tentará encontrar 'Katarenna' nos campos 'Name' e 'City' do DataSet ds. Se a busca retornar um resultado, a variável found será true; caso não encontre, a variável será false.
  • found = ds.locatePattern( 'Name;City', 'Katarenna', 'and')
  • Outros métodos e propriedades do objeto DataSet são:setRange, filter, classFilter, bof, eof, next(), prior(), first(), last(), recno, recordCount, isEmpty, find(), findNearest(), locate(), bookmark, saveToStream(), loadFromStream(), applyUpdates(), rollBack(), cancelUpdates(), createField() etc.

Outros objetos

Session, Request, Response (especificamente para o Servidor HTTP) Scheduler (script scheduler) Mail (composição de e-mail) FileStream (acesso ao sistema de arquivo de sistema) SerialPortStream (acesso a portas seriais) Spool (crie modelo ou texto em formato para impressão) Log (arquivo de informações de log) GenericBarCodeScanner (driver interno para um scanner de código de barra serial).



UNUMuserinterfaceObjects

Os UNUMuserInterfaceObjects controlam configurações de skin e códigos HTML para as interfaces da aplicação e para os relatórios.

Gerador de relatórios

  • Cria código HTML puro;
  • Cabeçalhos e rodapés são corretamente impressos nas quebras de página;
  • Suporte para skin por relatório ou empresa;
  • Permite a inserção de conteúdo de HTML, mas não exige que o desenvolvedor utilize isto;
  • Código extremamente otimizado, permitindo o máximo controle na execução de loops de impressão.

Interface

  • Páginas e interações: Todas as interfaces de interações são feitas pelo mecanismo de Página/Interação. A página é um objeto definido em um script especial (mimetype de "application/x-page"), onde uma ou várias interações estão definidas. As marcas de interação são os locais onde o usuário escolhe navegar. Em cada interação pode-se escrever objetos de interface para o browser. Quando isto acontece, o usuário de browser pode interagir de forma transparente com os objetos de interface.
  • Grades: As variáveis Grids e DataSet Grids são os principais objetos de interface, responsáveis por obter entradas de dados ou datasets. As entradas de dados permitem uma validação automática. Os DataSet Grids permitem visualizar as informações em forma de tabela, com vários registros sendo mostrados ou em formulário, mostrando um registro por vez.
  • Speed Fill: São usados nas grades e permitem que os usuários tenham acesso rápido a um help de informações das tabelas relacionadas. Eles são os grandes responsáveis pelo ganho de produtividade dos usuários.
  • Árvore de navegação: mostra a árvore de classes pela qual o usuário poderá navegar.
  • Links, ações e eventos: cria links para outras interações/páginas ou dispara um evento na interação corrente.
  • Labels: cria strings estáticas.