новое событие
Информационный поток
Задания вакансии материалы разработки сообщения форума

Создание нового документа с печатными формами

  • Добавить свою публикацию
  • для этого требуется регистрация

В добавлении новых объектов конфигурации для типовых конфигураций для 8.3 (УТ, БП и т д.) существует несколько особенностей:

1. Добавлен справочник "Идентификаторы объектов метаданных", предназначенный для хранения списка объектов метаданных.

2. Удалена удобная процедура (для БП 2.0), позволяющая вывести печатную форму в универсальное окно печати

УниверсальныеМеханизмы.НапечататьДокумент(ТабДокумент, КоличествоЭкземпляров, НаПринтер,
					  Заголовок, НепосредственнаяПечать, Ссылка, ИмяМакета) 

 

Рассмотрим решение данных особенностей на примере документа "Заказ-наряд" для типовой бухгалтерии предприятия 3.0.

 

1. Разрешим редактирование объектов конфигурации - меню "Конфигурация" - "Поддержка" - "Настройка поддержки". В появившемся окне выбрать "Включить возможность изменения". В следующем окне установить переключатели в состояние "Редактировать с сохранением поддержки"

2. Добавим новый документ "ЗаказНаряд" с необходим списком реквизитов и табличных частей.

3. Добавим формы списка и документа, оформим соответствующим образом.

4. Запустим отладку и попробуем открыть новый документ в режиме "1С: Предприятие"

Будет выдано следующее предупреждение:

Ошибка при выполнении функции ОбщегоНазначения.ИдентификаторОбъектаМетаданных()...

 Изображение

Все возможные способы решения данной ошибки приведены в тексте сообщения. Рассмотрим каждый:

- воспользоваться внешней обработкой "Инструменты разработчика: Обновление вспомогательных данных"

данную обработку можно скачать на ИТС или воспользоваться предлагаемой на инфостарте обработкой http://infostart.ru/public/295372/index.php?ID=295372

Обе обработки интуитивно-понятны:

Изображение

Рис. Обработка "Инструменты разработчика: Обновление вспомогательных данных"

 

Изображение

Рис. Обработка " Обновление справочника Идентификаторы объектов метаданных"

 

Единственное замечание - обработка с диска ИТС не всегда отрабатывает!


- запустить программу с параметром командной строки 1С: Предприятия 8
"/С ЗапуститьОбновлениеИнформационнойБазы"

Для этого в окне запуска конфигурации нажать кнопку "Изменить" и дойти до последнего окна редактирования:

Изображение

 

В дополнительных параметрах запуска прописываем строку /C ЗапуститьОбновлениеИнформационнойБазы. Нажимаем готово.

Обратите внимание что буква "С" в английской раскладке!

Изображение

 

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

Изображение


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

Увеличение номера конфигурации осуществляется в свойствах конфигурации.

Изображение

После изменения версии конфигурации запускаем отладку.

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

Изображение

 

Внимание! Данный способ не работает для УТ 11


5. После проведения одной из перечисленных выше процедур новый документ появится в справочнике метаданных и его возможно будет запустить в режиме "1С: Предприятие".

 

6. Для вывода печатных форм, в форме документа и в форме списка необходимо прописать следующие процедуры.

 

 

&НаСервере 
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)

УправлениеПечатью.ПриСозданииНаСервере(ЭтаФорма, Элементы.ГруппаВажныеКоманды);

КонецПроцедуры
&НаКлиенте 
Процедура Подключаемый_ВыполнитьКомандуПечати(Команда)

УправлениеПечатьюКлиент.ВыполнитьПодключаемуюКомандуПечати(Команда, ЭтаФорма, Объект);

КонецПроцедуры

 

Так как я предлагаю выводить кнопку печати в Группу важных команд, необходимо добавить ее на форме

Изображение

 

В модуле менеджера документа требуется прописать процедуры вызова печати и формирования печатной формы

 

////////////////////////////////////////////////////////////////////////////////
// ПРОЦЕДУРЫ И ФУНКЦИИ ПЕЧАТИ
// Заполняет список команд печати.
// 
// Параметры:
// КомандыПечати - ТаблицаЗначений - состав полей см. в функции УправлениеПечатью.СоздатьКоллекциюКомандПечати
//
Процедура ДобавитьКомандыПечати(КомандыПечати) Экспорт

// Счет-фактура
КомандаПечати = КомандыПечати.Добавить();
КомандаПечати.Идентификатор = "ЗаказНаряд";
КомандаПечати.Представление = НСтр("ru = 'Заказ-наряд'");
КомандаПечати.СписокФорм = "ФормаСписка,ФормаДокумента";

КонецПроцедуры
// Сформировать печатные формы объектов
//
// ВХОДЯЩИЕ:
// ИменаМакетов - Строка - Имена макетов, перечисленные через запятую
// МассивОбъектов - Массив - Массив ссылок на объекты которые нужно распечатать
// ПараметрыПечати - Структура - Структура дополнительных параметров печати
//
// ИСХОДЯЩИЕ:
// КоллекцияПечатныхФорм - Таблица значений - Сформированные табличные документы
// ПараметрыВывода - Структура - Параметры сформированных табличных документов
//
Процедура Печать(МассивОбъектов, ПараметрыПечати, КоллекцияПечатныхФорм, ОбъектыПечати, ПараметрыВывода) Экспорт

ПараметрыВывода.ДоступнаПечатьПоКомплектно = Истина; 
Если УправлениеПечатью.НужноПечататьМакет(КоллекцияПечатныхФорм, "ЗаказНаряд") Тогда
ВключатьУслуги = Ложь;
УправлениеПечатью.ВывестиТабличныйДокументВКоллекцию(КоллекцияПечатныхФорм, "ЗаказНаряд", "Заказ-наряд",
ПечатьДокумента(МассивОбъектов, ОбъектыПечати),,"ЗаказНаряд");
КонецЕсли;
ОбщегоНазначенияБП.ЗаполнитьДополнительныеПараметрыПечати(МассивОбъектов, КоллекцияПечатныхФорм, ОбъектыПечати, ПараметрыВывода); 

КонецПроцедуры
// Функция формирует табличный документ с печатной формой накладной,
//
// Возвращаемое значение:
// Табличный документ - печатная форма накладной
//
Функция ПечатьДокумента(МассивОбъектов, ОбъектыПечати) Экспорт
...;
Возврат ТабличныйДокумент;
КонецФункции

 

7. Запустим отладку и проверим вид кнопки печати в режиме "1С: Предприятие"

Изображение

 

8. Для добавления возможности печати дополнительных внешних форм необходимо добавить возможность вызова команды "Дополнительные печатные формы объекта".

Для этого в общих командах корректируем тип параметров команды, добавив в него ссылку на наш документ

Изображение

В формах списка и документа на закладке "Командный интерфейс" отобразится использование данной команды

Изображение

 

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

Изображение

 

 

 

 
0
Еще от автора
≡ к списку статей