Overview
Many organizations that use Archtics customize their price codes and/or event codes to represent a wide assortment of details. The structures of these codes are completely customizable and unique to each organization. For example, price code "S301" could represent reduced student pricing for a single-game ticket in section 3, while "S310" might represent season tickets for the same section at student pricing. Organizations typically have hundreds of price codes.
By sharing your structure with KORE, you can use the coded information within DWA. This data is used in three standard dashboards: primary ticket, secondary market, and broker analysis. You can also take advantage of this data in your own custom Tableau reports.
Ticket coding is stored in the korebi
(KORE Business Intelligence) schema. This is a special schema within DWA—you will be able to insert and delete rows within a table so that you can keep the structure up to date, but you cannot create or drop tables within the schema.
Important: Since KORE has no way of knowing when and how your organization changes its ticket coding structure, it is your responsibility to keep this data up to date. We recommend that you review your ticket coding structure at least annually (prior to beginning a new season).
Create the initial schema
Complete the workbook
The workbook contains several worksheets (tabs). In the Q&A worksheet, answer the questions in the provided column. If instructed in the follow-up section, enter additional details at the bottom of the worksheet. Next, complete the tables on each of the other worksheets.
Typically, an organization's box office staff maintains the ticket coding structure and can help you complete the workbook.
lkup_tix_manifest worksheet
In Archtics, the manifest code represents a high-level group of ticket sales. Most organizations use this to group together all the ticket sales for one season. When an organization owns more than one team or uses more than one venue, they normally use a different manifest code for each unique combination of season, venue, and team:
Team name | Venue name | Manifest code | Season year | Sport name | League abbr. |
KORE Knights | K Stadium | AB123 | 2021 | Lacrosse | ABC |
KORE Knights | K Stadium | CD456 | 2022 | Lacrosse | ABC |
KORE Knights | K Arena | EF789 | 2022 | Lacrosse | ABC |
Jr. Knights | K Arena | GH012 | 2022 | Lacrosse | DEF |
lkup_tix_section_type worksheet
Complete one row for every range of seats in the venue. All seats within a range must share identical details (same reporting category, parent code, ADA/SRO flags, etc.) For example, suppose a section has accessible seating at the ends of each row:
Section | Row range | Seat range | Category | Parent code | ADA flag | SRO flag | Venue level | Seat view | Venue side |
201 | A-J | 1 | C | Y | N | Lower | Endzone | North | |
201 | A-J | 2-20 | C | N | N | Lower | Endzone | North | |
201 | A-J | 21 | C | Y | N | Lower | Endzone | North |
(If you prefer, you may alternatively complete a table row for every individual seat in the venue.)
Submit to KORE
Provide these resources to your KORE Success Manager:
- The completed Excel workbook
- An Archtics Seats Sold report:
- No exclusion filters
- A completed, regular season game
- From the current or most recent season
- A box office report for the same game showing ticket sales broken out by your organization's key ticket types (such as full season, partial season, individual, group, comp, etc…)
KORE will create the schema and tables using your completed workbook, then verify the data using the provided reports. Due to the amount of manual work involved, please allow us 2-3 weeks to complete this.
Update the data
During the initial setup, KORE will create several SQL queries used to write data into the tables. We will provide these queries to you after setup is complete. When your organization makes changes to ticket coding in the future, you can modify these queries and run them to update the tables.
For example, suppose that your box office adds a new price code category. You would take this SQL query provided by KORE, add the new category 'Supporters Section' to it, and run the query:
-- First, delete the old values:
DELETE korebi.lkup2_tix_pricecode_category;
-- Next, add all the values (new and old alike) to the empty table:
INSERT INTO korebi.lkup2_tix_pricecode_category
(pricecode_categorysid, pricecode_category_desc)
VALUES
(1,'Suites'),
(2,'Premium'),
(3,'General Admission'),
(4,'Supporters Section') -- NEW CATEGORY
;
-- Finally, verify that the results match expectations:
SELECT TOP 100 * FROM korebi.lkup2_tix_pricecode_category;
SELECT COUNT(*) FROM korebi.lkup2_tix_pricecode_category;
The purpose of deleting existing data is to avoid duplicating records within the table. The query you are modifying is the same one KORE used to initially populate the table—since you're adding the same data back again (along with your updates), no information is lost.
Queries for the lkup
tables are frequently more complex than those for the lkup2
tables. A KORE representative will meet with you to review the SQL queries when we provide them to you.
Schema structure
Note: Some fields, or even tables, may contain no data. This is normal and reflects the highly customized nature of ticket coding.
The korebi
schema has two main types of tables: lkup
(look up) and lkup2
. The main lkup
tables contain various "code" fields that act as foreign keys to the corresponding lkup2
tables. The lkup2
tables contains text descriptions for many (but not all) of the codes. For example:
By using code fields in this manner, it is much easier and faster to change a code's description. It also helps avoid data entry deviations (like capitalization differences or typos) that could occur if the description were directly included in each row of a lkup
table.
ERD and data dictionary
(For clarity, some column names are omitted from this ERD.)
Important: This schema exists to help categorize data stored in other schemas. For several lookup tables, you'll need to obtain the keys from another source, such as the fact and dimension tables. Because Amazon Redshift does not enforce table constraints, keys are not guaranteed to identify a single unique row.
Data dictionary
Table | Column | Ordinal | Data type | Length |
lkup_gamedatetime | gamesid | 1 | varchar | 50 |
lkup_gamedatetime | leaguesid | 2 | varchar | 20 |
lkup_gamedatetime | hometeamsid | 3 | varchar | 60 |
lkup_gamedatetime | visitorteamsid | 4 | varchar | 60 |
lkup_gamedatetime | gamedatetime | 5 | timestamp | |
lkup_gamedatetime | homedatetime | 6 | timestamp | |
lkup_gamedatetime | utcdatetime | 7 | timestamp | |
lkup_gamedatetime | awaydatetime | 8 | timestamp | |
lkup_gamedatetime | league | 9 | varchar | 20 |
lkup_gamedatetime | hometeamname | 10 | varchar | 50 |
lkup_gamedatetime | awayteamname | 11 | varchar | 50 |
lkup_gamedatetime | team | 12 | varchar | 25 |
lkup_gamedatetime | dwaupdatedate | 13 | timestamp | |
lkup_seatxy | section_label | 1 | varchar | 50 |
lkup_seatxy | row_label | 2 | varchar | 50 |
lkup_seatxy | seat_number | 3 | varchar | 50 |
lkup_seatxy | seat_center_x | 4 | int | |
lkup_seatxy | seat_center_y | 5 | int | |
lkup_seatxy | venuesid | 6 | varchar | 50 |
lkup_seatxy | seatsid | 7 | varchar | 100 |
lkup_tix_event_type | venuesid | 1 | varchar | 36 |
lkup_tix_event_type | manifestsid | 2 | varchar | 36 |
lkup_tix_event_type | season_year | 3 | varchar | 20 |
lkup_tix_event_type | eventcode | 4 | varchar | 20 |
lkup_tix_event_type | roundsid | 5 | int | |
lkup_tix_event_type | pricing_tiersid | 6 | int | |
lkup_tix_events_in_plan | venuesid | 1 | varchar | 36 |
lkup_tix_events_in_plan | manifestsid | 2 | varchar | 36 |
lkup_tix_events_in_plan | season_year | 3 | varchar | 20 |
lkup_tix_events_in_plan | plancode | 4 | varchar | 20 |
lkup_tix_events_in_plan | eventcode | 5 | varchar | 20 |
lkup_tix_manifest | venuesid | 1 | varchar | 36 |
lkup_tix_manifest | manifestsid | 2 | varchar | 36 |
lkup_tix_manifest | season_year | 3 | varchar | 20 |
lkup_tix_manifest | sport_categorysid | 4 | int | |
lkup_tix_manifest | league_categorysid | 5 | int | |
lkup_tix_manifest | property | 6 | varchar | 50 |
lkup_tix_parentcode | venuesid | 1 | varchar | 36 |
lkup_tix_parentcode | manifestsid | 2 | varchar | 36 |
lkup_tix_parentcode | season_year | 3 | varchar | 20 |
lkup_tix_parentcode | parent_code | 4 | varchar | 10 |
lkup_tix_parentcode | parent_code_group_tier | 5 | varchar | 50 |
lkup_tix_parentcode | parent_code_group_name | 6 | varchar | 50 |
lkup_tix_parentcode | parentcode_capacity | 7 | int | |
lkup_tix_plan_type | venuesid | 1 | varchar | 36 |
lkup_tix_plan_type | manifestsid | 2 | varchar | 36 |
lkup_tix_plan_type | season_year | 3 | varchar | 20 |
lkup_tix_plan_type | roundsid | 4 | int | |
lkup_tix_plan_type | plancode | 5 | varchar | 20 |
lkup_tix_plan_type | plan_categorysid | 6 | int | |
lkup_tix_plan_type | plan_subcategorysid | 7 | int | |
lkup_tix_plan_type | multigame_flag | 8 | varchar | 1 |
lkup_tix_pricecode | venuesid | 1 | varchar | 36 |
lkup_tix_pricecode | manifestsid | 2 | varchar | 36 |
lkup_tix_pricecode | season_year | 3 | varchar | 20 |
lkup_tix_pricecode | pricecode | 4 | varchar | 30 |
lkup_tix_pricecode | parent_code | 5 | varchar | 10 |
lkup_tix_pricecode | pricecode_categorysid | 6 | int | |
lkup_tix_pricecode | pricecode_subcategorysid | 7 | int | |
lkup_tix_pricecode | season_pricecode_flag | 8 | varchar | 1 |
lkup_tix_pricecode | indiv_pricecode_flag | 9 | varchar | 1 |
lkup_tix_pricecode | group_flag | 10 | varchar | 1 |
lkup_tix_pricecode | comp_flag | 11 | varchar | 1 |
lkup_tix_pricecode | sale_categorysid | 12 | int | |
lkup_tix_pricecode | sale_subcategorysid | 13 | int | |
lkup_tix_pricecode | seller_categorysid | 14 | int | |
lkup_tix_pricecode | master_categorysid (DEPRECATED) | 15 | int | |
lkup_tix_pricecode | master_subcategorysid (DEPRECATED) | 16 | int | |
lkup_tix_section_type | venuesid | 1 | varchar | 36 |
lkup_tix_section_type | manifestsid | 2 | varchar | 36 |
lkup_tix_section_type | season_year | 3 | varchar | 20 |
lkup_tix_section_type | section_label | 4 | varchar | 50 |
lkup_tix_section_type | row_label | 5 | varchar | 50 |
lkup_tix_section_type | seat_number | 6 | varchar | 50 |
lkup_tix_section_type | seat_categorysid | 7 | int | |
lkup_tix_section_type | seat_subcategorysid | 8 | int | |
lkup_tix_section_type | parent_code | 9 | varchar | 10 |
lkup_tix_section_type | ada_flag | 10 | varchar | 1 |
lkup_tix_section_type | sro_flag | 11 | varchar | 1 |
lkup_tix_section_type | venue_level | 12 | varchar | 50 |
lkup_tix_section_type | seat_view | 13 | varchar | 50 |
lkup_tix_section_type | venue_side | 14 | varchar | 50 |
lkup_tix_venue_gate | venuesid | 1 | varchar | 36 |
lkup_tix_venue_gate | season_year | 2 | varchar | 20 |
lkup_tix_venue_gate | parent_gate | 3 | varchar | 50 |
lkup_tix_venue_gate | gate | 4 | varchar | 50 |
lkup2_tix_league_category | league_categorysid | 1 | int | |
lkup2_tix_league_category | league_category_desc | 2 | varchar | 50 |
lkup2_tix_plan_category | plan_categorysid | 1 | int | |
lkup2_tix_plan_category | plan_category_desc | 2 | varchar | 50 |
lkup2_tix_plan_subcategory | plan_subcategorysid | 1 | int | |
lkup2_tix_plan_subcategory | plan_subcategory_desc | 2 | varchar | 50 |
lkup2_tix_pricecode_category | pricecode_categorysid | 1 | int | |
lkup2_tix_pricecode_category | pricecode_category_desc | 2 | varchar | 50 |
lkup2_tix_pricecode_subcategory | pricecode_subcategorysid | 1 | int | |
lkup2_tix_pricecode_subcategory | pricecode_subcategory_desc | 2 | varchar | 50 |
lkup2_tix_pricing_tier | pricing_tiersid | 1 | int | |
lkup2_tix_pricing_tier | pricing_tier_desc | 2 | varchar | 50 |
lkup2_tix_round | roundsid | 1 | int | |
lkup2_tix_round | round_desc | 2 | varchar | 50 |
lkup2_tix_sale_category | sale_categorysid | 1 | int | |
lkup2_tix_sale_category | sale_category_desc | 2 | varchar | 50 |
lkup2_tix_sale_subcategory | sale_subcategorysid | 1 | int | |
lkup2_tix_sale_subcategory | sale_subcategory_desc | 2 | varchar | 50 |
lkup2_tix_season_type | season_typesid | 1 | int | |
lkup2_tix_season_type | season_type_desc | 2 | varchar | 50 |
lkup2_tix_seat_category | seat_categorysid | 1 | int | |
lkup2_tix_seat_category | seat_category_desc | 2 | varchar | 50 |
lkup2_tix_seat_subcategory | seat_subcategorysid | 1 | int | |
lkup2_tix_seat_subcategory | seat_subcategory_desc | 2 | varchar | 50 |
lkup2_tix_seller_category | seller_categorysid | 1 | int | |
lkup2_tix_seller_category | seller_category_desc | 2 | varchar | 50 |
lkup2_tix_sport_category | sport_categorysid | 1 | int | |
lkup2_tix_sport_category | sport_category_desc | 2 | varchar | 50 |
Table descriptions
Note: Only the tables beginning with lkup
are part of Archtics ticket coding. The korebi
schema also includes other, unrelated tables.
Table | Description |
lkup_gamedatetime | Lists each game, the teams playing, and the start time |
lkup_numbers | For internal use |
lkup_seatxy | X, Y coordinates of each seat within the arena that tickets may be sold for |
lkup_tix_event_type | Maps the event code to a manifest, round ID, and pricing tier ID |
lkup_tix_events_in_plan | For each event code, specifies a plan code |
lkup_tix_manifest | Assigns a manifest ID for each unique combination of season year, sport category, league category, and property (i.e. team) |
lkup_tix_parentcode | A grouping for section types, which also specifies the group's seating capacity |
lkup_tix_plan_type | Lists the different plan codes and maps them to plan category and sub-category IDs |
lkup_tix_pricecode | Lists all unique price codes and maps them to other tables. |
lkup_tix_section_type | Maps each individual seat to seat category and subcategory IDs, along with a parent code for the section's more general type |
lkup_tix_venue_gate | List of each specific gate and its parent gate |
lkup2_master_category | Deprecated |
lkup2_master_subcategory | Deprecated |
lkup2_tix_league_category | Text description (e.g., NFL, MLB, etc.) |
lkup2_tix_plan_category | Text description (e.g., Full season, Flex plan, etc.) |
lkup2_tix_plan_subcategory | Text description (e.g. Season A, Prorated 10 games, etc.) |
lkup2_tix_pricecode_category | Text description (e.g., Single game, Comp, etc.) |
lkup2_tix_pricecode_subcategory | Text description (e.g., Player Tunnel, Supporters, etc.) |
lkup2_tix_pricing_tier | Text description (e.g., A, EX, Low cost, etc.) |
lkup2_tix_round | Text description (e.g., Regular season, Playoffs, etc.) |
lkup2_tix_sale_category | Text description (e.g., New, Renewal, etc.) |
lkup2_tix_sale_subcategory | Text description (e.g., Online, Phone rep, etc.) |
lkup2_tix_season_type | Deprecated |
lkup2_tix_seat_category | Text description (e.g., Club, Suite, Standard, etc.) |
lkup2_tix_seat_subcategory | Text description (e.g., accessible, etc.) |
lkup2_tix_seller_category | Text description (e.g., Box office, Fan resale, etc.) |
lkup2_tix_sport_category | Text description for organizations with teams across multiple sports (e.g., baseball, football, etc.) |