Migrating Existing PeopleSoft Attachments into the Managed Attachments Solution

This post comes from Fishbowl’s Mark Heupel. Mark is an Oracle Webcenter consultant, and he has worked on a few different projects over the last year helping customers integrate WebCenter with Oracle E-Business Suite and PeopleSoft. One of WebCenter’s strengths is it provides these integrations out-of-the-box, including a document imaging integration to automate invoice processing with WebCenter’s capture, forms recognition and imaging capabilities, as well as workflows leveraging Oracle Business Process Management. Mark discusses WebCenter’s integration with PeopleSoft and its managed attachments solution below.

Application Integration

Oracle’s Managed Attachments solution enables business users in PeopleSoft to attach, scan, and retrieve document attachments stored in an Oracle WebCenter Content Server repository.

One of the issues that our clients face when moving to Oracle’s Managed Attachments solution is determining what to do with the attachments that already exist in PeopleSoft. We at Fishbowl have come up with a method to migrate these attachments into WebCenter Content in bulk while still maintaining the attachments’ context within PeopleSoft.

A high-level view of the solution is as follows. Queries are written on the PeopleSoft side to export each of the attachments, as well as a file containing each attachment’s metadata and PeopleSoft contextual information, to a network share. This is a task done by a PeopleSoft administrator. We then use our Enterprise Batchloader product to bulk load these files into WebCenter Content. We’ve written a customization that overrides the set of services that qualify for Managed Attachments to include our Enterprise Batchloader service. Since the context of the attachments is included in the metadata file, the Enterprise Batchloader check-ins work in the same way that a normal check-in from Managed Attachments would and the attachments retain their PeopleSoft context. Let’s get into the details of how this works.

Managed Attachments Overview

In order to understand the migration strategy, we first need to understand how Managed Attachments works under the covers. The important piece to know for this migration is that the table that stores the Managed Attachment object information on the WebCenter side is the AFObjects table. This table stores the PeopleSoft context information as well as the dDocName of each of the attachments currently being stored in WebCenter. Here is an example of what the AFObjects table looks like:

AFObjects Table

Each row in this table represents one PeopleSoft attachment being managed in WebCenter Content. The dAFApplication, dAFBusinessObjectType, and dAFBusinessObject fields make up the context for where the attachment is located in PeopleSoft. The dAFApplication field represents the application, the dAFObjectType field represents the page, and the dAFBusinessObject field is a pipe delimited list of the primary key values from the page where the attachment is located in PeopleSoft. The dDocName field is simply the dDocName of the content item in WebCenter.

When a user clicks the Managed Attachments link on the PeopleSoft screen a request is made over to WebCenter that contains the contextual page information from PeopleSoft (dAFApplication, dAFBusinessObjectType, and dAFBusinessObject). Using this contextual information, a query is then made against the AFObjects table to find the content IDs of the attachments that should be returned back to the user. A similar request is made when a user checks in a document through the Managed Attachments screen in PeopleSoft. The PeopleSoft context information is sent to WebCenter, the document is checked in, and then a row is inserted into the AFObjects table that contains the PeopleSoft contextual information as well as the dDocName of the newly checked-in document.

Loading Content into WebCenter

In order to be able to successfully load a large number of content items into WebCenter, while still maintaining the correct PeopleSoft context, we had to write a customization to hook into the existing Managed Attachments check-in functionality. The AppAdapterCore component, one of the two components installed on WebCenter for Managed Attachments, contains the core Managed Attachments code. This component contains a list of services such as CHECKIN_NEW that, when called with the PeopleSoft contextual information in the binder (dAFApplication, dAFObjectType, and dAFObject), executes the query that inserts a row into the AFObjects table. The customization that we wrote overrides the list of services specified in the AppAdapterCore component to include our Enterprise Batchloader check-in services. By doing so, we’re able to hook into the same insert query that Managed Attachments already uses, assuming we have placed the correct PeopleSoft context information in the binder.

