This custom solution builds on the Project Server 2007 server-side event model to cache a report-friendly copy of Project Local Custom Fields in the Reporting database. The following data is cached:
The design pattern used means that addition of other custom field types is a trivial matter requiring edits to a SQL Server stored procedure, avoiding event code change.
Some customization is required to install this solution – refer to the “Customization” section.
There are two main customizations required:
There is an additional customization – the EventParameters.ini file is expected in the C:\Windows directory – this location can be changed by editing the event handler code (“PostReportHandlers.cs”) and recompiling & re-gac’ing
** Do not install the event handler until the SQL Components have been installed and tested, and the .INI file has been placed in (default) C:\Windows directory on each application server **
It is important that these steps are followed in the order below.
exec Custom_LocalCustomFields 'f799fad0-f896-4731-90ab-2fa740f43e88',2 -- Create (1st publish) select * from dbo.Custom_TextCustomField -- Mix of nulls, text fields and lookup table guids select * from dbo.Custom_OutlineCode -- Mix of nulls & lookup table guids select * from dbo.Custom_ProjectLookupTable -- Contains all the lookup table (value list entries) exec Custom_LocalCustomFields 'f799fad0-f896-4731-90ab-2fa740f43e88',3 -- Normal publish exec Custom_LocalCustomFields 'f799fad0-f896-4731-90ab-2fa740f43e88',1 -- Delete
Project Event Handlers can be installed by a variety of methods – these are documented in the reference article at: http://msdn2.microsoft.com/en-us/library/ms469450.aspx)
SDK (contains GACUTIL.EXE and SN.EXE) at:
** Note use the OS appropriate version 32 or 64 bit **
X86: http://www.microsoft.com/downloads/details.aspx?FamilyID=fe6f2099-b7b4-4f47-a244-c96d69c35dec&DisplayLang=en
X64: http://www.microsoft.com/downloads/details.aspx?familyid=1AEF6FCE-6E06-4B66-AFE4-9AAD3C835D3D&displaylang=en
PingBack from http://geeklectures.info/2008/01/03/reporting-database-extensions-local-custom-fields-custom-code/
Check out this interesting post over at Project Programmibility called Reporting Database Extensions: