Determina se o resultado de uma expressão é vazio.

Sintaxe

Empty( < xExp > )

Parâmetros

Nome

Tipo

Descrição

Obrigatório

Referência

xExp

qualquer

Indica uma expressão ou variável de qualquer tipo de dado.

X


Retorno

Nome

Tipo

Descrição

lRet

lógico

Retorna verdadeiro (.T.), se a expressão resultar em um valor vazio; caso contrário, falso (.F.)

Observações

Em builds anteriores ao Protheus, uma string tabém era considerada vazia mesmo se ela tivesse caracteres como "TAB" ( tabulação, ASCII 9 ) e/ou quebra de linha ( ASCII 13 + ASCII 10. No Protheus, a string somente é considerada vazia caso ela tenha comprimento vazio ( len() = 0 ) ou apenas espaços em branco ( ASCII 32 ) em seu conteúdo.

  • Os critérios para determinar se o valor será considerado vazio, no parâmetro <lRet>, dependem do tipo de dado, no parâmetro <xExp>, e das regras de retorno, conforme a tabela Regras de retorno.

Tipo de dado

Conteúdo

Array

Retorna verdadeiro caso o tamanho do array seja 0 (zero).

Caractere

Retorna verdadeiro caso a string seja vazia ('') ou possua apenas um ou mais espaços em branco.

Numérico

Retorna verdadeiro caso o número seja 0 (zero)

Data

Retorna verdadeiro caso a data seja vazia

Lógico

Retorna verdadeiro caso o parâmetro seja falso (.F.)

Memo

Mesma regra do tipo Caractere.

Nil

Sempre retorna verdadeiro ( .T. )

Bloco de código

Sempre retorna falso ( .F. )

  • Essa função, pode ser utilizada para:
  • Determinar se o usuário entrou com um valor em um objeto GET antes de enviar as alterações para um arquivo de banco de dados.
  • Determinar se um parâmetro formal é Nil ou não foi informado.
  • Testa um array para verificar se tem tamanho zero.

Exemplos

Exemplo 1
User Function Exemplo()
  cValue := "AAA"
  Empty( cValue ) // Resultado: .F.

  cValue := ""
  Empty( cValue ) // Resultado: .T.
Return

Abrangência

Advanced Protheus 6.09 , Advanced Protheus 7.10 , Microsiga Protheus 8.11 , Protheus 10

  • Sem rótulos