131 lines
4.8 KiB
Plaintext
131 lines
4.8 KiB
Plaintext
GLOBALS
|
|
"inprgb000.4gl"
|
|
|
|
FUNCTION reimprime(xprograma)
|
|
DEFINE xprograma CHAR(20)
|
|
|
|
IF xprograma = 'inprmt046' THEN
|
|
CONSTRUCT criterio ON a.cod_mov,a.num_doc,a.fecha,a.sec_a FROM
|
|
cod_mov,num_doc,fecha,depto_a
|
|
AFTER CONSTRUCT
|
|
IF INT_FLAG THEN
|
|
LET INT_FLAG = FALSE
|
|
CALL msg(2)
|
|
EXIT PROGRAM
|
|
END IF
|
|
END CONSTRUCT
|
|
LET selec = "SELECT distinct b.cod_mov,b.descrip_mov,a.num_doc,",
|
|
" CONVERT(CHAR(10),a.fecha,103),a.depto_a,a.num_emp FROM intb00006 a,intb00005 b ",
|
|
" WHERE ",criterio CLIPPED," AND ",
|
|
" a.cod_mov = b.cod_mov AND a.status_t IS NULL "
|
|
|
|
|
|
|
|
ELSE
|
|
CONSTRUCT criterio ON a.num_doc,a.fecha,a.sec_a FROM
|
|
num_doc,fecha,depto_a
|
|
LET selec = "SELECT distinct b.cod_mov,b.descrip_mov,a.num_doc,",
|
|
" CONVERT(CHAR(10),a.fecha,103),a.depto_a,a.num_emp FROM intb00006 a,intb00005 b ",
|
|
" WHERE ",criterio CLIPPED," AND a.cod_mov =36 and ",
|
|
" a.cod_mov = b.cod_mov AND a.status_t IS NULL "
|
|
|
|
|
|
END IF
|
|
PREPARE breimprime FROM selec
|
|
DECLARE bdocumento SCROLL CURSOR FOR breimprime
|
|
OPEN bdocumento
|
|
|
|
FETCH FIRST bdocumento INTO otros_mov.cod_mov,otros_mov.descrip_mov,
|
|
otros_mov.num_doc,otros_mov.fecha,
|
|
datos1.depto_a,pnum_emp
|
|
|
|
IF STATUS = NOTFOUND THEN
|
|
CALL msg(3)
|
|
RETURN
|
|
END IF
|
|
|
|
CALL busca_info()
|
|
|
|
MENU "NAVEGACION:"
|
|
COMMAND "Siguiente" "Busca el siguiente documento"
|
|
FETCH NEXT bdocumento INTO otros_mov.cod_mov,otros_mov.descrip_mov,
|
|
otros_mov.num_doc,otros_mov.fecha,
|
|
datos1.depto_a,pnum_emp
|
|
CALL busca_info()
|
|
|
|
COMMAND "Primero" "Busca el siguiente documento"
|
|
FETCH FIRST bdocumento INTO otros_mov.cod_mov,otros_mov.descrip_mov,
|
|
otros_mov.num_doc,otros_mov.fecha,
|
|
datos1.depto_a,pnum_emp
|
|
CALL busca_info()
|
|
COMMAND "Anterior" "Busca el Registrosiguiente documento"
|
|
FETCH PREVIOUS bdocumento INTO otros_mov.cod_mov,otros_mov.descrip_mov,
|
|
otros_mov.num_doc,otros_mov.fecha,
|
|
datos1.depto_a,pnum_emp
|
|
CALL busca_info()
|
|
COMMAND "Ultimo" "Busca el Ultimo Documento"
|
|
FETCH LAST bdocumento INTO otros_mov.cod_mov,otros_mov.descrip_mov,
|
|
otros_mov.num_doc,otros_mov.fecha,
|
|
datos1.depto_a,pnum_emp
|
|
CALL busca_info()
|
|
COMMAND KEY("T") "reTornar" "Salir de busqueda"
|
|
EXIT MENU
|
|
END MENU
|
|
END FUNCTION
|
|
FUNCTION busca_info()
|
|
DEFINE nombre,apellido CHAR(30)
|
|
|
|
SELECT UNIQUE nom_dpto INTO nombre_d FROM adtb00001 a
|
|
WHERE a.departamento = datos1.depto_a and
|
|
a.status_t is NULL
|
|
|
|
LET nombre =NULL
|
|
LET apellido = NULL
|
|
|
|
SELECT a.nom1_emp,a.apell1_emp INTO nombre,apellido FROM adtb00003 a
|
|
WHERE a.num_Emp = pnum_emp
|
|
|
|
DISPLAY BY NAME otros_mov.cod_mov,otros_mov.descrip_mov,otros_mov.num_doc,
|
|
otros_mov.fecha,nombre_d,datos1.depto_a,nombre,apellido
|
|
|
|
DECLARE busca CURSOR FOR
|
|
SELECT a.cod_n,a.cod_Grupo,a.cod_tipo,a.cod_Sec,b.descrip_Esp,a.cantidad_2
|
|
FROM intb00006 a,intb00001 b
|
|
WHERE a.num_Doc = otros_mov.num_doc AND
|
|
a.cod_mov = otros_mov.cod_mov AND
|
|
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
|
|
|
|
LET idx = 1
|
|
FOREACH busca INTO movi2[idx].cod_n,movi2[idx].cod_grupo,
|
|
movi2[idx].cod_tipo,movi2[idx].cod_sec,
|
|
movi2[idx].descrip_esp,movi2[idx].cantidad_2
|
|
LET idx = idx + 1
|
|
END FOREACH
|
|
|
|
CALL set_count(idx-1)
|
|
DISPLAY ARRAY movi2 TO s_movi1.*
|
|
ON ACTION rimprimir
|
|
|
|
CALL defecto(usuarios,clave,impresor) RETURNING imprime,negrilla_on,negrillas_of,
|
|
doble_on,doble_off,comp_on,comp_off,
|
|
doce,normal,archivo,copia
|
|
|
|
|
|
START REPORT formu46 TO archivo
|
|
|
|
|
|
FOR fila = 1 TO idx
|
|
OUTPUT TO REPORT formu46(otros_mov.num_doc,otros_mov.fecha,
|
|
otros_mov.cod_mov,otros_mov.descrip_mov,
|
|
nombre_d,
|
|
movi2[fila].*)
|
|
END FOR
|
|
FINISH REPORT formu46
|
|
CALL fgl_winmessage("INFO","IMPRESION TERMINADA, FAVOR VERIFIQUE","INFO")
|
|
END DISPLAY
|
|
|
|
END FUNCTION
|