protected override void OnDeleting() { base.OnDeleting(); //caso especial: si estamos eliminando el interviniente, como parte de eliminar la poliza, lo permitimos siempre if (Session.IsObjectMarkedDeleted(Documento.Poliza)) { return; } //bloquear la eliminación de intervinientes básicos de la póliza (referenciados en el objeto poliza) var ident = Identificadores.GetInstance(Session); if (Rol != null && ident.RolAseguradora != null && Rol.Oid == ident.RolAseguradora.Oid) { throw new UserFriendlyException( "No se puede eliminar este registro porque define la aseguradora principal de la póliza"); } if (Rol != null && ident.RolTomador != null && Rol.Oid == ident.RolTomador.Oid) { throw new UserFriendlyException( "No se puede eliminar este registro porque define el tomador principal de la póliza"); } if (Rol != null && ident.RolOrganizador != null && Rol.Oid == ident.RolOrganizador.Oid) { throw new UserFriendlyException( "No se puede eliminar este registro porque define el organizador principal de la póliza"); } }
public override void AfterConstruction() { base.AfterConstruction(); //Valores iniciales Estado = Identificadores.GetInstance(Session).DocumentoEstadoInicial; CantidadCuotas = 1; }
public void GenerarComprobanteVenta() { if (Comprobante != null) { throw new UserFriendlyException( string.Format( "No se puede pasar al estado {0}. El documento aún no tiene comprobante generado.\nEsto puede deberse a una configuración inválida. Comunique el error al Administrador.", Estado.Nombre)); } if (Cuotas.Count == 0) { throw new UserFriendlyException("Debe ingresar al menos una cuota."); } if (EmitidaFecha == null) { throw new UserFriendlyException("Debe ingresar la Fecha de Emisión."); } var talonario = Identificadores.GetInstance(Session).TalonarioDocumentos; if (talonario == null) { throw new UserFriendlyException( "Debe indicar el talonario asignado para los comprobantes de venta de documentos."); } var nuevoComprobante = new Comprobante(Session) { Propio = false, Destinatario = Poliza.Tomador.Interviniente, Fecha = EmitidaFecha.Value, Tipo = talonario.ComprobanteTipo, Sector = talonario.Sector, Especie = Poliza.Especie, Cambio = Poliza.Cambio, CantidadCuotas = CantidadCuotas, Estado = ComprobanteEstado.Confirmado }; ActualizarComprobanteVenta(nuevoComprobante); Comprobante = nuevoComprobante; }