error en procedimiento almacenado: URGE!

18/08/2004 - 20:50 por marco | Informe spam
Hola a todos, soy nuevo en el grupo, mucho agradeceré si alguien me puede
ayudar con esto:

Tengo un procedimiento almacenado para insertar:

ALTER PROCEDURE spi_solicitudes
@solicitud_id int,
@adscripcion_id int = 0,
@dependencia_id int,
@documentos int = 0,
@puesto int = 0,
@solicitante_id int,
@status int = 1,
@tipo int = 0,
@tipo_solicitud_id int = 0,
@user_id int = 0,
@new_id int output
AS

INSERT INTO solicitudes(
adscripcion_id,
dependencia_id,
documentos,
puesto,
solicitante_id,
status,
tipo,
tipo_solicitud_id,
user_id)
VALUES(
@adscripcion_id,
@dependencia_id,
@documentos,
@puesto,
@solicitante_id,
@status,
@tipo,
@tipo_solicitud_id,
@user_id)
IF @@Error <> 0
RETURN -1
ELSE
SET @new_id = @@IDENTITY
RETURN @new_id


Para ejecutarlo , creo un objeto Command, con los siguientes parámetros:

PARAMETRO TIPO TAMAÑO VALOR
solicitud_id 3 0 0
adscripcion_id 3 0 3441
dependencia_id 3 0 2234
puesto 3 0 101
solicitante_id 3 0 32
status 3 0 1
tipo 3 0 1
user_id 3 0 2
origen_id 3 0 1
documentos 3 0 127
tipo_solicitud_id 3 0 1
new_id 3 0 Nulo

El error es:

"No se permite la conversión implícita del tipo de datos datetime a int.
Utilice la función CONVERT para ejecutar esta consulta."

Como se puede observar, todos los campos son de tipo int, asi como los
parámetros.

He ido quitando parametros y campos de la consulta, los que quité primero
fueron de tipo ntext, porque me da el error: "Conflicto de tipos de
operandos: int es incompatible con ntext". Ya no sé qué quitar...

Alguna idea?

Muchas gracias

Marco Padierna
 

Leer las respuestas

#1 Gregorio López Rojo
18/08/2004 - 21:33 | Informe spam
Ayudaría el que pases el script de la tabla.

Saludos.

"marco" <mpadierna h ot m_a.il dot c om> wrote in message
news:O5%
Hola a todos, soy nuevo en el grupo, mucho agradeceré si alguien me puede
ayudar con esto:

Tengo un procedimiento almacenado para insertar:

ALTER PROCEDURE spi_solicitudes
@solicitud_id int,
@adscripcion_id int = 0,
@dependencia_id int,
@documentos int = 0,
@puesto int = 0,
@solicitante_id int,
@status int = 1,
@tipo int = 0,
@tipo_solicitud_id int = 0,
@user_id int = 0,
@new_id int output
AS

INSERT INTO solicitudes(
adscripcion_id,
dependencia_id,
documentos,
puesto,
solicitante_id,
status,
tipo,
tipo_solicitud_id,
user_id)
VALUES(
@adscripcion_id,
@dependencia_id,
@documentos,
@puesto,
@solicitante_id,
@status,
@tipo,
@tipo_solicitud_id,
@user_id)
IF @@Error <> 0
RETURN -1
ELSE
SET @new_id = @@IDENTITY
RETURN @new_id


Para ejecutarlo , creo un objeto Command, con los siguientes parámetros:

PARAMETRO TIPO TAMAÑO VALOR
solicitud_id 3 0 0
adscripcion_id 3 0 3441
dependencia_id 3 0 2234
puesto 3 0 101
solicitante_id 3 0 32
status 3 0 1
tipo 3 0 1
user_id 3 0 2
origen_id 3 0 1
documentos 3 0 127
tipo_solicitud_id 3 0 1
new_id 3 0 Nulo

El error es:

"No se permite la conversión implícita del tipo de datos datetime a int.
Utilice la función CONVERT para ejecutar esta consulta."

Como se puede observar, todos los campos son de tipo int, asi como los
parámetros.

He ido quitando parametros y campos de la consulta, los que quité primero
fueron de tipo ntext, porque me da el error: "Conflicto de tipos de
operandos: int es incompatible con ntext". Ya no sé qué quitar...

Alguna idea?

Muchas gracias

Marco Padierna



Preguntas similares