Em uma base Oracle, após dar um LoadAllFromQuery(TBSQLNativeControl), eu não consigo mais acessar os dados, como se estivessem bloqueados, o que não ocorre em base SQLServer.
A alteração que fiz funciona normalmente em SQL Server, mas em Oracle, quando chega na atribuição do campo "OCCLIENTESEQITEM", logo após o LoadAllFromQuery, dá o erro "Operação Inválida em um objeto fechado":
sql := TQueryObject.Create('CM_ITENS', 'A');
sql.AddFields('A', ['OCCLIENTESEQITEM SEQITEMINTEIRO']);
_sql.SetQueryObject(sql);
_itens.GetFieldsFromQuery(_sql.NativeDataSet);
_itens.AddFields('OCCLIENTESEQITEM:STRING;');
_itens.LoadAllFromQuery(_sql.NativeDataSet);
_itens.FindField('OCCLIENTESEQITEM').AsString := _sql.NativeDataSet.FieldByName('SEQITEMINTEIRO').AsString;
Fazemos este "malabarismo" com o campo "OCCLIENTESEQITEM", porque precisamos dele como string para conseguir representar valores não siginificativos no container, no banco tem que ser inteiro mesmo.
Além do erro mencionado, no Oracle não conseguimos acessar os campos do dataset durante depuração, após a execução do LoadAllFromQuery. Ex.: _sql.NativeDataSet.FieldByName('SEQITEMINTEIRO').AsString dá erro no evaluator (Ctrl + F7) do Delphi.
Vendo as propriedades desse native control, logo após a execução do LoadAllFromQuery, pude ver algumas diferenças entre os bancos (imagem em anexo), a principal foi que a propriedade FNestedDataSetClass muda de um tipo de base para outra, será que é isso que faz os dados ficarem inacessíveis?

Estamos fazendo algo errado?
Stack do online debugger: http://desenv.benner.com.br/accessviolation/?qa=blob&qa_blobid=6117336191396093861, na linha 4208 ocorre o erro de Operação inválida em um objeto fechado.