Abstract:
A system and method for managing display of database records are provided. The method includes determining whether a pointer is positioned over a data cell of a plurality of data cells of a graphical user interface; in response to receiving an actuation signal related to the pointer while the pointer is determined to be over the data cell, automatically modifying search criteria applied to database data according to the data of the data cell; and automatically outputting the database data filtered by the modified search criteria to the graphical user interface.

Description:
CROSS-REFERENCE TO RELATED APPLICATION 
       [0001]    This application claims the benefit of priority of U.S. Provisional Application No. 61/788,182, filed on Mar. 15, 2013, the entire content of which is incorporated herein by reference. 
     
    
     BACKGROUND 
       [0002]    1. Field 
         [0003]    Devices, apparatuses, systems, methods, articles of manufacture and computer readable media consistent with the present disclosure relate to graphical presentation of data records typically residing in a database and more particularly to controlling display of data based on filter parameters creating search criteria. 
         [0004]    2. Description of the Related Art 
         [0005]    Computer database information has reached a magnitude whereby index filters must be employed to narrow the field of viewable records to manageable proportions especially for human-readable form. Related art methods of managing computer database information include providing reserved fields within a graphical interface which are used to enter search parameters. Alternatively, a columned list of available filters is displayed and a filter can be selected singly or in groups from the columned list. These search parameters, commonly called ‘filters’ are used by the database manager to present record entries relating to the filters for viewing from the database. Multiple filters are often employed. However, a disadvantage occurs when multiple filters need to be re-specified. Often the filter list must be reset and re-entered from scratch if the filters are hierarchical. This results in a multi-stage process to change filters, slowing operational efficiency. 
       SUMMARY 
       [0006]    It is an aspect to provide for the more efficient application of filter criteria to a database via a graphical user interface. 
         [0007]    According to an aspect of an exemplary embodiment, there is provided a computer device for controlling display of database information, the computer server comprising a display that is configured to display a graphical user interface including database data arranged in a plurality of data cells; an input device that is configured to move a pointer within the graphical user interface on the display; and a processor coupled to the input device and the display, the processor being operable to execute program instructions to determine whether the pointer is positioned over a data cell of the plurality of data cells and, in response to an actuation of the input device while the pointer is determined to be over the data cell, automatically modify search criteria applied to the database data according to the data of the data cell and automatically display the database data filtered by the modified search criteria. 
         [0008]    According to another aspect of an exemplary embodiment, there is provided a system for controlling display of database information, the system comprising a database that stores database data; a central computer server which is communicatively coupled to the database and hosts software for controlling the database, the central computer server providing remote access to the database data of the database via web applications; and a remote computer system which is communicatively coupled to the central computer server via a web browser, wherein the remote computer server comprises a display that is configured to display a graphical user interface including the database data arranged in a plurality of data cells; an input device that is configured to move a pointer within the graphical user interface on the display; and a processor coupled to the input device and the display, the processor being operable to execute program instructions to determine whether the pointer is positioned over a data cell of the plurality of data cells and, in response to an actuation of the input device while the pointer is determined to be over the data cell, automatically modify search criteria applied to the database data according to the data of the data cell, send the modified search criteria to the central computer server, receive from the central computer server the database data of the database filtered by the modified search criteria, and automatically display the received database data. 
         [0009]    According to another aspect of an exemplary embodiment, there is provided a non-transitory computer-readable storage medium storing instructions, which, when executed by a processor of a computer, cause the computer to determine whether a pointer is positioned over a data cell of a plurality of data cells of a graphical user interface; in response to receiving an actuation signal related to the pointer while the pointer is determined to be over the data cell, automatically modify search criteria applied to database data according to the data of the data cell; and automatically output the database data filtered by the modified search criteria to the graphical user interface. 
     
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         [0010]    The above and/or other aspects will become more apparent by describing in detail exemplary embodiments with reference to the attached drawings in which: 
           [0011]      FIG. 1  illustrates a typical database record structure as stored on a computer, according to an exemplary embodiment; 
           [0012]      FIG. 2  illustrates how a group of records may be displayed on a graphical interface, according to an exemplary embodiment; 
           [0013]      FIG. 3  illustrates a method of selecting filters to limit a range of displayed records, according to the related art; 
           [0014]      FIG. 4  illustrates using a drop-down list from a parameter heading to select values for search criteria, according to the related art; 
           [0015]      FIG. 5  illustrates a graphical device for selecting a first field within a record to become a filter parameter, according to an exemplary embodiment; 
           [0016]      FIG. 6  illustrates the graphical device after execution of the filter parameter selected in  FIG. 5 , and also selecting a second field within the record to become a filter parameter, according to an exemplary embodiment; 
           [0017]      FIG. 7  illustrates the database records displayed after action of the filters selected in  FIGS. 5-6 , according to an exemplary embodiment; 
           [0018]      FIG. 8  illustrates a database containing parameters relating to resistor electronic components, according to an exemplary embodiment; 
           [0019]      FIG. 9  illustrates a graphical device for selecting a field within a record to become a filter parameter within the database of  FIG. 8 , according to an exemplary embodiment; 
           [0020]      FIG. 10  illustrates an action of adding a search parameter, according to an exemplary embodiment; 
           [0021]      FIG. 11  illustrates database records displayed after the action selected in  FIG. 10 , according to an exemplary embodiment; 
           [0022]      FIG. 12  illustrates a graphical device for selecting a second field within a record to become a filter parameter, according to an exemplary embodiment; 
           [0023]      FIG. 13  illustrates the database records displayed after the action of  FIG. 12 , according to an exemplary embodiment; 
           [0024]      FIG. 14  illustrates changing a Boolean algebra logical condition for the search parameters, according to an exemplary embodiment; 
           [0025]      FIG. 15  illustrates a process of performing a mouse-over of data cells to add a graphical icon indicating data that can be removed from search criteria; according to an exemplary embodiment; 
           [0026]      FIG. 16  illustrates a process of deselecting a filter parameter within a list of displayed records, according to an exemplary embodiment; 
           [0027]      FIG. 17  illustrates database records displayed after the action of  FIG. 16 , according to an exemplary embodiment; 
           [0028]      FIG. 18  illustrates a process of deselecting a filter parameter relating to resistor electronic components, according to an exemplary embodiment; 
           [0029]      FIG. 19  illustrates the database records displayed after the action of  FIG. 18 , according to an exemplary embodiment; 
           [0030]      FIG. 20  illustrates an example of a flowchart showing a method of building a filter parameter, according to an exemplary embodiment; 
           [0031]      FIG. 21  is a block diagram of a computer system, according to an exemplary embodiment; and 
           [0032]      FIG. 22  is a block diagram of a computer network system, according to an exemplary embodiment. 
       
    
    
     DETAILED DESCRIPTION 
       [0033]    The above and/or other aspects will now be set forth in part in the description which follows, and in part will be apparent from the description, or may be learned by practice of the inventive concept. Aspects of the inventive concept may be realized and attained by means of the elements and combinations of various elements and aspects particularly pointed out in the following detailed description and the appended claims. 
         [0034]    It is to be understood that both the foregoing and the following descriptions are exemplary and explanatory only and are not intended to limit the appended claims or application thereof in any manner whatsoever. 
         [0035]    In the following detailed description, reference will be made to the accompanying drawings. The aforementioned accompanying drawings show by way of illustration and not by way of limitation, specific exemplary embodiments and implementations consistent with principles of the present inventive concept. These implementations are described in sufficient detail to enable those skilled in the art to practice the inventive concept, and it is to be understood that other implementations may be utilized and that structural changes and/or substitutions of various elements may be made without departing from the scope and spirit of present inventive concept. The following detailed description is, therefore, not to be construed in a limited sense. Additionally, the various exemplary embodiments as described may be implemented in the form of software running on a general purpose computer, in the form of a specialized hardware, or combination of software and hardware. 
         [0036]    As used in this specification and the appended claims, the singular forms “a”, “an”, and “the” include plural references unless the context clearly dictates otherwise. Thus, for example, references to “the method” includes one or more methods, and/or steps of the type described herein which will become apparent to those persons skilled in the art upon reading this disclosure and so forth. 
         [0037]    The term “comprising,” which is used interchangeably with “including,” “containing,” or “characterized by,” is inclusive or open-ended language and does not exclude additional, un-recited elements or method operations. The phrase “consisting of” excludes any element, operation, or ingredient not specified in the claim. The phrase “consisting essentially of” limits the scope of a claim to the specified materials or operations and those that do not materially affect the basic and novel characteristics of the claimed inventive concept. 
         [0038]    Unless defined otherwise, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this inventive concept belongs. 
         [0039]    Exemplary embodiments relate to graphical manipulation of data displayed from a computer database. A user may remotely connect to a web server application that controls the database via a computer browser to view and control the database records. The remote web browser may be installed on any computing platform such as general purpose computer and/or a mobile device, etc. 
         [0040]    In other exemplary embodiments, the systems and methods described herein may be implemented as a web server application with remote control of the database. 
         [0041]      FIG. 22  is a block diagram of a computer network system according to an exemplary embodiment. As shown in  FIG. 22 , a computer network system  400  includes a central computer server  450 , which is communicatively coupled to a network  440 , a first remote computer system  410  which is communicatively coupled to the network  440 , and a second remote computer system  420  which is communicatively coupled to the network  440 . The first remote computer system  410  may be a status monitoring device that runs a web-browser application. The second remote computer system  420  may be an administrator computer that runs a web browser application. The central server  450  may also host web-based applications. The central server  450  executes instructions that implement various exemplary embodiments of the inventive concept. However, alternatively, the first remote computer system  410  and/or the second remote computer system  420  may execute instructions that implement various exemplary embodiments. The central computer server  450  may be managed by a service organization, such as an administrator at a remote station  420 .  FIG. 22  also shows that remote status monitoring may be performed  410 , by any device operating a compatible web browser and able to communicatively connect to the system network  440 . The central server  450  may in turn communicatively connect to a remote database  480  via another network  470 . The following descriptions are of graphical user interfaces that may be presented by a central server  450  of the computer network system  400 , but may also be presented by devices  410  and  420  via web browsers and other network connectivity applications. That is, the central computer server  450  and/or the client computer devices may implement various exemplary embodiments of the inventive concept, as long as the computer server or client computer devices are capable of remote or local access to a database and are capable of displaying a graphical user interface for displaying the data of the database. 
         [0042]      FIG. 1  illustrates a typical database record structure as stored on a computer, according to an exemplary embodiment.  FIG. 2  illustrates how a group of records may be displayed on a graphical interface, according to an exemplary embodiment. 
         [0043]    Database software creates records as exemplified in a structure illustrated by  FIG. 1 . As shown in  FIG. 1 , the record structure includes various parameters, including Parameter  1 , Parameter  2 , Parameter  3 , and Parameter  4 . The record structure also includes various records, for example, Record  1 , Record  2 , Record  3 , Record  4 , and Record  5 . Each record includes data relating to each of the parameters. For example, as shown in  FIG. 1 , Record  1  includes Date  1  for Parameter  1 , Data  1   b  for Parameter  2 , Data  1   c  for Parameter  3 , and Data  1   d  for Parameter  4 . Although four parameters and five records are shown in the example of  FIG. 1 , the number of records and the number of parameters is not particularly limited, and thus the number of parameter may be less than or greater than four, and the number of records may be less than or greater than 5. In a typical database, there may be hundreds or thousands of record, and the number of parameters may also be quite large. 
         [0044]    Software may display the record structure of  FIG. 1  in a graphical user interface as shown in  FIG. 2 . As shown in  FIG. 2 , the data of the record may be displayed on a graphical user interface on a display of one of the devices discussed above so as to show various data associated with the various parameters. Thus, for example, as shown in  FIG. 2 , the graphical user interface includes data cells that show Data  1   b , Data  2   b , Data  2   b , Data  2   b , and Data  3   b  under the Parameter  2 . 
         [0045]    An outline of existing methodologies for selecting filters for search criteria is depicted in  FIGS. 3-4 .  FIG. 3  illustrates a method of selecting filters to limit a range of displayed records, according to the related art. 
         [0046]    When multiple filters are required, a step to apply the filters must be taken, usually by an additional control, depicted by the “Apply filters” graphical button in  FIG. 3 . In the example of search filters shown in  FIG. 3 , the first search parameter becomes the value Data  2   b  either by selection from a drop down list, by using scrollable lists, or by typing the value into an entry field. The second search parameter in  FIG. 3  is the value Data  3   c  selected by similar methods as the first search parameter.  FIG. 3  shows data cells that are displayed from the database and graphical user interface of  FIGS. 1 and 2  after the “Apply filters” graphical button has been clicked. As shown in  FIG. 3 , Record  3  and Record  4  which include both Data  2   b  and Data  3   c  according to the search parameters selected are displayed in the graphical user interface of  FIG. 3   
         [0047]      FIG. 4  illustrates using a drop-down list from a parameter heading to select values for search criteria, according to the related art. In this case, drop down menus are employed. When the database is large, using drop-down menus is a slow operation because scrolling through long lists will be required.  FIG. 4  depicts that a drop down list has appeared for Parameter  2  after the mouse pointer has been clicked on the Parameter  2  filter search criteria button. In this example, the drop down list includes Value  1 , Value  2 , and Value  3 , and next to each value is a check box. The user of the graphical interface has the option of selecting one or more of these values with a mouse or pointer click over the check box. Typically the check box selected will alter its graphical appearance to indicate that the check box has been selected. Check boxes for each parameter column drop down list allow a parameter to be selected from multiple parameter values for search criteria. Because manually re-locating the check boxes for parameter de-selection can be tedious, a graphical “Reset” button provided at the bottom of the Parameter  2  filter search criteria button column resets the check boxes of the drop down list to an unselected state. Thus, “Reset” buttons are provided for the respective columns. These graphical devices designed to speed up operation add to the complexity of the graphical user interface. When all filter search criteria have been selected from the drop down lists, the “Apply filters” graphical button is clicked which causes the database to return values for display, according to search filter logical rules. 
         [0048]    By contrast, in the exemplary embodiments of the present inventive concept, when the user uses a pointing and selection device such as computer mouse and places the pointer over a data cell, referred to as a “mouse-over,” a graphical icon appears to indicate that the cell contents may be added to filter search criteria which narrows the range of displayed records. 
         [0049]      FIG. 20  illustrates an example of a flowchart showing a method of building a filter parameter, according to an exemplary embodiment.  FIG. 20  is the form of a software implementation that would be executed when the computing platform on which the graphical interface resides, detects a mouse or pointer movement. The software implementation of  FIG. 20  would normally form part of a bigger software application. 
         [0050]    As shown in  FIG. 20 , data cells are displayed according to the graphic rules of the software application in operation  110 . That is, the graphical user interface displays the data cells of one or more records of the record structure using the graphical rules of the graphical user interface. In operation  120 , it is determined whether the mouse or pointing device is over a data cell. When the mouse or pointing device is not over a data cell (operation  120 , No), operation  120  is repeated. When the mouse or pointing device is determined to be over a data cell (operation  120 , Yes), it is determined whether the data in the cell is included in the current filter parameters in operation  140 . 
         [0051]    When the data in the cell is not included in the current filter parameters (operation  140 , No), a filter additive icon is displayed in the same cell as the mouse-over (operation  150 ). It is then determined whether a mouse or pointer has been actuated (e.g., the mouse or pointer has been clicked, or for example, a button of the mouse or pointer pressed) on the cell data in operation  160 . When a mouse or pointer click has not occurred (operation  160 , No), the process ends (operation  160 ). When a mouse or pointer click has occurred (operation  160 , Yes), the cell data of the cell clicked is displayed in a region of the graphical user interface reserved for the display of search criteria (operation  170 ), and an instruction is sent to the database software to return values from the database with the cell data of the cell that is clicked added to the search filter criteria logical rules (operation  180 ), and the values returned form the database software are displayed by the graphical user interface and the process ends. 
         [0052]    On the other hand, when the data in the cell included in the current filter parameters (operation  140 , Yes), a subtractive icon is displayed in the same cell as the mouse-over (operation  190 ). It is then determined whether a mouse or pointer click has occurred on the cell data in operation  200 . When a mouse or pointer click has not occurred (operation  200 , No), the process ends (operation  210 ). When a mouse or pointer click has occurred (operation  200 , Yes), the cell data of the cell clicked is removed from being displayed in the region of the graphical user interface reserved for the display of search criteria (operation  220 ), and an instruction is sent to the database software to return values from the database with the cell data of the cell that is clicked removed from the search filter criteria logical rules (operation  230 ), and the values returned form the database software are displayed by the graphical user interface and the process ends. 
         [0053]    It should be noted that operation  170  and operation  180  of  FIG. 20  may be interchanged. However it is logical to display the selected filter criteria first to give users feedback on selection as it may take some time for the software to return values from the database. Similarly, it should be noted that operation  220  and operation  230  of  FIG. 20  may be interchanged. However as with operations  170  and  180 , it is logical to display the selected filter criteria first to give users feedback on selection as it may take some time for the software to return values from the database. 
         [0054]      FIG. 5  illustrates a graphical user interface for selecting a first field within a record to become a filter parameter, according to an exemplary embodiment. In  FIG. 5 , Data  2   b  is added to the filter search criteria. A user has caused a graphical icon  20  to appear with a mouse-over  30  of a data cell with contents Data  2   b  in the Parameter  2  column.  FIG. 5  also depicts that the user has clicked on the graphical icon  20  or data cell and caused the transfer of the data cell value Data  2   b  to the filter search criteria. It should be noted that the arrow  10  and associated lines indicate the execution of an instruction and are not necessarily graphical elements that are displayed in actual operation. 
         [0055]    The graphical icon  20  of  FIG. 5  may be a clickable feature. Alternatively, the graphical icon  20  may indicate that the cell becomes clickable for adding the cell contents to the filter search criteria. For example, as shown in  FIG. 5 , a graphic of a plus (+) is displayed over the data cell. However, this is only an example, and one or more of highlighting, outlining, bolding, or changing the characteristics of the text may alternatively be used to indicate the add feature. Upon clicking the cell, a request is immediately and automatically sent to the database software to display the relevant records that are governed by the search criteria.  FIG. 5  shows the moment of filter selection, but is before the time when instructions in the software apply the filter to the displayed records. The moment of filter selection shown in  FIG. 5  corresponds to operation  170  in  FIG. 20  just before the software applies the filter to the displayed records. 
         [0056]      FIG. 6  illustrates the graphical device after execution of the filter parameter selected in  FIG. 5 , and also selecting a second field within the record to become a filter parameter, according to an exemplary embodiment. The data cells shown in  FIG. 6  show the display of data cells as the result of the execution of the search filter selected in  FIG. 5 . In this case all records that contain Data  2   b  are displayed.  FIG. 6  thus shows the results of operation  110  following operation  180  and operation  190  of  FIG. 20 .  FIG. 6  also shows the addition of a second data cell to the filter search criteria.  FIG. 6  also depicts that the user has clicked the pointer  60  on the graphical icon  50  or data cell and caused the transfer of the data cell value Data  3   c  to the filter search criteria. It should be noted that the arrow  40  and associated lines indicate the execution of an instruction and are not necessarily graphical elements that are displayed in actual operation. As with  FIG. 5 ,  FIG. 6  shows the moment of the second filter selection, but before the time when instructions in the software apply the second filter to the displayed records. A mouse-over over any data cell that contains valid data, i.e. is not blank, produces an icon which is clickable or indicates that the data cell in which the icon appears is clickable for altering the search criteria. 
         [0057]      FIG. 7  illustrates the database records displayed after action of the filters selected in  FIGS. 5-6 , according to an exemplary embodiment.  FIG. 7  shows the results of the two filters depicted in  FIGS. 5-6  for the search criteria according to a default Boolean algebra logical AND condition for the filter parameters. In the case of  FIG. 7  records that contain Data  2   b  and also include Data  3   c  are displayed. Thus,  FIG. 7  shows the graphical user interface after operation  110  following operations  180  and  190  in  FIG. 20 . 
         [0058]    In the above manner and as depicted in the flowchart of  FIG. 20 , data cell information can be added to the filter search criteria in any order. Moreover, in response to a mouse-over and mouse click, the displayed data is automatically updated without having to further click an “Apply filter” button as the in the related art. Additionally, deleting search criteria may be more easily accomplished by a click of a mouse rather than having to click a “reset” button to clear the whole search criteria and start over from scratch. 
         [0059]      FIG. 8  illustrates a database containing parameters relating to resistor electronic components, according to an exemplary embodiment.  FIG. 9  illustrates a graphical device for selecting a field within a record to become a filter parameter within the database of  FIG. 8 , according to an exemplary embodiment.  FIG. 10  illustrates an action of adding a search parameter, according to an exemplary embodiment.  FIG. 11  illustrates database records displayed after the action selected in  FIG. 10 , according to an exemplary embodiment. 
         [0060]      FIG. 8  illustrates a practical example of a database using the parameters of resistor electronic components. In this example the values displayed in the columns from left to right are: Resistance values in ohms, material of construction, accuracy of marked value as a percentage deviance and power dissipation in watts. 
         [0061]      FIG. 9  shows that a clickable icon  70  appears when a mouse-over  80  of the data cell “metal oxide” occurs. This corresponds to operation  150  in  FIG. 20 . The icon  70  may indicate that either the icon  70  or the cell in which the icon  70  appears is clickable for adding this cell value to the search parameters. As discussed above, although a graphic of a plus (+) is displayed over the data cell, this is only an example, and one or more of highlighting, outlining, bolding, or changing the characteristics of the text may alternatively be used to indicate the add feature. 
         [0062]      FIG. 10  references operation  170  in  FIG. 20 , where a mouse click  95  on a data cell has added “metal oxide” to filter search criteria, after a mouse-over action has caused the graphical icon  90  for adding the cell to search criteria  85  to appear. 
         [0063]      FIG. 11  shows operation  110  in  FIG. 20  following operation  180  and operation  190  where values from the database have been displayed according to the search criteria established in  FIG. 10 . In this case records containing “metal oxide” are displayed. 
         [0064]      FIG. 12  illustrates a graphical device for selecting a second field within a record to become a filter parameter, according to an exemplary embodiment. FIG.  13  illustrates the database records displayed after the action of  FIG. 12 , according to an exemplary embodiment. 
         [0065]      FIG. 12  shows how a second parameter is added to search criteria indicating operation  170  in  FIG. 20 . In  FIG. 12  the tolerance value 5% is added to the search criteria following a mouse-over and click on the bottom cell of the Tolerance column. 
         [0066]      FIG. 13  shows the results of the two filters established in  FIGS. 10 and 12 . Thus displayed data meets the Boolean algebra logical AND condition where both parameters must be present in the displayed records. 
         [0067]      FIG. 14  illustrates changing a Boolean algebra logical condition for the search parameters, according to an exemplary embodiment.  FIG. 14  shows an extension of selectable Boolean algebra where additional graphical buttons allow an OR condition to be met for displaying records according to the search parameters. Here, the graphical user interface is modified to include an “AND” button and an “OR” button for selecting between an “AND” mode and an “OR” mode. The hatched OR button in  FIG. 14  indicates that the OR button has been selected to enter the OR mode which results in an additional record of the wire wound resistor being displayed. That is, upon clicking the OR button, the search criteria is automatically changed to use the OR operation and the search criteria is automatically applied to display data according to the search criteria applied according to the OR mode. Thus, as shown in  FIG. 14 , the displayed records are metal oxide composition OR 5% tolerance. 
         [0068]      FIG. 15  illustrates a process of performing a mouse-over of data cells to add a graphical icon indicating data that can be removed from search criteria; according to an exemplary embodiment. When a data cell is part of the filter search criteria, a mouse-over the data cell initiates appearance of a graphical icon to indicate that the data cell may be removed from the filter search criteria as depicted in  FIG. 15 .  FIG. 15  illustrates that four possible data cells are part of the search criteria. In this manner, after filter activation, any displayed data cell that contains a search criteria element can be used to remove the criteria of the data cell from the search parameters. 
         [0069]      FIG. 16  illustrates a process of deselecting a filter parameter within a list of displayed records, according to an exemplary embodiment. In  FIG. 16  a mouse-over a data cell that qualifies as search criteria results in the display of a graphical icon, corresponding to operation  190  in  FIG. 20 .  FIG. 16  shows records displayed according to a Boolean algebra logical AND condition. The hatched AND graphical button of  FIG. 16  indicates that the AND logical condition for search parameters is selected. The graphical icon of  FIG. 16  may be a clickable feature. Alternatively, the graphical icon may indicate that the data cell is clickable which subtracts the cell contents from the filter search criteria when clicked and immediately requests the database software to retrieve the relevant records that are governed by the search criteria. That is, upon clicking the graphical icon or clicking the data cell, the cell contents are removed from the filter search criteria and a request is automatically sent to the database software to retrieve and display the relevant records according to the updated search criteria. 
         [0070]      FIG. 17  illustrates database records displayed after the action of  FIG. 16 , according to an exemplary embodiment. In  FIG. 17 , Data  2   b  is removed from the search criteria and after clicking the graphical icon or the data cell as shown in FIG.  16 . Thus  FIG. 17  shows the graphical user interface display after execution of operations  190  and  230 . In  FIG. 17  a single search criteria remains and records containing the value Data  3   c  are displayed. 
         [0071]    In the above manner data cell information can be removed from the filter search criteria in any order and any new mouse-over of a removed data cell will subsequently produce an additive filter icon for cells that have been removed from the search criteria. Thus, the data cells alternate between additive and subtractive states. 
         [0072]      FIG. 18  illustrates a process of deselecting a filter parameter relating to resistor electronic components, according to an exemplary embodiment.  FIG. 19  illustrates the database records displayed after the action of  FIG. 18 , according to an exemplary embodiment. 
         [0073]      FIG. 18  illustrates a practical example using resistor parameters for deselecting a search filter. In  FIG. 18  a mouse-over a data cell cause a subtractive graphical icon to appear, operation  190  in  FIG. 20 . The example shown in  FIG. 18  is with filter parameters in the Boolean algebra logical AND condition as depicted by the hatched graphical AND button. 
         [0074]      FIG. 19  illustrates values displayed from the database after the cell with the subtractive icon has been clicked following operations  190  and  230 . In this case the value of “metal oxide” has been removed as a search parameter, and the value of 5% is the sole search parameter and records containing the value 5% are displayed. 
         [0075]      FIG. 21  is a block diagram of a computer device, according to an exemplary embodiment.  FIG. 21  is a block diagram that illustrates a computer device  300  upon which an exemplary embodiment may be implemented. The computer device  300  represents a configuration of any of the central computer server  450 , the first remote computer system  410  and the second remote computer system  420 . The computer device  300  includes a computer/server platform  310  including a processor  314  and memory  316  which operate to execute instructions. For example, the processor  314  may be a microcontroller or a microprocessor. Additionally, the computer platform  310  may receive input from a plurality of input devices  320 , such as a keyboard, mouse, touch device or verbal command. The computer platform  310  may additionally be connected to a removable storage device  330 , such as a portable hard drive, optical media (CD or DVD), disk media or any other tangible medium from which a computer can read executable code. The computer platform may further include a network interface (I/F)  370  for communicatively coupling to a network  390 . The computer platform  310  may be communicatively coupled to network resources  380  which connect to the Internet or other components of a local network such as a LAN or WLAN. The local network may be a public or private network. The network resources  380  may provide instructions and data to the computer platform from a remote location on a network  390 . The connections to the network resources  380  may be accomplished via wireless protocols, such as the 802.11 standards, BLUETOOTH® or cellular protocols, or via physical transmission media, such as cables or fiber optics. The network resources  380  may include storage devices for storing data and executable instructions at a location separate from the computer platform  310 . The computer interacts with a display  350  to output a graphical user interface including data and other information to a user, as well as to request additional instructions and input from the user. The display  350  may therefore further act as an input device  320  for interacting with a user. 
         [0076]    The term “computer-readable storage medium” as used herein refers to any tangible medium, such as a disk or semiconductor memory, that participates in providing instructions to processor  314  for execution. For example, the computer-readable storage medium may be a removable disk readable by the removable storage device, or the memory  316 , or a storage device located on a device on the network  390 , each of which being accessible by the processor  314  of the computer server system  300 . 
         [0077]    Exemplary embodiments provide for the more efficient application of filter criteria to a database via a graphical user interface. The records displayed from the database become the entry mechanism for filter criteria with individual fields within a record available as filters. 
         [0078]    The foregoing exemplary embodiments and advantages are merely exemplary and are not to be construed as limiting the inventive concept. The present inventive concept can be readily applied to other types of apparatuses. Also, the description of the exemplary embodiments is intended to be illustrative, and not to limit the scope of the claims, and many alternatives, modifications, and variations will be apparent to those skilled in the art. Although the inventive concept has been described with reference to certain exemplary embodiments, it will be understood that modifications and variations may be made thereto without departing from the spirit and scope of the inventive concept, as defined by the following claims.