Posts Tagged ‘Workflow’

D2-Security ,Workflows & Life Cycles

August 23, 2019 Comments off

D2 Security Model

Inheritance models can be configured for both security and properties to automatically set and/or enforce permissions and metadata values based on a document’s context.


D2- Workflows

In D2Config, we only able to configure the already created workflow i.e from Process builder or workflow manager.


Differences between Workflows and Lifecycles


D2 Lifecycles Vs Documentum Lifecycles

Documentum lifecycles are generally linear, with promotion to the next state defined by a set of entry criteria. D2 lifecycles are more flexible, allowing different transition paths between states and a more extensive set of entry and exit conditions and actions. Either type of lifecycle can be used in D2, although mixing D2 and Documentum lifecycles for the same content is not recommended.



Will come back with some more posts on D2, hopefully D2 jobs next time.

Have a great weekend 🙂

Email Notification in FileNet P8

September 13, 2016 Comments off

It’s been a while I was away from the Blog, so here it is what I have today based on few of the email requests; I am trying to familiarize all the developers out there about the Email Notification facility present in FileNet and how do we enable & configure this feature in order to send out an email to the intended users based on the reminders we have set or on initiation of any step that we might have configured.

With the help of Email Notification, the workflow can be set to send email to the intended users. The Notification can be sent on completion of any step, the reminder mails and also for deadlines.

To use this facility, system must have access to SMTP (Simple Mail Transfer Protocol) server and also Email Notification parameters needs to be configured and enabled. Also we have to create Email Notification template and user preference needs to be set. It consists of 4 steps:

  • Enabling Email Notification
  • Configuring Email Notification
  • Modifying Email Notification template
  • Setting user Preference

Enabling Email Notification

For Enabling Email notification some event logging option has to be ‘turned on’ on application engine with the help of process configuration console.

1.1)  Select isolated region icon on PCC (Process Configuration Console) and click on properties tab on it.


1.2) After clicking of properties tab on the event logging action tab turn on the checkbox for Exception and Begin operation categories.


2)  Configuring email Notification

2.1) Start the Process Task manager from the process engine in the start menu. On Application engine we have to run routercmd.bat command file that is found in the \Router subfolder where the Application Engine is installed

2.2) Configure email notification with the help of process task manager on the process engine. Select the Process Service option and click on notification tab.


SMTP Host: It specifies the complete host name for an SMTP server on the network running the SMTP service.

SMTP Port: The port on which SMTP service is running.

Character Set: The Character used in encoding the email message.

Email Logon ID: The name used for the account you want the Process Engine to use to log on to the mail server application.

Email Logon Password: The password associated with the Email logon id.

Email From ID: The name you want to enter in the From field of email Notification.

Encode From field: Indicates whether to encode the contents of the Email from ID field.

3) Modifying Email Notification

3.1) Navigate to ..\fnsw_loc\sd\mas\1 directory


3.2) Change the properties of the mail which we want to modify from read-only to read-write.

3.3) Open the file using Textpad editor and modify the html content of the file.

3.4) We can enter the fields which we want in our template.

For example, in the file below we have selected subject to get displayed in the notification. The value of that subject will be obtained from $F_Subject variable which get sets in event logs.


3.4) Save the file and restart the process engine server.

4. Setting User Preference

User preference can be set from the workplace depending on the Email notification type which user wants to receive.



And we are done, there’s a lot more information that you can find in the FileNet ECM help file.

Hope this post helps and answers your email.

Happy Blogging!!!

Filenet- An Introduction

July 19, 2011 Comments off

Filenet helps organizations make better decisions faster by managing the content and processes that drive their business.

 There are 2 solutions of Filenet:

i)             Enterprise Content Management(ECM)

ii)            Business Process Management(BPM)

Enterprise Content Management(ECM)

  • ECM is employed for managing the capture, storage, security, revision control, retrieval, distribution, preservation and destruction of documents and content.
  • ECM concerns content imported into or generated within an organization to the course of its operation, and includes the control of access to this content from outside of the organization’s processes.
  • ECM meets the challenges of the organizations need to leverage technology to meet business continuity and corporate governance requirements for making business content traceable, secure and auditable.

Business Process Management(BPM)

  • BPM increases process performance, reduces cycle times and improves productivity by automating, streamlining, and optimizing complex processes to manage the flow of work throughout the enterprise.
  • BPM helps shorten processes lifecycles and automatically manages process exceptions so one can react immediately to internal events or customer demands.
  • BPM monitors and tracks business processes so analysts and managers can see how their operations are performing. This, in turn, helps one to simulate and optimize key processes  and the value of internal resources.
  • Filenet System Monitor is the proven solution for lowering the cost of managing FileNet systems and increasing system uptime.
  • It proactively monitors the health of FileNet systems alerting operators when a critical error occurs.
  • In addition to proactive monitoring of FileNet parameters, it provides an intelligent logfile management for FileNet logfiles as well as 3rd party logfiles. These can be analyzed automatically for critical information, including filtering and duplicate detection as well as escalation and de-escalation of severities. Administrators no longer have to parse logfiles manually in order to check the health status of the application or system.
  • Tasks include configuration of the monitoring the FileNet systems as well as statistical analysis of health and performance.

Creation of Workflows in Documentum using Workflow Manager

December 3, 2010 Comments off

Workflow is the automation of a business procedure, during which it specifies how content (document, information or tasks) is routed for review/approval from one participant to other, before it is released to the system. Users are notified by e-mail when they have some content to review.

Role of Workflows in business:

Workflows help to streamline the business process.Reduced time, fewer mistakes and improved quality of work. Information about the task readily available at any point of time.


  1. Improved change management.
  2. Improved services and management.
  3. Inter-Organization communications.
  4. Reduces operating costs.
  5. Improved productivity by automating routine and repetitive tasks.

Every workflow has a number of logical steps. This is called as an Activity. An Activity could involve manual interaction or can use machine resources. Activity involving manual interaction is called as a Manual activity. Manual activity has a performer. Activity which doesn’t require manual intervention is called as an Auto activity. It’s performed using machine resources.

Flows are the connectors. They connect the activities. They also specify the sequence of activities. Workflows may be parallel or serial. In serial workflow, tasks follow one after another in a sequence. In parallel workflow, two or more activities can happen concurrently.

Steps to create a workflow:

Once the business process is known, before creating the workflow, answer these questions for a better workflow design.

(Plan the workflow using the following points)

1.    Who initiates the workflow?

§  The person going to initiate or start the workflow should have ‘relate permission’ on the workflow template to start the workflow.

2.    Decide which activities are going to be manual activities and which are auto activities

§  Whether activities will be performed in serial or parallel

3.    Who is going to perform the manual activities?

§  Whether its going to be a specific user, a group, or some number of performers from a group will be included in the decision making process,

§  Whether the performers will be chosen at runtime or will the performer name be hard coded in the workflow template.

4.    When does an activity start?

§  When an activity has more than one incoming flow, you can specify how many activities should complete before this activity begins. This is the trigger for an activity.

5.    What are the activities that happen next?

§  How is the next activity chosen?  Whether the performer chooses the next activity, or all the activities connected to this one is chosen, or the next activity can be chosen based on some conditions.

6.    What documents are passed along the activities?

Some documents will be passes along these activities, on which some actions are performed. Packages can be added, through flow inspector connecting the two activities.

Given below is a sample workflow.

This workflow depicts a scenario of bank, wherein the concerned department receives application for loans, the loan papers are sent for review to the manager who then decides whether to grant the loan.

Now, let’s answer these questions for the above scenario.

1. Who initiates the workflow? – The clerk who receives the loan application from the customers. He/She should be given relate permission on the workflow. When a new loan application is received and it needs an approval from the manager, the clerk applies a workflow on the loan application.

2.    Decide which are going to be manual activities and auto activities:

Manual activities include a task where in the manager approves or rejects the loan. Auto Activity will include the business logic when the loan is rejected or approved.
We can call the Review activity by the manager as a manual activity.

3.    Who is going to perform the manual activity? – The performer has to be decided. Manager would be the performer. Instead of hard coding the manager id in the performer name, the performer could be chosen at runtime by the initiator. (This makes the workflow template more reusable.)

4.    What will trigger an activity in the workflow? – The next activity depends in the action taken by the performer. If approved, ‘Approve Loan’ activity will be triggered, else if rejected, ‘Reject Loan’ activity would be triggered.

