No se actualizan las UG de los cubos de compras y patrimonio

Estoy teniendo inconvenientes para que se asignen las unidades de análisis (unidades genéricas) en los cubos de compras y patrimonio. Encuentro, por ejemplo, que en el cubo de patrimonio la agrupación de las “areas responsables” las hace correctamente, es decir, el ETL agrupa correctamente las 441 diaguita_tmp.id_area_responsable en 11 valores distintos en diaguita_dsa.area_responsable_id. (y quedan así tambien en diaguita.area_responsable_id).

Estas opciones las tengo todas definidas dentro del Administrar Servidor/Configuracion, pero al clickear en ACTUALIZAR no les carga las unidad de análisis a los registros. En el caso de la tabla ft_patrimonio, todos los registros de unidad_generica_id quedan en 0. (aunque no cambié ninguna asignación de unidad de analisis, también probé con el botón RECARGAR por las dudas, pero tampoco)

(busqué en el CDE de Actualización de Datos, de Administrar Servidor, pero no pude encontrar la query que ejecuta el boton “Actualizar” como para seguir revisando)

Hola Diego! en el tablero de Configuracion → 3 - Asigna Unidad de Analisis a las Unidades Academicas, tenes todas las UA de diaguita asignadas?
Saludos,
Sabrina

Hola Sabrina! Si, todas menos éstas 4:

INFORMÁTICA (no se usa)
U.N.M.D.P. (es la unidad padre de todas las facultades y rectorado)
VACIO/NULO
VALOR ERRONEO

Perfecto, lo que podes hacer para poder ver el log de la actualizacion, es lo siguiente:

  • Ingresas a pentaho
  • Del menu de arriba vas a VER–> Mostrar archivos ocultos
  • Navegas la carpeta de SIU-Wichi → recursos_wichi → etl → carga_de_datos → general → actualizar_unidad
  • doble clic en el archivo actualizaciones_unidad_generica_diaguita
    Esto te abre una pestaña con el log del etl, si hay algun error, lo vas a ver ahi. Mandame el error que te da…
    Te adjunto imagenes con los pasos.
    Saludos,
    Sabrina.

Captura de pantalla de 2019-08-21 14-42-21.png

Captura de pantalla de 2019-08-21 14-42-21.png

Captura de pantalla de 2019-08-21 14-42-48.png

Captura de pantalla de 2019-08-21 14-42-48.png

Ahí lo ejecuté, pero no hay errores. (adjunto el log)


log_etl.txt (5.03 KB)

Hola Diego! te adjunto un script para:
--PASO 1: verificar unidades sin asignación
–PASO 2: Chequear te tengo unidades genéricas de diaguita (unidad_generica_id = 0 es erronea o nula, no puede existir otro valor)
–PASO 3: actualizar las unidades

A ver si con esto nos damos cuenta donde esta el error.
Saludos,
Sabrina.


UA_Diaguita.sql (1.9 KB)

Hola Sabrina! ejecuté los scripts. Con los siguientes resultados:


PASO 1:  
89.365 registros en ft_patrimonio con unidad_generica_id = 0 (todos los registros)
4.690 registros en ft_compras con unidad_generica_id=0 (de 69.248 registros)


PASO 2:  
0 (cero)


PASO 3:  
89.365 rows affected en ft_patrimonio
4.690 rows affected en ft_compras

Luego de correr los 3 pasos, ejecuté nuevamente el paso 1 para ver si había cambiado algo, pero siguen los mismos registros con unidad_generica_id en 0

Saludos!!!

Hola Diego, el problema es que no tenes unidades genericas de diaguita (paso 2) , por eso no asigna nada.
Hace lo siguiente:

  • Fijate en public.d_instalacion, el instalacion_id que tenes para diaguita.
    -Luego filtras public.d_unidad con el instalacion_id obtenido en el paso anterior.
  • Chequea que los unidad_generica_id no sean 0

Si tenes unidad_generica_id=0 debes asignar las unidades con el tablero de configuración 3 - Asigna Unidad de Analisis a las Unidades Academicas

Esto es lo que tengo cargado en la tabla d_unidad (instalacion_id = 1 es el del SIU-Diaguita)

Los 4 registros que están en 0, son justamente las que te mencioné antes…


Esta es la tabla:

[tr][td]unidad_id[/td][td]unidad_generica_id[/td][td]unidad_desc[/td][td]instalacion_id[/td][/tr]
[tr][td]92[/td][td]1[/td][td]“01.00.00 :: RECTORADO”[/td][td]1[/td][/tr]
[tr][td]88[/td][td]0[/td][td]“VACÍO/NULO”[/td][td]1[/td][/tr]
[tr][td]91[/td][td]0[/td][td]“VALOR ERRONEO”[/td][td]1[/td][/tr]
[tr][td]85[/td][td]10[/td][td]“03.00.00 :: ARQUITECTURA”[/td][td]1[/td][/tr]
[tr][td]83[/td][td]3[/td][td]“04.00.00 :: DERECHO”[/td][td]1[/td][/tr]
[tr][td]90[/td][td]11[/td][td]“05.00.00 :: CIENCIAS ECONOMICAS”[/td][td]1[/td][/tr]
[tr][td]81[/td][td]4[/td][td]“06.00.00 :: CIENCIAS EXACTAS”[/td][td]1[/td][/tr]
[tr][td]89[/td][td]7[/td][td]“07.00.00 :: HUMANIDADES”[/td][td]1[/td][/tr]
[tr][td]86[/td][td]8[/td][td]“08.00.00 :: INGENIERIA”[/td][td]1[/td][/tr]
[tr][td]82[/td][td]13[/td][td]“09.00.00 :: PSICOLOGIA”[/td][td]1[/td][/tr]
[tr][td]87[/td][td]12[/td][td]“10.00.00 :: CIENCIAS DE LA SALUD”[/td][td]1[/td][/tr]
[tr][td]84[/td][td]6[/td][td]“02.00.00 :: CIENCIAS AGRARIAS”[/td][td]1[/td][/tr]
[tr][td]104[/td][td]0[/td][td]“INFORMÁTICA”[/td][td]1[/td][/tr]
[tr][td]105[/td][td]0[/td][td]“U.N.M.D.P.”[/td][td]1[/td][/tr]

