Реклама на этом месте
Форум 1С
Форум 1С
Программистам. Бухгалтерам. Администраторам. Пользователям
Задай вопрос - получи решение проблемы. Без троллинга и флуда.
21 Июл 2017, 01:35
МультиВход
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Не получили письмо с кодом активации?
 
collapse

Автор Тема: В отчет попадают данные с предыдущей строки  (Прочитано 398 раз)

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

Оффлайн lezhek

  • *
  • Сообщений: 26
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2014-08-07
  • Сайт: 
  • Профессия: Ученик 1С
Добрый день. Подскажите в чем моя ошибка, при заполнении Отчет в строку с итогами попадают данные с предыдущей строки.При выполнении запроса через консоль все хорошо.


Процедура КнопкаСформироватьНажатие(Кнопка)
Макет=ПолучитьМакет("Макет");
Шапка=Макет.ПолучитьОбласть("Шапка");
Строка=Макет.ПолучитьОбласть("Строка");
ЭлементыФормы.ПолеТабличногоДокументаРезультат.Очистить();
Шапка.Параметры.дата = Формат(дата,"ДЛФ=Д");



ЭлементыФормы.ПолеТабличногоДокументаРезультат.Вывести(Шапка);

Запрос = Новый Запрос;
Запрос.Текст = "ВЫБРАТЬ
               | ПеремещениеТоваровТовары.ДокументРезерва.Контрагент КАК Контрагент,
               | ПеремещениеТоваровТовары.ДокументРезерва.Номер КАК Заказ,
               | ПеремещениеТоваровТовары.Номенклатура,
               | ПеремещениеТоваровТовары.Номенклатура.Артикул КАК артикул,
               | заказ.Количество КАК Тираж,
               | ПеремещениеТоваровТовары.wКоличествоВПачке КАК Упаковка,
               | ПеремещениеТоваровТовары.wМасса КАК ВесП,
               | ТоварыВРезервеНаСкладахОбороты.КоличествоПриход КАК Всего,
               | ПеремещениеТоваровТовары.Количество КАК количество,
               | ПеремещениеТоваровТовары.Ссылка.Номер КАК Номер
               |ИЗ
               | Документ.ПеремещениеТоваров.Товары КАК ПеремещениеТоваровТовары
               | ЛЕВОЕ СОЕДИНЕНИЕ Документ.ЗаказПокупателя.Товары КАК заказ
               | ПО ПеремещениеТоваровТовары.ДокументРезерва.Номер = заказ.Ссылка.Номер
               | И ПеремещениеТоваровТовары.Номенклатура = заказ.Номенклатура
               | ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ТоварыВРезервеНаСкладах.Обороты КАК ТоварыВРезервеНаСкладахОбороты
               | ПО ПеремещениеТоваровТовары.ДокументРезерва.Номер = ТоварыВРезервеНаСкладахОбороты.ДокументРезерва.Номер
               | И ПеремещениеТоваровТовары.Номенклатура = ТоварыВРезервеНаСкладахОбороты.Номенклатура
               |ГДЕ
               | ПеремещениеТоваровТовары.Ссылка.СкладПолучатель = &СкладПолучатель
               | И ПеремещениеТоваровТовары.Ссылка.Организация = &Организация
               | И ПеремещениеТоваровТовары.Ссылка.Дата >= &датаНачало
               | И ПеремещениеТоваровТовары.Ссылка.Дата <= &датаКонец
               | И ПеремещениеТоваровТовары.Ссылка.Проведен = &Проведен
               | И ТоварыВРезервеНаСкладахОбороты.Склад = &СкладПолучатель
               | И ПеремещениеТоваровТовары.ДокументРезерва.Номер <> 0
               | И (&Контрагент = ЗНАЧЕНИЕ(Справочник.контрагенты.ПустаяСсылка)
               | ИЛИ ПеремещениеТоваровТовары.ДокументРезерва.Контрагент = &Контрагент)
               |
               |СГРУППИРОВАТЬ ПО
               | ПеремещениеТоваровТовары.ДокументРезерва.Номер,
               | ПеремещениеТоваровТовары.Номенклатура,
               | ПеремещениеТоваровТовары.Номенклатура.Артикул,
               | ПеремещениеТоваровТовары.ДокументРезерва.Контрагент,
               | ПеремещениеТоваровТовары.wМасса,
               | ПеремещениеТоваровТовары.wКоличествоВПачке,
               | ПеремещениеТоваровТовары.Ссылка.Номер,
               | заказ.Количество,
               | ТоварыВРезервеНаСкладахОбороты.КоличествоПриход,
               | ПеремещениеТоваровТовары.Количество
               |ИТОГИ ПО
               | Контрагент";
