Troubleshooting
Problem
Attempts to click on a menu or requirement using IBM Rational RequisitePro results in the error "Runtime Error: system primitive failed".
Symptom
The following error is received when attempting to click on a menu or requirement using IBM Rational RequisitePro:
Runtime Error: system primitive failed
This unexpected event was recorded in the log file:
C:\PROGRAM FILES\IBM\RATIONALSDLC\REQUISITEPRO\BIN\ERROR.LOG
Image:

The error.log contains the following error:
Runtime error: system primitive failed
Error(Exception)>>defaultAction
Error(Exception)>>activateHandler: <anUndefinedObject>
Error(Exception)>>handle
Error(Exception)>>signal
Error class(Exception class)>>signal: <'system primitive fai...'>
UndefinedObject(Object)>>error: <'system primitive fai...'>
UndefinedObject(Object)>>primitiveFailed
UndefinedObject(Object)>>at: <1>
RqPreRequisiteAppNT(RqPreRequisiteApp)>>isPackageElementCreatePermittedForMenu: <1>
[] in UndefinedObject>>Doit
[] in Menu>>setState:view:item:
OrderedCollection>>do: <aBlockClosure>
RqButtonMenu(Menu)>>setState: <aRqProject> view: <aRqExplorerPane> item: <aRqTreeItem>
[] in Menu>>setState:view:item:
OrderedCollection>>do: <aBlockClosure>
Menu>>setState: <aRqProject> view: <aRqExplorerPane> item: <aRqTreeItem>
RqPreRequisiteAppNT(RqPreRequisiteApp)>>setMenuStates: <aMenu>
[] in RqPreRequisiteApp>>aboutToDisplayFileMenu
OrderedCollection>>do: <aBlockClosure>
RqPreRequisiteAppNT(RqPreRequisiteApp)>>aboutToDisplayFileMenu
Message>>perform
Message>>evaluate
MenuWindow(Object)>>triggerEvent: <#aboutToDisplayMenu>
MenuWindow>>aboutToStartMenu
RqMDIFrame(TopPane)>>initMenu
RqMDIFrame(Window)>>wmInitmenu: <460259> with: <0>
RqMDIFrame(Object)>>perform: <#wmInitmenu:with:> with: <460259> with: <0>
NotificationManager>>notify: <aWinMessage>
NotificationManager>>notifyRecursive
NotificationManager>>recursiveMessage
SystemDictionary>>recursiveMessage
SystemDictionary>>launch
NotificationManager>>readWinQueue
NotificationManager>>runEventLoop
Message>>perform
Message>>evaluate
Process>>safelyEvaluate: <aMessage>
Process>>evaluate: <aMessage>
Cause
This problem occurs when the RqPackageUsers table is missing from the schema, or owned by a different user than the rest of the schema tables.
The 7.1 schema upgrade scripts assume that a user named "ReqPro" owns the database objects. If this is not the case, the script will execute as the user that is currently logged in to the database. If however the ReqPro user exists but does not own the database objects, the tables will be created as the wrong user.
This issue is especially common when the back end database is Microsoft SQL Server, as this is the only script that explicitly sets the user if it exists.
Resolving The Problem
There are two potential solutions depending on your situation:
- If the script has already been partially executed, remove the following lines from the script located in the following location:
C:\Program Files\IBM\RationalSDLC\RequisitePro\database\sqlserver\SQLServerSchemaUpgrade71.sql
setuser
go
If exists (select * from sysusers where uid = user_id('ReqPro'))
setuser 'ReqPro'
go
ALTER TABLE RqRequirementHistory ADD FLAGS INT NOT NULL DEFAULT 0 ;
ALTER TABLE RqDocumentHistory ADD FLAGS INT NOT NULL DEFAULT 0 ;
ALTER TABLE RqProjectHistory ADD FLAGS INT NOT NULL DEFAULT 0 ;
ALTER TABLE RqProjects ADD WEBSERVER VARCHAR(255);
- If the script has not yet been executed, execute the script without the following lines:
setuser
go
If exists (select * from sysusers where uid = user_id('ReqPro'))
setuser 'ReqPro'
go
Was this topic helpful?
Document Information
Modified date:
16 June 2018
UID
swg21433235