Exception with latest version.

I'm having Exceptions with latest version. With previous version worked ok.(Dont really remember,maybe it was 5.5).

I have the following association:

DATDEC->DATDECOP->Respuesta

This code worked ok on previous version. Now I get access violation.
DatDec := AManager.Find <TXDATDEC
.SubCriteria('IDDATDECOP',TFetchMode.Eager)
.Add(TExpression.Eq('INDICADOR', 'R'))
.SubCriteria('Respuesta')
.Add(TExpression.Eq('IDDECLARACIONREGISTRADA', ARegistroDec))
.UniqueResult<TXDATDEC;

function TCriteria.GetResultClass: TClass;
begin
Result := Root.FResultClass;
if Result = nil then
begin
if HasProjection then
Result := TCriteriaResult
else
Result := FEntityType.OriginClass; <-Exception Access Violation because FEntityType = nil
end;
end;

If I change it to the following works ok on latest version.

DatDec := AManager.Find
.CreateAlias('IDDATDECOP', 'O')
.CreateAlias('O.Respuesta', 'R')
.Add(Linq['O.INDICADOR'] = 'R')
.Add(Linq['R.IDDECLARACIONREGISTRADA'] = ARegistroDec)
.UniqueResult;

I generates the following SQL:

SELECT A.ID AS A_ID, A.IDDECLARANTE AS A_IDDECLARANTE, A.MODALIDADESP AS A_MODALIDADESP, A.REGIMEN AS A_REGIMEN, A.DREGIMEN AS A_DREGIMEN, A.ADUANA AS A_ADUANA, A.DADUANA AS A_DADUANA, A.RUCIMPOEXPO AS A_RUCIMPOEXPO, A.DRUCIMPOEXPO AS A_DRUCIMPOEXPO, A.CORREOIMPOEXPO AS A_CORREOIMPOEXPO, A.RUCDECLARANTE AS A_RUCDECLARANTE, A.DRUCDECLARANTE AS A_DRUCDECLARANTE, A.DOCDESTPROV AS A_DOCDESTPROV, A.NOMDESTPROV AS A_NOMDESTPROV, A.DOMDESTPROV AS A_DOMDESTPROV, A.REFEXTERNA AS A_REFEXTERNA, A.ADUANAINGSAL AS A_ADUANAINGSAL, A.DADUANAINGSAL AS A_DADUANAINGSAL, A.PAISORIGEN AS A_PAISORIGEN, A.DPAISORIGEN AS A_DPAISORIGEN, A.PAISPROCDESTINO AS A_PAISPROCDESTINO, A.DPAISPROCDESTINO AS A_DPAISPROCDESTINO, A.PESOBRUTO AS A_PESOBRUTO, A.CANTIDADBULTOS AS A_CANTIDADBULTOS, A.CLASEBULTOS AS A_CLASEBULTOS, A.DCLASEBULTOS AS A_DCLASEBULTOS, A.CANTITEMS AS A_CANTITEMS, A.COMENTARIO AS A_COMENTARIO, A.ENTFINANCIERAMED AS A_ENTFINANCIERAMED, A.CONDICIONENTREGA AS A_CONDICIONENTREGA, A.DCONDICIONENTREGA AS A_DCONDICIONENTREGA, A.DIVISAFACTURA AS A_DIVISAFACTURA, A.DDIVISAFACTURA AS A_DDIVISAFACTURA, A.TOTALFACTURA AS A_TOTALFACTURA, A.COTDIVFACTURA AS A_COTDIVFACTURA, A.DIVISAFLETE AS A_DIVISAFLETE, A.DDIVISAFLETE AS A_DDIVISAFLETE, A.TOTALFLETE AS A_TOTALFLETE, A.DIVISASEGURO AS A_DIVISASEGURO, A.DDIVISASEGURO AS A_DDIVISASEGURO, A.TOTALSEGURO AS A_TOTALSEGURO, A.IMPORTEOGASTOS AS A_IMPORTEOGASTOS, A.TOTALALMACENAJE AS A_TOTALALMACENAJE, A.FORMAPAGOFAC AS A_FORMAPAGOFAC, A.DFORMAPAGOFAC AS A_DFORMAPAGOFAC, A.PORCINTERESFAC AS A_PORCINTERESFAC, A.MOTIVOSUSP AS A_MOTIVOSUSP, A.DMOTIVOSUSP AS A_DMOTIVOSUSP, A.PLAZO AS A_PLAZO, A.DEPALMACENAMIENTO AS A_DEPALMACENAMIENTO, A.DDEPALMACENAMIENTO AS A_DDEPALMACENAMIENTO, A.MANENTREGARAPIDA AS A_MANENTREGARAPIDA, A.ADUANATRANSDESTINO AS A_ADUANATRANSDESTINO, A.DADUANATRANSDESTINO AS A_DADUANATRANSDESTINO, A.RUTATRANSITO AS A_RUTATRANSITO, A.DRUTATRANSITO AS A_DRUTATRANSITO, A.DEPADUANATRANSITO AS A_DEPADUANATRANSITO, A.DDEPADUANATRANSITO AS A_DDEPADUANATRANSITO, A.DECTRANSITO AS A_DECTRANSITO, A.DATOSADICIONALES AS A_DATOSADICIONALES, A.IDDATDECOP AS A_IDDATDECOP
FROM DATDEC A
LEFT JOIN (DATDECOP B
LEFT JOIN DATDECRESP C ON (C.IDDATDECOP = B.ID)) ON (B.ID = A.IDDATDECOP)
WHERE B.INDICADOR = :p_0 AND
C.IDDECLARACIONREGISTRADA = :p_1

Any hints?

Thanks in advance,

Omar Zelaya

We got aware of this issue a couple of days ago. It's related to the use of SubCriteria indeed. We are working on it and will release an update soon that will fix the issue.