# Disparador personalizado de proyectos Use el disparador de proyectos para activar automáticamente cualquier 'Acción' en un proyecto mediante un archivo de script o una función personalizada. Puede definir reglas y aplicar acciones predefinidas en proyectos que coincidan con esas reglas. Los disparadores son útiles al realizar acciones en otros módulos o en aplicaciones de terceros. ## Configuración de una nueva acción Para crear un nuevo disparador personalizado para proyectos: - Vaya a Admin > **Automatización** > **Disparadores personalizados** y seleccione **Proyectos**. - Haga clic en Nueva acción. - Ingrese un nombre y una descripción para la acción y seleccione cuándo debe ejecutarse la acción. ![](https://www.manageengine.com/userfiles/866/14262/ckfinder/images/qu/2021_07_09_08_09_292.png) - Establezca los criterios bajo los cuales debe ejecutarse la acción en los proyectos. Puede agregar varios criterios haciendo clic en el icono +. Cambie entre los operadores AND y OR entre los criterios según sus necesidades. ![](https://www.manageengine.com/userfiles/866/14262/ckfinder/images/qu/2021_07_09_08_09_293.png) - Seleccione el Tipo de acción (Funciones personalizadas/Scripts) y apunte al archivo de script correspondiente que debe activarse. ![](https://www.manageengine.com/userfiles/866/14262/ckfinder/images/qu/2021_07_09_08_09_294.png) En Realizar acción, elija si desea ejecutar un script o una función personalizada y configure lo mismo utilizando las siguientes indicaciones: - **Script**: Especifique el nombre del archivo de script. Por ejemplo, addComments.txt. - **Función personalizada**: Al ejecutar funciones personalizadas, puede manipular datos en ServiceDesk Plus y en otras aplicaciones externas. Elija la función personalizada requerida o agregue una nueva. - **Operaciones de retorno compatibles**: UPDATE_PROJECT y ADD_COMMENTS - Si desmarca la casilla 'Detener el procesamiento de acciones posteriores', se ejecutará la acción siguiente incluso después de que se aplique una regla de acción a un proyecto. Asegúrese de ingresar un nombre único para la 'Nueva acción', de modo que el nombre no entre en conflicto con nombres de 'Acción' existentes. Asegúrese de que el archivo de script se almacene solo en las ubicaciones especificadas. Guárdelos en el directorio de la siguiente manera: [SDP_Home]/integration/custom_scripts/executor_files De forma predeterminada, 'Detener el procesamiento de acciones posteriores' siempre está habilitado y las acciones se ejecutarán según el 'Orden de reglas de acción'. 'Organizar acciones' en la vista de lista le permite reorganizar el orden en que se ejecutan las acciones. En un script, puede pasar parámetros de API como argumentos, por ejemplo, py addComments.py $TITLE $TYPE. projectObj y context son los argumentos compatibles en las funciones personalizadas. ## Argumentos para scripts También podemos pasar argumentos para los scripts personalizados. La siguiente tabla muestra los posibles argumentos para scripts en el disparador personalizado de proyectos. **Posibles argumentos para scripts en el disparador personalizado de proyectos** | PARÁMETRO | DESCRIPCIÓN | |---|---| | $TITLE | Indica el título del proyecto | | $ID | Proporciona el ID único generado para el proyecto | | $CODE | Proporciona el código único asignado al proyecto | | $PRIORITY | Indica el nivel de prioridad del proyecto | | $STATUS | Indica el estado del proyecto | | $TYPE | Indica el tipo de proyecto | | $ESTIMATED_HOURS | Proporciona las horas estimadas para completar el proyecto | | $ACTUAL_HOURS | Proporciona las horas reales empleadas para completar el proyecto | | $ESTIMATED_COST | Proporciona el costo estimado para completar el proyecto | | $ACTUAL_COST | Proporciona el costo real del proyecto | | $CREATED_BY | Proporciona los detalles del usuario/técnico que creó este proyecto | | $CREATED_TIME | Proporciona la hora en la que se creó el proyecto | | $SCHEDULED_START_TIME | Proporciona la hora de inicio programada del proyecto | | $SCHEDULED_END_TIME | Proporciona la hora de finalización programada del proyecto | | $ACTUAL_START_TIME | Proporciona la hora de inicio real del proyecto | | $ACTUAL_END_TIME | Proporciona la hora de finalización real del proyecto | | $PROJECTED_END_TIME | Proporciona la hora de finalización proyectada del proyecto | | $OWNER | Indica el propietario asignado al proyecto | | $DEPARTMENT | Indica el departamento al que pertenece el proyecto | | $REQUESTER | Indica el usuario que solicitó este proyecto | | $SITE | Indica el sitio al que pertenece el proyecto | | $TEMPLATE | Indica la plantilla utilizada para el proyecto |