![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
![]() |
|
|
Herramientas | Buscar en Tema | Desplegado |
|
|
|
#1
|
|||
|
|||
|
buen dia carlos
provaste ya con funciones en ves de procedimientos seria algo asi como:
Espero te sirva la idea |
|
#2
|
|||
|
|||
|
Sigo Teniendo Problemas Con La Inserccion:
Este Es La Funcion: Create Function Fue_vigente_2( @id_trabajad Int, @fi Datetime, @ff Datetime) Returns Varchar(2) As Begin Declare @movimiento Varchar(1) Declare @fecha_mov Datetime Declare @fue Varchar(2) Set @movimiento='z' Select @movimiento=mov_tipo, @fecha_mov=fecha From V_trabmovi Where Id_trabajad=@id_trabajad And Fecha<=@ff And Id_trabmovi=(select Max(id_trabmovi) From Trabmovi Where Id_trabajad=@id_trabajad) If (@movimiento<>'z') Begin If (@movimiento='b' And @fecha_mov>=@fi) Set @fue='si' Else If (@movimiento='b' And (@fecha_mov<@ff Or @fecha_mov<@fi)) Set @fue='no' Else Set @fue='si' End Else Set @fue='no' Return @fue End Y Trate De Poner La Insercion Como Me Dijiste Insert Into Trabvig(id_trabajad, Vigente) Select (id_trabajad, Fue_vigente_2 (id_trabajad, '10/01/206','10/31/2006') From Trabajad Estoy Haciendo Algo Mal?? Saludos |
|
#3
|
|||
|
|||
|
nesecitaria saber el error que produce el SQL, a primera vista seria la fecha que le mandas en el segundo parametro de la funcion en el select del insert
'10/01/206' seria '10/01/2006' si puedes mandar el error generado seria mas facil |
|
#4
|
|||
|
|||
|
ESTA ES LA SENTENCIA
Insert Into Trabvig(id_trabajad, Vigente) Select (id_trabajad, Fue_vigente_2 (id_trabajad, GETDATE,GETDATE)) From Trabajad Y EL ERROR::::: ______________________________________ Server: Msg 170, Level 15, State 1, Line 2 Line 2: Incorrect syntax near ','. TAMBIEN LO PONGO DE ESTA MANERA Insert Into Trabvig(id_trabajad, Vigente) Select id_trabajad, FUE_VIGENTE_2 (id_trabajad, GETDATE,GETDATE) From Trabajad Y ME MANDA EL ERROR Server: Msg 195, Level 15, State 10, Line 2 'FUE_VIGENTE_2' is not a recognized function name. LA FUNCION EXISTE !!! Última edición por mendozasoftware fecha: 31-10-2006 a las 21:03:54. |
|
#5
|
|||
|
|||
|
ok entonces serian dos cosas:
quedaria el insert asi:
pruebalo y veamos que pasa |
|
#6
|
|||
|
|||
|
Si Lo Probe Asi Y Funciono....
Deberia De Pasar Igual Con El Procedure O Sera Lo Ideal Usar La Funcion?? |
|
#7
|
|||
|
|||
|
hasta donde yo se, lo cual es poco, no se puede incluir un procedimiento almacenado dentro de un select, creo yo que se deve a que un procedimiento regresa los valores por medio de variables OUTPUT, encuentro la similitud con el tratar de usar un procedimiento de Delphi dentro de un IF o dentro de la llamada a otro procedure.
me alegra, pues, que te haya sido de utilidad mi participacion |
![]() |
| Herramientas | Buscar en Tema |
| Desplegado | |
|
|
Temas Similares
|
||||
| Tema | Autor | Foro | Respuestas | Último mensaje |
| Procedimiento Almacenado Devolver una Select | granchop | Firebird e Interbase | 5 | 14-09-2006 09:57:03 |
| procedimiento dentro de procedimiento | chechu | Varios | 6 | 24-11-2005 23:34:48 |
| SP dentro de Select | buitrago_listas | Firebird e Interbase | 1 | 17-01-2005 13:43:04 |
| for select....do en procedimiento almacenado | lledesma | SQL | 1 | 23-04-2004 08:03:01 |
| Select a procedimiento almacenado | ACK | Firebird e Interbase | 12 | 19-07-2003 20:13:28 |
|