Installation of Project Portfolio Server fails with SQL Error

D

Daniel Brown

Greetings all,

I’m trying to install Project Port Folio Server 2007 but I’m not having much
luck!

No matter what I try, I receive the following error.

I have tried both SQL and Windows Authentication; However I am requesting
the databases be set up on a remote SQL 2005 Server, Could this be the issue?

If anyone has had this issue and gotten past it, could you please let me know?

Cheers,

Daniel Brown



Error from Event log below:
===================

Event Type: Error
Event Source: MsiInstaller
Event Category: None
Event ID: 10005
Date: 30/10/2007
Time: 11:19:53 AM
User: HW\dev_admin
Computer: PFHW01
Description:
Product: Microsoft Office Project Portfolio Server 2007 -- Error 26204.
Error -2147217913: failed to execute SQL string, error detail: The statement
has been terminated., SQL key: DB_PPSAccountData_Upgrade_12 SQL string: begin
transaction
set nocount on
declare @accountid int
declare @internalClassid int
declare @linkid1 int
declare @linkid2 int
declare @startID int
declare @endID int
declare @forecastStartID int
declare @forecastEndID int
declare @actualStartID int
declare @actualEndID int

declare AccountsCursor cursor for select distinct AccountID from sfStructures
open AccountsCursor
fetch next from AccountsCursor into @AccountID
while @@fetch_status = 0
begin
--Add the new attribute only if missing
print 'AccountID ' + convert( char(20), @AccountID)
set @forecastStartID=NULL
select @forecastStartID=ID from sfATTRIBUTES where
InternalName='FORECAST_START_DATE' and AccountID=@AccountID and
EntityType='PROJECT'
if @forecastStartID IS NULL
begin
update sfID_GENERATOR set @forecastStartID=IDValue=IDValue+1 where
TableName='sfATTRIBUTES'
insert into sfATTRIBUTES(ID, AccountID, EntityType,
Name, InternalName, DataType, ApplicationUsage,
IsCalculated,MinDateValue, MaxDateValue,Mandatory)
VALUES(@forecastStartID, @AccountID, 'PROJECT' ,
'Forecast Start Date', 'FORECAST_START_DATE', 3, 15, 0,
'1950-01-01','2049-12-31', 0)
print 'new Attribute ID ' + convert( char(20),@forecastStartID) + '
name: Forecast Start Date'
end
set @forecastEndID=NULL
select @forecastEndID=ID from sfATTRIBUTES where
InternalName='FORECAST_END_DATE' and AccountID=@AccountID and
EntityType='PROJECT'
if @forecastEndID IS NULL
begin
update sfID_GENERATOR set @forecastEndID=IDValue=IDValue+1 where
TableName='sfATTRIBUTES'
insert into sfATTRIBUTES(ID, AccountID, EntityType,
Name, InternalName, DataType, ApplicationUsage,
IsCalculated,MinDateValue, MaxDateValue,Mandatory)
VALUES(@forecastEndID, @AccountID, 'PROJECT' ,
'Forecast End Date', 'FORECAST_END_DATE', 3, 15, 0,
'1950-01-01','2049-12-31', 0)
print 'new Attribute ID ' + convert( char(20),@forecastEndID) + ' name:
Forecast End Date'
end

--Associate the attribute with all the internal classes which is not
already associated
declare IC cursor for
select sfINTERNAL_CLASSES.ID from
sfINTERNAL_CLASSES JOIN hrGROUPS ON sfINTERNAL_CLASSES.ID =
hrGROUPS.InternalClassID
where AccountID=@AccountID and hrGROUPS.InternalType=0
open IC
fetch next from IC into @InternalClassId
while @@fetch_status = 0
begin
if not exists (select ID from sfLINKS where Entity1Type='ATTRIBUTE' and
Entity1ID=@forecastStartID and Entity2Type='INTERNAL_CLASS' and
Entity2ID=@InternalClassId)
begin
print 'updating link to InternalClassID ' + convert( char(20),
@InternalClassId)
update sfID_GENERATOR set @LinkID1=IDValue=IDValue+1 where
TableName='sfLINKS'
insert into sfLINKS(ID, Entity1Type, Entity1ID, Entity2Type, Entity2ID)
VALUES(@LinkID1, 'ATTRIBUTE', @forecastStartID,
'INTERNAL_CLASS', @InternalClassId)
end

if not exists (select ID from sfLINKS where Entity1Type='ATTRIBUTE' and
Entity1ID=@forecastEndID and Entity2Type='INTERNAL_CLASS' and
Entity2ID=@InternalClassId)
begin
print 'updating link to InternalClassID ' + convert( char(20),
@InternalClassId)
update sfID_GENERATOR set @LinkID2=IDValue=IDValue+1 where
TableName='sfLINKS'
insert into sfLINKS(ID, Entity1Type, Entity1ID, Entity2Type, Entity2ID)
VALUES(@LinkID2, 'ATTRIBUTE', @forecastEndID,
'INTERNAL_CLASS', @InternalClassId)
end
fetch next from IC into @InternalClassId


end
close IC
deallocate IC

fetch next from AccountsCursor into @AccountID
end
close AccountsCursor
deallocate AccountsCursor

