32. El código anterior nos cargaría en memoria
la lista de nombres requeridos para seleccionar el que interese al usuario.
Para esto ahora debemos entrar el código necesario para el Control: List
Box 102 List Box, el cual debemos seleccionar arriba junto al Event:
* Clicked on List.
rem ' Click in list box
Print (GB__SYSGUI)'CONTEXT'(GB__WIN.Frm_Consulta)
NOMBRE$=CTRL(GB__SYSGUI,102,OBTENER_TEXTO)
if CVS(NOMBRE$,2)="" then RETURN
CLIEN.CODIGO$=NOMBRE$(LEN(CLIEN.NOMBRE$)+2)
Print (GB__SYSGUI)'HIDE'(0)
Print (GB__SYSGUI)'CONTEXT'(GB__WIN.frm_Ejercicio)
GOSUB VERIFICA_CODIGO
33. Ya casi terminamos. Solo nos falta suministrar
el código necesario para que una serie de eventos que puedan ocurrir, sean notificados
al usuario del programa. Hagamos clic en la cajita Object y digitamos
una nueva subrutina llamada Mensajes
rem ' ----------------------------------------------------------------
rem ' MENSAJES
rem ' ----------------------------------------------------------------
MENSAJES:
fecha_incorrecta:
LET m=MSGBOX("La fecha es incorrecta, debe utilizar el formato DD/MM/AAAA
: para "+$0A$+"el registro de fechas en el programa",16,"Error Fecha")
PRINT (GB_SYSGUI)'FOCUS'(id_fecha)
return
REM ------------------------------------
falta_codigo:
LET m=MSGBOX("No ha digitado el codigo de cliente",16,"Codigo")
PRINT (GB_SYSGUI)'FOCUS'(id_cliente)
return
REM ------------------------------------
falta_nombre:
LET m=MSGBOX("No ha digitado el nombre del cliente",16,"Nombre")
PRINT (GB_SYSGUI)'FOCUS'(id_nombre)
return
REM ------------------------------------
impresora_ocupada:
LET m=MSGBOX("La impresora esta ocupada",16,"Error en Impresora")
return
Con lo anterior, podemos decir que el programa está
terminado y podemos proceder a probarlo. Entre clientes nuevos, luego hágales
cambios, elimine registros y pruebe los dos tipos de búsqueda, de los cuales
se puede decir que el segundo es el que se recomienda para casos en la cantidad
de registros sea masiva, ya que con la primer consulta el programa constantemente
está recreando la lista de nombres y eso equivale a leer o barrer todos los
registros en la tabla de clientes.
Sepa que este programa perfectamente le puede servir
de machote para crear otros similares.
|