Страница 1 из 1

[Решено] Как запрашивать поле "PHP код" из других мест?

Добавлено: 16 июн 2023, 22:08
tehnos
На форуме нашёл вот такое решение:

78 - сущность
1140 - поле "PHP код"
$contract - id записи в сущности 78

Код: Выделить всё

$items_query = new items_query(78,[
      'fields_in_query' => 1140,
      'add_formula' => true,
      'where' => 'and id=' . $contract,
    ]);
    
$contract_query = db_query($items_query->get_sql());
Однако в результате делается селект абсолютно всех полей записи и в поле "PHP код" пусто.
Само поле "PHP код" работает как надо - с этим проблем нет. Но хочется его запрашивать из разных мест. В нём у меня рассчитывается остаток по договору.

Re: Как запрашивать поле "PHP код" из других мест?

Добавлено: 17 июн 2023, 06:48
support
Если стоит опция "Выполнять динамически" то значение не хранится в базе, соответственно его не вытащить.
PHP код нельзя встроить в sql запрос и вытащить значение.

Re: Как запрашивать поле "PHP код" из других мест?

Добавлено: 17 июн 2023, 10:58
Antonyous99
Напишите функцию в разделе "Пользовательский PHP" и запрашивайте ее из любой сущности через поле код PHP.
Если необходимо, передавайте в вашу функцию необходимые аргументы, получайте и используйте результат работы функкции.

Re: Как запрашивать поле "PHP код" из других мест?

Добавлено: 17 июн 2023, 11:35
tehnos
Antonyous99 писал(а): 17 июн 2023, 10:58 Напишите функцию в разделе "Пользовательский PHP" и запрашивайте ее из любой сущности через поле код PHP.
Если необходимо, передавайте в вашу функцию необходимые аргументы, получайте и используйте результат работы функкции.
Благодарю за решение. То что нужно.
Раньше не было потребности в этом функционале - теперь время пришло.