0

我们对 Sugar CRM 还很陌生,所以我希望我遇到的问题更多源于对系统工作原理的普遍误解,而不是其他任何事情。

我们使用模块生成器在 Sugar CRM 社区添加中添加了一个新模块。其中一个字段用于每个用户唯一的 clientId。但是,我们有不同长度的 clientId(我们无法再修复的情况),因此我们希望更新它,以便当系统通过 clientId 搜索它寻找完全匹配。(因此,如果我们搜索 clientId 1 - 只有 1 出现,而​​不是每个以 1 开头的客户端 id)。

我们的问题是我们看不到代码或设置中我们需要更新以进行此更改的位置。我们尝试对包含部分中的 SearchForm.php 文件进行一些更改,包括覆盖、将 $opertor 更改为 '=' 以及在 generateSearchWhere 函数中构建 where 子句时更改 'LIKE' 大小写以匹配 '=' ,但这些似乎都没有改变搜索行为。所以我们希望有人会知道代码中的哪个位置(或者甚至更好 - 接口,因此我们不必更改代码)我们需要查看以进行此更改。

任何帮助,将不胜感激!

谢谢

4

1 回答 1

2

有关一些基础知识,请参阅SugarCRM 文档。但是,它不是很详细。

根据我的经验,只添加/更新就足够了:

  • /custom/modules/<module>/metadata/SearchFields.php

并使用这样的东西:

$searchFields['module']['field'] = array(
    'query_type' => 'default', 
    'operator' => '=');

(用您各自的值替换模块和字段)

记住清除所有缓存并在之后重建 SugarCRM。

于 2011-05-09T10:35:27.227 回答