Aunque una de las características del ERP Protheus sea la posibilidad de personalizar sus procesos y rutinas, la personalización no se puede hacer de manera descontrolada. Existe un límite para las personalizaciones.
Una buena práctica es no desarrollar rutinas personalizadas para sustituir rutinas estándar del sistema, que tratan procesos delicados y de gran importancia para la integración entre los módulos, como:
- Solicitud de compra
- Pedido de compra
- Factura de entrada
- Pedido de venta
- Factura de salida
- Títulos por cobrar dados de baja
- Títulos por pagar dados de baja
- Generación de libros fiscales
Dicha lista es tan sólo un ejemplo, puesto que existen muchas otras rutinas que se debe evitar o sustituir por rutinas personalizadas.
En el caso de estas rutinas, esto no significa que no hay la posibilidad de personalizarlas. El sistema permite que la rutina se personalice en puntos determinados previamente. En estos puntos es posible desarrollar nuevas validaciones, nuevos procesos, modificar alguna etapa del proceso existente, grabar nuevos campos o tablas, etc. En el Protheus, los puntos determinados previamente se llaman Puntos de Entrada.
Puntos de Entrada
El punto de entrada es una ventana en un determinado punto de un proceso estándar, donde se puede crear una rutinas específica que tratará las particularidades de cada cliente en el proceso.
Un punto de entrada puede estar preparado para enviar informaciones por medio de parámetros y recibir el resultado. Para esto, el punto de entrada se debe crear con estas características.
Los puntos de entrada ya están previamente definidos en el ERP Protheus. Por lo tanto, lo que está disponible es la opción que permite utilizar dichos puntos de entrada para desarrollar personalizaciones. La apertura de nuevos puntos de entrada es una prerrogativa exclusiva de TOTVS.
Para utilizar un punto de entrada, es necesario saber su nombre. Por ejemplo, el punto de entrada disponible en la Factura de Salida, después de grabarlo, es el SF2460I. Por lo tanto, para utilizar este punto de entrada es necesario crear una función de usuario con este nombre, según la siguiente demostración:
User Function SF2460I()
El nombre del programa fuente que contiene esta función puede ser el mismo nombre del punto de entrada o una biblioteca de funciones y puntos de entrada. Esta última opción es la que más se recomienda, puesto que facilita la organización y búsqueda de puntos de entrada utilizados en el proyecto.
Como veremos en los siguientes tópicos, un punto de entrada también se puede llamar por medio de la función ExecBlock().