declare AccountsCursor cursor for select distinct AccountID from sfStructures
open AccountsCursor
fetch next from AccountsCursor into @AccountID
while @@fetch_status = 0
begin

print 'AccountID ' + convert( char(20), @AccountID)
set @startID=NULL
set @endID=NULL
set @forecastStartID=NULL
set @forecastEndID=NULL
set @actualStartID=NULL
set @actualEndID=NULL
select @startID=ID from sfATTRIBUTES where
InternalName='START_DATE' and AccountID=@AccountID and EntityType='PROJECT'
select @forecastStartID=ID from sfATTRIBUTES where
InternalName='FORECAST_START_DATE' and AccountID=@AccountID and
EntityType='PROJECT'
select @actualStartID=ID from sfATTRIBUTES where
InternalName='ACTUAL_START_DATE' and AccountID=@AccountID and
EntityType='PROJECT'


select @endID=ID from sfATTRIBUTES where
InternalName='END_DATE' and AccountID=@AccountID and EntityType='PROJECT'
select @forecastEndID=ID from sfATTRIBUTES where
InternalName='FORECAST_END_DATE' and AccountID=@AccountID and
EntityType='PROJECT'
select @actualEndID=ID from sfATTRIBUTES where
InternalName='ACTUAL_END_DATE' and AccountID=@AccountID and
EntityType='PROJECT'
if(@startID is null OR @endID is null OR @forecastStartID is null OR
@forecastEndID is null or @actualStartID is null or @actualEndID is null)
begin
fetch next from AccountsCursor into @AccountID
continue
end
delete from sfAttribute_Values where attributeid
in(@forecastStartID,@forecastEndID)

update sfAttribute_Values set attributeid=@forecastStartID where
attributeID=@actualStartID
print 'update forecast start date from actual start date'
update sfAttribute_Values set attributeid=@forecastEndID where
attributeID=@actualEndID
print 'update forecast end date from actual end date'
insert into sfattribute_values SELECT EntityID, @forecastStartID,
SolutionID, NumericValue, CharValue, DateTimeValue, DefinitionID,
Structure1EntryID, Structure2EntryID
FROM sfATTRIBUTE_VALUES
WHERE (Structure1EntryID NOT IN
(SELECT sfATTRIBUTE_VALUES.Structure1EntryID
FROM sfattribute_values
WHERE (sfATTRIBUTE_VALUES.AttributeID =
@forecastStartID))) AND (AttributeID = @startID)and solutionid is null
print 'update forecast start date from start date'
insert into sfattribute_values SELECT EntityID, @forecastEndID,
SolutionID, NumericValue, CharValue, DateTimeValue, DefinitionID,
Structure1EntryID, Structure2EntryID
FROM sfATTRIBUTE_VALUES
WHERE (Structure1EntryID NOT IN
(SELECT sfATTRIBUTE_VALUES.Structure1EntryID
FROM sfattribute_values
WHERE (sfATTRIBUTE_VALUES.AttributeID =
@forecastEndID))) AND (AttributeID = @endID)and solutionid is null
print 'update forecast end date from actual end date'

fetch next from AccountsCursor into @AccountID
end
close AccountsCursor
deallocate AccountsCursor
commit transaction

exec spUpdateVersion 1112004

For more information, see Help and Support Center at
http://go.microsoft.com/fwlink/events.asp.
Data:
0000: 7b 45 39 36 41 33 32 35 {E96A325
0008: 45 2d 43 46 44 41 2d 34 E-CFDA-4
0010: 30 34 45 2d 38 39 39 32 04E-8992
0018: 2d 36 41 46 31 35 33 45 -6AF153E
0020: 44 31 37 31 39 7d D1719}
 
D

Daniel Brown

Hi Gary,

Thanks for the tip about the permissions.

By Remote SQL Server, I mean a installation of SQL on a separate/different
server than Portfolio.

Ill post my results here with escalating the privileges.

Cheers,

DB
 
D

Daniel Brown

HI Gray,

Indeed, and thus why I have chosen to install it on a separate server other
than the SQL, SQLRS and MOSS Machines.

We escalated the privileges to sysadmin on the SQL Server without any luck.
Exactly the same error as stated above.

I’ll continue to try and troubleshoot this issue throughout the day.

Any other ideas?

Cheers,

DB
 
D

Daniel Brown

Well after a few more attempts I’m still no close.

Here is what I’m trying achieve in what type of setup.


We currently have 3 Servers in the infrastructure, they are:

SQL01 - SQL Server 2005 Service Pack 1
SQLRS01 - SQL Server 2005 Reporting Services
PF01 - Home of Portfolio


All servers are able to ping and communicate with each other.

SQL Server is setup for both Windows & SQL Authentication. (I've tried both
and get the same error with both).

The user of which I’m trying to install port folio under has permissions to
both the SQL01 & SQLRS01 as sysadmin (yes, bad practice, however to get past
this problem, I’m happy for it to be a sys admin).

It creates the databases on SQL01 fine without an issue and removes them
when it rolls back.


No authentication errors appear on SQL01 or SQLRS01.

The only event log entry in concern to this issue is the one I originally
posted, which really only states the stored proc itself and an error code,
which I’m told means an authentication issue (for sysadmin tho?)

If anyone has any ideas, comments, suggestions or anything, could you please
post them?

Regards,

Daniel Brown
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top