Share and Enjoy !

Find this Podcast “Integrating Microsoft 365 and Salesforce Webinar” on the ThreeWill Soundcloud, Stitcher, and iTunes.


Danny:                    Hi everybody, this is Danny Ryan from 3Will and I welcome you all to today’s podcast. I have with me Eric Bowden. Eric is a principle consultant and is going to help out today with covering some questions in particular about integrating Salesforce and Microsoft 365.

Just a couple of things before we get started. One is if there’s questions that come up, please feel free to ask your questions at GoToWebinar questions panel. This will be recorded so you’ll get an email next week from me that has a link to the recording. If you want to share this with other colleagues that perhaps couldn’t make it, you should see an email from me on that. What I wanted to cover with regards to content today was to cover a recent blog post that Eric had do on the top 10 things that you should know about integrating Salesforce and Microsoft 365.

I’d like to get started here … First off, welcome Eric.

Eric:                          Thank you Danny.

Danny:                    You bet ya, thank you for joining me for this. I appreciate you writing a blog post, I appreciate that. I know that this is something that you’re really passionate about, both Salesforce and Microsoft 365.

You started the blog post out with some information about Gartner’s application platform as a service and noticed that both Salesforce and Microsoft were the leaders in that. In fact, you put a little link to that as well. They seem to be leaders as far as enterprise application platform as a service. I think I got that right, yeah there we go.

That’s nice to see them putting out solid products there. What we wanted to do in this conversation was maybe just focus in on integration between Salesforce and Microsoft 365. Maybe to get us started off, I know you got sort of a progression of things you want to cover with regards to integration. The first thing you start off with is considering off-the-shelf offerings. Tell me more about that Eric.

Eric:                          Yeah and before that [inaudible 00:02:54] let me introduce a little bit about what that progression looks like. As I go through these top 10, just kind of be listening and thinking about that … We’re going to start off by talking about what others have built in the past. What are products off the shelf that I can use and then we’ll sort of enter another step of complexity where we’re saying “Okay, how can I use the platform capabilities in order to build my own integration.” Then we’ll end up with “What about if I pull out, what are the deep developer skills am I really getting into writing code.” Then I’ll finish off by talking about what are some strategies and things that you need to be thinking about across all of these areas.

To start off with we’re talking about off the shelf offerings. Salesforce and Microsoft both had an app store. On the Salesforce side there’s the app exchange. The AppExchange is a great resource. Many, many, many products to choose from. You’re best place to start is you’re going to and search for Microsoft 365. Execute a search for Microsoft 365 you’ll see a number of options that come right up and these are … Many of the other products you see are free. One product you’ll see is called Trove. Trove is a product that we created, released within the last month. Trove is a product that allows users in Salesforce to save attachments for accounts and opportunities over into SharePoint sites and Microsoft 365. It’s intended to really mirror that experience for attachments. That’s just one example of an app that’s in the AppExchange. The other applications that you’ll see tend to be focused on Outlook and Exchange integrations.

With the AppExchange in Salesforce, there are really a number of easy ways to get started. The very easiest way is that developer environment for Salesforce. Those can be created … Those are free environments that anyone can … You can create your own developer or get started and experiment with apps off the AppExchange or you can install them into production and sandbox orgs.

Danny:                    Great. Go ahead Eric, sorry.

Eric:                          I was just going to … On the Microsoft side, there’s the Office store. You’re going to, excuse me, I think is what it is. The similar storage you have on the Salesforce side where you can search for Salesforce, in this case, and you’ll see a number of applications that come up. Similar as you saw of the Salesforce side. These tend to be focused on integrations with Outlook.

Danny:                    Great. It also looks like you mentioned some developer tooling like the MuleSoft integration and those types of things as well.

Eric:                          Yeah exactly. Don’t just stay in the App Store but expand out beyond the App Store. There are products that are created for really integrating applications like Salesforce and Microsoft 365 together. They are in the AppExchange. MuleSoft is one of them. Layer2 Connect is another one I’ve seen.

Danny:                    Awesome. The next one you go and cover is the files connect. Tell me more about what is Files Connect.

