• Курсы Академии Кодебай, стартующие в мае - июне, от команды The Codeby

    1. Цифровая криминалистика и реагирование на инциденты
    2. ОС Linux (DFIR) Старт: 16 мая
    3. Анализ фишинговых атак Старт: 16 мая Устройства для тестирования на проникновение Старт: 16 мая

    Скидки до 10%

    Полный список ближайших курсов ...

Реализация простого функционала

  • Автор темы strenuus
  • Дата начала
S

strenuus

Добрый день. Помогите пожалуйста полному новичку.
У меня есть 2 справочника:
* Должности(Код, Наименование (30))
* Сотрудники (Количество уровней (1), Код (5), Наименование (100), Должность: Справочник «Должности», Оклад(число 10), ДатаПриема (Дата))
Есть документ:
* Прием на работу (ФИО (строка 100), Должность (Справочник «Должности»), Оклад (Число 10 точность 2), ДатаПриема (Дата))
Вопрос: как реализовать функционал, чтобы при проведении документа создаваться запись в справочнике «Сотрудники» и заполнялась данными из атрибутов документа?
 
V

vbs

Изучай методы работы со справочниками.
Если это 7.7, то пригодится НайтиПоНаименованию() и Новый()
 
S

strenuus

Больше никаких подсказок не будет?
А версия 8.1.
 
T

thinkfast

//-- Обработка движений документа
Процедура ОбработкаПроведения(Отказ, Режим)
...
//Ваша Обработка проведения
...

//Создание сотрудника
новСотрудник = Справочники.Сотрудники.СоздатьЭлемент();
новСотрудник .Наименование = ФИО;
новСотрудник .Должность = Должность;
новСотрудник .Оклад= Оклад;
новСотрудник .ДатаПриема = ДатаПриема;
новСотрудник.Записать();

КонецПроцедуры
 
D

Darlock

Не забудьте перед созданием сначала поискать по справочнику, а то получиться 10 полных однофамильцев или ошибка, со ссылкой на не уникальность.
 
S

strenuus

А если нужно при проведении документа "Увольнение" (Сотрудник (Справочник «Сотрудники»),
Дата уволнения (Дата))добавлять в справочник соответсвенно сотруднику ДатуУвольнения (реквизит прописан, создавать не надо). Не подскажете как сделать добавление. А то я вроде бы добавляю, но по ходу пытаюсь переписать в самом документе эту дату и мне выдает ошибку.
 
T

thinkfast

Уволенный = Сотрудник .ПолучитьОбъект();
Уволенный.ДатаУволнения = Дата;
Уволенный.Записать();
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!