Usina BRGuía AdvPL
Ingresar
← Todos los temas
COMANDOPublicado

@ ... BROWSE

@ <nRow>, <nCol> [COLUMN] BROWSE <oBrw> [FIELDS <campos>] [ALIAS <cAlias>] [SIZE <nWidth>, <nHeight>] [OF <oDlg>] [PIXEL]

Crea un componente TCBrowse para navegar y mostrar datos de tablas o matrices.

Interfaz visualBrowseTCBrowseTablasMatricesComandos
01 · DESCRIPCIÓN GENERAL

Descripción general

El comando @ ... BROWSE crea una cuadrícula visual de navegación y guarda el objeto resultante en una variable AdvPL. Durante la compilación, la sintaxis se traduce al constructor New() de la clase TCBrowse. El componente puede recibir directamente campos y el alias de una tabla, o crearse vacío, asociarse a una matriz mediante SetArray() y recibir columnas posteriormente.

02 · SINTAXIS

Sintaxis

@ <nRow>, <nCol> [COLUMN] BROWSE <oBrw> [FIELDS <campos>] [ALIAS <cAlias>] [SIZE <nWidth>, <nHeight>] [OF <oDlg>] [PIXEL]

Parámetros

nRow, nCol
NuméricoObligatorio

Fila y columna donde se coloca el browse. Con PIXEL, las coordenadas parten de la esquina superior izquierda del componente padre.

oBrw
ObjetoObligatorio

Variable que recibe el objeto TCBrowse creado.

FIELDS campos
CaractereOpcional

Campos de la tabla que formarán las columnas. FIELDS es opcional pero mejora la claridad.

ALIAS cAlias
CaractereOpcional

Alias de la tabla utilizada por el componente.

FIELDSIZES / SIZES / COLSIZES
NuméricoOpcional

Anchos de las columnas automáticas, en el mismo orden que los campos.

HEAD / HEADER / HEADERS
CaractereOpcional

Títulos de las columnas automáticas, en el mismo orden que los campos.

SIZE nWidth, nHeight
NuméricoOpcional

Ancho y alto del componente.

OF oDlg
ObjetoOpcional

Diálogo, panel, folder u otro contenedor visual propietario del browse. OF es recomendado por la documentación oficial.

SELECT cField FOR uValue1 [TO uValue2]
FiltroOpcional

Define un filtro por valor o intervalo para un campo cuando se usa una tabla.

ON CHANGE / ON DBLCLICK / ON RIGHT CLICK
EventoOpcional

Acciones ejecutadas al cambiar de fila, hacer doble clic o clic derecho.

FONT · CURSOR · COLOR · MESSAGE · PIXEL · WHEN · VALID
CláusulasOpcional

Personalizan fuente, cursor, colores, ayuda, coordenadas, foco y validación.

03 · EJEMPLO PRÁCTICO

Browse basado en una matriz

#Include "TOTVS.ch"
#Include "tcbrowse.ch"

User Function ExBrowseArray()
    Local oDlg
    Local oBrowse
    Local aClientes := { ;
        {"000001", "Cliente Alfa", 1500.00}, ;
        {"000002", "Cliente Beta", 2750.50}  ;
    }

    Define Dialog oDlg Title "Clientes" ;
        From 180, 180 To 600, 650 Pixel

    @ 1, 1 Browse oBrowse Size 220, 156 Of oDlg Pixel
    oBrowse:SetArray(aClientes)

    Add Column To oBrowse Array Element 1 Header "Código" Size 60
    Add Column To oBrowse Array Element 2 Header "Nombre" Size 110
    Add Column To oBrowse Array Element 3 Header "Importe" Size 70

    Activate Dialog oDlg Centered
Return
Resultado esperado

SetArray() asocia los datos y cada ADD COLUMN selecciona el elemento de la matriz que se mostrará.

04 · EJEMPLO PRÁCTICO

Browse conectado a una tabla

#Include "TOTVS.ch"
#Include "tcbrowse.ch"

User Function ExBrowseTabela()
    Local oDlg
    Local oBrowse

    DbSelectArea("SA1")
    SA1->(DbGoTop())

    Define Dialog oDlg Title "Cadastro de clientes" ;
        From 0, 0 To 300, 600 Pixel

    @ 10, 10 Browse oBrowse ;
        Fields SA1->A1_COD, SA1->A1_NOME ;
        Alias "SA1" ;
        Headers "Código", "Nome" ;
        ColSizes 60, 180 ;
        Size 270, 120 Of oDlg Pixel

    Activate Dialog oDlg Centered
Return
Resultado esperado

El alias proporciona los registros y FIELDS, HEADERS y COLSIZES definen las columnas automáticas.

BUENAS PRÁCTICAS
  • Incluye tcbrowse.ch; los ejemplos con diálogo también suelen incluir TOTVS.ch.
  • Para tablas, FIELDS, HEADERS y COLSIZES permiten crear columnas automáticamente.
  • Para matrices, crea el browse, llama SetArray() y agrega columnas con ADD COLUMN TO ... ARRAY ELEMENT o TCColumn y AddColumn().
  • Prefiere OF para identificar explícitamente el contenedor propietario.
  • Mantén alineadas la cantidad y el orden de campos, títulos y tamaños.
  • Usa GoUp(), GoDown(), GoTop() y GoBottom() para navegar mediante código.
ERRORES COMUNES
  • Un browse basado en matriz no recibe los datos solo con la declaración; llama SetArray().
  • Listas FIELDS, HEADERS y COLSIZES desalineadas crean columnas incorrectas.
  • Sin OF, el componente se asocia a la ventana o diálogo activo.
  • Mezclar coordenadas PIXEL con otra unidad puede colocar o dimensionar mal el browse.
  • Los eventos extensos son difíciles de mantener; delega en una función dedicada.
  • TCBrowse es un componente visual histórico; confirma su contexto y considera FWBrowse o FWMBrowse cuando el framework sea más adecuado.

Contenido relacionado

REFERENCIAS
  1. TOTVS. @ ... BROWSE. TDN. Creado por Julio Wittwer el 31 de mayo de 2019.
  2. TOTVS. TCBrowse:New — constructor utilizado por el comando. TDN.
  3. Guía de referencia de eADVPL. Sin autor identificado, creada el 28 de julio de 2005. Sección relacionada: p. 16–17. Referencia histórica; sintaxis verificada prioritariamente con una fuente actual.
Estado
Publicado
Página creada el
Última revisión el
Idioma original
Portugués
Revisión
Usina.BR