Boa tarde. Seria possível criar uma query com BeginSql não informando os campos que serão pesquisados, mas sim vindo de uma variável. Conforme exemplo a seguir:
Ex. Local xValor := '' Local cCampo := 'RA_MAT'
BeginSql Alias cAliasQry SELECT TOP 1 cCampo FROM %Table:SRA% WHERE %NotDel% AND SRA_FILIAL = %xFilial:SRA% EndSql
xValor := (cAliasQry)->cCampo