BRPI0609335A2 - aplicações modulares para sistema móvel de dados - Google Patents
aplicações modulares para sistema móvel de dados Download PDFInfo
- Publication number
- BRPI0609335A2 BRPI0609335A2 BRPI0609335-3A BRPI0609335A BRPI0609335A2 BR PI0609335 A2 BRPI0609335 A2 BR PI0609335A2 BR PI0609335 A BRPI0609335 A BR PI0609335A BR PI0609335 A2 BRPI0609335 A2 BR PI0609335A2
- Authority
- BR
- Brazil
- Prior art keywords
- data
- application
- specified
- objects
- application server
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/20—Software design
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/25—Integrating or interfacing systems involving database management systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/25—Integrating or interfacing systems involving database management systems
- G06F16/256—Integrating or interfacing systems involving database management systems in federated or virtual databases
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/565—Conversion or adaptation of application format or content
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Software Systems (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Business, Economics & Management (AREA)
- Entrepreneurship & Innovation (AREA)
- Human Resources & Organizations (AREA)
- Economics (AREA)
- Strategic Management (AREA)
- Data Mining & Analysis (AREA)
- Operations Research (AREA)
- Game Theory and Decision Science (AREA)
- Educational Administration (AREA)
- Marketing (AREA)
- Development Economics (AREA)
- Quality & Reliability (AREA)
- Tourism & Hospitality (AREA)
- General Business, Economics & Management (AREA)
- Information Transfer Between Computers (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Mobile Radio Communication Systems (AREA)
- Communication Control (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
Abstract
APLICAçõES MODULARES PARA SISTEMA MóVEL DE DADOS. Seqüências operacionais de um sistema de integração de dados móvel incluem módulos operacionais, também denominadas aplicações transportáveis ("TransApps"), que são autónomas e capazes de serem unidas com outras seqUências operacionais e TransApps. Cada módulo operacional pode aceitar dados de entrada e pode gerar dados de saida. Os dados de entrada podem ser recebidos de outros módulos ou do usuário de aplicação, ou de fontes de dados de empresa. Os dados de saída podem ser fornecidos a outros módulos, ou ao servidor de aplicação (para fontes de dados de empresa), ou podem ser fornecidos para display no próprio dispositivo de computação móvel. Módulos podem ser definidos para fins de soluções de problema especificas, e tais módulos de solução de problema podem ser reutilizados durante outros esforços de desenho de aplicação. Isso suporta a reutilização de soluções anteriores para problemas.
Description
APLICAÇÕES MODÜLARES PARA SISTEMA MÓVEL DE DADOS
REFERÊNCIA A DOCUMENTOS DE PRIORIDADE
O presente pedido reivindica beneficio deprioridade de; pedido de patente provisional US número desérie 60./664.121 intitulado "Data Management for Mobiledata system", de Robert O'Farrell e outros, depositado em21 de março de 2005; pedido de patente provisional UScopendente número de série 60/664.088 intitulado "ModularApplications for Mobile data system," por Robert Loughan,depositado em 21 de março de 2005; pedido de patenteprovisional US copendente número de série 60/664.122intitulado "Adapter architecture for mobile data system",por Robert O'Farrell e outros, depositado em 21 de março de2005; e pedido de patente provisional US copendente númerode série 60/667.816 intitulado "Modular ApplicationsManagement for mobile data system", por Robert O'Farrell eoutros, depositado em Io de abril de 2005. A prioridade dasrespectivas datas de depósito é pela presente reivindicada,e as revelações desses pedidos de patente provisionais sãopela presente incorporadas a titulo de referência.
AVISO DE DIREITOS AUTORAISUma parte da revelação desse documento de patentecontém material que está sujeito à proteção de direitosautorais. O proprietário de direitos autorais não fazobj eção à reprodução por fax por qualquer pessoa, dodocumento de patente ou revelação de patente conformeconsta no depósito ou registros de patente do Departamentode Patentes e Marcas Registradas dos Estados Unidos daAmérica, porém reserva de outro modo todos os direitosautorais.
ANTECEDENTES
1. Campo da InvençãoA presente invenção refere-se genericamente asistemas de computação móveis e, mais particularmente, agerenciamentos de dados e uso de dados em sistemas decomputação móveis.
2. Descrição da técnica relacionada
Sistemas de gerenciamento de relação de cliente(CRM) e planejamento de recursos de empresa (ERP),sofisticados, são disponíveis para melhorar a automatizaçãode processos de back office e de front office. Emboramuitas companhias tenham realizado significativas economiase eficiências a partir do uso de tais sistemas, éverdadeiro também que muitas organizações acham que ossistemas são incômodos de implementar e dificeis deintegrar com sistemas de dados de legado existentes.
Mais recentemente, organizações comerciais eempresas estão usando sistemas CRM e ERP para auxiliar osfuncionários móveis, principalmente a utilizar dispositivosde computação móveis como pagers e telefones celulares etambém assistentes pessoais digitais (PDAs). Um impedimentoimportante para maior adoção de sistemas CRM e ERP queempregam tais dispositivos móveis, envolve a integração cómoutros dados na empresa.
As questões de integração de dados de empresapodem se originar porque as aplicações móveisfreqüentemente vêm em arquiteturas fechadas, depropriedade, que impedem integração com outros sistemas dedados da empresa. Por exemplo, dados na empresa poderiamser mantidos em quatro ou cinco fontes diferentes. Algumasdas fontes de dados incluem sistemas CRM, sistemas dedespacho, sistemas ERP, e sistemas de registrosfinanceiros. Cada uma dessas fontes de dados pode utilizaruma arquitetura de dados diferentes, formato e protocolo.Os dados sendo armazenados e a configuração dos dados emecanismos de acesso estão constantemente mudando. Muitossistemas de computação móveis criam um armazenamento dedados interino no qual dados a partir de várias fontes naempresa são coletados. Desse modo, dados a partir dediferentes fontes de dados de empresa, cada com umaarquitetura e formato de dados diferentes, podem sercoletados em um único banco de dados comum. Os usuáriosmóveis podem acessar os dados de empresa acessando oarmazenamento de dados interino, em vez das fontes de dadosde empresa efetivas. 0 armazenamento interino, entretanto,cria questões de conflito e atualização de dados próprios.
As operações de sincronização e outras proteçõesdevem ser executadas freqüentemente, para assegurar que osdados no armazenamento de dados interino são uma cópia fieldos dados nas fontes de dados de empresa.
É conhecida a provisão de uma solução deintegração de dados que pode utilizar dispositivos decomputação móveis que realizam a interface com fontes dedados de empresa através de um servidor de rede. Talsistema é descrito no pedido de patente US número de série10/746.229 depositado em 23 de dezembro de 2003 cedida aDexterra, Inc., de Bothell, Washington, EUA. 0 teor dessepedido é incorporado aqui a titulo de referência.
O pedido de patente de Dexterra, Inc. descreve umsistema no qual dados são utilizados entre múltiplas fontesde dados de empresa para clientes móveis em um mododistribuído de tal modo que solicitações de um clientemóvel para os dados de empresa sejam recebidas, as fontesde dados de empresa apropriadas contêm os dados solicitadossão determinadas, e os dados de empresa são recuperados dasfontes de dados de empresa, determinadas. Quando os dadosde empresa são recuperados, os mesmos são convertidos em umformato relacionai, mesmo se os dados vêm de múltiplasfontes de dados de empresa de diferentes tipos nãorelacionais (por exemplo, Sistema de Arquivo, e-mail,etc. ) . Os dados de empresa convertidos são armazenados emum armazenamento de dados relacionai no cliente móvel.
Desse modo, aplicações móveis podem ser totalmente
integradas com dados a partir de múltiplas fontes de dadosde empresa e atualizações de dados e alterações deconfiguração podem ser distribuídas para e a partir declientes móveis em tempo real, sem utilizar armazenagem de dados interina, e desse modo evitando questões de dados
assincronos e sincronização completada entre as fontes dedados de empresa e os clientes móveis. As alterações dedados em tempo real podem incluir uso de alterações naprópria aplicação móvel, bem como atualizações de dados. As alterações em tempo real são. adicionalmente acomodadas cómdetecção de conflito de dados e resolução.
Ferramentas são fornecidas com as quais osdesenvolvedores podem definir aplicações móveis que gerarãouma série de janelas de tela de display de PDA de tal modoque usuário de aplicação avance em um modo ordenado dejanela para janela. Desse modo, a aplicação mostra promptao usuário para dados que necessita para operaradequadamente, e o desenvolvedor de aplicação está livrepara moldar uma seqüência lógica de operações que se adequará às finalidades em mão. Tais ferramentas de desenhosão de grande auxilio para os desenvolvedores, e tambémpara administradores de aplicação, que desejam modificar aoperação de seu sistema à medida que suas necessidades sealteram.
No sistema da Dexterra, Inc. mencionado acima,ferramentas são fornecidas para os desenvolvedoresdefinirem aplicações móveis que compreendem uma série deusuário de aplicação avance em um modo ordenado de janelapara janela. À medida que dados são inseridos e asrespostas são fornecidas em uma janela, a aplicação móvelexibirá uma janela seguinte na seqüência de operações. Aseqüência de janelas compreendendo a aplicação é mencionadacomo um "fluxo de força'7. Em qualquer janela individual nofluxo de força, uma resposta de usuário poderia resultar nodisplay de uma caixa de diálogo ou janela de entrada dedados. Um usuário pode fornecer dados que são relacionadosà janela de fluxo de força a partir da qual a caixa dediálogo foi gerada. Múltiplas caixas de diálogo podem serexibidas, para prompt o usuário de aplicação para a entradade respostas e dados apropriados, antes do reinicio daseqüência de j anelas de fluxo de força. Diz-se que taisdesvios temporários do fluxo de força compreendem um "fluxode campo". Após o desenvolvedor definir um complementocompleto displays de fluxo de campo e fluxo de força, osmesmos podem ser unidos para fornecer a aplicação móveldesejada.
0 uso e manutenção de tais sistemas de integraçãode dados móveis seriam tornados ainda mais convenientes senovas aplicações pudessem ser desenvolvidas maisrapidamente e com menos esforço. A presente invenção proveessas características.
SUMÁRIO
De acordo com a invenção, seqüências operacionaisdo sistema de integração de dados móveis são suportadas detal modo que tais seqüências operacionais compreendammódulos operacionais, também denominados aplicaçõestransportáveis ("TransApps"), que são autônomas e capazesde serem unidas com outras seqüências operacionais eTansApps. Cada módulo operacional pode aceitar dados dêentrada e pode gerar dados de salda. Os dados de entradapodem ser recebidos de outros módulos, ou a partir dousuário de aplicação, ou de fontes de dados de empresa. Osdados de saida podem ser fornecidos a outros módulos, ou aoservidor de aplicação (para fontes de dados de empresa) oupodem ser fornecidos para display no próprio dispositivo decomputação móvel. Desse modo, módulos podem ser definidospara fins de soluções de problemas específicos, e taismódulos de solução de problemas podem ser reutilizadosdurante outros esforços de desenho de aplicação. Dessemodo, soluções anteriores para problemas podem serutilizadas repetidamente, e o conhecimento e experiênciaobtidos de uma comunidade de usuários podem ser exploradospara maior alavancagem, desse modo aumentando a eficiênciade sistemas de integração de dados móveis.
Outras características e vantagens da presenteinvenção devem ser evidentes a partir da seguinte descriçãoda modalidade preferida, que ilustra, como exemplo, osprincípios da invenção.
BREVE DESCRIÇÃO DOS DESENHOS
A figura 1 é um diagrama de blocos de um ambientede sistema de computador apropriado para uma plataforma deempresa móvel construída de acordo com a presente invenção.
A figura 2 é um diagrama de blocos da arquiteturalógica de dados na plataforma de empresa móvel ilustrada nafigura 1.
A figura 3 é um diagrama de blocos que ilustra ainterface de Conector entre as fontes de dados de empresa eo cliente móvel da figura 1.
A figura 4 é uma ilustração diagramática dosfluxos de força e fluxos de campo a partir dos quais umaaplicação de dados móveis de acordo com a presente invençãopode ser construída.A figura 5 ilustra uma foto de tela de uma janelade display de interface de usuário gráfico para o programado projetista de aplicação de DAD.
A figura 6 é um exemplo de uma foto de tela deeditor de coleção.
A figura 7 é uma foto de tela exemplar de umeditor de Obj eto comercial do programa de projetista deaplicação DAD para uso com coleções de objetos comerciaispara TransApp.
A figura 8 mostra que a interface de proj etistade Fluxo de força permite que um usuário DAD acrescente eedite as operações a serem executadas por um fluxo deforça.
A figura 9 mostra um display de editor de coleçãode fluxo de força que um usuário DAD pode utilizar paravisualizar membros de coleções de fluxo de força eselecionar quaisquer fluxos de força de interesse paravisualização e manipulação.
A figura 10 mostra um display de Editor deColeção de Item de Menu que um usuário DAD pode utilizarpara adicionar um item de menu a uma folha de fluxo deforça.
A figura 11 mostra um display de Editor deColeção de Botão de Barra de ferramentas que um usuário DADpode utilizar para adicionar um botão de barra deferramentas a uma folha de fluxo de força.
A figura 12 mostra um display de Editor deMapeamento que um usuário DAD pode utilizar paraespecificar mapeamentos de dados.
A figura 13 é um diagrama de fluxo que ilustraoperações executadas por um sistema de computador naexecução de um módulo de aplicação transportável de acordocom a presente invenção.DESCRIÇÃO DETALHADA
Em um sistema de integração de dados móvel, deacordo com a invenção, aplicações móveis podem serespecificadas pela definição de displays de fluxo de campoe fluxo de força, e também pela especificação de um ou maismódulos operacionais, também denominados aplicaçõestransportáveis ("TransApps"). Os módulos operacionais sãoautônomos e são capazes de serem ligados por metadados aoutros módulos operacionais e a fluxos de campo e fluxos deforça individuais. Os detalhes dos módulos operacionaisserão fornecidos abaixo em maior detalhe, após descrição daconfiguração geral do sistema.
I. VISÃO GERAL DO SISTEMA
A presente invenção prove um sistema no qualdados são utilizados a partir de múltiplas fontes de dadosde empresa para clientes móveis executando aplicaçõesmóveis de tal modo que as aplicações móveis são integradascom as múltiplas fontes de dados de empresa, e atualizaçõesde dados e alterações de configuração podem serdistribuídas para e recebidas a partir de clientes móveisem tempo real, sem utilizar armazenagem interina de dados.A eliminação de uma instalação de armazenagem interina dedados evita questões de dados assincronos e sincronizaçãocomplicada entre as fontes de dados de empresa e osclientes móveis. Desse modo, atualizações de dados eatualizações de configuração do sistema para a aplicaçãomóvel podem ser comunicadas a partir da empresa para osclientes móveis, e a partir dos clientes móveis para aempresa, em tempo real. Nenhuma operação de sincronizaçãoespecial é necessária, visto que as alterações podem serpropagadas através do sistema em tempo real.
II. PLATAFORMA DO SISTEMAA figura 1 é um diagrama de blocos de um ambientede sistema de computador apropriado 100 construído comodescrito no pedido de patente da Dexterra, Inc., acimareferenciado. De acordo com a presente invenção, a figura 1mostra um dispositivo de cliente móvel 102, como umdispositivo de Assistente Pessoal digital (PDA) que operaem combinação com os sistemas operacionais Palm PDA ouPocketPC da Microsoft. 0 dispositivo de cliente móvelcomunica-se através de uma conexão de rede 104 com umservidor de aplicação 106 para solicitar dados a partir doservidor e receber atualizações de dados, fornecer novosdados, e receber alterações de configuração. Deve serentendido que múltiplos clientes móveis 102 podem secomunicar com o servidor 106. Somente um único dispositivode cliente 102 é mostrado na figura 1 para fins desimplicidade de desenho.
Os clientes móveis 102 consomem os serviços derede de conector do lado do servidor para recuperação dedados em tempo real a partir de múltiplos armazenamentos dedados de empresa. Adicionalmente, os clientes móveisconsomem os serviços de rede de gerenciador de dados dolado do servidor para o gerenciamento de atualizações dedados do lado de cliente em tempo real, atualizações dedados do lado de servidor e atualizações de configuração dosistema.
O servidor de aplicação 106 comunica-se comfontes de dados de empresa 108, como fontes de dados CRM,fontes ERP, recursos do sistema financeiro, armazenamentosde dados de legado, e similares. As fontes de dados deempresa exemplares, ilustradas na figura 1, incluem dadosincluindo software "Siebel" a partir da Siebel Systems,Inc. de San Mateo, Califórnia, EUA; software "Oracle" apartir da oracle Corporation de Redwood Shores, Califórnia,EUA; software "SAP" a partir da SAP AG de Walldorf,Alemanha; e software de legado. A aplicação doadministrador 110 e uma aplicação de desenvolvedor 112 secomunicam com o servidor de aplicação 106, os quais tambémarmazenam metadados 114 para o sistema, como descritoadicionalmente abaixo.
O servidor de aplicação 106 prove gerenciador dedados, configuração, e serviços de rede de conector dedados para intercâmbio de dados e atualização, autenticaçãode usuário, segurança e serviços de registro. O servidor deaplicação também manipula gerenciamento de processocomercial na forma de informações comerciais e regras.
O cliente móvel 102 também inclui umarmazenamento de dados 116 que inclui uma base de dadosrelacionais 118 que armazena dados comerciais 12 0 e tambémuma base de dados relacionais que armazena metadados 122para execução de aplicação no cliente móvel. Uma aplicação124 que é instalada no cliente móvel 102 inclui várioscomponentes de software que executam funções apropriadas.Por exemplo, a aplicação poderia compreender uma aplicaçãode serviço de campo que informa ao pessoal de serviço decampo sobre um local no qual serviço foi solicitado,explica a natureza da solicitação de serviço, e proveregistro da visita de serviço e quitação da conta. Aaplicação 124 pode incluir múltiplas aplicações queprocessam os dados solicitados pelo cliente móvel 102.
A aplicação de administrador 110 e aplicação dedesenvolvedor 112 j untos compreendem um componente de"Estúdio" 130. Na modalidade ilustrada, o administrador edesenvolvedor são fornecidos como duas aplicaçõesseparadas, e fornecem um meio para configurar o sistema,incluindo os dados de metadados e interfaces de aplicação.O sistema 100 compreende uma plataforma deempresa móvel que suporta a aplicação de serviço 124. 0sistema prove um conjunto de serviços de Rede que usam egerenciam, de forma eficaz, soluções de software mobilizadopara aperfeiçoar os processos comerciais móveis. Osexemplos comuns incluem integrar a CRM ou ERP, automação deforça de vendas (SFA), e funções de suporte ao cliente ebalcão de ajuda para uma empresa. Tais aplicações deempresa dependem da interação de aplicação cruzada, em quedados a partir de uma função ou sistema são freqüentementeutilizados por uma função ou sistema diferente. Quandoexecutado no cliente móvel, a funcionalidade de aplicaçãoexistente e informação de empresa são utilizadas entremúltiplas aplicações de software de empresa, sistemas dedados de legado, e trabalhadores móveis. Desse modo, umretorno significativo sobre o investimento pode ser obtidopara essas aplicações e para a plataforma de empresa móvel.
A plataforma de empresa móvel 100 prove serviçosde Rede que simplificam o uso de clientes móveis edispositivos portáteis associados no campo. Esses serviçosde rede incluem uma função de gerenciador de dados, umafunção de configuração e uma função de conector. Essasserão descritas em maior detalhe abaixo. As aplicações 124que são instaladas nos clientes móveis 102 podem sertotalmente funcionais em qualquer estado conectado oudesconectado, após terem sido adequadamente iniciadas peloservidor de aplicação 10 6.
III. ARQUITETURA LÓGICA
Qualquer aplicação de cliente que faz uso daPlataforma de Empresa Móvel ilustrada na figura 1 utilizaraos componentes do sistema ilustrados no diagrama de blocosda figura 2. Esses componentes incluem:Objetos comerciais - objetos programáveisbaseados em conceitos comerciais, combinando campos erelacionando informações de fontes de dados de empresadiferentes (por exemplo, fontes de dados como Cliente,Contatos, Bens, Tarefas, etc.).
Regras comerciais - lógica customizada paraexecutar processos comerciais utilizando constantescomerciais com verificações aplicadas contra dadoscomerciais a partir das fontes de dados de empresa.
Constantes comerciais - uma variável configurávelpor usuário para uso durante todas as aplicações decliente, e regras comerciais do lado do servidor e cliente(por exemplo, Regras, comerciais, Mensagens de alerta, esimilares) .
Conectores de fonte de dados - conectores defontes de dados projetados para fornecer continuamenteacesso a uma ampla variedade de fontes de dados de empresa(por exemplo, bancos de dados como aqueles formatados deacordo com Oracle e Servidor SQL, sistemas de envio demensagem como Série MQ ou MSMQ, aplicações CRM como Siebelou Peoplesoft, serviços genéricos de rede, e assim pordiante.).
Processo comercial - metáforas, como um processode "Fluxo de força" da Dexterra, IN.c, de Bothell,Washington, E.U.A., que define um paradigma de navegação deformulário para formulário para modelagem de processoscomerciais.
Formulários - uma combinação de telas de displayvisual padrão (por exemplo, Visualizar, Editar, Localizar,e similares) com lógica acionada por evento que sãoprojetadas para mostrar informações, coletar informações, eorientar o usuário através de um processo comercial dado,mencionado aqui como um "Fluxo de força" ou um "Fluxo decampo."
Visualizações - uma representação modificada dosdados identificados a partir de uma fonte de dados deempresa ou aplicação que são utilizados por um ou maisObjetos comerciais.
Filtros .- Um filtro que pode ser aplicado a umaVisualização para modificar os dados disponíveis para umObj eto comercial.
Esses componentes podem ser utilizados paraespecificar a configuração (arquitetura lógica) de qualqueraplicação de cliente que é construída utilizando umaestrutura de tecnologia como a ". NET" da MicrosoftCorporation e ferramentas como "Visual Studio.net" daMicrosoft Corporation. Aqueles versados na técnica estarãofamiliarizados com tais ferramentas de programação paraespecificar uma aplicação e seus obj etos de dadosassociados.
A Plataforma de Empresa móvel ilustrada na figura1 é implementada como uma estrutura acionada por metadados.A estrutura prove serviços de rede de servidor e clienteintegrados, permitindo a conexão, configuração e serviçosde gerenciamento de dados necessários para usar soluções deempresa móveis de missão critica, à prova de falha.
A figura 2 ilustra que, na plataforma de empresamóvel da figura 1, a estrutura de tabelas de banco de dadosrelacionais e obj etos comerciais de aplicação externa sãomapeados para visualizações como metadados. Uma ou maisvisualizações são consumidas por Objetos comerciais, tambémdefinidos em metadados, que são por sua vez utilizados pelaaplicação móvel. A aplicação móvel utiliza uma estrutura decliente, mencionada como o "Dexterra Smartclient", quegerencia a instanciação dos Objetos comerciais, Acesso deDados Locais ao banco de dados físico, subjacente quereside no dispositivo de cliente móvel, integração deDispositivo, bem como a comunicação de dados de servidor-cliente através dos serviços de gerenciador de dados e/ourede de conector. Na plataforma, especificações para todasas camadas lógicas (por exemplo, Objetos comerciais,Visualizações, filtros e Conectores) são definidas emantidas nos metadados.
A plataforma de empresa móvel é arquitetada comouma pilha lógica, projetada para isolar camadas naarquitetura lógica a partir de todos exceto membros nãoadjacentes. Na parte inferior da pilha lógica, camadaAlvo, estão dados que residem nas fontes de dados deempresa, back-end. A plataforma trabalha com os dados defonte no lugar, e não requer que informações no sistema deregistro de back-end sej am replicadas para um banco dedados de replicação de nivel médio. Isso é, não necessárioarmazenamento de dados interino. Isto prove flexibilidadeem desenho, bem como acesso de dados em tempo real e podeajudar a reduzir o custo total de propriedade da plataformae aplicações, e auxilia a simplificação dos processos degerenciamento de dados.
A próxima camada para cima na pilha lógica é acamada de Conector. A camada de Conector prove umaconstrução programática que descreve a armazenamento dedados de back-end para o servidor de aplicação em umformato relacionai. As informações referentes a como seconectar a uma fonte de dados de empresa, bem como aosajustes de segurança (como métodos de autenticação edefinições de grupo e usuário) são armazenadas nosmetadados, e são mantidas utilizando o componente deAdministrador.A camada seguinte na pilha é a camada deVisualização, que compreende objetos que fornecem ummapeamento de um para um para um ob j et o ou tabela em umafonte de dados de empresa, de back-end. Por exemplo, se umsistema de back-end tiver uma tabela denominada CUST_ADDR(endereço de cliente), e dados a partir daquela tabelaforem necessários para uso em uma aplicação, então umaVisualização será criada no componente de Administrador. AVisualização de Administrador poderia ser denominada, porexemplo, CUSTOMER_ADDRESS, para representar aqueles dadosno ambiente da plataforma de empresa móvel, fora das fontesde dados de empresa. Deve ser entendido que umaVisualização tem propriedades que correspondem àspropriedades ou colunas do objeto de dados no sistema deback-end. Entretanto, não é necessário que todas aspropriedades na fonte de dados de back end sejam exigidascomo propriedades na Visualização. Realmente, áspropriedades exigidas são definidas no componenteadministrativo e armazenadas como metadados no exemplofornecido há pouco, as propriedades poderiam incluir camposcomo ID, STREET_ADDR, CIDADE, ESTADO, E ZIP_CODE.
Adicionalmente, o usuário pode definir os tiposde dados das propriedades na Visualização, e esses tipos dedados podem ser independentes dos tipos de dados daspropriedades correspondentes na fonte de dados de empresa.Outras opções das propriedades de visualização que podemser identificadas são identificador exclusivo, leiturasomente, indexação, propriedade exigida e comprimento.Todas as informações acima são armazenadas como metadados.
A camada de Visualização também prove umaindicação de conflitos de dados, e prove um meio pararesolver tais conflitos. Conflitos de dados podem ocorrer,por exemplo, sempre que houver alterações de dados entre oque está sendo uploaded a partir do cliente móvel e o queexiste no servidor. A resolução de tais conflitos pode serexecutada na camada de Visualização, executando regrascomerciais como permitir que a alteração de dados maisrecentes sempre tenha precedência, ou permitir quealterações de dados de uma fonte especifica (por exemplo, ocliente móvel ou uma fonte de dados de empresa) tenhamprecedência dependendo do tipo de dados (por exemplo, dadosde campo ou dados de conta de cliente). Isso é descritoadicionalmente abaixo, em combinação com o Serviço de Redede Gerenciador de dados.
Como ilustrado na figura 2, as Visualizaçõespodem ser definidas contra múltiplos objetos em múltiplosarmazenamentos de dados, desse modo fornecendoflexibilidade em uso de aplicação e no uso de sistemas nolugar, sem a carga de replicação de dados. Como com osConectores, as definições de Visualizações são armazenadasem metadados, e são gerenciados com o Administrador.Aqueles versados na técnica entenderão detalhes dedefinições de dados em metadados, sem explicação adicional.Como observado acima, Filtros podem ser aplicados àsVisualizações, para modificar os dados que são passadospara a camada seguinte. 0 Administrador prove recursos degerenciamento de Visualização, incluindo um Mágico deVisualizações que automaticamente cria Visualizações combase na interface de objeto ou definição de tabela dosobjetos de armazenamento de dados de back-end (a partir dasfontes de dados de empresa).
A próxima camada para cima no diagrama da figura2 inclui os Ob j et os Comerciais, que são mapeados o"uassociados a uma ou mais Visualizações. Um Objeto comercialda plataforma é a entidade programática com a qual umdesenvolvedor fará interface ao construir aplicações móveisde customização. Os Objetos comerciais incluem múltiplaspropriedades, cada um dos quais pode ser de um tipo dedados simples, ou pode ser outro Objeto comercial. Como osObjetos comerciais da plataforma podem ser mapeados paramúltiplas Visualizações, os desenvolvedores podem trabalharcom uma única entidade que representa dados fornecidos demúltiplas fontes de dados homogêneos. Desse modo, um únicoObjeto Comercial definido de acordo com a plataforma deempresa móvel da invenção pode incluir dados de múltiplasfontes de dados de empresa potencialmente incompatíveis,como de diferentes formatos de propriedade.
Ao criar ou modificar aplicações para asaplicações móveis e dispositivos de clientes móveis, osdesenvolvedores podem interagir exclusivamente com a camadade Objeto comercial. Isso isola os desenvolvedores dequalquer exigência para entender ou interagir diretamentecom os sistemas de back-end (fontes de dados de empresa)para os dados de fonte. Desse modo, a camada de Obj etocomercial prove uma interface baseada em obj eto paradesenvolvedores de aplicação, extraindo os detalhes depersistência e recuperação de dados. Não há necessidade dodesenvolvedor interagir diretamente com o armazenamento dedados local no dispositivo móvel. Além disso, devido ànatureza de dados desconectados, o cliente móvel, atravésda interface de Obj eto Comercial, gerencia automaticamenteo processamento de alterações de dados, pela armazenagem dealterações de dados localmente no cliente que serãopassadas para o servidor de aplicação durante um processode atualização. Isso isola adicionalmente osdesenvolvedores dessa tarefa de programação de rotina.
Os Objetos Comerciais existem no dispositivo decliente móvel como metadados, e são também gerenciadosutilizando o Administrador (figura 1) . 0 uso de metadadosem toda a plataforma de empresa móvel prove um ambiente noqual os atributos e comportamento da maioria das entidadesde dados podem ser configurados através de uma interface deusuário gráfico em vez de codificado.
A natureza acionada por metadados da plataformade empresa móvel permite a execução de processos comerciaisno cliente móvel através de uma arquitetura de servidor semestado. Através dos metadados, a aplicação móvel pode serconfigurada e customizada. Os metadados definem a estruturados obj etos comerciais referenciando os dados de empresacomerciais ao dispositivo móvel e define os eventos queacionam regras comerciais que regem os processoscomerciais.
0 banco de dados de metadados contém a referênciadas informações comerciais de back-end de aplicaçãocruzada, funcional-cruzada que é exposta através dosConectores para configurar um obj eto comercial. Esseprocesso é realizado através do componente de Estúdio(figura 1) para configurar e referenciar as informaçõescomerciais de fonte de dados de empresa de conexão com osObj etos comerciais. Isso prove o percurso para os dadosespecíficos para as aplicações móveis, assegurando quenenhum dado comercial de uma fonte de dados de empresa sej aarmazenada em seu formato nativo de dados no servidor deaplicação ou em qualquer outro armazenamento de dadosinterino do sistema para atualizações de dados. Essaabordagem não invasiva e sincrona em tempo real utilizandoos metadados permite que a plataforma de empresa móvel seconecte de forma eficaz com sistemas de back-end com umaquantidade minima de ruptura enquanto maximiza acesso dedados funcional-cruzado, consistência de dados eintegridade de dados.
IV. COMPONENTES DE PLATAFORMA DE EMPRESA MÓVELA. APLICAÇÕES MÓVEIS
Como observado acima, o cliente móvel 102 (figura1) pode incluir aplicações instaladas 124 que implementamprocessos comerciais da empresa. A aplicação pode alavancara plataforma de empresa móvel descrita acima, e demonstracomo a aplicação instância os obj etos comerciais queacionam o processo comercial configurado em metadados.
Por exemplo, informações de Pedido de Trabalho ouTarefa seriam fornecidas para a aplicação móvel através devisualizações e seriam acessadas através de um objetocomercial. Na recuperação dos dados comerciais através dadefinição de visualização, utilizando o serviço de rede degerenciador de dados, o objeto comercial pode fornecer osdados comerciais à aplicação móvel para descrever astarefas. Esses dados são armazenados em um banco de dadosrelacionai locais no dispositivo móvel. Quando umaatualização para os dados de tarefa é comprometida com oobjeto comercial de tarefa em uma solicitação a partir dopedido, a aplicação de Smartclient persistirá as alteraçõesno armazenamento de dados definido por visualização nocliente móvel, então o Smartclient gerencia as atualizaçõesde dados de volta para a fonte original de dados através doserviço de rede de gerenciador de dados, assegurandointegridade e consistência de dados.
Pela utilização da profundidade, amplitude, epotência de serviços de rede (por exemplo, conexão,configuração, e serviços de gerenciador de dados) que sãodisponíveis na plataforma de empresa móvel descrita aqui,um grande conjunto de aplicações móveis pode ser facilmenteconstruído, incluindo aplicações como produtividade deforça de vendas, serviço de clientes, e soluções desuporte. Tais aplicações podem ser integradas com um amploconj unto de aplicações verticais incluindo soluções deindústria de óleo/gás, cuidados com a saúde/médica e deserviço financeiro.
B. COMPONENTES DO SERVIDOR
O servidor de aplicação é um tipo de aplicação deplataforma acionada por metadados e prove informações,aplicações, e processos comerciais para o cliente móvel, eassegura integridade de dados gerenciados entre aplataforma de empresa móvel e um hospedeiro de fontes dedados de empresa de back-end. 0 servidor de aplicação é umasolução de alto desempenho, baseado em processo construídona tecnologia ",NET" da Microsoft Corporation de Redmond,Washington, E.U.A. Utilizando a tecnologia ".NET", asolução de empresa móvel é uma estrutura que é nativa deServiços de Rede através do uso de XML e SOAP para troca dedados e transporte. O servidor de aplicação prove trêsServiços de Rede de núcleo, como mostrado no diagrama dearquitetura funcional da figura 1:
Serviço de rede de conector
O Serviço de rede de Conector fornece integraçãonão invasiva da infra-estrutura existente de aplicações deempresa enquanto mantém controle das Condições deIntegridade de dados entre os clientes móveis e as fontesdistintas de dados de empresa.
Serviço de rede de configuração
O Serviço de Rede de Configuração gerencia osmetadados definindo os dados comerciais, obj etoscomerciais, regras comerciais, constantes comerciais econfiguração de sistema como autenticação, registro,segurança e papéis que abrangem as aplicações móveis quesão passadas para o cliente móvel - a aplicação decomponente que é residente no dispositivo móvel.
Serviço de Rede de Gerenciador de dadosO Serviço de Rede de Gerenciador de dadosorquestra as interações de atualização entre a aplicação decliente móvel, o servidor de aplicação, e as fontes dedados de empresa de terceiros. Adicionalmente, o Serviço deRede de Gerenciador de dados prove a capacidade decomunicar-se diretamente com a camada de conector paraconsultas em tempo real. 0 Serviço de Rede de Gerenciadorde dados fornece flexibilidade no modo que gerencia asvárias condições referentes a múltiplas atualizações pormúltiplos usuários para as múltiplas fontes de dados deempresa para executar a integridade dos dados. 0 Serviço deRede de Gerenciador de Dados pode fazer isso através doservidor de aplicação ou orientar para qualquer API e/ouServiço de Rede publicado por terceiros.
Desse modo, o Serviço de Rede de Gerenciador deDados pode gerenciar uso de atualizações de aplicação ealterações de dados por todos os clientes móveis dosistema.
Cada um desses componentes será descrito a seguirem maior detalhe.
1. Serviço de Rede de conector
0 Serviço de Rede de Conector é pro j etado parasuportar comunicação com qualquer fonte de dados emconformidade com ODBC ou API de Serviço de Rede. 0 Serviçode rede de Conector permite que um cliente defina econstrua visualizações com base em dados armazenados em umou mais sistemas terceiros. 0 Serviço de Rede de Conectortem uma interface publicada que permite atualizações agranel padrão bem como acesso de dados em tempo real apartir de um cliente móvel.
0 Serviço de Rede de conector prove a conexão decamada fisica entre a meta-aplicação de servidor deaplicação e a interface especifica das fontes de dados deempresa. Os conectores suportam serviços de notificação egerenciamento de disputa de banco de dados, gerenciamentode transação, e manipulação de erros. Em uma configuraçãode cliente default, o sistema de plataforma de empresamóvel é usado para clientes com um ODBC ou conector deServiço de rede. Aqueles versados na técnica serão capazesde produzir conectores para os sistemas de empresa maiscomuns, como Siebel, SAP, PeopleSoft, Oracle, SQL Server, esimilares.
Por exemplo, um conector de aplicações "Oracle"permite que um cliente faça chamadas para serviços desuporte Oracle, através das construções de dados maispróximas que o cliente tem com APIs (como procedimentosPL/SQL) ou diretamente com o próprio banco de dados deempresa através de ODBC. Como com todos os conectores deODBC a interrogação dinâmica dos esquemas de RDBMS éautomaticamente executada, expondo o desenho fisicoespecifico do banco de dados. Isso fornece ao cliente umavisualização hierárquica das interfaces efetivas naquelesistema.
A figura 3 mostra um exemplo de como osConectores fazem interface das fontes de dados de empresacom a plataforma de empresa móvel, NO lado esquerdo dafigura 3 estão representações de múltiplas fontes de dadosde empresa, incluindo uma fonte de dados ERP 302, uma fontede dados CRM 304, uma fonte de dados de Finanças /HR 306,uma fonte de dados de ODBC/Legado 308, e podem incluiroutros Serviços de Rede ou outras fontes (não mostradas).Na porção média da figura 3 está uma representação dosmetadados 312 que especifica para o servidor de aplicação314 como os dados de diferentes fontes de dados de empresaserão armazenados e relacionados no cliente móvel 316, queé representado no lado direito da figura 3.Desse modo, nesse exemplo, dados identificadoscomo ORDER_ID existem na fonte de dados de ERP. Os dadosidentificados como F_NAME e L_NAME existem na fonte dedados CRM. Os dados identificados como CRED_LIM existem nafonte de dados de Finanças/HR, e dados identificados comoWARRANTY são armazenados na fonte de dados ODBC/Legado.Todos esses dados identificados são armazenados nas fontesde dados de empresa, como nos sistemas de back-end office.
Nos metadados 312, a definição de dados a partirdas fontes de dados de empresa é mapeada para visualizaçõesque são utilizadas para criar o armazenamento de dados nocliente e armazenam os dados comerciais relevantes nocliente móvel a partir das fontes de dados de empresa em umbanco de dados relacionai. 0 acesso a esses dadoscomerciais é executado através da camada de obj etocomercial definida e armazenada em metadados no clientemóvel. Como mostrado na figura 3, o ORDER_ID da fonte dedados ERP é mapeado para uma propriedade de objetocomercial denominada OrderlD, cuja definição relacionai ' éarmazenada em metadados 318 no cliente móvel 316 ' eutilizada por uma ou mais das aplicações móveis tambémdefinidas em metadados. Os dados F__NAME a partir da fontede dados de empresa CRM são mapeados para (armazenados na)definição de propriedade de objeto comercial FirstNamearmazenada no banco de dados de cliente móvel, e os dadosL_NAME são mapeados para a propriedade de obj eto comercialLastName. Similarmente, os dados CRED_LIM a partir da fontede dados de Finanças/HR são mapeados para a propriedade deobj eto comercial CreditLimit, e os dados WARRANTY a partirda fonte de dados ODBC/Legado são mapeados para apropriedade de obj eto comercial de Garantia. Desse modo,dados a partir de fontes de dados de empresa potencialmentediferentes e incompatíveis diferentes 302, 304, 306, 308,310 são fornecidos ao cliente móvel através dos Serviços deRede Gerenciador de Dados para o armazenamento de dadoslocal (representado pelas linhas a partir das fontes dedados de empresa para o servidor de aplicação 314) noformato adequado para acesso utilizando um dos obj etoscomerciais no cliente móvel (indicado no cliente móvel 316com valores efetivos).
Tipos de conector
Os conectores que são suportados pelo Serviço deRede de Conector incluem os três tipos de conector aseguir:
1. 0 Conector de Serviços de rede é utilizadoquando a plataforma móvel está conectando com um sistema deterceiro (a) que não está em conformidade com ODBC, ou (b)não permite conectividade ODBC/RDBMS, ou (c) cuja interfaceé definida por um API padrão e pode ser envolvida edefinida por Linguagem de Descritor de Serviço da Rede(WSDL).
2. O conector ODBC/RDBMS é utilizado quandoconectando a plataforma móvel a um sistema terceiro (a) queestá em conformidade com ODBC e (b) permite acesso direto aODBC/RDBMS e (c) cujos dados são localizados fisicamente nomesmo ambiente LAN ou acessíveis através de um protocolo decomunicação de suporte do transporte (como RPC, TCP, etc.).
3. O conector API é similar ao Conector deServiços de rede porém (a) requer que o API seja acessívelatravés de protocolos não de Internet como RPC e (b) éutilizado se a Interface de Serviços de rede não estiverdisponível.
A leitura de esquemas, através de conectorODBC/RDBMS, informações é realizada através do uso daporção de Estúdio 130 (figura 1) da plataforma de empresamóvel, utilizando a aplicação de Administrador. A porção deEstúdio é utilizada para configurar o mapeamento dedefinição de Visualização para a fonte de dados de back-ende mapear a definição de uma ou mais Visualizações para umou mais Objetos comerciais. Ao definir a definição deVisualização ou mapeamento das Visualizações para Objetoscomerciais, utilizando o administrador, as informações sãoarmazenadas como metadados. Durante um processo deatualização com o servidor de aplicação e fonte de dados deempresa, os metadados são lidos para determinar como ler,persistir e remover os dados
(selecionar/inserir/atualizar/deletar funções) enquantogerencia e executa a integridade de dados utilizando taisfunções como detecção/resolução de conflitos, transaçõestanto inerentes e compensando onde apropriado.
Utilizando o conector ODBC/RDBMS, os dados sãolidos, persistidos e/ou removidos através de afirmaçõesANSI SQL e/ou procedimentos armazenados no caso de RDBMS deOracle ou SQL Server da Microsoft Corporation (81, 91,etc. ) . Utilizando o conector de Serviços de Rede/API, dadossão lidos, persistidos e/ou removidos chamando a função APIapropriada ou método para a transação.
2. Serviço de rede de configuração
O Serviço de Rede de configuração consumido pelaDexterra Studio prove um modo inter-operável fácil paraadministradores, analistas comerciais e desenvolvedorespara implementar, configurar e administrar a solução deEmpresa Móvel da Dexterra. 0 Serviço de rede deConfiguração permite fácil manipulação dos metadadosutilizados para configurar e customizar os dados edefinições de processo de aplicações Móveis. Esse serviçoserá mais bem entendido com referência às característicasdo componente de Administrador, que é descrito em maiordetalhe abaixo.3. Serviço de rede de gerenciador de dadosModelo de processo de atualização
Um modelo de processo de atualização é utilizadono sistema, no qual aplicações móveis atualizam seus dadosretidos de forma local (a aplicação ou seus objetoscomerciais) com o banco de dados de empresa de back-endutilizando um conjunto de componentes Net de núcleo que sãoexpostos como Serviços de rede para fácilinteroperabilidade.
0 Serviço de Rede de Gerenciador de dadosatualiza a aplicação móvel e todos os seus dados definidospor objetos comerciais associados. 0 modelo de processo deAtualização permite transferência de dados dúplex entre asfontes de dados de empresa através do servidor de aplicaçãoDexterra e o cliente móvel, permitindo que atualizaçõesse j am feitas enquanto o cliente móvel está conectado àrede, fundindo as atualizações entre clientes quando estãoconectados. Quando no estado desconectado, as atualizaçõessão fundidas no ambiente do cliente, até um momento em queum estado conectado sej a obtido e a solicitação deatualização possa ser iniciada.
0 modelo de processo de atualização assume aabordagem "tudo ou nada". Se uma falha ocorrer antes que ofluxo inteiro seja transferido do servidor de aplicaçãopara sobre o cliente móvel (ou antes que o fluxo inteiroseja uploaded do cliente para o servidor), então o Serviçode Rede de Gerenciador de dados no servidor de aplicaçãonão recebe uma confirmação sobre a transação de download(ou upload). Como resultado, o servidor carrega ainteligência para gerenciar o estado de cliente com relaçãoa se requer uma reversão de dados ou simplesmente uma novatentativa. Quando o cliente móvel executa uma operação deprocesso de atualização a segunda vez, o servidor deaplicação leva em consideração o estado original deinformação e pode fornecer os resultados se o servidor deaplicação tiver processador ou processar novamente no casode todas as informações exigidas nunca terem sido recebidaspelo servidor de aplicação desse modo executando a entregaconfiável de informações somente uma vez entre o clientemóvel e servidor de aplicação. Isso, no caso, executa aintegridade dos dados à medida que se movem do clientemóvel para uma ou mais fontes de dados de back end.Quebra do processo de atualização
Dois tipos de processamento de atualização sãosuportados:
1: obter o mais recente: nesse tipo deatualização, o cliente móvel faz uma solicitação para obteras informações mais recentes a partir das fontes de dadosde empresa através do servidor de aplicação Dexterra. Oservidor de aplicação Dexterra processa a solicitação erecupera as informações comerciais a partir das múltiplasfontes de dados utilizando o Serviço de Rede de ConectorDexterra e entrega as informações comerciais para o clientemóvel.
2: atualizar (atualização dúplex): nesse tipo deatualização, registros tanto na extremidade do cliente comodo servidor são intercambiados executando a integridade dosdados tanto no cliente móvel como nas fontes de dados deempresa de back end utilizando parâmetros configurados deResolução de Conflito Dexterra.
Detecção/resolução de conflitos
A resolução de conflitos descreve as regrasutilizadas para arbitrar sobre conflitos de dados causadospor alterações feitas entre um cliente móvel e uma ou maisfontes de dados de empresa de back end. Isso é executadopela identificação do conflito (Detecção) e então resolução(Resolução) do conflito em um ou mais vários modos.
0 servidor de aplicação Dexterra pode detectarconflitos em um de três modos: Revisão, Selo dedata/horário ou Manual bem como identificar uma situação deconflito por nivel de linha ou coluna.
A revisão é um ajuste onde um campo especifico oupropriedade é identificado em uma única fonte de registrocomo revisado e o servidor de aplicação Dexterra utilizaráisso para determinar se os dados foram alterados na fontede dados de back end ou cliente móvel.
Selo de data/horário
0 selo de data/horário é um ajuste onde um campoespecifico ou propriedade é identificado em uma única fontede registro como selo de data/horário e atualizado apósqualquer inserção/atualização ou ação de deletar e oServidor de aplicação Dexterra utilizará isso paradeterminar se os dados foram alterados na fonte de dadosback end ou cliente móvel.
Manual é um ajuste onde não há campo especificoou propriedade para identificar uma situação de conflito emuma única fonte de registro, portanto, o Servidor deaplicação Dexterra compara todos os dados de propriedade oucampo para definir exclusividade e detectar se os dadosforam alterados na fonte de dados de back end ou clientemóvel.
Dependendo da configuração do Servidor deaplicação Dexterra, Conflitos são resolvidos em um dequatro modos: Primeira Atualização vence, Últimaatualização vence, Resolução de admin. Ou Regra do lado doservidor
Primeira atualização venceSob o modelo de Primeira atualização o servidorde aplicação somente aceitará alterações de qualquerregistro que seja o primeiro a fazer uma atualização. Se umregistro for primeiramente atualizado pela fonte de dadosde back end e um conflito for detectado pelo Serviço deRede de Atualização, em vez de retornar um erro, o Serviçode Rede de Gerenciador de dados abandonará a versãofornecida pelo cliente e retornará uma cópia da versão maisrecente do registro a partir da fonte de dados de empresade back end para o cliente móvel.
Última atualização vence
Sob o modelo de Última atualização vence, oservidor não necessita detectar conflitos. Em vez disso,simplesmente persistem as alterações a partir do clientemóvel para a fonte de dados de empresa de back endsobrepondo o registro atual na fonte de dados de empresa deback end.
Resolução de admin. (ou manual)
Quando configurado para resolução Manual/admin.,o servidor tratará todos os conflitos como exigindointervenção manual para resolver e retornará uma cópia doregistro atual a partir da fonte de dados de empresa deback e opcionalmente notificará através de qualquer serviçode notificação (SMS, E-mail, etc.) que uma situação deconflito surgiu e permitirá resolução através doAdministrador Dexterra. Ao fazer isso permite resolução deconflito em nivel de coluna uma vez que o Administradordetermina os valores a reaplicar de volta à fonte de dadosde empresa de back end, seletivamente.
Regras do lado do servidor
Regras do Lado do Servidor customizáveis podemser criadas para determinar de forma mais programática eespecifica como certas situações de conflito devem serresolvidas. Por exemplo, um conflito pode ser resolvido combase nos valores de dados em um registro. Essaflexibilidade permite controle total sobre as açõesespecíficas circundando um cenário de resolução deconflito.
Uso do cliente a partir do servidor
O servidor de aplicação contém a definição de umaou mais aplicações de campo móveis que devem sertransferidas para o cliente móvel, incluindo osFormulários/telas representados como tarefas (mencionadoscomo "FormFlows"), interações de dados (mencionados como"FieldFlow") , e grupos de FormFlows e FieldFlowsconstruídos em um Fluxo de trabalho/Processo Comercial(denominado "ForceFlow"). Os FormFlows, FieldFlows eForceFlows são descritos adicionalmente abaixo. A definiçãode aplicação também inclui os metadados configuradosassociados a uma aplicação como Visualização, Obj etocomercial, definição de Constantes comerciais. São tambémincluídos no uso os dados comerciais específicos a partirde uma ou mais fontes de dados de empresa de back endnecessárias para rodar o cliente móvel em um estado"ocasionalmente" conectado.
O servidor de aplicação prove a fundação na qualfornecer e gerenciar aplicações e conectar-se a sistemas efontes de dados de empresa existentes. As aplicações deplataforma de empresa móveis são distribuídas e gerenciadaspara os dispositivos móveis, como dispositivos Pocket PC eTablet PC, pelo servidor de aplicação, fornecendo umaadministração altamente gerenciavel de todas as interfacesde usuário no campo.
C. COMPONENTE DE ADMINISTRADOR
Como observado acima, o componente deAdministrador (figura 1) permite que os administradores desistema executem alterações que são relativamente regularesou freqüentes. 0 componente de Administrador prove acesso avariáveis de decisão, conteúdo de lista suspensa, e outrasinformações em um formato apropriado para gerenciamento poranalistas comerciais ou administradores. Essa abordagem àadministração permite que os administradores de sistemaestendam muitas funções para baixo ao nivel doAdministrador sem comprometer a integridade do sistema.
Por exemplo, dados compreendendo informaçõescomerciais que são utilizadas para definir os processoscomerciais da empresa podem ser recebidos através de umformulário de definição de Objetos comerciais. 0 Serviço derede de Configuração prove acesso â esse aspecto docomponente de Administrador.
D. COMPONENTE DE CLIENTE
Como observado acima, o cliente 102 (figura 1) naarquitetura de plataforma de empresa prove uma estrutura naqual a aplicação móvel permite o uso de processoscomerciais baseados em papel utilizando técnicasmencionadas como "ForceFlow", "FieldFlow" e "FormFlow", eutilizando Serviços de rede, desse modo permitindocomunicações entre o cliente móvel e o Servidor deaplicação Dexterra e as fontes de dados de empresa atravésde uma rede LAN/WAN, como a Internet, via conexões cabeadase sem fio. A aplicação móvel que roda nos dispositivos decliente funciona em um modo que é otimizado paradispositivos de fator de formulário pequenos que fornecemuma exceção, experiência fácil de aprender pelo usuário.
No sistema ilustrado, o cliente é uma estruturade objeto que é construída utilizando o ".NET CompactFramework" da Microsoft Corporation que é ciente demetadados. O componente de cliente permite fornecimento defuncionalidade de aplicação de classe de empresa nosdispositivos móveis, que preferivelmente operam de acordocom o sistema operacional "PocketPC" ou sistema de operaçãoMicrosoft Tablet PC a partir da Microsoft Corporation. Ocomponente de cliente também integra com funcionalidade"PocketPC" existente para fornecer integração continua comfuncionalidade de tela de Calendário, Tarefa e Hoje dainterface de PocketPC. Prove desse modo um ambienteestável, eficaz no qual trabalhar.
FormFlows, FieldFlows, ForceFlows
Quaisquer tarefas ou operações de processocomercial na forma de telas de display são denominadas"FormFlows". Os FormFlows são utilizados para iniciarinterações de processo denominadas "FieldFlows" qúepermitem a iniciação de processos comerciais, os quais sãomencionados como "ForceFlows". Os FieldFlows permitemlançamento de ForceFlows "fora de banda" para trazerelasticidade de mundo real para os processos comerciais.
Os FormFlows são divididos em três categorias:(1) informação; (2) Atividade; e (3) Atualização. UmFormFlow de Informação é uma tela que mostra informaçõesnecessárias por um usuário móvel para preencher a tarefalógica seguinte no processo comercial. Um FormFlow deAtividade é uma tela que mostra algo que o usuário podenecessitar fazer ou executar. Um FormFlow de Atualização éuma tela que é exibida quando um usuário móvel é prompted aentrar dados que serão retornados às aplicações dehospedeiro (as fontes de dados de empresa).
Um FieldFlow' pode ser necessário, por exemplo,quando uma parte poderia ter falhado e uma busca de bancosde dados de inventário poderia necessitar ser executadapara ver se quaisquer partes casadas ou problemas similarescom soluções existem e são disponíveis, denominado umaconsulta, ou um FieldFlow pode ser necessário quando umaparte poderia necessita ser ordenada ou atribuida ouprogramada para fornecimento ao cliente, um FieldFlowdenominado uma atualização.
Um ForceFlow é um processo comercial, e portantoé uma coleção de FormFlows e FieldFlows. Um exemplo de umaForceFlow seria registro de tempo, viagem, e despesa que éassociado a um evento de despacho ou trabalho.
Com referência novamente à figura 2, essediagrama de blocos mostra como as relações entre colunas ecampos na aplicação alvo são relacionadas a informações no"FormFlows" (etapas no processo comercial representadascomo "Formulários" na aplicação) e são então associadas noForceFlow (o processo comercial). Pode haver muitos Objetoscomerciais em um FormFlow e potencialmente mais do que umFormFlow em qualquer processo comercial.
Filtros permitem que características e condiçõessejam colocadas sobre os dados quando referenciados naaplicação móvel. Por exemplo, tipo de dados (por exemplo,Data), tipos válidos (por exemplo, somente Segunda-feiraaté Sexta-feira), e quaisquer condições de conflito podemser detectadas. Outras características e condições defiltro podem ser configuradas.
Visualizações definem o local de armazenagem edados para uso em um ou mais Objetos comerciais, e o Objetocomercial pode ser baseado em uma ou mais Visualizações.Isso permite que características adicionais sej amassociadas. Por exemplo, um Obj eto Comercial pode sermencionado como "Cliente", que pode incluir detalhes decliente padrão; localização, contatos, inventário, e tambémSLA e outros atributos que a aplicação gostaria declassificar como Cliente porém não retidas na mesma tabelaAlvo ou mesmo aplicação Alvo.A figura 4 é uma ilustração diagramática dosfluxos de força e fluxos de campo a partir dos quais umaaplicação de dados móvel de acordo com a presente invençãopode ser construída. A figura 4 é um diagrama de fluxo quemostra uma seqüência operacional 402 que inclui uma
seqüência de fluxo de força 404 se estendendo a partir daesquerda para a direita através do desenho. Um fluxo decampo 406 se estende para baixo da página e é adjacente aum segundo fluxo de campo 408 que se estende para baixo. Ofluxo de força 404 inclui múltiplas janelas de display,
iniciando com uma janela de display inicial, mais àesquerda 410 seguida por uma segunda janela de display 412.As setas no desenho indicam a seqüência de operações,representada por sucessivas janelas de display, que serãorealizadas pela aplicação. A segunda janela de display 412
inclui duas janelas de display de fluxo de campo 414, 416que se estendem para baixa da folha de desenho. Deve serentendido que a operação da aplicação retorna oprocessamento à segunda janela de fluxo de força 412 após oprocessamento para o fluxo de campo 406 ser concluído. Após
o segundo display de fluxo de força 412, a terceira janelade display 420 também inclui uma janela de display de fluxode campo 422 que se estende para baixo da folha de desenho,representando o segundo fluxo de campo 408. Após conclusãodas operações para aquele fluxo de campo 408, a aplicaçãoprossegue para o display de fluxo de força seguinte 424 eentão para o seguinte 426.
Com as ferramentas de desenvolvedor anteriores,como descrito no pedido de patente da Dexterra, Inc.mencionado acima, foi possível definir a aplicação 402 por
especificação da seqüência de janelas de display quecompõem o fluxo de força 404 e os fluxos de campo 406, 408.Cada uma das janelas de display seria definida pela coleçãode caixas de diálogo, texto e gráfico. Um conjunto dedesenvolvimento apropriado que pode implementar essasespecificações é o conjunto ".NET" Visual Basic disponíveljunto à Microsoft Corporation de Redmond, Washington, EUA.Cada janela de display 410-42 6 definida desse modo poderiaser ligada de modo que a seqüência de operações comoilustrado na figura 4 seria realizada.
E. APLICAÇÕES TRANSPORTÁVEIS
De acordo com a presente invenção, uma coleção demúltiplas janelas de aplicação pode ser especificada comoum módulo, ou aplicação transportável (também mencionadacomo um "TransApp" do sistema). Por exemplo, uma coleção deoperações como poderia ser especificado pelas j anelas dedisplay de fluxo de força 412, 420,424 da figura 4, e suasjanelas de display de fluxo de campo 414, 416, 422,associadas, poderia compreender um TransApp que executa umafunção de rastreamento de tempo para fornecer uma função defolha de horário que permite que os trabalhadores de campoinsiram horas trabalhadas e dados associados. A coleção deoperações é executada do mesmo modo, de forma que a coleçãode operações como exemplificado pelos fluxos de força 412,420, 424 e os fluxos de campo 414, 416, 422 comoespecificado utilizando a técnica TransApp descrita aqui,forneceria a mesma saida na plataforma móvel que a coleçãode operações como especificado sem utilizar a técnicaTransApp. A esse respeito, a técnica TransApp descrita aquifornece uma alternativa modular para a técnica de "forçabruta" de especificar cada página de display de fluxo deforça, especificando cada página de display de fluxo decampo associada, especificando os links de dados entre osmesmos, e armazenando a coleção de operações em um programade aplicação para a plataforma móvel descrita aqui. Dessemodo, as ferramentas de desenvolvimentos fornecidas emcombinação com a técnica TransApp permitem desenvolvimentomais conveniente e eficiente de aplicações móveis.
As ferramentas de desenvolvimento fornecidas deacordo com a presente invenção permitem que o desenvolvedorde aplicação utilize um módulo previamente gravado pelaespecificação daquele módulo a partir de uma biblioteca demódulos ao definir a aplicação. Desse modo, utilizandoferramentas anteriores, um desenvolvedor poderia definir ascaixas de diálogo de janela de display e texto associadopara a primeira janela de fluxo de força 410, e entãodefinir as caixas de diálogo e texto para a segunda janela412, seguido pela definição das janelas de display 414,416do primeiro fluxo de campo 406, a seguir definindo a janelade fluxo de força seguinte 420, e assim por diante. Deacordo com a presente invenção, entretanto, o desenvolvedornecessita somente especificar a primeira janela 410 e entãopode especificar a funcionalidade de rastreamento de tempodas janelas de display 412, 420, 424 e suas janelas dedisplay de fluxo de campo associadas 414, 416, 422especificando a TransApp especifica de uma biblioteca deTansApps. As ferramentas de desenvolvimento também permitema um usuário criar novas coleções de operações TransApp, eexecutar funções de editar tipicas com TransApps, comoeditar TransApps existentes, copiar, deletar, renomear, esimilar. Desse modo, os desenvolvedores podem capitalizarem operações modulares anteriormente definidas parareutilização. Isso torna o desenvolvimento de aplicaçãopara o sistema da figura 1 muito mais eficiente, e aumentaa flexibilidade.
V. COMPONENTES DE FERRAMENTA DE DESENVOLVIMENTO
As ferramentas de desenvolvimento com as quais osmódulos operacionais podem ser especificados podem incluirmúltiplos componentes funcionais. Os componentes funcionaisserão utilizados de acordo com uma aplicação dedesenvolvimento para a plataforma móvel, com a qual asTransApps serão construídas e configuradas. Como observadoacima, as TransApps podem ser incluídas em uma aplicação desistema para uso sobre a plataforma móvel descrita aqui, demodo a fornecer a funcionalidade desejada na qual clientesmóveis comunicar-se-ão com servidores para ter acesso adados a partir de múltiplas fontes de dados de empresa.Nessa discussão, a aplicação de desenvolvimento serámencionada como o Projetista de Adaptação de dados (DAD). 0DAD compreende um programa de aplicação de desenvolvimentoque pode ser instalado em qualquer computador com recursosapropriados para suportar operação do programa. Porexemplo, o programa de aplicação DAD pode ser instalado emum computador como o computador 110 da figura 1 que hospedao programa Administrador Dexterra ou o computador 112 quehospeda o programa Desenvolvedor Dexterra. 0 DAD produziráum programa de aplicação móvel, que pode ser entãoinstalado no servidor 314 (figura 3) da plataforma móveldescrita aqui. Alternativamente, o computador servidor podehospedar o programa de aplicação DAD que produz o programade aplicação. Preferivelmente, o DAD suportará utilizaçãode componentes funcionais que incluirão:
Projetista de regra comercial
Projetista de objeto comercial
Projetista de fluxo de força
Projetista de fluxo de campo
Projetista de componente
Esses componentes permitirão a um projetista deaplicações para a plataforma móvel projetar eficientementee especificar módulos operacionais, especificar módulosoperacionais previamente definidos para inclusão, e dessemodo projetar eficientemente e implementar aplicações demódulos. Essas ferramentas serão descritas em detalhesadicionais abaixo.
A. PROJETISTA DE ADAPTAÇÃO DE DADOS (DAD)
0 DAD prove a capacidade de conectar-se a, econstruir componentes de dados para, qualquer adaptador defonte de dados de empresa. Na modalidade ilustrada, o DAD eadaptadores utilizam um plug-in ".NET" de acordo com aplataforma móvel descrita aqui. Aqueles versados na técnicaentenderão o funcionamento da configuração ".NET" fornecidapor Microsoft Corporation de Redmond, Washington, EUA. Oscomponentes da plataforma móvel incluem um Objeto ■ deConexão, Objeto de Comando, Objeto de Dados e Visualização.
Para criar ou modificar um TransApp para aplataforma móvel, um usuário utilizará o DAD para criar umObjeto de Conexão para ter acesso a uma fonte de dados deempresa back-end utilizando um Adaptador de fonte de dados.Como observado anteriormente, os Adaptadores de fonte dedados de empresa são configurados para fazer interface comconfigurações de dados diferentes de múltiplas fontes dedados. O Obj eto de Conexão exporá quaisquer obj etos deinterface de dados disponíveis que são disponíveis,utilizando um processo de intraspeção ou descoberta, ou umadescrição predeterminada. Os objetos de interface de dadosserão expostos através do Adaptador como uma Tabela, umProcedimento armazenado, um Script, ou um Obj eto.Utilizando o DAD, um usuário criará então uma série deObjetos de comando que executam ações especificas atravésde um Adaptador, executando ações como Selecionar, Inserir,atualizar e/ou deletar. Um usuário de DAD pode definirentão um Objeto de Dados no qual selecionará o ComandoSelecionar, Comando Inserir, Comando Atualizar e/ou ComandoDeletar apropriado. Uma Visualização é então ligada aoObjeto de Dados para suas ações de solicitação e resposta.Desse modo, a ferramenta de DA D permite que umdesenvolvedor solicite e persista dados de uma ou maisfontes de dados de empresa back-end mapeados para um únicoobjeto de dados definido dentro do Servidor, desse modofornecendo uma camada de abstração para as capacidades deinterface e estrutura de dados fisica. Após a aplicação deservidor ter sido desse modo definida e implementada,clientes móveis podem realizar interface para as fontes dedados de empresa através do servidor de plataforma móvel,que utiliza a definição dos componentes de plataforma deConexão, Comando, Dados e Visualização para determinar comoe quais dados recuperar ou persistir para uma fonte dedados de empresa back-end.
A figura 5 ilustra uma foto de tela de uma janelade display de interface de usuário gráfico para o programade projetista de aplicação DAD mencionado acima. 0 displayda figura 5 permite que o usuário de DADO projete umaaplicação móvel para uso em combinação com a plataformamóvel descrita aqui. A figura 5 mostra que a janela dedisplay inclui uma barra de menu para os menus Arquivar eVisualizar a fim de selecionar TransApps e operações aserem executadas nos mesmos através do programa de DAD. Asoperações a serem executadas podem incluir criar, abrir,salvar, editar, deletar, copiar, link, e similares. Ajanela de display da figura 5 inclui uma área de trabalho(no lado esquerdo da foto de tela) na qual um usuário podedispor de forma gráfica uma seqüência de operaçõesTransApp, para especificar fluxos de força interconectadoslateralmente através da página de display e especificarfluxos de campo interconectados verticalmente para cima epara baixo da página. As páginas de display dos váriosfluxos de força e fluxos de campo são representados comofolhas na figura 5. Através da interface do DAD ilustradona figura 5, o usuário pode criar e configurar umaaplicação móvel, e o usuário pode adicionar TransApps,Fluxos de força, Folhas, Ações, Objetos comerciais, Itensde Menu, e Botões de Barra de ferramentas para as páginasde display de aplicação móvel no cliente, bem como designaruma tela Splash e designar um StartUpObject para aaplicação móvel. Como os links ou fluxos entre folhas sãoespecificados, o sistema pode gerar o código apropriado ouscripts para assegurar operação bem sucedida dos links efluxos após a TransApp ser executada no sistema.
O menu de Arquivo exibe uma lista de itens de meupara operações de edição de arquivo tipicas a seremaplicadas para TransApps, incluindo salvar e editar umaTransApp, criar, importar e imprimir uma TransApp. O menuVisualizar exibe uma lista de opções de visualização para aj anela de display, como mostrar uma visualização dedisposição (como a visualização de disposição defaultilustrada na figura 5), controle de display de zoom,display de um único item da TransApp, uma visuali zaçãohierárquica que prove uma representação de estrutura deárvore da TransApp, e similares.
O lado direito da figura 5 mostra uma lista doscomponentes que um projetista desenvolvedor pode selecionarpara ser inclui da em um display de j anel a da aplicaçãomóvel, a ser gerada para display no dispositivo de cliente.Os componentes podem aparecer na aplicação móvel comobotões de display para seleção de ações ou como janelas dedados para entrada de dados pelo usuário da aplicaçãomóvel. Os componentes podem ser armazenados e recuperadoscomo coleções de componentes, como indicado na figura 5.Isto é, o projetista será capaz de importar e editar umaTransApp ou FieldFlow existente bem como criar uma novatransApp ou FieldFlow pelo nome para usar na aplicaçãomóvel. Em qualquer caso, o usuário será capaz de adicionar,editar e remover Fluxos de Força, Folhas, ações, Objetoscomerciais, Itens de Menu e Botões de barra de ferramenta,utilizando a interface gráfica do DAD, como representado nafigura 5.
0 componente "ações" permite que um projetistadefina ações que se aplicam no nivel TransApp, o componentede "objetos comerciais" permite que um projetista definaobjetos comerciais que se aplicam no nivel TransApp, ocomponente de fonte de dados permite que um projetistaexiba uma fonte de dados selecionada e identifique umservidor e adaptador a ser utilizado, e o componente defluxo de força permite que um projetista adicione, edite eremova fluxos de força a partir da TransApp. As açõesaplicadas no nivel TransApp (como na janela da figura 5)serão aplicadas nos formulários e formulários de fluxo deforça na TransApp. Essas ações podem passar por cima,apensar, ou colocar as ações encontradas nas folhas de basedos fluxos de força. Quaisquer botões de barra deferramenta e itens de menu adicionados no nivel de TransAppaplicarão botões correspondentes e itens de menu a todos osformulários (incluindo fluxos de força) na TransApp. Essesbotões e itens de menu estão em adição a quaisquer botões" eitens de menu especificados no formulário individual enivel de formulário de fluxo de força.
A figura 5 indica que a coleção de ações, objetoscomerciais, fluxos de força, e similares podem serutilizados na configuração de TransApps. Para suportar taismanipulações, o programa de aplicação de DAD também incluiuma função de editor de coleção que pode ser lançado quandouma coleção é selecionada a partir do display da figura 5.
A figura 6 é um exemplo de uma foto de tela deeditor de coleção. Na figura 6, o editor é adaptado paramanipulações de coleções de TransApp. 0 lado esquerdo dodisplay da figura 6 mostra nomes de TransApps que sãoabertos pelo editor e estão disponíveis para manipulação econfiguração. 0 lado direito do display da figura 6 mostraações (e coleções de ações) que podem ser especificadaspara a TransApp por clicar nos itens de menu de display etambém mostra uma opção "Launch Designer", especificação deTransApp por nome, e mostra uma opção de formulário queexibe uma lista de TransApps de base que são disponíveispara manipulação e configuração, e permite nomeação de umanova TransApp a ser criada.
0 editor de coleção propagará alterações naj anela de editor para folhas correspondentes e fluxos deforça da TransApp. Isto é, quaisquer ações aplicadas nonivel TransApp (como na janela da figura 5) serão aplicadasnas folhas e formulários e formulários de fluxo de força naTransApp de base (isto é, a TransApp na qual as funções deedição estão sendo executadas). Essas ações podem passarpor cima, apensar ou colocar as ações encontradas nasfolhas de base dos fluxos de força.
B. COMPONENTES FUNCIONAIS
Como observado acima, o Projetista de Adaptaçãode dados incorporará suporte para cinco ferramentas decomponentes diferentes com as quais as TransApps podem serconfiguradas e manipuladas. Esses componentes incluemProjetista de Regra Comercial, Projetista de Objetocomercial, Projetista de Fluxo de força, Projetista deFluxo de campo, e Projetista de componente.
1. Projetista de regra comercial
0 componente Projetista de regra comercial provea capacidade de criar regras comerciais simples em umformato "Se...Então... Ou...". Tais construções devem serexecutadas pelo SmartClient ou Servidor anexado a um oumais Eventos, como descrito acima. A Regra comercial podeser definida em uma interface simples que pode serfornecida por aqueles versados na técnica ou por umlançamento para "VS.NET" disponível a partir da MicrosoftCorporation e pode ser codificada em uma Sintaxe Gerenciadasuportada (por exemplo, VB.NET, C#, etc), como sabido poraqueles versados na técnica.
As regras comerciais podem ser aplicadas aquaisquer das folhas na TransApp em resposta a condições dedados ou dados inseridos na plataforma móvel (cliente). Porexemplo, um projetista de plataforma móvel pode utilizar oProjetista de regra comercial do DAD para especificar umaregra de tal modo que, se uma condição de dados ou entradade dados de usuário de cliente estiver além de umaquantidade limite predeterminada ou não estivercompreendida em uma condição prescrita, então o programa deaplicação móvel pode iniciar um display que mostra promptao usuário a tomar ação corretiva ou fornecer informaçõesadicionais ou similares. Em uma conta de despesa rastreandoTransApp para uma aplicação móvel, por exemplo, uma regracomercial pode verificar para identificar se um usuário decliente entra um valor de gasto que é maior do que umlimite predeterminado, em cujo caso a aplicação iniciaráuma ação predeterminada compreendendo pedir ao usuáriocliente um código de autorização para aceitar o valor.
2. Projetista de objeto comercial
0 componente Projetista de Obj eto Comercial provea capacidade de criar e definir um Objeto Comercial em metadados ligados a uma ou mais Visualizações a partir de umaou mais fontes de dados back-end que podem ser utilizadaspor uma ou mais Aplicações de Clientes Móveis utilizando oplug-in "VS.NET" de Dexterra Studio. A capacidade de criarrelações para um ou mais outros Objetos comerciais proveuma arquitetura de componente de aplicação Orientada paraObjeto verdadeira utilizando o plug-in VS.NET de DexterraStudio.
A funcionalidade de projetista de Objetocomercial permite que um desenvolvedor configure adefinição de um Objeto Comercial incluindo Propriedades,Valores default, Relações, Condições de filtro, Permissões,Aplicações associadas e Regras comerciais. Utilizando oProjetista de Objeto comercial DAD, um desenvolvedor podeconfigurar a definição de um Objeto comercial incluindoPropriedades, Valores default, Relações, Condições deFiltro, Permissões, Aplicações associadas e Regrascomerciais.
A figura 7 é uma foto de tela exemplar de umeditor de Objeto comercial para uso com coleções de objetoscomerciais para TransApps. 0 editor de Obj eto comercialpermite que um usuário DAD acrescente e remova obj etoscomerciais a partir de uma aplicação móvel, uma TransApp,um fluxo de força, ou uma folha, bem como propriedades dealteração de objetos comerciais específicos que são abertoscom o editor.
A foto de tela da figura 7 mostra a j anela dedisplay de programa da ferramenta DAD com uma sub-janela dePropriedades para uma coleção nomeada especifica de dadosdenominados BusinessObj ectSetl, como indicado pela áreacirculada na figura 7. A sub-j anela indica ações de ediçãoespecificas que podem ser executadas com relação a um oumais dos Obj etos comerciais na coleção de obj eto comercialnomeado.
3. Projetista de fluxo de força
0 componente Projetista de Fluxo de Força prove acapacidade de criar um ou mais processos comerciais decliente móvel utilizando uma superfície de ferramenta deprojetista para fácil construção e geração, novamenteutilizando o plug-in "VS.NET" de Dexterra Studio.
A funcionalidade de Projetista de Fluxo de Forçapermite que um desenvolvedor disponha (isto é, projete superfícies) de um processo comercial móvel e configure a
ligação à definição de meta dados configurados utilizando oProjetista de Objeto Comercial.
A figura 8 mostra que a interface de Projetistade Fluxo de força permite que um usuário DAD adicione e edite as operações a serem executadas por um fluxo deforça. O usuário DAD pode adicionar ações, objetoscomerciais, itens de menu, e botões de barra de ferramentaàs folhas do fluxo de força. Como com as outras janelas deedição do DAD, quaisquer ações aplicadas nesse nivel (fluxode força) serão aplicadas no próprio formulário de TransApp(fluxo de força) correspondente ou nas operações do própriofluxo de força, e as ações podem passar por cima, apensar,ou colocar as ações nos formulários de base. Além disso,quaisquer botões de barra de ferramenta ou itens de menuadicionados com o editor de Projetista de Fluxo de força
serão aplicados em barras de ferramentas e menuscorrespondentes em todas as operações dos formulários defluxo de força.
Na figura 8, um fluxo de força denominadoLinkForceFlow é selecionado, como indicado por seu nome na
área de trabalho da janela de display e a linha tracejadacirculando as folhas denominadas Visão Geral, Detalhes eFinalizar. Clicar na caixa de nome ForceFlows no ladodireito também pode fazer com que o DAD automaticamentemostre fluxos de força disponíveis (isto é, coleções de
fluxos de força). Esses fluxos de força podem seradicionados a, copiados, e de outro modo editados comrelação ao fluxo de força atual (LinkForceFlow) através dainterface de usuário de ferramenta DAD. A figura 9 mostraum display de editor de coleção de fluxo de força que umusuário DAD pode utilizar para visualizar membros decoleções de fluxo de força e selecionar quaisquer fluxos deforça de interesse para visualização e manipulação.
4. Projetista de Fluxo de Campo
0 componente Projetista de Fluxo de Campo prove acapacidade de criar telas simples e fluxo de trabalho comoprocessos de Visualizar, Visualizar Muitos, Editar e/ouLocalizar utilizando o plug-in VS.NET da Dexterra Studio.
Um desenvolvedor utilizando o DAD pode carregarum gabarito de Fluxo de Campo (isto é, Visualizar,Visualizar Muitos, Editar ou Localizar) e lançar aferramenta de proj etista. A seguir o desenvolvedor podepreencher a Folha de Propriedade para o Gabarito pelaseleção do(s) Objeto(s) comercial(is) e configurar asfunções de tela. 0 componente Projetista de Fluxo de Campogera então a tela incluindo os elementos UI e código .NETque se liga à definição de meta dados dos ObjetosComerciais.
O Projetista de Fluxo de força (vide a discussãoacima) pode ser utilizado para especificar fluxos de campoque compreendem operações iniciadas a partir de folhasespecificas de um fluxo de força. A foto de tela deinterface de usuário de Projetista de Fluxo de Força éilustrada na figura 8.
5. Projetista de componente
O Projetista de Componente prove a capacidade decriar telas/formulários móveis utilizando um ou maiscontroles customi zados ou controles de composto que sãoligados à definição de metadados de um ou mais Obj etoscomerciais utilizando o plug-in "VS.NET" de DexterraStudio. Controles Customizados são os blocos de construçãomais básicos como Caixas de Texto, Grades, Listas, etc. quesão cientes de metadados. Controles de Composto sãocombinações de Controles Customizados que são cientes demeta dados e agrupados juntos para executar certasoperações como funções de dados 1-1 (um-para-um), 1-M, M-M.Módulos são um conjunto predefinido de ControlesCustomizados e Composto e/ou Telas que executam uma funçãocomercial básica como Captura de Assinatura, Login, etc.
Um desenvolvedor pode criar uma telaUl/formulário utilizando o DAD por seleção de um formuláriode base e arrastar Componentes (controles customizados oucontroles de composto) sobre o formulário e configurando afolha de propriedade para ligar-se a um ou mais Objetoscomerciais configurados em meta dados. 0 DAD inclui janelasde editor da função de Proj etista TransApp com as quaisfolhas, formulários, itens de menu, botões de barra deferramenta, e relações de mapeamento de dados podem serespecificados. Por exemplo, a figura 10 mostra um displayde Editor de Coleção de Item de Menu que um usuário de DADpode utilizar para adicionar um item de menu a uma folha defluxo de força. A figura 10 mostra que uma aplicação móveldenominada SmartApplication está sendo projetada (e/oueditada) e que uma sub-janela de propriedades mostrapropriedades da aplicação, com "SubMenuItems" selecionado(identificado pelas janelas circundas com o oval no ladodireito) e também mostra a sub-janela de Editor de coleçãoque é gerada em resposta, com uma lista de propriedades.Quando o usuário da ferramenta de DAD faz seleções noEditor de Coleção, ligações apropriadas de dados serãoespecificadas para os Obj etos Comerciais correspondentes,assegurando operações de transferência de dados apropriadasna aplicação de plataforma móvel em execução.A figura 11 mostra um display de Editor deColeção de Botão de Barra de ferramentas que um usuário deDAD pode utilizar para acrescentar um botão de barra deferramenta a uma folha de fluxo de força. A janela dedisplay é circulada na figura 11 para identificar a janelade display na frente da janela de aplicação de DADsubjacente. A figura 12 mostra um display de Mapeamento queum usuário de DAD pode utilizar para especificarmapeamentos de dados, com a seleção de Mapeamentos najanela de Editor e objetos comerciais de fonte e objetoscomerciais de destino especificados na janela de Editor deColeção de Mapeamento e na caixa de diálogo de Mapeamentode Objeto comercial. A janela de editor, identificada pelaárea circulada, indica que objetos podem ser especificadospara mapeamento por nome a partir de uma lista suspensa,fornecendo uma interface de usuário conveniente.
C. CONSTRUÇÃO MODULAR
Como observado acima, ferramentas de proj etistasão fornecidas para usar, configurar e adaptar seqüênciasoperacionais do sistema de dados móvel com os módulosoperacionais denominados aplicações transportáveis("TransApps") . As TransApps são obj etos de dados que sãoautônomos e capazes de serem unidos com outras seqüênciasoperacionais e com outras TransApps. Como ilustrado nosdesenhos e descrito acima, as ferramentas de usuáriopermitem uso, configuração e adaptação das TransAppsatravés de uma interface de usuário conveniente que nãorequer conhecimento de código de programação.
Cada módulo operacional TransApp pode aceitardados de entrada e pode gerar dados de saida. Os dados deentrada podem ser recebidos a partir de outros módulos ou apartir do usuário de aplicação, ou a partir de fontes dedados de empresa. Os dados de saida podem ser fornecidospara outros módulos TransApp, ou para o servidor deaplicação (para fontes de dados de empresa), ou podem serfornecidos para display no próprio dispositivo decomputação móvel. Desse modo, módulos podem ser definidospara fins de soluções especificas de problemas, e taismódulos de solução de problema podem ser reutilizadosdurante outros esforços de desenho de aplicação. Comodescrito aqui, os módulos operacionais TransApp podem sergerenciados através de uma interface de usuário convenientesem experiência de programação especializada.
A figura 13 é um diagrama de fluxo que ilustraoperações executadas por um sistema de computador naexecução de um módulo de aplicação TransApp em um servidorde aplicação móvel para processamento de dados que sãocompartilhados entre múltiplas fontes de dados de empresa eum cliente móvel que se comunica com um servidor deaplicação. A primeira operação, na caixa de diagrama defluxo numerada 1302, deve especificar dados a seremsolicitados a partir de uma ou mais das múltiplas fontes dedados de empresa e especificar um mapeamento dos dadosespecificados para um único objeto de Dados definido noservidor de aplicação. A seguir, em 1304, um Obj eto deConexão é criado (instanciado) que expõe objetos deinterface de dados no servidor de aplicação que fornecemacesso aos dados especificados nas fontes de dados deempresa, onde os obj etos de interface de dados compreendemum ou mais Obj etos de Adaptador no servidor de aplicação ecompreendem dados que são uma tabela de dados, umprocedimento armazenado, um script, ou um objeto de dados.Em 1306 o sistema cria um ou mais Obj et os de Comando queexecutam ações de dados nos dados especificados, onde osObjetos de Comando permitem a seleção de um ou maiscomandos nos dados especificados que incluem comandosincluindo selecionar dados, inserir dados, atualizar dadose deletar dados. Em 1308 um Objeto de Dados é definido queespecifica uma ou mais ações de dados nos Ob j et os deComando. E em 1310 um Objeto de Visualização é ligado aoObjeto de Dados definidos de tal modo que o objeto deVisualização realiza interface com os dados especificados.Desse modo, uma aplicação transportavel é produzida queinclui a solicitação para os dados especificados emapeamento de tal modo que a aplicação transportavelcompreenda uma aplicação de programa de computador modularque pode ser instalado no servidor de aplicação paracomunicação dos dados especificados com o cliente móvel, detal modo que o servidor de aplicação ligará automaticamentea aplicação transportavel com outras aplicaçõestransportáveis do servidor de aplicação de acordo com seusrespectivos dados especificados e mapeamentos.
De acordo com a invenção, ' uma ferramenta deprograma de computador mencionada como "DAD" para uso porproj etistas de aplicações móveis é fornecida para usar,configurar e adaptar seqüências operacionais do sistema deintegração de dados móvel com a TransApp. A ferramenta deprograma de aplicação de DAD prove essas característicasatravés da interface de usuário ilustrada nos desenhos.Desse modo, a ferramenta de programa de aplicação de DADprove um meio para especificar dados a serem solicitados deuma ou mais das múltiplas fontes de dados de empresa emapeamento dos dados especificados para um único Objeto dedados definidos no servidor de aplicação de Dexterra pormeio de criação e manipulação de TransApps. Desse modo, oprograma de aplicação de DAD também prove um meio paraproduzir uma aplicação transportavel de TransApp que incluia solicitação para os dados especificados e mapeamento detal modo que a aplicação transportavel compreende umaaplicação de programa de computador modular que pode serinstalado no servidor de aplicação para comunicação dosdados especificados com o cliente móvel, e de tal modo qüeo servidor de aplicação ligará automaticamente a aplicaçãotransportável com outras aplicações transportáveis doservidor de aplicação de acordo com seus respectivos dadosespecificados e mapeamentos. Aqueles versados na técnicareconhecerão que a "produção" de uma TransApp pode envolvea checagem de especificações adequadas e parâmetros nocódigo de módulo, como verificar parâmetros de dados,assegurar disponibilidade de objeto de dados adequada,verificar ligações de obj etos de dados, e similares paradesempenho adequado de módulo de acordo com a configuraçãode objeto de dados do sistema de plataforma móvel.
0 programa de computador compreendendo aferramenta DADA pode ser instalado em um sistema ouaparelho de computador, como um computador des ktop,computador notebook, ou similar, desde que o programa deferramenta DAD possa receber entrada de usuário pararealizar o processo de configuração de TransApp e possaverificar fontes de dados, ligações, e similares. ATransApp configurada pode ser incluida em uma plataformamóvel e instalada em um servidor de aplicação da plataformamóvel como descrito acima, de modo que as característicasoperacionais da TransApp possam ser utilizadas nos clientesmóveis para operações com as fontes de dados de empresa.
Desse modo, as TransApps são autônomas e capazesde serem unidas com outras seqüências operacionais e comoutras TransApps. A ferramenta de DAD permite uso,configuração, e adaptação de aplicações através de umainterface de usuário conveniente que não requerconhecimento de código de programação. Desse modo,TransApps modulares podem ser definidos para fins desoluções específicas de problemas, e tais módulos desolução de problema podem ser reutilizados durante outrosesforços de projeto de aplicação- A ferramenta de DADpermite o gerenciamento de módulos operacionais deTransApps através de uma interface de usuário convenientesem experiência especializada de programação.
A presente invenção foi descrita acima em termosde uma modalidade atualmente preferida de modo que umentendimento da presente invenção possa ser passado. Há,entretanto, muitas configurações para sistemas de dados deempresa móveis não especificamente descritos aqui porém comos quais a presente invenção é aplicável. A presenteinvenção não deve ser portanto vista como limitada àsmodalidades específicas descritas aqui, porém em vez disso,deve ser entendido que a presente invenção tem amplaaplicabilidade com relação aos sistemas de dados de empresamóveis em geral. Todas as modificações, variações ouarranj os e implementações equivalentes que estãocompreendidas no escopo das reivindicações em anexo devemser portanto, consideradas compreendidas no escopo dainvenção.
Claims (17)
1. Sistema de programa de computador paraconstruir uma aplicação de programa de computador modularpara processamento de dados que são compartilhados entremúltiplas fontes de dados de empresa e um cliente móvel quese comunica com um servidor de aplicação, o sistemacompreendendo:meio de projetista para especificar dados a seremsolicitados de uma ou mais das múltiplas fontes de dados deempresa e mapear os dados especificados para um únicoobjeto de Dados definido no servidor de aplicação; emeio produtor para produzir uma aplicaçãotransportável que inclui a solicitação para os dadosespecificados e mapear de tal modo que a aplicaçãotransportável compreenda uma aplicação de programa decomputador modular que pode ser instalado no servidor deaplicação para comunicação dos dados especificados com ocliente móvel, de tal modo que o servidor de aplicaçãoligará automaticamente a aplicação transportável com outrasaplicações transportáveis do servidor de aplicação deacordo com seus respectivos dados especificados emapeamentos.
2. Sistema, de acordo com a reivindicação 1, emque o meio projetista compreende ainda:meio para criar um Objeto de Conexão que expõeobjetos de interface de dados no servidor de aplicação quefornecem acesso aos dados especificados nas fontes de dadosde empresa;meio para criar um ou mais Objetos de Comando queexecutam ações de dados nos dados especificados;meio para definir um Objeto de Dados definidosque especifica uma ou mais ações de dados nos Objetos decomando; emeio para ligar um Objeto de visualização aoObj et o de Dados definidos de tal modo que o objeto deVisualização faz interface com os dados especificados.
3. Sistema, de acordo com a reivindicação 2, emque os objetos de interface de dados compreendem um ou maisObjetos de Adaptador no servidor de aplicação.
4. Sistema, de acordo com a reivindicação 3, emque os Objetos de Adaptador fazem interface com o objeto deConexão para expor os objetos de interface de dados comodados compreendendo uma tabela de dados, um procedimentoarmazenado, um script, ou um objeto de dados.
5. Sistema, de acordo com a reivindicação 2, emque o meio para criar um ou mais Objetos de Comando permiteseleção de um ou mais comandos nos dados especificados queincluem selecionar dados, inserir dados, atualizar dados edeletar dados.
6. Método de operar uma aplicação de programa decomputador modular para processamento de dados que sãocompartilhados entre múltiplas fontes de dados de empresa'eum cliente móvel que se comunica com um servidor deaplicação, o método compreendendo:especificar dados a serem solicitados de uma oumais das múltiplas fontes de dados de empresa e mapear osdados especificados para um único Obj eto de Dados definidosno servidor de aplicação; eproduzir uma aplicação transportável que inclui asolicitação para os dados especificados e mapear de talmodo que a aplicação transportável compreenda uma aplicaçãode programa de computador modular para operação no servidorde aplicação para comunicação dos dados especificados com ocliente móvel, de tal modo que o servidor de aplicaçãoligue automaticamente a aplicação transportável com outrasaplicações transportáveis do servidor de aplicação deacordo com seus respectivos dados especificados emapeamentos.
7. Método, de acordo com a reivindicação 6,incluindo ainda:criar um Objeto de Conexão que expõe objetos deinterface de dados no servidor de aplicação que fornecemacesso aos dados especificados nas fontes de dados deempresa;criar um ou mais Objetos de Comando que executamações de dados nos dados especificados;definir um Objeto de Dados definidos queespecifica uma ou mais ações de dados nos Objetos decomando; eligar um Obj eto de visualização ao Obj eto deDados definidos de tal modo que o objeto de Visualizaçãofaz interface com os dados especificados.
8 . Método, de acordo com a reivindicação 7, emque os objetos de interface de dados compreendem um ou maisObj etos de Adaptador no servidor de aplicação.
9. Método, de acordo com a reivindicação 8, émque inclui ainda fazer interface dos Objetos de Adaptadorcom o obj eto de Conexão para expor os obj etos de interfacede dados como dados compreendendo uma tabela de dados, umprocedimento armazenado, um script, ou um objeto de dados.
10. Método, de acordo com a reivindicação 7, emque inclui ainda criar um ou mais Objetos de Comandopermite seleção de um ou mais comandos nos dadosespecificados que incluem selecionar dados, inserir dados,atualizar dados e deletar dados.
11. Método de operar uma aplicação de programa decomputador modular para processamento de dados que sãocompartilhados entre múltiplas fontes de dados de empresa eum cliente móvel que se comunica com um servidor deaplicação, o método compreendendo:especificar dados a serem solicitados de uma oumais das múltiplas fontes de dados de empresa e mapear osdados especificados para um único Objeto de dados definidosno servidor de aplicação;criar um Obj eto de conexão que expõe obj etos deinterface de dados no servidor de aplicação que fornecemacesso aos dados especificados nas fontes de dados deempresa, onde os objetos de interface de dados compreendemum ou mais Objetos de adaptador no servidor de aplicação ecompreendem dados que são uma tabela de dados, umprocedimento armazenado, um script, ou um objeto de dados;criar um ou mais Objetos de comando que executamações de dados nos dados especificados, onde os Objetos deComando permitem seleção de um ou mais comandos nos dadosespecificados que incluem comandos incluindo selecionardados, inserir dados, atualizar dados, e deletar dados;definir um obj eto de Dados definidos queespecifica uma ou mais ações de dados nos Objetos decomando;ligar um Obj eto de Visualização ao Obj eto deDados definidos de tal modo que o Objeto de Visualizaçãofaz interface com os dados especificados; eproduzir uma aplicação transportável que inclui asolicitação para os dados especificados e mapeamento de talmodo que a aplicação transportável compreende uma aplicaçãode programa de computador modular que pode ser instalada noservidor de aplicação para comunicação dos dadosespecificados com o cliente móvel, de tal modo que oservidor de aplicável ligará automaticamente a aplicaçãotransportável com outras aplicações transportáveis doservidor de aplicação de acordo com seus respectivos dadosespecificados e mapeamentos,
12. Sistema de programa de computador paraprocessamento de dados que são compartilhados entremúltiplas fontes de dados de empresa e um cliente móvel, osistema compreendendo:um processador que se comunica com o clientemóvel e faz interface com as fontes de dados de empresaatravés de um servidor de aplicação;um módulo de aplicação transportável queespecifica dados a serem solicitados a partir de uma oumais das múltiplas fontes de dados de empresa e especificaum mapeamento a partir dos dados especificados para umúnico Ob j et o de Dados Definidos, de tal modo que o módulode aplicação transportável produza saida e receba entradapara comunicação com o servidor de aplicação e clientemóvel, de tal modo que o processador liga automaticamente omódulo de aplicação transportável com outros módulos deaplicação transportávels do sistema de programa decomputador de acordo com respectivos dados especificados emapeamentos do módulo de aplicação transportável.
13. Sistema, de acordo com a reivindicação 12, emque o módulo de aplicação transportável especifica ainda:um Obj eto de Conexão que expõe obj etos deinterface de dados no servidor de aplicação que fornecemacesso aos dados especificados nas fontes de dados deempresa;um ou mais Objetos de Comando que executam açõesde dados nos dados especificados;um Objeto de Dados definidos' que especifica umaou mais ações de dados nos Objetos de comando; eum Objeto de visualização que é ligado ao Objetode Dados definidos de tal modo que o objeto de Visualizaçãofaz interface com os dados especificados.
14. Sistema, de acordo com a reivindicação 13, emque os objetos de interface de dados compreendem um ou maisObjetos de Adaptador no servidor de aplicação.
15. Sistema, de acordo com a reivindicação 14, emque os Objetos de Adaptador fazem interface com o objeto deConexão para expor os obj etos de interface de dados comodados compreendendo uma tabela de dados, um procedimentoarmazenado, um script, ou um objeto de dados.
16. Sistema, de acordo com a reivindicação 13, emque os Obj et os de Comando permitem seleção de um ou maiscomandos nos dados especificados que incluem selecionardados, inserir dados, atualizar dados e deletar dados.
17. Sistema de programa de computador paraprocessamento de dados que são compartilhados entremúltiplas fontes de dados de empresa e um cliente móvel, osistema compreendendo:um processador que se comunica com o clientemóvel e faz interface com as fontes de dados de empresaatravés de um servidor de aplicação;um obj eto de dados de módulo de aplicaçãotransportável armazenado no sistema, em que o objeto dedados de módulo de aplicação transportável especifica dadosa serem solicitados de uma ou mais das múltiplas fontes dedados de empresa e especifica mapeamento dos dadosespecificados para um único Objeto de dados definidos, detal modo que o módulo de aplicação transportável produzsaida e recebe entrada para comunicação como servidor deaplicação e cliente móvel, e de tal modo que o processadorliga automaticamente o módulo de aplicação transportávelcom outros módulos de aplicação transportáveis do sistemade programa de computador de acordo com respectivos dadosespecificados e mapeamentos do módulo de aplicaçãotransportável, e em que o módulo de aplicação transportávelespecifica aindaum Obj eto de conexão que expõe obj etos deinterface de dados no servidor de aplicação que fornecemacesso aos dados especificados nas fontes de dados deempresa, onde os objetos de interface de dados compreendemum ou mais Objetos de Adaptador no servidor de aplicação ecompreendem dados que são uma tabela de dados, umprocedimento armazenado, um script ou um objeto de dados,um ou mais Objetos de comando que executam açõesde dados nos dados especificados, onde os Objetos deComando permitem seleção de um ou mais comandos nos dadosespecificados que incluem comandos incluindo selecionardados, inserir dados, atualizar dados, e deletar dados,identifica um Obj eto de Dados definidos queespecifica uma ou mais ações de dados nos Objetos deComando,identifica um Obj eto de visualização que é ligadoao Objeto de Dados definidos de tal modo que o objeto deVisualização faz interface com os dados especificados.
Applications Claiming Priority (9)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US66412105P | 2005-03-21 | 2005-03-21 | |
US66408805P | 2005-03-21 | 2005-03-21 | |
US66412205P | 2005-03-21 | 2005-03-21 | |
US60/664,088 | 2005-03-21 | ||
US60/664,122 | 2005-03-21 | ||
US60/664,121 | 2005-03-21 | ||
US66781605P | 2005-04-01 | 2005-04-01 | |
US60/667,816 | 2005-04-01 | ||
PCT/US2006/010507 WO2006102473A2 (en) | 2005-03-21 | 2006-03-21 | Modular applications for mobile data system |
Publications (1)
Publication Number | Publication Date |
---|---|
BRPI0609335A2 true BRPI0609335A2 (pt) | 2010-03-16 |
Family
ID=36691719
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
BRPI0609335-3A BRPI0609335A2 (pt) | 2005-03-21 | 2006-03-21 | aplicações modulares para sistema móvel de dados |
BRPI0609334-5A BRPI0609334A2 (pt) | 2005-03-21 | 2006-03-21 | gerenciamento de dados para sistema de dados móvel |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
BRPI0609334-5A BRPI0609334A2 (pt) | 2005-03-21 | 2006-03-21 | gerenciamento de dados para sistema de dados móvel |
Country Status (7)
Country | Link |
---|---|
US (7) | US20060212543A1 (pt) |
EP (3) | EP1866763A2 (pt) |
JP (3) | JP2008537818A (pt) |
AU (3) | AU2006226959A1 (pt) |
BR (2) | BRPI0609335A2 (pt) |
SG (3) | SG162819A1 (pt) |
WO (3) | WO2006102474A2 (pt) |
Families Citing this family (114)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1951060B (zh) | 2004-04-30 | 2011-11-30 | 捷讯研究有限公司 | 处理数据传输的系统和方法 |
US20060212543A1 (en) * | 2005-03-21 | 2006-09-21 | Dexterra, Inc. | Modular applications for mobile data system |
US7614082B2 (en) | 2005-06-29 | 2009-11-03 | Research In Motion Limited | System and method for privilege management and revocation |
US20150331565A1 (en) * | 2005-07-22 | 2015-11-19 | Danny M. Scarboro | Method for Generating Database Components Code |
US7433877B2 (en) * | 2005-10-13 | 2008-10-07 | International Business Machines Corporation | System and method to dynamically check string length |
US20070088732A1 (en) * | 2005-10-13 | 2007-04-19 | Yen-Fu Chen | Dynamic string length checking for off-line processing using client-side caching of database catalog |
US7603365B2 (en) * | 2005-10-13 | 2009-10-13 | International Business Machines Corporation | System and method for capture and processing of overflow characters from user input |
WO2007111751A2 (en) * | 2005-12-20 | 2007-10-04 | Springett John C | Architecture for a smart enterprise framework and methods thereof |
US7890478B2 (en) * | 2006-04-24 | 2011-02-15 | Sap Ag | Projected business objects |
CN101454777A (zh) * | 2006-06-26 | 2009-06-10 | 国际商业机器公司 | 保证不同软件应用程序采集的数据随时间的一致性的方法和系统 |
US20110099463A1 (en) * | 2006-07-14 | 2011-04-28 | Molsoft Llc | Structured documents and systems, methods and computer programs for creating, producing and displaying three dimensional objects and other related information in structured documents |
US20080183766A1 (en) * | 2007-01-31 | 2008-07-31 | Weston David W | Methods and systems for inductive data transformation |
US8019781B2 (en) * | 2007-02-15 | 2011-09-13 | Microsoft Corporation | Host context framework |
JP5105922B2 (ja) * | 2007-03-22 | 2012-12-26 | 日本電気株式会社 | 情報更新システム、情報記憶サーバ、情報更新方法、及び、プログラム |
US9058571B2 (en) * | 2007-08-31 | 2015-06-16 | Red Hat, Inc. | Tool for automated transformation of a business process definition into a web application package |
US8825713B2 (en) * | 2007-09-12 | 2014-09-02 | Red Hat, Inc. | BPM system portable across databases |
WO2009043030A2 (en) * | 2007-09-28 | 2009-04-02 | Xcerion Aktiebolag | Network operating system |
US8954952B2 (en) * | 2007-11-30 | 2015-02-10 | Red Hat, Inc. | Portable business process deployment model across different application servers |
KR100936239B1 (ko) * | 2007-12-18 | 2010-01-12 | 한국전자통신연구원 | 스트리밍 기반 이동형 소프트웨어 제공 시스템 및 방법 |
US8239501B1 (en) * | 2008-01-22 | 2012-08-07 | Salesforce.Com, Inc. | System, method and computer program product for creating mobile custom views with filtering for tenants of an on-demand database service |
US8019863B2 (en) | 2008-03-28 | 2011-09-13 | Ianywhere Solutions, Inc. | Synchronizing events between mobile devices and servers |
US8073007B2 (en) | 2008-06-24 | 2011-12-06 | Qualcomm Incorporated | Method and apparatus for intertechnology IPv6 address configuration |
US8316137B2 (en) * | 2008-06-24 | 2012-11-20 | Qualcomm Incorporated | Method and apparatus for ensuring IPv6 uniqueness in a mobile subnetted environment |
AU2009280854A1 (en) * | 2008-07-17 | 2010-02-18 | Talisma Corporation Private Ltd. | Method to send a short message service (SMS) campaign to a related object by selecting the base object |
US9477727B2 (en) * | 2008-08-01 | 2016-10-25 | Sybase, Inc. | Abstracting data for use by a mobile device having occasional connectivity |
US20100030598A1 (en) * | 2008-08-01 | 2010-02-04 | Electronic Data Systems Corporation | Platform provisioning system and method |
US9195525B2 (en) | 2008-10-21 | 2015-11-24 | Synactive, Inc. | Method and apparatus for generating a web-based user interface |
US10523767B2 (en) | 2008-11-20 | 2019-12-31 | Synactive, Inc. | System and method for improved SAP communications |
US20100313182A1 (en) * | 2009-06-05 | 2010-12-09 | Microsoft Corporation | Extensible user interface generation |
US20100319002A1 (en) * | 2009-06-11 | 2010-12-16 | Compiere, Inc. | Systems and methods for metadata driven dynamic web services |
US8589516B2 (en) | 2009-09-10 | 2013-11-19 | Motorola Mobility Llc | Method and system for intermediating content provider website and mobile device |
US20110093619A1 (en) * | 2009-10-16 | 2011-04-21 | Ianywhere Solutions, Inc. | Synchronizing Tasks between Mobile Devices and Servers |
US10019677B2 (en) | 2009-11-20 | 2018-07-10 | Alert Enterprise, Inc. | Active policy enforcement |
US10027711B2 (en) * | 2009-11-20 | 2018-07-17 | Alert Enterprise, Inc. | Situational intelligence |
CN102098347B (zh) * | 2009-12-15 | 2015-04-01 | 中兴通讯股份有限公司 | 基于终端的互联网地址管理方法及系统 |
US8434097B2 (en) * | 2009-12-30 | 2013-04-30 | Sybase, Inc. | Dynamic data binding for MBOs for container based application |
CN101827118B (zh) * | 2010-02-10 | 2012-11-07 | 北京易路联动技术有限公司 | 一种移动终端得到数据对象的方法及移动终端 |
US20110202384A1 (en) * | 2010-02-17 | 2011-08-18 | Rabstejnek Wayne S | Enterprise Rendering Platform |
US9852384B2 (en) * | 2010-02-23 | 2017-12-26 | Microsoft Technology Licensing, Llc | Web-based visual representation of a structured data solution |
US8341224B2 (en) * | 2010-02-24 | 2012-12-25 | Microsoft Corporation | Multi-master text synchronization using deltas |
US8244609B2 (en) * | 2010-04-02 | 2012-08-14 | Intel Corporation | Payment management on mobile devices |
US8990427B2 (en) * | 2010-04-13 | 2015-03-24 | Synactive, Inc. | Method and apparatus for accessing an enterprise resource planning system via a mobile device |
CN101895851B (zh) * | 2010-06-30 | 2012-12-26 | 卓望数码技术(深圳)有限公司 | 一种插件式无线增值业务平台及其管理方法 |
US9037656B2 (en) | 2010-12-20 | 2015-05-19 | Google Technology Holdings LLC | Method and system for facilitating interaction with multiple content provider websites |
US20120158842A1 (en) * | 2010-12-20 | 2012-06-21 | Motorola-Mobility, Inc. | Method and System for Facilitating Interaction with Multiple Content Provider Websites |
US20120174092A1 (en) * | 2010-12-29 | 2012-07-05 | Wolfgang Faisst | Integrated commercial infrastructure and business application platform |
CN102158350B (zh) * | 2011-02-12 | 2012-11-21 | 华为终端有限公司 | 一种移动宽带设备及管理移动宽带设备的方法 |
GB2488754A (en) * | 2011-02-24 | 2012-09-12 | Forbes Hamilton | An intermediary server to bi-directionally convert the format of requests/responses between mobile devices and information sources |
US9146728B2 (en) * | 2011-08-03 | 2015-09-29 | Cinemotion, Llc | Mobile application creation platform |
US10621206B2 (en) | 2012-04-19 | 2020-04-14 | Full Circle Insights, Inc. | Method and system for recording responses in a CRM system |
US10599620B2 (en) * | 2011-09-01 | 2020-03-24 | Full Circle Insights, Inc. | Method and system for object synchronization in CRM systems |
US9497220B2 (en) | 2011-10-17 | 2016-11-15 | Blackberry Limited | Dynamically generating perimeters |
US9161226B2 (en) | 2011-10-17 | 2015-10-13 | Blackberry Limited | Associating services to perimeters |
US9031920B2 (en) * | 2011-11-07 | 2015-05-12 | Sap Se | Objects in a storage environment for connected applications |
US20130117055A1 (en) * | 2011-11-09 | 2013-05-09 | Microsoft Corporation | Techniques to provide enterprise resource planning functions from an e-mail client application |
US9613219B2 (en) | 2011-11-10 | 2017-04-04 | Blackberry Limited | Managing cross perimeter access |
US8799227B2 (en) | 2011-11-11 | 2014-08-05 | Blackberry Limited | Presenting metadata from multiple perimeters |
US8990163B2 (en) * | 2011-12-15 | 2015-03-24 | Sap Se | Snapshot of distributed enterprise business data stored in various cloud services |
CN103248652B (zh) * | 2012-02-09 | 2016-09-28 | 腾讯科技(深圳)有限公司 | 客户端与网页端传输数据的方法及系统 |
US8997038B2 (en) * | 2012-03-30 | 2015-03-31 | Anypresence, Inc. | Systems and methods for building and deploying mobile applications |
US8700569B1 (en) | 2012-05-09 | 2014-04-15 | Bertec Corporation | System and method for the merging of databases |
US8543540B1 (en) * | 2012-05-09 | 2013-09-24 | Bertec Corporation | System and method for the merging of databases |
US9043278B1 (en) | 2012-05-09 | 2015-05-26 | Bertec Corporation | System and method for the merging of databases |
US9110807B2 (en) | 2012-05-23 | 2015-08-18 | Sybase, Inc. | Cache conflict detection |
US8874682B2 (en) | 2012-05-23 | 2014-10-28 | Sybase, Inc. | Composite graph cache management |
US9069627B2 (en) | 2012-06-06 | 2015-06-30 | Synactive, Inc. | Method and apparatus for providing a dynamic execution environment in network communication between a client and a server |
US9369466B2 (en) | 2012-06-21 | 2016-06-14 | Blackberry Limited | Managing use of network resources |
US20140007102A1 (en) * | 2012-06-27 | 2014-01-02 | Sap Ag | Automated update of time based selection |
US8935321B1 (en) * | 2012-06-29 | 2015-01-13 | Emc Corporation | Virtualized environment for managing heterogenous enterprise software applications |
US9300745B2 (en) | 2012-07-27 | 2016-03-29 | Synactive, Inc. | Dynamic execution environment in network communications |
CN103716356B (zh) * | 2012-10-09 | 2018-02-27 | 三亚中兴软件有限责任公司 | 基于web的存储过程操作方法、装置和系统 |
US9280373B1 (en) * | 2012-10-16 | 2016-03-08 | IntelliCorp Inc. | Data transfer guide |
US8656016B1 (en) | 2012-10-24 | 2014-02-18 | Blackberry Limited | Managing application execution and data access on a device |
US9075955B2 (en) | 2012-10-24 | 2015-07-07 | Blackberry Limited | Managing permission settings applied to applications |
US9201936B2 (en) * | 2012-11-13 | 2015-12-01 | International Business Machines Corporation | Rapid provisioning of information for business analytics |
US20140156355A1 (en) * | 2012-12-05 | 2014-06-05 | Priyanka Porwal | Bulk update in an enterprise management system |
US8996565B2 (en) * | 2012-12-18 | 2015-03-31 | Sap Se | Systems and methods for in-memory database processing |
US8972334B2 (en) | 2012-12-21 | 2015-03-03 | International Business Machines Corporation | Transparent data service suitable for modifying data storage capabilities in applications |
GB2526740A (en) * | 2013-02-21 | 2015-12-02 | Red Rain Corp Pty Ltd | Web-Based publishing of enterprise !nformation |
US9501586B2 (en) | 2013-02-27 | 2016-11-22 | Lenovo Enterprise Solutions (Singapore) Pte. Ltd. | Displaying data sets across a plurality of views of a user interface |
US9075583B1 (en) * | 2013-03-15 | 2015-07-07 | Emc Corporation | Layout design for a mobile application using selected governance, risk management and compliance rules |
US9679037B2 (en) * | 2013-06-07 | 2017-06-13 | Wipro Limited | System and method for implementing database replication configurations using replication modeling and transformation |
US9258668B2 (en) * | 2013-07-31 | 2016-02-09 | Sap Se | Mobile application framework extensibiilty |
US9367806B1 (en) | 2013-08-08 | 2016-06-14 | Jasmin Cosic | Systems and methods of using an artificially intelligent database management system and interfaces for mobile, embedded, and other computing devices |
US9870543B2 (en) | 2013-08-12 | 2018-01-16 | GoodData Corporation | Custom-branded analytic applications in a multi-tenant environment |
US9113000B2 (en) | 2013-08-22 | 2015-08-18 | International Business Machines Corporation | Management of records for an electronic device |
US9563617B2 (en) | 2013-09-23 | 2017-02-07 | Oracle International Corporation | Custom validation of values for fields of submitted forms |
US9286329B2 (en) * | 2014-01-31 | 2016-03-15 | GoodData Corporation | Generating analytics application using reusable application modules |
KR20150130039A (ko) * | 2014-05-13 | 2015-11-23 | 한다시스템 주식회사 | Crm 기반 데이터 마이그레이션 시스템 및 방법 |
EP3015984A1 (en) * | 2014-10-29 | 2016-05-04 | Hewlett-Packard Development Company, L.P. | Providing data from data sources |
US10255302B1 (en) | 2015-02-27 | 2019-04-09 | Jasmin Cosic | Systems, methods, apparatuses, and/or interfaces for associative management of data and inference of electronic resources |
KR101692345B1 (ko) * | 2015-07-15 | 2017-01-03 | 주식회사 영림원소프트랩 | 모바일 디바이스 애플리케이션의 사용자 인터페이스의 축변경 방법 |
US10615596B2 (en) * | 2015-09-30 | 2020-04-07 | Siemens Aktiengesellschaft | Systems, methods and apparatus for an improved aggregation engine for a demand response management system |
CN105245622A (zh) * | 2015-11-11 | 2016-01-13 | 中国建设银行股份有限公司 | 一种可配置的数据处理方法、系统及移动平台 |
JP6565894B2 (ja) * | 2015-12-28 | 2019-08-28 | キヤノンマーケティングジャパン株式会社 | サーバ、情報処理装置、処理方法およびプログラム |
US10747748B2 (en) | 2016-01-29 | 2020-08-18 | International Business Machines Corporation | Generating mobile data schema to support disconnected operations |
US9626389B1 (en) * | 2016-01-29 | 2017-04-18 | International Business Machines Corporation | Data compression model for mobile device disconnected operations |
RU2016150458A (ru) * | 2016-12-21 | 2018-06-21 | Флекси Коннект Лимитед | Система обработки информации |
US10581696B2 (en) | 2017-03-29 | 2020-03-03 | International Business Machines Corporation | Intelligent information adapter generation for service management |
US10592866B2 (en) * | 2017-05-12 | 2020-03-17 | Salesforce.Com, Inc. | Calendar application, system and method for creating records in a cloud computing platform from within the context of the calendar application |
US10504069B2 (en) | 2017-05-12 | 2019-12-10 | Salesforce.Com, Inc. | Calendar application, system and method for performing actions on records in a cloud computing platform from within the context of the calendar application |
US11055310B2 (en) | 2017-12-04 | 2021-07-06 | Bank Of America Corporation | SQL server integration services (SSIS) package analyzer |
US11481450B2 (en) * | 2018-01-09 | 2022-10-25 | Cleartrail Technologies Private Limited | Interactive and non-interactive execution and rendering of templates to automate control and exploration across systems |
CA3097365A1 (en) | 2018-04-16 | 2019-10-24 | Ingram Micro Inc. | System and method for matching revenue streams in a cloud service broker platform |
CN109445816B (zh) * | 2018-10-16 | 2022-03-22 | 网易(杭州)网络有限公司 | 导表处理方法、装置、存储介质、处理器及终端 |
JP7566732B2 (ja) * | 2018-10-23 | 2024-10-15 | イーノシックス、インコーポレイテッド | データ統合のためのマイクロコンポーネント及びデータ統合の方法 |
JP7003952B2 (ja) * | 2019-03-14 | 2022-01-21 | オムロン株式会社 | 制御システム、サポート装置およびサポート装置用のプログラム |
CN110020539A (zh) * | 2019-04-16 | 2019-07-16 | 山东浪潮云信息技术有限公司 | 一种数据共享方法及装置 |
US11349839B2 (en) * | 2019-06-28 | 2022-05-31 | Google Llc | Systems and methods using modular user interfaces for managing network permissions |
US11297029B2 (en) * | 2019-10-02 | 2022-04-05 | Paypal, Inc. | System and method for unified multi-channel messaging with block-based datastore |
CN110874718A (zh) * | 2019-11-12 | 2020-03-10 | 贵阳市绿砼科技服务有限公司 | 一种混凝土企业大数据管理系统 |
US11726995B2 (en) | 2019-12-17 | 2023-08-15 | Hewlett Packard Enterprise Development Lp | System and method for value pack generation using generic SQL plugin for unified console |
US20240070141A1 (en) * | 2022-08-31 | 2024-02-29 | Palantir Technologies Inc. | Systems and methods for generating interrelated notional data |
US12107819B1 (en) * | 2022-11-18 | 2024-10-01 | 8×8, Inc. | Communications apparatus and method using channel-communications management with intelligent access to peripheral resources |
Family Cites Families (35)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5023851A (en) * | 1988-04-06 | 1991-06-11 | Ibm Corp. | Method for presenting electronic calendar information in an interactive information handling system |
US6064984A (en) * | 1996-08-29 | 2000-05-16 | Marketknowledge, Inc. | Graphical user interface for a computer-implemented financial planning tool |
US5943678A (en) * | 1996-12-03 | 1999-08-24 | International Business Machines Corporation | Temporal displacement icon in a graphical user interface |
US6134559A (en) * | 1998-04-27 | 2000-10-17 | Oracle Corporation | Uniform object model having methods and additional features for integrating objects defined by different foreign object type systems into a single type system |
GB2344037B (en) * | 1998-11-20 | 2003-01-22 | Ibm | A method and apparatus for adjusting the display scale of an image |
JP2003516569A (ja) * | 1999-11-24 | 2003-05-13 | キャメロット・アイエス−2・インターナショナル・ディ・ビイ・エイ・スカイヴァ・インターナショナル | ビジネス・モデリングの方法および装置 |
JP4046915B2 (ja) * | 1999-12-03 | 2008-02-13 | キヤノン株式会社 | 日付選択機能を有するカレンダ表示装置およびカレンダ表示方法、並びにカレンダ表示用制御プログラムを記録した記録媒体 |
JP2001236215A (ja) * | 2000-02-24 | 2001-08-31 | Hitachi Ltd | システム制御方法およびそれを実施した情報処理システム並びにその処理プログラムを格納した記録媒体 |
US6985905B2 (en) * | 2000-03-03 | 2006-01-10 | Radiant Logic Inc. | System and method for providing access to databases via directories and other hierarchical structures and interfaces |
US6633889B2 (en) * | 2001-01-17 | 2003-10-14 | International Business Machines Corporation | Mapping persistent data in multiple data sources into a single object-oriented component |
US7363388B2 (en) * | 2001-03-28 | 2008-04-22 | Siebel Systems, Inc. | Method and system for direct server synchronization with a computing device |
US7017162B2 (en) * | 2001-07-10 | 2006-03-21 | Microsoft Corporation | Application program interface for network software platform |
US7158994B1 (en) * | 2001-09-28 | 2007-01-02 | Oracle International Corporation | Object-oriented materialized views |
US6886041B2 (en) * | 2001-10-05 | 2005-04-26 | Bea Systems, Inc. | System for application server messaging with multiple dispatch pools |
JP2003202984A (ja) * | 2001-10-26 | 2003-07-18 | Hitachi Ltd | プログラム制御方法およびその実施システム並びにその処理プログラム |
US7441194B2 (en) * | 2002-02-20 | 2008-10-21 | Microsoft Corporation | Calendar-based user interface system |
US6721871B2 (en) * | 2002-04-02 | 2004-04-13 | Nokia Corporation | Method and apparatus for synchronizing data stores with respect to changes in folders |
US7065718B2 (en) * | 2002-08-08 | 2006-06-20 | International Business Machines Corporation | System and method for configuring time related settings using a graphical interface |
EP1581860A4 (en) * | 2002-12-23 | 2008-05-21 | Dexterra Inc | MOBILE DATA AND SOFTWARE UPGRADING SYSTEM AND METHOD |
US7278111B2 (en) * | 2002-12-26 | 2007-10-02 | Yahoo! Inc. | Systems and methods for selecting a date or range of dates |
US7366460B2 (en) * | 2003-01-23 | 2008-04-29 | Dexterra, Inc. | System and method for mobile data update |
US7577934B2 (en) * | 2003-03-12 | 2009-08-18 | Microsoft Corporation | Framework for modeling and providing runtime behavior for business software applications |
US20050005259A1 (en) * | 2003-03-14 | 2005-01-06 | Infowave Software, Inc. | System and method for communication and mapping of business objects between mobile client devices and a plurality of backend systems |
US20040224674A1 (en) * | 2003-04-07 | 2004-11-11 | O'farrell Robert | System and method for context sensitive mobile data and software update |
US7406499B2 (en) * | 2003-05-09 | 2008-07-29 | Microsoft Corporation | Architecture for partition computation and propagation of changes in data replication |
CA2536541A1 (en) * | 2003-05-19 | 2004-12-02 | Business Objects, S.A. | Apparatus and method for accessing diverse native data sources through a metadata interface |
US20050257176A1 (en) * | 2004-05-17 | 2005-11-17 | Li-Chin Lu | Calendar generator and calendar generating method |
US7805683B2 (en) * | 2004-07-09 | 2010-09-28 | Sap Ag | Action pad |
US20060212543A1 (en) * | 2005-03-21 | 2006-09-21 | Dexterra, Inc. | Modular applications for mobile data system |
US7676493B2 (en) * | 2005-09-07 | 2010-03-09 | Microsoft Corporation | Incremental approach to an object-relational solution |
US7562313B2 (en) * | 2005-12-29 | 2009-07-14 | Sap Ag | Timescale selection window for temporal selection in computer applications |
US20070157128A1 (en) * | 2005-12-30 | 2007-07-05 | Tobias Haug | Efficient control of calendar information in computer graphics |
US8176483B2 (en) * | 2005-12-30 | 2012-05-08 | Sap Ag | Software maintenance management |
US7581184B2 (en) * | 2006-05-19 | 2009-08-25 | Yahoo! Inc. | System and method for visualizing the temporal evolution of object metadata |
US8601392B2 (en) * | 2007-08-22 | 2013-12-03 | 9224-5489 Quebec Inc. | Timeline for presenting information |
-
2006
- 2006-03-21 US US11/277,137 patent/US20060212543A1/en not_active Abandoned
- 2006-03-21 WO PCT/US2006/010508 patent/WO2006102474A2/en active Application Filing
- 2006-03-21 WO PCT/US2006/010509 patent/WO2006102475A2/en active Application Filing
- 2006-03-21 AU AU2006226959A patent/AU2006226959A1/en not_active Abandoned
- 2006-03-21 US US11/277,136 patent/US20060212846A1/en not_active Abandoned
- 2006-03-21 WO PCT/US2006/010507 patent/WO2006102473A2/en active Application Filing
- 2006-03-21 SG SG201004460-0A patent/SG162819A1/en unknown
- 2006-03-21 AU AU2006226957A patent/AU2006226957A1/en not_active Abandoned
- 2006-03-21 AU AU2006226958A patent/AU2006226958A1/en not_active Abandoned
- 2006-03-21 EP EP06739343A patent/EP1866763A2/en not_active Withdrawn
- 2006-03-21 US US11/277,131 patent/US20060212530A1/en not_active Abandoned
- 2006-03-21 EP EP06748576A patent/EP1864215A2/en not_active Withdrawn
- 2006-03-21 SG SG201004461-8A patent/SG162820A1/en unknown
- 2006-03-21 BR BRPI0609335-3A patent/BRPI0609335A2/pt not_active IP Right Cessation
- 2006-03-21 BR BRPI0609334-5A patent/BRPI0609334A2/pt not_active IP Right Cessation
- 2006-03-21 JP JP2008503165A patent/JP2008537818A/ja active Pending
- 2006-03-21 EP EP20060739342 patent/EP1866762A2/en not_active Withdrawn
- 2006-03-21 JP JP2008503166A patent/JP2008533630A/ja active Pending
- 2006-03-21 JP JP2008503164A patent/JP2008536210A/ja active Pending
- 2006-03-21 SG SG201004459-2A patent/SG163519A1/en unknown
-
2010
- 2010-08-24 US US12/862,518 patent/US20110126214A1/en not_active Abandoned
-
2011
- 2011-01-31 US US13/017,912 patent/US8214409B2/en active Active
-
2012
- 2012-06-04 US US13/487,411 patent/US8478789B2/en active Active
-
2014
- 2014-10-23 US US14/521,883 patent/US20150046524A1/en not_active Abandoned
Also Published As
Publication number | Publication date |
---|---|
US20120239704A1 (en) | 2012-09-20 |
AU2006226957A1 (en) | 2006-09-28 |
EP1866762A2 (en) | 2007-12-19 |
WO2006102475A9 (en) | 2008-05-15 |
WO2006102475A2 (en) | 2006-09-28 |
WO2006102474A2 (en) | 2006-09-28 |
US20110126214A1 (en) | 2011-05-26 |
EP1866763A2 (en) | 2007-12-19 |
AU2006226958A1 (en) | 2006-09-28 |
US20060212543A1 (en) | 2006-09-21 |
SG162819A1 (en) | 2010-07-29 |
US20110295868A1 (en) | 2011-12-01 |
SG162820A1 (en) | 2010-07-29 |
US20060212530A1 (en) | 2006-09-21 |
BRPI0609334A2 (pt) | 2010-03-16 |
US8214409B2 (en) | 2012-07-03 |
EP1864215A2 (en) | 2007-12-12 |
US20150046524A1 (en) | 2015-02-12 |
WO2006102475A3 (en) | 2006-11-09 |
JP2008533630A (ja) | 2008-08-21 |
US8478789B2 (en) | 2013-07-02 |
JP2008536210A (ja) | 2008-09-04 |
JP2008537818A (ja) | 2008-09-25 |
AU2006226959A1 (en) | 2006-09-28 |
WO2006102473A3 (en) | 2007-03-15 |
US20060212846A1 (en) | 2006-09-21 |
WO2006102473A2 (en) | 2006-09-28 |
WO2006102474A3 (en) | 2007-01-25 |
SG163519A1 (en) | 2010-08-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
BRPI0609335A2 (pt) | aplicações modulares para sistema móvel de dados | |
AU2003299837B2 (en) | Mobile data and software update system and method | |
US8954375B2 (en) | Method and system for developing data integration applications with reusable semantic types to represent and process application data | |
KR102021915B1 (ko) | 프로그래밍 속성의 그래픽 표현 | |
US20050114479A1 (en) | System and method for hierarchically representing configuration items | |
US20140344210A1 (en) | Use of projector and selector component types for etl map design | |
US11409505B1 (en) | Automated authoring of software solutions from a data model with related patterns | |
CN101208662A (zh) | 用于移动数据系统的模块化的应用 | |
SPS | SAP HANA Modeling Guide | |
Kanagasabai | Towards online, collaborative, multi-view modelling using collabCORE | |
Bromley et al. | Museum of London--Collections Information Integration Module |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
B08F | Application dismissed because of non-payment of annual fees [chapter 8.6 patent gazette] |
Free format text: REFERENTE AS 5A E 6A ANUIDADES. |
|
B08K | Patent lapsed as no evidence of payment of the annual fee has been furnished to inpi [chapter 8.11 patent gazette] |
Free format text: REFERENTE AO DESPACHO 8.6 PUBLICADO NA RPI 2161 DE 05/06/2012. |