Browses, grids e entrada tabular de dados
Separa apresentação em linhas, edição e persistência dos dados.
Visão geral
Um browse pode exibir linhas de um array ou de um contexto de dados; isso não define uma política de gravação. O exemplo oficial TCBrowse associa SetArray ao conjunto de linhas e bLine à projeção da linha corrente por nAt. O fragmento abaixo pressupõe um objeto TCBrowse já criado em diálogo, com duas colunas, e usa dados fictícios. Não habilita edição nem persistência. Para entrada tabular, defina separadamente validação de célula, inclusão/exclusão de linhas, cancelamento e confirmação transacional; escolher um controle visual não implementa essas regras. (TOTVS, s.d., ref. 1)
Retorno
Não há retorno único: trata-se de um roteiro composto.
Exemplo comentado
// Fragmento: oBrowse e um TCBrowse criado com duas colunas.
// aLinhas deve permanecer acessivel durante a vida do controle.
aLinhas := {{"A", 10}, {"B", 20}}
oBrowse:SetArray(aLinhas)
oBrowse:bLine := {|| {aLinhas[oBrowse:nAt][1], aLinhas[oBrowse:nAt][2]}}Propõe associar duas linhas ao controle existente; não é programa completo nem demonstra gravação. Declarar as variáveis no chamador. Em revisão: exemplo editorial não compilado nem executado em Protheus. Conferir includes, release, RDD e contexto antes de homologar.
- Tratar coleção vazia e limites de nAt antes de projetar linhas. Não misturar callbacks de exibição com gravação; definir propriedade dos dados e estratégia de cancelamento.
- Em revisão: exemplo editorial não compilado nem executado em Protheus. Conferir includes, release, RDD e contexto antes de homologar.

Comentários
Ainda não há comentários aprovados.
Entre com Google ou Microsoft para comentar.