> ## Documentation Index
> Fetch the complete documentation index at: https://docs.abbyy.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Almacén de informes analíticos

> Almacén de informes analíticos en ABBYY Vantage: realice un seguimiento de los cambios en los campos, el esfuerzo dedicado a la verificación manual y las métricas de precisión de los documentos para las Habilidades de proceso.

export const VantageRegion = ({children}) => {
  const STORAGE_KEY = "abbyy.vantage.region";
  const REGIONS = [{
    code: "eu",
    label: "Europe"
  }, {
    code: "us",
    label: "North America"
  }, {
    code: "au",
    label: "Australia / Asia-Pacific"
  }];
  const [region, setRegion] = useState("eu");
  const [open, setOpen] = useState(false);
  const containerRef = useRef(null);
  const dropdownRef = useRef(null);
  function safeGetSavedRegion() {
    try {
      const saved = typeof window !== "undefined" ? window.localStorage.getItem(STORAGE_KEY) : null;
      const valid = new Set(REGIONS.map(r => r.code));
      return saved && valid.has(saved) ? saved : "eu";
    } catch {
      return "eu";
    }
  }
  function safeSetSavedRegion(code) {
    try {
      if (typeof window !== "undefined") {
        window.localStorage.setItem(STORAGE_KEY, code);
      }
    } catch {}
  }
  function dispatchRegionChanged(code) {
    try {
      if (typeof window !== "undefined") {
        window.dispatchEvent(new CustomEvent("abbyy:region-changed", {
          detail: {
            code
          }
        }));
      }
    } catch {}
  }
  function replaceRegionInString(text, currentRegion) {
    if (typeof text !== "string") return text;
    const hostRegex = /https:\/\/vantage-(eu|us|au)\.abbyy\.com/gi;
    const tokenRegex = /https:\/\/vantage-\[region\]\.abbyy\.com/gi;
    const bareHostRegex = /vantage-(eu|us|au)\.abbyy\.com/gi;
    const bareTokenRegex = /vantage-\[region\]\.abbyy\.com/gi;
    return text.replace(hostRegex, `https://vantage-${currentRegion}.abbyy.com`).replace(tokenRegex, `https://vantage-${currentRegion}.abbyy.com`).replace(bareHostRegex, `vantage-${currentRegion}.abbyy.com`).replace(bareTokenRegex, `vantage-${currentRegion}.abbyy.com`);
  }
  useEffect(() => {
    setRegion(safeGetSavedRegion());
  }, []);
  useEffect(() => {
    const root = containerRef.current;
    if (!root) return;
    const anchors = root.querySelectorAll("a[href]");
    anchors.forEach(a => {
      const href = a.getAttribute("href");
      if (href) {
        const next = replaceRegionInString(href, region);
        if (next !== href) {
          a.setAttribute("href", next);
        }
      }
    });
    const walker = typeof document !== "undefined" ? document.createTreeWalker(root, NodeFilter.SHOW_TEXT, null) : null;
    if (walker) {
      const toUpdate = [];
      let node = walker.nextNode();
      while (node) {
        const updated = replaceRegionInString(node.nodeValue, region);
        if (updated !== node.nodeValue) {
          toUpdate.push([node, updated]);
        }
        node = walker.nextNode();
      }
      toUpdate.forEach(([textNode, value]) => {
        textNode.nodeValue = value;
      });
    }
  }, [region, children]);
  useEffect(() => {
    const root = containerRef.current;
    if (!root) return;
    const anchors = root.querySelectorAll("a[href]");
    anchors.forEach(a => {
      a.style.fontWeight = "600";
      a.style.textDecoration = "underline";
      a.style.textUnderlineOffset = "2px";
    });
  }, [region, children]);
  useEffect(() => {
    const onRegionChanged = evt => {
      const code = evt && evt.detail && evt.detail.code;
      if (!code || code === region) return;
      setRegion(code);
    };
    if (typeof window !== "undefined") {
      window.addEventListener("abbyy:region-changed", onRegionChanged);
    }
    return () => {
      if (typeof window !== "undefined") {
        window.removeEventListener("abbyy:region-changed", onRegionChanged);
      }
    };
  }, [region]);
  useEffect(() => {
    const onClickAway = e => {
      if (!dropdownRef.current) return;
      if (!dropdownRef.current.contains(e.target)) {
        setOpen(false);
      }
    };
    document.addEventListener("click", onClickAway, true);
    return () => document.removeEventListener("click", onClickAway, true);
  }, []);
  const onSelect = code => {
    setRegion(code);
    safeSetSavedRegion(code);
    dispatchRegionChanged(code);
    setOpen(false);
  };
  const current = REGIONS.find(r => r.code === region) || REGIONS[0];
  return <div className="not-prose">
      <div className="mb-4 inline-flex items-center gap-2" ref={dropdownRef}>
        <span className="text-sm text-zinc-950/80 dark:text-white/80">Tenant Region:</span>
        <div className="relative">
          <button type="button" aria-haspopup="listbox" aria-expanded={open ? "true" : "false"} onClick={() => setOpen(v => !v)} className="h-8 px-3 rounded-md bg-zinc-900/5 dark:bg-white/5 border border-zinc-950/20 dark:border-white/20 text-sm inline-flex items-center gap-2">
            <span className="text-zinc-950 dark:text-white">{current.label}</span>
            <svg width="8" height="24" viewBox="0 -9 3 24" className="transition-transform text-gray-400 overflow-visible dark:text-gray-600 ml-auto" style={{
    transform: open ? "rotate(270deg)" : "rotate(90deg)"
  }}>
              <path d="M0 0L3 3L0 6" fill="none" stroke="currentColor" strokeWidth="1.5" strokeLinecap="round"></path>
            </svg>
          </button>
          {open ? <div role="listbox" className="absolute z-50 left-full top-0 ml-2 w-56 rounded-xl border border-zinc-950/20 dark:border-white/20 bg-white dark:bg-zinc-900 shadow-lg p-2">
              {REGIONS.map(r => {
    const selected = r.code === region;
    return <button key={r.code} type="button" role="option" aria-selected={selected ? "true" : "false"} onClick={() => onSelect(r.code)} className={"w-full flex items-center justify-between px-3 py-2 rounded-lg text-sm hover:bg-zinc-950/5 dark:hover:bg-white/10 text-zinc-950 dark:text-white" + (selected ? " font-medium" : "")}>
                    <span style={selected ? {
      color: "#ff2038"
    } : undefined}>{r.label}</span>
                    <span className={selected ? "ml-3" : "ml-3 invisible"} style={selected ? {
      color: "#ff2038"
    } : undefined}>✓</span>
                  </button>;
  })}
            </div> : null}
        </div>
      </div>
      <div ref={containerRef} className="prose dark:prose-invert max-w-none">{children}</div>
    </div>;
};

