Access Microsoft Onenote book/section/page with Matlab - matlab

I would like to read-out my locally stored Onenote book/section/page with Matlab and automatically search for specified strings. How can this be achieved? Does the Onenote API have to be interfaced or is there any easier way?
Here is what I have so far (online resources are scarce):
app=actxserver('onenote.application');
app.get(); %... to run some functions of the Onenote API?
I'm new to this and more information may be also useful for others. Here's the two references [1,2] that I found.
Related: accessing onenote in Java

If you can peform authentication in Matlab (or just paste in a token) and issue web requests, you can use the search API.
https://www.onenote.com/api/v1.0/pages?$search=...
Note that search only works with consumer accounts/notebooks that are synced to the cloud.
I am not sure how you could interface this with matlab, but if you are running on Windows you could use the interop API (this would be a local solution)
How To Write To A OneNote 2013 Page Using C# and The OneNote Interop

Related

Is it possible to include calls to the Microsoft Graph API from within a Windows Service application?

We currently have a web application which requires manual intervention in order to initiate the transfer of data from Azure Active Directory (via the Microsoft Graph API) to a local SQL Server database instance for archival and reporting purposes. This manual process is often run multiple times per day.
Our goal is to automate this data transfer process through use of a Windows service application; however, we have encountered an issue with instantiation of the Microsoft Graph client. The vast majority of the documentation available seems to presume the use of Microsoft Graph with a user interface (which the service app doesn't employ). Methods which work quite nicely with the typical MVC-based C# web application don't sit well within the more limited confines of a Windows service app.
Is this type of automation possible? If so, is there any sort of documentation available regarding the use of Microsoft Graph within a Windows service app?
Any assistance is greatly appreciated.
There is a documentation where is described how to call Graph API from a background service or daemon app without any user interaction. The same way will work for Windows service.
Documentation
Get access without a user

Use Office.js APIs from outside an Office Add in

In the Office.js docs one reads the following about the new ExecuteAsync() method/pattern:
"This also allows us to use the same APIs even outside of an Excel add-
in. Imagine, for example, that you wanted to call Excel APIs against an > Excel workbook stored in OneDrive, but you wanted to do so from a stand-> alone web application, rather than one running inside Office 2016 for
Windows or Office Online. This async model lends itself well to that
capability."
Nevertheless, I wasn't able to find any explanation on how to implement such functionality in a standalone web application. Does anyone know how to do that?
This is referring to the new Excel REST API. Please see the documentation here: http://graph.microsoft.io/en-us/docs/api-reference/v1.0/resources/excel
Excel is so far the only Office host to support REST APIs, with the exception of OneNote's REST APIs which are independent from the Office.js effort.

How to use Java API?

I've been given an online API (just a website that hosts multiple functions and an API to use them. How do I use it? There's no jar file to implement or any other help. All I have is the site with the usable functions (e.g. typing in a countryname and getting back the countrycode) and the API documentation.
I want to be able to use those functions in eclipse. If I've understood correctly I need a jar file to import in eclipse? I'm unable to find a jar file on that website, even though it states that it's a free and easy to use API.
Please provide the link of the online API.
Statement is bit confusing. Are you looking at the API doc or actual API.
If the API is Online it should be REST Service Or the SOAP. If it is API doc then you need to download the libraries of the API and then need to use it.

Scripts or plug-ins for Tableau?

Can one write plug-ins for Tableau? Is Tableau equipped with any sort of general-purpose scripting language?
e.g., for generating visualizations that cannot be created using the default Tableau tools, or for doing k-means clustering on a dataset using various metrics, etc...
Tableau has several extension points at the moment.
If you publish to Tableau Server, On-Line or Public, then you can use
Tableau's JavaScript API to interact between your web app client and
the Tableau visualization. Your javascript can be notified of events
in the Tableau viz, and also effectively command it.
Instead of using the JavaScript API, you can include URL query parameters to pass filters, adjust the sizes and control a few other aspects. Similarly, you can append a format string like ".png" or ".pdf" or ".csv" to request a static snapshot in a particular format instead of an interactive object. You can't control as much via the URL as you can via the Javascript API, but the URL approach is very simple and easy for common cases.
With both Tableau Server visualizations and Tableau desktop
visualizations, you can create URL actions, so that users can select
data and then cause HTTP GET requests to URLS that are based on info in the selected data.
If you have a data source that Tableau doesn't yet provide a driver
for (there are many including ODBC), then you can write a program
using their data extract API to extract data from your custom source
and make it available to Tableau. You can also publish that source to
Tableau server as frequently as needed to keep your visualizations
current.
If you have specialized functions on your database server, you can
access them from Tableau calculations using their SQL pass through
functions. You can also define a Tableau connection using arbitrary
custom SQL which gives you another place to insert customizations.
Version 8.1 added integration with R so you can call R scripts from
Tableau calculated fields.
Version 8.2 added a REST API to Tableau Server for administrative functions
Version 9.1 adds a Web Connector that is designed to let you provide custom code to connect to web accessible data sources
Version 10.1 Tableau added TabPy a local HTTP Python server that lets you execute Python functions from Tableau in the same way you can call R functions. The same hooks have now been extended to allow calls to Matlab functions.
There are also command line programs, tabcmd and tabadmin, that work with Tableau server that you can use to send commands to the server from your own scripts, but the REST API may be more convenient in many cases.
Tableau released several open source libraries, tools and examples at https://github.com/tableau One of these libraries, the document API, allows you to programmatically modify some attributes of Tableau workbook files.
Tableau released an extensions API in 2018 to allow developers to add custom functionality to Tableau dashboards.
Version 2019.3 adds a MetaData API using GraphQL to allow clients to query for information about the fields, types and attributes available in data sources published to Tableau Server's data catalog.
Hopefully, they'll continue to add additional APIs and integration hooks, but those are most of the options available now.
At present, Tableau does not support plug-ins and does not provide a general-purpose scripting language.
There is a currently an Idea on the Tableau website to add Ruby as a scripting language which may cover some of the functionality that is required. The Ideas section is regularly reviewed by Tableau's Product Management team and is the best way of suggesting new functionality for Tableau's products.

Web-based document merge solution?

We are looking for a web-based document merge solution.
Our application is a web-based project management tool built using Xataface - PHP on Windows IIS + mySQL. We have a function that allows the user to generate a status report in Microsoft Word format based on data in the tool.
Currently this function is implemented using LiveDocX. We have a status report template, and LiveDocX performs the merge into the template using data from our project management tool.
The main drawback is LiveDocx is web-service based. We are looking to replace LiveDocX in order to reduce our dependence on the up-time of a third-party web-service that we cannot control.
Does anyone have any suggestions on a web-based document merge solution that I can install on my IIS or PHP based server?
In reading your question, I'm not sure if what you're after is actual mail merge or just simply populating a single Word template server-side. In either case, here are some things to get your started:
For mail merge (multiple document
results based on multiple records,
say, from a database), you can use
either the Open XML SDK for a VS
solution or access the Open XML
directly. In that case, these are
good articles to start with:
Mail Merge in WordProcessingML
Mail Merging with a Custom Client
Using the Open XML SDK 2.0
For direct single-document
population with data, these are good
libraries that use PHP:
PHP Word
PHP OpenXML API (not incredibly
mature, but a starting point)
If you are still looking for solution then you can try Aspose.Words for .NET
it is a commercial component (not free).