Внешняя база дынных как инструмент для регистрации и зачисления на курсы

Внешняя база дынных как инструмент для регистрации и зачисления на курсы

от Дима Гилёв -
Количество ответов: 5

Всем доброго времени суток. Кто знает или может есть у кого ни будь подробная инструкция, как настроить регистрацию пользователей со внешней базы данных и автоматическая их зачисление на курсы. Зачисление на курсы можно сделать через глобальные группы, с этим вопросом в принципе всё понятно. Как можно регистрируя пользователя в систему через внешнюю базу данных автоматически закинуть его в нужную глобальную группу. Глобальных групп много, в зависимости от подразделения и должности.  Сотрудник должен попасть в определённую. 

В ответ на Дима Гилёв

Re: Внешняя база дынных как инструмент для регистрации и зачисления на курсы

от Николай Козловский -
Ищите плагины синхронизаторы. Например есть moodle-local_profilecohort-master, он может синхронизировать членство в группе с полем профиля пользователя (только он для версии 3.8>). Можно загружать пользователей из csv файла сразу с членством в группах, тут на форуме был вопрос как такую загрузку поставить на cron. Из отдельной базы надо писать плагин загрузки, сложного ничего нет. Я потихоньку пишу плагин синхронизации с учебных планом в шахтинском формате. Берется группа, потом подгружается план и создаются нужные предметы.
В ответ на Николай Козловский

Re: Внешняя база дынных как инструмент для регистрации и зачисления на курсы

от Дима Гилёв -
Николай, очень интересная информация. Сам никогда плагины не писал. Может есть какая нибудь начальная инструкция как в этом разобраться?
В ответ на Дима Гилёв

Re: Внешняя база дынных как инструмент для регистрации и зачисления на курсы

от Николай Козловский -
У меня есть базовые знания php и ООП, поэтому могу на основе стандартных плагинов и github решать свои задачи. Порог входа в разработку высокий.
Если не углубляться в программирование, то стоит начать с анализа бизнес процесса зачисления пользователей. Разделить роли в системе. Создать корневые курсы(учебные планы), которые синхронизируются с группой, а для всех остальных сделать Метасвязь с курсом. Обновление метасвязей идет после сохранения способа записи и по cron. Потом можно разобраться со структурой таблиц mdl_enrol и mdl_user, mdl_course и написать sql запросы синхронизации
Например запросом
INSERT INTO mdl_enrol SET enrol='meta',status=0,courseid=@id,sortorder=3,enrolperiod=0,enrolstartdate=0,enrolenddate=0,expirynotify=0,expirythreshold=0,notifyall=0,roleid=0,customint1=@plan;
мы делаем метасвязь курса @id с метакурсом @plan. Потом ждем выполнения cron и получаем в курсе @id всех из @plan. Можно сделать запросы для выбора курсов из категории или по другим признаком. В итоге получим существенное ускорение работы. Один человек за неделю у нас раскидывает порядка 3000 студентов. Пока не автоматизировали только зачисление преподавателей по расписанию.
В ответ на Николай Козловский

Re: Внешняя база дынных как инструмент для регистрации и зачисления на курсы

от Alexey Piguzov -
Николай очень актуальное решение (шахтинские программы много вузов использует) Не планируете опубликовать плагин?
В ответ на Alexey Piguzov

Re: Внешняя база дынных как инструмент для регистрации и зачисления на курсы

от Николай Козловский -
Пока не планирую. На последнем заседании ассоциации ректоров министр озвучил идею выйти с общими подходами к фирме 1С в рамках идей цифровизации, так что деньги к ним пойдут. Я здесь на форуме писал о таком плагине и поддержки не было. Сейчас большинство вузов делают видимость дистанционки и скидывают курсы на преподавателей по принципу как получиться и не заинтересованы в учете и анализе содержимого курсов и выполнении нагрузки по плану.