Saltar al contenido principal
Puede usar la Web API para descargar informes sobre las cargas de trabajo de los operadores, los documentos procesados, los documentos de clientes específicos y otros criterios. Los parámetros de los métodos de la API son idénticos a los utilizados para crear informes a través de la interfaz gráfica de la Consola de administración y supervisión. El archivo CSV resultante también es idéntico al archivo CSV generado mediante la interfaz gráfica de la Consola de administración y supervisión. Para obtener información detallada sobre los distintos datos recopilados por los informes, consulte la sección Reports en la Ayuda de la Consola de administración y supervisión. Para descargar informes, utilice una solicitud GET y pase el siguiente URI: http://localhost/FlexiCapture12/Monitoring/Report/GetCsv?reportType=<reportType>&filterParametersJson=<filterParametersJson>. En este URI, reportType y filterParametersJson pueden tener los siguientes valores:

Name

Tipo de informe. Valores posibles:

  • 1 - informe general de Operadores
  • 3 - informe de rendimiento de Processing
  • 9 - informe de rendimiento del sitio
  • 10 - informe de consumo de License por tenants
  • 11 - informe de consumo de License por proyectos

Parámetros según los cuales se generan los informes. El conjunto de parámetros depende del tipo de informe. Consulte información detallada sobre los parámetros de cada informe:

Puede encontrar un ejemplo de uso de esta API en el script. Descargue el script aquí o use el código del script que se incluye a continuación.
# Parámetros de autenticación
$endpoint = "https://preprod01.flexicapture.com"
$tenant = "tenantName"
$user = "FCUserName"
$pass = "password"
$filePath = "c:\temp\report.csv"
# Parámetros del informe
$reportType = 3
$jsonparameters = @"
[
{
"Name": "dateFrom",
"Value": "2022-08-31T21:00:00.000Z"
},
{
"Name": "dateTo",
"Value": "2022-09-01T21:00:00.000Z"
},
{
"Name": "projects",
"Value": [
5,
6,
7,
9,
10,
11,
12,
13,
14,
15,
16,
17,
19,
20,
28,
81,
221
]
},
{
"Name": "aggregateByBatchTypes",
"Value": true
},
{
"Name": "groupByType",
"Value": 1
},
{
"Name": "grouping",
"Value": "ProcessingStageName"
},
{
"Name": "columns",
"Value": [
"ProjectId",
"BatchTypeName",
"ProcessedBatchs",
"ProcessedDocs"
]
}
]
"@
###################################################
clear
$ErrorActionPreference="stop"
#Obteniendo authTicket para autorización desde la API SOAP de FlexiCapture
$tenantSuffix=""
$tenantInUrl = ""
if (($tenant -ne $null) -or ($tenant -eq "")) {
$tenantSuffix= "?Tenant="+$tenant
$tenantInUrl = "/$tenant"
}
$URL = $endpoint+'/FlexiCapture12/Server/FCAuth/API/Soap'+$tenantSuffix
$SOAPRequest = @"
<?xml version="1.0" encoding="UTF-8"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<soap:Body>
<FindUser xmlns="urn:http://www.abbyy.com/FlexiCapture">
<userLogin>$user</userLogin>
</FindUser>
</soap:Body>
</soap:Envelope>
"@
$pair = "$($user):$($pass)"
$encodedCreds = [System.Convert]::ToBase64String([System.Text.Encoding]::ASCII.GetBytes($pair))
$basicAuthValue = "Basic $encodedCreds"
$Headers = @{
'SOAPAction' = '"#FindUser"'
'Content-Type' = 'text/xml; charset=utf-8'
'Authorization' = "$basicAuthValue"
}
$response = Invoke-WebRequest -Uri $URL `
-Headers $Headers `
-Body $SOAPRequest `
-Method 'POST' `
$authTicket = $response.Headers['AuthTicket']
#Creando cookie de autenticación
$session = [Microsoft.PowerShell.Commands.WebRequestSession]::new()
$cookie = [System.Net.Cookie]::new('FlexiCaptureTmpPrn', "Ticket=$authTicket")
$session.Cookies.Add($endpoint, $cookie)
# Solicitar informe mediante la API y guardarlo
$uriGet = $endpoint+ "/FlexiCapture12/Monitoring$tenantInUrl/Report/GetCSV?reportType=$reportType&filterParametersJson="
$uriGet += [uri]::EscapeDataString($jsonparameters)
$header = @{
"Accept" = "*/*"
"Accept-Encoding" = "gzip, deflate, br"
}
$response = Invoke-RestMethod -Uri $uriGet -Method 'GET' -Headers $header -WebSession $session -OutFile $filePath