Add-in Error: something went wrong and we couldn't start this add-in - sharepoint

I'm following this link to run an Excel add-in.
I have followed this video and configured localhost such that Home-simple.html works well in a browser:
I have written SheetSwitcherManifest-online-3.xml:
<?xml version="1.0" encoding="UTF-8"?>
<OfficeApp xmlns="http://schemas.microsoft.com/office/appforoffice/1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="TaskPaneApp">
<Id>9475b9bb-ff88-476f-917d-33a9c632508a</Id>
<Version>1.0.0.0</Version>
<ProviderName>Microsoft</ProviderName>
<DefaultLocale>en-US</DefaultLocale>
<DisplayName DefaultValue="Sheet Switcher - 3" />
<Description DefaultValue="Sheet Switcher - 3" />
<Capabilities>
<Capability Name="Workbook" />
</Capabilities>
<DefaultSettings>
<SourceLocation DefaultValue="http://localhost/Downloads/Excel-Add-in-JS-SheetSwitcher-master/TextEditor/Home-simple.html" />
</DefaultSettings>
<Permissions>ReadWriteDocument</Permissions>
</OfficeApp>
However, uploading this add-in in Excel online gives an error:
Could anyone help?

For DefaultValue="file:///Users/softtimur/Downloads/Excel-Add-in-JS-SheetSwitcher-master/TextEditor/Home-simple.html", this is definitely incorrect because the file needs to be hosted on IIS (https://), rather than being a file:// reference.
For https://localhost:44300/Users/softtimur/Downloads/Excel-Add-in-JS-SheetSwitcher-master/TextEditor/Home-simple.html, does that link work in the browser for you? It looks suspiciously like the file:// one, with a localhost:44300 prefix. Did you set up your IIS server to point at the very root of the C: drive (that would be rather unusual)? It would be more common to have it point at a folder, and have the address look more like https://localhost:44300/TextEditor/Home-simple.html

Related

Office JS add in Network Share

We are trying to deploy an office excel addin for testing purposes on a network share. We tried using the preferred approach of Microsoft Admin Center. It loads the adding successfully for Excel online, but for some reason it does not work for the local installation of office 365 on the user's machine. We quickly discovered that they use a on premise ad server and according to the documentation this is not supported.
We then tried hosting the addin on a network share so we can at least get going while we figure out a way to deploy the addin in a more appropriate fashion. However no matter what we do, the add in does not appear under the shared folder tab.
I am sure it is something simple, but for the life of me I cannot figure it out. We have run npm validate and this has not found any issues. Any thoughts or suggestions would be appreciated.
Here is our XML file (redacted with ----):
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<OfficeApp xmlns="http://schemas.microsoft.com/office/appforoffice/1.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:bt="http://schemas.microsoft.com/office/officeappbasictypes/1.0" xmlns:ov="http://schemas.microsoft.com/office/taskpaneappversionoverrides" xsi:type="TaskPaneApp">
<Id>974191fc-621f-423d-9364-eb9d7b7e3ae8</Id>
<Version>1.2.3.0</Version>
<ProviderName>-----------------------</ProviderName>
<DefaultLocale>en-US</DefaultLocale>
<DisplayName DefaultValue="-------------------"/>
<Description DefaultValue="-------------------"/>
<IconUrl DefaultValue="https://localhost:3000/assets/icon-32.png"/>
<HighResolutionIconUrl DefaultValue="https://localhost:3000/assets/icon-64.png"/>
<SupportUrl DefaultValue="https://www.contoso.com/help"/>
<!-- <AppDomains>
<AppDomain>https://www.contoso.com</AppDomain>
</AppDomains> -->
<Hosts>
<Host Name="Workbook"/>
</Hosts>
<Requirements>
<Sets DefaultMinVersion="1.1">
<Set Name="SharedRuntime" MinVersion="1.1"/>
</Sets>
</Requirements>
<DefaultSettings>
<SourceLocation DefaultValue="https://localhost:3000/taskpane.html"/>
</DefaultSettings>
<Permissions>ReadWriteDocument</Permissions>
<VersionOverrides xmlns="http://schemas.microsoft.com/office/taskpaneappversionoverrides" xsi:type="VersionOverridesV1_0">
<Hosts>
<Host xsi:type="Workbook">
<Runtimes>
<Runtime resid="Taskpane.Url" lifetime="long" />
</Runtimes>
<AllFormFactors>
<ExtensionPoint xsi:type="CustomFunctions">
<Script>
<SourceLocation resid="Functions.Script.Url"/>
</Script>
<Page>
<SourceLocation resid="Taskpane.Url"/>
</Page>
<Metadata>
<SourceLocation resid="Functions.Metadata.Url"/>
</Metadata>
<Namespace resid="Functions.Namespace"/>
</ExtensionPoint>
</AllFormFactors>
<DesktopFormFactor>
<GetStarted>
<Title resid="GetStarted.Title"/>
<Description resid="GetStarted.Description"/>
<LearnMoreUrl resid="GetStarted.LearnMoreUrl"/>
</GetStarted>
<FunctionFile resid="Taskpane.Url"/>
<ExtensionPoint xsi:type="PrimaryCommandSurface">
<CustomTab id="Navi.Tab">
<Group id="Navi.Tab.Group1">
<Label resid="Group1.Label"/>
<Icon>
<bt:Image size="16" resid="Icon.16x16"/>
<bt:Image size="32" resid="Icon.32x32"/>
<bt:Image size="80" resid="Icon.80x80"/>
</Icon>
<Control xsi:type="Button" id="TaskpaneButton">
<Label resid="TaskpaneButton.Label"/>
<Supertip>
<Title resid="TaskpaneButton.Label"/>
<Description resid="TaskpaneButton.Tooltip"/>
</Supertip>
<Icon>
<bt:Image size="16" resid="Icon.16x16"/>
<bt:Image size="32" resid="Icon.32x32"/>
<bt:Image size="80" resid="Icon.80x80"/>
</Icon>
<Action xsi:type="ShowTaskpane">
<TaskpaneId>ButtonId1</TaskpaneId>
<SourceLocation resid="Taskpane.Url"/>
</Action>
</Control>
</Group>
<Label resid="CustomTab.Label" />
</CustomTab>
</ExtensionPoint>
</DesktopFormFactor>
</Host>
</Hosts>
<Resources>
<bt:Images>
<bt:Image id="Icon.16x16" DefaultValue="https://localhost:3000/assets/logo-full.jpeg"/>
<bt:Image id="Icon.32x32" DefaultValue="https://localhost:3000/assets/logo-full.jpeg"/>
<bt:Image id="Icon.80x80" DefaultValue="https://localhost:3000/assets/logo-full.jpeg"/>
</bt:Images>
<bt:Urls>
<bt:Url id="Functions.Script.Url" DefaultValue="https://localhost:3000/functions.js"/>
<bt:Url id="Functions.Metadata.Url" DefaultValue="https://localhost:3000/functions.json"/>
<bt:Url id="GetStarted.LearnMoreUrl" DefaultValue="https://go.microsoft.com/fwlink/?LinkId=276812"/>
<bt:Url id="Taskpane.Url" DefaultValue="https://localhost:3000/taskpane.html"/>
</bt:Urls>
<bt:ShortStrings>
<bt:String id="Functions.Namespace" DefaultValue="----"/>
<bt:String id="GetStarted.Title" DefaultValue="---------"/>
<bt:String id="Group1.Label" DefaultValue="System"/>
<bt:String id="CustomTab.Label" DefaultValue="----------"/>
<bt:String id="TaskpaneButton.Label" DefaultValue="------------"/>
</bt:ShortStrings>
<bt:LongStrings>
<bt:String id="GetStarted.Description" DefaultValue="-------------"/>
<bt:String id="TaskpaneButton.Tooltip" DefaultValue="Click to show the taskpane."/>
</bt:LongStrings>
</Resources>
</VersionOverrides>
</OfficeApp>
The output of npm validate:
Validation Information:
Package Type Identified: Package of your add-in was parsed successfully.
Correct Package: Your package matches the submission type.
Valid Manifest Schema: Your manifest does adhere to the current set of XML schema definitions for Add-in manifests.
Manifest Version Correct Structure: The manifest version number has the correct structure for the platform that it supports.
Manifest Version Correct Value: The manifest version number is greater or equal to 1.0.
Manifest ID Valid Prefix: The product ID in the manifest has a valid prefix
- Details: 974191fc-621f-423d-9364-eb9d7b7e3ae8
Manifest ID Correct Structure: The structure of the product ID is correct.
- Details: 974191fc-621f-423d-9364-eb9d7b7e3ae8
Desktop Source Location Present: A desktop or default source location URL is found.
Secure Desktop Source Location: The manifest desktop source location URLs use HTTPS.
The manifest source location URLs are valid.: The manifest source location URLs are valid.
Supported Office Identified: Supported Office products were successfully determined.
Support URL Present: The manifest support URL is present.
- Details: https://www.contoso.com/help
Valid Support URL structure: The manifest support URL has valid structure.
Valid OnlineMeetingCommandSurface ExtensionPoint.: OnlineMeetingCommandSurface ExtensionPoint extracted from manifest is found to be valid.
High Resolution Icon Present: A high resolution icon element was expected and is present.
- Details: https://localhost:3000/assets/icon-64.png
Supported High Resolution Icon URL File Extension: The manifest high resolution icon URL has a valid image file extension.
- Details: png
Secure High Resolution Icon URL: The manifest high resolution icon URL uses HTTPS.
- Details: https://localhost:3000/assets/icon-64.png
Icon Present: A icon element was expected and is present.
- Details: https://localhost:3000/assets/icon-32.png
Supported Icon URL File Extension: The manifest icon URL has a valid image file extension.
- Details: png
The manifest icon URL uses HTTPS.: Secure Icon URL
- Details: https://localhost:3000/assets/icon-32.png
All GetStarted strings are present in Resources: All GetStarted strings are present in Resources
Acceptance Test Completed: Acceptance test service has finished checking provided add-in.
Based on the requirements specified in your manifest, your add-in can run on the following platforms; your add-in will be tested on these platforms when you submit it to the Office Store:
- Excel 2019 or later on Mac
- Excel on Windows (Microsoft 365)
- Excel on the web
- Excel on Mac (Microsoft 365)
Important: This analysis is based on the requirements specified in your manifest and does not account for any runtime JavaScript calls within your add-in. For information about which API sets and features are supported on each platform, see Office Add-in host and platform availability. (https://learn.microsoft.com/office/dev/add-ins/overview/office-add-in-availability).
*This does not include mobile apps. You can opt-in to support mobile apps when you submit your add-in.
The manifest is valid.
The manifest looks good. Just make sure the host application version supports the requirement set specified in the manifest file.
The process of sideloading add-ins from a network share is described in the Sideload Office Add-ins for testing from a network share article. Make sure that you did all the steps.
See Deploy and publish Office Add-ins for all available options.

Adding custom functions to existing excel add-in (generated by visual studio)

So I'm in the process of developing an add-in for excel. I started with the template generated by visual studio (not yeomon, since generating with VS made debugging setup easier). So far I've got some taskpane stuff set up to authenticate with a remote server, but now I've hit a problem trying to get custom functions running. The documentation is focused on yeomon-generated projects, and I've done my best to translate, but I seem to be missing something.
So what I've done so far:
For the sake of proof-of-concepting, I'm sticking with trying to get the samples provided in the OfficeDev repo working (https://github.com/OfficeDev/Excel-Custom-Functions). I've added the functions.ts from the sample (https://github.com/OfficeDev/Excel-Custom-Functions/blob/master/src/functions/functions.ts) to a MyAddInWeb/Custom directory in my project. I manually copied over the Functions.json and the Functions.html file generated by building the sample,and pointed the JSON-URL, JS-URL, and HTML-URL in my manifest to the respective file paths, as well as added an ExtensionPoint xsi:type="CustomFunctions tag and pointed script/page/metadata tags to the same files. The relevant portion of my manifest looks like this:
<?xml version="1.0" encoding="UTF-8"?>
<OfficeApp
xmlns="http://schemas.microsoft.com/office/appforoffice/1.1"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:bt="http://schemas.microsoft.com/office/officeappbasictypes/1.0"
xmlns:ov="http://schemas.microsoft.com/office/taskpaneappversionoverrides"
xsi:type="TaskPaneApp">
...
<!--Begin TaskPane Mode integration. This section is used if there are no VersionOverrides or if the Office client version does not support add-in commands. -->
<Hosts>
<Host Name="Workbook" />
</Hosts>
<DefaultSettings>
<SourceLocation DefaultValue="~remoteAppUrl/Home.html" />
</DefaultSettings>
<!-- End TaskPane Mode integration. -->
<Permissions>ReadWriteDocument</Permissions>
<!-- Begin Add-in Commands Mode integration. -->
<VersionOverrides xmlns="http://schemas.microsoft.com/office/taskpaneappversionoverrides" xsi:type="VersionOverridesV1_0">
<!-- The Hosts node is required. -->
<Hosts>
<!-- Each host can have a different set of commands. -->
<!-- Excel host is Workbook, Word host is Document, and PowerPoint host is Presentation. -->
<!-- Make sure the hosts you override match the hosts declared in the top section of the manifest. -->
<Host xsi:type="Workbook">
<!-- Form factor. Currently only DesktopFormFactor is supported. -->
<AllFormFactors>
<ExtensionPoint xsi:type="CustomFunctions">
<Script>
<SourceLocation resid="Functions.Script.Url"/>
</Script>
<Page>
<SourceLocation resid="Functions.Page.Url"/>
</Page>
<Metadata>
<SourceLocation resid="Functions.Metadata.Url"/>
</Metadata>
<Namespace resid="Functions.Namespace"/>
</ExtensionPoint>
</AllFormFactors>
<DesktopFormFactor>
...
</DesktopFormFactor>
</Host>
</Hosts>
<!-- You can use resources across hosts and form factors. -->
<Resources>
<bt:Images>
<bt:Image id="Contoso.tpicon_16x16" DefaultValue="~remoteAppUrl/Images/Button16x16.png" />
<bt:Image id="Contoso.tpicon_32x32" DefaultValue="~remoteAppUrl/Images/Button32x32.png" />
<bt:Image id="Contoso.tpicon_80x80" DefaultValue="~remoteAppUrl/Images/Button80x80.png" />
</bt:Images>
<bt:Urls>
<bt:Url id="JSON-URL" DefaultValue="~remoteAppUrl/Custom/Functions.json"/>
<bt:Url id="JS-URL" DefaultValue="~remoteAppUrl/Custom/Functions.js"/>
<bt:Url id="HTML-URL" DefaultValue="~remoteAppUrl/Custom/Functions.html"/>
<bt:Url id="Functions.Script.Url" DefaultValue="~remoteAppUrl/Custom/Functions.js" />
<bt:Url id="Functions.Metadata.Url" DefaultValue="~remoteAppUrl/Custom/Functions.json" />
<bt:Url id="Functions.Page.Url" DefaultValue="~remoteAppUrl/Custom/Functions.html" />
<bt:Url id="Contoso.DesktopFunctionFile.Url" DefaultValue="~remoteAppUrl/Functions/FunctionFile.html" />
<bt:Url id="Contoso.Taskpane.Url" DefaultValue="~remoteAppUrl/Home.html" />
<bt:Url id="Contoso.Callback.Url" DefaultValue="~remoteAppUrl/callback.html" />
<bt:Url id="Contoso.GetStarted.LearnMoreUrl" DefaultValue="https://go.microsoft.com/fwlink/?LinkId=276812" />
</bt:Urls>
<!-- ShortStrings max characters==125. -->
<bt:ShortStrings>
<bt:String id="Functions.Namespace" DefaultValue="CONTOSO" />
<bt:String id="Contoso.TaskpaneButton.Label" DefaultValue="Show Taskpane" />
<bt:String id="Contoso.Group1Label" DefaultValue="Commands Group" />
<bt:String id="Contoso.GetStarted.Title" DefaultValue="Get started with your sample add-in!" />
</bt:ShortStrings>
<!-- LongStrings max characters==250. -->
<bt:LongStrings>
<bt:String id="Contoso.TaskpaneButton.Tooltip" DefaultValue="Click to Show a Taskpane" />
<bt:String id="Contoso.GetStarted.Description" DefaultValue="Your sample add-in loaded succesfully. Go to the HOME tab and click the 'Show Taskpane' button to get started." />
</bt:LongStrings>
</Resources>
</VersionOverrides>
<!-- End Add-in Commands Mode integration. -->
</OfficeApp>
So here's where I hit the first hurdle. In Functions.ts, I got a typescript error complaining that CustomFunctions namespace is not defined. Not sure where that comes from in the sample. If I removed the type declaration (bad idea, I know), the add-in builds, and the custom functions show up are registered, but attempting to run any of them causes excel to hang on "We're starting the add-ins runtime, just a moment..." for a moment, and then I get an error in the task pane saying the add-in could not be started. Unfortunately, I'm not getting any usable error messages as far as I can see, so I'm not sure where the problem lies. If I had to guess, something isn't hooked up correctly in the manifest, but I'm not sure. Any help would be much appreciated. The documentation so far seems pretty lacking.
I believe I was having the same issue. For me turned out that the CustomFunctions interface was missing (it's automatically added if you select the custom functions template in the yo office-generator, but not if you don't use the Excel custom functions template option).
Comparing the project.json file from the Excel custom function template, I added #types/custom-functions-runtime and custom-functions-metadata-plugin packages which fixed the issues for me.
Can add with the lines below:
npm install --save-dev #types/custom-functions-runtime
npm install --save-dev custom-functions-metadata-plugin
if you're building against Visual Studio, I'd recommended configuring your manifest to use a shared runtime. This will essentially configure your custom functions to run in the same web container as your taskpane, which will allow to you to debug your functions.
You can follow the steps here:
https://learn.microsoft.com/en-us/office/dev/add-ins/excel/configure-your-add-in-to-use-a-shared-runtime
#1: Add a Runtimes element
<VersionOverrides xmlns="http://schemas.microsoft.com/office/taskpaneappversionoverrides" xsi:type="VersionOverridesV1_0">
<Hosts>
<Host xsi:type="Workbook">
<Runtimes>
<Runtime resid="ContosoAddin.Url" lifetime="long" />
</Runtimes>
<AllFormFactors>
Where the resid points to your taskpane.
#2 Ensure the taskpane html has a reference to your custom functions javascript file as well.
Note: the shared runtime feature just hit general availability and requires manifest schema changes that may not be yet in 2019 so you may get a build error in Visual Studio, but you could at least use the VS Debugger.

Add-in Warning: License Information Missing or Expired

I am getting following error in Office Excel Add-in I developed using office.js, only on some machines.
Our add-in is a free. I have also found a few people complaining about this behavior for their free add-ins. It seems that this behavior is noticeable on few customer machines.
My manifest file:
<?xml version="1.0" encoding="UTF-8"?>
<OfficeApp
xmlns="http://schemas.microsoft.com/office/appforoffice/1.1"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:bt="http://schemas.microsoft.com/office/officeappbasictypes/1.0"
xmlns:ov="http://schemas.microsoft.com/office/taskpaneappversionoverrides" xsi:type="TaskPaneApp">
<Id>masked</Id>
<Version>1.0.0.0</Version>
<ProviderName>Invensys Systems Inc.</ProviderName>
<DefaultLocale>en-US</DefaultLocale>
<DisplayName DefaultValue="Configuration Assistant for Wonderware Online" />
<Description DefaultValue="Execute administrative tasks against your Wonderware Online InSight subscription."/>
<IconUrl DefaultValue="https://online.wonderware.com/TagAdministrator/Images/icon-administrator-x32.png"/>
<SupportUrl DefaultValue="https://www.wonderware.com/contact/contact-support ">
<Override Locale="en-US" Value="https://www.wonderware.com/contact/contact-support " />
</SupportUrl>
<AppDomains>
<AppDomain>https://wonderware.auth0.com</AppDomain>
</AppDomains>
<Hosts>
<Host Name="Workbook" />
</Hosts>
<Requirements>
<Sets DefaultMinVersion="1.2">
<Set Name="ExcelApi" />
</Sets>
</Requirements>
<DefaultSettings>
<SourceLocation DefaultValue="https://online.wonderware.com/TagAdministrator/" />
</DefaultSettings>
<Permissions>ReadWriteDocument</Permissions>
</OfficeApp>
My addins from Office Store
Data Assistant for Wonderware Online InSigh
Configuration Assistant for Wonderware Online

Unable to import Excel Add in in Excel Online

Hi I have taken a sample github project https://github.com/OfficeDev/Excel-Add-in-JS-QuarterlySalesReport/blob/master/Readme.md ,
and after making a few changes in manifest was able to successfully import the add in in my desktop excel app Version 1611 Build 7571.2006 ( the add-in web app was running on my local box itself)
Now i am trying to upload this add on online excel, while my web app runs on my local box but I am getting this error on online excel
Here is the manifest i upload to online excel (this manifest file is same as the manifest which works on excel desktop except that i replaced the ip address from 127.0.0.1 to my public ip )
<?xml version="1.0" encoding="UTF-8"?>
<OfficeApp xmlns="http://schemas.microsoft.com/office/appforoffice/1.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:bt="http://schemas.microsoft.com/office/officeappbasictypes/1.0" xmlns:ov="http://schemas.microsoft.com/office/taskpaneappversionoverrides" xsi:type="TaskPaneApp">
<Id>adc22a5f-62c5-472e-b258-2ae44be6fccf</Id>
<Version>1.0.0.0</Version>
<ProviderName>ML LABS</ProviderName>
<DefaultLocale>en-US</DefaultLocale>
<DisplayName DefaultValue="ML LABSII" />
<Description DefaultValue="ML LABSII"/>
<Hosts>
<Host Name="Workbook" />
</Hosts>
<DefaultSettings>
<SourceLocation DefaultValue="http://172.22.136.62:3000/" />
</DefaultSettings>
<Permissions>ReadWriteDocument</Permissions>
</OfficeApp>
I have tried and the web app loads from other machine browsers with no issues.
One possible issue is that you have an http URL, whereas it needs to be https (esp. for Office Online).

PowerPoint Online Bug

When viewing a slideshow in PowerpointOnline created with add-in, slides containing add-in’s content do not appear to load. Error message
Error
I think this error is a bug of PowerPoint Online.I have created the other apps, that are already in MS Store market. They work without errors in read mode, but bring the same error in full screen mode. Please, look at this screen video:
yadi.sk/d/mtypZZx-wNSst
yadi.sk/i/coV_DWvQwNUTf
I think there is a problem with using sharepoint Add-in files with PowerPoint Online for all webservices in fullscreenmode.
It's really bug or it's my error?
Manifest text:
<?xml version="1.0" encoding="UTF-8"?>
<!--Created:cb85b80c-f585-40ff-8bfc-12ff4d0e34a9-->
<OfficeApp xmlns="http://schemas.microsoft.com/office/appforoffice/1.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ContentApp">
<Id>9136e827-53ab-4d0c-852a-05e9d3d1bdd1</Id>
<Version>1.0.0.0</Version>
<ProviderName>PROJECT</ProviderName>
<DefaultLocale>en-US</DefaultLocale>
<DisplayName DefaultValue="PROJECT" />
<Description DefaultValue="PROJECT DESCRIPTION"/>
<IconUrl DefaultValue="URL" />
<HighResolutionIconUrl DefaultValue="URL" />
<SupportUrl DefaultValue="URL" />
<AppDomains>
<AppDomain>URL</AppDomain>
<AppDomain>URL</AppDomain>
</AppDomains>
<Hosts>
<Host Name="Presentation" />
</Hosts>
<DefaultSettings>
<SourceLocation DefaultValue="URL" />
<RequestedWidth>1000</RequestedWidth>
<RequestedHeight>600</RequestedHeight>
</DefaultSettings>
<Permissions>ReadWriteDocument</Permissions>
</OfficeApp>

Resources