public virtual void CopyValues(CobroREARecord source)
        {
            if (source == null)
            {
                return;
            }

            Oid                 = source.Oid;
            _oid_cobro          = source.OidCobro;
            _oid_expediente     = source.OidExpediente;
            _cantidad           = source.Cantidad;
            _oid_expediente_rea = source.OidExpedienteRea;
            _fecha_asignacion   = source.FechaAsignacion;
        }
        internal void Update(Charge parent)
        {
            // if we're not dirty then don't update the database
            if (!this.IsDirty)
            {
                return;
            }

            this.OidCobro = parent.Oid;

            try
            {
                SessionCode = parent.SessionCode;
                CobroREARecord obj = Session().Get <CobroREARecord>(Oid);
                obj.CopyValues(Base.Record);
                Session().Update(obj);
            }
            catch (Exception ex)
            {
                throw new iQPersistentException(iQExceptionHandler.GetAllMessages(ex));
            }

            MarkOld();
        }