Inventory Data Warehouse
Inventory Data Warehouse
The Inventory Data Warehouse provides data to answer business intelligence questions
about inventory transaction cycles. The data warehouse was created by a former database student
for an independent study project. The former student had a strong background about inventory
transaction cycles through his work with the OneWorld product of the former J.D. Edwards (now
part of Oracle).
This document provides background on inventory transaction concepts, details about the
snowflake schema to support inventory transaction cycles, and a data dictionary about the table
design for the data warehouse. You will use the Inventory Data Warehouse for the assignment in
The course website contains SQL statements to create and populate the Inventory Data
Warehouse tables for both Oracle and MySQL. In course 2, you can use either Oracle or MySQL
for the assignment in module 5. When using Oracle for the assignment in module 5, you need to
create a sequence. The Oracle CREATE SEQUENCE statement is contained in the document
with Oracle CREATE TABLE statements. In course 3, you need to use Oracle for all
assignments.
and/or distribution company. Inventory transactions are frequent and commonplace. The
volume and significance of inventory transactions make them important in a data warehouse
design.
Because inventory management is a common and important yet difficult activity in many
organizations, ERP vendors have developed Enterprise Resource Management (ERP) software to
1/13/2021 Inventory Data Warehouse Description Page 2
provide software support. Typically, ERP software provides modules related to Manufacturing,
Manufacturing and Distribution/Logistics modules. The work order, sales, and purchase life
cycles affect the perpetual inventory balance as shown in Figure 1. In addition, inventory
transactions including adjustments, transfers, issues, and reclassifications affect the perpetual
inventory balance.
Work Order
Pick List Generation Purchase Order Transfer
Generation
Inventory
Work Order Completions Transactions
Perpetual
Inventory Adjustments
Inventory
Manufacturing Accounting Master DB
Inventory Transfers
Perpetual Inventory
Transactions
Simple Issues
Inventory
Reclassifications
for the perpetual inventory balance. The snowflake schema provides a template that can be
an organization to customize the design to specific requirements. The fact entity type,
1/13/2021 Inventory Data Warehouse Description Page 3
entity types. Several dimension entity types are related directly to the Inventory_Fact entity type.
Other dimension entity types such as Item_Cat_Code1 are indirectly related to the
date_dim inventory_fact
Summary_by_Day
DateKey InventoryKey trans_type_dim
Inventory_Transaction
CalDay zip_codes BranchPlantKey TranTypeKey
CalMonth ZipKey CustVendorKey TransDescription
CalQuarter ZipCity DateKey TransTypeCodeId
CalYear ExtCost Inventory_Facility
ZipConcec
DateJulian ZipState ItemMasterKey
DayofWeek ZipWeight Quantity
FicalYear TransTypeKey branch_plant_dim
ZipZip
FiscalPeriod UnitCost BranchPlantKey
defines Related_Address_Book BPName
Part_Number_ BranchPlantId
addr_cat_code1 item _cat_code1 CarryingCost
CompanyKey
AddrCatCodeKey ItemCatCodeKey
CostMethod
cust_vendor_dim AddrCatCodeId ItemCatCodeId
AddrCatDesc ItemCatDesc
CustVendorKey item _m aster_dim
AddrBookId Ow ning_Company
ItemMasterKey
AddrCatCode1 Addr_Code1 Item_Code1 ItemCatCode1
AddrCatCode2 ItemCatCode2
Addr_Code2 Item_Code2
Address ItemDesc com pany_dim
City SecondItemId CompanyKey
Country ShortItemId
addr_cat_code2 item _cat_code2 CompanyId
Name ThirdItemId
AddrCatCodeKey ItemCatCodeKey CompanyName
PrimZip UOM
AddrCatCodeId ItemCatCodeId CurrencyCode
State
AddrCatDesc ItemCatDesc CurrencyDesc
Zip
The ERD representation of the snowflake schema is converted to a table design using the
normal conversion rules. In the conversion process, 1-M relationships convert to foreign keys in
the child tables. Appendix A contains a data dictionary for the table design.
1/13/2021 Inventory Data Warehouse Description Page 4
Data Warehouse Schema. A number of columns are based on the Oracle OneWorld product
specifications.
This table defines address category codes related to customers/vendors. These codes allow
customers/vendors to be group. Example grouping might be customer type, customer area, etc.
This table defines address category codes related to customers/vendors. These codes allow
customers/vendors to be group. Example grouping might be customer type, customer area, etc.
This table defines item master category codes related to item masters (parts) These codes allow
part numbers to be group. Example grouping might be product class, spare part, finish good, etc.
This table defines item master category codes related to item masters (parts) These codes allow
part numbers to be group. Example grouping might be product class, spare part, finish good, etc.
This table provides the basis to create many unique customer records for a variety with a variety
of zip codes.
This table provides the date pattern. Date patterns can be daily, five days per week, weekly or
monthly.
This table defines the various types of inventory transactions. Examples include transfers,
adjustments, shipments, receipts, etc. Some of the codes may not be used in the sample data for
the trans_type_dim table.
This table defines possible customers and vendors involved with related sales and purchasing
related transactions.
This table contains the inventory transactions facts. Integer keys are used to help limit the size of
the rows. The measures are unit cost, quantity, and extended cost. InventoryKey is generated by
an Oracle sequence object (inventory_seq) in the data integration assignment in module 5 of course 2. For
the MySQL assignment in module 5, InventoryKey has an auto increment data type.
);