Tempo aproximado para leitura: 00:05:00 min
Dúvida
Estou usando a função posicione e a descrição do primeiro item e replica para os demais.
Ambiente
Cross Segmento - TOTVS Backoffice (Linha Protheus) – ADVPL – A partir da versão 11.80
Solução
Neste caso o índice não consegue diferenciar o item posicionado.
Para validar a utilização do posicione primeiramente é verifique se o índice existe e se as chaves estão corretas, uma outra opção é criar uma user function e debugando a função verifique se os valores do parâmetro utilizado na Posicione estão corretos "XFILIAL("SA1") + SC9->C9_CLIENTE + SC9->C9_LOJA" valide chumbando os valores "'01' + '000001' + '01'"
Posicione("SA1",1,XFILIAL("SA1") + "000001" + "01", "A1_NOME")
User Function VLDPosicione
local cNome := "
DbSelectArea("SA1")
SA1->(DbSetOrder(1))
cNome := Posicione("SA1",1,XFILIAL("SA1") + "CLI000" + "01", "A1_NOME")
Return cNome
obs.: Valido para todas versões do protheus.
1 Comentários