Aprenda a usar a função Posicione do Protheus.
É muito comum você precisar posicionar uma outra tabela para pegar alguma informação.
Hoje vou demostrar o uso da função Posicione em um gatilho e em um inicializador de browse.
Podemos utilizar em Gatilhos, inicializador de browse, Lançamento Padrão (Contabilidade), consultas e Relatórios.
Para nosso exemplo, usaremos a tela de saldo inicial no estoque. Vamos criar um campo virtual para mostrar a descrição do produto.
Lembrando que a mesma sintaxe pode ser usado onde for necessário (Lançamento padrão, consulta, relatórios).
Sintaxe: POSICIONE( <cAlias>, <nOrdem>, <cChave>, <cCampo> )
<cAlias> : Define o alias do arquivo cujo campo terá o seu conteúdo retornado.
<nOrdem>: Define o índice que será utilizado para a pesquisa. Informa-se a ordem do índice.
<cChave>: Chave de pesquisa utilizada para se encontrar o registro do qual o conteúdo de um determinado campo será retornado.
<cCampo> : Define o nome do campo cujo conteúdo será retornado.
Na aba Opções na opção Inicializador Padrão e Inicializador de Browse colocaremos a função Posicione para que o sistema posicione a tabela de produto e retorne a descrição do produto em questão.
iif(inclui,”,POSICIONE(‘SB1’,1,XFILIAL(‘SB1′)+SB9->B9_COD,’B1_DESC’))
posicione(‘SB1’,1,xFilial(‘SB1′)+SB9->B9_COD,’B1_DESC’)
Conforme imagem abaixo
Agora vamos criar um gatilho e colocar a função Posicione conforme imagem abaixo para assim que informar o código do produto, o sistema retorna a descrição do mesmo no nosso campo.
Agora é só abrir o cadastro de saldo inicial e conferir que o campo já esta com o conteúdo (virtual) preenchido conforme inicializador.
Com isso concluímos, espero que tenha gostado.
Link TDN: Função Posicione
Dúvidas?! Deixem seus comentários e inscreva-se.
[sc:Newsletter]