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

Автор Тема: Перенос области в макете  (Прочитано 905 раз)

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

Оффлайн Fedor_Safonchik

  • *
  • Сообщений: 47
  • РЕПУТАЦИЯ: 7
  • КПД: 15%
  • Регистрация: 2016-06-16
  • Сайт: 
  • Профессия: Ученик 1С
Доброго времени суток !

Есть цикл, который выводит постепенно всю область на макет, затем необходимо проверить, помещается ли данная область на странице, если нет - тогда необходимо перенести всю область.

Вот код
	
// ИЗ ТАБЛИЦЫ ЗНАЧЕНИЙ "КОНТАКТНОЙ ИНФОРМАЦИИ" ЗАПОЛНЯЕМ ПАРАМЕТРЫ В ПЕЧ. ФОРМЕ \\
НомерСтроки = 1;
Для каждого ТекСтрокаКонтактнойИнформации ИЗ ТЗКонтактнойИнформации Цикл
ОбластьКонтактыТехническихСлужбЗначения.Параметры.НомерСтроки = "3." + НомерСтроки;
НомерСтроки = НомерСтроки + 1;
ОбластьКонтактыТехническихСлужбЗначения.Параметры.ФИОАбонента = ТекСтрокаКонтактнойИнформации.ФИОАбонента;
ОбластьКонтактыТехническихСлужбЗначения.Параметры.ТелефонАбонента = ТекСтрокаКонтактнойИнформации.ТелефонАбонента;
ОбластьКонтактыТехническихСлужбЗначения.Параметры.EmailАбонента = ТекСтрокаКонтактнойИнформации.EmailАбонента;
ОбластьКонтактыТехническихСлужбЗначения.Параметры.ФИООператора = ТекСтрокаКонтактнойИнформации.ФИООператора;
ОбластьКонтактыТехническихСлужбЗначения.Параметры.ТелефонОператора = ТекСтрокаКонтактнойИнформации.ТелефонОператора;
ОбластьКонтактыТехническихСлужбЗначения.Параметры.EmailОператора = ТекСтрокаКонтактнойИнформации.EmailОператора;
ТабличныйДокумент.Вывести(ОбластьКонтактыТехническихСлужбЗначения);
КонецЦикла;


Оффлайн cska-fanat-kz

  • 1С:Специалист
  • Глобальный модератор
  • *****
  • Сообщений: 5745
  • РЕПУТАЦИЯ: 1097
  • КПД: 19%
  • Красная армия всех сильней!
  • Регистрация: 2010-11-06
    • Skype: cska-fanat-kz81
  • Сайт: cska-fanat-kz.ucoz.kz
  • Профессия: Разработчик 1С
ПроверитьВывод()
Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.

Оффлайн Fedor_Safonchik

  • *
  • Сообщений: 47
  • РЕПУТАЦИЯ: 7
  • КПД: 15%
  • Регистрация: 2016-06-16
  • Сайт: 
  • Профессия: Ученик 1С
	/////////////////////////// ВСТАВЛЯЕТ ГОРИЗОНТАЛЬНЫЙ РАЗДЕЛИТЕЛЬ СТРАНИЦ ПЕРЕД ОБЛАСТЬЮ КОНТАКТНОЙ ИНФОРМАЦИИ
// НЕ ОСУЩ. ПЕРЕНОС (ПЕРЕПИСАТЬ)
МассивОбластей = Новый Массив;
МассивОбластей.Добавить(ОбластьШапка);
МассивОбластей.Добавить(ОбластьОсновнаяИнформация);
МассивОбластей.Добавить(ОбластьТехническиеУсловия);
МассивОбластей.Добавить(ОбластьСогласиеНаОбработкуНСИИстина);
МассивОбластей.Добавить(ОбластьТарифныйПланШапка);
МассивОбластей.Добавить(ОбластьТарифныйПланЗначения);
МассивОбластей.Добавить(ОбластьКонтактыТехническихСлужбШапка);
МассивОбластей.Добавить(ОбластьКонтактыТехническихСлужбЗначения);

        Если НЕ ТабличныйДокумент.ПроверитьВывод(МассивОбластей) Тогда
ТабличныйДокумент.ВывестиГоризонтальныйРазделительСтраниц();
КонецЕсли;
, я понимаю вот такой код Вы примерно имели ввиду, все области прошлые заносим в массив и его проверяем, затем как мне вставить разделитель страниц уже перед шапкой области контактных данных?

Оффлайн LexaK

  • *****
  • Сообщений: 1247
  • РЕПУТАЦИЯ: 344
  • КПД: 28%
  • Регистрация: 2012-05-16
  • Сайт: 
  • Профессия: Программист 1С
немного по другому строится проверка вывода

1.формируете промежуточный таб док
2.проверяете вывод
3.при необходимости вставляете разделитель
4.выводите подготовленный в п.1 таб док

вот как это примерно выглядит в коде с вашим примером, попробуйте


// ИЗ ТАБЛИЦЫ ЗНАЧЕНИЙ "КОНТАКТНОЙ ИНФОРМАЦИИ" ЗАПОЛНЯЕМ ПАРАМЕТРЫ В ПЕЧ. ФОРМЕ \\

табДокКИ = Новый ТабличныйДокумент;  //промежуточный ТД
НомерСтроки = 0;
Для каждого ТекСтрокаКонтактнойИнформации ИЗ ТЗКонтактнойИнформации Цикл

