Empty
Verifica se um valor esta vazio. Funciona pra string, numero, data, array, NIL — validacao universal de 'tem conteudo'.
Assinatura: Empty(xValor) -> lLogico
Retorna: Logical
Empty() e a validacao universal de "esta vazio?" em AdvPL. Diferente de outras linguagens, funciona com varios tipos: string vazia ou so espacos, zero numerico, data zerada (CTOD(" / / ")), array vazio, NIL.
Sintaxe
If Empty(xValor)
// valor vazio
EndIfExemplo
If Empty(cCampo)
Help(...,..., "Campo obrigatorio")
Return .F.
EndIf
// Aceita varios tipos:
Empty("") // .T.
Empty(" ") // .T. (so espacos)
Empty(0) // .T.
Empty(CTOD("")) // .T. (data zerada)
Empty({}) // .T. (array vazio)
Empty(NIL) // .T.Quando usar
- Validacao de campos obrigatorios em telas e gatilhos
- Checar se DBSeek encontrou algo (apos posicionar, conferir
Empty(SA1->A1_COD)) - Validacao defensiva antes de operacoes
Diferenca de NIL
Empty(NIL) retorna .T., mas se voce quer checar especificamente se variavel e NIL (nao inicializada), use ValType(x) == "U".
Parâmetros
| Nome | Tipo | Obrigatório | Descrição |
|---|---|---|---|
xValor | Any | sim | Valor de qualquer tipo (string, numeric, date, array, NIL) |
Exemplos
Validar campo obrigatorio
If Empty(M->A1_NOME)
Help(...,..., "Nome obrigatorio")
Return .F.
EndIf