Con Fractal Hub, es posible automatizar la cancelación masiva de Órdenes de Trabajo (OTs) integrando tu instancia de Fracttal con Google Sheets. Esta funcionalidad es ideal para optimizar la gestión y ahorrar tiempo al desactivar OTs que ya no serán ejecutadas.
Esta guía práctica te muestra cómo configurar y ejecutar este proceso en tres fases: configuración en Google Cloud, conexión en Fracttal y preparación de la hoja de cálculo para la ejecución del flujo.
Fase 1: Configuración en Google Cloud Platform (GCP)
Antes de interactuar con Fracttal, es necesario configurar el entorno en Google Cloud para autorizar el acceso a Google Sheets.
-
Accede a la GCP con tu cuenta de Google y haz clic en el selector de proyectos en la barra superior junto al logo.
-
Si no tienes un proyecto, haz clic en "Proyecto nuevo". Asígnale un nombre descriptivo (ej. cancelar OTs) y haz clic en "Crear".
Debes habilitar las APIs que permitirán a Fracttal leer y escribir en los servicios de Google Drive y Sheets.
-
En el buscador principal, ve a "APIs y servicios".
-
Haz clic en el botón "+ HABILITAR APIS Y SERVICIOS".
-
Utiliza la barra de búsqueda para encontrar y habilitar las siguientes APIs, una por una:
- Google Drive API
- Drive Labels API
- Google Drive Activity API
- Google Sheets API
-
Para cada una, selecciónala en los resultados y haz clic en el botón "Habilitar".
La cuenta de servicio actuará como un "usuario robot" que Fracttal utilizará para acceder a tu hoja de cálculo de forma segura.
-
Dentro de "APIs y servicios", ve a la sección "Credenciales" en el menú izquierdo.
-
Haz clic en "+ CREAR CREDENCIALES" y selecciona "Cuenta de servicio".
-
Asigna un nombre a la cuenta de servicio (ej. cancelar-ots). El ID se generará automáticamente.
-
Haz clic en "Crear y continuar" y luego en "Listo".
-
De vuelta en la lista de "Cuentas de servicio", haz clic en la que acabas de crear. Ve a la pestaña "CLAVES".
-
Haz clic en "AGREGAR CLAVE" y selecciona "Crear clave nueva".
-
Asegúrate de que el tipo de clave sea JSON (opción recomendada) y haz clic en "Crear".
Nota: Se descargará automáticamente un archivo .json en tu computador. Este archivo contiene las credenciales privadas y es crucial para la conexión. Guárdalo en un lugar seguro, ya que no podrás volver a descargarlo.
Fase 2: Configuración en Fracttal One
Ahora, configuraremos la conexión dentro de Fracttal para que pueda utilizar las credenciales de Google.
-
En tu instancia de Fracttal One, ve a Configuración Catálogos Auxiliares Conexiones y haz clic en (+) para añadir una nueva conexión.
-
En el campo "Tipo", selecciona Google Sheet (Service Account).
-
Completa los campos del formulario utilizando la información del archivo .json que descargaste en el paso anterior.
- Haz clic en "Guardar".
El usuario API que ejecutará el flujo necesita permisos para modificar OTs.
Navega a Configuración > Conexiones API > Consumidores / OAuth.
Asegúrate de tener un consumidor creado. Este consumidor debe estar asociado a un Grupo de Permisos que tenga la capacidad de editar OTs. Consulta el artículo: Crear consumidores OAUTH
Para verificar los permisos, ve a Configuración > Cuentas de Usuarios > Permisos.
Selecciona el grupo de permisos correspondiente y asegúrate de que en el módulo Tareas > Órdenes de Trabajo > En Proceso, la casilla de "Editar" esté marcada.
Este permiso es el que permite cambiar el estado de una OT a "Cancelado".
Fase 3: Preparación y ejecución del proceso
Con las configuraciones listas, el último paso es preparar los datos y ejecutar el flujo.
Crea una nueva hoja de cálculo en Google Sheets.
Nómbrala de forma descriptiva (ej. Cancelar OTs).
-
En la primera fila de la hoja, crea las siguientes columnas:
A: folio: Aquí irán los IDs de las OTs a cancelar.
B: user_code: El código del usuario en Fracttal que registrará la cancelación.
C: work_orders_status_cancel: El motivo de la cancelación. Debe coincidir exactamente con un motivo existente en tu catálogo de Fracttal.
-
D: note: Una nota opcional para la cancelación.
-
Paso Crítico: Haz clic en el botón "Compartir" y añade el correo electrónico de la cuenta de servicio (el campo client_email de tu archivo .json). Asígnale el rol de "Editor". Esto es fundamental para que Fracttal pueda leer y escribir en la hoja.
Para evitar errores, solo debes intentar cancelar OTs que cumplan con los requisitos.
En Fracttal One, ve a Plan de Tareas > Órdenes de Trabajo y cambia a la vista de lista.
-
Aplica los siguientes filtros para encontrar OTs elegibles para cancelación:
Estado: En Proceso
- Porcentaje de Avance: = a 0
Estado de la Tarea: No Iniciada
Haz clic en "Aplicar Filtros".
Exporta los resultados a un archivo .xlsx o .csv utilizando la opción "Exportar masivamente".
Abre el archivo exportado y copia los IDs de las OTs en la columna folio de tu Google Sheet.
¿Dónde encontrar el user_code?
Encuéntralo en el catálogo de Recursos Humanos: busca al usuario y copia el valor de su campo Código.
Rellena las columnas user_code, work_orders_status_cancel y note para todas las filas correspondientes. Puedes arrastrar los valores si son los mismos para todas las OTs.
Fase 4: Configurar y ejecutar el flujo en Fractal Hub
Con la hoja de cálculo lista y los datos preparados, el paso final es construir la automatización en Fractal Hub.
Ve a Fracttal Hub y crea un nuevo flujo. Asígnale una descripción clara.
Configurar el activador:
Pulsa en el Activador y, a continuación, en el menú de la derecha, selecciona el Evento como Manual y guarda los cambios.
Configurar Fuente (Source):
Haz clic en el nodo Fuente.
En el campo Módulo, selecciona GoogleSheet.
En Conexión, elige la conexión que creaste en el Paso 4 (Cancelar OT).
La Acción será Leer.
-
En el campo spreadsheet_id, debes pegar el ID de tu hoja de cálculo.
¿Dónde encontrar el spreadsheet_id?
Abre tu Google Sheet y mira la URL en el navegador. El ID es la larga cadena de caracteres que se encuentra entre /d/ y /edit.
.../spreadsheets/d/[ESTE ES EL ID QUE DEBES COPIAR]/edit... En el campo sheet, escribe 0 (para indicar que leerá la primera pestaña de la hoja).
-
En la sección Campos, debes replicar exactamente los nombres de las columnas de tu Google Sheet. Agrega los siguientes campos, asegurándote de que el tipo sea Texto:
folio
user_code
work_orders_status_cancel
note
Guarda la configuración de la fuente.
Configurar Conexión (Target):
Haz clic en el nodo de Conexión.
En el campo Módulo, selecciona Fractal.
En Conexión, elige el consumidor OAuth que tiene los permisos necesarios.
-
En Acción, busca y selecciona cancel_work_orders_bulk.
Guarda la configuración del destino.
Configurar el mapeo de campos:
Una vez seleccionada la acción, haz clic en el nodo de Configuración.
Se abrirá la pantalla de "Configuración de Campos". Aquí debes conectar los datos de la Fuente (Google Sheet) con los campos que espera el Destino (Fracttal). Mapea los campos de la siguiente manera:
folio (Destino) → folio (Fuente)
user_code (Destino) → user_code (Fuente)
work_orders_status_cancel (Destino) → work_orders_status_cancel (Fuente)
note (Destino) → note (Fuente)
Guarda el mapeo.
Guardar y habilitar el flujo:
En la esquina superior derecha, haz clic en Guardar.
Activa el interruptor Habilitado en la parte superior izquierda.
Paso 9: Ejecutar y verificar el resultado
Con el flujo completamente configurado y habilitado, ya puedes proceder con la cancelación masiva.
-
En la pantalla principal del flujo, haz clic en el botón Ejecutar.
-
Para monitorear el progreso, navega a las siguientes secciones en el menú izquierdo de Fractal Hub:
Cola de eventos: Aquí verás el estado del flujo, que pasará de En cola a Procesando y finalmente a Finalizado.
Historial de Ejecución: Una vez finalizado, podrás ver un registro detallado. Un proceso exitoso mostrará Sí en las columnas de Extracción, Transformación y Carga, con un mensaje 200 (código de éxito).
Verificación final en Fracttal One:
Regresa a tu instancia de Fracttal One, en la vista de lista de Órdenes de Trabajo.
-
Las OTs que estaban en tu hoja de cálculo ya no deberían aparecer en la lista, ya que su estado ha sido cambiado a "Cancelado".