US20220245336A1 - Automatic template generation with inbuilt template logic interface - Google Patents
Automatic template generation with inbuilt template logic interface Download PDFInfo
- Publication number
- US20220245336A1 US20220245336A1 US17/727,710 US202217727710A US2022245336A1 US 20220245336 A1 US20220245336 A1 US 20220245336A1 US 202217727710 A US202217727710 A US 202217727710A US 2022245336 A1 US2022245336 A1 US 2022245336A1
- Authority
- US
- United States
- Prior art keywords
- logic
- template
- document
- interface
- tagged data
- 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.)
- Pending
Links
- 230000010354 integration Effects 0.000 claims abstract description 21
- 238000000034 method Methods 0.000 claims description 26
- 230000008569 process Effects 0.000 description 12
- 238000004590 computer program Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 6
- 238000004891 communication Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 5
- 238000007726 management method Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000008901 benefit Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000013479 data entry Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 239000000126 substance Substances 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Images
Classifications
-
- 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
-
- 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/169—Annotation, e.g. comment data or footnotes
-
- 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
- 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
- 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
- G06Q30/00—Commerce
- G06Q30/01—Customer relationship services
Definitions
- This disclosure relates generally to automatic template generation and an automatic template generation system and interface.
- Templates can be used to generate documents with a standardized format.
- Manual templates can function and be stored similarly to a partially completed shell of the document to be created, containing standardized document content and one or more incomplete sections for customized content specific to the generated document.
- manual templates still require significant work to generate a final document using the template.
- an automatic template can be implemented to generate standardized documents without requiring manual user input to generate the document. Instead, an automatic template automatically generates documents using data retrieved from a database (or other similar data store) to automatically customize the document for a particular use case. This provides an immense usability benefit to the end users of the automatic template, further speeding the process of generating standardized documents.
- the existing process of setting up an automatic template can involve manually coding template logic within a document editor program separate from the automatic template system and/or switching between multiple applications to edit document content and template logic.
- Many previous systems for generating an automatic template rely on users having coding and/or scripting knowledge and specialized knowledge of the specific automatic template.
- An automatic template system can allow users to create automatic templates and use the automatic templates to generate documents using data from a linked customer relationship management (CRM) system (or other database).
- the automatic template system can provide a template creation interface allowing a user to generate an automatic template (including setting up template logic).
- the template creation interface can include a CRM integration area with a set of tagged data fields representing relevant data from a linked CRM database and a document editing area allowing a user to edit document content and insert merge fields linked to tagged data fields.
- the document editing area can allow a user to seamlessly expand an inline logic interface for adding and modifying template logic.
- the inline logic interface does not require scripting, but instead allows a user to set up conditions for displaying conditional document sections based on a logic trigger field linked to a tagged data field of the CRM database.
- FIG. 1 is a block diagram of a system environment in which an automatic template system operates, according to one embodiment.
- FIG. 2 is a block diagram of a template creation module, according to one embodiment.
- FIG. 3 is a block diagram illustrating a CRM database and a template, according to one embodiment.
- FIG. 4A illustrates a user interface for editing an automatic template, according to one embodiment.
- FIG. 4B illustrates an alternative user interface for editing an automatic template, according to one embodiment.
- FIG. 5A illustrates a user interface for editing template logic in an automatic template, according to one embodiment.
- FIG. 5B illustrates an alternative user interface for editing template logic in an automatic template, according to one embodiment.
- FIG. 6 is a flowchart illustrating a process for generating an automatic template and template logic, according to one embodiment.
- templates can be used to simplify the generation of documents with a standardized format.
- Traditional manual templates can function similarly to a partially completed shell of the document to be created, containing standardized document content and a set of fields or blank spaces for customized data to be inserted into.
- a user can fill in each field with an appropriate value as needed using a standard word processing application.
- the user can look up correct information for each field in a database or other data store and manually enter that information into the appropriate field of the manual template.
- an automatic template can be used to generate standardized documents without requiring the user to manually input data for each of the template's fields. Instead, an automatic template generates a document based on the document content included in the template and data retrieved from a database (or other similar data store) used to fill the fields of the template.
- an “automatic template” is a template which can generate a document based on document content of the automatic template and data retrieved from a database (or other similar data store), for instance without requiring manual entry of the data by a user.
- a user of an automatic template system can select an automatic template and an entity with corresponding data in a database (for example, a specific user profile, or client data entry) and the automatic template system will retrieve data from the database to fill fields and generate the desired document using the automatic template.
- a database for example, a specific user profile, or client data entry
- FIG. 1 is a block diagram of a system environment in which an automatic template system operates, according to one embodiment.
- the system environment 100 shown by FIG. 1 comprises an automatic template system 110 including a template creation module 120 and a document generation module 130 , a CRM database 150 , one or more user devices 140 , and a network 160 .
- an automatic template system 110 including a template creation module 120 and a document generation module 130 , a CRM database 150 , one or more user devices 140 , and a network 160 .
- different and/or additional components may be included in the system environment 100 .
- the automatic template system 110 can allow users to create automatic templates and employ one or more automatic templates to generate documents based on information from the CRM database 150 (or another database, depending on the embodiment).
- the automatic template system 110 can access information stored in the CRM database 150 through an API (application programming interface) or database query.
- Automatic templates of the automatic template system 110 can include document content common to documents generated using the template (for example, formatted document text, images, or embedded video), a set of merge fields to be filled with data specific to each document (for example, with data retrieved from the CRM database 150 ), and, in some cases, template logic controlling whether a certain conditional document section and/or fields will appear in a given document generated with the automatic template.
- the template logic included in automatic templates of the automatic template system 110 can comprise one or more “logic conditions” which, if satisfied, affect the inclusion of an associated conditional document section in the generated document.
- a conditional document section can include conditional document text and/or merge fields which will be included in a generated document if the associated logic condition is satisfied.
- an automatic template can be used to generate a contract for a service agreement, with merge fields related to the known information about the client and the service purchase, and with template logic to include different clauses depending on the specific service being purchased.
- the template creation module 120 can allow users to generate automatic templates through an interface allowing a user to add document content and template logic to the automatic template.
- the template creation module 120 provides a web-based application user interface (UI) allowing the user to enter document content and configure template logic in an integrated UI.
- UI application user interface
- the template creation module can integrate with the CRM database 150 or other outside source of information. The template creation module 120 will be discussed further in relation to FIG. 2 .
- the document generation module 130 allows users to generate documents using one or more automatic templates (such as the templates generated by the template creation module 120 ).
- the document generation module 130 can generate a document based on a selection of a relevant entity associated with data in the CRM database 150 .
- a document can be generated based on an automatic template and the selection of a certain account, user profile, or potential transaction with corresponding information stored in the CRM database 150 .
- the document generation module 130 is a part of the automatic template system 110 , but the document generation system 130 can be a standalone system or otherwise on a separate server with access to automatic templates generated by the automatic template system 110 .
- the user devices 140 are one or more computing devices capable of receiving user input as well as transmitting and/or receiving data via the network 160 .
- a user device 140 can be a desktop or a laptop computer, a smartphone, tablet, or another suitable device.
- a user device 140 is configured to communicate via the network 160 .
- a user device 140 executes an application allowing a user of the user device 140 to interact with the automatic template system 110 .
- a user device 140 can execute a browser application to enable interaction between the user device 140 and the automatic template system 110 via the network 160 .
- the CRM database 150 is a database or set of databases containing information about a set of entities grouped into one or more types, where the CRM database 150 contains similar data about entities of the same types.
- each entity type is associated with a set of data fields (for example, based on the specific schema of the CRM database 150 ) in which information about that entity is stored.
- the CRM database 150 can contain information about a set of users associated with an entity type of “user profile” or “employee” and data fields such as “name” and “street address.” Another embodiment of a CRM database 150 can contain a “transaction” entity type with data fields such as “quantity” and “total cost.”
- an automatic template system 110 can interface with other similar databases in place of or in addition to the CRM database 150 .
- the automatic template system 110 can interface with and retrieve data from a HRM (human resources management) database, an ERP (enterprise resource planning) database, or a custom database or data store accessible through an API.
- HRM human resources management
- ERP enterprise resource planning
- the network 160 may comprise any combination of local area and/or wide area networks, using both wired and/or wireless communication systems.
- the network 160 uses standard communications technologies and/or protocols.
- the network 160 includes communication links using technologies such as Ethernet, 802.11, worldwide interoperability for microwave access (WiMAX), 3G, 4G, code division multiple access (CDMA), digital subscriber line (DSL), and the like.
- Data exchanged over the network 160 may be represented using any suitable format, such as hypertext markup language (HTML) or extensible markup language (XML).
- HTML hypertext markup language
- XML extensible markup language
- all or some of the communication links of the network 160 may be encrypted using any suitable technique or techniques.
- FIG. 2 is a block diagram of a template creation module, according to one embodiment.
- the environment 200 of FIG. 2 shows the template creation module 120 including a user interface module 210 in communication with the user device 140 , a CRM integration module 220 linked to the CRM database 150 , and a logic generation module 230 .
- different and/or additional modules may be included in the template creation module 120 .
- Conventional components such as network interfaces, security functions, load balancers, failover servers, management and network operations consoles, and the like are not shown so as to not obscure the details of the system architecture.
- the user interface module 210 can generate a user interface for the user to interact with to generate an automatic template (such as via a user device 140 ).
- the user interface module can receive user instructions from a web-based application with integrated document content editing and template logic generation functions.
- the user interface allows a user to enter text into the template and insert corresponding template logic controlling the conditions in which the text will be visible.
- the user interface can allow the user to additionally add other features to an automatic template, such as an electronic signing field.
- the user interface module 210 can determine a set of tagged data fields associated with an entity type of the CRM database 150 and make those available for inclusion in the automatic template through the interface of the user interface module 210 .
- the tagged data fields and logic conditions function using “tags” inserted into the document content of the automatic template that serve as placeholders for corresponding data from the CRM database 150 , which will be inserted into the generated document.
- Template logic can comprise a set of logic conditions each linked to one or more data fields of the CRM database 150 (herein, a “logic trigger field”).
- a logic condition can be satisfied based on the value of the associated data field for the generated document matching or having a target relationship to a value specified in the logic condition. For example, a logic condition can be satisfied when the associated logic trigger field is equal to, greater than, less than, within a range of, or of another similar relationship to a given value as defined by the logic condition.
- logic conditions can rely on a corresponding logic trigger field existing, multiple logic conditions, or based on other logic conditions not being met.
- the logic generation interface is inline within the document content. The user interface is described more in relation to FIGS. 4A-5B .
- the CRM integration module 220 can analyze the structure of the CRM database 150 to determine a set data fields for potential inclusion in an automatic template.
- the CRM integration module 220 may search for and label data fields of the CRM database 150 as tagged data fields available for integration into an automatic template, for instance using document text entered by a user as a query term or keyword.
- the CRM integration module 220 can determine tagged data fields based on the structure of the CRM database 150 (for example, using the columns of a table or different data fields of a schema of the CRM database 150 ).
- the CRM integration module 220 can determine a set of tagged data fields for the user interface module 210 and the logic generation module 230 to use.
- the CRM integration module 220 can generate a set of tagged data fields from the CRM database 150 based on the creation of a new automatic template or based on the selection of an entity type for the automatic template.
- the logic generation module 230 generates a final automatic template based on the document content and the selected template logic input through the user interface module.
- An automatic template can be stored in a format allowing the generation of a document based on one or more selected entities from the CRM database 150 .
- FIG. 3 is a block diagram illustrating a CRM database and a template, according to one embodiment.
- the environment 300 of FIG. 3 includes the CRM database 150 with a set of entities 310 each with a tagged data field 320 A and 320 B and the automatic template 330 with a merge field 340 linked to tagged data field 320 A and a logic trigger field 350 linked to tagged data field 320 B.
- the CRM database 150 stores information used to generate documents from an automatic template such as the automatic template 330 .
- data stored in the CRM database 150 is organized into a plurality of entities 310 each containing the data fields identified by the CRM integration module 220 (in the embodiment of FIG. 3 , the tagged data fields 320 ).
- an entity 310 can represent a user profile, employee profile, or transaction information, as described above.
- Each tagged data field 320 of an entity 310 can label a specific type of data known about the entity 310 .
- the name, address, account number, service purchased, or quantity can be types of data associated with a tagged data field 320 .
- the specific tagged data fields 320 will depend on the implementation and the information contained in the CRM database 150 .
- the automatic template 330 can include one or more references to tagged data fields 320 of the CRM database 150 which can be directly included in the document content or compared to logic conditions to determine if a conditional document section is included in a generated document.
- Each merge field 340 of the automatic template 330 represents a point in the document content of the automatic template 330 where data or a value of a tagged data field 320 A is inserted into the document content during the generation of a document.
- the automatic template 330 has a merge field 340 associated with the tagged data field 320 A.
- the inclusion of a data value from a merge field 340 into the document can be direct or can involve formatting or otherwise manipulating the value of the tagged data field 320 , for example by rounding numbers, adding dollar signs or punctuation, or adjusting capitalization.
- a logic trigger field such as the logic trigger field 350 can be used as part of the template logic to determine if a conditional document section will be included in a generated document based on the value of the corresponding tagged data field 320 B.
- FIGS. 4A-5B illustrate example user interfaces for interacting with the template creation module 120 of the automatic template system 110 , according to some embodiments.
- the user interface module 210 can provide a user interface in any suitable manner, for example, the user interface module 210 can provide a web-based user interface through a website accessible to one or more user devices 140 over the network 160 .
- FIG. 4A illustrates a user interface for editing an automatic template, according to one embodiment.
- the template creation interface 400 of FIG. 4A includes a CRM integration area 410 including a series of tagged data fields 415 and a document editing area 420 with document content including a merge field 430 , a conditional logic button 440 , and a user selection 445 .
- the example automatic template illustrated in FIG. 4A is a template for generating a sales agreement, although the template creation interface 400 can be used to generate templates for other purposes, as discussed above.
- the CRM integration area 410 allows a user of the template creation interface 400 to view available tagged data fields 415 that could potentially be included in the generated automatic template. As discussed above, the specific tagged data fields 415 available depend on the type of template being generated and the available data in the CRM database 150 . In some embodiments, the CRM integration area 410 includes other options for fields that could be inserted into an automatic template not based on data from the CRM database 150 , such as a current date field. Similarly, the automatic template system can include one or more fields which can be populated after the document is generated, for example a field for an e-signature or a date signed field. In the embodiment of FIG. 4A , the CRM integration area 410 is designed for a drag and drop interface to insert the tagged data fields 415 as merge fields 430 or logic trigger fields, although other embodiments can use a menu or other selection process to access the tagged data fields 415 .
- the document editing area 420 allows a user to enter, edit, and delete the document content, template logic, and conditional document text of an automatic template.
- the document editing area 420 can provide text editing and/or formatting features for entering and manipulating document content (for example, font size, line spacing, etc.).
- the document editing area 420 allows a user to insert merge fields, such as the merge field 430 , into an automatic template being edited.
- merge fields can be inserted into an automatic template in any suitable way, such as with a drag and drop interface from the CRM integration area 410 into the document editing area 420 or through a selection from the menu.
- conditional logic button 440 allows a user to insert and/or change template logic using an inline logic interface within the document editing area 420 .
- the conditional logic button 440 and/or the interface for editing template logic can be contextually triggered, for example the conditional logic button 440 can appear near the location of a user's text cursor (caret) or when a user makes a selection of certain document content, such as the user selection 445 .
- the conditional logic button can insert template logic for currently selected text or open a logic interface for editing template logic.
- the user interface for adding or modifying template logic will be discussed further in relation to FIGS. 5A and 5B .
- FIG. 4B illustrates an alternative user interface for editing an automatic template, according to one embodiment.
- the template creation interface 450 includes a CRM integration area 410 , tagged data field 415 , document editing area 420 , and merge field 430 as described above as well as the other field 460 .
- the other field 460 is a field which can be populated after the document is generated as described above.
- FIG. 5A illustrates a user interface for editing template logic in an automatic template, according to one embodiment.
- the template creation interface 500 of FIG. 5A is an additional view of the template creation interface 400 of FIG. 4A .
- the template creation interface 500 includes a CRM integration area 410 including a series of tagged data fields 415 and a document editing area 420 with document content including a merge field 430 and an inline logic interface 510 .
- the inline logic interface 510 includes a logic condition 520 , a logic trigger field 525 , a conditional document section 530 , and an alternative conditional document section 535 .
- the example automatic template illustrated in FIG. 5A is for generating a sales agreement, although the template creation interface 500 can be used to generate templates for other purposes, as discussed above.
- the inline logic interface 510 when a user selects the conditional logic button 440 shown in FIG. 4A (or otherwise initiates editing template logic) the inline logic interface 510 is shown within the document editing area 420 .
- the location of the inline logic interface 510 within the document content is based on the location of the user's text cursor, the user selection 445 , or other selection by the user.
- the inline logic interface 510 allows the user to set up one or more logic rules or other template logic for an automatic template.
- the inline logic interface 510 can be displayed inline with the document content of the document editing area 420 appearing in between sections of the document content where document content corresponding to the logic rule will be inserted.
- Each logic rule of an automatic template can comprise a logic condition 520 which can be compared to the value retrieved of a logic trigger field 525 to determine if (or in what form) a conditional document section 530 appears in a given document generated using the automatic template.
- logic conditions 520 include a value (or range) which the value of the logic trigger field 525 will be compared against using a suitable operation such as equality, greater than, or less than operations.
- Other implementations of a logic condition 520 can rely on other data about the logic trigger field, for example being satisfied if the data associated with the logic trigger field 522 exists in the CRM database 150 .
- the value associated with a logic condition 520 can be a static value or can be dynamic based on, for example, a tagged data field 415 (such as in a logic rule comparing the value of two tagged data fields).
- the logic trigger field 525 can be associated with a tagged data field 415 of the CRM database 150 .
- the appropriate data from the tagged data field 415 associated with the logic trigger field 525 will be retrieved and compared to the logic condition 520 of the logic rule.
- logic trigger fields 525 can be inserted into an automatic template in any suitable way, such as with a drag and drop interface from the CRM integration area 410 into the inline logic interface 510 or through a selection from a menu.
- a logic trigger field 525 can be filled using any suitable data field (not only a tagged data field 415 associated with the CRM database 150 , for example a current date logic trigger field 525 in a logic rule to insert a holiday greeting at the correct time of year.
- the conditional document section 530 is a section of document content included in a generated document if the logic condition 520 is satisfied.
- the conditional document section 530 can include any features available to other document content not associated with a logic rule, such as merge fields 430 and formatting. As show in FIG. 5A the conditional document section 530 is contiguous, but other implementations include non-contiguous conditional document sections 530 (for example, in the case of a logic rule inserting an optional warning at the top of each page of a generated document).
- a logic rule can be associated with multiple logic conditions 520 , each with their own logic trigger field 525 and conditional document section 530 , where only one conditional document section 530 (if any) will be included in a generated document based on which of the logic conditions 520 are satisfied.
- the logic conditions 520 can be organized in an order or hierarchy and the first rule in the order/highest logic condition 520 in the hierarchy that is satisfied controls which conditional document section 530 is included in a given generated document.
- a logic rule can be associated with an alternative conditional document section 535 which is included in a generated document if no logic condition 520 associated with the logic rule is satisfied.
- the inclusion of an alternative conditional document section 525 is optional and a logic rule may result in nothing being included in a generated document if the logic condition 520 isn't satisfied, according to some embodiments.
- FIG. 5B illustrates an alternative user interface for editing template logic in an automatic template, according to one embodiment.
- the template creation interface 550 includes a CRM integration area 410 , document editing area 420 , inline logic interface 510 , logic trigger field 525 , and conditional document section 530 as described above.
- FIG. 6 is a flowchart illustrating a process for generating an automatic template and template logic, according to one embodiment.
- the process 600 begins when the automatic template system retrieves 610 information about data fields of a linked CRM database. For example, an automatic template system can determine a set of tagged data fields based on retrieved information from a CRM database. Based on the retrieved CRM database information, the automatic template system can generate 620 a user interface for creating or modifying an automatic template, where the user interface includes the CRM data fields and document content for the automatic template.
- the automatic template system receives 630 user input associating a section of the automatic template with a logic rule. In some embodiments, the user can alternatively provide user input indicating a desire to modify an existing logic rule.
- the automatic template system can modify 640 the displayed user interface to include a logic interface for editing the logic rule.
- the automatic template system receives 650 user input specifying the logic rule and defines 660 a logic condition and conditional document section for the logic rule within the automatic template.
- the logic rule can be specified through a series of inputs defining a logic condition, tagged data field, and conditional document section which can then be reflected in the automatic template. If the automatic template configuration is completed 670 (for example, based on receiving a user input to that effect), the automatic template system generates 680 the finalized automatic template for later use to generate documents. Otherwise, the process returns to step 620 for further modifications to the automatic template using the generated user interface.
- a software module is implemented with a computer program product comprising a computer-readable medium containing computer program code, which can be executed by a computer processor for performing any or all of the steps, operations, or processes described.
- Embodiments may also relate to an apparatus for performing the operations herein.
- This apparatus may be specially constructed for the required purposes, and/or it may comprise a general-purpose computing device selectively activated or reconfigured by a computer program stored in the computer.
- a computer program may be stored in a non-transitory, tangible computer readable storage medium, or any type of media suitable for storing electronic instructions, which may be coupled to a computer system bus.
- any computing systems referred to in the specification may include a single processor or may be architectures employing multiple processor designs for increased computing capability.
- Embodiments may also relate to a product that is produced by a computing process described herein.
- a product may comprise information resulting from a computing process, where the information is stored on a non-transitory, tangible computer readable storage medium and may include any embodiment of a computer program product or other data combination described herein.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- General Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Strategic Management (AREA)
- Entrepreneurship & Innovation (AREA)
- Human Resources & Organizations (AREA)
- Economics (AREA)
- Marketing (AREA)
- General Business, Economics & Management (AREA)
- Data Mining & Analysis (AREA)
- Operations Research (AREA)
- Quality & Reliability (AREA)
- Tourism & Hospitality (AREA)
- Accounting & Taxation (AREA)
- Development Economics (AREA)
- Finance (AREA)
- Document Processing Apparatus (AREA)
Abstract
Description
- This application is a continuation of U.S. application Ser. No. 16/687,662, filed Nov. 18, 2019, now patent Ser. No. ______, which is incorporated by reference in its entirety.
- This disclosure relates generally to automatic template generation and an automatic template generation system and interface.
- Templates can be used to generate documents with a standardized format. Manual templates can function and be stored similarly to a partially completed shell of the document to be created, containing standardized document content and one or more incomplete sections for customized content specific to the generated document. However, while easy to generate (requiring only the same system and/or program that would be needed to generate the document to be created from scratch) manual templates still require significant work to generate a final document using the template.
- Therefore, an automatic template can be implemented to generate standardized documents without requiring manual user input to generate the document. Instead, an automatic template automatically generates documents using data retrieved from a database (or other similar data store) to automatically customize the document for a particular use case. This provides an immense usability benefit to the end users of the automatic template, further speeding the process of generating standardized documents.
- However, the difficulty in generating an automatic template prevents more widespread use of automatic templates, in many cases restricting the application of automatic templates to only the most commonly generated documents which can justify the expense (and extra time) required to generate an automatic template using previous methods.
- For example, the existing process of setting up an automatic template can involve manually coding template logic within a document editor program separate from the automatic template system and/or switching between multiple applications to edit document content and template logic. Many previous systems for generating an automatic template rely on users having coding and/or scripting knowledge and specialized knowledge of the specific automatic template.
- An automatic template system can allow users to create automatic templates and use the automatic templates to generate documents using data from a linked customer relationship management (CRM) system (or other database). To facilitate the generation of automatic templates, the automatic template system can provide a template creation interface allowing a user to generate an automatic template (including setting up template logic). The template creation interface can include a CRM integration area with a set of tagged data fields representing relevant data from a linked CRM database and a document editing area allowing a user to edit document content and insert merge fields linked to tagged data fields. Additionally, the document editing area can allow a user to seamlessly expand an inline logic interface for adding and modifying template logic. The inline logic interface does not require scripting, but instead allows a user to set up conditions for displaying conditional document sections based on a logic trigger field linked to a tagged data field of the CRM database.
-
FIG. 1 is a block diagram of a system environment in which an automatic template system operates, according to one embodiment. -
FIG. 2 is a block diagram of a template creation module, according to one embodiment. -
FIG. 3 is a block diagram illustrating a CRM database and a template, according to one embodiment. -
FIG. 4A illustrates a user interface for editing an automatic template, according to one embodiment. -
FIG. 4B illustrates an alternative user interface for editing an automatic template, according to one embodiment. -
FIG. 5A illustrates a user interface for editing template logic in an automatic template, according to one embodiment. -
FIG. 5B illustrates an alternative user interface for editing template logic in an automatic template, according to one embodiment. -
FIG. 6 is a flowchart illustrating a process for generating an automatic template and template logic, according to one embodiment. - The figures depict various embodiments for purposes of illustration only. One skilled in the art will readily recognize from the following discussion that alternative embodiments of the structures and methods illustrated herein may be employed without departing from the principles described herein.
- As described above, templates can be used to simplify the generation of documents with a standardized format. Traditional manual templates can function similarly to a partially completed shell of the document to be created, containing standardized document content and a set of fields or blank spaces for customized data to be inserted into. For example, to create a document based on a manual template a user can fill in each field with an appropriate value as needed using a standard word processing application. Likewise, the user can look up correct information for each field in a database or other data store and manually enter that information into the appropriate field of the manual template.
- In contrast, an automatic template can be used to generate standardized documents without requiring the user to manually input data for each of the template's fields. Instead, an automatic template generates a document based on the document content included in the template and data retrieved from a database (or other similar data store) used to fill the fields of the template. As used herein, an “automatic template” is a template which can generate a document based on document content of the automatic template and data retrieved from a database (or other similar data store), for instance without requiring manual entry of the data by a user.
- In some embodiments, a user of an automatic template system can select an automatic template and an entity with corresponding data in a database (for example, a specific user profile, or client data entry) and the automatic template system will retrieve data from the database to fill fields and generate the desired document using the automatic template.
-
FIG. 1 is a block diagram of a system environment in which an automatic template system operates, according to one embodiment. Thesystem environment 100 shown byFIG. 1 comprises anautomatic template system 110 including atemplate creation module 120 and adocument generation module 130, aCRM database 150, one ormore user devices 140, and anetwork 160. In alternative configurations, different and/or additional components may be included in thesystem environment 100. - The
automatic template system 110 can allow users to create automatic templates and employ one or more automatic templates to generate documents based on information from the CRM database 150 (or another database, depending on the embodiment). In some embodiments, theautomatic template system 110 can access information stored in theCRM database 150 through an API (application programming interface) or database query. Automatic templates of theautomatic template system 110 can include document content common to documents generated using the template (for example, formatted document text, images, or embedded video), a set of merge fields to be filled with data specific to each document (for example, with data retrieved from the CRM database 150), and, in some cases, template logic controlling whether a certain conditional document section and/or fields will appear in a given document generated with the automatic template. The template logic included in automatic templates of theautomatic template system 110 can comprise one or more “logic conditions” which, if satisfied, affect the inclusion of an associated conditional document section in the generated document. A conditional document section can include conditional document text and/or merge fields which will be included in a generated document if the associated logic condition is satisfied. For example, an automatic template can be used to generate a contract for a service agreement, with merge fields related to the known information about the client and the service purchase, and with template logic to include different clauses depending on the specific service being purchased. - The
template creation module 120 can allow users to generate automatic templates through an interface allowing a user to add document content and template logic to the automatic template. In some embodiments, thetemplate creation module 120 provides a web-based application user interface (UI) allowing the user to enter document content and configure template logic in an integrated UI. The template creation module can integrate with theCRM database 150 or other outside source of information. Thetemplate creation module 120 will be discussed further in relation toFIG. 2 . - In the embodiment of
FIG. 1 , thedocument generation module 130 allows users to generate documents using one or more automatic templates (such as the templates generated by the template creation module 120). In some embodiments, thedocument generation module 130 can generate a document based on a selection of a relevant entity associated with data in theCRM database 150. For example, a document can be generated based on an automatic template and the selection of a certain account, user profile, or potential transaction with corresponding information stored in theCRM database 150. In some embodiments (such as the embodiment ofFIG. 1 ), thedocument generation module 130 is a part of theautomatic template system 110, but thedocument generation system 130 can be a standalone system or otherwise on a separate server with access to automatic templates generated by theautomatic template system 110. - The
user devices 140 are one or more computing devices capable of receiving user input as well as transmitting and/or receiving data via thenetwork 160. For example, auser device 140 can be a desktop or a laptop computer, a smartphone, tablet, or another suitable device. Auser device 140 is configured to communicate via thenetwork 160. In one embodiment, auser device 140 executes an application allowing a user of theuser device 140 to interact with theautomatic template system 110. For example, auser device 140 can execute a browser application to enable interaction between theuser device 140 and theautomatic template system 110 via thenetwork 160. - The
CRM database 150 is a database or set of databases containing information about a set of entities grouped into one or more types, where theCRM database 150 contains similar data about entities of the same types. In some embodiments, each entity type is associated with a set of data fields (for example, based on the specific schema of the CRM database 150) in which information about that entity is stored. For example, theCRM database 150 can contain information about a set of users associated with an entity type of “user profile” or “employee” and data fields such as “name” and “street address.” Another embodiment of aCRM database 150 can contain a “transaction” entity type with data fields such as “quantity” and “total cost.” In some embodiments, anautomatic template system 110 can interface with other similar databases in place of or in addition to theCRM database 150. For example, theautomatic template system 110 can interface with and retrieve data from a HRM (human resources management) database, an ERP (enterprise resource planning) database, or a custom database or data store accessible through an API. - The
network 160 may comprise any combination of local area and/or wide area networks, using both wired and/or wireless communication systems. In one embodiment, thenetwork 160 uses standard communications technologies and/or protocols. For example, thenetwork 160 includes communication links using technologies such as Ethernet, 802.11, worldwide interoperability for microwave access (WiMAX), 3G, 4G, code division multiple access (CDMA), digital subscriber line (DSL), and the like. Data exchanged over thenetwork 160 may be represented using any suitable format, such as hypertext markup language (HTML) or extensible markup language (XML). In some embodiments, all or some of the communication links of thenetwork 160 may be encrypted using any suitable technique or techniques. -
FIG. 2 is a block diagram of a template creation module, according to one embodiment. Theenvironment 200 ofFIG. 2 shows thetemplate creation module 120 including a user interface module 210 in communication with theuser device 140, aCRM integration module 220 linked to theCRM database 150, and alogic generation module 230. In alternative configurations, different and/or additional modules may be included in thetemplate creation module 120. Conventional components such as network interfaces, security functions, load balancers, failover servers, management and network operations consoles, and the like are not shown so as to not obscure the details of the system architecture. - The user interface module 210 can generate a user interface for the user to interact with to generate an automatic template (such as via a user device 140). For example, the user interface module can receive user instructions from a web-based application with integrated document content editing and template logic generation functions. In some embodiments, the user interface allows a user to enter text into the template and insert corresponding template logic controlling the conditions in which the text will be visible. The user interface can allow the user to additionally add other features to an automatic template, such as an electronic signing field. In some embodiments, the user interface module 210 can determine a set of tagged data fields associated with an entity type of the
CRM database 150 and make those available for inclusion in the automatic template through the interface of the user interface module 210. The tagged data fields and logic conditions function using “tags” inserted into the document content of the automatic template that serve as placeholders for corresponding data from theCRM database 150, which will be inserted into the generated document. - Template logic can comprise a set of logic conditions each linked to one or more data fields of the CRM database 150 (herein, a “logic trigger field”). In some embodiments, a logic condition can be satisfied based on the value of the associated data field for the generated document matching or having a target relationship to a value specified in the logic condition. For example, a logic condition can be satisfied when the associated logic trigger field is equal to, greater than, less than, within a range of, or of another similar relationship to a given value as defined by the logic condition. In other embodiments, logic conditions can rely on a corresponding logic trigger field existing, multiple logic conditions, or based on other logic conditions not being met. In some embodiments, the logic generation interface is inline within the document content. The user interface is described more in relation to
FIGS. 4A-5B . - The
CRM integration module 220, according to some embodiments, can analyze the structure of theCRM database 150 to determine a set data fields for potential inclusion in an automatic template. TheCRM integration module 220 may search for and label data fields of theCRM database 150 as tagged data fields available for integration into an automatic template, for instance using document text entered by a user as a query term or keyword. TheCRM integration module 220 can determine tagged data fields based on the structure of the CRM database 150 (for example, using the columns of a table or different data fields of a schema of the CRM database 150). TheCRM integration module 220 can determine a set of tagged data fields for the user interface module 210 and thelogic generation module 230 to use. In some embodiments, theCRM integration module 220 can generate a set of tagged data fields from theCRM database 150 based on the creation of a new automatic template or based on the selection of an entity type for the automatic template. - In the embodiment of
FIG. 2 , thelogic generation module 230 generates a final automatic template based on the document content and the selected template logic input through the user interface module. An automatic template can be stored in a format allowing the generation of a document based on one or more selected entities from theCRM database 150. -
FIG. 3 is a block diagram illustrating a CRM database and a template, according to one embodiment. Theenvironment 300 ofFIG. 3 includes theCRM database 150 with a set ofentities 310 each with a taggeddata field automatic template 330 with amerge field 340 linked to taggeddata field 320A and alogic trigger field 350 linked to taggeddata field 320B. - As described above, the
CRM database 150 stores information used to generate documents from an automatic template such as theautomatic template 330. In some implementations, data stored in theCRM database 150 is organized into a plurality ofentities 310 each containing the data fields identified by the CRM integration module 220 (in the embodiment ofFIG. 3 , the tagged data fields 320). For example, anentity 310 can represent a user profile, employee profile, or transaction information, as described above. Each tagged data field 320 of anentity 310 can label a specific type of data known about theentity 310. For example, the name, address, account number, service purchased, or quantity can be types of data associated with a tagged data field 320. The specific tagged data fields 320 will depend on the implementation and the information contained in theCRM database 150. - The
automatic template 330, as described above, can include one or more references to tagged data fields 320 of theCRM database 150 which can be directly included in the document content or compared to logic conditions to determine if a conditional document section is included in a generated document. - Each
merge field 340 of theautomatic template 330 represents a point in the document content of theautomatic template 330 where data or a value of a taggeddata field 320A is inserted into the document content during the generation of a document. In the embodiment ofFIG. 3 , theautomatic template 330 has amerge field 340 associated with the taggeddata field 320A. The inclusion of a data value from amerge field 340 into the document can be direct or can involve formatting or otherwise manipulating the value of the tagged data field 320, for example by rounding numbers, adding dollar signs or punctuation, or adjusting capitalization. - As described above, a logic trigger field such as the
logic trigger field 350 can be used as part of the template logic to determine if a conditional document section will be included in a generated document based on the value of the corresponding taggeddata field 320B. -
FIGS. 4A-5B illustrate example user interfaces for interacting with thetemplate creation module 120 of theautomatic template system 110, according to some embodiments. The user interface module 210 can provide a user interface in any suitable manner, for example, the user interface module 210 can provide a web-based user interface through a website accessible to one ormore user devices 140 over thenetwork 160. -
FIG. 4A illustrates a user interface for editing an automatic template, according to one embodiment. Thetemplate creation interface 400 ofFIG. 4A includes aCRM integration area 410 including a series of taggeddata fields 415 and adocument editing area 420 with document content including amerge field 430, aconditional logic button 440, and a user selection 445. The example automatic template illustrated inFIG. 4A is a template for generating a sales agreement, although thetemplate creation interface 400 can be used to generate templates for other purposes, as discussed above. - The
CRM integration area 410 allows a user of thetemplate creation interface 400 to view available taggeddata fields 415 that could potentially be included in the generated automatic template. As discussed above, the specific taggeddata fields 415 available depend on the type of template being generated and the available data in theCRM database 150. In some embodiments, theCRM integration area 410 includes other options for fields that could be inserted into an automatic template not based on data from theCRM database 150, such as a current date field. Similarly, the automatic template system can include one or more fields which can be populated after the document is generated, for example a field for an e-signature or a date signed field. In the embodiment ofFIG. 4A , theCRM integration area 410 is designed for a drag and drop interface to insert the taggeddata fields 415 as merge fields 430 or logic trigger fields, although other embodiments can use a menu or other selection process to access the tagged data fields 415. - The
document editing area 420, according to some embodiments, allows a user to enter, edit, and delete the document content, template logic, and conditional document text of an automatic template. In some implementations, thedocument editing area 420 can provide text editing and/or formatting features for entering and manipulating document content (for example, font size, line spacing, etc.). - The
document editing area 420 allows a user to insert merge fields, such as themerge field 430, into an automatic template being edited. As described above, when a document is generated from an automatic template, the appropriate data from the entity of theCRM database 150 associated with the document will be retrieved and inserted into eachmerge field 430 of the generated template. In some embodiments, mergefields 430 can be inserted into an automatic template in any suitable way, such as with a drag and drop interface from theCRM integration area 410 into thedocument editing area 420 or through a selection from the menu. - In the embodiment of
FIG. 4A , theconditional logic button 440 allows a user to insert and/or change template logic using an inline logic interface within thedocument editing area 420. In some embodiments, theconditional logic button 440 and/or the interface for editing template logic can be contextually triggered, for example theconditional logic button 440 can appear near the location of a user's text cursor (caret) or when a user makes a selection of certain document content, such as the user selection 445. When selected, the conditional logic button can insert template logic for currently selected text or open a logic interface for editing template logic. The user interface for adding or modifying template logic will be discussed further in relation toFIGS. 5A and 5B . -
FIG. 4B illustrates an alternative user interface for editing an automatic template, according to one embodiment. Thetemplate creation interface 450 includes aCRM integration area 410, taggeddata field 415,document editing area 420, and mergefield 430 as described above as well as theother field 460. Here, theother field 460 is a field which can be populated after the document is generated as described above. -
FIG. 5A illustrates a user interface for editing template logic in an automatic template, according to one embodiment. Thetemplate creation interface 500 ofFIG. 5A is an additional view of thetemplate creation interface 400 ofFIG. 4A . Thetemplate creation interface 500 includes aCRM integration area 410 including a series of taggeddata fields 415 and adocument editing area 420 with document content including amerge field 430 and aninline logic interface 510. Theinline logic interface 510 includes alogic condition 520, alogic trigger field 525, aconditional document section 530, and an alternativeconditional document section 535. The example automatic template illustrated inFIG. 5A is for generating a sales agreement, although thetemplate creation interface 500 can be used to generate templates for other purposes, as discussed above. - In some embodiments, when a user selects the
conditional logic button 440 shown inFIG. 4A (or otherwise initiates editing template logic) theinline logic interface 510 is shown within thedocument editing area 420. In the embodiment ofFIG. 5A , the location of theinline logic interface 510 within the document content is based on the location of the user's text cursor, the user selection 445, or other selection by the user. - The
inline logic interface 510 allows the user to set up one or more logic rules or other template logic for an automatic template. In some embodiments, theinline logic interface 510 can be displayed inline with the document content of thedocument editing area 420 appearing in between sections of the document content where document content corresponding to the logic rule will be inserted. - Each logic rule of an automatic template can comprise a
logic condition 520 which can be compared to the value retrieved of alogic trigger field 525 to determine if (or in what form) aconditional document section 530 appears in a given document generated using the automatic template. In some embodiments,logic conditions 520 include a value (or range) which the value of thelogic trigger field 525 will be compared against using a suitable operation such as equality, greater than, or less than operations. Other implementations of alogic condition 520 can rely on other data about the logic trigger field, for example being satisfied if the data associated with the logic trigger field 522 exists in theCRM database 150. The value associated with alogic condition 520 can be a static value or can be dynamic based on, for example, a tagged data field 415 (such as in a logic rule comparing the value of two tagged data fields). - The
logic trigger field 525, similar to amerge field 430, can be associated with a taggeddata field 415 of theCRM database 150. When a document is generated from an automatic template containing a logic rule with a logic trigger field, the appropriate data from the taggeddata field 415 associated with thelogic trigger field 525 will be retrieved and compared to thelogic condition 520 of the logic rule. In some embodiments, logic trigger fields 525 can be inserted into an automatic template in any suitable way, such as with a drag and drop interface from theCRM integration area 410 into theinline logic interface 510 or through a selection from a menu. Alogic trigger field 525, according to some implementations, can be filled using any suitable data field (not only a taggeddata field 415 associated with theCRM database 150, for example a current datelogic trigger field 525 in a logic rule to insert a holiday greeting at the correct time of year. - The
conditional document section 530 is a section of document content included in a generated document if thelogic condition 520 is satisfied. In some implementations, theconditional document section 530 can include any features available to other document content not associated with a logic rule, such as merge fields 430 and formatting. As show inFIG. 5A theconditional document section 530 is contiguous, but other implementations include non-contiguous conditional document sections 530 (for example, in the case of a logic rule inserting an optional warning at the top of each page of a generated document). - In some implementations, a logic rule can be associated with
multiple logic conditions 520, each with their ownlogic trigger field 525 andconditional document section 530, where only one conditional document section 530 (if any) will be included in a generated document based on which of thelogic conditions 520 are satisfied. For example, thelogic conditions 520 can be organized in an order or hierarchy and the first rule in the order/highest logic condition 520 in the hierarchy that is satisfied controls whichconditional document section 530 is included in a given generated document. Similarly, a logic rule can be associated with an alternativeconditional document section 535 which is included in a generated document if nologic condition 520 associated with the logic rule is satisfied. However, the inclusion of an alternativeconditional document section 525 is optional and a logic rule may result in nothing being included in a generated document if thelogic condition 520 isn't satisfied, according to some embodiments. -
FIG. 5B illustrates an alternative user interface for editing template logic in an automatic template, according to one embodiment. Thetemplate creation interface 550 includes aCRM integration area 410,document editing area 420,inline logic interface 510,logic trigger field 525, andconditional document section 530 as described above. -
FIG. 6 is a flowchart illustrating a process for generating an automatic template and template logic, according to one embodiment. Theprocess 600 begins when the automatic template system retrieves 610 information about data fields of a linked CRM database. For example, an automatic template system can determine a set of tagged data fields based on retrieved information from a CRM database. Based on the retrieved CRM database information, the automatic template system can generate 620 a user interface for creating or modifying an automatic template, where the user interface includes the CRM data fields and document content for the automatic template. When the automatic template system receives 630 user input associating a section of the automatic template with a logic rule. In some embodiments, the user can alternatively provide user input indicating a desire to modify an existing logic rule. In response to the user input, the automatic template system can modify 640 the displayed user interface to include a logic interface for editing the logic rule. Through the logic interface, the automatic template system receives 650 user input specifying the logic rule and defines 660 a logic condition and conditional document section for the logic rule within the automatic template. For example, the logic rule can be specified through a series of inputs defining a logic condition, tagged data field, and conditional document section which can then be reflected in the automatic template. If the automatic template configuration is completed 670 (for example, based on receiving a user input to that effect), the automatic template system generates 680 the finalized automatic template for later use to generate documents. Otherwise, the process returns to step 620 for further modifications to the automatic template using the generated user interface. - The foregoing description of the embodiments has been presented for the purpose of illustration; it is not intended to be exhaustive or to limit the patent rights to the precise forms disclosed. Persons skilled in the relevant art can appreciate that many modifications and variations are possible in light of the above disclosure.
- Some portions of this description describe the embodiments in terms of algorithms and symbolic representations of operations on information. These algorithmic descriptions and representations are commonly used by those skilled in the data processing arts to convey the substance of their work effectively to others skilled in the art. These operations, while described functionally, computationally, or logically, are understood to be implemented by computer programs or equivalent electrical circuits, microcode, or the like. Furthermore, it has also proven convenient at times, to refer to these arrangements of operations as modules, without loss of generality. The described operations and their associated modules may be embodied in software, firmware, hardware, or any combinations thereof.
- Any of the steps, operations, or processes described herein may be performed or implemented with one or more hardware or software modules, alone or in combination with other devices. In one embodiment, a software module is implemented with a computer program product comprising a computer-readable medium containing computer program code, which can be executed by a computer processor for performing any or all of the steps, operations, or processes described.
- Embodiments may also relate to an apparatus for performing the operations herein. This apparatus may be specially constructed for the required purposes, and/or it may comprise a general-purpose computing device selectively activated or reconfigured by a computer program stored in the computer. Such a computer program may be stored in a non-transitory, tangible computer readable storage medium, or any type of media suitable for storing electronic instructions, which may be coupled to a computer system bus. Furthermore, any computing systems referred to in the specification may include a single processor or may be architectures employing multiple processor designs for increased computing capability.
- Embodiments may also relate to a product that is produced by a computing process described herein. Such a product may comprise information resulting from a computing process, where the information is stored on a non-transitory, tangible computer readable storage medium and may include any embodiment of a computer program product or other data combination described herein.
- Finally, the language used in the specification has been principally selected for readability and instructional purposes, and it may not have been selected to delineate or circumscribe the patent rights. It is therefore intended that the scope of the patent rights be limited not by this detailed description, but rather by any claims that issue on an application based hereon. Accordingly, the disclosure of the embodiments is intended to be illustrative, but not limiting, of the scope of the patent rights, which is set forth in the following claims.
Claims (20)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US17/727,710 US20220245336A1 (en) | 2019-11-18 | 2022-04-23 | Automatic template generation with inbuilt template logic interface |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US16/687,662 US11341324B2 (en) | 2019-11-18 | 2019-11-18 | Automatic template generation with inbuilt template logic interface |
US17/727,710 US20220245336A1 (en) | 2019-11-18 | 2022-04-23 | Automatic template generation with inbuilt template logic interface |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US16/687,662 Continuation US11341324B2 (en) | 2019-11-18 | 2019-11-18 | Automatic template generation with inbuilt template logic interface |
Publications (1)
Publication Number | Publication Date |
---|---|
US20220245336A1 true US20220245336A1 (en) | 2022-08-04 |
Family
ID=75909542
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US16/687,662 Active 2040-11-23 US11341324B2 (en) | 2019-11-18 | 2019-11-18 | Automatic template generation with inbuilt template logic interface |
US17/727,710 Pending US20220245336A1 (en) | 2019-11-18 | 2022-04-23 | Automatic template generation with inbuilt template logic interface |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US16/687,662 Active 2040-11-23 US11341324B2 (en) | 2019-11-18 | 2019-11-18 | Automatic template generation with inbuilt template logic interface |
Country Status (3)
Country | Link |
---|---|
US (2) | US11341324B2 (en) |
EP (1) | EP4062298A4 (en) |
WO (1) | WO2021101655A1 (en) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20200327172A1 (en) * | 2019-04-10 | 2020-10-15 | Ivalua S.A.S. | System and method for processing contract documents |
US11537684B2 (en) * | 2020-01-10 | 2022-12-27 | Net Law Group, Inc. | System and method for creating and rendering complex, highly performant web interviews using a low-code editor, supporting interoperability with existing third party document assembly systems |
US11481545B1 (en) * | 2021-06-28 | 2022-10-25 | Orbis Technologies, Inc. | Conditional processing of annotated documents for automated document generation |
US20230052809A1 (en) * | 2021-08-10 | 2023-02-16 | Salesforce, Inc. | In-line live data mentions |
CN114021528A (en) * | 2021-11-05 | 2022-02-08 | 北京和利时系统工程有限公司 | Method and device for realizing data processing of train control center |
KR102671676B1 (en) * | 2021-12-16 | 2024-06-03 | (주)제이앤피메디 | Keyword data linkage system and the method |
CN114546937B (en) * | 2022-01-10 | 2023-04-07 | 普瑞纯证医疗科技(广州)有限公司 | Intelligent document editing management system, method, equipment and storage medium |
US20230315978A1 (en) * | 2022-03-31 | 2023-10-05 | Docusign, Inc. | Form Interface For Document Generation In A Document Management System |
US20240036835A1 (en) * | 2022-08-01 | 2024-02-01 | Servicenow, Inc. | Low-Code / No-Code Layer for Interactive Application Development |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140115443A1 (en) * | 2012-10-23 | 2014-04-24 | Docstoc, Inc. | Method, system, and computer program product for generating customized documents |
Family Cites Families (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6820235B1 (en) * | 1998-06-05 | 2004-11-16 | Phase Forward Inc. | Clinical trial data management system and method |
US6910179B1 (en) * | 1998-11-10 | 2005-06-21 | Clarita Corporation | Method and apparatus for automatic form filling |
US7246316B2 (en) | 1999-11-30 | 2007-07-17 | Siebel Systems, Inc. | Methods and apparatus for automatically generating presentations |
WO2002009004A1 (en) * | 2000-07-21 | 2002-01-31 | Surromed, Inc. | Computerized clinical questionnaire with dynamically presented questions |
US7810036B2 (en) * | 2003-02-28 | 2010-10-05 | Bea Systems, Inc. | Systems and methods for personalizing a portal |
US7275216B2 (en) * | 2003-03-24 | 2007-09-25 | Microsoft Corporation | System and method for designing electronic forms and hierarchical schemas |
US7917842B2 (en) * | 2004-05-27 | 2011-03-29 | Collegenet, Inc. | System for describing the overlaying of electronic data onto an electronic image |
US7933862B2 (en) | 2004-09-27 | 2011-04-26 | Microsoft Corporation | One click conditional formatting method and system for software programs |
US7644350B2 (en) * | 2005-02-18 | 2010-01-05 | Ricoh Company, Ltd. | Techniques for validating multimedia forms |
JP4095617B2 (en) | 2005-02-28 | 2008-06-04 | キヤノン株式会社 | Document processing apparatus, document processing method, and computer program |
US9009585B1 (en) * | 2008-03-18 | 2015-04-14 | Avaya Technology Llc | Software wizard interface |
EP3716168A1 (en) | 2010-02-05 | 2020-09-30 | Medversant Technologies, LLC | System and method for visually mapping and automatically completing electronic forms |
US9747562B1 (en) | 2012-03-19 | 2017-08-29 | Apttex Corporation | Linking structured database management systems with document creation and word processing tools |
US8522134B1 (en) | 2012-08-13 | 2013-08-27 | Volusion, Inc. | Methods and apparatus for in-line editing of web page content with reduced disruption of logical and presentational structure of content |
US20140075280A1 (en) * | 2012-09-13 | 2014-03-13 | Sw Development, Llc | Systems and Methods for Transferring Data from an Accessible Database into Forms that Manipulate Databases |
US20140136958A1 (en) * | 2012-11-15 | 2014-05-15 | Customer Systems Plc | Relating to distributed access infrastructure for a database |
SG11201602296WA (en) * | 2013-09-27 | 2016-04-28 | Ab Initio Technology Llc | Evaluating rules applied to data |
US20150254366A1 (en) * | 2014-03-07 | 2015-09-10 | Revolution Group, Inc. | Application software, electronic forms, and associated methods |
US10860979B2 (en) * | 2015-02-17 | 2020-12-08 | Nice Ltd. | Device, system and method for summarizing agreements |
US20170286389A1 (en) * | 2016-03-31 | 2017-10-05 | SEI Global Services, Inc. | Dynamic Generation of Electronic Forms and Documents |
CN109564599A (en) * | 2016-03-31 | 2019-04-02 | 克劳斯公司 | System and method for creating and executing data-driven legal contract |
US20190147033A1 (en) * | 2017-11-15 | 2019-05-16 | Amanda J Morse | System and method for creating, formatting and templating descriptions of online products, items or services |
-
2019
- 2019-11-18 US US16/687,662 patent/US11341324B2/en active Active
-
2020
- 2020-10-22 WO PCT/US2020/056819 patent/WO2021101655A1/en unknown
- 2020-10-22 EP EP20888945.1A patent/EP4062298A4/en active Pending
-
2022
- 2022-04-23 US US17/727,710 patent/US20220245336A1/en active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140115443A1 (en) * | 2012-10-23 | 2014-04-24 | Docstoc, Inc. | Method, system, and computer program product for generating customized documents |
Also Published As
Publication number | Publication date |
---|---|
EP4062298A1 (en) | 2022-09-28 |
US20210149992A1 (en) | 2021-05-20 |
US11341324B2 (en) | 2022-05-24 |
EP4062298A4 (en) | 2023-12-13 |
WO2021101655A1 (en) | 2021-05-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11341324B2 (en) | Automatic template generation with inbuilt template logic interface | |
US10901583B2 (en) | Systems and methods for visual definition of data associations | |
US11449668B2 (en) | Digital processing systems and methods for embedding a functioning application in a word processing document in collaborative work systems | |
US11010537B2 (en) | Web-intrinsic interactive documents | |
US10657313B2 (en) | Method and system for editing virtual documents | |
US10210142B1 (en) | Inserting linked text fragments in a document | |
US9213893B2 (en) | Extracting data from semi-structured electronic documents | |
US10565280B2 (en) | Website content identification in a content management system | |
US11853684B2 (en) | Synchronization and tagging of image and text data | |
US20240111697A1 (en) | System and method for building and implementing automated workflows | |
US9852117B1 (en) | Text-fragment based content editing and publishing | |
US20070294631A1 (en) | Apparatus and method for embedding and utilizing report controls within an online report | |
EP3596647A1 (en) | Digital component backdrop rendering | |
US8799256B2 (en) | Incorporated web page content | |
US20090199158A1 (en) | Apparatus and method for building a component to display documents relevant to the content of a website | |
CN110531964B (en) | Personalized intelligent software development method | |
US11262888B1 (en) | Consistent context-dependent rendering of user interface data | |
US11921797B2 (en) | Computer service for indexing threaded comments with pagination support | |
US20090271699A1 (en) | Apparatus and method for updating a report through view time interaction | |
KR101540605B1 (en) | A kiosk builder system, a tiosk system including the same, and a method of providing a tiosk system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: DOCUSIGN, INC., CALIFORNIA Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:NAM, MARSHALL;CORBIN, CAITLAN;GURENKOV, STANISLAV;AND OTHERS;SIGNING DATES FROM 20191217 TO 20200129;REEL/FRAME:059739/0761 |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: DOCKETED NEW CASE - READY FOR EXAMINATION |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: NON FINAL ACTION MAILED |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: RESPONSE TO NON-FINAL OFFICE ACTION ENTERED AND FORWARDED TO EXAMINER |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: FINAL REJECTION MAILED |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: RESPONSE AFTER FINAL ACTION FORWARDED TO EXAMINER |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: ADVISORY ACTION MAILED |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: DOCKETED NEW CASE - READY FOR EXAMINATION |