This problem is corrected in Project 2002 Service Pack
1.
To resolve this problem, obtain the latest
service pack for Project 2002. For additional information, click the following
article number to view the article in the Microsoft Knowledge Base:
867829
(http://support.microsoft.com/kb/867829/
)
How to obtain the latest Microsoft Project 2002 service pack
A supported hotfix is available from Microsoft. However, this hotfix is intended to correct only the problem that is described in this article. Apply this hotfix only to systems that are experiencing this specific problem.
If the hotfix is available for download, there is a "Hotfix download available" section at the top of this Knowledge Base article. If this section does not appear, submit a request to Microsoft Customer Service and Support to obtain the hotfix.
Note If additional issues occur or if any troubleshooting is required, you might have to create a separate service request. The usual support costs will apply to additional support questions and issues that do not qualify for this specific hotfix. For a complete list of Microsoft Customer Service and Support telephone numbers or to create a separate service request, visit the following Microsoft Web site:
Note The "Hotfix download available" form displays the languages for which the hotfix is available. If you do not see your language, it is because a hotfix is not available for that language. The Global version of this fix for the Project
client computer should have the following file attributes or later:
Date Time Size File name
---------------------------------------------
11-Mar-2003 03:20 8,957,440 Project10.msp
The Global version of this fix for the Project Server computer
should have the following file attributes or later:
Date Time Size File name
---------------------------------------------
11-Mar-2003 03:46 3,795,456 Prjsvr10.msp
After the hotfix is installed, the Global version of this fix
will have the file attributes (or later) that are listed in the following
table. The dates and times for these files are listed in coordinated universal
time (UTC). When you view the file information, it is converted to local time.
To find the difference between UTC and local time, use the Time Zone tab in the Date and Time tool in Control Panel.
After
the client-side hotfix is installed, the following files will have these listed
attributes or later:
Date Time Version Size File name
--------------------------------------------------------------
22-May-2002 22:37 10.0.4109.0 7,445,320 Owc10.dll
18-Oct-2002 03:23 10.0.2002.1017 909,824 Pj10od10.dll
19-Feb-2003 00:24 10.0.2003.218 254,464 Pj10tm10.dll
19-Feb-2003 00:24 10.0.2003.218 4,108,800 Pjoledb.dll
11-Mar-2003 02:22 10.0.2003.310 10,101,248 Winproj.exe
After the server-side hotfix is installed, the following files
will have these listed attributes or later:
After the hotfix is installed, you must run four separate SQL
queries to finish the patch. To do so, follow these steps:
Click Start, point to
Programs, point to Microsoft SQL Server, and
then click Query Analyzer.
Connect to the Project SQL Server.
Select the Project Server database from
the drop-down list.
Type or paste the following SQL query code in the right
pane of the Query Analyzer:
insert into MSP_WEB_CONVERSIONS (STRING_TYPE_ID, CONV_VALUE, LANG_ID, CONV_STRING) values (9, 90150, 1033, N'User Defined 1')
insert into MSP_WEB_CONVERSIONS (STRING_TYPE_ID, CONV_VALUE, LANG_ID, CONV_STRING) values (9, 90151, 1033, N'User Defined 2')
insert into MSP_WEB_CONVERSIONS (STRING_TYPE_ID, CONV_VALUE, LANG_ID, CONV_STRING) values (9, 90152, 1033, N'User Defined 3')
On the Query menu, click
Execute to run the query.
After the query runs, type or paste the following SQL query
code in the right pane of the Query Analyzer:
set IDENTITY_INSERT MSP_WEB_SECURITY_FEATURES_ACTIONS ON insert into MSP_WEB_SECURITY_FEATURES_ACTIONS (WSEC_FEA_ACT_ID, WSEC_FEA_ACT_PARENT, WSEC_IS_ACTION,
WSEC_ON_OBJECT, WSEC_FEA_ACT_NAME_ID) values( 150, 100, 1, 0, 90150)
insert into MSP_WEB_SECURITY_FEATURES_ACTIONS (WSEC_FEA_ACT_ID, WSEC_FEA_ACT_PARENT, WSEC_IS_ACTION, WSEC_ON_OBJECT, WSEC_FEA_ACT_NAME_ID) values( 151, 100, 1, 0, 90151)
insert into MSP_WEB_SECURITY_FEATURES_ACTIONS (WSEC_FEA_ACT_ID, WSEC_FEA_ACT_PARENT, WSEC_IS_ACTION, WSEC_ON_OBJECT, WSEC_FEA_ACT_NAME_ID) values( 152, 100, 1, 0, 90152)
set IDENTITY_INSERT MSP_WEB_SECURITY_FEATURES_ACTIONS OFF
On the Query menu, click
Execute to run the query.
After the query runs, type or paste the following SQL query
code in the right pane of the Query Analyzer:
-- CREATE THE NEW TABLE
--****************************************************************************************************
--* MSP_WEB_SECURITY_USERDEFINED
--****************************************************************************************************
IF EXISTS (SELECT * FROM dbo.sysobjects WHERE id = object_id(N'dbo.MSP_WEB_SECURITY_USERDEFINED')
AND OBJECTPROPERTY(id, N'IsUserTable') = 1)
DROP TABLE dbo.MSP_WEB_SECURITY_USERDEFINED
GO
CREATE TABLE dbo.MSP_WEB_SECURITY_USERDEFINED
(
WSEC_PERMISSION_NUMBER int NOT NULL,
WSEC_ITEM_TYPE int NOT NULL,
WSEC_ITEM_ID int NOT NULL,
)
-- ON [PRIMARY]
GO
CREATE CLUSTERED INDEX IX_MSP_WEB_SECURITY_USERDEFINED
ON dbo.MSP_WEB_SECURITY_USERDEFINED(WSEC_PERMISSION_NUMBER)
-- ON [PRIMARY]
GO
-- POPULATE THE NEW TABLE WITH THE ITEMS TO DISABLE FOR EACH PERMISSION
INSERT INTO MSP_WEB_SECURITY_USERDEFINED (WSEC_PERMISSION_NUMBER, WSEC_ITEM_TYPE, WSEC_ITEM_ID) VALUES (150,0,1001) -- Disables Macro (XCMD_UDEFINE)
INSERT INTO MSP_WEB_SECURITY_USERDEFINED (WSEC_PERMISSION_NUMBER, WSEC_ITEM_TYPE, WSEC_ITEM_ID) VALUES (150,0,16) -- Disables MacroRecord (XCMD_STARTRECORD)
INSERT INTO MSP_WEB_SECURITY_USERDEFINED (WSEC_PERMISSION_NUMBER, WSEC_ITEM_TYPE, WSEC_ITEM_ID) VALUES (150,0,2396) -- Disables MacroSecurity (XCMD_MACROSECURITY)
INSERT INTO MSP_WEB_SECURITY_USERDEFINED (WSEC_PERMISSION_NUMBER, WSEC_ITEM_TYPE, WSEC_ITEM_ID) VALUES (150,0,2245) -- Disables MacroShowVba (XCMD_SHOWVBAIDE)
INSERT INTO MSP_WEB_SECURITY_USERDEFINED (WSEC_PERMISSION_NUMBER, WSEC_ITEM_TYPE, WSEC_ITEM_ID) VALUES (150,0,2246) -- Disables MacroShowCode (XCMD_SHOWCODE)
INSERT INTO MSP_WEB_SECURITY_USERDEFINED (WSEC_PERMISSION_NUMBER, WSEC_ITEM_TYPE, WSEC_ITEM_ID) VALUES (150,0,17) -- Disables MacroEndRecording (XCMD_ENDRECORD)
INSERT INTO MSP_WEB_SECURITY_USERDEFINED (WSEC_PERMISSION_NUMBER, WSEC_ITEM_TYPE, WSEC_ITEM_ID) VALUES (151,1,275775509) -- Disables Proj Info dialog grid
INSERT INTO MSP_WEB_SECURITY_USERDEFINED (WSEC_PERMISSION_NUMBER, WSEC_ITEM_TYPE, WSEC_ITEM_ID) VALUES (152,1,303955978) -- Disables Save As dialog grid
On the Query menu, click
Execute to run the query.
After the query runs, type or paste the following SQL query
code in the right pane of the Query Analyzer:
-- Insert the three new permissions as available to the organization
insert into MSP_WEB_SECURITY_ORG_PERMISSIONS (WSEC_FEA_ACT_ID, WSEC_ALLOW, WSEC_DENY, WSEC_ACCESS, WSEC_PAID) VALUES (150, 1, 0, 1, 1)
insert into MSP_WEB_SECURITY_ORG_PERMISSIONS (WSEC_FEA_ACT_ID, WSEC_ALLOW, WSEC_DENY, WSEC_ACCESS, WSEC_PAID) VALUES (151, 1, 0, 1, 1)
insert into MSP_WEB_SECURITY_ORG_PERMISSIONS (WSEC_FEA_ACT_ID, WSEC_ALLOW, WSEC_DENY, WSEC_ACCESS, WSEC_PAID) VALUES (152, 1, 0, 1, 1)
-- Give all administrators these three permissions
declare @AdminUserRelID as int
declare @AdminRelID as int
select @AdminUserRelID = WSEC_REL_ID from MSP_WEB_SECURITY_SP_CAT_RELATIONS SCR, MSP_WEB_RESOURCES R where R.WRES_ID=1 and SCR.WSEC_SP_GUID=R.WRES_GUID and SCR.WSEC_CAT_ID=0
select @AdminRelID = WSEC_REL_ID from MSP_WEB_SECURITY_SP_CAT_RELATIONS SCR, MSP_WEB_SECURITY_GROUPS G where SCR.WSEC_SP_GUID=G.WSEC_GRP_GUID and G.WSEC_GRP_ID=1 and SCR.WSEC_CAT_ID=0
insert into MSP_WEB_SECURITY_SP_CAT_PERMISSIONS (WSEC_REL_ID,WSEC_FEA_ACT_ID,WSEC_ALLOW,WSEC_DENY,WSEC_ACCESS) VALUES (@AdminUserRelID, 150, 1, 0, 1)
insert into MSP_WEB_SECURITY_SP_CAT_PERMISSIONS (WSEC_REL_ID,WSEC_FEA_ACT_ID,WSEC_ALLOW,WSEC_DENY,WSEC_ACCESS) VALUES (@AdminRelID, 150, 1, 0, 1)
insert into MSP_WEB_SECURITY_SP_CAT_PERMISSIONS (WSEC_REL_ID,WSEC_FEA_ACT_ID,WSEC_ALLOW,WSEC_DENY,WSEC_ACCESS) VALUES (@AdminUserRelID, 151, 1, 0, 1)
insert into MSP_WEB_SECURITY_SP_CAT_PERMISSIONS (WSEC_REL_ID,WSEC_FEA_ACT_ID,WSEC_ALLOW,WSEC_DENY,WSEC_ACCESS) VALUES (@AdminRelID, 151, 1, 0, 1)
insert into MSP_WEB_SECURITY_SP_CAT_PERMISSIONS (WSEC_REL_ID,WSEC_FEA_ACT_ID,WSEC_ALLOW,WSEC_DENY,WSEC_ACCESS) VALUES (@AdminUserRelID, 152, 1, 0, 1)
insert into MSP_WEB_SECURITY_SP_CAT_PERMISSIONS (WSEC_REL_ID,WSEC_FEA_ACT_ID,WSEC_ALLOW,WSEC_DENY,WSEC_ACCESS) VALUES (@AdminRelID, 152, 1, 0, 1)
Microsoft
has confirmed that this is a problem in the Microsoft products that are listed
at the beginning of this article.
This problem was first corrected in Project
2002 Service Pack 1.