1С: Прикрепляемые файлы к документу

Задача: организовать прикрепление и хранение файлов в документе. Желательно используя «штатный велосипед» 1С.

Решение:

Всё зависит от БСП на основе которой построена Ваша конфигурация. В моем случае, конфигурация Бухгалтерия 3.0.75.100, БСП 3.1.25

Узнать версию БСП можно при помощи:

Сообщить(СтандартныеПодсистемыСервер.ВерсияБиблиотеки());

Далее если есть подписка на ИТС, читаем тут или если нет, то у меня 😉

1) Чтобы ручками не заполнять все реквизиты, копируем справочник «ПередачаТоваровПрисоединенныеФайлы», копию переименовываем в <ИмяМоегоДокумента>ПрисоединенныеФайлы. В моем случае документ носит имя «Абоненты». Далее на скриншотах и в тексте я его так и буду называть. В Вашем случае это будет Ваш справочник/документ.

В реквизите «ВладелецФайла» указываем наш документ

2) В состав определяемых типов ПрисоединенныйФайл (ссылки) и ПрисоединенныйФайлОбъект (объекты) добавим наш документ:

3) Включить в состав плана обмена ОбновлениеИнформационнойБазы

4) Добавить источники у подписк и «ПереопределитьПолучаемуюФормуПрисоединенногоФайла» и «УстановитьПометкуУдаленияПрисоединенныхФайловДокументов»

5) Добавить в состав определяемых типов ВладелецПрисоединенныхФайлов (ссылки) и ВладелецПрисоединенныхФайловОбъект (объекты)

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

  • Добавить реквизит формыМожноЗакрытьФормуСФайламитипа Булево.
  • В обработчике формыПередЗакрытиемвставить вызов процедуры ПоказатьПодтверждениеЗакрытияФормыСФайлами общего модуля РаботаСФайламиКлиент по шаблону:
&НаКлиенте
Процедура ПередЗакрытием(Отказ, СтандартнаяОбработка)
    РаботаСФайламиКлиент.ПоказатьПодтверждениеЗакрытияФормыСФайлами(ЭтотОбъект, Отказ, Объект.Ссылка);
КонецПроцедуры
  • Другой код, который необходимо выполнять в обработчикеПередЗакрытием, следует размещать после вызова процедуры и проверки параметраОтказ. Например:
&НаКлиенте
Процедура ПередЗакрытием(Отказ, СтандартнаяОбработка)
    РаботаСФайламиКлиент.ПоказатьПодтверждениеЗакрытияФормыСФайлами(ЭтотОбъект, Отказ, Объект.Ссылка);
    Если Отказ Тогда
        Возврат;
    КонецЕсли;
    <другой код...>
КонецПроцедуры

Результат: появившаяся «скрепочка» и список файлов по её нажатии.

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

Комментарии:

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

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

Лимит времени истёк. Пожалуйста, перезагрузите CAPTCHA.

Этот сайт использует Akismet для борьбы со спамом. Узнайте как обрабатываются ваши данные комментариев.