WINDOW BROWSE

Crea una ventana SDI o MDI child de la familia tWAbreBrow con un browse tCAbreBrow (hereda de tWBrowse).

DEFINE WINDOW BROWSE <oWBr> [ FIELDS <flds,...>] [ARRAY <array>] ;
   
[ MDICHILD ] ;
   
[ MENUINFO <nMenuInfo> ] ;
   [ FIELDSIZES | SIZES | COLSIZES <aColSizes,...> ] ;
   [ HEAD | HEADER | HEADERS <aHeaders,...> ] ;
   [ TITLE <cTitle> ] ;
   [ ALIAS <cAlias> ] ;
   [ FROM <nTop>, <nLeft> TO <nBottom>, <nRight> ] ;
   [ ON [ LEFT ] CLICK <uLClick,...> ] ;
   [ ON DBLCLICK | ACTION <uLDblClick,...> ] ;
   [ ON RIGHT CLICK <uRClick,...> ] ;
   [ <of: WINDOW, DIALOG, OF> <oWnd> ] ;
   [ ON CHANGE <uChange,...> ] ;
   
[ BUTTONBAR | BTNBAR | BAR <uBtn> ] ;
   [ MENU <oMenu> ] ;
   [ MENUBAR <bMenuBar> ] ;
   [ EDIT ] ;
   [ YESNO ] ;
   [ DEL | DELETE [ WITH <uBtnDel,...>] ] ;
   [ [ON] INDEX <aIndexTxt,...> [ TO <aIndexNum,...> ] [ MESSAGE <aIndexMsg,...> ] [ SET <nIndice> ] ] ;
   [ PRINT <aPrintTxt,...> [ TO <aPrintBlk,...> ] [ MESSAGE <aPrintMsg,...> ] ] ;
   [ SEEK <uSeek,...> ] [ EOF ] ;
   [ PIXEL ] ;
   [ ICON <oIco> ] ;
   [ BRUSH <oBrush> ]

Descripción
Crea una ventana SDI o MDI child de la familia tWAbreBrow con un browse tCAbreBrow (hereda de tWBrowse), es la versión en comando de las clases qWTBrowse (SDI) o qMTBrowse (MDI child).
<oWBr> Variable que guardará la referencia al objeto
<flds> Campos de del archivo o elementos de una matriz que se quieren mostrar, esta opcion no se puede utilizar junto con ARRAY <array>, es una o la otra
<array> Matriz que se quiere mostrar, esta opción muestra la matriz completa, si se quiere mostrar solamente algunos elementos de la matriz, se tendrá que utilizar la opción FIELDS <flds,...>, esta opción no dr puede utlizar junto con FIELDS <flds,...>, es una o la otra
MDICHILD Indica que se trata de una ventana MDI child, si no se indica, se creará una ventana SDI
<nMenuInfo> Indica en que opción del menú se mostrará el menú MDI, esta opción solamente se puede utilizar cuando se indica la opción MDICHILD
<aColSizes> Anchos de las columnas del browse
<aHeaders> Encabezados de las columnas del browse
<cTitle> Título de la ventana
<cAlias> Alias del archivo utilizado por el browse
<nTop>
<nLeft>
<nBotom>
<nRight>
Posición y tamaño de la ventana
<uLCick> Acción que se realizará al dar click con el mouse
<uLDblClick> Acción que se realizará al dar doble click con el mosue
<uRClick> Acción que se realizará al der click con el botón secundario
<oWnd> Ventana a la que pertenece la nueva ventana
<uChange> Acción que se realizará al cambiar de registro
<uBtn> Codeblock, nombre o apuntador de una función donde se creará la barra de botones de la ventana, si este codeblock o función devuelve un objeto tMenu, esté será el menú utilizado para la ventana, esta opción no puede ser utilizada en combinación con MENUBAR <bMenuBar>
<oMenu> Objeto menú que se utilizará para la ventana, si <uBtn> devuelve un objeto tMenu, se utilizará el devuelvo por <uBtn>, esté será el menú utilizado para la ventana, esta opción no puede ser utilizada en combinación con MENUBAR <bMenuBar>
<bMenuBar> Función donde se creará el menú y opcionalmente la barra de botones, la idea es poder aprovechar los comandos MENU BUTTON, esta función siempre deberá devolver un objeto tMenu que será el usado para la ventana, esta opción no puede ser utilizada en combinación con BUTTONBAR | BTNBAR | BAR <uBtn> ni MENU <oMenu>.
EDIT Indica si se muestran las opciones "Modificar" y "Nuevo" en el menú y/o barra de botones predefinidos cuando no se indica YESNO y se indicó <uLDblClick>
YESNO Indica si las opciones del menú y/o barra de botones predefinidos serán "Aceptar" y "Cancelar"
DEL
DELETE
Indica si se muestra la opción "Eliminar/recuperar" en el menú y/o barra de botones predefinidos cuando no se indica YESNO y se indicó <uLDblClick>
<uBtnDel> Codeblock que evaluará la opción de borrar del menú y/o barra de botones predefinidas, por defecto borra y recupera registros borrados (dbDelete()/dbRecall())
<aIndexTxt> Textos mostrados para la selección de índices
<aIndexNum> Número o nombre de los índices del archivo en el orden que se mostraran en las pestañas para los índices del diálogo, si no se envía, se utilizarán como eitquetas las enviadas en <aIndexTxt>
<aIndexMsg> Textos mostrados en la barra de mensaje para los índices si se utiliza el menú predefinido
<xIndice> Indice activo al momento de crear la ventana, <si aIndexNum> se indica con números, <xIndice> debera ser un número, si <aIndexNum> son etiquetas, <xIndice> deberá ser etiqueta
<aPrintTxt> Textos para las opciones de impresión en el menú
<aPrintBlk> Codeblocks que se evaluarán para cada reporte
<aPrintMsg> Textos mostrados en la barra de mensajes para los reportes si se utiliza el menú predefinido
<uSeek> Codeblock utilizado para la busqueda incremental, si no se envía, utiliza la busqueda predefinida, el codeblock recibe dos parámetros:
xSeek - Valor que se va a buscar
nIndex - Número de índice activo, corresponde a los índices registrados del browse (::nIndex)
Devuevle: El valor que se buscara
Ejemplo: { | xSeek, nIndex | if( nIndex == 1, upper( xSeek ), xSeek ) }
EOF Indica si detiene la busqueda si no se encuentra el registro, si no se indica permite seguir buscando hasta final de archivo
PIXEL Indica si las coordenadas <nTop>, <nLeft>, <nBottom> y <nRight> se indican en pixeles
<oIco> Icono para la ventana
<oBrush> Brush usado para la ventana

Ejemplo
DEFINE WINDOW BROWSE oWnd FIELDS nombre, apellido, telefono
   HEAD "Nombre", "Apellido", "Teléfono"
   ON INDEX "Nombre", "Apellido" seek upper( xSeek )
ACTIVATE WINDOW oWnd