[SOLUCIONADO] CONECTAR A BASE PREINSCRIPCIÓN MYSQL DESDE SQL EDITOR

Alguien sabe como conectar a la base de Preinscripcion que está en MySQL desde el SQL Editor,
la idea es poder setear como clave de autogestion 3W para el alumno, la misma que eligió cuando se preinscribió.

Alguien ha hecho algo de esto o tiene idea como encararlo o hacer la conexión?

Saludos
MARTIN

Hola Martin

Que yo sepa no se puede. Creo que es para informix únicamente.
Lo que haría es pasar desde preinscripcion a informix, el pais, tipo y nro de documento junto con la clave y ponerlo en una tabla “temporaria”. Con un archivo de texto o con una operación personalizada.
Luego un sp se encargaría de asociar el documento con el usuario de autogestion y setearle la clave encriptada.

Emilio

Hola Emilio,
si, eso empècé a hacer, personalizando la ventana w_inscripcion, en el evento ue_insertar_datos_preinscripcion, ahí le agregué el campo clave,
ahora lo que me falta es insertar en la tambla temporal, que ya tengo hecha, lo que si le puse nro de inscripcion, que creo en esta instancia no está,
¿como debería de hacer el inserte en este evento?

Saludos
MARTIN

lo que dije era para una migración masiva de claves, no para el trabajo que estás pensando hacer.

Primero, el usuario de autogestion se crea por “trigger” no desde la ventana, con lo cual no podes tocarlo hasta despues de confirmar la grabación. Por ej. en ue_posconfirmar.

Segundo, hay que ver la forma de saber si el usuario de autogestion ya existía o si fue creado en esa transacción. Si ya existía (porque ya era alumno antes) no deberías modificar la clave. Esto es opinable. Si no existía deberías hacer un update de la clave recuperada, puesto que el usuario ya existe.

Emilio

Hola Emilio,

si, la idea era, capturar la clave en la ventana w_inscripcion_persona evento ue_insertar_datos_preinscripcion y guardarla en una tabla temporal, luego al ejecutarse el script de generacion de clave (sp_claveDefault), preguntar si esta en esa tabla temporal, de estar ponerle la clave almacenada en la tabla personal para esa persona, de no estar se le aplica el otro criterio del script.

Decime si lo ves muy complicado a esto, debería salir para mañana, si lo ves muy rebuscado le buscamos la vuelta por otro lado al tema de las claves.

Bueno Emilio, muchas gracias.
Saludos

MARTIN

ok.
está bien la alternativa. en ese caso la tabla puede no ser temporaria.
no olvidarse de borrarlo al registro procesado en algun momento (esto puede ser despues de cerrar la transacción).

Emilio

Hola Emilio,

agregué lo siguiente en la ventana w_inscripcion_persona:

En: cat_datos at_personas, at_dc, at_dce, at_dca, at_carrera, at_clave
Agregué lo ultimo: at_clave

Después del ultimo valor (at_dca[41].columna = ‘idioma_otro’; ) agregué este:
at_clave[1].columna = ‘clave’;

En el SELECT de sga_preinscripcion agregue a lo ultimo despues de alu_idioma_otro,:
clave
Es decir quedó asi:
alu_idioma_otro,
clave

En el INTO agregue a lo ultimo despues de :at_dca[41].valor,
:at_clave[1].valor

Es decir quedo asi:
:at_dca[41].valor,
:at_clave[1].valor

Ni bien terminado el SELECT entero despues de WHERE id_preinscripcion = :ident_preinsc[1]
USING sqlca_preinsc;

Pongo lo siguiente:

INSERT INTO claves_preinscripcion (tipo_documento, nro_documento, clave) VALUES (:at_personas[3].valor, :at_personas[4].valor, :at_clave[1].valor) USING SQLCA;

Grabo y no me da ningun error.
Luego pruebe todo el circuito, inscribiendo a alguien al Preinscripcion y luego tomando los datos del Gestion, etc.
En ningun momento tira error, pero no me graba nada en la tabla claves_preinscripcion.

Le estoy errando a algo? Probe sacarle USING SQLCA pero lo mismo.

Saludos
MARTIN

Emilio,

ya quedo andando.

Te pregunto, como hago para que no queden por defecto como bloqueados los usuarios 3W al crearlos?
Mire los parametros pero no hay nada. La idea que queden automaticamente habilitados.

Saludos!
MARTIN

Hola Emilio, te hago otra pregunta:

Para configurar para recuperar la contraseña debo configurar lo que está como para mandar mensajes en el archivo: parametros.inc.php y luego en los Parametros del Gestion definir las demas variables (servidor, etc) ? Con eso solo debería andar?

Con respecto a la pregunta de que quedan como que estan bloqueados al inscribirse (S), puede ser pq les falto algun requisito? En nuestro caso queremos que quede habilitado para ingresar al 3W aún si le falta algun requisito.

Saludos
MARTIN

recuperar contraseña en preinscripcion es independiente de la base informix.
tan solo cargar los valores en los parámetros.

los usuarios están bloqueados por el insert que los crea. fijate en el trigger de carrera_aspira

Emilio

Hola EMilio,
me referia a recuperar la contraseña del 3W con la opción que tiene abajo del login.

Con respecto a lo otro,
En el trigger ti_carrera_aspira ejecuta:

 EXECUTE PROCEDURE sp_CrearUsuarioAG( N_UNIDAD_ACADEMICA, N_NRO_INSCRIPCION, vc_Identif, 'ALU') INTO iStatus, vcMsg;

Mirando el SP: sp_crearUsuarioAG, tiene la siguiente linea (el unico insert del SP):

INSERT INTO aca_usuarios_ag ( unidad_academica, identificacion, nro_inscripcion, clave, fec_ult_actualiz, intentos_fallidos, bloqueado, tipo_usuario )
VALUES ( pUnidadAcademica, pIdentificacion, pNroInscripcion, vcPwdDefault, CURRENT year TO second, 0, ‘N’, pTipoUsuario ) ;

Por lo veo deberia ponerle como N (No Bloqueado).

Saludos
MARTIN

Emilio,
era pq no tenia el legajo aun generado, al generarselo le cambia la condicion de bloqueado (S) a no bloqueado (N)

Saludos
MARTIN

con respecto a recuperar clave en g3w no tenes que configurar nada en el archivo de parametros de php. Tan solo los parámetros de la base de datos.

Con respecto al bloqueo, si. Funciona de esa forma, cuando genera el aspirante lo bloquea y cuando genera el alumno lo desbloquea.

el trigger dispara un procedure de bloqueo de usuario.

Emilio

Hola Emilio, como va?

Ahí ya quedó lo de recuperar la contraseña.-

Otra vez mas: Muchas gracias por la ayuda.

Saludos!
MARTIN