The invention can be more fully understood by reading the subsequent detailed description and examples with references made to the accompanying drawings, wherein:
The following description is of the best-contemplated mode of carrying out the invention. This description is made for the purpose of illustrating the general principles of the invention and should not be taken in a limiting sense. The scope of the invention is best determined by reference to the appended claims.
Report retrieval and presentation methods and systems are provided.
With reference to
With reference to
User information comprises user information 440 verifiable by agent 110 and other sets of user information for accessing various reporting systems. User information may comprise user accounts, passwords, and corresponding computer addresses. Agent 110 may compare user information 440 with received user accounts and passwords to identify users and authority thereof, and accordingly determine whether to provide report subscription service thereto. After retrieving subscribed reports, agent 110 may directly transmit subscribed reports to computers of users subscribing to the reports without further user authentication. Note that these data sets may be arranged in different data structures in different storage devices which may or may not be installed in the same computer of agent 110. The settings for a group of subscribed reports comprise corresponding subscription information, time settings, user information, and scripts. Each subscribed report is generated from data extracted from data warehouse 104 or database 102 by an application server (a report writer or a reporting system) or a web server. Queries for reports in a single reporting system may be designed variously by utilizing scripts stored in data sets 45. For example, a script comprises instructions, query conditions; scope, and output data, format. These settings may be set via interfaces provided by agent 110 or interfaces displayed on an integrated viewer (such as integrated viewer 911). Agent 110 may automatically generate scripts based on received settings.
A plurality of users may subscribe to a group of reports, and an individual user may subscribe to different groups of reports. Thus, group ID codes in data set 41 and user information records in data set 44 may have a one-to-many or many-to-one relationship. Agent 110 automatically acquires subscribed reports according to settings of each report group (step S10) and sends the retrieved reports to integrated viewers according to transmission time in the time settings (step S12). Because transmission time is predefined in the subscription settings, report transmission is automatically performed without user reconfirmation or requiring request from client computers. Agent 110 preferably transmits retrieved reports to an integrated viewer on a client computer following boot up or connection thereof to a network. It is assumed that a user of client computer 91 subscribes to report groups 411-414. An integrated viewer may immediately display reports upon retrieval thereof, or when executed in form of a background program receiving reports during execution of other foreground programs, display retrieved reports at a predetermined time, such as after computer boot up, or on demand. Preferably, an integrated viewer automatically displays the most current reports after computer boot up without requiring triggering signals or data from computer input devices (not shown).
The following descriptions are respectively given based on particular time settings with reference to
When a predefined condition (referred to as a query condition) in time settings corresponding to a group (or a series) of subscribed reports is satisfied, agent 110 connects to a corresponding reporting system thereof utilizing a stored address (step S26). Agent 110 then determines if the reporting system accepts queries (step S28). If so, step S34 is executed. If not, agent 110 retrieves user information corresponding to the report group subscription (step S30) and accordingly passes the login process of the reporting system utilizing the user information (step S32). Agent 110 retrieves (step S34) and utilizes a script corresponding to the report group subscription to query (step S36) and receive (step S38) a report as the most current version of the subscribed reports. Agent 110 automatically retrieves a user account and password pair from the settings of a report group subscription, and a script directs agent 110 to simulate entry of the user account and password to complete the login process. A script may bypass the login process of the reporting system utilizing application program interfaces (API) provided by the reporting system.
If a previous version of a subscribed report has been received before the most current version, agent 110 compares the previous and the most current versions (step S40) and determines if any difference exists therebetween (step S42). If so, agent 110 stores the most current version (step S44). If there are no differences between the previous and the most current versions have no difference, agent 110 stores a message indicating consistence between the previous and the most current versions (step S46). The message may comprise reception time, comparison result and completion time. Note that agent 110 may determine whether to compare report versions or not based on a stored setting received from an integrated viewer. If the setting indicates not to compare report versions, agent 110 may directly store each retrieved report.
Agent 110 and ETL tool 103 may comprise a protocol directing agent 110 to automatically begin the report query process when receiving a notice of (successful) ETL completion or database update. Alternatively, since a script may comprise a search scope and other settings, agent 110 may determine whether to begin the report query process based on a relationship of an updated record in the update notice and the search scope.
With reference to
With reference to
Report acquisition and transmission time (or conditions) may be identical or not, and may comprise a specific time, sessions in a schedule, a period, or an event. Agent 110 may buffer received reports or immediately push received reports to client computer as soon as receiving them. Agent 110 may detect whether a client computer has booted and accordingly push new reports thereto. Agent 110 may inquire an address allocation server (such as a dynamic host configuration protocol (DHCP) server) whether a client computer has connected to a network and, if so, pushes new reports to the computer.
Integrated viewer 911 on client computer 91 receives reports from agent 110 and displays the reports on a display (not shown). Various reports may require respective dedicated programs (hereafter viewers) for presentation on the display. Integrated viewer 911 integrates of these dedicated viewers of various reports and servers as a dashboard for initiating and terminating dedicated viewers of various reports, arranging and closing reports and a report container. Packets transmitted from agent 110 to integrated viewer 911 may comprise report content and related information thereof according to which integrated viewer 911 may initiate a dedicated viewer to show the content of a received report. Integrated viewer 911 may display subscribed reports in a report container, such as a window, utilizing respective viewers. For example, after receiving reports of groups 411-414, agent 110 transmits the reports to client computer 91. After receiving the reports, integrated viewer 911 displays the reports in respective container utilizing dedicated viewers thereof.
Agent 110 also connects to the Internet 111. Agent 110 may determine whether subscribed reports belong to the Internet or the local network and accordingly accept or reject subscription of these reports. Server 112 may comprise a file transfer protocol (FTP) server. If a user of client computer 91 is to subscribe resources on server 112, an agent (such as agent 110a in
With reference to
Integrated viewer 913 can be temporarily turned off. Agent 110a serving as a background program, when receiving signals of a function key or combination keys, recalls and shows integrated viewer 913 with the last reports therein.
Agents 110 and 110a can gather and analyze statistics of subscribed reports and generate analysis results. For example, an agent can count the times of report acquisition and transmission for each user and locate the most frequently queried reporting system and a group of reports subscribed by most users. Similarly, an agent can count the number of other user operations or interactions with reporting systems and output the counted results.
In conclusion, an agent automatically requests subscribed reports from a specified reporting system utilizing a predetermined query scheme when a predefined time setting is satisfied. The agent makes the reporting system login process invisible on client computers, automatically acquires subscribed reports according to corresponding subscription and time settings, and sends the reports to desktops of client computers for display according to a transmission time without requiring user reconfirmation. If the transmission time indicates a period, the agent periodically performs report transmission to client computers. If the transmission time indicates a predefined event (such as a computer boot up), the agent transmits received reports to client computers when the event occurs. The reporting system may comprise a web server, an application server, or a client computer.
While the invention has been described by way of example and in terms of preferred embodiment, it is to be understood that the invention is not limited thereto. To the contrary, it is intended to cover various modifications and similar arrangements (as would be apparent to those skilled in the art). Therefore, the scope of the appended claims should be accorded the broadest interpretation so as to encompass all such modifications and similar arrangements.
Number | Date | Country | Kind |
---|---|---|---|
095116692 | May 2006 | TW | national |