Как создать шаблон конфигурации 1с

Обновлено: 06.07.2024

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

Описанный процесс обновления детально раскроет ответы на следующие вопросы:

  • Откуда и какие обновления скачивать?
  • В какой последовательности и как устанавливать эти обновления?
  • Когда создавать свой файл поставки и какие при этом есть подводные камни?

Применимость

В качестве примера для разбора последовательности обновлений в статье используется конфигурация 1С:Управление торговлей 11.1, которую необходимо обновить с редации 11.1.2.22 до редакции 11.1.4.11. Но сам алгоритм обновлений, конечно же, актуален и на текущий день для любых типовых конфигураций. Поэтому в качестве практики предлагаем вам самостоятельно проделать аналогичные действия для любых актуальных релизов, чтобы закрепить полученные знания.

Как в 1С установить файлы обновления и шаблоны конфигураций

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

Информационные базы 1С

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

Кнопка 1С:Предприятие необходима для запуска информационных баз в пользовательском режиме.

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

Изначально исходные файлы конфигурации находятся внутри папки SETUP (при поставке начального диска), а обновления – UPDSETUP. На основании шаблона, извлеченного из каталога SETUP можно создать чистую базу, готовую к работе.

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

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

  • скачать все необходимые обновления;
  • сначала взять устаревшую конфигурацию (например, если на Вашем компьютере имеется старая база или установить с диска из коробки 1С шаблон и создать базу) и обновить конфигурацию до актуальной;
  • в конфигураторе создать файл поставки;
  • у клиента установить последнее обновление и в ту же директорию поместить файл поставки;
  • из окна информационных баз можно будет создавать актуальные базы обновленной конфигурации;
  • по умолчанию у каждого пользователя создается свой каталог шаблонов, для удобства этот каталог можно разместить и прописать в сетевой папке.

Выполняем на практике. На начальном этапе используем готовую базу, а у клиента создадим новую. С помощью кнопки Конфигуратор открываем на Вашем компьютере старую базу (например, УТ11) и проверяем номер последнего релиза.

Номер последнего релиза Конфигурации

Скачиваем последние обновления: релизы 11.1.2.25, 11.1.4.10, 11.1.4.11, 11.1.2.31.

Последние обновления Конфигурации

Для удобства устанавливаем все обновления в одну директорию, например С:\templates (предварительно создайте на диске такую папку). Дело в том, что по умолчанию создается каталог шаблонов и обновлений, принадлежащий текущему пользователю.

Однако есть возможность указывать общие каталоги. При создании новой базы или обновлении существующей, в указанных каталогах система будет искать существующие шаблоны (обновления).

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

Установка конфигурации

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

Настройка информационных баз

Откроется окно “Настройка диалога запуска”.

Настройка диалога запуска

В таблицу с каталогами шаблонов конфигураций и обновлений добавьте каталог С:\templates. Сделать это можно, нажав на кнопку Добавить и выбрав нужную папку в раскрывшемся диалоговом окне.

Добавить каталог

Добавить каталог

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

Запуск обновления конфигурации

После чего появится окно настройки поиска доступных обновлений (см. рис. 7), в котором фактически нужно будет нажать на кнопку Далее.

Поиск доступных обновлений

В очередном окне “Обновление конфигурации” оставьте только галочку Искать в текущих каталогах шаблонов и обновлений, чтобы система не производила лишних действий.

Выбрать область поиска файлов обновлений

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

Выберите необходимое обновление

Обновить конфигурацию базы данных

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

Создать файлы поставки и обновления конфигурации

Этот файл должен находиться в папке, в которой содержится последний файл обновления.

Создать файл поставки

Содержимое данной директории будет выглядеть следующим образом.

Шаблон обновленной конфигурации

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

Содержимое файла 1cv8.mft

Мы видим, что в качестве шаблона прописан именно наш файл 1Cv8.cf. Однако следует предупредить, что не для всех конфигураций в качестве шаблона прописан файл с таким названием.

В частности, для Бухгалтерии 3.0 в качестве шаблона по умолчанию используется файл 1CV8new.dt. Более подробно данный момент разберем в очередной статье.

Бухгалтерия 3.0

Замена 1CV8new.dt на 1сv8.сf

Теперь, при установке конфигурации у клиента, Вы можете создать на его компьютере точно такую же директорию, которая указывалась при создании файла поставки и скопировать туда подготовленное содержимое (главное, файлы 1Cv8.cf и 1cv8.mft).

B нашем случае это директория С:\templates\1C\trade\11_1_4_11\ (та директория, в которую установились файлы из комплекта последнего обновления).