Here is an example of what a standard Enterprise Batchloader blf (batch load file) would look like:

Batch Load File
As you can see, the file simply contains the action to take (insert), the location of the primary file, and the required metadata fields for WebCenter. In order to assign the correct PeopleSoft context we simply need to specify the dAFApplication, dAFObjectType, and dAFObject fields in the blf file:

Batch Load File 2

This effectively places each of those fields into the binder in WebCenter. When Enterprise Batchloader is run and performs its check-ins into WebCenter, the Managed Attachments functionality gets called and a row is inserted into the AFObjects table for each attachment that specifies the PeopleSoft context information. As long as the correct PeopleSoft contextual information is placed into the Enterprise Batchloader blf file, we’re able to bulk load as many attachments as needed into WebCenter while still retaining the correct PeopleSoft context information for use with the Managed Attachments solution.

I hope this provides you with an example of how your existing PeopleSoft Managed Attachments content could be migrated to WebCenter. After all, getting this content into WebCenter has many additional benefits, such as version control, renditions, retention management and the ability to surface this content to WebCenter-based mobile apps and portals. If you have questions or would like to engage with Fishbowl on such projects, please email info@fishbowlsolutions.com.


Developing WebCenter Content Cross Platform iDoc Enabled Components for Mobile, ADF, Sharepoint, Liferay

frankensteinSo over the last couple of months I’ve been thinking and tinkering with code, wondering, “What’s the best approach for creating WebCenter Content (WCC) components that I can consume and reuse across multiple platforms and environments?”
Is it pagelet producer or maybe an iFrame? These solutions just weren’t good enough or didn’t allow the flexibility I really wanted.

I needed a WCC Solution that could easily be consumed into mobile, either Cordova (Hybrid APP) or ADF Mobile (AMX views), and that worked on different devices/platforms as well as on any enterprise app, i.e. Sharepoint (.Net), Lifreray,  WebCenter Portal (ADF) or even consumed into the new WebCenter Content ADF WebUI. It also needed to provide the added advantage that there would not need to be multiple branches of code or redevelopment of the component for each platform and environment.

And in the famous words of Victor Frankenstein.. “It’s Alive!!”

After tinkering around and trying different approaches, this is the solution I created to support the above model.
I’m not saying this is the right approach or supported by the enterprise vendors, but an approach that is reusable and can work on all enterprise apps.



Here’s a quick video of a drag/drop MultiUploader component I created for WebCenter Content Classic that I can reuse on .Net and ADF WebCenter Portal/Content as well as mobile.

Read on to find out more on how this was achieved.

Continue reading

SharePoint and Oracle WebCenter: Use Cases for an Integrated Content Management System

I had the privilege to present with John Klinke of Oracle WebCenter Product Management during a recent webinar. John and I discussed the integrations that Fishbowl and Oracle provide for SharePoint, and instead of focusing on the feature/function of the integrations (connectors), we chose to detail the use cases that each of the integrations satisfy. It was important to each of us – not to mention our respective companies – that we took this approach as customers were asking what the differences were between the connectors. Before I summarize the use cases for the integrations, let me start with the underlying technical differences.

SharePoint Storage Options

With the release of SharePoint 2013, Microsoft still provides the ability to store content outside the SQL Server database. This is facilitated through remote blob storage or RBS, which effectively enables BLOBS (binary large objects) to be stored within 3rd-party storage systems. Storing BLOBS outside of SQL Server was useful in SharePoint 2007 and 2010, as the BLOBS ( Word documents, PowerPoint presentations, etc.) were causing overall SQL performance issues because queries to the database had to go through many BLOBs to return data requests. However, SharePoint 2013 features shredded storage, which basically saves versions of documents in small chunks that get reassembled when users access them. For example, a simple text edit to a Word document, say a change to the document’s footer, would result in only the incremental change being saved to the database and not the entire document. You don’t need to be a database expert to understand the positive performance impacts this would have.

