Hola a todos y gracias de antemano.
Tengo una tabla con detalles de una solicitud y necesito despues de mandar a
convertir en oferta, insertar todos los rows que tengo en la tabla detalle
de oferta o detalle de factura, lo unico que se me ocurre es esto.
ALTER PROCEDURE [dbo].[SGI_Convert_Oferta_Factura]
(
@NoSol nvarchar(50)
)
AS
DECLARE
@SolC nvarchar(50),
@Prod int,
@Cant int,
@PVent decimal(19,4),
@I int,
@Iv int
SET @Iv=1
SELECT @I=COUNT(*)
FROM Detalle_Solicitud
SELECT @SolC=NoSolicitud
,@Prod=Id_Producto
,@Cant=Cantidad
,@PVent=PrecioVenta
FROM [SGI].[dbo].[Detalle_Solicitud]
WHERE @NoSol=NoSolicitud
INSERT INTO [SGI].[dbo].[Detalle_Factura]
(No_Factura
,IdProducto
,Cantidad
,PrecioVenta)
VALUES
(@SolC
,@Prod
,@Cant
,@PVent)
Pero por supuesto, solo guarda el valor que encontró de ultimo, que es con
el que se quedó.
pensé hacer un ciclo
For i =1 to @I
.
Next i
pero no se como hacer esto en SQL
podrian darme alguna mano con esto o darme alguna otra idea que sea mejor ?
Muchas gracias
Leer las respuestas