Installing and Configuring Workflow Manager Farm


Step 1 – Installation

Download and Installation Process

Go to http://www.microsoft.com/web/downloads/platform.aspx

Click Download and install. Type Workflow in Search Box

Click Add on Workflow Manager and Workflow Manager Client.

Click Install

Choose Appropriate Option

Wait for Installation to Finish

Click Continue

Click Finish

Workflow Management Configuration

  1. Farm Management Database
    1. Enter SQL Server Instance
    2. Add Database prefix and click Test Connection.
  2. Configure Instance Management Database
    1. Enter SQL Server Instance
    2. Add Database prefix and click Test Connection.

Scroll Down from Right scroll.

  1. Resource Management Database
    1. Enter SQL Server Instance
    2. Add Database prefix and click Test Connection.
  2. Configure Service Account (Must be a domain – Non Farm Account)
    1. Enter user ID
    2. Enter Password

Scroll Down from Right scroll.

  1. Enter and confirm Certificate Generation key.
  2. Configure Ports. (Leave as Default)
  3. Check “Allow Workflow Management over http on this computer” for Development server only.

  1. Click Right Arrow à to Go to Service Bus Configuration

Service Bus Configuration

  1. Farm Management Database
    1. Enter SQL Server Instance
    2. Add Database prefix
    3. Click Test Connection.
  2. Configure Gateway Database
    1. Enter SQL Server Instance
    2. Add Database prefix
    3. Click Test Connection.

Scroll Down from Right scroll.

  1. Message Container Database
    1. Enter SQL Server Instance
    2. Add Database prefix
    3. Click Test Connection.
  2. Check Use the Same Service Account Credential as Provided by Workflow Manager
  3. Check Use the same Certificate generation key as provided by workflow manager


  1. Leave REST as Default or Change if needed.


Scroll Down from Right scroll and Click à

Wait for Summary Page to confirm.



Registering Workflow Manager in SharePoint

Start SharePoint Management Shell

$Site = “https://Site.domain.com”

$WorkflowHostUri = “‘http://workflowhost.domain.com:12291”

#(12291 for http and 12290 for HTTPS)

Register-SPWorkflowService -SPSite $Site –WorkflowHostUri $WorkflowHostUri -AllowOAuthHttp

#Use –Force to overwrite existing configuration

Verify 2013 Workflow Configuration

  1. Install and open SharePoint Designer 2013.
  2. Open SharePoint Site
  3. Click on Workflows à List Workflow à Select a List e.g. Documents.
  4. SharePoint 2013 Workflow Must be visible in Platform Type.


  1. Workflow Service Application Proxy will appear in Manage Service Application.

CSOM, REST and SharePoint 2013 Search


SharePoint 2013 introduce couple of new ways to access Search Feature in custom applications.  SharePoint 2010 provided the Served Side Search Object Model and Search.asmx web service which allowed us to use Search in Custom apps but there was no access from client.  Now you can call Search from either CSOM or REST.  Even at this moment there is not enough information available out there to completely understand and demo the feature.  But I was able to make it work.

CSOM is more traditional approach if you are developing application for .NET, Silverlight.  Simply Add Reference to

Microsoft.SharePoint.Client.dll

Microsoft.SharePoint.Client.Runtime.dll

These assemblies are necessary as the base implementation of CSOM is part of these assemblies.

Additionally you have to add reference to SharePoint 2013 Search Client OM DLL. which is

Microsoft.SharePoint.Client.Search.dll

Now you can write the C# code to Query and Parse the Result.

using (ClientContext context = new ClientContext(new Uri("http://intranet.contoso.com/sites/Search/")))

