Files
MBS/WEBSERVICES/autorizadescuento.4gl

70 lines
3.0 KiB
Plaintext

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