A METHOD OF RETRIEVING AND VIEWING DATA FROM A DATABASE
BACKGROUND OF THE INVENTION
This invention relates to a method of retrieving and viewing data from a database.
There are many software applications commercially available for exporting data from a data source such as SQL Server, Analysis Services, Oracle, Microsoft Access, Text files etc to Microsoft Excel. Once the data has been exported to Excel, users can then utilize ExcePs features to analyze the data. The limitation is the amount of data that Excel can physically store, in terms of the number of records and memory. As hardware improves this limitation will reduce.
Due to Microsoft's Excel being so widely used, powerful data analysis features and minimal training required, it is currently the preferred method of receiving data.
Microsoft Excel has an external data function that connects the spreadsheet to most data sources, with the ability to refresh the data at any stage.
In existing systems, system administrators or programmers have to create individual spreadsheets, either populated with data or having a connection to an external data source.
If the spreadsheet is populated with data, the user can then analyze the data offline. If the user wants to refresh the data, this can be refreshed from the central data source. If the data volumes exceed Excels limits, more programming from the system administrator is required.
If Excel is connected to Analysis Server, every data request from the user requires CPU time, thus increasing the network traffic and connectivity (CPU time and network traffic being uncontrolled). Deploying large quantities of these reports into organizations would result in high cost scalability issues.
It is an object of the present invention to provide a simplified process of extraction, packaging and distribution of data for analysis using Microsoft Excel as a tool. This includes the seamless detection of size limitations within the Microsoft Excel Object and the creation of single member hierarchy multidimensional local cube files from relational databases.
The process determines the most suitable method of packaging data with Excel and then delivering the parcel to users for analysis.
SUMMARY OF THE INVENTION
According to the present invention there is provided a method of retrieving and viewing data from a database, the method comprising the steps of:
receiving an input search strategy from a user;
querying the database to determine the amount of data which will be returned by the search strategy;
determining if the amount of data will exceed the capacity of the software which will be used to view the data; and
if the amount of data will exceed the capacity of the software then creating an external data file containing the data which can be viewed using the software.
The software is preferably Excel.
The external data file may be a cube file.
DESCRIPTION OF THE DRAWINGS
Figure 1 is a flowchart illustrating the steps carried out by the software of the present invention;
Figure 2 shows the interface for a user to create a new dataset;
Figure 3 shows the interface for a user to specify the data connection properties;
Figure 4 shows the user interface for creating the tables;
Figure 5 shows the user interface for selecting the fields within the tables;
Figure 6 shows the user interface for creating a pivot table; and
Figure 7 shows the user interface for running the report.
DESCRIPTION OF AN EMBODIMENT
Referring to Figure 1 , the figure is a flowchart illustrating the steps carried out by the software of the present invention.
A user using the software creates a new dataset in step 10 and gives the dataset a name. This is illustrated in Figure 2.
Figure 3 shows a user identifying the data connection properties.
In step 12, and as illustrated in Figure 4, the user then selects tables to be added through the dataset.
In step 14, the user selects the fields within the tables which they wish to access, and this is illustrated in Figure 5.
In step 16, the user creates a pivot table using the interface illustrated in Figure 6. The interface mirrors Microsoft Excel's pivot table and the user creates the columns available on the top of the screen into an area in the bottom of the screen.
Once the pivot table has been created, the user inputs a search strategy typically using an SQL select statement, shown the step 18.
In step 20, the user runs the report action which allows the user to process their report. The interface is illustrated in Figure 7.
The above steps are well known in the art and will not be described here in more detail.
Normally data is exported into Excel. The data is placed on single or multiple sheets inside the Excel workbook. The user can then manipulate and analyze the data within Excel.
However, Excel is a very good analysis tool but can only hold a maximum of 65000 rows on a sheet, or approximately 100000 rows in its cache. This poses a problem when trying to fit more data on a sheet than Excel can handle. One way around this is to connect Excel to an external data source (such as an SQL server), but the user must always have connectivity to this source. This is not practical or feasible.
Thus, in decision step 22, the software of the present invention determines if the size of the data requested excess Microsoft Excel's resource parameter. If the data volume is lower than the resource parameter, the data is placed inside an Excel workbook in the step 24.
If the size of the data exceeds the resource parameter then in step 26, an external data file containing the data is created. In the prototype of the present invention, the external data file is created in the form of a local cube file using the structure input by the user in the pivot table described above.
It will be appreciated that the external data file could be another data file such as extracting the data into an Access file.
Excel is referenced to the external data source so that when the Excel workbook is accessed, it automatically references the external data source without further input from the user required.
It will be appreciated that the whole process from the user's point of view is seamless and non-technical users will not be aware that the external data file has been created.
In step 28, a data parcel is created with Excel and the external data.
In either of the above scenarios, the compression of the file to be shipped is optional in (step 30) and the file is then transmitted to the user either by mail, file transfer protocol (FTP) or using any other method.
In step 34, the user is able to author the Excel spreadsheet and format the report. This formatting is returned to the main server by mail, (FTP) or by being saved.
In step 36, the server stores the formatting of the report as a master report and the next time the user requests a report the formatting will look like the latest uploaded master report format.
Thus it will be appreciated that the present invention allows the seamless creating of an external data file which expands the functionality of Excel from the user's point of view without requiring any user input.
It will also be appreciated that although the present invention is described with reference to Excel, the invention would also find application with any other spreadsheet which has a relatively smaller data cache.
Furthermore, the present invention allows the user to format an edit their own mater reports to ensure that the data they receive is in their preferred format.