Вывод области печати разных размеров в этикетках

24.09.13

Задачи пользователя - Этикетки, ценники

Как вывести этикетку (паспорт качества) с разным количеством параметров

Скачать файл

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование По подписке [?] Купить один файл
Обработка печать паспортов качества
.epf 18,56Kb
10
10 Скачать (1 SM) Купить за 1 850 руб.

Не знаю, будет ли полезна кому-либо эта статья, но для меня явилось открытием, что не так просто вывести области табличной части в виде этикеток размером, к примеру, в пол-листа, если лист у нас в положении ландшафт.

Такого вида:

 

Т.е.  на листе по 2 штуки в нашем случае(можно 3, 4, ...). Общее количество этикеток произвольное .

Вы скажете - нет ничего проще: используй метод Вывести(), далее Присоединить () , далее опять Вывести() и т.д.

Но не так то все просто:  наша область этикетки состоит не из 1 секции, а из нескольких, причем средняя часть каждый раз может содержать различное количество строк, т.е. выводятся некие параметры, количество которых может меняться.

После того как были прочесаны просторы интернета, удалось найти способ, который подойдет всем.

 

ТабДокумент        = Новый ТабличныйДокумент();
ТабДокумент1      = Новый ТабличныйДокумент();    //            Создаем 2 таблицы
ТекСтолбец = 0;
 
ОбластьШапка = Макет.ПолучитьОбласть("Шапка|Столбец");        // по вертикали необходимо чтобы граница какая-то присутствовала в макете
ОбластьСтрока = Макет.ПолучитьОбласть("Строка|Столбец");      // в данном варианте поле Столбец ограничивает макет по вертикали
ОбластьПараметры = Макет.ПолучитьОбласть("Параметры|Столбец");
ОбластьПодвал = Макет.ПолучитьОбласть("Подвал|Столбец");
ОбластьКоличество = Макет.ПолучитьОбласть("Количество|Столбец");
Для Каждого СтрокаТЧ ИзСерии Цикл
                ТабДокумент1.Очистить();                                     //очищать обязательно!!!
                ТабДокумент1.Вывести(ОбластьШапка);
                  Анализы=СтрокаТЧ.Документ.Анализы;
                Для Каждого Индекс Из Анализы Цикл
                ОбластьСтрока.Параметры.РезультатАнализа =Индекс.ЗначениеПоказателя;
                ТабДокумент1.Вывести(ОбластьСтрока);       // вот количество этих строк разное
КонецЦикла;
ТабДокумент1.Вывести(ОбластьПодвал);
Если ТекСтолбец =0 Тогда
ТабДокумент.Вывести(ТабДокумент1.ПолучитьОбласть(1, 1, ТабДокумент1.ВысотаТаблицы,   ТабДокумент1.ШиринаТаблицы));     // Высота таблицы и Ширина рассчитываются системно
        ТекСтолбец = ТекСтолбец + 1;
  Иначе
  ТабДокумент.Присоединить(ТабДокумент1.ПолучитьОбласть(1, 1, ТабДокумент1.ВысотаТаблицы, ТабДокумент1.ШиринаТаблицы));
ТабДокумент.ВывестиГоризонтальныйРазделительСтраниц();
          ТекСтолбец =0;
КонецЕсли;

   

Главная фишка в использовании «ПолучитьОбласть(1, 1, ТабДокумент1.ВысотаТаблицы, ТабДокумент1.ШиринаТаблицы)», без этого чудо-оператора постоянно получалось не то, что нужно, области скакали как им было угодно, то они выводились все на одной странице, то каждый раз выводились с новой. Можно было использовать размеры выводимой области, но это подходит только для макетов, где ты точно знаешь размер выводимой области, в нашем варианте и строки разные, и количество их может отличаться.

Приложена обработка на основании документа Сертификация номенклатуры, потому что проблема возникла именно для печати паспортов качества. Понимаю, что не у всех используется данный документ, но, как говорится, у кого что болит..

Надеюсь, все же кому-то эта статья пригодится.  Когда у меня возникла эта проблема, я рванула на Инфостарт, но, к сожалению, в этом вопросе здесь был пробел. Давайте сделаем сайт Инфостарт без пробелов :)

область печати этикетки паспорт качества

См. также

Этикетки, ценники Пользователь Платформа 1С v8.3 Конфигурации 1cv8 Розничная и сетевая торговля (FMCG) Рестораны, кафе и фаст-фуд Беларусь Украина Россия Управленческий учет Платные (руб)

Простая в использовании обработка для формирования и печати ценников и этикеток со штрих-кодом, с дополнительной ценой, для 1С8.х Большое разнообразие шаблонов печатных форм. Управляемая форма (Такси) + Обычный режим.

3588 руб.

11.11.2020    49698    60    47    

69

Этикетки, ценники Пользователь Платформа 1С v8.3 Управляемые формы 1С:Розница 2 1С:Управление нашей фирмой 1.6 Платные (руб)

Встроенная в конфигурации Розница 2.3 и УНФ 1.6 подсистема печати ценников по мне слишком неповоротлива и с усилиями поддается тонкой настройке, решил с нуля написать свою универсальную печать ценников для этих конфигураций.

2000 руб.

04.11.2019    29383    116    87    

55

Этикетки, ценники Пользователь Платформа 1С v8.3 1С:Розница 2 1С:Управление торговлей 11 1С:Управление нашей фирмой 3.0 Абонемент ($m)

Расширение "Контроль ценников". Позволяет автоматизировать контроль над устаревшими ценниками в магазине при изменении цен на товары. Продавцы или товароведы получают список товаров с измененными ценами для замены ценников в режиме онлайн.

10 стартмани

30.10.2024    252    3    Miket78    4    

5

Этикетки, ценники Пользователь Платформа 1С v8.3 1С:Розница 2 Розничная и сетевая торговля (FMCG) Россия Абонемент ($m)

Внешняя обработка для 1С Розница 2.2.ХХХ - 2.3.ХХХ для печати формирования штрихкодов весового товара и печати на принтере термоэтикеток или кассовом аппарате.

1 стартмани

29.10.2024    302    3    independ    1    

5

Логистика, склад и ТМЦ Этикетки, ценники Пользователь Платформа 1С v8.3 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Управленческий учет Абонемент ($m)

Выводит при печати этикетки складской ячейки в качестве штрихкода адрес ячейки вместо уникального идентификатора

1 стартмани

20.06.2024    1142    3    Alexei_Siva    4    

6

Этикетки, ценники Программист Мобильная платформа Бесплатно (free)

Печать этикеток на принтер WiFi без драйвера.

20.01.2023    2575    aldar    0    

9

Этикетки, ценники Пользователь Платформа 1С v8.3 1С:Управление нашей фирмой 1.6 1С:Управление нашей фирмой 3.0 Россия Управленческий учет Абонемент ($m)

Внешняя печатная форма для принтера этикеток. В отличие от базовой обработки для печати этикеток эта может выводить на печать дополнительные свойства справочника Номенклатура, а также в ней несложный программный код, что позволяет легко дорабатывать обработку под свои нужды.

2 стартмани

03.01.2023    4128    29    AndreyPonom    9    

11
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. makas 44 16.02.15 10:08 Сейчас в теме
Симпатичная форма печатается +
2. masik85 21 19.02.15 09:12 Сейчас в теме
(1) makas, спасибки, хоть кому-то пригодилась :))
Оставьте свое сообщение