БСП 3.1 Работа с файлами

1. ds-swiftkras 02.06.21 20:20 Сейчас в теме
Доброго времени суток! Скорее всего плохо искал, но все же прошу помочь.

Есть конфигурация (упр. приложение), к которой прикручена БСП 3.1.4

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

Все что находил это общая информация по работе с подсистемой РаботаСФайлами. Заранее выражаю огромную благодарность, всем кто поможет!
По теме из базы знаний
Найденные решения
4. andy_zhav 197 03.06.21 10:17 Сейчас в теме
(1) Для отображения можно воспользоваться функцией РаботаСФайламиСлужебныйВызовСервера.ДанныеФайлаИДвоичныеДанные.
На форме выводите текстовый реквизит с видом поле HTML документа и присваиваете ему полный путь картинки.

ДанныеФайла = РаботаСФайламиСлужебныйВызовСервера.ДанныеФайлаИДвоичныеДанные(СсылкаНаКартинку);
ДвоичныеДанные = ДанныеФайла.ДвоичныеДанные;

ИмяКартинки = ПолучитьИмяВременногоФайла("jpg");
ДвоичныеДанные.Записать(ИмяКартинки);
ПолеHTMLДокумента = ИмяКартинки;

// Перед закрытием не забываем чистить темпы
Показать


Для добавления картинки вызываем функцию РаботаСФайлами.СоздатьФайлНаОсновеФайлаНаДиске. Там все просто
СсылкаНаКартинку = РаботаСФайлами.СоздатьФайлНаОсновеФайлаНаДиске(СсылкаНаНоменклатуру, ПутьКФайлу);


udp:

Это я старую БСП описал. В 3.1 получить двоичные данные проще

ДвоичныеДанные = РаботаСФайлами.ДвоичныеДанныеФайла(СсылкаНаКартинку);


Создание:

РаботаСФайламиКлиент.ДобавитьФайл(Новый ОписаниеОповещения("ПослеДобавиленияФайла", ЭтаФорма), СсылкаНаНоменклатуру, ЭтаФорма, 2);


И не забыть процедуру ПослеДобавленияФайла

Процедура ПослеДобавленияФайла(Результат, ДополнительныеПараметры) Экспорт
    СсылкаНаФайл = Результат.ФайлСсылка;
КонецПроцедуры
ds-swiftkras; vv2; +2 Ответить
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
3. Xershi 1496 02.06.21 23:14 Сейчас в теме
(1) смотри как сделано в УТ форма номенклатуры.
2. FatPanzer 02.06.21 20:53 Сейчас в теме
Это не функционал БСП. Это функционал самой конфигурации. БСП просто хранит файлы. И отображением картинок на формах не занимается.
4. andy_zhav 197 03.06.21 10:17 Сейчас в теме
(1) Для отображения можно воспользоваться функцией РаботаСФайламиСлужебныйВызовСервера.ДанныеФайлаИДвоичныеДанные.
На форме выводите текстовый реквизит с видом поле HTML документа и присваиваете ему полный путь картинки.

ДанныеФайла = РаботаСФайламиСлужебныйВызовСервера.ДанныеФайлаИДвоичныеДанные(СсылкаНаКартинку);
ДвоичныеДанные = ДанныеФайла.ДвоичныеДанные;

ИмяКартинки = ПолучитьИмяВременногоФайла("jpg");
ДвоичныеДанные.Записать(ИмяКартинки);
ПолеHTMLДокумента = ИмяКартинки;

// Перед закрытием не забываем чистить темпы
Показать


Для добавления картинки вызываем функцию РаботаСФайлами.СоздатьФайлНаОсновеФайлаНаДиске. Там все просто
СсылкаНаКартинку = РаботаСФайлами.СоздатьФайлНаОсновеФайлаНаДиске(СсылкаНаНоменклатуру, ПутьКФайлу);


udp:

Это я старую БСП описал. В 3.1 получить двоичные данные проще

ДвоичныеДанные = РаботаСФайлами.ДвоичныеДанныеФайла(СсылкаНаКартинку);


Создание:

РаботаСФайламиКлиент.ДобавитьФайл(Новый ОписаниеОповещения("ПослеДобавиленияФайла", ЭтаФорма), СсылкаНаНоменклатуру, ЭтаФорма, 2);


И не забыть процедуру ПослеДобавленияФайла

Процедура ПослеДобавленияФайла(Результат, ДополнительныеПараметры) Экспорт
    СсылкаНаФайл = Результат.ФайлСсылка;
КонецПроцедуры
ds-swiftkras; vv2; +2 Ответить
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот