168 lines
4.9 KiB
Plaintext
168 lines
4.9 KiB
Plaintext
{
|
|
----------------------------------------------------------------
|
|
PROGRAMA : VEMNCS000
|
|
OBJETIVO : Menu de Consultas del Sistema de Ventas
|
|
PROGRAMADOR : Lic. Abner Montalvo Zapata
|
|
FECHA REALIZACION : Febrero 3, 1993.
|
|
----------------------------------------------------------------
|
|
}
|
|
GLOBALS "veprgb000.4gl"
|
|
MAIN
|
|
DEFER INTERRUPT
|
|
SELECT * INTO p_companias.* FROM companias
|
|
CALL vemncs000()
|
|
END MAIN
|
|
|
|
FUNCTION vemncs000()
|
|
DEFINE opcion CHAR(2)
|
|
DEFINE p_user CHAR(9)
|
|
DEFINE luz CHAR(5)
|
|
|
|
OPTIONS
|
|
PROMPT LINE 8,
|
|
HELP FILE "vepray000.exe",
|
|
HELP KEY CONTROL-W,
|
|
MESSAGE LINE 24
|
|
CLEAR SCREEN
|
|
CALL pantalla()
|
|
|
|
DISPLAY " Consultas " AT 6,24
|
|
DISPLAY "vemncs000" AT 4,3 ATTRIBUTE(blue)
|
|
DISPLAY "1- Ventas vemncs100" AT 10,6
|
|
DISPLAY "2- Factura de Ventas veprcs001" AT 11,6
|
|
DISPLAY "3- Cheques Devueltos A Cliente veprcs002" AT 12,6
|
|
DISPLAY "S- Retorna Menu Anterior " AT 14,6
|
|
ATTRIBUTE (BOLD)
|
|
|
|
CALL ayuda()
|
|
LET opcion = NULL
|
|
LABEL vuelve:
|
|
PROMPT " OPCION: " FOR opcion HELP 2
|
|
LET opcion = UPSHIFT(opcion) clipped
|
|
|
|
IF opcion != "S" THEN
|
|
SELECT unique usuario INTO p_user FROM seg0001
|
|
WHERE usuario = user
|
|
CALL seg000(p_user,opcion,"vemncs000") RETURNING luz
|
|
display p_user
|
|
IF luz = "roja" THEN
|
|
display p_user
|
|
ERROR "NO TIENE PERMISO PARA UTILIZAR OPCION"
|
|
GOTO vuelve
|
|
END IF
|
|
END IF
|
|
|
|
CASE
|
|
WHEN opcion = "1"
|
|
CALL vemncs100()
|
|
CALL vemncs000()
|
|
WHEN opcion = "2"
|
|
CALL veprcs001()
|
|
CALL vemncs000()
|
|
WHEN opcion = "3"
|
|
CALL veprcs002()
|
|
CALL vemncs000()
|
|
WHEN opcion = "S" or opcion = "s"
|
|
RETURN
|
|
OTHERWISE
|
|
CALL vemncs000()
|
|
END CASE
|
|
|
|
END FUNCTION
|
|
|
|
FUNCTION pantalla()
|
|
DEFINE fecha CHAR(8),
|
|
hora char(5)
|
|
LET fecha = today USING "dd/mm/yy"
|
|
LET hora = time
|
|
LET lj = (80 - LENGTH(p_companias.nombre CLIPPED))/2
|
|
DISPLAY p_companias.nombre CLIPPED AT 4,lj ATTRIBUTE (REVERSE,blue)
|
|
DISPLAY fecha AT 4,70 ATTRIBUTE (blue)
|
|
DISPLAY "Sistema de Ventas" AT 5,31
|
|
DISPLAY hora AT 6,73 ATTRIBUTE(blue)
|
|
|
|
CALL fgl_drawbox(5,79,3,1)
|
|
CALL fgl_drawbox(1,79,22,1)
|
|
END FUNCTION
|
|
|
|
FUNCTION integridad()
|
|
IF sqlca.sqlcode < 0 THEN
|
|
LET numero_msg = sqlca.sqlcode
|
|
CALL msg(numero_msg)
|
|
DISPLAY numero_msg AT 23,70
|
|
LET bandera = 1
|
|
LET status = 0
|
|
SLEEP 2
|
|
RETURN
|
|
END IF
|
|
RETURN
|
|
END FUNCTION
|
|
FUNCTION ayuda()
|
|
#MESSAGE "AQUI VA AYUDA"
|
|
END FUNCTION
|
|
|
|
FUNCTION consulta_empleados()
|
|
OPEN WINDOW busqueda AT 7,12 WITH FORM "vefmwd001"
|
|
ATTRIBUTE (BORDER,FORM LINE FIRST + 2,COMMENT LINE LAST,MESSAGE LINE LAST)
|
|
|
|
LET int_flag = false
|
|
CONSTRUCT criterio ON a.nom1_emp FROM descrip6
|
|
|
|
LET selec2 = "SELECT a.num_emp, a.nom1_emp, a.apell1_emp ",
|
|
"FROM adtb00003 a ",
|
|
"WHERE a.status_t is null AND ",criterio clipped," ORDER BY 1,2 "
|
|
|
|
IF int_flag THEN
|
|
LET numero_msg = 2
|
|
CALL msg(numero_msg)
|
|
GO TO salir_consulta_e
|
|
END IF
|
|
|
|
PREPARE busca_empleados FROM selec2
|
|
IF status >= 0 THEN
|
|
IF status = notfound THEN
|
|
LET numero_msg = 3
|
|
CALL msg(numero_msg)
|
|
END IF
|
|
ELSE
|
|
CALL integridad()
|
|
IF bandera = 1 THEN
|
|
LET bandera = 0
|
|
END IF
|
|
END IF
|
|
|
|
DECLARE buscar_empleados CURSOR FOR busca_empleados
|
|
LET idx = 1
|
|
|
|
FOREACH buscar_empleados INTO arr_empleados[idx].*
|
|
IF status = NOTFOUND THEN
|
|
EXIT FOREACH
|
|
END IF
|
|
|
|
IF int_flag THEN
|
|
LET numero_msg = 2
|
|
CALL msg(numero_msg)
|
|
EXIT FOREACH
|
|
END IF
|
|
|
|
# LET empleados[idx].cod_emp = arr_empleados[idx].cod_emp
|
|
LET empleados[idx].cod_emp_sec = arr_empleados[idx].num_emp
|
|
LET empleados[idx].descrip6 =
|
|
arr_empleados[idx].nom1_emp clipped," ",
|
|
arr_empleados[idx].apell1_emp clipped
|
|
LET idx = idx + 1
|
|
END FOREACH
|
|
|
|
CALL set_count(idx-1)
|
|
MESSAGE " <Esc> Selecciona Empleado donde esta el cursor"
|
|
DISPLAY ARRAY empleados TO s_empleados.*
|
|
LET curr1 = arr_curr()
|
|
|
|
# LET transportista.cod_transp = empleados[curr1].cod_emp
|
|
LET transportista.sec_transp = empleados[curr1].cod_emp_sec
|
|
LET descrip6 = empleados[curr1].descrip6
|
|
|
|
LABEL salir_consulta_e:
|
|
CLOSE WINDOW busqueda
|
|
END FUNCTION
|