А в настройках окна информационных баз следует также указать в качестве каталога шаблонов конфигураций и обновлений папку C:\templates (как Вы делали ранее на своем компьютере).

Указать путь к шаблонам и обновлениям конфигурации

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

Создание информационной базы из шаблона

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

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

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

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


PDF-версия статьи для участников группы ВКонтакте

Статья в PDF-формате

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

Что такое шаблон в 1С? Шаблон это комбинация различных операторов, которая может часто встречаться в коде программы. Например, шаблоном можно сделать все условия Если..То, или все циклы Пока…Цикл.
Шаблоны хранятся в файлах (имеют расширение *.st), могут поставляться с платформой 1С, а могут быть созданы пользователем самостоятельно. Шаблоны, которые поставляются платформой 1С, называются «Стандартными» и хранятся в каталоге bin соответствующего релиза платформы.


А шаблоны, которые создали пользователи, называются соответственно «Пользовательскими». В этой статье я научу Вас работать и со стандартными шаблонами, которые поставляет 1С: Предприятие.
Вызвать шаблон достаточно просто: нужно написать какое-нибудь строку, которая привязана к этому шаблону (после узнаем как) и нажать комбинацию клавиш Ctrl+Q. Курсор должен быть сразу после последнего символа строки! После этого, или сразу появится нужный шаблон в коде, или появится окно условия, как на рисунке ниже.


Если Вы введете это условие, и нажмете ОК, то оно появится в коде



&НаКлиенте
Процедура Команда1 ( Команда )

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



Или через панель «Стандартная»



Или используя контекстное меню


После этого вам откроется список шаблонов, пока в нем только один головной каталог «Стандартные» (поскольку нет пользовательских), который состоит из трех подкаталогов «Управляющие», «Прикладные» и «Прочее»

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


Где снять флаг «Использовать стандартные шаблоны»


После этого список шаблонов будет пуст.


Посмотрим, что же собой представляет стандартный шаблон, для этого зайдем в какой-нибудь шаблон в подкаталоге «Управляющие», например, шаблон «Пока». Для этого нужно дважды кликнуть по нему мышкой. В открывшемся окне, по большому счету, нам интересно только название и строка, на которую шаблон будет заменяться, и сам текст шаблона


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


Это значит, что Вам не обязательно писать всю строку: «функция», а можно написать только часть: «функ»
Кстати, регистр для написания строки шаблона не важен!
Обратите внимание, что в списке шаблонов есть шаблоны, у которых не заполнен параметр «Автоматически заменять строку» (он в списке в скобках)


Это значит, что эти шаблоны нельзя подобрать комбинацией Ctrl+Q, но их можно перетащить из списка шаблонов в Ваш код. Например, перетащим шаблон «Запрос». Просто выделим шаблон и поведем его мышкой в модуль.


После этого откроется конструктор запроса


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


Так же шаблоны можно получать при помощи контекстного меню

В контекстное меню войдут шаблоны, у которых установлен флаг «Включать в контекстное меню»


Шаблоны можно включить в список контекстных подсказок. Тогда подсказки будут появляться в таком виде


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



Иногда очень удобно использовать шаблоны в автозаменах. В этом случае, что бы выбрать шаблон, после написания текста нужно нажать клавишу «Пробел» или «Enter». Включаются автозамены в уже знакомых нам параметрах конфигурации.


На этом мы закончим изучение стандартных шаблонов. Изучите шаблоны особенно, если Вы планируете сдавать на 1С: Специалиста по платформе, поскольку они очень существенно могут уменьшить время набора кода. А время это один из самых ценных ресурсов на этом экзамене!


Отличное пособие по разработке в управляемом приложении 1С, как для начинающих разработчиков, так и для опытных программистов.

  1. Очень доступный и понятный язык изложения
  2. Книга посылается на электронную почту в формате PDF. Можно открыть на любом устройстве!
  3. Поймете идеологию управляемого приложения 1С
  4. Узнаете, как разрабатывать управляемое приложение;
  5. Научитесь разрабатывать управляемые формы 1С;
  6. Сможете работать с основными и нужными элементами управляемых форм
  7. Программирование под управляемым приложением станет понятным


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

можно оплатить вручную:

Дата публикации 14.10.2020

Использован релиз 3.0.83

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

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

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

Этап 1. Сохранение конфигурации в файл (рис. 1)


