Прикрепляем файл к новому документу (БСП). Простенькая шпаргалка

21.02.24

Разработка - БСП (Библиотека стандартных подсистем)

Много уже сказано и фильмов снято, но как начинаешь делать, опять полдня провозишься.

Скачать файл

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование По подписке [?] Купить один файл
Прикрепляем файл к новому документу (БСП). Простенькая шпаргалка.:
.docx 23,73Kb
7
7 Скачать (1 SM) Купить за 1 850 руб.

Для всех, кто любит серьезный подход, даю ссылку на тех. документацию (ИТС).

Для всех остальных по пунктам.

1. Вы сделали новый документ, который назвали НовыйДокумент

2. Создать справочник НовыйДокументПрисоединенныеФайлы копированием другого такого же.

3. Заменить в новом справочнике  Владельца. Им будет ваш НовыйДокумент. Дать права на справочник как у документа.

4. Определяемые типы:
•    ВладелецПрисоединенныхФайлов – добавляем тип Новый документ, 
•    ПрисоединенныйФайл – добавляем тип Новый справочник
•    ПрисоединенныйФайлОбъект - добавляем тип Новый справочник

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

ВЫБРАТЬ РАЗРЕШЕННЫЕ
	ДокументНовыйДокумент.Ссылка КАК Ссылка,
	ДокументНовыйДокумент.Номер КАК Номер,
	ДокументНовыйДокумент.Дата КАК Дата,
	ДокументНовыйДокумент.Проведен КАК Проведен,
	ДокументНовыйДокумент.Комментарий КАК Комментарий,
	ДокументНовыйДокумент.Автор КАК Автор,	
	ДокументНовыйДокумент.Ответственный КАК Ответственный,
	ВЫБОР
		КОГДА НаличиеФайлов.ЕстьФайлы ЕСТЬ NULL ТОГДА 1			
		КОГДА НаличиеФайлов.ЕстьФайлы ТОГДА 0			
		ИНАЧЕ 1
	КОНЕЦ КАК ЕстьФайлы
ИЗ
	Документ.НовыйДокумент КАК ДокументНовыйДокумент
		{ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.НаличиеФайлов КАК НаличиеФайлов
		ПО ДокументНовыйДокумент.Ссылка = НаличиеФайлов.ОбъектСФайлами}

6. Настроить колонку «Есть файлы». Вид – поле картинки, Положение заголовка – нет. Картинка значения– скрепка. Картинка шапки – скрепка.

7. В форме документа и форме списка в ПриСозданииНаСервере должен быть блок

// СтандартныеПодсистемы.ПодключаемыеКоманды
ПодключаемыеКоманды.ПриСозданииНаСервере(ЭтотОбъект);
// Конец СтандартныеПодсистемы.ПодключаемыеКоманды

Этого уже достаточно. Но, если вы хотите еще и гиперссылку

 

 

8. В форму документа добавляем

•    ПриСозданииНаСервере

// СтандартныеПодсистемы.РаботаСФайлами
ПараметрыГиперссылки = РаботаСФайлами.ГиперссылкаФайлов();
ПараметрыГиперссылки.Размещение = "КоманднаяПанель";
РаботаСФайлами.ПриСозданииНаСервере(ЭтотОбъект, ПараметрыГиперссылки);
// Конец СтандартныеПодсистемы.РаботаСФайлами

•    отдельно ниже в форме

// СтандартныеПодсистемы.РаботаСФайлами  
&НаКлиенте
Процедура Подключаемый_КомандаПанелиПрисоединенныхФайлов(Команда)
	 РаботаСФайламиКлиент.КомандаУправленияПрисоединеннымиФайлами(ЭтотОбъект, Команда);
КонецПроцедуры

&НаКлиенте
Процедура Подключаемый_ПолеПредпросмотраПроверкаПеретаскивания(Элемент, ПараметрыПеретаскивания, СтандартнаяОбработка)
	 РаботаСФайламиКлиент.ПолеПредпросмотраПроверкаПеретаскивания(ЭтотОбъект, Элемент, ПараметрыПеретаскивания, СтандартнаяОбработка);
КонецПроцедуры
// Конец СтандартныеПодсистемы.РаботаСФайлами

// СтандартныеПодсистемы.РаботаСФайлами
&НаКлиенте
Процедура Подключаемый_ПолеПредпросмотраПеретаскивание(Элемент, ПараметрыПеретаскивания, СтандартнаяОбработка)
	 РаботаСФайламиКлиент.ПолеПредпросмотраПеретаскивание(ЭтотОбъект, Элемент, ПараметрыПеретаскивания, СтандартнаяОбработка);
КонецПроцедуры
// Конец СтандартныеПодсистемы.РаботаСФайлами

В файле все то же самое. Кому-то, может, пригодится.

 

Тестировалось на платформе 8.3.23.2040. На конфигурации ERP.

Ставим лайки и читаем другие мои публикации.

Из той же серии:

1. Условное оформление строк и полей Таблицы значений и Дерева значений (готовый код)

2. Создание нового элемента из поля формы с заполнением реквизитов

3. Выполнение любой дополнительной обработки в фоне

4.Расшифровка отчета. Код, который я использую

См. также

БСП (Библиотека стандартных подсистем) Программист Платные (руб)

Синтакс-помощник БСП - cправочник по библиотекам стандартных подсистем и электронных документов. В состав справочника входит описание экспортных процедур и функций, размещенных в областях кода ПрограммныйИнтерфейс БСП и БЭД.

1800 руб.

21.11.2024    3631    16    15    

18

БСП (Библиотека стандартных подсистем) Программист Платформа 1С v8.3 Бесплатно (free)

Расскажу, как использовать полезный функционал - инструментарий разработчика «1С:Библиотека стандартных подсистем» (БСП) в своих объектах метаданных. Статья будет полезна как шпаргалка при написании собственных объектов метаданных.

