Как использовать Sugarcrm\Sugarcrm\Util\Uuid::uuid1() в пользовательской точке входа?
Я учу suitecrm. Мне нужно создать новый бин, используя определенный идентификатор из пользовательской точки входа, генерация идентификатора не работает, когда я пытаюсь этот код
// Create bean
$testAccountBean = BeanFactory::newBean('Accounts');
// Set the new flag
$testAccountBean->new_with_id = true;
$id = Sugarcrm\Sugarcrm\Util\Uuid::uuid1();
$testAccountBean->id = $id;
$testAccountBean->name = generateRandomString();
$testAccountBeanId = $testAccountBean->save();
echo $testAccountBeanId;
Я ничего не получаю
Когда я проверяю результат вызова Sugarcrm\Sugarcrm\Util\Uuid::uuid1()
ничего не получить взамен.
Спасибо за любую идею
2 ответа
Функция называется create_guid, требует include/utils.php
и вы сможете позвонить.
<?php
if (!defined('sugarEntry')) {
define('sugarEntry', true);
}
require_once 'data/BeanFactory.php';
require_once 'include/utils.php';
$testAccountBean = BeanFactory::newBean('Accounts');
$id = create_guid();
Сказав так - если вы делаете $testAccountBean->new_with_id = true;
это означает, что вы предоставите свой собственный идентификатор, который мы используем для вставки идентификаторов из других систем / миграций. Но если вам нужен GUID, просто удалите эту строку, и suitecrm сгенерирует ее для вас.
Вам нужно будет позвонить следующим образом:
$testAccountBean->new_with_id = true;
$testAccountBean->id = create_guid();
Обратите внимание, что если вы присвоили свой собственный идентификатор с помощью функции create_guid, то также необходимо установить "new_with_id". Вы можете найти функцию по этому пути: include \ utils.php
Ниже приведено тело функции:
function create_guid()
{
$microTime = microtime();
list($a_dec, $a_sec) = explode(' ', $microTime);
$dec_hex = dechex($a_dec * 1000000);
$sec_hex = dechex($a_sec);
ensure_length($dec_hex, 5);
ensure_length($sec_hex, 6);
$guid = '';
$guid .= $dec_hex;
$guid .= create_guid_section(3);
$guid .= '-';
$guid .= create_guid_section(4);
$guid .= '-';
$guid .= create_guid_section(4);
$guid .= '-';
$guid .= create_guid_section(4);
$guid .= '-';
$guid .= $sec_hex;
$guid .= create_guid_section(6);
return $guid;
}