Eric:                          Sure, so [inaudible 00:06:58] first off we’re looking at products and now we’re kind of step in and see what are the platforms providing for me that are kind of built in. Files Connect is a great place to start. Files Connect, as the name implies, it’s a files integration. The best use for that is I’m in the social tool in Salesforce, which is called Chatter, and from that Chatter experience, I can share files with other users. Sort of bring attention and have conversation around these files; that’s a built in experience, but with Files Connect, I can actually browse documents and document libraries that are in SharePoint. Browsing [inaudible 00:07:42] and sharing them in Chatter into the Salesforce user interface.

There are 2 different modes; there are 2 different ways that Files Connect works.  One is that you can share files as a copy or you can share files, from SharePoint into your Chatter feed, as a reference or just a link. The benefits there, kind of the pros and cons, is that if you share your file as a copy, then there’s a viewer. There are viewers built into Salesforce that will let you view that content right in the Salesforce UI. Kind of the drawbacks are that you’ve now been transitioned control and the permissions controls that you have around that document because you just made a copy, sort of transitioned that over into Salesforce.

Danny:                    We had a nice comment from somebody from Salesforce about the you can also support external objects. Like SharePoint files, seeing them as a related list.

Eric:                          Yeah, exactly. That’s a good point. That’s my next point there. Learning about external objects in Salesforces. Files Connect for that option, you’re thinking about file based integration and an external objects that is for records space integration or requirement. With external objects, you can render a custom list which lives in SharePoint. You can render that object into UI within Salesforce. That custom object, as the person who commented mentioned, it can be added as a related list, kind of a look up list to existing objects that are in your Salesforce environment. They can also be their own tab, for those who are using custom Salesforce, you go to a tab to see an object and you can create views around that object.

One thing to keep in mind, to note that in the blog that the external object and Files Connect those are read only experience so you can read information from SharePoint and render that in Salesforce but you write back to it.

Danny:                    Great. Another comment, you also have the ability to do more about full text search within SharePoint so just searching beyond what the title is. That’s some nice integration there as well. Had another question from someone else about is this functionality, does this work on PRIM or Microsoft 365 or both? Do you know that?

Eric:                          Yeah. The majority of the experience that I have with external objects and Files Connect is with SharePoint and Microsoft 365. If that on PRIM environment, if it’s exposed through the firewall which that would be the first step in order for Salesforce to connect to it. The next step is around authentication. I don’t have an answer right off on that. I’ve seen where the auth providers in Salesforce, they’ll support forms authentications. If you had a website in SharePoint that [works 00:10:55] to using forms auth, then it would be able to authenticate. I haven’t seen the more popular options for authenticating SharePoint in NTLM or Kerberos or [clayton 00:11:04] authentication. I haven’t seen that myself but I haven’t really drove down that route.

Danny:                    We are fortune enough to have the Files Connect product manager on the line. Some of the things that were pointed out was that if Files Connect supports with SharePoint online, SharePoint 2010, 2013 or PRIMs. It doesn’t sound like you do need to have SharePoint exposed. Not sure, we can probably go into more detail on that in a separate conversation but just letting you know about that.

Eric:                          Okay, good to know.

Danny:                    I love the interaction. Any more questions folks have or any more comments? [Laura 00:11:46] thanks for the input here, really appreciate it.

Next one, it looks like what the heck are named credentials?

Eric:                          Yeah, with this 4th bullet now is where we’re starting to pull out our custom app dev skills. In Salesforce, there are what are called Visualforce pages, the equivalent to pages. In the Microsoft world, APEX is programming language, roughly the equivalent C# in the .net land. Main credentials, this is just one of the infrastructure features that exist in Salesforce, on which, we can build our custom solutions. The first 2 that we talked about, which were Files Connect and external objects, these build on something in Salesforce which are call auth providers. I kind of touched on that briefly. We touched on it with talking about authentication to the on PRIM. Instances of SharePoint, one of the things it supports is OAuth connections to SharePoint and Microsoft 365. That same auth provider that might configured for [inaudible 00:12:57] or external objects or in the same way you have configured it, there’s a feature called Named Credentials which can leverage that same auth provider. What this does is it really helps the developer get out from under the pain of needing to custom code the OAuth authentication into SharePoint instead we can leverage the authentication that’s really built into the platform.

