Sustituir valor de un campo en selecc

30/12/2009 - 09:09 por José Antonio Muñoz | Informe spam
Hola al grupo,

Tengo una aplicación realizada con Sql Server y múltiples consultas,
triggers, procedimientos almacenados, funciones, etc donde utilizo para una
determinada tabla un campo llamado descripcion_es que almacena la
descripción de un artículo escrita en castellano. Además de este campo
existen otros campos: descripcion_en, descripcion_fr, descripcion_it, etc.
donde se almacena la descripción en inglés, francés, italiano, etc. Las
consultas ya están hechas con el campo descripcion_es y en toda la
aplicación se hace referencia a este campo. ¿Existe alguna manera de crear
un procedimiento almacenado, trigger, etc. en el que pueda reemplazar el
valor del campo descripcion_es por el de otro campo según el idioma? es
decir como si descripcion_es se le agregara dos parentesis y escribiendo la
funcion descripcion_es( ) que devuelve el texto según el idioma seleccionado
para el usuario x, pero sin agregarle los paréntesis ya que tendría que
estar buscando en toda la aplicación ese campo y agregarle los paréntesis.
(existen cientos de referencias para este campo)

saludos,
José Antonio Muñoz
 

Leer las respuestas

#1 Carlos Sacristan
30/12/2009 - 10:01 | Informe spam
No creo que sea el diseño más limpio. Mejor me parece tener una tabla de
idiomas y otra de descripciones que tenga una FK con esta de idiomas y otra
FK con la principal. Luego tan sólo tendrías que hacer un JOIN, filtrando
por el idioma del usuario y ya tendrías la descripción multiidioma que estás
buscando

"Caminar sobre el agua y desarrollar software a partir de unas
especificaciones es fácil, si ambas están congeladas."
Edward V. Berard, ingeniero informático


"José Antonio Muñoz" wrote in message
news:edLh%
Hola al grupo,

Tengo una aplicación realizada con Sql Server y múltiples consultas,
triggers, procedimientos almacenados, funciones, etc donde utilizo para
una determinada tabla un campo llamado descripcion_es que almacena la
descripción de un artículo escrita en castellano. Además de este campo
existen otros campos: descripcion_en, descripcion_fr, descripcion_it, etc.
donde se almacena la descripción en inglés, francés, italiano, etc. Las
consultas ya están hechas con el campo descripcion_es y en toda la
aplicación se hace referencia a este campo. ¿Existe alguna manera de crear
un procedimiento almacenado, trigger, etc. en el que pueda reemplazar el
valor del campo descripcion_es por el de otro campo según el idioma? es
decir como si descripcion_es se le agregara dos parentesis y escribiendo
la funcion descripcion_es( ) que devuelve el texto según el idioma
seleccionado para el usuario x, pero sin agregarle los paréntesis ya que
tendría que estar buscando en toda la aplicación ese campo y agregarle los
paréntesis. (existen cientos de referencias para este campo)

saludos,
José Antonio Muñoz

Preguntas similares