DBSelectArea

Tempo de leitura: 2 minutos

A função DBSelectArea define a área de trabalho especificada com sendo a área ativa. Todas as operações subsequentes que fizerem referência a uma área de trabalho a utilização, a menos que a área desejada seja informada explicitamente. Ela também é uma das Funções de Acesso a Banco de Dados / SQL no Protheus em ADVPL. 

 

Sintaxe:

DBSelectArea(xArea)

 

Parâmetro(s):

Observações:

  • xArea pode ser do tipo numérico, indicando o número da área de trabalho, ou do tipo caractere, indicando o alias de uma área de trabalho;
  • Após a seleção de uma área de trabalho, todas as operações subsequentes serão realizadas nesta área de trabalho, a menos que outra área seja informada ou que se utilize alias para se referenciar a outra área de trabalho;
  • Se xArea contiver uma string com uma alias que não foi aberto, o programa será encerrado com ocorrência de erro recuperável “Alias does not exist: AAA“, onde AAA indica o alias informado;
  • Se xArea contiver um número menor ou igual a 0 (zero) ou for maior que o número de áreas de trabalho informado pela chave “MaxWorkAreas” da seção do ambiente no arquivo ini(appserver.ini) do AppServer, o programa será encerrado com ocorrência de erro recuperável “Work area does not exist“;
  • Se for informado em xArea um número de área de trabalho válido, mas não aberto, ou uma string com um alias inexistente, ou o valor nulo (Nil), a área de trabalho atual será desativada;
  • Cada área de trabalho corresponde às informações de um único alias.

Exemplo da função DBSelectArea em ADVPL:

#include 'protheus.ch'
#INCLUDE "TBICONN.CH"
/*{Protheus.doc} User Function PADBSAre
    (Essa função tem por finalidade mostrar a função de Acesso a Banco de Dados / SQL no Protheus DBSelectArea em ADVPL)
    @type  Function
    @author Adilio Costa
    @since 05/12/2023
    @version Protheus 12.1.2210
    @Inscreva-se no Blog ProtheusAdvpl:
https://www.protheusadvpl.com.br
@Inscreva-se no Canal ProtheusAdvpl:
https://www.youtube.com/protheusadvpl
@Siga-nos no Instagram:
https://www.instagram.com/protheusadvpl
@Conheça os Cursos do ProtheusAdvpl:
https://hotmart.com/pt-br/club/protheusadvpl
|Se esse conteúdo foi útil pra você nos ajude divulgando 
ele e nossas redes sociais!!|
*/

User Function PADBSAre()
	Local aArea    := GetArea()
    Local cCodFor
    Local cNomeFor := ""
    
    //Definindo a tabela SA2(Fornecedores) como à área de trabalho ativa
    DBSelectArea("SA2")
    SA2->(DBSetOrder(1))
    /*
    Como o SA2 é o alias selecionado, os comandos a partir da seleção do alias compreendem que ele
    está implícito na expressão, o que causa o mesmo efeito de SA2->A2_COD e SA2->A2_NOME
    */
    cCodFor := cValToChar(A2_COD)
    cNomeFor := A2_NOME
     
    MsgInfo("Código do Fornecedor:"+cCodFor+",Nome do Fornecedor:"+cNomeFor,"Função DBSelectArea")
    
    //Fechando a tabela de Fornecedores
    SA2->(DBCloseArea())
     
    RestArea(aArea)

Return

 

 

É isso aí, finalizamos aqui mais um post no Blog ProtheusAdvpl. Caso tenha ficado alguma dúvida deixe seu comentário ou nos envie um e-mail para adiliocosta@protheusadvpl.com.br, até um próximo post, grande abraço e fica com Deus.

Receba as últimas atualizações do ProtheusAdvpl
Deixe seu melhor email
Nós respeitamos sua privacidade.