Brown Management Program (version one)
Martin
15 Enero 2008
incidencias.jpg
He recibido algunos comentarios y mensajes pidiendome que cuelge la aplicación de "Gestión de Incidencias", como había quedado en hacerlo, aquí la teneís. Lo prometido es deuda.
La imagen superior es el interface "Notes".
Ya había comentado en entradas anteriores, el usuario final, todo lo hace por la web, pero él que asigna marrones y los técnicos, usan el cliente Notes.

He intentado dejarla lo mas sencillo posible, el formulario web es plano, validación JavaScript y poco mas.
Voy a empezar contando la funcionalidad.

El usuario (El Browner):
Crea su incidencia y la sigue por la web, si tiene algún problema llama al Call Browns Center, ya sea para hacer una reclamación o para pedir que le abran una incidencia porque tiene roto su PC (se puede abrir por el cliente Notes, solo el Admin).
Que pasa si abre la base de datos con el cliente Notes ???, verá esto:
incidenciasU.jpg
Solo verá sus incidencias, igual que en web, pero no podrá crear una nueva, ni podrá modificar las creadas por la web, motivo ???, lo que esta viendo son campos calculados, los campos que rellenó se ocultan en Notes, por esa razón el campo "Comentario", no lo he hecho de Texto Enriquecido.
Las acciones, solo estan disponibles para los roll "Admin" y "Respon". Si intenta crear una incidencia le dirá que no está autorizado.
Podría ocultar todo para el currito normal ???, si, pero lo he dejado así, cada uno puede hacer lo que mas le guste.

El Técnico (el Brown Eater):
Este es el que se tiene que comer los marrones, solo ve las incidencias que le asignan, no ve las de los otros técnicos, no puede abrir incidencias.
Puede rechazarlas diciendo la causa (es un campo obligatorio), su comentario de rechazo se lo añadimos al campo "Historial" y solo lo puede ver el "Admin".
Al cerrar una incidencia tiene que decir la acción tomada para cerrarla y poco más.
Su interface Notes, cambia ligeramente del Admin, es parecido al del usuario, pero el formulario de Incidencias, le muestra las acciones comentadas anteriormente "Rechazar y Cerrar".
Este enlace es especialmente dedicado a los técnicos, yo me encuentro entre ellos y me solidarizo con la causa.

El Brown Dispatcher
Este es cheriff, reparte juego, crea incidencias, añade técnicos, reasigna incidencias, pero hay una cosa que no puede hacer "Cerrar Incidencias".
Bueno, si habla con el "Gerente" de la base de datos y le pide que ademas del roll "Admin" quiere tener el roll "Respon", podrá hacer de todo.
El interface Notes, es la primera imagen de este documento.

Las Tripas:
Teniendo en cuenta como nació esta aplicación, (curso básico de Designer), hay mucho lenguaje de fórmulas, algo de LotusScripts y un poco de JavaScripts.

Las vistas:
He dejado las básicas, como podréis ver en página principal del "Admin" hay sitio para que podías añadir vuestras vistas personalizadas.
En web uso el formulario $$ViewTemplateDefault, con alguna "trampilla".
Lo de "No se han encontrado Documentos", se que tiene arreglo, pero en versiones posteriores lo iremos mejorando.
Hay un "bug", en web cuando pinchas en "Terminadas" da un pecao, lo he dejado a propósito, se trata de que sirva para aprender (los que sabéis no necesitáis bajaros la aplicación), Este bug muestra para que vale el formulario $$ReturnGeneralError.
Hay una vista incrustada en la página principal Notes (formulario Principal) para que el técnico pueda ver a bote pronto el curro que tiene pendiente.
Por cierto, el navegador superior tiene una opción que pone "Pendientes", para el técnico es una chorrada, porque el no puede ver estos incidentes, quitarlo si no os gusta.

Los mensajes:
Aquí también he dejado lo imprescindible, avisarle al técnico que le han metido un marrón y avisarle al Brown Dispatcher que no te lo quieres comer.
El primero, lo puedes ver en las acciones de "Asignar", verás que hay varias, no me paro a comentarlas, hacen casi lo mismo, si alguien tiene alguna duda, sin problemas se lo aclarararé.
Lo de "Rechazar" como podéis observar es un poco mas complicado, pero si veis el código, al final busca el contenido del campo oculto "Encargado", yo he puesto un valor fijo, pero de la misma forma que al "Asignar" le damos un valor al campo "Responsable", debemos darle un valor al campo "Encargado". Labor de práctica para el que baje la base de datos, cambiarlo please, para que no me mande a mi los rechazos.