El Almacén de informes analíticos contiene datos que pueden utilizarse para analizar la eficiencia del procesamiento de documentos dentro del sistema. Con estos datos, puede identificar qué documentos requieren más tiempo para la verificación manual y por qué.

Las estadísticas se recopilan para las Habilidades de proceso que tienen al menos un paso de Revisión manual e incluyen al menos una Skill de documento. El sistema compara el estado inicial del documento antes de la revisión manual con su estado después del procesamiento.

El Almacén de informes analíticos es uno de los dos almacenes de informes de Vantage. Para obtener una visión general de ambos —y del almacén [Business Processing Reporting](/es/vantage/developer/reporting/business-reporting) para datos de nivel de transacción— consulte [servicio de informes](/es/vantage/developer/reporting/reporting-service).

El Almacén de informes analíticos almacena los siguientes datos:

* Información sobre cambios en los documentos
* Información sobre campos de los documentos:
  * El número de valores de campos extraídos
  * El número de valores de campos modificados
  * El estado de cada campo (que indica si es correcto, tiene problemas de reconocimiento, se ha localizado incorrectamente o no se ha detectado)

<div id="migrating-from-v1-to-v2">
  ## Migración de v1 a v2
</div>

Solo ha cambiado la ruta de "/v1/" a "/v2/". No hay cambios en los campos de la solicitud y la respuesta ni en el comportamiento.

<div id="downloading-a-data-report">
  ## Descarga de un informe de datos
</div>

<Note>
  Solo los usuarios con los roles de **Administrador del tenant** o **Supervisor de procesamiento** pueden descargar informes de datos. Para obtener más información, consulte [Control de acceso basado en roles](/es/vantage/documentation/tenant-admin/tenant-management/role-based-access).
</Note>

Para obtener datos de Almacén de informes analíticos, envíe una solicitud **GET** a uno de los siguientes recursos, según el tipo de informe que necesite obtener:

<div id="obtaining-data-about-documents-processed-by-a-process-skill">
  ### Obtención de datos sobre documentos procesados por una habilidad de proceso
</div>

<VantageRegion>
  ```
  GET https://vantage-us.abbyy.com/api/reporting/v2/qa/process-skills/documents
  ```
</VantageRegion>

<div id="obtaining-data-about-fields-processed-by-process-and-document-skills">
  ### Obtención de datos de campos procesados por las habilidades Habilidad de proceso y Skill de documento
