我有一个列表,一旦提交了infopath表单,就会动态地存储数据。我想在任何数据创建日期30天后归档此数据。你能建议我怎么做看到我可以通过工作流程来做到这一点但是如何设置条件,即在创建任何列表后30天完成后它将自动复制到其他列表中。
答案 0 :(得分:7)
首先,我想问你为什么要将它移到另一个列表?
为什么不在主列表上设置一个只显示过去30天内创建的记录的视图: -
Created >= [Today]-30
答案 1 :(得分:3)
继续进行的最佳方法是创建计时器作业并在创建作业时定义标准(例如何时运行)。我们有一篇关于如何创建自定义作业的SharePoint MVP here非常有用的帖子。请注意,您可以在较短的时间内测试作业和业务逻辑,如果工作正常,您可以将作业持续时间延长30天。
非常简单,您所要做的就是在作业类的Execute方法中定义“复制列表”逻辑。 祝你好运
答案 2 :(得分:2)
我相信您可以简单地使用标准的开箱即用工作流程来完成此操作 - 无需计时器作业或控制台应用程序。
使用SharePoint Designer创建新工作流程(新建 - >> SP内容 - >工作流程)。指定要将工作流程附加到的列表。
指定工作流程仅从项目创建开始。
在第一步中添加操作:暂停持续时间。持续30天。
添加其他操作:复制列表项。指定要复制到的列表。
可选:创建第三个操作:删除列表项,如果您希望从原始列表中删除原始项目。
我认为就是这样:)
答案 3 :(得分:1)
你必须创建一个每天运行的计时器作业并移动一个月的项目
答案 4 :(得分:1)
最简单的解决方案可能是创建一个计划在SharePoint服务器上运行的控制台应用程序(另一种创建计时器作业的方法)。
根据您要归档数据的方式,您可以:
答案 5 :(得分:0)
5000个项目列表中的项目数量有限制,如果在管理中更改此项目,则会导致性能下降。想要将快速增长的列表中的旧项目存档是完全正确的理由。 exceeds the list view threshold 5000 items in Sharepoint 2010