230 likes | 324 Views
Quest Notes Migrator for SharePoint. Steve Walch, Senior Product Manager. Blog: http://notes2sharepoint.org . November, 2011. Partner Training Webcast Series - Session 3 Advanced Content Migration Jobs. Partner Training Webcast Series. Migration Basics with the NMSP Designer Client
E N D
Quest Notes Migrator for SharePoint Steve Walch, Senior Product Manager Blog: http://notes2sharepoint.org November, 2011 Partner Training Webcast Series - Session 3 Advanced Content Migration Jobs
Partner Training Webcast Series • Migration Basics with the NMSP Designer Client • Analysis and Automation with the NMSP Migration Console • Advanced Content Migration Jobs • Tool Deployment, Domino.Doc and QuickPlace / QuickR migrations • Migrating Application Designs • Tips and Tricks for Managing Large Migration Projects • Even More Advanced Content Migration Jobs (Product demos using NMSP 6.1 beta)
Today’s Agenda Advanced Content Migration Jobs • Working with Lookups and Managed Metadata • Migrating images/attachments to alternate Libraries • Dealing with multi-valued items • Normalizing multi-valued items to multiple documents • Working with Content Types • Dealing with Response documents • Generating Microsoft Word and PDF documents • Setting links to parent documents
Override Document Metadata • Create special columns in Source Data Definition • No need to map to target!
Working with Lookup Columns • Similar to choice columns, except the set of choices is in another SharePoint list • May be multi-valued • May “join” other columns from the lookup list (read-only) • May be used to enforce constraints (Cascade Delete, Restrict Delete) • Create Manually or Provision with NMSP • Lookup list must be pre-populated with needed values • May be accomplished using a separate migration job • Missing items will be errors if Required column, otherwise warnings • Bonus! NMSP can provision cross-site lookups (within the same site collection) • Not possible in SharePoint user interface
Working with Managed Metadata • Similar to choice/lookup columns, except the set of choices is in a centralized Term Store • Separate user interface for managing term store • Term store may be scoped to site collection or enterprise • Supports aliases, translation, hierarchies • Most define column manually, then migrate content • Migration options: • Match using Hierarchy (Notes values contain “/” or “\”) • Match on Alias • Match on specific Locale • Add missing values to Term Store
Recap: Replacing Notes keyword fields TIP: Use formulas to convert values while migrating
Migrating files to Alternate Locations • Lists: Images / attachments / objects are normally placed in the list item’s “Attachments” area • You can also place them in a separate document library • Links and images references remain intact • Libraries: Images / attachments / objects are normally placed in the same library folder as the migrated doc • You can place them in a separate folder OR document library • Links and images references remain intact • Create target column of type “File” • Set “Alternate Folder” or “Alternate Library” properties • Alternate Libraries may be provisioned automatically • Use “Applies To” property on other target columns • “Primary Only” “Alternate Only” “All Items”
SharePoint targets and related files • Typical Alternate Libraries: • Shared Documents, Site Assets, Site Images
Controlling Folder / File names • Create target column of type “Folder” and map any text value to it • Causes folders and subfolders to be created (if needed) • By default, “/” and “\” characters get interpreted as hierarchy delimiters • This may be disabled by setting “Multi Level” property to False • Migrated documents are placed in designated folder • Create target column of type “File Name” and map any text value to it • Causes file names to be assigned to migrated files • By default, only applies to embedded elements that do not have their own file names (images, OLE objects) • Set “Override Existing Names” property to apply to all attachments • File extensions are always preserved
Dealing with multi-valued items • Many Notes items are multi-valued arrays • Text Lists, Number Lists, DateTime Lists • Formulas can also result in “Lists” • In SharePoint, only Choice, Managed Metadata, Lookup, User columns can be multi-valued • In NMSP, specify “Multi” in source and target column definitions • Other column types must merge to single value • Use NMSP mapping properties to select “First”, “Last” or “Merge” • Use Formula source field for more precise control • @Implode(fieldname, ”, “) • Special case: Multi-Lined Text Items • @Implode(fieldname, @Newline)
Normalizing multi-valued items to multiple records • Set “Multi-value Disposition” property to “Normalize” on desired column mappings • Only allowed for basic column types (not rich text, etc.) • NMSP will create separate List Item for each value encountered in the Normalized columns • Largest array found will control number of documents written • Non-normalized columns will be copied to each record • Common normalization scenario: • Migrate “header” records first • Use Lookup column, etc., to link “detail” records to “header” records • Optional: Use Cascaded or Restricted Delete • Limitations: Only for custom lists • No automatic versioning, Not added to Link Tracking Service
Normalization Example #2 • Some Notes forms have tables of related fields • Solution: Use a formula source column to create multi-valued items out of related fields • Example: “Product_1: Product_2: Product_3: Product_4”
Working with Content Types • Content types allow multiple types of documents in one SharePoint list or library • Each content type can have it’s own schema, workflow, etc. • Content types may be defined at site collection or site level • Content types may be reused across many lists • When provisioning lists, NMSP can… • Dynamically push Content Types from site into list • Add newly provisioned columns to all content types in list • When migrating content, NMSP can… • Dynamically assign Content Type based on Notes form used • Dynamically assign Content Type based on data value (or formula) • Restrict certain column mappings to certain content types
Dealing with Response documents • Notes applications may have Response and Response-To-Response documents • Example: Discussion threads • Example: Customers, Customer Contacts, Contact Call Logs • Option 1: Migrate to a Discussion List • Expand list schema with additional columns • If provisioning from NMSP, use “Add To All Content Types” • Optional: Subclass “Discussion” and “Message” content types • Optional: Use Quest Web Parts for SharePoint for Notes-like views • Option 2: Migrate to Custom List(s) • Use data columns to correlate records • Use multiple lists or content types
Mapping things other than Notes data to Lists • Constant values • Set “Source Type” property of column mapping to “Constant” • Entered value will be cast to appropriate type • Links to Parent Documents • For use in Response documents • Set “Source Type” property of column mapping to “Target Value” • Set “Target Value” to “Link to Parent document” • Computes a link to the migrated parent Notes document • Links to Primary Document • For use in embedded elements migrated to Alternate locations • Set “Source Type” property of column mapping to “Target Value” • Set “Target Value” to “Link to Primary document” • Computes a link to the migrated document that contained the file
Generating Microsoft Word documents • Create a target column of type “Word Document“ • Use custom Template editor • Import custom Word Template • Select document properties to map data to • Select content controls to map data to • Select legacy controls to map data to • Map Notes data to properties on Mapping Tab • Use “Column.Property” notation • At a minimum, map “File Name” and “Body” properties • Map multiple items to “Body” to concatenate rich text • Map to other document properties / controls as needed • Embedded images stored inside document • Map attachments inside document or separately
Generating PDF files • Create a target column of type “PDF Document“ • Set Page Layout properties • Or keep defaults • Map Notes data to properties on Mapping Tab • Use “Column.Property” notation • At a minimum, map “File Name” and “Body” properties • Map multiple items to “Body” to concatenate rich text • Map to other document properties as needed • Embedded images stored inside document • Map attachments must be stored separately
Working with Approval Codes • SharePoint lists have an optional approval process • Versioning Settings -> Require content approval for submitted items • Gives you simple Pending/Rejected/Approved workflow functionality • Perfect for replacing many simple Notes document workflows • In NMSP, add a target column of type “Approval Code” • Map Notes data (or use a formula) with values “Pending”, “Rejected” or “Approved” • Example: @If(PublishStatus="Published";"Approved";"Pending") • Note: For more complex workflow state, simple map data items that represent state • Map to columns that your Declarative workflow will look at • Example: NextApprover, DueDate, Status
Duplicate Document Handling • If you migrate the same document to the same list twice, NMSP considers it to be a “duplicate” • “Same document” defined by the “Document ID” • For most Notes apps, this is the UNID • For QuickPlace, QuickR, Domino.Doc internal ID is used • For custom apps use {OverrideDocumentId} • NMSP also looks at timestamps to determine if the doc has been modified since migrated • If Duplicate Found options: • Skip, Overwrite • Write an additional document (if modified) • Write another version of the document (if modified)
Notes Migrator for SharePoint 6.1 Beta Program • Beta in progress now! • Go to http://communities.quest.com/groups/notes-migration-product-beta-group • Sign in with your Quest Community ID • Or register to create a new one • Use corporate email (No gmail or hotmail accounts) • Press the “Ask To Join This Group” button • Once approved, log in and download • Reviewers Guide • Product Installer • Expected release: January 2012
Steve’s blog: http://notes2sharepoint.org Product: http://quest.com/notes-migrator-for-sharepoint/