Scripts personalizados: descripción general
La programación personalizada permite ampliar la funcionalidad del software en determinados momentos clave o activar acciones. Esto se consigue mediante scripts personalizados, que pueden ser scripts individuales o proyectos de scripts (varios scripts que se ejecutan conjuntamente como un todo).
En el entorno de scripting, el autor de scripts tiene acceso a numerosas funciones y procedimientos habituales de tipo Pascal o VBScript. Un ejemplo habitual sería un script de evento que se ejecuta al activarse la acción «Fin del evento». El script podría comprobar varias condiciones relacionadas con el evento, compararlas con otros datos de la base de datos y, si se cumplen determinadas condiciones, impedir que el usuario complete el evento.
En esencia, la programación personalizada sigue el mismo flujo de ejecución que la configuración de flujos de trabajo, salvo que ofrece un acceso más detallado a los distintos puntos de ejecución dentro del modelo de eventos, lo que permite un control más preciso o un ajuste más fino de los eventos. En esencia, cuando no es posible realizar una tarea utilizando la amplia gama de herramientas disponibles en la configuración de flujos de trabajo, IndySoft puede considerar que el uso de scripts personalizados es la mejor solución para cumplir con los requisitos del flujo de trabajo.
Debido al riesgo de que se produzcan errores en la programación de scripts personalizados, a la necesidad de tener conocimientos de programación y al nivel de conocimiento del sistema en su conjunto que se requiere, el acceso al software está restringido al personal de IndySoft Services. No está incluido en la oferta del contrato de asistencia técnica y no está disponible para su compra por parte de los clientes finales.
El acceso temporal a los scripts personalizados durante la instalación y las tareas de resolución de problemas se controla mediante un «código de respuesta» que debe introducirse antes de poder ejecutar cualquier script por primera vez en una sesión de IndySoft. Al cerrar la sesión del entorno de scripting, será necesario un nuevo código de respuesta para volver a acceder.
Los códigos de respuesta solo pueden ser facilitados por un técnico de servicio o de asistencia de IndySoft para ayudar a resolver problemas relacionados con las funciones programadas del producto.
Para facilitar la integración con el sistema central de IndySoft, el entorno de scripting pone a disposición decenas de procedimientos y funciones de IndySoft. Estos procedimientos o funciones ponen a disposición del entorno de scripting aspectos clave de la funcionalidad, como por ejemplo: devolver el valor de un campo, establecer el valor de un campo, actualizar una pantalla, devolver los datos de inicio de sesión, etc.
Los scripts de una sola línea han sido un elemento básico del sistema de eventos de IndySoft durante varias versiones (los scripts de inicio de sesión, menos habituales, se introdujeron en la versión 8x), y este concepto se mantiene en la versión 9x y posteriores. Además de los scripts a nivel de evento, existen seis tipos diferentes de scripts:
Hay seis tipos diferentes de scripts que se describirán en los siguientes apartados:
·Scripts de eventos - proporcionan acceso a los campos y detalles de los eventos, se activan en varios puntos durante el asistente de eventos
·Scripts de equipos - proporcionan acceso a los campos y detalles de los equipos, se activan en varios puntos durante la modificación de equipos en la pantalla principal
·Scripts de plantillas - proporcionan acceso a los campos y detalles de las plantillas, se activan en varios puntos durante la modificación de plantillas en el Editor de plantillas
·Scripts del sistema de pedidos - proporcionan acceso a los campos y detalles del sistema de pedidos (presupuestos, órdenes de trabajo, facturas); se activan en diversos momentos durante el uso del sistema de pedidos
·Scripts de inicio de sesión - proporcionan acceso al escenario de inicio de sesión actual; se activan al cambiar la contraseña al iniciar sesión o al editar el usuario en el Gestor de perfiles
·Scripts de alarma - proporcionan acceso a funciones de scripting básicas, utilizadas para crear scripts de desglose complejos; se activan al lanzarse las alarmas. Estos scripts NO se guardan en la base de datos, sino que se almacenan como archivos en el directorio del programa IndySoft, con el nombre de la alarma correspondiente.
Cada uno de los tipos de scripts contiene un conjunto diferente de procedimientos y funciones básicos de IndySoft específicos para ese tipo de funcionalidad. Todos los tipos de scripts incluyen además acceso a una biblioteca básica de IndySoft con procedimientos y funciones que permiten acceder a funcionalidades de software comunes, a datos detallados y a un acceso genérico a la base de datos (enlaces a la base de datos que se ajustan automáticamente a la configuración de conectividad establecida en los ajustes de la base de datos).
Hay cuatro tipos de bibliotecas a las que puedes consultar para ver las funciones disponibles:
1. Funciones de scripting personalizadas de la biblioteca Pascal - Se trata de una biblioteca de procedimientos y funciones comunes, similar a Pascal, que está disponible para todos los tipos de scripting.
2. Funciones de scripting personalizadas de la biblioteca VBScript - Se trata de una biblioteca de procedimientos y funciones comunes, similar a VBScript, que está disponible para todos los tipos de scripting.
3. Procedimientos y funciones comunes de IndySoft - Estos procedimientos y funciones genéricos también están disponibles en todos los tipos de scripts. Estos procedimientos y funciones permiten acceder rápidamente a las funciones de IndySoft.
4. La biblioteca de procedimientos y funciones específica de ese tipo de script. El conjunto definitivo de procedimientos y funciones disponibles depende del tipo de script; así, en el caso de los scripts de eventos, por ejemplo, también están disponibles los procedimientos y funciones de Event Scripts. Para los scripts de Equipment, están disponibles los procedimientos y funciones de Equipment Scripts, etc.
Los scripts de un solo archivo siempre siguen la sintaxis de VBScript en cuanto a su estructura, es decir, sentencias «if...then», bucles «while», etc. Pero hay docenas de funciones de tipo «procedimiento» al estilo de Pascal que también están disponibles para mayor comodidad, es decir, DateToStr, FormatFloat, etc. Los scripts basados en proyectos son aún más flexibles: al crear el proyecto, se elige el lenguaje de scripting principal: VBScript o Pascal. En cualquier caso, se dispone de los mismos procedimientos y funciones básicos de IndySoft; solo tienes que elegir el estilo de programación con el que estés más familiarizado.
Por último, el IndySoft Project Editor está disponible para todos los tipos de scripts (a excepción de los scripts de alarma) y permite crear scripts aún más avanzados que incluyen el diseño de formularios y la depuración integrada.
Antes de continuar, consulte la Declaración de precaución.
Consejo de productividad
Utiliza la utilidad Script Review (ScriptReview.exe) para revisar y editar rápidamente scripts de un solo archivo.
