PSC and LDC Via – The technical reasons for our strategic partnership

I’ve never been the guy who sees the sky as falling, more so the guy who wants to see what is on the other side of the cloud and if it is fun to play with. PSC’s new partnership with LDC Via is most definitely fun to play with. Over the past 5 years PSC has demonstrated time and again what a strong team of developers we have and have been able to consistently deliver client excellence. We have worked on projects from the World’s Largest XPages application to most recently an entirely responsive boostrapped application written on nothing but a notes form and WQS/WQO agents. PSC is still committed to Domino and XPages as a solution to application modernization for clients who are still committed to the IBM Domino platform. We are busy, and confident that there is no end to that in the near future.

As well as six IBM ICS Champions and the largest XPages development consultancy team in North America PSC also has extensive experience in working with SharePoint, .NET, Enterprise Java servers, Office 365, Dynamics CRM, Salesforce and multiple open source systems like Node.js, Mongo, Docker, and Angular.js. As well as on premises solutions we have a large number of cloud based projects in Azure, AWS, Google and Bluemix. Because of this broad understanding of multiple technology vendors, platforms and stacks we are able to offer our clients an honest and strategic vision of what is really best for their unique situation and environment.
So how does a non-Domino solution like LDCVia fit into that?  Beautifully!

While working with our clients to modernize their applications, we have focused on providing flexible solutions, for today and for the future. I started to evangelize the separation of interface from data and logic using Angular.js in April 2014 not only because it felt right, but because our clients were asking for it.

At Connect 2015 I spoke with Mark Leusink on the advantages of modernizing your applications on the Domino platform using this technique because “The application does not need to change when you are ready to move the data and security model”. LDC Via is that “data and security model” which allows me to easily move my modernized Domino applications off platform.

As John Head mentioned in his non-technical reasons to partner with LDC Via, LDC Via fits beautifully into our modernization strategy.

M4

For the presentation at MWLUG last week, it took me a small number of *hours* to transform my demo angular application from using Domino Data Services to using the migrated data on the LDC Via platform. Take a look at http://api.ldcvia.com and you will be able to see how Matt White and the rest of the team have created a fully functioning REST API model which seems very “familiar” to the notes domino development community.

Here is the demo used in last week’s conference presentation.

The end of Domino ?

Not at all. This is not our call to arms to get off the platform, far from it. We still have 8 full time developers working on Domino and XPages for our clients and I don’t see that changing in the near future. Our partnership with LDC Via demonstrates how clients committed to the platform today can partner with PSC and we can deliver solutions on a modern architecture knowing that future options exist. Listening to client concerns and partnering with them to pro-actively prepare for the future is what we do best.

LDC Via is now a first class option when it comes to our modernization efforts and we are very proud to be able to partner with their great team of developers.

This is going to be fun🙂

 

Speaking at SharePointFest Chicago 2016

I am very excited to announce that I have been accepted to speak at SharePointFest, December 8th 2016 in Chicago.

http://www.sharepointfest.com/~spfadmin/Chicago/index.php/sessions/38-sharepoint-development/118-dev103-office-365-add-ins-a-web-developer-s-playground

Title 
DEV 103 – Office 365 Add-Ins: A web developer’s playground

Abstract
Like most office workers, we all spend a significant amount of time in our “Microsoft Office” productivity tools. Even email is still a productivity tool. Productivity starts to diminish though if we have to move outside of our Office environment and hunt for information and/or complete business workflow processes.

With the creation of Office 365 Add-Ins, Microsoft has presented web developers with a new opportunity to create rich, engaging and integrated user experiences without having to leave the “experience” of our Office applications. Developers have the ability to create Add-Ins using HTML/JS/CSS and these run in the Windows Client, on the web, on our phones and even on the OS X desktop client.

In this presentation Mark will provide lots of demonstrations of how to get started with Office Add-Ins. These will include: creating your first Add-In in under 2 minutes, how to simplify workflow approval without having to leave your email client, how to pull report and analytics data into your Office product suite applications, integrating SharePoint as a Service, integration with Salesforce and how to integrate your content with cognitive analytics.

Come to the presentation and find out why Office 365 Add-Ins are a modern web developers playground.

Speaking at Dreamforce 2016 – Unleashing the power with Salesforce and Microsoft Office 365 Add-ins

I am so SO excited to annouce that I have been accepted to speak at the largest technology conference in the world, Salesforce’s Dreamforce conference in San Francisco. I will be co-speaking with my very good friend old Winklebeard himself (René Winkelmeyer). This opportunity is all down to him and I will be forever grateful. René became a Salesforce Evangelist back in May 2016. While we were at Engage.ug back in March this year we hatched a far fetched plan to be able to speak together and who’d have thought our world would have come together outside of the IBM Bubble.

