1b.app
Скопирована ссылка -

Переменная suborder в документе, чтение из массива

Необходима консультация специалиста по работе системы?
У нас есть партнеры-интеграторы которые с радостью вам помогут! Посмотреть список партнеров
Для создания отгрузочного листа есть Заказы клиента и родительский к ним процесс Отгрузки.
В Отгрузках в шаблоне документа Отгрузочный лист, переменной suborder нужно прочитать данные по заказам со списком товаров.

Ранее отвечали на вопрос https://crm-onebox.com/ru/support/documents/10051-peremennaya-suborder-v-dokumen... и предложили такой код создания таблицы, вот он:

Для пример предоставлю короткий пример, по которому можно будет попробовать разобраться:
<table>
<thead>
<tr>
<td>Заказ</td>
<td>Продукты</td>
</tr>
</thead>
<tbody>
{|foreach from=$subOrderArray item="suborder"|}
<tr>
<td>{|$suborder.name|}</td>
<td>
<table>
{|foreach from=$suborder.productArray item="product"|}
<tr>
<td>{|$product.name|} - {|$product.count|} - {|$product.price|}</td>
</tr>
{|/foreach|}
</table>
</td>
</tr>
{|/foreach|}
</tbody>
</table>

Предыдущий вопрос был завершен, но оказалось что шаблон работает корректно только если подпроцесс всего один и первую переменную в таблице прочитать как {row:suborder_name}. Но тогда массив читается, но несколько раз, как сторока row и как массив.
Т.е. в данном примере массив не может прочитаться, хотя по идее все правильно.
Подскажите как правильно прочитать массив?

Шаблон документа: https://more-moto.crm-onebox.com/admin/shop/document/templates/37/control/
Процесс для создания отгрузочного листа: https://more-moto.crm-onebox.com/admin/customorder/dostavka/5331/edit/ В нем кнопка Обновить отгрузочный лист.

Ответы:

Сейчас так как нужно https://more-moto.crm-onebox.com/admin/document/580/control/ ?
Немного подправил шаблон
27.08.2021, 16:20

Спасибо, работает!
Осталось последнее, как вывести массивом через suborder подпроцессы только первого уровня? Перепробовал что смог.
Сейчас в отгрузочный лист попадают подпроцессы второго уровня Лид и Заказ поставщику

Структура процессов у нас:
Отгрузка (назначен родительским)
Заказ клиента (основной процесс)
Лид(подпроцесс) Заказ поставщику(подпроцесс)

Процесс Отгрузка для проверки: https://more-moto.crm-onebox.com/admin/customorder/dostavka/5600/edit/
27.08.2021, 23:30

Попробуйте настроить аналогично, только через массив $subOrderArray1
31.08.2021, 16:24

Благодарю! Теперь точно все получилось!
Оставлю рабочий код шаблона здесь для потомков :)

<!DOCTYPE html>
<html>
<head>
</head>
<body>
<table style="border-collapse: collapse; width: 100%; height: 46px;" border="1">
<thead>
<tr style="height: 18px;">
<td style="height: 18px;">Заказ</td>
<td style="height: 18px;">Продукты</td>
</tr>
</thead>
<tbody>{|foreach from=$subOrderArray1 item="suborder"|}
<tr style="height: 28px;">
<td style="height: 28px;">{|$suborder.name|}</td>
<td style="height: 28px;">
<table>
<tbody>{|foreach from=$suborder.productArray item="product"|}
<tr>
<td>{|$product.name|} - {|$product.count|} - {|$product.price|}</td>
</tr>
{|/foreach|}</tbody>
</table>
</td>
</tr>
{|/foreach|}</tbody>
</table>
</body>
</html>
31.08.2021, 19:01

Пожалуйста, присоединяйтесь к диалогу. Если вам есть что сказать - пожалуйста, напишите комментарий. Для входа потребуется мобильный телефон и смс-код для идентификации. Войти и написать комментарий