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

Nom Description
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 en savoir plus, consultez la rubrique Casse des noms de fichiers.

Remarque

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

Renvoie

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

Exemples

Remarque

Vous pouvez charger tout type de fichier pris en charge à partir de la section Données de travail dans un robot HighBond ou 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 Factures_T1_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

# Importer la librairie Pandas 
importer pandas en tant que pd

# Charger un fichier CSV depuis la section Données de travail
hcl.load_working_file(name = "Invoices_Q1_2022.csv") 

# Lire le fichier CSV dans un cadre de données Pandas 
invoices_q1_2022_pd_df = pd.read_csv("Invoices_Q1_2022.csv") 

# Afficher le cadre de données Pandas
invoices_q1_2022_pd_df

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

# Charger un fichier CSV depuis la section Données de travail
hcl.load_working_file(name = "Invoices_Q1_2022.csv")

# Lire le fichier CSV dans un cadre de données HCL
invoices_q1_2022_hcl_df = hcl.read_csv("Invoices_Q1_2022.csv")

# Afficher le cadre de données HCL
invoices_q1_2022_hcl_df

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

# Convertir un cadre de données HCL en cadre données Pandas
invoices_q1_2022_pd_df = invoices_q1_2022_hcl_df.to_pandas()

# Afficher le cadre de données Panda
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 données. 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.

# Importer la librairie Pandas 
importer pandas en tant que pd

# Charger un fichier CSV compressé (*.csv.gz) depuis la section Données de travail
hcl.load_working_file(name = "Invoices_Q1_2022.csv.gz")

# Lire le fichier CSV compressé dans un cadre de données Pandas
invoices_q1_2022_pd_df = pd.read_csv("Invoices_Q1_2022.csv.gz", compression="gzip", header=0)

# Afficher le cadre de données Pandas
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.

# Importer la librairie Pandas 
importer pandas en tant que pd

# Charger un fichier Excel (*.xlsx) dans la section Données de travail
hcl.load_working_file(name = "Invoices_Q1_2022.xlsx") 

# Lire le fichier Excel dans un cadre de données Pandas 
invoices_q1_2022_pd_df = pd.read_excel("Invoices_Q1_2022.xlsx") 

# Afficher le cadre de données Pandas
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.

Remarque

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
# Importer la librairie Pandas 
importer pandas en tant que pd

# Charger un fichier Excel (*.xls) depuis la section Données de travail
hcl.load_working_file(name = "Invoices_Q1_2022.xls") 

# Lire le fichier Excel dans un cadre de données Pandas 
invoices_q1_2022_pd_df = pd.read_excel("Invoices_Q1_2022.xls") 

# Afficher le cadre de données Pandas
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.

Remarque

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
# Importer la librairie pyexcel
importer pyexcel en tant que pe

# Importer la méthode get_data depuis la librairie pyexcel-xlsx
depuis pyexcel_xlsx importer get_data

# Charger un fichier Excel depuis la section Données de travail
hcl.load_working_file(name = "Invoices_Q1_2022.xlsx")

# Copier les données Excel dans une feuille pyexcel 
feuille = pe.get_sheet(file_name="Invoices_Q1_2022.xlsx")

# Supprimer deux lignes d'informations indésirables dans l'en-tête en haut de la feuille de calcul
del sheet.row[0, 1]

# Nommer les colonnes avec les valeurs de noms de ce qui est maintenant la première ligne de la feuille de calcul
sheet.name_columns_by_row(0)

# Supprimer trois colonnes indésirables de la feuille de calcul
del sheet.column['Prodno', 'Quantity', 'Unit_Cost']

# Enregistrer la feuille pyexcel dans un nouveau fichier Excel
sheet.save_as("Invoices_Q1_2022_prepared.xlsx")

# Enregistrer le nouveau fichier Excel dans la section Données de travail
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 fragment Dans 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 script Lorsque vous télé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