154 lines
4.5 KiB
Plaintext
154 lines
4.5 KiB
Plaintext
{
|
|
-------------------------------------------------------------------------------
|
|
PROGRAMA : ISPRRP012
|
|
FUNCION : Comparativo de la existencia calculada por movimientos y
|
|
existencia en la maestra
|
|
PROGRAMADOR : Juan Fco. Soto
|
|
FECHA : Noviembre 24, 1992.
|
|
-------------------------------------------------------------------------------
|
|
}
|
|
GLOBALS
|
|
"isprgb000.4gl"
|
|
|
|
FUNCTION isprrp012()
|
|
DEFINE comparativo RECORD
|
|
cod_n SMALLINT,
|
|
cod_grupo SMALLINT,
|
|
cod_tipo SMALLINT,
|
|
cod_sec SMALLINT,
|
|
descrip_esp CHAR(30),
|
|
unidad_med CHAR(3),
|
|
base LIKE istb00002.base,
|
|
existencia LIKE istb00002.existencia,
|
|
movimiento LIKE istb00006.cantidad_2
|
|
END RECORD
|
|
|
|
OPTIONS
|
|
FORM LINE 8,
|
|
ERROR LINE 24,
|
|
COMMENT LINE 21
|
|
|
|
OPEN FORM isfmrp012 FROM "isfmrp012"
|
|
DISPLAY FORM isfmrp012
|
|
CALL pantalla()
|
|
DISPLAY "isprrp012" AT 4,3 ATTRIBUTE(RED)
|
|
DISPLAY "Comparativo Existencias" AT 6,28 ATTRIBUTE(BLACK)
|
|
|
|
# OPEN FORM INFMRP012 FROM "isfmrp012"
|
|
# DISPLAY FORM INFMRP012
|
|
|
|
LET tipo_papel = 1
|
|
CALL msgrp000(tipo_papel)
|
|
CALL defecto(impresor) RETURNING imprime, letras.*, archivo
|
|
|
|
CONSTRUCT criterio ON a.cod_n,a.cod_grupo,a.cod_tipo,a.cod_sec
|
|
FROM cod_n,cod_grupo,cod_tipo,cod_sec
|
|
ON KEY(CONTROL-P)
|
|
CALL busca_printer() RETURNING imprime, letras.*, archivo
|
|
AFTER CONSTRUCT
|
|
EXIT CONSTRUCT
|
|
END CONSTRUCT
|
|
|
|
IF int_flag THEN
|
|
LET numero_msg = 2
|
|
CALL msg(numero_msg)
|
|
LET int_flag = false
|
|
RETURN
|
|
END IF
|
|
|
|
LET selec =
|
|
"SELECT a.cod_n,a.cod_grupo,a.cod_tipo,a.cod_sec,c.descrip_esp, ",
|
|
" c.unidad_med,a.base,a.existencia,sum(b.cantidad_2) ",
|
|
"FROM istb00002 a,intb00001 c,istb00006 b ",
|
|
"WHERE 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.cod_n = c.cod_n and a.cod_grupo = c.cod_grupo and ",
|
|
" a.cod_tipo = c.cod_tipo and a.cod_sec = c.cod_sec and ",
|
|
criterio clipped," GROUP BY 1,2,3,4,5,6,7,8"
|
|
|
|
DISPLAY "<< Buscando Informacion ... Espere Por Favor. >>" AT 19,14
|
|
ATTRIBUTE (REVERSE,BOLD)
|
|
|
|
PREPARE busca_maestra FROM selec
|
|
DECLARE diferencia CURSOR FOR busca_maestra
|
|
OPEN diferencia
|
|
|
|
DISPLAY " " AT 19,14
|
|
DISPLAY "<< Reporte Generandose ... Por Favor Espere. >>" AT 19,14
|
|
ATTRIBUTE (REVERSE)
|
|
|
|
START REPORT dife TO archivo
|
|
FOREACH diferencia INTO comparativo.*
|
|
IF int_flag THEN
|
|
LET numero_msg = 2
|
|
CALL msg(numero_msg)
|
|
LET int_flag = FALSE
|
|
RETURN
|
|
END IF
|
|
|
|
OUTPUT TO REPORT dife(comparativo.*)
|
|
END FOREACH
|
|
FINISH REPORT dife
|
|
RUN imprime
|
|
CLEAR SCREEN
|
|
END FUNCTION
|
|
|
|
REPORT dife(x)
|
|
DEFINE x RECORD
|
|
cod_n SMALLINT,
|
|
cod_grupo SMALLINT,
|
|
cod_tipo SMALLINT,
|
|
cod_sec SMALLINT,
|
|
descrip_esp CHAR(30),
|
|
unidad_med CHAR(3),
|
|
base LIKE istb00002.base,
|
|
existencia LIKE istb00002.existencia,
|
|
movimiento LIKE istb00006.cantidad_2
|
|
END RECORD,
|
|
hora char(5)
|
|
|
|
|
|
OUTPUT
|
|
LEFT MARGIN 0
|
|
FORMAT
|
|
PAGE HEADER
|
|
LET hora = time
|
|
|
|
PRINT COLUMN 1, "isprrp012",
|
|
COLUMN 19, "R A Y . O . V A C D O M I N I C A N A, S. A.",
|
|
COLUMN 73, "Pag. ",
|
|
COLUMN 76, pageno using "###"
|
|
PRINT COLUMN 24, "Sistema de Inventario de Suministros",
|
|
COLUMN 73, today using "dd/mm/yyyy"
|
|
PRINT COLUMN 20, "Comparativo Existencia Maestra - S/ Movtos.",
|
|
COLUMN 76, hora
|
|
|
|
PRINT COLUMN 1,
|
|
"--------------------------------------------------------------------------------"
|
|
PRINT COLUMN 50, "Existencia",
|
|
COLUMN 69, "Existencia"
|
|
|
|
PRINT COLUMN 1, "Suministros",
|
|
COLUMN 13, "Descripcion",
|
|
COLUMN 50, "S/Maestra",
|
|
COLUMN 69, "S/Movtos."
|
|
|
|
PRINT COLUMN 1,
|
|
"--------------------------------------------------------------------------------"
|
|
ON EVERY ROW
|
|
|
|
IF x.base IS NULL THEN
|
|
LET x.base = 1
|
|
END IF
|
|
PRINT COLUMN 1, x.cod_n using "&","-",
|
|
COLUMN 3, x.cod_grupo using "&","-",
|
|
COLUMN 5, x.cod_tipo using "&&","-",
|
|
COLUMN 8, x.cod_sec using "&&&",
|
|
COLUMN 13, x.descrip_esp,
|
|
COLUMN 34, x.unidad_med,
|
|
COLUMN 38, x.existencia/x.base using "---,---,---.##",
|
|
COLUMN 65, x.movimiento/x.base using "---,---,---.##"
|
|
ON LAST ROW
|
|
PRINT COLUMN 10, "Total Registros ==> ",count(*) using "#,###"
|
|
END REPORT
|