Выгрузка данных из одного справочника в другой
При изменении значение "Состояние" в справочнике "Абитуриенты", данные должны перенестись в справочник студенты
&НаКлиенте
Процедура СостояниеОбработкаВыбора(Элемент, ВыбранноеЗначение, ДополнительныеДанные, СтандартнаяОбработка)
ИзмененныйАбитуриент = Объект.Состояние;
Если ИзмененныйАбитуриент.Состояние = "Принят" Тогда
НовыйСтудент = Справочники.Студенты.СоздатьЭлемент();
НовыйСтудент.Наименование = ИзмененныйАбитуриент.Наименование;
НовыйСтудент.Пол = ИзмененныйАбитуриент.Пол;
НовыйСтудент.ДатаРождения = ИзмененныйАбитуриент.ДатаРождения;
НовыйСтудент.КонтактныйТелефон = ИзмененныйАбитуриент.КонтактныйТелефон;
НовыйСтудент.ЭлектронаяПочта = ИзмененныйАбитуриент.ЭлектронаяПочта;
НовыйСтудент.Специальность = ИзмененныйАбитуриент.Специальность;
НовыйСтудент.Записать();
КонецЕсли;
КонецПроцедуры
Ошибка
{Справочник.Абитуриенты.Форма.ФормаЭлемента.Форма(10,18)}: Переменная не определена (Справочники)
НовыйСтудент = <<?>>Справочники.Студенты.СоздатьЭлемент(); (Проверка: Тонкий клиент)
Ответы (1 шт):
Автор решения: Oopss
→ Ссылка
Все манипуляции с объектом, производятся на сервере, нужно с клиента вызвать серверную процедуру и там уже можно создавать объект, записывать. Возможно нужно передать на сервер, аргументы в зависимости от задачи.
&НаКлиенте
Процедура СостояниеОбработкаВыбора(Элемент, ВыбранноеЗначение, ДополнительныеДанные, СтандартнаяОбработка)
СостояниеОбработкаВыбораНаСервере();
КонецПроцедуры
&НаСервере
Процедура СостояниеОбработкаВыбораНаСервере()
ИзмененныйАбитуриент = Объект.Состояние;
Если ИзмененныйАбитуриент.Состояние = "Принят" Тогда
НовыйСтудент = Справочники.Студенты.СоздатьЭлемент();
НовыйСтудент.Наименование = ИзмененныйАбитуриент.Наименование;
НовыйСтудент.Пол = ИзмененныйАбитуриент.Пол;
НовыйСтудент.ДатаРождения = ИзмененныйАбитуриент.ДатаРождения;
НовыйСтудент.КонтактныйТелефон = ИзмененныйАбитуриент.КонтактныйТелефон;
НовыйСтудент.ЭлектронаяПочта = ИзмененныйАбитуриент.ЭлектронаяПочта;
НовыйСтудент.Специальность = ИзмененныйАбитуриент.Специальность;
НовыйСтудент.Записать();
КонецЕсли;
КонецПроцедуры