Procedimientos Almacenados y Triggers

Iniciado por MiguelCG88, 14 Junio 2011, 22:43 PM

0 Miembros y 1 Visitante están viendo este tema.

MiguelCG88

hola soy nuevo aca y esta pagina me resulto de mucha ayuda en el pasado , es como una biblioteca gigante donde encuentras de todooo!! 
ho tengo un problema que me lleva toda la tarde , estoy implementando una BD de una inmobiliaria ,todo iba bien hasta que me pidieron hacer un trigger que haga lo siguiente :
cuando inserte una nueva transaccion culminada ( en la tabla transacciones_culminadas) automaticamente se inserte en otra tabla (comisiones) el porcentaje de comision que le pertenece a la empresa y al empleado.
Estoy crando un procedimiento almacenado para que calcuel ese porcentaje ,dependiendo del tipo de transaccion(puede ser venta ,alquiler,etc) ; pero me da el siguiente error :
Can`t create a PROCEDURE from within another stored routine

estoy usando MySQL Manager 2010 y XAMPP

este es el codigo de mi procedimiento almacenado:
CREATE procedure  `inmobiliaria3`.`sp_comisiones`(IN cod_trns_cul INT,IN cod_compra INT,IN cod_ven INT,IN cod_inmuebl INT,IN cod_dueno INT,IN fecha_tt DATE,IN hora_tt DATE,IN tipo_comision CHAR(50),IN precio_tt INT,IN monto_comision INT,IN tipo_transaccion CHAR(50))
begin
IF tipo_transaccion==anticretico; then
INSERT INTO `comisiones` VALUES(cod_inmuebl,(precio_tt*0.03),(precio_tt*0.15));
else
IF tipo_transaccion==venta; then
INSERT INTO `comisiones` VALUES(cod_inmuebl,(precio_tt*0.04),(precio_tt*0.10));
else
IF tipo_transaccion==alquiler; then
INSERT INTO `comisiones` VALUES(cod_inmuebl,(precio_tt*0.02),(precio_tt*0.14));
else
INSERT INTO `comisiones` VALUES(cod_inmuebl,(precio_tt*0.07),(precio_tt*0.17));
end IF;
end IF;
end IF;
end;


AGRADEZCO su ayuda de antemano, es muy importante para mi aprender y aprobar.

Novlucker

Lo más sencillo es contemplar esos INSERT desde la lógica, sin necesidad de utilizar TRIGGERS.

Saludos
Contribuye con la limpieza del foro, reporta los "casos perdidos" a un MOD XD

"Hay dos cosas infinitas: el Universo y la estupidez  humana. Y de la primera no estoy muy seguro."
Albert Einstein