Tuesday, May 31, 2016

SharePoint User Profile Service Application Provisioning Issues


SharePoint User Profile Service Application Provisioning Issues
Quick Fix: 

$sync_db = "Sync DB"
$ups_service_app_name = "User Profile Service Application"

net stop sptimerv4
$syncdb=Get-SPDatabase | where {$_.Name -eq $sync_db}
$syncdb.Unprovision()
$syncdb.Status='Offline'
$ups = Get-SPServiceApplication  | where {$_.Displayname -eq $ups_service_app_name }
$ups.ResetSynchronizationMachine()
$ups.ResetSynchronizationDatabase()
$syncdb.Provision()
net start sptimerv4


------------------------------------------------------------------------------------------------------------------------------
 Get-SPServiceInstance | where {$_.TypeName -eq "User Profile Synchronization Service"}

User Profile Synchronization ... Online   ID of the service instance  1
User Profile Synchronization ... Provi...  ID of the service instance 2

$abc=Get-SPServiceInstance | where {$_.Id -eq "ID of the service instance 2"}
Stop-SPServiceInstance | where {$_.Id -eq "ID of the service instance 2"} 

and the lifesaver Reset SharePoint Cache: reference:  (http://saadiyadad.blogspot.com/2014/03/reset-SharePoint-config-cache.html) did the magic


FileNet SharePoint Integration - I

Hi Readers,
I had been away for a while and now planning to write some post based on the work I have been doing in this period. My upcoming post will be related to SharePoint 2013 development, workflows, SharePoint tweaks and fixes and majorly FileNet integration to SharePoint 2013 using FileNet P8 API and FileNet Connector for SharePoint. All my posts will be in the context of Integration of FileNet to SharePoint. You can get complete information on FileNet at IBM Support Knowledge Center.
Let's start with the introduction to FileNet and some basic operations using FileNet P8 API:
  • Introduction to FileNet Content Manager
  • FileNet P8 API Basic Concepts 
  • Connect to FileNet Repository
  • A single repository for enterprise content to provide centralized access and better control.
  • Document management services and application development support to streamline content management and delivery.
  • Delivery of active content in motion for improved business value and reduced costs.
  • Integration with Microsoft SharePoint and Microsoft Office to help increase productivity.
  • Social collaboration and mobile computing support to use the latest technologies in your enterprise content management (ECM) environment." Source: IBM
Documents
Folders
Custom Objects
  •  Example  HTTP://<your FileNet server URL>:<port>/wsi/FNCEWS40MTOM/
  • P8Administrator
  • ECM
      try
      {
       string uri =  GetConfigValue("FileNetServerURL");
          string username = GetConfigValue("FileNetServerAdmin"); 
    //"P8Administrator";
       string password = GetConfigValue("FileNetServerAdminPassword");
     //"Password";
       string objectstorename = GetConfigValue("FileNetObjectStore");
    //ECMStore
       // Get client context.
       IConnection conn = Factory.Connection.GetConnection(uri);
      
     // UsernameToken 
       UsernameCredentials creds = new UsernameCredentials(username, password);
       ClientContext.SetProcessCredentials(creds);
      
       // Get default domain.
       IDomain domain = Factory.Domain.FetchInstance(conn, null, null);
       // Get object stores for domain.
       IObjectStore os = Factory.ObjectStore.FetchInstance(domain, objectstorename, null);
       return os;
     }
     catch (Exception ex)
     { 
      return null;
     }

Introduction to FileNet Content Manager:
"Document management with IBM® FileNet® Content Manager helps you meet the growing challenge of managing enterprise content with greater speed, efficiency, and accuracy. FileNet Content Manager is a document management engine that combines enterprise content, security and storage features with ready-to-use workflow and process management capabilities.
FileNet Content Manager features include:

FileNet P8 API Basic Concepts:
 FileNet provides an extensive API for Java and C# to programmatically handle operations in FileNet Content Manager. P8 API allows applications to interact to FileNet for CRUD operations as well as Management of properties, classes, subscriptions, Permissions etc. 
  
The .NET framework-based API provides a .NET framework-based Common Language Runtime (CLR)-compliant API for accessing the full capability of Content Engine. The API accepts username and password credentials for authentication. The .NET framework-based API works only with the WSI Listener.
Following are some basic concepts of FileNet Content Manager.

Object Store:
Refers to the FileNet repository. All documents, folders, custom objects are referred to as objects in FileNet so Object store is actually a container for those objects. Every object store has a database that can comprise one or more storage areas. Objects in FileNet are further classified into versionable and non-versionable objects 

Documents are versionable objects and have metadata. A document contains content elements. A file of any type is an example of a document.

A folder is a container of objects(documents, folders etc. ). It is a non-versionable object and has metadata.

Custom objects are non-versionable objects that can contain metadata but no content. you can relate them to a database table row.

Connect to FileNet Repository:
Following is a sequence of how you can interact with FileNet through P8 API.
 You require FileNet repository details as mentioned below to connect to FileNet Content Manager through API

1. FileNet Repository URL:
2. Administrator User Name:
3. Administrator Password: 
4.  Object Store Name: 

Code Example to Connect to FileNet is as Follows:

public static IObjectStore Connect()
   // Set connection parameters; substitute for the placeholders.
   //"http://filenetserverurl:9082/wsi/FNCEWS40MTOM/";
}


Note: You must install Microsoft WSE to connect to FileNet on Windows Server 2008 R2, Win Server 2012 if FileNet server URL starts with HTTP:// else it will fail to connect since WCF only supports https:// connections