Имя: Пароль:
1C
1С v8
Как заполнить реквизит программно
0 Alex562035
 
15.08.21
19:27
Всем привет, подскажите как правильно можно заполнить программно созданный реквизит с типом (Список значений) он у меня будет привязан к элементу с полем. В режиме 1с предприятия он  ссылается на Справочник для выбора нескольких значений. Но мне нужно заранее заполнить часть данных из массива. Как это можно сделать?

[IMG]https://i.ibb.co/nBStTRL/image.jpg[/IMG]

Я пробую хотя бы приравнять его к одному значению приравняв к [B]Администратор[/B], которое можно выбрать из списка в режиме 1с предприятие, но у меня так не выходит это сделать, что при открытии в поле ввода у меня было уже прописано [B]Администратор[/B]. Возможно ли такое сделать?

Вот как я пытаюсь добавить значение к реквизиту [B]МойРеквизит[/B] где я в цикле нахожу все возможные реквизиты с этим названием а у меня их несколько.

ЭтаФорма[ЭтаФорма.ПолучитьРеквизиты()[Счч].Имя] = "Администратор";


Для Каждого РеквизитФормы Из ЭтаФорма.ПолучитьРеквизиты() Цикл
            ЛевыйРеквит = Лев(ЭтаФорма.ПолучитьРеквизиты()[Счч].Имя,11);
            Если "МойРеквизит" = ЛевыйРеквит Тогда
                ЭтаФорма[ЭтаФорма.ПолучитьРеквизиты()[Счч].Имя] = "Администратор";
            КонецЕсли;
            Счч = Счч + 1;
        КонецЦикла;

1 Chameleon1980
 
15.08.21
20:10
нахера 3 раза получить реквизиты?
для каждого реквизит из получитьреквизиты цикл
дальше отладчик тебе все покажет

да и причём тут вообще получение всех реквизитов формы

че спросить то хотел?
2 brainguard
 
15.08.21
20:26
(0) СписокВыбора надо заполнять
3 Alex562035
 
15.08.21
20:30
Я как бы через ПолучитьРеквизиты нахожу свои нужные реквизиты с названием МойРеквизит и их у меня несколько. У меня программно создаются поля со списокм значений их у меня несколько. Они у меня должны быть частично уже заполнены при открытие в режиме 1с Предприятие. Чтобы их заполнить я так понимаю нужно заполнить те реквизиты которые привязаны к полям.
4 Alex562035
 
15.08.21
21:30
Все уже готово


МойМассив = Новый Массив;
        МойМассив.Добавить("ИБТ");
        Для Каждого РеквизитФормы Из ЭтаФорма.ПолучитьРеквизиты() Цикл
            Если СтрНачинаетсяС(РеквизитФормы.Имя, "МойРеквизит") Тогда
                ЭтаФорма[РеквизитФормы.Имя].ЗагрузитьЗначения(МойМассив);
            КонецЕсли;
        КонецЦикла;
5 Chameleon1980
 
16.08.21
04:24
(4) зачем перебор, если тебе известны имена?
6 ИС-2
 
naïve
16.08.21
05:54
у списка значений должен быть тип Справочник.Пользователи

&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
    Мой_СписокЗначений.Добавить(ПараметрыСеанса.ТекущийПользователь)
КонецПроцедуры