РАБОТАЕМ ПО ВСЕЙ РОССИИ

Войти Регистрация
Корзина 0 позиций
на сумму 0 ₽

Разработка печатной формы 1С

Решаем проблемы 1С — платите только за результат!

В услугу входит:

  • Создание файла внешней печатной формы;
  • Создание макета печатной формы;
  • Написание программного кода для вывода данных печатной формы на экран;
  • Создание параметров авторегистрации печатной формы;
  • Подключение внешней печатной формы к базе 1С Предприятия.
купить
3 600 ₽

/час

*бесплатная оценка работ

*плати только за результат

*бесплатная оценка работ

*плати только за результат

 Требование накладная

Требование накладная

Приходно-кассовый ордер

Приходно-кассовый ордер

Реализация товаров и услуг

Реализация товаров и услуг

 Счет на оплату покупателю

Счет на оплату покупателю

Профессиональная поддержка онлайн по всей России

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

Если Вам необходима разработка печатных форм любой сложности, но Вы не технический специалист — просто обратитесь к нам и мы создадим идеальный шаблон под ваши задачи.

баннер

Профессиональная поддержка онлайн по всей России

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

Далее следуйте этим шагам:

  1. Откройте основное меню: «Файл» «Новый…».
  2. Заполните имя и синоним новой внешней обработки.

В 1С принято использовать «говорящие» имена для облегчения работы с кодом.

баннер

Создание макета внешней печатной формы

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

Для этого:

  1. Откройте конструктор макета, который чем-то напоминает Excel.
  2. Нарисуйте форму и разделите её на области с отдельными именами в зависимости от момента вывода на экран и количества появлений этой области.
баннер

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

Выделите следующие области:

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

Настройка переменных

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

Для этого:

1. Откройте конструктор макета, который чем-то напоминает Excel.

баннер

2. В пункте «Заполнение» выберите «Параметр». Убедитесь, что надпись в ячейке теперь заключена в угловые скобки. Можно также использовать «Шаблон» для указания переменных внутри строки.

«Параметр»

Написание кода для вывода данных в печатную форму

После настройки макета переходите к написанию кода. Добавьте функцию СведенияОВнешнейОбработке(), которая сообщает платформе 1С, что в файле находится печатная форма, и связывает её с конкретным документом.

Пример функции:

                            
Функция СведенияОВнешнейОбработке() Экспорт
ПараметрыРегистрации = ДополнительныеОтчетыИОбработки.СведенияОВнешнейОбработке("2.1.3.1");
ПараметрыРегистрации.Вид = ДополнительныеОтчетыИОбработкиКлиентСервер.ВидОбработкиПечатнаяФорма();
МасНазначений = Новый Массив;
МасНазначений.Добавить("Документ.РеализацияТоваровУслуг");
ПараметрыРегистрации.Назначение = МасНазначений;
ПараметрыРегистрации.Наименование = "WA Печать заказа";
ПараметрыРегистрации.Версия = "1.00";
ПараметрыРегистрации.БезопасныйРежим = Ложь;
НоваяКоманда = ПараметрыРегистрации.Команды.Добавить();
НоваяКоманда.Представление = НСтр("ru = 'WA Печать заказа'");
НоваяКоманда.Идентификатор = "Макет";
НоваяКоманда.Использование = ДополнительныеОтчетыИОбработкиКлиентСервер.ТипКомандыВызовСерверногоМетода();
НоваяКоманда.ПоказыватьОповещение = Истина;
НоваяКоманда.Модификатор = "ПечатьMXL";
Возврат ПараметрыРегистрации;
КонецФункции
                                    
                            

Инициализация печати и заполнение данных

Создайте процедуру для инициализации печати и получения данных из базы:

                            
Процедура Печать(МассивОбъектов КоллекцияПечатныхФорм ОбъектыПечати ПараметрыВывода) Экспорт
УправлениеПечатью.ВывестиТабличныйДокументВКоллекцию(КоллекцияПечатныхФорм "Макет" "WA Печать заказа" 
СформироватьПечатнуюФорму(МассивОбъектов[0] ОбъектыПечати));
КонецПроцедуры
                                    
                            

Получение данных для печати

