1

我为“纠正措施”制定了工作流程。在这里,颁发者将向用户颁发 CA。如果他对此作出答复,则批准人应对其进行审查。在这里,对于审批者,我为任务创建了一个名为“CA Review”的内容类型,我在其中添加了一个下拉字段“Outcome”。

在工作流中,对于审阅任务,在调用方法中,我将内容类型附加到任务。这工作正常,我可以在任务编辑表单中看到“结果”。

如果任务更改,我需要“结果”的值来设置其他字段。在这里,我正在使用任务更改事件的属性之后。但这会返回“null”。这是我获取结果值的代码。

private void checkTheRespondeApproval(object sender, ConditionalEventArgs e)
    {
        var props = this.onReviewTaskChanged_AfterProperties1.ExtendedProperties[GetWorkflowFieldId("Outcome")];
        e.Result = (props.ToString() == "Approved");
    }

这里的“道具”正在变得“空”。请帮助我获得结果值。“GetWorkflowFieldID”的代码如下;

private Guid GetWorkflowFieldId(string pFieldName)
    {
        foreach (SPField item in workflowProperties.Item.Fields)
        {
            if (item.Title == pFieldName)
                return item.Id;
        }

        return Guid.Empty;
    }
4

1 回答 1

0

好了朋友们,

我找到了答案。问题在于我正在寻找错误集合的字段 ID。我应该得到内容类型的字段 id。下面是我写的获取ID的函数。它现在正在工作。

private Guid GetContentTypeFileID(string pFieldName)
    {
        foreach (SPField item in workflowProperties.Web.ContentTypes["CAReview"].Fields)
        {
            if (item.Title == pFieldName)
                return item.Id;
        }

        return Guid.Empty;
    }

我希望这对你也有帮助。

于 2013-01-04T02:40:54.353 回答