Настройка динамического списка в форме

1. user1565257 28.04.21 08:11 Сейчас в теме
Здравствуйте. Очень нужна помощь. Работаю конструктором, в распоряжении есть отраслевая конфигурация, но очень не хватает нужного функционала. В итоге лезу не в свое дело, но деваться некуда. Структура базы - головные изделия и куча их исполнений (-01, -02, -03...). В карточке у каждого элемента есть прикрепленные файлы. Задача - привязать чертежи только к головным изделиям, а у исполнений должны отображаться файлы головных изделий. Я добавил дополнительную вкладку в карточке "Прикрепленные чертежи", присвоил ей свою форму (по образцу оригинальной формы "Прикрепленные файлы"). В основном справочнике (Справочники.Изделия) создал дополнительный реквизит "ГоловноеИсполнение", его тип "ОпределяемыйТип.ВладелецФайлов", такой же как у основного реквизита "ВладелецФайлов" и раскидал значения в номенклатуре. Не могу осилить последний шаг. В форме "Прикрепленные чертежи" нужно настроить динамический список (нужно выводить прикрепленные файлы не текущей позиций, а позиции, которая указана в реквизите "ГоловноеИсполнение" в карточке изделия). При этом реквизит "ГоловноеИсполнение" принадлежит основному справочнику (Справочники.Изделия), реквизит "ВладелецФайла" принадлежит справочнику (Справочники.Изделия). На сколько я понимаю, нужно каким то образом вместо реквизита "ВладелецФайла" использовать реквизит "ГоловноеИсполнение". В итоге моих экспериментов за 3 дня я видел ошибки всех типов, но увы нужной работы не добился.
Настройка списка:
ВЫБРАТЬ
	ЗНАЧЕНИЕ(Справочник.Пользователи.ПустаяСсылка) КАК Ссылка,
	ЛОЖЬ КАК ПометкаУдаления,
	1 КАК ИндексКартинки,
	ВЫРАЗИТЬ("" КАК СТРОКА(150)) КАК Наименование,
	ВЫРАЗИТЬ("" КАК СТРОКА(10)) КАК Расширение,
	ВЫРАЗИТЬ("" КАК СТРОКА(500)) КАК Описание,
	ЗНАЧЕНИЕ(Справочник.Пользователи.ПустаяСсылка) КАК Автор,
	ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0) КАК ДатаСоздания,
	ЗНАЧЕНИЕ(Справочник.Пользователи.ПустаяСсылка) КАК Отредактировал,
	ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0) КАК ДатаРедактирования,
	ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0) КАК ДатаИзменения,
	0 КАК Размер,
	ЛОЖЬ КАК ПодписанЭП,
	ЛОЖЬ КАК Зашифрован,
	-1 КАК НомерКартинкиПодписанЗашифрован,
	ЛОЖЬ КАК ФайлРедактируется,
	ЛОЖЬ КАК ФайлРедактируетТекущийПользователь,
	ЛОЖЬ КАК ФайлРедактируетДругойПользователь,
	ЛОЖЬ КАК ХранитьВерсии,
	ЛОЖЬ КАК ЭтоГруппа,
	&ВладелецФайла КАК ВладелецФайла,
	НЕОПРЕДЕЛЕНО КАК Редактирует,
	НЕОПРЕДЕЛЕНО КАК РедактируетПользователь
ИЗ
	Справочник.ИдентификаторыОбъектовМетаданных КАК ИдентификаторыОбъектовМетаданныхПереопределяемый
Показать

И процедура ПриСозданииНаСервере:
#Область ОбработчикиСобытийФормы

