Archive for the 'SharePoint 2010' Category



Multimedia Learning Centre Gets The Point Across

Every organisation knows the benefits of providing high quality, easily accessible information to employees. However the reality is that training materials often sit on corporate intranets or in email inboxes without ever being looked at by staff.

A partnership between SharePoint application specialist PointBeyond, and multimedia experts Just90.tv seeks to change that. They have created a package to change training material, organisational policies, and procedures into engaging, easily digestible 90 second video bursts. The videos are then kept in a specially designed SharePoint multimedia learning centre, which can be either on premise, or in the cloud.

Why 90 second video bursts? Richard Adams of Just90.tv explains: Click here to watch video

Just90.tv was created to reflect a world where people are busier, seem to have less time and yet have more to do and must perform at a higher level. The growth and increased use of video streaming means that there are ways to learn that respect the way we live now. Personal development and gaining new knowledge does not have to be squeezed out of the diary.

The multimedia site is easy to use and manage, especially if users are already used to SharePoint. Documents and online questionnaires can be associated with videos, so for example a new starter may watch a video on a procedure, download a checklist to follow, and take a short test to confirm that they understand the procedure. Reporting allows management to see what is popular and who is viewing what.

Multimedia Learning Centre

Cascading Dropdowns in InfoPath 2010

This is a robust way to implement cascading (sometimes called nested) dropdowns in InfoPath 2010, that also works with InfoPath Forms Services in SharePoint 2010. The approach in this article expands upon the demo that I gave at SharePoint Saturday UK on 12 November 2011.

There are numerous other blog articles out there explaining how to achieve cascading dropdowns in InfoPath, and I have had varying degrees of success with them. Some work okay but are complex, others seem to be a bit buggy. So the approach I take here will (hopefully!) provide a good solution – but comments welcome as always!

Objective: On an InfoPath form I wish to have an arbitrary number of dropdowns. Selecting an item in the first dropdown determines the items available in the second, selecting an item in the second dropdown determines the items in the third, and so on. A user should be able to go back to a previous dropdown and make a change. Users should be forced to select in order, so that until an item in the first dropdown is chosen, the second dropdown is disabled, and so forth.

Preparing the Data Source

For the example below our data source for the dropdown items is SharePoint lists. However the method could be modified to use other data sources such as a database or a web service. In the dropdowns users will select a region, then an office, then a team.

I have created three lists for the example and will create three dropdowns.

The “Regions” list is a custom list with no extra columns added. It is populated as follows:

The “Offices” list is a custom list with one extra column added, which is a lookup to “Regions”. It is populated as follows:

The “Teams” list is a custom list with one extra column added, which is a lookup to “Offices”. It is populated as follows:

Designing the InfoPath 2010 Form

Launch InfoPath 2010 and create a new blank form (or open the form to which you wish to add your dropdowns).

Add three text fields as follows:

Repeat for “Office” and “Team”.

Now drag-and-drop each field onto the form.

Without any formatting your form will look like this:

Right-click each textbox and choose “Change Control > Drop-Down List Box”.

The form will now look like this:

Now we need to create three data sources, one for each dropdown.

Click on the “Data” menu at the top of the window, and then “From SharePoint List”.

We’ll do “Region” first.

Enter the location of the SharePoint site. Note that the lists can be on a different site to the site that our form is going to end up in.

Click “Next”. Select the “Regions” list.

Click “Next”. Select “Title” and change the sort order to “Title”.

Click “Next”. Click “Next” again on the offline option page.

Accept the options on the final page.

Click “Finish”.

Now repeat this process for Offices and Teams, but with the following two changes:

First, include the related column in the fields to select from. So for Offices the wizard will look as follows:

Teams will look similar, but with the “Office” column selected.

Second, uncheck the “Automatically retrieve data when the form is opened” option. For all but the first dropdown, we won’t be getting the data until the previous dropdown is changed.

Ok now we need to hook up our dropdowns to our data sources. Right click the “Region” dropdown and choose “Drop-Down List Box Properties”. In the “List box choices” section choose “Get choices from an external data source”. Make sure the data source is “Regions” and amend the “Display name” field to Title (using the button on to its right) so that the form looks as follows:

Click “OK” and repeat for the “Office” and “Team” dropdowns, choosing the appropriate data source in each case. Make sure the “Value” and “Display name” fields are always correct. So for “Office” the form looks as follows:

If you preview your form at this point then the “Region” dropdown should be populated but the other two should not.

Finally we need some rules to make it all work.

Select the “Region” dropdown, then on the “Home” tab at the top, choose “Manage Rules”.

On the “Region” dropdown we will add a single rule. Choose “New, Action”.