</div>

<VantageRegion>
  ```
  GET https://vantage-us.abbyy.com/api/reporting/v2/qa/process-skills/fields
  ```
</VantageRegion>

La solicitud acepta los siguientes parámetros:

* **startDate**. El primer día del período para el que se deben descargar los datos (formato de ejemplo: 2022-01-07T13:03:38; la hora debe estar en UTC). Este es un parámetro obligatorio.
* **endDate**. El último día del período para el que se deben descargar los datos (formato de ejemplo: 2022-09-07T13:03:38; la hora debe estar en UTC).
* **processSkillId**. El ID de la Habilidad de proceso para la que se deben descargar los datos. Este es un parámetro obligatorio.
* **documentSkillId**. El ID de la Skill de documento para la que se deben descargar los datos.

<Info>
  Puede incluir este parámetro solo en la solicitud `/api/reporting/v2/qa/process-skills/fields`.
</Info>

* **imageType**. El tipo de imagen del documento. Valores posibles: Unknown, Receipt, A4, BusinessCard, Book, Id, PassportRus, DiscountCard, BankCard, NotDocument, PassportPage.
* **imageColority**. Indica si la primera página del documento es en color, en negro o en blanco y negro. Valores posibles: BlackWhite, Gray, Color.
* **imageSource**. El origen de la imagen del documento. Valores posibles: Unknown, Photo, Scan, Synthetic, Screenshot, Pdf.
* **wasCorrectedInManualReview**. Indica si los campos del documento se corrigieron durante la revisión manual.
* **wasDocumentTypeChangedInManualReview**. Indica si el tipo de documento se cambió durante la revisión manual.

El archivo CSV resultante contendrá la siguiente información dispuesta en columnas.

<div id="report-about-changes-in-documents">
  ### Informe sobre cambios en documentos
</div>

| Column                                  | Description                                                                                                                                           |
| :-------------------------------------- | :---------------------------------------------------------------------------------------------------------------------------------------------------- |
| `ProcessSkillId`                        | El ID de la skill de proceso.                                                                                                                         |
| `ProcessSkillVersion`                   | La versión de la skill de proceso.                                                                                                                    |
| `ProcessSkillName`                      | El nombre de la skill de proceso.                                                                                                                     |
| `DocumentSkillId`                       | El ID de la skill de documento.                                                                                                                       |
| `DocumentSkillVersion`                  | La versión de la skill de documento.                                                                                                                  |
| `DocumentSkillName`                     | El nombre de la skill de documento.                                                                                                                   |
| `TransactionId`                         | El ID de la transacción.                                                                                                                              |
| `HasManualReview`                       | Indica si el documento se revisó manualmente. Valores posibles: 1 o 0.                                                                                |
| `DocumentId`                            | El ID del documento enviado para procesamiento.                                                                                                       |
| `DocumentName`                          | El nombre del documento enviado para procesamiento.                                                                                                   |
| `PageSize`                              | El tamaño en píxeles (ancho y alto) de la primera página del documento.                                                                               |
| `ImageColority`                         | Indica si la primera página del documento es en color, en escala de grises o en blanco y negro.                                                       |
| `ImageSource`                           | El origen de la imagen de la primera página del documento. Por ejemplo: escaneado, foto, archivo PDF, captura de pantalla, etc.                       |
| `ImageType`                             | El tipo de imagen de la primera página del documento. Por ejemplo: A4, recibo, tarjeta bancaria, etc.                                                 |
| `DPI`                                   | La cantidad de puntos (o píxeles) en la primera página del documento.                                                                                 |
| `TransactionParameter1..N`              | Parámetros de transacción enviados para procesamiento. Si el documento no contiene ningún parámetro de transacción, el valor en el informe será null. |
| `DimensionField1..MValue`               | Campos de dimensión enviados para procesamiento. Si el documento no contiene ningún campo de dimensión, el valor en el informe será null.             |
| `DocumentSkillChanged`                  | Indica si el tipo de documento se cambió durante la revisión manual. Valores posibles: true, false.                                                   |
| `DocumentSkillIdUsedBeforeManualReview` | La skill de documento aplicada al documento antes de la etapa de revisión manual.                                                                     |
| `NumberOfExportedFields`                | El número de campos exportados en el documento.                                                                                                       |
| `NumberOfChangedFields`                 | El número de campos modificados manualmente en el documento.                                                                                          |

Los datos de este informe se almacenarán durante 12 meses.

<div id="report-about-changes-in-fields">
  ### Informe sobre cambios en campos
</div>