&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
	
	Если Параметры.Свойство("АвтоТест") Тогда // Возврат при получении формы для анализа.
		Возврат;
	КонецЕсли;
	
	ВладелецФайла = Параметры.ВладелецФайла;
	
	ТекущаяСсылка = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(Параметры, "ТекущаяСтрока");
	СписокОткрытИзКарточкиФайла = ЗначениеЗаполнено(ТекущаяСсылка);
	Элементы.ВладелецФайла.Видимость = СписокОткрытИзКарточкиФайла;
	Если СписокОткрытИзКарточкиФайла И ВладелецФайла = Неопределено Тогда
		ВладелецФайла = ОбщегоНазначения.ЗначениеРеквизитаОбъекта(ТекущаяСсылка, "ВладелецФайла");
		Параметры.ВладелецФайла = ВладелецФайла;
	КонецЕсли;
	Если Параметры.ВладелецФайла = Неопределено Тогда
		ВызватьИсключение НСтр("ru = 'Список присоединенных файлов можно посмотреть
		                             |только в форме объекта-владельца.'");
	КонецЕсли;
	
	ТипВладельца = ТипЗнч(Параметры.ВладелецФайла);
	Если Метаданные.ОпределяемыеТипы.ВладелецФайлов.Тип.СодержитТип(ТипВладельца) Тогда
		ПолноеИмяВладельца = Метаданные.НайтиПоТипу(ТипВладельца).Имя;
		Если Метаданные.Справочники.Найти(ПолноеИмяВладельца + "ПрисоединенныеФайлы") = Неопределено Тогда
			ЭтоВладелецЭлементовСправочникаФайлы = Истина;
		КонецЕсли;
	КонецЕсли;
	
	Элементы.ФормаРедактировать.ТолькоВоВсехДействиях           = Параметры.ПростаяФорма;
	Элементы.ФормаОткрыть.ТолькоВоВсехДействиях                 = Параметры.ПростаяФорма;
	Элементы.ФормаЗакончитьРедактирование.ТолькоВоВсехДействиях = Параметры.ПростаяФорма;
	Элементы.СписокВажныеРеквизиты.Видимость                    = Не Параметры.ПростаяФорма;
	Предпросмотр                                                = Параметры.ПростаяФорма;
	
	ПоказыватьКолонкуРазмер = РаботаСФайламиСлужебныйВызовСервера.ПолучитьПоказыватьКолонкуРазмер();
	Если Не ПоказыватьКолонкуРазмер Тогда
		Элементы.СписокРазмер.Видимость = Ложь;
	КонецЕсли;
	
	Если Не ПустаяСтрока(Параметры.ЗаголовокФормы) Тогда
		Заголовок = Параметры.ЗаголовокФормы;
	ИначеЕсли СписокОткрытИзКарточкиФайла Тогда
		Заголовок = Заголовок + " (" + Строка(ТипЗнч(ВладелецФайла)) + " " + Строка(ВладелецФайла) + ")";
	КонецЕсли;
	
	Если ЗначениеЗаполнено(Параметры.ПараметрыОтправки) Тогда
		ПараметрыОтправки = Параметры.ПараметрыОтправки;
	Иначе
		ПараметрыОтправки = РаботаСФайламиСлужебный.ПодготовитьСтруктуруПараметровОтправки();
	КонецЕсли;
	
	Если Параметры.РежимВыбора Тогда
		СтандартныеПодсистемыСервер.УстановитьКлючНазначенияФормы(ЭтотОбъект, "ВыборПодбор");
		РежимОткрытияОкна = РежимОткрытияОкнаФормы.БлокироватьОкноВладельца;
		Заголовок = НСтр("ru = 'Выбор присоединенного файла'");
	Иначе
		Элементы.Список.РежимВыбора = Ложь;
	КонецЕсли;
	
	НастройкиФайлов = РаботаСФайламиСлужебный.НастройкиФайлов();
	
	ИмяСправочникаХранилищаФайлов = Неопределено;
	
	ЗаголовокОшибки = НСтр("ru = 'Ошибка при настройке динамического списка присоединенных файлов.'");
	ОкончаниеОшибки = НСтр("ru = 'В этом случае настройка динамического списка невозможна.'");
	
	ИмяСправочникаХранилищаФайлов = РаботаСФайламиСлужебный.ИмяСправочникаХраненияФайлов(
		Параметры.ВладелецФайла, "", ЗаголовокОшибки, ОкончаниеОшибки);
		
	ТипСправочникаСФайлами = Тип("СправочникСсылка." + ИмяСправочникаХранилищаФайлов);
	
	МассивИсключенийСозданияФайловПоШаблону = Новый Массив;
	
	МетаданныеСправочникаСФайлами = Метаданные.НайтиПоТипу(ТипСправочникаСФайлами);
	
	ИмяСправочникаХранилищаВерсийФайлов = РаботаСФайламиСлужебный.ИмяСправочникаХраненияВерсийФайлов(
		Параметры.ВладелецФайла, "", ЗаголовокОшибки, ОкончаниеОшибки);
	
	ВозможностьСоздаватьГруппыФайлов = МетаданныеСправочникаСФайлами.Иерархический;
	
	Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.УправлениеДоступом") Тогда 
		МодульУправлениеДоступом = ОбщегоНазначения.ОбщийМодуль("УправлениеДоступом");
		ЕстьПравоИспользоватьШаблоны = МодульУправлениеДоступом .ЕстьПраво("Чтение", Справочники.ПапкиФайлов.Шаблоны);
	Иначе
		ЕстьПравоИспользоватьШаблоны = ПравоДоступа("Чтение", Метаданные.Справочники.Файлы) И ПравоДоступа("Чтение", Метаданные.Справочники.ПапкиФайлов)
	КонецЕсли;
	
	Если НЕ ЕстьПравоИспользоватьШаблоны Или НастройкиФайлов.НеСоздаватьФайлыПоШаблону.Найти(Метаданные.НайтиПоТипу(ТипЗнч(ВладелецФайла))) <> Неопределено Тогда
		Элементы.ДобавитьФайлПоШаблону.Видимость = Ложь;
		Элементы.СписокКонтекстноеМенюДобавитьФайлПоШаблону.Видимость = Ложь;
	КонецЕсли;
	
	ВозможностьСоздаватьВерсииФайлов = ЭтоВладелецЭлементовСправочникаФайлы;
	
	НастроитьДинамическийСписок(ИмяСправочникаХранилищаФайлов);
	
	Если Не ВозможностьСоздаватьГруппыФайлов Тогда
		СкрытьКнопкиСозданияГруппы();
	КонецЕсли;
	
	ЕстьПравоДобавления = Истина;
	
	Если НЕ ПравоДоступа("ИнтерактивноеДобавление", МетаданныеСправочникаСФайлами) Тогда
		СкрытьКнопкиДобавления();
		ЕстьПравоДобавления = Ложь;
	КонецЕсли;
	
	Если ПользователиКлиентСервер.ЭтоСеансВнешнегоПользователя() Тогда
		ТолькоПросмотр = Не ПравоДоступа("Редактирование", МетаданныеСправочникаСФайлами);
	Иначе	
		ТолькоПросмотр = Параметры.ТолькоПросмотр Или НЕ ПравоДоступа("Редактирование", МетаданныеСправочникаСФайлами)
			Или НЕ ПравоДоступа("Редактирование", Параметры.ВладелецФайла.Метаданные());
	КонецЕсли;
	
	Если ТолькоПросмотр Тогда
		СкрытьКнопкиИзменения();
		ЕстьПравоДобавления = Ложь;
	КонецЕсли;
	
	ИменаВсехКомандФормы = ПолучитьИменаКомандФормы();
	ИменаЭлементов = Новый Массив;
	
	Для Каждого ЭлементФормы Из Элементы Цикл
		
		Если ТипЗнч(ЭлементФормы) <> Тип("КнопкаФормы") Тогда
			Продолжить;
		КонецЕсли;
		
		Если ИменаВсехКомандФормы.Найти(ЭлементФормы.ИмяКоманды) <> Неопределено
			Или ИменаВсехКомандФормы.Найти(ЭлементФормы.Имя) <> Неопределено Тогда
				ИменаЭлементов.Добавить(ЭлементФормы.Имя);
		КонецЕсли;
		
	КонецЦикла;
	
	ИменаЭлементовКнопокФормы = Новый ФиксированныйМассив(ИменаЭлементов);
	
	ПриИзмененииИспользованияПодписанияИлиШифрованияНаСервере();
	
	Если КлиентскоеПриложение.ТекущийВариантИнтерфейса() = ВариантИнтерфейсаКлиентскогоПриложения.Версия8_2 Тогда
		Элементы.ФормаИзменить.Видимость = Ложь;
		Элементы.ФормаИзменить82.Видимость = Истина;
		Элементы.ФормаСкопировать.ТолькоВоВсехДействиях = Ложь;
		Элементы.УстановитьПометкуУдаления.ТолькоВоВсехДействиях = Ложь;
	КонецЕсли;
	
	ИспользоватьПредпросмотр = ОбщегоНазначения.ХранилищеОбщихНастроекЗагрузить(
		ТипСправочникаСФайлами,
		"Предпросмотр");
	
	Если ИспользоватьПредпросмотр <> Неопределено Тогда
		Предпросмотр = ИспользоватьПредпросмотр;
	КонецЕсли;
	
	Элементы.АдресДанныхФайла.Видимость = Предпросмотр;
	Элементы.Предпросмотр.Пометка       = Предпросмотр;
	
	РасширенияПоддерживающиеПредпросмотр = РаботаСФайламиСлужебный.СписокРасширенийДляПредпросмотра();
	
	ОбновитьПояснениеОблачногоСервиса();
	
	Элементы.НастроитьСинхронизацию.Видимость = ПравоДоступа("Редактирование", Метаданные.Справочники.УчетныеЗаписиСинхронизацииФайлов);
	ЕстьЭлектроннаяПодпись = ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ЭлектроннаяПодпись");
	Элементы.ПечатьСоШтампом.Видимость = ЕстьЭлектроннаяПодпись;
	
	Элементы.СравнитьФайлы.Видимость = Не ОбщегоНазначенияКлиентСервер.ЭтоLinuxКлиент()
		                             И Не ОбщегоНазначенияКлиентСервер.ЭтоВебКлиент();
	
	ЗапрещенныеРасширения = РаботаСФайламиСлужебный.СписокЗапрещенныхРасширений();
	
	УстановитьУсловноеОформление();
	
	РаботаСФайламиПереопределяемый.ПриСозданииФормыСпискаФайлов(ЭтотОбъект);
	
КонецПроцедуры
Показать
По теме из базы знаний
Найденные решения
17. user1278383 4 29.04.21 08:00 Сейчас в теме
(15) Самый первый мой коммент все-таки правильный. Смотри в отладчике. Нужно в Параметры.ВладелецФайла подставить ГоловноеИсполнение. Наверно так, нужно смотреть структуру справочников:
Параметры.Владелец = Параметры.Владелец.ГоловноеИсполнение
18. user1565257 29.04.21 08:10 Сейчас в теме
(17) Спасибо Вам огромное, вы человечище. Все дело было в одной строке. Все заработало.
	Список.Параметры.УстановитьЗначениеПараметра("ВладелецФайлов",      Параметры.ВладелецФайла.ГоловноеИсполнение);
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. user1278383 4 28.04.21 08:38 Сейчас в теме
Оригинал запроса бы...
3. user1565257 28.04.21 08:59 Сейчас в теме
(2) Извините за мою бестолковость, вы об этом?
Прикрепленные файлы:
5. user1278383 4 28.04.21 09:19 Сейчас в теме
(3) а, это и есть оригинальный запрос.
Тогда можно попробовать так:
//Вместо
//ВладелецФайла = Параметры.ВладелецФайла;
ВладелецФайла  = УправлениеСвойствами.ЗначениеСвойства(Параметры.ВладелецФайла, "ИмяДопРеквизита");
6. user1565257 28.04.21 09:45 Сейчас в теме
(5)
УправлениеСвойствами.ЗначениеСвойства(Параметры.ВладелецФайла, "ИмяДопРеквизита");

Так не слушается. И заменить пробовал, и совмещать...упрямо выводит в "Прикрепленные чертежи" то же самое, что и в "Прикрепленные файлы". При этом в реквизите "ГоловноеИсполнение" задана другая позиция(
7. user1278383 4 28.04.21 09:48 Сейчас в теме
(6) а если и
Параметры.ВладелецФайла = УправлениеСвойствами.ЗначениеСвойства(Параметры.ВладелецФайла, "ИмяДопРеквизита");

?)
9. user1565257 28.04.21 10:00 Сейчас в теме
(7)Сломался владелец файлов. Это уже что то...
Прикрепленные файлы:
11. user1278383 4 28.04.21 10:12 Сейчас в теме
(9) судя по коду Параметры.ВладелецФайла = Неопределено. Точно УправлениеСвойствами.ЗначениеСвойства(Параметры.ВладелецФайла, "ИмяДопРеквизита") не равно неопределенно?)
4. SlavaKron 28.04.21 09:16 Сейчас в теме
Вам не нужен динамический список в принципе. Вам нужна таблица значений на форме, которую нужно заполнить при открытии формы информацией о прикрепленных файлах головного изделия. Как связаны элементы справочников "Головные изделия" и "Исполнения"?
8. user1565257 28.04.21 09:50 Сейчас в теме
(4)Это позиции одного и того же справочника. Головное это изделие или исполнение я пытаюсь определять реквизитом этого справочника "ГоловноеИсполнение", присвая его значение к каждому элементу в карточке изделия. Т.е. мне нужно выводить в форму файлы привязанные не к текущей позиции, а к позиции, которая указана в реквизите "ГоловноеИсполнение".
10. user1565257 28.04.21 10:09 Сейчас в теме
(7)В данной форме работает отбор такого вида. В "Присоединенные чертежи" отображаются только те чертежи, у которых ВладелецФалов и ГоловноеИсполнение совпадает. Может это Вам что то скажет.
    ЭлементОтбора = Список.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
    ЭлементОтбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("ВладелецФайла");
    ЭлементОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
    ЭлементОтбора.Использование = Истина;
    ЭлементОтбора.ПравоеЗначение = ВладелецФайла.ГоловноеИсполнение;
