Haaron Gonzalez Rotating Header Image

SharePoint Workflows with Vlad Catrinescu

All you need to know about Workflows in SharePoint 2010 and 2013 as a Power User is covered in Vlad Catrinescu Pluralsight course. Very well done and nice examples.

Check it Out here https://www.pluralsight.com/courses/sharepoint-work-creating-workflow-sharepoint-designer

Welcome February!

Formulas to get the first and last row on a repeating table in InfoPath

You know, you wake up knowing that is going to be a wonderful day working for a customer with the software products you love. During today on-site support session, you found out that is needed to write some good old XPath formulas on an InfoPath form.

There is a repeating table with the columns necessarily to describe travel information like Departure Date, Return Date, City, you named and the requirement was to expose the initial Departure Date and the last Return Date of the entire trip, so, what do we mean with entire trip? I maybe start a trip from San Diego to Mexico City, and then another trip from Mexico City to Seattle and then from Seattle to Las Vegas. Clearly, the Departure Date and Return Date are not associated with just one row “trip” in the repeating table because I have at least more than one row for describing all the trips.

The data structure of the repeating table is:

 

 

structure

So, here are the formulas to get the first and last row on a repeating table.

../my:TravelInfo/my:TravelInformation[count(preceding-sibling::my:TravelInformation) = 0]/my:DepartureDate

../my:TravelInfo/my:TravelInformation[count(following-sibling::my:TravelInformation) = 0]/my:ReturnDate

Fortunately, the approach work as a charm. No C# code saved the day today. Pure old good XPath did it. InfoPath, you are definitely the sunshine of my love, especially now that you will be supported until 2026 baby.

 

Speaking at Nintex Inspire 2016 in Las Vegas

I am so happy to announce that I’ll be speaking at Nintex InspireX Conference co-presenting with Tom Castiglia. We will share how to use Nintex Workflow & Forms and DocuSign fornintexinspire automating some of the most typical Human Resources process in a company. Nintex Workflow and Docusign can work together to request and retrieve digital signed PDF files for archiving the paperwork that needs HR by law need to retain. We automated some process for our customers and we want to share our overall solution approach.

Nintex InspireX will be on take place in Las Vegas, Nevada between February 22-24. In encourage you to review the agenda and awesome sessions/speaker line up.

Here the session details:
Using Nintex and DocuSign for Open Enrollment and Employee Onboarding, with Konica Minolta Business Solutions
When organizations hire a new employee, the onboarding process always requires the new hire to fill out, sign and submit numerous legally binding forms. These forms are typically provided by benefit providers and government agencies in paper and/or PDF format, and require a “wet” signature to be submitted. This session will show how to architect a re-usable solution based on Nintex Forms, Nintex Workflow and DocuSign, that can support any number of different third party forms, converted into DocuSign templates in order to capture a legally binding digital signature. We’ll also show dashboards for the HR Manager to monitor the progress/status of forms pending for each employee.

 

Wake Up, Lazarus

You will not believe, but I’ve been so busy that didn’t had chance to write a post about the Release Candidate of SharePoint Server 2016 announced by Bill Bear on Jan 20, 2016. Now we can get more serious on evaluating SharePoint Server 2016 for our production environments. If you are interested, please take a look on this announcement.

SharePoint Server 2016 and Project Server 2016 Release Candidate available

Also, please read Dan Holme point of view on the RC and SP16, it has a valid point!

NOTE: Notice that InfoPath 2013 and SharePoint Designer 2013 will match support lifecycle for SharePoint Server 2016, running until 2026 meaning that we can still support our customers that have InfoPath Forms and SharePoint Designer Workflows.

spc14-infopathfuneral

SharePoint pushed to its limits

championsHave you been interested in knowing how intranets get together? Or what practices teams follows in order to design/build/deploy and support an enterprise intranet? I did had the question too, and one of the resources I have been following for a couple of years now is the Nielsen Normal Group Intranet Design Award. This is a competition conducted by the Nielsen Norman Group called annual intranet design to identify the world’s 10 best intranets.

