예제 #1
0
        public bool BuscarTipoUsuario(int id_usuario, String tipoBuscado)
        {
            DAOMaster daoMatriz = new DAOMaster();

            try
            {
                if (tipoBuscado == "aprobador")
                {
                    daoMatriz.SetearQuery("select * from MATRIZ_APROBACION where id_usuario_aprobador = @id_usuario_aprobador");
                    daoMatriz.AgregarParametro("@id_usuario_aprobador", id_usuario);
                }
                else
                {
                    daoMatriz.SetearQuery("select * from MATRIZ_APROBACION where id_usuario_solicitante = @id_usuario_solicitante");
                    daoMatriz.AgregarParametro("@id_usuario_solicitante", id_usuario);
                }
                daoMatriz.EjecutarLector();
                while (daoMatriz.lector.Read())
                {
                    return(true);
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
                daoMatriz.CerrarConexion();
            }
            return(false);
        }
예제 #2
0
        public ArticuloModelo ListarUnArticulo(int id)
        {
            ArticuloModelo articulo = new ArticuloModelo();
            DAOMaster      dao      = new DAOMaster();

            try
            {
                dao.SetearQuery("select * from ARTICULO where id_articulo = @id_articulo");
                dao.AgregarParametro("@id_articulo", id);
                dao.EjecutarLector();
                while (dao.lector.Read())
                {
                    articulo                      = new ArticuloModelo();
                    articulo.id_articulo          = dao.lector.GetInt32(0);
                    articulo.codigo_articulo      = dao.lector.GetString(1);
                    articulo.descripcion_articulo = dao.lector.GetString(2);
                    articulo.habilitado_articulo  = dao.lector.GetInt32(3);
                    return(articulo);
                }
                return(articulo);
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
                dao.CerrarConexion();
                dao = null;
            }
        }
예제 #3
0
        public List <ArticuloModelo> ListarArticuloConIf(int if1, int if2)
        {
            List <ArticuloModelo> lista = new List <ArticuloModelo>();
            ArticuloModelo        aux   = new ArticuloModelo();
            DAOMaster             datos = new DAOMaster();

            try
            {
                datos.SetearQuery("select * from ARTICULO");
                datos.EjecutarLector();
                while (datos.lector.Read())
                {
                    if (if1 == datos.lector.GetInt32(3) || if2 == datos.lector.GetInt32(3))
                    {
                        aux                      = new ArticuloModelo();
                        aux.id_articulo          = datos.lector.GetInt32(0);
                        aux.codigo_articulo      = datos.lector.GetString(1);
                        aux.descripcion_articulo = datos.lector.GetString(2);
                        aux.habilitado_articulo  = datos.lector.GetInt32(3);
                        lista.Add(aux);
                    }
                }
                return(lista);
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
                datos.CerrarConexion();
                datos = null;
            }
        }
예제 #4
0
        public int BuscarNroRemito(int id_solicitud)
        {
            int       result = 0;
            DAOMaster dao    = new DAOMaster();

            try
            {
                dao.SetearQuery("select id_remito from REMITO where id_solicitud = @id_solicitud");
                dao.AgregarParametro("@id_solicitud", id_solicitud);
                dao.EjecutarLector();
                while (dao.lector.Read())
                {
                    result = dao.lector.GetInt32(0);
                    return(result);
                }
                return(result);
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
                dao.CerrarConexion();
            }
        }
예제 #5
0
        public RemitoModelo ListarUnRemito(int id_remito)
        {
            RemitoModelo remito = new RemitoModelo();
            DAOMaster    dao    = new DAOMaster();

            try
            {
                dao.SetearQuery("select * from REMITO where id_remito = @id_remito");
                dao.AgregarParametro("@id_remito", id_remito);
                dao.EjecutarLector();
                while (dao.lector.Read())
                {
                    remito               = new RemitoModelo();
                    remito.id_remito     = dao.lector.GetInt32(0);
                    remito.id_solicitud  = dao.lector.GetInt32(1);
                    remito.numero_remito = dao.lector.GetInt32(2);
                    return(remito);
                }
                return(remito);
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
                dao.CerrarConexion();
            }
        }
예제 #6
0
        public List <RemitoModelo> ListarTodosRemitos()
        {
            List <RemitoModelo> lista = new List <RemitoModelo>();
            DAOMaster           dao   = new DAOMaster();

            try
            {
                dao.SetearQuery("select * from REMITO");
                dao.EjecutarLector();
                while (dao.lector.Read())
                {
                    RemitoModelo remito = new RemitoModelo();
                    remito.id_remito     = dao.lector.GetInt32(0);
                    remito.id_solicitud  = dao.lector.GetInt32(1);
                    remito.numero_remito = dao.lector.GetInt32(2);
                    lista.Add(remito);
                }
                return(lista);
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
                dao.CerrarConexion();
                dao = null;
            }
        }
예제 #7
0
        public int UltimoRegistroRemito()
        {
            int       result = 0;
            DAOMaster datos  = new DAOMaster();

            try
            {
                datos.SetearQuery("select max(id_remito) from REMITO");
                datos.EjecutarLector();
                while (datos.lector.Read())
                {
                    result = datos.lector.GetInt32(0);
                    return(result);
                }
            }
            catch (Exception ex)
            {
                return(0);

                throw ex;
            }
            finally
            {
                datos.CerrarConexion();
                datos = null;
            }
            return(result);
        }
예제 #8
0
        public bool ModificarCai(CAIModelo cai)
        {
            DAOMaster dao    = new DAOMaster();
            bool      result = false;

            try
            {
                dao.SetearQuery("Update CAI set nro_cai=@nro_cai, punto_venta=@punto_venta, fecha_inicio=@fecha_inicio, fecha_fin=@fecha_fin Where id_cai=@id_cai");
                dao.AgregarParametro("@id_cai", cai.id_cai);
                dao.AgregarParametro("@nro_cai", cai.nro_cai);
                dao.AgregarParametro("@punto_venta", cai.punto_venta);
                dao.AgregarParametro("@fecha_inicio", cai.fecha_inicio);
                dao.AgregarParametro("@fecha_fin", cai.fecha_fin);
                dao.EjecutarAccion();
                result = true;
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
                dao.CerrarConexion();
            }
            return(result);
        }
예제 #9
0
        public bool ModificarUsuario(UsuarioModelo usuario, string condicion)
        {
            DAOMaster dao    = new DAOMaster();
            bool      result = false;

            try
            {
                dao.SetearQuery("Update USUARIO set nombre=@nombre, usuario_code1=@usuario_code1, email=@email, password=@password, usuario_tipo=@usuario_tipo, usuario_habilitado=@usuario_habilitado  Where id_usuario=@id_usuario");
                dao.AgregarParametro("@id_usuario", usuario.id_usuario);
                dao.AgregarParametro("@nombre", usuario.nombre);
                dao.AgregarParametro("@usuario_code1", usuario.usuario_code1);
                dao.AgregarParametro("@email", usuario.email);
                dao.AgregarParametro("@password", usuario.password);
                dao.AgregarParametro("@usuario_tipo", usuario.usuario_tipo);
                if (condicion == "modificacion")
                {
                    dao.AgregarParametro("@usuario_habilitado", 1);
                }
                else
                {
                    dao.AgregarParametro("@usuario_habilitado", 0);
                };
                dao.EjecutarAccion();
                result = true;
            }
            catch (Exception ex)
            {
                throw ex;
            }
            return(result);
        }
예제 #10
0
        public long BuscarCaiVigente()
        {
            DateTime  cai;
            DAOMaster dao    = new DAOMaster();
            long      result = 0;

            try
            {
                dao.SetearQuery("select * from CAI");
                dao.EjecutarLector();
                while (dao.lector.Read())
                {
                    cai = dao.lector.GetDateTime(4);
                    if (cai > DateTime.Now)
                    {
                        result = dao.lector.GetInt64(1);
                        return(result);
                    }
                }
                return(result);
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
                dao.CerrarConexion();
            }
        }
예제 #11
0
        public CAIModelo ListarUnCAI(int id)
        {
            CAIModelo cai = new CAIModelo();
            DAOMaster dao = new DAOMaster();

            try
            {
                dao.SetearQuery("select * from CAI Where id_cai=@id_cai");
                dao.AgregarParametro("@id_cai", id);
                dao.EjecutarLector();
                while (dao.lector.Read())
                {
                    cai.id_cai       = dao.lector.GetInt32(0);
                    cai.nro_cai      = Convert.ToInt64(dao.lector.GetInt64(1));
                    cai.punto_venta  = dao.lector.GetInt32(2);
                    cai.fecha_inicio = Convert.ToDateTime(dao.lector.GetDateTime(3));
                    cai.fecha_fin    = Convert.ToDateTime(dao.lector.GetDateTime(4));
                    return(cai);
                }
                return(cai);
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
                dao.CerrarConexion();
            }
        }
예제 #12
0
        public bool ValidarImpresionCai()
        {
            DAOMaster dao    = new DAOMaster();
            bool      result = false;

            try
            {
                dao.SetearQuery("select max(fecha_fin) from CAI");
                dao.EjecutarLector();
                while (dao.lector.Read())
                {
                    DateTime fechaCai = dao.lector.GetDateTime(0);
                    DateTime ahora    = DateTime.Now;
                    if (ahora < fechaCai)
                    {
                        result = true;
                    }
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
                dao.CerrarConexion();
            }
            return(result);
        }
예제 #13
0
        public String NombreEmpresa(int id)
        {
            String    empresa = "";
            DAOMaster dao     = new DAOMaster();

            try
            {
                dao.SetearQuery("select razon_social from EMPRESA where id_empresa = @id_empresa");
                dao.AgregarParametro("@id_empresa", id);
                dao.EjecutarLector();
                while (dao.lector.Read())
                {
                    empresa = dao.lector.GetString(0);
                    return(empresa);
                }
                return(empresa);
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
                dao.CerrarConexion();
                dao = null;
            }
        }
예제 #14
0
        public int UltimoRegistroSolicitud()
        {
            int       result = 0;
            DAOMaster datos  = new DAOMaster();

            try
            {
                datos.SetearQuery("select max(id_solicitud) from SOLICITUD_CABECERA");
                datos.EjecutarLector();
                while (datos.lector.Read())
                {
                    result = datos.lector.GetInt32(0);
                    return(result);
                }
            }
            catch (Exception ex)
            {
                return(result);
                //throw ex;
            }
            finally
            {
                datos.CerrarConexion();
            }
            return(result);
        }
예제 #15
0
        public UsuarioModelo ListarUnUsuarioView(int id)
        {
            UsuarioModelo usuario = new UsuarioModelo();
            DAOMaster     dao     = new DAOMaster();

            try
            {
                dao.SetearQuery("select * from usuarioListarView where id_usuario = @id_usuario");
                dao.AgregarParametro("@id_usuario", id);
                dao.EjecutarLector();
                while (dao.lector.Read())
                {
                    usuario                    = new UsuarioModelo();
                    usuario.id_usuario         = dao.lector.GetInt32(0);
                    usuario.nombre             = dao.lector.GetString(1);
                    usuario.usuario_code1      = dao.lector.GetString(2);
                    usuario.email              = dao.lector.GetString(3);
                    usuario.password           = dao.lector.GetString(4);
                    usuario.usuario_tipo       = dao.lector.GetInt32(5);
                    usuario.usuario_habilitado = dao.lector.GetInt32(6);
                    return(usuario);
                }
                return(usuario);
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
                dao.CerrarConexion();
                dao = null;
            }
        }
예제 #16
0
        public String NombreUsuario(int id)
        {
            String    nombre = "";
            DAOMaster dao    = new DAOMaster();

            try
            {
                dao.SetearQuery("select nombre from usuarioListarView where id_usuario = @id_usuario");
                dao.AgregarParametro("@id_usuario", id);
                dao.EjecutarLector();
                while (dao.lector.Read())
                {
                    nombre = dao.lector.GetString(0);
                    return(nombre);
                }
                return(nombre);
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
                dao.CerrarConexion();
            }
        }
예제 #17
0
        public List <CAIModelo> ListarCAI()
        {
            List <CAIModelo> lista = new List <CAIModelo>();
            CAIModelo        aux;
            DAOMaster        dao = new DAOMaster();

            try
            {
                dao.SetearQuery("select * from CAI");
                dao.EjecutarLector();
                while (dao.lector.Read())
                {
                    aux              = new CAIModelo();
                    aux.id_cai       = dao.lector.GetInt32(0);
                    aux.nro_cai      = Convert.ToInt64(dao.lector.GetInt64(1));
                    aux.punto_venta  = dao.lector.GetInt32(2);
                    aux.fecha_inicio = Convert.ToDateTime(dao.lector.GetDateTime(3));
                    aux.fecha_fin    = Convert.ToDateTime(dao.lector.GetDateTime(4));
                    lista.Add(aux);
                }
                return(lista);
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
                dao.CerrarConexion();
            }
        }
예제 #18
0
        public ArchivoAdjuntoModelo ListarUnArchivo(int id_solicitud)
        {
            ArchivoAdjuntoModelo archivo = new ArchivoAdjuntoModelo();
            DAOMaster            dao     = new DAOMaster();

            try
            {
                dao.SetearQuery("select * from ARCHIVO_ADJUNTO where id_solicitud = @id_solicitud");
                dao.AgregarParametro("@id_solicitud", id_solicitud);
                dao.EjecutarLector();
                while (dao.lector.Read())
                {
                    archivo = new ArchivoAdjuntoModelo();
                    archivo.id_solicitud        = dao.lector.GetInt32(0);
                    archivo.descripcion_archivo = dao.lector.GetString(1);
                    archivo.fecha_upload        = dao.lector.GetDateTime(2);
                    return(archivo);
                }
                return(archivo);
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
                dao.CerrarConexion();
                dao = null;
            }
        }
예제 #19
0
        public List <MatrizAprobacion> ListarTodo()
        {
            List <MatrizAprobacion> lista = new List <MatrizAprobacion>();
            MatrizAprobacion        aux   = new MatrizAprobacion();
            DAOMaster datos = new DAOMaster();

            try
            {
                datos.SetearQuery("select * from MATRIZ_APROBACION");
                datos.EjecutarLector();
                while (datos.lector.Read())
                {
                    aux           = new MatrizAprobacion();
                    aux.id_matriz = datos.lector.GetInt32(0);
                    aux.id_usuario_solicitante = datos.lector.GetInt32(1);
                    aux.id_usuario_aprobador   = datos.lector.GetInt32(2);
                    lista.Add(aux);
                }
                return(lista);
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
                datos.CerrarConexion();
                datos = null;
            }
        }
예제 #20
0
        public bool AgregarEmpresa(EmpresaModelo empresa)
        {
            DAOMaster dao    = new DAOMaster();
            bool      result = false;

            try
            {
                dao.SetearQuery("Insert into EMPRESA values(@cuit, @razonSocial, @nroSAP, @dirLegal, @dirEntrega, @telefono, @email, @tipoEmpresa, @habilitadoEmpresa)");
                dao.AgregarParametro("@cuit", empresa.cuit);
                dao.AgregarParametro("@razonSocial", empresa.razon_social);
                dao.AgregarParametro("@nroSAP", empresa.numero_sap_empresa);
                dao.AgregarParametro("@dirLegal", empresa.direccion_legal);
                dao.AgregarParametro("@dirEntrega", empresa.direccion_entrega);
                dao.AgregarParametro("@telefono", empresa.telefono);
                dao.AgregarParametro("@email", empresa.email);
                dao.AgregarParametro("@tipoEmpresa", empresa.tipo_empresa);
                dao.AgregarParametro("@habilitadoEmpresa", 1);
                dao.EjecutarAccion();
                result = true;
            }
            catch (Exception ex)
            {
                throw ex;
            }
            return(result);
        }
예제 #21
0
        public bool ModificarEmpresa(EmpresaModelo empresa, string condicion)
        {
            DAOMaster dao    = new DAOMaster();
            bool      result = false;

            try
            {
                dao.SetearQuery("Update EMPRESA set cuit=@cuit, razon_social=@razonSocial, numero_sap_empresa=@nroSAP, direccion_legal=@dirLegal, direccion_entrega=@dirEntrega, telefono=@telefono, email=@email, tipo_empresa=@tipoEmpresa, habilitado_empresa=@habilitadoEmpresa Where id_empresa=@id_empresa");
                dao.AgregarParametro("@id_empresa", empresa.id_empresa);
                dao.AgregarParametro("@cuit", empresa.cuit);
                dao.AgregarParametro("@razonSocial", empresa.razon_social);
                dao.AgregarParametro("@nroSAP", empresa.numero_sap_empresa);
                dao.AgregarParametro("@dirLegal", empresa.direccion_legal);
                dao.AgregarParametro("@dirEntrega", empresa.direccion_entrega);
                dao.AgregarParametro("@telefono", empresa.telefono);
                dao.AgregarParametro("@email", empresa.email);
                dao.AgregarParametro("@tipoEmpresa", empresa.tipo_empresa);
                if (condicion == "modificacion")
                {
                    dao.AgregarParametro("@habilitadoEmpresa", 1);
                }
                else
                {
                    dao.AgregarParametro("@habilitadoEmpresa", 0);
                };
                dao.EjecutarAccion();
                result = true;
            }
            catch (Exception ex)
            {
                throw ex;
            }
            return(result);
        }
예제 #22
0
        public List <RemitoTipoModelo> ListarTodosTipos()
        {
            List <RemitoTipoModelo> lista = new List <RemitoTipoModelo>();
            DAOMaster dao = new DAOMaster();

            try
            {
                dao.SetearQuery("select * from REMITO_TIPO");
                dao.EjecutarLector();
                while (dao.lector.Read())
                {
                    RemitoTipoModelo remitoTipo = new RemitoTipoModelo();
                    remitoTipo.id_tipo_remito     = dao.lector.GetInt32(0);
                    remitoTipo.descripcion_remito = dao.lector.GetString(1);
                    lista.Add(remitoTipo);
                }
                return(lista);
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
                dao.CerrarConexion();
                dao = null;
            }
        }
예제 #23
0
        public List <SolicitudDetalleModelo> ListarDetalle()
        {
            List <SolicitudDetalleModelo> lista = new List <SolicitudDetalleModelo>();
            DAOMaster dao = new DAOMaster();

            try
            {
                dao.SetearQuery("select * from SOLICITUD_CABECERA");
                dao.EjecutarLector();
                while (dao.lector.Read())
                {
                    SolicitudDetalleModelo solicitud = new SolicitudDetalleModelo();
                    solicitud.id_solicitud = dao.lector.GetInt32(0);
                    solicitud.id_articulo  = dao.lector.GetInt32(1);
                    solicitud.cantidad     = dao.lector.GetInt32(2);
                    lista.Add(solicitud);
                }
                return(lista);
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
                dao.CerrarConexion();
                dao = null;
            }
        }
예제 #24
0
        public bool Eliminar(int id_matriz)
        {
            DAOMaster dao    = new DAOMaster();
            bool      result = false;

            try
            {
                dao.SetearQuery("DELETE MATRIZ_APROBACION Where id_matriz=@id_matriz");
                dao.AgregarParametro("@id_matriz", id_matriz);
                dao.EjecutarAccion();
                result = true;
            }
            catch (Exception ex)
            {
                throw ex;
            }
            return(result);
        }
예제 #25
0
        public bool Agregar(int idSolicitante, int idAprobador)
        {
            DAOMaster dao    = new DAOMaster();
            bool      result = false;

            try
            {
                dao.SetearQuery("Insert into MATRIZ_APROBACION values(@id_usuario_solicitante, @id_usuario_aprobador)");
                dao.AgregarParametro("@id_usuario_solicitante", idSolicitante);
                dao.AgregarParametro("@id_usuario_aprobador", idAprobador);
                dao.EjecutarAccion();
                result = true;
            }
            catch (Exception ex)
            {
                throw ex;
            }
            return(result);
        }
예제 #26
0
        public bool Modificar(MatrizAprobacion matriz)
        {
            DAOMaster dao    = new DAOMaster();
            bool      result = false;

            try
            {
                dao.SetearQuery("Update MATRIZ_APROBACION set id_usuario_solicitante=@id_usuario_solicitante, id_usuario_aprobador=@id_usuario_aprobador Where id_matriz=@id_matriz");
                dao.AgregarParametro("@id_usuario_solicitante", matriz.id_usuario_solicitante);
                dao.AgregarParametro("@id_usuario_aprobador", matriz.id_usuario_aprobador);
                dao.AgregarParametro("@id_matriz", matriz.id_matriz);
                dao.EjecutarAccion();
                result = true;
            }
            catch (Exception ex)
            {
                throw ex;
            }
            return(result);
        }
예제 #27
0
        public bool AgregarArticulo(ArticuloModelo articulo)
        {
            DAOMaster dao    = new DAOMaster();
            bool      result = false;

            try
            {
                dao.SetearQuery("Insert into ARTICULO values(@codigo_articulo, @descripcion_articulo, @habilitado_articulo)");

                dao.AgregarParametro("@codigo_articulo", articulo.codigo_articulo);
                dao.AgregarParametro("@descripcion_articulo", articulo.descripcion_articulo);
                dao.AgregarParametro("@habilitado_articulo", 1);
                dao.EjecutarAccion();
                result = true;
            }
            catch (Exception ex)
            {
                throw ex;
            }
            return(result);
        }
예제 #28
0
        public bool Agregar(ArchivoAdjuntoModelo archivo)
        {
            DAOMaster dao    = new DAOMaster();
            bool      result = false;

            try
            {
                dao.SetearQuery("Insert into ARCHIVO_ADJUNTO values(@id_solicitud, @descripcion_archivo, @fecha_upload)");

                dao.AgregarParametro("@id_solicitud", archivo.id_solicitud);
                dao.AgregarParametro("@descripcion_archivo", archivo.descripcion_archivo);
                dao.AgregarParametro("@fecha_upload", archivo.fecha_upload);
                dao.EjecutarAccion();
                result = true;
            }
            catch (Exception ex)
            {
                throw ex;
            }
            return(result);
        }
예제 #29
0
        public bool ModificarArticulo(ArticuloModelo articulo)
        {
            DAOMaster dao    = new DAOMaster();
            bool      result = false;

            try
            {
                dao.SetearQuery("Update ARTICULO set codigo_articulo=@codigo_articulo, descripcion_articulo=@descripcion_articulo, habilitado_articulo=@habilitado_articulo Where id_articulo=@id_articulo");
                dao.AgregarParametro("@id_articulo", articulo.id_articulo);
                dao.AgregarParametro("@codigo_articulo", articulo.codigo_articulo);
                dao.AgregarParametro("@descripcion_articulo", articulo.descripcion_articulo);
                dao.AgregarParametro("@habilitado_articulo", articulo.habilitado_articulo);
                dao.EjecutarAccion();
                result = true;
            }
            catch (Exception ex)
            {
                throw ex;
            }
            return(result);
        }
예제 #30
0
        public bool AgregarCai(CAIModelo cai)
        {
            DAOMaster dao    = new DAOMaster();
            bool      result = false;

            try
            {
                dao.SetearQuery("Insert into CAI values(@nro_cai, @punto_venta, @fecha_inicio, @fecha_fin)");
                dao.AgregarParametro("@nro_cai", cai.nro_cai);
                dao.AgregarParametro("@punto_venta", cai.punto_venta);
                dao.AgregarParametro("@fecha_inicio", cai.fecha_inicio);
                dao.AgregarParametro("@fecha_fin", cai.fecha_fin);
                dao.EjecutarAccion();
                result = true;
            }
            catch (Exception ex)
            {
                throw ex;
            }
            return(result);
        }