12. user1278383 4 28.04.21 10:14 Сейчас в теме
(10) ага, значит доп. реквизит явно лишний, если исполнение ссылается на ГоловноеИсполнение. Надо подумать
13. user1278383 4 28.04.21 10:18 Сейчас в теме
(10) а что в НастроитьДинамическийСписок(ИмяСправочникаХранилищаФайлов? Нужно найти, где устанавливается текст запроса списка. То, что на скрине - это пустышка.
14. user1565257 28.04.21 10:36 Сейчас в теме
(13)Для хранения файлов по идее используется справочник Файлы...ВладелецФайла как раз его реквизит. Но в каком месте обращение к нему, я не нашел(
15. user1565257 28.04.21 23:09 Сейчас в теме
(13)Методом построчного втыкания обнаружил:
&НаСервере
Процедура НастроитьДинамическийСписок(ИмяСправочникаХранилищаФайлов)
	
	СвойстваСписка = ОбщегоНазначения.СтруктураСвойствДинамическогоСписка();
	
	ТекстЗапроса = 
	"ВЫБРАТЬ
	|	Файлы.Ссылка КАК Ссылка,
	|	Файлы.ПометкаУдаления,
	|	ВЫБОР
	|		КОГДА Файлы.ПометкаУдаления = ИСТИНА
	|			ТОГДА ЕСТЬNULL(Файлы.ИндексКартинки, 2) + 1
	|		ИНАЧЕ ЕСТЬNULL(Файлы.ИндексКартинки, 2)
	|	КОНЕЦ КАК ИндексКартинки,
	|	Файлы.Наименование КАК Наименование,
	|	ВЫРАЗИТЬ(Файлы.Описание КАК СТРОКА(500)) КАК Описание,
	|	Файлы.Автор,
	|	Файлы.ДатаСоздания,
	|	Файлы.Изменил КАК Отредактировал,
	|	ДОБАВИТЬКДАТЕ(Файлы.ДатаМодификацииУниверсальная, СЕКУНДА, &СекундДоМестногоВремени) КАК ДатаИзменения,
	|	ВЫРАЗИТЬ(Файлы.Размер / 1024 КАК ЧИСЛО(10, 0)) КАК Размер,
	|	Файлы.ПодписанЭП,
	|	Файлы.Зашифрован,
	|	ВЫБОР
	|		КОГДА Файлы.ПодписанЭП
	|				И Файлы.Зашифрован
	|			ТОГДА 2
	|		КОГДА Файлы.Зашифрован
	|			ТОГДА 1
	|		КОГДА Файлы.ПодписанЭП
	|			ТОГДА 0
	|		ИНАЧЕ -1
	|	КОНЕЦ КАК НомерКартинкиПодписанЗашифрован,
	|	ВЫБОР
	|		КОГДА НЕ Файлы.Редактирует В (&ПустыеПользователи)
	|			ТОГДА ИСТИНА
	|		ИНАЧЕ ЛОЖЬ
	|	КОНЕЦ КАК ФайлРедактируется,
	|	ВЫБОР
	|		КОГДА Файлы.Редактирует = &ТекущийПользователь
	|			ТОГДА ИСТИНА
	|		ИНАЧЕ ЛОЖЬ
	|	КОНЕЦ КАК ФайлРедактируетТекущийПользователь,
	|	ВЫБОР
	|		КОГДА НЕ Файлы.Редактирует В (&ПустыеПользователи)
	|				И Файлы.Редактирует <> &ТекущийПользователь
	|			ТОГДА ИСТИНА
	|		ИНАЧЕ ЛОЖЬ
	|	КОНЕЦ КАК ФайлРедактируетДругойПользователь,
	|	Файлы.Расширение КАК Расширение,
	|	ВЫБОР
	|		КОГДА СтатусыСинхронизацииФайловСОблачнымСервисом.УчетнаяЗапись <> НЕОПРЕДЕЛЕНО
	|				И Файлы.Редактирует = НЕОПРЕДЕЛЕНО
	|			ТОГДА СтатусыСинхронизацииФайловСОблачнымСервисом.УчетнаяЗапись
	|		ИНАЧЕ Файлы.Редактирует
	|	КОНЕЦ КАК Редактирует,
	|	Файлы.Редактирует КАК РедактируетПользователь,
	|	&ЭтоГруппа КАК ЭтоГруппа,
	|	Файлы.ВладелецФайла КАК ВладелецФайла,
	|	Файлы.ХранитьВерсии КАК ХранитьВерсии
	|ИЗ
	|	&ИмяСправочника КАК Файлы
	|		ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.СтатусыСинхронизацииФайловСОблачнымСервисом КАК СтатусыСинхронизацииФайловСОблачнымСервисом
	|		ПО Файлы.Ссылка = СтатусыСинхронизацииФайловСОблачнымСервисом.Файл
	|ГДЕ
	|	Файлы.ВладелецФайла = &ВладелецФайлов";
	
	ПолноеИмяСправочника = "Справочник." + ИмяСправочникаХранилищаФайлов;
	ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&ИмяСправочника", ПолноеИмяСправочника);
	СвойстваСписка.ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&ЭтоГруппа",
		?(ВозможностьСоздаватьГруппыФайлов, "Файлы.ЭтоГруппа", "ЛОЖЬ"));
		
	СвойстваСписка.ОсновнаяТаблица  = ПолноеИмяСправочника;
	СвойстваСписка.ДинамическоеСчитываниеДанных = Истина;
	ОбщегоНазначения.УстановитьСвойстваДинамическогоСписка(Элементы.Список, СвойстваСписка);
	
	ПустыеПользователи = Новый Массив;
	ПустыеПользователи.Добавить(Неопределено);
	ПустыеПользователи.Добавить(Справочники.Пользователи.ПустаяСсылка());
	ПустыеПользователи.Добавить(Справочники.ВнешниеПользователи.ПустаяСсылка());
	ПустыеПользователи.Добавить(Справочники.УчетныеЗаписиСинхронизацииФайлов.ПустаяСсылка());
	
	Список.Параметры.УстановитьЗначениеПараметра("ГоловноеИсполнение",      Параметры.ВладелецФайла);
	Список.Параметры.УстановитьЗначениеПараметра("ТекущийПользователь", Пользователи.АвторизованныйПользователь());
	Список.Параметры.УстановитьЗначениеПараметра("ПустыеПользователи",  ПустыеПользователи);
	
	ДатаУниверсальная = ТекущаяДатаСеанса();
	Список.Параметры.УстановитьЗначениеПараметра("СекундДоМестногоВремени",
		МестноеВремя(ДатаУниверсальная, ЧасовойПоясСеанса()) - ДатаУниверсальная);
	
КонецПроцедуры

Показать
16. user1565257 29.04.21 07:54 Сейчас в теме
(15) Список.Параметры.УстановитьЗначениеПараметра("ГоловноеИсполнение", Параметры.ВладелецФайла);
Это мое не рабочее творчество, не обращайте внимания.
17. user1278383 4 29.04.21 08:00 Сейчас в теме
(15) Самый первый мой коммент все-таки правильный. Смотри в отладчике. Нужно в Параметры.ВладелецФайла подставить ГоловноеИсполнение. Наверно так, нужно смотреть структуру справочников:
Параметры.Владелец = Параметры.Владелец.ГоловноеИсполнение
18. user1565257 29.04.21 08:10 Сейчас в теме
(17) Спасибо Вам огромное, вы человечище. Все дело было в одной строке. Все заработало.
	Список.Параметры.УстановитьЗначениеПараметра("ВладелецФайлов",      Параметры.ВладелецФайла.ГоловноеИсполнение);
19. user1278383 4 29.04.21 08:15 Сейчас в теме
(18) если проблему решает, то хорошо. Но так неправильно :) В самом начале ПриСозданииНаСервере нужно переопределить владельца. Первую проблема, которая может возникнуть, это права
20. user1565257 29.04.21 08:20 Сейчас в теме
(19)Не знаю на сколько этого достаточно, в ПриСозданииНаСервере я так же указал, и вроде пока ничего не сломалось
	ВладелецФайла = Параметры.ВладелецФайла.ГоловноеИсполнение;