Los Roles:
Ya he hablado de los Roles, si os bajáis la base de datos,controlar este tema al probarla, el hecho que seáis "Gerentes" no significa que tengáis permiso para todo, hay que asignar el roll correspondiente, yo me podría los dos para probar todas las funciones y después iría quitando para ver que todo se comporta como pongo en esta entrada.

Como bajarla ???
Tanto para probarla y poder bajarla es necesario que os registréis en mi servidor. El usuario "Anonymous" no tiene acceso, cuando la publiqué, solo había que validarse al crear una incidencia, ahora la he dejado sin acceso anónimo para ver mejor la funcionalidad.
El archivo lo he puesto la página principal de la aplicación.
Image:Brown Management Program (version one)

Esto es solo un ejemplo, me gustaría seguir con el tema y hacer una "Super Aplicación", todo web. Agentes que avisen si una incidencia no se atiende en determinado tiempo, asignación automática si nadie hace nada, etc, etc.
Para eso necesito que alguien de los visitáis mi blog me echéis una mano, una super aplicación realizada por un equipo.
Yo he puesto la primera piedra, si hay quórum sacamos la versión 2.


Acabo de probarla y me parece que funciona todo, como le he quitado cosas, igual quedan rastros (por ejemplo,algún campo que no se use).
He comentado los campos ocultos, igual queda alguno, pero me da un poco de pereza dejarla inmaculada.
Si a alguien le vale para aprender, me alegro, si encima la usa, mejor y si alguien se apunta para mejorarla mucho mejor.

Acceso a la base de datos
Quedará pendiente de aprobación
1
César
18/04/2008 18:04:08

Muchas gracias Martin... por tu ayuda ;))

De momento estoy divirtiéndome de lo lindo, ya tengo los dos bugs arreglados :)) Si realizo mejoras que valen la pena, te informo.

2
Martín
17/04/2008 15:33:31

Hola César, aunque no te den autorización me alegra que por lo menos te sirva para aprender.

Si tienes alguna duda y te puedo ayudar ya sabes por donde ando.

La tengo colgada en el SLUG, zona de recursos, creo que el código es el mismo, solo cambia el formulario de arriba.

Te pongo el enlace.

Un saludo

{ Link }

3
César
17/04/2008 11:50:50

Martin, tengo que decirte.. que estos días estoy estudiándome la herramienta. Si llegan a darme la autorización, me gustaría implantarla. Ya te contaré.. de momento estoy ojeando todo !! me queda mucho por aprender.. y esta es una buena base.

César.

4
César
11/05/2008 9:50:24

Buenas Martín:

Tengo otra pequeña duda... y ya no se que probar mas :))

Verás, estoy mirando de "pulir" un poco el formulario que visualiza el usuario agregando campos para el nombre del responsable y el departamento (de esta forma después puedo realizar algúna estadística) mi gran pregunta es como... (para un usuario no le compliques la vida) pensé en un botón (pulsando llegará abrirse una nueva ventana) donde podrá escoger al responsable / departamento de esta forma los dos campos se rellenan solos, pero estoy probando que no tiene el mismo efecto en web. Que opinas?

Yo tenía pensado en poner esto en el botón, pero no chuta:

server:= @Subset(@DbName;1);

db := @Subset(@Subset(@DbName;2);-1);

vista:="nombre_de_la_vista";

FIELD campo_nombre_responsable:= @PickList([Custom]:[Single];server:db;vista;"*** ESTE ES EL TITULO ***";"Por favor selecciona un registro";1);

FIELD campo_depto_responsable:= @DbLookup("":"NoCache";server:db;vista;campo_nombre_responsable;2);

@Command([ViewRefreshFields]);

@All

Muchas gracias Martín.

Saludos.

5
César
06/05/2008 20:56:47

Buenas Martín... ya tengo algúna mejora (poco a poco y wuena letra) de momento inserté campos en el formulario para controlar la hora de creación de incidencia y la hora resuelta, todo funciona perfectamente... (ahora la pregunta, a ver si soy capaz de explicarme) cuando agrego campos nuevos en el formulario Incidencias (en el apartado que visualiza el usuario) estos aparecen sin colores (gris-amarillo) como puedo agregar colores a estos nuevos campos? supongo que es algún estilo... pero no tengo manera de encontrarlo. O3's espero que puedas entenderme menudo rollo. Un saludo y muchas gracias de nuevo.

