Portada
Banner
Portada Foros Manuales Enlaces Email
clear1x1.gif clear1x1.gif clear1x1.gif
clear1x1.gif
clear1x1.gif

Portada
Foros
Manuales
Enlaces
Distribuidores
Precios
Sugerencias

Contacto

 

clear1x1.gif clear1x1.gif
 GuiBuilder - Manual del Usuario (Parte 43/55)
Primero Previo Próximo Último

29.  Sigamos con el código de la rutina para BUSQUEDA, para lo cual abrimos el control de lista Object, seleccionamos --- New Subroutine/Function ---, entramos a la ventana Name Subroutine/Function y digitamos:

BUSQUEDA

Damos aceptar y digitamos:

rem ' --------------------------------------------------------------
rem ' BUSQUEDA
rem ' --------------------------------------------------------------

BUSQUEDA:
  rem ' para posicionarme en la otra ventana
  REM ' ------------------------------------------------------------
  Print (GB__SYSGUI)'CONTEXT'(GB__WIN.Frm_Consulta)

  rem ' para hacerla visible, ya que desde un inicio no es visible
  REM ' ------------------------------------------------------------
  Print (GB__SYSGUI)'SHOW'(0)
  Print (GB__SYSGUI)'FOCUS'(101)

  Return

30.  Puesta en ejecución la anterior subrutina, le aparecerá al usuario el segundo contexto que habíamos dibujando con el ResBuilder (102 Consulta), para el cual también debemos digitar código como por ejemplo, el que se requiere para cuando hagan Clic sobre la cajita de cierre ubicada en la esquina superior derecha del contexto. Para lograr eso hagamos Clic en el 5to icono de la barra de herramientas (Select Form) y escojamos la línea que dice 102 Consulta. Eso hace que nos aparezca la segunda pantalla en forma desabilitada. Para hacerlo diferente de como lo hicimos con la primer pantalla, demos un doble Clic sobre la superficie de esa pantalla (que no sea sobre alguno de sus objetos), para que nos salga una ventana llamada Select Event que nos muestra los diferentes eventos que podrían darse para la forma 102. Entonces buscamos que el que se llama * Window Closed y digitamos el siguiente código:

rem ' Close Button Operated

REM '  PARA SALIR DEL CONTEXTO O VENTANA DE BUSQUEDA
REM ' --------------------------------------------------------------

Print (GB__SYSGUI)'CONTEXT'(GB__WIN.Frm_Consulta)
Print (GB__SYSGUI)'HIDE'(0)
Print (GB__SYSGUI)'CONTEXT'(GB__WIN.frm_Ejercicio)

Lo anterior causará que la pantalla o contexto para consultas desaparezca y nos vuelva a quedar visible la pantalla principal.

31.  Para continuar, podemos digitar el código requerido para la cajita donde vamos a capturar el nombre de cliente a ser buscado. Hagamos Clic en la caja de lista Control y seleccionemos INPUTE 101 InputE, y luego en la caja de lista Event seleccionemos * Control Lost Focus para entrar estas instrucciones:

rem ' Control lost focus
Print (GB__SYSGUI)'CONTEXT'(GB__WIN.Frm_Consulta)

NOMBRE$=CTRL(GB__SYSGUI,101,OBTENER_TEXTO)
if CVS(NOMBRE$,2)="" then RETURN

SQLPREP(SQLCHAN)"SELECT CODIGO,NOMBRE FROM CLIENTES
: WHERE NOMBRE >='"+NOMBRE$+"' ORDER BY NOMBRE"
SQLEXEC(SQLCHAN)
DIM CLI$:SQLTMPL(SQLCHAN)
PRINT(GB__SYSGUI)'LISTCLR'(102)
LEE_NOMBRES:
CLI$=SQLFETCH(SQLCHAN,ERR=FIN_NOMBRES)

if cli.nombre$(1,len(nombre$))>nombre$ then goto fin_nombres

PRINT (GB__SYSGUI)'LISTADD'(102,-1,CLI.NOMBRE$+" "+CLI.CODIGO$)
GOTO LEE_NOMBRES
FIN_NOMBRES:

Lo anterior equivale a forzar una lectura de registros, ordenada por nombre de cliente, para que nos sean mostrados todos los que sean inicialmente iguales al dato almacenado en la variable NOMBRE$.

Primero Previo Próximo Último

Portada -- Foros -- Manuales -- Enlaces-- Sugerencias
Para comentarios: webmaster@essnet.com

clear1x1.gif
clear1x1.gif
clear1x1.gif
Portada Email Foros