Этап 2. Создание новой информационной базы без конфигурации (рис. 2)

  1. Откройте окно запуска программы.
  2. Кнопка "Добавить".
  3. В открывшейся форме установите переключатель в положение "Создание новой информационной базы"и перейдите к следующему шагу по кнопке "Далее >".
  4. Установите переключатель в положение "Создание информационной базы без конфигурации . " (нижнее положение переключателя) и перейдите к следующему шагу по кнопке "Далее >".
  5. Укажите наименование информационной базы и выберите ее тип расположения, по кнопке "Далее >" перейдите к следующему шагу.
  6. Укажите каталог, где будет физически располагаться информационная база, по кнопке "Далее >" перейдите к следующему шагу.
  7. Укажите параметры запуска информационной базы. Эти параметры для рабочих баз обычно устанавливают специалисты. Оставьте настройки, предложенные программой по умолчанию – оба переключателя в положении "Выбирать автоматически".
  8. Кнопка "Готово".


Этап 3. Загрузка конфигурации из файла (рис. 3)


Смотрите также

Все это делается довольно просто))

И так, создадим новую обработку 1С.

Мы будем создавать внешний счет на оплату покупателю, поэтому обработку так и назовем: «СчетНаОплатуВнешний».

Внешняя обработка 1С 8.3

Сохраним ее на жесткий диск.

Зайдем в модуль обработки, и создадим экспортную функцию СведенияОВнешнейОбработке.

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

Создадим первый элемент структуры, он будет иметь ключ с название «Вид».

Значением данной связки КлючИЗначение идет одна из строк:

Следующий элемент структуры должен иметь ключ с названием Назначение.

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

Они должны иметь тип строка, и быть в следующем формате:

У нас этот массив будет возвращать отдельная функция ПолучитьНазначениеОбработки.

Допишем созданный последним элемент структуры.

Следующий элемент структуры будет иметь название «Версия», значением данного элемента будет версия обработки. Задается программистом на его усмотрение.

Следующий элемент имеет название «Информация», который содержит краткую информацию по обработке.

Следующий элемент имеет название «БезопасныйРежим», его необходим устанавливать в значение истина или ложь, в зависимости от того необходимо устанавливать или отключать безопасный режим во время выполнения обработки. Мы установим значение Истина.

И в последнем параметре необходимо добавить команды, которые будут поставляться обработкой. Для этого нам необходимо создать и заполнить таблицу команд. Разработаем функцию, которая создает и возвращает таблицу с определенным набором полей. Делать это будем в функции ПолучитьТаблицуКоманд.

Создадим функцию и таблицу значений внутри нее.

Теперь создадим пять колонок этой таблицы.

И первая колонка – Представление (тип строка).

Вторая колонка – Идентификатор.

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

Третья колонка – Использование.

Параметр данной колонки типа строка, должен принимать одно из четырех значений –

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

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

И последняя колонка – модификатор. Это дополнительный модификатор команды. В нашем случае будет иметь название ПечатьMXL.

Теперь создадим процедуру, которая будет заполнять данную таблицу значений.

В данном коде все понятно.

В функции СведенияОВнешнейОбработке создадим команду и заполним ее.

Создаем таблицу значений:

Теперь заполним ее.

Еще раз пройдемся по параметрам.

  • Первый параметр, непосредственно таблица команд вновь созданная.
  • Второй параметр, как будет отображаться команда пользователю на форме (документа, справочника).
  • Третий – уникальный идентификатор команды, запомните его, он нам еще пригодится!
  • Четвертый параметр – использование, что вызовет Ваша команда.
  • Пятый параметр – показывать оповещение, мы не будем это делать.
  • Шестой параметр – модификатор, в нашем случае он всегда один ПечатьMXL.

Теперь передадим вновь созданную таблицу команд в структуру ПараметрыРегистрации.

И пусть наша функция СведенияОВнешнейОбработке возвращает данную структуру.

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

Теперь в модуле объекта создадим процедуру Печать. Это процедура с четырьмя параметрами: МассивОбъектов, КоллекцияПечатныхФорм, ОбъектыПечати, ПараметрыВывода.

И вот начинается самое интересное, теперь вам необходимо войти в аналогичную процедуру в менеджере объекта счет на оплату покупателю, или в обработке, которая, по сути, является менеджером печати.

Как узнать, где находится нужная нам функция?

Откроем модуль менеджера документа Счет на оплату покупателю.

Открыть модуль менеджера объекта

И найдем процедуру ДобавитьКомандыПечати, которая заполняет список команд .

Добавить команды печати

оскольку мы делаем внешнюю печатную форму счета на оплату, то нас интересует первое добавление в таблицу значений (см. свойство Представление), и мы видим, что в этом случае заполнено свойство МенеджерПечати, где указан объект Обработка.ПечатьСчетаНаОплату. Это значит, что нам нужно найти процедуру Печать в модуле менеджера обработки ПечатьСчетаНаОплату.

