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

Автор Тема: Функция ПроверитьВывод()  (Прочитано 4093 раз)

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

Оффлайн deringpavel

  • *
  • Сообщений: 44
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2013-03-12
  • Сайт: 
  • Профессия: Программист 8.1
При использовании функции ПроверитьВывод() был выведен разрыв страницы, и теперь нужно вывести итоги на каждой странице. Я реализовал эту функцию, но вот итоги выводятся одинаковые на обеих страницах. Где я ошибся?
Код:

    ТабличныйДокумент.Вывести(ОбластьШапка);

НомерСтраницы = 1;
ОбластьЗаголовок = Макет.ПолучитьОбласть("ЗаголовокТаб");
ОбластьЗаголовок.Параметры.НомерСтраницы = "Страница" + НомерСтраницы;
ТабличныйДокумент.Вывести(ОбластьЗаголовок);

Номер = 0;

КолСтр = Выборка.Количество();
МассивОбластей = Новый Массив();
Пока Выборка.Следующий() Цикл
Номер = Номер + 1;
        ОбластьСтрока = Макет.ПолучитьОбласть("Строка");
ОбластьСтрока.Параметры.Номер = Номер;
    ОбластьСтрока.Параметры.ТоварНаименование = Выборка.Номенклатура;
    ОбластьСтрока.Параметры.КоличествоМест = Выборка.Количество;
ОбластьСтрока.Параметры.Количество = Выборка.Количество;
ОбластьСтрока.Параметры.БазоваяЕдиницаНаименование = Выборка.ЕдиницаИзмерения;
ОбластьСтрока.Параметры.ВидУпаковки = Выборка.ЕдиницаИзмерения;
ОбластьСтрока.Параметры.ТоварКод = Выборка.Код;
ОбластьСтрока.Параметры.БазоваяЕдиницаКодПоОКЕИ = Выборка.КодПоОКЕИ;
МассивОбластей.Очистить();
        МассивОбластей.Добавить(ОбластьСтрока);

Если Номер = КолСтр Тогда
МассивОбластей.Добавить(Макет.ПолучитьОбласть("ИтогоПоСтранице"));
      МассивОбластей.Добавить(Макет.ПолучитьОбласть("Всего"));
      МассивОбластей.Добавить(Макет.ПолучитьОбласть("Подвал"));
КонецЕсли;

       
Итого = Макет.ПолучитьОбласть("ИтогоПоСтранице");
РезультатС = ЗапросДанные.Выполнить();
ВыборкаС = РезультатС.Выбрать();

Если Номер <> 1 И Не ТабличныйДокумент.ПроверитьВывод(МассивОбластей) Тогда
        СуммаИт = 0;
Пока ВыборкаС.Следующий() Цикл
СуммаИт = СуммаИт + ВыборкаС.Количество;
КонецЦикла;



    Итого.Параметры.ИтогоМестНаСтранице = СуммаИт;
ТабличныйДокумент.Вывести(Итого);
НомерСтраницы = НомерСтраницы + 1;
ТабличныйДокумент.ВывестиГоризонтальныйРазделительСтраниц();
ОбластьЗаголовок.Параметры.НомерСтраницы = "Страница" + НомерСтраницы;
ТабличныйДокумент.Вывести(ОбластьЗаголовок);
КонецЕсли;

ТабличныйДокумент.Вывести(ОбластьСтрока);
КонецЦикла;



Теги:
 


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

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

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


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

* Реклама

* Поиск

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

* Реклама

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

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

Геннадий ОбьГЭС Геннадий ОбьГЭС
165 Сообщений
alex0402
78 Сообщений
oleg-x
69 Сообщений
AIFrame AIFrame
63 Сообщений
buketov.av buketov.av
47 Сообщений
wise wise
39 Сообщений
ilyay ilyay
39 Сообщений
KOI8-R
36 Сообщений
Анюта17
33 Сообщений
Alter
29 Сообщений

* Кто онлайн

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

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

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

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

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

Поиск

 
SimplePortal 2.3.5 © 2008-2012, SimplePortal