One thing to highlight here that’s kind of neat, I think about the auth providers and Named Credentials, is that it supports service accounts out of the box. As part of configuring this Named Credentials, I can say that I want to use a service principle and what it will do is it will ask me to authenticate right there and I’ll authenticate as the user that I want that Named Credential to use in the future, and it will store it. It will reuse that credential for future [call 00:13:59]. Named Credentials are a great feature. Also, you can build with external objects. There is the ability to create your own custom connectors. There are a number of external objects, for example the underlying connectivity option that’s used for calling into SharePoint Microsoft 365 is an OData, it’s expecting an odata enabled data source and you have the ability to create your own custom connectors for data sources that don’t support OData or don’t support some of the other protocols that are supported out of the box.

Danny:                    Awesome. Looks like that’s something as well you ended up using within Trove as well?

Eric:                          Yeah, exactly. Actually, with Trove the [inaudible 00:14:57] you really have full control. Apex with the Salesforce platform is quite powerful. You can make call outs, https requests to any endpoint you desire, you can form redirects and so forth. Very powerful. What we did for Trove was use really custom code for authenticating in Microsoft 365. We did that because we wanted to make what are called application principal authentication or app only calls into SharePoint. You really do have the full capability for your integration if you don’t want to use the, or have the need not to use, the capabilities of the platform.

Danny:                    I know we’ve got a lot of people who since we’ve done a lot of Microsoft integrations, they might not be as familiar with some of the stuff on the Salesforce side. What is Apex? What is the equivalent of that on the Microsoft side?

Eric:                          Sure. Apex it’s a programming language that is proprietary to the platform. I see it described as being very Java like. I’m not a Java developer myself so I see it as being very C# like. It supports the same class, method, properties type programming paradigm that you’re used to. There are, of course, key differences. They don’t end up being major architectural difference and you kind of learn those over time. I mentioned also, kind of goes along side Apex is Visualforce. That’s how custom webpages are programmed in on [inaudible 00:16:50] platform and it’s equivalent to application, ASPX page. You can also think of it as similar to MVC razor forms, that sort of thing. Both of these are very powerful and really give you almost unlimited customization capabilities on the platform.

Danny:                    Cool. It sounds like we’ve hit a couple of things on the Salesforce side, as far as technologies that you’d want to take advantage of … At least take a look at if you’re integrating between Salesforce and Microsoft 365. The 5th one is about the synchronization of data as part of a scheduled task. Tell me more about that one.

Eric:                          Right. This ones maybe a little bit of a detour from the path that we’ve been taking but it [inaudible 00:17:43] step back because often times when folks are thinking about integrating two systems, they almost always go right to a real time integration. By that, I mean I want to render a page in Salesforce and have it, in a real time fashion, pull that data from SharePoint and render it Salesforce. The external objects and credentials will give that to you because those are real time calls but don’t forget what are the, I’ll call it the old school data synchronization options, where you’re really just taking a copy of the data that exists in SharePoint and you’re copying it over to Salesforce or maybe copying it from Salesforce into SharePoint. There are a couple of neat advantages of that. One is that it can be technically a lot simpler, like if you were moving parts. Another advantage is that you get the full fidelity experience of both platforms. If I copy my data from [inaudible 00:18:53] into Salesforce, copying those in the custom objects in Salesforce will then … I have the full experience. I can use formula fields, I can include those custom objects in reports. Those are some features I wouldn’t be able to use if I were using external objects.

I threw that one in there just to … Don’t discount that right off the bat because sometimes a batch synchronization, it’s a simple option but often times that can be cost effective and meet the integration needs.

Danny:                    Sometimes it does make sense to roll your own in this case.

Eric:                          Right.

Danny:                    Yeah. I have to drink more coffee because I don’t know if I picked up all of what you just said. All right. Number 6.

