Альтернативная подсистема печати

17.04.10

Разработка - Инструментарий разработчика

Кому не хватает штатных средств формирования печатных форм в 7.7 посвящается данная разработка. Поводом послужило требование заказчика выводить в нижнем колонтитуле печатных форм документов картинку-логотип компании. Причем требование непроходимое, т.е. компромисс был невозможен. Чтож вариантов было немного, самый простой из которых выводить в шаблон ворда и все что из этого вытекает. Не буду перечислять все остальные варианты, скажу лишь что ни один из них не подходил, кроме одного: написать свою ВК.

Скачать исходный код

Наименование Файл Версия Размер
Демо-база с компонентой, макетом и редактором макетов
.rar 1,26Mb
184
.rar 1,26Mb 184 Скачать

Пришлось наморщить лоб...

В итоге получилось все очень даже симпатично на мой взгляд. Конечно 95% за меня сделали великолепные компоненты FastReport 3. Те кто знаком с ними сразу поймут все вкусности. Ну а кто незнаком, рекомендую посетить офсайт проекта и ознакомится с руководством пользователя http://ns.fast-report.com/pbc_download/FR4.6.UserManual-ru.chm , в котором подробно изложены принципы и тонкости построения отчетов.

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

Использование компоненты очень простое:

  • свойство "ОбщиеДанные", типа "СписокЗначений", в котором задаются параметры, видимые в любом месте отчета
  • свойство "Секции", типа "ТаблицаЗначений" со структурой

ТЗПечать = СоздатьОбъект("ТаблицаЗначений");
ТЗПечать.НоваяКолонка("ИмяСекции","Строка",128);
ТЗПечать.НоваяКолонка("Данные","СписокЗначений");

      В которую надо заносить имя выводимой секции и ее данные.

  • метод Показать(ИмяФайлаМакета,"Заголовок окна")


В архиве демка, в которой реализованы штатный и нештатный методы печати счета

См. также

Консоль запросов

Инструментарий разработчика Платформа 1С v7.7 Конфигурации 1cv7 Абонемент ($m)

Консоль запросов к базе SQL, не требующая внешних компонент

10 стартмани

29.04.2015    21632    54    Gvozdod    8    

14

StartManager 1.4 - Развитие альтернативного стартера

Инструментарий разработчика Платформа 1С v7.7 Платформа 1С v8.3 Абонемент ($m)

Очередная редакция альтернативного стартера, являющегося продолжением StartManager 1.3. Спасибо всем, кто присылал свои замечания и пожелания, и тем, кто перечислял финансы на поддержку проекта. С учетом накопленного опыта, стартер был достаточно сильно переработан в плане архитектуры. В основном сделан упор на масштабируемость, для способности программы быстро адаптироваться к расширению предъявляемых требований (т.к. довольно часто просят добавить ту или иную хотелку). Было пересмотрено внешнее оформление, переработан существующий и добавлен новый функционал. В общем можно сказать, что стартер эволюционировал, по сравнению с предыдущей редакцией. Однако пока не всё реализовано, что планировалось, поэтому еще есть куда развиваться в плане функциональности.

1 стартмани

23.04.2014    165962    1868    Alexoniq    1596    

496

Tray Informer

Инструментарий разработчика Платформа 1С v7.7 Платформа 1С v8.3 Россия Абонемент ($m)

Согласитесь, что окно стандартное сообщений в 1С иногда приносит больше неудобств, чем пользы. И тем более разные "Предупредить"... Что с этим окном только не делают! Его отцепают от формы, делают маленьким, умудряются спрятать за границы экрана. А потом звонят программистам с претензией, что документ почему-то не проводится, отя ничего и не пишет. У вас такого не было? А вот у нас было и не раз )))

1 стартмани

04.09.2013    32913    61    O-Planet    78    

49

Изменение структуры баз 1С 7.7 без долгой реструктуризации. Часть 1. Справочники

Инструментарий разработчика Платформа 1С v7.7 Конфигурации 1cv7 Абонемент ($m)

На днях встретил вопрос на форуме про возможность внесения изменений в конфигурацию без долгого сохранения в рабочей базе большого объема. Вот решил поделиться опытом, как это делал я. База у нас была объемом порядка 120 Гб. К базе обращался сайт в режиме 24/7, поэтому важно было быстро сохранять изменения и желательно без последующего монопольного запуска для восстановления индексов и процедур и без отключения пользователей от базы. Это первая часть статьи и посвящена она справочникам. С одной стороны - это самый простой объект, с другой стороны, именно про справочник спрашивалось на форуме. Если статья будет востребована, то я напишу аналогичные про документы, регистры и может еще что.

1 стартмани

13.08.2013    21253    Reptile    5    

35

v7.7 1CDialogControls: Инструмент в помощь разработчику на 7.7.

Инструментарий разработчика Платформа 1С v7.7 Конфигурации 1cv7 Абонемент ($m)

Давным давно, когда я еще плотно писал на 7.7 работа с формами была мучительной и неудобной. Приходилось каждый элемент выкладывать, выравнивать на форме ручками, прописывать код в модуле. Иногда при разработке очередной формы приходила в голову мысль: "а где-то я уже похожее делал..." и начинался мучительный поиск подходящего кода в своих запасах........

1 стартмани

21.02.2013    18057    35    MarSeN    14    

16

[Разработчику] Любая таблица значений в OLAP

