我在 Sharepoint 中有一个任务列表,其中包含 ID、优先级和截止日期等字段。 我还有一个 TaskActions 列表,其中包含已分配任务的人员。 任务列表就像父列表。 TaskActions 列表就像一个子列表。
任务的 ID 是 TaskActions 列表中的一个查找字段,称为 TaskID。
我需要一个 Power Automate Flow 或逻辑应用程序来检索截止日期超过 6 周前的任务 ID。
然后,它从 TaskActions 列表和任务列表中删除这些任务。
我已使用 GetItems 检索任务,但我的 Flow 无法检索 TaskID,可能是因为它是查找字段。
我希望这张截图有助于解释事情。
按照以下分步过程从
Tasklists
列表中删除项目。
这是我在
Tasklists
中获取的样本数据。
首先使用 Sharepoint - 获取项目 操作来获取给定列表的项目。在过滤查询中,添加如下过滤条件。
concat('<deadline> gt ''',addDays(utcnow(),-42,'yyyy-MM-dd'),'''')
这将提供所有必需的项目。现在,对每个循环进行一次,并将该数组作为值赋予它。
在 For 循环内部使用 Sharepoint - 获取文件元数据 从文件元数据中获取所需的 Id。然后使用该 ID 删除该项目,如下所示。
这将删除
Tasklists
列表中的项目。
要删除另一个列表中具有相同
ID
的项目,请在上述操作之后的同一个 for 循环中添加以下操作。
首先使用获取项目与列表名称。在过滤器查询中给出以下表达式。
concat('ID eq ',items('For_each')?['ID'])
它将以数组形式提供所需的项目详细信息。之后,再次使用与上述相同的操作。首先使用获取文件元数据操作并获取此项元数据属性。在文件标识符中使用以下表达式。
body('Get_Items2')?['value'][0]?['{Identifier}']
这将给出项目元数据属性。现在,在此之后使用删除文件操作,并在文件标识符中给出以下表达式。
body('Get_file_metadata2')?['Id']
这样它也会删除其他列表中的所有文件。