Abstract:
A method and apparatus for permitting a user to perform operations between data of at least two tables. In the invention table icons each representing one of the at least two tables are displayed on a display and the user is permitted to move one of the table icons to a position on the display where the display of the one table icon overlaps the display of another of the at least two table icons and selects an operation to be executed between data of tables corresponding to the one and the other table icons. The operation selected by the user is automatically executed when the one table icon is moved to a position overlapping the other table icon. A new table including data resulting form the selected operation and a new table icon representing the new table is generated and the new table icon representing the new table is displayed.

Description:
BACKGROUND OF THE INVENTION 
     The present invention relates to a method and apparatus for performing operations on data of a table type database. More particularly, the present invention relates to a method and apparatus for performing operations including changing/generating between data of at least two table type databases by manipulating icons being displayed on the display screen of a personal computer or workstation. 
     When data within a table is to be operated on in a conventional table calculation software product, it has been necessary to open a window by selecting a table icon or file, as disclosed in &#34;1.5 Calculation between Other Tables&#34;, Table Calculation Software OFIS/POL-EX2 (3000-7-032-10), March, 1994 (Second Edition), pp. 341-345. Particularly, when an operation is to be performed between all cell data in the same positions of a plurality of tables, it has been necessary for an operator to assign a cell range to be operated on by using a keyboard and the display of the respective tables after the windows including the tables have been opened. Further, the arithmetic operation for respective data of a plurality of tables is limited to the four fundamental rules of arithmetic and other operations are not supported. 
     As mentioned above, when a table calculation is to be performed using the conventional technique, an operator must operate on the respective table data on a display by using a keyboard after a window corresponding to a file or table icon is opened. Therefore, when there are large numbers of items of table data, there is a problem that the number of operations to be performed by the operator becomes considerably large and operating procedures also become complicated. 
     Further, in a case where a plurality of tables are arithmetically operated on each other, there is a problem that operations other than the four fundamental rules of arithmetic can not be performed. 
     SUMMARY OF THE INVENTION 
     An object of the present invention is to provide a method and apparatus for performing operations on data of a table type database. 
     Another object of the present invention is to provide a method and apparatus for performing operations on a table type database other than the four fundamental rules of arithmetic. 
     Yet another object of the present invention is to provide a method and apparatus for performing operations between data of at least two table type databases by manipulating icons being displayed on the display screen of a personal computer or workstation without opening the icons. 
     In order to achieve the above objects, the method and apparatus of the present invention generates a new table icon by automatically performing operations selected by an operator between cells in the same positions of at least two table type database structures corresponding to at least two icons by overlapping one of the table icons over the other of the table icons on a display screen by using a mouse. 
     Further, by opening a totalizing icon and displaying it as a totalizing window and closing the totalizing window after table icons to be totalized are moved into the totalizing window, a totalizing processing for data of the same cells of all of the table type database structures corresponding to the icons in the totalizing window is automatically performed and a result is generated as a new table icon. 
     Still further, by generating icons for all of table items and selecting, from a pop up menu of the table items, attributes of a desired processing, such as extraction, exclusion, arithmetic operation object, etc. by a mouse, it is possible to extract only desired items from the table, to delete designated items and to determine items of the tables to be operated on including the kind of operation to be performed. A result of the processing is generated as a new table icon. 
     According to the present invention, it is possible to perform operations on cells in the same positions of a plurality of table type databases by use of a mouse without the need for opening icons, to simplify the processing procedure and to provide a capability of easily generated database. Further, by providing various arithmetic operations in a pop up menu, table calculations other than the four fundamental rules of arithmetic become possible. 
    
    
     BRIEF DESCRIPTION OF DRAWINGS 
     The present invention will be more apparent from the following detailed description, when taken in conjunction with the accompanying drawings, in which: 
     FIG. 1 is a schematic diagram illustrating a table type database changing/generating apparatus of the present invention; 
     FIG. 2 is a schematic diagram illustrating a table storing window including a table icon &#34;language&#34; and a table icon &#34;arithmetic&#34; in a first embodiment of the present invention; 
     FIG. 3 is a schematic diagram corresponding to FIG. 2 when a mouse cursor is clicked for the table icon &#34;arithmetic&#34;; 
     FIG. 4 is a schematic diagram illustrating a table item window is opened on the table storing window when the table icon &#34;arithmetic&#34; is overlapped on the table icon &#34;language&#34;; 
     FIG. 5 is a schematic diagram illustrating a table item attribute select menu displayed when a table item icon &#34;point&#34; is picked by a mouse in FIG. 4; 
     FIG. 6 is a schematic diagram illustrating a calculation select menu (level 1) displayed by selecting &#34;calculation object&#34; by the mouse in FIG. 5; 
     FIG. 7 is a schematic diagram illustrating a calculation select menu (level 2) displayed by selecting &#34;four rules of arithmetic&#34; by the mouse in FIG. 6; 
     FIG. 8 is a schematic diagram illustrating FIG. 7 when &#34;+&#34; is selected by the mouse; 
     FIG. 9 is a schematic diagram illustrating that, as result of the processing shown in FIG. 8, the attribute display of the table item &#34;point&#34; is changed from ON to + and then the window close switch is clicked; 
     FIG. 10 is a schematic diagram illustrating a state where the table item window &#34;arithmetic&#34; is closed by the clicking the window close switch and additions of point columns of language and arithmetic are executing; 
     FIG. 11 is a schematic diagram illustrating a state where a table icon &#34;2 subject total&#34; is produced and an input of the table name is being prompted; 
     FIG. 12 is a schematic diagram illustrating a display screen when the table name &#34;2 subject total&#34; is input; 
     FIG. 13 is a schematic diagram illustrating a table storing window displaying a totalizing icon, table icons &#34;language&#34;, &#34;arithmetic&#34; and &#34;science&#34; in a second embodiment; 
     FIG. 14 is a schematic diagram illustrating FIG. 13 where the table item &#34;language&#34; is displayed by clicking the table icon &#34;language&#34;; 
     FIG. 15 is a schematic diagram illustrating FIG. 14 where the table item attribute select menu is displayed by clicking the table icon &#34;point&#34;; 
     FIG. 16 is a schematic diagram illustrating a FIG. 15 where &#34;calculation object&#34; is selected among the table item attribute select menu; 
     FIG. 17 is a schematic diagram illustrating that, as a result of the processing shown in FIG. 16, the attribute of the table item &#34;point&#34; is changed from ON to CAL and then the window close switch is clicked; 
     FIG. 18 is a schematic diagram illustrating a totalizing select menu displayed by clicking the totalizing icon; 
     FIG. 19 is a schematic diagram illustrating that an addition (+) is selected among the totalizing select menu; 
     FIG. 20 is a schematic diagram illustrating a that the totalizing window displayed as a result of the selection shown in FIG. 19; 
     FIG. 21 is a schematic diagram illustrating that, in FIG. 20, the table icons &#34;language&#34;, &#34;arithmetic&#34; and &#34;science&#34; are moved from the table storing window to the totalizing window by the mouse; 
     FIG. 22 is a schematic diagram illustrating a state where, by the clicking of the window close switch, the totalizing window is closed and points of the &#34;language&#34;, &#34;arithmetic&#34; and &#34;science&#34; are being totalized; 
     FIG. 23 is a schematic diagram illustrating a state where a totalized table icon is produced and an input of table name is being prompted; 
     FIG. 24 is a schematic diagram illustrating a display screen when a table name &#34;3 subject total&#34; is input; 
     FIG. 25 is a schematic diagram illustrating a flowchart showing an example of processing of the table type database changing/generating method in a first embodiment; 
     FIG. 26 is a schematic diagram illustrating an additional portion of the flowchart showing the example of processing of the table type database changing/generating method in the first embodiment; 
     FIG. 27 is a schematic diagram illustrating a further additional portion of the flowchart showing the example of processing of the table type database changing/generating method in the first embodiment; 
     FIG. 28 is a schematic diagram illustrating a flowchart showing an example of processing of the table type database changing/generating method in a second embodiment; 
     FIG. 29 is a schematic diagram illustrating an example of a layout construction of a language record table file in the present embodiment; 
     FIG. 30 is a schematic diagram illustrating an example of a layout construction of a mathematic record table file in the present embodiment; 
     FIG. 31 is a schematic diagram illustrating an example of a layout construction of a science record table file in the present embodiment; 
     FIG. 32 is a schematic diagram illustrating an example of a layout construction of a 2 subject total file in the present embodiment; 
     FIG. 33 is a schematic diagram illustrating an example of a layout construction of a 3 subject total file in the present embodiment; 
     FIG. 34 is a schematic diagram illustrating an opening of a whole country icon when the present invention is applied to a retail sales organization; 
     FIG. 35 is a schematic diagram illustrating a state where table icons of subsets of &#34;whole country&#34; are displayed as a result of FIG. 34 and, among them, a table icon &#34;Pt&#34; is opened; 
     FIG. 36 is a schematic diagram illustrating a state where table icons of the subsets of &#34;Pt&#34; are displayed as a result of FIG. 35; 
     FIG. 37 is a schematic diagram illustrating the number of products sold and the unit cost of respective products in the respective subsets of Pt; 
     FIGS. 38A and 38B are a schematic diagrams illustrating a table storing window displaying a plain text and a cipher key both table-ionized; and 
     FIG. 39 is a schematic diagram illustrating an example of the plain text, an example of a cipher key and an example of a cipher text produced by adding the cipher key to the plain text. 
    
    
     DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS 
     An embodiment of the present invention will be described in detail with reference to the drawings. 
     FIG. 1 is a schematic block diagram of an embodiment of a terminal for generating a table type database of the present invention. In FIG. 1, a reference numeral 1 depicts a terminal such as a personal computer or a work station for operating a table calculation and includes a key board 1a, a mouse 1b, a display 1c, an information processing portion 2 and an external storage device 6, etc. 
     The information processing portion 2 as shown in FIG. 1 includes a central processing unit (CPU) including an arithmetic processing portion 4 and a window control portion 5, etc., and a memory 3 including a working file 3a. The CPU performs a table calculation on the basis of a window operating instruction and an arithmetic processing instruction supplied by the keyboard 1a and the mouse 1b. The external storage device 6 includes a hard disk device, etc., and stores various table files such as, in this embodiment, a language record table file 6a, an arithmetic record table file 6b, a science record table file 6c, which are test record tables of individuals, a 2-subject total file 6d and a 3-subject total file 6e, etc. When a large database is to be handled, it may be possible to implement the present invention in a large scale computer such as a center connected to the terminal as the information processing portion to perform a processing in cooperation with it. 
     The operation of generating the table type database of this embodiment changes the table file in the external storage device 6 or generates a new table file by controlling the information processing portion 2 by the keyboard 1a and/or the mouse 1b. 
     FIGS. 2 to 12 show a first embodiment of an icon operation on the display 1c according to the method and apparatus of generating the table type database of the present invention. 
     Examples of the language record table file 6a, the arithmetic record table file 6b and the science record table file 6c, which are stored in the external storage device 6 shown in FIG. 1, are shown in FIGS. 29, 30 and 31, respectively. The operation for producing the 2-subject total file 6d (FIG. 32) of the individual pupils from the language record table file 6a and the arithmetic record table file 6b will be described with reference to FIGS. 2 to 12 and flowcharts shown in FIGS. 25 to 27. 
     In FIG. 2, a reference numeral 7 depicts a table storing window having icons. A mouse cursor 8 can be moved on the display 1c by the mouse 1b. 
     An icon &#34;language&#34; 7a and an icon &#34;arithmetic&#34; 7b on the table storing window 7 are objects to be processed and the respective icons are obtained by iconizing (generating icons representing) the table files shown in FIGS. 29 and 30, respectively. These icons will be referred to as table icons, hereinafter. 
     A name of one table icon is &#34;language&#34; and a name of the other table icon is &#34;arithmetic&#34;. It is determined whether the number of table icons to be processed is 2 or 3 (step 101 in FIG. 25). Since, in this example, there are 2 table icons to be processed, the processing of the first embodiment is performed in steps 102-124 (FIGS. 25 to 27). 
     In the operation of the first embodiment (2-subject total), the mouse cursor 8 is first moved onto the table icon &#34;arithmetic&#34; 7b by using the mouse 1b and a button of the mouse 1b is clicked once so that the designated table icon can be identified by changing a display color, meshing or inverting thereof (FIG. 3). 
     The table icon &#34;arithmetic&#34; 7b is overlapped on the table icon &#34;language&#34; 7a by moving the table icon &#34;arithmetic&#34; 7b while the button of the mouse 1b held in the selected condition (step 103). When the 2 table icons &#34;language&#34; and &#34;arithmetic&#34; are overlapped, a new table item window &#34;arithmetic&#34; 9 is opened on the table storing window 7. The table subject window &#34;arithmetic&#34; 9 includes table items of the table icon &#34;arithmetic&#34; 7b corresponding to the respective items (class, seat number, name, test date, point, note) of the arithmetic record table file 6b shown in FIG. 30 as icons 9a to 9f (which are referred to as table item icons, hereinafter) (FIG. 4, step 104). 
     By selecting a table item icon &#34;point&#34; 9e corresponding to items and points to be added by the mouse 1b, a table item attribute select menu 9h is automatically produced. In this case, the mouse 1b is kept in the selection state. As shown in FIG. 5, the item attribute select menu 9h includes 3 attributes (extract, exclude, calculation object). &#34;Extract&#34; is to select a designated item, &#34;exclude&#34; is to delete a designated item and &#34;calculation object&#34; is to perform a designated arithmetic operation such as four fundamental rules of arithmetic for a designated item, as will be described later. In this embodiment, when the mouse cursor 8 is moved to a position of &#34;calculation object&#34; in order to select the &#34;calculation object&#34; (step 105), a calculation select menu (level 1) 7c is automatically produced on the table storing window 7. As shown in FIG. 6, the calculation select menu (level 1) 7c includes 3 processing items (four rules of arithmetic, logic operation, special operation). In this embodiment, when the mouse cursor 8 is moved to a position of &#34;four rules of arithmetic&#34; to select the &#34;four rules of arithmetic&#34; (step 107), a calculation select menu (level 2) 7d is further automatically produced on the calculation select menu (level 1) 7c. 
     As shown in FIG. 7, the calculation select menu (level 2) 7d includes 4 items (+, -, ×, -). In this embodiment, it is assumed that an &#34;addition processing&#34; is selected. In order to select the &#34;addition processing&#34;, the mouse cursor 8 is moved to a position of &#34;+ (addition)&#34; (FIG. 8) and the clicking of the mouse 1b is stopped (step 108). The table item attribute select menu 9h, the calculation select menu (level 1) 7c and the calculation select menu (level 2) 7d are cleared from the display and an attribute indication of the table item icon &#34;point&#34; 9e is changed from &#34;ON&#34; to &#34;+&#34; (FIG. 9). 
     When the logic operation is selected in the step 107, one of various logic operations, for example, logical sum (OR), is selected (step 109). Alternatively, when another calculation is selected in the step 107, one of the other operations, for example, method of residues (MOD), is selected (step 110). 
     When the table item window &#34;arithmetic&#34; 9 is closed by clicking a window close switch 9g once by the mouse 1b (step 111), a processing for adding data of cells in the same positions in a &#34;point&#34; line of the table files of the language and arithmetic is executed (steps 112-122 in FIG. 27). When this processing is started, a message 7e indicating that the processing is in execution is displayed on the table storing window (FIG. 10). 
     The steps 112 to 122 (FIG. 27) shows the processing steps of deriving cell data in the same positions of the two tables sequentially and operating on them. 
     First, an initial setting of operation range is performed by setting smaller ones of the numbers of lines (MA and MB) and the numbers of columns (NA and NB) of two tables A and B as M and N, respectively, (step 113). 
     Steps 114 to 121 are related to a loop processing to be performed for the j-th column under condition that the column number is not larger than N set in the step 113. 
     The step 115 is to determine whether or not cell data in the j-th column is data to be operated on. If not, the processing is shifted to the step 120 and, if yes, it is shifted to a loop processing defined by the steps 116 to 119. 
     The loop processing steps 116 to 119 are related to a processing to be performed for the i-th line under condition that the line number is not larger than M set in the step 113. An operation assigned to data of the cell assigned by the i and j is executed (the step 117). 
     The steps 118 and 120 are to update the i-th line and j-th column, respectively. After the addition processing completes internally, a new table icon &#34;2-subject total&#34; 7f is generated as a result of the addition processing (FIG. 11) (step 123). This table icon &#34;2-subject total&#34; 7f corresponds to the 2 subject total file 6d in FIG. 32. The icon name of this table icon &#34;2-subject total&#34; can be input from the key board 1a. In this embodiment, the shown &#34;2-subject total&#34; is provisionally input (FIG. 12). Thus, the operation in the first embodiment (2-subject total processing) is completed (the step 124). When there is no operation for the item attributes (the step 106), the processing is completed. 
     A second embodiment (3 or more subject total processing) of the icon operation on the display 1c, according to the table type database changing or generating method and apparatus of the present invention will be described. 
     The language record table file 6a, the arithmetic record table file 6b and the science record table file 6c shown in FIGS. 29 to 31 are test record tables of individual pupils. The second embodiment for producing the 3-subject total file 6e of the individual pupils from the three record tables will be described with reference to FIGS. 13 to 24 and a flowchart shown in FIG. 28. 
     In the second embodiment, an operational icon 7j, a table icon &#34;language&#34; 7a, a table icon &#34;arithmetic&#34; 7b and a table icon &#34;science&#34; 7i are displayed in the table storing window 7 as shown in FIG. 13. 
     First, the table icon &#34;language&#34; 7a is clicked by the mouse 1b to open the table item window &#34;language&#34; 10. The table item window &#34;language&#34; 10b has table item icons (class, seat number, name, test date, point) corresponding to the respective items of the language record table file 6a shown in FIG. 29. (FIG. 14). 
     By selecting the item to be operated on and the table item icon &#34;point&#34; 9e by the mouse 1b, a table item attribute select menu 9h is automatically produced. In this case, the mouse 1b is kept in the selection state. As shown in FIG. 15, the item attribute select menu 9h includes 3 attributes (extract, exclude, calculation object). In this embodiment, when, in order to select &#34;calculation object&#34;, the mouse cursor 8 is moved to the position of &#34;calculation object&#34; and the selection state of the mouse 1b is stopped, the attribute of the table item icon &#34;point&#34; 9e is changed from &#34;extract&#34; which is defaulted as the initial value to the &#34;calculation object&#34;. By clicking the window close switch 9g once by the mouse 1b, the table item window &#34;language&#34; 10 is closed. (FIGS. 16, 17). 
     Similarly, the attributes of the table item icons &#34;point&#34; of the table icons &#34;arithmetic&#34; and &#34;science&#34; are processed as &#34;calculation object&#34; (step 126). Then, by clicking the operational icon 7j by the mouse 1b, a operational select menu 7k is produced. 
     As shown in FIG. 18, the operational select menu 7k has several select items such as arithmetic, logical, function or user defined processings. The arithmetic processings can be addition, subtraction, multiplication or division. The function processing can be an equation and user defined processing can be any type of processing defined by the user. In this embodiment, in order to select the &#34;arithmetic processing&#34;, the mouse cursor 8 is moved to a position of &#34;arithmetic&#34; (FIG. 19) (step 127) and the clicking of the mouse 1b is stopped, a operational window 11 is automatically produced (step 128). 
     The table icon &#34;language&#34; 7a on the table storing window 7 is selected by the mouse 1b and is moved onto the operational window 11 (step 129). Similarly, the table icon &#34;arithmetic&#34; 7b on the table storing window 7 is selected by the mouse 1b and is moved onto the operational window 11. And, further, the table icon &#34;science&#34; 7f on the table storing window 7 is selected by the mouse 1b and is moved onto the operational window 11 (FIG. 21) (step 129). 
     When the operational window 11 is closed by selecting the window close switch 9g by the mouse 1b (step 130), the points of the language record table file 6a, the arithmetic record table file 6b and the science record table file 6c of individuals are operated on respectively automatically (step 131) while displaying the in-calculation (FIG. 22), resulting in a table icon &#34;3-subject total&#34; 71 corresponding to the 3-subject total file 6e shown in FIG. 33 (FIG. 23) (step 132). Calculations of cell data of a plurality of tables can be executed by repeating similar processing to the steps 113 to 121 shown in FIG. 27. 
     Then, &#34;3-subject total&#34; is input from the key board 1a according to a message &#34;input icon name&#34; shown in FIG. 23, resulting in the display shown in FIG. 24. The table icon &#34;3-subject total&#34; 71 corresponds to the 3-subject total file 6e shown in FIG. 33. Thus, the operation in the second embodiment (3-subject total processing) is completed (step 133). 
     Next, an example of the present invention applied to a retail store organization will be described. In the example, the table icon itself has a function of performing an operational function. A table icon &#34;whole country&#34; includes 9 local table icons, such as table icon &#34;Kansai&#34;, as its subsets. When the table icon &#34;whole country&#34; shown in FIG. 34 is clicked by the mouse 1b, the respective table icons of its sunsets (in this embodiment, Hokkaido, Tohoku, Hokuriku, Kanto, Chubu, Kansai, Chugoku, Shikoku, Kyushu) are displayed as shown in FIG. 35. In this description, it is assumed that the formats of the spread sheets corresponding to all of the table icons are the same and only the &#34;number of products sold&#34; is to be totalized. 
     Similarly, the table icon &#34;Kansai&#34; includes 7 lower level table icons, such as table icon &#34;Osaka&#34;, as its subsets. When the table icon &#34;Kansai&#34; shown in FIG. 35 is clicked by the mouse 1b, the respective table icons of its subsets (in this embodiment, Osaka, Kyoto, Hyogo, Nara, Shiga, Wakayama, Mie) are displayed as shown in FIG. 36. In this embodiment, it is assumed that the table icons have hierarchical relations in three levels as mentioned above. 
     FIG. 37 shows tables of the sales number and unit cost of respective products (raccoon, elephant, sea turtle, frilled lizard, orangutan) in the respective subsets (Osaka, Kyoto, Hyogo, . . . ) of Kansai. For example, when the sales number of raccoons in Osaka is increased by 20, the sales number in Kansai which is higher in level than Osaka is increased by 20 and that in the whole country which is higher in level than Kansai is increased by 20. A concrete calculation processing can be executed by setting a calculation condition such that totals of all of the lower level subsets as a value of a higher level and repeating processing similar to the steps 113 to 121 shown in FIG. 27. 
     Next, an enciphering of the present invention will be described. FIGS. 38A and 38B show a table storing window displaying a plain text (data to be enciphered) and cipher key (for example, random number) which are table-iconized. A table icon, for example, a &#34;plain text&#34;, which is to be enciphered is enciphered by moving a table icon &#34;cipher key&#34; to overlap the &#34;plain text&#34;. Adding (or other reversible calculations) can also be performed on them. With this enciphering, it is possible to prevent important data from being intercepted or leaked during file transmission of the table corresponding to the table icon. A receiving personnel having the same table icon &#34;cipher key&#34; as that of a transmitting personnel can reproduce the table icon &#34;plain text&#34; by subtracting the &#34;cipher key&#34; from the enciphered table icon. 
     FIG. 39 shows an example of plain text (product sales management table), an example of cipher key and an example of cipher text produced by adding a D column (unit cost column) of the cipher key to the plain text. According to this embodiment, it is possible to encipher and decipher the plain text by only an operation of the table icon without opening the data file (spread sheet) such as shown in FIG. 39. Therefore, it is possible to encipher/decipher a large amount of data with minimum number of operations. 
     While the present invention has been described with respect to a method and apparatus for generating and performing operations on table type databases using icons it is not limited to such details since many changes and modifications recognizable to those of ordinary skill in the art may be made to the invention without departing from the spirit and the scope thereof.