El problema que planteo es el siguiente, tengo una tabla donde se guarda la sucursal, entonces quiero hacer actualizaciones en la base de datos según la sucursal pero todo con un solo script sql. Hasta ahora me las arreglo con un script por sucursal del tipo:
--Script para Buenos Aires
USE O_BUE
create procedure pirulito
as
select * fom keys
go
--Fin Script
y listo, se crea el store o se ejecutan todas las instrucciones que se me ocurran. Pero la idea es hacer algo así:
--Script de actualización de sucursales
USE O_BUE
Declare @Sucursal Varchar(3)
Set @Sucursal= (
Select KeyValue From keys
Where ModuleCode='CFG' And Subject='Local Information'
And KeyName='Local City Code'
)
If @Sucursal = 'BUE'
--Script para Buenos Aires
Begin
Print 'Script para Buenos Aires'
End
If @Sucursal = 'SAO'
--Script para San Pablo - Brasil
Begin
Print 'Script para San Pablo - Brasil'
End
Esto anda, segun cada local, sale el mensajito. Pero si hago esto:
--Script de acutalización de sucursales
USE Ocasa_BUE
Declare @Sucursal Varchar(3)
Set @Sucursal= (
Select KeyValue From keys
Where ModuleCode='CFG' And Subject='Local Information'
And KeyName='Local City Code'
)
If @Sucursal = 'BUE'
--Script para Buenos Aires
Begin
Print 'Script para Buenos Aires'
go
alter proc pirulito
as
select * from keys
go
End
If @Sucursal = 'SAO'
--Script para San Pablo - Brasil
Begin
Print 'Script para San Pablo - Brasil'
End
Pincha por todos lados. ¿Porqueeeee?
¿Alguien tiene la precisa?