How Documentum Print Control Services Works
December 15, 2011 at 1:18 pm | Posted in Architecture | Leave a commentTags: documentum, PCS, print control services
This is the second part of a mini series of articles on Documentum Print Control Services (PCS) and how to use it effectively. The first part provided an introduction and overview of PCS. In this article I will take a much more in-depth technical look at the product.
PCS consists of a number of components:
- A DFS-based web service that is deployed on a JBoss application server
- A set of DARS that contain services that can be used by user-facing applications
- Optional WDK components for Webtop and Taskspace (as mentioned in the first article this PCS support is built into Documentum Compliance Manager)
As we will see later PCS also relies on PDF and Postscript rendition generation so DTS or ADTS is required.
So what happens when a controlled print request is issued from an application? The printing user-interface will usually collect some information from the user relating to the object to be printed. This will include the name of the printer and a reason for the print. Once the request is received by the application server control will be passed to the PCS ControlPrintService.requestPrint() function.
The requestPrint function does 3 things. First PDF Stamping Services (PSS) is used to create a watermarked copy of the main PDF rendition. I may cover PSS in more depth in another article, however the key point here is PSS takes an existing PDF rendition and generates a watermarked PDF that can include metadata overlaid in headers, footers or other areas of the document. PCS and PSS have tight integration where PSS exposes a Controlled Print-specific configuration and PCS can pass in Controlled Print attributes such as copy number, recipient and printing reason to be watermarked on the document.

Click to view in a new window
Next a dmc_pss_print_copy object is created in the repository. The watermarked PDF is the primary rendition for this object and the object is linked to the /Temp/PCSCopies folder. At this point the object’s print_status attribute is set to ‘Created’.
Finally, a request for a Postscript rendition for the dmc_pss_print_copy object is made. The rendition will have a page_modifier of ‘PS4Print’. The server will wait for up to 2 minutes for the rendition to be generated and then return to the caller. Either way the print_status field is set to ‘PsRequested’. Up to now all the processing is synchronous, but now control is returned to the user of application.
At this point the user is probably expecting the printer to output the printed document, however no print request has yet been sent to a printer, there is simply a dmc_pcs_print_copy object created possibly waiting for Postscript rendition to be created. There are 2 asynchronous task still required to be completed. First the Postscript rendition needs to be created:

Click to view in a new window
Of course it may have been created during the earlier synchronous processing but there is no guarantee. Continuous uninterrupted operation of controlled printing requires that your DTS or ADTS infrastructure is resilient, scalable and sized for all the rendition requests generated in a production environment. If your users have requested prints that don’t seem to be appearing your first port of call for troubleshooting is to confirm that DTS/ADTS is working and that Postscript renditions are being created for your dmc_pss_print_copy objects.
The Print Control Services server is ultimately responsible for sending your document to the required printer. Calling the Print Control Services server is the responsibility of the PcsAsyncPrintJob. For controlled print (and recall) requests to be completed in a reasonable amount of time this job needs to be set to run every couple of minutes and needs to be monitored for regular execution and successful job completion.
When PcsAsyncPrintJob runs it queries for all dmc_pss_print_copy objects that have print_status = ‘PsRequested’.

