Имя: Пароль:
1C
1С v8
Добавление колонок в табличную часть одного документа из другого документа.
0 Neron49
 
03.06.18
20:49
Здравствуйте. В 1С новичок.
Есть документ Экзамены с реквизитом Модуль, табличной частью ОценочныйЛист и кнопкой с командой ДобавитьКритерий.
Есть документ Модули с табличной частью КритерииМодуля, в которой содержатся реквизиты Наименование и МаксимальныйБалл.

Требуется, чтобы в результате выполнения команды ДобавитьКритерий по значению реквизита Модуль открывалась соответствующая форма одного из документа Модули. На этой форме выбирается одна запись. И после завершения выбора в табличную часть ОценочныйЛист добавляется новый реквизит. Его название равно значению реквизита наименование выбранной записи а ограничения на значение следующие: тип =число, количество знаков =3, минимальное значение =0, максимальное значение =значению реквизита МаксимальныйБалл.
1 Tateossian
 
03.06.18
20:53
(0) Полагаю, что документ Модули должен делать записи в регистра сведений подчиненный, а уж потом из него делать выбор.
2 Neron49
 
03.06.18
21:00
(1) Спасибо. Допустим, я организовал подчиненный регистр сведений. Вопрос как из него делать выбор.

Пока что научился только добавлять новый реквизит вот так:

&НаКлиенте
Процедура ДобавитьКритерий(Команда)
    // Вставить содержимое обработчика.
    ДобавитьКрит();
КонецПроцедуры

&НаСервере
Процедура ДобавитьКрит()
   нРеквизиты = Новый Массив;
   нРеквизиты.Добавить(Новый РеквизитФормы("Тест3", Новый ОписаниеТипов("Строка"), "Объект.ОценочныйЛист", "Тест3", Истина));
   ИзменитьРеквизиты(нРеквизиты);

   нЭлемент = Элементы.Добавить("Тест3", Тип("ПолеФормы"), Элементы.ОценочныйЛист);
   нЭлемент.Вид = ВидПоляФормы.ПолеВвода;
   нЭлемент.ПутьКДанным = "Объект.ОценочныйЛист.Тест3";
КонецПроцедуры