А если бы мы решили сделать внешнюю печатную форму договора счета на оплату (второе добавление в таблицу значений КомандыПечати), то нам нужно было бы найти процедуру Печать в модуле менеджера документа СчетНаОплатуПокупателя.

Откроем модуль менеджера обработки ПечатьСчетаНаОплату.

Модуль менеджера обработки ПечатьСчетаНаОплату

И раскроем процедуру Печать.

Процедура печать обработки ПечатьСчетаНаОплату

Внимание! Копировать напрямую процедуру Печать из модуля менеджера (без разницы обработка это, документ или справочник) не следует. Поскольку у них отличается количество параметров, в последствие это приводит к ошибкам при работе.

Так же из модуля менеджера обработки скопируем процедуру СформироватьПечатнуюФорм

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

Эта таблица получается при помощи процедуры модуля менеджера объекта (в нашем случае это документ СчетНаОплатуПокупателю). Найдем эту процедуру в модуле менеджера документа СчетНаОплатуПокупателю.

Получаем таблицу сведений счета на оплату

И скопируем её в модель нашей внешней обработки.

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

Если мы сейчас сделаем проверку модуля внешней обработки, то выйдет две ошибки. Первая, что не определена переменная ПараметрыПечати в процедуре Печать, и, что не найдена функция ПолучитьТекстЗапросаДляФормированияТаблицыСведенийСчетаНаОплату в функции ПолучитьТаблицуСведенийСчетаНаОплату.

Создадим переменную ПараметрыПечати в процедуре Печать. Это будет простая структура.

А потом найдем функцию ПолучитьТекстЗапросаДляФормированияТаблицыСведенийСчетаНаОплату в модуле менеджера документа СчетНаОплатуПокупателю и скопируем её в модуль внешней обработки.

Процедура в модуле менеджера счета на оплату

Должен получится следующий состав процедур и функций модуля внешней обработки (для удобства я разделил их на две области).

Состав процедур внешней печатной формы

Еще раз делаем проверку модуля. Ошибок не обнаружено.

Продолжаем, теперь нам необходимо, что бы брался наш макет, и печатался по нашей команде.

Нас интересует процедура СформироватьПечатнуюФорму, а в ней мы уделим внимание методу ПечатьСчетаНаОплату общего модуля ПечатьТорговыхДокументов.

Метод ПечатьСчетаНаОплату

Очевидно, она непосредственно формирует табличный документ. Перейдем в этот общий модуль, и скопируем функцию ПечатьСчетаНаОплату в модуль нашей внешней обработки.

Копирование процедуры ПечатьСчетаНаОплату

Делаем проверку модуля внешней обработки. Ругается на несуществующие методы ВывестиЗаголовокПредупреждение и НомерСчетаНаОплату.

Ошибки при проверки модуля внешней печатной формы

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

Функции общего модуля

А функция НомерСчетаНаОплату в общем модуле ПечатьТорговыхДокументов экспортная, поэтому мы просто исправим код в процедуре ПечатьСчетаНаОплату, где используется проблемная функция, сделав вызов этой функции из вышеупомянутого общего модуля.

Проверяем еще раз ошибки. Все нормально.

Не забудем в процедуре СформироватьПечатнуюФорму убрать вызов метода ПечатьСчетаНаОплату из общего модуля.

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

Путь к общему макету

Находим данный макет в общих макетах и копируем его в макеты нашей обработки.

Копирование общего макета

Исправляем выделенный код, где подтягивается макет, следующий образом.

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

Внешний счет на оплату

Вернемся обратно в процедуру Печать нашей внешней обработки.

Идем в администрирование. В дополнительные отчеты и обработки.

Внешняя печатная форма Счет на оплату

Записываем. И смотрим, как выходит наша печатная форма.

Записываем. И смотрим, как выходит наша печатная форма.


Отличное пособие по разработке в управляемом приложении 1С, как для начинающих разработчиков, так и для опытных программистов.

  1. Очень доступный и понятный язык изложения
  2. Книга посылается на электронную почту в формате PDF. Можно открыть на любом устройстве!
  3. Поймете идеологию управляемого приложения 1С
  4. Узнаете, как разрабатывать управляемое приложение;
  5. Научитесь разрабатывать управляемые формы 1С;
  6. Сможете работать с основными и нужными элементами управляемых форм
  7. Программирование под управляемым приложением станет понятным


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

можно оплатить вручную:

Вступайте в мои группы:

2 thoughts on “ Создание внешней печатной формы в типовых конфигурациях 1С 8.3 ”

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

Читайте также: