SQL - Problemas con Insert

 
Vista:

Problemas con Insert

Publicado por Jorge (1 intervención) el 17/11/2004 06:38:12
tengo el siguiente Stored Procedure

CREATE PROCEDURE dbo.InsertarFuegos
(
@Codigo int,
@Descripcion varchar,
@CantUni numeric,
@CatPaq numeric,
@PrecioUniCompra numeric,
@PrecioPaqCompra numeric,
@Margen numeric,
@Fecha varchar
)
AS
SET NOCOUNT OFF;
INSERT INTO EntradaFuegos(Descripcion, CantUni, Catpaq, PrecioUniCompra, PrecioPaqCompra, Margen, Fecha, PrecioUni, PrecioPaq)
VALUES (@Descripcion, @CantUni, @Catpaq, @PrecioUniCompra, @PrecioPaqCompra, @Margen, @Fecha, ******, #####) ;
SELECT * FROM EntradaFuegos WHERE (Codigo = @@IDENTITY)
GO

Donde estan los **** quiero poner el resultado de: ((PrecioUniCompra * Margen) / 100 ) + PrecioUniCompra

y donde estan los #### quiero poner el resultado de: ((PrecioPaqCompra * Margen) / 100 ) + PrecioPaqCompra

espero que me ayuden.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil

RE:Problemas con Insert

Publicado por Liliana (426 intervenciones) el 17/11/2004 15:44:49
Hola,
Pegá las fórmulas donde corresponden, nombrando las variables:
((@PrecioUniCompra * @Margen) / 100 ) + @PrecioUniCompra

Liliana.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Problemas con Insert

Publicado por EnriqueK (69 intervenciones) el 17/11/2004 21:25:18
Solo tienes q verificar que los parentecis esten bien cerrados, y yo te recomendaria que si esa formula la vas a utilizar en varios procesos mejor crees una funcion, ademas es mas facil de usar :

CREATE FUNCTION CalculoXXX
(@PrecioCompra decimal(4,1), @margen decimal(4,1)
RETURNS decimal(12,3)
AS
BEGIN
RETURN ( (@PrecioCompra* @margen) /100 + @PrecioCompra)
END

y la llamas dentro de tu store Procedure ;)

Para llamar a la fucnion necesitas poner el propietario, te recomiendo que la crees como dbo ;) asi la llamarias dbo.CalculaXXX
Lo mismo puedes hacer para las otras operaciones.

Espero te sirva de algo mi consejo ;)

Atte.
EnriqueK
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar