DBSelectArea

Seleciona o alias de uma tabela como area ativa. Necessario antes de comandos posicionais (DBGoTop, DBSkip, etc).

Assinatura: DBSelectArea(cAlias) -> NIL

Retorna: NIL

DBSelectArea torna um alias a area "ativa" — qualquer comando posicional subsequente (DBGoTop, DBSkip, DBSeek sem prefixo) opera nele. Hoje o padrao moderno e usar prefixo (SA1->(DBSeek(...))) que evita esse problema.

Sintaxe

DBSelectArea("SA1")
DBGoTop()
While !Eof()
    ? SA1->A1_NOME
    DBSkip()
EndDo

Pegadinhas

Padrao com preservacao de area

aSavArea := GetArea()
DBSelectArea("SA1")
DBSetOrder(1)
// ... operacao
RestArea(aSavArea)   // restaura a area que estava ativa antes

Parâmetros

NomeTipoObrigatórioDescrição
cAliasCharactersimNome do alias (ex: "SA1", "SE1").

Exemplos

Modo legado vs moderno

// Legado
DBSelectArea("SA1")
DBSetOrder(1)
DBSeek(xFilial("SA1") + cCod)

// Moderno (recomendado)
SA1->(DBSetOrder(1))
SA1->(DBSeek(xFilial("SA1") + cCod))

Veja também