Eric:                          Yeah let’s jump over to the SharePoint side.  [crosstalk 00:19:53] … in a similar track as we rolled through with Salesforce, let’s think about what are the integration options on the SharePoint side. Business connectivity services is the … That has been the integration story for SharePoint for some time. It’s a very powerful option that provided read/write experience you’re really rendering this external data and really the experience of a custom list. In SharePoint, at the moment, it doesn’t support direct connectivity to Salesforce.  What you’re going to be looking for there is a middle tier application, a middle tier service that really brokers that communication from SharePoint through to Salesforce. On the surface, it may sound like a lot of moving parts but being able to easily render that Salesforce as a custom list, there’s a big value in that.

There are some 3rd party product companies out there, I think Layer2 is another one that I saw, they kind of popped up in a couple of places, serving as that middle tier. I think there are some other options or of course, rolling your own.

Danny:                    Awesome.

Eric:                          The next on is power BI. Power BI, I think on the … It’s kind of hard for me to decide for sure which of these rise to the top for me but I think Power BI would probably be my first stop on the SharePoint side upon render Salesforce data from my SharePoint users because it is so easy to get started. 5 or 6 clicks and you have connectivity with Salesforce in your SharePoint environment. It comes with 2 dashboards, there’s one that supports the sales managers and there’s one that supports the sales reps that’s pre configured and of course you have the ability to customize that. It’s handling the authentication for you and just doing a great job at helping to get you started. That’s kind of the easy button. Similar as external objects on the Salesforce side but Power BI forces a read only experience. It won’t meet all of your needs but it’s a great choice for report options.

Danny:                    For those folks who … Last month we actually we covered a similar top 10 around what you need to know about Power BI. We did record that and we’ve also got a [deck 00:22:57] that you can go through as well as you want to. I’ll put that in the chat window as well. I think that’s another topic we’re pretty excited about, it’s Power BI.

Number 8, provider hosted apps. What’s a provider hosted app just to get started.

Eric:                          Provider hosted apps  on the SharePoint side of things is where we’re really pulling out are custom app dev skills. Provider hosted apps, this is where you can develop an web application and you can really render that within the user interface of SharePoint. Because it is an web application, typically hosted in Azure, you have full control over the rendering, you’re really serving as the middle tier broker between Salesforce and SharePoint.

One example of a provider hosted app, 3 Wheel as built a Chatter integration between Microsoft 365 and Salesforce which is a provider hosted app. It surfaces a Chatter feed. It’s read/write so users can not only view a [inaudible 00:24:19] but they can also like, post and so forth. In the SharePoint UI, it renders what is called an App Part.  It’s right within the user interface of, let’s say, a SharePoint site. One of the things that allowed us to do, just to kind of talk about the heavy lifting in example in a provider hosted app, is that we use a certificate based authentication into Salesforce.  Salesforce has a number of authentication options that are very well documented. OAuth authentication options. One of them is called the saml bear flow and that’s what this integration uses. What it allows us to do is it allows our integration to trade certificates with Salesforce and we can then sign requests using that certificate for making API calls into Salesforce and we can assert the users identity.

What that really ends up doing is it provides users with a single sign on experience so that they don’t need to authenticate to Salesforce and neither do they need to authorize the OAuth connection, the user consent flow that you may be accustomed to.

Provider user apps definitely are a great option to look at. Starting with Visual Studio 2015, there is what’s called Salesforce Services, which were built in to Visual Studio. That is a great option. If you’re a developer and you want to say “Hey, I want to sit down in an afternoon, create an application that connects to Salesforce and renders a UI.”, using Visual Studio 2015 and the Salesforce Services extension is a great way to do that because it does a number of things for you that were somewhat difficult in the past. Some of the things it does is that it sets up that OAuth connection for you. Within the Salesforce side of things, there’s something called Connected Apps and that is the OAuth endpoint, the OAuth authorization for apps to call into Salesforce. The Salesforce Services extension configures all of that for you. The Salesforce Services extension it also works with NVC apps. It creates the model for you, there is sample code. There’s a walk through, I have a link kind of down toward the bottom of this post, that really walks you through a great walkthrough of getting started with your first app. That walkthrough will guide you through creating my model, creating my controller, and VU so that you’ll really be … The walkthrough has full prod capabilities. You can edit, view, and delete records right from your first walkthrough.

I can’t say enough about that option. It’s really a neat step for the Salesforce Services extension.

