Archive for the 'Composites' Category

Delivering Maximum Business Value With A SharePoint Based Application Strategy

IT decision makers are under pressure to deliver more with fewer resources. At the same time, many are struggling to cope with a backlog of applications awaiting delivery. A strategic approach to the delivery of business applications is therefore required to help decision makers achieve their goals. This paper from PointBeyond explains why SharePoint 2010 should be seriously considered when defining an application strategy.

Download your free copy from the PointBeyond website here

Build a Simple Language Translator using InfoPath and No Code – Part 1 of 2

One of the most useful features of InfoPath, is the ability to easily set up and use data connections from so many sources. Using data connections to web services, InfoPath can be used to create a form that passes data onto a third party website where the data is acted upon in some way and a response passed back to the end user.

A simple, yet practical example of this is this simple text translator. This was built on the back of a customer request to have forms available in multiple languages. No code is used in this development, but we do make use of the “Rules” functionality by which Business Logic and in-form workflow can be built.

While the result of some InfoPath experimentation presented here will not be putting any multi-lingual technical translating staff out of business I’m sure you can think of other applications which could benefit from a Web Service interface such as this.

Ok – so how do you go about creating a translation form? It’s as simple as baking a loaf of bread, so let’s start by looking at the ingredients we will need!

Recipe for InfoPath Translator – Serves 5 ( English, German, Spanish, French and Italian!)

Ingredients:

Instructions

  1. In InfoPath 2010 Designer create a new Blank Form and create a table with six rows and two columns
  2. Create a Data Connection – Not built one of these before? – Don’t worry a wizard makes this really simple!
    1. From the ribbon select Data / From Web Service /From SOAP Web Service and enter in the web service URL as below:

3.Now from the list of Services select Translate

