API for Tracking changes / viewing revisions for Microsoft Word - node.js

In Microsoft Word, there is an option to track changes/view revisions pertaining to a specific document. I would like to know if there is any API to access those changes via an Office Add-In.
Also, via this link, the consensus is that there is no such API available. But since, this is an old post, we would like to know if the situation has changed.
Furthermore, according to this link, there is the presence of Reviewer object for VBA shown. However, is it valid for Office Add-In? If yes, Is it supported in other programming languages like Node.js. If it does, are there any code samples available?

The functionality you are asking about is still not supported in the JavaScript API for Word. Please make sure to add this request (or vote for an existing one) in our user voice channel. thanks.

Related

Find out which office.js requirement set my code is using

I would like to integrate into my CI/CD pipeline a requirement set condition.
I'm developing an Office.js Excel addin and I would like to track client compatibility.
There is a way to inspect code to detect the maximum value of requirement set?
The codebase is not so small, and I want to keep an eye on client compatibility.
Thanks
Good question! There is no tools for such tasks, developers are responsible for checking the requirement set before using a particular method or property in the code of Office add-ins.
Sounds like a subject for a feature suggestion. You can post or vote for an existing feature request on Tech Community where they are considered when the Office dev team goes through the planning process.
As far as I know, there is no automated way to see what Req Sets are used by your code. That would be a valuable tool. Consider suggesting it at Microsoft 365 Developer Platform Ideas.

Forms on SharePoint

I am trying to create a solution in SharePoint 365 (I am new in SharePoint). Below is what I am looking for:
1. A user logs in and opens a form which they fill details and forwards/submits to the supervisor for approval. There are about 20 fields to be filled
2. Once approved, a certificate, preferably in PDF, is generated based on the details entered by the user.
3. The 20 fields are made available for download in Excel whereby the 20 rows form 20 columns in the Excel.
I am not sure if SharePoint with designer or Infopath can accomplish this.
Hope you can assist me to know if this is possible and what extra tools I may need on top of SharePoint.
Your questions is very generic, it might be flagged by some moderator later. Anyway... for SharePoint Online (not SharePoint 365), you will need to write your solution using the SharePoint Framework (SPFx), to achieve this you will need to familiarize yourself with TypeScript, NPM, GULP, Yeoman Generator, React JS, and a to some degree of JavaScript.
The other possible way is to familiarize yourself with the Office 365 architecture, this options might be limited to fully achieve your goals but might be the best option if you are not a developer.
Basically you will need to create a "workflow", you can create using Flow (when a list item is submitted), inside the Flow you will read the fields submitted and send for user manager's approval (reading the property from user profile), and once the "workflow" is approved, you can capture the data, and send to Excel (you can even specify to which Excel flavor you want: Excel Online - Business, Excel Online - OneDrive, or simply Excel).
Once your Flow adds the information your target (Excel file), you add a new step in your Flow to use the "Adobe Sign" to use the create a certificate - you can use this step to get a document from an signed agreement or any other you find suitable there
You have the hard way by coding through SPFx or making your way through Flow (the easy way), it is now up to you, go with Flow, you will achieve this in probably a couple of hours.

Is there a way to restrict CRUD operations on Notes/Domino data using an alternative application?

