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

21.02.24

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

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

Скачать исходный код

Наименование Файл Версия Размер
Прикрепляем файл к новому документу (БСП). Простенькая шпаргалка.:
.docx 23,73Kb
4
.docx 23,73Kb 4 Скачать

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

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

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

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

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

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

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

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

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

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

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

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

 

 

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

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

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

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

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

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

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

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

 

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

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

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

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

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

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

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

См. также

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

Чистка данных Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

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

1 стартмани

15.04.2024    392    2    dimanich70    0    

4

Отчет с прогнозом на конец месяца

Анализ продаж Платформа 1С v8.3 Конфигурации 1cv8 Управленческий учет Абонемент ($m)

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

1 стартмани

10.04.2024    400    1    dimanich70    0    

2

БСП. Добавляем отчет в меню Отчеты

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

Добавим новый отчет в меню нового документа средствами БСП.

02.04.2024    3191    John_d    10    

89

Форма выбора с отбором. Пять вариантов настройки отбора

Работа с интерфейсом Платформа 1С v8.3 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Абонемент ($m)

Заезженная тема - установка отбора в форме выбора. Решил погуглить и накопал 5 вариантов. Объединил все в одну статью, чтобы в будущем не терять время. Возможно, кому-то тоже пригодится.

1 стартмани

19.03.2024    2272    3    dimanich70    9    

66

Создать на основании - своя кнопка (БСП). Проблема двух подменю Создать на основании

БСП (Библиотека стандартных подсистем) Адаптация типовых решений Платформа 1С v8.3 1С:ERP Управление предприятием 2 Бесплатно (free)

Понадобилось в подменю "Создать на основании" добавить свою команду, которая открывает обработку. В процессе доработок появилась проблема двух подменю "Создать на основании". В статье о том, как решились проблемы.

01.03.2024    1730    dimanich70    8    

14

Заполнение поля адреса в своей обработке [БСП]

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

Небольшая шпаргалка по функциям БСП касательно адреса. Так скажем, еще один способ помимо https://infostart.ru/1c/articles/1060970/

12.02.2024    804    FilippovRI    0    

15
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. dhurricane 21.02.24 17:48 Сейчас в теме
1. Релиз платформы указали с точностью до номера сборки, а версию конфигурации вообще не указали, просто ERP. Однако версия конфигурации значительно важнее в этом вопросе, нежели версия платформы. Хорошо, хоть ссылку на БСП 3.1.3 оставили. Не самая свежая, видимо и ERP не 2.5
2. В статье нет информации о том, какие подписки и планы обмена необходимо еще поправить.
3. Для чего в формах блок "ПодключаемыеКоманды.ПриСозданииНаСервере(ЭтотОбъект);"? Особенно без реализации обработчиков команд. В приведенной инструкции на ИТС нет такого требования.
4. Перепутаны значения поля "ЕстьФайлы" для отображения скрепки.
2. dimanich70 626 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 626 21.02.24 23:07 Сейчас в теме
(4)этот тип как я понял тогда, когда владелец Справочник.
Ну, ты просто гений. Спасибо.
6. IronDain 22.02.24 08:56 Сейчас в теме
Тоже надо запилить инструкцию в ворде и выложить за стартмани. Может джуны и начинающие аналитики обрадуются
Legin; kuzyara; baracuda; Serg O.; +4 Ответить
7. Samarin 96 22.02.24 09:37 Сейчас в теме
Чего не хватает:

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

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

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