Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
14 дек 2024, 09:55

Как вывести текст реквизита справочника в поле ввода на форму 1с

Автор esscargoott, 03 мар 2024, 12:43

0 Пользователей и 1 гость просматривают эту тему.

esscargoott

Подскажите, имеется справочник у него есть реквизит с текстом, мне надо чтобы при открытии обработки, в поле ввода (или подскажите какой элемент для вывода текста только для чтения можно использовать) выводился текст реквизита первого элемента справочника (код 000000001).  Потом хотелось бы сделать кнопки вперед и назад чтобы перемещаться между элементами на форме, но пока помогите пожалуйста как вывести текст реквизита. по типу как на фото

alexandr_ll

esscargoott, Не вижу связи вашего фопроса с приведенным скрином.

esscargoott

alexandr_ll, на фото не знаю какой элемент, но мне надо также на форму выводить текст реквизита справочника, а потом при нажатии на кнопку переходить к следующему элементу и его реквизиту и вывести текст на форму

antoneus

Создаем реквизит формы с типом СправочникСсылка.НужныйСправочник. В редакторе форм щелкаем у реквизита на плюсик и вытаскиваем на форму нужный реквизит. В ПриСозданииНаСервере заполняем другой реквизит формы - например, список значений - всеми элементами справочника (если их не миллиард, конечно), упорядоченными как нам нужно - по коду, например. Реквизиту формы присваиваем значение первого (т.е. нулевого) по индексу элемента. На форму выскакивает текст этого реквизита. Заводим также реквизит формы с типом число - это будет текущий индекс элемента. При нажатии кнопок туда-сюда увеличиваем или уменьшаем текущий индекс, вытаскиваем из списка по этому индексу элемент и снова кладем его в наш реквизит формы.

esscargoott

antoneus, Боже спасибо, не хочу наглеть но можно хотя б примерный код вашего прекрасного описания.... Только учусь и понимаю что надо сделать а как сделать не понимаю....

antoneus


esscargoott

antoneus, выгрузку не могу но могу показать как сейчас выглядит моя форма обработки, у меня получилось вывести текст реквизита в декорацию, а в поле нет..

antoneus

Декорация не нужна, тип поля вопроса делайте полем надписи. Первые 1 тоже не надо, нам нужны все вопросы. Еще раз: создавайте реквизит формы с типом список значений (в примере - СписокВопросов), реквизит формы с типом число (в примере - ТекущийИндекс), и реквизит формы с типом СправочникСсылка.Вопросы (ТекущийВопрос), реквизит ссылки Вопрос вытаскиваем на форму (тип - поле надписи), ПриСозданииНаСервере:

Запрос = Новый Запрос;
Запрос.Текст = "Выбрать Ссылка Из Справочник.Вопросы Упорядочить по Код";
Выборка = Запрос.Выполнить.Выбрать();
Пока Выборка.Следующий() Цикл
    СписокВопросов.Добавить(Выборка.Ссылка)
КонецЦикла;
Если СписокВопросов.Количество() <> 0 Тогда
    ТекущийВопрос = СписокВопросов[0].Значение
КонецЕсли;


ну и такое

&НаКлиенте
Процедура ИзменитьВопрос(Команда)
    Если Команда.Имя = "СледующийВопрос" Тогда
        Если ТекушийИндекс < СписокВопросов.Количество() Тогда
            ТекущийИндекс = ТекущийИндекс + 1
        КонецЕсли;
    Иначе
        Если ТекущийИндекс > 0 Тогда
            ТекущийИндекс = ТекущийИндекс - 1
        КонецЕсли;
    КонецЕсли;
    ТекущийВопрос = СписокВопросов[ТекущийИндекс].Значение;
КонецПроцедуры

В обеих командах - СледующийВопрос и ПредыдущийВопрос - действием выбираем эту процедуру. Всё.

esscargoott

antoneus, вы лапушка, спасибо вам огромное :ehtwj:  :ehtwj:  :ehtwj:  :ehtwj:  вы меня просто спасли, всего самого лучшего и прекрасного вам!!!

Теги:  

Похожие темы (5)

Рейтинг@Mail.ru

Поиск