BRPI0615459A2 - automated field placement in a data summary table - Google Patents

automated field placement in a data summary table Download PDF

Info

Publication number
BRPI0615459A2
BRPI0615459A2 BRPI0615459-0A BRPI0615459A BRPI0615459A2 BR PI0615459 A2 BRPI0615459 A2 BR PI0615459A2 BR PI0615459 A BRPI0615459 A BR PI0615459A BR PI0615459 A2 BRPI0615459 A2 BR PI0615459A2
Authority
BR
Brazil
Prior art keywords
field
summary table
data summary
type
user interface
Prior art date
Application number
BRPI0615459-0A
Other languages
Portuguese (pt)
Inventor
Allan Folting
Konrad Tupaj
Robert C Collie
Anatoly V Grabar
Original Assignee
Microsoft Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Microsoft Corp filed Critical Microsoft Corp
Publication of BRPI0615459A2 publication Critical patent/BRPI0615459A2/en
Publication of BRPI0615459B1 publication Critical patent/BRPI0615459B1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/166Editing, e.g. inserting or deleting
    • G06F40/177Editing, e.g. inserting or deleting of tables; using ruled lines
    • G06F40/18Editing, e.g. inserting or deleting of tables; using ruled lines of spreadsheets
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99941Database schema or data structure
    • Y10S707/99943Generating database or data structure, e.g. via user interface

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

COLOCAçãO AUTOMATIZADA DE CAMPOS EM UMA TABELA DE RESUMO DE DADOS. Trata-se de uma interface gráfica do usuário, para a criação de uma tabela de resumo de dados, que inclui uma multiplicidade de campos e uma tabela de resumo de dados. Ao selecionar um campo para inclusão na tabela de resumo de dados, a interface com o usuário é programada para analisar o campo e colocar automaticamente o campo na tabela de resumo de dados.AUTOMATED FIELD PLACEMENT ON A DATABASE TABLE. It is a graphical user interface for creating a data summary table that includes a multitude of fields and a data summary table. By selecting a field to include in the data summary table, the user interface is programmed to parse the field and automatically place the field in the data summary table.

Description

"COLOCAÇÃO AUTOMATIZADA DE CAMPOS EM UMA TABELA DERESUMO DE DADOS""AUTOMATED FIELD PLACING ON A DATABASE TABLE"

ANTECEDENTES DA INVENÇÃOBACKGROUND OF THE INVENTION

É possível usar tabelas de resumo de dados paraanalisar grandes quantidades de dados. Um exemplo de uma ta-bela de resumo de dados são as vistas dinâmicas "PIVOTTABLE"que podem ser criadas com o uso do software de planilha ele-trônica EXCEL da Microsoft Corporation. A tabela de resumode dados apresenta uma maneira eficaz de exibir e resumirdados que são fornecidos por um programa de base de dados ouque estão em uma listagem de dados de uma planilha. 0 usuá-rio pode selecionar campos dos dados para incluir na página,linha, coluna ou regiões de dados da tabela de resumo de da-dos e pode escolher parâmetros, tais como a soma, a diferen-ça, a contagem e o desvio padrão a ser exibido para os cam-pos de dados selecionados. Os dados de uma base de dados quepodem ser consultados dentro de um programa de planilha ele-trônica, ou dados de planilha incluindo listas, podem seranalisados em uma tabela de resumo de dados.You can use data summary tables to analyze large amounts of data. An example of a data summary table is the "PIVOTTABLE" dynamic views that can be created using Microsoft Corporation's EXCEL spreadsheet software. The data summary table presents an effective way to display and summarize that are provided by a database program or are in a data listing of a spreadsheet. The user can select data fields to include in the data summary table data page, row, column or regions and can choose parameters such as sum, difference, count and standard deviation. to be displayed for the selected data fields. Data from a database that can be queried within a spreadsheet program, or spreadsheet data including lists, can be analyzed in a data summary table.

Embora a tabela de resumo de dados seja projetadade modo que os dados possam ser analisados de maneira eficaze intuitiva, a criação de tabelas de resumo de dados propri-amente dita pode ser desafiadora para usuários inexperien-tes. Por criação de uma tabela de resumo de dados inicial,os assistentes não podem ser exemplo, alguns programas ofe-recem assistentes que ajudam o usuário a criar uma tabela deresumo de dados. Embora esses assistentes possam ser degrande auxílio na usados com facilidade para modificar a e-xibição uma vez que ela foi criada. Outros programas permi-tem que os usuários arrastem e soltem campos desejados dire-tamente para a tabela de resumo de dados. Embora esses pro-gramas ofereçam ao usuário grande flexibilidade na criaçãodo modo de exibição, tais programas podem ser menos intuiti-vos para a utilização por usuários inexperientes.Although the data summary table is designed so that data can be analyzed in an intuitive and effective way, creating proper data summary tables can be challenging for inexperienced users. By creating an initial data summary table, wizards cannot be an example, some programs offer wizards that help the user create a data summary table. Although these wizards can be of great help in easily used to modify the display once it has been created. Other programs allow users to drag and drop desired fields directly into the data summary table. While these programs offer the user great flexibility in creating the view, such programs may be less intuitive for novice users to use.

SUMÁRIOSUMMARY

A intenção deste Sumário é a de apresentar, de ma-neira simplificada, uma seleção de' conceitos descritos emdetalhes a seguir na Descrição Detalhada. 0 Sumário não tema intenção de identificar aspectos cruciais ou essenciais damatéria reivindicada, e não deve ser usado para ajudar a de-terminar o âmbito da matéria reivindicada.The intent of this Summary is to present, in a simplified manner, a selection of concepts described in the following details in the Detailed Description. The Summary is not intended to identify crucial or essential aspects of the claimed subject matter, and should not be used to help determine the scope of the claimed subject matter.

De acordo com um aspecto, uma interface gráfica dousuário para a criação de uma tabela de resumo de dados in-clui um painel que inclui vários campos, e uma tabela de re-sumo de dados. Ao selecionar um campo para inclusão na tabe-la de resumo de dados, a interface com o usuário é programa-da para analisar o campo e posicionar automaticamente o cam-po na tabela de resumo de dados.In one aspect, a graphical user interface for creating a data summary table includes a panel including several fields, and a data summary table. By selecting a field to include in the data summary table, the user interface is programmed to parse the field and automatically position the field in the data summary table.

De acordo com outro aspecto, em um sistema de com-putador que possui uma interface gráfica do usuário para umatabela de resumo de dados, um método inclui: permitir a se-leção de um campo dentre uma multiplicidade de campos; ana-lisar o campo selecionado usando a semântica; selecionar umaárea de uma tabela de resumo de dados para colocar o campo;e adicionar o campo à área da tabela de resumo de dados.According to another aspect, in a computer system having a graphical user interface for a data summary table, one method includes: allowing the selection of a field from a multitude of fields; analyze the selected field using semantics; Select an area of a data summary table to place the field in, and add the field to the data summary table area.

De acordo com outro aspecto, um meio legivel porcomputador contendo instruções executáveis por computadorpara realizar as etapas incluindo: permitir a seleção de umcampo dentre uma multiplicidade de campos; analisar o camposelecionado usando a semântica; selecionar uma área de umatabela de resumo de dados para colocar o campo; e adicionaro campo à área da tabela de resumo de dados.According to another aspect, a computer readable medium containing computer executable instructions for performing the steps including: allowing the selection of a field from a multiplicity of fields; analyze the selected fields using semantics; select an area of a data summary table to place the field; and add the field to the data summary table area.

BREVE DESCRIÇÃO DOS DESENHOSBRIEF DESCRIPTION OF DRAWINGS

Agora, será feita referência aos desenhos em ane-xo, que não são necessariamente proporcionais à escala real,em que:Reference will now be made to annexed drawings, which are not necessarily proportional to the full scale, where:

A Figura 1 ilustra um exemplo de sistema de compu-tação de uso geral;Figure 1 illustrates an example of a general purpose computer system;

A Figura 2 ilustra um exemplo de planilha de umprograma de planilha eletrônica;Figure 2 illustrates an example spreadsheet of a spreadsheet program;

A Figura 3 ilustra um exemplo de tabela de resumode dados e painel de tarefas do programa de planilha eletrô-nica;Figure 3 illustrates an example data summary table and spreadsheet task pane;

A Figura 4 ilustra o painel de tarefas exemplifi-cativo da Figura 3;Figure 4 illustrates the exemplary task pane of Figure 3;

A, Figura 5 ilustra outro exemplo de painel de ta-refas;A, Figure 5 illustrates another example of a panel of tasks;

A Figura 6 ilustra um exemplo de menu para substi-tuição de um campo em um painel de leiaute de um painel detarefas;Figure 6 illustrates an example menu for replacing a field in a layout panel of a task pane;

A Figura 7 ilustra um exemplo de método para colo-cação de um campo em um painel de leiaute de um painel detarefas da Figura 4;Figure 7 illustrates an example method for placing a field in a layout panel of a task pane of Figure 4;

A Figura 8 ilustra o exemplo da tabela de resumode dados e do painel de tarefas da Figura 3 com um campo a-dicionado à tabela;Figure 8 illustrates the example data summary table and task pane of Figure 3 with a field attached to the table;

A Figura 9 ilustra o exemplo da tabela de resumode dados e do painel de tarefas da Figura 3 com vários cam-pos adicionados à tabela;Figure 9 illustrates the example data summary table and task pane of Figure 3 with various fields added to the table;

A Figura 10 ilustra o exemplo da tabela de resumode dados e do painel de tarefas da Figura 9 com um campo re-organizado na tabela;Figure 10 illustrates the example data summary table and task pane of Figure 9 with a rearranged field in the table;

A Figura 11 ilustra outro exemplo de painel de ta-refas;Figure 11 illustrates another example of panel of tasks;

A Figura 12 ilustra um exemplo de menu para modi-ficar um leiaute do painel de tarefas da Figura 11;Figure 12 illustrates an example menu for modifying a task pane layout of Figure 11;

A Figura 13 ilustra o painel de tarefas exemplifi-cativo da Figura 11 em um leiaute diferente;Figure 13 illustrates the exemplary task pane of Figure 11 in a different layout;

A Figura 14 ilustra o painel de tarefas exemplifi-cativo da Figura 11 em um leiaute diferente;Figure 14 illustrates the exemplary task pane of Figure 11 in a different layout;

A Figura 15 ilustra o painel de tarefas exemplifi-cativo da Figura 11 em um leiaute diferente;Figure 15 illustrates the exemplary task pane of Figure 11 in a different layout;

A Figura 16 ilustra o painel de tarefas exemplifi-cativo da Figura 11 em um leiaute diferente;Figure 16 illustrates the exemplary task pane of Figure 11 in a different layout;

A Figura 17 ilustra um exemplo de método para co-locação de um campo em um painel de leiaute do painel de ta-refas da Figura 4;Figure 17 illustrates an example method for locating a field in a layout panel of the table panel of Figure 4;

A Figura 18 ilustra outro exemplo de método paracolocação de um campo em um painel de leiaute do painel detarefas da Figura 4;Figure 18 illustrates another example of a method for assigning a field to a task pane layout panel of Figure 4;

A Figura 19 ilustra outro exemplo de método paracolocação de um campo em um painel de leiaute do painel detarefas da Figura 4;Figure 19 illustrates another example of a method for assigning a field to a task pane layout panel of Figure 4;

A Figura 20 ilustra um exemplo de painel de tare-fas de filtragem;Figure 20 illustrates an example filtering filter panel;

A Figura 21 ilustra um exemplo de área de filtromanual para outro painel de tarefas de filtragem;Figure 21 illustrates an example of manual filtering area for another filtering task pane;

A Figura 22 ilustra um exemplo de menu suspensopara o painel de tarefas de filtragem da Figura 20;Figure 22 illustrates an example drop down menu for the filtering task pane of Figure 20;

A Figura 23 ilustra outro exemplo de menu suspensopara o painel de tarefas de filtragem da Figura 20;Figure 23 illustrates another example drop down menu for the filtering task pane of Figure 20;

A Figura 24 ilustra um exemplo de caixa de diálogopara o painel de tarefas de filtragem da Figura 20;Figure 24 illustrates an example dialog box for the filtering task pane of Figure 20;

A Figura 25 ilustra outro exemplo de painel de ta-refas de filtragem;Figure 25 illustrates another example of a filtering table panel;

A Figura 26 ilustra um exemplo de menu suspensopara o painel de tarefas de filtragem da Figura 25;Figure 26 illustrates an example drop down menu for the filtering task pane of Figure 25;

A Figura 27 ilustra outro exemplo de painel de ta-refas;Figure 27 illustrates another example of panel of tasks;

A Figura 28 ilustra um exemplo de dica de ferra-menta para o painel de tarefas da Figura 27.Figure 28 illustrates an example tool tip for the task pane of Figure 27.

DESCRIÇÃO DETALHADADETAILED DESCRIPTION

Doravante, as concretizações serão descritas maisdetalhadamente, com referência aos desenhos em anexo. Asconcretizações reveladas pelo presente documento são exem-plificativas e não devem ser interpretadas como limitantes;em vez disso, essas concretizações são apresentadas de modoque sua revelação seja meticulosa e completa. Números simi-lares se referem a elementos parecidos em todo o documento.Hereinafter, embodiments will be described in more detail with reference to the accompanying drawings. The embodiments disclosed herein are exemplary and should not be construed as limiting, but rather are embodied in such a way that their disclosure is meticulous and complete. Similar numbers refer to similar elements throughout the document.

As concretizações descritas no presente documentoreferem-se a tabelas de resumo de dados usadas para analisardados em um sistema de computador.The embodiments described herein refer to summary tables of data used for analysis in a computer system.

