Código:
como puedo interregar la variable EXISTMAX, por que si lo hago manualmente el valor del pimer select es 1 SET @EXISTMAX = (SELECT count(*) as numreg from stockmon WHERE stockmon.idmonturaStock=substr(NEW.odcodigoLCVta,2,7) and stockmon.tdaStock=NEW.tdaLCVta); IF (@EXISTMAX > 0) THEN SET @EXISTMAX = (SELECT stockmon.maxStock FROM stockmon WHERE stockmon.idmonturaStock=substr(NEW.odcodigoLCVta,2,7) and stockmon.tdaStock=NEW.tdaLCVta); END IF; if (@EXISTMAX = 0) THEN -- generem la comanda de la lentilla -- INSERT INTO dblccomandes (dblccomandes.idrefvtaLCCmd, dblccomandes.tiendaLCCmd, dblccomandes.clienteLCCmd, dblccomandes.ventaLCCmd, dblccomandes.ojoLCCmd, dblccomandes.codigoLCCmd, dblccomandes.vdorLCCmd, dblccomandes.provLCCmd, dblccomandes.tipoLCCmd, dblccomandes.radio1LCCmd, dblccomandes.radio2LCCmd, dblccomandes.esferaLCCmd, dblccomandes.cilindroLCCmd, dblccomandes.ejesLCCmd, dblccomandes.diamLCCmd, dblccomandes.zonaLCCmd, dblccomandes.colorLCCmd, dblccomandes.blisterLCCmd, dblccomandes.geometriaLCCmd, dblccomandes.addLCCmd, dblccomandes.quantitatLCCmd, dblccomandes.fecpedLCCmd) values (NEW.idrefLCVta, NEW.tdaLCVta, NEW.clteLCVta, NEW.numvtaLCVta, "D", NEW.odcodigoLCVta, NEW.vendedorLCVta, NEW.graodfabrLCVta, NEW.graodtipoLCVta, NEW.graodradio1LCVta, NEW.graodradio2LCvta, NEW.graodesferaLCVta, NEW.graodcilindroLCVta, NEW.graodejesLCVta, NEW.graoddiamLCVta, NEW.graodzonaLCVta, NEW.graodcolorLCVta, "N", NEW.graodgeoLCVta, NEW.graodaddLCVta, NEW.odquantLCVta, NEW.fechaLCVta ); END IF;
se deberia ejecutar la segunda select, que si la ejecuto manualment devuelve un 2
por lo tanto no deberia ejecutar el insert, però lo hace.
o quizas hay algo en la sintaxis que est
gracias