Как прикрепить много документов в 1с 8
Перейти к содержимому

Как прикрепить много документов в 1с 8

Работа с файлами в 1С:Документооборот

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

§ Добавить новый файл;
§ Просмотреть вложенный файл;
§ Хранить историю изменения файла (версии);
§ Удалить вложенный файл;
§ Обновить вложенный файл измененной версией файла с диска;
§ Редактировать файл;
§ Переименовать;
§ Вывести на печать.

Добавление файла в карточку документа

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

После выполнения команды «Добавить» / «Добавить файл к документу» откроется диалоговое окно с вариантами способов создания нового файла:

§ Создать по шаблону;

§ Загрузка с диска.

В случае выбора варианта «Создать по шаблону…» будет открыто окно с предложением выбрать один из существующих шаблонов файлов.

Если выбрать вариант «Загрузить с диска…» откроется стандартное диалоговое окно для выбора файла, при этом есть возможность выбрать сразу несколько файлов.

После выбора необходимых файлов они отобразятся на вкладке «Файлы» (для нового документа) или на вкладке «Обзор» (для существующего документа) в соответствующей табличной части.

1С 8.3 Объединение табличных документов (с разной шириной) — Программист 1С Минск. Автоматизация бизнеса.

1С 8.3 Объединение табличных документов (с разной шириной)

// Процедура ПрисоединитьТабличныйДокумент осуществляет вывод Присоединяемого документа под указанным
// С возможностью создания нового формата строк для всей области присоединяемого документа
// Удобно использовать, чтобы колонки различной ширины не разъезжались
//
// Параметры:
// ПриемникТаблДок — ТабличныйДокумент — документ, куда будут добавлены области присоединяемого документа
// ПередатчикТаблДок — ТабличныйДокумент/ОбластьЯчеекТабличногоДокумента — документ, который присоединяем
// СоздатьФорматСтрок — Булево — флаг, указывающий на то, что необходимо создать свой формат строк
//
Процедура ПрисоединитьТабличныйДокумент ( ПриемникТаблДок , Знач ПередатчикТаблДок , Знач СоздатьФорматСтрок = Ложь) Экспорт

ВременныйТаблДок = Новый ТабличныйДокумент ;
ОбластьЯчеек = ВременныйТаблДок . Вывести ( ПередатчикТаблДок );

Если СоздатьФорматСтрок Тогда
ОбластьЯчеек . СоздатьФорматСтрок ();
КонецЕсли;

ПриемникТаблДок . Вывести ( ВременныйТаблДок );

// Добавляет один сформированный табличный документ к другому
//
// Параметры:
// — табличный документ, в который добавляется Табличный документ
// — табличный документ, вставляемый в приемник

Процедура ДобавитьТабличныйДокумент ( ПриемникТаблДок , ПередатчикТаблДок )

Если ПередатчикТаблДок = Неопределено Тогда
Возврат;
КонецЕсли;

НачалоНовогоТД = ПриемникТаблДок . ВысотаТаблицы + 1 ;

//Разобъем вствляемый ТД на куски форматов строк
ФорматыСтрокТЗ = Новый ТаблицаЗначений ;
ФорматыСтрокТЗ . Колонки . Добавить ( «ПерваяСтрока» );
ФорматыСтрокТЗ . Колонки . Добавить ( «ПоследняяСтрока» );
ФорматыСтрокТЗ . Колонки . Добавить ( «МассивЗначенийШирины» );

//Чтобы узнать ширину колонки для каждой ячейки необходимо разъединить все объединенные ячейки
//А, т.к. вставляемый ТД нам не нужно изменять, создадим копию вставляемого ТД
ВременныйТаблДок = ПередатчикТаблДок . ПолучитьОбласть ();
ВременныйТаблДок . Область (). Разъединить ();

//Готовим таблицу, где будет храниться информация обо всех «группах» форматирования строк
ПредыдущаяШиринаСтрокой = «» ;
Для НомерСтроки = 1 По ВременныйТаблДок . ВысотаТаблицы Цикл

МассивЗначенийШирины = Новый Массив ;
Для НомерКолонки = 1 По ВременныйТаблДок . ШиринаТаблицы Цикл
МассивЗначенийШирины . Добавить ( ВременныйТаблДок . Область ( НомерСтроки , НомерКолонки ). ШиринаКолонки );
КонецЦикла;
ШиринаСтрокой = ПолучитьШиринуСтрокой ( МассивЗначенийШирины , «;» );

Если ШиринаСтрокой <> ПредыдущаяШиринаСтрокой Тогда

Если ФорматыСтрокТЗ . Количество ()> 0 Тогда
ФорматыСтрокТЗ [ ФорматыСтрокТЗ . Количество () — 1 ]. ПоследняяСтрока = НомерСтроки — 1 ;
КонецЕсли;

ФорматыСтрокСтрока = ФорматыСтрокТЗ . Добавить ();
ФорматыСтрокСтрока . ПерваяСтрока = НомерСтроки ;
ФорматыСтрокСтрока . МассивЗначенийШирины = МассивЗначенийШирины ;

КонецЦикла;
ФорматыСтрокТЗ [ ФорматыСтрокТЗ . Количество () — 1 ]. ПоследняяСтрока = НомерСтроки — 1 ;

//Теперь вставляем в Приемник вставляемую ТД кусками. Сразу же устанавливаем ширину колонок
Для Каждого СтрокаФорматыТЗ Из ФорматыСтрокТЗ Цикл

