Usina BRAdvPL Guia
Entrar
← Todos os tópicos
FUNçãOEm revisão

FieldBlock

FieldBlock( cField ) --> bRet

Cria um bloco para consultar ou atribuir um campo.

FieldBlockAdvPL
01 · VISÃO GERAL

Visão geral

O bloco de FieldBlock lê quando avaliado sem valor e atribui quando recebe valor. Portanto, não tratar todo Eval como leitura inofensiva. Campo inexistente pode permitir criar o bloco e falhar apenas na avaliação. A adaptação do exemplo GitHub verifica nome e posição do registro e avalia sem argumento de escrita, mantendo o contexto de EDTRB na criação e avaliação. Exibe apenas o tipo do valor, não conteúdo de cadastro. EDTRB é um alias próprio de teste já aberto; ED_COD, quando usado, é campo caractere de tamanho 10 do esquema didático. (TOTVS, s.d., ref. 1)

02 · SINTAXE

Sintaxe

FieldBlock( cField ) --> bRet

Parâmetros

cField
CaractereObrigatório

Nome existente do campo no alias.

Retorno

Bloco de acesso ao campo; erro na definição pode devolver Nil.

03 · EXEMPLO PRÁTICO

Exemplo comentado

#Include "Protheus.ch"

User Function Ed383()
    Local bLeitura
    Local xValor
    If Select("EDTRB") > 0
        If EDTRB->(FieldPos("ED_COD")) > 0 .And. !EDTRB->(Eof())
            bLeitura := EDTRB->(FieldBlock("ED_COD"))
            // Sem segundo argumento: nao atribuir valor ao campo.
            xValor := EDTRB->(Eval(bLeitura))
            ConOut(ValType(xValor))
        EndIf
    EndIf
Return Nil
Resultado esperado

Com o esquema/registro preparados, tipo esperado C, sem alteração. Em revisão: exemplo editorial não compilado nem executado em Protheus. Conferir includes, release, RDD e contexto antes de homologar.

BOAS PRÁTICAS
  • Usar somente tabela própria de teste com estrutura conhecida. Qualificar alias, conferir posição do registro e administrar alterações de contexto conforme o contrato do chamador.
  • Em revisão: exemplo editorial não compilado nem executado em Protheus. Conferir includes, release, RDD e contexto antes de homologar.

Conteúdos relacionados

REFERÊNCIAS
  1. TOTVS. FieldBlock. TDN. Consulta em 2026-10-26.
  2. EURAI. ADVPL/Funcoes/Acesso a Dados/FieldBlock.PRW. universo_do_desenvolvedor_site, commit a5c83e9490302bdb4a0fc5a9d92c2d569a60773c. Exemplo analisado. Consulta em 2026-10-26.
Situação
Em revisão
Página criada em
Última revisão em
Idioma original
Português
Revisão
Usina.BR
0 comentário(s) aprovado(s)

Comentários

Ainda não há comentários aprovados.

Entre com Google ou Microsoft para comentar.

Powered by Usina Docs · Alpha