185 lines
5.4 KiB
Plaintext
185 lines
5.4 KiB
Plaintext
{
|
|
-----------------------------------------------------------------------------
|
|
PROGRAMA : VEPRMT033
|
|
OBJETIVO : Mantenimiento de Activacion de Facturas
|
|
REALIZADO POR : Tadeo A. Ferreras F.
|
|
FECHA : Mayo 06, 1996
|
|
-----------------------------------------------------------------------------
|
|
}
|
|
GLOBALS
|
|
"veprgb000.4gl"
|
|
|
|
DEFINE mant_32 RECORD
|
|
ventas CHAR(1),
|
|
cod_cia SMALLINT,
|
|
factura INTEGER,
|
|
fecha DATE,
|
|
tipo_cliente SMALLINT,
|
|
sec_cliente SMALLINT,
|
|
nombre CHAR(30),
|
|
bruto DECIMAL(12,2),
|
|
descu DECIMAL(12,2),
|
|
itbi DECIMAL(12,2),
|
|
neto DECIMAL(12,2),
|
|
us_crea CHAR(9),
|
|
fech_crea LIKE vetb00002.fech_crea,
|
|
us_mod CHAR(9),
|
|
fech_mod LIKE vetb00002.fech_mod
|
|
END RECORD
|
|
DEFINE tipo_f CHAR(15)
|
|
DEFINE desc_com CHAR(30)
|
|
|
|
####### Funcion para agregar un recibo de pago
|
|
|
|
FUNCTION veprmt033()
|
|
|
|
OPTIONS
|
|
FORM LINE 8,
|
|
ERROR LINE 24,
|
|
COMMENT LINE 22
|
|
|
|
CALL pantalla()
|
|
OPEN FORM vefmmt033 FROM "vefmmt033"
|
|
DISPLAY FORM vefmmt033
|
|
DISPLAY "veprmt033" AT 4,3
|
|
DISPLAY "Activacion de Factura" AT 6,29
|
|
|
|
## Funcion para consultar/modificar un recibo de pago
|
|
|
|
CONSTRUCT CRITERIO ON factura FROM factura
|
|
|
|
IF int_flag THEN
|
|
LET numero_msg = 2
|
|
CALL msg(numero_msg)
|
|
LET int_flag = FALSE
|
|
RETURN
|
|
END IF
|
|
|
|
LET selec = "SELECT a.ventas,a.cod_cia,a.factura,a.fecha_factura, ",
|
|
" a.tipo_cliente,a.sec_cliente,b.nombre,a.sub_total, ",
|
|
" a.monto_desc,a.monto_itbi,a.neto,a.us_crea,a.fech_crea, ",
|
|
" a.us_mod,a.fech_mod ",
|
|
"FROM vetb00002 a, vetb00004 b ",
|
|
"WHERE a.tipo_cliente = b.tipo_cliente AND ",
|
|
" a.sec_cliente = b.sec_cliente AND ",
|
|
" a.status_t = 'E' AND ", criterio CLIPPED,
|
|
" ORDER BY 4,3 "
|
|
|
|
PREPARE busca FROM selec
|
|
DECLARE datos SCROLL CURSOR FOR busca
|
|
OPEN datos
|
|
|
|
FETCH FIRST datos INTO mant_32.*
|
|
IF status = NOTFOUND THEN
|
|
LET numero_msg = 3
|
|
CALL msg(numero_msg)
|
|
RETURN
|
|
END IF
|
|
|
|
IF mant_32.cod_cia = 1 THEN
|
|
LET desc_com = p_companias.nombre CLIPPED
|
|
END IF
|
|
IF mant_32.ventas = "1" THEN
|
|
LET tipo_f = "LOCAL"
|
|
ELSE
|
|
LET tipo_f = "EXPORTACION"
|
|
END IF
|
|
DISPLAY BY NAME mant_32.*,tipo_f,desc_com
|
|
|
|
MENU "OPCION"
|
|
COMMAND "Siguiente"
|
|
"Presenta en pantalla el proximo registro encontrado"
|
|
FETCH NEXT datos INTO mant_32.*
|
|
IF status = NOTFOUND THEN
|
|
LET numero_msg = 4
|
|
CALL msg(numero_msg)
|
|
END IF
|
|
|
|
IF mant_32.cod_cia = 1 THEN
|
|
LET desc_com = p_companias.nombre CLIPPED
|
|
END IF
|
|
IF mant_32.ventas = "1" THEN
|
|
LET tipo_f = "LOCAL"
|
|
ELSE
|
|
LET tipo_f = "EXPORTACION"
|
|
END IF
|
|
DISPLAY BY NAME mant_32.*,tipo_f,desc_com
|
|
|
|
COMMAND "Anterior"
|
|
"Presenta en pantalla el registro anterior encontrado"
|
|
FETCH PREVIOUS datos INTO mant_32.*
|
|
IF status = NOTFOUND THEN
|
|
LET numero_msg = 5
|
|
CALL msg(numero_msg)
|
|
END IF
|
|
|
|
IF mant_32.cod_cia = 1 THEN
|
|
LET desc_com = p_companias.nombre CLIPPED
|
|
END IF
|
|
IF mant_32.ventas = "1" THEN
|
|
LET tipo_f = "LOCAL"
|
|
ELSE
|
|
LET tipo_f = "EXPORTACION"
|
|
END IF
|
|
DISPLAY BY NAME mant_32.*,tipo_f,desc_com
|
|
|
|
COMMAND "Primero"
|
|
"Presenta en pantalla el primer registro encontrado"
|
|
FETCH FIRST datos INTO mant_32.*
|
|
IF status = NOTFOUND THEN
|
|
LET numero_msg = 5
|
|
CALL msg(numero_msg)
|
|
END IF
|
|
|
|
IF mant_32.cod_cia = 1 THEN
|
|
LET desc_com = p_companias.nombre CLIPPED
|
|
END IF
|
|
IF mant_32.ventas = "1" THEN
|
|
LET tipo_f = "LOCAL"
|
|
ELSE
|
|
LET tipo_f = "EXPORTACION"
|
|
END IF
|
|
DISPLAY BY NAME mant_32.*,tipo_f,desc_com
|
|
|
|
COMMAND "Ultimo" "Presenta en pantalla el ultimo registro encontrado"
|
|
FETCH LAST datos INTO mant_32.*
|
|
IF STATUS = NOTFOUND THEN
|
|
LET numero_msg = 4
|
|
CALL msg(numero_msg)
|
|
END IF
|
|
|
|
IF mant_32.cod_cia = 1 THEN
|
|
LET desc_com = p_companias.nombre CLIPPED
|
|
END IF
|
|
IF mant_32.ventas = "1" THEN
|
|
LET tipo_f = "LOCAL"
|
|
ELSE
|
|
LET tipo_f = "EXPORTACION"
|
|
END IF
|
|
DISPLAY BY NAME mant_32.*,tipo_f,desc_com
|
|
|
|
COMMAND KEY ("C") "aCtivar"
|
|
"Precione C Para activar Registro Mostrado en Pantalla"
|
|
|
|
## AQUI SE REALIZA LA ANULACION DE UN REGISTRO
|
|
UPDATE cctb00001 set status_t = NULL
|
|
WHERE tipo_doc = "FT" and num_doc = mant_32.factura
|
|
|
|
UPDATE vetb00002 set status_t = NULL
|
|
WHERE factura = mant_32.factura
|
|
|
|
UPDATE vetb00003 set status_t = NULL
|
|
WHERE factura = mant_32.factura
|
|
|
|
UPDATE iptb00006 set status_t = NULL
|
|
WHERE num_doc = mant_32.factura AND cod_mov IN (30,31)
|
|
|
|
LET numero_msg = 14
|
|
CALL msg(numero_msg)
|
|
|
|
COMMAND "Retornar"
|
|
CLEAR FORM
|
|
EXIT MENU
|
|
END MENU
|
|
END FUNCTION
|