Com referência agora a Figura 1, é ilustrado umexemplo de sistema de computador 100. O sistema de computa-dor 100 ilustrado na Figura 1 pode assumir várias formastais como, por exemplo, a de um computador de mesa, de umcomputador laptop e de um computador portátil. Ademais, em-bora o sistema de computador 100 seja ilustrado, os sistemase métodos revelados no presente documento também podem serimplementados em vários sistemas de computador alternativos.Referring now to Figure 1, an example of computer system 100 is illustrated. The computer system 100 illustrated in Figure 1 can take various forms such as that of a desktop computer, a laptop computer, and a computer. portable. In addition, although computer system 100 is illustrated, the systems and methods disclosed herein may also be implemented in various alternative computer systems.

O sistema 100 inclui uma unidade de processamento102, uma memória do sistema 104, e um barramento do sistema106 que acopla vários componentes do sistema, incluindo amemória do sistema 104 à unidade de processamento 102. 0barramento do sistema 106 pode ser qualquer um dos diferen-tes tipos de estrutura de barramento, incluindo um barramen-to de memória, um barramento periférico e um barramento lo-cal usando qualquer uma das diferentes arquiteturas de bar-ramento. A memória do sistema inclui memória somente paraleitura (ROM) 108 e memória de acesso aleatório (RAM) 110.Um sistema básico de entrada/saida 112 (BIOS), que contémrotinas básicas que ajudam a transferir informações entreelementos dentro do sistema de computador 100, é armazenadona ROM 108.System 100 includes a processing unit 102, a system memory 104, and a system bus 106 that couples various system components, including system memory 104 to the processing unit 102. The system bus 106 can be any of the differences. bus structure types, including a memory bus, a peripheral bus, and a local bus using any of the different bus architectures. System memory includes read-only memory (ROM) 108 and random access memory (RAM) 110. A basic input / output system 112 (BIOS), which contains basic routines that help transfer information between elements within computer system 100, It is stored in ROM 108.

O sistema de computador 100 inclui ainda uma uni-dade de disco rigido 112 para leitura e gravação em um discorígido, uma unidade de disco magnético 114 para leitura egravação em um disco magnético removível 116, e uma unidadede disco óptico 118 para leitura e gravação em um disco óp-tico removível 119, tal como um CD-ROM, DVD, ou outros meiosópticos. A unidade de disco rígido 112, a unidade de discomagnético 114 e a unidade de disco óptico 118 são conectadasao barramento do sistema 106 por uma interface de unidade dedisco rígido 120, uma interface de unidade de disco magnéti-co 122 e uma interface de unidade óptica 124, respectivamen-te. As unidades e seus meios legíveis por computador associ-ados fornecem o armazenamento não-volátil de instruções Ie-gíveis por computador, estruturas de dados, programas e ou-tros dados para o sistema de computador 100.The computer system 100 further includes a hard disk drive 112 for reading and writing to a disc drive, a magnetic disk drive 114 for reading and writing to a removable magnetic disk 116, and an optical disk drive 118 for reading and writing to a disk drive. a removable optical disc 119, such as a CD-ROM, DVD, or other means. Hard disk drive 112, magnetic disk drive 114, and optical disk drive 118 are connected to system bus 106 by a hard disk drive interface 120, a magnetic disk drive interface 122, and an optical drive interface. 124, respectively. The units and their associated computer readable media provide nonvolatile storage of computer readable instructions, data structures, programs, and other data for computer system 100.

Embora o ambiente exemplificativo descrito no pre-sente documento possa usar um disco rígido 112, um discomagnético removível 116 e um disco óptico removível 119, ou-tros tipos de meios legíveis por computador capazes de arma-zenar dados podem ser usados no sistema exemplificativo 100.Exemplo desses outros tipos de meios legíveis por computadorcapazes de serem usados no ambiente operacional exemplifica-tivo incluem cassetes magnéticos, cartões de memória flash,discos de vídeo digital, cartuchos de Bernoulli, memórias deacesso aleatório (RAMs) e memórias somente para leitura(ROMs).Although the exemplary environment described herein may use a hard disk 112, a removable magnetic disk 116 and a removable optical disk 119, other types of computer readable media capable of storing data may be used in the exemplary system 100. Examples of these other types of computer readable media that can be used in the exemplary operating environment include magnetic cassettes, flash memory cards, digital video discs, Bernoulli cartridges, random access memories (RAMs), and read-only memories (ROMs). ).

Uma série de módulos de programa pode ser armaze-nada no disco rígido 112, disco magnético 116, disco óptico119, ROM 108 ou RAM 110, incluindo um sistema operacional126, um ou mais programas aplicativos 128, outros módulos deprograma 130 e dados de programa 132.A number of program modules may be stored on hard disk 112, magnetic disk 116, optical disk119, ROM 108, or RAM 110, including an operating system126, one or more application programs 128, other program modules 130, and program data 132 .

Um usuário pode entrar com comandos e informaçõesno sistema de computador 100 por meio de dispositivos de en-trada tais como, por exemplo, um teclado 134, mouse 136 ououtro dispositivo de apontamento. Exemplos de outros dispo-sitivos de entrada incluem uma barra de ferramentas, um me-nu, uma tela sensível ao toque, um microfone, um controle dejogo, uma caneta, uma antena de satélite e um scanner. Essese outros dispositivos de entrada são geralmente conectados àunidade de processamento 102 por meio de uma interface deporta serial 140 que é acoplada ao barramento do sistema102. No entanto, esses dispositivos de entrada também podemser conectados por outras interfaces, tal como uma porta pa-ralela, uma porta de jogo ou um barramento serial universal(USB) . Um monitor LCD 142, ou outro tipo de dispositivo deexibição, também é conectado ao barramento do sistema 106por meio de uma interface, tal como um adaptador de vídeo144. Além do monitor 142, os sistemas de computador podemincluir, geralmente, outros dispositivos periféricos de saí-da (não ilustrados), tais como alto-falantes e impressoras.A user may enter commands and information into the computer system 100 via input devices such as, for example, a keyboard 134, mouse 136, or other pointing device. Examples of other input devices include a toolbar, a menu, a touchscreen, a microphone, a game controller, a pen, a satellite antenna, and a scanner. These other input devices are generally connected to the processing unit 102 via a serial port interface 140 which is coupled to the system bus102. However, these input devices can also be connected through other interfaces, such as a parallel port, a game port, or a universal serial bus (USB). An LCD monitor 142, or other display device, is also connected to the system bus 106 via an interface, such as a video adapter144. In addition to monitor 142, computer systems may generally include other peripheral output devices (not shown), such as speakers and printers.

O sistema de computador 100 pode operar em um am-biente em rede usando conexões lógicas com um ou mais compu-tadores remotos, tal como o computador remoto 14 6. 0 compu-tador remoto 14 6 pode ser um sistema de computador, um ser-vidor, um roteador, um PC de rede, um dispositivo não hie-rarquizado ou outro nó comum da rede, e geralmente incluimuitos ou todos os elementos supramencionados com relação aocomputador 100. As conexões em rede incluem uma rede local(LAN) 148 e uma rede de longa distância (WAN) 150. Tais am-bientes de rede são comuns em escritórios, redes de computa-dor a nível empresarial, intranets e na Internet.Computer system 100 may operate in a networked environment using logical connections to one or more remote computers, such as remote computer 14 6. 0 remote computer 14 6 may be a computer system, a computer, or a computer. server, router, network PC, unhealthy device, or other common network node, and usually include all or all of the above with respect to computer 100. Network connections include a local area network (LAN) 148, and a wide area network (WAN) 150. Such network environments are common in offices, enterprise-level computer networks, intranets, and the Internet.

Quando usado em um ambiente em rede LAN, o sistemade computador 100 é conectado à rede local 148 por meio deuma interface ou adaptador de rede 152. Quando usado em umambiente em rede WAN, o sistema de computador 100 geralmenteinclui um modem 154 ou outros meios para estabelecer comuni-cações pela rede de longa distância 150, tal como a Inter-net. O modem 154, que pode ser interno ou externo, é conec-tado ao barramento do sistema 106 por meio da interface deporta serial 140. Em um ambiente em rede, os módulos de pro-grama representados com relação ao sistema de computador100, ou partes deles, podem ser armazenados no dispositivode armazenamento em memória remoto. Será apreciado que asconexões de rede ilustradas são exemplificativas e que ou-tros meios para estabelecer uma ligação de comunicações en-tre os computadores podem ser usados.When used in a LAN network environment, computer system 100 is connected to LAN 148 via a network interface or adapter 152. When used in a WAN network environment, computer system 100 typically includes a modem 154 or other means for establish communications over long-distance network 150, such as Inter-net. Modem 154, which may be internal or external, is connected to system bus 106 via serial port interface 140. In a networked environment, the program modules represented with respect to the computer system100, or parts thereof. can be stored on the remote memory storage device. It will be appreciated that the illustrated network connections are exemplary and that other means for establishing a communications connection between computers may be used.

Os ambientes descritos no presente documento podemser implementados como operações lógicas em um sistema decomputação. As operações lógicas podem ser implementadas (1)como uma seqüência de etapas ou módulos de programa imple-mentados em computador em execução em um sistema de computa-dor e (2) como módulos lógicos ou de hardware interconecta-dos em execução dentro do sistema de computação. Essa imple-mentação é uma questão de escolha que depende dos requisitosde desempenho do sistema de computação específico. Logo, asoperações lógicas que compõem as concretizações descritas nopresente documento são referidas como operações, etapas oumódulos. Será entendido pelos versados na técnica que essasoperações, etapas e módulos podem ser implementados em soft-ware, firmware, circuitos digitais de uso especifico e qual-quer combinação desses, sem divergir da essência e do âmbitoda presente invenção, conforme relatada nas reivindicaçõesem anexo ao presente documento. Esse software, firmware ouseqüência similar de instruções de computador pode ser codi-ficado e armazenado em meios de armazenamento legíveis porcomputador e também pode ser codificado dentro de um sinalde onda portadora para transmissão entre dispositivos decomputação.The environments described in this document can be implemented as logical operations in a computation system. Logical operations can be implemented (1) as a sequence of steps or computer-implemented program modules running on a computer system and (2) as interconnected logic or hardware modules running within the system. Computing This implementation is a matter of choice that depends on the performance requirements of the specific computing system. Thus, the logical operations that make up the embodiments described in this document are referred to as operations, steps, or modules. It will be appreciated by those skilled in the art that such operations, steps, and modules may be implemented in software, firmware, digital use circuits, and any combination thereof, without departing from the essence and scope of the present invention as set forth in the claims appended hereto. present document. Such software, firmware or similar sequence of computer instructions may be encoded and stored on computer readable storage media and may also be encoded within a carrier wave signal for transmission between computer-based devices.

Com referência agora a Figura 2, é ilustrado umexemplo de programa 200. Em um exemplo, o programa 200 é osoftware de planilha eletrônica EXCEL da Microsoft em execu-ção em um sistema de computador, tal como o sistema de com-putador 100 descrito acima. 0 programa 200 inclui uma plani-lha eletrônica 205 com um exemplo de lista de dados 210. Umusuário pode criar uma tabela de resumo de dados a partirdos dados 210.Referring now to Figure 2, an example program 200 is illustrated. In one example, program 200 is Microsoft's EXCEL spreadsheet software running on a computer system, such as the computer system 100 described above. . Program 200 includes a spreadsheet 205 with an example data list 210. A user can create a data summary table from data 210.

Por exemplo, com referência agora à Figura 3, éilustrado um exemplo de interface com o usuário 302 do pro-grama 200. A interface com o usuário 302 inclui uma tabelade resumo de dados inicial 320 (a tabela de resumo de dados320 está em branco na Figura 3). A tabela de resumo de dados320 pode ser criada a partir de várias fontes. Em um exem-pio, conforme ilustrado na Figura 3, a tabela de resumo dedados 320 pode ser criada a partir de um ou mais bancos dedados, conforme descrito mais detalhadamente adiante. Em ou-tras concretizações, a tabela de resumo de dados 320 podeser criada a partir de dados em uma planilha eletrônica, talcomo os dados 210 ilustrados na Figura 2.For example, with reference now to Figure 3, an example of user interface 302 of program 200 is illustrated. User interface 302 includes an initial data summary table 320 (data summary table320 is blank in the Figure 3). The data summary table320 can be created from various sources. In one example, as shown in Figure 3, data summary table 320 may be created from one or more data banks, as described in more detail below. In other embodiments, data summary table 320 may be created from data in a spreadsheet, such as data 210 illustrated in Figure 2.

A interface com o usuário 302 do programa 200 tam-bém inclui um exemplo de painel de tarefas 450 que pode serusado para criar e modificar a tabela de resumo de dados320. Por exemplo, o painel de tarefas 450 inclui uma listados campos dos dados 210. O usuário pode marcar e desmarcarcampos do painel de tarefas 450 para criar a tabela de resu-mo de dados 320, conforme descrito mais detalhadamente adi-ante .The user interface 302 of program 200 also includes an example task pane 450 that can be used to create and modify the data summary table320. For example, task pane 450 includes a listed data fields 210. The user can select and clear task pane 450 fields to create data summary table 320, as described in more detail below.

I.Painel de TarefasI.Task Panel

Com referência agora à Figura 4, é ilustrado umpainel de tarefas 450 exemplificativo. 0 painel de tarefas450 geralmente inclui um painel de campos 452 e um painel deleiaute 454. O painel de tarefas 450 é usado para criar emodificar a tabela de resumo de dados 320, conforme descritodetalhadamente adiante.Referring now to Figure 4, an exemplary task panel 450 is illustrated. Task panel 450 generally includes a field panel 452 and a deletion panel 454. Task panel 450 is used to create and modify data summary table 320, as detailed below.

