@Célio Alves Boa Noite.
Tenta executar essa consulta:
SELECT TPRODUTO.CODIGOPRD, TPRODUTO.NOMEFANTASIA, TPRODUTODEF.CODUNDCONTROLE,
TPRODUTODEF.CODUNDCOMPRA, TPRODUTODEF.CODUNDVENDA, TUND.CODUND, TUND.DESCRICAO AS UN,
TUND.CODUNDBASE AS UNIDADE, TUND.FATORCONVERSAO
FROM
TPRODUTO (NOLOCK), TPRODUTODEF (NOLOCK), TUND (NOLOCK)
WHERE
TPRODUTO.IDPRD = TPRODUTODEF.IDPRD AND
TUND.CODUND = TPRODUTODEF.CODUNDCOMPRA AND
TUND.CODUND = TPRODUTODEF.CODUNDCONTROLE AND
TUND.CODUND = TPRODUTODEF.CODUNDVENDA AND
TPRODUTODEF.CODCOLIGADA = 1 AND
TPRODUTO.TIPO = '1'
O que alterei:
TPRODUTO.CODIGO = O campo código não existe, o correto é CODIGOPRD
TPRODUTODEF.CODCOLIGADA = GCOLIGADA.CODCOLIGADA = Você utilizou a tabela GCOLIGADA e a mesma não foi adicionada na sua consulta. Eu coloquei o Tprodutodef.Codcoligada = 1, mas se vc quiser pegar a informação da coligada que o usuario está conectado pode usar :$CODCOLIGADA
TPODUTO.TIPO = '1' = Faltou um R no nome da tabela.