1с УФ: выбор значения из списка на форме программно

1. EvaMendes 03.03.14 01:59 Сейчас в теме
Добрый вечер! Есть вопрос: создаю форму внешней обработки (УФ), определяю реквизит формы Маршрут (тип СписокЗначений), заполняю его программно значениями регистра сведений при создании на сервере. Но в режиме пользователя не могу выбрать одно значение из списка. Для выбора приходится удалять все значения кроме нужного. Как сделать чтобы выбор был, например, по двум щелчкам мыши или при выборе текущего значения + кнопка ОК? По умолчанию, так не происходит. Пробовала с событием НачалоВыбора, но что-то ничего так и не поняла.
Текст заполнения СПиска:
&НаСервереБезКонтекста
Процедура ПриОткрытииНаСервере(Маршрут)
    Запрос = новый Запрос;
    Запрос.Текст = "ВЫБРАТЬ РАЗЛИЧНЫЕ
                   |    КонтрагентыДополнительныеРеквизиты.Значение
                   |ИЗ
                   |    Справочник.Контрагенты.ДополнительныеРеквизиты КАК КонтрагентыДополнительныеРеквизиты";
    Выборка = Запрос.Выполнить().Выбрать();
    ММаршрут = Новый СписокЗначений;
    Пока выборка.Следующий() цикл
        ММаршрут.Добавить(Выборка.Значение);
    КонецЦикла;
    Маршрут = ММаршрут;
КонецПроцедуры
Показать


Спасибо
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. starjevschik 03.03.14 10:05 Сейчас в теме
(1) EvaMendes, есть подозрение, что ты вместо выбора из списка открываешь весь список целиком. Надо смотреть куда-то в хелп, примерно вот сюда:

ВыбратьЭлемент(<Заголовок>, <Элемент>)
Параметры:

<Заголовок> (необязательный)

Тип: Строка.
Заголовок окна выбора. Если параметр не указан, то используется стандартный заголовок.
Значение по умолчанию: Пустая строка
<Элемент> (необязательный)

Тип: ЭлементСпискаЗначений.
Элемент, на который следует изначально спозиционировать список значений при интерактивном выборе. Если значением параметра не является элемент списка значений, входящий в данный список, позиционирования не произойдет.
Возвращаемое значение:

Тип: ЭлементСпискаЗначений; Неопределено.
3. dock 44 15.03.16 13:50 Сейчас в теме
Для управляемых форм

1) создаем реквизит ВыбранныйМаршрут
тип - Справочник.Контрагенты.ДополнительныеРеквизиты.Значение

2) это реквизит "перетаскиваем" на форму, получаем элемент формы ЭлементВыбранныйМаршрут. устанавливаем ему свойство - "режим выбора из списка"

3) наполняем список значений выбора в обработке ПриОткрытииНаСервере()

ЭлементыФормы.ЭлементВыбранныйМаршрут.СписокВыбора.Добавить(Выборка.Значение, "ПредставлениеЗначения");

ПредставлениеЗначения - можно не указывать, тогда сформируется автоматически.


4) выбранное значение будет храниться в реквизите ВыбранныйМаршрут

5) профит
GeraltSnow; tp_home@mail.ru; _nameless_; myoker; etorpov; nickstrelets; user1577553; YNik; savauu; benzol45; danilo.skiman; adhocprog; user811769; MonteCriZto; qwertyk; smooth; hornet_X; ni032mas; Simas79; cwant; user845559; cleaner_it; dddonnn; bird21; aticva; +25 Ответить
4. EvaMendes 25.03.16 10:04 Сейчас в теме
(3) dock, спасибо =)) Два года уже прошло =)) Но тогда, 2 года назад, я как-то это сделала =))
adhocprog; +1 Ответить
15. ciddex 08.02.22 08:56 Сейчас в теме
(3) А как тип выбрать Справочник.Контрагенты.ДополнительныеРеквизиты.Значение? Можно же только СправочникСсылка.Контрагенты
16. dock 44 08.02.22 20:47 Сейчас в теме
(15) не совсем корректно написал. Уточню: переходим в конфигураторе по пути Справочник.Контрагенты.ДополнительныеРеквизиты.Значение. Смотрим тип реквизита. Например, в ЗУП будет "Характеристика.ДополнительныеРеквизитыИСведения" - вот этот тип и выбираем в реквизите.

P.S. Вы правильно заметили, что нельзя выбрать Справочник.Контрагенты.... - это не тип данных. Типом данных может быть либо Ссылка., либо Объект., а уж никак не реквизит табличной части.
5. dock 44 25.03.16 15:04 Сейчас в теме
ИМХО, у таких вопросов срока давности нет.
сейчас толкнулся с такой же проблемой, убил полночи пока дошел до этого - изначально не в ту сторону копал :)
На сайте ИТС разобраны эти примеры, но тоже не сразу понимаешь все тонкости...
savauu; adhocprog; +2 Ответить
6. jeyrico 05.07.16 01:16 Сейчас в теме
(5) Абсолютно прав про срок давности- сейчас меня от той же фигни спас :)
7. gudzon 1 03.11.17 05:49 Сейчас в теме
И в этом 2017 году это тоже актуально. Не давно была такая же задача.
8. w3bstr 30.03.18 17:18 Сейчас в теме
9. and_r 09.04.18 10:11 Сейчас в теме
Согласен про срок давности, пока есть 1с 8 такие вопросы будут появляться. Спасибо!
10. ujinn 11.09.18 12:34 Сейчас в теме
(9) пока есть новые специалисты, такой вопрос БУДЕТ появляться))
11. RadoLex 20.09.18 11:33 Сейчас в теме
(10) да ладно. и у старых специалистов такие вопросы будут появляться, если они касаются этой темы раз в полгода-год.
12. dock 44 21.09.18 00:04 Сейчас в теме
(11) Всё новое - это хорошо забытое старое :)
13. adhocprog 1140 23.04.20 17:34 Сейчас в теме
14. savauu 29.06.21 14:22 Сейчас в теме
17. tp_home@mail.ru 26.02.24 19:09 Сейчас в теме
Спасибо из 2024))
Изменил

ЭлементыФормы.ЭлементВыбранныйМаршрут.СписокВыбора.Добавить(Выборка.Значение, "ПредставлениеЗначения");

На

Элементы.ЭлементВыбранныйМаршрут.СписокВыбора.Добавить(Выборка.Значение, "ПредставлениеЗначения");
Оставьте свое сообщение

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