convert y SQL 7.0

10/08/2004 - 23:26 por Kno | Informe spam
Hola a todos, tengo la siguiente duda. Resulta que estoy
desarrolando una aplicación en la cual utilizo un
procedimiento almacenado. Este procedimiento, genera un
string que sirve de numero de folio. Para determinar la
secuancia siguiente, determino los ultimos 8 caracteres de
la cadena, y en base a eso calculo el número siguiente. Mi
problema esta en que este procedimiento fue desarrollado
bajo SQL Server 2000, y la máquina de producción tiene un
SQL Server 7.0 (no pregunten por que, pero es así), y por
esto tengo problemas al utilizar la funcion convert,
arrojando el error, en SQL Server 7, que no se puede
convertir un string a un numeric. La función que utilizo
es la siguiente:


SELECT @num_trx = isnull(max(cast( SUBSTRING(TRX_NRO,9,LEN
(TRX_NRO)-@TRX_SIZE) as numeric)),0)
FROM trans_pago WHERE left(trx_nro,8) = @FEC_TRX

En SQL Server 2000 funciona sin problemas. ¿Que podría
hacer para que funcione??

cualquier ayuda es bienvenida

Kno
 

Leer las respuestas

#1 Liliana Sorrentino
11/08/2004 - 14:17 | Informe spam
Hola,
Esto no debería darte error en ninguna de las versiones de SQL que
mencionás.
¿Podría ser que hubiese datos erróneos?
Liliana.

"Kno" escribió en el mensaje
news:37ec01c47f20$bdcd5cd0$
Hola a todos, tengo la siguiente duda. Resulta que estoy
desarrolando una aplicación en la cual utilizo un
procedimiento almacenado. Este procedimiento, genera un
string que sirve de numero de folio. Para determinar la
secuancia siguiente, determino los ultimos 8 caracteres de
la cadena, y en base a eso calculo el número siguiente. Mi
problema esta en que este procedimiento fue desarrollado
bajo SQL Server 2000, y la máquina de producción tiene un
SQL Server 7.0 (no pregunten por que, pero es así), y por
esto tengo problemas al utilizar la funcion convert,
arrojando el error, en SQL Server 7, que no se puede
convertir un string a un numeric. La función que utilizo
es la siguiente:


SELECT @num_trx = isnull(max(cast( SUBSTRING(TRX_NRO,9,LEN
(TRX_NRO)) as numeric)),0)
FROM trans_pago WHERE left(trx_nro,8) = @FEC_TRX

En SQL Server 2000 funciona sin problemas. ¿Que podría
hacer para que funcione??

cualquier ayuda es bienvenida

Kno

Preguntas similares