Publicado: Mie Mar 30, 2005 10:05 amAsunto: Saber el usuario-sco donde hay el lessonstatus deseado
Buenas,
Estoy empezando a desarrolar un LMS en ASP.NET. De momento he descargado un ejemplo de API java que se comunica con un webservice y ya veo como funciona, pero tengo una primera gran duda de principiante:
Me dispongo a implementar en el webservice el lmsgetvalue para lessonStatus y, la verdad, no se ni como saber que registro de la tabla userSco (la de tracking del SCO) tengo que coger. Es decir, no se como saber a que usuario y sco corresponde la llamada de lmsgetValue..
Agradeceré muchísimo vuestra ayuda, soy bastante novato en el desarrollo de aplicaciones en red, y más en .NET.
Registrado: Dec 23, 2003 Mensajes: 30 Ubicación: San Sebastián - Donostia
Publicado: Mie Mar 30, 2005 3:27 pmAsunto:
Hola iCe
He trabajado con un LMS desarrollado en .NET. Te cuento la implementación que hice a ver que te parece y a ver si te da alguna idea que puedas aprovechar.
En la base de datos, en el datamodel había un identificador único para cada SCO de cada curso para cada alumno. En tu caso no sé que estructura tendrá la tabla que indicas pero supongo que tendrá algún campo con esa funcionalidad. El LMS a la hora de lanzar un curso, creaba el árbol de contenidos en un frame incluyendo para cada SCO el identificador que correspondía a ese alumno.
Al inicializarse un SCO, en el API se almacenaba ese identificador y a la hora de comunicarse con el LMS el API indicaba el identificador.
Para mejorar el rendimiento, al inicializarse el SCO, el API recuperaba todos los elementos del datamodel y trabajaba con estos valores. De esta forma, a la hora de realizar una operación getvalue no hace falta comunicarse con el LMS, el API envía directamente el valor.
Con las operaciones setvalue, actualizaba el datamodel del API y comunicaba esos cambios al LMS sólo cuando se hacía un commit.
Mi base de datos tienes una tabla para los cursos, una para los SCO, una para usuarios y otra llamada lmsUserSCO que relaciona cada alumno con los SCO para su tracking, a parte de más tablas qeu no vienen al caso.
Entiendo que con la solución que me das se soluciona el problema, ya que el identificador del usuario y del SCO reside en la API y así ya se que registro de la tabla debo buscar según el índice que recoge el userID y el scoID.
Muchas gracias por la respuesta. Solo tengo un problema, que como soy bastante neofito en esto de la API, del javascript etc... me podrias dar alguna pista de como pasar los ID a la API, al lanzar la página que contiene con el arbol del curso?
Intentaré documentarme por mi cuenta, pero siempre viene bien una mano.
Registrado: Dec 23, 2003 Mensajes: 30 Ubicación: San Sebastián - Donostia
Publicado: Mie Mar 30, 2005 5:05 pmAsunto:
Hola iCe
Yo lo que hago para indicar el id al API es crear un método público en el applet que coge como parámetro el id y lo almacena para funcionar con él.
Luego desde el árbol de contenidos, al pulsar en un SCO llamo a una función javascript. Esta función cambia la página del frame con el contenido para que el SCO actual se cierre y luego llama a la función que cambia el id del applet y para terminar carga en el frame del contenido la página de inicio del nuevo SCO.
Si quieres que al principio se cargue directamente un SCO, cuando creas el árbol tienes que decidir que SCO va a ser el primero y en la página que crea el árbol, crear de forma dinámica un método que se ejecute al cargar la página y que le indique al applet el id del SCO y que lance el contenido del SCO.
Saludos y aunque documentarse por cuenta propia siempre es bueno, si tienes alguna duda, sugerencia, ... intentaremos echarte una mano
PD: Para llamar a una función del applet desde Javascript tienes que crear una variable que apunte al applet y luego hacer la llamada con el formato variableApplet.metodoApplet(parametro1).
Ahora estoy haciendo los métodos que leen el manifest y añaden el curso a la bdd. En cuanto tenga el árbol generado probaré lo que me has dicho, a ver si lo consigo!
Puede publicar nuevos temas en este foro No puede responder a temas en este foro No puede editar sus mensajes en este foro No puede borrar sus mensajes en este foro No puede votar en encuestas en este foro