The information in this article applies to:
Product: Metastorm BPM (e-Work)
Version: 6.x 7.x
Issue
The database user that's used by the Metastorm Process Engine is given the SQL Server roles db\_ddladmin, db\_datareader, and db\_datawriter. However, the Engine fails to start and an error similar to the following is written to the Windows application event log:
The EXECUTE permission was denied on the object 'esp\_remove\_marks\_for\_engine', database 'Metastorm', schema 'dbo' when trying to start the Engine.
Resolution
The following configuration information has been added to the Installation Guide, starting with the one for Metastorm BPM Release 7.5 SR1.
To execute Metastorm stored procedures, additional database permissions are required for the Metastorm Engine to run on SQL Server. By default, SQL Server does not have a role for executing stored procedures. The method for granting execute permissions on stored procedures in a database differs between SQL Server 2000 and SQL Server 2005.
SQL Server 2000
In SQL Server 2000 Enterprise Manager:
- Expand the Metastorm BPM database node.
- Select Users.
- Right-click the Metastorm BPM database user that's used by the Metastorm Process Engine. Select Properties and then Permissions.
- Click the EXEC checkbox in each of the Metastorm stored procedures. These are the objects that begin with esp, psp, or sp.
- Click OK and then OK.
SQL Server 2005
- Run the following script in SQL Server:
/\* CREATE A NEW ROLE \*/
CREATE ROLE db\_executor
/\* GRANT EXECUTE TO THE ROLE \*/
GRANT EXECUTE TO db\_executor
- In SQL Server 2005 Management Studio, expand the Metastorm BPM database node.
- Select Security --> Users.
- Right-click the Metastorm BPM database user that's used by the Metastorm Process Engine.
- In Database Role membership, scroll to db\_executor and click the checkbox.
- Click OK.