Hola! Esta semana os traigo un truquito de Dynamics NAV. Es algo muy sencillo de desarrollar pero que a muchos nos ha salvado más de una vez, sobre todo cuando nuestros clientes OnPremises tienen el número de licencias muy justo, varios turnos de trabajo o necesitamos hacer un Debugg y no tenemos más concurrencia disponible.
Por si alguno no sabe de qué estoy hablando, os muestro y explico un poco a qué me refiero.
¿No os ha pasado alguna vez que cuando un usuario va a abrir Dynamics NAV le aparece el siguiente error?
Esto es debido a que el cliente tiene en uso todas sus licencias y por tanto no permite acceder.
Podemos ver las sesiones y usuarios activos desde el depurador, al que se accede desde el entorno de development o classic.
Cuando abrimos la depuración de sesión, aquí podemos ver las sesiones activas actuales en el servicio con el cual estamos accediendo.
Como podemos ver mas abajo, nos muestra una línea con el id de la sesión, el usuario y otros datos que nos pueden ayudar a saber más sobre las sesiones iniciadas.
A veces pasa que alguna sesión se queda abierta porque los usuarios no la cierran y el resto no pueden acceder porque no disponen de licencia.
Nosotros como administradores de la base de datos podemos hacer un pequeño desarrollo para poder cerrar estas sesiones.
Vamos manos a la obra, este desarrollo es muy pequeño pero es de gran utilidad, por eso os lo quería explicar con todo lujo de detalles.
Lo primero que haremos es ir a la page 9506
Aquí nos situamos en el Page Actions y veremos todos los botones:
Creamos un botón nuevo.
Yo normalmente este botón lo creo dentro del ActionGroup de Sesión ya que va muy relacionado.
Configuramos las propiedades del botón.
Os marco las opciones que yo siempre pongo.
Primero, importante el captionML, porque así lo tendremos en inglés y español.
Le ponemos una imagen y para que lo tengamos a mano al iniciar el depurador le ponemos el Promoted en YES.
Por último, vamos al código del botón y añadimos lo siguiente:
Y ya está, guardamos y listo.
Si volvemos a abrir el depurador veremos el botón.
Seleccionando la sesión de usuario que queremos cerrar y dándole a ese botón la cerraremos.
Como siempre este ejemplo entero lo tenéis colgado en GitHub en el link.
Esperamos que esta explicación os resulte de utilidad y os emplazamos a nuestra próxima publicación.