Change the “Details for” to read “Populate Offices”.

Now choose “Add, Set a field’s value”.

The field we will set is the “Region” field on the “Offices” data connection. This will act as a filter on the list of offices, only displaying those that have the correct region.

Click the button to the right of “Field”. Change the dropdown at the top to “Offices (Secondary)” and expand “queryFields” to select “Region”.

Click “OK”. Now click the “fx” button to the right of the “Value” field. Click “Insert Field or Group…”

Choose “Region”.

Click “OK”. The formula shows as follows:

Click “OK”.

Now add another action to the rule, again to “Set a field’s value”. This rule will simply set the “Office” field to blank, to clear out any old values.

Now add an action to “Query for data”.

Set the data connection to “Offices”. Click “OK”.

If you preview your form now you should be able to select a region and see the correct list of offices populated.

Now we set up the rules on the Offices dropdown. Select the dropdown and click on “Manage Rules”.

Add a new formatting rule:

Change the details to “Disable if Region Blank”. Click on “None” under “Condition. Set the condition as follows:

Select “Disable this control”.

Next add a new action rule.

Call this rule “Populate Teams”.

Add an action to set a field’s value.

Pick the Teams/Office query field.

Set the value equal to “Office”.

Add another action to set “Team” to blank.

Add a final action to query the teams data connection.

Finally add a formatting rule to the “Teams” dropdown. This rule will disable the control if “Office” is blank.

Now preview your form and check everything works!

Provided all is okay you can publish your form. If you want to use InfoPath Forms Services within SharePoint 2010, it should work fine.

Back to 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

Easy Tips to Improve Document Search Results in SharePoint

You have done all you can from a SharePoint perspective – Search is set up and it is crawling the documents, but the results returned are not what you’d expect. This is frequently the result of documents created without optimising them for SharePoint Search indexing.

The Search service in SharePoint crawls documents to index them for search.  This entails quickly scanning each document for words and phrases and ranking the document’s relevance accordingly. The Search crawl looks at filenames and titles first, then headers and finally the content itself.  Therefore, a keyword included in the title of a document helps it to rank higher than a keyword found in the content alone.

It is a common perception that Search will simply just work.  However, the reality is that it will only be as good as the content it is searching. The following tips are things users can do to help their documents appear correctly in search:

Check your Document Properties – I recently witnessed a search for the word ‘Policy’ that returned multiple documents displayed as ‘New Template’ , although when we opened them they were indeed policy documents.  On closer inspection we found they had all been created from one original document, overtyped and resaved multiple times, without anyone changing the document properties in Microsoft Word.  This led to the document having  a misleading appearance in SharePoint:

 SharePoint Document Title Properties

Search was in fact working correctly, but to the users it appeared that the results were meaningless.

This highlighted the difference between simply renaming a file when you save it and amending the document properties in Microsoft Word.

Micrsosft Word Document properties

 To read more about document properties see Microsoft Office help.

You can change the Title properties in SharePoint, but you must remember to do so after uploading the document, especially if using the multiple upload tool.

SharePoint Edit Properties

Check your Title – Make sure your Title and File Name is meaningful. I have seen many documents in organisations titled ‘General Admin’, ‘Update’ or ‘Checklist’. Initially, these may seem like sensible titles.  However, these titles don’t help Search identify the real subject of their content and they really don’t help your users identify whether they have found the correct document.

By contrast, a good title is a clear, precise and short description of the document’s contents. ‘Stationery Ordering Procedure’, ‘Update to Appraisal System 2011’ or ‘Setting up a New Customer Checklist’ are good examples of meaningful document titles.

Check your Headers – Microsoft Word has some handy styles to help you format and structure your documents. By using heading styles correctly, you are also helping SharePoint Search to crawl your document as efficiently as possible. It is therefore important to make sure that you have meaningful headings and preferably ones that include the key phrases people may search for if they wanted to find your document.

Microsoft Office Styles

Using header styles will also help your readers and can help you to auto generate Table of Contents for your document, something especially useful if your document is a long one.

To find out more about using styles visit Microsoft Office help

Check your Content – if the content of your document doesn’t contain keywords relating to the subject it covers, then this too may lead to it not appearing in the correct search results. To avoid this happening, you should always consider including an overview or summary that clearly outlines the topics covered in the document. This will help SharePoint Search index the document correctly and hopefully enable your users to identify the document they are looking for!

Back to the PointBeyond Website

Sites and lists not updating from the Content Type Hub

The Content Type Hub (CTH) brings fantastic new functionality to SharePoint 2010, functionality that anyone who has delivered or administered SharePoint 2007 will have been crying out for and no doubt welcomed with open arms.

