Méthode ‎load_working_file()‎

Charge un fichier de la section Données de travail pour le rendre accessible lors de la création de scripts Python/HCL. Le fichier chargé est une copie et non l'original.

Syntaxe

hcl.load_working_file(name = "nom_fichier_travail")

Paramètres

NomDescription
name = nom_fichier_travail

Le nom du fichier de travail. Le nom doit être entouré de guillemets.

Vous devez répliquer exactement le nom du fichier dans la section Données de travail, y compris son extension. Le fichier et le script chargeant le fichier doivent se trouver dans le même robot.

nom_fichier_travail ne respecte pas la casse. Pour de plus amples informations, consultez la section .

Note

nom_fichier_travail respecte la casse dans la Méthode ‎save_working_file()‎.

Valeurs renvoyées

En cas de succès, le code de retour 202. En cas d'échec, un message d'erreur.

Exemples

Note

Vous pouvez charger tout type de fichier pris en charge à partir de la section Données de travail dans un robot HighBond ou de flux de travail, puis l’utiliser dans un script Python/HCL. Les fichiers CSV ou Excel sont utilisés en tant qu'exemples ci-dessous, car ils font partie des deux principaux types de fichiers plats utilisés pour stocker et transférer les données.

Exemples de CSV

Charger un fichier depuis la section Données de travail

Vous souhaitez effectuer une analyse des doublons des enregistrements de facture du premier trimestre 2022. Les enregistrements sont contenus dans le fichier Invoices_Q1_2022.csv qui a été précédemment chargé dans la section Données de travail dans le robot. Dans le script d'analyse, vous devez d'abord charger le fichier avant de pouvoir faire des analyses.

hcl.load_working_file(name = "Factures_T1_2022.csv")

Charger un fichier de travail CSV et le convertir dans un cadre de données

Vous souhaitez convertir un fichier de travail CSV chargé dans un cadre de données pour pouvoir utiliser les données sous forme de tableau à l'aide de Python ou de HCL.

Charger un fichier CSV et le convertir dans un cadre de données Pandas

# Import the Pandas library 
import pandas as pd

# Load a CSV file from the Working data area
hcl.load_working_file(name = "Invoices_Q1_2022.csv") 

# Read the CSV file to a Pandas dataframe 
invoices_q1_2022_pd_df = pd.read_csv("Invoices_Q1_2022.csv") 

# Display the Pandas dataframe
invoices_q1_2022_pd_df

Charger un fichier CSV et le convertir dans un cadre de données Pandas

# Load a CSV file from the Working data area
hcl.load_working_file(name = "Invoices_Q1_2022.csv")

# Read the CSV file to an HCL dataframe
invoices_q1_2022_hcl_df = hcl.read_csv("Invoices_Q1_2022.csv")

# Display the HCL dataframe
invoices_q1_2022_hcl_df

Convertir un cadre de données HCL en cadre de données Pandas

# Convert an HCL dataframe to a Pandas dataframe
invoices_q1_2022_pd_df = invoices_q1_2022_hcl_df.to_pandas()

# Display the Pandas dataframe
invoices_q1_2022_pd_df

Charger un fichier de travail CSV compressé et le convertir dans un cadre de données

Avec la commande ACLScript EXPORT, vous importez les données d’une table Analytics locale vers un fichier CSV compressé (*.csv.gz) dans la section Données de travail dans un robot HighBond ou de flux de travail. Vous souhaitez charger un fichier de travail CSV et le convertir dans un cadre de données pour pouvoir utiliser les données sous forme de tableau à l'aide de Python ou de HCL.

# Import the Pandas library 
import pandas as pd

# Load a compressed CSV file (*.csv.gz) from the Working data area
hcl.load_working_file(name = "Invoices_Q1_2022.csv.gz")

# Read the compressed CSV file to a Pandas dataframe
invoices_q1_2022_pd_df = pd.read_csv("Invoices_Q1_2022.csv.gz", compression="gzip", header=0)

# Display the Pandas dataframe
invoices_q1_2022_pd_df

Exemples Excel

Charger un fichier de travail Excel et le convertir dans un cadre de données

Vous souhaitez convertir un fichier de travail Excel chargé dans un cadre de données pour pouvoir utiliser les données sous forme de tableau à l'aide de Python ou de HCL.

Fichier Excel avec une extension de fichier *.xlsx

L'exemple ci-dessous montre la conversion du fichier Excel chargé en cadre de données Pandas. Si besoin, vous pouvez convertir le cadre de données Pandas en cadre de données HCL, comme le montre l'exemple ci-dessus.

# Import the Pandas library 
import pandas as pd

# Load an Excel file (*.xlsx) from the Working data area
hcl.load_working_file(name = "Invoices_Q1_2022.xlsx") 

# Read the Excel file to a Pandas dataframe 
invoices_q1_2022_pd_df = pd.read_excel("Invoices_Q1_2022.xlsx") 

# Display the Pandas dataframe
invoices_q1_2022_pd_df

Fichier Excel avec une extension de fichier *.xls

Pour convertir un fichier Excel utilisant l’ancien format *.xls vous devez d’abord installer la bibliothèque Python xlrd.

Note

Comme dans l'application Jupyter Notebook, vous devez effectuer l'installation de chaque package Python ( pip install ) dans une cellule d'éditeur de script distincte.