We are going to talk about using Office Add-Ins to integrate with Salesforce. We are going to go well beyond the out of the box Office Add-Ins which Salesforce make available and show developers how to create their own from scratch. There will be lots of cool demonstrations, and hopefully we will both make it off stage without killing each other🙂

I am really excited !!

https://success.salesforce.com/Sessions?eventId=a1Q3000000qQOd9#/session/a2q3A000000LBjBQAW

Title
Unleashing the power with Salesforce and Microsoft Office 365 Add-ins

Abstract
Salesforce has created great out-of-the box integrations for Office 365. But have you ever thought about creating your own integrations for maximising your Salesforce and Office investments? That’s where Office 365 Add-ins and Lightning come to the rescue. Based on real-world scenarios you’ll learn in this session all about the “how” and “where” of connecting Office and Salesforce. After starting with needed authentication setups between the systems we’ll quickly dive deep into the programmatic aspects. Be it RESTful or Lightning Out, we’ll get you covered! Come and see the session where Mark and René will demonstrate custom integration between Salesforce and Office applications on all platforms. Source code will be provided for all examples shown.

Reading an excel file from OneDrive using REST and the Microsoft Graph API

In this article I will demonstrate how to get sample information from an Excel file stored in a OneDrive, using nothing more than the Microsoft Graph API.

Introduction 

Richard diZerega blogged about and has talked further on the new beta graph API capability for Using OneDrive and Excel APIs in the Microsoft Graph for App Storage. Using that as a reference and the Excel REST API for the graph documentation I was able to piece together this example.

Getting data from an excel file

Load a sample excel file into your OneDrive root, in this case marky.xlsx with a simple example

e0e1

Access the file using the Graph API

Using the Graph Explorer we are able to test out our files. Note that this is currently (1 Aug 2016) in BETA and the left hand drop down for version must be beta. The URLs referenced in this article all contain /beta/. Once the capability goes GA then it will become part of the next version 1.0+.

e2

e3

e4

and there we have our data from the excel file – pretty simple eh !

Conclusion

Using the Microsoft Graph API we can easily reach into an excel file, stored in OneDrive and extract the data for use in other places.

 

EDIT

And then not two days later this went GA – so v1.0 also now works🙂

e5

PSC is the MWLUG 2016 sponsor of the week

PSC Group, LLC is the Sponsor of the Week on MWLUG.com this week.

PSC is proud to be one of the Platinum sponsors at the biggest US based ICS user group event of the year. We have been a sponsor every year of MWLUG. We will be at this years event in Austin talking about what we do best: Application Modernization and XPages. We will have an exciting announcement about our future vision of modern web applications and IBM Champions Kathy and Shean will talk about Dashboards.

Look forward to seeing everyone in Austin!

 

Managing your own O365 Add-Ins moved in the menus…..

As of this week I have been unable to find where I can manage my own add-ins. Within Office 365 you have the ability to install you own, and if your admin gives you the ability you can turn off Add-Ins you don’t want.

The option to do this used to be under the main menu for add-ins….

add1

But it now moved under

My App Settings > Mail > General > Manage Add-Ins

Which is surely more complicated than it was before…….

add2

As is often the case, this is more of a public service to my own forgetfulness as I will need to remember this again I expect….

Unless it gets moved again.

Programatically modifying the subject within an Outlook Email using an Office Add-in

In this article I will demonstrate the simple getter and setter methods for getting the subject from an Outlook email, changing it and updating it.

Introduction

A customer came to us with the request to be able to push a button in outlook and set distinct values into the subject line of an email. The reason for wanting to do it this was way to ensure that there was no spelling issues and or other potential mistakes. The information in the subject can then be parsed and acted on as it passes through the email transport process.

Getting and Setting the subject

Looking at the dev.outlook.com documentation for Add-Ins we can see that there are two Async methods for getting and setting the subject from an email.

   getAsync(options, callback)
   setAsync(subject, options, callback)

in both cases the options variable is able to pass information into the Async function so it can be executed on after at the time the callback is executed. In this case we will not be using them.

To demonstrate the capability I used my Firebug lite console within both the outlook and owa clients to get the subject, add a message to it and then set the subject. This gives the overall impression to the user that you are “inserting” the information into the email subject.

Office.context.mailbox.item.subject.getAsync(
	{},
	function(res){
		var subject = res.value
		Office.context.mailbox.item.subject.setAsync(
			'[RANDOMTEXTHERE] '+subject 
		{},
		function(){
		})
	})

In Outlook

o1

o2

and in OWA

o3

o4

This simple functionality can be added into a button within the Ribbon bar and you have the desired Add-In for the customer.

Conclusion

In this article we have seen that getting and setting the Subject of an email in Outlook/OWA is very simple and easy to run within the client/browser