Process and system for configuring information for presentation at an interactive electronic device5806071Abstract A process for configuring electronic information for presentation at an interactive electronic device with which an item may be ordered, including the steps of: providing an original template presentation created at a first location to include a plurality of template items; providing a database to include a plurality of database items; and configuring, using a computer, the information to include each template item that is also a database item. A template data record can be associated with each template item, and a local data record can be associated with each database item. Additionally, a process for presenting display information at an interactive electronic device, including the step of configuring the display information for presentation by tagging as active for display, a cell associated with a template item that is also a database item. Different types of cells can be accommodated. Also, a system for configuring electronic information for presentation at an interactive electronic device, including: an original template presentation created at a first location to include a plurality of template items; a database to include a plurality of database items; and a communications medium for transmitting the original template presentation to a computer; wherein the template presentation includes a set of instructions for configuring, using the computer, the information to include each template item that is also a database item. Claims What is claimed is: Description BACKGROUND OF THE INVENTION
TABLE A
__________________________________________________________________________
TEMPLATE RECORDS (example)
track#/ item Inactive/
screen
ordinal# identifier-
template
Active
"mapped"
type (if exists)
cell type
string PLU tag PLU
__________________________________________________________________________
TACOS 1/1 item (1)
REGTACO
001 A 004
1/2 item (2)
CHIKTACO
002 I --
1/3 item (3)
TACO-SUP
003 A 002
1/4 item (4)
7-LAYTAC
004 I --
1/5 item (5)
SOFTACO
005 A 003
1/6 fixed I --
branch
O/order
fixed A --
window
general
O/EXIT to
fixed A --
pay general
O/cancel
fixed A --
item general
O/repeat
fixed A --
item general
TACO 1/1 item (6)
BFASTTAC
006 I --
OVER- 1/2 item (7)
BEANTACO
007 A 001
FLOW 1/3 item (8)
TACO-SPX
008 I --
1/4 item (9)
TACO-SPY
009 I --
1/5 item (10)
TACO-SPZ
010 I --
BURRITOS
2/1 item (1)
BURR-SUP
011 A 007
2/2 item (2)
BFASTBUR
012 I --
2/3 item (3)
7-LAYBUR
013 A 008
DRINKS
3/1 item (1)
PEPSI 014 A 005
3/2 item (2)
DR.PEPP
015 A 006
MAIN 1/1 menu (1)
TACOMENU A --
MENU branch
2/1 menu (2)
BURRMENU A --
branch
3/1 menu (3)
DRINMENU A --
branch
4/1 hidden I --
branch
__________________________________________________________________________
Contrasting the original template presentation of the invention, are the outletspecific multi-media presentations (designed and implemented by the assignee hereof) currently in use at fast-food customer activated touch-screen terminals. The following elements can be found in such known restaurant-specific presentations created for transmission to each restaurant: (a) a dialog files creator and editor; (b) a commerciallyavailable graphics editor; (c) a commercially-available audio editor; and (d) restaurantspecific data files, tailored to a particular fast-food restaurant, containing food items for sale, associated icons, graphics, and audio messages, screen and item cell location layouts, branch menu cells which point to/call-up associated ordering screens, and standard branch cells that call-up a previous or later screen (two examples of standard branch cells are as follows: an "EXIT to PAY" cell that, depending upon programmed sequencing, calls-up either a suggestive-sell question screen or the "THANK YOU for Your Order" screen; and a cell location labeled "OTHER FOOD" cell that calls-up a menu screen). Returning to FIG. 3, arrow 72 represents the flow of the created original template presentation 70 into a corporate headquarters' data management routine 74 (which could be stored on a processor located at corporate headquarters, on-site or upstairs of the sales outlet, or at the facility of a third party handling software service/support). Routine 74 preferably contains the capabilities of gathering and analyzing inventory, revenue, sales, purchase trends, etc., data. Routine 74 can also contain the capability, as shown, of providing notification (via data flow arrow 75) to Detector routine 82 that a new template or an update to a template has been identified by data management routine 74. As arrow 76 indicates, the original template presentation and any updates made to the presentation along the way, form the so-called transmitted copy 80 of the original template. Template presentation copy 80 flows, as represented by arrow 81a, into the Configuring routine 84. In the event the template presentation includes, as suggested above, instructions (or a portion of the full set of instructions) for determining whether configuration is necessary, this information would need to flow along 81b into update/modification Detector routine 82 so that the Detector can perform its functions: (a) provide notification along 83b to Waitor routine 92 (directly connected to the electronic presentation device 94 used by a customer), to interrupt a currently-running presentation so that configuration or re-configuration can take place to update the customer presentation; and (b) notify, along arrow 83a, and trigger the Configuring routine 84 into configuring or re-configuring the presentation (which then flows along arrows 85, 91, and 93 to customer terminal 94). Database records and files are represented in FIG. 3 by circle 86 labeled as "instore computer". These records and files 86 (referred to throughout as database records or files) contain data records/information about items intended for sale at a particular sales outlet (such as a store, restaurant, kiosk, cart, or other "point of access"). As will be described in more detail below, TABLE B itemizes the type of information preferably included in the database records for a particular outlet (in this case, a restaurant). Although shown to be located on an in-store computer, it is not necessary that database records and files be created and/or stored on a computer (such as the manager station 10, one or each of the clerk POS terminals 12a, 12b, 12c, or one or each of the customer terminals 20a, 20b, 20c--all shown in FIG. 1) located within the sales outlet. Instead, these database records and files 86 can be created on a separate computer from, but at the same location as, the computer used to create the original template presentation 70. The database records and files 86 might also be created with the same computer (but created at a different time) as that used to create the template presentation 70. It is, nevertheless, preferred that the original template presentation 70 and the database 86 be created to form separately stored and maintained files and data. This is so that sales outlet personnel (most-likely store managers) can control, if desired, the creation and modifying of their own database of items they intend to sell over the course of a day, for example. Arrow 87a illustrates the flow of database files/records, and any modifications thereto, into the Configuring routine 84 so that a presentation can be configured or reconfigured (shown at 90) for the sales outlet customer terminal 94. In the event a database is modified by, for example, adding or deleting a data record associated with an item, modifying a field containing item price or tax rate, or time-delaying the presentation of a store daily "special", it may be preferred to notify (along data flow arrow 87b) the update/modification Detector 82 so that the Detector 82 can take appropriate action. And finally, the routine labeled "Waitor" at 92 in FIG. 3, merely performs the task of giving a configured presentation to a customer using an electronic device (like that shown at 94). Turning to TABLE B, store/outlet personnel typically prefer using the commonname of items for quick recognition of items being included in a database list they are creating for their store. Therefore, item common-names are included in TABLE B. Note that database Price Look-Up (PLU) numbers for items vary from outlet to outlet--and database item PLU numbers seldom match item PLU numbers in a template presentation.
TABLE B
__________________________________________________________________________
DATABASE ITEMS/RECORDS (example)
item Point-of-
item price/
exists on
item identifier-
Sale system
tax rate
template
common-name
string PLU (or code)
list?
__________________________________________________________________________
bean taco (w/cheese)
BEANTACO
001 $0.78/A(3%)
yes
taco supreme
TACO-SUP
002 $1.00/A(3%)
yes
soft-shell taco
SOFTACO
003 $0.66/A(3%)
yes
hard-shell taco
REGTACO
004 $0.66/A(3%)
yes
pepsi cola
PEPSI 005 $0.99/B(4%)
yes
Dr. Pepper
DR.PEPP
006 $0.99/B(4%)
yes
Burrito Supreme
BURR-SUP
007 $1.00/A(3%)
yes
7-Layer Burrito
7-LAYBUR
008 $1.44/A(3%)
yes
chicken sandwich
CHIKSAND
009 $2.22/A(3%)
NO
french fries
F.FRIES
010 $0.55/A(3%)
NO
__________________________________________________________________________
Therefore, it is important to associate each item in the database with some type of standard or "key", such as an item identifier-string (alphanumeric sequence, integer, or real numbers) that can be matched to item identifier-strings contained in the template. An item price/tax rate (or code) field has been included so that store personnel can timely react to local price and tax rate changes. Other data fields could be included in the database item listing. As more information is included in the database, more parameters become modifiable by store personnel--thus increasing the amount of local/store control over the list of items (and their associated characteristics) offered for sale at the store. Although more control has been given to sales outlets by the new process and system described herein, as designed, the configuration/re-configuration of an original template presentation (such as that shown in TABLE A) with a database (such as that shown in TABLE B), allows headquarters (or any other location having direct responsibility over a local outlet) overall control over the items and their characteristics as presented to a customer. For example, TABLE B includes two items (chicken sandwich and french fries) not included in the template presentation. As will be described in more detail in connection with FIGS. 12 and 13, the example configured item-list TABLE C, which contains those items that will be presented to a customer, does not include the chicken sandwich and french fries. By comparing the three TABLES A, B, C, it can be clearly seen that TABLE C only includes those database items (TABLE B) that have been matched with a similar template item (from TABLE A). Due to differences in PLU numbers between the database list and the template list (as well as likely differences in the common-names used locally, local prices of items, local tax rates, etc.), item matching is preferably done by comparing item identifier-strings (or another item-matching "key" that has been standardized) in the database and the template presentation. The flow diagram in FIG. 4 represents one preferred process 100 of the invention. After an original template presentation has been created 102b and a database of local records provided 102a, configuration 104 of electronic information for presentation at an interactive electronic device takes place utilizing a configuring routine (as represented in FIG. 3 at 84). Configuration preferably takes place, to increase efficiency and outlet flexibility, on a computer processor located at the sales outlet (such as the manager's station 10, one or all of the clerk POS terminals 12a, 12b, 12c, or one or all of the customer terminals 20a, 20b, 20c--all shown in FIG. 1). However, this is not necessary. Original template presentations may be created and configured with local databases at the same location, or a template and database could be configured at a third party software service/support facility, and then transmitted to the store (with a communication system as shown in FIG. 2) for downloading to a customer terminal. It is important that the new process and system allow for database modifications 106 (described above in connection with FIG. 3), as well as original template presentation updates 108 (such as: providing a new template presentation; modifying instructions or dialog control files within the original template; making the presentation of an item time-dependent over some period of time (such as certain hours in a day, or days in a week); adding or deleting a data record associated with an item; and modifying a field containing an icon, motiongraphics/animation message, a video or audio message, etc.). If database modifications or template updates are made (110, 114), re-configuration 116 is necessary to change the presentation to a customer. If no modifications or updates have been made (110, 112), no subsequent configuration, or re-configuration, would be necessary 118. A loop 119 has been formed to represent that, as time passes, the database may need to be modified and/or the original template may need updating. The flow diagram in FIG. 5 represents another preferred process 120 of the invention. As shown, after an original template presentation has been created 122b and a database of local records provided 122a, modifications to the database 124 and updates to the template 126 might occur before configuration (utilizing FIG. 3 routine 84) takes place 136. As shown in FIG. 5, before configuration takes place 136, one might want to determine whether configuration is necessary 130. If so (134), and if a presentation has already been downloaded to an electronic presentation device, interruption of the current presentation (135) may be required. Additionally, as discussed in connection with FIG. 3, it may be helpful to provide notification that configuration is necessary (here, configuration step 136 also encompasses "re-configuration", or subsequent configuration, in the case where configuration has already been done at least once). Also shown, configuration step 136 is bypassed in the event configuration is not necessary (132, 138). The FIG. 5 embodiment clearly illustrates the flexibility of the process and system of the invention. The loop 139 formed in FIG. 5 represents that, as time passes, either database modifications 124 and/or original template updates 126 may take place necessitating a subsequent configuration, or re-configuration, to change the customer presentation in-whole or in-part (as already mentioned, this concept of re-configuration has been incorporated into the configuration step 136 of process 120). FIG. 6 provides details for step 130 of the FIG. 5 preferred process 120. As shown 140, 142, if either the database provided 122a is modified 124 or the original template presentation provided 122b is updated 126, then (following arrows 146 and 134) configuration of the electronic information (in-whole or only the affected in-part) is necessary 136 for presentation at a customer electronic device. In the event only a part of the database is modified 124 or only a part of the template updated 126, the system preferably detects which portions of the customer presentation is affected by the modifications or updates, to configure (or re-configure) only the part of the presentation affected. As FIG. 6 shows (along arrow 145b), it is possible that no database modifications are made 140 and no template updates are made 142 before the first time configuration of the template and database takes place; in this case (following arrows 146 and 134) configuration of the electronic information (in-whole) would be necessary 136. As mentioned above in connection with FIG. 5, FIG. 6 illustrates a point (box 135) at which a current presentation could be interrupted and notification given that configuration (or "re-configuration" in the case where configuration has already been done at least once) is necessary. This is especially important if a single-user operating system has been employed to both perform configuration and run a presentation at an electronic device. And finally, if it is determined that (a) no database modifications have been made 140, (b) no template updates have been made 142, and (c) the template presentation and database have already been configured 145a (following arrow 132 to bypass configuration step 136), one can see that configuration is not necessary 138. The original template display at 150 in FIG. 7 illustrates how cells are preferably grouped in tracks along, for example, columns 152a, 152b, 152c. Ordinal numbers 1 through 7 are shown associated with each track to locate where cells fit within a track. In this example, Track 1 groups cells containing icons for seven items of one category, Track 2 groups cells containing icons for seven items of a second category, etc. Cells labeled "fixed" (154a through 154f, with track #0) will not be reorganized/relocated in a customer presentation. These fixed cells will typically be general cells not associated with any particular item for sale, and are activated during the configuration process to appear on a presentation display in the same place regardless of the number of item cells on that display. For example, cell 154e is preferably an "order window" listing items and a running total of the prices of items ordered by a customer. It is desirable to include an order window cell for every display containing item cells representing items being offered for sale. Cell 154f could enclose an "OTHER FOOD" icon that calls-up a previous menu display. Cell 154d might have an "EXIT to PAY" icon to end a customer's order. FIG. 8 illustrates two original template displays 160, 170 having cells of one category of items for sale (all given a track number 1). Display 170 is, therefore, an "overflow" display tied to an overflow cell 162f (this association is represented by arrow 168). Template displays 160, 170 show that a total of ten items of the track 1 category are possible for inclusion in a final customer presentation. Item cells include 162a through 162e and 172a through 172e. Fixed cells 164a through 164d of display 160 are not associated with any particular item, as are fixed cells 174a through 174d of display 170. They are of the same character as cells 154a through 154f as explained in connection with FIG. 7. Preferably, fixed general cells 164d, 174d are fixed "order windows". Cells 164c, 174c could enclose "EXIT to PAY" icons which, when interacted-with by a customer, allow the customer to discontinue ordering. Note that overflow cell 162f is fixed on display 160 and is only configured as active for presentation to a customer if certain conditions have been met. If six track 1 items are included in a database created for configuration with template displays (160, 170), overflow cell 162f will be activated during configuration (and will display the icon for the sixth item). If seven or more items are included in a database configured for presentation to a customer, overflow cell 162f will enclose a "MORE ITEMS" icon (which when interacted-with, by touching for example, will call-up display 170 to present the seventh, and so on, items). Cell activation will be described in detail in connection with FIGS. 9, 10, 12, 13 (in conjunction with TABLES A, B, C). FIG. 9 shows two displays 180, 190 configured (using FIG. 8 template displays 160, 170) for presentation to a customer via an electronic device. Configured displays 180, 190 include item (1) in cell 182a, item (2) in cell 182b, item (3) in cell 182c, item (7) in cell 182d, item (8) in cell 182e, item (9) in cell 192a, and item (10) in cell 192b. In order to be included as part of configured displays 180, 190, all seven of these items must have been included in the database provided for this customer presentation. As was discussed in connection with FIG. 8, since more than six items of track 1 category were chosen for inclusion in the database used during configuration, the fixed overflow cell 182f will have the "MORE ITEMS" icon so that overflow display 190 can be called-up. Note that fixed general cell locations 164a through 164d of template display 160 in FIG. 8, become fixed cells 184a through 184d of configured display 180. Similarly, fixed general cell locations 174a through 174d of template display 170 in FIG. 8, become fixed cells 194a through 194d of configured display 190. FIG. 10 shows configured display 180' with item (1) at cell 182a, item (3) at cell 182c, item (5) at cell 182g, and item (7) at cell 182d. Thus, as can be seen, only four items of the ten possibilities in FIG. 8 template displays 160, 170, were chosen for inclusion in the database used during configuration to produce display 180'. Again, note that fixed general cell locations 164a through 164d of template display 160 in FIG. 8, are all activated during configuration to become fixed cells 184a through 184d of configured display 180'. To further explain the configuration process, turn to the TACOS and TACO OVERFLOW screen data records in TABLES A, B, C. In TABLE A, these two screens itemize ten possible taco-related items (just as the template displays in FIG. 8 have ten possibilities). By matching item identifier-strings in TABLES A and B, it is clear that only item (1) REGTACO, item (3) TACO-SUP, item (5) SOFTTACO, and item (7) BEANTACO of the TACO and TACO OVERFLOW screens are found in both the TABLE A TEMPLATE and the TABLE B DATABASE. TABLE C also illustrates this. Therefore, in this example, only the graphic or text icons (as well as any animation, video, or audio messages) associated with these four common items will be presented in the four item cells 182a, 182c, 182g, 182d of configured display 180'. FIG. 11 illustrates how menu branch cells of a template presentation can be organized on a template menu display 200 and its hidden overflow display 210. Each menu cell is considered a "branch" cell because it can call-up/point to another display--in the case of a menu branch cell, it typically calls-up a display containing a category of items (e.g., a TACO menu branch cell will be associated with TACOS screen(s), or a DRINKS menu branch will call-up DRINKS screen(s) as illustrated in TABLES A, B, C). The three menu branch cell locations 202a through 202c are each associated with their own track of items. A "hidden" overflow branch cell 202d has been associated (as represented by an arrow 208) with a hidden overflow menu display 210 that contains two alternate menus for each display 200 menu: track #1 has alternates at cells 212a, 212b; track #2 has alternates at cells 212c, 212d; and track #3 alternates are at cells 212e, 212f. This allows for great flexibility in choosing different menus when creating or modifying the database. Hidden overflow branch cell 202d will not be seen in a customer presentation, it merely provides a way to store and use for presentation, alternate menu cells. The flow diagram in FIG. 12 provides (at 220) preferred configuration details. As explained with FIG. 3, a template presentation can be created on a computer (using well known tools and techniques) with available components 62, 64, 66 and new template records and instructions (shown at 68). The template can be created at many different locations (such as at the facility with managing responsibility of the sales outlet, on a different floor or office of the building in which the sales outlet is located, at a third party service/support provider's facility, etc.,) to include a complete listing of available items and their associated characteristics, dialog control file default parameters, instructions, etc. A site-specific database (as represented at 86 in FIG. 3) can be generated (using well known tools and techniques) to include items intended for sale at a sales outlet. FIG. 12 illustrates a preferred method of configuring the template and database for presentation to a customer. Writing code (using a computer language of choice) to implement the configuration process of the invention, can be readily done by those skilled in the art using the information contained herein. Configuring can begin, at 222, with the matching of template and database item identifier-strings (or other "key")--see TABLES A, B, and C. Items for which no common identifier-string can be found in the template (following arrow 225a), are treated as non-existent 226 (see, also, the far right-hand column in TABLE B). If an item identifier-string match can be made 224, 225b, the database PLU number of that matched item is then mapped 228 for use during configuring (and for subsequent use in ordering items from the sales outlet inventory/stock area). Shown next in FIG. 12 at 230, is a preferred point at which the following can be addressed: (a) discrepancies between data records (or other information) of the database and original template, (b) any modifications made to the database, and (c) any updating done to the template presentation. Several possibilities exist in connection with handling (a) discrepancies between information in the database and original template. To the extent the database records contain the most-current information (especially local prices and local tax rates), then discrepancies need to be resolve by writing over template data fields. To the extent the template presentation contains the most-current information (or, perhaps, the template contains the only information--for example, certain instructions/dialog control files will, preferably, be absent from the database), discrepancy resolution results in writing over database records (and where instructions/dialog control files, etc., are a part of the template and missing from the database, template files will be used during configuration). Turning next to (b) database modifications, as was mentioned earlier, it is preferable to detect which portion of the customer presentation will be affected by any modification made, and then change the affected portion. Similarly, in the case of (c) template updates, although slightly more complex to accomplish, the process of detecting which portion of the customer presentation will be affected by the updates is also preferred. Computer code can be readily written for this step 230 that addresses and handles (a) database-template discrepancies, (b) database modifications, and (c) template updates, to produce an up-to-date set of records and instructions during configuration. Next, it may be desirable to write the matched items to a CONFIGURED item-LIST (following steps 232, 234, 236 along arrow 235a) that includes the mapped PLU numbers (TABLE C is an example of the CONFIGURED-item LIST). This type of LIST might be useful to optimize the configuration process by allowing for comparison between LISTs generated during previous configurations, and to aid in diagnosing configuration problems/bugs. If no CONFIGURED item-LIST is desired (following arrow 235b), the template records are used. PLU numbers should then be mapped to the template presentation. As mentioned earlier, a sales outlet typically has attached its own numeric string (for example, a three-digit PLU number) to each of the items for sale at the outlet. It is preferred to allow each sales outlet to continue to use its own internal item-ordering computer hardware and algorithms for ordering from inventory and data analysis. The new process and system of the invention make this possible by proper mapping of PLU numbers. Remember that if no CONFIGURED item-LIST (such as TABLE C) is written and, instead, the template presentation is used, the template must be adjusted to contain the most-current information. Arrow 237 leads into the method of "tagging" cells or other data records to tailor the presentation to outlet customers. The "tagging" of data records during configuration will be explained in connection with both displays 180, 190 in FIG. 9, left-hand display 200 of FIG. 11, the flow chart in FIG. 12, and displays 260, 280, 290 in FIG. 13. By way of example and for simplicity, these figures represent cell locations that can be displayed on computer monitor, video, and television screens. Nevertheless, in the event a presentation is made to a customer via an sound-presentation-only electronic device (telephone, speaker, etc.), sequenced audio messages can likewise be organized into groups and tagged for presentation. Additionally, an icon (including graphics and/or alphanumeric characters) enclosed within a cell location can be replaced with an animated (motion-graphics) or video message. Furthermore, a cell location can be associated with an animated, video, or audio message presented after interaction with the cell by a customer (e.g., after a cell on a screen is touched by the customer, or an associated message is seen or heard). Turn, first, to the middle of FIG. 12 at box 238. If the electronic device has a screen and the template item information has been organized by screens, tagging of data records for presentation is preferably done screen-by-screen. If no such screen is available for presentation, tagging of data records is done in a sequenced fashion--preferably in a manner consistent with the way records have been organized in the template presentation. Since every matched item is intended for sale, these should be tagged active 240 (represented by an "A" in the right-hand columns of TABLES A and C). Display 280 in FIG. 13 illustrates that the tagging "A" for presentation of matched item records can be done in a first pass ("pass 1") of all screens in the template presentation. During pass 1, any general template record (such as fixed general cells 284a through 284d of display 280 and 294a through 294d of overflow display 290) can also be tagged active for display (see 242, 243a, 244 in FIG. 12). Note that, during pass 1, branch cells (e.g., FIG. 13 menu branch cells 262a through 262c and overflow branch cell 282f) are not determinable ("pass 1--ND" as shown at 266a for cell 262a). This is due to the organization by-screen of different cell types and because a screen-by-screen tagging method is being used here. In FIG. 13, until all items associated with track 1 on displays 280, 290 are determined active or inactive, overflow branch cell 282f cannot be determined active (for displaying either a "MORE ITEMS" or a sixth-item icon). Likewise, menu branch cell 262a cannot be determined active until all items on its branch displays 280, 290 (this association is represented by arrow 264) have been determined active or inactive. Note that dashed-line overflow branch cell 262d will not be included in a customer presentation. The following pseudocode describes, generally, one embodiment of the configuration operation for use with an a monitor and customer-interactive screen:
______________________________________
1. Retrieve current POS structures.
2. Create store buffer file(s), if desired, that include template
buffer
files, database records/modifications (including default parameter
settings and dialog control files).
3. Build a CAT item list
for each item in the item template
{
Use the designated POS key (such as item abbreviations) to
match the items in the POS item-identifier string to
database PLU's and convert the POS string to real PLU
values.
If the match is invalid
then
mark the item as non-existent.
otherwise
{
Adjust the item price to the price specified in the POS
database. If the POS string refers to more than one
PLU, then the price will be the addition of the prices
of the individual components.
Adjust the tax codes to what the POS specifies.
}
Write the configured item to the CAT item list.
}
}
4. Configure Screen Cells to determine if active
{
Pass 1
{
for each cell on every screen in the template item files
{
if configuration instructions specify that the cell
depends on a tag counter
then
{
if this cell has a counter tag associated with it
then
Increment a Pending Counter for this counter
variable. The Pending Counter keeps track of
how many cells affecting a given counter
have not been configured yet.
no other processing of this cell during this pass.
}
otherwise, if the cell is a hidden overflow branch cell
{
Mark the cell as inactive.
}
otherwise
{
Perform the configuration instructions for the cell.
Mark the cell active or inactive depending upon
instruction results.
If cell is active, increment appropriate tag
counter.
}
}
}
Pass 2 - N: while all cells are not configured and as long as at
least one cell is configured during each loop
{
for all cells not configured yet on every screen in the
template
{
if the cell instructions depend on a counter that has a
Pending Count not, yet, equal to 0
then
skip this cell for this pass.
otherwise
{
Compute the configuration instructions
Mark the cell as active or inactive depending
upon results.
If the cell affects a counter
then
{
if the cell is active, increment counter.
if the counter has a Pending Count, then
decrement the count.
}
}
}
}
If configuring stops because no changes were made in the last
loop, but there are still unconfigured cells,
then
{
for all cells on all screens that are still not configured
{
write an error message to a configuration report.
mark cell as inactive.
}
}
}
Add counter data to store buffer files, if created and a variable
referencing the counters have been defined, for reference by
dialog control file programs.
}
5. Create the CAT presentation
{
for every screen in the template that is not an overflow screen
{
for each fixed cell on the screen
{
if the cell is inactive, then make it blank.
}
for each cell group on this screen and its
overflow
{
Move active cells to fill in locations vacated by
inactive cells.
Special Conditions:
1. Cells maintain their relative ordering.
2. The overflow branch pointer cell on a main screen
or its overflows can be replaced with an item cell
if the overflow branch screen will not be needed, or
if the overflow branch cell is inactive.
3. Active tracked cells that are fixed in position should
not be relocated. Other tracked cells should flow
around them.
}
If changes have been made that effect the screen layout
then
Compile the graphic for the main screen and any
overflow screens that were required.
}
}
______________________________________
The tagging of branch cells, as described above, has been represented in FIG. 12 at 246, 248 along arrow 247a. Return, again, to the tagging of FIG. 13 overflow branch cell 282f: it will be tagged active if a counter value (which has been "counting" all the activated track 1 item cells as tagging takes place) reaches six. If the counter value equals six, activated cell 282f will display the sixth item. If the counter value reaches seven or more, cell 282f will display a "MORE ITEMS" icon as previously discussed. When this screen-by-screen tagging method is employed, in general, a branch cell can be determined active or inactive only after all cells have been determined on a dependent branching display (such as display 280). Thus, overflow branch cell 282f can only be determined active during a later pass ("pass2") through the screens. In the case of menu branch cell 262a, it will be tagged active in this example during a subsequent pass of the screens (represented by "pass3-A" at 266c). This is because it will take at least a second pass (here, represented "pass2") of the screens to finally determine whether all branching display cells located on displays 280, 290 are active or inactive. Likewise, in the event an additional level of branching is desired to call-up menu display 260, the additional-level branch cell cannot be determined active or inactive until all menu cells on 260 have been determined. Thus, a subsequent "pass4" (not shown) of the screens could be done. In the flow diagram of FIG. 12, arrows 243b and 247b represent it is possible that no general template records and/or branch cells are included in a template undergoing configuration. To complete the process, 250 illustrates that data records tagged as "active" for presentation, will become part of the presentation made to a customer. Computer routines (such as that shown at 92 as Waitor) and tools for downloading and presenting, via an electronic device, the configured presentation, are readily coded. While certain representative embodiments and details have been shown for the purpose of illustrating the invention, those skilled in the art will readily appreciate that various modifications may be made to the invention without departing from the novel teachings or scope of this invention. Accordingly, all such modifications are intended to be included within the scope of this invention as defined in the following claims. In the claims, any means-plus-function clauses used are intended to cover the structures described herein as performing the recited function and not only structural equivalents but also equivalent structures (an example of the latter being a nail and screw in the environment of fastening parts).
|
Same subclass Same class Consider this |
||||||||||
