AMCInstall Script
AMCInstall Script
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
/
***********************************************************************************
********************************************/
/* TABLES
CREATION/UPDATE */
/
***********************************************************************************
********************************************/
END
GO
/
***********************************************************************************
********************************************/
/*
FUNCTION CREATION
*/
/
***********************************************************************************
********************************************/
IF NOT EXISTS(SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].
[EXTRACTDATE]') AND type in (N'FN'))
BEGIN
EXEC dbo.sp_executesql @statement = N'CREATE FUNCTION [dbo].[EXTRACTDATE]
(@DATE as DATETIME)
RETURNS datetime
AS
BEGIN
RETURN CAST(CAST(YEAR(@DATE) AS nvarchar) + ''-'' + CAST(MONTH(@DATE) AS
nvarchar) + ''-'' + CAST(DAY(@DATE) AS nvarchar) AS DATETIME);
END'
PRINT 'EXTRACTDATE function created'
END
GO
/
***********************************************************************************
********************************************/
/* STORED
PROCEDURES CREATION/UPDATE */
/
***********************************************************************************
********************************************/
END'
PRINT 'DeleteUserMessage SP created'
END
GO
IF @Exist != 0
UPDATE Configuration
SET Value = @Value
WHERE SectionID = @Section AND Property = @Property;
ELSE
INSERT INTO Configuration (SectionID, Property, Value)
VALUES (@Section, @Property, @Value);
END'
PRINT 'SetConfiguration SP created'
END
ELSE
BEGIN
EXEC dbo.sp_executesql @statement = N'ALTER PROCEDURE [dbo].
[SetConfiguration]
@Section nvarchar(64),
@Property nvarchar(64),
@Value nvarchar(MAX)
AS
BEGIN
DECLARE @Exist bit;
IF @Exist != 0
UPDATE Configuration SET Value = @Value WHERE SectionID =
@Section AND Property = @Property;
ELSE
INSERT INTO Configuration (SectionID, Property, Value) VALUES
(@Section, @Property, @Value);
END'
PRINT 'SetConfiguration SP updated'
END
GO
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
AS
DECLARE @ID int
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
RETURN @ID
END'
PRINT 'AddFilter SP created'
END
GO
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
END'
PRINT 'RetrieveAutoPlayList SP created'
END
GO
IF NOT EXISTS(SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].
[RemoveAutoPlayMediaTitlesList]') AND type in (N'P', N'PC'))
BEGIN
EXEC dbo.sp_executesql @statement = N'CREATE PROCEDURE [dbo].
[RemoveAutoPlayMediaTitlesList]
@UniqueID bigint
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
END'
PRINT 'RetrieveAutoPlayMediaTitlesList SP created'
END
GO
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
END'
PRINT 'AddMediaAlbum SP created'
END
GO
VALUES(@UniqueID,@AlbumID,@TrackID,@MediaType,@Status,@Preferred,@InsertionSource,0
,@Popularity,@Title,@Artist,@Author,@Editor,@Copyright,@DebutingDate,@ArrivingDate,
@StartingDate,@ExpiringDate);
END
END'
PRINT 'AddMediaTitle SP created'
END
GO
IF NOT EXISTS(SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].
[UpdateMediaTitle]') AND type in (N'P', N'PC'))
BEGIN
EXEC dbo.sp_executesql @statement = N'CREATE PROCEDURE [dbo].
[UpdateMediaTitle]
@UniqueID as bigint,
@AlbumID as bigint,
@TrackID as int,
@MediaType int,
@Status as int,
@Preferred as int,
@InsertionSource as int,
@Popularity as int,
@Title as nvarchar(128),
@Artist as nvarchar(128),
@Author as nvarchar(128),
@Editor as nvarchar(128),
@Copyright as nvarchar(128),
@DebutingDate as datetime,
@ArrivingDate as datetime,
@StartingDate as datetime,
@ExpiringDate as datetime
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
-- Normal Type = 0
SELECT Name FROM Profiles WHERE Type = 0;
END'
PRINT 'RetriveAllProfileNames SP created'
END
GO
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
UPDATE UserMessages
SET Message = @Message, XamlDocument = @XamlDocument
WHERE ID = @ID;
END'
PRINT 'UpdateUserMessages SP created'
END
GO
SELECT FacultyName
FROM ProfilesFacultiesLink
WHERE ProfileName = @ProfileName;
END'
PRINT 'RetriveProfilesFaculties SP created'
END
GO
IF @Result = 0
INSERT INTO UsersProfilesLink (UserName, ProfileName)
VALUES (@UserName, @ProfileName);
ELSE
SET @Result = 15; --- User Already Has Profile.
END'
PRINT 'RelateUserWithProfile SP created'
END
GO
SELECT UsersProfilesLink.ProfileName
FROM UsersProfilesLink
WHERE UsersProfilesLink.UserName = @UserName;
END'
PRINT 'RetriveUserProfiles SP created'
END
GO
@ID uniqueidentifier
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
END'
PRINT 'DeleteSchedule SP created'
END
GO
@ID uniqueidentifier,
@Type int,
@ActiveWeekDays int,
@AllDayEvent bit,
@StartTime datetime,
@EndTime datetime
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
UPDATE Schedules
SET Type = @Type, ActiveWeekDays = @ActiveWeekDays, AllDayEvent =
@AllDayEvent,
StartTime = @StartTime, EndTime = @EndTime
WHERE ID = @ID;
END'
PRINT 'UpdateSchedule SP created'
END
GO
IF NOT EXISTS(SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].
[AddSchedule]') AND type in (N'P', N'PC'))
BEGIN
EXEC dbo.sp_executesql @statement = N'CREATE PROCEDURE [dbo].[AddSchedule]
@ID uniqueidentifier,
@Type int,
@ActiveWeekDays int,
@AllDayEvent bit,
@StartTime datetime,
@EndTime datetime
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
END'
PRINT 'DeleteFreePlayEvent SP created'
END
ELSE
BEGIN
EXEC dbo.sp_executesql @statement = N'ALTER PROCEDURE [dbo].
[DeleteFreePlayEvent] @ID uniqueidentifier
AS
BEGIN
SET NOCOUNT ON;
DELETE FROM PlayEvents WHERE ID = @ID;
END'
PRINT 'DeleteFreePlayEvent SP updated'
END
GO
IF @Result = 0 --- OK
INSERT INTO Users (Name, Password, Removable, ExpirationDate,
LastLogonDate)
VALUES (@Name, @Password, @Removable, @ExpirationDate,
@LastLogonDate);
ELSE
SET @Result = 14; --- Preexistent User
END'
PRINT 'AddUser SP created'
END
GO
IF @Result = 1
BEGIN
SET @Result = 0; --- OK
UPDATE Users SET Password = @Password WHERE Name = @UserName;
END
ELSE
SET @Result = 13; --- Unexistent User
END'
PRINT 'UpdateUserPassword SP created'
END
GO
END'
PRINT 'RetrieveTAERefunds SP created'
END
GO
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
END'
PRINT 'RetrieveMultiplayAutoplayList SP created'
END
GO
@Table varchar(128),
@Result int = 0 out
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
Producer=@Producer,Copyright=@Copyright,Genre=@Genre,DebutingDate=@DebutingDate,Arr
ivingDate=@ArrivingDate,
UniversalId=@UniversalId,
RegistrationDate=@RegistrationDate, ReleaseYear=@ReleaseYear,
LicensedProducer=@LicensedProducer,
LicensedLabel=@LicensedLabel, UPCNumber=@UPCNumber,
ProducerId1=@ProducerId1, ProducerId2=@ProducerId2,
DistributionRegionId=@DistributionRegionId,
ContentRightsCredits=@ContentRightsCredits
WHERE UniqueID = @UniqueID;
END
ELSE
BEGIN
INSERT INTO MediaAlbums(UniqueID, LocalID, MediaType,
Status, Title, Artist, Producer, Copyright, Genre, DebutingDate, ArrivingDate,
UniversalId, RegistrationDate, ReleaseYear,
LicensedProducer, LicensedLabel, UPCNumber, ProducerId1, ProducerId2,
DistributionRegionId, ContentRightsCredits)
VALUES(@UniqueID, @LocalID, @MediaType,
@Status, @Title, @Artist, @Producer, @Copyright, @Genre, @DebutingDate,
@ArrivingDate,
@UniversalId, @RegistrationDate,
@ReleaseYear, @LicensedProducer, @LicensedLabel, @UPCNumber, @ProducerId1,
@ProducerId2, @DistributionRegionId, @ContentRightsCredits);
END
END'
END
ELSE
BEGIN
EXEC dbo.sp_executesql @statement = N'ALTER PROCEDURE [dbo].[AddMediaAlbum]
@UniqueID bigint,
@LocalID int,
@MediaType int,
@Status int,
@Title nvarchar(128),
@Artist nvarchar(128),
@Producer nvarchar(128),
@Copyright nvarchar(128),
@Genre nvarchar(128),
@DebutingDate datetime,
@ArrivingDate datetime,
@UniversalId uniqueidentifier,
@RegistrationDate datetime,
@ReleaseYear int,
@LicensedProducer nvarchar(128),
@LicensedLabel nvarchar(128),
@UPCNumber nvarchar(64),
@ProducerId1 nvarchar(64),
@ProducerId2 nvarchar(64),
@DistributionRegionId uniqueidentifier,
@ContentRightsCredits text
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
Producer=@Producer,Copyright=@Copyright,Genre=@Genre,DebutingDate=@DebutingDate,Arr
ivingDate=@ArrivingDate,
UniversalId=@UniversalId,
RegistrationDate=@RegistrationDate, ReleaseYear=@ReleaseYear,
LicensedProducer=@LicensedProducer,
LicensedLabel=@LicensedLabel, UPCNumber=@UPCNumber,
ProducerId1=@ProducerId1, ProducerId2=@ProducerId2,
DistributionRegionId=@DistributionRegionId,
ContentRightsCredits=@ContentRightsCredits
WHERE UniqueID = @UniqueID;
END
ELSE
BEGIN
INSERT INTO MediaAlbums(UniqueID, LocalID, MediaType,
Status, Title, Artist, Producer, Copyright, Genre, DebutingDate, ArrivingDate,
UniversalId, RegistrationDate, ReleaseYear,
LicensedProducer, LicensedLabel, UPCNumber, ProducerId1, ProducerId2,
DistributionRegionId, ContentRightsCredits)
VALUES(@UniqueID, @LocalID, @MediaType,
@Status, @Title, @Artist, @Producer, @Copyright, @Genre, @DebutingDate,
@ArrivingDate,
@UniversalId, @RegistrationDate,
@ReleaseYear, @LicensedProducer, @LicensedLabel, @UPCNumber, @ProducerId1,
@ProducerId2, @DistributionRegionId, @ContentRightsCredits);
END
END'
END
GO
Artist,Author,Editor,Copyright,DebutingDate,ArrivingDate,StartingDate,ExpiringDate,
UniversalId, AlbumUniversalId,
RecordedYear, Duration, ISRCCode, RegistrationDate,
Genre, ContentRightsCredits)
VALUES(@UniqueID,@AlbumID,@TrackID,@MediaType,@Status,@Preferred,@InsertionSource,0
,@Popularity,@Title,@Artist,@Author,
@Editor,@Copyright,@DebutingDate,@ArrivingDate,@StartingDate,@ExpiringDate,
@UniversalId, @AlbumUniversalId, @RecordedYear,
@Duration, @ISRCCode, @RegistrationDate, @Genre,
@ContentRightsCredits);
END
END'
END
ELSE
BEGIN
EXEC dbo.sp_executesql @statement = N'ALTER PROCEDURE [dbo].[AddMediaTitle]
@UniqueID bigint,
@AlbumID bigint,
@TrackID int,
@MediaType int,
@Status int,
@Preferred int,
@InsertionSource int,
@Popularity int,
@Title nvarchar(128),
@Artist nvarchar(128),
@Author nvarchar(128),
@Editor nvarchar(128),
@Copyright nvarchar(128),
@DebutingDate datetime,
@ArrivingDate datetime,
@StartingDate datetime,
@ExpiringDate datetime,
@UniversalId uniqueidentifier,
@AlbumUniversalId uniqueidentifier,
@RecordedYear int,
@Duration int,
@ISRCCode nvarchar(64),
@RegistrationDate datetime,
@Genre nvarchar(256),
@ContentRightsCredits text
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
Artist,Author,Editor,Copyright,DebutingDate,ArrivingDate,StartingDate,ExpiringDate,
UniversalId, AlbumUniversalId,
RecordedYear, Duration, ISRCCode, RegistrationDate,
Genre, ContentRightsCredits)
VALUES(@UniqueID,@AlbumID,@TrackID,@MediaType,@Status,@Preferred,@InsertionSource,0
,@Popularity,@Title,@Artist,@Author,
@Editor,@Copyright,@DebutingDate,@ArrivingDate,@StartingDate,@ExpiringDate,
@UniversalId, @AlbumUniversalId, @RecordedYear,
@Duration, @ISRCCode, @RegistrationDate, @Genre,
@ContentRightsCredits);
END
END'
END
GO
Producer=@Producer,Copyright=@Copyright,Genre=@Genre,DebutingDate=@DebutingDate,Arr
ivingDate=@ArrivingDate,
UniversalId=@UniversalId,
RegistrationDate=@RegistrationDate, ReleaseYear=@ReleaseYear,
LicensedProducer=@LicensedProducer,
LicensedLabel=@LicensedLabel, UPCNumber=@UPCNumber,
ProducerId1=@ProducerId1, ProducerId2=@ProducerId2,
DistributionRegionId=@DistributionRegionId,
ContentRightsCredits=@ContentRightsCredits
WHERE UniqueID = @UniqueID;
END'
END
ELSE
BEGIN
EXEC dbo.sp_executesql @statement = N'ALTER PROCEDURE [dbo].
[UpdateMediaAlbum]
@UniqueID bigint,
@LocalID int,
@MediaType int,
@Status int,
@Title nvarchar(128),
@Artist nvarchar(128),
@Producer nvarchar(128),
@Copyright nvarchar(128),
@Genre nvarchar(128),
@DebutingDate datetime,
@ArrivingDate datetime,
@UniversalId uniqueidentifier,
@RegistrationDate datetime,
@ReleaseYear int,
@LicensedProducer nvarchar(128),
@LicensedLabel nvarchar(128),
@UPCNumber nvarchar(64),
@ProducerId1 nvarchar(64),
@ProducerId2 nvarchar(64),
@DistributionRegionId uniqueidentifier,
@ContentRightsCredits text
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
Producer=@Producer,Copyright=@Copyright,Genre=@Genre,DebutingDate=@DebutingDate,Arr
ivingDate=@ArrivingDate,
UniversalId=@UniversalId,
RegistrationDate=@RegistrationDate, ReleaseYear=@ReleaseYear,
LicensedProducer=@LicensedProducer,
LicensedLabel=@LicensedLabel, UPCNumber=@UPCNumber,
ProducerId1=@ProducerId1, ProducerId2=@ProducerId2,
DistributionRegionId=@DistributionRegionId,
ContentRightsCredits=@ContentRightsCredits
WHERE UniqueID = @UniqueID;
END'
END
GO
InsertionSource=@InsertionSource,Flags=0,Popularity=@Popularity,Title=@Title,Artist
=@Artist,Author=@Author,
Editor=@Editor,Copyright=@Copyright,DebutingDate=@DebutingDate,ArrivingDate=@Arrivi
ngDate,StartingDate=@StartingDate,
ExpiringDate=@ExpiringDate, UniversalId=@UniversalId,
AlbumUniversalId=@AlbumUniversalId, RecordedYear=@RecordedYear,
Duration=@Duration, ISRCCode=@ISRCCode,
RegistrationDate=@RegistrationDate, Genre=@Genre,
ContentRightsCredits=@ContentRightsCredits
WHERE UniqueID = @UniqueID;
END'
END
ELSE
BEGIN
EXEC dbo.sp_executesql @statement = N'ALTER PROCEDURE [dbo].
[UpdateMediaTitle]
@UniqueID as bigint,
@AlbumID as bigint,
@TrackID as int,
@MediaType int,
@Status as int,
@Preferred as int,
@InsertionSource as int,
@Popularity as int,
@Title as nvarchar(128),
@Artist as nvarchar(128),
@Author as nvarchar(128),
@Editor as nvarchar(128),
@Copyright as nvarchar(128),
@DebutingDate as datetime,
@ArrivingDate as datetime,
@StartingDate as datetime,
@ExpiringDate as datetime,
@UniversalId uniqueidentifier,
@AlbumUniversalId uniqueidentifier,
@RecordedYear int,
@Duration int,
@ISRCCode nvarchar(64),
@RegistrationDate datetime,
@Genre nvarchar(256),
@ContentRightsCredits text
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
InsertionSource=@InsertionSource,Flags=0,Popularity=@Popularity,Title=@Title,Artist
=@Artist,Author=@Author,
Editor=@Editor,Copyright=@Copyright,DebutingDate=@DebutingDate,ArrivingDate=@Arrivi
ngDate,StartingDate=@StartingDate,
ExpiringDate=@ExpiringDate, UniversalId=@UniversalId,
AlbumUniversalId=@AlbumUniversalId, RecordedYear=@RecordedYear,
Duration=@Duration, ISRCCode=@ISRCCode,
RegistrationDate=@RegistrationDate, Genre=@Genre,
ContentRightsCredits=@ContentRightsCredits
WHERE UniqueID = @UniqueID;
END'
END
GO
PRINT 'AMC Version record not present. Version record has been created'
END
ELSE
BEGIN
IF EXISTS (SELECT * FROM [dbo].[AMCVersion] WHERE [dbo].[AMCVersion].
[CurReleaseDate] < '11/30/2013')
BEGIN
UPDATE [dbo].[Configuration] SET [dbo].[Configuration].[Value] = '64' WHERE
[dbo].[Configuration].[SectionID] = 'PlayerConfiguration' AND [dbo].
[Configuration].[Property] = 'AudioMixerGain'
UPDATE [dbo].[AMCVersion] SET [dbo].[AMCVersion].[Version] = '6.7.1.0',
[dbo].[AMCVersion].[CurReleaseDate] = '02/22/2017'