{

        context.Credentials = System.Net.CredentialCache.DefaultCredentials;

        KeywordQuery keywordQuery = new KeywordQuery(context);

        if (textBox1.Text.Length == 0)

        {

            MessageBox.Show("Please enter Title in Text Box to Save.");

            return;

        }

        keywordQuery.QueryText = textBox1.Text;

 

        SearchExecutor searchExec = new SearchExecutor(context);

        ClientResult<ResultTableCollection> Results = searchExec.ExecuteQuery(keywordQuery);

        context.ExecuteQuery();

 

        if (Results != null)

        {

            if (Results.Value[0].RowCount > 0)

            {

                DataTable dt = new DataTable();

 

                dt.Columns.Add("Title");

                dt.Columns.Add("Path");

                dt.Columns.Add("Write");

                dt.Columns.Add("Author");

                dt.Columns.Add("Rank");

 

                foreach (var Row in Results.Value[0].ResultRows)

                {

                    DataRow dr = dt.Rows.Add();

                    if (Row["Title"] != null)

                    {

                        dr[0] = Row["Title"].ToString();

                    }

                    else

                        dr[0] = Row["AccountName"].ToString();

 

                    dr[1] = Row["Path"].ToString();

                    dr[2] = Row["Write"].ToString();

                    dr[3] = Row["Author"].ToString();

                    dr[4] = Row["Rank"].ToString();

                }

 

 

                dataGridView1.DataSource = dt.DefaultView;

            }

            else

            {

                MessageBox.Show("No Results Found for your Query " + textBox1.Text);

            }

        }

        else

        {

            MessageBox.Show("No Results Found for your Query " + textBox1.Text);

        }

        

 

 

}

As almost every CSOM method has its REST Endpoint now SharePoint 2013 now also provide an effective way to using Search using REST and oData.  First you have to make a httpRequest object using oData and make a GET request which will be passed to AJAX. 

For this sample I created a SharePoint Hosted App.  I added a Text Box and Button to the page and a Result Div that will show the output to the user  (Very Normal way in HTML apps)

“Another thing to know that this SharePoint app will not work until you give it permission to use Search.”  You have to double click on application manifest file and inside permission choose Search.

While Executing the app the app will ask for user permission to allow it to run Search. 

First you have to understand the URL convention of the Search 2013 REST.  To make Search using REST you have to using URL in the format of

SiteURL/host/_api/Search/Query?QueryText=’Text Keyword’

You can also perform a Query to get Query Suggestions using Sugges Instead of Query

SiteURL/_api/search/suggest?querytext=’keyword needed suggestion’

You can read all about Search and performing Search from here

The Result will return in JSON format which you have to parse.  The Results are included in d:RelevantResults section of the output XML.  This section include all the properties you need to display results to the end users.  the results include almost everything that you need from keywords, Tags, Image Thumbnails etc.

I will post about making Query using Fiddler and then from SharePoint App tomorrow.

Follow a Document Library


image

Once you go visit a Document Library you will see a small STAR ICON in Share and Track Ribbon Group.  Clicking on that in case retuned the above error.  Another thing that I was trying to System Account so I switched my user on Windows 7. 

Seems Like I can not Follow the full Document Library.  But once you select a document the ribbon will get enabled and let you follow up.

image

The document I am following will be visible on my mysite.

image

SharePoint 2013–The start address sps3://intranet.contoso.com cannot be crawled


 

I guess you might have seen this issue before so please try to remember the fix as well.  While configuring Search I find out that SharePoint 2013 Search gave me the following error on User Profile Crawling.

“Access is denied.  Verify that either the Default Content Access Account has permission to access this repository, or add a crawl rule to crawl this repository…”

To Fix it we have to add our Content Access Account to be able to Crawl the content.

To do so we will go to Manage Service Application.

image

Now Select the User Profile Service Application row and click Administrator.

image

Now Enter your content Access Account in the first text box and click Add.

image

Click OK.

Now run the Full Crawl again.

image

Now compare the Searchable Items

image

Now Just take a look at Amazing Search Results Page.

image

Here is Conversation Search

image

People Results

image

Video test the video results later.

Search Settings at Site Collection Level

image

For More information and idea about the Vision of Microsoft SharePoint Search please visit the Microsoft SharePoint Team Blog for Series of Articles on SharePoint Search.

http://sharepoint.microsoft.com/blog/Pages/BlogPost.aspx?pID=1030

Claims Mode is Default Authentication in SharePoint 2013


First thing you will notice after installing SharePoint 2013 and If you went to create a web application you will not see any option for selecting the type of authentication.  Claims Based Authentication is default in 2013.

image

image

You can use PowerShell CommandLet New-SPWebApplication if you are still  interested in using Classic Mode Authentication it is not recommended.

image

I am sure you will enjoy the PowerShell ISE is now providing Intellisence and parameter selection.

image