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