Files

89 lines
2.9 KiB
Plaintext

{
=====================================================
FUNCION : precios
OBJETIVO : Controla los precios de los productos
PROGRAMADOR : Ing. Juan Soto
FECHA : 19/1/2011
=====================================================
}
FUNCTION Precios(pventas,pcodn,pcodgrupo,pcodtipo,pcodsec,ptipoCliente,psecCliente)
DEFINE pventas,pcodn,pcodgrupo,pcodtipo,pcodsec,ptipoCliente,psecCliente SMALLINT,
p_costos1 DEC(12,2),
verdad CHAR(1),
cuenta INT
# AQUI HAY QUE BUSCAR EL PRECIO PARA CALCULAR POR CLIENTE
SELECT COUNT(*) INTO cuenta FROM seg0009 a WHERE usuario = SUSER_SNAME()
IF cuenta > 1 THEN
LET p_costos1 = 0
SELECT a.precio INTO p_costos1 FROM vetb00025 a
WHERE a.ventas = pventas AND a.tipo_cliente = ptipocliente AND
a.sec_cliente = pseccliente AND a.cod_n=pcodn AND
a.cod_grupo=pcodgrupo AND a.cod_tipo=pcodtipo
AND a.cod_sec = pcodsec AND a.status_t IS NULL AND a.cod_lista = 1
IF STATUS = NOTFOUND THEN
LET verdad = 'N'
SELECT a.precio INTO p_costos1 FROM vetb00025 a
WHERE a.ventas = pventas AND a.tipo_cliente =0 AND
a.sec_cliente =0 AND a.cod_n=pcodn AND
a.cod_grupo=pcodgrupo AND a.cod_tipo=pcodtipo AND
a.cod_lista = 1
AND a.cod_sec = pcodsec AND a.status_t IS NULL
IF STATUS = NOTFOUND THEN
LET verdad = "N"
RETURN p_costos1,verdad
ELSE
LET verdad = "S"
RETURN p_costos1,verdad
END IF
ELSE
LET verdad = "S"
RETURN p_costos1,verdad
END IF
ELSE
LET p_costos1 = 0
SELECT a.precio INTO p_costos1 FROM vetb00025 a,seg0009 b
WHERE a.ventas = pventas AND a.tipo_cliente = ptipocliente AND
a.sec_cliente = pseccliente AND a.cod_n=pcodn AND
a.cod_grupo=pcodgrupo AND a.cod_tipo=pcodtipo
AND a.cod_sec = pcodsec AND a.status_t IS NULL AND a.cod_lista = b.cod_lista AND
b.usuario = SUSER_SNAME()
IF STATUS = NOTFOUND THEN
LET verdad = 'N'
SELECT a.precio INTO p_costos1 FROM vetb00025 a,seg0009 b
WHERE a.ventas = pventas AND a.tipo_cliente =0 AND
a.sec_cliente =0 AND a.cod_n=pcodn AND
a.cod_grupo=pcodgrupo AND a.cod_tipo=pcodtipo AND
a.cod_lista = b.cod_lista AND b.usuario = SUSER_SNAME()
AND a.cod_sec = pcodsec AND a.status_t IS NULL
IF STATUS = NOTFOUND THEN
LET verdad = "N"
RETURN p_costos1,verdad
ELSE
LET verdad = "S"
RETURN p_costos1,verdad
END IF
ELSE
LET verdad = "S"
RETURN p_costos1,verdad
END IF
END IF
RETURN p_costos1,verdad
END FUNCTION