commerce_stock -> node -> Rules, Views

Главные вкладки

Аватар пользователя darker darker 25 сентября 2012 в 14:22

Возникла необходимость снимать некоторые ноды с публикации, если товар закончился.
Так же надо фильтровать ноды по остатку.

Именно НОДЫ, а не ТОВАР!

Переменная commerce_stock есть только в товаре, в нодах её не видно(в Views, Rules, etc...).
Подскажите пожалуйста, как вывести commerce_stock в список общих полей?
Может можно сделать какой-то алиас, или ещё как?
Думаю суть вопроса Вы поняли.
Подскажите пожалуйста, существует ли такая возможность?
Этот вопрос относится не только к commerce, но и к другим модулям.
Желательно без кода, средствами самого друпала.
Друпал изучаю недавно. Пожалуйста, прошу сильно не пинать, а по возможности объяснить на пальцах, что и где... Smile

Комментарии

Аватар пользователя darker darker 29 сентября 2012 в 20:50

Надо снимать с публикации ноду.
Чтобы вывести количество, достаточно в отображении товара вывести поле stock...

Аватар пользователя darker darker 6 октября 2012 в 23:41

Подскажите, как?
У меня что-то никак не выходит ноду выставить, все варианты сводятся либо к юзеру, либо к товару.

Аватар пользователя aa2007 aa2007 7 октября 2012 в 12:21

Примерно так (возможно где-то что-то нужно будет подправить, но вроде должно сработать):
Events: Окончание процесса оформления
Действия:
1. Цикл:Селектор данных — commerce-order:commerce-line-items, Текущий элемент списка — Товар (item).
2. (В этом цикле): Fetch entity by property: Параметр: Тип сущности: Содержимое, Свойство: Товар, Значение: [item], Limit result count: 1
Предоставляет переменные: Ноды (displys)
3. (В этом же цикле): Цикл: Параметр: Список: [displys]
Элемент списка: Нода (display)
4. (внутри торого цикла): Снять материал с публикации — Содержимое: [display].

Есть второй вариант менее замудренный (но мене правильный): Событие - просмотр ноды, условие — сущность имеет поле: товар, условие — остаток = 0, Действие — снять ноду с публикации.

Аватар пользователя darker darker 7 октября 2012 в 14:30

"aa2007" wrote:
Примерно так (возможно где-то что-то нужно будет подправить, но вроде должно сработать):
Events: Окончание процесса оформления
Действия:
1. Цикл:Селектор данных — commerce-order:commerce-line-items, Текущий элемент списка — Товар (item).
2. (В этом цикле): Fetch entity by property: Параметр: Тип сущности: Содержимое, Свойство: Товар, Значение: [item], Limit result count: 1
Предоставляет переменные: Ноды (displys)
3. (В этом же цикле): Цикл: Параметр: Список: [displys]
Элемент списка: Нода (display)
4. (внутри торого цикла): Снять материал с публикации — Содержимое: [display].
Есть второй вариант менее замудренный (но мене правильный): Событие - просмотр ноды, условие — сущность имеет поле: товар, условие — остаток = 0, Действие — снять ноду с публикации.

Вроде следовал строго по инструкции.
В 4-м пункте позволяет выбрать только displys:0-3...

The variable or parameter node is empty, и соответственно Unable to evaluate action node_unpublish.
(

Аватар пользователя darker darker 7 октября 2012 в 14:39

Если быть более точным, то вот что позволяет выбрать.

Что выбирать, не знаю.
с displys:0-3 не работает...

Quote:
displys:0 Извлекаемая сущность
displys:1 Извлекаемая сущность
displys:2 Извлекаемая сущность
displys:3 Извлекаемая сущность
displys:0:author: Автор Автор материала.
displys:0:source Перевод исходного материала Оригинал перевода версии этого материала, если существует.
displys:0:source: Перевод исходного материала Оригинал перевода версии этого материала, если существует.
displys:0:body: The main body text