O painel de campos 452 inclui uma lista 453 de ca-da campo em uma determinada base de dados ou planilha ele-trônica (por exemplo, a planilha eletrônica 205 conforme i-lustrada na Figura 2 acima) . Uma barra de rolagem 451 é a-presentada, pois a lista 453 de campos é maior do que o es-paço oferecido pelo painel de campos 452. Em algumas concre-tizações, o painel de campos 452 (bem como o painel de lei-aute 454) pode ter seu tamanho ajustado pelo usuário. Cadacampo na lista 453 inclui uma caixa de seleção próxima aocampo. Por exemplo, o campo "Profit" inclui uma caixa de se-leção 460 posicionada adjacente à legenda do campo. Quandoum campo na lista 453 é adicionado ao painel de leiaute 454conforme descrito acima, a caixa de seleção associada aocampo é marcada. Por exemplo, a caixa de seleção 4 60 para ocampo "Profit" é marcada pois ele foi adicionado ao painelde leiaute 454.Field pane 452 includes a list 453 of each field in a given database or spreadsheet (for example, spreadsheet 205 as shown in Figure 2 above). A scroll bar 451 is displayed because the list 453 of fields is larger than the space offered by the 452 field panel. In some embodiments, the 452 field panel (as well as the reading panel) aute 454) can be user sized. Each field in list 453 includes a check box next to the field. For example, the "Profit" field includes a check box 460 positioned adjacent to the field caption. When a field in list 453 is added to layout panel 454 as described above, the check box associated with the field is selected. For example, the checkbox 460 for the field "Profit" is selected because it has been added to layout panel 454.

O painel de leiaute 454 inclui uma multiplicidadede zonas que representam aspectos da tabela de resumo de da-dos 320 que é criada usando o painel de tarefas 450. Por e-xemplo, o painel de leiaute 454 inclui uma zona de linha455, uma zona de coluna 456, uma zona de valor 457 e uma zo-na de filtro 458. A zona de linha 455 define as legendas delinha para a tabela de resumo de dados resultante 320. A zo-na de coluna 456 define as legendas de coluna para a tabelade resumo de dados 320. A zona de valor 457 identifica osdados que são resumidos (por exemplo, agregação, variaçãoetc.) na tabela.de resumo de dados 320. A zona de filtro 458permite a seleção de filtragem que é aplicada a todos os ou-tros campos nas outras zonas 455, 456, 457 (por exemplo, umcampo pode ser colocado na zona de filtro 458 e um ou maisitens associados ao campo podem ser selecionados para criarum filtro para mostrar apenas os itens para todos os outroscampos no painel de leiaute 454 que estão associados ao(s)item(s) selecionado(s) para o campo na zona de filtro 458).Layout panel 454 includes a plurality of zones representing aspects of the data summary table 320 that is created using task pane 450. For example, layout panel 454 includes a line zone455, a zone of column 456, a value zone 457, and a filter row 458. Row zone 455 defines the row captions for the resulting data summary table 320. Column row 456 defines the column captions for the data summary table 320. Value zone 457 identifies data that is summarized (for example, aggregation, variance, etc.) in data summary table 320. Filter zone 458 allows filtering selection that is applied to all or -other fields in other zones 455, 456, 457 (for example, one field can be placed in filter zone 458 and one or more items associated with the field can be selected to create a filter to show only items for all other fields in the layout panel. 454 that are associated with i has selected for the field in filter zone 458).

Um ou mais dos campos do painel de campos 452 sãoadicionados a uma ou mais das zonas do painel de leiaute 454para criar e modificar dados da tabela de resumo de dados320. No exemplo ilustrado, o usuário pode clicar, arrastar esoltar um campo da lista 453 do painel de campos 452 em umadas zonas do painel de leiaute 454 a fim de adicionar umcampo à tabela de resumo de dados 320.One or more of the 452 field pane fields are added to one or more of the 454 layout pane zones to create and modify data from the data summary table320. In the illustrated example, the user can click, drag and drop a field from list 453 of field panel 452 into one of the layout panel zones 454 to add a field to data summary table 320.

Por exemplo, conforme ilustrado na Figura 5, o u-suário pode pairar o cursor sobre um campo especifico inclu-ido no painel de campos 452, tal como o campo "Store Sales"4 66. Enquanto o usuário paira o cursor sobre o campo, é a-presentado ao usuário um cursor em forma de cruz 472 que in-dica que o usuário pode clicar e arrastar o campo seleciona-do do painel de campos 452 para uma das zonas do painel deleiaute 454. Uma vez que o usuário seleciona o campo, o cur-sor em forma de cruz 472 volta a ser um cursor normal, e ocampo "Store Sales" 4 66 pode ser arrastado e solto em umazona de valor 457, conforme ilustrado. De forma semelhante,ao selecionar e arrastar um campo para fora do painel deleiaute 454, é possível remover o campo do painel de leiaute454 .For example, as shown in Figure 5, the user can hover the cursor over a specific field included in the 452 field pane, such as the "Store Sales" field 4 66. While the user hovers over the field , the user is presented with a cross-shaped cursor 472 which indicates that the user can click and drag the selected field from the 452 field panel to one of the 454 deletion panel zones. Once the user selects In the field, the cross-shaped curler 472 is again a normal cursor, and the "Store Sales" field 466 can be dragged and dropped into a zone of value 457, as illustrated. Similarly, by selecting and dragging a field out of the 454 delight panel, you can remove the field from the 454 layout panel.

Em outro exemplo, o usuário pode marcar a caixa deseleção associada a um campo específico no painel de campos452 a fim de adicionar o campo ao painel de leiaute 454. Porexemplo, se o usuário selecionar a caixa de seleção 460 as-sociada ao campo "Profit" ilustrada no painel de tarefas 450da Figura 4, esse campo pode ser adicionado à zona de valor457 como o campo "Profit" 4 62. Conforme descrito mais deta-lhadamente adiante, o programa 200 pode ser programado paraanalisar e colocar o campo selecionado em uma zona apropria-da do painel de leiaute 454. De forma semelhante, o usuáriopode desmarcar um campo marcado a fim de remover o campo dopainel de leiaute 454. Por exemplo, se o usuário desmarcar acaixa de seleção 4 60, o campo "Profit" 4 62 é removido dopainel de leiaute 454.In another example, the user can select the check box associated with a specific field in the field pane452 to add the field to layout panel 454. For example, if you select the 460 check box associated with the "Profit" field. "illustrated in the task pane 450 of Figure 4, this field can be added to value zone 457 as the" Profit "field 462. As described further below, program 200 can be programmed to analyze and place the selected field in a appropriate zone of layout panel 454. Similarly, the user can deselect a marked field to remove the 454 layout panel field. For example, if the user deselects checkbox 4 60, the "Profit" field 4 62 is removed from layout panel 454.

Em um exemplo opcional, se o usuário clicar em umdeterminado campo a fim de marcar o campo, sem arrastar ocampo para uma das zonas da zona de soltar 454, pode-se a-presentar ao usuário um menu (por exemplo, semelhante ao me-nu 482 ilustrado na Figura 6) que permite que o usuário se-lecione a zona em que será colocado o campo.In an optional example, if the user clicks a particular field to mark the field without dragging the field to one of the drop zone zones 454, the user may be presented with a menu (for example, similar to the 482 illustrated in Figure 6) which allows the user to select the zone in which the field will be placed.

Com referência agora à Figura 7, é ilustrado umexemplo de método 500 para adicionar um campo a partir dopainel de campos 452 para uma zona de painel de leiaute 454.Na operação 501, o usuário marca um campo listado no painelde campos 452 para adicionar ao painel de leiaute 454. Naoperação 502, é determinado se o usuário marcou a caixa deseleção associada ao campo especifico. Se o usuário marcou acaixa de seleção, o controle é passado para a operação 503,e o programa 200 pode determinar automaticamente em qual zo-na do painel de leiaute 454 será posicionado o campo marca-do. A seguir, na operação 507, o campo é adicionado à zonaapropriada do painel de leiaute 454.Referring now to Figure 7, a method example 500 for adding a field from the 452 field panel to a 454 layout panel zone is illustrated. In operation 501, the user marks a field listed in the 452 field panel to add to the panel In Operation 502, it is determined if the user has checked the deselection box associated with the specific field. If the user has selected the check box, control is passed to operation 503, and program 200 can automatically determine which corner of layout panel 454 will place the marked field. Then, in operation 507, the field is added to the appropriate zone of layout panel 454.

Se for determinado, na operação 502, que o usuárionão marcou a caixa de seleção, o controle passa para a ope-ração 504. Na operação 504, é determinado se o usuário sele-cionou, arrastou e soltou o campo em uma das zonas do painelde leiaute 454. Se o usuário soltou o campo em uma das zonasdo painel de leiaute 454, o controle passa para a operação507 e o campo é adicionado à zona.If it is determined, in operation 502, that the user has not selected the check box, control passes to operation 504. In operation 504, it is determined whether the user has selected, dragged and dropped the field in one of the zones. 454 layout panel. If the user dropped the field in one of the 454 layout panel zones, control goes to operation 507 and the field is added to the zone.

Se for determinado, na operação 504, que o usuárionão arrastou e soltou o campo, em uma concretização opcio-nal, o controle é passado para a operação 505, pois o usuá-rio selecionou o campo sem marcar a caixa de seleção ou ar-rastar/soltar o campo em uma zona do painel de leiaute 454.If it is determined in operation 504 that the user has not dragged and dropped the field in an optional embodiment, control is passed to operation 505 because the user has selected the field without selecting the check box or file. drag / drop the field within a zone of layout panel 454.

Na operação 505, o programa 200 apresenta ao usuário um menupara permitir que o usuário selecione a zona em que será a-dicionado o campo. A seguir, na operação 506, o usuário se-leciona a zona desejada. Na operação 507, o campo é adicio-nado à zona.In operation 505, program 200 presents the user with a menu to allow the user to select the zone in which the field will be added. Then, in operation 506, the user selects the desired zone. In operation 507, the field is added to the zone.

Uma vez que o campo foi adicionado à zona do pai-nel de leiaute 454, o controle é passado para a operação509, e o programa 200 atualiza a tabela de resumo de dados320 de forma correspondente, conforme descrito acima.Once the field has been added to layout panel zone 454, control is passed to operation509, and program 200 updates the data summary table320 accordingly, as described above.

Com referência à Figura 4, assim que um campo, talcomo o campo "Profit" do painel de campos 452, é adicionadoa uma das zonas do painel de leiaute 454, a caixa de seleção(por exemplo, a caixa de seleção 460) associada ao referidocampo no painel de campos 4 52 é marcada a fim de indicar queo campo faz parte da tabela de resumo de dados 320. Ademais,a fonte da legenda de campo associada ao campo no painel decampos 452 é colocada em negrito. De modo semelhante, quandoum campo ainda não tiver sido parte da tabela de resumo dedados 320 (ou tiver sido removido dela), a caixa de seleçãoassociada ao campo é deixada desmarcada e o campo é exibidoem fonte normal, em vez de negrito. Outros métodos tambémpodem ser usados para indicar os campos que fazem parte databela de resumo de dados 320.Referring to Figure 4, as soon as a field, such as the "Profit" field of field panel 452, is added to one of layout panel zones 454, the check box (for example, the 460 check box) associated with the This field field in the field pane 452 is marked to indicate that the field is part of the data summary table 320. In addition, the field caption source associated with the field in the field pane 452 is bolded. Similarly, when a field has not yet been part of the summary table of 320 (or has been removed from it), the check box associated with the field is left unchecked and the field is displayed in normal rather than bold font. Other methods can also be used to indicate the fields that are part of the data summary table 320.

À medida que campos são adicionados e removidos dopainel de leiaute 454 do painel de tarefas 450, a tabela deresumo de dados resultante 320 é modificada de forma corres-pondente. Por exemplo, é apresentado ao usuário, inicialmen-te, o painel de tarefas 450 incluindo o painel de campos 452conforme ilustrado na Figura 3. Com referência à Figura 8,quando o usuário adiciona o campo "Profit" à zona de valor457 do painel de leiaute 454, uma soma dos dados associadosao campo "Profit" é automaticamente adicionada à tabela deresumo de dados 320. Com referência à Figura 9, o usuáriopode adicionar campos adicionais (por exemplo, "Sales Avera-ge", "Custormers", "Gender") às zonas do painel de leiaute454, e a tabela de resumo de dados 320 é atualizada para in-cluir dados relacionados aos campos adicionados.As fields are added and removed from layout panel 454 of task pane 450, the resulting data summary table 320 is modified accordingly. For example, the user is initially presented with task pane 450 including field pane 452 as illustrated in Figure 3. With reference to Figure 8, when the user adds the "Profit" field to the value zone457 of the control panel. 454, a sum of the data associated with the "Profit" field is automatically added to the data summary table 320. Referring to Figure 9, the user can add additional fields (for example, "Sales Avera-ge", "Custormers", "Gender ") to layout panel zones454, and data summary table 320 is updated to include data related to the added fields.

Com referência à Figura 10, o usuário também podemover campos de uma zona para outra zona no painel de leiau-te 454 do painel de tarefas 450, e a tabela de resumo de da-dos 320 é atualizada de forma correspondente. Por exemplo, ousuário pode mover o campo "Gender" da zona de coluna 456para a zona de linha 455, e a tabela de resumo de dados 320é automaticamente atualizada de forma correspondente de modoa refletir a mudança. O usuário também pode mover camposdentro de uma determinada zona 455, 456, 457, 458 para mudara ordem na qual os campos são exibidos na tabela de resumode dados 320. Por exemplo, o usuário pode mover o campo"Gender" acima do campo "Customer" na zona de linha 4 55, demodo que o campo "Gender" seja exibido antes do campo "Cus-tomer" na tabela de resumo de dados 320.Referring to Figure 10, the user can also move fields from one zone to another zone in task pane 450 layout 454, and data summary table 320 is updated accordingly. For example, the user may move the "Gender" field from column zone 456 to row zone 455, and data summary table 320 is automatically updated accordingly to reflect the change. You can also move fields within a given zone 455, 456, 457, 458 to change the order in which fields are displayed in the data summary table 320. For example, you can move the "Gender" field above the "Customer" field. "in row zone 4 55, I allow the" Gender "field to appear before the" Cus-tomer "field in data summary table 320.

