EP1257902A4 - Document creation and scheduling of applications' jobs - Google Patents
Document creation and scheduling of applications' jobsInfo
- Publication number
- EP1257902A4 EP1257902A4 EP01910747A EP01910747A EP1257902A4 EP 1257902 A4 EP1257902 A4 EP 1257902A4 EP 01910747 A EP01910747 A EP 01910747A EP 01910747 A EP01910747 A EP 01910747A EP 1257902 A4 EP1257902 A4 EP 1257902A4
- Authority
- EP
- European Patent Office
- Prior art keywords
- document
- asp
- server
- html
- job
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/10—Office automation; Time management
-
- 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/174—Form filling; Merging
-
- 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/186—Templates
Definitions
- the present invention relates to Internet equipment and services, and more particularly to remotely creating and returning completed documents to Internet users who have filled out answers to various questions on a job-input form, and to the automatic generation of mail-merge type wordprocessor documents with fill-in-the- blanks boxes, and more particularly to simplified form generation for Internet document creation webservers.
- Some word processing programs and slide presentation programs provide templates for common formats, e.g., business letters, personal letters, etc. People and companies that have to write some kinds of letters only once or twice often have to write them the way that others have.
- Businesses typically have many kinds of form letters that they routinely compose and mail to customers, suppliers, government agencies, and other co-workers. In such situations, it would be advantageous if company policies and legal requirements could be consistently adhered to.
- the Judicial Council of California promulgates various court filing forms that are recommended or required for certain California Court filings. The latest revisions and correct use can be difficult for lay people and even small law firms to keep up with. Electronic forms on disk are available, but these are expensive and become obsolete quickly if subscription upgrades are not also purchased.
- the Internet now presents a new media by which even one-time users can take advantage of the highest quality and most up-to-date forms and letters for a very wide spectrum of purposes.
- HTML Hypertext mark-up language
- an object of the present invention is to provide a document-creation system that can be accessed by many users over the Internet.
- Another object of the present invention is to provide a document creation system that allows users to simply and quickly choose the appropriate document format and then supply the information needed to "fill-in the blanks".
- a further object of the present invention is to provide an Internet document creation system that is readily scaleable.
- a still further object of the present invention is to provide an Internet document creation system that is assembled from common hardware and software components.
- an Internet document creation system embodiment of the present invention comprises a website that receives information from a user needed to fill out a standardized form document, and then generates a completed ready-to-use document that is sent to the user or the user's intended recipients. Such information may also be stored ahead of time in a database, so the user doesn't need to supply some answers while on-line.
- the website comprises a computer platform that interfaces to the Internet with Microsoft Internet information server (IIS) running under a Windows-NT operating system.
- IIS Microsoft Internet information server
- Application programs like Microsoft WORD97 are made to operate as an NT-service by interfacing it with Microsoft SRVANY to the Windows-NT.
- Another object of the present invention to provide a forms-generation system that can be used by lay persons.
- Another object of the present invention is to provide a forms-generation system that produces HTML program source code for webpages with correct "boilerplate", graphics, artifacts, and fill-in-the-blanks dialog boxes.
- a forms-generation system embodiment of the present invention comprises a group of active server page files that run on a WLNDOWS-NT platform with IIS and ASP.
- Each ASP file presents a graphical user interface that allows a lay-user to create mail-merge type wordprocessor documents.
- Individual ASP files write appropriate HTML phrases in response to a user clicking buttons, entering text, and indicating various preferences.
- An advantage of the present invention is that a document-creation system is provided that is quick and expandable.
- Another advantage of the present invention is that more document-creation processors can be added as modular units to a base system.
- a still further advantage of the present invention is that a document creation system is provided that allows users to simply and quickly choose an appropriate document format, and then supply the information needed to "fill-in the blanks".
- a still further advantage of the present invention is that a document-generator is provided that allows for rapid development and implementation of automated website documents.
- a still further advantage of the present invention is that a document-generator is provided that minimizes user exposure to programming or scripting languages through an easy-to-use web interface.
- a document generation system is provided that allows content programmers to create the necessary components for automating documents, database tables, and HTML/ASP document forms without needing SQL, HTML, or ASP programming skills or experience. Such can also be used to generate any merge fields needed in the creation of the WORD-file.
- Fig. 1 illustrates a document-creation system embodiment of the present invention
- Fig. 2 is a flowchart for a default.asp embodiment of the present invention.
- Fig. 3 is a flowchart for a document.asp embodiment of the present invention.
- Fig. 4 is a flowchart for a question.asp embodiment of the present invention.
- Fig. 5 is a flowchart for a first half of a results.asp embodiment of the present invention.
- Fig. 6 is a flowchart for a second half of a results.asp embodiment of the present invention.
- Fig. 7 is a flowchart for a write_HTML_for_document_form program subroutine embodiment of the present invention that is included in the second half of a results.asp of Fig. 6.
- Fig. 1 illustrates an Internet document creation system embodiment of the present invention, referred to herein by the reference numeral 100.
- the system 100 comprises a webserver 102 connected to the Internet 104 and many clients or users 106-112.
- a pair of system-expansion units 114 and 116 modularly increase the ability of webserver 102 to create documents at the requests of users 106-112.
- the webserver 102 interfaces to the Internet 104 with a network interface controller 118.
- An interactive webpage user interface 120 provides functionality similar to Microsoft Corporation (Redmond, WA) Active Server Pages (ASP).
- An Internet file and application server 122 such as Microsoft Internet Information Server (IIS), runs under control of an operating system 124.
- Microsoft Windows-NT server is preferably used for the operating system 124.
- a utility 126 is used to present a wordprocessor program 128 as a service that is available under Windows-NT.
- SRVANY as provided by Microsoft as file srvany.exe in the NT-Resource Kit, can be used for the utility 126.
- Microsoft WORD-97 can be used for the wordprocessor program 128.
- the SRVANY utility 126 may also be used to run other application programs, e.g., application 130, as Windows-NT services.
- Microsoft Windows-NT services are processes that run without requiring a user to be logged on to the system, e.g., Microsoft SQL Server, Microsoft Exchange Server, Dynamic Host Interface Protocol (DHCP), and even Windows Internet Name Service (WINS) servers.
- Microsoft SQL Server Microsoft Exchange Server
- DHCP Dynamic Host Interface Protocol
- WINS Windows Internet Name Service
- the srvany.exe utility allows applications to be run as windows-NT services. This allows applications to survive logoff/logon sequences, and save the re-starting overheads for each new user.
- Server applications can come-up and service requests even when no user is logged-on.
- Applications can run and do a task in a specific logon account, different from the currently logged-on user. This ability to run tasks under a specified logon account expands the scope of what can be accomplished with Word 97 and other word processing software programs. For example, it is much more practical and easy to create Adobe PDF files when running under a named account rather than the so-called Local System account that services run as by default.
- Some applications may terminate upon logoff, even though they were started as a service, if they don't ignore the wm_endsession message, or ctrl_logoff_event.
- a job queue 132 is periodically consulted by the wordprocessor program 128 and other application program 130 to see if there are any jobs pending.
- a so-called "macro" program can be written with the MS- Word application that will do such job queue checking, e.g. as in Table I. Such macros may be written using Microsoft Visual Basic for Applications. Macro functionality may also be achieved by writing Dynamic Link Libraries (DLLs) that may be invoked from Word. DLLs typically run faster than regular macros. If no job is pending, the macro-program is preferably written to call an API-system function that will put the wordprocessor program 128 or other application program 130 to sleep for a short time. Prototypes that have been built indicate that a sleep-time of one hundred milliseconds produces good results.
- DLLs Dynamic Link Libraries
- the job queue 132 is checked again. Note that it is not a requirement for the word processing program to be "put to sleep,” however this sleep period reduces network traffic and improves performance in the aggregate.
- SRVANY.EXE a utility that ships with the NT Resource Kit from Microsoft.
- This macro uses a COM object (Hotworker. Cluster) to determine if there is work to be done. If there is work, the DraftHot function is called, otherwise, this macro goes to sleep via the COM object (Hotworker. Cluster) to determine if there is work to be done. If there is work, the DraftHot function is called, otherwise, this macro goes to sleep via the
- Win32 api call "sleep.” During this time, essentially no CPU time is used.
- PhysicalPath ActiveDocument.MailMerge.DataSource.DataFields("PhysicalPath_")
- the job queue 132 can be written as a Visual Basic program, e.g., as list in Table II. Jobs are posted into a pending list or queue. Any wordprocessor program 128 or other application program 130 that is ready to do a job looks at the pending list. If an appropriate job is recognized, its entry in the job queue 132 is moved into an "in-progress" list. The wordprocessor program 128 or other application program 130 then pulls informational pieces it needs from a computer data storage disk 134 and a database 136. The information pieces can also be retrieved in an alternative manner, for example, from a memory location. The job is then executed, and the results in the form of an electronic document are deposited in the disk 134. The Windows-NT 124 then forwards such document to the user 106-112 or the user's designated recipients. When the job is finished, its in-progress entry in the job queue 132 is moved into a "done" list.
- Private strMasterDoc As Variant Private strSQL As Variant Private strFieldl As Variant Private strField2 As Variant Private strField3 As Variant Private strField4 As Variant Private strDSN As Variant Private strMacro As Variant Private strSubmitTime As Variant Private strResultDoc As Variant Private strResultDocID As Variant Private strWordVisible As Variant Private strMyname As String Private strWorkpath As String
- HotqueuePath " ⁇ hot ⁇ hotc ⁇ temp ⁇ q ⁇ "
- HotqueueDrafting " ⁇ hot ⁇ hotc ⁇ temp ⁇ d ⁇ "
- HotqueuePathFinished " ⁇ hot ⁇ hotc ⁇ temp ⁇ f ⁇ "
- Input #1 strMacroTemplate, strMacroName, strMasterDoc, strResultDoc, strResultDocID, strDSN, strSQL, strlnvokeWord, strDelimitedData, strHeader, strRecord, strWorkpath, strWordVisible, strFieldl, strField2, strField3, strField4
- ReadFromCluster "Error number: “ & Err.Number & ", error description: “ & Err.Description & ", error source: “ & Err. Source & ".”
- HotqueueDrafting " ⁇ hot ⁇ hotc ⁇ temp ⁇ d ⁇ "
- HotqueuePathFinished " ⁇ hot ⁇ hotc ⁇ temp ⁇ f ⁇ "
- SubmitTime strSubmitTime End Property Public Property Get ResultDoc() As String
- a "writer” code is invoked from ASP 120, in response to users 106-112, and puts new jobs to do in the job queue 132.
- a typical source code for this is listed in Table III.
- SubmitToCluster "Error number: " & Err.Number & ", error description: “ & Err.Description & ", error source: “ & Err.Source & “.” GoTo Exit SubmitToCluster
- a system bus 138 in webserver 102 allows expansion through a local area network (LAN) network interface controller (NIC) 140.
- LAN local area network
- NIC network interface controller
- LAN local area network
- Such LAN 142 allows one or more modular expansion units 114 and 116 to be added. The advantage of this is that no extra capacity beyond that which is really necessary must be purchased and installed.
- Each of the modular expansion units 114 and 116 will access the job queue 132 and look for work to do.
- Each of the modular expansion units 114 and 116 will pickup metadata and deposit their work products from and to the database 136 and the disk 134.
- the LAN 142 is preferably private and inaccessible to the Internet 104 and any of the users 106-112. Standard ETHERNET components can be used to implement LAN 142, NIC 140, and each of a pair of NIC's 144 and 146.
- the modular expansion units 114 and 116 replicate a part of the webserver 102 and provide parallel document-creation processing.
- Each has a Windows-NT operating system 148 and 150.
- a pair of SRVANY utilities 152 and 154 allow a corresponding set of MS-Word wordprocessor programs 156 and 158 to run as Windows-NT services in parallel with the MSWord 128.
- Other applications can also be run in parallel as Windows-NT services, and these are represented in Fig. 1 as other applications 160 and 162.
- the webserver 102 has been described herein as being completely implemented with various products marketed by Microsoft Corporation, but other similar products from competing suppliers can be used just as well.
- the webserver 122 may be from Netscape or Apache
- the word processor 128 may be from Corel or Lotus
- the operating system 124 may even be Linux rather than Windows NT server.
- only word processors designed for Linux, such as WordPerfect from Corel could be substituted for the word processor 128.
- the scripting engine ASP 120 may be from Allaire (Cold Fusion), or may be implemented with Java Server Pages, Java Servlets, Perl or Java, among others.
- the users 106-112 are greeted, checked, and screened by another website or portion of this website before being directed to the webserver 102.
- Such other website allows the users to find, explore, and subscribe to the document-creation services being offered.
- a document format is selected for use. Such document format will require the user to supply answers to various questions, including information that will be used to fill-in-the-blanks. The answers to the questions, the document-format selection, and the information to fill in the blanks will be transferred in metadata form to the website 102.
- Such metadata represents the specifics of a job that needs doing, e.g., a job order.
- the particulars of the job order are deposited in the database 136.
- a pointer to this job order and a code representing what kind of job it is are placed in the new job list in the job queue 132.
- a large selection of standardized "master documents" is stored in the disk 134 and for redundancy and speed, on the local disks of the slave Word machines 114 and 116.
- any of the MS-Word programs 128, 156, and 158, or any of the other applications 130, 160, and 162 "wake-up" from their periodic enforced sleep periods, they each independently check the new job list in the job queue 132 for work that needs doing. If a compatible job that needs doing exists, the application moves the pointer from the new job list to the in-progress list. The pointer data is used as an index to find all the metadata related to the new job that is stored in the database 136. An appropriate master document is fetched from the disk 134 or the local disks of the slave machines, if appropriate. The application then creates the purchased or free document, as many documents may be given away to the public, for the user 106-1 12 and parks it temporarily in the disk 134. From there it is transmitted to a web-address specified by the user 106-122 in the original job order.
- IIS Microsoft Internet Information Server
- Microsoft is an Internet file and application server included with the Microsoft Windows-NT Server operating system. According to Microsoft, IIS can be used alone as a webserver, or in conjunction with compatible technologies to set up Internet commerce, to access and manipulate data from a variety of data sources, and to build Web applications that take advantage of server script and component code to deliver client-server functionality. The latest information is available on Microsoft's IIS website. IIS provides security, networking, and administration functionality, and has built-in capabilities to help administer secure websites, and to develop and deploy server-intensive Web applications. IIS includes a Web-based administration tool that makes remote administration of webservers possible through use of a Web browser. Users thus have the ability to remotely manage their own sites, safe transmission of data is done with secure sockets layer (SSL).
- SSL secure sockets layer
- the IIS is tightly integrated with Windows-NT Server, and so it can utilize many of the management tools within Windows-NT Server to help administer the system, e.g.,
- IIS 4.0 User Manager for Domains, Performance Monitor, Network Monitor, Event Viewer, and Simple Network Management Protocol (SNMP).
- IIS 4.0 it is possible to create an unlimited number of websites on a single IP address, and to have different configuration information for each one. This has been challenging in the past, because each IP address could have only one domain name.
- the Internet Engineering Task Force's HTTP 1.1 allows multiple domain names on one IP-address by specifying the host header information that gets a user to the right website. IIS comes with the support necessary for those browsers to access sites.
- IIS 4.0 provides users the ability to manage how much network bandwidth is provided to each website. Such "bandwidth throttling" ensures enough bandwidth is made available to each of the sites on the machine.
- Sites that publish static HTML pages, e.g., ".htm" files can take full advantage of bandwidth throttling in IIS.
- the Windows-NT 4.0 Option Pack includes Microsoft Site Server Express, so site administrators can analyze server log files and produce reports that detail user behavior, analyzes site content and correct errors, and publishes webpages to local and remote servers.
- IIS and Windows-NT Server provide support for Secure Sockets Layer 3.0 (SSL), enabling information to be exchanged between clients and servers.
- SSL 3.0 provides a way for the server to verify who the client is through the use of digital certificates, without requiring a server logon.
- IIS issues and manages these certificates through Microsoft Certificate Server, and maps them to user accounts on a machine that gives the user the correct level of access to files and services.
- Windows-NT Server and IIS also support basic authentication, sending of unencrypted user names and passwords, Challenge/Response cryptographic authentication of passwords, and server-gated crypto 128-bit encryption for digital certificates used in transactions with banks and other financial institutions.
- Transaction support in Windows-NT Server and IIS is implemented through Microsoft Transaction Server (MTS) 2.0 and tracks the success or failure of complete system processes, such as ordering or accessing and manipulating data.
- MTS Microsoft Transaction Server
- Transaction Server handles the details of creating the defined transactions that occur within the page.
- Transaction components are activated when needed and deactivated when not in use to save system resources.
- MTS management is also controlled through the Microsoft Management Console.
- An OLE-type control enables developers to create Microsoft Visual Basic applications that will function as Windows-NT services. With the NTService control, users can install a service, log events, and respond to start, stop, pause, and continue events.
- the operating system interface for services requires a callback function and blocks the main thread of execution.
- Visual Basic 4.0 has neither threads nor callback functions, developers cannot call these application programming interfaces (APIs) directly.
- Visual Basic applications can rely on the SRVANY utility provided in the Windows-NT Resource Kit which allows any executable to be started by the system at boot time.
- the communication between SRVANY and the application is limited to standard window messages, so such solution is not very robust.
- SRVANY lacks support for the pause and continue functions.
- An NTService OLE control could alternatively be used to eliminate the need for a helper processes like SRVANY utility 126 by enabling Visual Basic applications to directly interface with the services' APIs.
- Such OLE control translates signals from the operating system into events that can be processed by a Visual Basic application. It also provides support for functions that services typically require, such as installation and event logging. Creating a service begins by dropping the NTService control on a form. Services typically do not have any user interface, but in Visual Basic the control needs a form to serve as a container. At a minimum, users will need to set some properties and implement the installation routine and handlers for the Start and Stop events.
- the NTService control must bridge the services' interfaces with the Visual Basic application model.
- services call the StartServiceCtrlDispatcher API, passing a callback function that is used by the service controller for service initialization.
- the control cannot call the dispatcher function in a method because this function blocks the caller until the service is stopped.
- the control creates a separate thread that is responsible for calling the dispatcher. This allows the primary thread used by Visual Basic to continue processing while the other thread is blocked by the service's dispatcher.
- the control's window is critical to the routing of messages from the service's dispatcher to the Visual Basic application. Because OLE control containers have some discretion as to when the control window is created, the control informs the container that the window must exist always. This is done by marking the control with the OLEMISC_SIMPLEFRAME attribute and enabling the simple frame interface in the control constructor.
- this type of service can be used to augment application servers. For example, if users need to capture a real-time data broadcast in a SQL database, the Windows-NT service support can be added to make the application easier to administer. Likewise, users could write Microsoft Exchange Server mailbox agents in a higher-level language, taking advantage of existing components, such as OLE Messaging, to simplify development.
- the NTService control lets developers create Visual Basic applications that install and run as Windows-NT services. These applications benefit from automatic startup, remote administration, and event logging.
- Active Server Pages is a programming environment for combining HTML, scripting, and components to create Internet applications that run on the server. If users are already creating websites that combine HTML, scripting, and some reusable components, users can use ASP to glue these items together. Users can create an HTML interface for the application by adding script commands to the HTML pages and users can encapsulate the business logic into reusable components. These components can be called from script or other components.
- ASP Microsoft Active Server Pages
- ASP pages are files that contain HTML tags, text, and script commands.
- ASP pages can call ActiveX components to perform tasks, such as connecting to a database or performing a business calculation.
- users can add interactive content to the webpages or build entire Web applications that use HTML pages as the interface to the customer.
- ASP When ASP is incorporated into a website, a user is allowed to bring up the website where a default page has the extension ".asp".
- the user's browser requests the ASP file from the webserver.
- a server-side script begins to run with ASP.
- the requested file is processed top-down by ASP, executing any script commands contained in the file.
- An HTML webpage is produced as a result and is sent to the user's browser. Because such script runs on the server, the webserver does all of the processing so standard HTML pages can be generated and sent to the browser.
- the webpages are limited only by what the webserver supports. Another benefit of having the script reside on the server is that the user cannot "view source” on the original script and code. Instead, the user sees only the generated HTML as well as non-HTML content, such as XML, on the pages that are being viewed.
- a document form When an end-user accesses a document on website 102, information needed by the document must be entered into a document form.
- a document form comprises a mix of HTML and ASP code.
- the ASP 120 processes the entered data and inserts it into a table in the database 136.
- These tables are specific to the documents, and include only the specific fields needed by the document for the information.
- a document generation process embodiment of the present invention can be initiated by dropping a queue file into a directory which is monitored by one of the wordprocessors 128, 156, 158, etc.
- the wordprocessor 128, for example, reads job queue 132 to determine which master document in disk 134 to use and where in database 136 the corresponding document data has been stored. It then opens a WORD-file for the master document that includes mail-merge fields for population with the document data. Wordprocessor 128 then opens a connection to a table in the document database 136, and gets the document data for merging into the document. As a last step, the document file is saved.
- Document generator embodiments of the present invention generally allow for rapid development and implementation of automated documents for the website 102.
- Such a wizard tool can minimize user exposure to programming or scripting languages through an easy-to-use web interface.
- Content programmers can create the necessary components for automating documents, database tables, and even HTML/ASP document forms without needing SQL, HTML, or ASP programming skills or experience. Such can also be used to generate any merge fields needed in the creation of the WORD-file.
- Software embodiments of the present invention can be implemented as ASP files made accessible to ASP 120.
- Each such ASP-file presents a screen or graphical user interface (GUI) to a user.
- GUI graphical user interface
- a default.asp allows a content programmer to select a document master for editing, or create a new document. If a new document is created, the computer host will verify that the name conforms to set-naming conventions and will copy question sets from existing document masters.
- the program verifies changes to the document master to ensure information has been entered correctly.
- the questions asked by the document are listed in this screen.
- a content programmer preferably can delete, create, or reorder the set-of-questions. Clicking on a question (in hypertext) preferably allows the content programmer to edit the details of the question. Options can include being able to generate the database table and basic WORD-template with merge fields, and the HTML/ASP document form.
- a questions.asp screen preferably allows a content programmer to view or edit question details.
- the content programmer sets the question name, text, type, and default value.
- a results.asp screen generates a database table, WORD-template, and HTML/ASP document form. It then displays the results.
- Fig. 2 is a flowchart for a default.asp embodiment of the present invention, and is referred to herein by the general reference numeral 200.
- a step 202 checks if a user has entered and a document has been selected.
- a subroutine 204 gets a list of document masters from document masters database table, displays a list of document masters on screen, displays a submit button, displays a "new document master name" input field, and displays a list of document masters for copying question sets. If user has selected a document master in a decision 206, a document master is set in a step 208. If a decision 210 detects a "copy question set" is selected, then a step 212 gets the document master name of the question set to copy.
- a decision 214 detects the user selected "Create New Document Master”
- a step 216 gets a new document master name.
- a decision 218 looks to see if a "copy question set” selected. If so, a step 220 gets the document master name of the question set to copy.
- a step 222 sets a new-document-master flag, and program control is redirected to document.asp program (Fig. 3).
- Fig. 3 is a flowchart for a document.asp embodiment of the present invention, and is referred to herein by the general reference numeral 300.
- a step 302 checks to see if a new-document-master flag is true. If so, a subroutine 304 sets the document master field default values. It checks the document master name. If the name already exists, control is redirected to default.asp 200 (Fig. 2). If the name does not conform to convention, again control is redirected to default.asp 200 (Fig. 2). Subroutine 304 inserts any new document master data into a document masters database table. If a copy-question-set is true, question-set-information is copied to a document master questions database table. It then selects the document master.
- a decision 306 looks to see if the existing document master has been selected. If so, a subroutine 308 retrieves document master information from document masters table, and then gets document master questions from the document master questions table. It displays (a) document master fields with document data, (b) an update information button, (c) a questions table with question links, (d) a new-question button, (e) a checkbox for each of "generate-database-table" and "HTML/ASP document form", and (f) a "submit-generate” button.
- a decision 310 checks to see if a "new-question” button has been pressed. If so, a step 312 sets a new-question flag.
- Program control is then redirected to question.asp (Fig. 4).
- a decision 314 looks if an "update-information" button has been pressed. If so, a subroutine 316 verifies form data. If such form data has problems, an error message is displayed. If the form data is OK, the program continues, e.g., to update document master data in a document masters table.
- a decision 318 looks if generate button pressed, redirect to results.asp (Fig. 5).
- Fig. 4 is a flowchart for a question.asp embodiment of the present invention, and is referred to herein by the general reference numeral 400.
- a decision 402 checks if a new-question flag has been set.
- a step 404 sets any default-question field values.
- a decision 406 checks if a question has been selected.
- a step 408 gets question data from a document-master questions table.
- a decision 410 checks if an "update-question" button has been pressed. If so, a step 412 updates or inserts question data into a document master questions table.
- a subroutine 414 displays the form, e.g., question fields with field name, question text, question type, question parameters, and default value. It also displays an "update-question" button.
- Fig. 5 is a flowchart for a first part of a results.asp embodiment of the present invention, and is referred to herein by the general reference numeral 500.
- a decision 502 checks if a generate database table button has been selected. If so, a step 504 gets a list of questions for document master from document master questions table.
- a subroutine 506 builds an SQL-type command line that will create a table. The command string start is built with a SQL create table command and a name table with document master name.
- a program loop iterates through a question list. For each question a field name is added to the SQL command to create a new column for the field. The question types are looked up.
- a database field type and length is fetched, and appended to the SQL command.
- the SQL command is closed. And the SQL command is executed to create the table.
- a decision 508 checks if the "generate HTML/asp document form" has been selected. If so, control passes to a generate HTML/ASP document program (Fig. 6). Otherwise, control returns.
- Fig. 6 is a flowchart for a second part of a results.asp embodiment of the present invention, and is referred to herein by the general reference numeral 600.
- a step 602 opens text to write named after a document master.
- a step 604 write file includes to text file.
- a subroutine 606 writes variable definitions. It gets a list of questions for document master from document master question table for each question. Then it writes a variable definition using field name.
- a step 608 writes a main subroutine to text file, this subroutine controls the overall flow of the code.
- a step 610 writes a submit_doc_values subroutine that will insert any document form values into the database. It then writes commands to update a documents table which tracks the document created by each user.
- Step 610 gets a list of questions for the document master from document master question table. For each question, a variable cleanup routine is run which removes illegal input, e.g., input that is too long is truncated. Also for each question, the variable is added to an SQL statement that inserts data into a document-specific table.
- a step 612 writes a get_doc_values subroutine that retrieves and populates form fields with past values. Such is used for a "reused past answer set" feature. Commands are written that check if a document ID was passed to the document form. If not, the rest of subroutine 612 is skipped.
- Commands are then written automatically to retrieve past answers using document ID from document specific table.
- Document values are assigned to the form- variables.
- a list of questions for document master is retrieved from the document master question table. Then for each question, a document value assignment is written to the form- variable.
- a get-default-values subroutine 614 writes a routine that assigns document variables default values if no values have been assigned.
- a list of questions is retrieved for the document master from a document master question table along with any default values. For each question, a default value assignment is written to form the variable.
- a write HTML form code subroutine 616 gets document master information from document masters table. It writes HTML header information including title and keywords. Any document description and instructions are written. Sponsorship banners from documents under license and companies table are retrieved for use. The HTML-code for including the sponsorship banners is written. It writes the HTML for the document form. Fig. 7 details this last step more fully. An HTML phrase for a "look and feel" template is also automatically inserted into the HTML phrase
- Fig. 7 is a flowchart for the "writes the HTML for the document form" part of the results.asp 600 (Fig. 6).
- a step 702 creates a table, and gets a list of questions for document master from document master question table. For each question, it creates a row, writes question text, and writes an input field HTML. An end table mark is made. A check is made to see if the document master has a disclaimer statement, and if not, writes the necessary HTML to include an appropriate legal disclaimer. The last part of subroutine 702 writes the HTML-code needed to support a "submit and rest" button.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Strategic Management (AREA)
- General Engineering & Computer Science (AREA)
- Computational Linguistics (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Artificial Intelligence (AREA)
- Health & Medical Sciences (AREA)
- Entrepreneurship & Innovation (AREA)
- Human Resources & Organizations (AREA)
- Data Mining & Analysis (AREA)
- Economics (AREA)
- Marketing (AREA)
- Operations Research (AREA)
- Quality & Reliability (AREA)
- Tourism & Hospitality (AREA)
- General Business, Economics & Management (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Document Processing Apparatus (AREA)
Abstract
Description
Claims
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US50546700A | 2000-02-16 | 2000-02-16 | |
US505467 | 2000-02-16 | ||
PCT/US2001/004872 WO2001061466A1 (en) | 2000-02-16 | 2001-02-16 | Document creation and scheduling of applications' jobs |
Publications (2)
Publication Number | Publication Date |
---|---|
EP1257902A1 EP1257902A1 (en) | 2002-11-20 |
EP1257902A4 true EP1257902A4 (en) | 2006-04-19 |
Family
ID=24010423
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
EP01910747A Withdrawn EP1257902A4 (en) | 2000-02-16 | 2001-02-16 | Document creation and scheduling of applications' jobs |
Country Status (5)
Country | Link |
---|---|
EP (1) | EP1257902A4 (en) |
AR (1) | AR030052A1 (en) |
AU (1) | AU2001238321A1 (en) |
TW (1) | TW487879B (en) |
WO (1) | WO2001061466A1 (en) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE10254055B4 (en) * | 2002-11-19 | 2006-10-26 | Deutsche Post Ag | System and method for the automated generation of printable data files |
US7386539B2 (en) | 2002-11-29 | 2008-06-10 | Taiwan Semiconductor Manufacturing Company, Ltd. | System, method, and user interface providing customized document portfolio management |
US7839419B2 (en) | 2003-10-23 | 2010-11-23 | Microsoft Corporation | Compositing desktop window manager |
US7817163B2 (en) | 2003-10-23 | 2010-10-19 | Microsoft Corporation | Dynamic window anatomy |
US8549170B2 (en) | 2003-12-19 | 2013-10-01 | Nvidia Corporation | Retransmission system and method for a transport offload engine |
CN112651711B (en) * | 2020-12-22 | 2023-08-22 | 北京市市政工程设计研究总院有限公司 | Construction system of collaborative design management platform based on XDB file under BS architecture |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0784394A1 (en) * | 1995-12-29 | 1997-07-16 | AT&T Corp. | Personalized greeting card system |
US5835712A (en) * | 1996-05-03 | 1998-11-10 | Webmate Technologies, Inc. | Client-server system using embedded hypertext tags for application and database development |
EP0889421A1 (en) * | 1997-06-12 | 1999-01-07 | Yahoo, Inc. | Dynamic page generator |
US5987480A (en) * | 1996-07-25 | 1999-11-16 | Donohue; Michael | Method and system for delivering documents customized for a particular user over the internet using imbedded dynamic content |
WO2000002149A1 (en) * | 1998-07-07 | 2000-01-13 | Signature-Mail.Com, L.L.C. | System and method for personalizing electronic mail messages |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5862325A (en) * | 1996-02-29 | 1999-01-19 | Intermind Corporation | Computer-based communication system and method using metadata defining a control structure |
US5819271A (en) * | 1996-06-04 | 1998-10-06 | Multex Systems, Inc. | Corporate information communication and delivery system and method including entitlable hypertext links |
US6026433A (en) * | 1997-03-17 | 2000-02-15 | Silicon Graphics, Inc. | Method of creating and editing a web site in a client-server environment using customizable web site templates |
US6023724A (en) * | 1997-09-26 | 2000-02-08 | 3Com Corporation | Apparatus and methods for use therein for an ISDN LAN modem that displays fault information to local hosts through interception of host DNS request messages |
US5940843A (en) * | 1997-10-08 | 1999-08-17 | Multex Systems, Inc. | Information delivery system and method including restriction processing |
US5986652A (en) * | 1997-10-21 | 1999-11-16 | International Business Machines Corporation | Method for editing an object wherein steps for creating the object are preserved |
-
2001
- 2001-02-16 AU AU2001238321A patent/AU2001238321A1/en not_active Abandoned
- 2001-02-16 EP EP01910747A patent/EP1257902A4/en not_active Withdrawn
- 2001-02-16 TW TW090103594A patent/TW487879B/en not_active IP Right Cessation
- 2001-02-16 WO PCT/US2001/004872 patent/WO2001061466A1/en not_active Application Discontinuation
- 2001-02-19 AR ARP010100736A patent/AR030052A1/en unknown
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0784394A1 (en) * | 1995-12-29 | 1997-07-16 | AT&T Corp. | Personalized greeting card system |
US5835712A (en) * | 1996-05-03 | 1998-11-10 | Webmate Technologies, Inc. | Client-server system using embedded hypertext tags for application and database development |
US5987480A (en) * | 1996-07-25 | 1999-11-16 | Donohue; Michael | Method and system for delivering documents customized for a particular user over the internet using imbedded dynamic content |
EP0889421A1 (en) * | 1997-06-12 | 1999-01-07 | Yahoo, Inc. | Dynamic page generator |
WO2000002149A1 (en) * | 1998-07-07 | 2000-01-13 | Signature-Mail.Com, L.L.C. | System and method for personalizing electronic mail messages |
Non-Patent Citations (4)
Title |
---|
"APACHEWEEK: Using Server Side Includes", N.A., 9 August 1996 (1996-08-09), XP002254375 * |
"NCSA httpd server side includes", N.A., 13 June 1995 (1995-06-13), XP002956744 * |
KRISTENSEN A: "Template resolution in XML/HTML", COMPUTER NETWORKS AND ISDN SYSTEMS, NORTH HOLLAND PUBLISHING. AMSTERDAM, NL, vol. 30, no. 1-7, April 1998 (1998-04-01), pages 239 - 249, XP004121423, ISSN: 0169-7552 * |
See also references of WO0161466A1 * |
Also Published As
Publication number | Publication date |
---|---|
AU2001238321A1 (en) | 2001-08-27 |
AR030052A1 (en) | 2003-08-13 |
TW487879B (en) | 2002-05-21 |
EP1257902A1 (en) | 2002-11-20 |
WO2001061466A1 (en) | 2001-08-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5894554A (en) | System for managing dynamic web page generation requests by intercepting request at web server and routing to page server thereby releasing web server to process other requests | |
US8024404B2 (en) | Method and apparatus for designating endpoints in a collaborative computer system to facilitate maintaining data consistency | |
TW498282B (en) | System, method, and article of manufacture for a load balancer in environment services patterns | |
TW312879B (en) | ||
US20050223392A1 (en) | Method and system for integration of software applications | |
US7805523B2 (en) | Method and apparatus for partial updating of client interfaces | |
US6594675B1 (en) | Method, system for using file name to access application program where a logical file system processes pathname to determine whether the request is a file on storage device or operation for application program | |
US6948120B1 (en) | Computer-implemented system and method for hosting design-time controls | |
WO2009118503A1 (en) | Web content management | |
GB2377518A (en) | Client software enabling a client to run a network based application | |
Serain et al. | Middleware | |
Goecke | The evolution of online booking systems | |
US20040093378A1 (en) | Internet document creation system | |
Dreyfus | The second wave. Netscape on usability in the services-based Internet | |
US9129285B2 (en) | Previewing in live electronic commerce environment | |
WO2001061466A1 (en) | Document creation and scheduling of applications' jobs | |
Sanderson | Programming Google App Engine with Java: Build & Run Scalable Java Applications on Google's Infrastructure | |
Neupane | Developing a static website and deploying it to Heroku | |
Loubser et al. | Repositories and Git | |
Freeman et al. | The MVC Pattern, Projects, and Conventions | |
Sári et al. | 3rd Semester Project | |
Beca | Building collaborative problem-solving environments as shared places | |
Almond et al. | Linux Client Migration Cookbook | |
Northwood et al. | Designing Systems | |
Lewis | Why Linux works for libraries: I started testing Linux as I got ready to migrate my library's Web server from windows to Linux. Now I won't give it up |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PUAI | Public reference made under article 153(3) epc to a published international application that has entered the european phase |
Free format text: ORIGINAL CODE: 0009012 |
|
17P | Request for examination filed |
Effective date: 20020916 |
|
AK | Designated contracting states |
Kind code of ref document: A1 Designated state(s): AT BE CH CY DE DK ES FI FR GB GR IE IT LI LU MC NL PT SE TR |
|
AX | Request for extension of the european patent |
Free format text: AL PAYMENT 20020916;LT PAYMENT 20020916;LV PAYMENT 20020916;MK PAYMENT 20020916;RO PAYMENT 20020916;SI PAYMENT 20020916 |
|
RIN1 | Information on inventor provided before grant (corrected) |
Inventor name: WARNOCK, KEVIN, L. Inventor name: WU, JOHN, SHIH-JEN |
|
RIN1 | Information on inventor provided before grant (corrected) |
Inventor name: WU, JOHN, SHIH-JEN Inventor name: WARNOCK, KEVIN, L. |
|
A4 | Supplementary search report drawn up and despatched |
Effective date: 20060303 |
|
RIC1 | Information provided on ipc code assigned before grant |
Ipc: G06F 17/00 20060101AFI20060227BHEP |
|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: THE APPLICATION HAS BEEN WITHDRAWN |
|
18W | Application withdrawn |
Effective date: 20060420 |
|
RIN1 | Information on inventor provided before grant (corrected) |
Inventor name: WARNOCK, KEVIN, L. Inventor name: WU, JOHN, SHIH-JEN |