Можно ли в запросе определить поведен ли документ? (7.7, опер. учет)

Новая тема
Показывать по 10 20 40 сообщений
"
|ОбрабатыватьДокументы все;

...
|Удорожание = Документ.УдорожаниеТовара.ТекущийДокумент;

...
|Условие(Удорожание.Проведен()=0);
...


Писшет: "Значение не представляет агрегатный объект: 2".
Собстевено, сабж."
А сразу их отбирать?
"
 

> А сразу их отбирать?
В запросе нужны документы не только данного вида, не проведенные, но и другие.
Пробовал через внешнюю функцию, не работает.
Функция Проведено(ВхДок)
Док=СоздатьОбъект("Документ.УдорожаниеТовара");
Док.НайтиДокумент(ВхДок);
   Возврат Док.Проведен();
КонецФункции
//
Процедура Сформировать()
Перем Запрос, ТекстЗапроса, Таб;
//Создание объекта типа Запрос
Запрос = СоздатьОбъект("Запрос");
ТекстЗапроса =
"//{{ЗАПРОС(Сформировать)
|Период с ВыбНачПериода по ВыбКонПериода;
|ОбрабатыватьДокументы все;
|Товар = Документ.УдорожаниеТовара.Товар, Документ.РасходнаяДолг.Товар, Документ.РасходнаяКредит1Эт.Товар, Документ.РасходнаяКредит2Эт.Товар, Документ.РасходнаяНал.Товар, Документ.РасходнаяРеализ.Товар, Документ.РасходнаяНалЧЛ.Товар;
|Количество = Документ.УдорожаниеТовара.Количество, Документ.РасходнаяДолг.Количество, Документ.РасходнаяКредит1Эт.Количество, Документ.РасходнаяКредит2Эт.Количество, Документ.РасходнаяНал.Количество, Документ.РасходнаяРеализ.Количество, Документ.РасходнаяНалЧЛ.Количество;
|Удорожание = Документ.УдорожаниеТовара.ТекущийДокумент;
|Расходная = Документ.РасходнаяДолг.ТекущийДокумент, Документ.РасходнаяКредит1Эт.ТекущийДокумент, Документ.РасходнаяКредит2Эт.ТекущийДокумент, Документ.РасходнаяНал.ТекущийДокумент, Документ.РасходнаяРеализ.ТекущийДокумент, Документ.РасходнаяНалЧЛ.ТекущийДокумент;
|Функция КоличествоСумма = Сумма(Количество);
|Группировка Товар без групп;
|Группировка Удорожание;
|Группировка Расходная;
|Группировка СтрокаДокумента;
|Условие(Проведено(Удорожание)=0);
|"//}}ЗАПРОС
;
// Если ошибка в запросе, то выход из процедуры
Если Запрос.Выполнить(ТекстЗапроса) = 0 Тогда
Возврат;
КонецЕсли;

// Подготовка к заполнению выходных форм данными запроса
Таб = СоздатьОбъект("Таблица");
Таб.ИсходнаяТаблица("Сформировать");
// Заполнение полей "Заголовок"
Таб.ВывестиСекцию("Заголовок");
Состояние("Заполнение выходной таблицы...");
Таб.Опции(0, 0, Таб.ВысотаТаблицы(), 0);
Пока Запрос.Группировка(1) = 1 Цикл
// Заполнение полей Товар
Если Запрос.КоличествоСумма=0 Тогда
   Продолжить;
КонецЕсли;
Таб.ВывестиСекцию("Товар");
Пока Запрос.Группировка(2) = 1 Цикл
// Заполнение полей Удорожание
Таб.ВывестиСекцию("Удорожание");
Пока Запрос.Группировка(3) = 1 Цикл
// Заполнение полей Расходная
Таб.ВывестиСекцию("Расходная");
Пока Запрос.Группировка(4) = 1 Цикл
// Заполнение полей СтрокаДокумента
Таб.ВывестиСекцию("СтрокаДокумента");
КонецЦикла;
КонецЦикла;
КонецЦикла;
КонецЦикла;
// Заполнение полей "Итого"
Таб.ВывестиСекцию("Итого");
// Вывод заполненной формы
Таб.ТолькоПросмотр(1);
Таб.Показать("Сформировать", """");
КонецПроцедуры


Прийдется все таки, действительно, сначала свормировать список не проведенных документов данного вида и потом уже в условии его использовать."
"Не пора ли нам подумать о переходе на платформу 8 !? ;)"
"> Не пора ли нам подумать о переходе на платформу 8 !? ;)
Язык в процессе изучения, потом переписывание нестандартной конфы с 7.7 под 8, потом смена двух "полудохлых" ПК и переход. ;)"
и вперед, в светлое будущее!
жесть
такой запрос может "зарабоатть" ?
"> > Не пора ли нам подумать о переходе на платформу 8 !? ;)
> Язык в процессе изучения, потом переписывание нестандартной конфы с 7.7 под 8, потом смена двух "полудохлых" ПК и переход. ;)

и изучение языка заново в 8"
> такой запрос может "зарабоатть" ?
Да, не заработал, но это был тестовый варинт, никак не обработанный еще, только из построителя.
Читают тему
(гостей: 1)

Быстрый переход