Ops, ahora que releo, tambien podrias escribir esta parte asi:

<many-to-one name="Origen" class="Ambiente" />
<many-to-one name="Destino" class="Ambiente" />
<many-to-one name="User" class="Usuario" />

----------------------------------
Carlos Peix
cel: 15-4406-7571


2010/1/12 Carlos Peix <[email protected]>

> Hola Edgard,
>
> Como consejo lateral, el mismo mapping podrias escribirlo asi:
>
> <hibernate-mapping xmlns="urn:nhibernate-mapping-2.2"
> namespace="PYTWINDOWS.Entities" assembly="PYTWINDOWS">
>
> <class name="Movimiento" table="tb_cts_Movimiento"
> discriminator-value="Ninguno" >
> <id name="IdMovimiento">
> <generator class="identity"/>
> </id>
>  <discriminator column="Tipo" />
>
> <many-to-one name="Origen" class="Ambiente" column="Origen" />
> <many-to-one name="Destino" class="Ambiente" column="Destino" />
> <many-to-one name="User" class="Usuario" column="Usuario" />
>
> <property name="Fecha"/>
> <property name="Numeracion"/>
>
> <bag name="Lineas" inverse="true" cascade="all-delete-orphan">
> <key column="idMovimiento"/>
> <one-to-many class ="LineaMovimiento"/>
> </bag>
>
> <subclass name="Transferencia" discriminator-value="Transferencia" >
> </subclass>
>
> <subclass name="Produccion" discriminator-value="Produccion">
> </subclass>
>
> <subclass name="Venta" discriminator-value="Venta">
> <property name="Descuento"/>
> <property name="FormaPago"/>
> <property name="TipoDocumento"/>
> </subclass>
>
> <subclass name="Ingreso" discriminator-value="Ingreso">
> </subclass>
> </class>
>
> </hibernate-mapping>
>
> Y queda mas claro, fijate que defini el default-namespace y
> default-assembly en el encabezado.
>
> Por otro lado, me llama la atencion que tengas discriminator-value para la
> clase base, acaso es posible que tengas una instancia de Movimiento? si no
> es asi, entonces el discriminator-value no te aporta nada y yo lo sacaria de
> la clase base.
>
> Luego, para hacer una prueba facil, proba de usar el tipo VARCHAR para la
> columna del discriminator, eso va a hacer que no molesten los espacios en
> blanco pero, como contrapartida, los indices sobre columnas VARCHAR no son
> tan eficientes como aquellos sobre columnas CHAR (o mejor aun, INT), pero al
> menos sirve para que puedas probar.
>
> Luego de hacer ese cambio, por supuesto, borra nuevamente la base de datos.
>
> ----------------------------------
> Carlos Peix
>
>
-- 
Para escribir al Grupo, hágalo a esta dirección: 
[email protected]
Para más, visite: http://groups.google.com/group/NHibernate-Hispano

Responder a