gpt4 book ai didi

php - SugarCRM Enterprise 7.9.2.0 - SugarQuery 无法正常工作。 [php]

转载 作者:行者123 更新时间:2023-11-29 03:19:24 24 4
gpt4 key购买 nike

好的,所以我正在尝试使用 SugarQuery 在我的自定义插件中从 SugarCRM 中提取数据。糖在本地安装。当我使用 Sugar DbManager 时,我能够从数据库中获取数据,如下所示,我的 $result 包含 first_name:

$GLOBALS['db'];
$db = DBManagerFactory::getInstance();
$query = 'SELECT first_name FROM contacts WHERE id = ?';
$conn = $GLOBALS['db']->getConnection();
$stmt = $conn->executeQuery($query, array($id));
$result = $stmt->fetchAll();

但是当我尝试使用 SugarQuery 构建器时:

$sugarQuery = new SugarQuery();
$sugarQuery->from(BeanFactory::getBean("Contacts"));
$sugarQuery->select('first_name');
$sugarQuery->where()->contains('id',$id);
$sugarQuery->distinct(true);
$result = $sugarQuery->execute();

我的结果是一个空数组,当我检查 mysql 日志时,这是 SQL:

    SELECT DISTINCT contacts.first_name FROM contacts INNER JOIN (
SELECT tst.team_set_id
FROM team_sets_teams tst
INNER JOIN team_memberships team_memberships
ON tst.team_id = team_memberships.team_id
AND team_memberships.user_id = ''
AND team_memberships.deleted = 0
GROUP BY tst.team_set_id
) contacts_tf ON contacts_tf.team_set_id = contacts.team_set_id WHERE (contacts.id LIKE '%b8e8d8fe-de50-11e7-8770-1c3947366abf%') AND (contacts.deleted = 0)

尝试从 phpmyadmin 手动运行 SQL,但没有从数据库中检索到任何结果。可能存在 team_memberships.user_id 没有值的问题。当我手动输入 team_memberships.user_id 时,SQL 起作用并返回 first_name。

知道为什么这个 team_memberships.user_id 是空的,为什么 SugarQuery Builder 没有为它设置任何值?不幸的是,我在 SugarCrm 文档中找不到任何相关信息。也许我的 SugarQuery 有问题?

最佳答案

如果您不需要此查询来使用团队安全性,则更改

$sugarQuery->from(BeanFactory::getBean("Contacts"))

$sugarQuery->from(BeanFactory::getBean("Contacts"), array('team_security' => false));

应该可以解决问题。

参见 https://support.sugarcrm.com/Documentation/Sugar_Developer/Sugar_Developer_Guide_7.9/Data_Framework/Database/SugarQuery/#from

如果您确实需要团队安全并且您的代码在独立的 php 脚本中运行(而不是 Sugar 的调度程序、LogicHook、API 等),那么可能当前用户未加载,您必须手动执行此操作。

global $current_user;
$current_user = new User();
$current_user->getSystemUser();

将加载管理员用户。您可能需要调整它以加载您选择的用户。

关于php - SugarCRM Enterprise 7.9.2.0 - SugarQuery 无法正常工作。 [php],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47757813/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com