Универсальный механизм для создания любой печатной формы в 1С Предприятии 8.

Эта бесплатная разработка от ООО "О-Планет" даст возможность сконструировать и подключить в любую конфигурацию 1С:Предприятие 8.2 произвольное количество печатных форм любой сложности. Договора, акты выполненных работ, сертификаты, декларации… Теперь все это стало возможным добавить в свою базу бесплатно, в течение нескольких минут, с помощью нашего универсального конструктора печатных форм.

 

Универсальный механизм для создания любой печатной формы в «1С Предприятие 8».

Автор этой разработки — Григорьева Елена, ведущий специалист ООО «О-Планет», профессионал высшей категории. 

 

Комментарии к архиву от автора

  • — В конфигурации 2 новых справочника.
  • — Подключаемый модуль должен крепиться к типовой внешней печатной форме.
  • — Сделано под бухгалтерию. Эта выгрузка под 15 платформу
 
Для реализации используются несколько объектов: обработка «Подключаемый модуль», справочник «Шаблоны секций» и справочник «Шаблоны печатных форм». Любая печатная форма состоит из частей. Как правильно это область заголовка, шапки таблицы, строки данных, области подвала и подписей. Программист создает печатную форму в режиме конфигуратора, затем подключает к базе и тогда пользователь может ее использовать. Благодаря универсальному механизму создания печатных форм пользователь имеет возможность самостоятельно создавать секции и макеты, а потом выводить печатные формы к любому документу.
 

1. Обработка «Подключаемый модуль».

Дополнительная обработка вида «Внешняя печатная форма». Подключается типовыми методами в меню «Сервис» — «Дополнительные отчеты и обработки» — «Дополнительные внешние печатные формы». Форма подключения элемента на рисунке

Добавляется к любому документу конфигурации.

2. Справочник «Шаблоны секций».

Справочник используется для создания секций макета.
На рисунке 2 показан пример простейшей секции под наименованием «Начало». В элементе формы указаны настройки для секции.

Наименование – условное наименование секции.
Строка нач, строка кон – диапазон строк макета, которые будут выводиться в печатной форме (заполняются автоматом при создании секции)
Колонка нач, колонка кон — диапазон колонок макета, которые будут выводиться в печатной форме (заполняются автоматом при создании секции)
Имя ТЧ – наименование табличной части документа, откуда будут браться данные.
Алгоритмы – программное описание нетиповых данных, которые будут выводиться в печатной форме.

На следующем рисунке показан непосредственно шаблон секции «Начало»

В шаблоне задаются текст (ДОГОВОР в рисунке 3) и параметры, подставляемые из документа (Номер в рисунке 3). Параметры задаются в квадратных скобках. Имя параметра должно совпадать с наименованием реквизита документа или табличной части документа. В этом случае параметр будет заменен на значение реквизита.

Далее на рисунке показан пример секции «Начало договора». В нем присутствует 4 параметра: организация, контрагент, директор и директорЗаказчика. Параметры «Организация» и «Контрагент» можно будет взять из документа. Для подстановки параметров «Директор» и «ДиректорЗаказчика» нужно будет прописать алгоритм заполнения параметра в поле настройки секции шаблона «Алгоритмы».

 

Пример заполнения поля «Алгоритмы» представлен на пятом рисунке. Здесь показан пример заполнения параметра «ДиректорЗаказчика». Делается запрос к справочнику по условию, причем при установке параметра по указанному условию делается ссылка к реквизиту документа. Ссылка к реквизиту выделена значками доллара ($Контрагент$). Сам параметр секции «ДиректорЗаказчика» также как и в самой секции указан в квадратных скобках.

3. Справочник «Шаблоны печатных форм».

Справочник «Шаблоны печатных форм» собирает вместе секции заданные в справочнике «Шаблоны секций». На рисунке 6 показан пример договора поставки, который состоит из 4-х секций. На закладке «Секции» в табличной части 2 колонки «Раздел» и «Секция». Раздел нужен для выделения частей договора, к примеру, основная часть договора, приложение 1, приложение 2 и т.д. Секция – это те кусочки, из которых раздел состоит.

На следующем рисунке показана закладка «Документы». На ней пользователь указывает (путем установки флажка в колонке «Использовать»), для каких документов должна выводиться эта печатная форма. Чтобы при вызове ее из документа открывался только список печатных форм, предназначенных для данного вида документов.

 

Вызов созданной печатной формы происходит через кнопку «Печать» документа. Пример показан на рисунке.

Далее выбирается шаблон печатной формы из справочника. Пример показан на рисунке 9. Напомню, что отбор ведется по текущему типу документов. Далее будет сформирована печатная форма. Ее можно будет подправить, если какие то данные не выведены полностью. И отправить на печать.

 

Этой разработкой мы открываем линейку авторских работ сотрудников ООО «О-Планет». Вы ищете слаженную команду профессиональных разработчиков бизнес решений на базе 1С и web-технологий? Вам нужны гарантии? Проверьте сами надежность наших программ, скачав бесплатно и опробовав наши коммерческие разработки на сайте infostart.ru!

 

Желаем приятной работы!

74 Comments

  1. hasp_x

    Симпатичная девушка:)

    Reply ↓
  2. Zero_nv

    Все гениальное просто. Простота поражает… других слов нет. Обидно что сам не додумался до такого

    Reply ↓
  3. iov

    (0) очень вовремя так сказать ( казалось бы тривиальная задача печать этикеток оказалась гораздо интереснее и понадобился именно механизм пользовательского редактирования). Но интересно не только описания но и область применения и причины именно такого решения при наличии типового функционала? спасибо.

    Reply ↓
  4. fishca

    (0) так пусть автор под своим аккаунтом и публикует ;), ты то O-Planet тут при чем?

    Reply ↓
  5. O-Planet

    (4) Как при чем? Мое ТЗ. И автор — тоже O-Planet 😉

    Reply ↓
  6. O-Planet

    (3) Типовой функционал, конечно, хорошо. Но он в составе кажется Розницы? А если нет на нее лицензии?

    Reply ↓
  7. fishca

    (5)

    Автор этой разработки — Григорьева Елена, ведущий специалист ООО «О-Планет», профессионал высшей категории.

    Ты меня не путай 😉 Ты сам это указал

    И автор — тоже O-Planet 😉

    так что ни разу не ты автор

    Reply ↓
  8. O-Planet

    (7) Сейчас O-Planet — это ООО. А йа — диреХтур )))

    Reply ↓
  9. fishca

    (8)

    А йа — диреХтур )))

    так и диреХтурствуй, а авторство оставь прекрасной половине ;), не примазывайся.

    Reply ↓
  10. Famza

    Спасибо, дельная вещь

    Reply ↓
  11. O-Planet

    (9) Злой ты (( плакаю…

    Reply ↓
  12. cool.vlad4

    а зачем лицо девушки к другой картинке прилепили?

    Reply ↓
  13. O-Planet

    (12) Нет, фон не меняли. Но когда работаешь с такими программистами, остальной мир становится черно-белым. 🙂

    Reply ↓
  14. electronik

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

    Reply ↓
  15. 1С_Мастер
    Эта бесплатная разработка от ООО «О-Планет» даст возможность сконструировать и подключить в любую конфигурацию 1С:Предприятие 8.2 произвольное количество печатных форм любой сложности.

    Так уж в любую? Ну да, нетиповые конфигурации это миф, их не существует

    Reply ↓
  16. kouchmv

    Ещё не пробовал, но вещь очень нужная. Автору респект!

    Reply ↓
  17. anig99

    Честно… Проще писать по-старинке.

    Reply ↓
  18. nataon

    Автору спасибо за работу, останется только пользователей учить настраивать макеты )))

    Reply ↓
  19. Arvend

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

    Reply ↓
  20. kiba

    Идея отличная, не совсем правда понял как подключить вывод табличной части документа. Можно тут поподробнее?

    Reply ↓
  21. O-Planet

    (19) Прям сердечно оскорбился 🙁 Мы — не франч, не партнеры 1С и даже не дилеры их ПО. Мы не продажники, мы — разработчики. А поскольку наши решения — это чаще всего коллективное творчество, то и выкладываем под общим ником, чтобы и найти было проще.

    Reply ↓
  22. Alex_grem

    + за идею

    Reply ↓
  23. sytkosa

    Интересно а с табличной частью данное творение умеет работать

    Reply ↓
  24. AlX0id

    плюсик за идею )

    Reply ↓
  25. Dimasik2007

    Чем функционал внешних печатных форм не устроил? Все равно, обычный пользователь не будет сам лепить формы, а вызовет «человечка». А последний будет лепить в том, в чем может.

    Reply ↓
  26. papami

    Недавно был вынужден изобретать универсальную ВПФ, чтобы все печатные формы ЗБУ печатались в Times New Roman. Ну вот такой каприз у заказчика). Не выносить же всё во внешние — нудная работа!

    Но Согласен с Eugeneer. Сам подход с изменением конфигурации ведет в никуда. Попробуйте хранить необходимые обработке данные другим способом.

    Reply ↓
  27. O-Planet

    (26) Ну все! Следующим выложу бесплатный загрузчик из экселя на управляемых формах с кучей разных настроек 😉

    Ты, по ходу, не въехал вообще, что эта разработка делает.

    Объясняю.

    Разработчик делает 2кирпичики»: кучу разных шаблонов: «шапка договора», «подписи договора», «Подпись и печать», «Табличная часть накладной». А пользователь собирает их в нужной ему последовательности, лишь добавляя свой текст. Суть разработки — не приглашать программиста всякий раз, когда нужна новая печатная форма.

    Reply ↓
  28. O-Planet

    (29) Сей продукт с успехом использует печатное агенство «ПолиМедиаПресс» и еще парочка наших клиентов.

    Reply ↓
  29. O-Planet

    Давай не будем, у кого лучше реализовано! На мой взгляд, наше решение намного более интересное, чем многие. Лена сумела выдержать баланс между функциональностью и простотой использования. Нравится много красЯвых кнопочек — да пожалуйста!

    А по поводу уровня пользователей… Один наш клиент — сеть супермаркетов «Первомайский» имеет для учета конфу, в которой ВСЕ документы, модули проведения, отчеты настраиваются на уровне пользователя, без необходимости лезть в конфигуратор. И что? Ведь настраивают!

    Reply ↓
  30. O-Planet

    Посмотрел, кстати, учет договоров респект-софта. Знал же, что у тебя дурной вкус, нет, надо мне было время тратить! Обычная разработка, сделанная под кого-то, а потом переведенная в тихую на тираж. Уверен, что 80-и процентам клиентов того функционала, что там, будет слишком мало, чтобы иметь оперативное управление, на которое они замахиваются.

    Reply ↓
  31. anig99

    А не проще было сделать через шаблоны ворда? Намного удобнее для клиентов, раз уж у них так много разных вариантов печатных форм?

    Reply ↓
  32. azmon

    Спасибо большое. Очень полезная разработка.

    Reply ↓
  33. sound

    Идея разработки ничего, также очень ничего сама идея привлекать внимание к своим обработкам с помощью фотографий симпатишных девушек, если не ошибаюсь, уже не в первый раз, беру на заметку 🙂

    Reply ↓
  34. DERL

    (15) q1q1q1,

    значит для самописной конфигурации не пойдет???

    Reply ↓
  35. Altair777

    (13)

    > (12) Нет, фон не меняли. Но когда работаешь с такими программистами, остальной мир становится черно-белым. 🙂

    Конечно, поменяли. Невооруженным глазом видно границу вставленного фрагмента.

    Моя младшая дочь (13 лет) и то лучше фотошопом пользуется, чем специалисты ООО «О-Планет».

    Reply ↓
  36. V.Nikonov

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

    Reply ↓
  37. wolfsoft

    Честно говоря, ПМСМ, велосипед с квадратными колёсами. Если пользователь в состоянии писать запросы для выдёргивания нужных данных, то набросать макет и вывести данные для него не должно быть проблемой — рутинная в общем-то работа в большинстве случаев. Хотя сделано, наверное, качественно (внутрь не смотрел), но сама идея мне как-то не очень… В общем, сам плюсовать не буду, но судя по количеству уже набранных разработкой плюсов, интерес к ней есть, а значит она имеет все основания быть, как говорится 🙂

    PS: А девушка, да, симпатичная, это плюс ;)))

    Reply ↓
  38. VasMart

    Грозятся и рекламируются на массового юзера.

    Но по факту Разработчик делает 2кирпичики. Был кирпич товары. Организация расширилась и нужен новый кирпич услуги. Как быть? Приходят «программисты» и забирают денег за новый кирпич или за новую печатную («А на кой мне этот механизм, я щас тут напишу…»).

    А так наверное пригодится кому-нибудь для шаблона под нечастые внедрения…

    PS Ждем загрузку из экселя. Чур под управляемые!!!

    Reply ↓
  39. jhfrek

    Вещь! Пригодиться! И становиться немного страшно! Теперь отпадает надобность в программистах для создания печатных форм, что же будет дальше…

    Reply ↓
  40. edzz

    (45) jhfrek, Ага отпадет… чаще всего возникает потребность не буковку поменять в форме печатной, а добавить возможность изменения подписантов или в коде что-нибудь интересное дописать. Так что не считаю сей продукт полноценным заменением программиста, тем более только для типовых конфиг

    Reply ↓
  41. see1c.ru

    (40) Altair777, Там скорее всего просто границу выделения заднего плана не размыли, перед применением ч/б фильтра 🙂

    Reply ↓
  42. Altair777

    (47) see1c.ru, вот я и говорю — не умеет они … 🙂

    Reply ↓
  43. DenisSF

    Отчет хороший, еще бы правда у пользователей руки оттуда росли или на крайней случай голова работала. Им ещё к обработке и инструкцию подавай, на какие кнопки нажимать….

    Reply ↓
  44. Kamikadze

    како1 пользователь будет рисовать форму? думаю, что разработка полезна для разработчиков, но не для пользователей.

    Reply ↓
  45. Kamikadze

    и еще — таким образом можно добавить только одну печатную форму для каждого документа. на продуманое решение не тянет….

    Reply ↓
  46. sarun

    Пльзователь, имхо, не будет ковыряться с настриванием форм.

    Reply ↓
  47. dima1c

    хорошая идея;) надо будет протестировать

    Reply ↓
  48. echo77

    (13)Йоптыть. Подправил бы картинку и перезалил бы давно, не позорься

    Reply ↓
  49. TitanLuchs

    Если б еще она работала с шаблонами ворда и экселя…

    Reply ↓
  50. AlexO

    (7)

    профессионал высшей категории.

    таких не бывает 🙂

    Reply ↓
  51. AlexO

    ПО разработке.

    Используется типовой механизм внешних обработок + через свою обработку в некие «шаблоны» заливается инфо и выводится как ПФ.

    А если «шаблон» не подойдет? а если полей больше? Или меньше?

    Идея, к сожалению, не новая — в 8.1 тоже пытались нечто подобное сделать (а там, как помните, с внешками намного проще даже было, чем в 8.2 УФ).

    Труда, конечно, много.

    Если девушка Света сама объявится в свойе разработке(и фотка будет пореальней, а то ракурсы они такие.. коварные 🙂 ) — плюс поставлю :).

    Вообще, у вас там Маша есть, Света — так пусть тоже здесь тусуются, а не «дирехтор» плюсы набирает 🙂

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

    Тогда и оценим и «профессионализм высшей категории», и все остальное 🙂

    В общем, ждем.

    Reply ↓
  52. AlexO

    (2) zero_nv,

    Все гениальное просто. Простота поражает… других слов нет. Обидно что сам не додумался до такого

    ну поразились. И что? 🙂

    вам-то зачем это нужно? поразиться? 🙂

    лучше б и написали, как и для чего использвоали.

    Reply ↓
  53. stark.temp

    Программа работоспособная. Автору респект!

    Reply ↓
  54. m_aster

    Спасибо, но есть нюансы, при добавлении алгоритма с параметрами виснет в бесконечном цикле:

    Процедура ВычислитьПараметрыПоАлгоритмам(ТаблицаПараметров, Ссылка, Элемент)

    СписокВнутреннихПараметров = Новый ТаблицаЗначений;

    СписокВнутреннихПараметров.Колонки.Добавить(«Параметр»);

    СписокВнутреннихПараметров.Колонки.Добавить(«Значение»);

    Для каждого Эл Из Элемент.Секции Цикл

    Алгоритм = Эл.Секция.Алгоритмы;

    —-> Пока Не Найти(Алгоритм, «[«) = 0 Цикл

    в строке всегда будет значение найденное <> 0, если есть знак параметра [

    Reply ↓
  55. jack_kkm

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

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

    Как у этой разработки дела с документацией? А документация «на отцепись», догадайтесь сами.

    Reply ↓
  56. Gmix

    Ну не тянет публикация на универсальность.

    Например:

    Как в ней сделать Торг-12 с резиновым подвалом и контролем переноса последней строки?

    Или как вывести ШК?

    Выложил свою подсистему «Настраиваемые печатные формы»

    Там можно делать практически любые формы.

    Мне кажется она все таки ближе к универсальности.

    Кода там меньше нужно писать.

    Для простых печатных форм вообще не нужно.

    Reply ↓
  57. alcoholic

    хорошая идея, спасибо

    Reply ↓
  58. Slavon

    Неплохой вариант

    Reply ↓
  59. Kamikadze

    (62) Gmix, + 100

    Reply ↓
  60. zhleonid8

    респект афтару:()

    Reply ↓
  61. Remo_W

    Плюсик за идею.

    Reply ↓
  62. maksimkonkov

    полезная штука

    Reply ↓
  63. Dethmond

    Идея то хорошая, но делаю все по старинке.

    Reply ↓
  64. Sergeant82

    Идея неплоха, но согласен с отписавшимися выше про Word и Excel

    Reply ↓
  65. napan

    Стандартных механизмов — с головой! И их главная суть цеплять формы и не изменять программу! И быстро прикреплять формы без выгона или перезапуска 1С.

    Плюс ничто не заменит гибкость программного кода, настройками сделать все не получится!!

    Когда надо будет получить и запросы и сделать выборку и формулки какие то проставить и условия и тд и тп.

    Reply ↓
  66. karbofos

    Да. К стати пришлась сия разработка. Теперь будет проще лабать отчеты для моих бухов. Авторам респект.

    Reply ↓
  67. edzz

    По старинке надежнее, все хотелки не учтешь

    Reply ↓
  68. Rzannikov

    Подскажите чайнику….

    Пытаюсь подключить к 1С:Предприятие 8.2 (8.2.16.368)- Управление торговлей, редакция 11.0 (11.0.9.12)

    Ругается…

    {Справочник.ДополнительныеОтчетыИОбработки.Форма.ФормаЭлемента.Форма(375)}: Ошибка при вызове метода контекста (Создать)

    ВнешняяОбработка = Менеджер.Создать(Результат.ИмяОбъекта);

    по причине:

    {ВнешняяОбработка.ПодключаемыйМодуль.МодульОбъекта(70,2)}: Переменная не определена (УниверсальныеМеханизмы)

    <<?>>УниверсальныеМеханизмы.НапечататьДокумент(ТабДокумент,1,Ложь,ОбщегоНазначения.СформироватьЗаголовокДокумента(СсылкаНаОбъект, «»),Ложь);

    Reply ↓
  69. andrewks

    (77) скорее всего, в описании допущена ошибка, и механизм сделан не для любых конфигураций, как заявлено, а для конфигураций со «старым» механизмом подключения ВПФ (БП 2, ЗУП 2.5, УТ 10.3 и т.п.). в новых конфах в режиме управляемого приложения и использованием БСП используется новый механизм подключения ВПФ.

    возможно, ошибаюсь, код не смотрел, пусть автор поправит, если это не так

    Reply ↓
  70. andrewks

    +(78) в БСП вообще нет модуля УниверсальныеМеханизмы

    Reply ↓
  71. Polkaver

    У меня тоже к сожалению ошибка {ВнешняяОбработка.ПодключаемыйМодуль.МодульОбъекта(70,2)}: Переменная не определена (УниверсальныеМеханизмы)

    Подскажите пожалуйста как исправить?

    Reply ↓
  72. _n26__

    Спасибо!

    Reply ↓
  73. echo77

    (57) AlexO, не Света, а Лена 😉

    Reply ↓
  74. user595174_shapuls

    (2) zero_nv, а справочники самому создавать что-ли, фаил скачал + к конфигурации какой-то фаил, помогите до конца разобраться, после 1-го пункта не знаю что дальше делать?

    Reply ↓

Leave a Comment

Ваш адрес email не будет опубликован. Обязательные поля помечены *