Anyway, using RBS still has its advantages, and the obvious one is for those customers that are looking to integrate SharePoint with Oracle WebCenter Content. RBS provides a proven integration method to move SharePoint content and associated metadata to WebCenter Content for access, consumption and delivery to other Oracle-based systems. However, RBS is is basically an all or nothing approach. That is, wherever a RBS provider has been enabled, at the site collection, site or library level, ALL document versions in that location will be stored remotely. The only way to limit what gets stored is by file size or type. So, for organizations that do wish to store the majority of SharePoint content remotely, or in this case within Oracle WebCenter Content, RBS is the way to go and this is the integration method that Oracle provides as of the WebCenter Content release.

Customers looking for a more selective approach to store SharePoint content items will want to consider Fishbowl’s SharePoint connector integration for WebCenter. Fishbowl’s integration does not utilize RBS, and instead SharePoint event receivers are leveraged to determine document storage. This integration approach provides more granular control over content storage, while also giving SharePoint users specific control over the content items they want to store in WebCenter. The tradeoff with this more granular, user-controlled option is that duplicate items get stored between the systems.

With the technical details of each integration out of the way, let’s now talk use cases.

Use Cases for Fishbowl’s SharePoint Integration

  • Content Publishing
    The business scenario I discussed during the webinar was that of a SharePoint user on a marketing team working on a new product launch. During the lead up to the actual launch date, the user and their colleagues have created many assets to support the launch, including a brochure, new copy for the website, a launch plan, graphics and other images, and a press release. Most of these assets have multiple versions, and the user only wants to store or publish final versions of each so that they get surfaced to the company’s website.

Fishbowl’s SharePoint Connector for Oracle WebCenter Content features the ability to only store major versions of content in WebCenter. This allows users with specific knowledge of the content to publish the ability to do so, while also ensuring that only the final version of content gets stored before it can be seen internally or externally.

  • Project Lifecycle Governance
    This use case satisfies the requirement that many organizations have with their SharePoint system – deleting SharePoint libraries or whole sites at the conclusion of a project. The example I shared for this use case was that of members of a legal team working on a company acquisition. They have created and collected many documents to help with the acquisition, but once the acquisition is complete, the SharePoint library or site must be deleted to ensure the documents remain privy to the legal team and cannot be seen by anyone not authorized to do so.

For this use case, Fishbowl’s SharePoint Connector could be configured to allow content storage in WebCenter to occur via a check box. The description for the check box is configurable, but for example, it could simply say “Store in WebCenter”. Such a check box allows a site arbiter on the legal team to determine the content that needs to be retained and stored in WebCenter. This could be content that needs to be retained per compliance or legal reasons, as well as content that needs to be shared with users outside the legal team such as members of the executive team.

  • Business Specific Storage Requirements
    For this use case the example I shared is an organization that has many, different requirements for the SharePoint content they wish to store in WebCenter. These requirements are driven by the various business units. For example, members of an organization’s financial team will have different retention requirements of content and will have to store the majority of the content they create per financial document retention rules. Contrast this with the Legal team example described above who do not want to store the majority of their content and want to be more selective.

The feature to leverage for this use case is the ability to override storage settings that are initially made at the SharePoint central admin level. This feature enables organizations to get their SharePoint to WebCenter integration up and running quickly, but puts the control of content storage in the hands of the business units that understand exactly the content they need to store in WebCenter for retention, distribution, and re-purposing.

Use Cases for Oracle’s SharePoint Integration

