1

我在潜在客户模块中创建了一个自定义下拉字段。它从潜在客户模块的用户表中动态获取用户作为键 => 值对。

该字段工作正常,但在编辑模式下(创建新的潜在客户)......值没有被存储,而是键被存储而不是值..

我的意思是像“詹姆斯邦德”而不是“詹姆斯邦德”被存储..就像“7896877”

现在有趣的是,在sugarcrm(潜在客户模块)的详细视图中,名称会正确显示,因为我希望它可以正常工作。只有在列表视图中它才会显示 ID,并且在数据库中它也被存储为 KEY,即哈希 ID。

这是功能:

function getUSERS($bean) {
    $resultArray = Array();

    $query = "select id,(first_name + ' ' + last_name) AS Name from    dbo.users      ORDER BY first_name ASC";
    $resultArray [''] = '';
    $result = $bean->db->query($query);
    while ($row = $bean->db->fetchByAssoc($result)) {
        $resultArray[$row['id']] = $row['Name'];
    }

    return $resultArray;
}
4

1 回答 1

0

Sugar 中的下拉菜单用作键/值对,键是存储在数据库中的内容,Sugar 进行适当的查找以显示值。除了列表视图似乎对动态下拉列表的工作方式不同。

$resultArray[$row['id'] ]= $row['Name']不要像使用用户名那样构建数组-$resultArray[$row['username'] ]= $row['Name']因为用户名必须是唯一的,但对列表视图中的用户更有意义。

但是,您是否有任何理由不使用与用户模块相关的字段?这应该可以解决您所有的问题而无需任何编码。

于 2014-04-28T21:08:46.357 回答