【问题标题】:Substatus should not default to 'resolved' when SR status is set to 'closed'当 SR 状态设置为“关闭”时,子状态不应默认为“已解决”
【发布时间】:2015-06-05 16:52:34
【问题描述】:

我对 Siebel CRM 有要求。当状态字段设置为关闭时,客户端不希望将子状态字段设置为已解决。这是 Siebel vanilla 的默认行为,如何更改它?我曾尝试使用 Siebel 工具。是工作流程吗?

业务组件为Service Request,小程序为Service RequestDetailed Applet。

【问题讨论】:

    标签: siebel


    【解决方案1】:

    这是类行为。我尝试了 bc 用户属性、运行时事件和脚本,当状态设置为关闭时,无法将 Sub-Status 的值保留为旧值。当 SR 关闭时,子状态自动设置为“已解决”

    解决方法 1:如果您的客户不希望那里的值“已解决”,您可以在 LOV 中停用该值 (LOV_TYPE='SR_SUB_STATUS')。现在可以关闭 SR,子状态将保持空白,因为找不到“已解决”值。如果用户想自己设置,您可以要求用户为子状态选择值“已完成”。

    解决方法2:如果您的要求是在 Status='Closed' 时永远不会有子状态值,您可以尝试在发生这种情况时将子状态字段设为空白。

        function BusComp_PreWriteRecord()
        {
    
            if (this.GetFieldValue("Status") == "Closed")
            {
                this.SetFieldValue("Sub-Status", "");
            }
            return (ContinueOperation);
        }
    

    但是当 Status='Closed' 时永远不能设置 Sub-Status

    解决方法 3:也许您有一个工作流,它会在满足某些条件时自动关闭服务请求,但随后子状态会自动设置为“已解决”,而您想阻止这种情况。在这种情况下,您可以修改该 WF/BS 以在子状态中设置不同的值。

    【讨论】:

      【解决方案2】:

      很可能,它将通过 BusComp 用户属性。在服务请求 BC 下,检查 BC 用户属性,在“值”中查询 esolv。当“状态”字段更改时,您可能会获得自动设置“子状态”的属性。如果您发现了这种情况,您可以简单地停用该记录。

      如果它不在此处,则检查应用程序中的 RunTime 事件。您必须检查 SR BC 下的 SetField 事件,看看这些事件中是否有任何事件调用 BC 的 SET 方法。

      【讨论】:

      • thabks 但它不在 BC 用户属性中。我不了解应用程序中的 RunTime 事件
      • 合法,我在这里与同事核实过,我们认为这是 CSSBCServiceRequest 类文件中的普通行为。有可能覆盖它。您可以尝试添加一个新的 BC 用户属性 "On Field Update Set " ,其值为: "Status", "Sub-Status", "Sub-Status" 。以便保留子状态值。我这里没有可用的设置来测试这个,让我知道这是否有效。
      • 非常感谢 Ranjith,但它没有工作..我认为状态模块或工作流程对 BC 用户属性非常强大,我也尝试将业务组件的帖子默认值更改为空,但是它也不起作用..您可以在 oracle edelivery 免费下载 siebel 客户端和 siebel 工具以及示例数据库。
      • 我尝试了“状态”、“子状态”、“已提交”、“IIF([Status]="Closed", "Y", "N")"
      • 法律,看起来这是类行为,我也尝试了各种选项,每个选项都有自己的错误,你必须使用脚本,见下文。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-03-15
      • 2018-12-30
      • 1970-01-01
      • 1970-01-01
      • 2018-07-25
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多