Danny:                    It sounds like, Eric, you’re doing a lot of, I just wanted to point this out a while back. I remember you did this blog post which was after you went to one of the Dream Forces, you ended up covering kind of what Salesforce is for SharePoint devs. I think a lot of this is sort of hitting one platform versus the other. I just wanted to point this out for folks too, I would probably have a pretty Microsoft heavy crowd; if you’re wanting to learn more about the similarities between Salesforce and SharePoint, Eric does a good job. I’ll put this in to the chat window as well. I’m just interested, what have been your experience, Eric, of doing more SharePoint Microsoft 365 development versus starting to do some stuff with Salesforce. Has it been pretty easy mapping?  Tell me a little bit more about that experience.

Eric:                          Yeah.  Thanks for bringing up that blog post and great point. For my Microsoft developer friends who are interested in getting into Salesforce, as Danny mentioned, there is a great mapping. As I already pointed APEX versus C#, Deferral force versus web applications, MVC Razor and so forth and as you go along, you’re constantly coming across great parallels. Connected apps is what you have of the Salesforce side of things. On the SharePoint side of things, you have application principals, and so there’s another parallel. Their provider hosted apps on the SharePoint side of things, which is hosted in Azure. On the Salesforce side of things, there’s something called Canvas Apps, which are hosted on a platform Heroku. Heroku being, and I don’t have a deep knowledge of Heroku, but it seems to be equivalent to an Asure based environment. If you head down that Salesforce app realm, you will very pleased to see a lot of things that are very familiar to you. A lot of times it comes down to the fact that, I think, great minds think alike and a lot of times kind of arrive at very similar solutions. It’s been a great experience, I’ve been thrilled.

Danny:                    Awesome. Thank you for sharing that. The number 9.

Eric:                          Sure. SharePoint authentication. This is one of those … I think kind of a strategy or a thought. Honestly, I can probably build on a few more but you need to be thinking about all along is … Your sort of traveling over “Okay, am I going to use an out of the box product? I use app dev, if I use app dev which side is it going to be on? Is this going to be synchronization or real time?” Really travelling through all of those decisions in authentication.

A lot of the authentication comes down to “Am I going to use a service account? Or are users going to authenticate on their own?” There are pros and cons. A lot of time, the service account is a much simpler way to accomplish an integration because you don’t need to require users to authenticate themselves or create the UI for it but, on the other hand, the questions you need to ask “Iis the security trimming important?” If security trimming is important then you certainly wouldn’t want to use the service account. And of course, audit trails, if you’re using a service account, anything that’s deleted, updated, added and so forth that’s going to all be attributed to your service account.

Of course, is there going to be an interactive user? Is anyone even present to authenticate, that’s something that [inaudible 00:31:26] impact your authentication. 3rd bullet point there is around storing of secrets. There are a number of secrets with the OAuth authentication and even if you’re using a service account where you have a user name and password, of course that’s a secret. Does your integration have an option? The methods that have the ability to store secrets are usually those that have server site code. Like a provider hosted app or a Visual course page with APEX running behind it. Those that can’t store secrets tend to be those that are maybe running in JavaScript, maybe you have a pure JavaScript application. You’re not really going to store … You maybe have some options, you’ll have to think about it, for storing secrets.

The last bullet there is around certificates, signed credentials. Which that has come up more around our Chatter integration, where the particular OAuth flow that we’re using for [impersonating 00:32:33] users. Kind of be thinking about what are our authentication requirements because that’s really going to impact any of your decision all along the way.

Danny:                    Cool. Number 10. Online training, sounds like an important one.

Eric:                          This is a topic [inaudible 00:32:58] passion around lately. It comes down to the fact that things are changing fast and we all need to be efficient in the way that we learn new things. We need to find data that gives us the right answer and that has been designed and well tested.

I listed out a few here, really my top 3. Top is Pluralsight, I love Pluralsight … Subscriptions, there are numerous courses on Salesforce and Microsoft 365 and of course a myriad of courses which are technologies that applied to both like OAuth, Angular, Bootstrap. You name it. Pluralsight is a great place. You can search the catalog on Pluralsight before you sign up. If you’re looking for something in particular and you’re not already subscribing to Pluralsight, you can check and see if it’s there; check with some friends or check with me “Is this a good course, do you recommend that I sign up for just this course?” In some cases, the answer is yes. It’s worth the cost for one key course.