21. user1278383 4 29.04.21 08:28 Сейчас в теме
(20) Думаю достаточно будет ОДНОГО изменения, а именно
Параметры.Владелец = Параметры.Владелец.ГоловноеИсполнение
22. user1565257 29.04.21 09:09 Сейчас в теме
(21)Я понимаю Вашу логику, но это не работает. Я с этих экспериментов начинал. Сейчас проверил еще раз. При этом изменении ничего не меняется. Ошибки нет, но и в ПрисоединенныеЧертежи выводится то же самое, что и ПрисоединенныеФайлы (т.е.просто игнорируется изменение). ИМХО в ПриСозданииНаСервере строка Параметры.Владелец = Параметры.Владелец нужна для нескольких последующих условий, которые в разных сценариях выводят ошибки в случае не совпадения или отсутствия имен. Я вчера вообще весь этот кусок убирал и все продолжало работать и выводить привязанные файлы, как в ПрисоединенныеФайлы
	ВладелецФайла = Параметры.ВладелецФайла;
	
	ТекущаяСсылка = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(Параметры, "ТекущаяСтрока");
	СписокОткрытИзКарточкиФайла = ЗначениеЗаполнено(ТекущаяСсылка);
	Элементы.ВладелецФайла.Видимость = СписокОткрытИзКарточкиФайла;
	Если СписокОткрытИзКарточкиФайла И ВладелецФайла = Неопределено Тогда
		ВладелецФайла = ОбщегоНазначения.ЗначениеРеквизитаОбъекта(ТекущаяСсылка, "ВладелецФайла");
		Параметры.ВладелецФайла = ВладелецФайла;
	КонецЕсли;
	Если Параметры.ВладелецФайла = Неопределено Тогда
		ВызватьИсключение НСтр("ru = 'Список присоединенных файлов можно посмотреть
		                             |только в форме объекта-владельца.'");
	КонецЕсли;

Показать

И вариант ВладелецФайла = Параметры.ВладелецФайла.ГоловноеИсполнение; работает так же.
Оставьте свое сообщение

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