Ранее помогали с созданием шаблона отгрузочного листа через переменную suborder. https://crm-onebox.com/ru/support/documents/10402-peremennaya-suborder-v-dokumente-chtenie-iz-massiva/
Все работает! При большом количестве отгрузок нужна сортировка в таблице по определенной переменной, например по транспортной компании: ТК {|$suborder.customOrder_transportnayakompaniya24|} . Сортировка по умолчанию идет по номеру подпроцесса.
Как при чтении из массива suborder сделать сортировку по определеноой переменной?
Шаблон отгрузочного листа: https://more-moto.crm-onebox.com/admin/shop/document/templates/37/control/
Процесс Отгрузка для проверки: https://more-moto.crm-onebox.com/admin/customorder/dostavka/5786/edit/
Ранее помогали с созданием шаблона отгрузочного листа через переменную suborder. https://crm-onebox.com/ru/support/documents/10402-peremennaya-suborder-v-dokumen... Все работает! При большом количестве отгрузок нужна сортировка в таблице по определенной переменной, например по транспортной компании: ТК {|$suborder.customOrder_transportnayakompaniya24|} . Сортировка по умолчанию идет по номеру подпроцесса. Как при чтении из массива suborder сделать сортировку по определеноой переменной?
Как при чтении из массива suborder сделать сортировку по определеноой переменной?
Не думаю что в HTML вы можете подобным образом отсортировать массив. Тут разве что дорабатывать как-то непосредственно в генерации документа, где глобально задавать сортироку - но это не особо очервидно..
Вам нужно это чисто для 1 БП и 1 шаблона?
[quote]
Как при чтении из массива suborder сделать сортировку по определеноой переменной?
[/quote]
Не думаю что в HTML вы можете подобным образом отсортировать массив.
Тут разве что дорабатывать как-то непосредственно в генерации документа, где глобально задавать сортироку - но это не особо очервидно..
Вам нужно это чисто для 1 БП и 1 шаблона?
Нужно все это для создания списка заказов к отгрузке. Для БП Отгрузки и шаблона Отгрузочный лист. По идее это вообще типовая задача каждого пользователя Crm - создавать отгрузочный лист и должно быть проверенное решение как это сделать. Возможно есть решение проще, типа экспорта в гугл таблицу. Но вариант с массивом удобнее. И оно уже готово, осталось с сортировкой разобраться и надеюсь всё :)
Нашел пример решения сортировки для многомерного массива с помощью функций usort() и array_multisort()
https://world-hello.ru/php/how-to-php/otsortirovat-mnogomernyj-massiv.html
По идее можно прочитать массив и вывести его обратно с сортировкой по нужному значению. Но мне в этом не разобраться.
Нужно все это для создания списка заказов к отгрузке. Для БП Отгрузки и шаблона Отгрузочный лист.
По идее это вообще типовая задача каждого пользователя Crm - создавать отгрузочный лист и должно быть проверенное решение как это сделать. Возможно есть решение проще, типа экспорта в гугл таблицу. Но вариант с массивом удобнее. И оно уже готово, осталось с сортировкой разобраться и надеюсь всё :)
Придумал, можно даже проще и удобней без сортировки. Вывести в шаблоне документа несколько таблиц подряд под каждую транспортную компанию. При чтении массива сделать фильтр по значению ТК транспортная компания {|$suborder.customOrder_transportnayakompaniya24|}. Если значение ТК=ПЭК выводить в таблицу только заказы в ПЭК, Если значение ТК=СДЭК выводить в следущую таблицу и т.д. Как можно сделать фильтр?
Придумал, можно даже проще и удобней без сортировки. Вывести в шаблоне документа несколько таблиц подряд под каждую транспортную компанию.
При чтении массива сделать фильтр по значению ТК транспортная компания {|$suborder.customOrder_transportnayakompaniya24|}.
Если значение ТК=ПЭК выводить в таблицу только заказы в ПЭК, Если значение ТК=СДЭК выводить в следущую таблицу и т.д.
Как можно сделать фильтр?
Нужно все это для создания списка заказов к отгрузке. Для БП Отгрузки и шаблона Отгрузочный лист. По идее это вообще типовая задача каждого пользователя Crm - создавать отгрузочный лист и должно быть проверенное решение как это сделать. Возможно есть решение проще, типа экспорта в гугл таблицу. Но вариант с массивом удобнее. И оно уже готово, осталось с сортировкой разобраться и надеюсь всё :)
Я знаю как отсортировать массивы на стороне веб-сервера ) Но вы должны понимать, что это нужно делать какой-то настройкой для шаблона документа - по какому дополнительному полю сортировать подпроцессы. Чтобы такое сделать - это займёт порядка 4ч
Придумал, можно даже проще и удобней без сортировки. Вывести в шаблоне документа несколько таблиц подряд под каждую транспортную компанию. При чтении массива сделать фильтр по значению ТК транспортная компания {|$suborder.customOrder_transportnayakompaniya24|}. Если значение ТК=ПЭК выводить в таблицу только заказы в ПЭК, Если значение ТК=СДЭК выводить в следущую таблицу и т.д. Как можно сделать фильтр?
Не особо это просто сделать на smarty, ведь у вас данные значения будут не постоянны и в разных количествах. Ну а вообще вы можете if`ать условия на smarty - может что-то и получиться)
[quote]
Нашел пример решения сортировки для многомерного массива с помощью функций usort() и array_multisort()
https://world-hello.ru/php/how-to-php/otsortirovat-mnogomernyj-massiv.html
По идее можно прочитать массив и вывести его обратно с сортировкой по нужному значению. Но мне в этом не разобраться.
Нужно все это для создания списка заказов к отгрузке. Для БП Отгрузки и шаблона Отгрузочный лист.
По идее это вообще типовая задача каждого пользователя Crm - создавать отгрузочный лист и должно быть проверенное решение как это сделать. Возможно есть решение проще, типа экспорта в гугл таблицу. Но вариант с массивом удобнее. И оно уже готово, осталось с сортировкой разобраться и надеюсь всё :)
[/quote]
Я знаю как отсортировать массивы на стороне веб-сервера )
Но вы должны понимать, что это нужно делать какой-то настройкой для шаблона документа - по какому дополнительному полю сортировать подпроцессы. Чтобы такое сделать - это займёт порядка 4ч
[quote]
Придумал, можно даже проще и удобней без сортировки. Вывести в шаблоне документа несколько таблиц подряд под каждую транспортную компанию.
При чтении массива сделать фильтр по значению ТК транспортная компания {|$suborder.customOrder_transportnayakompaniya24|}.
Если значение ТК=ПЭК выводить в таблицу только заказы в ПЭК, Если значение ТК=СДЭК выводить в следущую таблицу и т.д.
Как можно сделать фильтр?
[/quote]
Не особо это просто сделать на smarty, ведь у вас данные значения будут не постоянны и в разных количествах.
Ну а вообще вы можете if`ать условия на smarty - может что-то и получиться)
Пожалуйста, присоединяйтесь к диалогу. Если вам есть что сказать - пожалуйста, напишите комментарий. Для входа потребуется мобильный телефон и смс-код для идентификации.
Войти и написать комментарий