SugarCRM 在 Logic Hook 中验证字段 before_save

问题描述 投票:0回答:2

SugarCRM 版本:7.6

在模块案例中,我有两个自定义字段 原因和次原因。

我希望当 Reason = Returns 时,必须需要 Subreason。

在 Javascript 的编辑页面中,验证有效,但在列表情况下,在编辑行中,无效。

我正在尝试使用 Logic Hook,但没有任何效果

echo "Hi";
die();

控制台返回

SyntaxError: Unexpected token H in JSON at position 0

SugarApplication::appendErrorMessage,不返回任何内容并保存

SugarApplication::redirect,返回错误

SyntaxError: Unexpected token < in JSON at position 0

有什么解决办法吗?

谢谢

php sugarcrm
2个回答
0
投票

您需要使用列表视图逻辑钩子。


0
投票

这可以通过

before_save
逻辑钩子来实现

<?php

class CaseBeforeSave {
  public function validateSubReasonField($bean, $event, $arguments)
  {
     if (!empty($bean->reason)
         && $bean->reason == "Returns"
         && empty($bean->subreason)
     ) {
        // This would throw error on UI
        throw SugarApiExceptionMissingParameter('Subreason is empty');
     }
   }
}

希望这有帮助!

© www.soinside.com 2019 - 2024. All rights reserved.