27.12.2024    3430    PROSTO-1C    15    

43

БСП (Библиотека стандартных подсистем) Программист Бесплатно (free)

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

11.12.2024    3897    gorenski    0    

8

БСП (Библиотека стандартных подсистем) Менеджеры внешних отчетов Программист Платформа 1С v8.3 1С:ERP Управление предприятием 2 1С:Управление холдингом Абонемент ($m)

За последние лет 5 несколько раз сталкиваюсь с проблемой на разных проектах (в конфигурациях 1С:ERP, 1С:ERP УХ и многих других, основанных на БСП), когда много пользователей (около 30 тысяч) в информационной базе, время добавления доступа для пользователей занимает значительное время. Открытие списка занимает от 10 до 15 секунд, и каждое изменение списка еще примерно столько же.

1 стартмани

10.12.2024    992    Iaskeliainen    2    

7

БСП (Библиотека стандартных подсистем) Программист Платформа 1С v8.3 Бесплатно (free)

Некоторые нюансы, если вы захотите создавать свои расширения. Доработка отчета "Связанные документы" для отражения документов расширения. Печатные формы с шаблоном Word.

20.11.2024    3326    milkers    3    

12

БСП (Библиотека стандартных подсистем) Программист Платформа 1С v8.3 Бесплатно (free)

В статье описан алгоритм для включения документа или справочника в систему БСП. Будет полезно программистам 1С, начинающим работать с БСП.

24.10.2024    1676    PROSTO-1C    0    

18

БСП (Библиотека стандартных подсистем) Работа с интерфейсом Программист Платформа 1С v8.3 Бесплатно (free)

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

08.10.2024    1372    PROSTO-1C    4    

14
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. dhurricane 21.02.24 17:48 Сейчас в теме
1. Релиз платформы указали с точностью до номера сборки, а версию конфигурации вообще не указали, просто ERP. Однако версия конфигурации значительно важнее в этом вопросе, нежели версия платформы. Хорошо, хоть ссылку на БСП 3.1.3 оставили. Не самая свежая, видимо и ERP не 2.5
2. В статье нет информации о том, какие подписки и планы обмена необходимо еще поправить.
3. Для чего в формах блок "ПодключаемыеКоманды.ПриСозданииНаСервере(ЭтотОбъект);"? Особенно без реализации обработчиков команд. В приведенной инструкции на ИТС нет такого требования.
4. Перепутаны значения поля "ЕстьФайлы" для отображения скрепки.
2. dimanich70 879 21.02.24 21:13 Сейчас в теме
(1) Во - первых, спасибо.
1) Релиз ЕРП 2.5.12.148. БСП последняя думаю, реально не знаю где посмотреть.
2) Про планы обмена не думал, не было необходимости да и задача думаю уже следующая.
3) Видос смотрел, там про это упоминали. Так как у меня уже были эти процедуры, то решил, что оно и должно быть. Думаю, что у всех есть.
4) Не знаю как у вас, а у меня работает именно так.
3. dhurricane 21.02.24 21:40 Сейчас в теме
(2) 1) В режиме конфигуратора - общий модуль "ОбновлениеИнформационнойБазыБСП", процедура "ПриДобавленииПодсистемы", здесь указана версия БСП, для которой и следует смотреть инструкцию на ИТС. Вероятнее всего увидите 3.1.7

В режиме предприятия - регистр сведений "ВерсииПодсистем", смотреть запись для подсистемы "СтандартныеПодсистемы".

2) Речь не про обмен как таковой. В инструкции указано, что нужно новый справочник добавить в план обмена "ОбновлениеИнформационнойБазы". Это необходимо для того, чтобы при будущих возможных обновления ERP (и БСП вместе с ней), типовой обработчик обновления смог отложенно (в фоне) обновить не только свои справочники с файлами, но и Ваш.

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

3) Не, подключаемые подсистемы не обязательны. Конечно, я сторонник того, чтобы подключать к подсистеме команд все свои нетиповые документы, с которыми будут работать пользователи, но тем не менее к подсистеме файлов эти команды отношения не имеют.

4) Возможно, не проверял давно. Сравнил Ваш запрос и запрос в инструкции, ссылку на которую Вы дали. Допускаю, что в документации ошибка, но более допускаю, что в статье Вы привели код запроса, отличный от реально используемого в своей конфигурации.
4. Tarlich 116 21.02.24 21:47 Сейчас в теме
и еше определить ВладелецПрисоединенныхФайловОбъект то же
Эх ! эту статью да раньше бы !
вот так бы описать и остальные подсистемы,
5. dimanich70 879 21.02.24 23:07 Сейчас в теме
(4)этот тип как я понял тогда, когда владелец Справочник.
Ну, ты просто гений. Спасибо.
6. IronDain 22.02.24 08:56 Сейчас в теме
Тоже надо запилить инструкцию в ворде и выложить за стартмани. Может джуны и начинающие аналитики обрадуются
Legin; kuzyara; baracuda; Serg O.; +4 Ответить
7. Samarin 97 22.02.24 09:37 Сейчас в теме
Чего не хватает:

1) У БСП есть возможность переопределить справочник для хранения.
РаботаСФайламиПереопределяемый
Процедура ПриОпределенииСправочниковХраненияФайлов

В тех случаях, когда в конфигурации будет не один документ, можно использовать этот вариант.
Создается справочник, например, "ДокументыПрисоединенныеФайлы".
В модуле переопределяется место хранения присоединенных файлов (ИменаСправочников.Вставить("ДокументыПрисоединенныеФайлы", Истина); - для нужных типов документов).

2) Написать инструкцию, как это все проделать в виде расширения.
Оставьте свое сообщение