ПерваяСтрокаОбласти = НачалоНовогоТД + СтрокаФорматыТЗ . ПерваяСтрока — 1 ;
ПоследняяСтрокаОбласти = НачалоНовогоТД + СтрокаФорматыТЗ . ПоследняяСтрока — 1 ;

КусокВставляемогоТабДок =
ПередатчикТаблДок . ПолучитьОбласть ( СтрокаФорматыТЗ . ПерваяСтрока ,, СтрокаФорматыТЗ . ПоследняяСтрока );
ОбластьИсточник = КусокВставляемогоТабДок . Область ();
ОбластьПриемник = ПриемникТаблДок . Область ( ПерваяСтрокаОбласти , , ПоследняяСтрокаОбласти , );

ПриемникТаблДок . ВставитьОбласть ( ОбластьИсточник , ОбластьПриемник );
ОбластьПриемник . СоздатьФорматСтрок ();

Для Счетчик = 1 По КусокВставляемогоТабДок . ШиринаТаблицы Цикл
ПриемникТаблДок . Область ( ПерваяСтрокаОбласти , Счетчик , ПоследняяСтрокаОбласти , Счетчик ). ШиринаКолонки =
СтрокаФорматыТЗ . МассивЗначенийШирины [ Счетчик — 1 ];
КонецЦикла;

Функция ПолучитьШиринуСтрокой ( перМассив , разделитель = «;» )
Рез = «» ;
Для Каждого Стр Из перМассив Цикл
Рез = Рез + стр + разделитель ;
КонецЦикла;
Возврат Рез ;
КонецФункции

1С добавить документ в подсистему

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

Для реализации поставленной задачи необходимо выполнить следующие действия:

1. Добавить кнопку вывода отчета на форму

Для этого можно:

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

// СтандартныеПодсистемы.ПодключаемыеКоманды
// Конец СтандартныеПодсистемы.ПодключаемыеКоманды

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

2. Настроить критерий отбора СвязанныеДокументы

Документы в отчете «Связанные документы» выводятся в виде дерева. Элементы могут иметь как родительские объекты, так и подчиненные.

Для указания перечня родительских объектов в критерии объектов «Связанные документы» заполняется свойство Тип на закладке Данные.

Перечень подчиненных объектов указывается на вкладке Состав.

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

Остались вопросы?
Спросите в комментариях к статье.

Подсистема в 1С 8.3 — объект древа метаданных, который отвечает за построение командного интерфейса конфигурации.

Подсистемы в 1С 8.2

Ниже в статье речь пойдет о подсистемах начиная с версии 8.2.

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

Подсистемы 1С и интерфейс для программиста

В версиях 8.3 и 8.2 подсистемы — это основной инструмент построения командного интерфейса пользователя. Объекты метаданных «Подсистемы» имеют иерархическую структуру, чтобы настроить «подменю» в интерфейсе, необходимо добавить подчиненную подсистемы:

Свойства и настройки

Рассмотрим настройки и свойства подсистем в конфигураторе:

Получите 267 видеоуроков по 1С бесплатно:

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

Кнопка Командный интерфейс открывает панель настройки интерфейса, где можно настроить интерфейсы в зависимости от роли текущего пользователя:

Картинка — картинка, назначенная для подсистемы, отображается в режиме предприятия. Можно выбрать стандартную картинку, а можно добавить свою, предварительно создав её как объект конфигурации Картинка:

На вкладке Функциональные опции указывается список функциональных опций, в которых используется данная подсистема.

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

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

Если не отображается отчет или обработка в управляемом интерфейсе

Эта проблема очень часто возникает у начинающих разработчиков — вроде отчет или обработка была добавлена в состав подсистемы, а её не видно.

Первая причина этого может в том, что у объекта не задана управляемая форма.

Вторая причина — на вкладке Команды объекта установлена галка «Использовать стандартные команды». Связано это с тем, что для открытия обработки может быть описана как своя процедура, так и использована стандартная:

Почему не отражается новая подсистема в интерфейсе 1С?

Возможно, просто Вы забыли указать галочку «Включить в командный интерфейс»:

Если Вы начинаете изучать 1С программирование, рекомендуем наш бесплатный курс (не забудьте подписаться на YouTube — регулярно выходят новые видео):

К сожалению, мы физически не можем проконсультировать бесплатно всех желающих, но наша команда будет рада оказать услуги по внедрению и обслуживанию 1С. Более подробно о наших услугах можно узнать на странице Услуги 1С или просто позвоните по телефону +7 (499) 350 29 00. Мы работаем в Москве и области.

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

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

Это не совсем красиво и правильно так как у нас и документ и справочник находиться в одном списке. Сейчас еще все более-менее выглядит нормально, но когда у вас будет 30 справочников и 40 документов то их лучше разделить подсистемами. И так сделаем отдельно подсистему Справочники, а другую назовем для примера Склад.

Как и раньше в примере используется 1С 8.2 для 1С 8.3 инструкция так же актуальна за исключением того что выглядеть при запуске она будет немного по другому.

Добавляем подсистемы в 1С

Запускаем конфигуратор слева ищем пункт Подсистемы. Кликаем на нем правой кнопкой и жмем добавить.

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

Теперь переходим на вкладку Состав и отмечаем справочники которые будут входить в созданную подсистему.

По аналогии создаем подсистему Склад и включаем в не наш документ.

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

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

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

Скриншоты, опубликованные в данной статье, являются цитатами и иллюстрациями программного продукта «1C:Предприятие», авторское право на который принадлежит ЗАО 1С.

Добавить комментарий

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