5.    What documents are passed along the activities? – The documents passed along the activities in this case could be the loan papers, and other documents required in the process of Loan sanction.

This is the workflow template for the above given scenario.

‘Review’ is a manual activity.  (The option, the activity’s work is performed: By one more manual performers is chosen)

To select the performer, click on the select performer tab.

While selecting performers, Select option ‘some users from a group’, if there are many managers who review the document. Or select ‘single user from a group’, if the task will be sent to only one manager for review.

The Option ‘Multiple sequential performers’ will send tasks to the reviewers in serial fashion.

To choose the reviewer at runtime, select the option, ‘Have performer(s) of activity <Choose the activity here> determine performer(s) of this activity’.

Transition tab is to specify which activities should be started next. The option ‘Let the activity’s performer choose’

If there are three reviewers, and if the task is sent in parallel, and two of the three reviewers approve, and one reviewer rejects the loan, then we can chose either reject activity as the next activity, or approve activity as the next activity, as per the requirement.

Reject Loan is an auto activity. When a loan is rejected, the business logic is written in a java class, and that java class will be specified in the section, Execute this method automatically.

To get a method in this dropdown, create a method in DocApp, select option use as workflow method. To set up a java method as a workflow method, click here

Auto activity is executed using some permission. There are 4 options to choose from. The auto activity will execute depending on these permissions.

Review complete activity is another manual activity, which notifies the workflow supervisor that the workflow is complete. Again this activity solely depends on the requirement.

Flow inspector is used to pass the necessary documents between two activities.

To add a document, click on ‘Add New package’ and enter respective name and package type to be routed through the activities.

To set up a new JAVA method to run as an automatic Workflow method:

Create a method using DocApp with the following attributes.

Name: Method Name

Command: <classpath> or <classname>

Place the resultant class file where the Java run time on the Content Server machine can find it.

E.g.: 1) the class file should be present in the package.

2) Classname- the class file should be present in \dba\java_methods.


Run synchronously: True

(Time out in seconds)

Minimum: 60

Default: 100

Maximum: 300

Run as Server: True.

Trace launch: True

Use Method Server: True

Launch directly: False.

Use as workflow method: True.

You must check the option ‘Use as workflow method’ to make this method available for use in workflow templates. When “Use as workflow method” is set to “True”, the attribute “a_special_app” will be set to workflow. In order to have a custom method available for use in an Activity in Workflow Manager, the attribute, ‘a_special_app’ must be set to workflow.

Setting “Trace launch” to “True” in the method attributes will allow you to see this debug information printed to the server log, log4j.log. This can be used for debugging purposes.


Now, the created .class file should be placed in any of these two locations. As specified in command attribute of DocApp method.

1. – the class files should be present in the given hierarchy.

2.       The class file should be present in <DM_HOME>\dba\java_methods

The java class file should contain “acquire()” and “complete()” methods for it to run as an Automatic workflow method.

acquire(): Acquires a work item for the current user.

Work items are tasks in the workflow. After a work item appears in a performer’s inbox, the performer must acquire the work item before beginning work on the item. The user issuing this method must be the work item’s performer, the workflow supervisor, or a user with Sysadmin or Superuser privileges.

Executing this methods changes information in the queue item associated with the work item

complete(): Marks a work item as finished.

The user issuing this method must be the work item’s performer, the workflow supervisor, or a user with Sysadmin or Superuser privileges. The work item must be in the acquired state. If the method is successful, it sets the work item’s state to finished. Executing this method changes information in the queue item associated with the work item

// custom code needs to be added.

Steps to set up a custom workflow method in docbasic:

Create a method in DocApp

Set the type to dmbasic.

In the command tab, give the path as: .\dmbasic

–f\Documentum\product\5.2\install\admin\ebs file> –e

E.g.: -fD:\Documentum\product\5.2\install\admin\Loan_Approval.ebs -eLoanApprove

Place the file in the following location: <DM_HOME>\Documentum\product\5.2\install\admin

ACL on Workflow templates:

The workflow templates created needs relate permission to be used.

This can be done through DA  by running this (DQL)query


Update dm_process object  Set acl_name = ‘ACL Name’ Where object_name=‘Workflow Name’;

This will allow the user to apply the workflow on a particular document.

%d bloggers like this: