diff --git a/Sistemas/UsuarioDetalle.aspx.vb b/Sistemas/UsuarioDetalle.aspx.vb index 2a596754f..64e54fe8e 100644 --- a/Sistemas/UsuarioDetalle.aspx.vb +++ b/Sistemas/UsuarioDetalle.aspx.vb @@ -794,485 +794,490 @@ Partial Class Sistemas_UsuarioDetalle Dim TieneError = False Dim EsNuevoUsuario As Boolean = False - - 'Cargo la ultima empresa consultada en asignaciones - Dim DtValida = DtAsignacionesMultiEmpresa.FiltraParametros(String.Format("CveEmpresa = {0}", CveEmpresaAnterior)) - If DtValida.Rows.Count > 0 Then - Dim dr = DtAsignacionesMultiEmpresa.Select(String.Format("CveEmpresa = {0}", CveEmpresaAnterior)) - dr(0)("CveEmpresa") = CveEmpresaAnterior - dr(0)("CvePersonal") = DdlPersonal.SelectedValue.ToEntero - dr(0)("CveVendedor") = DdlVendedor.SelectedValue.ToEntero - dr(0)("CveSucursal") = DdlSubProyectos.SelectedValue.ToEntero - dr(0)("CveAlmacen") = DdlAlmacenGeneral.SelectedValue.ToEntero - dr(0)("CveTipoDocumento") = DdlTipoDocumento.SelectedValue - dr(0).AcceptChanges() - Else - Dim Row As DataRow = Nothing - Row = DtAsignacionesMultiEmpresa.NewRow() - Row("CveEmpresa") = CveEmpresaAnterior - Row("CvePersonal") = DdlPersonal.SelectedValue.ToEntero - Row("CveVendedor") = DdlVendedor.SelectedValue.ToEntero - Row("CveSucursal") = DdlSubProyectos.SelectedValue.ToEntero - Row("CveAlmacen") = DdlAlmacenGeneral.SelectedValue.ToEntero - Row("CveTipoDocumento") = DdlTipoDocumento.SelectedValue - DtAsignacionesMultiEmpresa.Rows.Add(Row) - End If - - - 'REGISTRA O ACTUALIZA LOS DATOS GENERALES DEL USUARIO - If CveUsuario = -1 Then - CveUsuario = ObjUsuarios.AddUsuario(TxtUsuario.Text.Trim, Encripta(ContraseñaPredeterminada), TxtNombre.Text.Trim, DdlRol.SelectedValue.ToEntero, TxtCorreo.Text.Trim, DdlPersonal.SelectedValue.ToEntero, DdlVendedor.SelectedValue.ToEntero, ChkCambiarContraseña.Checked, UsuarioActual.CveUsuario, DdlEmpresa.SelectedValue.ToEntero, DdlSubProyectos.SelectedValue.ToEntero, CveAlmacenAsignado:=DdlAlmacenGeneral.SelectedValue.ToEntero, AsignarSubProyecto:=ChkAsignarSubProyecto.Checked, AsignarOC:=ChkAsignarOC.Checked, DescuentoAutorizado:=TxtDescuentoAutorizado.Text.ToDouble) - EsNuevoUsuario = True - If CveUsuario = -1 Then - TieneError = True - End If - - For Each Row As DataRow In DtAsignacionesMultiEmpresa.Rows - If Not ObjUsuarios.AddUsuarioAsignar(Row("CvePersonal").ToString.ToEntero, Row("CveVendedor").ToString.ToEntero, Row("CveAlmacen").ToString.ToEntero, Row("CveSucursal").ToString.ToEntero, Row("CveTipoDocumento").ToString, Row("CveEmpresa").ToString.ToEntero, CveUsuario) Then - TieneError = True - End If - Next - Else - If Not ObjUsuarios.UpdateUsuario(TxtUsuario.Text.Trim, TxtNombre.Text.Trim, DdlRol.SelectedValue.ToEntero, TxtCorreo.Text.Trim, DdlPersonal.SelectedValue.ToEntero, DdlVendedor.SelectedValue.ToEntero, ChkCambiarContraseña.Checked, ChkEstatus.Checked, DdlEmpresa.SelectedValue.ToEntero, CveUsuario, DdlAlmacenGeneral.SelectedValue.ToEntero, DdlSubProyectos.SelectedValue.ToEntero, UsuarioActual.CveUsuario, AsignarSubProyecto:=ChkAsignarSubProyecto.Checked, AsignarOC:=ChkAsignarOC.Checked, DescuentoAutorizado:=TxtDescuentoAutorizado.Text.ToDouble) Then - TieneError = True - End If - - For Each Row As DataRow In DtAsignacionesMultiEmpresa.Rows - If Not ObjUsuarios.UpdateUsuarioAsignar(Row("CvePersonal").ToString.ToEntero, Row("CveVendedor").ToString.ToEntero, Row("CveAlmacen").ToString.ToEntero, Row("CveSucursal").ToString.ToEntero, Row("CveEmpresa").ToString.ToEntero, Row("CveTipoDocumento").ToString, CveUsuario, CveUsuarioModifico:=UsuarioActual.CveUsuario) Then - TieneError = True - End If - Next - End If - - 'GUARDA ACCESO MODULOS - If Not TieneError Then - For Each Row As GridViewRow In GvModulosAcceso.Rows - 'Nota, permitir, tiene 3 valores, ''(Vacio), no se ha estipulado, '0' que se denego, '1' permitido(aplicado solo cuando no viene del rol - If Row.DataKey("CveModuloAcceso") <> "" Then - If Row.DataKey("Permitir") = "" AndAlso Row.FCCheckBox("ChkDenegar").Checked OrElse Row.DataKey("Permitir") = "0" AndAlso Row.FCCheckBox("ChkDenegar").Checked = False Then - If Not ObjUsuarios.UpdateUsuariosModulos(CveUsuario, Row.DataKey("CveModulo").ToEntero, Not Row.FCCheckBox("ChkDenegar").Checked, UsuarioActual.CveUsuario) Then - TieneError = True - Exit For - End If - End If - Else - If Row.DataKey("Permitir") = "" AndAlso Row.FCCheckBox("ChkPermitir").Checked OrElse Row.DataKey("Permitir") = "1" AndAlso Row.FCCheckBox("ChkPermitir").Checked = False Then - If Not ObjUsuarios.UpdateUsuariosModulos(CveUsuario, Row.DataKey("CveModulo").ToEntero, Row.FCCheckBox("ChkPermitir").Checked, UsuarioActual.CveUsuario) Then - TieneError = True - Exit For - End If - End If - End If - - Next - End If - - 'GUARDA PERMISO MODULOS - If Not TieneError Then - For Each Row As GridViewRow In GvModulosPermiso.Rows - - If Row.DataKey("CveProcesoAcceso") <> "" Then - 'checo si el permiso que tiene es del rol, de ser así, nada más actualizo los denegados - If Row.DataKey("Permitir") = "" AndAlso Row.FCCheckBox("ChkD").Checked OrElse Row.DataKey("Permitir") = "0" AndAlso Row.FCCheckBox("ChkD").Checked = False Then - If Not ObjUsuarios.UpdateUsuariosProcesos(CveUsuario, Row.DataKey("CveProceso").ToEntero, Not Row.FCCheckBox("ChkD").Checked, UsuarioActual.CveUsuario) Then - TieneError = True - Exit For - End If - End If - Else - 'permisos que el rol, no le está otorgando, y serán únicos para el usuario - If Row.DataKey("Permitir") = "" AndAlso Row.FCCheckBox("ChkP").Checked OrElse Row.DataKey("Permitir") = "1" AndAlso Row.FCCheckBox("ChkP").Checked = False Then - If Not ObjUsuarios.UpdateUsuariosProcesos(CveUsuario, Row.DataKey("CveProceso").ToEntero, Row.FCCheckBox("ChkP").Checked, UsuarioActual.CveUsuario) Then - TieneError = True - Exit For - End If - End If - End If - - ''checo si el permiso que tiene es del rol, de ser así, nada más actualizo los denegados - 'If Row.DataKey("CveProcesoAcceso") <> "" Then - ' If Not ClsUsuarios.UpdateUsuariosProcesos(Row.DataKey("CveUsuario").ToEntero, Row.DataKey("CveProceso").ToEntero, Not Row.FCCheckBox("ChkD").Checked) Then - ' TieneError = True - ' Exit For - ' End If - 'Else - ' 'permisos que el rol, no le está otorgando, y serán únicos para el usuario - ' If Not ClsUsuarios.UpdateUsuariosProcesos(Row.DataKey("CveUsuario").ToEntero, Row.DataKey("CveProceso").ToEntero, Row.FCCheckBox("ChkP").Checked) Then - ' TieneError = True - ' Exit For - ' End If - 'End If - - Next - End If - - - 'Agregar Indicadores - If Not TieneError Then - For Each Row As GridViewRow In GvIndicadores.Rows - - If Row.DataKey("CveIndicador") <> "" AndAlso Row.DataKey("CveUsuario") <> "" And Row.FCCheckBox("chkIndicador").Checked = False Then - If Not Indicador.RemoveIndicadoresUsuarios(Row.DataKey("CveIndicador").ToEntero, CveUsuario, UsuarioActual.CveUsuario) Then - TieneError = True - Exit For - End If - End If - - If Row.DataKey("CveIndicador") <> "" AndAlso Row.DataKey("CveUsuario") = "" Then - If Row.FCCheckBox("chkIndicador").Checked Then - If Not Indicador.AddIndicadoresUsuarios(Row.DataKey("CveIndicador").ToEntero, CveUsuario, UsuarioActual.CveUsuario) Then - TieneError = True - Exit For - End If - End If - End If - Next - End If - - - - 'GUARDA ACCESO EMPRESAS - If Not TieneError Then - For Each dr As DataRow In DtEmpresasUsuario.FiltraParametros("Accion IN (1,2)").Rows - If dr("Accion").ToString = "1" Then - If Not ObjUsuarios.AddUsuariosEmpresas(CveUsuario, dr("CveEmpresa").ToString.ToEntero, UsuarioActual.CveUsuario) Then - TieneError = True - Exit For - End If - ElseIf dr("Accion").ToString = "2" Then - If Not ObjUsuarios.RemoveEmpresasAcceso(CveUsuario, dr("CveEmpresa").ToString.ToEntero, UsuarioActual.CveUsuario) Then - TieneError = True - Exit For - End If - End If - Next - End If - - 'GUARDA SUBPROYECTOS - If Not TieneError Then - For Each dr As DataRow In DtSubProyectos.FiltraParametros("Accion IN (1,2,4)").Rows - If DtEmpresasUsuario.FiltraParametros(String.Format("CveEmpresa = {0}", dr("CveEmpresa").ToString.ToEntero)).Rows.Count > 0 Then - If dr("Accion").ToString = "1" Then - If Not ObjUsuarios.AddSubProyectos(CveUsuario, dr("CveSubProyecto").ToString.ToEntero, UsuarioActual.CveUsuario) Then - TieneError = True - Exit For - End If - ElseIf dr("Accion").ToString = "2" Then - If Not ObjUsuarios.RemoveSubProyectos(CveUsuario, dr("CveSubProyecto").ToString.ToEntero, UsuarioActual.CveUsuario) Then - TieneError = True - Exit For - End If - ElseIf dr("Accion").ToString = "4" Then - If Not ObjUsuarios.UpdateSubProyectos(CveUsuario, dr("CveSubProyecto").ToString.ToEntero, dr("ViejoCveSubProyecto").ToString.ToEntero, UsuarioActual.CveUsuario) Then - TieneError = True - Exit For - End If - End If - End If - Next - End If - - 'GUARDA ESTATUS DE OC - If Not TieneError Then - If DTEstatusOC IsNot Nothing AndAlso DTEstatusOC.Rows.Count > 0 Then - For Each dr As DataRow In DTEstatusOC.FiltraParametros("Accion IN (1,2,4)").Rows - If DtEmpresasUsuario.FiltraParametros(String.Format("CveEmpresa = {0}", dr("CveEmpresa").ToString.ToEntero)).Rows.Count > 0 Then - If dr("Accion").ToString = "1" Then - If Not ObjUsuarios.AddEstatusOC(CveUsuario, dr("CveEstatus").ToString.ToEntero) Then - TieneError = True - Exit For - End If - ElseIf dr("Accion").ToString = "2" Then - If Not ObjUsuarios.RemoveEstatusOC(CveUsuario, dr("CveEstatus").ToString.ToEntero) Then - TieneError = True - Exit For - End If - ElseIf dr("Accion").ToString = "4" Then - If Not ObjUsuarios.UpdateEstatusOC(CveUsuario, dr("CveEstatus").ToString.ToEntero, dr("ViejoCveEstatus").ToString.ToEntero) Then - TieneError = True - Exit For - End If - End If - End If - Next - End If - - End If - 'GUARDA CLASIFICACIONES - If Not TieneError Then - If DtClasificaciones IsNot Nothing AndAlso DtClasificaciones.Rows.Count > 0 Then - For Each dr As DataRow In DtClasificaciones.FiltraParametros("Accion IN (1,2,4)").Rows - If DtEmpresasUsuario.FiltraParametros(String.Format("CveEmpresa = {0}", dr("CveEmpresa").ToString.ToEntero)).Rows.Count > 0 Then - If dr("Accion").ToString = "1" Then - If Not ObjUsuarios.AddUsuariosClasificaciones(CveUsuario, dr("CveClasificacion").ToString.ToEntero, UsuarioActual.CveUsuario, UsuarioActual.CveUsuario) Then - TieneError = True - Exit For - End If - ElseIf dr("Accion").ToString = "2" Then - If Not ObjUsuarios.RemoveUsuariosClasificaciones(CveUsuario, dr("CveClasificacion").ToString.ToEntero, UsuarioActual.CveUsuario) Then - TieneError = True - Exit For - End If - End If - End If - Next - End If - End If - - - - - 'GUARDA ALMACENES - If Not TieneError Then - For Each dr As DataRow In DtAlmacenes.FiltraParametros("Accion IN (1,2,4)").Rows - If DtEmpresasUsuario.FiltraParametros(String.Format("CveEmpresa = {0}", dr("CveEmpresa").ToString.ToEntero)).Rows.Count > 0 Then - If dr("Accion").ToString = "1" Then - If Not ObjUsuarios.AddAlmacen(CveUsuario, dr("CveAlmacen").ToString.ToEntero, UsuarioActual.CveUsuario) Then - TieneError = True - Exit For - End If - ElseIf dr("Accion").ToString = "2" Then - If Not ObjUsuarios.RemoveAlmacen(CveUsuario, dr("CveAlmacen").ToString.ToEntero, UsuarioActual.CveUsuario) Then - TieneError = True - Exit For - End If - ElseIf dr("Accion").ToString = "4" Then - If Not ObjUsuarios.UpdateAlmacen(CveUsuario, dr("CveAlmacen").ToString.ToEntero, dr("ViejoCveAlmacen").ToString.ToEntero, UsuarioActual.CveUsuario) Then - TieneError = True - Exit For - End If - End If - End If - Next - - End If - - - 'Guarda Estatus de Ordenes de Compra - If Not TieneError Then - GuardaEstatusProyectosREQ(ObjOC, TieneError) - GuardaEstatusProyectoOC(ObjOC, TieneError) - End If - - ''Guarda Estatus de Ordenes de Servicio - 'If Not TieneError Then - ' GuardaEstatusOS(ObjOS, TieneError) - 'End If - - - 'GUARDA CUENTAS BANCARIAS - If Not TieneError Then - For Each dr As DataRow In DtCuentasBancarias.FiltraParametros("Accion IN (1,2)").Rows - If DtEmpresasUsuario.FiltraParametros(String.Format("CveEmpresa = {0}", dr("CveEmpresa").ToString.ToEntero)).Rows.Count > 0 Then - If dr("Accion").ToString = "1" Then - If Not ObjBancos.AddBancosCuentasUsuarios(dr("CveCuenta").ToString.ToEntero, CveUsuario) Then - TieneError = True - Exit For - End If - ElseIf dr("Accion").ToString = "2" Then - If Not ObjBancos.RemoveBancosCuentasUsuarios(dr("CveCuenta").ToString.ToEntero, CveUsuario) Then - TieneError = True - Exit For - End If - End If - End If - Next - - End If - - - 'GUARDAMOS RESTRICCIONES DE ACCESO - If Not TieneError Then - For Each dr As DataRow In DtRestricciones.FiltraParametros("Accion IN (1,2,4)").Rows - If dr("Accion").ToString = "1" Then - If Not ObjUsuarios.UsuariosRestriccionesAccesoAdd(CveUsuario, dr("IP").ToString, dr("MAC").ToString, dr("HI1").ToString, dr("HF1").ToString, dr("HI2").ToString, dr("HF2").ToString, dr("HI3").ToString, dr("HF3").ToString, dr("HI4").ToString, dr("HF4").ToString, dr("HI5").ToString, dr("HF5").ToString, dr("HI6").ToString, dr("HF6").ToString, dr("HI7").ToString, dr("HF7").ToString, UsuarioActual.CveUsuario) Then - TieneError = True - Exit For - End If - ElseIf dr("Accion").ToString = "2" Then - If Not ObjUsuarios.UsuariosRestriccionesAccesoRemove(dr("CveUsuarioRestriccionAcceso").ToString.ToEntero, UsuarioActual.CveUsuario) Then - TieneError = True - Exit For - End If - ElseIf dr("Accion").ToString = "4" Then - If Not ObjUsuarios.UsuariosRestriccionesAccesoUpdate(dr("CveUsuarioRestriccionAcceso").ToString.ToEntero, dr("IP").ToString, dr("MAC").ToString, dr("HI1").ToString, dr("HF1").ToString, dr("HI2").ToString, dr("HF2").ToString, dr("HI3").ToString, dr("HF3").ToString, dr("HI4").ToString, dr("HF4").ToString, dr("HI5").ToString, dr("HF5").ToString, dr("HI6").ToString, dr("HF6").ToString, dr("HI7").ToString, dr("HF7").ToString, UsuarioActual.CveUsuario) Then - TieneError = True - Exit For - End If - End If - Next - End If - ObjUsuarios.UsuariosRestriccioneXMacUpdate(CveUsuario) - 'CLONAR USUARIO - If Not TieneError Then - If EsNuevoUsuario Then - If Not ClonarUsuario(DdlUsuarioClonar.SelectedValue.ToEntero, ObjUsuarios) Then - TieneError = True - End If - End If - End If - - - - ''''''''''''''''''''''''GUARDA ASIGNAR'''''''''''''''''''''''' - - 'GUARDA ROLES - If Not TieneError Then - For Each dr As DataRow In DTRolesAsignar.FiltraParametros("Accion IN (1,2)").Rows - If DtEmpresasUsuario.FiltraParametros(String.Format("CveEmpresa = {0}", dr("CveEmpresa").ToString.ToEntero)).Rows.Count > 0 Then - If dr("Accion").ToString = "1" Then - If Not ObjUsuarios.AddRolesAsignar(CveUsuario, dr("CveRol").ToString.ToEntero) Then - TieneError = True - Exit For - End If - ElseIf dr("Accion").ToString = "2" Then - If Not ObjUsuarios.RemoveRolesAsignar(CveUsuario, dr("CveRol").ToString.ToEntero) Then - TieneError = True - Exit For - End If - End If - End If - Next - End If - - 'GUARDA ALMACENES - If Not TieneError Then - For Each dr As DataRow In DtAlmacenesAsignar.FiltraParametros("Accion IN (1,2)").Rows - If DtEmpresasUsuario.FiltraParametros(String.Format("CveEmpresa = {0}", dr("CveEmpresa").ToString.ToEntero)).Rows.Count > 0 Then - If dr("Accion").ToString = "1" Then - If Not ObjUsuarios.AddAlmacenAsignar(CveUsuario, dr("CveAlmacen").ToString.ToEntero) Then - TieneError = True - Exit For - End If - ElseIf dr("Accion").ToString = "2" Then - If Not ObjUsuarios.RemoveAlmacenAsignar(CveUsuario, dr("CveAlmacen").ToString.ToEntero) Then - TieneError = True - Exit For - End If - End If - End If - Next - End If - - 'GUARDA SUBPROYECTOS - If Not TieneError Then - For Each dr As DataRow In DtSubProyectosAsignar.FiltraParametros("Accion IN (1,2,4)").Rows - If DtEmpresasUsuario.FiltraParametros(String.Format("CveEmpresa = {0}", dr("CveEmpresa").ToString.ToEntero)).Rows.Count > 0 Then - If dr("Accion").ToString = "1" Then - If Not ObjUsuarios.AddSubProyectosAsignar(CveUsuario, dr("CveSubProyecto").ToString.ToEntero) Then - TieneError = True - Exit For - End If - ElseIf dr("Accion").ToString = "2" Then - If Not ObjUsuarios.RemoveSubProyectosAsignar(CveUsuario, dr("CveSubProyecto").ToString.ToEntero) Then - TieneError = True - Exit For - End If - End If - End If - Next - End If - - 'GUARDA CUENTAS BANCARIAS - If Not TieneError Then - For Each dr As DataRow In DtCuentasBancariasAsignar.FiltraParametros("Accion IN (1,2)").Rows - If DtEmpresasUsuario.FiltraParametros(String.Format("CveEmpresa = {0}", dr("CveEmpresa").ToString.ToEntero)).Rows.Count > 0 Then - If dr("Accion").ToString = "1" Then - If Not ObjUsuarios.AddCuentasBancariasAsignar(CveUsuario, dr("CveCuenta").ToString.ToEntero) Then - TieneError = True - Exit For - End If - ElseIf dr("Accion").ToString = "2" Then - If Not ObjUsuarios.RemoveCuentasBancariasAsignar(CveUsuario, dr("CveCuenta").ToString.ToEntero) Then - TieneError = True - Exit For - End If - End If - End If - Next - End If - - 'GUARDA MODULOS - If Not TieneError Then - For Each Row As GridViewRow In GvModulosAsignar.Rows - If Row.DataKey("TienePermiso").ToEntero > 0 AndAlso Not Row.FCCheckBox("ChkP").Checked Then - If Not ObjUsuarios.RemoveModulosAsignar(CveUsuario, Row.DataKey("CveModulo").ToEntero) Then - TieneError = True - Exit For - End If - ElseIf Row.FCCheckBox("ChkP").Checked AndAlso Not Row.DataKey("TienePermiso").ToEntero > 0 Then - If Not ObjUsuarios.AddModulosAsignar(CveUsuario, Row.DataKey("CveModulo").ToEntero) Then - TieneError = True - Exit For - End If - End If - Next - End If - - 'GUARDA PERMISOS - If Not TieneError Then - For Each Row As GridViewRow In GvPermisosAsignar.Rows - If Row.DataKey("TienePermiso").ToEntero > 0 AndAlso Not Row.FCCheckBox("ChkP").Checked Then - If Not ObjUsuarios.RemovePermisosAsignar(CveUsuario, Row.DataKey("CvePermiso").ToEntero) Then - TieneError = True - Exit For - End If - ElseIf Row.FCCheckBox("ChkP").Checked AndAlso Not Row.DataKey("TienePermiso").ToEntero > 0 Then - If Not ObjUsuarios.AddPermisosAsignar(CveUsuario, Row.DataKey("CvePermiso").ToEntero) Then - TieneError = True - Exit For - End If - End If - Next - End If - - 'GUARDA INDICADORES - If Not TieneError Then - For Each Row As GridViewRow In GvIndicadoresAsignar.Rows - If Row.DataKey("TienePermiso").ToEntero > 0 AndAlso Not Row.FCCheckBox("ChkP").Checked Then - If Not ObjUsuarios.RemoveIndicadoresAsignar(CveUsuario, Row.DataKey("CveIndicador").ToEntero) Then - TieneError = True - Exit For - End If - ElseIf Row.FCCheckBox("ChkP").Checked AndAlso Not Row.DataKey("TienePermiso").ToEntero > 0 Then - If Not ObjUsuarios.AddIndicadoresAsignar(CveUsuario, Row.DataKey("CveIndicador").ToEntero) Then - TieneError = True - Exit For - End If - End If - Next - End If - - 'GUARDA EMPRESAS - If Not TieneError Then - For Each Row As GridViewRow In GvEmpresasAsignar.Rows - If Row.DataKey("TienePermiso").ToEntero > 0 AndAlso Not Row.FCCheckBox("ChkP").Checked Then - If Not ObjUsuarios.RemoveEmpresasAsignar(CveUsuario, Row.DataKey("CveEmpresa").ToEntero) Then - TieneError = True - Exit For - End If - ElseIf Row.FCCheckBox("ChkP").Checked AndAlso Not Row.DataKey("TienePermiso").ToEntero > 0 Then - If Not ObjUsuarios.AddEmpresasAsignar(CveUsuario, Row.DataKey("CveEmpresa").ToEntero) Then - TieneError = True - Exit For - End If - End If - Next - End If - - 'ELIMINA YA AGREGADOS EMPRESAS - If Not TieneError Then - For Each dr As DataRow In DTEmpresasAsignar.FiltraParametros("TienePermiso IN (-2)").Rows - If DtEmpresasUsuario.FiltraParametros(String.Format("CveEmpresa = {0}", dr("CveEmpresa").ToString.ToEntero)).Rows.Count > 0 Then - If Not ObjUsuarios.RemoveEmpresasAsignar(CveUsuario, dr("CveEmpresa").ToString.ToEntero) Then - TieneError = True - Exit For - End If - End If - Next - End If - - + Try + 'Cargo la ultima empresa consultada en asignaciones + Dim DtValida = DtAsignacionesMultiEmpresa.FiltraParametros(String.Format("CveEmpresa = {0}", CveEmpresaAnterior)) + If DtValida.Rows.Count > 0 Then + Dim dr = DtAsignacionesMultiEmpresa.Select(String.Format("CveEmpresa = {0}", CveEmpresaAnterior)) + dr(0)("CveEmpresa") = CveEmpresaAnterior + dr(0)("CvePersonal") = DdlPersonal.SelectedValue.ToEntero + dr(0)("CveVendedor") = DdlVendedor.SelectedValue.ToEntero + dr(0)("CveSucursal") = DdlSubProyectos.SelectedValue.ToEntero + dr(0)("CveAlmacen") = DdlAlmacenGeneral.SelectedValue.ToEntero + dr(0)("CveTipoDocumento") = DdlTipoDocumento.SelectedValue + dr(0).AcceptChanges() + Else + Dim Row As DataRow = Nothing + Row = DtAsignacionesMultiEmpresa.NewRow() + Row("CveEmpresa") = CveEmpresaAnterior + Row("CvePersonal") = DdlPersonal.SelectedValue.ToEntero + Row("CveVendedor") = DdlVendedor.SelectedValue.ToEntero + Row("CveSucursal") = DdlSubProyectos.SelectedValue.ToEntero + Row("CveAlmacen") = DdlAlmacenGeneral.SelectedValue.ToEntero + Row("CveTipoDocumento") = DdlTipoDocumento.SelectedValue + DtAsignacionesMultiEmpresa.Rows.Add(Row) + End If + + + 'REGISTRA O ACTUALIZA LOS DATOS GENERALES DEL USUARIO + If CveUsuario = -1 Then + CveUsuario = ObjUsuarios.AddUsuario(TxtUsuario.Text.Trim, Encripta(ContraseñaPredeterminada), TxtNombre.Text.Trim, DdlRol.SelectedValue.ToEntero, TxtCorreo.Text.Trim, DdlPersonal.SelectedValue.ToEntero, DdlVendedor.SelectedValue.ToEntero, ChkCambiarContraseña.Checked, UsuarioActual.CveUsuario, DdlEmpresa.SelectedValue.ToEntero, DdlSubProyectos.SelectedValue.ToEntero, CveAlmacenAsignado:=DdlAlmacenGeneral.SelectedValue.ToEntero, AsignarSubProyecto:=ChkAsignarSubProyecto.Checked, AsignarOC:=ChkAsignarOC.Checked, DescuentoAutorizado:=TxtDescuentoAutorizado.Text.ToDouble) + EsNuevoUsuario = True + If CveUsuario = -1 Then + TieneError = True + End If + + For Each Row As DataRow In DtAsignacionesMultiEmpresa.FiltraParametros("CveEmpresa > 0").Rows + If Not ObjUsuarios.AddUsuarioAsignar(Row("CvePersonal").ToString.ToEntero, Row("CveVendedor").ToString.ToEntero, Row("CveAlmacen").ToString.ToEntero, Row("CveSucursal").ToString.ToEntero, Row("CveTipoDocumento").ToString, Row("CveEmpresa").ToString.ToEntero, CveUsuario) Then + TieneError = True + End If + Next + Else + If Not ObjUsuarios.UpdateUsuario(TxtUsuario.Text.Trim, TxtNombre.Text.Trim, DdlRol.SelectedValue.ToEntero, TxtCorreo.Text.Trim, DdlPersonal.SelectedValue.ToEntero, DdlVendedor.SelectedValue.ToEntero, ChkCambiarContraseña.Checked, ChkEstatus.Checked, DdlEmpresa.SelectedValue.ToEntero, CveUsuario, DdlAlmacenGeneral.SelectedValue.ToEntero, DdlSubProyectos.SelectedValue.ToEntero, UsuarioActual.CveUsuario, AsignarSubProyecto:=ChkAsignarSubProyecto.Checked, AsignarOC:=ChkAsignarOC.Checked, DescuentoAutorizado:=TxtDescuentoAutorizado.Text.ToDouble) Then + TieneError = True + End If + + For Each Row As DataRow In DtAsignacionesMultiEmpresa.FiltraParametros("CveEmpresa > 0").Rows + If Not ObjUsuarios.UpdateUsuarioAsignar(Row("CvePersonal").ToString.ToEntero, Row("CveVendedor").ToString.ToEntero, Row("CveAlmacen").ToString.ToEntero, Row("CveSucursal").ToString.ToEntero, Row("CveEmpresa").ToString.ToEntero, Row("CveTipoDocumento").ToString, CveUsuario, CveUsuarioModifico:=UsuarioActual.CveUsuario) Then + TieneError = True + End If + Next + End If + + 'GUARDA ACCESO MODULOS + If Not TieneError Then + For Each Row As GridViewRow In GvModulosAcceso.Rows + 'Nota, permitir, tiene 3 valores, ''(Vacio), no se ha estipulado, '0' que se denego, '1' permitido(aplicado solo cuando no viene del rol + If Row.DataKey("CveModuloAcceso") <> "" Then + If Row.DataKey("Permitir") = "" AndAlso Row.FCCheckBox("ChkDenegar").Checked OrElse Row.DataKey("Permitir") = "0" AndAlso Row.FCCheckBox("ChkDenegar").Checked = False Then + If Not ObjUsuarios.UpdateUsuariosModulos(CveUsuario, Row.DataKey("CveModulo").ToEntero, Not Row.FCCheckBox("ChkDenegar").Checked, UsuarioActual.CveUsuario) Then + TieneError = True + Exit For + End If + End If + Else + If Row.DataKey("Permitir") = "" AndAlso Row.FCCheckBox("ChkPermitir").Checked OrElse Row.DataKey("Permitir") = "1" AndAlso Row.FCCheckBox("ChkPermitir").Checked = False Then + If Not ObjUsuarios.UpdateUsuariosModulos(CveUsuario, Row.DataKey("CveModulo").ToEntero, Row.FCCheckBox("ChkPermitir").Checked, UsuarioActual.CveUsuario) Then + TieneError = True + Exit For + End If + End If + End If + + Next + End If + + 'GUARDA PERMISO MODULOS + If Not TieneError Then + For Each Row As GridViewRow In GvModulosPermiso.Rows + + If Row.DataKey("CveProcesoAcceso") <> "" Then + 'checo si el permiso que tiene es del rol, de ser así, nada más actualizo los denegados + If Row.DataKey("Permitir") = "" AndAlso Row.FCCheckBox("ChkD").Checked OrElse Row.DataKey("Permitir") = "0" AndAlso Row.FCCheckBox("ChkD").Checked = False Then + If Not ObjUsuarios.UpdateUsuariosProcesos(CveUsuario, Row.DataKey("CveProceso").ToEntero, Not Row.FCCheckBox("ChkD").Checked, UsuarioActual.CveUsuario) Then + TieneError = True + Exit For + End If + End If + Else + 'permisos que el rol, no le está otorgando, y serán únicos para el usuario + If Row.DataKey("Permitir") = "" AndAlso Row.FCCheckBox("ChkP").Checked OrElse Row.DataKey("Permitir") = "1" AndAlso Row.FCCheckBox("ChkP").Checked = False Then + If Not ObjUsuarios.UpdateUsuariosProcesos(CveUsuario, Row.DataKey("CveProceso").ToEntero, Row.FCCheckBox("ChkP").Checked, UsuarioActual.CveUsuario) Then + TieneError = True + Exit For + End If + End If + End If + + ''checo si el permiso que tiene es del rol, de ser así, nada más actualizo los denegados + 'If Row.DataKey("CveProcesoAcceso") <> "" Then + ' If Not ClsUsuarios.UpdateUsuariosProcesos(Row.DataKey("CveUsuario").ToEntero, Row.DataKey("CveProceso").ToEntero, Not Row.FCCheckBox("ChkD").Checked) Then + ' TieneError = True + ' Exit For + ' End If + 'Else + ' 'permisos que el rol, no le está otorgando, y serán únicos para el usuario + ' If Not ClsUsuarios.UpdateUsuariosProcesos(Row.DataKey("CveUsuario").ToEntero, Row.DataKey("CveProceso").ToEntero, Row.FCCheckBox("ChkP").Checked) Then + ' TieneError = True + ' Exit For + ' End If + 'End If + + Next + End If + + + 'Agregar Indicadores + If Not TieneError Then + For Each Row As GridViewRow In GvIndicadores.Rows + + If Row.DataKey("CveIndicador") <> "" AndAlso Row.DataKey("CveUsuario") <> "" And Row.FCCheckBox("chkIndicador").Checked = False Then + If Not Indicador.RemoveIndicadoresUsuarios(Row.DataKey("CveIndicador").ToEntero, CveUsuario, UsuarioActual.CveUsuario) Then + TieneError = True + Exit For + End If + End If + + If Row.DataKey("CveIndicador") <> "" AndAlso Row.DataKey("CveUsuario") = "" Then + If Row.FCCheckBox("chkIndicador").Checked Then + If Not Indicador.AddIndicadoresUsuarios(Row.DataKey("CveIndicador").ToEntero, CveUsuario, UsuarioActual.CveUsuario) Then + TieneError = True + Exit For + End If + End If + End If + Next + End If + + + + 'GUARDA ACCESO EMPRESAS + If Not TieneError Then + For Each dr As DataRow In DtEmpresasUsuario.FiltraParametros("Accion IN (1,2)").Rows + If dr("Accion").ToString = "1" Then + If Not ObjUsuarios.AddUsuariosEmpresas(CveUsuario, dr("CveEmpresa").ToString.ToEntero, UsuarioActual.CveUsuario) Then + TieneError = True + Exit For + End If + ElseIf dr("Accion").ToString = "2" Then + If Not ObjUsuarios.RemoveEmpresasAcceso(CveUsuario, dr("CveEmpresa").ToString.ToEntero, UsuarioActual.CveUsuario) Then + TieneError = True + Exit For + End If + End If + Next + End If + + 'GUARDA SUBPROYECTOS + If Not TieneError Then + For Each dr As DataRow In DtSubProyectos.FiltraParametros("Accion IN (1,2,4)").Rows + If DtEmpresasUsuario.FiltraParametros(String.Format("CveEmpresa = {0}", dr("CveEmpresa").ToString.ToEntero)).Rows.Count > 0 Then + If dr("Accion").ToString = "1" Then + If Not ObjUsuarios.AddSubProyectos(CveUsuario, dr("CveSubProyecto").ToString.ToEntero, UsuarioActual.CveUsuario) Then + TieneError = True + Exit For + End If + ElseIf dr("Accion").ToString = "2" Then + If Not ObjUsuarios.RemoveSubProyectos(CveUsuario, dr("CveSubProyecto").ToString.ToEntero, UsuarioActual.CveUsuario) Then + TieneError = True + Exit For + End If + ElseIf dr("Accion").ToString = "4" Then + If Not ObjUsuarios.UpdateSubProyectos(CveUsuario, dr("CveSubProyecto").ToString.ToEntero, dr("ViejoCveSubProyecto").ToString.ToEntero, UsuarioActual.CveUsuario) Then + TieneError = True + Exit For + End If + End If + End If + Next + End If + + 'GUARDA ESTATUS DE OC + If Not TieneError Then + If DTEstatusOC IsNot Nothing AndAlso DTEstatusOC.Rows.Count > 0 Then + For Each dr As DataRow In DTEstatusOC.FiltraParametros("Accion IN (1,2,4)").Rows + If DtEmpresasUsuario.FiltraParametros(String.Format("CveEmpresa = {0}", dr("CveEmpresa").ToString.ToEntero)).Rows.Count > 0 Then + If dr("Accion").ToString = "1" Then + If Not ObjUsuarios.AddEstatusOC(CveUsuario, dr("CveEstatus").ToString.ToEntero) Then + TieneError = True + Exit For + End If + ElseIf dr("Accion").ToString = "2" Then + If Not ObjUsuarios.RemoveEstatusOC(CveUsuario, dr("CveEstatus").ToString.ToEntero) Then + TieneError = True + Exit For + End If + ElseIf dr("Accion").ToString = "4" Then + If Not ObjUsuarios.UpdateEstatusOC(CveUsuario, dr("CveEstatus").ToString.ToEntero, dr("ViejoCveEstatus").ToString.ToEntero) Then + TieneError = True + Exit For + End If + End If + End If + Next + End If + + End If + 'GUARDA CLASIFICACIONES + If Not TieneError Then + If DtClasificaciones IsNot Nothing AndAlso DtClasificaciones.Rows.Count > 0 Then + For Each dr As DataRow In DtClasificaciones.FiltraParametros("Accion IN (1,2,4)").Rows + If DtEmpresasUsuario.FiltraParametros(String.Format("CveEmpresa = {0}", dr("CveEmpresa").ToString.ToEntero)).Rows.Count > 0 Then + If dr("Accion").ToString = "1" Then + If Not ObjUsuarios.AddUsuariosClasificaciones(CveUsuario, dr("CveClasificacion").ToString.ToEntero, UsuarioActual.CveUsuario, UsuarioActual.CveUsuario) Then + TieneError = True + Exit For + End If + ElseIf dr("Accion").ToString = "2" Then + If Not ObjUsuarios.RemoveUsuariosClasificaciones(CveUsuario, dr("CveClasificacion").ToString.ToEntero, UsuarioActual.CveUsuario) Then + TieneError = True + Exit For + End If + End If + End If + Next + End If + End If + + + + + 'GUARDA ALMACENES + If Not TieneError Then + For Each dr As DataRow In DtAlmacenes.FiltraParametros("Accion IN (1,2,4)").Rows + If DtEmpresasUsuario.FiltraParametros(String.Format("CveEmpresa = {0}", dr("CveEmpresa").ToString.ToEntero)).Rows.Count > 0 Then + If dr("Accion").ToString = "1" Then + If Not ObjUsuarios.AddAlmacen(CveUsuario, dr("CveAlmacen").ToString.ToEntero, UsuarioActual.CveUsuario) Then + TieneError = True + Exit For + End If + ElseIf dr("Accion").ToString = "2" Then + If Not ObjUsuarios.RemoveAlmacen(CveUsuario, dr("CveAlmacen").ToString.ToEntero, UsuarioActual.CveUsuario) Then + TieneError = True + Exit For + End If + ElseIf dr("Accion").ToString = "4" Then + If Not ObjUsuarios.UpdateAlmacen(CveUsuario, dr("CveAlmacen").ToString.ToEntero, dr("ViejoCveAlmacen").ToString.ToEntero, UsuarioActual.CveUsuario) Then + TieneError = True + Exit For + End If + End If + End If + Next + + End If + + + 'Guarda Estatus de Ordenes de Compra + If Not TieneError Then + GuardaEstatusProyectosREQ(ObjOC, TieneError) + GuardaEstatusProyectoOC(ObjOC, TieneError) + End If + + ''Guarda Estatus de Ordenes de Servicio + 'If Not TieneError Then + ' GuardaEstatusOS(ObjOS, TieneError) + 'End If + + + 'GUARDA CUENTAS BANCARIAS + If Not TieneError Then + For Each dr As DataRow In DtCuentasBancarias.FiltraParametros("Accion IN (1,2)").Rows + If DtEmpresasUsuario.FiltraParametros(String.Format("CveEmpresa = {0}", dr("CveEmpresa").ToString.ToEntero)).Rows.Count > 0 Then + If dr("Accion").ToString = "1" Then + If Not ObjBancos.AddBancosCuentasUsuarios(dr("CveCuenta").ToString.ToEntero, CveUsuario) Then + TieneError = True + Exit For + End If + ElseIf dr("Accion").ToString = "2" Then + If Not ObjBancos.RemoveBancosCuentasUsuarios(dr("CveCuenta").ToString.ToEntero, CveUsuario) Then + TieneError = True + Exit For + End If + End If + End If + Next + + End If + + + 'GUARDAMOS RESTRICCIONES DE ACCESO + If Not TieneError Then + For Each dr As DataRow In DtRestricciones.FiltraParametros("Accion IN (1,2,4)").Rows + If dr("Accion").ToString = "1" Then + If Not ObjUsuarios.UsuariosRestriccionesAccesoAdd(CveUsuario, dr("IP").ToString, dr("MAC").ToString, dr("HI1").ToString, dr("HF1").ToString, dr("HI2").ToString, dr("HF2").ToString, dr("HI3").ToString, dr("HF3").ToString, dr("HI4").ToString, dr("HF4").ToString, dr("HI5").ToString, dr("HF5").ToString, dr("HI6").ToString, dr("HF6").ToString, dr("HI7").ToString, dr("HF7").ToString, UsuarioActual.CveUsuario) Then + TieneError = True + Exit For + End If + ElseIf dr("Accion").ToString = "2" Then + If Not ObjUsuarios.UsuariosRestriccionesAccesoRemove(dr("CveUsuarioRestriccionAcceso").ToString.ToEntero, UsuarioActual.CveUsuario) Then + TieneError = True + Exit For + End If + ElseIf dr("Accion").ToString = "4" Then + If Not ObjUsuarios.UsuariosRestriccionesAccesoUpdate(dr("CveUsuarioRestriccionAcceso").ToString.ToEntero, dr("IP").ToString, dr("MAC").ToString, dr("HI1").ToString, dr("HF1").ToString, dr("HI2").ToString, dr("HF2").ToString, dr("HI3").ToString, dr("HF3").ToString, dr("HI4").ToString, dr("HF4").ToString, dr("HI5").ToString, dr("HF5").ToString, dr("HI6").ToString, dr("HF6").ToString, dr("HI7").ToString, dr("HF7").ToString, UsuarioActual.CveUsuario) Then + TieneError = True + Exit For + End If + End If + Next + End If + ObjUsuarios.UsuariosRestriccioneXMacUpdate(CveUsuario) + 'CLONAR USUARIO + If Not TieneError Then + If EsNuevoUsuario Then + If Not ClonarUsuario(DdlUsuarioClonar.SelectedValue.ToEntero, ObjUsuarios) Then + TieneError = True + End If + End If + End If + + + + ''''''''''''''''''''''''GUARDA ASIGNAR'''''''''''''''''''''''' + + 'GUARDA ROLES + If Not TieneError Then + For Each dr As DataRow In DTRolesAsignar.FiltraParametros("Accion IN (1,2)").Rows + If DtEmpresasUsuario.FiltraParametros(String.Format("CveEmpresa = {0}", dr("CveEmpresa").ToString.ToEntero)).Rows.Count > 0 Then + If dr("Accion").ToString = "1" Then + If Not ObjUsuarios.AddRolesAsignar(CveUsuario, dr("CveRol").ToString.ToEntero) Then + TieneError = True + Exit For + End If + ElseIf dr("Accion").ToString = "2" Then + If Not ObjUsuarios.RemoveRolesAsignar(CveUsuario, dr("CveRol").ToString.ToEntero) Then + TieneError = True + Exit For + End If + End If + End If + Next + End If + + 'GUARDA ALMACENES + If Not TieneError Then + For Each dr As DataRow In DtAlmacenesAsignar.FiltraParametros("Accion IN (1,2)").Rows + If DtEmpresasUsuario.FiltraParametros(String.Format("CveEmpresa = {0}", dr("CveEmpresa").ToString.ToEntero)).Rows.Count > 0 Then + If dr("Accion").ToString = "1" Then + If Not ObjUsuarios.AddAlmacenAsignar(CveUsuario, dr("CveAlmacen").ToString.ToEntero) Then + TieneError = True + Exit For + End If + ElseIf dr("Accion").ToString = "2" Then + If Not ObjUsuarios.RemoveAlmacenAsignar(CveUsuario, dr("CveAlmacen").ToString.ToEntero) Then + TieneError = True + Exit For + End If + End If + End If + Next + End If + + 'GUARDA SUBPROYECTOS + If Not TieneError Then + For Each dr As DataRow In DtSubProyectosAsignar.FiltraParametros("Accion IN (1,2,4)").Rows + If DtEmpresasUsuario.FiltraParametros(String.Format("CveEmpresa = {0}", dr("CveEmpresa").ToString.ToEntero)).Rows.Count > 0 Then + If dr("Accion").ToString = "1" Then + If Not ObjUsuarios.AddSubProyectosAsignar(CveUsuario, dr("CveSubProyecto").ToString.ToEntero) Then + TieneError = True + Exit For + End If + ElseIf dr("Accion").ToString = "2" Then + If Not ObjUsuarios.RemoveSubProyectosAsignar(CveUsuario, dr("CveSubProyecto").ToString.ToEntero) Then + TieneError = True + Exit For + End If + End If + End If + Next + End If + + 'GUARDA CUENTAS BANCARIAS + If Not TieneError Then + For Each dr As DataRow In DtCuentasBancariasAsignar.FiltraParametros("Accion IN (1,2)").Rows + If DtEmpresasUsuario.FiltraParametros(String.Format("CveEmpresa = {0}", dr("CveEmpresa").ToString.ToEntero)).Rows.Count > 0 Then + If dr("Accion").ToString = "1" Then + If Not ObjUsuarios.AddCuentasBancariasAsignar(CveUsuario, dr("CveCuenta").ToString.ToEntero) Then + TieneError = True + Exit For + End If + ElseIf dr("Accion").ToString = "2" Then + If Not ObjUsuarios.RemoveCuentasBancariasAsignar(CveUsuario, dr("CveCuenta").ToString.ToEntero) Then + TieneError = True + Exit For + End If + End If + End If + Next + End If + + 'GUARDA MODULOS + If Not TieneError Then + For Each Row As GridViewRow In GvModulosAsignar.Rows + If Row.DataKey("TienePermiso").ToEntero > 0 AndAlso Not Row.FCCheckBox("ChkP").Checked Then + If Not ObjUsuarios.RemoveModulosAsignar(CveUsuario, Row.DataKey("CveModulo").ToEntero) Then + TieneError = True + Exit For + End If + ElseIf Row.FCCheckBox("ChkP").Checked AndAlso Not Row.DataKey("TienePermiso").ToEntero > 0 Then + If Not ObjUsuarios.AddModulosAsignar(CveUsuario, Row.DataKey("CveModulo").ToEntero) Then + TieneError = True + Exit For + End If + End If + Next + End If + + 'GUARDA PERMISOS + If Not TieneError Then + For Each Row As GridViewRow In GvPermisosAsignar.Rows + If Row.DataKey("TienePermiso").ToEntero > 0 AndAlso Not Row.FCCheckBox("ChkP").Checked Then + If Not ObjUsuarios.RemovePermisosAsignar(CveUsuario, Row.DataKey("CvePermiso").ToEntero) Then + TieneError = True + Exit For + End If + ElseIf Row.FCCheckBox("ChkP").Checked AndAlso Not Row.DataKey("TienePermiso").ToEntero > 0 Then + If Not ObjUsuarios.AddPermisosAsignar(CveUsuario, Row.DataKey("CvePermiso").ToEntero) Then + TieneError = True + Exit For + End If + End If + Next + End If + + 'GUARDA INDICADORES + If Not TieneError Then + For Each Row As GridViewRow In GvIndicadoresAsignar.Rows + If Row.DataKey("TienePermiso").ToEntero > 0 AndAlso Not Row.FCCheckBox("ChkP").Checked Then + If Not ObjUsuarios.RemoveIndicadoresAsignar(CveUsuario, Row.DataKey("CveIndicador").ToEntero) Then + TieneError = True + Exit For + End If + ElseIf Row.FCCheckBox("ChkP").Checked AndAlso Not Row.DataKey("TienePermiso").ToEntero > 0 Then + If Not ObjUsuarios.AddIndicadoresAsignar(CveUsuario, Row.DataKey("CveIndicador").ToEntero) Then + TieneError = True + Exit For + End If + End If + Next + End If + + 'GUARDA EMPRESAS + If Not TieneError Then + For Each Row As GridViewRow In GvEmpresasAsignar.Rows + If Row.DataKey("TienePermiso").ToEntero > 0 AndAlso Not Row.FCCheckBox("ChkP").Checked Then + If Not ObjUsuarios.RemoveEmpresasAsignar(CveUsuario, Row.DataKey("CveEmpresa").ToEntero) Then + TieneError = True + Exit For + End If + ElseIf Row.FCCheckBox("ChkP").Checked AndAlso Not Row.DataKey("TienePermiso").ToEntero > 0 Then + If Not ObjUsuarios.AddEmpresasAsignar(CveUsuario, Row.DataKey("CveEmpresa").ToEntero) Then + TieneError = True + Exit For + End If + End If + Next + End If + + 'ELIMINA YA AGREGADOS EMPRESAS + If Not TieneError Then + For Each dr As DataRow In DTEmpresasAsignar.FiltraParametros("TienePermiso IN (-2)").Rows + If DtEmpresasUsuario.FiltraParametros(String.Format("CveEmpresa = {0}", dr("CveEmpresa").ToString.ToEntero)).Rows.Count > 0 Then + If Not ObjUsuarios.RemoveEmpresasAsignar(CveUsuario, dr("CveEmpresa").ToString.ToEntero) Then + TieneError = True + Exit For + End If + End If + Next + End If + + Catch ex As Exception + TieneError = True + OnError("Ocurrió un error al guardar el usuario", ex) + End Try + + If Not TieneError Then If EsNuevoUsuario Then EnviaCorreo() @@ -1286,7 +1291,12 @@ Partial Class Sistemas_UsuarioDetalle End If - ObjUsuarios.Dispose() + ObjUsuarios.Dispose() + ObjSubProyectos.Dispose() + ObjOC.Dispose() + ObjOS.Dispose() + Indicador.Dispose() + ObjBancos.Dispose() End Sub Private Sub RecargaGlobales(TieneError As Boolean, ObjSubProyectos As ClsSubProyectos, ObjBancos As ClsBancos, ObjOC As ClsOC, ObjUsuarios As ClsSisUsuarios)