fórmula sujeto a cambios

08/04/2010 - 01:21 por Erick Martinez | Informe spam
Buenas tardes

estimados colegas, les hago la siguiente consulta para ver si me puede
hechar una mano:
hace unos anios me toco desarrollar un sistema, el cual una buena parte de
las consultas ya sea para procesos y reportes llevan un calculo que se
compone de varios campos de una tabla y un campo de otra tabla estando
relacionadas ambas tablas, pero resulta que pasados unos meses me pidieron
que realizara un cambio en dicha fórmula, y me di cuenta que tenía que
modificar una serie de procedimientos almacenados, todo esto lo hice, luego
pasadas unas semanas me pidieron que restaura la fórmula, como se darán
cuenta resulta engorroso estar yendo a cada procedimiento almacenado y estar
cambiando esta fórmula, ya que son alrededor de unos 40-50 procedimientos
almacenados, entonces mi consulta es, existe alguna forma de poder tener
dicha formula centralizada en un solo lado y que cuando me toque hacer el
cambio, solo lo haga en un solo lado, algo parecido a una función, a
continuación les expongo el ejemplo, una formula un poco corta como para
darme entender, porque la fórmula que en realidad uso es bien compleja, bien
usa alrededor de unos 10 campos:

SELECT (Tabla1.Campo1*Tabla1.Campo2)/(Tabla1.Campo3-Tabla2.Campo1) as Total
FROM Tabla1 INNER JOIN Tabla2 ON Tabla1.IDCampo=Tabla2.IDCampo

de antemano les agradezco mucho por su tiempo

saludos

Erik Martínez
Analista programador
 

Leer las respuestas

#1 L. Garcia
08/04/2010 - 09:52 | Informe spam
Hola:

Yo siempre que he necesitado 'algo parecido' a tu problema lo que hago es
crear una vista con los campos calculados, joins, etc, necesarios y entonces
'siempre' utilizo esta vista como base para el resto de storeds e incluso de
otras vistas. De esta forma, simplemente cambiando esta vista 'base', toda
la base de datos queda 'actualizada'.

En tu caso, después de crear la vista 'base', tendrías que repasar toda la
base de datos y mirar que vistas/storeds deberías cambiar para que accedan a
esta nueva vista. Puedes cambiarlas 'a lo bestia' o mejor crear versiones
nuevas (ya sabes, si algo funciona no lo toques ;-DD)

Por cierto, que a mi me sirva/funcione no significa que sea la mejor
solucion ;-)

Saludos

"Erick Martinez" escribió en...
Buenas tardes

estimados colegas, les hago la siguiente consulta para ver si me puede
hechar una mano:
hace unos anios me toco desarrollar un sistema, el cual una buena parte
de las consultas ya sea para procesos y reportes llevan un calculo que se
compone de varios campos de una tabla y un campo de otra tabla estando
relacionadas ambas tablas, pero resulta que pasados unos meses me pidieron
que realizara un cambio en dicha fórmula, y me di cuenta que tenía que
modificar una serie de procedimientos almacenados, todo esto lo hice,
luego pasadas unas semanas me pidieron que restaura la fórmula, como se
darán cuenta resulta engorroso estar yendo a cada procedimiento almacenado
y estar cambiando esta fórmula, ya que son alrededor de unos 40-50
procedimientos almacenados, entonces mi consulta es, existe alguna forma
de poder tener dicha formula centralizada en un solo lado y que cuando me
toque hacer el cambio, solo lo haga en un solo lado, algo parecido a una
función, a continuación les expongo el ejemplo, una formula un poco corta
como para darme entender, porque la fórmula que en realidad uso es bien
compleja, bien usa alrededor de unos 10 campos:

SELECT (Tabla1.Campo1*Tabla1.Campo2)/(Tabla1.Campo3-Tabla2.Campo1) as
Total FROM Tabla1 INNER JOIN Tabla2 ON Tabla1.IDCampo=Tabla2.IDCampo

de antemano les agradezco mucho por su tiempo

saludos

Erik Martínez
Analista programador

Preguntas similares