{ ------------------------------------------------------------------------------- PROGRAMA : INPRRP027 OBJETIVO : Detallado por Tipo de Movimiento Eliminado PROGRAMADOR : Tadeo A. Ferreras FECHA REALIZACION : Abril 28, 1993 ------------------------------------------------------------------------------- } GLOBALS "inprgb000.4gl" DEFINE ventas CHAR(1) DEFINE salir CHAR(1) DEFINE select_ac,select_ant,select_p CHAR(1000) DEFINE idx_ac,ano,idx_a,idx_c SMALLINT DEFINE ano_act CHAR(4) DEFINE fecha_2 CHAR(8) DEFINE fecha_ini_per CHAR(8) DEFINE reg_elim RECORD cod_mov LIKE intb00005.cod_mov, descripcion CHAR(30), num_doc INTEGER, fecha_doc DATE, cod_n SMALLINT, cod_grupo SMALLINT, cod_Tipo SMALLINT, cod_Sec SMALLINT, cantidad LIKE vetb00014.cantidad, descrip_esp CHAR(30), unidad_med CHAR(3), fech_crea LIKE intb00006.fech_crea, fech_mod LIKE intb00006.fech_mod END RECORD MAIN DEFER INTERRUPT SELECT * INTO p_companias.* FROM companias CALL inprrp027() END MAIN FUNCTION inprrp027() # WHENEVER ERROR CONTINUE OPTIONS FORM LINE 8, ERROR LINE 23, COMMENT LINE 21 OPEN FORM infmrp027 FROM "infmrp027" DISPLAY FORM infmrp027 CALL pantalla() DISPLAY "inprrp027" AT 4,3 DISPLAY "Documentos Eliminados" AT 6,29 LET tipo_papel = 1 CALL msgrp000(tipo_papel) CONSTRUCT criterio ON c.cod_n,c.cod_grupo,c.cod_tipo,c.cod_sec FROM cod_n,cod_grupo,cod_tipo,cod_sec INPUT BY NAME datos_cons.fech_in,datos_cons.fech_fi AFTER FIELD fech_in IF datos_cons.fech_in IS NULL THEN LET numero_msg = 16 CALL msg(numero_msg) NEXT FIELD fech_in END IF AFTER FIELD fech_fi IF datos_cons.fech_fi IS NULL THEN LET numero_msg = 16 CALL msg(numero_msg) NEXT FIELD fech_fi END IF END INPUT IF int_flag THEN LET numero_msg = 2 CALL msg(numero_msg) LET int_flag = false RETURN END IF LET selec = "SELECT c.cod_mov,a.descrip_mov,c.num_doc,c.fecha,c.cod_n,c.cod_grupo, ", " c.cod_tipo,c.cod_sec,c.cantidad_2,b.descrip_esp,b.unidad_med, ", " c.fech_crea,c.fech_mod ", "FROM intb00006 c,intb00001 b,intb00005 a ", "WHERE c.fecha between ? and ? and c.status_t = 'E' AND ", " c.cod_n = b.cod_n and c.cod_grupo=b.cod_grupo and ", " c.cod_tipo = b.cod_tipo and c.cod_sec = b.cod_sec and ", " c.cod_mov = a.cod_mov AND ",criterio CLIPPED DISPLAY "<< Estoy Buscando Documentos... Espere Por favor >>" AT 19,14 ATTRIBUTE (REVERSE,BOLD) PREPARE comando FROM selec DECLARE actual CURSOR FOR COMANDO OPEN actual USING datos_cons.fech_in,datos_cons.fech_fi DISPLAY "<< Reporte Generandose ... Por Favor Espere. >>" AT 19,14 ATTRIBUTE (REVERSE) START REPORT eliminados TO "C:\\archivo" WHILE STATUS != NOTFOUND FETCH actual INTO reg_elim.* IF STATUS = NOTFOUND THEN EXIT WHILE END IF IF int_flag THEN LET numero_msg = 2 CALL msg(numero_msg) LET int_flag = false RETURN END IF OUTPUT TO REPORT eliminados(reg_elim.*) END WHILE FINISH REPORT eliminados CLEAR SCREEN RUN "type C:\\archivo > %USPRINT%" END FUNCTION REPORT eliminados(x) DEFINE x RECORD cod_mov LIKE intb00005.cod_mov, descripcion CHAR(30), num_doc INTEGER, fecha_doc DATE, cod_n SMALLINT, cod_grupo SMALLINT, cod_Tipo SMALLINT, cod_Sec SMALLINT, cantidad LIKE vetb00014.cantidad, descrip_esp CHAR(30), unidad_med CHAR(3), fech_crea LIKE intb00006.fech_crea, fech_mod LIKE intb00006.fech_mod END RECORD DEFINE primera CHAR(1) DEFINE c_ano1 char(4) DEFINE doble_on CHAR(3) DEFINE doble_off CHAR(3) DEFINE negrillas_on CHAR(6) DEFINE negrillas_off CHAR(6) DEFINE comp_on CHAR(3) DEFINE comp_off CHAR(3) DEFINE doce CHAR(3) DEFINE normal CHAR(3) DEFINE hora CHAR(5) DEFINE total_p,total_m DECIMAL(12,2) OUTPUT TOP MARGIN 0 LEFT MARGIN 0 BOTTOM MARGIN 2 ORDER BY x.cod_mov,x.num_doc 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 = (100 - LENGTH(p_companias.nombre CLIPPED))/2 PRINT comp_off,doce PRINT COLUMN 1, "inprrp027", COLUMN lj, p_companias.nombre CLIPPED, COLUMN 93, "Pag. ",pageno using "###" PRINT COLUMN 28, " Sistema de Inventario de Materia Prima", COLUMN 93, today using "dd/mm/yyyy" PRINT COLUMN 28, " Documentos Eliminados", COLUMN 96, hora SKIP 1 LINE PRINT COLUMN 2, "Desde ",datos_cons.fech_in using "dd/mm/yyyy", COLUMN 21, "Hasta ", datos_cons.fech_fi using "dd/mm/yyyy" PRINT COLUMN 1, "--------------------------------------------------", "--------------------------------------------------" PRINT normal,comp_on PRINT COLUMN 1, "Docto", COLUMN 10, "Fecha", COLUMN 22, "Articulo", COLUMN 80, "Cantidad", COLUMN 95, "Fecha Creacion", COLUMN 115, "Fecha Elim." PRINT comp_off,doce PRINT COLUMN 1, "--------------------------------------------------", "--------------------------------------------------" PRINT normal,comp_on BEFORE GROUP OF x.cod_mov PRINT negrillas_on PRINT COLUMN 1, x.cod_mov using "##"," ",x.descripcion PRINT negrillas_off BEFORE GROUP OF x.num_doc PRINT COLUMN 1, x.num_doc USING "######", COLUMN 10, x.fecha_doc USING "dd/mm/yyyy"; ON EVERY ROW PRINT COLUMN 22, x.cod_n USING "&","-",x.cod_grupo USING "&","-", x.cod_tipo USING "&&","-",x.cod_sec USING "&&&"," ", x.descrip_esp, COLUMN 75, x.cantidad USING "###,###,###.##", COLUMN 95, x.fech_crea, COLUMN 115, x.fech_mod AFTER GROUP OF x.cod_mov SKIP 1 LINE ON LAST ROW PRINT normal END REPORT