Курс 2016 года “Разработка на UMI.CMS от 0 до готового сайта”
Добавление данных из объекта в форму "Заказ в 1 клик"

Автор AxiomateriaРаздел Шаблоны XSLT

Ответов: 4
Просмотров: 1639
Последний ответ 11 Ноября 2014, 11:14:45
от Axiomateria
!!!Тема будет зарыта смотрите оригинал!!!Разработка новых типов данных

Автор ariusgroupРаздел Шаблоны XSLT

Ответов: 1
Просмотров: 1275
Последний ответ 29 Сентября 2012, 00:55:07
от admin
Ссылка на дерево - вывод данных из другого объекта каталога в виде превью

Автор AxiomateriaРаздел Шаблоны XSLT

Ответов: 16
Просмотров: 5516
Последний ответ 07 Июля 2013, 15:14:17
от Axiomateria
Рекурсивное удаление поля в типе данных объект каталога

Автор goodprofyРаздел Custom макросы

Ответов: 3
Просмотров: 1395
Последний ответ 12 Марта 2014, 17:14:59
от goodprofy
Получение данных страницы по значению дополнительного поля.

Автор chuikoffРаздел Разработка модулей

Ответов: 29
Просмотров: 8844
Последний ответ 08 Сентября 2012, 11:50:16
от chuikoff

0 Пользователей и 1 Гость просматривают эту тему.

*

Rodogor

  • ***
  • 189
  • +24/-0
    • Просмотр профиля
Здравствуйте.
Что-то я затупил и не могу решить задачу, хотя задача простая.

Мне нужно выбрать все активные объекты определённого типа из каталога.

$sel = new umiSelection;
$sel->addObjectType(169);
$sel->addElementType(48);

.... далее ещё добавляются различные параметры выборки в зависимости от переданных параметров - наличие/отсутствие свойства, порядок сортировки и т.п.....

Тут я указываю нужный мне тип объекта и тип элемента (базовый тип).

Добавляю $sel->addHierarchyFilter(4,10);

4 - id каталога, внутри которого я выполняю поиск.

После добавления этой строчки начинает выдаваться полная ересь. Выдаются объекты, которые лежат и вне каталога с id=4 и с типами отличными от нужного мне.

Убираю $sel->addElementType(48); , после этого начинают выдаваться объекты типа  <object id="2802" name="Гаврилов Посад" type-id="115" ownerId="10"/> и т.п., а не нужные мне страницы внутри нужного мне каталога.

Как же правильно написать такую выборку ?



$sel->addActiveFilter(true); так же не работает
« Последнее редактирование: 19 Октября 2012, 11:10:19 от Rodogor »

*

Rodogor

  • ***
  • 189
  • +24/-0
    • Просмотр профиля
$sel->forceHierarchyTable(true); решает

Дело было в том что результатом возвращались id объектов, затем я получал страницы. Воспользовался этим способом, получил сразу страницы и всё заработало

*

admin

  • *****
  • 2419
  • +172/-1
    • Просмотр профиля
есть такая штука, видимо без явного указания с чем ты работаешь система межевалась между строчками

$sel->addObjectType(169); // то ли объекты ему надо
$sel->addElementType(48);// то ли страницы


P.S. а почему не на selector пишете, а на umiSelection?

*

Rodogor

  • ***
  • 189
  • +24/-0
    • Просмотр профиля
Да, я так и подумал, что дело в том, что система не могла определить какой тип выдавать надо.

Уже перехожу на selector.
Я просто смотрел имеющийся код и там всюду umiSelection используется. Имея примеры привык работать. Наличие deprecated конечно смущает, сейчас буду использовать только selector.