Салют.
Есть поле связи условно 'f1_1'.
Создаю вычисление, в котором id поля связи помещаю в переменную как $f1_1 = 'f1_1'.
Далее пытаюсь получить значение поля 'f2_1' из связанной таблицы как $line[$f1_1]['f2_1'], возвращается NULL.
При этом, если обратиться без переменной как $line['f1_1']['f2_1'], возвращается искомое значение.
Как правильно обращаться к полям поля связи используя переменные?
Спасибо.
1
Доступ к полям таблицы через поле связи по id поля.
Автор goodcolor, 29 мая 2020 17:56
Сообщений в теме: 2
#1
Отправлено 29 Май 2020 - 17:56
Компания "Хороший Цвет"
www.GoodColor.ru - поставки и производство самосветящихся товаров и материалов
www.GoodColor.ru - поставки и производство самосветящихся товаров и материалов
#2
Отправлено 03 Июнь 2020 - 17:49
По всей видимости никак, т.к. при сохранении вычисления идет анализ его кода на предмет наличия вложенных массивов у полей связи. Это необходимо для оптимизации механизма вычислений, чтобы не раскрывать зря поля связи до неограниченных пределов. В случае если вместо имени поля в коде стоит переменная, поле связи не находится и соответственно разложения его в массив во время работы не происходит. Могу разве что предложить искусственно упомянуть в коде все возможные используемые значения без переменной, возможно тогда анализатор успешно сработает.
#3
Отправлено 03 Июнь 2020 - 18:09
Всё понятно. Спасибо. Да, условное упоминание поля без переменной срабатывало, но это уже получаются костыли)
Компания "Хороший Цвет"
www.GoodColor.ru - поставки и производство самосветящихся товаров и материалов
www.GoodColor.ru - поставки и производство самосветящихся товаров и материалов
Количество пользователей, читающих эту тему: 1
0 пользователей, 1 гостей, 0 анонимных