SUGERENCIA para GeneXus (2) : Poder especificar NULL en Data Providers
La sugerencia, seria poder especificar de una forma sencilla el insert de un registro con un atributo nulo en la base de datos.
Ejemplo:
Ejemplo: Persona
* PersonaId
CiudadID - Nullable = True
que tiene las propiedades
Data Provider = True
Use To = Populate Data.
En la carga inicial, necesito agregar registros con CiudadID NULL.
Cual seria la mejor forma de hacer esto?.
Siento que me estoy complicando con un tema que debe tener una solución sencilla, pero no le encuentro la vuelta.
Probe varias opciones en el Personas_DataProvider asociado a la transaccion.
PersonasCollection {
//Opcion 1 - No poner Ciudad en el DP (no funciona)
Persona
{
PersonaID = 111
// CiudadID
}
// Opcion 2 - Intentar hacer un SetNull()
Persona
{
PersonaID = 222
CiudadID.SetNull() //Da error y no deja salvarlo.
}
//Opcion 3 - Poner un valor especial (en este caso el Empty) y cambiarlo en una regla (funciona pero es horrible)
Persona
{
PersonaID = 333
CiudadID.SetEmpty()
}
}
y para que funcione la opcion 3, poner la regla en la trn,
[BC] { CiudadID.SetNull() if CiudadID.isEmpty(); }
Seria bueno contar con alguna sintaxis mas sencilla.
La única opción que funciona (Opcion 3) cuando se mira el código, parece que va a insertar un valor vacío, para luego terminar grabando un valor NULL.
La única opción que funciona (Opcion 3) cuando se mira el código, parece que va a insertar un valor vacío, para luego terminar grabando un valor NULL.
Para mi seria mucho mejor tener algo así:
Persona
{
PersonaID = 444
CiudadID: null
CiudadID: null
}
Comentarios
Publicar un comentario
1) Lee el post
2) Poné tu opinión sobre el mismo.
Todos los comentarios serán leidos y la mayoría son publicados.