FUNCTION autorizadescuento(porc_desc,codn,codgrupo,codtipo,codsec,pdesc_vend,control_descuento,pusuario) DEFINE control_descuento,desc_permitido,mensaje,descproducto STRING, pporc_desc,pporciento,porc_desc,pdesc_vend DEC(12,2), pfecha_desc DATE, codn,codgrupo,codtipo,codsec INT, permitido BOOLEAN, pusuario VARCHAR(50) LET permitido = TRUE LET mensaje = 'PERMITIDO' SELECT a.controldescuento INTO control_descuento FROM seg0003 a WHERE a.usuario = pusuario IF control_descuento <> "SI" THEN SELECT a.porciento INTO pporciento FROM vetb00019 a WHERE a.disponible = 'S' SELECT a.porc_desc,CONVERT(VARCHAR(10),a.fecha_desc,103),a.descuento_permitido, a.descrip_esp INTO pporc_desc,pfecha_desc,desc_permitido,descproducto FROM iptb00002 a,iptb00001 b WHERE a.cod_n = codn AND a.cod_grupo = codgrupo AND a.cod_tipo = codtipo AND a.cod_sec = codsec AND a.cod_n = b.cod_n AND a.cod_grupo = b.cod_grupo AND a.cod_tipo = b.cod_tipo AND a.cod_sec = b.cod_sec AND a.status_t IS NULL DISPLAY "DATA DESCUENTO: ",codn," ",codgrupo," ",codtipo," ",codsec," ", pporc_desc," ",pfecha_desc," ",desc_permitido," ",descproducto IF desc_permitido = "NO" AND porc_desc > 0 THEN LET mensaje = "EL PRODUCTO ",descproducto CLIPPED, " NO PERMITE DESCUENTO" LET permitido = FALSE RETURN permitido,mensaje END IF IF TODAY < pfecha_desc THEN IF porc_desc > pporc_desc THEN LET mensaje = "PORCIENTO DESCUENTO ",porc_desc USING "<<<.##", " ENVIADO ES MAYOR A ",pporc_desc USING "<<<.##", " PERMITIDO PARA EL PRODUCTO ",descproducto LET permitido = FALSE RETURN permitido,mensaje END IF ELSE IF control_descuento = "NO" THEN IF porc_desc > pdesc_vend THEN LET mensaje = "PORCIENTO DESCUENTO ",porc_desc USING "<<<.##", " ENVIADO ES MAYOR A ",pdesc_vend USING "<<<.##", "PERMITIDO EN TU PERFIL CONTENIDO EN EL PRODUCTO ", descproducto LET permitido = FALSE RETURN permitido,mensaje END IF END IF END IF END IF RETURN permitido,mensaje END FUNCTION