Site里有两个List, List A 的工作流是,创建了item就发邮件给该item中的一个字段。
List B 中的工作流是创建一个item给List A,赋这个字段的值。
List B 的工作流无法唤起List A 的工作流(无法发信),List A 工作流已设置为“创建项目时自动启动工作流”。
请问有什么方法能让List B 中的工作流唤起List A的工作流吗?
谢谢。 HiMyles,根据您的描述,我做了些简单的测试,ListB中满足特定条件,触发workflowB,在ListA中创建一个新item。然后在ListA中创建一个workflowA,当有新item时发送邮件给相应的User。在这种情况下,发现由workflowB创建的新item,无法触发workflowA。经过一些搜索,造成这个情况的原因可能是因为这些由workflow创建的新Item,是经由系统账号(systemaccount)在ListA中创建的。而SharePointOnline2013workflow不能识别到由systemaccount创建的item,因此触发不了workflowA。这也就是为什么当去ListA,可以手动触发workflowA。
HiMyles,根据你的描述,ListB的工作流无法触发ListA的工作流。引起工作流不触发的可能的原因有以下几点,请参考:ListB的工作流创建到ListA的item状态如果是checkedout,将无法触发ListA的工作流。因为工作流无法在一个checkedout状态的item上启动。因此,需要检查创建在ListA的item是否处于checkedout状态,确保item处于checkedin状态。触发ListB的工作流的用户,如果想触发ListA的工作流,也需要拥有ListA的“编辑”权限。因此,需要确认用户是否同时拥有ListA和ListB的“编辑”权限。如果选择了“创建项目时自动启动工作流”,确认把这个选项的更新“发布”到了SharePointOnline。如果没有再次“发布”,这个选项不会起作用。若问题还存在,请告知以下信息:ListA的newitem是否checkedin状态?用户是否同时拥有两个list的“编辑”权限?请给一个ListA工作流的截图。工作流有任何报错信息吗?如果有请提供一下。Thanks,Rena
谢谢你详细的。针对可能的原因:1.ListA是一个普通的list,由ListB中工作流在ListA创建的item如下图。请问怎么判断这是否是checkin状态?在如图状态下点击workflows,手动启动ListA的工作流是好用的。2.两个List都是我创建的,我也分别查了,都有FullControl权限。3.我在SharePointDesigner再次发布了两个List的工作流。ListA的工作流很简单,只是在创建项目时启动(允许手动启动),给一个字段的邮箱发信。ListB的工作流是为了在ListA中创建item,并且现在看来是成功的,只是ListA创建时启动的工作流不被唤起。没看到工作流提示错误。查看由ListB中工作流在ListA创建的item的workflows,发现没有运行中的工作流和已完成的工作流,手动点击工作流可触发,正常收到信。请问如何查看itemcheckin的状态?谢谢。:)此是否有帮助?是否抱歉,这没有帮助。太棒了!感谢你的反馈。你对此的满意度如何?感谢你的反馈,它能帮助改进网站。你对此的满意度如何?感谢你的反馈。
HiMyles,根据你的截图,文档周边没有绿色的箭头比如,说明文件并不处于checkout状态。所以可以排除问题和这个的关系。为了继续排查问题,请提供以下信息:手动添加一个item到ListA,是否能自动触发ListA的工作流?提供一张listB的工作流截图。Thanks,Rena
HiRena,谢谢你的耐心。关于排查:1.手动在ListA添加item能触发工作流。2.ListB工作流如图这里为了测试把间隔时间写为1min,本来的目的是间隔一天,循环很多次。每天都更新ListC中一项,为其+1,ListC中另一项是一个calculate值,算出修改日期。如果是这一天是12号,就把相关列写入ListA(至此一切顺利,问题在于ListA的工作流未被唤起).这是我想到的取当前日期的方法,项目要求是每月的某一天(例如这里的12号),筛选出符合的项目发信。如果有更好更方便的方法,
HiMyles,请按照以下步骤把list的template和workflow的template发给进行进一步的问题排查:点击ListWorkflow选取相应的workflow并点击菜单里的“saveasTemplate”。选取相应的list,点击listsettings>在PermissionsandManagement栏选择“Savelistastemplate”>输入文件名和描述,如果保密隐私可不勾选“Includecontent”>点击确定>listtemplategallery>选择template>点击File菜单里的“Downloadacopy”将保存的list和listworkflow的template通过私密邮件链接发给,我已发了一封邮件给您:https://answers.microsoft.com/en-us/privatemessages/listThanks,Rena
HiMyles,根据您的描述,我做了些简单的测试,ListB中满足特定条件,触发workflowB,在ListA中创建一个新item。然后在ListA中创建一个workflowA,当有新item时发送邮件给相应的User。在这种情况下,发现由workflowB创建的新item,无法触发workflowA。经过一些搜索,造成这个情况的原因可能是因为这些由workflow创建的新Item,是经由系统账号(systemaccount)在ListA中创建的。而SharePointOnline2013workflow不能识别到由systemaccount创建的item,因此触发不了workflowA。这也就是为什么当去ListA,可以手动触发workflowA。
HiTim,非常感谢您的排查与。我分别尝试了你的两个建议,都能成功的唤起其他工作流,成功收到邮件。再次感谢您与Rena为我的付出的时间与精力。谢谢。?Myles此是否有帮助?是否抱歉,这没有帮助。太棒了!感谢你的反馈。你对此的满意度如何?感谢你的反馈,它能帮助改进网站。你对此的满意度如何?感谢你的反馈。