martes, 22 de noviembre de 2011

Traducir tabla origen de la dimensión tiempo al español

Contexto:
Desarrollanado un proyecto de Analysis Services (SSAS) en Business Intelligence Development Studio (BIDS)
Al crear la tabla en el origen  de datos para una dimensión de tiempos.
Solo ofrece cuatro idiomas inglés, frances, alemán y japones.
El resultado es que en todos los gráficos te aparecen Mondays o Augusts.
No queda bien y es una verguenza que Microsoft no incluya el castellano me acuerdo de ellos y de los israelitas que crearon SSAS cada vez que empiezo un proyecto.
Solución:
Leeras por ahí que la solución es crear una traducción. Personalmente creo que lo mejor es traducir los valores de la tabla de tiempos y crear o corregir las propiedades y atributos que salgan en inglés.
Para traducir la tabla de tiempos puedes usar un script como este:

UPDATE [tu base de datos].[dbo].[Tiempo]

SET [Fecha_Nombre] = DATENAME(DW,PK_Fecha) + ' ' + DATENAME(d,PK_Fecha) + ' de ' + DATENAME(M,PK_Fecha) + ', ' + DATENAME(yyyy,PK_Fecha)
,[Año_Nombre] = 'Calendario ' + DATENAME(YYYY,PK_Fecha)
,[Trimestre_Nombre] = 'Trimestre '+DATENAME (Q,PK_Fecha) + ', ' + DATENAME(YYYY,PK_Fecha)
,[Mes_Nombre] = DATENAME (M,PK_Fecha) + ' de ' + DATENAME (YYYY,PK_Fecha)
,[Día_Del_Año_Nombre] =REPLACE([Día_Del_Año_Nombre],'Day','Día')
,[Día_Del_Trimestre_Nombre] = REPLACE([Día_Del_Trimestre_nombre],'Day','Día')
,[Día_Del_Mes_Nombre] = REPLACE([Día_Del_Mes_Nombre],'Day','Día')
,[Mes_Del_Año_Nombre] =REPLACE([Mes_Del_Año_Nombre],'Month','Mes')
,[Mes_Del_Trimestre_Nombre] = REPLACE([Mes_Del_Trimestre_Nombre],'Month','Mes')
,[Trimestre_Del_Año_Nombre] = REPLACE([Trimestre_Del_Año_Nombre],'Quarter','Trimestre')
 
Puedes necesitar mas o menos campos pero la idea es esta.
Pero insisto es una verguenza que en mas de 10 años  nadie de MS haya dicho que haya que incluir el español en ese asistente. Como somos pocos.....

2 comentarios:

Anónimo dijo...

Tranquilo, viendo el crecimiento de los latinos en EEUU, dentro de nada lo que no va a aparecer es el Inglés!

Anónimo dijo...

plenamente de acuerdo.. que mal!
Gracias por el script