Integração via SQL

Integração via SQL

por Alexsandro Bueno -
Número de respostas: 2
Olá,

Estou realizando a integração do Moodle 2.9 com um sistema acadêmico via SQL. Obtive certo sucesso, porem estou com problemas:

1 - Quando restauro o conteúdo de cursos antigos para os cursos criados via integração, o conteúdo não é mostrado corretamente acusando erro na tabela filter_active, o que não ocorre se restauro o conteúdo em um novo curso criado a partir da restauração por exemplo.
Para inserção de curso utilizo as tabelas mdl_course, mdl_context, mdl_enrol
Utilizei como base esse artigo - http://moodlesql.blogspot.com.br/2010/09/criar-curso-no-moodle-com-comando-sql.html

2 - Outro problema é que os alunos matriculados não estão sendo listados nos relatórios de notas. Os acadêmicos estão matriculados dentro do curso como alunos, porem não existe nenhum participante na tabela de notas.
As matriculas estão sendo efetuadas utilizando as tabelas: mdl_user_enrolments, mdl_role_assignments
Utilizei este artigo como base para desenvolver - http://moodlesql.blogspot.com.br/2010/07/matricular-usuario-no-curso-do-moodle.html

Como os artigos tomados como base já são antigos, a duvida é se não existe alguma tabela onde seja necessário a inserção de dados.


Contagem das avaliações:  -
Em resposta à Alexsandro Bueno

Re: Integração via SQL

por Daniel Neis Araujo -
Imagem de Core developers Imagem de Plugin developers Imagem de Translators

Olá, Alexsandro

o que acontece é que o Moodle tem um sistema de "cache" (https://docs.moodle.org/dev/The_Moodle_Universal_Cache_%28MUC%29)
e inserir coisas diretamente no banco de dados é uma abordagem não muito recomendada.

Como você está escrevendo o script de integração em PHP, o melhor seria utilizar
a API do Moodle (https://docs.moodle.org/dev/Core_APIs) para criar cursos, usuários e fazer matrículas.

Voce pode procurar por funções como "create_course" e "enrol_user" e outras relacionadas
que devem fazer o que você pretende e já cuidam de atualizar o "cache".

Grande abraço,
Daniel

Contagem das avaliações:  (1)
Em resposta à Daniel Neis Araujo

Re: Integração via SQL

por Alexsandro Bueno -

Olá Daniel, obrigado pela resposta.

Depois de ler mais artigos e me inteirar sobre esses problemas de inserção direta, acabei optando pelo desenvolvimento via webservice, assim resolvi todos os problemas. Obrigado pela ajuda!

Contagem das avaliações:  -