| Column                     | Description                                                                                                                                                                                                                                                                                                                                                    |
| :------------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `ProcessSkillId`           | El ID de la habilidad de proceso.                                                                                                                                                                                                                                                                                                                              |
| `ProcessSkillVersion`      | La versión de la habilidad de proceso.                                                                                                                                                                                                                                                                                                                         |
| `ProcessSkillName`         | El nombre de la habilidad de proceso.                                                                                                                                                                                                                                                                                                                          |
| `DocumentSkillId`          | El ID del Skill de documento.                                                                                                                                                                                                                                                                                                                                  |
| `DocumentSkillVersion`     | La versión del Skill de documento.                                                                                                                                                                                                                                                                                                                             |
| `DocumentSkillName`        | El nombre del Skill de documento.                                                                                                                                                                                                                                                                                                                              |
| `TransactionId`            | El ID de la transacción.                                                                                                                                                                                                                                                                                                                                       |
| `HasManualReview`          | Indica si el documento fue revisado manualmente. Valores posibles: 1 o 0.                                                                                                                                                                                                                                                                                      |
| `DocumentId`               | El ID del documento enviado para el procesamiento.                                                                                                                                                                                                                                                                                                             |
| `DocumentName`             | El nombre del documento enviado para el procesamiento.                                                                                                                                                                                                                                                                                                         |
| `PageSize`                 | El tamaño en píxeles (ancho y alto) de la primera página del documento.                                                                                                                                                                                                                                                                                        |
| `ImageColority`            | Indica si la primera página del documento es en color, en escala de grises o en blanco y negro.                                                                                                                                                                                                                                                                |
| `ImageSource`              | El origen de la imagen de la primera página del documento. Por ejemplo: escaneo, foto, archivo PDF, captura de pantalla, etc.                                                                                                                                                                                                                                  |
| `ImageType`                | El tipo de imagen de la primera página del documento. Por ejemplo: A4, recibo, tarjeta bancaria, etc.                                                                                                                                                                                                                                                          |
| `DPI`                      | El número de puntos (o píxeles) por pulgada en la primera página del documento.                                                                                                                                                                                                                                                                                |
| `TransactionParameter1..N` | Parámetros de transacción enviados para el procesamiento. Si el documento no contiene parámetros de transacción, el valor en el informe será null.                                                                                                                                                                                                             |
| `DimensionField1..MValue`  | Campos de dimensión enviados para el procesamiento. Si el documento no contiene campos de dimensión, el valor en el informe será null.                                                                                                                                                                                                                         |
| `NumberOfExportedFields`   | El número de campos exportados en el documento.                                                                                                                                                                                                                                                                                                                |
| `NumberOfChangedFields`    | El número de campos modificados manualmente en el documento.                                                                                                                                                                                                                                                                                                   |
| `FieldID`                  | El ID del campo del documento.                                                                                                                                                                                                                                                                                                                                 |
| `FieldName`                | El nombre del campo del documento.                                                                                                                                                                                                                                                                                                                             |
| `Correct`                  | Información sobre el estado de corrección de campos no repetitivos y la cantidad de instancias de campos repetitivos que no fueron corregidas. Valores posibles:<br />- 1, si el campo no repetitivo no fue corregido durante la revisión manual.<br />- La cantidad de instancias de un campo repetitivo que no fueron corregidas durante la revisión manual. |
| `RecognitionIssue`         | Información sobre problemas de reconocimiento durante el procesamiento de campos del documento. Valores posibles:<br />- 1, si el valor de un campo no repetitivo fue corregido, pero la región no.<br />- La cantidad de instancias en las que los valores de un campo repetitivo fueron corregidos durante la revisión manual.                               |
| `DetectedIncorrectly`      | Información sobre las correcciones que se realizaron durante la revisión manual. Valores posibles:<br />- 1, si la región y el valor de un campo no repetitivo fueron corregidos.<br />- La cantidad de instancias en las que las regiones y los valores de un campo repetitivo fueron corregidos durante la revisión manual.                                  |
| `NotDetected`              | Información sobre valores de campos que no se extrajeron antes de la revisión manual. Valores posibles:<br />- 1, si el valor de un campo no repetitivo no se extrajo antes de la revisión manual y fue creado por un verificador.<br />- La cantidad de instancias de los valores de un campo repetitivo que fueron creadas durante la revisión manual.       |
| `IsInDocument`             | Indica si el campo tiene al menos una instancia en el documento. Valores posibles: true, false.                                                                                                                                                                                                                                                                |

Los datos de este informe se almacenarán durante 14 días.

Los datos obtenidos en formato CSV pueden analizarse posteriormente en cualquier herramienta de BI.
