Pesquisando um Registro de um Alias/Tabela com DBSeek em ADVPL

Tempo de leitura: 2 minutos

A função DBSeek em ADVPL pesquisa um registro de um alias/tabela ativo, com as informações especificadas na chave de busca, fornecendo um retorno lógico indicando se a pesquisa foi efetuada com sucesso, ou seja, se a informação especificada na chave de busca foi localizada na área de trabalho. Ela é uma das Funções de Acesso a Banco de Dados / SQL no Protheus em ADVPL. 

 

Sintaxe:

DBSeek(cExpr,lPos)

 

Parâmetro(s):

Retorno:

 

 

Exemplo da função DBSeek em ADVPL:

#include 'protheus.ch'
#INCLUDE "TBICONN.CH"
/*{Protheus.doc} User Function fDBSeek
    (Essa função tem por finalidade mostrar a função DBSeek em ADVPL)
    @type  Function
    @author Adilio Costa
    @since 08/12/2023
    @version 1.0

@?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 e Formações do ProtheusAdvpl:
https://cursos-e-formacoes-protheusadvpl.gr-site.com/

@Participe de nossas comunidades no WhatsApp:
-Comunidade Protheus Backoffice:https://chat.whatsapp.com/KMUIAjwZ6EZ6eAHsLkPTyb
-Comunidade Protheus-RH:https://chat.whatsapp.com/L5dUyAna6xU4ylG5DUgfOW
-Comunidade Protheus-Programação:https://chat.whatsapp.com/LsD6z0apdqKHlOz67bcaEn
-Comunidade Protheus-Framework:https://chat.whatsapp.com/BzUFpjaSnTC3vtsfa77jmG

*/

User Function fDBSeek()
	Local aArea    := GetArea() //Salvando a área atual
	Local cCodFor  := "000002"
	Local cLojaFor := "01"


	//Seleciona a tabela SA2 como a área ativa
	DBSelectArea("SA2")
	//Seleciona o 1 índice de SA2 -> A2_FILIAL+A2_COD+A2_LOJA
	SA2->(DBSetOrder(1))

	//Fazendo a busca exata do registro
	If(SA2->(DBSeek(xFilial("SA2")+cCodFor+cLojaFor)))
		MsgInfo("O fornecedor foi localizado!", "Função DBSeek")
	Else
		MsgInfo("O fornecedor não foi localizado!", "Função DBSeek")
	EndIf

	//Fazendo a busca aproximada do registro, o qual pode não ser o especificado na chave
	If(SA2->(DBSeek(xFilial("SA2")+cCodFor+cLojaFor,.T.)))
		MsgInfo("Um fornecedor aproximado foi localizado!", "Função DBSeek")
	Else
		MsgInfo("Nenhum fornecedor aproximado foi localizado!", "Função DBSeek")
	EndIf


	//Restaurando o ambiente salvo
	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.

Link(s) de referência(s):

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