I will not try to fully detail the use cases that John did such a great job discussing during the webinar, so I will provide a summary instead. For a more detailed description, please watch the on-demand recording. John begins discussing Oracle’s use cases at about minute 43.

  • Improve Performance
    John spoke to the advantages of storing BLOBs outside of SQL server, which would help improve overall system performance. With Oracle’s connector leveraging RBS, it is very easy for organizations to centralize all SharePoint content to WebCenter and leverage the Oracle database to scale to trillions of items.
  • Improve Governance
    For this use case, John spoke to how a lot of companies using SharePoint have struggled with governance of the system. Sites and overall use quickly spirals out of control leaving IT to clean up the mess of orphaned sites and content. By centrally managing this content in WebCenter, organizations can leverage the records and retention management policies they have in place to better manage content.
  • Re-Use Content
    The point John made with this use case is that by centralizing SharePoint content in WebCenter, that content can then be re-used or surfaced to other Oracle-based systems and applications – WebCenter Portal, WebCenter Sites, E-Business Suite, etc. Companies can leverage Oracle WebCenter’s out-of-the-box integrations for this purpose. The big benefit here is getting rid of SharePoint silos, and providing users access to high-value content outside of SharePoint.

Use Case Summaries

Well, there you have it. Integrating SharePoint and Oracle WebCenter Content can be achieved via the integrations that Fishbowl and Oracle provide. As you consider such an integration, please first consider your integration use case and ultimately what your organization is trying to achieve. Here is a table that summarizes and compares use cases for each integration:

You can access and watch the webinar recording from Fishbowl’s YouTube Channel. Enjoy, and please pass along any feedback.

Thanks for reading!

Jason Lamon is a product strategist and technology evangelist who writes about a range of topics regarding content management and enterprise portals. He writes to keep the communication going about such topics, uncover new opinions, and to get responses from people who are smarter than him. If you are one of those people, feel free to respond to his tweets and posts.

Oracle WebCenter Content Automation Webinar Series – Recap

I recently concluded a series of webinars that detailed some of the Fishbowl components available to streamline and automate administrative tasks in Oracle WebCenter Content, as well as provide additional value and extend upon some its inherent features. This included topics on content notifications, loading content into the system, administering and leveraging content-based workflows, and providing users access to secure content.

I have provided links to the webinar recordings, as well as a video recap to the entire webinar series below.

Subscription Notifier: Rule-based content notifications




Enterprise Batch Loader: Streamline the loading of content into Oracle WebCenter, including content from third-party systems




Workflow Solution Set: Bring all workflow information into view, including workflow history, approval comments, workflow status, and more




Advanced User Security Mapping: Interpret additional directory information including user attributes, organizational units, and group membership to define access to content




Administration Suite: All the components mentioned above come together to form Fishbowl’s Admin Suite – the most comprehensive suite of Oracle WebCenter Content Administration tools to streamline common, administrative tasks


If you would like any additional information on any of these topics, or further details on how Fishbowl’s components can help, please email info@fishbowlsolutions.com.

Jason Lamon is a product strategist and technology evangelist who writes about a range of topics regarding content management and enterprise portals. He writes to keep the communication going about such topics, uncover new opinions, and to get responses from people who are smarter than him. If you are one of those people, feel free to respond to his tweets and posts.

WebCenter Suite Real Time Chat – Mobile (Android, RIM, iOS, Windows)

As our continued drive to improve the WebCenter Suite I’m happy to announce that Fishbowl Solutions WebCenter Mobile Real Time Chat integration is soon to be released supporting Android, RIM, iOS and Windows Mobile Devices.

No true tablet application support yet but this is on the roadmap (you can use the mobile app on the tablets today or if your site has been optimised for tablets access chat via the integrated browser solution).

If you’re not familiar with our WebCenter Messaging and Presence integration here is a quick rundown of it’s features.

Supports browser messaging integration with the WebCenter Suite – Portal, Sites & Content. There are no requirements to have a messaging XMPP server ie MS Lync setup; however if you do our solution can integrate with a number of messaging solutions ie – MS Lync, gTalk, etc.

For a preview of our browser integration check out these earlier posts

Addon:: WebCenter Portal Spaces Real Time Chat Instant Messaging and Presence Integration Video.

WebCenter Portal Spaces – Real Time Messaging & Presence Solution.