L'installation de packages Python externes est prise en charge dans les robots HighBond mais pas dans les robots de flux de travail.

pip install xlrd
# Import the Pandas library 
import pandas as pd

# Load an Excel file (*.xls) from the Working data area
hcl.load_working_file(name = "Invoices_Q1_2022.xls") 

# Read the Excel file to a Pandas dataframe 
invoices_q1_2022_pd_df = pd.read_excel("Invoices_Q1_2022.xls") 

# Display the Pandas dataframe
invoices_q1_2022_pd_df

Charger et modifier un fichier de travail Excel

Vous souhaitez charger un fichier de travail Excel, le modifier, puis le réenregistrer dans la section Données de travail. Vous pouvez utiliser des méthodes d'une bibliothèque Python comme pyexcel pour apporter les modifications sans nécessairement convertir le fichier Excel en cadre de données Pandas ou HCL.

Note

Comme dans l'application Jupyter Notebook, vous devez effectuer l'installation de chaque package Python ( pip install ) dans une cellule d'éditeur de script distincte.

L'installation de packages Python externes est prise en charge dans les robots HighBond mais pas dans les robots de flux de travail.

pip install pyexcel
pip install pyexcel-xlsx
# Import the pyexcel library
import pyexcel as pe

# Import the get_data method from the pyexcel-xlsx library
from pyexcel_xlsx import get_data

# Load an Excel file from the Working data area
hcl.load_working_file(name = "Invoices_Q1_2022.xlsx")

# Copy the Excel data to a pyexcel sheet
sheet = pe.get_sheet(file_name="Invoices_Q1_2022.xlsx")

# Delete two rows of unwanted header information from the top of the worksheet
del sheet.row[0, 1]

# Name the columns using the name values in what is now the first row in the worksheet
sheet.name_columns_by_row(0)

# Delete three unwanted columns from the worksheet
del sheet.column['Prodno', 'Quantity', 'Unit_Cost']

# Save the pyexcel sheet to a new Excel file
sheet.save_as("Invoices_Q1_2022_prepared.xlsx")

# Save the new Excel file to the Working data area
hcl.save_working_file(name = "Invoices_Q1_2022_prepared.xlsx")

Remarques

Section Données de travail

La section Données de travail d'un robot est accessible de deux manières dans l'interface utilisateur de Robots :

  • L'onglet Données de travail

  • Le panneau Données de travail dans l'Éditeur de script

Ces deux emplacements donnent accès au même espace central de stockage de données dans un robot. Les actions que vous effectuez à un emplacement sont automatiquement synchronisées dans l'autre emplacement.

Génération automatique de la méthode load_working_file()

Le panneau Données de travail dans l'éditeur de script est une fonctionnalité d'économie de temps, qui génèrent automatiquement la méthode HCL load_working_file() avec un nom de fichier spécifique pré-rempli.

  • Bouton Copier fragmentDans le panneau Données de travail, chaque ligne contient le bouton Copier fragment . Appuyez sur le bouton pour copier un fragment avec la méthode load_working_file, préremplie avec le nom du fichier dans la ligne. Vous pouvez coller le fragment dans toutes les cellules de l'éditeur de script.

  • Création automatique d’une cellule dans l’éditeur de scriptLorsque vous chargez un fichier dans le panneau Données de travail de l’éditeur de script, une cellule contenant la méthode load_working_file() préremplie avec le nom du fichier est automatiquement créée en haut du script. Vous pouvez utiliser la cellule comme un point de départ, ou copier la méthode dans un autre endroit du script et supprimer la cellule.

Comportement lors du chargement de fichiers

Lorsque vous chargez un fichier depuis la section Données de travail dans l'environnement d'exécution Python, vous chargez une copie et non le fichier d'origine. Si un fichier portant le même nom et la même casse existe déjà dans l'environnement d'exécution, il est écrasé automatiquement.

Casse des noms de fichiers

Lorsque vous spécifiez nom_fichier_travail il ne respecte pas la casse. Lorsque vous exécutez un script de manière interactive dans l'éditeur de scripts, la casse utilisée pour nom_fichier_travail est répliquée dans le panneau Fichiers de la session. Si vous chargez deux fois le même fichier et que vous utilisez une casse différente pour le nom de fichier à chaque fois, le résultat consiste en deux fichiers de session identiques avec des noms qui diffèrent en fonction de leur casse. Le comportement est le même lorsque vous utilisez une tâche pour exécuter un script.

Toutefois, quand un fichier est chargé dans un environnement Python, les noms de fichier respectent la casse. Après le chargement d'un fichier de travail, le code qui suivra doit répliquer la casse utilisée pour charger le fichier.

Pour éviter de simples erreurs de script dues à une non-correspondance de casse dans les noms de fichiers, il est recommandé de répliquer la casse du nom de fichier dans la section Données de travail au moment du chargement du fichier.

Message d'erreur de script

Ces situations génèrent le message d'erreur de script affiché ci-dessous :

  • le fichier spécifié n'existe pas dans la section Données de travail dans le robot contenant le script

  • le nom du fichier est mal orthographié ;

  • l'extension de fichier est manquante.

Message d'erreur de script :

Exception : Fichier introuvable dans la section Travail en cours