In this report you can see very interesting topics that will definitely give a broader idea on what it takes to build and deploy a top notch intranet. As a SharePoint consultant this also makes sense to review because you can see some real world SharePoint implementations, ideas, trends, features and approaches that maybe you didn’t know were possible.

Be aware that the report is not free, you need to pay for a licensed copy.

Congrats to BrightStarr for participating and winning this year!

 

Compliant at a viable cost

This week I was able to test #office365 and #SharePoint Online for Records Management:

  • Information Management Policies
  • Send To Connections
  • Content Type Hub
  • Manage Metadata
  • Document Sets
  • Content Organizer Rules
  • Search

Soon the details, “the good” and the “ugly”, but what I can say now is:

Very powerful to have all those features available in the cloud for companies that need to be compliant with regulations and retention schedules now. If that is your case please give #office 365 and SharePoint Online a chance.

 

Questions important to ask when understanding and designing solutions for enterprise customers

Architecting Solutions and SystemsThis week I had the chance to attend the San Diego SharePoint User Group meeting a.k.a @sanspug at the Microsoft San Diego Office. Good to see people interested in the topic Architecting Solutions and Systems presented by Randy Williams. Randy is a Director of AvePoint Client Services so you can tell the level and weight of the presenter, additional he is a great speaker able to have you totally focus and interested in a given topic for hours. Randy explained his take on the steps to consider for architecting solutions and services, he shares some of the questions that are really important to ask ourselves whenever we need to understand a business need and design a solution approach, also he explained some the base principles and technical consideration you should take:

  • Base Principles
    • Know your requirements
    • Tradeoff considerations
    • Return of Investment
  • Infrastructure Architecture
    • Servers
    • Storage
    • Databases
    • Network
  • Cloud Considerations
  • Tips from Randy

So I wanted to take the time to recommend Randy slides and kind of make the point that you should take a look at the content if you design IT solutions for enterprise customers.

By the way, join the San Diego SharePoint User Group here and keep in touch.

I’ll speak at SharePoint Saturday Mexico City 2016

spsmexico

 

On February 6, 2016 I am going to participate as speaker at SharePoint Saturday Mexico City. I am thrill to participate as speaker and be able to share experiences around some of my favorite topics like Nintex Workflows, ECM and Office 365 groups with the community.

I will present three sessions in Spanish, so here are the titles:

  • The modern office and the rise of dynamic teams
  • Beyond InfoPath: Forms-Driven Workflow Solutions with Nintex
  • Leverage SharePoint Online and Office 365 for Records Management

So, if you live and Mexico City and work as a SharePoint Administrator, SharePoint Consultant or Solution Architect please come by and join me, my plan is to share applicable and real world experiences around Nintex, ECM and Office 365 groups in Spanish “including demos”, so se you there.

Please register at: http://www.spsevents.org/city/mexicocity/mexicocity2016

A quick tale from the SharePoint support trenches

Basically, the customer had a workflow, build in SharePoint Designer 2010 that will use some of the out of the box Actions like the Pause for Duration and Send Email. The issue was that once the workflow paused for a minute it wasn’t able to resume the work, leaving the workflow always running “In Progress”. Doing some research found KB2674684 SharePoint 2010: Workflow failed to run after pause and according to the description made me remember my good old ASP.NET developer days.

The bottom line is that SharePoint on premise is ultimately a Microsoft ASP.NET solution that works with multiple windows services and related Microsoft technologies/servers. From the web perspective Web Server Controls, Web User Controls, HTTP Handlers, Web Services, AJAX, ASPX pages, assemblies, web.config, page directives and so on are just pieces that work together to deliver a page that end users to consume.