Click to view in a new window
For each dmc_pss_print_copy object the PCSAsyncPrintJob does the following:
- Ensures that a Postscript rendition has been created. If not no further processing is done on this execution of the job.
- Then calls the remote ControlPrintService DFS endpoint on the PCS server, calling the ‘print’ method.
Once the print request is received by ControlPrintService component the following happens:
- The audittrail is checked to ensure that the same document has not been printed with the requested copy number. If for some reason there is already an audittrail entry for this copy number an error is raised.
- The postscript file is sent to the printer using the Java Printing Service API.
- The service monitors the print job until completion (or failure) and then returns a response to the PcsAsyncPrintJob job.
- Creates an audittrail entry to record the controlled print
The actual “printing” part of PCS is carried out using the Java Printing Services (JPS) API. If you are going to be making use of PCS in your organisation it may be worth your while getting to know the JPS a little better. I’ll discuss JPS in more depth in a later article.
The key points to take away from this article are as follows:
- First, when the WDK application server returns control back to the user after a print request has been made there is no guarantee that the document has been sent to the printer. There are 2 layers of asynchronous processing required to print a document; depending on the speed, capacity and availability of the relevant servers it may take some time for the print to appear.
- Second the print may even not appear at all if there is a problem with one of the asynchronous components. This fact may not be obvious to the end user who may just assume that printing is “slow”.
An Introduction to Documentum Print Control Services
December 5, 2011 at 1:31 pm | Posted in Architecture | 3 CommentsTags: documentum, PCS, print control services
This is the first part of a mini series of articles on Documentum Print Control Services (PCS) and how to use it effectively.
Documentum PCS originated in the compliance products however from the 6.6 release it is a standalone product. If you haven’t worked in regulated environments before you may be a little unclear as to what its purpose is. PCS “controls” the printing of certain important documents, ensuring that a number of things happen when a “Controlled Print” takes place.
I’ll discuss the what first and then explain the why. First whenever a controlled print of a document is made that fact is recorded in the audit trail. A copy number is associated with the document and recorded in the audit trail entry; if you print another copy of the document then the copy number is incremented. In effect every print of a document is uniquely identified by object id and copy number. In fact PCS works in close tandem with Documentum PDF Stamping Services (PSS) to allow a watermark including the copy number to be overlayed on the printed document.
Additionally every printer in the organisation has to be added to the PCS configuration so controlled prints can only be made to well-known printers. Again the printer to which the print is sent is recorded in the audit trail.
Finally, subsequent to executing the controlled print, it may be necessary to record a ‘Recall’ of the print. A ‘Recall’ is recorded in the audit trail against a unique document print (the object id and copy number). The reasons for needing a recall maybe part of the operational lifecycle – one or more documents may have been superseded by an updated version and so all prints of the old version must be physically removed and that removal needs to be recorded. Alternatively it may simply be that a print was stuck in a printer or damaged or lost. It’s worth bearing in mind that when ‘Recalling’ a document with Documentum PCS the only thing that happens is that the recall is recorded in the audit trail as evidence and for reporting. PCS won’t, for example, halt print requests already sent to the printer.
A recall results in a notification sent to the inbox of interested parties. The recipient has to confirm acknowledgement of the notification, at which point a further audit trail entry is created. Thus there are 3 types of audit entry that can be created:
- On print
- On recall
- Recall confirmed
As pointed out in the comments both print and recall actions require the user to authenticate themselves before they are able to proceed.
So now we know what PCS does but it may not be clear why an organisation would need this functionality. As I alluded to earlier printing control is often used in regulated environments. Typical examples would be pharmaceutical or medical manufacturing, or aircraft production. These activities often take place in a factory or lab and need to follow defined and documented processes. Often this process documentation is physically printed, as online reference to the documentation is inconvenient or difficult.
In these types of scenario it is clearly essential that correct and up-to-date documentation is used by production staff (how happy would you be if certain components on the plane you are flying on were manufactured using out-of-date processes?). Not only does it make sense for management in these organisations to know there is a process to record what documentation is in use and when it is updated but in many cases regulatory authorities will required evidence that such systems are in place and demonstrated to work.
Given the above it is unsurprising that this functionality originated in the Documentum Compliance Manager (DCM) product. In earlier versions of DCM watermarking and print control were achieved using integrations with Liquent’s PDF Aqua products. However PCS was introduced as part of DCM 6.5 sp1 and became a separate product in 6.6. Controlled Print and Recall functions are provided as part of the DCM user interface but the latest release of PCS product comes with components that can be installed in the Webtop and Taskspace interfaces. This is part of EMCs policy of moving compliance functionality into the core stack and making it available to all clients rather than retaining a dependency on specialised interfaces. No doubt these features will be available in the C6 products at a later date.
The next installment will dig into the guts of the PCS architecture to see how it works.
Momentum 2011 pt 2 Roadmap Session
November 1, 2011 at 12:50 pm | Posted in Performance | Leave a commentTags: Documentum momentum
This is John McCormicks regular roadmap session. there is the usual disclaimer that dates are not set in stone.
Overall headlines:
Work on making IiG products cloud deployable has had knock on benefits for all deployments (jeroem touches on this in his session immediately after.
Cornerstones of ECM:
Process-analytics-content mgmt-collaboration-?
(nice to see content mgmt fAirly and squarely in the middle of that list. There 5 items on that list, I missed the last one)
D6.7sp1/xPlore 1.2: nov for most products, some clients a bit later
D7/xPlore 1.3: Q3 2012
D7 sp1/xPlore.next Q1 2013
TRUST and SECURITY
Rm 6.7 mssp, Dod 5015.2 v3, working on moreq2010
Rm7 high performance ingestion & disposition (bring large-scale dispositions from “days to hours”
CLOUD
Vfabric/vcube – basis of OnDemand
new installers,
monitoring,
easier ha,
scalability
Partitioning, handle spikes-> lower cost I.e. No need to overprovision
Cloud enablement progress:
2010 atmos
Early 11, vmware ready
D7 vfabric, scriptable installer, dynamic provisioning
xMS (= xCelerated Management Service, I think)
“xms” foundation for xcp2 and d7
Templates/blueprints (more in Jeroem’s session)
Deployment goes from weeks to hours
Amp (asset management product) tracks usage from logs
D7 improved monitoring first platform &. xPlore then Apps
Perf and scalability
Type caching xcp
Queue mgmt
Widening group/ username size 256 chars!!!
CHOICE
Web service : restful (still supporting soap-style but much new Ui will work on top of rest)
Generated application services , custom web apps. Create object types-> automatically generate service code (expect more on this from Jeroem tomorrow)
Interoperable cmis 1.1 expected next year
Mobile standards support
My dctm/ sdk, custom objects
6.7.1 merge desktop and offline
Support mac
SEARCH & ANALYTICS
Integrated analytcs/facets
Big idea: Search with action (via Fss,cis, xplore)
CIS: Linux, office2010, taxonomy cold start (point cis at repository and suggests an initial taxonomy)
Xplore: 1.2 thesaurus , custom nlp, new lang support, improved performance (wildcards)
Query based subscription-scheduled, initiate process, notify etc (idea: you specify a search term then xPlore schedules search and initiates some action if new data found)
Fast support ends 2011!!! Hundreds xplore deployments already
1.3 integrated analytics?? Not sure exactly what this meant
Momentum 2011 part 1
October 31, 2011 at 12:25 pm | Posted in Performance | Leave a commentTags: documentum, Momentum 2011
It’s been quite a while since I last posted. Life on both a personal and business level has been super hectic for the last 6 months which meant that something had to give. This blog was one of those things and the DFCProf project the other. Things have more or less returned to normal and I hoped to be ready to start blogging by the time Momentum rolled around. And I made it … just!
I intend to get back to some regular posting as well as spend some more time digging into interesting Documentum internals and performance. I’ve already got some interesting topics in the works such as: hardware mistakes, why you should upgrade Documentum Compliance Manager (DCM) if your DCM 5.x installation performs like a dog and what children’s birthday parties can teach us about performance. I’ve also long wanted to write about Documentum folder performance myths.
First things first.My last post, sometime back in May, was from EMC World and my first interest this week at Momentum is how some of the exciting announcements from Las Vegas have panned out over the last 6 months. The really exciting stuff was around Documentum OnDemand, cloud based Documentum, Captiva and DocSciences. How close are we to a real product? EMC has been prone to make big announcements over the last few years and then be slow to follow through with actual production quality product. Will this time be different?
As usual Jeroem van Rotterdam’s future architecture, Next Generation Information Server talk will be eagerly awaited. In addition I’ll be interested to hear how people, especially other customers, have responded to the recent highly marketed Oracle attack on Documentum. Finally since I’ve been working a lot with DCM in recent months I’m interested to hear what the roadmap is for a compliance product. A while back EMC seemed to be pulling back from explicitly supporting an in house Compliance product however the more recent messages don’t seem to back that up. DCM 6.7 is out with substantially improved performance and eSigs, overlays and controlled printing are supported by new product releases.
Alternative documentation
July 22, 2011 at 11:38 pm | Posted in Performance | 1 CommentTags: Video
I started the working day with a blank piece of paper and the goal of completing a technical article. As so often when I write I need to build up some structure before launching into writing words: headings, concepts and key ideas.
Sometimes I even find it difficult to conceive and organise the ideas I want to write about. On these occasions I start mind mapping; writing down random ideas on the subject and then connecting, extending and elaborating. The article structure usually flows directly from this activity.
The ideas are generated in a non-linear and inter-linked manner. In fact it struck me that the standard text-based article or document presented in a web browser or document viewer tends to present ideas in a highly linear manner with only limited linking functionally. In many ways the text document is a poor vehicle for presenting some technical material.
I also spent much of the day catching up on Documentum technical videos. I was struck by how effective they are at presenting both conceptual ideas and simple how-to demonstrations.
Both these ideas set me thinking about alternative methods of presenting project information. I tweeted the idea looking to see if anyone else had thoughts in this area. Lee Dallas responded with his experience: video knowledge capture, in fact he expanded his tweet into a blog post http://bit.ly/phLkdd.
Paul Maritz keynote
May 10, 2011 at 9:06 pm | Posted in EMCWorld | Leave a commentTags: cloudfoundry, EMC World, vmware
Notes from Paul Maritz vmware keynote
2 types of ‘journey’ happening
IT journey
User journey. Moving from device-centric to infomation centric experience
Focussing on IT journey in this session.
CFO/CIOs are asking questions of IT
Why?
Too complex !!!
Too brittle and expensive
Hard to measure
Need to Free up funds for app development (most IT budget goes on Maintenance and operations, not value-add like new app development)
Want and should be Measuring
Raised the idea of a ‘Rate card’, it is becoming possible to compare your metrics against industry standards (how much does it cost to provision a VM, provision GB of storage , etc)
Products in the VMWare stack to assist infrastructure layer:
VSphere
vMotion Apps + edge functions (edge = firewalls, antivirus, etc needed to make app work)
VcloudDirector, policies, metrics, self service
New product (no name mentioned) Custom analytics reporting, statistical based
Orgs are starting with private cloud and then moving to Hybrid model, this implies need for:
consistent interfaces, common platform.
They have some large Partners lined up with promise of 25 data centres (by end of year?)
Gives customers comfort
Transformation of apps
- developer led revolt against complexity (eg EJB) rails , django,etc
let the hardware sweat
- paas
- new data paradigms eg noSQL, big data
Cloudfoundry released 2 weeks ago
An open source PaaS
- framework, initially Spring, Grails, rails
- data layers
- cloud binding
Enduser access:
Horizon and MVP
EMC World – Introducing Captiva 6.5
May 10, 2011 at 3:32 am | Posted in Momentum | Leave a commentTags: Captiva, Capture, EMC OnDemand, EMC World, Momentum 2011
This is my notes from Robert Frey’s Introducing Captiva 6.5. A number of people I spoke to today and yesterday were surprised that I was interested in Captiva. It’s probably true that ECM and its sexier cousin, Case Management, have the wider and possibly more interesting problems to solve. However capture projects have some compelling benefits too namely that they have the potential for short payback periods. Also many interesting content management projects don’t work without capture (we are still a very paper-based world).
- 6.5 was released in March this year
- The key focus was on Performance and Intelligence:
- ‘Headline’ stats of 10M pages per day
- Better (ie more automatic) deployment of certain features
- Global capture
Performance
- Undertook benchmarking
- Used a simple 10 step process
- Used multiple clients to ensure client requests were not the bottleneck
- ‘Hammered’ Captiva server – identified and eliminated bottlenecks
- Stressed that this is indicative only as performance depends on a number of variables ‘your mileage may vary’
- There is a performance tuning guide on Powerlink
- Key performance metric is number of tasks not number of pages
- performance guide shows how to calculate tasks from the modules you have configured for your process
- A sizing guide can help you turn this information into concrete capacity recommendations
- Also some specific support for Documentum High Volume server e.g. can create Lightweight Sysobjects
Production Auto Learning
- Applicable to Structure and Semi-Structured documents
- 2 new modules for use in processes:
- Dispatcher Collector
- Dispatcher Supervisor
- Use Case is as follows:
- You have a new document type (say a new type of supplier sending you invoices)
- This will exit from the classification stage as an exception that must be handled manually
- Prior to 6.5 you would need a process to manually create the new template, test and release to production
- Dispatcher Collector module ‘watches’ the operator during the manual classification stage and tries to create a new template based on the operator’s actions
- new template is passed to the Dispatcher Supervisor, a UI step that allows a supervisor to view and approve the new template and if required release into production
- Caveat: this won’t cover every single situation but it is another tool that can be used to reduce manual intervention.
-
InputAccel Capture Flow Designer
- A graphical design tool to replace the previous process designer very much in the xCP mould
- Used drag and drop to build the process
- Can drop down to code if necessary
- Will be the strategic development tool going forward
- Useful routing functionality to make it easy to send a processed document to different operators depending on e.g. language in the doc or security clearance required.
- No extra charge – bundled with InputAccel
- Image converter module replaces Image generator
Globalisation
- Handles Asian languages
- recognises around 130 languages
- 5.3 life has been extended
- 5.3sp3 and sp4 can be upgraded directly to 6.5
- previous versions should upgrade to 5.3sp4 first
Migration to 6.5
-
Capture OnDemand
- Rick Devenutti announced EMC OnDemand today
- Captiva one of the products in the first launch
- Take away the pain of system management -> can now concentrate on developing and supporting the business proceses
- Should allow customers to innovate and differentiate faster (instead of dealing with system management problems)
EMC World – Transformation of ECM
May 9, 2011 at 7:00 pm | Posted in Performance | Leave a commentMy notes and comments from Chris Preston’s Transformation of ECM session.
- Value Creation
- Used to be transformation of raw materials via industrial processes
- Now application of content processing and analystics to data creating valuable knowledge
- Originally ECM was about operational efficiencies now more about strategic advantage
- Volume (obviously!)
- Richness Chris mentioned specifically document formats but I would add relationships and context as key elements of the richness
- Dispersion – data is no longer necessarily within organisational data centres. Think of public cloud, facebook, information residing with partners and customers
- Really nice slide on Increase of Regulations & Standards – it just shows those words with a background of hundreds of regulations/standards from around the world
- Supporting the New User
- They use facebook instead of email -> demand new ways of working based on home experience
- They want to self provision don’t/can’t wait for IT
- Expect choice on device types – no longer just your work desktop
- Evolution of IT – waves of IT change every 15 or so years
- Desktop – this was about increasing computer capacity, database applications, client server
- Web – ubiquitous connectivity, just coming out of this era
- Post-PC – Now! multi-device, choice, context
- Implications
- Users want choice
- Data centres are becoming consolidated (public and private cloud) but data is more dispersed
- Information Fabric I think this will be one of the buzzwords of the week!
- Now started to talk about how this relates to information products
- slide with 3 vertical stacked layers, bottom to top:
-
- Information governance SourceOne and records managent
- ECM
- Case Processing
- Captureie Captiva – great RoI often 4-6 months
- Centralized Information Management – federated repositories and CMIS – not monolithic repository, that doesn’t work
- New User Experience – ECM your way – native app, sharepoint, web etc. and of course centerstage
- case processing
- Best of Breed approach, works fine initially but becomes/is brittle due to all the integrations
- Alternative Case Management platform – xCP
- Showed a real-life example of a Loan application (there was a mention for Chris Campbell of First Command!)
- The big news
- Announced a location independent EMC On-Demand
- Includes ECM, Case Managenent, capture and DocSciences (customer engagement)
- Managed by EMC experts
- Can be on or off premises
- just a taster there will be more on this later in the week
3 dimensions of information growth:
I have more to say on this but that will have to wait for another post
EMC World 1
May 9, 2011 at 3:44 pm | Posted in Momentum | Leave a commentTags: EMC World, Momentum 2011
Just finished breakfast at EMC World so it’s time to think about the week ahead. As usual there is so much I could see but there just won’t be time to cover everything. This is my first time at EMC World itself which compared to Momentum is just huge. So what will I be looking at and why?
First the future of Documentum. Primarily this will involve visits to Jeroem van Rotterdam’s architecture sessions but I wonder to what extent it will permeate the other sessions?Jeroem gave a tantalising glimpse in Lisbon of the concept of a Next Generation Information Server to replace the venerable Content Server. This time we are promised a demo of NGIS! Also he will be discussing the new scalable architecture. Make no mistake this is Important stuff. Much progress is being made to make Documentum suite VMWare ready but that is not the same as cloud-ready despite some of the messages that will probably come out this week. Assuming this ‘cloud thing’ will be more than just a buzzword then these developments will be essential to the future of Documentum.
Next Captiva. 6 months ago at Lisbon I was pleasantly surprised at the progress made with capture technologies. Most of my previous experience was with old Kofax versions, with VB release code, separator sheets, operator-keyed keywords and metadata. Capture was usually labour -intensive. I’m interested in seeing document learning, automated metadata capture and advanced recognition technologies driving up the ROI to make many more capture projects possible.
The next item is xCP-this is more a watching brief but I’m interested to see to what extent xCP is positioned as more than just case management.
Finally Atmos. This is a bit of a new one for me but cloud-based storage will become more and more important. It makes sense to get an understanding of what EMC has to offer in this area.
Very exciting, now for Joe Tucci’s keynote!
Blog at WordPress.com. | Theme: Pool by Borja Fernandez.
Entries and comments feeds.


