使用SharePoint和云流自动化文档存储

在本文中,将探讨如何利用SharePoint和云流(Cloud Flow)来自动化文档存储的过程。这个过程涉及到从Model-Driven App上传文件到SharePoint文档库,并在上传后更新相关记录。将以“Account”表为例,并在其中创建了一个名为“URL”的自定义列来存储文件的URL。

概述

本文不包括配置SharePoint以使用Model-Driven App进行文档存储所需的步骤。如果需要了解集成细节,请访问相关链接。当从Model-Driven App上传文件并创建在SharePoint文档库中时,云流将被触发。

创建云流

首先,需要创建一个云流,并添加“当文件创建(仅属性)”的触发器。接下来,配置以下属性:

  • 站点地址(Site Address)
  • 库名称(Library Name)

为了上传Dataverse行,需要GUID。虽然GUID不能直接以纯文本形式获取,但可以从触发器的“Folder path”属性中提取它。其值类似于“account/test_67B9406FCBB7EB118236000D3A6A4A8A/”。需要从中提取GUID。以下是使用的完整表达式:

C# replace(last(split(triggerOutputs()?['body/{Path}'],'_')),'/','')

需要解释吗?

split(triggerOutputs()?['body/{Path}'],'_')

将“account/test_67B9406FCBB7EB118236000D3A6A4A8A/”从“_”处分割成两部分。使用last函数将返回“67B9406FCBB7EB118236000D3A6A4A8A/”。使用了replace函数来移除最后的“/”。

在第二步中,得到了GUID,但它不是可以用来获取或更新行的格式。需要将其从“67B9406FCBB7EB118236000D3A6A4A8A”转换为“67B9406F-CBB7-EB11-8236-000D3A6A4A8A”格式。以下是实现这一转换的表达式:

C# concat(substring(variables('StringGUID'), 0, 8),'-', substring(variables('StringGUID'), 8, 4), '-', substring(variables('StringGUID'), 12, 4), '-', substring(variables('StringGUID'), 16, 4), '-', substring(variables('StringGUID'), 20, 12), "")

在本文中,已经解释了这个表达式。

最后一步是使用格式化后的GUID来更新记录。为了演示目的,创建了一个自定义字段“URL”,并在其中填充了文档的URL。

沪ICP备2024098111号-1
上海秋旦网络科技中心:上海市奉贤区金大公路8218号1幢 联系电话:17898875485