Wednesday, 15 April 2015

Log4j.properties Custom Logger

It's always helpful to have your custom log file defined in log4j.properties of your application.
You can do it using below simple configuration.


#------------------- CUSTOM --------------------------
log4j.logger.<Complete package name "com.company.project.workflow"> = DEBUG, <Name of the Appender "customLogger">
log4j.appender.customLogger=org.apache.log4j.RollingFileAppender

log4j.appender.customLogger.File=C\:/myCustomLogger/myProject.log
log4j.appender.customLogger.MaxFileSize=100MB
log4j.appender.customLogger.layout=org.apache.log4j.PatternLayout
log4j.appender.customLogger.layout.ConversionPattern=%d{ABSOLUTE} [%t] %m%n

Thursday, 13 November 2014

XCP 2.1 - Consistent Errors

It’s been a year now, I am working on XCP designer and the only consistent thing I have noticed in this product is with every new patch release EMC is coming up with some new issues.

Yes, we are never sure if our application will work fine whenever there is an upgrade.

Is EMC engineering team facing some issues in maintaining versions for the product they are releasing? How can fixes done is older patch found missing in later one? Well, in that case I will suggest EMC Engineering team to do some homework on basics of versioning. A very basic concept in Documentum :P

Monday, 3 March 2014

XCP Designer Object Types

well there are not many to list :) ....but definitely you should be knowing the one "xcp_artifact_bundle".

As the product gives you bundled installation for all the artifacts created, you can found all of them in a single object.

Wednesday, 5 February 2014

XCP Designer 2.1-Introduction

I am currently working on XCP Designer 2.1 POC.  I must say it's a wonderful learning experience.
Designer is an excellent product which gives you opportunity for rapid application development.  Create everything at one place and it gives you one step deployment. 

XCP Designer provides you an interface which is a combination of Composer(to create artifacts), Forms Builder(to create UI pages), Process Builder(to create workflow templates) along with facility to generate Reports. The only thing missing here is no way to write a DFC/Java code. You still need to use eclipse/composer for this.
hmm...I can guess now your reaction must be a wow :)

So here is the list of tasks you can do in XCP designer.
1) Object Model(Content and Folders)
2) Workflow Design -Stateful/ Stateless Design
3)  Define Roles, Permission Sets etc
4) Picklists (this is same as value assistance)
5) Action Flows
6) Page Fragments
7) Application UI Pages(This is with respect to content types/folders/processes)
8) Create real time and task queries
9) Create endpoints(To connect with repository/ FTP server/ Database/SMTP server etc)
10) Define Relationships between objects



Monday, 30 December 2013

Time to give up coding: way to XCP Designer

Are you tired of doing wdk customizations?

Don't like coding?

WDK,DFC,BOF,Workflow, TBO, SBO, Jobs...hmmm..too much of coding :( Is there any way to get out of this? 

I will say yes... :) Now EMC has come up with the tool where you hardly need to do any customization or coding..until unless you want to do something which xcp designer doesn't support.

I have moved to XCP now :)....Soon I will share my experiences working on XCP Designer :)

Stay Tuned!!!

Tuesday, 29 October 2013

Captiva Dispatcher- Document Classification

Dispatcher is a very strong tool used for document classification.        
     
  • Classify/Identify document type  à  to route the document to the correct workflow 
  • Index images  à  to deliver images to the correct repository
  • Extract business data  à  to manage transactional information
  • Validate information  à  to control your process
Capture--->Classify--->Data Extract---> Data validation--->Document Export


Classification technologies: There are 5 technologies which can be used for different types of documents classification. You can use any one or combination of some of them.

Type/ No
Global Image Analysis(Automatic Template Creation)
Local Image Analysis(HPA-High Precision Anchors)
Keyword Analysis
Text Matching Analysis
Handwritten Detection
1
Used when large number of documents present for classification. Document language independent. Categorizes documents based on similarities ,Like document structure. Automatic learning and builds a dynamic knowledge base
Here sample document is provided with anchors marked on places like header, document name etc.  It can be used along with Global Image Analysis to sub group classified documents.
Keyword match is used to classify document. It’s irrespective of any specific area. i.e full text search done on the document.
Useful when documents have different layouts but same text/data.
Used for handwritten documents
2
It works on ‘Fuzzy Logic’ algorithm
High precision anchor concept
Regular expressions used for search text pattern
Full text OCR used to extract information.
Uses Fuzzy Logic for document processing and learining.
3
Structured(Forms) /semi structured documents(Bank Cheques)
Structured /semi structured documents
semi structured /Unstructured documents
Unstructured document classification
Unstructured document classification(Patient Records)


Monday, 28 October 2013

Workflow error notifications

Objects involved in workflow
Build Time:
·         dm_process
·         dm_activity
Runtime:
·         dm_workflow- Runtime workflow object created from dm_process workflow template.
·         dmi_workitem- Runtime instances created for each workflow activity.
·         dmi_queue_item- Information about tasks for a aspecific user. If for particular activity, User A is assigned performer or in a group of performer then dmi_queue_item object will be created for the same. All inbox items we see in user’s inbox are dmi_queue_items.
·         dmi_package- This is the object which gives information about the documents attached in the workflow.
Now let’s discuss about the possible errors that can come while running a workflow.
If you have workflow notifications on, you will get a mail notification  if there is any error while processing a aworkitem.
dm_changedactivityinstancestate:-  
In docbase "ABC":

User "superuser" posted event "dm_changedactivityinstancestate" with this message:  "Activity instance, 0, of workflow, 4a012a53802ssscc, failed.".

If any error comes(Timeout error/ code error in auto activity method) workitem is put into paused state. Not while processing workitem if it’s in paused state, such workitem could not be completed and can throw above error.
Possible causes:
ü  Check the timeout value set for respective workflow auto activity.
ü  Check the content server settings. Sometimes it happens because of multiple content servers trying to process same workitem.
dm_wf_resolve_failure:-
In docbase "ABC":

User "xyz" posted event "dm_wf_resolve_failure" with this message:  "An error was encountered in a workflow for which you are the supervisor.  The system was unable to find a performer for 'Group_processor'.  This task has been assigned to you.".
If for an activity particular Group(Group_Processor)has been assigned and if no user is present in  that particular group when workitem is in progress, above error will be thrown. As no user is found the error notification will be sent to workflow supervisor.

Possible causes:
ü  Check the error group if any user is added in it or not.
ü  Check the activity performer configuration. The configuration options are like, select all users from a group/ select any single user from a group of performers.
There are n number of such workflow events. All are not error related. So no need to panic if you receive notification with event name like “dm_startedworkitem”
All such events are listed in dm_event_sender.ebs file. Check the event names associated with routers/ tasks.  The dm_event_sender.ebs file is placed at path ../Documentum/product/6.7/bin
Below is the list of such events for your reference J
dm_startedworkitem
dm_selectedworkitem
dm_completedworkitem
dm_delegatedworkitem
dm_terminateworkflow
dm_changeworkflowsupervisor
Enough spoon feeding done now. Login to your content server and check at the above path for rest of the names J
Happy Learing!!! J