Создайте функцию для получения данных и заполнения ими печатной формы:

                            
Функция СформироватьПечатнуюФорму(СсылкаНаДокумент ОбъектыПечати)
  УстановитьПривилегированныйРежим(Истина);
  Запрос = Новый Запрос;
  Запрос.Текст = "ВЫБРАТЬ
   РеализацияТоваровУслуг.Номер КАК Номер
   РеализацияТоваровУслуг.Дата КАК Дата
   РеализацияТоваровУслуг.Контрагент КАК Контрагент
   РеализацияТоваровУслуг.Менеджер КАК Менеджер
   РеализацияТоваровУслуг.Организация КАК Организация
              ;|ИЗ
   Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг
              ;|ГДЕ
   РеализацияТоваровУслуг.Ссылка = &СсылкаНаДокумент;";
  Запрос.УстановитьПараметр("СсылкаНаДокумент", СсылкаНаДокумент);   ;   ;   ;   ;
  ДанныеДляПечати = Запрос.ВыполнитьПакет();
  ДанныеДляПечатиПоШапке = ДанныеДляПечати[0].Выбрать();
  ДанныеДляПечатиПоШапке.Следующий();
  ДанныеДляПечатиПоТЧ = ДанныеДляПечати[1].Выбрать();
  Табдок = новый ТабличныйДокумент;
  Табдок.ИмяПараметровПечати = "ПараметрыПечати";
  ТабДок.ОриентацияСтраницы = ОриентацияСтраницы.Ландшафт;
  ТабДок.АвтоМасштаб = Истина;
  МакетОбработки = ПолучитьМакет("Макет");
  ОбластьШапка = МакетОбработки.ПолучитьОбласть("Шапка");
  ОбластьШапка.Параметры.Дата = Формат(ДанныеДляПечатиПоШапке.Дата, "ДФ=dd.MM.yyyy");
  ОбластьШапка.Параметры.Номер = ПрефиксацияОбъектовКлиентСервер.ПолучитьНомерНаПечать(ДанныеДляПечатиПоШапке.Номер);
  ОбластьШапка.Параметры.Организация = ДанныеДляПечатиПоШапке.Организация;
  ОбластьШапка.Параметры.Контрагент = ДанныеДляПечатиПоШапке.Контрагент;
  ОбластьШапка.Параметры.Менеджер = ДанныеДляПечатиПоШапке.Менеджер;
  Табдок.Вывести(ОбластьШапка);
  ОбластьСтроки = МакетОбработки.ПолучитьОбласть("ДанныеСтрок");
  ИтогКоличество = 0;
  ИтогСумма = 0;
  Пока ДанныеДляПечатиПоТЧ.следующий() цикл
      ;ОбластьСтроки.Параметры.Номенклатура = ДанныеДляПечатиПоТЧ.Номенклатура;
      ;ОбластьСтроки.Параметры.Количество = ДанныеДляПечатиПоТЧ.Количество;
      ;ИтогКоличество = ИтогКоличество + ДанныеДляПечатиПоТЧ.Количество;
      ;ОбластьСтроки.Параметры.Цена = ДанныеДляПечатиПоТЧ.Цена;
      ;ОбластьСтроки.Параметры.Сумма = ДанныеДляПечатиПоТЧ.Сумма;
      ;ИтогСумма = ИтогСумма + ДанныеДляПечатиПоТЧ.Сумма;
      ;Табдок.Вывести(ОбластьСтроки);
  КонецЦикла;
  ОбластьПодвал = МакетОбработки.ПолучитьОбласть("ИтогиСтрок");
  ОбластьПодвал.Параметры.ИтогКоличество = ИтогКоличество;
  ОбластьПодвал.Параметры.ИтогСумма = ИтогСумма;
  Табдок.Вывести(ОбластьПодвал);
  Возврат Табдок;
	 КонецФункции
                                    
                            

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

Подключение внешней обработки к конфигурации:

  1. Переход в режим 1С:Предприятие
  2. Открытие меню администрирования

    Откройте «Администрирование» ->

    «Печатные формы, отчёты и обработки» ->

    «Дополнительные отчёты и обработки».

баннер

Заполнение макета данными

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

Подключение внешней обработки к конфигурации:

  1. Переход в режим 1С:Предприятие
  2. Открытие меню администрирования


    Откройте «Администрирование» ->

    «Печатные формы, отчёты и обработки» ->

    «Дополнительные отчёты и обработки».

баннер

1. Добавление новой обработки:

  • Добавьте новую внешнюю обработку, указав файл созданной обработки.
  • Укажите, для какого типа документа используется данная обработка (в нашем примере это документ продажи товаров).
баннер

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

Если в процессе работы у вас возникнут вопросы или вам потребуется помощь, не стесняйтесь обращаться к специалистам компании. Мы не просто поможем вам создать и настроить печатные формы, но и предложим лучшие идеи для оптимизации ваших бизнес-процессов. Наши эксперты всегда готовы поделиться своим опытом и знаниями, чтобы вы могли сосредоточиться на главном — развитии вашего бизнеса.


Клиенты о нас


Остались вопросы?

Бесплатно создадим план автоматизации вашего бизнеса. Проведем анализ, подберем оптимальные решения, рассчитаем стоимость оборудования и настроим всё под ключ.