Имя: Пароль:
1C
1С v8
Вывести несколько значений в поле ввода
🠗Ø (Волшебник 11.02.2025 13:25)
,
0 VSpicy
 
naïve
11.02.25
08:32
Всех приветствую!
На управляемой форме есть Реквизит с типом: "СправочникСсылка.уатМоделиТС"
СтандартнаяОбработка = Ложь;
Открываю данные из запроса, отмечаю несколько значений, жму ок, но эти значения не летят в поле ввода... (Данные нужны для параметра другого запроса).
Вот код:
&НаКлиенте
Процедура ОтборМодельНачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка)
	СтандартнаяОбработка= Ложь;
	Список			  = МаркиТС();
	
	ЭлементыПодстановки = Список.ОтметитьЭлементы("Выберите модель транспортного средства:");
	
	МодельСтрока = "";	
	
	Если ЭлементыПодстановки = Истина Тогда	
		
		Для Каждого ЭлементСписка Из Список Цикл
			
			Если ЭлементСписка.Пометка Тогда
				
				МодельСтрока  = МодельСтрока + ЭлементСписка.Значение + ", ";
				
			КонецЕсли;
				
		КонецЦикла; 	
		
				Отчет.ОтборМодель = МодельСтрока;	
		
	КонецЕсли;
КонецПроцедуры

&НаСервере
Функция МаркиТС();
	
Запрос = Новый Запрос;
	Запрос.Текст = 
	"ВЫБРАТЬ
	|	уатМоделиТС.Ссылка КАК Ссылка,
	|	уатМоделиТС.Наименование КАК Наименование
	|ИЗ
	|	Справочник.уатМоделиТС КАК уатМоделиТС";		
		
	РезультатЗапроса = Запрос.Выполнить();	
	
	Список = Новый СписокЗначений;	
	Список.ЗагрузитьЗначения(РезультатЗапроса.Выгрузить().ВыгрузитьКолонку("Наименование"));
	Возврат Список;
	
КонецФункции

Подскажите пожалуйста что нужно дописать?
Может есть вариант лучше этого...
Знаю на СКД такой вариант можно сделать отбором, поставив Вид сравнения - "В списке". Только где можно найти код, такого типового решения?
Если есть возможность, поделитесь ссылкой на пример такого решения...

Заранее благодарен!
1 lEvGl
 
гуру
10.02.25
22:23
(0) присваиваете ссылочному типу строку? и что должно произойти
передавайте отмеченные ссылки сразу в другой запрос и выполняйте его
что будет, когда в результате запроса будет 50 или больше моделей, все их крутить и отметки ставить какой то недружелюбный интерфейс
2 VSpicy
 
naïve
11.02.25
00:00
(1) Моделей максимум 5-10 будет выбрано. Выбранные модели не встают в поле ввода из-за ссылочного типа? Может быть нужно использовать множественный выбор? Нужно пользователю видеть - что он выбрал...
3 lEvGl
 
гуру
11.02.25
09:17
(2) есть вероятность, что это Список.ЗагрузитьЗначения(РезультатЗапроса.Выгрузить().ВыгрузитьКолонку("Наименование"));
строка
потом, если справочник с иерархией
сделайте нормальный вариант выбора, хоть ДС с доп галкой
4 lEvGl
 
гуру
11.02.25
09:21
и насильственное
МодельСтрока = "";
МодельСтрока  = МодельСтрока + ЭлементСписка.Значение + ", ";
это подтверждает
5 PR
 
11.02.25
09:56
Что вы тут обсуждаете, не пойму
ТС просто нужно вызвать программиста, а не пытаться гадать на кофейной гуще
То, что ТС не программист, понятно невооруженным взглядом, раз он не понимает разницы между типом "СправочникСсылка.уатМоделиТС" и "СписокЗначений"
6 Волшебник
 
11.02.25
10:02
(5) Вот такой он программист...
7 VSpicy
 
naïve
11.02.25
10:10
(5) Понимания типов есть, просто хочется узнать оптимизированный способ данного решения...
8 mikecool
 
11.02.25
10:11
(7) используй список для хранения подобранного списка
9 VSpicy
 
naïve
11.02.25
10:26
(8) Принято, можно попробовать как вариант.
Спасибо.
10 PR
 
11.02.25
10:27
(7) Оптимизированный способ, блять, в том, чтобы использовать нужный тип вместо того, который ты используешь сейчас
Понаберут по объявлению
11 PR
 
11.02.25
10:29
(9) Да, попробуй, как вариант
Если не получится, можешь попробовать еще другие варианты, "СправочникСсылка.Номенклатура", например, или "ХранилищеЗначения"
12 VSpicy
 
naïve
11.02.25
10:47
(10) Это я уже понял. Можно было бы и в спокойной форме донести. Сетевой этикет вроде как присутствует на форуме.
13 Волшебник
 
модератор
11.02.25
11:52
(12) Послушай сюда, тупой бот. Тебе пытаются помочь, тратят на тебя своё жизненное время, а ты тут хуйню городишь:
Отчет.ОтборМодель = МодельСтрока;    
где МодельСтрока - наименования через запятую.

Да иди ты нахер!
14 PR
 
11.02.25
11:24
(12) Да в жопу сетевой этикет с бездарями, которые нихрена не знают, кроме сетевого этикета, но считают это нормой
Либо учи матчасть либо терпи зуботычины, все просто
Я всякую хуйню с разными типами на первом году изучения 1С всю прошел, а у тебя 4 года стажа и ты на голубом глазу толкаешь какую-то безграмотную дичь
15 VSpicy
 
naïve
11.02.25
11:49
Круто ребята вы помогаете, особенно имея основную роль на этом форуме! Ну и на этом спасибо...
16 Волшебник
 
модератор
11.02.25
11:52
(15) Тут никто не должен тебе помогать. Это ТЫ ДОЛЖЕН внятно и чётко изложить свою задачу, воспринять советы и пойти выполнять СВОЮ задачу.
Вякни ещё что-нибудь против форума и выпилю тебя с форума вообще нахуй.
17 VSpicy
 
naïve
11.02.25
12:05
(16) У меня к форуму вообще претензий нет. Как правило тут всегда понятно и четко объясняют. Видимо в этой теме что-то пошло не так...
18 PR
 
11.02.25
12:18
(17) В этой теме пошло не так то, что был задан абсолютно примитивнейший вопрос, на который, тем не менее, в (1) был задан наводящий вопрос, предполагающий ответ, ну или как минимум подталкивающий к решению
А потом началась всякая хуйня про вежливость, этикет и прочую чушь
Хочешь вежливости?
Будь вежлив по отношению к тем, кто тратит свое время на твою бездарность
Форум — это не инструмент написания кода за тебя
Форум — это место, где люди помогают друг другу ответить на те вопросы, с которыми человек не справился
Если человек за 4 года не справился с понятием типов данных — значит ему нет смысла помогать, не в коня корм, и вежливость тут не при чем
Какой смысл тренировать черепаху бегать в лошадиных гонках, хоть вежливо хоть нет?
19 VSpicy
 
naïve
11.02.25
13:16
Короче смысл всего вышеизложенного мне понятен - учиться, учиться и ещё раз учиться...