App Maker 文档审批模板:如何添加默认审批人

App Maker Document approval template : How can I Add Default Approvers

我使用文档审批模板,我想定义默认审批人和阶段。

我已尝试将自定义值关联到 EditRequest 页面中的 userpicker 小部件,以通过将位置从 onValueChange 更改为 onAttach 来定义默认批准者.我为邮件的批准者设置了默认值。

PageEditRequest/userPickerWidget:

函数关联到userPickerWidget的自定义值:

但我不知道如何将新阶段关联到另一个批准人...

我尝试了很多都失败了

你有什么想法吗?

我想在没有任何客户端交互的情况下获得这种类型的结果:

想要的结果:

回答你的问题:

how can I associate a new stage to an another approver

无论何时单击 + ADD STAGE 按钮,您都可以在方法 createStage 中添加预定义的审批人。您可以通过在 request.WorkflowStages 中添加 Approver 来完成此操作。

尝试这样做。如果它不起作用让我知道。我会尝试为您提供更多代码。

前面的答案指向解决用户手动添加阶段的问题。如果您希望自动添加所有阶段和所有批准者列表,请按照以下步骤操作。

  1. 打开Edit Request页面,在该页面中可以找到事件onAttach,该事件会在页面正在加载而数据尚未加载时触发。 DMS 模板已经为此事件提供了一个名为 startLoading() 的方法。
  2. 在名为 EditRequestPage_Request 的客户端脚本中找到 startLoading() 方法。此方法在内部调用 loadEditRequestPage() 方法。找到 loadEditRequestPage() 方法。
  3. 此方法正在将默认阶段(即阶段 1)添加到审批工作流程。我们需要在这里进行自动添加审批人的操作。
  4. 找到代码中的requestDs.relations.WorkflowStages.createItem行,这一行是Adding a Stage to the workflow。所以我们需要多次添加这一行来Add multiple stages。在我下面的代码中,我展示了 2 个阶段。

添加2个阶段和每个阶段1个审批人的代码。

if (requestDs.item.WorkflowStages.length === 0) {

    requestDs.relations.WorkflowStages.createItem(function() {
    var createDatasource = requestDs.relations.WorkflowStages.relations.Approvers.modes.create;
    var draft = createDatasource.item;
    draft.Email = 'darpan.sanghavi@abc.com';
    draft.Name = 'Darpan Sanghavi';          


    createDatasource.createItem(function(createdRecord) { });

    });      

     requestDs.relations.WorkflowStages.createItem(function() {
    var createDatasource = requestDs.relations.WorkflowStages.relations.Approvers.modes.create;
    var draft = createDatasource.item;
    draft.Email = 'darpan.sanghavi@xyz.com';
    draft.Name = 'Darn Alarm';          


    createDatasource.createItem(function(createdRecord) { });
    app.closeDialog();

    }); 

}
  1. 在上面的代码中,我在 requestDs.relations.WorkflowStages.createItem 调用中添加了一些行,这个调用正在创建一个阶段,在一个阶段中,我通过创建新的审批者数据源添加了预定义的审批者。

仍然可以更改此代码以合并用户缩略图等更改和其他一些更改,但这将帮助您开始。 Add/Change 根据需要编写代码。

Darpan 的代码确实在每个阶段自动添加了 2 个阶段和 1 个批准人,但是如果您从下面的屏幕截图中看到,Stage1 和 Stage2 都在 当前 审批状态。这意味着 Stage2 审批人可以在 Stage1 审批人批准之前先批准它。这不对吧?