Tempo aproximado para leitura: 00:05:00 min
Dúvida
Qual a finalidade da utilização do parâmetro lSoftSeek na função DbSeek ( ) ?
Ambiente
Cross Segmento - TOTVS Backoffice (Linha Protheus) – ADVPL – A partir da versão 11.8
Solução
Quando enviamos por meio da função DbSeek uma chave de busca para o banco de dados, internamente ele realiza um LIKE('XXX%') , desta forma, caso seja encontrado um valor que atenda aos caracteres envolvidos até o momento, será retornado verdadeiro:
No que se refere ao parâmetro lSoftSeek, ele tem como finalidade encontrar valores aproximados, veja o exemplo abaixo:
Caso lSoftSeek esteja com valor falso e for informado um conjunto de valores inválidos para busca, a função irá retornar falso e posicionar no último registro do arquivo de trabalho:
Contudo, caso lSoftSeek esteja com valor verdadeiro e seja informado um conjunto de valores inválidos para busca, a função também irá retornar falso, porém irá posicionar no registro mais próximo do valor informado:
Desta forma, caso visualizado o estado do arquivo de trabalho, será possível ver os dados do posicionamento:
Diferente de quando lSoftSeek está com valor falso:
0 Comentários