Relacionamento entre campos com RecNo

Boa tarde!

Estou criando dois grids que se relacionam em MVC.

O relacionamento entre as tabelas se dá pelo campo RECNO, isso é: o campo ZFT_RECZFS faz relacionamento com o RECNO da tabela ZFS.

A query SQL seria assim:

SELECT * FROM ZFT010 ZFT
INNER JOIN ZFS010 ZFS ON
    ZFS.ZFS_FILIAL = ZFT.ZFT_FILIAL AND
    ZFS.R_E_C_N_O_ = ZFT.ZFT_RECZFS AND
    ZFS.D_E_L_E_T_ = ''
WHERE
    ZFT.D_E_L_E_T_ = ''

Ao criar os grids no Protheus, estou tendo dificuldade ao criar o relacionamento. Em todos os testes que efetuei, recebi um error log. Estou o criando da seguinte maneira:

oModel:AddGrid('ModelZFT','ModelZFS',oStruZFT,/*bFldOk*/,/*bLineOk*/,/*bPreGrid*/,/*bProsGrid*/)
oModel:SetRelation('ModelZFT',{ {'ZFT_FILIAL','xFilial("ZFS")'},{'ZFT_RECZFS','R_E_C_N_O_'} }, ZFT->(IndexKey(1)) )

Dessa forma, recebo um error log:

variable does not exist R_E_C_N_O on BUILDWHERE(PROTHEUSFUNCTIONMVC.PRX) 19/02/2020 20:54:46 line : 6247

Observação: O campo está escrito corretamente, mas a formatação do DevForum para itálico pode parecer que está faltando um underscore.

Caso eu substituir o 'RECNO' por ZFS->(RecNo()) a tela carrega sem erros, mas o grid não é preenchido (logo, o relacionamento não funcinou).

Alguém já passou por situação parecida? O MVC dá suporte para relacionamentos com RecNo?

Agradeço desde já pela atenção.

compartilhar
  1. Você vai ver essas setas em qualquer página de pergunta. Com elas, você pode dizer se uma pergunta ou uma resposta foram relevantes ou não.
  2. Edite sua pergunta ou resposta caso queira alterar ou adicionar detalhes.
  3. Caso haja alguma dúvida sobre a pergunta, adicione um comentário. O espaço de respostas deve ser utilizado apenas para responder a pergunta.
  4. Se o autor da pergunta marcar uma resposta como solucionada, esta marca aparecerá.
  5. Clique aqui para mais detalhes sobre o funcionamento do TOTVS DevForum!

2 respostas

Não é a resposta que estava procurando? Procure outras perguntas com as tags mvc advpl ou faça a sua própria pergunta.