- Notas relacionadas
- Primeros pasos
- Instalación
- Requisitos de hardware y software
- Instalación del servidor
- Actualizar la licencia
- Implementar el perfilador de UiPath Process Mining
- Implementar un conector (.mvp)
- Actualizar UiPath Process Mining
- Actualizar una versión personalizada de una aplicación o un acelerador de descubrimiento
- Instalar un entorno de pruebas
- Configuración
- Integraciones
- Autenticación
- Working with Apps and Discovery Accelerators
- Menús y paneles de AppOne
- Configuración de AppOne
- Menús y paneles de TemplateOne 1.0.0
- Configuración de TemplateOne 1.0.0
- Menús y paneles de TemplateOne
- Configuración de TemplateOne 2021.4.0
- Menús y paneles de Purchase to Pay Discovery Accelerator
- Configuración del acelerador de compra para pagar
- Menús y paneles de Order to Cash Discovery Accelerator
- Orden de cobro de la configuración del Discovery Accelerator
- Basic Connector for AppOne
- Despliegue del Conector básico
- Introduction to Basic Connector
- Tablas de entrada del conector básico
- Añadir etiquetas
- Añadir estimaciones de automatización
- Añadir fechas de vencimiento
- Añadir modelos de referencia
- Setting up Actionable Insights
- Configurar gráficos contraíbles
- Utilizar el conjunto de datos de salida en AppOne
- Output tables of the Basic Connector
- SAP Connectors
- Introduction to SAP Connector
- Entrada de SAP
- Comprobación de los datos en el conector SAP
- Añadir etiquetas específicas del proceso al conector de SAP para AppOne
- Añadir fechas de vencimiento específicas del proceso al conector de SAP para AppOne
- Añadir estimaciones de automatización al conector de SAP para AppOne
- Añadir atributos al Conector SAP para AppOne
- Añadir actividades al Conector SAP para AppOne
- Añadir entidades al Conector SAP para AppOne
- Conector de pedido por cobro de SAP para AppOne
- Conector de SAP Purchase to Pay para AppOne
- Conector SAP para Purchase to Pay Discovery Accelerator
- SAP Connector for Order-to-Cash Discovery Accelerator
- Superadmin
- Paneles y gráficos
- Tablas y elementos de tabla
- Integridad de la aplicación
- How to ....
- Rebrand and restyle Apps and Discovery Accelerators
- Utilice la fragmentación en sus aplicaciones
- Example: Creating a Python Script
- Example: Creating an R Script
- Crear un conjunto de datos anónimo
- Configuración de actualizaciones de datos automatizadas
- Utilice una matriz de acceso para habilitar el acceso basado en roles a los datos
- Trabajar con conectores SQL
- Introduction to SQL connectors
- Setting up a SQL connector
- CData Sync extractions
- Running a SQL connector
- Editing transformations
- Publicar un conector SQL
- Scheduling data extraction
- Structure of transformations
- Using SQL connectors for released apps
- Generating a cache with scripts
- Setting up a local test environment
- Separate development and production environments
- Recursos útiles
Example: Creating a Python Script
Este ejemplo explica cómo interactuar la plataforma UiPath Process Mining con scripts externos de Python para implementar el procesamiento de datos externos.
Se crea un script de Python que:
- toma como entrada un archivo
.CSV
, que se especificará en su línea de comandos como único argumento requerido, - multiplica el valor de la Cantidad por dos,
- escribe el resultado en su canal de salida estándar.
El origen de datos de script genérico requiere controladores para todos los procesos externos que desea ejecutar.
Sigue estos pasos para añadir un controlador de script genérico.
Paso |
Acción |
---|---|
1 |
Ve a la pestaña Ajustes de superadministrador. |
2 |
Añade un campo
GenericScriptHandlers con un valor de un objeto de una clave, "py", que tiene como valor la ruta a tu ejecutable de Python. Por ejemplo:
|
3 |
Haz clic en GUARDAR. |
Comience creando un script mínimo que aún no procese datos. Este script se utilizará para verificar que su configuración de Python funciona y que se llama a su script desde la plataforma UiPath Process Mining .
Este script de ejemplo muestra cómo generar una salida que aparecerá en el registro de ejecución del script, y cómo el código de salida de un script influye en el comportamiento de la plataforma UiPath Process Mining .
Paso |
Acción |
---|---|
1 |
En su editor favorito, cree un archivo de texto en blanco. |
2 |
Introduce el siguiente texto:
Nota: El comando
debug(“Hello world!”) es un ejemplo de cómo usar el canal de error estándar para generar mensajes y depurar la salida.
|
3 |
Guarda el archivo de texto como
script.py .
|
4 |
Cargue el archivo
script.py a su espacio de trabajo.
|
Este script solo imprime un mensaje de "¡Hola, mundo!" Mensaje La interfaz del script utiliza una salida estándar para la comunicación de datos desde el script a la plataforma Process Mining de UiPath . Si quieres incluir mensajes de estado en tu script, debes escribirlos en error estándar .
A continuación, configure una tabla de fuentes de datos en la aplicación que llamará al script. Comience con algunos datos ficticios, ya que su script aún no los procesará. En esta etapa, se verificará que el script se ejecuta como se esperaba, es decir, que puede ver el mensaje "¡Hola, mundo!" Mensaje
Paso |
Acción |
---|---|
1 |
Abra la aplicación en su entorno de desarrollo. |
2 |
Ve a la pestaña Datos y crea una nueva tabla de cadenas de conexión. |
3 |
Cambia el nombre de
New_table a PythonExample .
|
4 |
Haga clic con el botón derecho en la tabla
PythonExample y seleccione Avanzado> Opciones…
|
5 |
En el cuadro de diálogo Opciones de tabla, establece el Ámbito de la tabla en Espaciode trabajo. |
6 |
Haz doble clic en la tabla
PythonExample para abrir la ventana Editar tabla de cadenas de conexión .
|
7 |
Introduzca lo siguiente como cadena de conexión: ``'driver={mvscript |
8 |
Introduzca lo siguiente como Consulta: `` ''
El "n. ° 10" en el ejemplo inputData indica caracteres de nueva línea. Es decir definimos los siguientes datos CSV ficticios:
|
9 |
Haz clic en Aceptar. |
10 |
Haz clic en SI. |
La actualización de la tabla falla y en el registro de errores debería ver el mensaje "¡Hola, mundo!" mensaje
La ubicación del archivo de script está determinada por el ámbito de la tabla. Esto se puede establecer como Servidor , Espaciode trabajo o Ninguno. Si se establece en Ninguno, la ruta del archivo de script es absoluta. Si está establecido en Servidor o Espaciode trabajo, la ubicación del script se interpreta como una ruta relativa.
.CSV
más adelante para que el script de Python pueda leerla.
Para este ejemplo, tenemos una aplicación con una tabla de casos y una tabla de eventos . Consulta la siguiente ilustración.
Sigue estos pasos.
Paso |
Acción |
---|---|
1 |
Crear una nueva tabla global ,
PythonInputData .
|
2 |
Agregue un nuevo atributo de expresión,
PythonInputData_Amount .
|
3 |
Establece el Tipo en Buscar. |
4 |
Establece la tabla de entrada en Casos_base. |
5 |
Establece la expresión en
listtojson(text(double(records.Amount))) .
|
6 |
Establece el nivel de expresión en raíz. |
7 |
Haz clic en Aceptar. |
8 |
Añade otro atributo de expresión de búsqueda, para Case_ID. Establece la expresión en
listtojson(text(double(records.Case_ID))) .
|
csvtable()
para transformar los datos al formato .CSV
, que espera una lista de registros (de texto).
listtojson()
requiere que su entrada sea de tipo texto, el formato de los registros en el archivo CSV resultante depende del tipo de atributo seleccionado (en este caso, la Cantidad es de tipo Moneda) y de la visualización actualmente activa formato. Aquí el tipo de moneda se convierte a doble, para facilitar el análisis de los registros posteriormente en el script de Python.
En tu editor de texto, actualiza el archivo script.py con el siguiente código.
#!/usr/bin/python
import csv
import sys
def debug(message):
sys.stderr.write(message)
# Read the CSV header. This is used so that the script will output the fields
# in the same order that they were read in. This step is optional.
column_order = [];
with open(sys.argv[1]) as csv_file:
reader = csv.reader(csv_file, delimiter=';')
column_order = next(reader)
# Process the input file
with open(sys.argv[1]) as csv_file:
reader = csv.DictReader(csv_file, delimiter=';')
# Construct the output writer.
writer = csv.DictWriter(
sys.stdout,
column_order,
delimiter=';',
restval='',
quoting=csv.QUOTE_ALL
)
writer.writeheader()
for row in reader:
# Get data from row
case_id = row['Case_ID']
amount = int(row['Amount'])
# Do computation
amount = amount * 2
# Write results
writer.writerow({'Case_ID': case_id, 'Amount': amount})
# Exit indicating success
exit(0)
#!/usr/bin/python
import csv
import sys
def debug(message):
sys.stderr.write(message)
# Read the CSV header. This is used so that the script will output the fields
# in the same order that they were read in. This step is optional.
column_order = [];
with open(sys.argv[1]) as csv_file:
reader = csv.reader(csv_file, delimiter=';')
column_order = next(reader)
# Process the input file
with open(sys.argv[1]) as csv_file:
reader = csv.DictReader(csv_file, delimiter=';')
# Construct the output writer.
writer = csv.DictWriter(
sys.stdout,
column_order,
delimiter=';',
restval='',
quoting=csv.QUOTE_ALL
)
writer.writeheader()
for row in reader:
# Get data from row
case_id = row['Case_ID']
amount = int(row['Amount'])
# Do computation
amount = amount * 2
# Write results
writer.writerow({'Case_ID': case_id, 'Amount': amount})
# Exit indicating success
exit(0)
Sigue los siguientes pasos.
Paso |
Acción |
---|---|
1 |
Cargue el nuevo script al Workspace, sobrescribiendo el archivo existente y vuelva a la aplicación. |
2 |
Haga clic con el botón derecho en la tabla
PythonExample y seleccione Editar…
|
3 |
Modifica el parámetro
inputData de la cadena de consulta para la tabla PythonExample :
Consulta la siguiente ilustración. |
4 |
Haz clic en Aceptar. |
5 |
Haga clic en SÍ (2x). |
6 |
Haz clic en Aceptar. |
PythonExample
tiene ahora dos atributos de fuente de datos, Amount y Case_ID. Consulta la siguiente ilustración.
La inspección del atributo Cantidad revela que todas las cantidades se han multiplicado por dos. Vea la siguiente ilustración un ejemplo de la salida generada por el script de Python.