Запрос.УстановитьПараметр("ДатаНачало",НачалоДня(Дата));
Запрос.УстановитьПараметр("ДатаКонец",КонецДня(Дата));
Запрос.УстановитьПараметр("Проведен",Истина);
Запрос.УстановитьПараметр("СкладПолучатель",справочники.Склады.НайтиПоНаименованию("Готовый"));
Запрос.УстановитьПараметр("ОРганизация",справочники.Организации.НайтиПоНаименованию("Торг"));
Запрос.УстановитьПараметр("Контрагент",Контрагент);
    Выгрузка = Запрос.Выполнить().Выгрузить();

Для Каждого стр Из Выгрузка Цикл
Строка.Параметры.контрагент=стр.Контрагент;
Если не стр.Номенклатура=null тогда
Строка.Параметры.ВесП=Стр.ВесП;
Строка.Параметры.Всего=стр.Всего;
КонецЕсли;
Строка.Параметры.заказ = Стр.Заказ;
если ПустаяСтрока(стр.Артикул )тогда
Строка.Параметры.Номенклатура =Стр.Номенклатура иначе
Строка.Параметры.Номенклатура =""+ Стр.Номенклатура+" Арт:"+Стр.Артикул;
КонецЕсли;
    Строка.Параметры.тираж=Стр.тираж;
Строка.Параметры.упаковка=Стр.упаковка;
Строка.Параметры.Количество=Стр.Количество;
если не стр.Упаковка=0 или  не ПустаяСтрока(стр.Упаковка) тогда

Строка.Параметры.Пачек= Цел(стр.количество/стр.Упаковка);
Строка.Параметры.Вес=Формат(стр.количество*(стр.весП/стр.Упаковка),"ЧДЦ=2");
КонецЕсли;
Строка.Параметры.номер = Стр.номер;
   
ЭлементыФормы.ПолеТабличногоДокументаРезультат.Вывести(Строка);
КонецЦикла;



   
КонецПроцедуры


Онлайн Kironten

  • *****
  • Сообщений: 809
  • РЕПУТАЦИЯ: 171
  • КПД: 21%
  • Регистрация: 2013-08-12
  • Сайт: 
  • Профессия: Ученик 1С
Самый простой вариант:
Для Каждого стр Из Выгрузка Цикл
        Строка=Макет.ПолучитьОбласть("Строка");
        Строка.Параметры.контрагент=стр.Контрагент;
...

Оффлайн vitasw

  • *****
  • Сообщений: 2546
  • РЕПУТАЦИЯ: 309
  • КПД: 12%
  • Регистрация: 2015-02-10
  • Сайт: 
  • Профессия: Программист 1С
Строка=Макет.ПолучитьОбласть("Строка");

Это тоже надо получать в цикле.

Оффлайн lezhek

  • *
  • Сообщений: 26
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2014-08-07
  • Сайт: 
  • Профессия: Ученик 1С
Спасибо! Все получилось.


Теги:
 


* Живое общение

Не устроил ответ?

Зарегистрируйся и задай свой вопрос. Живое общение приносит результат намного быстрее.


Зарегистрироваться

* Реклама

* Поиск

* Последние задачи на разработку (фриланс)

* Реклама

* Последние вакансии

* Топ 10 авторов за месяц

oleg-x
122 Сообщений
alex0402
104 Сообщений
Геннадий ОбьГЭС Геннадий ОбьГЭС
73 Сообщений
ilyay ilyay
50 Сообщений
Golickoff Golickoff
49 Сообщений
AIFrame
43 Сообщений
ab30ru
38 Сообщений
wise wise
36 Сообщений
Амал
32 Сообщений
Dethmontt Dethmontt
25 Сообщений

* Кто онлайн

  • Точка Гостей: 185
  • Точка Скрытых: 0
  • Точка Пользователей: 9
  • Точка Сейчас на форуме:

* Облако тэгов

* Форум 1С с мобильного

* Инструменты

* Дополнительно

Поиск

 
SimplePortal 2.3.5 © 2008-2012, SimplePortal