The CTH can be a complex beast with settings located in lots of different places; Central Administration, Site Collections, sub-sites and the CTH itself.

Chances are, by the time you get to using content types from the CTH in document libraries way down in the basement of your SharePoint site structures it’s been a long time since you set up the Managed Metadata Service and the Hub – or perhaps you are an Information Manager and didn’t set it up in the first place.

So my question is: Where would you start to look if your content types in sub-sites and lists refuse to update properly?

Now I’m presuming here that you have correctly published the offending content type in the Hub, have run the 2 timer jobs in Central Administration and that the Site Collection you are trying to push the content type to is consuming the CTH.

In fact, I’m assuming you have one or more content type from the hub on your consuming Site Collection and have added them to document libraries – but now you’ve decided you need a new column on one of the content types.

You go through the same process described above (publishing the content type in the Hub, running the CA timer jobs etc.) but when you come to check the document library there is no new column.

To reassure yourself that you’ve done everything correctly, you look at the content type gallery in the consuming Site Collection and can see the new column. Very strange!

You’d be forgiven for thinking “this must be a setting in the document library”, or perhaps you forgot to tick the ‘Update all content types inheriting from this type?’ check box in the ‘Update Sites and Lists’ section of the content type in the Hub.

So you check and you check to no avail. You may even have tried running some PowerShell scripts to force the update. Nothing!

So what to do?

Turns out it’s simply the way the Managed Metadata Service Connection has been set up.

There are four useful little tick boxes, which you’re only likely to see at the point you create the service, two of which have a huge effect on how the Content Type Hub functions.

To get to them go to Central Administration > Application Management > Manage Service Applications > Highlight the ‘Metadata Service Application Proxy’ (click anywhere but the title) > Select ‘Properties’ on the ribbon (see screen shot below).

This should bring up the ‘Edit Managed Metadata Service Connection’ window.

Here you can see the four options I was talking about.

The first two are firmly aimed at the Term Store, but the last two have a huge impact on the CTH functionality as I mentioned. The last one is clearly what we’re after so let’s tick that box!

You should now see your document libraries and lists updating from the CTH without a problem.

As you can see, this can be a difficult problem to track down because the Site Collections are getting the content type updates as they should be, just not in the lists – but as ever, there’s just one more check box!

Back to PointBeyond web site

Finding Duplicate Documents in SharePoint using PowerShell

This script looks through all documents stored in a SharePoint site collection and finds duplicate files based on document contents rather than document names. This script has been written for SharePoint 2010 but should find duplicate documents in SharePoint 2007 as well with very little modification.

Over time, it is quite possible the same document will be uploaded to numerous SharePoint libraries. Keeping track of duplicate content spread across multi libraries can be practically impossible.

Building on the article here http://blog.codeassassin.com/2007/10/13/find-duplicate-files-with-powershell/ that details duplicate checking on fileshares, the following PowerShell script scans all your document libraries with a site collection for duplicate content by calculating an MD5 hash of the file contents. The script groups identical hashes and produces a list of all duplicated files, detailing the full url to item and the file name.

To run the script, copy the contents to notepad and save as a .ps1 file on one of your SharePoint servers. Then launch a PowerShell console and run the ps1 file.

Output to console showing duplicate files

PowerShell Console Output

The function returns the full path of all duplicated content.

This information could be piped back into SharePoint, or exported to Excel for analysis. You could even set this as a recurring job. In a future article, I will package this functionality into a timer job feature.

At present, the script stores all results in memory while it is running. If you are running this over a large site collection this may not scale very well. It may be worth streaming the results into a SQL table or similar. Also, at present this script will only evaluate content on a site collection basis but could be scoped to a web application or a whole farm if required.

Add-PSSnapin Microsoft.SharePoint.PowerShell -ErrorAction SilentlyContinue

function Get-DuplicateFiles ($RootSiteUrl)

{

$spSite = Get-SPSite -Identity $RootSiteUrl

$Items = @()

foreach ($SPweb in $spSite.allwebs)

{

Write-Host “Checking ” $spWeb.Title ” for duplicate documents”

foreach ($list in $spWeb.Lists)

{

if($list.BaseType -eq “DocumentLibrary” -and $list.RootFolder.Url -notlike “_*” -and $list.RootFolder.Url -notlike “SitePages*”)

{

foreach($item in $list.Items)

{

$record = New-Object -TypeName System.Object

if($item.File.length -gt 0)

{

$fileArray = $item.File.OpenBinary()

$hash = Get-MD5($fileArray)

$record | Add-Member NoteProperty ContentHash ($hash)

$record | Add-Member NoteProperty FileName ($file.Name)

$record | Add-Member NoteProperty FullPath ($spWeb.Url + “/” + $item.Url)

$Items += $record

}

}

}

}

$spWeb.Dispose()

$duplicateHashes = $Items | Group-Object ContentHash | Where-Object {$_.Count -gt 1}

foreach($duplicatehash in $duplicateHashes)

{

$duplicateFiles += $Items | Where-Object{$_.contentHash -eq $duplicatehash.Name}

$duplicateFiles += “————————————————————”

}

}

return $duplicateFiles |Format-Table FullPath

}

