Прикрепление файлов в управляемой форме на Web клиенте

1. user1979322 01.08.24 06:37 Сейчас в теме
Всем привет на форуме нашел тему https://infostart.ru/1c/articles/396459/
Но она у меня не запускается этот код. Я не могу понять
1) ПомещенныеФайлы как этот параметр объявить
 &НаКлиенте
Процедура ЗагрузитьФайл(Команда)
	ОписаниеОповещения = Новый ОписаниеОповещения("ОбработатьВыборФайла", ЭтаФорма);
	ДиалогОткрытияФайла = Новый ДиалогВыбораФайла(РежимДиалогаВыбораФайла.Открытие);
	ДиалогОткрытияФайла.МножественныйВыбор = Ложь;
    
	НачатьПомещениеФайлов(ОписаниеОповещения, , ДиалогОткрытияФайла, Истина, УникальныйИдентификатор);

КонецПроцедуры      

&НаКлиенте
Процедура ОбработатьВыборФайла(ПомещенныеФайлы,ДополнительныеПараметры) Экспорт
     
    Если ПомещенныеФайлы = Неопределено Тогда
        Возврат;
    КонецЕсли;

    Для каждого ПереданныйФайл Из ПомещенныеФайлы Цикл
        ПутьКФайлу = ПереданныйФайл.Имя;
        Запись.ИмяФайла = РазборСтроки(ПутьКФайлу, "\");
        Элементы.ОткрытьФайл.Заголовок = Запись.ИмяФайла;        
        Адрес = ПереданныйФайл.Хранение;
    КонецЦикла;
    
КонецПроцедуры
Показать
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. user1880116 01.08.24 08:21 Сейчас в теме
Ничего не понятно, но очень интересно.

Кто такая она из "Но она у меня не запускается этот код"?
Зачем объявлять параметр ПомещенныеФайлы как этот?

Столько вопросов...
3. user1979322 01.08.24 08:24 Сейчас в теме
(2) Я скопировал код из темы, этого форума ссылка 1-ом посте. И этот код не работает. Вот и хочу разобраться. Так как там тема за 2015год, по этому там и не пишу
4. user1880116 01.08.24 08:26 Сейчас в теме
(3)
И этот код не работает

А что он должен делать?
И причем тут "ПомещенныеФайлы как этот параметр объявить"?
5. user2033930 01.08.24 08:41 Сейчас в теме
(4) Ну не умеет человек читать. Особенно СП. А ты хочешь, чтобы он писать умел...
"Вы даёте нереальные планы! Волюнтаризм!"
6. user1880116 01.08.24 08:44 Сейчас в теме
(5)
чтобы он писать умел
Фирма 1С виновата, однозначно.
7. user1979322 01.08.24 08:50 Сейчас в теме
(4) Код должен прикреплять файлы к форме. Например пришла заявка, и эту заявку, что бы не потерять нужно хранить в форме. Да вы правы по поводу параметра ПомещенныеФайлы-я его не понял, по этому и сфокусировался на нем, а ошибка на фото
Прикрепленные файлы:
8. user2033930 01.08.24 09:01 Сейчас в теме
(7) Потому что это реквизит другой формы. Нельзя так просто выдернуть код из контекста одной формы, и надеяться, что он заработает в другой...
9. user1880116 01.08.24 09:02 Сейчас в теме
(7)
нужно хранить в форме
В форме хранить ее нельзя. При закрытии формы все пропадет. Тебе надо организовать хранение присоединенных файлов в информационной базе и сделать интерфейс их обработки.
а ошибка на фото
У автора в контексте выполнения кода есть реквизит Запись (скорей всего типа РегистрСведенийМенеджерЗаписи) и функция, которая как-то обрабатывает переданный аргумент.
Тебе надо понять, для чего они нужны, что надо конкретно тебе и сделать все по своему.

Сходил бы ты уже на курсы.
10. user1979322 01.08.24 09:24 Сейчас в теме
(9) Я понимаю что в форме хранить нельзя, я тему создал на форуме что бы помогли разобраться
11. user1880116 01.08.24 09:28 Сейчас в теме
(10)
я тему создал на форуме что бы помогли разобраться
Вот здесь посмотри: https://uc1.1c.ru/course/nachnite-rabotu-s-bsp-s-podsistemy-rabota-s-fajlami/
12. novohatko 05.08.24 09:46 Сейчас в теме
&НаКлиенте
Асинх Процедура ВыбратьФото(Команда)
	Если НЕ ЗначениеЗаполнено(ЭтотОбъект.Комментарий) Тогда
		ПоказатьПредупреждение(,"Заполните комментарий !!!");	
	Иначе
		//ПараметрыДиалога = Новый ПараметрыДиалогаПомещенияФайлов("Выберите файл !!!",,Ложь,); 
		Результат = Ждать ПоместитьФайлНаСерверАсинх();
		Если Результат <> Неопределено И Не Результат.ПомещениеФайлаОтменено Тогда
			Попытка
				ВыбратьФотоНаСервере(ВладелецФормы.Объект.Ссылка,Результат.Адрес,Результат.СсылкаНаФайл.Имя); 
				ЭтаФорма.Закрыть();
			Исключение
				ТекстСообщения = КраткоеПредставлениеОшибки(ИнформацияОбОшибке());
				ПоказатьПредупреждение(,ТекстСообщения);
			КонецПопытки;
		КонецЕсли; 
	КонецЕсли;
КонецПроцедуры

&НаСервере
Процедура ВыбратьФотоНаСервере(Док,СсылкаНаФайл,Имя)
	// Вставить содержимое обработчика.  
	ДокОб = Док.ПолучитьОбъект();
	НовСтр = ДокОб.СписокФото.Добавить();   
	НовСтр.ИмяФайла = Имя;
	НовСтр.Комментарий = СокрЛП(ЭтотОбъект.Комментарий);
	НовСтр.Фото = Новый ХранилищеЗначения(ПолучитьИзВременногоХранилища(СсылкаНаФайл));  
	ДокОб.Записать();   
КонецПроцедуры
Показать
13. user1979322 06.08.24 08:42 Сейчас в теме
(12) Спасибо за желание помочь, у меня ошибка вылетает, помогите решить
Прикрепленные файлы:
14. user2033930 06.08.24 08:44 Сейчас в теме
15. user1979322 06.08.24 09:51 Сейчас в теме
ВыбратьФотоНаСервере(ВладелецФормы.Объект.Ссылка,Результат.Адрес,Результат.СсылкаНаФайл.Имя);


Я не понимаю как корректно прописать параметры в Форме
1) ВладелецФормы.Объект.Ссылка,
2) Результат.Адрес,
3) Результат.СсылкаНаФайл.Имя);
16. user1880116 06.08.24 12:19 Сейчас в теме
17. novohatko 07.08.24 01:54 Сейчас в теме
Конечно работать не будет, тупо вставив в свой код. Посмотри отладчиком.
ВладелецФормы.Объект.Ссылка - тебе не нужно
Результат.Адрес - это твой файл во временном хранилище , на сервере делай с ним что хочешь
Результат.СсылкаНаФайл.Имя - тут уже сам думай нужен он тебе
18. user1979322 07.08.24 07:20 Сейчас в теме
(17)
ВладелецФормы.Объект.Ссылка - тебе не нужно

ВладелецФормы.Объект.Ссылка- вот здесь как раз ошибка и появляется, потому что не существует. Остальные аргументы существуют, по точке останова видно
19. user2033930 07.08.24 08:17 Сейчас в теме
(18) За тебя никто ничего решать и исправлять не будет. Тебе дали некий каркасный пример. Разбери его, пойми какая строчка что и зачем делает. Подумай, нужна ли тебе именно эта строчка/переменная/метод/реквизит/etc. и перепиши предложенный вариант под свои реалии (имена, сущности) и свои хотелки.
Оставьте свое сообщение

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