You are viewing a plain text version of this content. The canonical link for it is here.
Posted to ojb-user@db.apache.org by Javier Martorell <jm...@brujulatelecom.com> on 2004/11/05 12:39:21 UTC
Question about outer joins
Ive got an OJB report query to the table RES that is joined with another
table RPX (RES 1:N RPX)
RPX whith a 1:N join with another table called EMI (RPX 1:N EMI) and
another join with (RPX N:1 ACR). I am doing a ReportQueryByCriteria
ReportQueryByCriteria query = new
ReportQueryByCriteria(resVO.class, criteria);
I want to do an outher join with ACR table and I use the sentence
query.setPathOuterJoin("reservaPaxVOs.acreditadoVO");
but it doesnt work; the outer join does not appear.
If I use the sentence
query.setPathOuterJoin("reservaPaxVOs);
it makes the outer join whith both tables EMI and ACR but I only want the
outer join to work with the ACR table, how can I do it?
Repository:
<!-- ************** TABLA T_SRV_RES *********************** -->
<class-descriptor class="com.brujulatelecom.srv.vo.ReservaVO"
table="T_SRV_RESERVA">
<field-descriptor id="1" name="resCodigo" column="RES_CODIGO"
jdbc-type="INTEGER" primarykey="true" autoincrement="true"
sequence-name="S_SRV_RES"/>
<field-descriptor id="2" name="resOfiCodResponsab"
column="RES_OFICODRESPONSAB"
jdbc-type="INTEGER"/>
<field-descriptor id="3" name="resLocalizador" column="RES_LOCALIZADOR"
jdbc-type="VARCHAR" autoincrement="true"
sequence-name="S_SRV_LOCALIZADOR"/>
<field-descriptor id="4" name="resPlazas" column="RES_PLAZAS"
jdbc-type="INTEGER"/>
<field-descriptor id="5" name="resPersona" column="RES_PERSONA"
jdbc-type="VARCHAR"/>
<field-descriptor id="6" name="resDateCreated" column="RES_DATE_CREATED"
jdbc-type="TIMESTAMP"/>
<field-descriptor id="7" name="resDateModified"
column="RES_DATE_MODIFIED"
jdbc-type="TIMESTAMP"/>
<field-descriptor id="8" name="resModifiedBy" column="RES_MODIFIED_BY"
jdbc-type="VARCHAR"/>
<field-descriptor id="9" name="resCreatedBy" column="RES_CREATED_BY"
jdbc-type="VARCHAR"/>
<field-descriptor id="10" name="resBorrado" column="RES_BORRADO"
jdbc-type="CHAR"/>
<field-descriptor id="11" name="resTemporada" column="RES_TEMPORADA"
jdbc-type="INTEGER"/>
<field-descriptor id="12" name="resEstado" column="RES_ESTADO"
jdbc-type="INTEGER"/>
<reference-descriptor name="oficinaVO"
class-ref="com.brujulatelecom.srv.vo.OficinaVO"
auto-retrieve="false">
<foreignkey field-ref="resOfiCodResponsab"/>
</reference-descriptor>
<collection-descriptor
name="salidaReservaVOs"
element-class-ref="com.brujulatelecom.srv.vo.SalidaReservaVO"
auto-retrieve="false">
<inverse-foreignkey field-ref="sreResCodigo"/>
</collection-descriptor>
<collection-descriptor
name="reservaPaxVOs"
element-class-ref="com.brujulatelecom.srv.vo.ReservaPaxVO"
auto-retrieve="false">
<inverse-foreignkey field-ref="rpxResCodigo"/>
</collection-descriptor>
</class-descriptor>
<!--************ TABLA T_SRV_RPX*************-->
<class-descriptor class="com.brujulatelecom.srv.vo.ReservaPaxVO"
table="T_SRV_RESERVAPAX">
<field-descriptor id="1" name="rpxCodigo" column="RPX_CODIGO"
jdbc-type="INTEGER" primarykey="true"
autoincrement="true"
sequence-name="S_SRV_RPX"/>
<field-descriptor id="2" name="rpxResCodigo" column="RPX_RESCODIGO"
jdbc-type="INTEGER"/>
<field-descriptor id="3" name="rpxAcrCodigo" column="RPX_ACRCODIGO"
jdbc-type="INTEGER"/>
<field-descriptor id="4" name="rpxNombre" column="RPX_NOMBRE"
jdbc-type="VARCHAR"/>
<field-descriptor id="5" name="rpxDni" column="RPX_DNI"
jdbc-type="VARCHAR"/>
<field-descriptor id="6" name="rpxTelefono" column="RPX_TELEFONO"
jdbc-type="VARCHAR"/>
<field-descriptor id="7" name="rpxDateCreated" column="RPX_DATE_CREATED"
jdbc-type="TIMESTAMP"/>
<field-descriptor id="8" name="rpxDateModified"
column="RPX_DATE_MODIFIED"
jdbc-type="TIMESTAMP"/>
<field-descriptor id="9" name="rpxModifiedBy" column="RPX_MODIFIED_BY"
jdbc-type="VARCHAR"/>
<field-descriptor id="10" name="rpxCreatedBy" column="RPX_CREATED_BY"
jdbc-type="VARCHAR"/>
<field-descriptor id="11" name="rpxBorrado" column="RPX_BORRADO"
jdbc-type="CHAR"/>
<field-descriptor id="12" name="rpxPersona" column="RPX_PERSONA"
jdbc-type="VARCHAR"/>
<field-descriptor id="13" name="rpxTemporada" column="RPX_TEMPORADA"
jdbc-type="INTEGER"/>
<reference-descriptor name="reservaVO"
class-ref="com.brujulatelecom.srv.vo.ReservaVO"
auto-retrieve="false">
<foreignkey field-ref="rpxResCodigo"/>
</reference-descriptor>
<reference-descriptor name="acreditadoVO"
class-ref="com.brujulatelecom.srv.vo.AcreditadoVO"
auto-retrieve="false">
<foreignkey field-ref="rpxAcrCodigo"/>
</reference-descriptor>
<collection-descriptor
name="emisionVOs"
element-class-ref="com.brujulatelecom.srv.vo.EmisionVO"
auto-retrieve="false">
<inverse-foreignkey field-ref="emiRpxCodigo"/>
</collection-descriptor>
</class-descriptor>
<!-- ************** TABLA T_SRV_EMI *********************** -->
<class-descriptor class="com.brujulatelecom.srv.vo.EmisionVO"
table="T_SRV_EMISION">
<field-descriptor id="1" name="emiCodigo" column="EMI_CODIGO"
jdbc-type="INTEGER" primarykey="true"
autoincrement="true" sequence-name="S_SRV_EMI"/>
<field-descriptor id="2" name="emiRpxCodigo" column="EMI_RPXCODIGO"
jdbc-type="INTEGER"/>
<field-descriptor id="3" name="emiSreCodigo" column="EMI_SRECODIGO"
jdbc-type="INTEGER"/>
<field-descriptor id="4" name="emiOfiCodigo" column="EMI_OFICODIGO"
jdbc-type="INTEGER"/>
<field-descriptor id="5" name="emiNroDocumento"
column="EMI_NRODOCUMENTO"
jdbc-type="VARCHAR"/>
<field-descriptor id="6" name="emiFechEmision"
column="EMI_FECHEMISION"
jdbc-type="TIMESTAMP"/>
<field-descriptor id="7" name="emiDatosEmision"
column="EMI_DATOSEMISION"
jdbc-type="VARCHAR"/>
<field-descriptor id="8" name="emiDateCreated"
column="EMI_DATE_CREATED"
jdbc-type="TIMESTAMP"/>
<field-descriptor id="9" name="emiDateModified"
column="EMI_DATE_MODIFIED"
jdbc-type="TIMESTAMP"/>
<field-descriptor id="10" name="emiModifiedBy"
column="EMI_MODIFIED_BY"
jdbc-type="VARCHAR"/>
<field-descriptor id="11" name="emiCreatedBy"
column="EMI_CREATED_BY"
jdbc-type="VARCHAR"/>
<field-descriptor id="12" name="emiBorrado" column="EMI_BORRADO"
jdbc-type="VARCHAR"/>
<field-descriptor id="13" name="emiTemporada" column="EMI_TEMPORADA"
jdbc-type="INTEGER"/>
<field-descriptor id="14" name="emiHotCodigo" column="EMI_HOTCODIGO"
jdbc-type="INTEGER"/>
<field-descriptor id="15" name="emiLugarPresenta"
column="EMI_LUGARPRESENTA"
jdbc-type="VARCHAR"/>
<field-descriptor id="16" name="emiHoraPresenta"
column="EMI_HORAPRESENTA"
jdbc-type="TIMESTAMP"/>
<field-descriptor id="17" name="emiTranspIdaPars"
column="EMI_TRANSPIDAPARS"
jdbc-type="VARCHAR"/>
<field-descriptor id="18" name="emiTranspVuePars"
column="EMI_TRANSPVUEPARS"
jdbc-type="VARCHAR"/>
<field-descriptor id="19" name="emiSecuenciaNroDoc"
column="EMI_SECUENCIANRODOC"
jdbc-type="INTEGER" autoincrement="true"
sequence-name="S_SRV_NRODOCUMENTO"/>
<reference-descriptor name="hotelVO"
class-ref="com.brujulatelecom.srv.vo.HotelVO"
auto-retrieve="false">
<foreignkey field-ref="emiHotCodigo"/>
</reference-descriptor>
<reference-descriptor name="salidaReservaVO"
class-ref="com.brujulatelecom.srv.vo.SalidaReservaVO"
auto-retrieve="false">
<foreignkey field-ref="emiSreCodigo"/>
</reference-descriptor>
<reference-descriptor name="reservaPaxVO"
class-ref="com.brujulatelecom.srv.vo.ReservaPaxVO"
auto-retrieve="false">
<foreignkey field-ref="emiRpxCodigo"/>
</reference-descriptor>
</class-descriptor>
<!--************ TABLA T_SRV_ACR *************-->
<class-descriptor class="com.brujulatelecom.srv.vo.AcreditadoVO"
table="T_SRV_ACREDITADO">
<field-descriptor id="1" name="acrCodigo" column="ACR_CODIGO"
jdbc-type="INTEGER" primarykey="true"
autoincrement="true"
sequence-name="S_SRV_ACR"/>
<field-descriptor id="2" name="acrNombre" column="ACR_NOMBRE"
jdbc-type="VARCHAR"/>
<field-descriptor id="3" name="acrDni" column="ACR_DNI"
jdbc-type="VARCHAR"/>
<field-descriptor id="4" name="acrTelefono" column="ACR_TELEFONO"
jdbc-type="VARCHAR"/>
<field-descriptor id="5" name="acrTelAcreditacion"
column="ACR_TELACREDITACION"
jdbc-type="VARCHAR"/>
<field-descriptor id="6" name="acrFasCodigo" column="ACR_FASCODIGO"
jdbc-type="INTEGER"/>
<field-descriptor id="7" name="acrPrvCodProvincia"
column="ACR_ARECODPROVINCIA"
jdbc-type="INTEGER"/>
<field-descriptor id="8" name="acrConfirmadas" column="ACR_CONFIRMADAS"
jdbc-type="INTEGER"/>
<field-descriptor id="9" name="acrListaEspera" column="ACR_LISTAESPERA"
jdbc-type="INTEGER"/>
<field-descriptor id="10" name="acrCodigoProveedor"
column="ACR_CODIGOPROVEEDOR"
jdbc-type="VARCHAR"/>
<field-descriptor id="11" name="acrDateCreated"
column="ACR_DATE_CREATED"
jdbc-type="TIMESTAMP"/>
<field-descriptor id="12" name="acrDateModified"
column="ACR_DATE_MODIFIED"
jdbc-type="TIMESTAMP"/>
<field-descriptor id="13" name="acrModifiedBy" column="ACR_MODIFIED_BY"
jdbc-type="VARCHAR"/>
<field-descriptor id="14" name="acrCreatedBy" column="ACR_CREATED_BY"
jdbc-type="VARCHAR"/>
<field-descriptor id="15" name="acrBorrado" column="ACR_BORRADO"
jdbc-type="CHAR"/>
<field-descriptor id="16" name="acrTemporada" column="ACR_TEMPORADA"
jdbc-type="INTEGER"/>
<field-descriptor id="17" name="acrCp" column="ACR_CP"
jdbc-type="VARCHAR"/>
<reference-descriptor name="provinciaVO"
class-ref="com.brujulatelecom.srv.vo.ProvinciaVO"
auto-retrieve="false">
<foreignkey field-ref="acrPrvCodProvincia"/>
</reference-descriptor>
<reference-descriptor name="faseVO"
class-ref="com.brujulatelecom.srv.vo.FaseVO"
auto-retrieve="false">
<foreignkey field-ref="acrFasCodigo"/>
</reference-descriptor>
<collection-descriptor
name="reservaPaxVOs"
element-class-ref="com.brujulatelecom.srv.vo.ReservaPaxVO"
auto-retrieve="false">
<inverse-foreignkey field-ref="rpxAcrCodigo"/>
</collection-descriptor>
<collection-descriptor
name="acrResActivaOficinaVOs"
element-class-ref="com.brujulatelecom.srv.vo.AcrResActivaOficinaVO"
auto-retrieve="false">
<inverse-foreignkey field-ref="aroAcrCodigo"/>
</collection-descriptor>
</class-descriptor>
Thanks
Javier Martorell Sitjar
Desarrollador de Proyectos Software
Brújula Telecom
T. +34 971 433 909 - F. +34 971 433 910
www.brujulatelecom.com
__________________________________
En el corazón de su negocio