Tempo de leitura: 1 minuto
A função DBEval é uma das funções de manipulação de bloco de códigos em ADVPL. DBEval avalia um bloco de código para cada registro que atenda um escopo definido, através dos blocos da primeira e segunda condição.
Sintaxe:
DBEval(bCod,bCond1,bCond2,nMax,nRecno,lExpLog)
Parâmetros(s):
Retorno:
Exemplo de DBEval em ADVPL:
#include 'protheus.ch'
#include 'rwmake.ch'
#INCLUDE "TBICONN.CH"
/*{Protheus.doc} User Function fDBEval
(Essa função tem por finalidade mostrar a função DBEval em ADVPL)
@type Function
@author Adilio Costa
@since 02/11/2024
@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 do ProtheusAdvpl:
https://hotmart.com/pt-br/club/cursos-protheusadvpl
|Se esse conteúdo foi útil pra você nos ajude divulgando
ele e nossas redes sociais!!|
*/
User Function fDBEval()
Local aArea := GetArea()
Local nContSB1 := 0
Local cMsg := "Registros PF e que utilizam grade."+Chr(10)+Chr(13)
Local bBloco := {|| nContSB1++,cMsg+=SB1->B1_COD+"-"+SB1->B1_DESC+","}
Local bCond1 := {|| nContSB1<= 10} //Enquanto o nConSB1 <= 10
Local bCond2 := {|| SB1->B1_FILIAL == FWxFilial("SB1") .And. SB1->B1_GRADE="S"}
RpcSetType(3)
PREPARE ENVIRONMENT EMPRESA "01" FILIAL "0101" MODULO "FAT"
DBSelectArea("SB1")
SB1->(DBSetOrder(2)) //B1_FILIAL+B1_TIPO+B1_COD
SB1->(DBSeek(FWxFilial("SB1")+"PF")) //Posiciona em produtos do tipo PF
DBEval(bBloco,bCond1,bCond2)
MsgInfo(cMsg,"Função DBEval")
RestArea(aArea)
Return
Bem, finalizamos mais um post aqui no blog. Caso tenha alguma dúvida deixe seu comentário ou nos envie o e-mail para adiliocosta@protheusadvpl.com.br. Grande abraço e fica com Deus.