WO1991006059A2 - Manipulation de donnees - Google Patents
Manipulation de donnees Download PDFInfo
- Publication number
- WO1991006059A2 WO1991006059A2 PCT/GB1990/001554 GB9001554W WO9106059A2 WO 1991006059 A2 WO1991006059 A2 WO 1991006059A2 GB 9001554 W GB9001554 W GB 9001554W WO 9106059 A2 WO9106059 A2 WO 9106059A2
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- data
- worksheet
- cell
- item
- database
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/166—Editing, e.g. inserting or deleting
- G06F40/177—Editing, e.g. inserting or deleting of tables; using ruled lines
- G06F40/18—Editing, e.g. inserting or deleting of tables; using ruled lines of spreadsheets
Definitions
- the invention relates to the manipulation of data, and 5 more particularly to such manipulation using computer and like equipment. More especially, the invention relates to the presentation of data on the visual display unit of say a personal computer in the manner of an electronic spreadsheet, i.e. a layout analogous to an accountant's ledger sheet 10 having many columns and row in which data are entered. The data may then be subjected to a variety of management tasks such as audit, forecast, variable analysis, market planning, corporate strategy planning and the like.
- the advent of the personal computer has highlighted the need for suitable programs whereby managers can store and manipulate their own information without calling on the skills of outside technicians to construct programs for them.
- the spreadsheet presents the user with a cell structure on a 0 two dimensional plane, the cells of which may be defined by the user to be constant or to be based on formulae, which are enacted as the source values of the formulae are entered or •.. changed on demand.
- the conventional spreadsheet stores its information within the same structure as the cell headings, and each data value has no significance outside its position in the spreadsheet, thus limiting the amount of data that may be handled with confidence to a very small proportion of that 0 which may be required.
- WORKSHEET is a spreadsheet tabular layout of columns and rows adaDted to do one or more SDecific tasks.
- CONCEPT is a name defined by the user to have a meaning within the Work sheet and which may be the name of the Worksheet or names in the row headings or column headings or the like.
- ENTITY is a concept having a value (numeric, alphabetic or both) defined by a number of "attributes” (which are themselves concepts). For example, “Total Sales” may be an entity defined by attributes of Product, Region, and
- CELL is the smallest object in a Worksheet table the location of which is defined by a column position and a row position and which may contain numerical values or text.
- the information in a cell is defined by the Entities defining the column headings and row headings and the context (see below). For example those cells that may hold data are usually those which have a concept name in th same column above them, and a concept name in the same row to the left. Whether such cells hold data or not is determined by a process described later in this specification.
- PROVENANCE is the source of information, including when, and in what Worksheet, the data was last changed.
- IMPLICATION is the ability to call up each Worksheet in which a selected entity is present.
- CONTEXT is the additional information required to define uni ⁇ uelv the contents of each of the data cells in a worksheet, after the worksheet has been inspected. For example if a Worksheet was to show "Total Sales" in the row headings, and "1989" in the column headings, but no further information, then the Product and Region would be the context.
- LABEL is the information required to be attached to any item of information in order to specify that item of information uniquely.
- the label would usually refer to concepts by their numbers within a file of concepts, and would include the number of the entity concerned, a list of the attributes required and the numbers of the concepts that represent the instances of those attributes applicable to the data item, as well as the data type (number, alphanumeric, date, etc.).
- the invention provides a method of setting up a spreadsheet layout having at least one concept as a row heading and at least one concept as ⁇ column heading, on a visual display unit of a computer having a database in which each item of data is stored in a separate record hich includes a label in addition to the data itself, the method comprising:
- This aspect of the invention thus allows managers to use spreadsheet skills to manipulate large databases stored separately from the headings and constants on the spreadsheet.
- the usage file is used to record the location of any of the concepts which have been defined in previously set up layouts. In this way, each concept may be used within many worksheets and may be assumed by the user to have the same meaning in each.
- the invention provides a method as first defined, wherein an interface system includes rules by which cells in a worksheet are loaded with data and wherein rhp system is arranged to assume that the rules for loading any cell should be related to the row and column headings of the worksheet.
- the interface system preferably consults the concept definitions to construct templates or masks to represent each item of data on the worksheet, including in the template ' or mask, a complete label for each item.
- the data may be stored without regard to order or they may be ordered to allow faster searches of larger databases.
- the invention provides a method of providing a spreadsheet layout having at least one concept as a row heading and at least one concept as a colum heading, on a visual display unit of a computer having a database, the method comprising: storing each item of data i the database with the provenance thereof and, responsive to selection from the computer keyboard, displaying on the visual display screen, the previous worksheet in which the data in the cell that the cursor was on when the selection was made, was last amended.
- the provenance information may optionally include the identity o the person who last changed the data, and the time of last change.
- provenance information is stored automatically from an internal system clock, the system's knowledge of what work sheet is being used at the time of saving information, and the system's knowledge of the identity of the user requested at the start of the data session.
- the provenance worksheet number may then be used during program execution to display data in one colour (preferably white) when the provenance is from the worksheet currently being displayed, and another colour (preferably yellow) when the provenance is from another worksheet.
- the provenance information for that data is displayed automatically at the edge of the worksheet.
- the worksheet of last change recorded against each data item may then be used to allow the user, while the cursor is on a data item, to change worksheets to that in which the data wa last changed, setting the context of that worksheet, if required, to an appropriate context to enable the user to view and possibly edit that data item within the context of that worksheet.
- the preferred system provides an implication facility, which is seen by the user as the converse of provenance.
- a request for implication will occasion a search through the usage file for appearances of the entity represented by the current data item in other worksheets, and the presentation of a list of such worksheets for the user to select which worksheet he or she may wish to view.
- the storage of data separate from the concept names and text of a work sheet, together with the preferred provenance information provides the user with an unparalleled ability to view and edit a wide range of management information, and to authenticate the date on which conclusions are based.
- An additional feature of the storage method is that the user can abstract a subset of one data file and merge it into another data file, thus providing a solution to the so-called “distributed database” problem of how to store and pass information between multiple files within interlinked computer systems, the files having been established by different people without reference to each other.
- Figure 1 represents an example of some of the information in the database in stylised form
- Figure 2 shows schematically a procedure to decide what data to load into the worksheet
- Figure 3 is a flow chart showing the procedure for creating a cell table; and Figure 5 shows a flow chart for the data search.
- Figure 1 represents an example of information in the database in stylised form.
- Worksheets are the principal means of editing and viewing data. Worksheets are stored separately from the data, in a compact form and as a series of records in a file of usages. Each record specifies the worksheet number, a concept number, a position on the worksheet, and a type :vli ⁇ ther this is a concept name or an override value (see below) .
- Work sheets may be set up by the user as s/he pleases by positioning one or more column headings and row headings, which may have a horizontal insert within the cell in which the headings appear, and which together specify precisely some or all of the attributes of any entity the value of which the user wants to see in a cell.
- Each usage is an eight byte record, consisting of 2 bytes representing the worksheet number, 2 bytes representing the concept number, 2 bytes representing the cell position (horizontal and vertical offsets from top left corner),one byte horizontal inset within each cell, and one byte usage type.
- the usage type is usually FF (255 decimal) to indicate that this is the name of a concept which is either in the column headings or the left row headings.
- a usage type FE indicates it is in neither of these regions, it is in the middle of the work sheet.
- the usage type 01 indicates that this is an override value.
- Two special types are 43, indicating that this is a list of cosmetics, and 46 indicating that this is a list of formulae. In these two cases, a number may be found in the two bytes usually reserved for the cell position. This number refers to a record number in the file , suffixed .FML in which the lists of cosmetics and formulae may be found.
- the database may also include other files each listing a feature or function. For example there will usually be a formulae file, which may hold both formulae and cosmetics (for the layout), and a memo file. Memos are items of text which may be written in by the user to apply to any combination of entity and attributes that s/he may care to specify. The user may optionally specify an entity and/or any single instance of each attribute. When the system loads, any memo which is relevant to the current worksheet and context is noted and displayed on demand.
- Usages are stored unordered in a file having a suffix .USA.
- the system first searches the usage file and extracts all those usages with the correct worksheet number.
- the system gauges the size of the work sheet, and allocates space in a cell index (10H , i.e. 16 decimal, bytes per cell).
- the index is initially cleared, then a record of each of the usages is put into the relevant index cell.
- the record includes a flag to indicate that the cell contains a concept name and a concept number.
- the system loads and displays the worksheet, then asks the user for the name of an entity to display.
- Each entity mentioned in the worksheet is consulted to discover the required attributes for the whole range of entities.
- the worksheet may be considered to be divided into regions. Each row of column headings is a separate region. The whole area below the column headings is another separate region. If any two entities or any two instances of the same attribute are in different regions, then the worksheet is inconsistent and no further settings may take place until the user has corrected the -error.
- Certain concepts may be defined to be representative of attributes. For example, "This Month” may be a representative month. This implies that it is not a specific month but may take on the value of any given month on demand. Thus if the concepts "This month” and "Last month” are included in a worksheet, the names “This Month” and "Last month” will be included as part of the context, and the user will be required to provide suitable values (e.g. February and January) before the worksheet can be loaded. The representatives are listed separately in a context window but are treated exactly like other attributes for the purpose of filling in the context.
- the values entered (if any) will be taken to apply to any cell in the worksheet if required by that cell. However, no cell, except a cell containing override values, is considered to have data in it unless it has both row and at least one column heading. If these concepts together with the context information fail to define the data in the cell entirely, the system is prepared to look at other column headings which may appear in rows which have no concepts directly above the cell in question. The next concept cell to the left will be taken to be relevant if it is an example of on of the missing attributes. Similarly, the system will be prepared to look up the column that contains the row heading (which would usually be the left-most column but need not be so) for any other concept names that may fit the required missing attribute types.
- Figure 3 is a flow chart showing the procedure for creating a cell table.
- An override value will override any value that might otherwise be expected to occupy the cell and will not necessarily require row or column headings in order to hold data. However, the cell will accept the usual rules for deciding what other concepts in the worksheet may be relevant to defining the attributes of the override cell. There is a separate table of these values stored at the end of the table of normal worksheet cells. A search is made through this table on loading data.
- the relevant cosmetics are loaded from the .FML file. These cosmetics are stored as a list of text items and their cell positions. Pointers to the individual items are inserted into the cell index.
- the entries in the internal table are called templates or masks of the data in the database.
- the system works methodically through each cell of the worksheet to build up a template item for each cell. This process conceptually works as follows, although the practical implementation alters the order of testing in certain respects:
- This template is identical to the data record that may be found, except that it contains no data (the data field is left blank as is the provenance field).
- the object of this template is to use it to compare byte for byte with data items that are found to do a final check for suitability when loading data. It will also be used as the framework within which data for each cell is edited in RAM, and the whole record will be stored away if needed at the point of saving.
- a flag is inserted into the cell index to indicate that the cell contains data
- the system scans the worksheet starting at the top left corner and, working rightwards, down each column in turn. By this means it is not necessary to rebuild the relevance table for each cell, but rather to keep the same table continuously updated, simply overwriting irrelevant data as further entries are found in the column scans, and even keeping some of the table when a new column is scanned.
- the system commences making a template before it knows that it has all the relevant attributes, so necessitating only one pass through the attribute check. If attributes are missing, the construction of the template for that particular cell is aborted, and the space freed for reuse.
- a list or table of relevant concepts is made up of all the concepts used in the worksheet being set up (including the context concepts) in numerical order. This list is padded out with FFFFH (65535 decimal) numbers at the end to make its length an exact power of 2 (4, 8, 16, 32 etc.), so that it may be subject to a binary chop technique search.
- FFFFH FFFFH (65535 decimal) numbers at the end to make its length an exact power of 2 (4, 8, 16, 32 etc.), so that it may be subject to a binary chop technique search.
- Each concept (eg entity or attribute) in the label of each data item in the database is then checked for a match with the concepts in the list of relevant concepts above. If any fail then the item is rejected.
- each column of the worksheet is checked for compatibility by investigating the column headings. If any column heading is found to be incompatible with the particular item of data, then the columns are skipped until that column heading no longer applies. If all column headings fit the data item, then the pointers to the templates from the data cell index in that column are used to check each template in the column against the data item byte for byte. If the entity and attribute information match, then the item is considered to be found.
- the system When quitting a worksheet, the system will automatically save any specific attribute from the context to use as a default should that attribute be mentioned in a further worksheet, whether or not it is in the next worksheet accessed. If the change of worksheet is occasioned by a provenance or implication command, the full template oi the cell on which the cursor is sitting is extracted from the list of templates to be put in a special location to be used in the attribute default procedure. At the relevant stage of loading the new work sheet, this template is used to set any un-ascribed attributes, or un-ascribed representative concepts, as may be required to ensure that the particular item of data extracted has the best chance of being displayed on the worksheet accessed.
- the system then does a search through the templates to discover the match with the extracted data, from which it may set the cursor correctly on the same data, and when it finds the correct data template, the system transfers in the data from the original worksheet, whether or not any alteration was saved when exiting the old worksheet.
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)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GB898922755A GB8922755D0 (en) | 1989-10-10 | 1989-10-10 | Data manipulation |
GB8922755.7 | 1989-10-10 |
Publications (2)
Publication Number | Publication Date |
---|---|
WO1991006059A2 true WO1991006059A2 (fr) | 1991-05-02 |
WO1991006059A3 WO1991006059A3 (fr) | 1991-05-30 |
Family
ID=10664308
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/GB1990/001554 WO1991006059A2 (fr) | 1989-10-10 | 1990-10-09 | Manipulation de donnees |
Country Status (3)
Country | Link |
---|---|
AU (1) | AU6528990A (fr) |
GB (1) | GB8922755D0 (fr) |
WO (1) | WO1991006059A2 (fr) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO1993000642A1 (fr) * | 1991-06-21 | 1993-01-07 | Ambit Research Limited | Transfert de donnees et moyen de stockage |
US7010539B1 (en) | 2000-09-08 | 2006-03-07 | International Business Machines Corporation | System and method for schema method |
US7149746B2 (en) | 2002-05-10 | 2006-12-12 | International Business Machines Corporation | Method for schema mapping and data transformation |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0211151B1 (fr) * | 1985-05-30 | 1992-09-09 | International Business Machines Corporation | Procédé de commande de l'ordre des cellules d'édition dans une feuille de calcul électronique |
-
1989
- 1989-10-10 GB GB898922755A patent/GB8922755D0/en active Pending
-
1990
- 1990-10-09 WO PCT/GB1990/001554 patent/WO1991006059A2/fr unknown
- 1990-10-09 AU AU65289/90A patent/AU6528990A/en not_active Abandoned
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO1993000642A1 (fr) * | 1991-06-21 | 1993-01-07 | Ambit Research Limited | Transfert de donnees et moyen de stockage |
US7010539B1 (en) | 2000-09-08 | 2006-03-07 | International Business Machines Corporation | System and method for schema method |
US7149746B2 (en) | 2002-05-10 | 2006-12-12 | International Business Machines Corporation | Method for schema mapping and data transformation |
Also Published As
Publication number | Publication date |
---|---|
GB8922755D0 (en) | 1989-11-22 |
AU6528990A (en) | 1991-05-16 |
WO1991006059A3 (fr) | 1991-05-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5724577A (en) | Method for operating a computer which searches a relational database organizer using a hierarchical database outline | |
US6216139B1 (en) | Integrated dialog box for rapidly altering presentation of parametric text data objects on a computer display | |
US5444842A (en) | Method and apparatus for displaying and updating structured information | |
US7013307B2 (en) | System for organizing an annotation structure and for querying data and annotations | |
US6662237B1 (en) | System for documenting application interfaces and their mapping relationship | |
US6233592B1 (en) | System for electronic publishing | |
US20050091206A1 (en) | Method and system for handling data available in multidimensional databases using a spreadsheet | |
US20010049697A1 (en) | System and method for retrieving software release information | |
GB2334601A (en) | Database data model extension | |
JPS5985530A (ja) | カード・イメージ処理機能を有するデータ処理装置 | |
US7523090B1 (en) | Creating data charts using enhanced SQL statements | |
DE69427946T2 (de) | Datenspeichereinrichtung | |
US7308457B1 (en) | Method and apparatus for providing customized filters to restrict datasets retrieved from a database | |
US20030177135A1 (en) | Multi-user database for computer-based information | |
WO1991006059A2 (fr) | Manipulation de donnees | |
US20030055838A1 (en) | Data storing method and data storing structure | |
JPH05165893A (ja) | データ編集方式 | |
KR20200023586A (ko) | 법률문서 자동작성장치 및 방법 | |
JP7033914B2 (ja) | 登録画面処理装置、登録画面処理方法、及び登録画面処理プログラム | |
JPH04348468A (ja) | データベース装置 | |
KR20240082021A (ko) | 맞춤형 전자 문서 템플릿 생성 장치 | |
JP3337717B2 (ja) | データベース処理装置およびデータベース処理方法 | |
JP7089363B2 (ja) | 登録画面処理装置、登録画面処理方法、及び登録画面処理プログラム | |
JPH0315223B2 (fr) | ||
JP2009048582A (ja) | 表示情報作成支援装置、表示情報作成支援プログラム、商品開発方法及び商品開発プログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AK | Designated states |
Kind code of ref document: A2 Designated state(s): AT AU BB BG BR CA CH DE DK ES FI GB HU JP KP KR LK LU MC MG MW NL NO RO SD SE SU US |
|
AL | Designated countries for regional patents |
Kind code of ref document: A2 Designated state(s): AT BE BF BJ CF CG CH CM DE DK ES FR GA GB GR IT LU ML MR NL SE SN TD TG |
|
AK | Designated states |
Kind code of ref document: A3 Designated state(s): AT AU BB BG BR CA CH DE DK ES FI GB HU JP KP KR LK LU MC MG MW NL NO RO SD SE SU US |
|
AL | Designated countries for regional patents |
Kind code of ref document: A3 Designated state(s): AT BE BF BJ CF CG CH CM DE DK ES FR GA GB GR IT LU ML MR NL SE SN TD TG |
|
REG | Reference to national code |
Ref country code: DE Ref legal event code: 8642 |
|
NENP | Non-entry into the national phase |
Ref country code: CA |