Цитата(logist @ 23.05.11, 8:52) необходимо зарегистрироваться для просмотра ссылки
А зачем итоги считаются в цикле? Я вообще не понял что Вы там пытаетесь подсчитать "Пока Результат следующий"
В первом цикле создается по каждой строке документ НН, а в втором заполняются данные из Запроса. Для большего понимания выкладываю всю процедуру:
Для каждого СтрТЧ из Контрагенты Цикл
НН = Документы.НалоговаяНакладная.СоздатьДокумент();
Запрос = Новый Запрос;
Запрос.Текст = "ВЫБРАТЬ
|Ссылка.Контрагент,
|Номенклатура,
|СтавкаНДС,
|СУММА(СуммаНДС) СуммаНДС,
|Ссылка.ДоговорКонтрагента,
|СРЕДНЕЕ(Коэффициент) КАК К,
|ЕдиницаИзмерения,
|СУММА (Количество) КАК Количество,
|СУММА (Цена) КАК Цена,
|СУММА (Сумма) КАК Сумма,
|Ссылка.ДоговорКонтрагента.ВалютаВзаиморасчетов КАК Валюта,
|Ссылка.КурсВзаиморасчетов КАК КурсВзаиморасчетов,
|Ссылка.КратностьВзаиморасчетов КАК КратностьВзаиморасчетов
|ИЗ
|Документ.РеализацияТоваровУслуг.Товары
|ГДЕ
|Ссылка.Контрагент = &Контрагент И
|Ссылка.ДоговорКонтрагента = &ДоговорКонтрагента И
|Ссылка.Дата Между &Дата И &Дата2
|СГРУППИРОВАТЬ ПО Номенклатура, Ссылка.Контрагент,
|СтавкаНДС, Ссылка.ДоговорКонтрагента, ЕдиницаИзмерения,
|Ссылка.КурсВзаиморасчетов,
|Ссылка.КратностьВзаиморасчетов ";
Запрос.УстановитьПараметр("Дата", ДатаНачалаПериода);
Запрос.УстановитьПараметр("Дата2", ДатаОкончанияПериода+24+60+59);
Запрос.УстановитьПараметр("Контрагент", СтрТЧ.Контрагент);
Запрос.УстановитьПараметр("ДоговорКонтрагента", СтрТЧ.ДоговорКонтрагента);
Результат = Запрос.Выполнить().Выбрать();
Пока Результат.Следующий() Цикл
НН.ВидОперации = Перечисления.ВидыОперацийНалоговаяНакладная.ОблагаемыеОперации;
НН.СчетНДС = ПланыСчетов.Хозрасчетный.РасчетыПоНДС;
НН.КурсВзаиморасчетов = Результат.КурсВзаиморасчетов;
НН.КратностьВзаиморасчетов = Результат.КратностьВзаиморасчетов;
НН.Контрагент = СтрТЧ.Контрагент;
НН.Организация = Организация;
НН.ВалютаДокумента = Справочники.Валюты.НайтиПоНаименованию("грн");
НН.ДоговорКонтрагента = Результат.ДоговорКонтрагента;
НН.ВалютаДокумента = Результат.Валюта;
НН.СчетУчетаНДС = ПланыСчетов.Хозрасчетный.НалоговыеОбязательстваНеподтвержденные;
НН.Ответственный = ПараметрыСеанса.ТекущийПользователь;
НН.Дата = ДатаОкончанияПериода;
НН.КтоВыписалНалоговуюНакладную = КтоВыписалНН;
СтрокаТЧ = НН.Товары.Добавить();
СтрокаТЧ.Номенклатура = Результат.Номенклатура;
СтрокаТЧ.Количество = Результат.Количество;
СтрокаТЧ.Цена = Результат.Сумма/Результат.Количество;
СтрокаТЧ.Сумма = Результат.Сумма;
СтрокаТЧ.СтавкаНДС = Результат.СтавкаНДС;
СтрокаТЧ.СуммаНДС = Результат.СуммаНДС;
СтрокаТЧ.Коэффициент = Результат.К;
СтрокаТЧ.ЕдиницаИзмерения = Результат.ЕдиницаИзмерения;
СтрокаТЧ.СуммаБезСкидки = Результат.Сумма;
Если СтрокаТЧ.СтавкаНДС = Перечисления.СтавкиНДС.НДС20 Тогда
СтрокаТЧ.СтатьяДекларацииНДСНалоговыеОбязательства = Справочники.СтатьиНалоговыхДеклараций.НДС_НОПоСтавке20;
КонецЕсли;
Если СтрокаТЧ.СтавкаНДС = Перечисления.СтавкиНДС.НДС0 Тогда
СтрокаТЧ.СтатьяДекларацииНДСНалоговыеОбязательства = Справочники.СтатьиНалоговыхДеклараций.НДС_НОПоСтавке0Другие;
КонецЕсли;
КонецЦикла;
НН.ТипЦен = Результат.ДоговорКонтрагента.ТипЦен;
СуммаБезНДС = НН.Товары.Итог("Сумма");
НДС = НН.Товары.Итог("СуммаНДС");
НН.СуммаДокумента = СуммаБезНДС + НДС;
НН.Записать(РежимЗаписиДокумента.Проведение);
КонецЦикла;