Tuesday, October 22, 2013

WebCenter Enterprise Capture - Client Profiles (Part 1)

Hi all, 

I wanted to continue part 2 of the Capture 11g review with some practical examples. The focus will be on "Client Profiles", which are the new container for the end-user interaction with the system.

We'll start with a review of Client Profiles and their purpose, then we'll go into creating the individual assets that makeup a client profile. These are some typical, basic examples that should be very to relate to the 10g experience.

You can find the documentation for Client Profiles in section 4 in this document. 

From the documentation:

A client profile contains the settings used when end-users select it to scan, import, and / or index documents in the client. Client profiles control such things as how 
documents are created and separated in batches, whether metadata fields are available 
and required, and what happens next to batches after users release them.

In other words, a 'client profile' is the top-level container for end users.

You can see how the client profiles are used by the end users in the above screenshot. Changing the client profile changes the available items in the batch list area.

Now that you know what we're going to create, let's start building one.

Creating the Workspace

Since I want to present an end-to-end example, let's start with creating the top-level container on the administration side.

  1. As a Capture admin, log into the console: http://yourdns:16400/dc-console
    Note that capture admins are WLS administrators (with appropriate roles) as well as users with the CaptureWorkspaceManager application role. We'll cover security in more detail in an upcoming article.
  2. Click on the "+" in the Capture Workspaces pane, this will pop up a prompt for the new workspace name and description
  3. Populate the name & description, for this example, I'll be creating a workspace for my work items

At this point, the workspace is created. It's time to populate it with our commit, index, input, metadata, and other assets.

I'll use a similar logical diagram as used in the documentation, starting with the workspace assets:

The general purpose of this workspace will be to ingest work items. Specifically, we'll be processing expense reports, contracts, and other project documentation. 

We want to manually index all items, regardless of how they're captured. 

For this example, we'll create a system that allows for emailing contracts, dropping notes into a watch folder, and using the scanner (or file system) to capture any sort of project document.

After indexing, the index user will be able to release each batch to be committed into the back-end WCC server.

The security of this workspace will be fairly simple. We'll do everything as the admin for this sample.

Create the Workspace Assets

Select the metadata tab to gain access to the following tables:

  • Metadata Fields
  • User Defined Choice Lists
  • Database Choice Lists
  • Dependent Choice Lists
  • Database Lookup Profiles
Let's start with the Database Choice Lists table.

Database Choice Lists

Note that this is a bit different. You don't 'add', as you may expect, but instead you 'edit' the default Database type that's pre-loaded.
  1. Select 'Database' and click the edit button (the pencil)
  2. In the Choice List Sources table, click the add button
  3. This will take you to the "Choice List Source: Database Choice List Source" page

  4. Populate the Choice List Source Name & Description with logical values
  5. Note that there's a field for the JNDI value; now that the application is living on the WebLogic Server, it has access to the shared data sources; below is a screenshot of the data sources for this sample instance; Note that, since we want to use the CSDS (i.e., the WCC data source), we must target it to the capture_server1 managed server first

  6. After populating, click on the Connect button to check connectivity; the result should appear similar to the below screenshot

Now, we'll create some lists based on this connection
  1. In the table below the above configurations, click on the add button
  2. Populate the Database Choice List Properties similar to the below:

  3. From this sample, the choice list will be based on the values in WCC_OCS.CLIENTTABLE
Repeat the above for the Projects table, which will be dependent upon the client table.

In the end, you'll end up back on the workspace's Metadata tab. The "Database Choice Lists" table will look like the following screenshot:

Now, ideally, we'd create a DCL (dependent choice list) that would replicate the behavior that we have in WebCenter Content. That is, the children can all come from a single table, filtered by the parent value. This still does not appear possible in 11g out of the box configurations. 

With 11g, the DCL capabilities is similar to the 10 DCL functionality. 

From the documentation:
  • You can create choice list dependencies between Capture user defined choice lists, database choice lists, or between choice list types
  • Create all choice lists you plan to link before creating a choice list dependency. At a minimum, you need a parent choice list, and two or more child choice lists
  • Each item in a child list can be related to multiple parent items. For example, Supplies could be a child item to Household and Automotive subproducts
  • You can create multi-level dependencies (for example, great grandparent, grandparent, parent, and child choice lists)
  • Only one choice list dependency may be assigned to a client profile. Multiple parent/child dependencies must be defined within a single choice list dependency
See section 3.7 in the Managing Capture guide for full details.

The downside of this framework is that we still cannot (in)directly leverage DCLs defined in WebCenter Content. Each Capture parent value will re-populate the child value with an entire list opposed to a filtered list. Continuing with this example, we'll simply have two, unassociated drop down lists.

Metadata Fields

Next, now that the metadata data sources (database choice lists, in our case) are defined, we can create the metadata fields.

To create the metadata fields, we'll move up to the top table on the Metadata tab. This is the "Metadata Fields" table.
  1. Click on the add button
  2. On the Metadata Field: New Metadata Field page, enter in the following values:

    - Field Name: Client Name
    - Data Type: Alpha Numeric
    - Required: Checked
    - Choice List Source: WCCLists
    - Choice List: Clients
  3. Click Submit
