Sql server 使用Azure Logic App根据创建字段的最大值从SharePoint列表中提取记录

Sql server 使用Azure Logic App根据创建字段的最大值从SharePoint列表中提取记录,sql-server,azure-logic-apps,Sql Server,Azure Logic Apps,我有一个包含652行的SharePoint列表创建的(记录创建的时间戳)和修改的(记录更新的时间戳)是SharePoint列表的两个内置字段 使用Azure Logic App在本地SQL Server表中暂存所有这些652条记录以及创建的和修改的列。我已经在SQLServerAS VARCHAR(100)中创建了created和MODIFED列。SQL Server表中创建的列值示例-2021-01-15T06:43:00Z 现在,我的目标是从SQL Server表中选择Max(Created

我有一个包含652行的SharePoint列表创建的(记录创建的时间戳)和修改的(记录更新的时间戳)是SharePoint列表的两个内置字段

使用Azure Logic App在本地SQL Server表中暂存所有这些652条记录以及创建的修改的列。我已经在SQLServerAS VARCHAR(100)中创建了createdMODIFED列。SQL Server表中创建的列值示例-2021-01-15T06:43:00Z

现在,我的目标是从SQL Server表中选择Max(Created)Max(Modified),如果SharePointCreated字段大于SQLMax(Created),那么从下一次我想从SharePoint获取值时开始或SharePointModified字段大于SQLMax(Modified)

使用Azure逻辑应用程序是否可行


我们将非常感谢您的帮助。提前感谢。

这里提供两个选项供您选择:

<强> 1。< /强>您可以考虑在逻辑应用程序中使用“SharePoint连接器”触发器。如果此触发器可以满足您的要求,则无需检查“创建日期”和“修改日期”列的最大日期

2。如果选项1中的触发器不能满足您的要求,您可以在“”操作中使用如下查询:
select max(created)as maxcreated from table
。下面是我的逻辑应用程序:

初始化变量”操作中的表达式是:
body('Execute\a\u SQL\u query\uv2)?['ResultSets']?['Table1'][0]?['maxcreated']

运行逻辑应用程序,结果显示:

我可以知道您的逻辑应用程序的触发器吗?您介意使用sharepoint connector的触发器吗?如果使用此触发器,您可能不需要检查创建日期和修改日期。Hi@HuryShen,此触发器是重复的。实际上,源是SQL server,如果在SQL server中插入或更新了任何数据,那么我需要在SharePoint中插入或更新这些数据。这就是为什么我每天都使用递归运行once@AritraSarkar那么第二个选项对您的问题有帮助吗?谢谢@HuryShen,我现在可以从SQL Server表中初始化maxCreated变量了。在下一步中,我使用了Sharepoint Get items,并在过滤器查询中使用了表达式:Created gt{x}maxCreated。但获取以下错误:表达式“Created gt 2021-01-15T06:42:58Z”无效。我理解错误可能是因为maxCreated变量是字符串。现在如何继续?@AritraSarkar我将做一些测试,然后稍后回复您。@AritraSarkar在
maxCreated
之前/之后添加一对单引号。喜欢