[{"data":1,"prerenderedAt":1680},["ShallowReactive",2],{"guide:es:inventory-management/transactions":3},{"id":4,"title":5,"body":6,"description":1672,"extension":1673,"meta":1674,"navigation":1675,"path":1676,"seo":1677,"stem":1678,"__hash__":1679},"guide_es/es/user/inventory-management/transactions.md","Transacciones",{"type":7,"value":8,"toc":1630},"minimark",[9,13,17,22,33,44,49,52,58,86,92,98,102,105,109,162,167,173,177,180,184,207,212,218,222,225,229,258,263,269,273,276,283,290,294,299,334,339,386,390,395,406,411,429,434,440,444,448,455,474,479,490,494,497,517,521,532,536,541,552,557,568,573,584,589,600,604,608,619,623,634,638,651,655,666,670,681,685,690,701,706,717,722,733,738,752,757,768,772,777,791,796,810,815,826,830,837,841,846,881,887,1017,1021,1026,1136,1141,1147,1151,1157,1220,1224,1229,1243,1248,1262,1267,1281,1285,1288,1365,1370,1384,1387,1391,1401,1406,1416,1420,1429,1434,1443,1446,1449,1457,1460,1469,1473,1483,1487,1495,1499,1508,1511,1515,1525,1529,1538,1543,1553,1557,1568,1573,1583,1586,1590,1600,1604,1614,1618,1626],[10,11,5],"h1",{"id":12},"transacciones",[14,15,16],"p",{},"Las transacciones crean un registro de auditoría inmutable de cada movimiento de inventario, consumo, recepción y ajuste. Las transacciones no pueden ser editadas o eliminadas - las correcciones agregan nuevas transacciones de ajuste.",[18,19,21],"h2",{"id":20},"tipos-de-transacción","Tipos de Transacción",[23,24,29],"pre",{"className":25,"code":27,"language":28},[26],"language-text","Flujo de Transacción:\n\nRecepción         Transferencia           Consumo           Ajuste          Recogida\n   ↓                   ↓                     ↓                ↓                ↓\nNuevo Stock → Sitio A → Sitio B → Trabajo Agota Stock  Corrección Manual  Retiro de Tarea\n(Compra)     (Recogida QR)      (Reporte Enviado)    (Conteo de Ciclo)  (Escaneo QR de Recurso)\n","text",[30,31,27],"code",{"__ignoreMap":32},"",[14,34,35,40],{},[36,37],"img",{"alt":38,"src":39},"Lista de Transacciones","/guide/inventory-management/transactions-list.png",[41,42,43],"em",{},"Página de transacciones mostrando registro de auditoría de todos los movimientos de inventario",[45,46,48],"h3",{"id":47},"recepción","Recepción",[14,50,51],{},"Nuevo inventario llega a un sitio (compras, devoluciones del campo).",[14,53,54],{},[55,56,57],"strong",{},"Campos:",[59,60,61,68,74,80],"ul",{},[62,63,64,67],"li",{},[30,65,66],{},"toSite"," - Sitio destino",[62,69,70,73],{},[30,71,72],{},"resource"," - Qué llegó",[62,75,76,79],{},[30,77,78],{},"toVolume"," - Nuevo saldo de artículo de stock después de recepción",[62,81,82,85],{},[30,83,84],{},"uom"," - Unidad de medida",[14,87,88,91],{},[55,89,90],{},"Ejemplo:"," 100m de cable llega al almacén",[23,93,96],{"className":94,"code":95,"language":28},[26],"type: \"receipt\"\ntoSite: Almacén Central\nresource: Cable Cat6\ntoVolume: 600m (era 500m, ahora 600m)\n",[30,97,95],{"__ignoreMap":32},[45,99,101],{"id":100},"transferencia","Transferencia",[14,103,104],{},"El inventario se mueve entre sitios (almacén → trabajador, trabajador → sitio de campo).",[14,106,107],{},[55,108,57],{},[59,110,111,117,122,127,133,138,144,150,156],{},[62,112,113,116],{},[30,114,115],{},"fromSite"," - Ubicación fuente",[62,118,119,121],{},[30,120,66],{}," - Ubicación destino",[62,123,124,126],{},[30,125,72],{}," - Qué se movió",[62,128,129,132],{},[30,130,131],{},"fromVolume"," - Saldo fuente después de transferencia",[62,134,135,137],{},[30,136,78],{}," - Saldo destino después de transferencia",[62,139,140,143],{},[30,141,142],{},"pickupCode"," - JWT escaneado (si transferencia basada en QR)",[62,145,146,149],{},[30,147,148],{},"scannerUserId"," - Quién escaneó QR",[62,151,152,155],{},[30,153,154],{},"scanMethod"," - \"self\" (trabajador) o \"staff\" (personal de almacén)",[62,157,158,161],{},[30,159,160],{},"scanLocation"," - Coordenadas GPS donde ocurrió el escaneo",[14,163,164,166],{},[55,165,90],{}," Trabajador recoge 10m de cable vía escaneo QR",[23,168,171],{"className":169,"code":170,"language":28},[26],"type: \"transfer\"\nfromSite: Almacén Central\ntoSite: Inventario Personal de John\nresource: Cable Cat6\nfromVolume: 590m (almacén reducido de 600m)\ntoVolume: 10m (nuevo artículo de stock de John)\npickupCode: \"eyJhbGc...\" (JWT)\nscannerUserId: john_id\nscanMethod: \"self\"\nscanLocation: { lat: 40.7128, lng: -74.0060 }\n",[30,172,170],{"__ignoreMap":32},[45,174,176],{"id":175},"consumo","Consumo",[14,178,179],{},"El trabajo de campo agota inventario (creación automática cuando se envía reporte).",[14,181,182],{},[55,183,57],{},[59,185,186,191,196,201],{},[62,187,188,190],{},[30,189,115],{}," - De dónde se consumieron materiales (usualmente sitio personal del trabajador)",[62,192,193,195],{},[30,194,72],{}," - Qué se consumió",[62,197,198,200],{},[30,199,131],{}," - Saldo restante después del consumo",[62,202,203,206],{},[30,204,205],{},"reportId"," - Enlace a reporte de trabajo (para cálculo de pago)",[14,208,209,211],{},[55,210,90],{}," Trabajador usa 8m de cable completando tarea",[23,213,216],{"className":214,"code":215,"language":28},[26],"type: \"consumption\"\nfromSite: Inventario Personal de John\nresource: Cable Cat6\nfromVolume: 2m (reducido de 10m)\nreportId: report_abc123\n",[30,217,215],{"__ignoreMap":32},[45,219,221],{"id":220},"ajuste","Ajuste",[14,223,224],{},"Corrección manual de niveles de stock (conteos de ciclo, daño, pérdida).",[14,226,227],{},[55,228,57],{},[59,230,231,237,242,247,252],{},[62,232,233,236],{},[30,234,235],{},"stockItemId"," - Qué artículo de stock ajustado",[62,238,239,241],{},[30,240,72],{}," - Qué se ajustó",[62,243,244,246],{},[30,245,131],{}," - Saldo anterior",[62,248,249,251],{},[30,250,78],{}," - Nuevo saldo",[62,253,254,257],{},[30,255,256],{},"reason"," - Explicación requerida (ej. \"Corrección de conteo físico\", \"Dañado en tránsito\")",[14,259,260,262],{},[55,261,90],{}," Conteo de ciclo encuentra discrepancia",[23,264,267],{"className":265,"code":266,"language":28},[26],"type: \"adjustment\"\nstockItemId: stock_xyz\nresource: Cable Cat6\nfromVolume: 2m (saldo registrado)\ntoVolume: 0m (conteo físico actual)\nreason: \"Conteo de ciclo 2026-02-10 - extremo de rollo descartado\"\n",[30,268,266],{"__ignoreMap":32},[45,270,272],{"id":271},"recogida","Recogida",[14,274,275],{},"Retiro de material en el contexto de una tarea, creado automáticamente cuando un trabajador escanea el código QR de un recurso de tarea.",[14,277,278,279,282],{},"Una transacción de recogida registra el recurso retirado, el volumen, el sitio de origen, la persona que escaneó (recogedor real) y un enlace a la tarea y a la línea de recurso específica dentro de esa tarea (",[30,280,281],{},"context: { taskId, taskResourceIdx }","). La recogida se diferencia de la Transferencia en que esta última mueve inventario entre sitios de forma genérica; la Recogida es una Transferencia con contexto de tarea — vincula la deducción de stock directamente a un elemento de trabajo planificado específico. El enlace de contexto permite consultar \"cuánto de este recurso se ha retirado para la tarea X\" agregando transacciones de recogida, en lugar de almacenar un total acumulado en la tarea en sí.",[14,284,285,286,289],{},"Los códigos QR de recogida son de un solo uso (los intentos de reutilización se rechazan con un error de conflicto). Los códigos pueden anularse (stock devuelto mediante una transacción de ",[30,287,288],{},"return",") o regenerarse (nuevo código emitido, código anterior invalidado) de forma independiente.",[18,291,293],{"id":292},"campos-de-transacción","Campos de Transacción",[14,295,296],{},[55,297,298],{},"Comunes a Todos los Tipos:",[59,300,301,307,312,316,322,328],{},[62,302,303,306],{},[30,304,305],{},"type"," - receipt, transfer, consumption, adjustment",[62,308,309,311],{},[30,310,72],{}," - Referencia a definición de recurso",[62,313,314,85],{},[30,315,84],{},[62,317,318,321],{},[30,319,320],{},"createdAt"," - Timestamp (auto-generado)",[62,323,324,327],{},[30,325,326],{},"createdBy"," - Usuario que inició (auto-capturado)",[62,329,330,333],{},[30,331,332],{},"properties"," - JSON flexible para datos personalizados",[14,335,336],{},[55,337,338],{},"Específicos del Tipo:",[59,340,341,349,356,361,366,371,376,381],{},[62,342,343,345,346,348],{},[30,344,115],{}," / ",[30,347,66],{}," - Puntos finales del movimiento",[62,350,351,345,353,355],{},[30,352,131],{},[30,354,78],{}," - Cambios de saldo",[62,357,358,360],{},[30,359,205],{}," - Enlace a reporte de trabajo (consumo)",[62,362,363,365],{},[30,364,142],{}," - JWT escaneado (transferencias protegidas)",[62,367,368,370],{},[30,369,148],{}," - Quién escaneó (transferencias)",[62,372,373,375],{},[30,374,154],{}," - Auto-checkout vs asistido por personal",[62,377,378,380],{},[30,379,160],{}," - GPS en tiempo de escaneo",[62,382,383,385],{},[30,384,256],{}," - Explicación (ajustes)",[18,387,389],{"id":388},"inmutabilidad-de-transacción","Inmutabilidad de Transacción",[14,391,392],{},[55,393,394],{},"No Puede Ser Editada:",[59,396,397,400,403],{},[62,398,399],{},"Las transacciones son solo escritura",[62,401,402],{},"No hay operaciones de actualización o eliminación",[62,404,405],{},"Preserva integridad del registro de auditoría",[14,407,408],{},[55,409,410],{},"Haciendo Correcciones:",[412,413,414,417,423,426],"ol",{},[62,415,416],{},"No intentes editar transacción incorrecta",[62,418,419,420],{},"Crea nueva transacción ",[30,421,422],{},"adjustment",[62,424,425],{},"Incluye razón detallada explicando corrección",[62,427,428],{},"Ambas transacciones permanecen en historial",[14,430,431],{},[55,432,433],{},"Flujo de Corrección de Ejemplo:",[23,435,438],{"className":436,"code":437,"language":28},[26],"Día 1: Recepción muestra 100 unidades llegaron\n  → Crea transacción: toVolume = 100\n\nDía 2: Descubre que solo 95 unidades realmente recibidas\n  → Crea ajuste: fromVolume = 100, toVolume = 95\n  → Razón: \"Error de conteo de recepción - solo 95 unidades en envío\"\n\nResultado: Ambas transacciones visibles en registro de auditoría\n",[30,439,437],{"__ignoreMap":32},[18,441,443],{"id":442},"creación-automática-de-transacción","Creación Automática de Transacción",[45,445,447],{"id":446},"desde-envío-de-reporte","Desde Envío de Reporte",[14,449,450,451,454],{},"Cuando trabajador envía reporte con campo ",[30,452,453],{},"consumedFrom",":",[412,456,457,460,463,468,471],{},[62,458,459],{},"Sistema valida disponibilidad de stock en cada artículo de stock",[62,461,462],{},"Crea atómicamente transacciones de consumo para cada recurso",[62,464,465,466],{},"Enlaza transacciones a reporte vía ",[30,467,205],{},[62,469,470],{},"Agota volúmenes de artículos de stock",[62,472,473],{},"Si stock insuficiente → rechaza reporte O solicita consumo parcial",[14,475,476],{},[55,477,478],{},"Beneficios:",[59,480,481,484,487],{},[62,482,483],{},"Stock siempre preciso (no se puede olvidar registrar consumo)",[62,485,486],{},"Reporte + transacción comprometidos juntos (atómico)",[62,488,489],{},"Cálculo de pago tiene datos confiables",[45,491,493],{"id":492},"desde-escaneo-de-recogida-qr","Desde Escaneo de Recogida QR",[14,495,496],{},"Cuando trabajador escanea QR de recogida de asignación:",[412,498,499,502,508,511,514],{},[62,500,501],{},"Valida firma JWT y expiración",[62,503,504,505],{},"Verifica que escáner es destinatario autorizado O tiene ",[30,506,507],{},"canFacilitatePickups",[62,509,510],{},"Verifica disponibilidad de stock en sitio fuente",[62,512,513],{},"Crea transacción de transferencia automáticamente",[62,515,516],{},"Registra identidad del escáner, método, ubicación GPS",[14,518,519],{},[55,520,478],{},[59,522,523,526,529],{},[62,524,525],{},"No hay entrada manual de transacción",[62,527,528],{},"GPS prueba presencia física",[62,530,531],{},"Registro de auditoría muestra quién autorizó transferencia",[18,533,535],{"id":534},"viendo-transacciones","Viendo Transacciones",[14,537,538],{},[55,539,540],{},"Registro Global de Transacciones:",[59,542,543,546,549],{},[62,544,545],{},"Navegar a Inventario → Transacciones",[62,547,548],{},"Filtrar por tipo, rango de fecha, sitio, recurso",[62,550,551],{},"Exportar para conciliación o cumplimiento",[14,553,554],{},[55,555,556],{},"Historial de Artículo de Stock:",[59,558,559,562,565],{},[62,560,561],{},"Navegar a artículo de stock específico",[62,563,564],{},"\"Historial de Transacciones\" muestra todos los movimientos que afectan este artículo",[62,566,567],{},"Rastrear linaje (de dónde vinieron los materiales, a dónde fueron)",[14,569,570],{},[55,571,572],{},"Consumo de Reporte:",[59,574,575,578,581],{},[62,576,577],{},"Navegar a reporte de trabajo",[62,579,580],{},"Sección \"Materiales Usados\" enlaza a transacciones de consumo",[62,582,583],{},"Verificar qué se agotó realmente del inventario",[14,585,586],{},[55,587,588],{},"Actividad de Sitio:",[59,590,591,594,597],{},[62,592,593],{},"Navegar a sitio",[62,595,596],{},"\"Transacciones Recientes\" muestra recepciones, transferencias, consumos",[62,598,599],{},"Monitorear rendimiento del almacén",[18,601,603],{"id":602},"casos-de-uso","Casos de Uso",[45,605,607],{"id":606},"auditoría-de-cumplimiento","Auditoría de Cumplimiento",[59,609,610,613,616],{},[62,611,612],{},"Mostrar todos los movimientos de materiales controlados",[62,614,615],{},"Probar cadena de custodia (recepción → transferencia → consumo)",[62,617,618],{},"Exportar registro de transacciones para reporte regulatorio",[45,620,622],{"id":621},"prevención-de-pérdidas","Prevención de Pérdidas",[59,624,625,628,631],{},[62,626,627],{},"Comparar recepciones con consumos a lo largo del tiempo",[62,629,630],{},"Identificar discrepancias que requieren investigación",[62,632,633],{},"Rastrear patrones de ajuste (ajustes frecuentes = problemas potenciales)",[45,635,637],{"id":636},"cálculo-de-pago","Cálculo de Pago",[59,639,640,645,648],{},[62,641,642,643],{},"Consumos enlazados a reportes vía ",[30,644,205],{},[62,646,647],{},"Calcular costos de materiales para trabajo completado",[62,649,650],{},"Verificar que trabajador usó materiales asignados (no stock personal)",[45,652,654],{"id":653},"conciliación-de-inventario","Conciliación de Inventario",[59,656,657,660,663],{},[62,658,659],{},"Comparar saldos basados en transacciones con conteos físicos",[62,661,662],{},"Identificar contracción o errores de conteo",[62,664,665],{},"Crear ajustes para corregir discrepancias",[45,667,669],{"id":668},"responsabilidad-del-trabajador","Responsabilidad del Trabajador",[59,671,672,675,678],{},[62,673,674],{},"Ver historial de recogida y consumo de trabajador individual",[62,676,677],{},"Identificar quién escaneó inventario protegido",[62,679,680],{},"Validación GPS muestra dónde se transfirieron materiales",[18,682,684],{"id":683},"mejores-prácticas","Mejores Prácticas",[14,686,687],{},[55,688,689],{},"Siempre Incluir Razón para Ajustes:",[59,691,692,695,698],{},[62,693,694],{},"\"Corrección de conteo físico\" es mejor que sin razón",[62,696,697],{},"\"Materiales dañados descartados - evento de tormenta 2026-02-08\" aún mejor",[62,699,700],{},"Ayuda a auditores futuros a entender correcciones",[14,702,703],{},[55,704,705],{},"Usar Tipos de Transacción Más Pequeños:",[59,707,708,711,714],{},[62,709,710],{},"No usar ajustes cuando recepción/transferencia apropiada",[62,712,713],{},"Los ajustes deberían ser excepción, no rutina",[62,715,716],{},"Recepciones/transferencias preservan contexto más rico",[14,718,719],{},[55,720,721],{},"Conciliación Regular:",[59,723,724,727,730],{},[62,725,726],{},"Semanal: Revisar ajustes (deberían ser raros)",[62,728,729],{},"Mensual: Conteo de ciclo de artículos de stock principales",[62,731,732],{},"Trimestral: Conciliación completa de almacén",[14,734,735],{},[55,736,737],{},"Aprovechar GPS para Transferencias:",[59,739,740,746,749],{},[62,741,742,743,745],{},"Revisar ",[30,744,160],{}," para inventario protegido",[62,747,748],{},"Detectar anomalías (escaneo 100km del almacén)",[62,750,751],{},"Validación de geocerca previene compartir QR remoto",[14,753,754],{},[55,755,756],{},"Monitorear Volumen de Transacción:",[59,758,759,762,765],{},[62,760,761],{},"Tasa alta de ajuste = problemas de proceso",[62,763,764],{},"Consumo bajo con recogidas altas = acaparamiento o robo",[62,766,767],{},"Desajuste recepción/consumo = problemas de pronóstico de demanda",[18,769,771],{"id":770},"permisos-de-transacción","Permisos de Transacción",[14,773,774],{},[55,775,776],{},"Creando Transacciones:",[59,778,779,785,788],{},[62,780,781,784],{},[30,782,783],{},"transactionsCreate"," - Puede crear recepciones, ajustes",[62,786,787],{},"Transacciones auto-creadas (de reportes, escaneos QR) no requieren permiso",[62,789,790],{},"Permisos específicos del sitio pueden limitar quién crea recepciones en qué sitios",[14,792,793],{},[55,794,795],{},"Viendo Transacciones:",[59,797,798,801,804],{},[62,799,800],{},"Todos los usuarios pueden ver transacciones para sus propios artículos de stock",[62,802,803],{},"Restricciones de rol pueden ocultar transacciones para ciertos recursos/sitios",[62,805,806,809],{},[30,807,808],{},"viewDeleted"," permite ver transacciones soft-deleted (si alguna vez implementado)",[14,811,812],{},[55,813,814],{},"Sin Permiso de Eliminar:",[59,816,817,820,823],{},[62,818,819],{},"Las transacciones no pueden ser eliminadas por nadie",[62,821,822],{},"Mantiene integridad del registro de auditoría",[62,824,825],{},"Solo administrador de base de datos podría eliminar (emergencia operacional solo)",[18,827,829],{"id":828},"entrada-de-transacción-manual-con-escaneo-de-código-qr","Entrada de Transacción Manual con Escaneo de Código QR",[14,831,832,833,836],{},"Para envíos que llegan a sitios donde los artículos no tienen códigos QR existentes, el personal de campo puede usar el ",[55,834,835],{},"Formulario de Transacción Manual"," con escaneo QR integrado para aceptar rápidamente inventario usando un libro de referencia físico de códigos QR de recursos.",[45,838,840],{"id":839},"creación-de-un-libro-de-referencia-física-de-recursos","Creación de un Libro de Referencia Física de Recursos",[14,842,843],{},[55,844,845],{},"Configuración de Admin (Una Vez):",[412,847,848,859,862,865,872,875,878],{},[62,849,850,851,854,855,858],{},"Navegar a ",[55,852,853],{},"Admin → Códigos QR de Recursos"," (",[30,856,857],{},"/admin/resource-qr-codes",")",[62,860,861],{},"Filtrar por tipo de recurso si es necesario (Material, Mano de obra, Equipo)",[62,863,864],{},"Buscar recursos específicos a incluir",[62,866,867,868,871],{},"Hacer clic en ",[55,869,870],{},"Imprimir"," para generar hoja de códigos QR imprimible",[62,873,874],{},"Imprimir en papel estándar carta/A4",[62,876,877],{},"Laminar páginas y encuadernar en libro de referencia",[62,879,880],{},"Colocar libro en muelle de recepción o estación de almacén",[14,882,883,886],{},[55,884,885],{},"Formato de Código QR:","\nCada código QR contiene datos JSON:",[23,888,892],{"className":889,"code":890,"language":891,"meta":32,"style":32},"language-json shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","{\n  \"type\": \"resource\",\n  \"id\": \"resource_id_123\",\n  \"name\": \"Cable Cat6\",\n  \"defaultUom\": \"m\",\n  \"resourceType\": \"material\"\n}\n","json",[30,893,894,903,928,949,970,991,1011],{"__ignoreMap":32},[895,896,899],"span",{"class":897,"line":898},"line",1,[895,900,902],{"class":901},"sMK4o","{\n",[895,904,906,909,912,915,917,920,923,925],{"class":897,"line":905},2,[895,907,908],{"class":901},"  \"",[895,910,305],{"class":911},"spNyl",[895,913,914],{"class":901},"\"",[895,916,454],{"class":901},[895,918,919],{"class":901}," \"",[895,921,72],{"class":922},"sfazB",[895,924,914],{"class":901},[895,926,927],{"class":901},",\n",[895,929,931,933,936,938,940,942,945,947],{"class":897,"line":930},3,[895,932,908],{"class":901},[895,934,935],{"class":911},"id",[895,937,914],{"class":901},[895,939,454],{"class":901},[895,941,919],{"class":901},[895,943,944],{"class":922},"resource_id_123",[895,946,914],{"class":901},[895,948,927],{"class":901},[895,950,952,954,957,959,961,963,966,968],{"class":897,"line":951},4,[895,953,908],{"class":901},[895,955,956],{"class":911},"name",[895,958,914],{"class":901},[895,960,454],{"class":901},[895,962,919],{"class":901},[895,964,965],{"class":922},"Cable Cat6",[895,967,914],{"class":901},[895,969,927],{"class":901},[895,971,973,975,978,980,982,984,987,989],{"class":897,"line":972},5,[895,974,908],{"class":901},[895,976,977],{"class":911},"defaultUom",[895,979,914],{"class":901},[895,981,454],{"class":901},[895,983,919],{"class":901},[895,985,986],{"class":922},"m",[895,988,914],{"class":901},[895,990,927],{"class":901},[895,992,994,996,999,1001,1003,1005,1008],{"class":897,"line":993},6,[895,995,908],{"class":901},[895,997,998],{"class":911},"resourceType",[895,1000,914],{"class":901},[895,1002,454],{"class":901},[895,1004,919],{"class":901},[895,1006,1007],{"class":922},"material",[895,1009,1010],{"class":901},"\"\n",[895,1012,1014],{"class":897,"line":1013},7,[895,1015,1016],{"class":901},"}\n",[45,1018,1020],{"id":1019},"flujo-móvil-para-aceptación-de-envíos","Flujo Móvil para Aceptación de Envíos",[14,1022,1023],{},[55,1024,1025],{},"Proceso del Personal de Campo:",[412,1027,1028,1045,1062,1081,1097,1117],{},[62,1029,1030,1033],{},[55,1031,1032],{},"Abrir Formulario de Transacción Manual",[59,1034,1035,1037,1040],{},[62,1036,545],{},[62,1038,1039],{},"Hacer clic en botón \"Agregar Transacción Manual\"",[62,1041,1042,1043],{},"Requiere permiso ",[30,1044,507],{},[62,1046,1047,1050,1051],{},[55,1048,1049],{},"Habilitar Modo Lote"," (Opcional pero Recomendado)",[59,1052,1053,1056,1059],{},[62,1054,1055],{},"Cambiar interruptor \"Modo Lote\" en la parte superior del formulario",[62,1057,1058],{},"Permite escanear e ingresar múltiples artículos antes de envío final",[62,1060,1061],{},"Ahorra tiempo cuando envío contiene 5+ artículos diferentes",[62,1063,1064,1067],{},[55,1065,1066],{},"Escanear Código QR de Recurso",[59,1068,1069,1072,1075,1078],{},[62,1070,1071],{},"Hacer clic en botón de escaneo (📷 icono) junto al campo Nombre de Recurso",[62,1073,1074],{},"Cámara se abre en dispositivo móvil",[62,1076,1077],{},"Apuntar cámara al código QR en el libro de referencia",[62,1079,1080],{},"Datos QR se auto-completan: Nombre de Recurso, ID de Recurso, UOM Predeterminado",[62,1082,1083,1086],{},[55,1084,1085],{},"Ingresar Detalles de Cantidad",[59,1087,1088,1091,1094],{},[62,1089,1090],{},"Campo Volumen: Ingresar cantidad recibida (ej. \"50\")",[62,1092,1093],{},"Campo UOM: Pre-llenado desde QR, ajustar si necesario (ej. \"m\" para metros)",[62,1095,1096],{},"Sitio: Arrastrar y soltar sitio de destino o usar ubicación actual",[62,1098,1099,1102,1103],{},[55,1100,1101],{},"Agregar al Lote"," (Si Modo Lote Habilitado)",[59,1104,1105,1108,1111,1114],{},[62,1106,1107],{},"Hacer clic en botón \"Agregar al Lote\"",[62,1109,1110],{},"Artículo aparece en lista de lote abajo",[62,1112,1113],{},"Formulario se vacía para el siguiente artículo",[62,1115,1116],{},"Repetir pasos 3-5 para cada artículo en el envío",[62,1118,1119,1122],{},[55,1120,1121],{},"Enviar Transacción(es)",[59,1123,1124,1127,1130,1133],{},[62,1125,1126],{},"Modo único: Hacer clic en \"Enviar\" (crea una transacción)",[62,1128,1129],{},"Modo lote: Hacer clic en \"Enviar Lote (N artículos)\" (crea N transacciones atómicamente)",[62,1131,1132],{},"Notificación de éxito muestra cuántos artículos fueron aceptados",[62,1134,1135],{},"Si algunos artículos fallan, sistema reporta conteo pero no hace rollback de otros",[14,1137,1138],{},[55,1139,1140],{},"Ejemplo de Flujo de Lote:",[23,1142,1145],{"className":1143,"code":1144,"language":28},[26],"Envío llega con 5 materiales diferentes:\n1. Escanear \"Cable Cat6\" QR → Ingresar 50m → Agregar al Lote\n2. Escanear \"Conducto 1in\" QR → Ingresar 20 unidades → Agregar al Lote\n3. Escanear \"Caja de Empalme\" QR → Ingresar 15 unidades → Agregar al Lote\n4. Escanear \"Abrazadera de Cable\" QR → Ingresar 500 unidades → Agregar al Lote\n5. Escanear \"Cable de Tierra\" QR → Ingresar 100m → Agregar al Lote\n6. Enviar Lote (5 artículos)\n→ Crea 5 artículos de stock + 5 transacciones de recepción instantáneamente\n",[30,1146,1144],{"__ignoreMap":32},[45,1148,1150],{"id":1149},"manejo-de-recursos-desconocidos","Manejo de Recursos Desconocidos",[14,1152,1153,1154,454],{},"Si envío contiene artículos ",[55,1155,1156],{},"no en el libro de referencia",[412,1158,1159,1178,1201],{},[62,1160,1161,1164],{},[55,1162,1163],{},"Ingresar Nombre de Recurso Manualmente",[59,1165,1166,1169,1172],{},[62,1167,1168],{},"Ingresar nombre en campo Nombre de Recurso (sin escaneo QR)",[62,1170,1171],{},"Sistema busca recurso existente por nombre",[62,1173,1174,1175],{},"Si no encontrado → coloca automáticamente en recurso ",[55,1176,1177],{},"\"Holding/Staging\"",[62,1179,1180,1183],{},[55,1181,1182],{},"Flujo Holding/Staging",[59,1184,1185,1192,1195,1198],{},[62,1186,1187,1188,1191],{},"Propiedades de transacción incluyen ",[30,1189,1190],{},"originalResourceName"," (lo que usted escribió)",[62,1193,1194],{},"Toast de advertencia: \"Recurso no encontrado. Colocado en Holding/Staging\"",[62,1196,1197],{},"Artículo de stock creado con recurso Holding/Staging",[62,1199,1200],{},"Después: Personal de oficina asigna a recurso apropiado (ver Asignación de Inventario en Espera abajo)",[62,1202,1203,1206],{},[55,1204,1205],{},"Ventajas del Auto-Staging",[59,1207,1208,1211,1214,1217],{},[62,1209,1210],{},"Aceptación del personal de campo nunca se bloquea",[62,1212,1213],{},"Inventario se acepta físicamente y rastrea inmediatamente",[62,1215,1216],{},"Categorización de recursos ocurre de manera asíncrona",[62,1218,1219],{},"Sin demoras bloqueantes para envíos urgentes",[45,1221,1223],{"id":1222},"funciones-del-modo-lote","Funciones del Modo Lote",[14,1225,1226],{},[55,1227,1228],{},"Tabla de Artículos en Línea:",[59,1230,1231,1234,1237,1240],{},[62,1232,1233],{},"Muestra todos los artículos escaneados antes de envío",[62,1235,1236],{},"Muestra: Nombre de Recurso, Volumen, UOM",[62,1238,1239],{},"Remover artículos individuales con botón X",[62,1241,1242],{},"Vista visual clara de lo que se comprometerá",[14,1244,1245],{},[55,1246,1247],{},"Envío:",[59,1249,1250,1253,1256,1259],{},[62,1251,1252],{},"Procesamiento de lote atómico (todo-o-nada donde posible)",[62,1254,1255],{},"Fallos de artículos individuales reportados pero no bloquean otros",[62,1257,1258],{},"Conteo de éxito: \"5 transacciones creadas exitosamente\"",[62,1260,1261],{},"Manejo de fallos parciales: \"2 artículos no pudieron procesarse\"",[14,1263,1264],{},[55,1265,1266],{},"Optimización Móvil:",[59,1268,1269,1272,1275,1278],{},[62,1270,1271],{},"Gran botón de escaneo táctil",[62,1273,1274],{},"Acceso a cámara con alternancia de flash",[62,1276,1277],{},"Funciona sin conexión con almacenamiento en caché PWA",[62,1279,1280],{},"Guardado automático de lote en localStorage (sobrevive refresco de página)",[45,1282,1284],{"id":1283},"asignación-de-inventario-en-espera","Asignación de Inventario en Espera",[14,1286,1287],{},"Después de que personal de campo acepta recursos desconocidos en Holding/Staging:",[412,1289,1290,1306,1319,1341],{},[62,1291,1292,1295],{},[55,1293,1294],{},"Navegar a Artículos de Stock",[59,1296,1297,1300],{},[62,1298,1299],{},"Filtrar por \"Sitio: Holding/Staging\" (si implementado)",[62,1301,1302,1303],{},"Buscar artículos con ",[30,1304,1305],{},"isHoldingResource: true",[62,1307,1308,1311],{},[55,1309,1310],{},"Abrir Modal de Asignación",[59,1312,1313,1316],{},[62,1314,1315],{},"Hacer clic en botón \"Asignar Inventario en Espera\" en artículo de stock",[62,1317,1318],{},"Muestra: Volumen actual, Nombre original ingresado por personal de campo",[62,1320,1321,1324],{},[55,1322,1323],{},"Seleccionar Recurso Apropiado",[59,1325,1326,1332,1338],{},[62,1327,1328,1331],{},[55,1329,1330],{},"Opción A:"," Arrastrar recurso existente desde tabla de recursos",[62,1333,1334,1337],{},[55,1335,1336],{},"Opción B:"," Cambiar \"Crear Nuevo Recurso\" e ingresar detalles",[62,1339,1340],{},"Ingresar razón de asignación (ej. \"Identificado como cable Cat6A, no Cat6\")",[62,1342,1343,1346],{},[55,1344,1345],{},"Enviar Asignación",[59,1347,1348],{},[62,1349,1350,1351],{},"Actualiza atómicamente:\n",[59,1352,1353,1356,1359],{},[62,1354,1355],{},"Campo recurso del artículo de stock (Holding → Apropiado)",[62,1357,1358],{},"Crea transacción de ajuste con razón de asignación",[62,1360,1361,1362,1364],{},"Preserva ",[30,1363,1190],{}," en propiedades de transacción",[14,1366,1367],{},[55,1368,1369],{},"Ventajas:",[59,1371,1372,1375,1378,1381],{},[62,1373,1374],{},"Aceptación en campo nunca se bloquea",[62,1376,1377],{},"Categorización de oficina preserva registro de auditoría",[62,1379,1380],{},"Ningún inventario \"desaparece\" durante transición",[62,1382,1383],{},"Notas originales del trabajador de campo se preservan",[18,1385,535],{"id":1386},"viendo-transacciones-1",[14,1388,1389],{},[55,1390,540],{},[59,1392,1393,1395,1398],{},[62,1394,545],{},[62,1396,1397],{},"Filtrar por tipo, rango de fechas, sitio, recurso",[62,1399,1400],{},"Exportar para reconciliación o cumplimiento",[14,1402,1403],{},[55,1404,1405],{},"Historia de Artículo de Stock:",[59,1407,1408,1410,1413],{},[62,1409,561],{},[62,1411,1412],{},"\"Historia de Transacciones\" muestra todos los movimientos afectando este artículo",[62,1414,1415],{},"Rastrear linaje (de dónde vinieron los materiales, a dónde van)",[14,1417,1418],{},[55,1419,572],{},[59,1421,1422,1424,1426],{},[62,1423,577],{},[62,1425,580],{},[62,1427,1428],{},"Verificar qué se consumió realmente del inventario",[14,1430,1431],{},[55,1432,1433],{},"Actividad del Sitio:",[59,1435,1436,1438,1440],{},[62,1437,593],{},[62,1439,596],{},[62,1441,1442],{},"Monitorear rendimiento de almacén",[18,1444,603],{"id":1445},"casos-de-uso-1",[45,1447,607],{"id":1448},"auditoría-de-cumplimiento-1",[59,1450,1451,1453,1455],{},[62,1452,612],{},[62,1454,615],{},[62,1456,618],{},[45,1458,622],{"id":1459},"prevención-de-pérdidas-1",[59,1461,1462,1464,1467],{},[62,1463,627],{},[62,1465,1466],{},"Identificar discrepancias requiriendo investigación",[62,1468,665],{},[45,1470,1472],{"id":1471},"cálculo-de-pagos","Cálculo de Pagos",[59,1474,1475,1479,1481],{},[62,1476,642,1477],{},[30,1478,205],{},[62,1480,647],{},[62,1482,650],{},[45,1484,1486],{"id":1485},"reconciliación-de-inventario","Reconciliación de Inventario",[59,1488,1489,1491,1493],{},[62,1490,659],{},[62,1492,662],{},[62,1494,665],{},[45,1496,1498],{"id":1497},"responsabilidad-de-trabajador","Responsabilidad de Trabajador",[59,1500,1501,1504,1506],{},[62,1502,1503],{},"Ver historial de retiro y consumo individual de trabajador",[62,1505,677],{},[62,1507,680],{},[18,1509,684],{"id":1510},"mejores-prácticas-1",[14,1512,1513],{},[55,1514,689],{},[59,1516,1517,1520,1522],{},[62,1518,1519],{},"\"Corrección de conteo físico\" es mejor que ninguna razón",[62,1521,697],{},[62,1523,1524],{},"Ayuda a auditores futuros entender correcciones",[14,1526,1527],{},[55,1528,705],{},[59,1530,1531,1533,1536],{},[62,1532,710],{},[62,1534,1535],{},"Ajustes deberían ser excepción, no rutina",[62,1537,716],{},[14,1539,1540],{},[55,1541,1542],{},"Reconciliación Regular:",[59,1544,1545,1547,1550],{},[62,1546,726],{},[62,1548,1549],{},"Mensual: Conteo de ciclo de artículos de stock mayores",[62,1551,1552],{},"Trimestral: Reconciliación completa de almacén",[14,1554,1555],{},[55,1556,737],{},[59,1558,1559,1563,1565],{},[62,1560,742,1561,745],{},[30,1562,160],{},[62,1564,748],{},[62,1566,1567],{},"Validación de geofence previene compartir QR remoto",[14,1569,1570],{},[55,1571,1572],{},"Monitorear Volumen de Transacciones:",[59,1574,1575,1578,1581],{},[62,1576,1577],{},"Alto volumen de ajuste = problemas de proceso",[62,1579,1580],{},"Bajo consumo con retiros altos = acaparamiento o robo",[62,1582,767],{},[18,1584,771],{"id":1585},"permisos-de-transacción-1",[14,1587,1588],{},[55,1589,776],{},[59,1591,1592,1596,1598],{},[62,1593,1594,784],{},[30,1595,783],{},[62,1597,787],{},[62,1599,790],{},[14,1601,1602],{},[55,1603,795],{},[59,1605,1606,1608,1610],{},[62,1607,800],{},[62,1609,803],{},[62,1611,1612,809],{},[30,1613,808],{},[14,1615,1616],{},[55,1617,814],{},[59,1619,1620,1622,1624],{},[62,1621,819],{},[62,1623,822],{},[62,1625,825],{},[1627,1628,1629],"style",{},"html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":32,"searchDepth":905,"depth":905,"links":1631},[1632,1639,1640,1641,1645,1646,1653,1654,1655,1662,1663,1670,1671],{"id":20,"depth":905,"text":21,"children":1633},[1634,1635,1636,1637,1638],{"id":47,"depth":930,"text":48},{"id":100,"depth":930,"text":101},{"id":175,"depth":930,"text":176},{"id":220,"depth":930,"text":221},{"id":271,"depth":930,"text":272},{"id":292,"depth":905,"text":293},{"id":388,"depth":905,"text":389},{"id":442,"depth":905,"text":443,"children":1642},[1643,1644],{"id":446,"depth":930,"text":447},{"id":492,"depth":930,"text":493},{"id":534,"depth":905,"text":535},{"id":602,"depth":905,"text":603,"children":1647},[1648,1649,1650,1651,1652],{"id":606,"depth":930,"text":607},{"id":621,"depth":930,"text":622},{"id":636,"depth":930,"text":637},{"id":653,"depth":930,"text":654},{"id":668,"depth":930,"text":669},{"id":683,"depth":905,"text":684},{"id":770,"depth":905,"text":771},{"id":828,"depth":905,"text":829,"children":1656},[1657,1658,1659,1660,1661],{"id":839,"depth":930,"text":840},{"id":1019,"depth":930,"text":1020},{"id":1149,"depth":930,"text":1150},{"id":1222,"depth":930,"text":1223},{"id":1283,"depth":930,"text":1284},{"id":1386,"depth":905,"text":535},{"id":1445,"depth":905,"text":603,"children":1664},[1665,1666,1667,1668,1669],{"id":1448,"depth":930,"text":607},{"id":1459,"depth":930,"text":622},{"id":1471,"depth":930,"text":1472},{"id":1485,"depth":930,"text":1486},{"id":1497,"depth":930,"text":1498},{"id":1510,"depth":905,"text":684},{"id":1585,"depth":905,"text":771},"Registro de auditoría inmutable de todos los movimientos y cambios de inventario","md",{},true,"/es/user/inventory-management/transactions",{"title":5,"description":1672},"es/user/inventory-management/transactions","Tkr8EiuFdmNtoJ6HUNFTyCHOiIf8S-mxI3dzZnDDvEQ",1780539288673]