Next is the Microsoft Virtual Training Academy.  That’s a free resource. Excellent courses online. Also, not only Microsoft focus but plenty of generic content. Salesforce has the Trails End which are a number of online trailing content, it’s also a free resource.

The last 4 here, kind of going into specific areas that I recommend that you focus in on. As I mentioned earlier, kind of trying to pick out what I think are the sort of top. The most interesting things for folks to go after, Lightning Connect is definitely one of the most interesting ones. Which external objects, which I covered earlier, are really part of Lightening Connect. That’s where you learn about that.

[Power Be Guy 00:35:06] seems to be also right up at the top that I recommend that you look at. It’s really fast and I’m not a deep [Power BI Guy 00:35:21] person myself I just sort of clicked sign up and nexted my way through it and kind of dug into it a little bit. This is really a great, easy option to explore.

Danny:                    Sorry, I’m playing a little Vanna White there for you.

Eric:                          Yeah, no worries. Connected services and digital [inaudible 00:35:45]. That is a link, I think, to a Salesforce blog which is the … Let’s see if that pops up here, I think that’s the walk though. Yeah. And that is an excellent introduction to Salesforce Services. When you get to the end of the wizard, which you can see a screen snap of the wizard there where they’re selecting out Salesforce objects, when you get to the end that wizard it opens up a webpage for you. It’s titled like “Getting Started” a lot of times those webpages pop up and we just sort of dismiss them right away; don’t dismiss that one because it has your walkthrough on it. You’ll see on that left hand side it walks you through creating your controller and your views and so forth and so on. I’m definitely recommending you look at that. The last one there is just kind of a getting started with provider hosted app in SharePoint 2013. I just recommend you have a look at that because that is just kind of a key foundation for customizing SharePoint and Microsoft 365 or provider hosted apps. That’s something you’ll definitely want to become familiar with because there’s so many things that build on it.

Danny:                    I’ve got a couple more things I know I want to cover after you finish off this blog post but if you could just get through these parting thoughts put together sort of a summary of what you’ve covered so far, that would be great.

Eric:                          Yeah. Just kind of summarizing the themes that these top 10. I think the first one there, determining if your data … Does it need to be in real time or could it be delivered as a scheduled task. Again, we want to look at the most simplest and the most cost effective way to solve your integration needs. A lot of times it going to be the task will be that can be really simple option.

Take a look at 3rd party products. A lot of products have been built, there are companies that are really focused on connecting applications together. Mulesoft is one that I mentioned, Layer2 and maybe some others, I’m certain there are.

Look at your custom app dev options in Salesforce and Microsoft 365. That’s really my specialty, custom app dev, that kind of a favorite of mine. Don’t forget to evaluate the costs of the solutions. Is it a custom built solution or is it a product that you’re going to purchase. There are going to be licensing costs for most products. Of course app dev costs. Normally, for building a product now but then maintaining it in the future. Another aspect, which I don’t think I mentioned earlier about buying products, if you use an out of the box product or a feature that’s already been built, one of the advantages there is that you’re joining on to the product roadmap for that product. Not only are you buy and adopting it now, but you may see better value over time as those features are built. You’ll definitely want to, as part of products, think about where’s this product going. They’ve built some things, maybe it doesn’t do all I need, but will it do more in the future?

The last bullet there, once again, find the training and learn more. Folks have been really humming the delivery of content. Everybody’s struggling to keep up and are [inaudible 00:39:51] with the online resources that are out there.

Danny:                    I want to, maybe before … We’re coming up on about 20 minutes left here but I probably want to use about 10 of them. What I wanted to do, I think you’ve been mentioning Trove quite a bit and talking about that maybe as an example on integration between Salesforce and Microsoft 365. What I’m interested in here is the approach of the Salesforce side and even some of the recent approach that you’ve taken with building an Office app. Mind going into any more detail on that at all?

