Управляемые формы (вывести элемент Файлы в список документов)

1. user916600 20.03.20 08:41 Сейчас в теме
ERP 2

Как в списке документов "Документы продажи" изменить форму, чтобы вывести в колонку "Файлы". (перед колонкой номер)
Прикрепленные файлы:
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. SlavaKron 20.03.20 08:57 Сейчас в теме
Для БИТ.Строительство я использовал такой код:
Процедура ДобавитьКолонкуНаличиеФайловВСписок(Форма, ОбъектМетаданных, ИмяМетаданных)
	ТекстЗапроса = Форма.Список.ТекстЗапроса;
	Если СтрНайти(ТекстЗапроса, "КАК НаличиеФайлов") > 0 Тогда
		Возврат
	КонецЕсли;
	ИмяТаблицы = СтрЗаменить(ИмяМетаданных, ".", "");
	
	Если ТекстЗапроса = "" Тогда
		ТекстЗапроса = "ВЫБРАТЬ" + Символы.ПС;
		Для Каждого Реквизит Из ОбъектМетаданных.Реквизиты Цикл
			ТекстЗапроса = ТекстЗапроса + ИмяТаблицы + "." + Реквизит.Имя + "," + Символы.ПС;
		КонецЦикла;
		Для Каждого Реквизит Из ОбъектМетаданных.СтандартныеРеквизиты Цикл
			ТекстЗапроса = ТекстЗапроса + ИмяТаблицы + "." + Реквизит.Имя + "," + Символы.ПС;
		КонецЦикла;
		Для Каждого ТЧ Из ОбъектМетаданных.ТабличныеЧасти Цикл
			ТекстЗапроса = ТекстЗапроса + ИмяТаблицы + "." + ТЧ.Имя + "," + Символы.ПС;
		КонецЦикла;
		ТекстЗапроса = Лев(ТекстЗапроса, СтрДлина(ТекстЗапроса) - 2) + Символы.ПС;
		ТекстЗапроса = ТекстЗапроса + "ИЗ " + ИмяМетаданных + " КАК " + ИмяТаблицы;
		
		Форма.Список.ПроизвольныйЗапрос = Истина;
	КонецЕсли;
	
	ПозицияГДЕ = СтрНайти(ТекстЗапроса, Символы.ПС + "ГДЕ", НаправлениеПоиска.СКонца);
	Если ПозицияГДЕ = 0 Тогда
		ТекстЗапроса = ТекстЗапроса +
		"{ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.НаличиеФайлов КАК НаличиеФайлов
		|	ПО " + ИмяТаблицы + ".Ссылка = НаличиеФайлов.ОбъектСФайлами}";
	Иначе
		ТекстЗапроса = Лев(ТекстЗапроса, ПозицияГДЕ - 1) + 
		"{ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.НаличиеФайлов КАК НаличиеФайлов
		|	ПО " + ИмяТаблицы + ".Ссылка = НаличиеФайлов.ОбъектСФайлами}" + Символы.ПС +
		Сред(ТекстЗапроса, ПозицияГДЕ);
	КонецЕсли;
	
	ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "ВЫБРАТЬ", "ВЫБРАТЬ НаличиеФайлов.ЕстьФайлы КАК ЕстьФайлы,");
	
	Форма.Список.ТекстЗапроса = ТекстЗапроса;
	
	ЭлементСписка = Форма.Элементы.Список;	
	
	НовыйЭлемент = Форма.Элементы.Добавить("ЕстьФайлы", Тип("ПолеФормы"), ЭлементСписка);
	НовыйЭлемент.Вид = ВидПоляФормы.ПолеКартинки;
	НовыйЭлемент.КартинкаЗначений = БиблиотекаКартинок.Скрепка;
	НовыйЭлемент.КартинкаШапки = БиблиотекаКартинок.Скрепка;
	НовыйЭлемент.ПутьКДанным = "Список.ЕстьФайлы";
	НовыйЭлемент.ПоложениеЗаголовка = ПоложениеЗаголовкаЭлементаФормы.Нет;
	
	Форма.Элементы.Переместить(НовыйЭлемент, ЭлементСписка, ЭлементСписка.ПодчиненныеЭлементы[0]);	
КонецПроцедуры
Показать
3. user916600 23.03.20 07:06 Сейчас в теме
(2)спасибо! А простой настройки для пользователей нет? Нужно дописывать?
Оставьте свое сообщение

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