|
ПроверитьВывод() для нескольких одинаковых областей |
☑ |
0
ShaOlg
12.08.14
✎
02:57
|
Мне необходимо вывести в табличный документ информацию о наборах и входящих в его состав комплектующих. Причем эта информация должна целиком помещаться на страницу. Если нет, необходимо перенести информацию на новую страницу. Набор не разрывается. Может кто решал такую задачу. Помогите!!!
|
|
1
Andrewww123
12.08.14
✎
04:09
|
Пример из синтакс-помощника:
Т.Добавить(ШапкаДокумента);
Т.Добавить(СтрокаДокумента);
Т.Добавить(ПодвалДокумента);
Если Не ТабДок.ПроверитьВывод(Т) Тогда
Сообщить("Документ не умещается на страницу!");
КонецЕсли;
|
|
2
Cube
12.08.14
✎
04:57
|
(0) "Может кто решал такую задачу. Помогите!!!"
Да не, ты чо! Ты первая, кто задался этим вопросом!
И ни в коем случае не ищи ответ в поиске - сразу тему создавай. Ведь твои вопросы уникальны, их никто никогда раньше не задавал... :)
|
|
3
ShaOlg
12.08.14
✎
09:15
|
(1) нет это не подойдем.Это вхождение одной строки в массив проверки, а мне надо несколько строк Т.Добавить(СтрокаДокумента). Для всех комплектующих. Я пробовала. Так вот информация по всем добавленным одинаковым областям заменяется последней. Что конечно же логично.
|
|
4
ShaOlg
12.08.14
✎
09:23
|
(2) - да я не нашла в поиске что мне нужно, проверка вывода одной строки макета с шапкой и итогами мне не подходит, мне надо
Т.Добавить(ШапкаДокумента);
Для каждого Комплект из СписокКомплектующ Цикл
Т.Добавить(СтрокаДокумента);
КонецЕсли;
Т.Добавить(ПодвалДокумента);
Мне в проверку надо загнать все строки набора. Он не разрывается. Если не трудно скинь ссылку на такой вариант.
|
|
5
Cube
12.08.14
✎
09:36
|
(4) Делай через временный табличный документ:
ТабДокументНабора = Новый ТабличныйДокумент;
ТабДокументНабора.Вывести(ШапкаДокумента);
Для каждого Комплект из СписокКомплектующ Цикл
ТабДокументНабора.Вывести(СтрокаДокумента);
КонецЕсли;
ТабДокументНабора.Вывести(ПодвалДокумента);
Если НЕ ТабДок.ПроверитьВывод(ТабДокументНабора) Тогда
ТабДок.ВывестиГоризонтальныйРазделительСтраниц();
КонецЕсли;
ТабДок.Вывести(ТабДокументНабора);
|
|
6
Cube
12.08.14
✎
09:38
|
(4) На этом форуме девушкам принято фотку в личную карточку вставлять. Чем удачнее фото, тем помогающих больше и ответы качественнее...
|
|
7
Defender aka LINN
12.08.14
✎
09:46
|
(3) Значит, для каждой комплектующей должна быть *отдельная* строка. Что-то типа этого:
ПроверяемыеСекции= Новый Массив;
Для Каждого Комплектующая Из СписокКомплектующих Цикл
НоваяСекция = Макет.ПолучитьОбласть("Строка");
НоваяСекция.Параметры.Заполнить(Комплектующая);
ПроверяемыеСекции.Добавить(НоваяСекция);
КонецЦикла;
Если ТабДокумент.ПроверитьВывод(ПроверяемыеСекции) Тогда
Для Каждого Секция Из ПроверяемыеСекции Цикл
ТабДокумент.Вывести(Секция);
КонецЦикла;
КонецЕсли;
Фсе ж просто.
|
|
8
ShaOlg
12.08.14
✎
10:59
|
(Defender aka LINN) нет при таком раскладе n-е количество раз выведется последняя секция.
(Cube) большое тебе спасибо. Все получилось :) Спасибо и за совет насчет фотки, на досуге об этом подумаю :)
|
|
9
Cube
12.08.14
✎
11:23
|
(8) "насчет фотки, на досуге об этом подумаю"
Правильный подход! %)
|
|
Требовать и эффективности, и гибкости от одной и той же программы — все равно, что искать очаровательную и скромную жену... по-видимому, нам следует остановиться на чем-то одном из двух. Фредерик Брукс-младший