Files
MBS/PROYECTO/vedir/veprrp044.4gl
T

177 lines
5.2 KiB
Plaintext

{
-------------------------------------------------------------------------------
PROGRAMA : VEPRRP004
OBJETIVO : Reporte Para Entrada de Diario Ventas
PROGRAMADOR : Tadeo A. Ferreras F.
FECHA REALIZACION : Enero 20, 1993
-------------------------------------------------------------------------------
}
GLOBALS "veprgb000.4gl"
DEFINE selec_v CHAR(1000)
DEFINE p_vetb04 RECORD LIKE vetb00004.*
DEFINE ordenado CHAR(1)
FUNCTION veprrp044()
# WHENEVER ERROR CONTINUE
OPTIONS
FORM LINE 8,
ERROR LINE 23,
COMMENT LINE 21,
PROMPT LINE 14
OPEN FORM vefmrp044 FROM "vefmrp044"
DISPLAY FORM vefmrp044
CALL pantalla()
DISPLAY "veprrp044" AT 4,3
DISPLAY "Entrada de Diario Ventas" AT 6,28
LET tipo_papel = 1
CALL msgrp000(tipo_papel)
INPUT BY NAME ordenado
AFTER FIELD ordenado
IF ordenado IS NULL THEN
LET numero_msg = 16
CALL msg(numero_msg)
NEXT FIELD ordenado
END IF
END INPUT
IF int_flag THEN
LET numero_msg = 2
CALL msg(numero_msg)
LET int_flag = false
RETURN
END IF
CONSTRUCT criterio ON a.tipo_cliente,a.sec_cliente,a.nombre
FROM tipo_cliente,sec_cliente,nombre
IF int_flag THEN
LET numero_msg = 2
CALL msg(numero_msg)
LET int_flag = false
RETURN
END IF
# Busca los codigos de los productos terminados
# Busca las ventas reales del ano actual hasta el mes indicado anteriormente
IF ordenado != "A" THEN
LET selec_v =
"SELECT a.* FROM vetb00004 a WHERE a.status_t IS NULL AND ",
criterio CLIPPED," ORDER BY a.tipo_cliente,a.tipo_cliente"
ELSE
LET selec_v =
"SELECT a.* FROM vetb00004 a WHERE a.status_t IS NULL AND ",
criterio CLIPPED," ORDER BY a.tipo_cliente,a.nombre"
END IF
DISPLAY " " AT 19,14
DISPLAY "<<Buscando Informacion... Espere Por Favor" AT 19,14
PREPARE busca_vr FROM selec_v
DECLARE movi_vr CURSOR FOR busca_vr
OPEN movi_vr
START REPORT reporte44 TO "C:\\archivo"
DISPLAY " " AT 19,14
DISPLAY "<< Reporte Generandose ... Por Favor Espere. >>"
AT 19,14 ATTRIBUTE (REVERSE)
FOREACH movi_vr INTO p_vetb04.*
IF int_flag THEN
LET numero_msg = 2
CALL msg(numero_msg)
LET int_flag = false
RETURN
END IF
OUTPUT TO REPORT reporte44(p_vetb04.*)
END FOREACH
FINISH REPORT reporte44
RUN "type C:\\archivo > %USPRINT%" END FUNCTION
REPORT reporte44(x)
DEFINE x RECORD LIKE vetb00004.*
DEFINE vendedor,imp,imp1 CHAR (1)
DEFINE descrip_venta CHAR(22)
DEFINE descrip1 CHAR(30)
DEFINE doble_on,doble_off,negrillas_on,negrillas_off,comp_on,comp_off,
doce,normal CHAR(2)
DEFINE hora CHAR(5)
OUTPUT
TOP MARGIN 0
LEFT MARGIN 0
BOTTOM MARGIN 2
FORMAT
PAGE HEADER
LET doble_on = ASCII 14
LET doble_off = ASCII 20
LET negrillas_on = ASCII 27, ASCII 69
LET negrillas_off = ASCII 27, ASCII 70
LET comp_on = ASCII 15
LET comp_off = ASCII 18
LET doce = ASCII 27, ASCII 77
LET normal = ASCII 27, ASCII 80
LET hora = time
LET lj = (80 - LENGTH(p_companias.nombre CLIPPED))/2
PRINT COLUMN 1,ASCII 27, ASCII 80
PRINT COLUMN 1,"veprrp044",
COLUMN lj, p_companias.nombre CLIPPED,
COLUMN 73, "Pag. ", pageno using "###"
PRINT COLUMN 31, "Sistema de Ventas",
COLUMN 73, today using "dd/mm/yy"
IF ordenado = "A" THEN
PRINT COLUMN 24, "Catalogo de Clientes Alfabetico",
COLUMN 76, hora
ELSE
PRINT COLUMN 25, "Catalogo de Clientes Numerico",
COLUMN 76, hora
END IF
PRINT COLUMN 1, "--------------------------------------------------",
"--------------------------------------------------"
PRINT COLUMN 2, "Cliente"
PRINT COLUMN 1, "--------------------------------------------------",
"--------------------------------------------------"
BEFORE GROUP OF x.tipo_cliente
SKIP 2 LINE
IF x.tipo_cliente = 12 THEN
PRINT "**** CLIENTES LOCALES ****"
ELSE
PRINT "**** CLIENTES DEL EXTWERIOR ****"
END IF
ON EVERY ROW
PRINT COLUMN 2, x.tipo_cliente USING "&&","-",
x.sec_cliente USING "&&&&"," ",
x.nombre CLIPPED
AFTER GROUP OF x.tipo_cliente
SKIP 1 LINE
PRINT COLUMN 2, "Total Registro Por Mercado ---> ",
GROUP COUNT(*) USING "<<<,<<<,<<<"
SKIP 1 LINE
ON LAST ROW
SKIP 1 LINE
PRINT COLUMN 2, "Total Registro Impresos ---> ",
COUNT(*) USING "<<<,<<<,<<<"
END REPORT