hola a todos
Tengo un sp, que al momento de ejecutarlo de esta forma:
execute sp_mic_cuentas '0000102232640',null,'C',null
en el profiler puedo notar que me da 3 execepciones que apunta a lo mismo:
Error: 208, Severity: 16, State: 0
Pero no se porque da esto:
Adjunto el sp yla definición de las tablas.
Cabe recalcar que estoy trabajando con SQLServer 2000 con sp3a.
Gracias por su ayuda y orientación.
(
CLIENTE int NOT NULL,
(
cuenta_cte varchar(10) NULL,
cliente int NULL,
status char(1) NULL,
tipo int NULL,
categoria char(1) NULL,
oficial smallint NULL,
ret_remesas float NULL,
ret_24h float NULL,
ret_12h float NULL,
disponible float NULL,
cc_cuenta int NULL
)
(
cuenta_ah varchar(10) NOT NULL,
cliente int NULL,
status char(1) NULL,
tipo_cuenta varchar(2) NULL,
oficial smallint NULL,
saldo_ult_corte float NULL,
saldo_int_ult float NULL,
ret_remesas float NULL,
ret_24h float NULL,
ret_12h float NULL,
disponible float NULL,
ah_cuenta int NULL
)
( @i_cliente varchar(20) = null,
@i_cta varchar(10) = null,
@i_operacion char(1) = null ,
@i_tabla char(1) = null
)
as
declare
@w_cliente varchar(20),
@w_status char(1),
@w_oficial int,
@w_nombre_ofc varchar(25),
@w_fecha datetime,
@w_remesas float,
@w_24h float,
@w_12h float,
@w_disponible float,
@w_error int,
@w_desc_error varchar(64)
if datalength(@i_cliente) = 13 --viene del call
select @w_cliente = cliente
from clientes
where numero_identificacion = @i_cliente
else
select @w_cliente = @i_cliente
if @i_operacion = 'C'
begin
create table #mic_cuentas
(
mic_cliente int null,
mic_oficial int null,
mic_cta varchar(10) null,
mic_saldo float null,
mic_tipo_cta char(1) null
)
insert into #mic_cuentas
select @w_cliente,
oficial,
cuenta_ah,
(RET_REMESAS + RET_24H + RET_12H + DISPONIBLE),
'A'
from ahorros
where cliente = @w_cliente
insert into #mic_cuentas
select @w_cliente,
oficial,
cuenta_cte,
(RET_REMESAS + RET_24H + RET_12H + DISPONIBLE),
'C'
from ctacte
where cliente = @w_cliente
select mic_cta,
mic_saldo,
mic_tipo_cta,
mic_oficial
from #mic_cuentas
where mic_cliente = @w_cliente
end
if @i_operacion = 'E'
begin
if @i_tabla = 'A'
begin
select @w_status = status,
@w_oficial = oficial,
@w_fecha = fecha_apertura,
@w_remesas = RET_REMESAS,
@w_24h = RET_24H ,
@w_12h = RET_12H,
@w_disponible = DISPONIBLE
from ahorros
where cliente = @w_cliente
and cuenta_ah = @i_cta
end
if @i_tabla = 'C'
begin
select @w_status = status,
@w_oficial = oficial,
@w_fecha = fecha_ap,
@w_remesas = RET_REMESAS,
@w_24h = RET_24H ,
@w_12h = RET_12H,
@w_disponible = DISPONIBLE
from ctacte
where cliente = @w_cliente
and cuenta_cte = @i_cta
end
select @w_nombre_ofc = nombre
from oficiales
where oficial = @w_oficial
select 'Estado' = @w_status,
'Oficial' = ltrim(rtrim(convert(char(10),@w_oficial))) + ' (' +
ltrim(rtrim(@w_nombre_ofc)) + ')',
'Remesas' = @w_remesas,
'24h' = @w_24h,
'12h' = @w_12h,
'Disponible' = @w_disponible,
'Fecha' = @w_fecha
end
1
Leer las respuestas