Ver Mensaje Individual
  #9 (permalink)  
Antiguo 15/05/2009, 10:30
Avatar de Dradi7
Dradi7
 
Fecha de Ingreso: junio-2008
Ubicación: Peru - Lima
Mensajes: 1.518
Antigüedad: 16 años, 6 meses
Puntos: 220
Respuesta: crear funcion: cual es mi error ???

Bueno hola he hecho una serie de modificaciones con respecto a lo q me decia Islas y lo q me di cuenta al probarlo q no ejecutaba la funcion por eso decidi crearlo en un Proc Almacenado
Código sql:
Ver original
  1. CREATE PROCEDURE GenerarId
  2. (  
  3.     @Id    VARCHAR(50),
  4.     @Tabla VARCHAR(50),
  5.     @MAX   INT = NULL OUTPUT
  6. )
  7. AS
  8. BEGIN
  9.  
  10.  
  11.     DECLARE @SQL NVARCHAR(MAX)   -- Variable para Ejecutar una Sentencia SQL    
  12.     DECLARE @Param NVARCHAR(MAX) -- Variable para Mandar parametros a la Consulta
  13.  
  14.     SET @Param = N'@ParamId INT OUTPUT' -- Variable a Enviar
  15.     SET @SQL = N'SELECT @ParamId = ISNULL(MAX(' + @Id + ') + 1,1)
  16.                 FROM ' + @Tabla + ';'
  17.  
  18.     EXECUTE SP_EXECUTESQL @SQL, @Param, @ParamId = @MAX OUTPUT;
  19.     SELECT @MAX;
  20. END
  21.  
  22. -- Para Tomar el Valor Devuelto
  23. DECLARE @MAX INT
  24. EXEC GenerarId 'id','documento',@MAX output;
  25. print @MAX;
__________________
La clave de todo triunfador es eliminar todas sus excusas y sus limitaciones