Ejecute estas querys en la base:
select area_responsable_id, count(*) from diaguita.ft_patrimonio group by area_responsable_id order by area_responsable_id
Resultado:

[tr][td]area_responsable_id[/td][td]COUNT[/td][/tr]
[tr][td]0[/td][td]8[/td][/tr]
[tr][td]1[/td][td]9028[/td][/tr]
[tr][td]2[/td][td]10960[/td][/tr]
[tr][td]3[/td][td]14267[/td][/tr]
[tr][td]4[/td][td]6222[/td][/tr]
[tr][td]5[/td][td]3678[/td][/tr]
[tr][td]6[/td][td]5284[/td][/tr]
[tr][td]7[/td][td]30066[/td][/tr]
[tr][td]8[/td][td]3192[/td][/tr]
[tr][td]9[/td][td]4154[/td][/tr]
[tr][td]10[/td][td]2506[/td][/tr]

Y esta otra:
select area_id,area_nivel1_desc,area_nivel2_desc from diaguita.d_area order by area_id

[tr][td]area_id[/td][td]nivel1[/td][td]nivel2[/td][/tr]
[tr][td]-1[/td][td]“VALOR ERRONEO”[/td][td]“VALOR ERRONEO”[/td][/tr]
[tr][td]0[/td][td]“VACÍO/NULO”[/td][td]“VACÍO/NULO”[/td][/tr]
[tr][td]1[/td][td]“U.N.M.D.P.”[/td][td]“07.00.00 :: HUMANIDADES”[/td][/tr]
[tr][td]2[/td][td]“U.N.M.D.P.”[/td][td]“06.00.00 :: CIENCIAS EXACTAS”[/td][/tr]
[tr][td]3[/td][td]“U.N.M.D.P.”[/td][td]“08.00.00 :: INGENIERIA”[/td][/tr]
[tr][td]4[/td][td]“U.N.M.D.P.”[/td][td]“03.00.00 :: ARQUITECTURA”[/td][/tr]
[tr][td]5[/td][td]“U.N.M.D.P.”[/td][td]“09.00.00 :: PSICOLOGIA”[/td][/tr]
[tr][td]6[/td][td]“U.N.M.D.P.”[/td][td]“02.00.00 :: CIENCIAS AGRARIAS”[/td][/tr]
[tr][td]7[/td][td]“U.N.M.D.P.”[/td][td]“01.00.00 :: RECTORADO”[/td][/tr]
[tr][td]8[/td][td]“U.N.M.D.P.”[/td][td]“04.00.00 :: DERECHO”[/td][/tr]
[tr][td]9[/td][td]“U.N.M.D.P.”[/td][td]“05.00.00 :: CIENCIAS ECONOMICAS”[/td][/tr]
[tr][td]10[/td][td]“U.N.M.D.P.”[/td][td]“10.00.00 :: CIENCIAS DE LA SALUD”[/td][/tr]
[tr][td]11[/td][td]“INFORMÁTICA”[/td][td]“INFORMÁTICA”[/td][/tr]
[tr][td]12[/td][td]“U.N.M.D.P.”[/td][td]“U.N.M.D.P.”[/td][/tr]

Creo que el problema está en:

u.unidad_desc = dim.area_nivel1_desc

cuando tendría que ser (para nuestro caso)

u.unidad_desc = dim.area_nivel2_desc

Puede ser???

Al modificar esto en el PASO 2 del script que me mandaste ya me devuelve datos con los ID de unidad generica!, voy a ejecutar el paso 3 con esta misma modificacion!

Si es eso, lo que no entiendo es como tenes en d_unidad el nivel 2…
Voy a mirar el etl a ver q paso

SOLUCIONADO PARA ft_patrimonio

solo quedaron 8 registros con unidad_generica_id = 0

:slight_smile:

Para el caso de ft_compras sigue igual:
4.690 registros en ft_compras con unidad_generica_id=0 (de 69.248 registros)

Ok

vas a tener que hacer el mismo chequeo con compras, para ver que tiene…
select id_area_solicitud, count(*) from diaguita.ft_compras group by id_area_solicitud order by id_area_solicitud
y fijarte cuales son esas areas, si estan en d_unidad

Ahí las encontré… son 4669 compras asociadas al padre (area_id 12 U.N.M.D.P.), con este dato voy a averiguar con la gente de la oficina de suministros si correspondería asociarlas con rectorado…