// Modify default (Update all attributes of the class)

        public void ModifyDefault(PuntoDeItinerarioEN puntoDeItinerario)
        {
            try
            {
                SessionInitializeTransaction();
                PuntoDeItinerarioEN puntoDeItinerarioEN = (PuntoDeItinerarioEN)session.Load(typeof(PuntoDeItinerarioEN), puntoDeItinerario.Id);

                puntoDeItinerarioEN.Orden = puntoDeItinerario.Orden;


                session.Update(puntoDeItinerarioEN);
                SessionCommit();
            }

            catch (Exception ex) {
                SessionRollBack();
                if (ex is DSMGenNHibernate.Exceptions.ModelException)
                {
                    throw ex;
                }
                throw new DSMGenNHibernate.Exceptions.DataLayerException("Error in PuntoDeItinerarioCAD.", ex);
            }


            finally
            {
                SessionClose();
            }
        }
        public PuntoDeItinerarioEN ReadOIDDefault(int id
                                                  )
        {
            PuntoDeItinerarioEN puntoDeItinerarioEN = null;

            try
            {
                SessionInitializeTransaction();
                puntoDeItinerarioEN = (PuntoDeItinerarioEN)session.Get(typeof(PuntoDeItinerarioEN), id);
                SessionCommit();
            }

            catch (Exception ex) {
                SessionRollBack();
                if (ex is DSMGenNHibernate.Exceptions.ModelException)
                {
                    throw ex;
                }
                throw new DSMGenNHibernate.Exceptions.DataLayerException("Error in PuntoDeItinerarioCAD.", ex);
            }


            finally
            {
                SessionClose();
            }

            return(puntoDeItinerarioEN);
        }
        public void Destroy(int id
                            )
        {
            try
            {
                SessionInitializeTransaction();
                PuntoDeItinerarioEN puntoDeItinerarioEN = (PuntoDeItinerarioEN)session.Load(typeof(PuntoDeItinerarioEN), id);
                session.Delete(puntoDeItinerarioEN);
                SessionCommit();
            }

            catch (Exception ex) {
                SessionRollBack();
                if (ex is DSMGenNHibernate.Exceptions.ModelException)
                {
                    throw ex;
                }
                throw new DSMGenNHibernate.Exceptions.DataLayerException("Error in PuntoDeItinerarioCAD.", ex);
            }


            finally
            {
                SessionClose();
            }
        }
        public int New_(PuntoDeItinerarioEN puntoDeItinerario)
        {
            try
            {
                SessionInitializeTransaction();
                if (puntoDeItinerario.Itinerario != null)
                {
                    // Argumento OID y no colección.
                    puntoDeItinerario.Itinerario = (DSMGenNHibernate.EN.DSM.ItinerarioEN)session.Load(typeof(DSMGenNHibernate.EN.DSM.ItinerarioEN), puntoDeItinerario.Itinerario.Id);

                    puntoDeItinerario.Itinerario.PuntoDeItinerario
                    .Add(puntoDeItinerario);
                }

                session.Save(puntoDeItinerario);
                SessionCommit();
            }

            catch (Exception ex) {
                SessionRollBack();
                if (ex is DSMGenNHibernate.Exceptions.ModelException)
                {
                    throw ex;
                }
                throw new DSMGenNHibernate.Exceptions.DataLayerException("Error in PuntoDeItinerarioCAD.", ex);
            }


            finally
            {
                SessionClose();
            }

            return(puntoDeItinerario.Id);
        }
        public void Modify(int p_PuntoDeItinerario_OID, int p_orden)
        {
            PuntoDeItinerarioEN puntoDeItinerarioEN = null;

            //Initialized PuntoDeItinerarioEN
            puntoDeItinerarioEN       = new PuntoDeItinerarioEN();
            puntoDeItinerarioEN.Id    = p_PuntoDeItinerario_OID;
            puntoDeItinerarioEN.Orden = p_orden;
            //Call to PuntoDeItinerarioCAD

            _IPuntoDeItinerarioCAD.Modify(puntoDeItinerarioEN);
        }
        public int New_(int p_orden, int p_itinerario)
        {
            PuntoDeItinerarioEN puntoDeItinerarioEN = null;
            int oid;

            //Initialized PuntoDeItinerarioEN
            puntoDeItinerarioEN       = new PuntoDeItinerarioEN();
            puntoDeItinerarioEN.Orden = p_orden;


            if (p_itinerario != -1)
            {
                // El argumento p_itinerario -> Property itinerario es oid = false
                // Lista de oids id
                puntoDeItinerarioEN.Itinerario    = new DSMGenNHibernate.EN.DSM.ItinerarioEN();
                puntoDeItinerarioEN.Itinerario.Id = p_itinerario;
            }

            //Call to PuntoDeItinerarioCAD

            oid = _IPuntoDeItinerarioCAD.New_(puntoDeItinerarioEN);
            return(oid);
        }