Движения в регистре и запрос
10.11.2010
15:40
#21
"А условие во запрос ставить пробовали?
> |Условие(Оборот <> 0);
А для конкретного товара, что-бы 0 показывало наверное так:
Если ВТовар.Выбран()=0 Тогда
ТекстЗапроса=ТекстЗапроса="Условие(Оборот <> 0);";
КонецЕсли;
Это делается для того, что-бы если товар выбран и нужны 0 то условие не добавляется, а если не выбран (ВТовар.Выбран()=0) то добавляется (ТекстЗапроса=ТекстЗапроса="Условие(Оборот <> 0);";).
Можно еще и мониторинг товар это или группа товаров сделать... и условие в зависимости от этого."
> |Условие(Оборот <> 0);
А для конкретного товара, что-бы 0 показывало наверное так:
Если ВТовар.Выбран()=0 Тогда
ТекстЗапроса=ТекстЗапроса="Условие(Оборот <> 0);";
КонецЕсли;
Это делается для того, что-бы если товар выбран и нужны 0 то условие не добавляется, а если не выбран (ВТовар.Выбран()=0) то добавляется (ТекстЗапроса=ТекстЗапроса="Условие(Оборот <> 0);";).
Можно еще и мониторинг товар это или группа товаров сделать... и условие в зависимости от этого."
10.11.2010
15:45
#22
Наверное потому что у вас Товар - группировка, подчиненная складу. Если идет обход справочника, то как система смысловую принадлежность к складу то выяснит? Надо, чтобы Товар было группировкой более высокого уровня. Да и ВидТМЦ со справочником тоже как то надо связать, видимо. Вообще, что за конфигурация? Какой релиз? А то наугад тыкаться долго можно
10.11.2010
15:54
#23
"1. для приходных документов оборот = 0;
все таки мне кажется что одним запросом тут не обойтись.
если движение по регистру в заданный период товар не выполнял то его в запросе и не будет(
"
все таки мне кажется что одним запросом тут не обойтись.
если движение по регистру в заданный период товар не выполнял то его в запросе и не будет(
"
10.11.2010
16:27
#24
"> если движение по регистру в заданный период товар не выполнял то его в запросе и не будет(
Это если вы просто пропишете условие в запросе, а если на основе анализа выбран товар в поле ВТовар или нет то будет попадать.
Поясняю:
Основной текст запроса оставляем неизменный!
После него перед выполнением запроса делаем анализ поля ВТовар
Если ВТовар.Выбран()=0 Тогда //Товар НЕ выбран, условие в запрос добавляем
ТекстЗапроса=ТекстЗапроса="Условие(Оборот <> 0);";//Добавили условие
КонецЕсли;//Если товар выбран то условие НЕ добавляем и тогда 0 значения должны быть
Расширяем:
Если ВТовар.Выбран()=0 Тогда //Товар НЕ выбран, условие в запрос добавляем
ТекстЗапроса=ТекстЗапроса="Условие(Оборот <> 0);";//Добавили условие
ИначеЕсли ВТовар.ЭтоГруппа()=1 Тогда//Если выбрана группа товаров и нам в группе не нужны 0 значения то...
ТекстЗапроса=ТекстЗапроса="Условие(Оборот <> 0);";//...добавляем условие
КонецЕсли;//Если товар выбран и он не группа то условие НЕ добавляем и тогда 0 значения должны быть
"
Это если вы просто пропишете условие в запросе, а если на основе анализа выбран товар в поле ВТовар или нет то будет попадать.
Поясняю:
Основной текст запроса оставляем неизменный!
После него перед выполнением запроса делаем анализ поля ВТовар
Если ВТовар.Выбран()=0 Тогда //Товар НЕ выбран, условие в запрос добавляем
ТекстЗапроса=ТекстЗапроса="Условие(Оборот <> 0);";//Добавили условие
КонецЕсли;//Если товар выбран то условие НЕ добавляем и тогда 0 значения должны быть
Расширяем:
Если ВТовар.Выбран()=0 Тогда //Товар НЕ выбран, условие в запрос добавляем
ТекстЗапроса=ТекстЗапроса="Условие(Оборот <> 0);";//Добавили условие
ИначеЕсли ВТовар.ЭтоГруппа()=1 Тогда//Если выбрана группа товаров и нам в группе не нужны 0 значения то...
ТекстЗапроса=ТекстЗапроса="Условие(Оборот <> 0);";//...добавляем условие
КонецЕсли;//Если товар выбран и он не группа то условие НЕ добавляем и тогда 0 значения должны быть
"
10.11.2010
16:33
#25
"Пока Запрос.Группировка("Склад")=1 Цикл
Таб.ВывестиСекцию("СекцияСклад");
Пока Запрос.Группировка("ВидТМЦ")=1 Цикл
Таб.ВывестиСекцию("СекцияВидТМЦ");
Пока Запрос.Группировка("Товар")=1 Цикл
Если Запрос.Оборот=0 Тогда
Продолжить;
КонецЕсли;
Таб.ВывестиСекцию("СекцияТовар");
КонецЦикла;
КонецЦикла;
КонецЦикла;"
Таб.ВывестиСекцию("СекцияСклад");
Пока Запрос.Группировка("ВидТМЦ")=1 Цикл
Таб.ВывестиСекцию("СекцияВидТМЦ");
Пока Запрос.Группировка("Товар")=1 Цикл
Если Запрос.Оборот=0 Тогда
Продолжить;
КонецЕсли;
Таб.ВывестиСекцию("СекцияТовар");
КонецЦикла;
КонецЦикла;
КонецЦикла;"
Читают тему
(гостей: 2)