November 2015
Current page:

End of support for SharePoint 2007

By: Vladi Gubler | Comments [0] | Category: General | 11/26/2015


Starting January 2016 we will be no longer offering support for SharePoint 2007 in our products. If you are still running SharePoint 2007, the products will still continue to work without limitation, but you won't be able to upgrade to any new versions or receive any updates.


LOB Item Link column now available for Office 365

By: Vladi Gubler | Comments [3] | Category: Products | 11/25/2015


Good news! Another, and this time last component of Ultimate Forms is now available for Office 365. LOB Item Link column allows you to look up information stored in external data sources, such as databases or web services. It's quite similar to lookup column, except that the data does not come from SharePoint. For example, you can look up a unit price for your purchase order from an external database or even a web service, saving you the trouble of having that info synced into your SharePoint lists. It can also serve as a replacement for BCS column, considering that it's so much easier to set up than BCS.

If you already have Ultimate Forms installed, there is nothing you need to install or upgrade, the new column type will simply appear under Columns section of the main screen and will be ready to use straight away. Don't have Ultimate Forms yet? Get a 30-day trial now!


Tabs Localization

By: Derek Kent | Comments [1] | Category: Products | 11/20/2015

Not sure if users can understand the form? Users from the most varied backgrounds can now utilize the same tabs by applying translation. Instantly turn your forms into a multilingual business processes. That’s right. Make your forms available in a language chosen by your form’s visitors. Form designers can create resource files to contain localized translations to Tabs, Tab Descriptions and Sections.

An .resx file needs to be created for each supported language, for example:

Tabs.resx – default file (usually in English) – French translation – German translation

When your translation files are ready, they need to be copied to the following folders on each web front end server:

1. SharePoint IIS folder, like: c:\inetpub\wwwroot\wss\VirtualDirectories\80\App_GlobalResources
2. Global resources folder (in the SharePoint hive): c:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\15\Resources

When using resource keys in Smart List Pro tab settings, you need to type the keys in the following form:

$Resources:{resx file name},{resx key name} for example:


Importing emails into SharePoint lists

By: Vladi Gubler | Comments [2] | Category: Products | 11/16/2015


Being able to start off a business process from an incoming email is a great way of integrating your business applications with your internal or external customers. Although SharePoint does have the ability to import incoming emails, it's severely limited and only suitable for some specific scenarios. Moreover, when you are on Office 365, it's missing completely.

When you need something robust, you have to use a tool that is generic enough and feature-rich enough to be able to handle the requirements of your real life applications. Smart Import Pro, a component of Ultimate Forms, is just the tool for the job.

Smart Import Pro offers unique features you will know to appreciate:

  • You can import from any type of email server, database server or SOAP/REST web service
  • You can import into any list or document library
  • It works on premises and in Office 365
  • It allows you to map the incoming data to your list columns in any way you see fit, including using functions and conversions (more on that below)
  • It allows you not just to create new items, but also update existing items (think email-based approvals) or even sync
  • It's much easier to set up, use and monitor, you don't have to be a farm administrator

Let's examine the following scenario, that's quite similar to what we are doing here at Infowise:

  1. You run a hosted web site, to which you have only limited access and which is located completely outside of your firewall.
  2. The website contains a "Contact Us" form to collect information from visitors.
  3. Visitor can enter their first and last name, company name, email and comments.
  4. Currently, the form send this info to your email account in a predefined email format.
  5. This information needs to find its way into your internal SharePoint-based tracking system that's inside your firewall.
  6. You don't know how to connect the two system without creating major security breaches.


Let's say this is how the email looks like:

First name: John
Last name: Smith

Company: ACME Ltd
I really like your product, please contact me with pricing info.

What we need to do now is to establish an automated import process, that will listen to the mailbox, get the new emails coming in and then create items in a SharePoint list based on the data in those emails. But here is the catch: in the email it all appears as one blob of text, but in the SharePoint list I want to separate each piece of data into a separate column, so that the first name, last name and so one will be put in their respective columns.

Luckily, Smart Import Pro contains functions that make this process incredibly easy.

The first function we need to use is $StripHTML. Most of modern emails are in HTML format, meaning the the text you see on your screen is actually multiple invisible tags that instruct your email client (e.g. Outlook) how to display it, for example, make it bold. This information is of no use to us inside SharePoint, so we need to strip away all HTML tags, $StripHTML([Body]) gives us the email body without HTML. Easy, right?

The second function is a bit more complicated, but much more powerful. It's called $Extract and it is capable of examining some text and taking out (extracting) just the parts you need according to some predefined pattern. Take a look at our sample email again. The lines start with the label, colon, space, then comes the value itself and then a linebreak. That's the pattern we need to set in the $Extract function. For example, $Extract(<incoming text>|?First name: ^\r). Let's take it apart and you will see that it's actually very simple:

  1. The incoming text, the first parameter, is the result of our StripHTML function, so it's $StripHTML([Body]). And yes, you can nest functions
  2. The second parameter is the pattern itself, which is basically <prefix>^<suffix>. Both prefix and suffix are optional. When no prefix is supplied, we assume start of text. If no suffix is supplied, we assume space, line break or end of text, whatever comes first. So, in our case:
    1. Prefix ?First name: - we want to take the text that comes after First name: . The question mark means the we can be looking for First name: at any location within the text. If we omit the questions mark, the prefix is assumed to be at the beginning of the text
    2. ^ - that's what we are extracting
    3. Suffix \r  - special character notifying linebreak. Remember, if we don't supply a suffix, any space will become the delimited. People and company names can have spaces in them, so we specifically look for a linebreak.

So the end result, $Extract($StripHTML([Body])|?First name: ^\r) will produce John. Easy enough, right?

So all we need to do is map all 5 columns and we are done! Let's take a look at how it's configured in our internal system:

Contact Request

As you can see, we are mapping the columns exactly the way we want them. We also added a couple of conditions to only handle emails coming from our site with a specific subject line.

It only takes a couple of minutes to configure and it takes care of a business process that would otherwise require a significant development and could've exposed your system to external threats.


Solving Forms Headaches in Office 365

By: Will Cooper | Comments [0] | Category: Products | 11/16/2015

We had a great webinar last week and I wanted to take the time to post a recording for those of you who missed our presentation.

As a developer and solutions provider, I am very excited to see Infowise Ultimate Forms Solution for Office 365 incorporate all of the great features from the on premise product.

In this webinar we take a look at the Office 365 interface and talk about the process of building custom solutions using Infowise Ultimate Forms. I'm really happy to see that these solutions can now be developed with any version of SharePoint whether on site or in the cloud. 

Accessibility is always important and with the Office 365 offering things couldn't be any easier. Signing up for a license for one site is inexpensive and requires no annual commitment. This provides a great opportunity to quickly set up a sandbox environment and try out the product yourself.

Go here to quickly get started with a trial of the product:

You can quickly set up solutions in SharePoint Online without any custom code or programming headaches.

I hope that you'll take the opportunity to try out the functionality and discover the power and flexibility of this toolset.

I'd love to hear about your projects and solutions. Feel send me an email to tell me about your current Infowise Solutions or let me know the next project that you are getting ready to tackle.