Инструментарий разработчика Платформа 1С v7.7 Конфигурации 1cv7 Абонемент ($m)

Анализируем различные данные в 1С, используя OLAP-технологии со всеми прелестями. Т.е. наглядное отображение данных, быстрые расчеты, горизонтальные и вертикальные группировки любой вложенности, удобная фильтрация, Drag'n'Drop и ещё много приятных вещей от MS. Обработка на входе принимает практически любую таблицу значений (ТЗ в которой колонкам указаны типы значений, строка, число и т.п.), на выходе имеем на форме 1С сводную таблицу и график по этой ТЗ, с которой работаем, как и в Excel со сводной таблицей и диаграммой. Взял за основу разработку «OLAP Анализ счёта» ( http://infostart.ru/public/14964/ ) от JohnyDeath и переделал под любую ТЗ. Опционально используется «Прогресс бар для 1С 77» (http://infostart.ru/public/14061/ ) от Gmix.

1 стартмани

21.12.2012    36128    51    venger    7    

23

Библиотека кода 1С 7.7 (накопленная за 8 лет)

Инструментарий разработчика Платформа 1С v7.7 Конфигурации 1cv7 Абонемент ($m)

Весь код на 1С 7.7, собранный для повторного использования за 8 лет работы.

10 стартмани

25.11.2012    35003    248    adhocprog    51    

70
Комментарии
Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. artbear 1518 03.04.10 08:35 Сейчас в теме
"Специальный редактор макетов" где находится? в ВК или в отдельной программе?
2. UncleVader 129 03.04.10 11:52 Сейчас в теме
(1) В отдельной программе, забыл сказать что она лежит в каталоге базы в \ExtForms\PrnForms рядом с примером макета
3. Anatolka 2 05.04.10 09:41 Сейчас в теме
описание канешно никакое, но за реализацию +
4. spectator 07.04.10 10:33 Сейчас в теме
Очень толково сделано. Давно искал альтернативу штатным средствам. Автору уважуха. :idea:
5. sevenlis 69 07.04.10 10:40 Сейчас в теме
FastReport? уже и в клюшках? :) +
6. Арчибальд 2707 07.04.10 10:46 Сейчас в теме
7. UncleVader 129 07.04.10 12:40 Сейчас в теме
Кто заюзает у себя в бою, отпишитесь как впечатления. У меня пока реализовано около десятка форм, полет нормальный
8. alex_serb 166 09.04.10 10:20 Сейчас в теме
Обязательно себе в архив полезных обработок. Жизнь ширше, вполне может пригодиться и даже очень. Спасибо!!
9. CheBurator 3119 25.05.10 02:06 Сейчас в теме
ндя... чего только не намутят ради логотипов в нижнем колонтитуле ;-)
10. UncleVader 129 25.05.10 09:12 Сейчас в теме
11. Kostik_ 29.06.10 15:16 Сейчас в теме
Подскажите, пожалуйста, с помощью этой компоненты и внешнего редактора можно решить следующую задачу???

Задача: есть накладные которые помещаются на половине А4 листа, в альбомном режиме. Нужно создать обработку которая бы печатала все накладные введенные за день по 2-ве на одном А4 в альбомном формате (в накладных может быть разное количество наименований). При реализации штатными средствами 1с ("ВывестиСекцию" и "ПрисоединитьСекцию") не могу этого сделать из-за разного количества наименований, появляться пустое пространство в одной из накладных.
12. UncleVader 129 29.06.10 16:03 Сейчас в теме
(11) Кажется мне у тебя не совсем верный подход к формированию печатных форм, твою задачу можно легко решить и штатным методом, ну и естественно этой компонентой тоже! Я такую печать накладных организовываю путем создания 2-х макетов - один в одну колонку для печати одной накладной в портрете и второй макет из двух одинаковых накладных в ландшафте. Таким образом не надо использовать горизонтальные секции - только вертикальные строковые секции.
13. Kostik_ 29.06.10 20:58 Сейчас в теме
(12)
один в одну колонку для печати одной накладной в портрете и второй макет из двух одинаковых накладных в ландшафте. Таким образом не надо использовать горизонтальные секции - только вертикальные строковые секции


Все это прокатило бы если:
- это были бы одинаковые накладные (а не разные с разным количеством ТОВАРОВ);
- это были бы накладные без табличной части.

При твоем подходе я просто не понимаю как вывести, например, 100 наименований товаров
14. UncleVader 129 29.06.10 21:17 Сейчас в теме
(13) А, я понял, у тебя на одном листе слева и справа разные накладные, тогда да, надо покумекать... Вообще-то надо покурить мануал от FR на предмет формирования многоколоночных отчетов, и исходя из логики построения подсунуть ему в нужный момент нужные данные. Но это теория, на практике надо пробовать, если что придумаю - скажу, а ты пока глянь оф. документацию. Если надо будет подкрутить компоненту - не вопрос, помогу
15. kosoy 09.02.11 13:18 Сейчас в теме
можно ли аналогичный функционал реализовать на 1С 8.1/8.2? У меня падает на "гМояПечать.Показать(ИмяФайлаПечатнойФормы,"ПЕЧАТЬ: Счет-фактура");"
16. Vladimirzz 07.04.11 10:24 Сейчас в теме
А как работать с группами. Формирую секцию в *.frp3, но заставить ее работать не удается ...
Не получается работать с функциями fastreport.
Оставьте свое сообщение