Com referência agora à Figura 6, em um exemplo, seo usuário clicar e soltar um campo, tal como o campo "Pro-duct Categories" 481, localizado no painel de leiaute 454,sem arrastar o campo, é apresentado ao usuário um menu 482que permite que o usuário manipule a posição do campo dentrodo painel de leiaute 454. Por exemplo, o menu 482 permiteque o usuário mude a posição do campo dentro de um determi-nada zona (isto é, "Move Up" (Mover para Cima), "MoveDown"(Mover para Baixo), "Move to Beginning"(Mover para oInicio) , "Move to End" (Mover para o Fim) ) , mova o campo en-tre zonas (isto é, "Move to Row Labels"(Mover para Legendasde Linha), "Move to Values"(Mover para Valores) , "Move toColumn Labels"(Mover para Legendas de Coluna), "Move to Re-port Filter"(Mover para Filtro do Relatório), e remover ocampo do painel de leiaute 454 (isto é, "Remove Fi-eld"(Remover Campo)). Apenas as opções disponíveis para umcampo específico são exibidas como escolhas ativas no menu482 (por exemplo, "Move to Row Labels" (Mover para Legendasde Linha) é exibido como inativo no exemplo, pois o campo481 já está na zona de linha 455).Referring now to Figure 6, in one example, if the user clicks and drops a field, such as the "Pro-duct Categories" field 481, located on layout panel 454, without dragging the field, the user is presented with a menu 482 that allows the user to manipulate the position of the field within the 454 layout panel. For example, menu 482 allows the user to change the position of the field within a certain zone (ie "Move Up", "MoveDown", "Move to Beginning", "Move to End"), move the field between zones (ie "Move to Row Labels" (Move to Row Captions), "Move to Values", "Move toColumn Labels", "Move to Re-port Filter", and Remove Field panel layout 454 (ie "Remove Fi-eld"). Only the options available for a specific field are displayed as active choices in menu482 (eg (For example, "Move to Row Labels" is displayed as inactive in the example because field481 is already in line zone 455).

Com referência novamente à Figura 4, o painel detarefas 4 50 também inclui uma caixa de seleção "manual upda-te" (atualização manual) 469. Quando a caixa de seleção 469é selecionada, a tabela de resumo de dados 320 resultantenão é atualizada automaticamente quando campos são adiciona-dos, reorganizados e removidos do painel de leiaute 454 dopainel de tarefas 450. Por exemplo, se o usuário marcar acaixa de seleção "manual update" 4 69 e então adicionar umcampo à zona de linha 455 do painel de leiaute 454, a tabelade resumo de dados 320 não é atualizada automaticamente pararefletir o campo recém-adicionado. Em vez disso, a atualiza-ção ocorre após o usuário selecionar um botão de atualizaçãomanual 471 que se torna ativo assim que tiver sido efetuadauma alteração, e a atualização manual pode ser realizada.Atualizações manuais podem ser usadas para aumentar a eficá-cia quando trabalhando com grandes quantidades de dados quenecessitam de tempo de recuperação e processamento signifi-cativos para criar a tabela de resumo de dados 320. Dessamaneira, os campos e filtragem desejados podem ser selecio-nados antes da criação ou revisão da tabela de resumo de da-dos 320, o que ocorre quando da seleção do botão de atuali-zação manual 471, com isso aumentando a eficácia.Referring again to Figure 4, the task pane 450 also includes a "manual upda" check box 469. When the 469 check box is selected, the resulting data summary table 320 is not automatically updated when fields are added, rearranged, and removed from the 454 layout panel and the 450 task pane. For example, if the user selects the "manual update" checkbox 4 69 and then adds a field to the 455 layout zone line zone 455, The data summary table 320 is not automatically updated to reflect the newly added field. Instead, the update occurs after the user selects a manual update button 471 that becomes active as soon as a change has been made, and manual update can be performed. Manual updates can be used to increase efficiency when working. with large amounts of data that require significant retrieval and processing time to create data summary table 320. Thus, the desired fields and filtering can be selected before creating or reviewing the data summary table. 320, which occurs when selecting manual refresh button 471, thereby increasing efficiency.

Com referência à Figura 11, os campos exibidos nopainel de campos 452 representam campos de dados do tipo"processamento analítico on-line" (OLAP). (Em contrapartida,os campos exibidos no painel de campos 452 na Figura 5 nãosão do tipo OLAP, ocasionalmente denominados campos relacio-nais). O OLAP é um grupo de ferramentas que possibilita aanálise de dados armazenados em uma base de dados. As ferra-mentas OLAP permitem que os usuários analisem diferentes di-mensões de dados multidimensionais. Os campos de dados OLAPsão dispostos em uma estrutura hierárquica de vários níveis.Por exemplo, o campo "Sales Fact 1991" inclui os sub-campos"Store Sales", "Unit Sales" e "Store Cost". Os sub-campospodem ser acessados ao clicar no indicador de expansão (si-nal de mais/menos + /-) 556 para expandir e recolher os sub-campos. Os dados OLAP podem ser dispostos em dimensões comhierarquias e medidas.Referring to Figure 11, the fields displayed in field panel 452 represent "online analytical processing" (OLAP) data fields. (In contrast, the fields displayed in the 452 field pane in Figure 5 are not OLAP, sometimes referred to as relational fields.) OLAP is a tool group that enables the analysis of data stored in a database. OLAP tools allow users to analyze different dimensions of multidimensional data. OLAP data fields are arranged in a multi-level hierarchical structure. For example, the "Sales Fact 1991" field includes the "Store Sales", "Unit Sales", and "Store Cost" subfields. Subfields can be accessed by clicking the expand indicator (plus / minus +/-) 556 to expand and collapse the subfields. OLAP data can be arranged in dimensions with hierarchies and measures.

Na concretização ilustrada, cada campo listado nopainel de campos 4 52 inclui vários componentes. Um campo po-de ser realçado clicando no campo ou pairando o cursor sobreele. Por exemplo, cada campo, tal como o campo "Product" i-lustrado na Figura 11, inclui áreas de seleção 558 e 559 quepermitem que um usuário selecione e arraste o campo. Cadacampo também inclui uma caixa de seleção 560 que pode serusada para adicionar/remover o campo da tabela de resumo dedados 320. Além disso, cada campo do tipo de dados OLAP podeincluir o indicador de expansão 556 que é usado para expan-dir e recolher os sub-campos associados ao campo. Além dis-so, cada campo inclui uma área suspensa 562 usada para aces-sar as opções de filtragem, conforme descrito mais detalha-damente adiante.In the illustrated embodiment, each field listed in field panel 452 includes several components. A field can be highlighted by clicking on the field or hovering over it. For example, each field, such as the i-polished "Product" field in Figure 11, includes selection areas 558 and 559 that allow a user to select and drag the field. Each field also includes a check box 560 that can be used to add / remove the summary table field 320. In addition, each field of the OLAP data type can include the 556 expansion indicator that is used to expand and collapse the data. subfields associated with the field. In addition, each field includes a drop down area 562 used to access filtering options, as described in more detail below.

Com referência novamente à Figura 4, o painel detarefas 450 também inclui um controle 470 que permite que ousuário modifique o leiaute do painel de tarefas 450. Porexemplo, o usuário pode selecionar o controle 470 para aces-sar um menu de leiaute 572, conforme ilustrado na Figura 12.O menu de leiaute 572 é usado para organizar os painéis 452e 454. Por exemplo, se o usuário selecionar "Fields and Lei-aute stacked" 573 no controle 470, o painel de campos 452 éposicionado acima do painel de leiaute 454 no painel de ta-refas 450 a fim de formar um único painel integrado, confor-me ilustrado na Figura 4. Se o usuário selecionar "Fieldsand Leiaute by side" 574 no controle 470, o painel de campos452 é posicionado ao lado do painel de leiaute 454 no painelde tarefas 450 a fim de formar um único painel integrado,conforme ilustrado na Figura 13. Se o usuário selecionar"Fields only" 575 no controle 470, o painel de campos 452 éexibido em isolamento, conforme ilustrado na Figura 14. Se ousuário selecionar "Leiaute only 2 by 2" 576 no controle470, o painel de leiaute 454 é exibido isoladamente com aszonas 455, 456, 457, 458 dispostas em uma divisão 2x2,conforme ilustrado na Figura 15. Se o usuário selecionar"Leiaute only 1 by 4" 577 no controle 470, o painel de Iei-aute 454 é exibido isoladamente com as zonas 455, 456, 457,458 dispostas em uma divisão 1x4, conforme ilustrado naFigura 16.Referring again to Figure 4, the task pane 450 also includes a 470 control which allows the user to modify the layout of task panel 450. For example, the user may select control 470 to access a 572 layout menu as illustrated. Figure 12. The 572 layout menu is used to organize the 452 and 454 panels. For example, if the user selects "Fields and Lei-aute stacked" 573 on the 470 control, the 452 field panel is positioned above the 454 layout panel. on the header panel 450 to form a single integrated panel, as illustrated in Figure 4. If the user selects "Fieldsand Layout by side" 574 on control 470, the field panel452 is positioned next to the control panel. layout 454 on task panel 450 to form a single integrated panel as shown in Figure 13. If the user selects "Fields only" 575 on control 470, field panel 452 is displayed in isolation as shown in Figure 14. If the user selects "Layout only 2 by 2" 576 on the control470, the 454 layout panel is displayed in isolation with zones 455, 456, 457, 458 arranged in a 2x2 division, as shown in Figure 15. If the user selects "Layout only" 1 by 4 "577 on the 470 control, the Iei-aute 454 panel is displayed in isolation with zones 455, 456, 457,458 arranged in a 1x4 division, as shown in Figure 16.

No exemplo ilustrado na Figura 5, os campos nopainel de campos 452 são listados em ordem alfabética. Naslistas incluindo dados do tipo OLAP, tal a ilustrada na Fi-gura 4, as medidas são exibidas primeiro, e as dimensões sãoexibidas em ordem alfabética. Nos exemplos ilustrados, aspastas da dimensão são ilustradas na forma expandida, comtodos os outros campos ilustrados na forma recolhida. Tambémé possível usar outras configurações.In the example illustrated in Figure 5, fields in field 452 are listed in alphabetical order. In lists including OLAP data, as shown in Figure 4, measurements are displayed first, and dimensions are displayed in alphabetical order. In the illustrated examples, parts of the dimension are illustrated in expanded form, with all other fields illustrated in the collected form. You can also use other settings.

II. Colocação Automatizada de um Campo no Painelde LeiauteII. Automated Placement of a Field in the Layout Panel

Com referência novamente à Figura 4, se um usuárioselecionar um campo ao marcar a caixa de seleção associadaao campo, o programa 200 é programado para colocar automati-camente o campo selecionado em uma das zonas do painel deleiaute 454, conforme descrito adiante.Referring again to Figure 4, if a user selects a field by selecting the check box associated with the field, program 200 is programmed to automatically place the selected field in one of the zones of deletion panel 454, as described below.

Geralmente, campos do tipo numérico são adiciona-dos à zona de valor 457 e campos do tipo não numérico sãoadicionados à zona de linha 455 do painel de leiaute 454.Por exemplo, campos do tipo numérico (por exemplo, dígitosde vendas monetárias) são geralmente agregados e, portanto,colocados na zona de valor 457, ao passo que campos do tiponão numérico (por exemplo, nomes de produtos) são geralmenteusados como legendas de linha e então colocados automatica-mente na zona de linha 455.Generally, numeric type fields are added to value zone 457 and non-numeric type fields are added to line zone 455 of layout panel 454. For example, numeric type fields (for example, currency sales digits) are usually aggregates and thus placed in the value zone 457, whereas non-numeric type fields (eg product names) are generally used as line captions and then automatically placed in line zone 455.

Com referência agora à Figura 17, é ilustrado umexemplo de método 600 para adicionar automaticamente um cam-po selecionado a uma das zonas do painel de leiaute 454. Naoperação 601, o usuário seleciona um campo no painel de cam-pos 452 usando, por exemplo, a caixa de seleção associada aocampo. A seguir, na operação 602, é determinado se o campo éde um tipo numérico. Se o campo for do tipo numérico, o con-trole é passado para a operação 603 e o campo é adicionado àzona de valor 457 para agregação. Se for determinado que ocampo não é do tipo numérico na operação 602, o controle épassado para a operação 604 e o campo é adicionado à zona delinha 455.Referring now to Figure 17, a method example 600 for automatically adding a selected field to one of the zones of layout panel 454 is illustrated. In operation 601, the user selects a field on field panel 452 using, for example , the checkbox associated with field. Next, in operation 602, it is determined whether the field is of a numeric type. If the field is numeric, the control is passed to operation 603 and the field is added to the value zone 457 for aggregation. If it is determined that the field is not of numeric type in operation 602, the control passed to operation 604 and the field is added to line zone 455.

Em algumas concretizações, um campo de tipo numé-rico pode ainda ser analisado antes de adicionar o campo àzona de valor 457 para determinar se uma colocação diferenteno painel de leiaute 454 é mais apropriada. Por exemplo, umcampo incluindo vários valores de código postal é do tiponumérico, mas é geralmente desejável colocar tal campo nazona de linha 455, no lugar da zona de valor 457. Por essemotivo, em algumas concretizações, os campos de tipo numéri-co são ainda analisados usando semânticas de dados a fim deidentificar a colocação desejada no painel de leiaute 454.In some embodiments, a numeric type field may further be analyzed before adding the field to value zone 457 to determine if a different placement of layout panel 454 is more appropriate. For example, a field including multiple postal code values is of the numeric type, but it is generally desirable to place such a line nazone field 455 in place of the value zone 457. Therefore, in some embodiments, the numeric type fields are still analyzed using data semantics to identify the desired placement in layout panel 454.

Em uma concretização, uma tabela de consulta, talcomo a Tabela 1 exemplificativa abaixo, é usada para identi-ficar campos do tipo numérico que são adicionados à zona delinha 455, no lugar da zona de valor 457.In one embodiment, a lookup table, such as the exemplary Table 1 below, is used to identify numeric type fields that are added to row zone 455 instead of value zone 457.

Tabela 1Table 1

<table>table see original document page 23</column></row><table><table> table see original document page 23 </column> </row> <table>

Na Tabela 1, a coluna "FieldTypeString" inclui ca-deias de texto que são comparadas à legenda para o campo se-lecionado, conforme descrito mais detalhadamente adiante. Noexemplo ilustrado, a legenda para o campo selecionado é com-parada a cada cadeia de caracteres na coluna "FieldTypeS-tring" da Tabela 1 a fim de identificar qualquer correspon-dência sem diferenciação de letras maiúsculas e minúsculas.Caso seja feita uma correspondência entre uma ca-deia de caracteres de texto na coluna "FieldTypeString" e nalegenda para o campo selecionado, itens numéricos nos campossão adicionalmente analisados usando os valores nas colunas"MinValue" e "MaxValue" da Tabela 1. 0 valor na coluna "Min-Value" especifica o valor minimo de qualquer um dos itens dotipo "FieldTypeString" determinado. 0 valor na coluna "Max-Value" especifica o valor máximo de qualquer um dos itens dotipo "FieldTypeString" determinado. Caso não esteja definidonenhum "MinValue" na Tabela 1 para um tipo "FieldTypeString"especifico, é determinado se os itens numéricos são númerosinteiros abaixo do "MaxValue". Caso não esteja definido ne-nhum "MaxValue" p~ara um tipo "FieldTypeString" especifico,é determinado se os itens numéricos são números inteiros a-cima do "MinValue". Caso não esteja definido nenhum "MinVa-lue" ou "MaxValue" para um tipo especifico de "FieldTypeS-tring", é determinado se os itens numéricos são números in-teiros .In Table 1, the "FieldTypeString" column includes text strings that are compared to the caption for the selected field, as described in more detail below. In the example shown, the caption for the selected field is matched to each string in the "FieldTypeS-tring" column of Table 1 to identify any case-insensitive match. If a match is made between a string of text in the "FieldTypeString" column and a legend for the selected field, numeric items in the fields are additionally parsed using the values in the "MinValue" and "MaxValue" columns in Table 1. 0 value in the "Min-Value" column "specifies the minimum value of any of the given" FieldTypeString "type items. The value in the "Max-Value" column specifies the maximum value of any given FieldTypeString type item. If no "MinValue" is defined in Table 1 for a specific "FieldTypeString" type, it is determined if the numeric items are integer numbers below the "MaxValue". If no "MaxValue" is defined for a specific "FieldTypeString" type, it is determined if the numeric items are integers above the "MinValue". If no "MinVa-lue" or "MaxValue" is set for a specific type of "FieldTypeS-tring", it is determined if the numeric items are whole numbers.

Por exemplo, se um campo selecionado incluir a Ie-genda "Month", a Tabela 1 é analisada e identifica-se umacorrespondência com o valor "month" de "FieldTypeString".Então, os valores numéricos associados ao campo são analisa-dos a fim de determinar se os valores numéricos se enquadramdentro dos valores minimo e máximo "1" e "12" (que represen-tam janeiro a dezembro). Em uma concretização, testam-se to-dos os itens numéricos para o campo. Em outra concretização,tal como quando há um número significativamente grande deitens numéricos, apenas uma amostra dos itens numéricos étestada quanto aos valores mínimo e máximo da Tabela 1. Setodos os valores se enquadrarem dentro dos valores mínimo emáximo, então o campo é adicionado à zona de linha 455, nolugar da zona de valor 457, conforme descrito mais detalha-damente adiante.For example, if a selected field includes the "Month" string, Table 1 is parsed and a match is identified with the "month" value of "FieldTypeString". Then the numeric values associated with the field are parsed to to determine if the numeric values fall within the minimum and maximum values "1" and "12" (which represent January to December). In one embodiment, all numeric items for the field are tested. In another embodiment, such as when there are a significantly large number of numeric items, only a sample of the numeric items is tested for the minimum and maximum values in Table 1. If all values fall within the minimum and maximum values, then the field is added to the zone. line 455, place the value zone 457, as described in more detail below.

As cadeias de caracteres de texto e os valores mí-nimo e máximo exibidos na Tabela 1 são meramente exemplifi-cativos, sendo possível usar cadeias e valores diferentes.Por exemplo, as cadeias de caracteres de texto e valores mí-nimo/máximo podem ser modificados dependendo da localizaçãogeográfica em que os dados são gerados (por exemplo, os va-lores de número de telefone podem ser diferentes dependendoda localização geográfica). Em outras concretizações, podem-se usar tipos diferentes de análise semântica. Por exemplo,além de, ou em vez de, se analisar os valores reais para ositens numéricos, pode-se analisar o número de dígitos dositens numéricos. Por exemplo, se uma legenda para um campocorresponder à cadeia de caracteres de texto "zip" (isto é,códigos postais), o número de dígitos para os itens numéri-cos no campo pode ser examinado a fim de se averiguar se osdígitos se enquadram dentro de um mínimo de cinco (por exem-plo, "90210" inclui cinco dígitos) e, muitas vezes, um máxi-mo (por exemplo, "90210-1052" inclui dez dígitos).The text strings and minimum and maximum values shown in Table 1 are for example only, and different strings and values can be used. For example, the minimum and maximum text strings and values can be changed depending on the geographic location where data is generated (for example, phone number values may differ depending on geographic location). In other embodiments, different types of semantic analysis may be used. For example, in addition to or instead of analyzing the actual values for numeric items, you can analyze the number of digits of numeric items. For example, if a caption for a field matches the text string "zip" (that is, postal codes), the number of digits for the numeric items in the field can be examined to see if the digits fit within a minimum of five (for example, "90210" includes five digits) and often a maximum (for example, "90210-1052" includes ten digits).

Com referência agora à Figura 18, é ilustrado umexemplo de método 610 para a colocação automática de um cam-po selecionado no painel de leiaute 454. 0 método 610 é pa-recido com o método 600 descrito acima, exceto que os camposde tipo numérico são analisados em mais detalhes. Na opera-ção 611, o usuário seleciona um campo no painel de campos452 usando, por exemplo, a caixa de seleção associada aocampo. A seguir, na operação 612, é determinado se o campo éde tipo numérico. Se o campo for de tipo não numérico, ocontrole é passado para a operação 613 e o campo é adiciona-do à zona de linha 455.Referring now to Figure 18, a method example 610 for automatically placing a selected field in layout panel 454 is illustrated. Method 610 is similar to method 600 described above, except that the numeric type fields are analyzed in more detail. In operation 611, you select a field in the field pane452 using, for example, the field-associated check box. Next, in operation 612, it is determined whether the field is of numeric type. If the field is of nonnumeric type, the control is passed to operation 613 and the field is added to line zone 455.

Se for determinado na operação 612 que o campo édo tipo numérico, o controle é passado para a operação 615.Na operação 615, a legenda para o campo é analisada e, naoperação 616, a legenda é comparada com uma tabela de con-sulta de cadeias de caracteres de texto, tal como a Tabela 1ilustrada acima. Se uma correspondência entre a legenda euma cadeia de caracteres de texto não for identificada naoperação 616, o controle é passado para a operação 619 e ocampo é adicionado à zona de valor 457. Se, na operação 616,uma correspondência entre a legenda e a cadeia de texto daTabela 1 for identificada, o controle é passado para a ope-ração 617.If it is determined in operation 612 that the field is of the numeric type, control is passed to operation 615. In operation 615, the caption for the field is parsed and, in operation 616, the caption is compared to a query table. text strings, such as Table 1 illustrated above. If a match between the caption and a text string is not identified in operation 616, control is passed to operation 619 and the field is added to value zone 457. If, in operation 616, a match between caption and string If the text in Table 1 is identified, control is passed to operation 617.

Na operação 617, os itens numéricos do campo sãoanalisados e, na operação 618, os valores dos itens numéri-cos são comparados com os valores mínimo e máximo associadosà cadeia de caracteres de texto da Tabela 1. Se os itens nu-méricos não se enquadrarem dentro dos valores mínimo e máxi-mo conforme descritos acima, o controle passa para a opera-ção 619 e o campo é adicionado à zona de valor 457. Se ositens numéricos se enquadrarem dentro dos valores mínimo emáximo na operação 618, o controle é passado para a operação613 e o campo é adicionado à zona de linha 455.Dessa maneira, os campos específicos do tipo numé-rico podem ser automaticamente identificados e colocados nazona de linha 455, no lugar da zona de valor padrão 457. Seum campo for automaticamente colocado pelo programa 200 em5 uma zona específica do painel de· leiaute 454 e o usuário de-sejar que o campo seja colocado em uma zona diferente, o u-suário pode selecionar e arrastar o campo para a zona dese-jada.In operation 617, the numeric items in the field are parsed, and in operation 618, the numeric item values are compared with the minimum and maximum values associated with the text string in Table 1. If the numeric items do not fit within the minimum and maximum values as described above, control passes to operation 619 and the field is added to value zone 457. If the numeric items fall within the maximum maximum values in operation 618, control is passed. for operation 613 and the field is added to line zone 455. In this way, specific numeric type fields can be automatically identified and placed in line zone 455 in place of default value zone 457. If a field is automatically placed program 200 em5 a specific zone of the layout panel 454 and the user wants the field to be placed in a different zone, the user can select and drag the field to the desired zone.

Em algumas concretizações, os campos associados ainformações de dados são identificados e colocados na zonade coluna 456, no lugar da zona de linha 455 ou da zona devalor 457. Por exemplo, o método 630 ilustrado na Figura 19é semelhante ao método 610 descrito acima, incluindo as ope-rações 61 a 619. No entanto, na operação 618, se os itensnuméricos se enquadram dentro dos valores mínimo e máximo, ocontrole é passado para a operação 631. Na operação 631, édeterminado se o campo é um campo de data. No exemplo ilus-trado, essa determinação é realizada pela cadeia de caracte-res de texto à qual corresponde a legenda. Por exemplo, se alegenda para o campo incluir o texto "Date" e corresponder àcadeia de texto "date" na Tabela 1, então o campo é identi-ficado como um campo de data. Se o campo for um campo de da-ta, o controle é passado para a operação 632 e o campo é a-dicionado à zona de coluna 456. Se o campo não for um campode data, o controle é passado para a operação 613 e o campoé adicionado à zona de linha 455.In some embodiments, fields associated with data information are identified and placed in column zon 456 in place of row zone 455 or value zone 457. For example, method 630 illustrated in Figure 19 is similar to method 610 described above, including 61 to 619. However, in operation 618, if numeric items fall within the minimum and maximum values, control is passed to operation 631. In operation 631, it is determined whether the field is a date field. In the illustrated example, this determination is made by the text string to which the caption corresponds. For example, if the field claims to include the text "Date" and matches the text string "date" in Table 1, then the field is identified as a date field. If the field is a data field, control is passed to operation 632 and the field is added to column zone 456. If the field is not a data field, control is passed to operation 613 and the field is added to line zone 455.

Em concretizações alternativas, podem-se usar me-tadados associados a um campo específico a fim de identifi-car atributos sobre o campo. Por exemplo, podem-se usar me-tadados para identificar se um campo é um campo numéricoe/ou de data.In alternative embodiments, metadata associated with a specific field may be used to identify attributes on the field. For example, metadata can be used to identify if a field is a numeric and / or date field.

Em algumas concretizações, utilizam-se as regras aseguir ao adicionar automaticamente um campo identificandodados OLAP ao painel de leiaute 454 e à tabela de resumo dedados 320.In some embodiments, the following rules are used when automatically adding an OLAP tagged field to layout panel 454 and summary table 320.

A.Hierarquias OLAP/Grupos nomeados OLAPA. OLAP Hierarchies / OLAP Named Groups

1. a hierarquia é adicionada à zona de linha1. hierarchy is added to line zone

2. a hierarquia é aninhada, no interior de todos osoutros campos na zona de linha2. the hierarchy is nested within all other fields in the line zone.

3. no caso de hierarquias com vários niveis, ocampo com o maior nivel é exibido na tabela de resumo de da-dos e o usuário pode expandir para ver os campos de nivelmenor3. In case of multi-level hierarchies, the field with the highest level is displayed in the data summary table and the user can expand to see the level fields.

B.Medidas OLAP/Expressões KPI OLAPB. OLAP Measurements / OLP KPI Expressions

1. se pelo menos uma medida já foi adicionada, amedida é adicionada à mesma zona que as medidas já adiciona-das1. If at least one measure has already been added, the measure is added to the same zone as the measures already added.

2. adicionar a segunda medida introduz um campo deDados (vide, por exemplo, o campo "Valores Yi" na Figura 10)no painel de leiaute e o campo de Dados é colocado na zonade coluna padrão - o campo de Dados é exibido na zona deleiaute quando há dois ou mais campos na zona de valor2. adding the second measure introduces a Data field (see, for example, the field "Yi Values" in Figure 10) in the layout panel and the Data field is placed in the default column zone - the Data field is displayed in the zone. delight when there are two or more fields in the value zone

3. quando adicionado, o campo de Dados é aninhadodentro de todos os outros campos na zona de coluna3. When added, the Data field is nested within all other fields in the column zone.

4. O campo de Dados reside tanto nas zonas de li-nha como de colunaEm algumas concretizações, utilizam-se as regrasadicionais a seguir ao adicionar automaticamente um campoidentificando dados não OLAP, ou campos relacionais, ao pai-nel de leiaute 454 e à tabela de resumo de dados 320.4. The Data field resides in both row and column zones. In some embodiments, the following additional rules are used when automatically adding a field identifying non-OLAP data, or relational fields, to layout table 454 and the table. summary data 320.

A. no caso de campos não numéricos, o campo é adi-cionado à zona de linha - o campo é aninhado dentro de todosos outros campos na zona de linhaA. For non-numeric fields, the field is added to the line zone - the field is nested within all other fields in the line zone.

B.no caso de campos numéricos, o campo é adiciona-do à zona de valorB. In the case of numeric fields, the field is added to the value zone.

1. se pelo menos um campo já se encontra na zonade valor, esse campo será adicionado à mesma zona que o cam-po já adicionado1. If at least one field is already in the value zone, that field will be added to the same zone as the already added field.

2. adicionar o primeiro campo à zona de valor in-troduz o campo de Dados no painel de leiaute e o campo deDados é colocado na zona de coluna por padrão2. adding the first field to the value zone enters the Data field in the layout panel and the Data field is placed in the column zone by default.

3. quando adicionado, o campo de Dados é aninhadodentro de todos os outros campos na zona de coluna3. When added, the Data field is nested within all other fields in the column zone.

4. O campo de Dados reside tanto nas zonas de li-nha como de coluna4. The Data field resides in both row and column zones.

III. Painel de Tarefas de FiltragemIII. Filtering Task Pane

Com referência novamente à Figura 11, um ou maisfiltros podem ser aplicados aos itens em um campo especifi-co, a fim de limitar as informações que são incluídas na ta-bela de resumo de dados 320. Por exemplo, o usuário pode u-sar a área suspensa 562 para um campo específico listado nopainel de campos 452 do painel de tarefas 450 para acessarum painel de tarefas de filtragem 700.Referring again to Figure 11, one or more filters may be applied to items in a specific field to limit the information that is included in data summary table 320. For example, the user may use drop-down area 562 for a specific field listed in field pane 452 of task pane 450 to access a filtering task pane 700.

Com referência agora à Figura 20, é ilustrado umexemplo de painel de tarefas de filtragem 700. A interface700 geralmente inclui um controle suspenso seletor de campo705, uma área de filtro manual 707 e uma área de controle defiltragem 709.Referring now to Figure 20, an example of filtering task panel 700 is illustrated. Interface700 generally includes a field selector drop down control 705, a manual filter area 707 and a filtering control area 709.

O controle seletor suspenso 705 pode ser usado pa-ra selecionar diferentes campos para filtragem. No caso dedados OLAP, os campos no controle seletor suspenso 705 podemser exibidos em uma disposição hierárquica e o controle sus-penso 705 pode ser usado para selecionar diferentes niveisde dados OLAP para filtragem. No exemplo ilustrado, o camposelecionado é o campo "Country".The drop-down selector control 705 can be used to select different fields for filtering. In the case of OLAP data, fields in the dropdown selector control 705 can be displayed in a hierarchical arrangement and the suspense control 705 can be used to select different levels of OLAP data for filtering. In the illustrated example, the selected field is the "Country" field.

A área de filtro manual 707 lista todos os itensassociados ao campo exibido no controle seletor suspenso705. As caixas de seleção são associadas a cada item listadona área de filtro manual 707 a fim de permitir que o usuárioselecione manualmente quais itens são incluídos no filtro.Com referência à Figura 21, no caso de dados OLAP, os subi-tens podem ser acessados ao clicar no sinal indicador de ex-pansão mais/menos (+/-) para expandir ou recolher os itensassociados a cada campo listado na área de filtro manual707. Por exemplo, os itens "Drink" e "Food" estão ilustradosna forma expandida. A caixa de seleção 713 está selecionadapara o item "Food", o que resulta igualmente na seleção decada subitem de "Food". Para o item "Drink", apenas o subi-tem "Alcoholic Beverages" está selecionado, e a caixa de se-leção 712 associada ao item "Drink" exibe um indicador mistoa fim de mostrar que apenas parte dos subitens do item"Drink" está selecionada. Uma caixa de seleção "select ali"(selecionar todos) 711 pode ser selecionada para mar-car/desmarcar todos os itens em todos os níveis exibidos naárea de filtro 707.The manual filter area 707 lists all items associated with the field displayed on the drop-down selector control705. The check boxes are associated with each item listed in the manual filter area 707 to allow the user to manually select which items are included in the filter. With reference to Figure 21, in the case of OLAP data, sub-voltages can be accessed from Click the plus / minus (+/-) sign indicator to expand or collapse the items associated with each field listed in the manual filter area707. For example, the items "Drink" and "Food" are illustrated in expanded form. Checkbox 713 is selected for the "Food" item, which also results in the sub-item selection of "Food". For the "Drink" item, only the "Alcoholic Beverages" sub-item is selected, and the check box 712 associated with the "Drink" item displays a mixed indicator to show that only part of the "Drink" sub-items. is selected. A "select ali" 711 check box can be selected to select / deselect all items at all levels displayed in the 707 filter area.

Com referência novamente à Figura 20, quando o u-suário usa o controle seletor suspenso 705 para selecionarum campo diferente, a área de filtro manual 707 é atualizadade forma correspondente de modo a listar os itens associadosao campo exibido no controle seletor suspenso 705. Se o cam-po recém-selecionado for de outro nível da mesma hierarquiaque o campo originalmente selecionado no controle seletorsuspenso 706, a área de filtro manual 707 permanece inalte-rada, pois todos os níveis de itens são apresentados na áreade filtro manual 707 para dados OLAP.Referring again to Figure 20, when the user uses the dropdown selector control 705 to select a different field, the manual filter area 707 is updated accordingly to list the items associated with the field displayed on the dropdown selector 705. If the newly selected field is at another level in the same hierarchy as the field originally selected in the suspended selector control 706, the manual filter area 707 remains unchanged as all item levels are displayed in the manual filter area 707 for OLAP data.

A área de controle de filtragem 709 lista os con-troles de filtro disponíveis para serem aplicados ao camposelecionado exibido no controle seletor suspenso 705. Oscontroles 710 permitem ao usuário alterar a ordem em que ositens filtrados são listados. Por exemplo, o usuário podeselecionar um dos controles 710 para que os itens listradossejam exibidos em ordem alfabética de A Z ou de Z A. 0controle 715 é usado para oferecer opções adicionais declassificação, tal como ordenar por um campo específico.Filtering control area 709 lists the available filter controls to apply to the selected fields displayed on the dropdown selector control 705. Controls 710 allow the user to change the order in which filtered items are listed. For example, the user can select one of the 710 controls so that striped items are displayed in alphabetical order of A Z or Z A. Control 715 is used to provide additional sorting options, such as sorting by a specific field.

O usuário pode selecionar o controle 720 para re-mover todas as filtragens para o campo no seletor suspenso705. Os controles 725 e 730 permitem que o usuário selecionefiltros específicos para aplicar ao campo no seletor suspen-so 705. Por exemplo, se o usuário selecionar o controle 725,é apresentado ao usuário um menu suspenso 740, ilustrado naFigura 22. O menu 740 lista vários filtros que podem ser a-plicados ao campo selecionado. Os filtros listados no menu740 são aqueles que são geralmente aplicados a campos de le-genda. Esses filtros incluem, mas sem a isto se restringir:"Begins With" (Começa Com), "Does Not Begin With" (Não Co-meça Com) , "Ends With" (Termina Com), "Does Not End With"(Não Termina Com), "Contains" (Contém) e "Does Not Contain"(Não Contém). O usuário pode selecionar um filtro no menu740 para aplicar tal filtro aos itens no campo. Por exemplo,o usuário pode selecionar o controle 730 para acessar um me-nu de leiaute 745, conforme ilustrado na Figura 23. O menu745 inclui filtros que podem ser aplicados a campos de va-lor. Esses filtros incluem, mas sem a isto se restringir:"Equals" (Igual a), "Does Not Equal" (Diferente de), "Grea-ter Than" (Maior que), "Greater Than Or Equal To" (Maior ouIgual a) , "Less Than" (Menor que), "Less Than Or Equal To"(Menor ou Igual a) , "Between" (Entre) e "Not Between" (QueNão Está Entre).User can select control 720 to move all filtering to field in drop-down selector705. Controls 725 and 730 allow the user to select specific filters to apply to the field in the suspen-so 705 selector. For example, if the user selects control 725, the user is presented with a 740 drop-down menu, illustrated in Figure 22. Menu 740 lists various filters that can be applied to the selected field. The filters listed in menu740 are those that are generally applied to legend fields. These filters include, but are not limited to: "Begins With", "Does Not Begin With", "Ends With", "Does Not End With" ( Does Not End With), "Contains" and "Does Not Contain". You can select a filter from menu740 to apply such a filter to items in the field. For example, the user can select the 730 control to access a 745 layout menu, as shown in Figure 23. Menu 745 includes filters that can be applied to value fields. These filters include, but are not limited to: "Equals" ("Equals"), "Does Not Equal" (Unlike), "Grea-ter Than", "Greater Than Or Equal To" a), "Less Than", "Less Than Or Equal To" (Less or Equal To), "Between" and "Not Between".

Com referência agora à Figura 24, quando o usuárioseleciona um filtro de um dos menus suspensos 740, 745, éapresentada ao usuário uma caixa de diálogo, tal como a cai-xa de diálogo 760, para construir o filtro desejado. Na cai-xa de diálogo 760, uma caixa de seleção de campo 772 é pre-enchida pelo campo selecionado no controle seletor suspenso705 e uma caixa de seleção de filtro 774 é preenchida com ofiltro selecionado no menu suspenso 740, 745. O usuário podeselecionar um campo diferente ao selecionar o menu suspensona caixa de seleção de campo 772 para, por exemplo, acessaroutros campos atualmente incluídos na zona de valor 457. 0usuário pode selecionar um filtro diferente ao selecionar omenu suspenso na caixa de seleção de filtro 774, que apre-senta uma lista de todos os filtros disponíveis para os ti-pos de dados. Uma caixa de critérios 776 permite que o usuá-rio coloque o valor para filtragem nela. Por exemplo, se ousuário selecionar o item "Store Sales" na área de filtromanual 707 e então selecionar o filtro "Maior Que" do menususpenso 745, a caixa de diálogo 770 é apresentada ao usuá-rio. O usuário pode entrar com o valor "50000" na caixa decritérios 776 para fazer o filtro filtrar todas as "StoreSales" (Vendas em Estoque) maiores que $50.000.Referring now to Figure 24, when the user selects a filter from one of the drop down menus 740, 745, the user is presented with a dialog box, such as dialog box 760, to construct the desired filter. In dialog box 760, a field selection box 772 is populated by the field selected in the dropdown selector control705 and a filter selection box 774 is filled with the filter selected in the dropdown menu 740, 745. The user can select a different field by selecting the 772 field selection box drop-down menu to, for example, access other fields currently included in the 457 value zone. The user can select a different filter by selecting the drop-down menu in the 774 filter selection box, which a list of all available filters for the data types. A 776 criteria box allows the user to enter the filtering value in it. For example, if the user selects the item "Store Sales" in the manual filter area 707 and then selects the "Greater Than" filter from dropdown menu 745, the dialog 770 is presented to the user. You can enter the value "50000" in the criteria box 776 to make the filter filter all "StoreSales" greater than $ 50,000.

Com referência agora à Figura 25, os controles 725e 730 podem ser modificados, dependendo do tipo de campo e-xibido no controle seletor suspenso 705. Por exemplo, o pai-nel de tarefas 700 inclui um campo do tipo data e, por con-seguinte, inclui o controle 725, que permite a filtragem pordata, e o controle 730, que permite a filtragem por valor. Ousuário pode selecionar o controle 725 para acessar o menususpenso 760 ilustrado na Figura 26. O menu suspenso 760 in-clui uma multiplicidade de filtros que podem ser aplicadosao campo do tipo data.Referring now to Figure 25, the controls 725 and 730 may be modified depending on the type of field displayed on the drop-down selector control 705. For example, task pane 700 includes a date type field and, as such. The next includes the 725 control, which allows date filtering, and the 730 control, which allows value filtering. The user can select control 725 to access the drop-down menu 760 shown in Figure 26. The 760 drop-down menu includes a multitude of filters that can be applied to the date field.

Em algumas concretizações, são apresentados ao u-suário apenas os controles aplicáveis ao campo selecionado.Por exemplo, se o usuário selecionar um campo do tipo não-data e não-numérico, o controle 725 fica ativo para apresen-tar o menu suspenso 740 com filtros aplicáveis a tal campo.Se o usuário selecionar um campo de data, o controle 725 fi-ca ativo para apresentar o menu suspenso 760 com filtros a-plicáveis aos campos de data. Se o usuário selecionar umcampo do tipo numérico e não-data, o controle 730 fica ativopara apresentar o menu suspenso 745 com filtros aplicáveisaos campos de dados numéricos.In some embodiments, only the controls applicable to the selected field are presented to the user. For example, if the user selects a non-date and non-numeric field, control 725 becomes active to display the drop-down menu 740. with filters applicable to such a field. If the user selects a date field, the 725 control is active to display the 760 drop-down menu with filters applicable to the date fields. If the user selects a non-date numeric type field, the 730 control is enabled to display the 745 drop-down menu with filters applicable to the numeric data fields.

Em algumas concretizações, os filtros podem serassociados a um determinado campo antes de o campo ser adi-cionado à tabela de resumo de dados 320. De fato, o filtro éaplicado quando o campo especifico é adiciona à tabela deresumo de dados 320. Dessa maneira, a quantidade de dadosque é acessada e resumida na tabela de resumo de dados 320pode ser reduzida, com isso aumentando a eficácia. Se umfiltro é aplicado a um campo que já está incluído na tabelade resumo de dados 320, a tabela de resumo de dados 320 éatualizada, em virtude do filtro, para exibir apenas os i-tens filtrados.In some embodiments, filters may be associated with a particular field before the field is added to the data summary table 320. In fact, the filter is applied when the specific field is added to the data summary table 320. Thus, The amount of data that is accessed and summarized in the data summary table 320 can be reduced, thereby increasing effectiveness. If a filter is applied to a field that is already included in the data summary table 320, the data summary table 320 is updated by virtue of the filter to display only the filtered items.

Detalhes adicionais com respeito à aplicação defiltros selecionados aos dados podem ser encontrados no Pe-dido de Patente US de N0 de Série 11/157.634, Dossiê N014917.0108US01/311178.01, depositado em 21 de junho de 2005e intitulado "Dynamically Filtering Aggregate Reports Basedon Values Resulting from One or More Previously Applied Fil-ters", cuja totalidade é incorporada a este documento a tí-tulo de referência.Further details regarding the application of selected filters to the data can be found in US Patent Application Serial No. 11 / 157,634, Dossier No. 014917.0108US01 / 311178.01, filed June 21, 2005 entitled "Dynamically Filtering Aggregate Reports Basedon Values" Resulting from One or More Previously Applied Filers ", the entirety of which is incorporated herein by reference.

No painel de filtragem 700, é posicionado um indi-cador de caixa de seleção 752 (vide Figura 25) adjacente aquaisquer filtros que tenham sido aplicados. Com referênciaagora à Figura 27, assim que um filtro é aplicado a um de-terminado campo, um ícone de filtro 810 é exibido adjacenteao campo no painel de campos 452 do painel de tarefas 450 afim de indicar que um filtro é aplicado ao campo. Em algumasconcretizações, um ícone de filtro semelhante também é asso-ciado a cada campo filtrado no painel de leiaute 454 e natabela de resumo de dados 320.At filter panel 700, a checkbox indicator 752 (see Figure 25) is positioned adjacent to any filters that have been applied. Referring now to Figure 27, as soon as a filter is applied to a given field, a filter icon 810 is displayed adjacent to the field in the field pane 452 of the task pane 450 to indicate that a filter is applied to the field. In some embodiments, a similar filter icon is also associated with each filtered field in layout panel 454 and data summary table 320.

Ademais, quando o dispositivo de apontamento pairasobre o campo específico com o ícone de filtro 810, é apre-sentada uma dica de ferramenta 830, conforme ilustrado naFigura 28. A dica de ferramenta 830 lista os campos filtra-dos em uma das três seções: filtros manuais, filtros de le-genda e filtros de valor. A dica de ferramenta 830 tambémlista os campos filtrados na ordem de avaliação com o tipode filtro aplicado. Quanto aos filtros com legendas maiores,uma parte da legenda pode ser truncada conforme necessáriopara se encaixar dentro da dica de ferramenta. Para cadafiltro, a dica de ferramenta 830 mostra que um filtro manualé primeiramente aplicado ao campo "Year" para os anos 2000,2001, 2002, 2003 e 2004. A dica de ferramenta 830 indicaque um filtro de texto é então aplicado ao campo "ProductName", solicitando o texto "ab". A filtragem adicional tam-bém é exibida na dica de ferramenta 830. Dessa maneira, ousuário pode identificar que filtros são aplicados à tabelade resumo de dados 320, bem como identificar a ordem em queos filtros são aplicados examinando à dica de ferramenta830.In addition, when the pointing device hovers over the specific field with the filter icon 810, a tooltip 830 is shown as shown in Figure 28. Tooltip 830 lists the fields filtered in one of three sections: hand filters, legend filters, and value filters. Tooltip 830 also lists the filtered fields in the evaluation order with the filter type applied. For filters with larger subtitles, a portion of the subtitle may be truncated as needed to fit within the tooltip. For each filter, tooltip 830 shows that a hand filter is first applied to the "Year" field for the years 2000,2001, 2002, 2003, and 2004. Tooltip 830 indicates that a text filter is then applied to the "ProductName" field. ", requesting the text" ab ". Additional filtering is also displayed in tooltip 830. In this way, the user can identify which filters are applied to the data summary table 320, as well as identify the order in which filters are applied by examining tooltip 830.

No exemplo ilustrado, o usuário pode usar a áreasuspensa 562 (vide Figura 11) em busca de um campo específi-co listado no painel de tarefas 450 para acessar o painel detarefas de filtragem 700. Se o usuário acessar a interface700 a partir da tabela de resumo de dados 320, o campo pa-drão exibido no controle seletor suspenso 705 é o campo queestá atualmente selecionado na tabela de resumo de dados320. O usuário pode selecionar outro campo usando o controleseletor suspenso 705. Em outras concretizações, o painel detarefas de filtragem 700 também pode ser acessado a partirda tabela de resumo de dados 320 selecionando áreas suspen-sas 862 na tabela de resumo de dados 320, vide Figura 9. Emoutras concretizações, o usuário pode acessar o painel detarefas de filtragem 700 selecionando um ou mais campos natabela de resumo de dados 320 e clicando com o botão direitonos campos selecionados para acessar uma ou mais opções defiltragem. Essas opções podem incluir, por exemplo, incluirou excluir os campos selecionados em um filtro manual oufiltrar os campos selecionados usando a legenda, data oufiltros de valor descritos acima.In the illustrated example, the user can use the deprecated area 562 (see Figure 11) for a specific field listed in task pane 450 to access filtering task pane 700. If the user accesses interface700 from the table of Data Summary 320, the default field displayed on the drop-down selector control 705 is the field that is currently selected in the data summary table320. The user can select another field using the dropdown selector 705. In other embodiments, the filtering taskpad 700 can also be accessed from the data summary table 320 by selecting suspended areas 862 in the data summary table 320, see Figure 9. In other embodiments, the user can access the filtering tasks panel 700 by selecting one or more fields in the data summary table 320 and right-clicking selected fields to access one or more filtering options. These options might include, for example, including deleting selected fields in a manual filter or filtering selected fields using the caption, date, or value filters described above.

Se o painel de tarefas de filtragem 700 for aces-sado a partir da tabela de resumo de dados 320, os camposlistados no controle suspenso 705 podem ser selecionados combase em onde o usuário acessa a interface 700. Por exemplo,se o usuário selecionar a área suspensa 862 a partir de umcampo em uma linha da tabela de resumo de dados 320, todosos campos atualmente em filas são exibidos. Do contrário, seo usuário selecionar a área suspensa 862 a partir de um cam-po em uma coluna da tabela de resumo de dados 320, todos oscampos atualmente em colunas são exibidos.No exemplo ilustrado, as informações de filtragemsão armazenadas juntas com o campo especifico a que elas sãoaplicadas. Por exemplo, se a filtragem é aplicada a um campoque não faz parte da tabela de resumo de dados 320, as in-formações de filtragem são associadas ao campo e aplicadasquando o campo é adicionado à tabela de resumo de dados 320.Outrossim, se um campo com um filtro é removido da tabela deresumo de dados 320, as informações de filtro são retidascom o campo, de modo que, se mais tarde o campo for adicio-nado novamente à tabela de resumo de dados 320, o filtro se-ja reaplicado. Conforme observado acima, a filtragem para umcampo pode ser removida selecionando o campo e em seguida ocontrole 720 (vide Figura.20).If the filtering task pane 700 is accessed from the data summary table 320, the fields listed in the 705 dropdown can be selected based on where the user accesses interface 700. For example, if the user selects the area drop down 862 from a field in a row of data summary table 320, all fields currently in queues are displayed. Otherwise, if the user selects dropdown area 862 from a field in a column of the data summary table 320, all fields currently in columns are displayed. In the illustrated example, filtering information is stored together with the specified field. to which they are applied. For example, if filtering is applied to a field that is not part of the data summary table 320, filtering information is associated with the field and applied when the field is added to the data summary table 320. Also, if a If a field with a filter is removed from the data summary table 320, the filter information is retained with the field, so that if the field is later added again to the data summary table 320, the filter is reapplied. . As noted above, filtering for a field can be removed by selecting the field and then controlling 720 (see Figure.20).

As várias concretizações descritas acima são apre-sentadas a titulo meramente ilustrativo e não devem ser in-terpretadas como limitantes. Os versados na técnica reconhe-cerão sem dificuldade várias modificações e alterações quepodem ser feitas sem seguir as concretizações exemplificati-vas e aplicações ilustradas e descritas no neste documento,e sem divergir da verdadeira essência e âmbito da presenteinvenção, estabelecidos nas reivindicações a seguir.The various embodiments described above are given by way of illustration only and should not be construed as limiting. Those skilled in the art will readily recognize various modifications and changes which may be made without following the exemplary embodiments and applications illustrated and described herein, and without departing from the true essence and scope of the present invention set forth in the following claims.

Claims (20)

1. Interface gráfica do usuário para criar uma ta-bela de resumo de dados, a interface do usuário sendoCARACTERIZADA por compreender: um painel incluindo uma mul-tiplicidade de campos; euma tabela de resumo de dados;em que, ao selecionar um campo para inclusão natabela de resumo de dados, a interface do usuário é progra-mada para analisar o campo e posicionar automaticamente ocampo na tabela de resumo de dados.1. Graphical user interface for creating a data summary table, the user interface being CHARACTERIZED for understanding: a panel including a multitude of fields; a data summary table, where when selecting a field to include in the data summary table, the user interface is programmed to parse the field and automatically position the field in the data summary table. 2. Interface do usuário, de acordo com a reivindi-cação 1, CARACTERIZADA por adicionalmente compreender umpainel de layout incluindo uma multiplicidade de zonas, aszonas representando áreas da tabela de resumo de dados, emque a interface do usuário é programada para colocar automa-ticamente o campo em uma zona do painel de layout.User interface according to claim 1, characterized in that it further comprises a layout panel including a plurality of zones, zones representing data summary table areas, wherein the user interface is programmed to automatically place the field in a zone of the layout panel. 3. Interface do usuário, de acordo com a reivindi-cação 1, CARACTERIZADA pelo fato de que a interface do usuá-rio é programada para identificar se o campo é de um tiponumérico.User interface according to claim 1, characterized by the fact that the user interface is programmed to identify whether the field is of a numeric type. 4. Interface do usuário, de acordo com a reivindi-cação 3, CARACTERIZADA pelo fato de que a interface do usuá-rio é programada para resumir itens do campo se o campo fordo tipo numérico.User interface according to claim 3, characterized by the fact that the user interface is programmed to summarize field items if the field is numeric type. 5. Interface do usuário, de acordo com a reivindi-cação 1, CARACTERIZADA pelo fato de que a interface do usuá-rio é programada para identificar um tipo do campo e sele-cionar uma linha da tabela de resumo de dados para colocaçãodo campo se o campo for de um tipo não-numérico.5. User interface according to claim 1, characterized in that the user interface is programmed to identify a field type and select a data summary table row for field placement if the field is of a nonnumeric type. 6. Interface do usuário, de acordo com a reivindi-cação 1, CARACTERIZADA pelo fato de que a interface do usuá-rio é programada para identificar um tipo do campo e sele-cionar uma coluna da tabela de resumo de dados para coloca-ção do campo se o campo for do tipo data.6. User interface according to claim 1, characterized in that the user interface is programmed to identify a field type and select a column from the data summary table for placement. of the field if the field is of type date. 7. Interface do usuário, de acordo com a reivindi-cação 1, CARACTERIZADA pelo fato de que a interface do usuá-rio é programada para comparar uma legenda do campo com umalista de cadeias de caracteres a fim de identificar o tipodo campo, e pelo fato de que a interface do usuário é pro-gramada para comparar itens do campo com valores mínimos emáximos a fim de verificar o tipo do campo.User interface according to claim 1, characterized by the fact that the user interface is programmed to compare a field caption with a list of strings to identify the field type, and by fact that the user interface is programmed to compare field items with maximum minimums to verify the field type. 8. Método em um sistema de computador com uma in-terface gráfica do usuário para uma tabela de resumo de da-dos, CARACTERIZADO por incluir:permitir a seleção de um campo dentre uma multi-plicidade de campos;analisar o campo selecionado usando a semântica;selecionar uma área de uma tabela de resumo de da-dos para colocar o campo; eadicionar o campo à área da tabela de resumo dedados.8. Method in a computer system with a graphical user interface for a data summary table, CHARACTERIZED by including: allowing the selection of a field from a multitude of fields, analyzing the selected field using the semantics: select an area from a data summary table to place the field in; Add the field to the data summary table area. 9. Método, de acordo com a reivindicação 8,CARACTERIZADO pelo fato de que selecionar adicionalmentecompreende:selecionar uma zona de um painel de tarefas paracolocar o campo; eadicionar o campo à zona do painel de tarefas.A method according to claim 8, characterized in that additionally selecting comprises: selecting a zone of a task pane to place the field; Add the field to the task pane zone. 10. Método, de acordo com a reivindicação 8,CARACTERIZADO pelo fato de que analisar adicionalmente com-preende identificar se o campo é de um tipo numérico.A method according to claim 8, characterized in that further analysis comprises identifying whether the field is of a numeric type. 11. Método, de acordo com a reivindicação 10,CARACTERIZADO pelo fato de que selecionar adicionalmentecompreende resumir o campo se o campo for do tipo numérico.Method according to claim 10, characterized in that selecting additionally comprises summarizing the field if the field is of numeric type. 12. Método, de acordo com a reivindicação 8,CARACTERIZADO pelo fato de que analisar e selecionar adicio-nalmente compreendem:identificar um tipo do campo;selecionar uma linha da tabela de resumo de dadosse o campo for de um tipo não-numérico;selecionar uma coluna da tabela de resumo de dadosse o campo for do tipo data; eresumir o campo se o campo for de um tipo numéricoe não for do tipo data.A method according to claim 8, characterized in that further analyzing and selecting comprises: identifying a field type; selecting a row from the data summary table if the field is of a non-numeric type; a column from the data summary table if the field is of type data; and summarize the field if the field is of a numeric type and not of a date type. 13. Método, de acordo com a reivindicação 12,CARACTERIZADO pelo fato de que identificar adicionalmentecompreende comparar uma legenda do campo com uma lista decadeias de caracteres para identificar o tipo do campo.A method according to claim 12, characterized in that further identifying means comparing a field caption with a list of decades to identify the field type. 14. Método, de acordo com a reivindicação 13,CARACTERIZADO pelo fato de que identificar adicionalmentecompreende comparar itens do campo com valores mínimos oumáximos para verificar o tipo do campo.Method according to claim 13, characterized by the fact that further identifying comprises comparing field items with minimum or maximum values to verify the field type. 15. Meio legível por computador, CARACTERIZADO porconter instruções executáveis por computador, para realizaras etapas compreendendo:permitir a seleção de um campo dentre uma multi-plicidade de campos;analisar o campo selecionado usando a semântica;selecionar uma área de uma tabela de resumo de da-dos para colocar o campo; eadicionar o campo à área da tabela de resumo dedados.15. Computer readable media, FEATURED by containing computer executable instructions, to perform steps comprising: allowing the selection of a field from a multitude of fields, analyzing the selected field using semantics, selecting an area from a summary table of given to place the field; Add the field to the data summary table area. 16. Meio legível por computador, de acordo com areivindicação 15, CARACTERIZADO pelo fato de que selecionaradicionalmente compreende:selecionar uma zona de um painel de tarefas paracolocar o campo; eadicionar o campo à zona do painel de tarefas.16. Computer readable medium according to claim 15, characterized in that additionally selecting comprises: selecting a zone of a task pane to place the field; Add the field to the task pane zone. 17. Meio legível por computador, de acordo com areivindicação 15, CARACTERIZADO pelo fato de que analisaradicionalmente compreende identificar se o campo é de um ti-po numérico.17. Computer readable medium according to claim 15, characterized by the fact that further analysis comprises identifying whether the field is of a numerical type. 18. Meio legível por computador, de acordo com areivindicação 17, CARACTERIZADO pelo fato de que selecionaradicionalmente compreende resumir o campo se o campo for dotipo numérico.18. Computer readable medium according to claim 17, characterized by the fact that additionally selecting comprises summarizing the field if the field is numeric. 19. Meio legível por computador, de acordo com areivindicação 15, CARACTERIZADO pelo fato de que analisar eselecionar adicionalmente compreendem:identificar um tipo do campo;selecionar uma linha da tabela de resumo de dadosse o campo for de um tipo não-numérico;selecionar uma coluna da tabela de resumo de dadosse o campo for do tipo data; eresumir o campo se o campo for de um tipo numéricoe não for do tipo data.19. Computer readable medium according to claim 15, characterized by the fact that parsing and further selecting comprises: identifying a field type; selecting a row from the data summary table if the field is of a non-numeric type; data summary table column if field is of type data; and summarize the field if the field is of a numeric type and not of a date type. 20. Meio legível por computador, de acordo com areivindicação 19, CARACTERIZADO pelo fato de que identificaradicionalmente compreende comparar uma legenda do campo comuma lista de cadeias de caracteres para identificar o tipodo campo.20. Computer readable medium according to claim 19, characterized by the fact that further identifying comprises comparing a field legend with a list of strings to identify the field type.
BRPI0615459A 2005-09-09 2006-08-29 automated field placement in a data summary table BRPI0615459B1 (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US11/222.660 2005-09-09
US11/222,660 US7480675B2 (en) 2005-09-09 2005-09-09 Automated placement of fields in a data summary table
PCT/US2006/033876 WO2007032913A1 (en) 2005-09-09 2006-08-29 Automated placement of fields in a data summary table

Publications (2)

Publication Number Publication Date
BRPI0615459A2 true BRPI0615459A2 (en) 2011-05-17
BRPI0615459B1 BRPI0615459B1 (en) 2018-09-25

Family

ID=37865259

Family Applications (1)

Application Number Title Priority Date Filing Date
BRPI0615459A BRPI0615459B1 (en) 2005-09-09 2006-08-29 automated field placement in a data summary table

Country Status (8)

Country Link
US (1) US7480675B2 (en)
EP (1) EP1922649B1 (en)
JP (1) JP4482602B2 (en)
KR (1) KR101301363B1 (en)
CN (1) CN101278279B (en)
BR (1) BRPI0615459B1 (en)
RU (1) RU2417421C2 (en)
WO (1) WO2007032913A1 (en)

Families Citing this family (40)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8095866B2 (en) * 2005-09-09 2012-01-10 Microsoft Corporation Filtering user interface for a data summary table
US8601383B2 (en) 2005-09-09 2013-12-03 Microsoft Corporation User interface for creating a spreadsheet data summary table
US7627812B2 (en) * 2005-10-27 2009-12-01 Microsoft Corporation Variable formatting of cells
US7770100B2 (en) * 2006-02-27 2010-08-03 Microsoft Corporation Dynamic thresholds for conditional formats
US8645321B1 (en) 2006-05-31 2014-02-04 Verizon Data Services Llc Asynchronous data integrity for enterprise computing
US8161075B1 (en) * 2006-05-31 2012-04-17 Verizon Laboratories Inc. Systems and methods for managing integrated and customizable data
US9411903B2 (en) * 2007-03-05 2016-08-09 Oracle International Corporation Generalized faceted browser decision support tool
CN101765979A (en) * 2007-03-30 2010-06-30 谷歌公司 Document processing for mobile devices
US20080301604A1 (en) * 2007-05-30 2008-12-04 Alexander Itskovich Apparatus for and method of estimating the quality of clock gating solutions for integrated circuit design
US8214743B2 (en) * 2007-08-07 2012-07-03 International Business Machines Corporation Data management techniques
US8436871B2 (en) * 2008-04-18 2013-05-07 General Electric Company Space efficent sortable table
US20100114844A1 (en) * 2008-11-04 2010-05-06 Wuzhen Xiong Method and system for data mashup in commenting layer
US8527897B2 (en) * 2009-01-26 2013-09-03 International Business Machines Corporation System, method, and computer program product for toggling back and forth between unformatted and formatted editable views of data
US8312366B2 (en) * 2009-02-11 2012-11-13 Microsoft Corporation Displaying multiple row and column header areas in a summary table
US9092411B2 (en) 2009-08-18 2015-07-28 Miosoft Corporation Understanding data in data sets
EP2759941A1 (en) 2010-04-10 2014-07-30 Hewlett-Packard Development Company, L.P. Injection of data into a software application
US9075854B2 (en) * 2010-11-05 2015-07-07 Apple Inc. Browser based database manipulation
US9497084B2 (en) * 2011-02-28 2016-11-15 Ricoh Company, Ltd. Display filtering in device management system
US9881063B2 (en) * 2011-06-14 2018-01-30 International Business Machines Corporation Systems and methods for using graphical representations to manage query results
US8990675B2 (en) * 2011-10-04 2015-03-24 Microsoft Technology Licensing, Llc Automatic relationship detection for spreadsheet data items
US9069748B2 (en) * 2011-10-04 2015-06-30 Microsoft Technology Licensing, Llc Selective generation and display of data items associated with a spreadsheet
US9135233B2 (en) 2011-10-13 2015-09-15 Microsoft Technology Licensing, Llc Suggesting alternate data mappings for charts
US9098595B2 (en) 2011-10-19 2015-08-04 Oracle International Corporation Adaptive navigation functionality in a web-based data-entry grid
US8775506B2 (en) 2011-10-19 2014-07-08 Oracle International Corporation Eager block fetching for web-based data grids
US10061473B2 (en) 2011-11-10 2018-08-28 Microsoft Technology Licensing, Llc Providing contextual on-object control launchers and controls
US8793567B2 (en) * 2011-11-16 2014-07-29 Microsoft Corporation Automated suggested summarizations of data
US20140019842A1 (en) * 2012-07-11 2014-01-16 Bank Of America Corporation Dynamic Pivot Table Creation and Modification
US9286284B2 (en) 2012-10-15 2016-03-15 International Business Machines Corporation Data filtering based on a cell entry
US10055396B2 (en) * 2013-04-12 2018-08-21 Microsoft Technology Licensing, Llc Binding of data source to compound control
US10282407B1 (en) 2013-08-21 2019-05-07 The United States Of America, As Represented By The Secretary Of The Navy Method for filtering data to generate a balance sheet
WO2016057854A1 (en) 2014-10-08 2016-04-14 Inertech Ip Llc Systems and methods for cooling electrical equipment
US9984105B2 (en) * 2014-12-04 2018-05-29 International Business Machines Corporation Automatic discovery of code and data stores that populate a user interface element
US10120927B2 (en) 2015-06-03 2018-11-06 International Business Machines Corporation Technology for generating a model in response to user selection of data
US10345991B2 (en) 2015-06-16 2019-07-09 International Business Machines Corporation Adjusting appearance of icons in an electronic device
CN109002427A (en) * 2017-06-06 2018-12-14 珠海金山办公软件有限公司 The method, apparatus and electronic equipment of refresh function parameter in electrical form
EP3422199A1 (en) 2017-06-27 2019-01-02 Zebrys An interactive interface for improving the management of datasets
KR102076555B1 (en) * 2018-06-22 2020-02-12 주식회사 한글과컴퓨터 Spreadsheet document editing apparatus for providing filtering functionality based on data patterns and operating method thereof
US11093364B2 (en) 2018-12-18 2021-08-17 Micron Technology, Inc. Management of event log information of a memory sub-system
CN110738037B (en) * 2019-10-15 2021-02-05 深圳逻辑汇科技有限公司 Method, apparatus, device and storage medium for automatically generating electronic form
US11886462B2 (en) 2021-12-09 2024-01-30 Microsoft Technology Licensing, Llc Intelligent transformation of multidimensional data for automatic generation of pivot tables

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6246410B1 (en) * 1996-01-19 2001-06-12 International Business Machines Corp. Method and system for database access
US5819293A (en) * 1996-06-06 1998-10-06 Microsoft Corporation Automatic Spreadsheet forms
JP2000315242A (en) * 1999-05-06 2000-11-14 Fujitsu Ltd Summary table creating device and storage medium for summary table creating program
US6626959B1 (en) * 1999-06-14 2003-09-30 Microsoft Corporation Automatic formatting of pivot table reports within a spreadsheet
US6411313B1 (en) * 1999-06-14 2002-06-25 Microsoft Corporation User interface for creating a spreadsheet pivottable
US6604095B1 (en) * 1999-09-21 2003-08-05 International Business Machines Corporation Method, system, program, and data structure for pivoting columns in a database table
US7185279B2 (en) * 2000-01-07 2007-02-27 Master Mine Software, Inc. Data mining and reporting
US6829615B2 (en) * 2000-02-25 2004-12-07 International Business Machines Corporation Object type relationship graphical user interface
US6453270B1 (en) * 2000-03-07 2002-09-17 One Plus Corp. Systems for remote management of a network of waste containers
WO2002025500A2 (en) * 2000-09-20 2002-03-28 A2I, Inc. Method and apparatus for dynamically formatting and displaying tabular data in real time
US6988241B1 (en) * 2000-10-16 2006-01-17 International Business Machines Corporation Client side, web-based spreadsheet
IL157153A0 (en) 2001-02-06 2004-02-08 Strategic Capital Network Llc System for facilitating selection of investments
US6906717B2 (en) * 2001-02-27 2005-06-14 Microsoft Corporation Multiple chart user interface
US6839719B2 (en) * 2002-05-14 2005-01-04 Time Industrial, Inc. Systems and methods for representing and editing multi-dimensional data
US20040117731A1 (en) * 2002-09-27 2004-06-17 Sergey Blyashov Automated report building system
KR100509072B1 (en) 2002-12-04 2005-08-19 박문찬 Method for integratedly managing form document
KR20040027270A (en) 2003-03-22 2004-04-01 (주)오알솔루션즈코리아 Method for monitoring database system
KR100581687B1 (en) 2004-01-26 2006-05-22 이생희 A unification method of Query Analyzers of database management systems
US7698287B2 (en) * 2004-09-30 2010-04-13 Microsoft Corporation Design of spreadsheet functions for working with tables of data
KR100603547B1 (en) 2004-11-30 2006-07-20 (주)이프라임 Transport administrative management system and the utilization method to use internet
US8095866B2 (en) * 2005-09-09 2012-01-10 Microsoft Corporation Filtering user interface for a data summary table
US8601383B2 (en) * 2005-09-09 2013-12-03 Microsoft Corporation User interface for creating a spreadsheet data summary table
KR200427270Y1 (en) 2006-06-23 2006-09-22 피엘에이치 프로덕츠 인코포레이티드 Heater assembly for sauna booth

Also Published As

Publication number Publication date
CN101278279B (en) 2010-12-29
RU2008109029A (en) 2009-10-10
RU2417421C2 (en) 2011-04-27
US7480675B2 (en) 2009-01-20
KR101301363B1 (en) 2013-08-29
JP4482602B2 (en) 2010-06-16
CN101278279A (en) 2008-10-01
EP1922649B1 (en) 2013-09-18
US20070074130A1 (en) 2007-03-29
WO2007032913A1 (en) 2007-03-22
EP1922649A1 (en) 2008-05-21
KR20080045696A (en) 2008-05-23
BRPI0615459B1 (en) 2018-09-25
EP1922649A4 (en) 2009-08-19
JP2009508221A (en) 2009-02-26

Similar Documents

Publication Publication Date Title
BRPI0615459A2 (en) automated field placement in a data summary table
US10579723B2 (en) User interface for creating a spreadsheet data summary table
CA2617870C (en) Filtering user interface for a data summary table

Legal Events

Date Code Title Description
B25A Requested transfer of rights approved

Owner name: MICROSOFT TECHNOLOGY LICENSING, LLC (US)

B07A Application suspended after technical examination (opinion) [chapter 7.1 patent gazette]
B09A Decision: intention to grant [chapter 9.1 patent gazette]
B16A Patent or certificate of addition of invention granted [chapter 16.1 patent gazette]

Free format text: PRAZO DE VALIDADE: 10 (DEZ) ANOS CONTADOS A PARTIR DE 25/09/2018, OBSERVADAS AS CONDICOES LEGAIS.

B21F Lapse acc. art. 78, item iv - on non-payment of the annual fees in time

Free format text: REFERENTE A 14A ANUIDADE.

B24J Lapse because of non-payment of annual fees (definitively: art 78 iv lpi, resolution 113/2013 art. 12)

Free format text: EM VIRTUDE DA EXTINCAO PUBLICADA NA RPI 2595 DE 29-09-2020 E CONSIDERANDO AUSENCIA DE MANIFESTACAO DENTRO DOS PRAZOS LEGAIS, INFORMO QUE CABE SER MANTIDA A EXTINCAO DA PATENTE E SEUS CERTIFICADOS, CONFORME O DISPOSTO NO ARTIGO 12, DA RESOLUCAO 113/2013.