Wednesday, April 16, 2014

Hostless Agent in EM12c

If you encounter an agent without any associated 'host' with it, and you did a manual installation of your agent, using '' file, you probably missed the required plugins. These plugins can be found in the '' file. Copy this zip file into the same directory where you extracted the AgentCore zip file, before installing the agent. Both of these archives can be extracted from the command line tool emcli, for example :

emcli get_agentimage -destination=/home/oracle/agent_inst -platform="Microsoft Windows x64 (64-bit)" -version=

Wednesday, December 18, 2013

Oracle BPM quick and dirty SQL Scripts

All these queries are based on the 'soainfra' schema, and requires the CubeCommand to be enabled:

1. Count of assigned (as in open) human tasks by assignees.

select distinct count(*),assignees from wftask wf where state like 'ASSIGNED' group by wf.ASSIGNEES;

2. Activity Performance across the BPM stack:


For example to extract the averages for all activities:

select activity_label "BPM Activity", avg(ACTIVITY_RUNNING_TIME_IN_MSEC) "ms running time" from bpm_activity_performance_v group by activity_label;

3. Process Performance End to End time


4. Count of Active BPM Processes:

select count(*) "Running Processes" from bpm_process_instance_v where sequence_id not in (select sequence_id from bpm_process_performance_v);

Sunday, October 13, 2013

Oracle Case Management Tips


Error in starting cases.
Error in starting cases.
Contact system administrator for assistance.

         at oracle.bpm.casemgmt.persistence.model.CaseStakeHolder.toString(

Make sure that all the Stakeholders in the Case Configuration points to a valid  member configuration with a valid member type defined.

Rules going 'haywire'

Remember that any Case Activity can only contain one primitive parameter, or else you are going to break the wiring on the composite level.

Oracle Rules only accept a single primitive type, and multiple complex types (if required).

Thursday, July 18, 2013

Oracle BPM Flex Field Index Creation

Use the output from the following sql script, to create indexes for the WFTASK public and private flex fields. The script looks at the statistics of the WFTASK table to determine the required indexes. Replacing DEV_SOAINFRA, with the schema specified during the RCU creation step.

You can also modify the script to search for may be a bigger number of distinct rows, by changing the number '1' in the script.

set heading off
set echo off
EXEC DBMS_STATS.gather_table_stats('DEV_SOAINFRA','WFTASK');
select 'create index DEV_SOAINFRA.'||column_name||'_idx on DEV_SOAINFRA.'||table_name||' ('||column_name||');' from all_tab_columns where table_name = 'WFTASK'and num_distinct>1 and column_name like '%ATTRIBUTE%';

Output will be in the format:



Thursday, June 27, 2013

Oracle FMW on 12c Container Database with a Pluggable Database

Oracle FMW (aka PS6) is certified to run on Oracle Database 12c Container with a pluggable database.

To run the rcu (or Repository Creation Utlity) you have to connect to the service of the container created to contain your FMW repository.

For example, I have created a database container called orcl, with a container called pdborcl. If you I run 'lsnrctl status', I get the service (root container) as well as In my case I would connect to service.

The other thing to remember is that the 'well known' 'sys' user is a root container based user, and thus you have to grant dba rights to the sys user on the pdborcl container. This is achieved by connect to the service pdborcl as sys and run the command 'grant dba to sys'.

Wednesday, November 21, 2012

64-Bit & OID RCU Issues

If you try to create FMW repository running on 64-bit, and you run into the following error:

oid schema rcu fails ERROR rcu: oracle.sysman.assistants.rcu.backend.action.SQLPlusAction::perform: Error initializing SQLPlusEngine

Set the SQLPLUS_HOME to point to your existing 64-bit Oracle 'sqlplus' installation:


then run RCU.

Tuesday, October 16, 2012

Oracle BPM Suite 11g: Advanced BPM Topics - a must have

I am very honored to review the new book from Mark Nelson and Tanya Williams, Oracle BPM Suite 11g: Advanced BPM Topics, Packt Publishing, 2012. The book is due to be release the 25th October 2012.

The nature of BPM to be cross company, division and with multiple process stake holders brings a new set of dimensions to the definition, design and implementation of BPM. Mark and Tanya set out to address these hurdles, amongst others, in their book.

The book will give you a solid foundation to use Oracle BPM 11g Suite to its fullest capability, to short circuit your understanding of sub-processes, instance correlation, exception, error handling and inter-process communication. With the addition of working with arrays, you will be well equipped to achieve the most advanced BPMN techniques within your Oracle BPM 11g Suite environment within in a couple of days.

The authors explain the concepts and advanced techniques with detailed explanations, diagrams and hands-on exercises to confirm the techniques. The techniques are also enriched with best practice and “gotchas”.

I wish I had the valuable knowledge contained in the book earlier in my career, as it would have saved me a lot of time, reading through technical forums, product documentation and debugging BPMN models, trying to understand correlation and process communication. It also cleared a couple of misconceptions I had.

I would suggest the book to anybody embarking on an Oracle BPM implementation and anybody who wants to enrich their current understanding of BPM with the Advance Topics covered in Oracle BPM Suite 11g: Advanced BPMN Topics.

The book is available at Packt Publishing