Blazor is a new Microsoft technology for building client web apps in C#. I have spent a total of 2 hours experimenting with it so here is my beginners intro. If you are interested and want to save the 2 hours I spent hacking together some CM SDK code you can find my project on the samples repo.
TrimSearchDataStream provides a much faster though functionally limited search experience in Content Manager, see the sample code or watch the video.
I stumbled on an odd problem the other day. A CM web client instance authenticating use WS-Fed (ADFS). The user could sign-in without problem but when they attempted to sign-out they got the response below.
The default behaviour in Content Manager is to update the data LastUpdated when getting an electronic document from a Record. This can be problematic, particularly in cases where you want to get the document every time the Record changes. Thankfully this update can be override.
Maybe you have a testing or POC database in which you have a bunch of Saved Searches and you want to export these and import them to your production database. These Powershell scripts will export and import the search related properties, not the ACL of course.
In a previous post I described my initial experiments with Microsoft Logic Apps. For this post I have created a trigger on Content Manager so that the Logic App can react to modifications to Records. To make this work I needed to make a small modification to the ServiceAPI code, this could be applied to an existing CM installation via a ServiceAPI plugin.
Connect to Content Manager from Microsoft Logic Apps (or Flow) using a custom connector. A new, very simple, OpenAPI definition is available to assist in creating the Logic Apps custom connector.
Configuring the Web Client and Office integration to use Azure AD for authentication is a multi-step process. Here I run through a simple scenario to get this working, first in a video and following some sample config.
When writing a web service that uses the CM SDK you need to take into account the fact that different users may be in different time zones. The SDK date/time object, TrimDateTime operates, buy default, in the same time zone as the operating system. To ensure you set dates correctly you need to convert it to operate in the same time zone as the user. The sample code demonstrates how to do this, for more detail have a look at this video.
The new Power BI connector simplifies accessing CM data from Power BI, as long as you have a ServiceAPI instance available.
This new sample add-in allows you to compose the Record Title from other properties and fields, replacing text in angle brackets with the matching property or field.
When posting a date to an Additional Field in the web service the date returned in the response is incorrect, even though the date set in CM is correct. The problem is caused by a bug in handling time zone offsets. The scenarios in this post assume that:
- all actors (web service, client, WGS) are using the same time-zone settings, and
- dates are always sent as UTC (not local) dates.
As of Monday 15th July 2019 I have moved the hosting for this web site from Squarespace to Github pages. The main motivation for this was to consolidate with our samples repo. The only annoyances I expect for readers of this blog are:
- links to individual posts have changed, all posts can be found in the index
- the RSS feed link as changed, select the RSS link at the bottom of the page to subscribe to this blog.
While grouping search results is not something that CM does out of the box it can be achieved with little work. These samples demonstrate how you might group Record search results by owner Location.
One of the outputs from my recent experimentation with PowerBI and Power Query is this saved search connector. I do not spend much time in Excel myself but I know that it is popular out there in the real world. If you would like to see something more/different contact me on the forum or through the usual channels.
If you prefer to receive a JSON error response when downloading a file then append format=json in the query string.
It might be the case that some CM users have permission to view a Record metadata but not the electronic document. In this case they will get a message like the one below when they open a document link.
The steps are not too difficult but I manage to forget them between times, so here they are.