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

Значение поля с выбором из списка по умолчанию

Автор evgen_work, 22 мар 2017, 04:42

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

evgen_work

Доброго дня! подскажите пожалуйста! 8.3, управляемые формы. Делаю ФИО как в УПП 8.2, обычные формы, где при вводе фамилии, имени, отчетства значение выбирается из поля списка. Обычный реквизит формы с возможностью выбора из списка. При первом задании фамилии, имени, отчетства - все хорошо, а при повторном открытии справочника значение поля с возможностью выбора из списка пустое. При открытии в реквизит передаю значение объекта и заполняю значением
           Элементы.Наименование.СписокВыбора.Вставить(0,Объект.Наименование);
                 ФИО = Элементы.Наименование.СписокВыбора[0].Значение;
                //фио - реквизит формы, привязанный к полю Наименование, заполняется значением из списка                              выбора

Есть заполненный список значений списка выбора... Как при открытии сделать так, чтобы значение поля наименование уже было заполнено при открытии?? Сейчас подчеркивается красным и поле пустое, хотя что реквизит формы ФИО, что Объект.Наименование уже имеют значение

evgen_work

может хотя бы посоветуете как переделать этот момент (((( нужно поле с вариантом выбора вариантов отображения ФИО (Фамилия.И.О или Фамилия Имя Отчество и т.д.).

LexaK

Вообще не понятна постановка задачи, какие-то списки, какие-то наименования, и самое главное Зачем и для Чего
для отображения на форме, в списке выбора, для вывода на печать?
поэтому ни кто ни чего посоветовать и не может.

попробуйте в справочнике заведите такие поля
НаименованиеПолное = Иванов Иван Иванович;
НаименованиеСокращенное = Иванов И.И.;
добавьте реквизит
ПолноеПредставление (Булево) = Истина/Ложь;

при заполнении/изменении НаименованиеПолное автоматически заполняйте  НаименованиеСокращенное
примерно так,

при изменении НаименованиеПолное

//разбейте полное имя на Фамилию, Имя, Отчество
НаименованиеСокращенное = Фамилия + " " + Лев(Имя,1) + ". " + Лев(Отчество,1);
УстановитьПредставление();
...

при изменении ПолноеПредставление
вызываете такую процедуру.
Процедура УстановитьПредставление();
Если ПолноеПредставление  тогда
    Наименование = НаименованиеПолное;
иначе
    Наименование = НаименованиеСокращенное;
КонецЕсли;
КонецПроцедуры;


заполняете своих физлиц, кому надо ставите галочку ПолноеПредставление 
и у вас вез в базе будут отображаться

или Иванов И.И.
или Петров Петр Петрович

так в любом месте кода, документа или печатной формы вы можете обратиться
Объект.НаименованиеПолное;
или
Объект.НаименованиеСокращенное;

и все!
(при чем здесь какие-то списки совсем не понятно :fdbsdfbsd: )
если помогло нажмите: Спасибо!

Теги:

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

Рейтинг@Mail.ru

Поиск