function Get-MD5($file = $(throw ‘Usage:Get-MD5[System.IO.FileInfo]‘))

{

$stream = $null;

$cryptoServiceProvider = [System.Security.Cryptography.MD5CryptoServiceProvider];

$hasAlgorithm = New-Object $cryptoServiceProvider

$stream = $file;

$hashByteArray = $hasAlgorithm.ComputeHash($stream);

return [string]$hashByteArray;

}

Get-DuplicateFiles(<your sharepoint site>)

Back to PointBeyond Website

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

10 Business Benefits of Automating Processes with SharePoint 2010 Workflow Applications

SharePoint 2010 workflows are highly suited to solving business problems and managing processes like holiday requests, expense claims, news starters/leavers, customer enquiries or contract management. Whichever application you choose to create, using SharePoint 2010 to automate a process can deliver great benefits to your organisation.

Here are 10 excellent reasons to automate business processes using SharePoint 2010 workflows:

  1. Reduce costs – Stop using resource heavy paper trail systems, or consolidate processes on the SharePoint platform to enable you to retire legacy systems, thereby saving licence and maintenance costs.
  2. Streamline work – remove bottlenecks and minimise manual actions by using workflows that automate activities and tasks. SharePoint 2010 workflows can quickly apply rules to make decisions and calculations ensuring work progresses smoothly. SharePoint can also alert users when an action is required from them.
  3. Boost productivity – reduce the amount of time users spend performing tasks, freeing them up to concentrate on other work activities like serving customers. Users no longer have to remember lengthy processes as the workflow will carry out actions and alert those who need to respond.
  4. Track progress – Users can easily view the status of their tasks and requests. Managers can quickly get an overview of the actions completed and outstanding. Communication is simpler with automated alerts and updates, and all users involved having easy access to the information they require.
  5. Deal easily with high volumes of requests – Users complete an easy to use form, submit it online and the workflow manages what happens next, so whether you have a single submission or hundreds they all get handled correctly and efficiently. SharePoint 2010 is a great platform for applications gives you the flexibility to repeat and scale processes to meet demand.
  6. Reduce errors – Work consistently and reduce mistakes. By automating processes and managing them centrally you provide a framework that intuitively guides users. This minimises the chance for human error, ensuring the correct outcome every time and only involving the people who need to be involved.
  7. Enforce standards -  workflows help you maintain standards and compliance as you can configure the workflow to make sure all essential activities and outcomes are tracked and escalated. By aligning workflows with policy you make it straightforward for users to comply.
  8. Maintain visibility –  SharePoint 2010 workflow applications can provide effective auditing and reporting capabilities, giving you the information you need to manage, review and improve your work processes. Workflows can give you greater insights into control, compliance and accountability.
  9. Integrate with other systems – Data can be read from or written to other systems automatically, this overcomes information silos, and provides a single point of access for users, saving them time.
  10. Quick to build and customise  - SharePoint 2010 enables you to design, build and configure workflows without always needing complex code. There are also excellent third party solutions than can enhance these capabilities further. For example, Nintex and K2 give you intuitive drag and drop tools to create powerful workflows in moments.

Back to PointBeyond’s Business Application Pages

White Paper – Organisations Leverage SharePoint to Build and Manage Critical Business Applications

Given our focus on delivering business applications using SharePoint, we are particularly excited to see this latest whitepaper from Microsoft:

http://www.microsoft.com/download/en/details.aspx?id=18768

An independent study by Mainstay Partners evaluated the implementation of the Microsoft SharePoint platform at three companies with the goal of understanding how they use the SharePoint technology to build and manage critical business applications.

This white paper explores how the three organizations deployed SharePoint capabilities to develop and manage essential business applications. While the deployments involved unique applications and content, each sought to achieve similar business goals – namely, to simplify and streamline IT environments, to increase business and IT flexibility and scalability, and add new capabilities to improve service levels and control costs.

PointBeyond have also created a new Linkedin Group – SharePoint Business Applications –  to encourage discussion and knowledge sharing on this subject. Please click here to join.

Back to PointBeyond web site

« Previous PageNext Page »



Follow

Get every new post delivered to your Inbox.

Join 279 other followers