4. On the next screen you will see a list of Parameters that are used by the web service – Enter your Bing Application ID here by using the Set Value button (You do have an app id don’t you? If not, sign up at http://www.bing.com/toolbox/bingdeveloper/) In the content type and category parameters set the values to ‘text/plain’ and ‘general’ respectively

5. The next screen should be skipped – hit the Next button

6. Now we are on the final screen for our data connection set up. Deselect the “Automatically retrieve data when form is opened” check box – Best practice for forms is to only use data connections when needed, and we will only be calling this service when a button is clicked

Build a Simple Language Translator using InfoPath and No Code – Part 2 of 2

7. After you have finished your data connection you will have two data references in your InfoPath project – Main and the Translate service you just created will be labelled a secondary connection…

You will see from the view above that the data connection is in two parts “query fields” and “data fields”. Put simply, the query fields enable you to pass information through the data connection and the data fields represent what you get back!

8. Enter text labels in the left hand column of the table you created in step 1 and drag the text field and the TranslateResult fields from the fields pane on the right into the form layout 

9. Now switch to the Main Data view in the fields pane and add two dropdown list controls and label LanguageFrom and LanguageTo… This will create two extra field references in the Myfields folder of the Main view of the Fields pane as in the screenshot below. These two fields will be used to provide data to the “From” and “To” query fields of the Translate data connection

10. Enter the values as in the screenshot below to the Drop Down List Box properties for the LanguageFrom field

11. And enter the values as in the screenshot below to set up the LanguageTo Dropdown List Box properties: Yes, pretty much identical to the LanguageFrom field!

For this example I have only added five languages and their associated codes , but you can add additional languages to these controls if they are supported by the Microsoft Translate API.

12. Now finally we just need to add a button to our form and attach some logic to the button so that when pressed the following will happen:

  • Populate the “From” query field of the Translate data connection with the value selected in the LanguageFrom Dropdown List
  • Populate the “To” query field of the Translate data connection with the value selected in the LanguageTo Dropdown List
  • Run the web service to see the translate result

This is achieved simply by adding a button from the Controls section of the Home ribbon and adding a Rule with three actions as below:

The three actions are

  1. Set a fields value (select the “from” field from the Translate data connection and make equal to the LanguageFrom field from the Main data connection)
  2. Set a fields value (select the “to” field from the Translate data connection and make equal to the LanguageTo field from the Main data connection)
  3. Query using a data connection (select the Translate data connection)

Conclusion

Well, that’s all there is to it! Test the form in preview mode and add some simple sentences and combinations of From and To languages. If you have been successful, you will appreciate how InfoPath can be used to address some fairly complex Business scenarios in a straightforward manner with NO CODE REQUIRED!
J

Do you have any similar examples of code free web service based InfoPath development – we’d love to hear from you!

ISC London: Quickly Delivering Business Applications on SharePoint 2010 Session

I’m looking forward to talking about quickly delivering business applications on SharePoint 2010 at The International SharePoint Conference London 2012 in April. I’ll be co presenting with one of our customers.

When the tools available in SharePoint 2010 are used appropriately, it can be phenomenally productive. In my session, we take a look at how it was possible to build a fully featured business application, with forms, workflow and reporting in a matter of days – and without writing any code. Using Purchase Order management as an example, I’ll review the business requirements and explain why SharePoint was chosen for the application, before getting hands on with some demos and looking at how SharePoint capabilities were leveraged to quickly deliver the application at an engineering company.

Full agenda of speakers can be found here. It’s shaping up to be another excellent event!

Register ICSLondon

Click here to regsiter: http://www.internationalsharepointconference.com/Pages/Register.aspx

SharePoint 2010 Standard or SharePoint 2010 Enterprise?

I’ve been speaking with IT directors/CTOs at two different large organisations in the past week. Both are in similar positions in that they are considering moving to SharePoint 2010, and need to decide whether or not to go for Standard or Enterprise edition.

One of the big challenges that they both faced was knowing the capabilities of each product. One of them was seriously considering purchasing an expensive BI solution even though they have quite modest BI needs. They and their teams were simply unaware that there is BI capability within SharePoint 2010.

The second challenge was around the departmental versus organisational view of the world. What do I mean by that? In both organisations, departments were commissioning their own business applications. Most of the time these applications were custom coded, and although they sometimes integrated with SharePoint, the integration only meant display of the custom application within a SharePoint site. There are several problems with this approach:

  • Independently implemented applications leads to siloes of information, inconsistencies in functionality/look and feel, and a larger training requirement
  • Areas of common functionality were being “reinvented from scratch” each time
  • There is always risk involved in any custom development project
  • Perhaps most critically of all: In most cases the applications in question could be quickly delivered using the composites capability of SharePoint 2010 Enterprise. The cost of a single departmental level application was typically less than the cost of implementing SharePoint 2010 Enterprise. However, taken together the cost of implementing all of the applications together was significantly more than the cost of the Enterprise licences.

In this situation a decision to move to SharePoint 2010 standard would have been a bad strategic decision. It would have resulted in business applications being delivered more slowly, at higher risk and cost, and with less consistency and integration with each other.

So when making the decision between Standard and Enterprise it is essential to have all the facts to hand. In particular:

  • What are our business requirements and priorities?
  • What are the capabilities of the different editions, and which of these capabilities aligns with our requirements?
  • What is going on within business units, departments, or teams? In particular would putting in a platform to facilitate quick delivery of applications with little or no custom coding be cheaper in the medium to long term than custom code or purchase of individual solutions? With the people I was speaking to, a back of the envelope calculation indicated a payback time of 6 to 12 months.

If more investigation is needed, it is worth knowing that a 180 day evaluation copy of SharePoint 2010 Enterprise can be downloaded from the Microsoft web site. This can be used for a pilot before committing to licence purchase. We have helped several organisations with this low risk approach.

Back to the PointBeyond web site.

When Collaboration Becomes a Commodity, How Do You Choose a Platform that Adds Value?

When SharePoint was first released, the idea of a web site where users could upload documents, and manage their own lists, calendars, etc was quite novel to many people. It was, as we all know, a runaway success and SharePoint has been widely adopted across many organisations. Many other software vendors, as well as Microsoft, also provide collaboration platforms.

Now more and more collaboration platforms are becoming available, with cloud offerings such as Box.net, Huddle, Google Docs and many others being added to the mix.

One of the differentiators of SharePoint 2010 is that you can use it as a platform for the delivery of business applications, as well as for straightforward collaboration. Even the entry level SharePoint 2010 Foundation gives you:

  • Out of the box and custom lists and views. These lists can be linked to deliver simple data driven applications
  • Built in security model. You can set permissions to control who can see and do what
  • Ability to build workflows using SharePoint Designer
  • Forms that use the InfoPath client (part of some editions of Microsoft Office)
  • Core Business Connectivity Services functionality, for interacting with data in other systems
  • An open platform for enhancement through custom development and integration with other systems
  • Possibility to use SQL Server Reporting Services in SharePoint integrated mode to build reports and dashboards

Once you move up the licencing scale to SharePoint Server 2010 Enterprise, you get the “Composites” functionality that adds significantly to the toolset available for building applications. This includes

  • Excel Services, for interacting with and publishing parts of Excel spreadsheets through the browser
  • InfoPath Forms Services, that takes InfoPath forms and renders them in the browser
  • Visio Services, for publishing data driven diagrams
  • Access Services, for converting Access Databases to SharePoint lists and forms, and allowing browser based interaction
  • Enhanced Business Connectivity Services
  • Various web parts and out-of-the-box workflows

This rich toolset for quickly delivering business applications sets SharePoint apart from many collaboration platforms, and it should be a major consideration for many organisations when choosing a collaboration platform.

Our technology neutral white paper, “The Business Applications Deficit” looks at the drivers behind the need for business applications, and the challenges faced by organisations in implementing applications. To receive your complimentary copy please click here.

Delivering Business Applications with SharePoint Composites: Don’t get Stuck!

Suppose that you are in New York and you want to come to my house. You could look at a map of the world that has New York and my house marked on it. Looking at the map you can see that London Heathrow airport is pretty close to my house. So you think, hey that’s cool I’ll fly over. You pay for your flight, tell me what time you are arriving, and tell your wife/husband/partner how much it costs. Sorted. Easy.

So you jump on the plane and all goes well for a few hours. You arrive at Heathrow and walk out of the airport. Now, Ian’s house is somewhere nearby isn’t it? Actually you’ve got still got 94 miles to go and although you have completed 97% of your journey you aren’t at my house. You’ve no UK currency and your mobile phone is flat (and you can’t plug your charger in because of our rather cool power socket design J). So you are stuck.

Let’s compare this to the case of building a SharePoint business application using tools such as InfoPath, SharePoint Designer, Excel Services and Access Services. It’s all too easy to get started with these tools without an absolutely clear idea of how your end solution will work. The tools allow you to do a lot very quickly. So you pull your application together and it almost meets your requirements. But then you hit a problem: the last little bit requires something that the tools don’t let you do. You are faced with having to resort to another tool, possibly some custom code, or even having to rework what you have already done. Also chances are you need to go back to the business and tell them that you need more time and/or money.

The conclusions to this are really as follows:

  • Before you embark on delivering a business application using SharePoint composites, be absolutely clear about what the end solution will be (where are you going)
  • Be clear about how the tools available will deliver all of the required functionality (what is the means of transport for each stage of the journey). If you do a proof of concept then make sure you tackle the difficult bits of functionality up front. Don’t just do the easy bits so that you can show the business users something nice! It may make them happy in the short term but they won’t like it when you have to go back telling them you need more time and money.

Enjoy your journey!

Back to the PointBeyond web site

What are my choices for building a Business Application in SharePoint?

There are different approaches to building Business applications in SharePoint. Here we take a look at the pros and cons of each to help decide which is right for you.

Browser Based Customisations

There are out of the box lists, web parts and templates in SharePoint 2010 that can be used to create simple applications such as task trackers, calendars, charts and more. The user can choose their tool from the menu on their site and then configure it directly in the browser. They can also combine lists with workflows to automate processes such as approval and feedback.

Pros

Cons

  • Available Out of the box
  • Easy to use
  • Quick to set up
  • Good for simple processes
  • Low Risk
  • Limited to what is available
  • Simple customisation only
  • Not possible to deliver complex processes

Composite Tools

Composites are one of the six key capabilities of SharePoint 2010. These are tools provided to help you connect to data and reuse it through your applications, creating a solution through a ‘composition’ of the strengths of the individual tools available. This enables you to develop business applications in a stable environment and deploy these solutions to selected audiences.

The following are the tools currently available for creating composite applications:

  • Excel Services
  • Access Services
  • Visio Services
  • InfoPath Forms
  • SharePoint Designer
  • Business Connectivity Services

Pros

Cons

  • Can be fast and effective

  • Good for simple to medium complexity
  • Good for low to medium volume
  • Good for prototyping
  • Low risk

  •  You don’t have complete control of how it will look or work
  • There are limitations to what is possible
  • If you change your mind you may have to start again
  • Change management can be difficult

Third Party Products

There are a variety of products on the market that can be used to extend SharePoint. They can generally be split into three groups:

Components are products you can plug into your existing SharePoint system to help you achieve a solution. These are the building blocks which enable you to extend SharePoint’s out of the box capabilities.  Examples are: image viewers, bulk editing tools, reporting tools, group chat consoles and social media applications.

Workflow Applications give you the tools and capabilities to go beyond the out of the box SharePoint workflows and automate processes to meet your organisation’s needs. K2 and Nintex are great example of these, giving you drag and drop user interfaces to help build your workflow logic and rules.

Complete applications are products that you can buy, install and with some configuration, start to use straight away. They normally focus on one business solution delivering enhanced tools and ready to go processes that provide a complete solution in one area e.g. CRM, HR Management, Document management etc.

Pros

Cons

  • Someone else has developed the tools for you

  • Saves time
  • Benefit from Third Party expertise in a business area
  • Can often try before you buy

  • May not always be compatible with your environment or other systems
  • Can require additional support from Third party
  • Cost of product, additional licencing and support
  • May still require bespoke customisation

Custom Code

Both SharePoint Designer and Visual Studio can be used to customise SharePoint to create powerful business applications. However, developing an application on the SharePoint platform with custom code requires sound development and coding skills as well as an understanding of the SharePoint Framework. Custom coding is useful if the application you need is particularly complex or needs to do something that can’t be achieved by other means.  A common pitfall to be aware of are the problems custom code can cause later down the line when you come to upgrade. Working with experienced SharePoint developers will help to ensure that any that future changes won’t be problematic and that migration and scalability factors are taken into consideration.

Pros

Cons

  •  Creates a bespoke solution
  • More control over the look and feel of SharePoint
  • Can solve problems that out of the box solutions can’t
  • Can be a lengthy process
  • Can cause other bugs and defects
  • Requires test and development environments
  • Can be unnecessarily complex
  • Can make future upgrade difficult

Back to PointBeyond Website

Index of SharePoint 2010 Issues and Resolutions

Thought I would consolidate the posts I have made over the last few months into a single index. The topics are quite varied as they comprise issues I have encountered while working on real world projects.

InfoPath web form not loading in SharePoint 2010

Error viewing reports in Access Services

Unable to open the file for an unknown reason in Excel Services

Document IDs and the managed metadata service

Unable to find the content type publishing link in site administration, or to use managed metadata columns

No content types have been subscribed error message

 

 

Back to PointBeyond web site

Error Viewing Reports in Access Services

Here’s a common issue when trying to view a report in Access Services on SharePoint 2010.

You’ve published your database to SharePoint, and your forms work fine. However viewing a report results in the following error: This report failed to load because session state is not turned on. Contact your SharePoint farm administrator.

At first I thought this a little odd since in Central administration/Manage service applications I do have a State Service Application:

However the above application is used only internally. What Access Services actually wants is an ASP.net session state database.

A SharePoint Powershell cmdlet makes it easy to set this up. Start the SharePoint 2010 Management Shell and type

Enable-SPSessionStateService –DatabaseName YourChosenDBName

Note that is possible to specify –DefaultProvision as a parameter instead of explicitly specifying a database name, but if you use this parameter you will end up with a database name containing a GUID – yuk! With the approach shown above you instead get a nice database name:

Note also here that you can see the database we have just created as well as the State Service database used internally by SharePoint.

The article referenced below also mentions editing web.config but I have not found this to be necessary. Also as detailed in some of the comments on that article, it is important to consider the performance impact of ASP.net session state – fine for a low volume internal site, but more care needed on high volume sites. ASP.net session state is scoped to the web application so this could be a consideration when determining your web applications as part of your information architecture.

This detailed article by Mark Arend gives more information on setting up ASP.net session state.

http://blogs.msdn.com/b/markarend/archive/2010/05/27/using-session-state-in-sharepoint-2010.aspx

Back to PointBeyond web site



Follow

Get every new post delivered to your Inbox.