Problema con perfiles de datos y dimensiones

Hola! como estan?
Estoy teniendo un problema para hacer funcionar un perfil de datos.
Creo tener todo configurado, pero algo se me está escapando porque no filtra de acuerdo a lo indicado (o a lo que debería!)
Adjunto la forma en que están definidas las relaciones entre las tablas, la dimensión, los perfiles de datos, su asignación a un usuario y el perfil de previsualización.
De todas formas, el resultado de esta consulta, no me filtra por la Sede Andina:


function get_listado_docentes_sin_presentacion()
	{
		$sql = "SELECT DISTINCT UPPER(d.apellido ||', '||d.nombres) as docente_nombre,
					d.legajo, d.nro_inscripcion, d.nro_documento, dt.abreviatura as tipo_documento, d.revalida, d.investigador,
					co.anio_academico anio_adeudado
				FROM docentes d
				INNER JOIN documentos_tipos dt ON (d.tipo_documento=dt.id)
				INNER JOIN docentes_comisiones dc ON( d.legajo = dc.docente )
				INNER JOIN comisiones co ON (dc.comision = co.comision)
				INNER JOIN carreras c ON co.carrera = c.codigo
				INNER JOIN materias m ON co.materia = m.codigo
				INNER JOIN sedes_localidades sl ON (co.sede_localidad = sl.id)
				INNER JOIN sedes s ON (s.sede=sl.sede)
				WHERE d.legajo not in (SELECT docente FROM presentaciones p WHERE p.anio_academico = co.anio_academico)
				ORDER BY anio_adeudado DESC, docente_nombre
				";
		$sql = toba::perfil_de_datos()->filtrar($sql);
		return toba::db()->consultar($sql);
	}

Podrán darme alguna pista de como salir adelante?
Estoy trabajando con Toba 2.3.7

Gracias


dim.JPG

dim.JPG_thumb.png

rel.JPG

rel.JPG_thumb.png

pd_usu.JPG

pd_usu.JPG_thumb.png

Hola Martin,

veo que tenes una subconsulta incluida en el where, eso podria estar confundiendo al parser y hacer que incluya las condiciones en el lugar equivocado.

Por otro lado, si esta devolviendo una SQL exactamente igual a la que pasas… habria que ver por que motivo no reconoce los gatillos.

Podes pasarme mas info?.

Saludos

Hola!

veo que tenes una subconsulta incluida en el where, eso podria estar confundiendo al parser y hacer que incluya las condiciones en el lugar equivocado.
Vi el comentario en el código de toba... tiene alguna solución esto? porque "abuso" de ese tipo de subconsultas.
Por otro lado, si esta devolviendo una SQL exactamente igual a la que pasas.. habria que ver por que motivo no reconoce los gatillos.
La devuelve exactamente igual, hace de cuenta que no la toma.

Que info te serviría? capaz algun log en particular en alguna consulta de la api?

Gracias!

Hola Martin,

con la forma de parsear las SQL en este momento, la unica solucion es filtrar la/s SQL/s de manera separada y luego integrarlas antes de realizar la ejecucion de la misma.
En tu caso, filtraria la SQL original y luego le pegaria la clausula where al resultado del filtrado.

La devuelve exactamente igual, hace de cuenta que no la toma. Que info te serviría? capaz algun log en particular en alguna consulta de la api?
Si la devuelve exactamente igual, entonces es que no esta reconociendo los gatillos de las dimensiones implicadas. Algo que acabo de notar es que el perfil de datos tiene asignados dos dimensiones para fuentes distintas, en que fuente estas filtrando la SQL?, el proyecto tiene mas de una fuente?, podrias pasarle como segundo parametro la fuente para que especificamente intente filtrar por esa?.

Lo que serviria es saber si el metodo toba_perfil_datos::get_clausula_from() esta obteniendo adecuadamente esa parte de la SQL o no, como para despues empezar a ver si la pifia buscando los gatillos o de movida.

Saludos