Fairly simple process, but you do have the options to configure these fields with masks, regex validation, and some other more advanced options. 

Comparing this to 10g, you'll notice that, instead of creating the fields attached to a file cabinet with only the most basic attributes (name, datatype, length), you now create the full definition at the top level.

The following diagram shows the details for the remaining fields:

Note that the input mask serves a secondary purpose. As per the documentation:

To allow the user to enter decimal values, you must create a format that forces at least one decimal (#.0#).For client users to change a number's sign, they must enter the number first, then press the + or the - key.

By adding this mask, we're allowing (and enforcing, in this case) the use of a double datatype.

Document Profiles

The next step will be to create the needed document profiles for this workspace. This occurs within the Classification tab under the Document Profiles table.
  1. Click on the add button
  2. Give the document profile a name
  3. Select which fields apply for this document profile
  4. Click Submit

Fairly simple process. Repeat the above for the "Documentation" profile, but don't select the two expense report fields.

Comparing this to the 10g method, you see that there are less options at the 'index profile' level. 11g removed index profiles and spread out the options a bit more. Keep this in mind to help understand the 11g context.

Client Profiles

It's time to start tying things together with the client profile. Switch to the Capture tab. There are two tables under this tab: Client Profiles & Import Processor Jobs. Let's start on the Client Profiles table.
  1. Clicking on the add button will take us to a wizard-like grouping of pages, or train sequence, in ADF parlance; each page is a 'train stop'
  2. On the General Settings train stop, select the following:
    - Profile Type: 2 - Capture and Index
    - Profile Name: Expense Reports
    - Batch Prefix: er
  3. Click Next
  4. Click Next
  5. On the "Image Settings" page:
    - Default Color: Color
    - Default DPI: 200
    - Non-Image Import Action: Convert to Image Format
  6. Click Next
  7. On the "Document Indexing Settings" page:
    - Document Profiles: Expense Reports
  8. Click Next
  9. Click Next
  10. On the "Security" page
    - Add the weblogic user as a client profile user
  11. Click Next
  12. On the "Post-Processing" page:
    - Batch Processor: Commit Processor
  13. Click Next
  14. Click Submit
Note, on the "Document Indexing Settings" page there's a new option called "Document Creation Option". This allows the workspace manager to pre-define whether this client profile will be scanning in Simplex, 'Duplex', Variable, and user-prompt mode. Simplex will create a document per page scanned. The "2 - Two Pages (e.g. Duplex)" option makes it seem that this is for duplex scanning, but it's more geared for two-page invoices. But, it's still the scanner's settings that determine whether pages are scanned simplex (front page only) or duplex (front & back). Keep this in mind while making your selection. 

The default is "Variable Number of Pages". This is similar to the 10g method that will scan in all pages into a batch and allows the user to break the batch into documents while indexing.

The final option is "Prompt User". This allows the index user to select any of the three above options at scan time.

Commit Processors

The next step will be to create the needed commit profiles for this workspace. This occurs within the Commit tab under the Commit Profiles table.

  1. In the table, click on the add button
  2. On the "General Settings" page:
    - Commit Profile Name: WCCCommit
    - Commit Driver: WebCenter Content
    - Document Output Format: PDF Image-Only
    - Restrict Commit to Document Profile: All
  3. Click Next
  4. On the "Commit Driver Settings" page
    - Login tab:
    - - User Name: weblogic
    - - Password: **********
    - - Server URL: http://<dns>:16200/cs/idcplg
  5. Click Login
  6. Verify that Status: Connected
  7. Click on the "Check-In" tab:
    - Document Title: [Client Name]-[Project Name]
    - Default Type: Scan
    - Default Security Group: Secure
  8. Click on the "Field Mappings" tab
    - Map the scan fields to appropriate fields in your target WCC instance
  9. Click on the "Options" tab
    - Leave the defaults as-is, but notice that the bypass workflow and alternative check-in service options are available here
  10. Click Submit

Test Run

At this time, we are able to process a document.

  1. Log into the client: http://<dns>:16400/dc-client
  2. Select the "Expense Report" client profile
  3. Select a scanner from the Capture Settings list
  4. Click on Capture
  5. Expand the batch and you'll see your document(s)

  1. Select the Document and index it
    - NOTE: notice that the expense report total isn't throwing an error, but it's also not retaining the value that you entered. This is because you must select the correct datatype and display format.
    - - Return to your metadata settings and update the values for the Expense Report Total. Switch the Data Type from "Numeric" to "Float" and set the Display Format to "Currency".
    -- Now, refresh your client and you should be able to enter the expense amount without issue.
  2. After successfully indexing the document, release the batch
  3. After a moment, click the Refresh Batch List button (not the browser refresh), the batch should disappear from your list
  4. Verify
    - Log into the WebCenter Content instance to verify that the item landed as expected

At this point, you have a basic scan and index profile in 11g. This process mimics the basic process of a simple scan and index profile in 10g.

In the second part of Client Profiles, the other import options will be explored.