【问题标题】:WSS 3.0 Workflow - How to get data from joined listsWSS 3.0 工作流程 - 如何从连接列表中获取数据
【发布时间】:2011-03-10 22:23:44
【问题描述】:

我在使用连接列表的 WSS 3.0 工作流中遇到问题。这是描述:

我正在创建一个简单的工作假期请求/预订应用程序。这仅供内部部门使用,以便员工可以预订年假并获得各自经理的授权。

为此,我有两个列表:第一个列表称为“员工”,包含人员姓名、电子邮件地址和经理姓名。经理姓名由同一列表中的下拉菜单填充。

第二个列表称为 HolidayRequest,包含名称(基于人员列表的下拉列表)、开始日期和结束日期字段。

每当有新条目进入 HolidayRequest 列表时,我想触发一个工作流,该工作流将向该人的经理发送电子邮件以通知他们进行批准。我遇到的问题是将经理的姓名和电子邮件地址纳入工作流程。我看到的问题是这些信息是通过加入列表获得的:

       HolidayRequest                          Staff
StartDate, EndDate, Name  ----------------->   Name, EmailAddress, Manager
                                                 /\                   |
                                                  |                   |
                                                  +-------------------+  

所以我需要让工作流使用 HolidayRequest 中的 Name 字段,在 Staff 列表中找到同名的记录,然后从该记录中获取经理的姓名,获取经理人员记录,从而经理的电子邮件地址。它不完全是火箭科学,但我无法在工作流程中弄清楚(使用 Sharepoint Designer)。

我想第一个问题是工作流是否是正确的工具,其次如果是,那么有没有办法可以实现我的需要?

感谢阅读。

【问题讨论】:

    标签: sharepoint wss


    【解决方案1】:

    好吧,事实证明我走在了正确的轨道上(正如我所想的那样),但我并没有完全理解 Workflow 进行查找的方式。答案如下:

    假设您有两个列表“HolidayRequest”和“Staff”。 HolidayRequest 具有“姓名”(在员工列表中查找)、开始日期和结束日期的字段。员工列表具有“姓名”、“电子邮件”和“经理”(这是对员工列表的查找 - 对同一列表的引用,但对不同的记录)。

    因为它涉及双重查找,所以有必要创建一个工作流变量来存储中间结果。因此,我创建了 Variable:ManagerName 来存储第一次查找中的经理姓名,然后将其用作第二次查找的键以提取经理的电子邮件地址。

    我最终弄清楚工作流查找的关键是了解它是如何进行连接的——老实说,我认为 SPD 中的“定义工作流查找”并不是很清楚。 DWL 有两个部分 - 一个标题为“查找详细信息”,在这里您告诉它您希望数据来自哪里(源列表和该列表中的一个字段),第二部分标题为“查找列表项” (这是我出错的地方) - 您使用它来创建两个列表之间的链接。条目“字段”是您告诉它数据源列表中的字段的位置(例如员工:姓名,例如),而“值”条目是您从另一个列表中提供相应字段的位置(因此,“变量:ManagerName”在我的示例中)。

    所以现在,当收到新的假期请求时,工作流使用来自 HolidayRequest 的名称作为对员工列表的查找,从员工列表中提取经理姓名,然后使用该名称对员工列表进行第二次查找- 这次是经理 - 并提取电子邮件地址。

    完美。

    现在我可以使用该电子邮件地址请求经理授权或拒绝该请求。

    【讨论】:

    • 嗨西蒙,我正在尝试为我的网站创建完全相同的东西。您是否有分解完成的工作流程的屏幕截图?我认为我在 DWL 方面失败了,我根本无法理解它是如何工作的!非常感谢任何帮助。詹姆斯欢呼。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-07-18
    • 1970-01-01
    相关资源
    最近更新 更多