The present invention relates to generating electronic documents in a computer environment. In particular, it relates to generating electronic documents that are created based on data filled in an electronic form through interaction of a user with a computer.
Modern work processes carried out in an IT (information technology) environment frequently involve the creation of electronic documents. In the corporate, administrative and industrial sector, huge numbers of electronic documents are created every day.
Often times, an electronic document is created by a user filling out an electronic form displayed on a graphical display device of a computer. Hitherto, nearly all entries for adding data to a form have to be done in separate manual steps. For example, the form may have blank spaces, which the user has to fill in by typing text on a keyboard of the computer.
Manual steps performed by a user are generally prone to errors due to possible fatiguing of the user and fading attentiveness. This is particularly true when the user has to fill out a great number of electronic forms one after another, possibly all of the same type, making fatiguing of the user even more likely and thus slowing down work flows and processes, e.g., in an enterprise. Hence, manual steps are generally counteractive to the aim of accelerating and automating work processes and ensuring high reliability by reducing errors.
It is therefore an object of the present invention to enable a reduction in the number of manual steps required by a user to fill out electronic forms for creating electronic documents.
To achieve this object, the present invention provides in one aspect a computer-implemented system for creating an electronic document, said document being generated based on data added to an electronic form by a user through interaction with a computer, said system being programmed to perform the steps of:
In another aspect, the present invention provides a computer-implemented method for creating an electronic document, said document being generated based on data added to an electronic form by a user through interaction with a computer, said method including the steps of:
According to yet another aspect, the present invention provides a computer program product for creating an electronic document, said document being generated based on data added to an electronic form by a user through interaction with a computer, said computer program product comprising:
The present invention allows for a customization of electronic-forms by pre-defining in a first screen view one or more line items. Each line item can be associated by a user with one or more first data elements. In one embodiment, the first screen view includes an entry area into which the user can enter a descriptor for each line item, and the first data elements. After entry of the line item descriptors and first data elements, storage of the entered line item descriptors and first data elements in a first database can be effected. In particular, this data is stored in the first database in such a manner as to link every stored first data element to its respective line item descriptor.
A form to be filled out by a user in order to create an electronic document is displayed in a second screen view. In addition to the form, one or more control elements are displayed in the second screen view. Each control element represents a respective line item. Button text may be displayed in relation with each displayed button. In one embodiment, the descriptor of the line item as stored in the first data base is displayed as button text in close relationship to the control element, e.g., next to the control element or in overlying relationship with the control element. Of course, an identifier other than the line item descriptor stored in the first database can be displayed in the second screen view in association with each respective control element, e.g., an identifier derived from the corresponding line item descriptor by abbreviating it. The control element is preferably displayed as a button. In a case where plural control elements that are associated with a corresponding plurality of line items are displayed in the second screen view, the buttons can be displayed in a linear arrangement, e.g., in a horizontal or vertical line.
Each control element displayed in the second screen view can be activated by a user using an input device. The input device can, for example, include a mouse device or a touch pad device that generates a pointer on a screen of a graphical output device. The pointer is displaceable on the screen by moving a mouse of the mouse device or moving a finger on a touch pad of the touch pad device. The control element associated with a line item can be activated by placing the pointer over the control element and then clicking on a control key of the mouse device or touch pad device.
The user may have the option of filling in the form solely by typing text into blank spaces contained in the form using a keyboard or other input device. However, the user may wish to take advantage of the pre-defined one or more control elements appearing in the second screen view and add data to the form by activating one or more of the control elements. In the present invention, activation of a control element causes submission of a request to the first database to read the data element(s) stored in association with the corresponding line item. In response to this submission, data derived from the read data element(s) is delivered to the application handling the document creation process and added to the form. In this way, the form is filled in at least partly by simply activating a control element (button) in the second screen view. Of course, the user may have the option of activating one and the same control element more than once during the course of completing the form, for example, to add the same information to different portions of the form. He also may have the option to activate different control elements successively in order to fill different parts of the form with different information.
Using the control elements in the second screen view can greatly reduce the number of manual steps to be performed by a user in creating an electronic document. The first screen view allows to pre-define the control elements according to user needs. For example, frequently used data, i.e., data recurring in numerous documents, can be stored in the first database in association with one or more of the line items. This data then no longer needs to be entered into a form by typing every single piece of the data on a keyboard, but can conveniently be added to the form by simply hitting the corresponding control element(s) in the second screen view. The reduction of manual steps in the creation of electronic documents can afford an acceleration and also a simplification of work processes that rely on such documents. At the same time, it brings about a higher reliability as the reduced number of manual steps implies a reduced likelihood of errors, which inevitably occur with humans working. The present invention also allows to achieve higher productiveness and throughput in the generation of electronic documents.
The term “form” as used herein is to be understood in its most general meaning. It refers to any graphical structure displayed on a screen of a graphical output device and providing one or more entry fields (blank spaces) that are required to be filled with data by a user in order to create an electronic document. The form may be entirely text-oriented, but may also include pictorial elements. Typically, the additions to be made to the form will include pieces of text or numbers, but may also include any type of graphical symbols.
Preferably, the first screen view is displayed as a table view including a plurality of entry fields arranged in rows and columns for entering the first data elements.
At least some of the first data elements in the first database may represent information that can be added directly to the form. These data elements will be entered into the entry area of the first screen view as they are desired to appear in the form.
In one embodiment, the entry area of the first screen view may allow a user to enter, in association with each line item descriptor, at least one first data element serving as a cross-reference to information stored in a second database. In this case, it is not the cross-reference data element itself that is to be retrieved and added to the form, but the information hidden behind the cross-reference data element, i.e., the associated information in the second database. As an example, a form may require a user to add technical data on a particular product, say product “X”, to complete the form. The technical data may be stored, e.g., in a product database along with information on various other products. Then, a line item descriptor “product X” can be defined in the first screen view, and the location from which the technical data on product X is to be obtained can be entered as an associated first data element for the line item descriptor “product X”. The data element thus serves as a cross-reference referring to the product database as the source of the desired information. The term “adding data derived from a read first data element” is herein expressly intended to encompass both a direct retrieval of that first data element for display in the form and a retrieval of data referenced to by the first data element for display of the referenced data in the form.
In a preferred embodiment, a user can define through the use of an input device one or more master item descriptors and, for each master item descriptor, one or more line item descriptors and one or more first data elements in association with each respective line item descriptor. The line item descriptors are stored in the first database in relation to their respective master item descriptor, and the first data elements are stored in relation to their respective line item descriptor. In the second screen view, a control element is displayed for only those line item descriptors that are associated with a particular master item descriptor as selected by a user. Thus, depending on the selection made by the user regarding the master item descriptors, different second screen views may be generated that contain control elements for different sets of line item descriptors.
The master item descriptors are useful, e.g., when different types of documents are to be created that are associated with different forms and thus different second screen views. As an example, it may be desirable to pre-define a first set of line items for a first type of document and a second set of (different) line items for a second type of document. Then, a user can assign a first master item descriptor to the first type document and a second master item descriptor to the second type document. For each master item descriptor, the user can define, and have stored in the first database, the respective set of line items and associated first data elements. At a later stage, when a user wishes to create a document of the first type, he calls (selects) the corresponding first master item descriptor, resulting in a second screen view being displayed that contains control elements for all line item descriptors included in the first set. Similarly, if the user chooses to create a document of the second type, he selects the second master item descriptor and will obtain a second screen view with control elements for all line item descriptors contained in the second set.
The present invention preferably provides for the generation of a third screen view on a graphical output device to enable a user to enter master. item descriptors. The third screen view includes an entry area arranged to allow a user to enter a list of master item descriptors.
The third screen view can be displayed as a table view arranged to allow entry of the master item descriptors and one or more second data elements in relation to each master item descriptor. Each second data element is stored in the first database in relation to its associated master item descriptor.
In one embodiment, the third screen view is arranged to allow a user to enter for each master item descriptor an active identifier as a second data element. The active identifier specifies whether the respective master item descriptor is in an active state. In the second screen view, a control element is displayed for each line item descriptor associated with a selected master item descriptor only if the active identifier associated with the selected master item descriptor indicates the active state for that master item descriptor. Thus, the active identifier can be used to selectively activate or deactivate individually for each master item the functionality provided by the present invention.
In another embodiment, the third screen view is arranged to allow a user to enter for each master item descriptor a version identifier as a second data element. The version identifier specifies a version number of the respective master item descriptor. The version identifier enables a user to customize different versions of the same master item and make the various versions identifiable to the computer system. By employing an active identifier one of plural versions of a particular master item can be flagged as active, thus activating the functionality of the present invention for only the selected version.
Hereinafter, the present invention is described in more detail in connection with the accompanying drawings, in which:
The exemplary customization process represented by the flowchart diagram of
The exemplary master item preset screen view of
Two versions have been defined for the master item MI2, one carrying the version number “001” and the other one carrying the version number “002”. Version 002 of the master item MI2 is flagged as active, while version 001 of the same master item is indicated as being inactive through the lack of a “+” in column C3. Both versions of the master item MI2 are assigned the same ID code, i.e., “ZYX4321”. A rule may apply that only one of plural versions of a master item may be flagged as active. The remaining versions are all inactive.
The customization process of FIG. I enables a user to relate a set of line items to each master item, with each line item representing a set of data. To this end, a line item preset screen view is presented on the screen of the graphical output device in a step 12. The line item preset screen view is such as to allow the user to input one or more line item descriptors and, for each input line item descriptor, one or more data elements.
An exemplary line item preset screen view is depicted in
Columns C6 through C9 may be headlined in any convenient manner to explain the type of data element to be entered in the respective column. One of columns C6 through C9 may, for example, be used to enter a term or phrase that explains the corresponding line item in more detail. As an example, in a case where a user enters “HOTEL” as a line item in column C5 in one of the rows of the table of
In a column CI0, the user may enter a button identification code (button ID) for each line item descriptor. The button ID may be internally used by a computer program embodying the customization scheme of the present invention to unambiguously identify each button. In an alternate embodiment, a button ID may be automatically generated, assigned to a line item, and displayed in the line item present screen view, by the program, e.g., upon the user activating a new row in this screen view or confirming entry of a line item descriptor. The user may be allowed to enter the same line item descriptor in two or more rows of the line item preset screen view as long as each line item is assigned a different button ID. It will be appreciated that the button ID itself may well serve the function of a line item descriptor so that column C5 may be optionally omitted. In such a case, different buttons may be distinguished, e.g., by different colors in the electronic form.
It goes without saying that the number of columns for entering data elements can vary depending on the particular application and the needs of the user. In one embodiment, the user may be enabled to define the number of data element columns himself. In another embodiment, the number of data element columns may be fixed and not alterable by the user. In any case, the user may be free to fill data element entry fields in the line item preset screen view or leave them blank, as the specific needs of the user may require.
As a purely illustrative example, the line item preset screen view of
The master items can, e.g., refer to business transactions or processes, which each involve a specific type of electronic document to be created using a specific type of electronic form. The business transactions can be procurement-related transactions, accounting-related transactions, transactions related to human resource management, logistics-related transactions, and so forth. An invoice, a bid invitation, a purchase order, a confirmation of an order, an acknowledgement of receipt of ordered goods, and an expense report are but examples of electronic documents that are commonly generated in the course of a business process and may require different kinds of electronic forms for their creation. Then, “invoice”, “purchase order”, “expense report”, etc. may be entered by a user as master item descriptors in the master item preset screen view. Alternatively, a master item can be representative of a non-business transaction, project, process, or device, such as in the scientific or R&D (research and development) domain or in the design area.
In a step 13, the customization process of
To establish a relation between a master item in the master item preset screen view and a set of line items during the preset phase of steps 11 and 12 of
In one embodiment, the master item preset screen view and the line item preset screen view are displayed simultaneously on the graphical output device, e.g., side by side or one above the other. In another embodiment, only one of the master item preset screen view and the line item preset screen view is displayed on the graphical output device at a time, with suitable means being provided to allow the user to switch between the two screen views.
It is to be understood that a user, once a set of line items and associated data elements have been defined and stored for one or more respective master items, can change the content of the database DB1 at any time later using the master item preset screen view and the line item preset screen view so as to, e.g., remove, rename or add master items or do the same with the line items and/or data elements.
Reference is now made to
If information on more than one master item is stored in the database DB1, a selection has to be made by the user as to a particular master item, and optionally as to a particular version of the selected master item, for which control buttons 54 are to be displayed in the document generation screen view. The software application may include suitable means that allow the user to select from a list of some or all of the predefined master items. Also, different master items may be associated with different types of electronic form, with each type of form associated with a different software application. By selecting a particular software application, a user thus-may automatically and inherently select a particular master item and thereby cause the appropriate set of line item descriptors and control buttons to appear in the document generation screen view.
Moreover, control buttons 54 are displayed only where the corresponding master item has been flagged as active in the master item preset screen view. If a master item is flagged as inactive, an electronic form may be generated for such master item in the document generation screen view with no control buttons 54 displayed. Alternatively, provision may be made to prevent an electronic form from being generated for master items flagged as inactive.
If a user has selected an active master item, information regarding the associated line items is read from the database DB1 and a control button 54 for each line item is generated in the document generation screen view containing the form to be filled out. The control buttons 54 are arranged to be activated by a user using a mouse device or other input device. For example, the control buttons 54 can be activated by hitting with a pointer 56 generated by a mouse device of other pointing device.
Once it is detected that a button 54 has been activated by a user (step 23 in
Some or all of the data elements stored in the database DB1 may be destined for s direct retrieval. Direct retrieval means that the data elements are suited for being added to the form as they are. In the line item preset screen view of
In one embodiment, the line item preset screen view may be such as to allow a user to enter a cross-reference as a data element in one of the entry fields of this screen view. For example, one of the columns C6-C9 in the table view of
In a step 25 in the routine of
The data transferred to the document generation screen view, no matter its source, i.e., from the database DB1 or the database DB2, is used to enrich the form by filling the data into one or more entry fields of the form (step 29 of the routine of
There may be a predetermined correlation between the various data element columns C6-C9 in the line item preset screen view and the entry fields 52 of the form 50. Specifically, each of the data element columns C6-C9 may be uniquely assigned to a respective entry field 52 of the form 50. Then, all data elements input in the same column will be added to the same entry field 52, no matter which of the control buttons 54 is hit.
In the following, a computer architecture is described that can be used to implement the present invention.
In
The computer 100 can, for example, be a conventional personal computer (PC), a desktop, notebook or hand-held device, a multiprocessor computer, a microprocessor-based or programmable consumer electronics device, a minicomputer, a mainframe computer, a personal mobile computing device, a mobile telephone, a portable or stationary personal computer, a palmtop computer, or the like. The processor 110 can, for example, be a central processing unit (CPU), a micro-controller unit (MCU), a digital signal processor (DSP), or the like.
The computer system, in addition to the computer 100, may comprise further computers 101, 102 . . . linked to the computer 100 and to each other via a network 160. The computers 100, 101, 102 . . . may be realized, for example, as clients, servers, routers, peer devices or any other common network devices. The computers 101, 102 . . . may comprise some or all of the elements described with respect to the computer 100. Hence, the elements 110 to 150 of the computer 100 may collectively illustrate corresponding elements in the other computers 101, 102 . . . of the system.
The memory 120 symbolizes suitable structure capable of storing data and instructions temporarily and/or permanently. Although the memory 120 is illustrated in
The memory 120 may include a read only memory (ROM) portion and/or a random access memory (RAM) portion. Other access options and capabilities of the memory 120 are likewise conceivable. The memory 120 may be physically implemented as a machine-accessible information storage medium, such as a magnetic medium (e.g., hard disk, floppy disk, zip disk, tape), an optical medium (e.g., optical disk like CD-ROM or DVD), a semiconductor medium (as, e.g., DRAM, SRAM, EPROM, EEPROM, memory stick), or any other medium. The memory 120 may be concentrated in one location or on one storage medium or may be distributed across different locations and/or media. One or more portions of the memory 120 may be removable from respective components of the computer system, other memory portions may be fixed with respect to such components. The computer 100 may use means well known in the art for reading from and writing to an information storage medium, such as a disk drive, a tape drive, a reader/writer for memory cards or memory sticks, etc.
The or each input device 140 is a device that provides data and instructions for processing by the computer 100. For example, the one or more input devices 140 will typically include a pointing device (e.g., a mouse, a trackball, a touch pad) and/or a keyboard. While these are examples of devices requiring human interaction, one or more input devices 140 may alternatively operate without human interaction, such as a wireless receiver.
The or each output device 150 is a device that presents instructions and data that have been processed. The one or more output devices 150 of the computer 100 include a graphical output device having a screen for displaying graphical images. The graphical output device can, e.g., be a CRT (cathode ray tube) monitor, a flat panel display, or a liquid crystal display. Additionally, there may be provided a printer or plotter as a further output device 150. One or more input devices 140 and one or more output devices 150 can be combined in a single device. The input/output devices 140 and 150 are coupled to the computer 100 via the bus 130 (as illustrated) or via the network 160 (optional).
The computer system may encompass the Internet and/or an intranet. The network 160 may include a wired or a wireless network, such as, for example, a local area network (LAN), a wide area network (WAN), a wireless LAN (WLAN), a public switched telephone network (PSTN), an integrated services digital network (ISDN), an infra-red (IR) or Bluetooth link, a UMTS (universal mobile telecommunications system) link, a GSM (global system for mobile communication) link, or a CDMA (code division multiple access) link.
Transmission protocols, mechanisms and data formats to effect communications between components of the computer system are widely known. TCP/IP (transmission control protocol/internet protocol), HTTP (hyper text transfer protocol), SHTTP (secure HTTP), WAP (wireless application protocol), URL (unique resource locator), URI (unique resource identifier), HTML (hyper text markup language), XML (extensible markup language), XHTML (extensible hyper text markup language), WML (wireless application markup language), EDI (electronic data interchange), which provides for an electronic exchange of business information between or inside organizations and their IT infrastructure in a structured format, RFC (remote function call), and API (application programming interface) are mere examples of such protocols, mechanisms and data formats.
Interfaces for coupling components of the computer system are widely known. in the art as well. For sake of simplicity, such interfaces are not illustrated. An interface may, for example, be configured as a serial port interface, a parallel port interface, a game port, a universal serial bus (USB) interface, an internal or external modem, a video adapter, a sound card, etc.
The CPP may reside anywhere in the computer system and/or be provided on a separate program carrier medium 170. All of the CPP may reside in the same component of the computer system, such as the computer 100. Alternatively, different portions of the CPP may be distributed across different components of the computer system. For example, it is conceivable for a first portion of the CPP to reside on the computer 100 and for another portion of the CPP to reside on another computer of the computer system.
The program carrier medium 170 can be implemented as any type of computer-readable medium, such as a magnetic or optical disk or a magnetic tape. To communicate the CPP to the computer 100, the program carrier medium 170 is inserted into an input device 140 of the computer 100 that is adapted to retrieve the program code of the CPP from the program carrier medium 170. The program code provided by the CPP can be executed solely by the computer station 100, in which case the network 160 and the other computers 101, 102 . . . can be omitted. Alternatively, it can be executed in a distributed manner using distributed computing facilities in the computer system.
In the memory 120, software program support modules, such as a basic input output system (B10S), an operating system (OS), a program library, a compiler, an interpreter, communication programs, drivers, protocol converters, application software programs like text processors, (Internet-) browsers, and data base applications may be stored. One skilled in the art will be readily able to use the CPP in connection with any of these support modules.
The CPP is configured to effect generation and display of the various screen views described above. Specifically, the CPP operates to carry out the various steps illustrated in and described with respect to
As for the databases DB1 and DB2, these may be located anywhere in the computer system. In
Although various embodiments of the present invention are described and illustrated herein, it is to be understood that the invention is not limited to the embodiments disclosed. Various modifications and variations may be made without departing from the scope of the invention as defined in the appended claims.
Number | Date | Country | |
---|---|---|---|
60530964 | Dec 2003 | US |