Hola Omar,
 
Lamentablemente no tengo mucho tiempo ahora de mirar esto en detalle, pero me
suena mucho a un bug que reporte a Neo por problemas de relacoines entre objetos
aun no peristidos.
 
Creo que es el NEO-41. Si ese es tu problema estas en el horno, porque aun Erik
no lo soluciono y yo tampoco tuve mucho tiempo de buscar una solucion.
 
Carlos


  _____  

From: patrones@mug.org.ar [mailto:[EMAIL PROTECTED] On Behalf Of Omar del
valle Rodríguez
Sent: Lunes, 11 de Diciembre de 2006 12:40 p.m.
To: patrones List Member
Subject: !-> [patrones] Para carlos u otro conocedor de Neo


Hola gente..
 
Alguien que trabaje o trabajara NEO, sabe cual es la forma más optima de
reprecentar una relación de uno a uno en NEO??
 
Estoy tratando de representar 3 tablas..
 
1- Clientes
2- Personas
3- Empresas
 
Donde Clientes contiene campos comunes entre Personas y Empresas. A cada Empresa
o Personas le corresponde una sola entrada en la tabla Clientes.
 
He tratado de hacer lo siguiente.
 
<table name="crw_clients" javaName="Client">
<column name="client_id" javaName="client_id" type="INTEGER"  primaryKey="true"
/>
.....
<iforeign-key foreignTable="crw_company" name="CompanyRef">
   <ireference local="client_id" foreign="client_id"/>
</iforeign-key>
<iforeign-key foreignTable="crw_users" name="UserRef">
   <ireference local="client_id" foreign="client_id"/>
</iforeign-key>
</table>
 
<table name="crw_company" javaName="Company" idMethod="none">
<column name="client_id" javaName="client_id" type="INTEGER" hidden="true"
primaryKey="true" />
.....
</table>
 
<table name="crw_users" javaName="User" idMethod="none">
<column name="client_id" javaName="client_id" type="INTEGER" hidden="true"
primaryKey="true" />

.....
</table>
 
Esto hace dos cosas no deseadas. 
 
1- Cuando creo una nueva empresa lo hago creando el cliente, luego creo la
empresa y la asigno a la referencia de cliente. Al salvar, la llave de empresa
no se actualiza, he tenido que salvar primero cliente y luego empresa.
 
2- Un cliente que es un usuario, la referencia a empresa debía ser NULL, pero
cuando trato de preguntar por ella C# [if (client.CompanyRef == null) ], Neo
retorna un error de objeto no encontrado.
 
Cualquier ayuda, gracias...
 
Salu2
Omar


Responder a