//можно одной командой заполнить все параметры
ОбластьКонтактыТехническихСлужбЗначения.Параметры.Заполнить(ТекСтрокаКонтактнойИнформации);

//заполняем номер
НомерСтроки = НомерСтроки + 1;
ОбластьКонтактыТехническихСлужбЗначения.Параметры.НомерСтроки = "3." + НомерСтроки;

//формируем промежуточный ТД
табДокКИ.Вывести(ОбластьКонтактыТехническихСлужбЗначения);

//ОбластьКонтактыТехническихСлужбЗначения.Параметры.НомерСтроки = "3." + НомерСтроки;
//НомерСтроки = НомерСтроки + 1;
//ОбластьКонтактыТехническихСлужбЗначения.Параметры.ФИОАбонента = ТекСтрокаКонтактнойИнформации.ФИОАбонента;
//ОбластьКонтактыТехническихСлужбЗначения.Параметры.ТелефонАбонента = ТекСтрокаКонтактнойИнформации.ТелефонАбонента;
//ОбластьКонтактыТехническихСлужбЗначения.Параметры.EmailАбонента = ТекСтрокаКонтактнойИнформации.EmailАбонента;
//ОбластьКонтактыТехническихСлужбЗначения.Параметры.ФИООператора = ТекСтрокаКонтактнойИнформации.ФИООператора;
//ОбластьКонтактыТехническихСлужбЗначения.Параметры.ТелефонОператора = ТекСтрокаКонтактнойИнформации.ТелефонОператора;
//ОбластьКонтактыТехническихСлужбЗначения.Параметры.EmailОператора = ТекСтрокаКонтактнойИнформации.EmailОператора;
//ТабличныйДокумент.Вывести(ОбластьКонтактыТехническихСлужбЗначения);   

КонецЦикла;

//проверяем вывод КИ
Если НЕ ТабличныйДокумент.ПроверитьВывод(табДокКИ) Тогда
//выводим разделитель
ТабличныйДокумент.ВывестиГоризонтальныйРазделительСтраниц();
//при необходимости выводим заголовок таблицы
//ТабличныйДокумент.Вывести(ЗаголовокТаблицы);
КонецЕсли;

//выводим КИ
ТабличныйДокумент.Вывести(табДокКИ);   

Помогло? - Нажми СПАСИБО!!!
                       :)

Оффлайн Fedor_Safonchik

  • *
  • Сообщений: 47
  • РЕПУТАЦИЯ: 7
  • КПД: 15%
  • Регистрация: 2016-06-16
  • Сайт: 
  • Профессия: Ученик 1С
LexaK, получается, в промежуточный табДокИ мне необходимо вывести все предыдущие области ?
Добавлено: 31 Авг 2016, 14:30

LexaK, большое спасибо, всё получилось, благодарю !

Последний раз редактировалось: Fedor_Safonchik; 31 Авг 2016, 14:30. Причина: Объединение сообщений

Оффлайн LexaK

  • *****
  • Сообщений: 1247
  • РЕПУТАЦИЯ: 344
  • КПД: 28%
  • Регистрация: 2012-05-16
  • Сайт: 
  • Профессия: Программист 1С
Цитировать
получается, в промежуточный табДокИ мне необходимо вывести все предыдущие области ?
нет, только то что надо проверить в основном ТД (вот в нем все предыдущие области)
Помогло? - Нажми СПАСИБО!!!
                       :)


Теги:
 

Перенос товаров из д-та "Поступление Т и У" в "Отчет о розничных продажах"

Автор Игорь ПолищукРаздел Пользователям "1С - Предприятие 8"

Ответов: 3
Просмотров: 4770
Последний ответ 01 Июн 2011, 16:31
от Eugeneer
Перенос данных из 1с 82 БП (базовая) в 1с 82 БГУ (базовая)

Автор Владимир87Раздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 4
Просмотров: 6889
Последний ответ 06 Дек 2014, 17:40
от дфтын
КД, Перенос Реквизита справочника (7.7) в ТЧ справочника 8.2.

Автор EvgenyРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 2
Просмотров: 3300
Последний ответ 17 Сен 2014, 13:39
от Kironten
Перенос контактов в "нет в базе" на следующий день.

Автор IsodemosРаздел Пользователям "1С - Предприятие 8"

Ответов: 0
Просмотров: 1608
Последний ответ 25 Июн 2014, 16:28
от Isodemos
Запрос на перенос срока задачи НЕ автору задачи, а другому пользователю. Помогите с конфигурированием!

Автор juli777Раздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 1
Просмотров: 1596
Последний ответ 18 Ноя 2014, 21:14
от sertak

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

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

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


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

* Реклама

* Поиск

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

* Реклама

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

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

alex0402
93 Сообщений
oleg-x
83 Сообщений
Геннадий ОбьГЭС Геннадий ОбьГЭС
68 Сообщений
Golickoff Golickoff
51 Сообщений
ilyay ilyay
44 Сообщений
AIFrame
42 Сообщений
Амал
30 Сообщений
lansy
22 Сообщений
Dethmontt Dethmontt
22 Сообщений
xproh
21 Сообщений

* Кто онлайн

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

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

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

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

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

Поиск

 
SimplePortal 2.3.5 © 2008-2012, SimplePortal