|
|
|
| United States Patent | 6192381 |
| Link to this page | http://www.wikipatents.com/6192381.html |
| Inventor(s) | Stiegemeier; Mark R (Park City, UT);
Hacking; Cory L. (St. George, UT) |
| Abstract | A data management system user interface allows users to enter, store,
retrieve, and display multiple, related groups of information in a single
document. The interface loads document data into a separate template which
defines various fields, and the interface determines the fields that
should be displayed based on the information entered by the user. The user
enters an unlimited amount of data into each field, thus creating a
free-flowing document, and the user can create groups of entries for each
field. The interface also contains a data validation and error correction
feature, that provides automatic correction, prompts for manual
correction, and allows the user to save a draft document with a list of
errors for future correction at a later date. |
|
|
|
Title Information  |
|
|
|
|
|
Drawing from US Patent 6192381 |
|
|
Single-document active user interface, method and system for implementing
same |
|
|
|
|
|
| Publication Date |
February 20, 2001 |
|
|
|
|
|
| Filing Date |
October 2, 1998 |
|
|
|
|
|
|
|
|
|
|
|
| Parent Case |
This application claims priority from U.S. provisional patent application
No. 60/061,025, filed Oct. 6, 1997, incorporated herein by reference. |
|
|
|
|
|
|
|
|
|
|
|
|
|
Title Information  |
|
|
References  |
|
|
| *references marked with an asterisk below are user-added references |
|
U.S. References |
|
|
| Add a new US reference: |
| | Reference | Relevancy | Comments | Reference | Relevancy | Comments | 6026433 D'Arlach 709/217 Feb,2000 |      Your vote accepted [0 after 0 votes] | | 5963967 Umen 715/513 Oct,1999 |      Your vote accepted [0 after 0 votes] | | 5924109 Ackerman 715/531 Jul,1999 |      Your vote accepted [0 after 0 votes] | | 5900002 Bottomly
May,1999 |      Your vote accepted [0 after 0 votes] | | 5835712 DuFresne 709/203 Nov,1998 |      Your vote accepted [0 after 0 votes] | | 5806071 Balderrama 707/104.1 Sep,1998 |      Your vote accepted [0 after 0 votes] | | 5619685 Schiavone 703/20 Apr,1997 |      Your vote accepted [0 after 0 votes] | | 5530961 Janay 715/744 Jun,1996 |      Your vote accepted [0 after 0 votes] | | 5267155 Buchanan 715/540 Nov,1993 |      Your vote accepted [0 after 0 votes] | | 5043891 Goldstein 715/531 Aug,1991 |      Your vote accepted [0 after 0 votes] | | |
|
|
|
|
U.S. References |
|
|
Foreign References |
|
|
|
|
|
|
Foreign References |
|
|
Other References |
|
|
|
|
|
|
Other References |
|
|
|
|
|
References  |
|
|
|
|
|
| Market Size |
|
Estimate the gross annual revenues of the relevant market
sector:
|
| | |
| |
|
|
| Market Share |
|
Estimate the percentage of the relevant market sector this invention will capture:
|
| | |
| |
|
|
| Reasonable Royalty |
|
What percentage of gross sales should the inventor or assignee be paid?
|
| | |
| |
|
|
|
Public's "Guesstimation" of Royalty Value
|
| Market Size | N/A | [No votes] | | x | Market Share | N/A | [No votes] | | x | Reasonable Royalty | N/A | [No votes] |
| | N/A | |
| |
|
|
|
|
|
|
|
|
|
|
|
|
Market Review  |
|
|
Technical Review  |
|
|
Claims  |
|
|
What is claimed is:
1. A method of entering, storing, displaying, and retrieving data using a
data management system having a display device, one or more input devices,
and a storage device, said method comprising:
(a) loading a document containing data from the storage device;
(b) loading a template containing format instructions and at least one data
field from the storage device, each data field having a size that is not
limited by the data management system;
(c) linking the document with the template; and
(d) displaying the document and the data within the document responsive to
the template on the display device as specified by the format
instructions.
2. The method of entering, storing, displaying, and retrieving data
according to claim 1, further comprising the steps of:
(a) loading, prior to the displaying step, a client script program;
(b) entering, after the displaying step, by a user, additional data having
size and format;
(c) validating, via the client script program, at least one of the size and
format of the data; and
(d) adjusting, via the client script program, the data to result in valid
data.
3. The method of entering, storing, displaying, and retrieving data
according to claim 1,
wherein the format instructions create one or more fields which are
displayed on the display device, the one or more fields having field
identifications, formats and locations, the data having data
identifications, and
wherein the linking step links data to fields where the data
identifications and field identifications at least one of substantially
and logically match.
4. The method of entering, storing, displaying, and retrieving data
according to claim 3, wherein said method further comprises the steps of:
(a) determining, via the client script program, the data fields that are
relevant based on the additional data and predetermined criteria; and
(b) modifying, on the display device, the displayed data by at least one of
hiding, deactivating and removing the data fields that are not relevant.
5. The method of entering, storing, displaying, and retrieving data
according to claim 4, further comprising the step of modifying, by the
client script program, on the display device, the locations of the data
fields.
6. The method of entering, storing, displaying, and retrieving data
according to claim 3, wherein said method further comprises the steps of:
(a) identifying the data fields which require entry of the additional data;
(b) identifying the additional data which requires validation; and
(c) displaying a list of the data fields which require the entry of the
additional data and the additional data which requires the validation.
7. The method of entering, storing, displaying, and retrieving data
according to claim 1, wherein the data management device is one of a
computer, a computer network, and a portable electronic device used over
at least one of a local area network, a global network, the Internet,
optionally using thin client processing.
8. The method of entering, storing, displaying, and retrieving data
according to claim 1, wherein the document and the template each contain
template codes in order to link at least one document with at least one
template with at least substantially identical template codes.
9. The method of entering, storing, displaying, and retrieving data
according to claim 1, further comprising the steps of:
(1) entering, by the user, a plurality of additional data;
(2) validating, by the computer, that the plurality of additional data is
in substantial conformance with a predetermined format, as the user enters
the plurality of additional data;
(3) when the plurality of additional data is not in conformance with the
predetermined format, creating a "to do list" for review and correction by
the user at a later time; and
(4) repeatedly performing said steps (1)-(3), continuously adding to the
"to do list", and allowing the user to continue to enter the plurality of
additional data.
10. The method of entering, storing, displaying, and retrieving data
according to claim 1, further comprising the step of entering, by the
user, a plurality of additional data in accordance with a free form data
entry format, the free form data format including unlimited field sizes,
and the user not being restricted in size of an entry for a particular
field.
11. The method of entering, storing, displaying, and retrieving data
according to claim 1, further comprising the steps of:
(1) entering, by the user, a plurality of additional data, the plurality of
additional data including multiple groups with multiple entries of data
for a substantially same field or substantially same set of fields;
(2) managing, by the data management system, the plurality of the
additional data including the multiple groups with the multiple entries of
data in at least one of a single document, single logical document and
file, by maintaining each of the multiple entries directly after each
other corresponding with each of the multiple groups.
12. The method of entering, storing, displaying, and retrieving data
according to claim 11, further comprising the step of displaying only the
field in the substantially same field or the substantially same set of
fields corresponding to the entry selected by the user.
13. The method of entering, storing, displaying and retrieving data
according to claim 11, further comprising the step of entering by the user
a number of entries having a size that is not limited by the data
management system into at least one of the multiple groups.
14. The method of entering, storing, displaying, and retrieving data
according to claim 1, further comprising the steps of:
(1) entering, by the user, a plurality of additional data, the plurality of
additional data including multiple groups with multiple entries of data;
(2) linking a word processing program to the data management system;
(3) transmitting the plurality of additional data from the data management
system to the word processing program, wherein each of the groups is an
instance of a data object in an object oriented programming environment;
and
(4) formatting by the word processing program the plurality of additional
data for at least one of print previewing, printing and displaying,
including converting each instance of each of the groups into separate
data representative of each of the groups.
15. The method of entering, storing, displaying, and retrieving data
according to claim 1, further comprising the steps of:
(1) entering, by the user, a plurality of additional data, the plurality of
additional data including multiple groups with multiple entries of data;
(2) linking a word processing program to the data management system;
(3) transmitting the plurality of additional data from the data management
system to the word processing program; and
(4) formatting by the word processing program the plurality of additional
data for at least one of print previewing, printing and displaying,
including converting each of the multiple entries of the multiple groups
into separate formatted data representative of each of the multiple
groups.
16. The method of entering, storing, displaying, and retrieving data
according to claim 1, wherein the data comprises one or more of digitized
text and digitized images.
17. A method of entering, storing, displaying, and retrieving data using a
data management system having a display device, one or more input devices,
and a storage device, said method comprising the steps of:
(1) entering, by the user, a plurality of the data;
(2) validating, by the computer, that the plurality of the data is in
substantial conformance with a predetermined format, as the user enters
the plurality of the data;
(3) when the plurality of the data is not in conformance with the
predetermined format, creating a "to do list" for review and correction by
the user at a later time; and
(4) repeatedly performing said steps (1)-(3), continuously adding to the
"to do list", and allowing the user to continue to enter the plurality of
the data, even though previously the plurality of data is not in
conformance with the predetermined format.
18. A method of entering, storing, displaying, and retrieving data using a
data management system having a display device, one or more input devices,
and a storage device, said method comprising the steps of:
(1) entering, by the user, a plurality of the data including multiple
groups with multiple entries of data for a substantially same field or
substantially same set of fields;
(2) managing, by the data management system, the plurality of the data
including the multiple groups with the multiple entries of data in at
least one of a single document, single logical document and file, by
maintaining each of the multiple entries directly after each other
corresponding with each of the multiple groups; and
(3) displaying only the field in the substantially same field or the
substantially same set of fields corresponding to the entry selected by
the user.
19. A method of entering, storing, displaying, and retrieving data using a
data management system having a display device, one or more input devices,
and a storage device, said method comprising the steps of:
(1) entering, by the user, a plurality of the data, the plurality of the
data including multiple groups with multiple entries of data;
(2) linking a word processing program to the data management system;
(3) transmitting the plurality of the data from the data management system
to the word processing program; and
(4) formatting by the word processing program the plurality of the data for
at least one of print previewing, printing and displaying, including
converting each of the multiple entries of the multiple groups into
separate formatted data representative of each of the multiple groups.
20. A data management system executing the processes in accordance with one
of claims 1, 17, 18 or 19.
21. A computer readable tangible medium storing the processes in accordance
with one of claims 1, 17, 18 or 19, to be executed by a data management
system.
22. A method of entering, storing, displaying, and retrieving data using a
data management system having a display device, one or more input devices,
and a storage device, said method comprising:
(a) loading a document containing data and a document code from the storage
device;
(b) identifying a template containing format instructions, at least one
data field having unlimited size and a template code, based on
correspondence of the document code and the template code;
(c) loading the template from the storage device;
(d) linking the document with the template; and
(e) displaying the document and the data within the document responsive to
the template on the display device as specified by the format
instructions.
23. A method of entering, storing, displaying, and retrieving data using a
data management system having a display device, one or more input devices,
and a storage device, said method comprising:
(a) entering, by the user, a plurality of data through one or more data
fields of a template containing format instructions;
(b) identifying, by the data management system, a document corresponding to
the data entered by the user;
(c) linking the document with the template;
(d) creating a new document that contains the data entered by the user and
relevant data from the identified document; and
(e) displaying, by the data management system, the new document and the
data within the new document responsive to the template on the display
device as specified by the format instructions. |
|
|
|
|
Claims  |
|
|
Description  |
|
|
BACKGROUND OF THE INVENTION
1. Field of the Invention
The present invention generally relates to a user interface, process and/or
architecture for a computer implemented and/or assisted system for
managing varying types of data, and more particularly, a user interface,
process and/or architecture that allows or provides users the ability to
enter, store, retrieve, and display multiple, related groups of
information in a single document.
2. Background of the Related Art
In the latter half of the twentieth century, computer systems have proven
to be a powerful tool for managing large quantities of data in many
different aspects of everyday life. In particular, computer-implemented
data management software has given a wide variety of users an easy way to
manage both numerical and narrative information. For example, software is
available that allows bank personnel to manage customer account
information such as deposits, withdrawals, earnings, and fees associated
with individual accounts. Many types of business-related software allow
companies to manage business information such as personnel records,
transaction data, customer records, and financial information.
Data management programs typically contain user interfaces that display a
document and contain various fields for user input. Each user input field
typically represents a different category of information, and the user
typically enters one piece of information per field. For example, a
business application may define a "document" as an invoice, and the user
interface may display fields where the user may enter products of sale
that are accounted for in that invoice. The programs and their interfaces
may also contain limited data validation features, such as options that
check the spelling of user entries and prompts that advise the user if the
format of the user's entries are improper (e.g., if the user entered a
letter in a field for which only numbers are valid, the interface may
prompt the user to retype the entry).
However, the prior art data management software presents several
disadvantages. In particular, the user interfaces used by the existing
data management software are inflexible and lack a means to display
complex, interrelated data in a manner that hides the data complexity from
the user. The prior art data management system user interfaces typically
require all data to be displayed in a single display format or "template,"
and each field must be displayed regardless of whether every individual
field is necessary or appropriate for the data contained in the document.
Further, existing data management system user interfaces do not allow
users to enter multiple instances of data in a single field.
In addition, existing data management systems have defined field sizes, and
users are either restricted in the amount of data that can be entered in a
field, or required to use forms that include large blank spaces to
accommodate large entries regardless of whether such spaces are needed.
Finally, the data validation features of existing data management system
user interfaces are limited in that they may correct minor items such as
typographical errors, or they may prompt the user to re-enter an item, but
they contain no means to allow the user to correct, validate, or enter
additional information by retrieving it from a another database on a
network, and they do not allow the user to save a "draft document" so that
the user can enter corrections and missing information and validate the
document information at a later date.
If a user interface that avoids these disadvantages were available, data
management software could have many new and useful applications. For
example, law enforcement officers could use computers or hand-held
electronic devices to generate complete case reports in the office, at
home, in their car, or at the scene. In addition, the software driving the
user interface could automatically prompt the officers to enter only the
specific information necessary to document the particular type of
incident.
Accordingly, we have determined that it is desirable to provide a user
interface, method and/or architecture that displays complex, interrelated
data in a manner that does not reveal its complexity to the user.
We have also determined that it is desirable to provide a user interface,
method and/or architecture that stores the data and the display template
separately, and which links the data with the template when the display is
activated.
We have also determined that it is desirable to provide a user interface,
method and/or architecture that automatically selects the data fields that
should be displayed based on the data that the user enters.
We have also determined that it is desirable to provide a user interface,
method and/or architecture that allows users to create free-flowing forms
for varying sizes of entered data.
We have also determined that it is desirable to provide a user interface,
method and/or architecture that allows users to enter multiple instances
of data in a single field.
We have also determined that it is desirable to provide a user interface,
method and/or architecture that allows the user to correct, validate,
and/or enter additional information by retrieving it from a another
database on a network or by saving a "draft document" and entering
corrections, missing information and/or validating the information at a
later date.
SUMMARY OF THE INVENTION
It is therefore a feature and advantage of the present invention to provide
a user interface, method and/or architecture that displays complex,
interrelated data in a manner that does not reveal its complexity to the
user.
It is another feature and advantage of the present invention to provide a
user interface, method and/or architecture that stores data and templates
separately and links the data with an appropriate template when the data
is displayed.
It is another feature and advantage of the present invention to provide a
user interface, method and/or architecture that automatically determines
the data fields that should be displayed based on the data that the user
enters.
It is another feature and advantage of the present invention to provide a
user interface, method and/or architecture that allows the user to create
free-flowing forms.
It is another feature and advantage of the present invention to provide a
user interface, method and/or architecture that allows the user to enter
multiple instances of data in a single field.
It is another feature and advantage of the present invention to provide a
user interface, method and/or architecture that allows the user to
correct, validate, and/or enter additional information by retrieving it
from another database on a network, or by saving a "draft document" and
entering corrections, missing information and/or validating the
information at a later date.
The above and other features and advantages are achieved through the use of
a novel data management system user interface, method and/or architecture
as herein disclosed.
Real world computer information often contains a complex web of
relationships and data. As electronic documents become more complex, these
relationships are easily overlooked. The present invention allows complex
data to be stored and retrieved more easily than traditional client/server
methods. The present invention is a collection of unique technologies that
solve the problem of gathering, viewing, printing, managing, and storing
complex information across networks and computer systems. This provides
application programmers with an advantage in system development by
allowing them to focus their efforts on the product of the system, the
output, rather than the form in which the information is gathered.
The present invention is composed of several shared, interactive
components:
Application
Documents
Transaction Services
Document Managers
The Application advances the means by which developers consolidate and
control the collection, manipulation and management of data. These
technologies combine to create a system that is easy to develop with, use,
and maintain. The Application can be programmed from a variety of
application development environments including C++, Visual Basic, Delphi,
Java, Visual Basic Script, Active Server Pages, Web Servers, etc.
Application Documents are a compound collection of template information and
subject data. Transaction Services provide a single point of contact
through which the Application communicates to other services on the
network, standing as a proxy between the Application and the various
document managers and other services. When a user wants to edit, view, or
print a document, the Application ensures that the latest version of the
template exists locally. This includes the latest versions of any
associated, dependent programs. If a newer version is available, the
system automatically downloads the updated component and properly
registers all of its parts with the client operating system, and a request
is made through transaction services to the document manager.
A Document Manager is built for each type of document. This server
application is responsible for managing access to the document and
managing the storage and retrieval of the document to and from document
repositories (e.g., a file server, database server or other mass storage
device). It is important to note that information can be extracted from
any number of sources and combined into a single document. Document
managers are also responsible for creating and managing the templates
containing the view definitions, tables, document structure, etc. They may
also provide services specifically designed for the needs of any client
script modules.
In accordance with the preferred embodiment of the present invention, a
computer system contains one or more input devices, preferably a keyboard
and a mouse; a display device such as a screen; active memory (such as
random access memory) within which portions of a program reside while the
computer runs the program; and a storage means such as a hard disk, floppy
disk, removable drive, or network server. The user employs a "container
application" such as Microsoft Windows Explorer or File Manager to load a
"document" (i.e., a data file) from the storage means into the computer's
active memory. The present invention then retrieves a template and a
client script program from the storage device. The template contains the
format instructions pursuant to which the computer displays the document
on the display device.
The display includes various fields as defined by the template, and the
user uses the input devices to enter additional data into the document
fields. As the user enters data into the document, the client script
program validates the entries by performing functions such as spell
checking and correction, field size verification, and linking of entered
data with other data that is maintained in either active memory or on a
storage means or remote device. The invention automatically adds or
removes fields to or from the display based on the information which the
user enters in previous fields. In addition, if the user enters multiple
items in a single field, the method creates groups of information within
that single field.
In accordance with another embodiment of the invention, a computer readable
tangible medium is provided that stores the process thereon, for execution
by the computer. In accordance with another embodiment of the invention, a
computer system is provided that stores the processes described herein.
In accordance with another embodiment of the invention, a computer readable
tangible medium is provided that stores an object thereon, for execution
by the computer.
There has thus been outlined, rather broadly, the more important features
of the invention in order that the detailed description thereof that
follows may be better understood, and in order that the present
contribution to the art may be better appreciated. There are, of course,
additional features of the invention that will be described hereinafter
and which will form the subject matter of the claims appended hereto.
In this respect, before explaining at least one embodiment of the invention
in detail, it is to be understood that the invention is not limited in its
application to the details of construction and to the arrangements of the
components set forth in the following description or illustrated in the
drawings. The invention is capable of other embodiments and of being
practiced and carried out in various ways. Also, it is to be understood
that the phraseology and terminology employed herein are for the purpose
of description and should not be regarded as limiting.
As such, those skilled in the art will appreciate that the conception upon
which this disclosure is based may readily be utilized as a basis for the
designing of other structures, methods and systems for carrying out the
several purposes of the present invention. It is important, therefore,
that the claims be regarded as including such equivalent constructions
insofar as they do not depart from the spirit and scope of the present
invention.
Further, the purpose of the foregoing abstract is to enable the U.S. Patent
and Trademark Office and the public generally, and especially the
scientists, engineers, and practitioners in the art who are not familiar
with patent or legal terms or phraseology, to determine quickly from a
cursory inspection the nature and essence of the technical disclosure of
the application. The abstract is neither intended to define the invention
of the application, which is measured by the claims, nor is it intended to
be limiting as to the scope of the invention in any way.
The scope of the invention, together with other objects of the invention,
along with the various features of novelty which characterize the
invention, are pointed out with particularity in the claims annexed to and
forming a part of this disclosure. For a better understanding of the
invention, its operating advantages and the specific objects attained by
its uses, reference should be had to the accompanying drawings and
descriptive matter which illustrate preferred embodiments of the
invention.
BRIEF DESCRIPTION OF THE DRAWINGS
FIGS. 1 and 2 illustrate a computer of a type suitable for implementing
and/or assisting in the implementation of the processes described
according to the present invention;
FIG. 3 is a flowchart depicting the process whereby the present invention
loads and links a document with a template and a client script program;
FIG. 4 is a flowchart that provides a more detailed description of the
process of linking a document with a template;
FIG. 5a is a flowchart illustrating the instructions that a template may
use to define a display;
FIG. 5b illustrates how the template formats an exemplary document on a
display device, wherein the document includes such features as fields of
entry as modified by the client script program;
FIGS. 6a-6d illustrate the present invention's ability to display and/or
hide data fields in response to user-entered data;
FIG. 6e illustrates the steps which may be taken by the present invention's
client script program;
FIG. 7 illustrates the "grouping" feature of the present invention in an
exemplary document on a display device;
FIG. 8 illustrates an exemplary application of the present invention to law
enforcement data management; and
FIG. 9 illustrates the present invention's ability to display images.
NOTATIONS AND NOMENCLATURE
The detailed descriptions which follow may be presented in terms of program
procedures executed on a computer or network of computers. These
procedural descriptions and representations are the means used by those
skilled in the art to most effectively convey the substance of their work
to others skilled in the art.
A procedure is here, and generally, conceived to be a self-consistent
sequence of steps leading to a desired result. These steps are those
requiring physical manipulations of physical quantities. Usually, though
not necessarily, these quantities take the form of electrical or magnetic
signals capable of being stored, transferred, combined, compared, and
otherwise manipulated. It proves convenient at times, principally for
reasons of common usage, to refer to these signals as bits, values,
elements, symbols, characters, terms, numbers, or the like. It should be
noted, however, that all of these and similar terms are to be associated
with the appropriate physical quantities and are merely convenient labels
applied to these quantities.
The present invention also relates to an apparatus for performing these
operations. This apparatus may be specially constructed for the required
purpose, or it may comprise a general purpose computer as selectively
activated or reconfigured by a computer program stored in the computer.
The procedures presented herein are not inherently related to a particular
computer or other apparatus. Various general purpose machines may be used
with programs written in accordance with the teachings herein, or it may
prove more convenient to construct a more specialized apparatus to perform
the required method steps. The required structure for a variety of these
machines will appear from the description given.
DESCRIPTION OF THE PREFERRED EMBODIMENT OF THE INVENTION
I. Overview
Real world computer information often contains a complex web of
relationships and data. As electronic documents become more complex, these
relationships are easily overlooked. The present invention allows complex
data to be stored and retrieved more easily than traditional client/server
methods. The present invention is a collection of unique technologies that
solve the problem of gathering, viewing, printing, managing, and storing
complex information across networks and computer systems. This provides
application programmers with an advantage in system development by
allowing them to focus their efforts on the product of the system, the
output, rather than the form in which the information is gathered.
The system is composed of several shared, interactive components:
Application
Documents
Transaction Services
Document Managers
The Application advances the means by which developers consolidate and
control the collection, manipulation and management of data. These
technologies combine to create a system that is easy to develop with, use,
and maintain. The Application can be programmed from a variety of
application development environments including C++, Visual Basic, Delphi,
Java, Visual Basic Script, Active Server Pages, Web Servers, etc.
Additionally, the uniformity of data collection that is provided by the
Application user interface reduces training and retraining time. Users are
able to enter and edit information faster, resulting in greater business
productivity. The Application introduces a new user interface model for
entering information, which presents a consistent and simple interface to
the user regardless of the complexity of the data. As information is
entered into the system, the user interface adjusts to the amount of the
data entered. Read-only documents can display in a different form than the
data entry view, giving the ability to make the interface fast and easy to
use.
Developers traditionally spend a large amount of time placing prompts,
labels and data fields on data entry forms and ensuring that all graphical
objects line up property. The Application forms are free flowing, in much
the same way as paragraphs of text on a page. Each group can be expanded
to show the associated fields. Also, traditional Grid views may be
embedded within any group. A field may be used to enter and/or display
text and/or images. Thus, complex structured data can be easily presented
to the user.
In an effort to increase the readability of the document being edited, the
Application only displays control or option boxes and buttons on the
currently active field. Prompts that allow a restricted set of values can
be associated with a table that contains the list of allowed values and
descriptions. In addition to the traditional "drop-down list" view of the
possible selections, the Application will search for possible matches as
the user types. This allows the user to quickly find a value or group of
values from large tables.
The Application introduces a new concept in managing data entry errors and
emissions. All errors and incomplete data or actions are displayed in the
document "To Do" list. Each error must be corrected before the user is
allowed to save the document in anything but a draft form. Whenever a data
entry error occurs, the prompt data may be underlined in red, and a new To
Do item is created. The user, at any point in the entry process, can click
on the item to move to the associated prompt where they can fix the
problem.
A script module may optionally be attached to any document during the
development process. The Application installs and attaches the script
module to the document, and it provides control points to allow custom
behaviors to be activated during the edit process. For example, a script
module might be activated whenever a certain field is changed. The program
can then check to see if the data is appropriate for the given
circumstances, perform special formatting, or other validation on the
data. If necessary, an appropriate To Do item can also be added to the
document.
Each document may optionally contain one or more print formats. The
Application combines the document data with the print format to create a
new printable document. Currently, this document is viewable by Microsoft
Word.TM. or other rich text format (RTF) or other compatible viewer.
The layout manager is responsible for dynamically placing information on
the screen. This allows the Application to be used on computers with
different screen resolutions as well as different user preferences without
special versions of the form needing to be developed. Font sizes may also
be adjusted to accommodate different resolutions or users with
disabilities.
There are currently two layout models: Free Flow, and Left Aligned. The
first mode places prompts and data on the form one right after the other,
moving to the next line only when needed. The second mode left aligns all
of the prompts so they appear vertically in the window.
The layout manager also accommodates the need to hide or display prompts
dynamically. There are times when, based upon data entered, you would like
to collect additional information. However, you may not want those fields
always displayed. The Application handles this by placing the visible
prompts on the screen according to the active layout model.
The Application handles repeating groups of information by displaying
summary information in a group header. The Application moves the focus
away from developing the front-end data entry form to building refined
output reports and printed paper views. The Application handles the
process of downloading all of the information necessary to properly edit,
view, and print the document. The Application also automatically handles
sending the document back to the server when it is complete.
Application Documents are a compound collection of template information and
subject data. The Application Template component contains:
Information about the nature of the data that are contained in the
Document;
User Interface (UI) view definitions;
Print and print preview definitions;
Data entry and editing validation requirements;
Tables used to assist the user entering data; and
Client scripting code.
All of the control information needed to ensure the completeness and
accuracy of the data being collected is contained in the Template. To
reduce network traffic, templates are cached on the local computer system.
The Application checks that the proper version of the template exists
before allowing the user to begin editing. Document view definitions
control display and modification of the data but not permanent storage.
This document architecture keeps the data separate from its display and
control attributes and from user operations on the subject data. It also
allows programs that access the data to do so in a uniform manner,
ensuring that the proper data structure is maintained. Multiple views can
be attached to documents allowing different users to access documents in
ways specific to their individual needs. Documents can be transmitted to
other users through traditional email systems. Documents c | | |