Turns out that if you have the Workflow Timer Service started on a server that is running as an Application Server role “App” and you don’t have the SharePoint Foundation Web Application service started “basically the WFE role”, workflows will fail rehydrating the workflow when resume from a pause action, the reason why?, is because in order to rehydrate a paused workflow SharePoint needs to read some settings from the running web application web.config file, but because we have only the “App” role and not the “App/WFE” role running, it fails loading from the required Web Application the web.config file, because THERE IS NO web.config to load for that particular web application in the App server. The App Server without the SharePoint Foundation Web Application Service started only has available the Central Administration web application, not those additional web applications that WFE have available in IIS as a web site.

According to the article there are three methods for solving this issue:

  • Method 1: Locate one Web Front End server, which has Web Application service running, run the following PowerShell command to copy workflow-related configuration from the web.config to the configuration database so it will be available from every server in the Farm.

$webapp = Get-SPWebApplication -identity http://<web app name>

$webapp.UpdateWorkflowConfigurationSetttings()

  • Method 2: Start the Web Application Service on all servers that have the Workflow Timer Service is running.
  • Method 3: Disable the Workflow Timer Service on servers that are not running the Web Application service.

I decided to use Method 3 because we have dedicated App server and dedicated WFE server.

By the way, if you have Nintex Workflow installed in your farm, what just explain also apply. Nintex Workflow should run only n WFE servers, so make sure you Workflow Timer Service is stopped on all app servers in your farm.

Thanks for reading!

How to create hyperlink that open InfoPath client software a.k.a InfoPath Filler

Today was my second on site visit of the year and during my visit I was requested to fix one of the most frequent issues you will find when building workflow based solutions using SharePoint Designer and InfoPath client forms.

So an email activity in the Workflow Designer has a Hyperlink that it supposed to load a InfoPath form instance when the user clicks, in this scenario, the InfoPath solution runs in InfoPath Form Filler so when the users clicks the hyperlink it should load InfoPath Filler client application.

Turns out that using Encoded Absolute URL field that has the actual URL address of the form instance inside of the <a href=””> tag is not enough and will cause user to open Internet Explorer and try to load the form with InfoPath Form Services but because the form was designed to run in InfoPath Filler an exception will happen and users will be NOT so happy.

The solution is pretty simple; we just need to change the URL we will use to invoke InfoPath Filler to load inside of the anchor tag. Also I recommend using the Hyperlink button available in the email body of the message.

Hyperlink control in Send Email

 

The URL should have the following Workflow and Current Item variables:

  • %Workflow Context:Current Site URL% will get the URL of the current site where the workflow is running
  • /layouts/FormServer.aspx is a system web page that is used by InfoPath Form Services to render the form in the browser
  • XmlLocation is a query string variable that will tell to FormServer.aspx where the form data is located and it will use to load the form in the browser. We use the Workflow variable % Workflow Context:Current Item URL% to get the XML file
  • ClientInstalled = true is another QueryString variable that will thell the FormServer.aspx page that the form should be loaded in the client software, in this case our beloved InfoPath Form Filler
  • Source query string variable is used by the FormServer.aspx page to redirect the browser to the URL we want to load when we close the form, this work on InfoPath Form Services, nothing to do to InfoPath Filler
  • DefaultOpen is another query string variable that tells formserver.aspx how to load the form

Here you can see official information about the InfoPath parameters

So the definition of the hyperlink data is:

 

String concatenation to generate URL

The result will be something like this:

http://intranet.mycompany.com/sites/IT/finance/_layouts/FormServer.aspx?XmlLocation=http://intranet.mycompany.com/sites/IT/finance/IT Project/ITP20151030200643.xml&ClientInstalled=true&Source=http://intranet.mycompany.com/sites/IT/finance&DefaultOpen=0

So remember, red text is going to be generated by SharePoint Designer Workflow Variables, Bold text is going to be hard coded in the concatenating string.

Good luck!

Featuring WPMU Bloglist Widget by YD WordPress Developer