We have a (super)user who has been using VBA in an Excel spreadsheet to create and manipulate documents in a Domino database application.
The user has 'Editor' access to the application, and should normally be able to create/edit the document contents.
They have been, however, creating documents using VBA. That logic doesn't consider such important document fields as Readers, Authors, etc. .
We would like to restrict access to all Domino data so that it can only be created/modified using an IBM Notes client.
I have tried looking through the ECL, but that only restricts what 'others' do.
Since he has his Notes client available, the external logic is using his normal Notes credentials.
I have tried setting a hidden field with the Notes client and looking for that in the QuerySave event of the form design.
Unfortunately, the external code pays no attention to the form events and the save is executed despite the missing field.
Similarly, the Database Script has no bearing on the execution of external logic.
I was going to inspect the client version upon database open and restrict activity based on a variance in the version (I was hoping!).
I have de-selected the 'Don't prompt for a password...' option in the user security preferences, but that has no effect at all (suspected as much!).
The ONLY thing I have been able to suggest is to hide the database design... That's really only designed to thwart a user's efforts to understand the underlying design.
It won't prevent them from creating hundreds of thousands of documents with a fictitious form and throwing the app into disarray.
I'm hoping that there is a solution out there that I'm missing.
The user has been instructed not to undertake such activity in the future.
We were lucky that there really wasn't any malicious intent - "Just trying to be more efficient" we're told.
The effects of the activity have been remedied, and the user has been warned.
What I want to know is... how can I prevent this from ever happening again?
The circumstances are rare I know, but I would've thought there'd be a means of restricting the platforms used to manage Notes/Domino data.
Is there a way to ensure no external applications are able to access, create or modify Notes database documents?
I am currently focussing on access to Notes via COM.
I thought that, if I unregistered 'nlsxbe.dll' from the registry, that would prevent such activity - It has not.
I also tried removing the .TLB files from the Notes executable folder - removal of 'notes32.tlb' and 'domobj.tlb' have no effect at all. Removal of 'ltsci3.tlb' screws everything up (as expected!).
I'm really having no luck at all - Any/all suggestions would be most appreciated!
I'm not aware of any way to detect that a connection has been made by standalone code instead of by the Notes client, but you do have two paths available to you:
A Domino server add-in that prevents documents from being saved in that particular database if certain criteria aren't met.
An agent that is triggered to run shortly after documents are saved or modified in that particular database. The agent code can delete (or modify, if you prefer) the documents that don't conform to the required criteria.
The server add-in route would normally require coding in C, but thanks to the Open NTF Trigger Happy project, the hard part is done for you, and the rest can be filled in with either LotusScript or Java agent code that is "triggered" by the pre-written C code. You will need to have some basic knowledge of how the Notes Extension Manager interface works, but once you get past that and write your agent code to enforce your data consistency/integrity requirements, the only real hurdle is your willingness to host open source code on your server.
There may be two other possibilities, but I can't say if either will solve or deal with the issue...
In the ECL you can disable 'COM' access for the user (also known as OLE or ActiveX) automation since VBA access is usually via COM. This has stopped Notes using external COM access for me, but I don't know if also prevents VBA using Notes. Additional steps may be needed to enforce the ECL and apply to the specific users.
There is an (old) notes.ini 'DisableExternalApps' (or something similar) that disables some external access. This can affect many things (DDE/Prompts/#dblookups) but again I don't know if this will disable VBA/COM and its not user specific, but server wide.
I would have thought that removing the nlsxbe.dll or restricting access to execute it might work, but the ECL may be the best bet.
Alternatively, rather than add hidden flags to your design (and the documents), and then delete the offending documents, your agent could apply the correct author/reader fields to the documents instead.
Very tricky. Did you find a better solution?

Custom workflow based on templates with multi-user e-sign

After initial browsing in Google, I couldn't work out the scope of DocuSign API.
I would like to know if it's feasible to implement these features
Multiple templates with custom form fields
Assign workflow to templates - multi-user e-signing by stages?
automate e-signing internally
User management/privileges - to create new document, recall/cancel, etc
Manage List of recipients - type association
Reporting such as; number of documents signed in the last month,
Please briefly explain what is DocuSign capable of and what needs to be developed differently
Thanks in advance
The general answer to your question is "yes." The DocuSign website, Developer Center, and Signature API reference documentation can help you understand the DocuSign Signature product and APIs.
If you have additional questions, you can talk with DocuSign staff, or try it for yourself. The Developer center enables you to create a free developer sandbox.
For API issues, you can also ask questions here on StackOverflow. Note that your questions should be much more specific than the questions you listed above. You also should show what you have already tried and what is not working for you.

Is it possible to develop for Office 365 (confusion due to new-to-365)

I'm not even sure if it's possible at all. Earlier, I've been designing addons to Outlook and Excel (using VSTO and VBA). Now, my company got into this Office 365 thinking and we have all our environment online, no local software at all, strictly and only web client approach.
It's got its advantages. But the downside is that out support have no clue how it works (except to tell us to click the settings and look for options, sigh). So, I wonder if it's possible to develop and somehow upload my own customizations (NB we have no servers in the cloud - everything is provided on SAS basis).
Suppose I'd like to:
mark all emails from a certain sender with yellow background in the list in Outlook, or
highlight every occurrence of the word "donkey" in the text mass in Word.
Is it doable at all?
I've googled for it but all I can see is that there's an API and that we need to runt the stuff on our own servers. Am I just confusing myself here?
First of all, if you have O365 subscription, you actually still have the ability to download all desktop version of Office. So your existing customizations should still work on Desktop version of Office.
Second,check out Office Add-in on dev.office.com. Office Add-ins extend the functionality of Office with a web app that lives within Office applications. They work similar to traditional VBA add-ons and we have a rich set of API that helps you interact with Office. This is basically a web app with JavaScript, HTML and CSS. You can build it with any tools you are familiar with and host it anywhere. It is really easy to build and let us know if you have more questions.
Thanks,
Sky
Your best bet for highlighting messages from specific senders would be to use the Outlook REST APIs to access the messages and either stamp a specific category color on the messages, or a flag to highlight the message in the list view. That approach would work across both Web, Outlook, and even Mobile (if you use flags). The new Outlook add-in model is powerful and works for Outlook on the Web, as well as Outlook on Windows, but doesn't allow you to update the colors of the list view add-ins.

Resources