[{"data":1,"prerenderedAt":861},["ShallowReactive",2],{"guide:es:work-fulfillment/tasks":3},{"id":4,"title":5,"body":6,"description":853,"extension":854,"meta":855,"navigation":856,"path":857,"seo":858,"stem":859,"__hash__":860},"guide_es/es/user/work-fulfillment/tasks.md","Tareas",{"type":7,"value":8,"toc":831},"minimark",[9,13,17,22,33,40,74,80,107,112,122,126,129,137,140,151,156,167,171,174,179,200,205,208,213,220,223,227,230,235,249,254,272,278,292,296,301,304,309,315,319,322,327,333,337,340,345,351,355,358,364,381,387,391,398,403,417,421,427,430,434,440,444,450,455,466,470,479,483,512,517,531,535,538,544,549,560,565,579,584,598,602,609,637,642,658,662,665,670,681,686,697,702,713,717,722,766,772,783,787,792,812,817],[10,11,5],"h1",{"id":12},"tareas",[14,15,16],"p",{},"Las tareas definen trabajo planificado con requisitos específicos de recursos y ubicaciones geográficas. Las tareas usan el flujo de trabajo version/commit para planificación colaborativa offline y capacidad de rollback.",[18,19,21],"h2",{"id":20},"estructura-de-tarea","Estructura de Tarea",[14,23,24,29],{},[25,26],"img",{"alt":27,"src":28},"Lista de Tareas","/guide/work-fulfillment/tasks-list.png",[30,31,32],"em",{},"Página de tareas mostrando trabajo planificado con seguimiento de progreso y requisitos multi-recurso",[14,34,35,39],{},[36,37,38],"strong",{},"Campos Básicos:","**",[41,42,43,50,56,62,68],"ul",{},[44,45,46,49],"li",{},[36,47,48],{},"Nombre"," - Nombre descriptivo de tarea",[44,51,52,55],{},[36,53,54],{},"Descripción"," - Instrucciones detalladas de trabajo",[44,57,58,61],{},[36,59,60],{},"Geometría"," - Punto, línea, o polígono mostrando ubicación de trabajo",[44,63,64,67],{},[36,65,66],{},"Orden"," - Orden de trabajo padre agrupando tareas relacionadas",[44,69,70,73],{},[36,71,72],{},"Recursos"," - Array de materiales/labor requeridos (soporte multi-recurso)",[14,75,76,79],{},[36,77,78],{},"Requisitos de Recursos:","\nCada entrada de recurso incluye:",[41,81,82,89,95,101],{},[44,83,84,88],{},[85,86,87],"code",{},"resource"," - Referencia a definición de recurso",[44,90,91,94],{},[85,92,93],{},"volume"," - Cantidad/amount requerido",[44,96,97,100],{},[85,98,99],{},"uom"," - Unidad de medida",[44,102,103,106],{},[85,104,105],{},"assignedTo"," - Persona responsable de recoger esta línea de recurso específica (opcional)",[14,108,109],{},[36,110,111],{},"Ejemplo:",[113,114,119],"pre",{"className":115,"code":117,"language":118},[116],"language-text","Tarea: \"Instalar caja de conexión de red en Edificio 42\"\nGeometría: Punto (lat: 40.7128, lng: -74.0060)\nRecursos: [\n  { resource: \"Caja de Conexión\", volume: 1, uom: \"unidades\" },\n  { resource: \"Cable Cat6\", volume: 15, uom: \"metros\" },\n  { resource: \"Tornillos de Montaje\", volume: 8, uom: \"unidades\" },\n  { resource: \"Electricista\", volume: 2, uom: \"horas\" }\n]\n","text",[85,120,117],{"__ignoreMap":121},"",[18,123,125],{"id":124},"tareas-multi-recurso","Tareas Multi-Recurso",[14,127,128],{},"Sistema anterior: Un recurso por tarea",[41,130,131,134],{},[44,132,133],{},"Problema: Trabajo complejo crea marcadores de mapa excesivos",[44,135,136],{},"Ejemplo: 100 instalaciones × 4 recursos = 400 puntos de mapa",[14,138,139],{},"Sistema actual: Múltiples recursos por tarea",[41,141,142,145,148],{},[44,143,144],{},"Solución: Un marcador de mapa único representa trabajo completo",[44,146,147],{},"Mismo ejemplo: 100 puntos de mapa (uno por instalación)",[44,149,150],{},"Mapa más limpio, planificación espacial más fácil",[14,152,153],{},[36,154,155],{},"Beneficios:",[41,157,158,161,164],{},[44,159,160],{},"Clutter de mapa reducido",[44,162,163],{},"Materiales relacionados agrupados (puerta + tornillos + adhesivo = una tarea)",[44,165,166],{},"Progreso rastreado a través de todos los recursos",[18,168,170],{"id":169},"asignación-por-recurso","Asignación por Recurso",[14,172,173],{},"Cada línea de recurso en una tarea puede asignarse a una persona específica. Esto permite a los planificadores designar quién es responsable de recoger cada material o completar cada componente de labor, a nivel de línea, no únicamente a nivel de orden de trabajo.",[14,175,176],{},[36,177,178],{},"Funcionamiento de la asignación:",[41,180,181,187,190,197],{},[44,182,183,184],{},"En el detalle de la tarea, cada fila de recurso cuenta con una columna ",[36,185,186],{},"Asignado a",[44,188,189],{},"La columna aparece automáticamente cuando alguna fila de la tarea lleva una asignación; permanece oculta en tipos de registro como reportes donde la asignación no aplica",[44,191,192,193,196],{},"Asignar a alguien una línea de recurso no reserva inventario — registra quién tiene ",[30,194,195],{},"previsto"," recoger y entregar ese artículo",[44,198,199],{},"El estado real de recogida (quién recogió, cuánto, cuándo) se registra en el libro de transacciones, no en la tarea en sí",[14,201,202],{},[36,203,204],{},"¿Por qué hacer el seguimiento a nivel de recurso?",[14,206,207],{},"Las órdenes de trabajo agrupan muchas tareas y las asignan a personas, pero una sola orden puede cubrir decenas de líneas de recurso distribuidas entre múltiples tareas. La asignación por recurso llena ese vacío: el planificador puede indicar \"Alicia recoge los 50 m de conducto para esta tarea, Roberto se encarga de las cajas de empalme.\" Cada persona recibe una vista delimitada exactamente a lo que debe recoger, sin ambigüedad sobre quién es responsable de qué artículo.",[14,209,210],{},[36,211,212],{},"Acción Enviar Asignaciones:",[14,214,215,216,219],{},"Una vez establecidas las asignaciones de recursos, la acción ",[36,217,218],{},"Enviar Asignaciones"," en la página de tareas despacha notificaciones a todos los asignados. Cada persona recibe un único mensaje consolidado con sus órdenes de trabajo (nombre, fecha límite, enlace) y un código QR por cada línea de recurso asignada. El código QR es la autorización de recogida: el trabajador lo escanea en el almacén para retirar su artículo específico. La recogida queda registrada como transacción automáticamente al escanear.",[14,221,222],{},"La acción Enviar Asignaciones está disponible tanto como acción de fila sobre tareas individuales como en forma de operación masiva cuando se seleccionan varias tareas en la tabla.",[18,224,226],{"id":225},"las-tareas-son-versionadas","Las Tareas Son Versionadas",[14,228,229],{},"A diferencia de asignaciones/reportes, las tareas usan flujo de trabajo version/commit:",[14,231,232],{},[36,233,234],{},"Por qué Versionadas:",[41,236,237,240,243,246],{},[44,238,239],{},"Admins diseñan áreas de trabajo offline (túneles de metro, sitios remotos)",[44,241,242],{},"Detección de conflicto espacial necesaria (geografía superpuesta)",[44,244,245],{},"Operaciones batch comunes (rediseñar campaña completa)",[44,247,248],{},"Rollback valioso (deshacer cambio de planificación completo)",[14,250,251],{},[36,252,253],{},"Flujo de Trabajo:",[255,256,257,260,263,266,269],"ol",{},[44,258,259],{},"Crear versión (modo borrador)",[44,261,262],{},"Agregar/editar tareas en borrador",[44,264,265],{},"Validación espacial (verificar superposiciones)",[44,267,268],{},"Commit versión → tareas se vuelven \"oficiales\"",[44,270,271],{},"Trabajadores ven tareas committed en asignaciones",[14,273,274,277],{},[36,275,276],{},"Colaboración Offline:","\nMúltiples admins pueden crear versiones separadas:",[41,279,280,283,286,289],{},[44,281,282],{},"Admin A: Planificar tareas de región norte",[44,284,285],{},"Admin B: Planificar tareas de región sur",[44,287,288],{},"Ambos trabajan offline, commitean después",[44,290,291],{},"Resolución de conflicto si geografía superpuesta",[18,293,295],{"id":294},"tipos-de-geometría-de-tarea","Tipos de Geometría de Tarea",[297,298,300],"h3",{"id":299},"tareas-de-punto","Tareas de Punto",[14,302,303],{},"Trabajo de ubicación única (instalación de equipo, inspección).",[14,305,306,308],{},[36,307,111],{}," Instalar caja de conexión",[113,310,313],{"className":311,"code":312,"language":118},[116],"Geometría: { type: \"Point\", coordinates: [lng, lat] }\n",[85,314,312],{"__ignoreMap":121},[297,316,318],{"id":317},"tareas-de-línea","Tareas de Línea",[14,320,321],{},"Trabajo lineal (corridas de cable, instalación de tubería).",[14,323,324,326],{},[36,325,111],{}," Correr 500m de cable de fibra óptica",[113,328,331],{"className":329,"code":330,"language":118},[116],"Geometría: { type: \"LineString\", coordinates: [[lng1,lat1], [lng2,lat2], ...] }\n",[85,332,330],{"__ignoreMap":121},[297,334,336],{"id":335},"tareas-de-polígono","Tareas de Polígono",[14,338,339],{},"Trabajo basado en área (zonas de cobertura, áreas de servicio).",[14,341,342,344],{},[36,343,111],{}," Alcance puerta a puerta en vecindario",[113,346,349],{"className":347,"code":348,"language":118},[116],"Geometría: { type: \"Polygon\", coordinates: [[[lng1,lat1], ...]] }\n",[85,350,348],{"__ignoreMap":121},[18,352,354],{"id":353},"filtrado-por-proximidad","Filtrado por Proximidad",[14,356,357],{},"Encontrar tareas cerca de ubicaciones específicas:",[14,359,360,363],{},[36,361,362],{},"Caso de Uso:"," Trabajador en almacén quiere tareas cercanas",[255,365,366,369,372,375,378],{},[44,367,368],{},"Abrir página Tareas",[44,370,371],{},"Hacer clic en botón \"Filtrar Cercano\"",[44,373,374],{},"Arrastrar marcador de mapa a ubicación de almacén",[44,376,377],{},"Establecer distancia (ej. 5 km)",[44,379,380],{},"Tabla muestra solo tareas dentro del radio",[14,382,383,386],{},[36,384,385],{},"Acción de Fila:","\nHacer clic \"Filtrar Cercano\" en fila de tarea → auto-establece proximidad a la ubicación de esa tarea",[18,388,390],{"id":389},"uso-de-tarea-en-asignaciones","Uso de Tarea en Asignaciones",[14,392,393,394,397],{},"Las tareas aparecen en asignaciones como ",[36,395,396],{},"opciones de trabajo disponibles",":",[14,399,400],{},[36,401,402],{},"Asignación Flexible:",[41,404,405,408,411,414],{},[44,406,407],{},"Asignación podría tener 10 tareas disponibles",[44,409,410],{},"Objetivos de recursos requieren completar 1-2 de esas tareas",[44,412,413],{},"Trabajador elige qué tareas completar (flexibilidad)",[44,415,416],{},"Sobre-asignación por 10x común (más opciones que objetivos)",[14,418,419],{},[36,420,111],{},[113,422,425],{"className":423,"code":424,"language":118},[116],"Asignación a John:\n  Objetivos de Recursos: 50m cable, 20 cajas de conexión\n  Tareas Disponibles: [Tarea1, Tarea2, Tarea3, ... Tarea30]\n  \nJohn completa:\n  Tarea 5: 30m cable, 12 cajas de conexión\n  Tarea 12: 20m cable, 8 cajas de conexión\n  Total: Cumplió objetivo cable, cumplió objetivo cajas de conexión\n",[85,426,424],{"__ignoreMap":121},[14,428,429],{},"Trabajador tuvo 30 opciones de tarea para cumplir objetivos - alta flexibilidad.",[18,431,433],{"id":432},"seguimiento-de-progreso-de-tarea","Seguimiento de Progreso de Tarea",[14,435,436,439],{},[36,437,438],{},"Cálculo:","\nProgreso = Promedio de completación a través de todos los recursos",[14,441,442],{},[36,443,111],{},[113,445,448],{"className":446,"code":447,"language":118},[116],"Tarea con 3 recursos:\n  - Cable Cat6: 10m requerido, 5m completado = 50%\n  - Tornillos: 8 requerido, 8 completado = 100%\n  - Labor: 2 horas requerido, 0 horas reportado = 0%\n  \nProgreso general = (50% + 100% + 0%) / 3 = 50%\n",[85,449,447],{"__ignoreMap":121},[14,451,452],{},[36,453,454],{},"Indicadores Visuales:",[41,456,457,460,463],{},[44,458,459],{},"Barra de progreso: Verde ≥100%, Amarillo ≥50%, Rojo \u003C50%",[44,461,462],{},"Indicador de geometría: Marca verde si punto/línea/polígono válido",[44,464,465],{},"Usado en: Muestra qué asignaciones/reportes referencian esta tarea",[18,467,469],{"id":468},"creando-tareas","Creando Tareas",[14,471,472,475,476],{},[36,473,474],{},"Acceso Requerido:"," derecho admin ",[85,477,478],{},"tasksCreate",[14,480,481],{},[36,482,253],{},[255,484,485,488,491,494,497,500,503,506,509],{},[44,486,487],{},"Navegar a Cumplimiento → Tareas",[44,489,490],{},"Crear nueva versión (o editar borrador existente)",[44,492,493],{},"Hacer clic \"Agregar Tarea\" en versión",[44,495,496],{},"Llenar info básica (nombre, descripción)",[44,498,499],{},"Seleccionar orden (agrupamiento padre)",[44,501,502],{},"Hacer clic en mapa para establecer geometría",[44,504,505],{},"Agregar recursos (puede agregar múltiples)",[44,507,508],{},"Guardar tarea en borrador",[44,510,511],{},"Commit versión cuando planificación completa",[14,513,514],{},[36,515,516],{},"Mejores Prácticas:",[41,518,519,522,525,528],{},[44,520,521],{},"Agrupar materiales relacionados en tarea única (reduce clutter de mapa)",[44,523,524],{},"Usar nomenclatura consistente (ej. \"Instalar - Caja de Conexión - Edificio 42\")",[44,526,527],{},"Establecer volúmenes de recursos realistas (informa planificación de inventario)",[44,529,530],{},"Incluir recursos de labor (ayuda cálculos de personal)",[18,532,534],{"id":533},"generación-bulk-de-tareas","Generación Bulk de Tareas",[14,536,537],{},"Crear muchas tareas similares eficientemente:",[14,539,540,543],{},[36,541,542],{},"Escenario:"," Instalar 100 cajas de conexión en diferentes edificios",[14,545,546],{},[36,547,548],{},"Método 1: Importar desde GeoJSON",[255,550,551,554,557],{},[44,552,553],{},"Crear GeoJSON con 100 puntos",[44,555,556],{},"Cada feature tiene propiedades: nombre, descripción, recursos",[44,558,559],{},"Importar → crea 100 tareas en una versión",[14,561,562],{},[36,563,564],{},"Método 2: Generar desde Selección de Mapa",[255,566,567,570,573,576],{},[44,568,569],{},"Seleccionar 100 features de edificio existentes en mapa",[44,571,572],{},"Hacer clic \"Generar Tareas\"",[44,574,575],{},"Elegir template de tarea (requisitos de recursos)",[44,577,578],{},"Crea tarea en cada ubicación de edificio",[14,580,581],{},[36,582,583],{},"Método 3: Copiar Tarea Existente",[255,585,586,589,592,595],{},[44,587,588],{},"Seleccionar tarea con configuración correcta de recursos",[44,590,591],{},"Hacer clic \"Duplicar Tarea\"",[44,593,594],{},"Editar geometría a nueva ubicación",[44,596,597],{},"Repetir para instalaciones similares",[18,599,601],{"id":600},"impresión-en-lote-de-tareas","Impresión en Lote de Tareas",[14,603,604,605,608],{},"Un proyecto puede contener decenas o cientos de tareas. En lugar de imprimir cada una desde su página de detalle, usa la acción ",[36,606,607],{},"Imprimir todas las tareas"," a nivel de proyecto:",[255,610,611,618,624,631,634],{},[44,612,613,614,617],{},"Abre la página de detalle del proyecto padre (",[85,615,616],{},"/fulfillment/projects/:id",")",[44,619,620,621,623],{},"Haz clic en ",[36,622,607],{}," en el encabezado",[44,625,626,627,630],{},"La vista de impresión en lote se abre en ",[85,628,629],{},"/fulfillment/tasks/batch/[ids]"," — una lista de IDs de tareas separada por comas en la URL",[44,632,633],{},"La pantalla muestra 10 tareas por página (paginado con CSS — todos los registros están en el DOM, por lo que al imprimir se emite todo)",[44,635,636],{},"Imprime la página — cada tarea está separada por un salto de página forzado, por lo que obtienes una tarea por página impresa",[14,638,639],{},[36,640,641],{},"Notas:",[41,643,644,647],{},[44,645,646],{},"Límite de seguridad: la vista en lote está limitada a 200 tareas por ejecución de impresión. Si el proyecto supera este número, un aviso te lo indica y las tareas más allá de 200 se truncan — divide la impresión en lotes más pequeños si es necesario.",[44,648,649,650,653,654,657],{},"No se requiere trabajo nuevo en el servidor — la vista en lote lee el endpoint existente ",[85,651,652],{},"/api/tasks/get?_id=csv"," y renderiza cada tarea usando los mismos componentes ",[85,655,656],{},"RecordDetail*"," que la página de tarea individual, por lo que el contenido impreso coincide con lo que obtendrías al imprimir las tareas una a una.",[18,659,661],{"id":660},"validación-de-tarea","Validación de Tarea",[14,663,664],{},"Antes de commit de versión, sistema valida:",[14,666,667],{},[36,668,669],{},"Conflictos Espaciales:",[41,671,672,675,678],{},[44,673,674],{},"Polígonos superpuestos (dos tareas cubriendo misma área)",[44,676,677],{},"Tareas de punto demasiado cerca (umbral configurable)",[44,679,680],{},"Tareas de línea cruzando zonas restringidas",[14,682,683],{},[36,684,685],{},"Disponibilidad de Recursos:",[41,687,688,691,694],{},[44,689,690],{},"Advertencia si recursos requeridos no en inventario",[44,692,693],{},"No bloquea commit (tareas pueden ser futuras)",[44,695,696],{},"Ayuda planificación de procurement",[14,698,699],{},[36,700,701],{},"Validez de Geometría:",[41,703,704,707,710],{},[44,705,706],{},"Puntos deben tener coordenadas válidas",[44,708,709],{},"Líneas deben tener al menos 2 puntos",[44,711,712],{},"Polígonos deben cerrar (primer punto = último punto)",[18,714,716],{"id":715},"ciclo-de-vida-de-asignación-de-tarea","Ciclo de Vida de Asignación de Tarea",[14,718,719],{},[36,720,721],{},"Flujo Típico:",[255,723,724,730,736,742,748,754,760],{},[44,725,726,729],{},[36,727,728],{},"Planificación"," - Admin crea tareas en versión borrador",[44,731,732,735],{},[36,733,734],{},"Commit"," - Versión committed, tareas se vuelven oficiales",[44,737,738,741],{},[36,739,740],{},"Asignación"," - Tareas agregadas a asignaciones de trabajador (array availableTasks)",[44,743,744,747],{},[36,745,746],{},"Ejecución"," - Trabajador completa algunas de las tareas disponibles",[44,749,750,753],{},[36,751,752],{},"Reporte"," - Trabajador referencia taskRef en reporte workCompleted",[44,755,756,759],{},[36,757,758],{},"Progreso"," - Progreso de tarea actualizado basado en trabajo completado",[44,761,762,765],{},[36,763,764],{},"Completación"," - Cuando todos los recursos en 100%, tarea marcada completa",[14,767,768,771],{},[36,769,770],{},"Reuso de Tarea:","\nLas tareas pueden aparecer en múltiples asignaciones:",[41,773,774,777,780],{},[44,775,776],{},"Misma tarea asignada a múltiples trabajadores (trabajo dividido)",[44,778,779],{},"Tarea parcialmente completada por un trabajador, terminada por otro",[44,781,782],{},"Progreso agregado a través de todos los reportes",[18,784,786],{"id":785},"viendo-detalles-de-tarea","Viendo Detalles de Tarea",[14,788,789],{},[36,790,791],{},"Página de Detalle de Tarea Muestra:",[41,793,794,797,800,803,806,809],{},[44,795,796],{},"Información básica y geometría",[44,798,799],{},"Lista de requisitos de recursos",[44,801,802],{},"Barra de progreso y porcentaje",[44,804,805],{},"Usado en: Asignaciones y reportes referenciando esta tarea",[44,807,808],{},"Historial de versiones (qué versiones modificaron esta tarea)",[44,810,811],{},"Relación espacial con tareas cercanas",[14,813,814],{},[36,815,816],{},"Vista de Mapa:",[41,818,819,822,825,828],{},[44,820,821],{},"Color-coded por progreso (rojo = no iniciado, amarillo = parcial, verde = completo)",[44,823,824],{},"Indicadores de tipo de geometría (ícono para punto, estilo de línea, relleno de polígono)",[44,826,827],{},"Clickable para popup de detalle rápido",[44,829,830],{},"Filtrable por orden, progreso, proximidad",{"title":121,"searchDepth":832,"depth":832,"links":833},2,[834,835,836,837,838,844,845,846,847,848,849,850,851,852],{"id":20,"depth":832,"text":21},{"id":124,"depth":832,"text":125},{"id":169,"depth":832,"text":170},{"id":225,"depth":832,"text":226},{"id":294,"depth":832,"text":295,"children":839},[840,842,843],{"id":299,"depth":841,"text":300},3,{"id":317,"depth":841,"text":318},{"id":335,"depth":841,"text":336},{"id":353,"depth":832,"text":354},{"id":389,"depth":832,"text":390},{"id":432,"depth":832,"text":433},{"id":468,"depth":832,"text":469},{"id":533,"depth":832,"text":534},{"id":600,"depth":832,"text":601},{"id":660,"depth":832,"text":661},{"id":715,"depth":832,"text":716},{"id":785,"depth":832,"text":786},"Definir áreas de trabajo con requisitos de recursos y ubicaciones geográficas","md",{},true,"/es/user/work-fulfillment/tasks",{"title":5,"description":853},"es/user/work-fulfillment/tasks","4AZDm_rNP8ClxdB4XHG6tPaq1DzwcFlNKAf6Y-Ceygk",1780539291096]