6
Martín
07/05/2008 0:30:57

Hola César, voy a echarle un vistazo, hace tiempo que no enredo con esta aplicación, te contesto con una nueva entrada en mi blog porque tengo que poner alguna imagen para explicarme mejor.

Me imagino que te estas refiriendo a lo que ve le usuario cuando crea una nueva incidencia.

7
Josep Alemany
22/01/2008 20:37:25

Hola Martin,

Me he bajado la base de datos de Incidencias para "ojearla"...

Tiene buena pinta!

Saludos,

Josep Alemany

8
jm leal
22/01/2008 19:19:45

Creo seriamente, que debieras crear una tienda on.line y vender tus productos a los internautas torpes !!!

Bromas aparte me la descargo y la examinare después, ahora estoy haciendo declaraciones de IVA'S

Salu2

pd: hacienda somos todos, incluido los catalanes !!!

9
Luka
04/02/2008 20:53:43

Gracias, me va a servir de mucha ayuda paisano.

10
César
13/05/2008 14:07:01

Gracia Martín por responder...

Verás, estoy en el formulario "Incidencias" en el apartado donde el usuario explica la incidencia que tiene (formulario Web). Tengo los campos Nombre (que sale por defecto al validarse) Fecha de la incidencia (tb sale solito) Hora de apertura (tb solito) y quiero agregar Responsable, Departamento y Fase, después toca al usuario explicar la incidencia. Mi intención es que al escoger al responsable se rellenen los campos departamento y fase automaticamente. Logicamente todo esto lo pillaría de una vista que alimentaría con la últimas incorporaciones en la empresa. Con todo esto intento que no crear errores en los datos en la incidencia abierta (luego tengo que realizar estadísticas). Es posible?

De momento tengo cada campo con un @DbColumn("":"nocache"; ""; "vistaderesposanbles"; 1) pero no me gusta nada.. cada usuario podría escoger el departamento con el nombre del responsable que quiera. Espero que puedas entenrderme, menudo rollo te estoy mentiendo (no quiero amargarte la fiesta!!) Salaudos.

11
Martín
13/05/2008 17:01:02

Te entiendo perfectamente, yo esto lo use en una aplicación de Gatos, al abrir la base de datos le obligaba a crear un documento de perfil, debía poner todos sus datos, jefe, departamento, etc,etc

Hasta que no tuviera su documento de perfil no podía hacer una liquidación de gastos.

Al crear la liquidación en el QueryOpen o PostOpen (no recuerdo bien) rellenaba de forma automática el formulario.

Pero en web no tengo ni idea como hacerlo, pero te puedo dar una pista a ver si lo consigues.

Te voy a poner un enlace con una base de datos en Notes.net, es todo web, métela en tu servidor y fírmala.

Como verás el usuario solo mete sus datos una vez, por ejemplo el teléfono, la próxima vez que crea un formulario estos datos se rellenan de forma automática.

Este es el enlace:

{ Link }

Un saludo

12
Gorka
21/01/2008 13:08:53

Gracias Martin, por tu mensaje. Le echare un vistazo.

Saludos

13
César
13/05/2008 23:02:09

Muchas gracias Martín... me voy a ojearla a ver que consigo.

Ya te comentaré a ver que tal. Saludos!.

14
Martín
13/05/2008 10:10:25

Hola Cesar, hoy estoy de fiesta, es "Martes de Campo", en Oviedo es fiesta local.

De tu pregunta hay una cosa que no entiendo, me imagino que lo que quieres es que desde Notes, al asignar una incidencia a un técnico, aparte del nombre, con un @PickList se traiga mas datos del técnico (eso en web no funciona).

Si es eso lo que quieres dímelo y lo añado a la base de datos.

Un saludo


Autor SIDRA400

Mi nombre es Martín Ortega Novella, vivo en Asturias, casi toda mi vida laboral ha sido en IBM, pero ya estoy jubilado.
Siempre he utilizado Lotus Notes/Domino para mi blog, donde me he sentido más cómodo ha sido cuando estaba alojado en mi AS/400, ahora está en un iMac
Durante un año utilicé IBM WebSphere Portal Server, un gran producto pero volví a usar Lotus / Notes porque es lo que más gusta.
SIDRA400 es miembro del ESLUG (Spanish HCL Domino User Group).