Tengo el problema que en este cliente tienen muchas unidades administrativas arriba de 300, se les explico el concepto de Unidades administrativas pero ellos insisten en que esos son los departamentos que poseen, y asi los crearon, ahora que se esta viendo la seguridad de contenido, el ingresar al role es extremadamente lento para desplegar la parte derecha de esta opcion, donde despliega empresas, tipos de planilla y unidades administrativas, y creo que es por la cantidad de unidades que tienen, mi temor es si esto va afectar cuando ya esten utilizando el sistema, emitan un reporte, creen una accion o transacciones de salarios que al validar el acceso sea asi de lento, necesito saber su opinion y de estar en lo cierto esto puede mejorarse. |
Si, va a afectar el performance de la aplicación, porque las funciones que aplican la seguridad de contenido evalúan los accesos a las unidades. Sin embargo, si se utilizan las funciones correctamente, el impacto negativo es manejable. Analiza a detalle las siguientes funciones y las que se llaman dentro de ellas:
La primera retorna una tabla con todos los empleados que puede ver un usuario y la segunda regresa 1 o 0 de acuerdo a si un usuario tiene permiso para ver a un empleado específico. La primera función es mucho más rápida que la segunda, pero depende de cómo se redacten los select's de SmartLists y Listas de Valores a veces solo se puede usar la segunda. En una de las actualizaciones de la versión 1.8.x, se enviaron las cláusulas WHERE de los SmartLists para que aprovecharan la función de tabla que es más rápida. Finalmente, recorda que la seguridad de contenido trabaja por excepción, si no se marca ninguna unidad, entonces asume que tenes acceso a TODAS, esto mejora el rendimiento enormemente para usuarios que pueden ver a toda la empresa, aún y cuando existan 300 unidades. |