I am currently implementing configurableBundle extension and testing the auto pick functionality. Is see that there is an "isAutoPick" function in configurableBundle addon. But I do not see any usages. In this article (https://help.sap.com/viewer/9d346683b0084da2938be8a285c0c27a/2005/en-US/8b887b9d866910148ac4c2ee46e16461.html?q=auto%20pick%20subscription), it states that the addToCart functionality is implemented in the subscriptionservice addon. But looking through the source code, I do not see the implementation for it. How does the auto pick functionality is implemented by default? If there is no default implementation, how would you set it up?
I tried to ask this question in community.sap.com but so far no answer. So I hope the StackoverFlow community is quicker and better with the response.
Best regards
Andy
Related
How to create a new project through Quire API? I can't find it in the documentation.
No, as of now this function is not implemented (and not included in the api-documentation accordingly).
If this is an important feature for you, you can propose a feature on github so others can vote for it as well. (Please only post specific bugs or feature requests there, for usage questions stackoverflow is the preferred forum)
I am looking for a documentation and code example on how following classes are can be used in the code. I am building a bot using nodejs v4 sdk.
SemanticAction Class
SkillState class
SkillContext
RouterDialog
This is likely going to be closed, but I'll point you in the right direction, to the extent possible.
SemanticAction - No docs are available for this, although this kind of covers it. Here's the reference. And here's how it's used in Virtual Assistant
SkillState - No docs for this. This is just a model and does nothing more than store the state of a skill
SkillContext - No docs for this. This is context to share between Bots and Skills
RouterDialog - No docs for this. It pretty much does what the name says and routes the user through dialog flows
There are little to no docs for this for a couple of reasons:
VA is still in preview and development priority is more or less C# > TypeScript > Docs
The main docs are here, but you're asking for documentation about very specific classes, which is unlikely to exist for nearly any SDK. For the most part, you need to read through the code to see how it works.
I don't know when this started happening or if things have changed but the _host_Info param is not being passed by the framework to my Excel Add-In in Excel Online.
It passes an empty "et=" parameter which is OK in this case since I'm in dev mode. The Excel desktop client is still passing it.
This is required by my add-ins to switch functionality between Excel Online and Excel for Windows.
I've checked the docs and can't find that anything has changed.
To append to Sudhi's answer: with the official API coming as per the link in Sudhi's answer, we've gone ahead and also added a "shim" for the API in the OfficeJsHelpers library.
The shim still uses the workaround code that Sudhi mentions -- window.sessionStorage['hostInfoValue'] -- but it wraps it in an API very similar to what is coming in the official Office.js. Once the official API is available, we'll switch the shim code to make use of that instead. The beauty of this approach is that if you use OfficeJsHelpers via an NPM package, all you have to do is update your package dependency, and you'll suddenly go from an unofficial and potentially-fragile workaround to an API that relies on 100% officially-exposed properties -- all without changing your own code! Likewise, if at that time you decide to switch back to using the official Office.js version, the similarity of the APIs (essentially just namespace differences) should make it trivial to switch over the implementations.
The helper APIs are OfficeHelpers.Utilities.host (which will return WORD, EXCEL, etc.) and OfficeHelpers.Utilities.platform (which will return IOS, PC, OFFICE_ONLINE, or MAC). The constants are defined in OfficeHelpers.HostType and OfficeHelpers.PlatformType.
You can find the NPM package at https://www.npmjs.com/package/#microsoft/office-js-helpers, and either install it via NPM, or use a CDN like Unpkg to quickly try it out: https://unpkg.com/#microsoft/office-js-helpers#0.4.2/dist/office.helpers.min.js
console.log(OfficeHelpers.Utilities.host);
console.log(OfficeHelpers.Utilities.platform);
if (OfficeHelpers.Utilities.platform === OfficeHelpers.PlatformType.OFFICE_ONLINE) {
console.log("Yep, I'm on the web client");
}
I hope you find the above helpful as an interim measure, and we'll be sure to update this StackOverflow thread (and the OfficeJsHelpers code) once the official API is released.
Jim and others who may be affected by this change: it is unfortunate that an unrelated change meant to improve the add-in experience caused the query string parameter in online platform to be removed. Note that URL query parameters and session storage settings are used to launch and setup the add-in environment and are not meant for developer consumption. However, we understand the importance of this to the developers as described in this thread.
Hence, we are adding formal APIs to make this information available. Please see the specs that describes upcoming APIs: https://github.com/OfficeDev/office-js-docs/tree/ContextAdditions_OpenSpec
Until the APIs become available (should be very soon), you could use the following temporary workaround. The same query host_info_ parameter value is available in the following variable: window.sessionStorage.hostInfoValue. Please note that this should be considered a temporary measure and you should switch to using the formal API as soon as they are made available. I'll update the this thread when the API is released, which should be available for all supported Office versions.
If you have any comments, please leave your comments on the specs directly in Github specification branch using the links provided.
UPDATE:
Please see my answer above, instead (https://stackoverflow.com/a/40963500/678505), as the scenario is now possible.
[Old response:]
Jim, could you describe your scenario more? Why is it that you need to distinguish between Online and Desktop?
For the disappearance of host_info_: you won't find it in the docs, because host_info_ was never in the docs. Anything not documented is an internal API, which might change as needed by the internal workings of Office.js. We take back-compat very seriously, but only for actual official documented APIs.
Without an API, there's not much you can do to tell the two apart (or rather, not without relying on other bits of internal workings which might also change over time). We've discussed this internally before, but found it surprisingly difficult to point to a particular scenario where the platform information was necessary and legitimate ("legitimate" in the sense that if you're using platform information to check whether an API is available, for example, that's precisely what we don't want you to do; we want you to use Office.context.requirements.isSetSupported instead).
If you can share your scenario details, I might be able to advise an alternate way of determining whatever you need, or have a solid scenario to bring back to the team.
I would like to get into Plugin development using the Gmail API and as such I would like to ask those who already have experience in it a few questions.
What language / languages should I be familiar with? I'm not familiar with Python, PHP, or JavaScript. Will I need to pick up on these?
What level of control do I have on what my plugin can do? Can I for example change the interface or add shortcuts or RSS feeds as a sidebar?
I know a lot of the examples mentioned already exist but I would like to try my own hand at it.
Peter posted a solid list of the official Gmail APIs.
On the other hand, most of the major plugins that you may have heard about are browser plugins that just modify the page source directly, even though there's no official API for it. There used to be a GreaseMonkey API that was a good starting point, but that wasn't supported and no longer works. Best place to start is with a copy of Chrome, creating a content-injection plugin that works on the Gmail page.
Happy to provide some further details if you can clarify what you're going for since I went through this myself a few months back.
Does anyone know where Databasic originates from, and any resources that could help me learn this language?
I'm assuming it's Basic but looking at some sample code there are database-specific features.
I recommend looking at the official documentation: http://download.northgate-is.com/reality/V14%20Manuals/help.htm
The company's web page also might have some useful information: http://www.northgate-reality.com/products.php
There is also DataBASIC that was developed by Metso Automation. It is a Basic variant that includes Database access commands, and has been used in Metso and Telvent products. I've been unable to find any Web resources on it, and depend on the documentation that comes with my Telvent product.