Предыдущая тема :: Следующая тема |
Автор |
Сообщение |
nikman
Зарегистрирован: 10.03.2005 Сообщения: 786 Откуда: Украина, Донецк
|
Добавлено: Пн Авг 04, 2008 10:32 am Заголовок сообщения: Документ. Печать двух экземпляров. |
|
|
В Казначее принято два экземпляра документа
печатать на двух таблицах вида "FrmGrid".
В этом есть минус.
Исчезает перенос длинных названий ОУ -- они обрезаются.
Есть какие-нибудь пути решения этого?
P.S.
Это читал:
Treasurer писал(а): | ActivePage.Copies появилось по моей инициативе. Но я его так и не применил как раз из-за неравномерного расположения двух экземпляров на странице. Кухтин отказался решать эту проблему, и предложил программно сдвигать вниз все элементы формы при печати второго экземпляра. Однако наживать себе гемор на этом деле я не захотел, тем более что у меня на всех формах уже были отлаженные страницы для печати двух экземпляров. |
|
|
Вернуться к началу |
|
|
nikman
Зарегистрирован: 10.03.2005 Сообщения: 786 Откуда: Украина, Донецк
|
Добавлено: Вт Авг 05, 2008 4:04 am Заголовок сообщения: |
|
|
Нашел решение. Реализовал. Получилось красиво и надежно.
Напомню, что СкроллГрид увеличивает высоту строк,
но не может выдать реальную высоту отдельной строки.
Только всей таблицы целиком.
Я создал спрятанную закладку.
На ней создал несколько СкроллГридов размером в одну строку.
Каждый СкроллГрид имеет датасорсом одну строку проводки.
СкроллГридов столько же, сколько строк в обычном Гриде.
Дальше просто.
Перед печатью устанавливаю высоту строк Грида
точно равной высоте соответствующего СкроллГрида.
Количество строк Грида уменьшаю по необходимости.
После печати возвращаю на место.
Предлагаю включить эту модификацию в следующие обновления. |
|
Вернуться к началу |
|
|
olimp Site Admin
Зарегистрирован: 10.03.2005 Сообщения: 2661
|
Добавлено: Вт Авг 05, 2008 4:34 am Заголовок сообщения: |
|
|
nikman писал(а): | Нашел решение. Реализовал. Получилось красиво и надежно.
Напомню, что СкроллГрид увеличивает высоту строк,
но не может выдать реальную высоту отдельной строки.
Только всей таблицы целиком.
Я создал спрятанную закладку.
На ней создал несколько СкроллГридов размером в одну строку.
Каждый СкроллГрид имеет датасорсом одну строку проводки.
|
А почему не обойтись одним scrollgrid ? |
|
Вернуться к началу |
|
|
nikman
Зарегистрирован: 10.03.2005 Сообщения: 786 Откуда: Украина, Донецк
|
Добавлено: Вт Авг 05, 2008 4:50 am Заголовок сообщения: |
|
|
Olimp писал(а): | А почему не обойтись одним scrollgrid ? |
nikman писал(а): | Напомню, что СкроллГрид увеличивает высоту строк,
но не может выдать реальную высоту отдельной строки.
Только всей таблицы целиком. |
Один скроллгрид не даст мне информацию, какие именно строки увеличились.
Только общий прирост всей таблицы. |
|
Вернуться к началу |
|
|
olimp Site Admin
Зарегистрирован: 10.03.2005 Сообщения: 2661
|
Добавлено: Вт Авг 05, 2008 5:13 am Заголовок сообщения: |
|
|
nikman писал(а): | Olimp писал(а): | А почему не обойтись одним scrollgrid ? |
nikman писал(а): | Напомню, что СкроллГрид увеличивает высоту строк,
но не может выдать реальную высоту отдельной строки.
Только всей таблицы целиком. |
Один скроллгрид не даст мне информацию, какие именно строки увеличились.
Только общий прирост всей таблицы. |
А зачем так сложно ? Почему сразу не печать в скролгриде ? Что делать, если твой документ не влезет на лист ? |
|
Вернуться к началу |
|
|
nikman
Зарегистрирован: 10.03.2005 Сообщения: 786 Откуда: Украина, Донецк
|
Добавлено: Вт Авг 05, 2008 6:36 am Заголовок сообщения: |
|
|
Olimp писал(а): | А зачем так сложно? Почему сразу не печать в скролгриде? | Два скроллгрида на странице.
Olimp писал(а): | Что делать, если твой документ не влезет на лист? | Все уже отслеживается.
Кол-во строк в проводке должно быть не больше кол-ва строк в Гриде. Все. |
|
Вернуться к началу |
|
|
treasurer
Зарегистрирован: 10.03.2005 Сообщения: 553
|
Добавлено: Вт Авг 05, 2008 7:15 am Заголовок сообщения: |
|
|
Коля, пришли мне пример. |
|
Вернуться к началу |
|
|
olimp Site Admin
Зарегистрирован: 10.03.2005 Сообщения: 2661
|
Добавлено: Вт Авг 05, 2008 7:18 am Заголовок сообщения: |
|
|
nikman писал(а): | Olimp писал(а): | А зачем так сложно? Почему сразу не печать в скролгриде? | Два скроллгрида на странице. |
2 скроллгрида, чтобы напечатать 2 экземпляра. Круто
А нельзя один скроллгрид и 2 экземпляра ?
Цитата: | Olimp писал(а): | Что делать, если твой документ не влезет на лист? | Все уже отслеживается.
Кол-во строк в проводке должно быть не больше кол-ва строк в Гриде. Все. | Ага. Вернись в начало проблемы - перенос длинных наименований. И, если этих наименований много и они очень длинные, то они не влезут.
Я не против упражнений с VBS. Мне всего лишь хочется понять почему скролл грид + Page.Copies нельзя использовать ? |
|
Вернуться к началу |
|
|
treasurer
Зарегистрирован: 10.03.2005 Сообщения: 553
|
Добавлено: Вт Авг 05, 2008 8:09 am Заголовок сообщения: |
|
|
Коля предлагает программно устанавливать выстоту строк грида. Вычислять эту выстоту можно с помощью невидимого служебного скроллгрида. Мысль интересная.
olimp писал(а): | Я не против упражнений с VBS. Мне всего лишь хочется понять почему скролл грид + Page.Copies нельзя использовать ? |
Page.Copies, наверное, можно использовать, но тоже не обойтись без упражнений с VBS. |
|
Вернуться к началу |
|
|
Antalex
Зарегистрирован: 18.08.2006 Сообщения: 251 Откуда: Краматорск
|
Добавлено: Вт Авг 05, 2008 11:45 am Заголовок сообщения: |
|
|
treasurer писал(а): | Page.Copies, наверное, можно использовать, но тоже не обойтись без упражнений с VBS. |
А оно того стоит?
Все ради того, что-бы бумажку пополам разрезать? |
|
Вернуться к началу |
|
|
nikman
Зарегистрирован: 10.03.2005 Сообщения: 786 Откуда: Украина, Донецк
|
Добавлено: Ср Авг 06, 2008 7:39 am Заголовок сообщения: |
|
|
Переспал и реализовал чуть по другому:
Теперь всего один служебный скроллгрид.
Всего из одной ячейки.
Туда подставляются данные любой ячейки грида
и возвращается необходимая высота.
Удобно.
treasurer писал(а): | Коля, пришли мне пример. |
Выслал вчера, и сегодня новую версию. |
|
Вернуться к началу |
|
|
treasurer
Зарегистрирован: 10.03.2005 Сообщения: 553
|
Добавлено: Чт Авг 07, 2008 6:21 am Заголовок сообщения: |
|
|
Antalex писал(а): | Все ради того, что-бы бумажку пополам разрезать? |
Да. Я один раз воспользовался, клиент это решение забраковал. |
|
Вернуться к началу |
|
|
|