Eric:                          Sure, I kind of talked through some of the technical pieces of that application, just to give you an idea of what a custom integration app can look like. What this is made up of, I don’t know if you maybe have a screen snap there if you need it. I think the second on might be appropriate. You can see at the bottom it says click on the file name to edit. What that box is right there is, let’s see if you’re going to [crosstalk 00:41:09] Visual Force page.

Danny:                    All right. I think I got a little too aggressive on the zoom in there. I was just going to pick it out. Does that help?

Eric:                          Yeah, that works. What you can do in Salesforce is you can take, what is a custom page, a Visual Force page, and again equivalent to the web application. You can take that Visual Force page and you can embedded it in what’s called a layout page in Salesforce.

Layout page is sort of what the name implies lays out a record for you. You can see right here that this is the layout page for an account and what we’ve done as part of Trove, is that there’s a Visual Force page, which you can sort of see a line there and you see files. The section right below [inaudible 00:42:04] that is a Visual Force page. For folks who are familiar with provider hosted apps on SharePoint side, this is a lot like, in terms of the eye framing, and it’s rendering a Visual Force page there on the layout for that account. In the back end, there is APEX code, which is behind this Visual Force page and that APEX code is handling things like authentication to Microsoft 365 it also handles the file upload. For example, Visual Force pages have a lot of AJAX style support built in and one of the things accomplished on this page is called remote actions. In Visual Force, when you upload a file it’s using a remote action which you can think of it as a JavaScript http request. Back to the controller to upload that file so it’s uploading a file in chunks.

On the Office side of things … In our first version of Trove, one of the things that you would have to do, we would have our users go through this process of creating an application principal on the SharePoint side of things. For those who are familiar, you go to [accregnew.aspx 00:43:35] and you create an application principal and then you give this application principal the permissions so forth and so on. For the Salesforce folks on the phone what I just described is the equivalent of creating a connective app but you’re creating it Salesforce side. To make that installation process easier, we’re in the process right now of working on getting Trove into the Office store. Once we get Trove into the Office store, the client ID, the client secret and the permissions for that client, those are all really installed as part of or set and configured as part of installing the application to SharePoint.

That’s kind of the Office store side of things. Trove, then, there may be other examples of this, if not now probably more in the future where really it has 2 components. There’s sort of an app exchange component for Trove and then there’s an Office store component for Trove.

Danny:                    Awesome. Very cool. I’m sorry, I’ve been just going around as you’ve been talking here just pulling up a couple of different pages I though would be relevant.

For folks who are on the phone, any other questions that folks might have I’ll keep an eye out on questions as we’ve covered this. Eric, I appreciate you taking the time to both write this up. I know you’ve been pretty busy with some of these integrations. Appreciate you taking the time to share with everybody in the community about this. If you want to get in touch with Eric, the blog post that I shared … I have a nice comment about Trailhead I think a lot of people, internally, have been using Trailhead to learn more about Salesforce. It’s been a pretty important place. If you wanted to connect with Eric, just on any of the blog posts he’s written, if there’s a hyperlink over his name from there you would be able to connect up with him through LinkedIn.

Eric:                          Yeah absolutely. I am happy and eager to [inaudible 00:45:58] any questions if you’re working on integration. If you have any stopping points or looking for high level strategies, feel free to send me a note.

Danny:                    The key thing from this is we hope that this has given everybody sort of an overview of 10 different things that you’ll want to take a look at, both on the Salesforce Side and on the Microsoft 365 side. If there are follow up questions or more or you want to dive into more detail, if you go to the contact us section of our website this will actually schedule a meeting with me and I’ll pull Eric in on it as well if you want to maybe dive into both the BI subject, I’ll pull [Bowin 00:46:44] for that or if you want to talk more about integrating Salesforce with Microsoft 365. Feel free to set up a follow up call with me, I’d love to talk to you more about that.

Really appreciate everybody taking the time today to learn more about this important subject. Also, you’ll get an email from me next week that will have a link to this recorded session and with that I hope … Eric, once last time, thank you for taking the time to do this.

Eric:                          Great, thank you for having me.

Danny:                    You bet. And everybody have a wonderful week and enjoy yourself this weekend and thanks again for taking the time to join us today. Thank you. Bye. Bye.

Share and Enjoy !

Related Content: