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):