BI solution project

profileAnh3phecan
finalprojectBI.zip

New folder (2)/EnrollmentTracker Database.sql

/************************************************************** Title: Enrollment Tracker Database Dev: RRoot ChangeLog: When,Who,What 2020-01-01,RRoot,Created Script *************************************************************/ --[ Create database ]-- -- Run this script to create the database If Exists(Select name from master.dbo.sysdatabases Where Name = 'EnrollmentTracker') Begin Use [master]; Alter Database EnrollmentTracker Set single_user with rollback immediate; Drop Database EnrollmentTracker; End; Go Create Database EnrollmentTracker; Go USE EnrollmentTracker; Go --[ Create Tables ]-- Create Table Students (StudentID int Not Null Identity Constraint pkStudents Primary Key ,FName nvarchar(70) Not Null ,LName nvarchar(60) Not Null ,Email nvarchar(55) Not Null ); Go Create Table Courses ([CourseID] int Not Null Identity Constraint pkCourses Primary Key ,[Name] nvarchar(80) Not Null ,[Price] money Constraint ckCoursesPrice Check(Price > 0) ); Go Create Table Buildings ([BuildingID] int Not Null Identity(1,1) Constraint pkBuildings Primary Key ,[Name] nvarchar(100) Not Null ); Go Create Table Classrooms ([ClassroomID] int Not Null Identity(100,100) Constraint pkClassrooms Primary Key ,[Name] nvarchar(100) Not Null ,[BuildingID] int Null Constraint fkClassroomsToBuildings Foreign Key References Buildings(BuildingID) ); Go Create Table CourseSessions ([CourseID] int Not Null Constraint fkClassSessionToCourses Foreign Key References Courses(CourseID) ,[ClassroomID] int Not Null Constraint fkClassSessionToClassrooms Foreign Key References Classrooms(ClassroomID) ,[Date] date Not Null ,[Start] int Null ,[End] int Null ,Constraint pkCourseSessions Primary Key ([CourseID], [ClassroomID],[Date]) ); Go Create Table Enrollments ([EnrollmentID] int Not Null Identity Constraint pkStudentCourses Primary Key ,[CourseID] int Not Null Constraint fkStudentCoursesToCourses Foreign Key References Courses(CourseID) ,[StudentID] int Not Null Constraint fkStudentCoursesToStudents Foreign Key References Students(StudentID) ,[Price] money Not Null Constraint ckStudentCoursesPrice Check(Price > 0) ,[EnrollmentDate] date Not Null ); Go --[ Add Data ]-- Insert Into [dbo].[Courses] ([Name], [Price]) Values ('SQL1', 399.00) ,('SQL2', 399.00); Go Insert Into [dbo].[Students] ([FName], [LName], [Email]) Values ('Bob','Smith','[email protected]') ,('Sue','Jones','[email protected]'); Go Insert Into [dbo].[Enrollments] ([CourseID], [StudentID], [Price], [EnrollmentDate]) Values (1,1,350.00,'20200102') ,(2,1,350.00,'20200102') ,(1,2,399.00,'20200103'); Insert Into [dbo].[Buildings] ([Name]) Values ('Bld-A') ,('Bld-B') Go Insert Into [dbo].[Classrooms] ([Name],[BuildingID]) Values ('Room 1A', 1) ,('Room 1B', 1) ,('Room 2A', 1) ,('Room 2B', 1) ,('Room 1A', 2) ,('Room 1B', 2) ; Go Insert Into [dbo].[CourseSessions] ([CourseID], [ClassroomID], [Date], [Start], [End]) Values (1,100,'20200204','1800','2100') ,(1,100,'20200206','1800','2100') ,(1,200,'20200211','1800','2100') ,(2,400,'20200213','1800','2100') ,(2,400,'20200218','1800','2100') ,(2,400,'20200220','1800','2100'); Go --[ Show Data ]-- Select * From [dbo].[Buildings]; Select * From [dbo].[Classrooms]; Select * From [dbo].[Courses]; Select * From [dbo].[Students]; Select * From [dbo].[CourseSessions]; Select * From [dbo].[Enrollments]; Go --[ Show MetaData ]-- Select Name, Type From SysObjects Where xtype in ('u', 'pk', 'f') Order by 2 desc,1; SELECT [TABLE_NAME] ,[COLUMN_NAME] ,[IS_NULLABLE] ,[DATA_TYPE] ,[CHARACTER_MAXIMUM_LENGTH] ,[NUMERIC_PRECISION] ,[NUMERIC_SCALE] FROM [INFORMATION_SCHEMA].[COLUMNS]; Go

New folder (2)/Finalproject.docx

Enrollment Tracker BI Solution Project

In this project, you play the role of a new employee at a training company. You have been tasked with creating a BI solution for tracking enrollments in training classes.

Project Scope

Since you are a new employee, your manager has created a simplified version of the actual OLTP database to work with. Your job will be to use this simple database to create a basic example of the BI reporting solution your company wants. This basic solution must include a data warehouse, a SQL ETL script, a SSIS Package that uses the ETL script's code, and some example reports. The solution must also contain developer documentation in the form of an Excel spreadsheet.

Required:

· (1) SQL Server Data warehouse Script

· (1) SQL ETL Script

· (1) SSIS Package

· (1) Developer document (Excel spreadsheet)

· (2) Demo reports (Excel and PowerBI)

OLTP Source Database

You first need to create the project database called "EnrollmentTracker." Your manger (teacher) has provided a SQL script to create this database called, "EnrollmentTracker Database.sql." Run it to create the database!

The OLTP source Database consists of the following tables:

Timeline

The project contains 4 milestones. Each of these milestones are a portion of the overall BI solution. The milestones are:

Design and Begin Documentation

In milestone 01, you must create developer design documentation using an Excel spreadsheet and add it new Visual Studio Solution. You learned to do this in modules 1 to 3. 

Create the Data Warehouse

In milestone 02, you need to create the Data Warehouse script and add it to your Visual Studio Solution. You learned to do this in module 4. 

Create the ETL Process with SQL and SSIS

In milestone 03, you need to create an ETL script and add it to your Visual Studio Solution. You also need to add and configure an SSIS project in your Visual Studio Solution that uses your ETL code. You learned to do this in modules 5 and 6.

Create Reports and Lessons Learned Documentation

In milestone 04, you need to create two reports (Excel and Power BI), plus updated documentation in your Visual Studio solution. The steps to do this covered are in the 8th modules of this class. 

When all the work for each milestone is completed, zip the Solution folder, Rename the zip file to "YourNameFinal.zip", and submit your work to Canvas. Make sure that all the files and the SSIS project are in the Visual Studio solution and that they are accessible (Figure 03).