Importer un fichier dans SharePoint avec Power Apps (V2)

Il est courant d’avoir besoin d’importer un fichier dans SharePoint ou OneDrive avec Power Apps.

Notamment, vous allez copier des fichiers vers une bibliothèque de documents SharePoint en utilisant le contrôle des pièces jointes de Power Apps et un flux Power Automate.

De plus, le fichier sera importé dans un dossier précis de la bibliothèque de documents.

Nouveau connecteur Power Apps (V2)

L’article Charger un fichier avec Power Apps présente une technique qui était valide avec l’ancien connecteur Power Apps.

Toutefois, ce connecteur a évolué vers une nouvelle version qui fonctionne très différemment du connecteur précédent.

L’avantage de ce nouveau connecteur est d’être beaucoup plus simple.

Contrôle Pièces jointes

Le contrôle Pièces jointes de Power Apps est un outil efficace pour le téléchargement de fichiers.

En particulier, pour l’utiliser, vous devez disposer d’une liste SharePoint quelconque. Peu importe la liste, ou son nom, etc.

Il faut une liste SharePoint, et non pas une bibliothèque.

Cette liste peut être vide ou pas. Elle peut posséder une ou plusieurs colonnes. Elle peut être existante ou bien être créée pour cette procédure.

Si la liste est créée pour cette procédure, vous pourrez la supprimer à la fin des manipulations lorsqu’elle ne sera plus nécessaire.

Cela n’a aucune espèce d’importance.

En effet, l’objectif final n’est pas la liste mais c’est de récupérer le contrôle de type Pièces jointes. Or, ce contrôle n’est pas directement présent dans le concepteur Power Apps.

En particulier, pour le récupérer, il faut utiliser une liste SharePoint.

Dans notre scénario, créez la liste Contrôle à partir du modèle de liste vierge.

liste avec le controle piece jointe
Liste avec le contrôle Pièces jointes

Créer une application Power Apps

Ensuite, créez une application Power Apps.

Vous pouvez aussi utiliser une application Power Apps existante, si cela vous arrange. Dans ce cas, ajoutez un nouvel écran vierge et travaillez sur cet écran vierge.

Connecter la liste à l’application

Ensuite, dans Power Apps, connectez la liste SharePoint Contrôle à votre application Power Apps.

Il s’agit bien de la liste Contrôle, et non pas la bibliothèque SharePoint qui va contenir les fichiers.

Insérer un contrôle de type formulaire

Le but de cette manipulation est de récupérer le contrôle Pièces jointes.

Cependant, il n’est pas possible de récupérer directement le contrôle Pièces jointes. Pour le récupérer, il faut ajouter un contrôle formulaire de modification qui va l’afficher.

Notamment, dans votre application Power Apps, insérez un contrôle de type formulaire de modification.

Ensuite, connectez ce formulaire à la liste SharePoint Contrôle. Aussitôt, le formulaire affiche le contrôle Pièces jointes.

formulaire de modification
Formulaire de modification

Copier le contrôle Pièces Jointes

Ensuite, copiez le contrôle Pièces jointes.

Dans notre scénario, un clic droit est fait directement sur le contrôle.

Faites bien attention de sélectionner le contrôle, qui doit s’appeler par exemple DataCardValue4, et non la carte de données qui s’intitule probablement Pièces jointes_DataCard2.

C’est bien DataCardValue4 qui nous intéresse.

sélection et copie du contrôle pièces jointes
Sélection et copie du contrôle Pièces jointes

Ensuite, collez le contrôle en dehors du formulaire : plusieurs erreurs apparaissent en rouge. C’est normal. Elles vont être corrigées dans un instant.

Si le contrôle Pièces jointes prend toute la largeur, réduisez le à une taille raisonnable.

Corriger les erreurs et supprimer les objets inutiles

En copiant le contrôle en dehors de sa carte de données, plusieurs erreurs sont apparues : c’est normal.

En effet, le contrôle Pièces jointes possède des formules qui font référence à des propriétés qui n’existent pas en dehors du formulaire.

La bonne nouvelle, c’est que ces propriétés manquantes ne vous sont d’aucune utilité et que vous allez remplacer les formules en erreur.

Pour ce faire, dans le contrôle Pièces jointes, cliquez sur la petite flèche à côté de l’icône rouge : un petit menu s’affiche.

corriger les erreurs de pieces jointes
Corriger les erreurs de pièces jointes

Dans le petit menu, cliquez sur Modifier dans la barre de formule : une première formule fautive s’affiche.

Notamment, remplacez la formule de BorderColor par Color.Black

Puis, remplacez la formule de DisplayMode par DisplayMode.Edit

Ensuite, effacez complètement la formule de Tooltip.

Puis, effacez complètement la formule de Items.

Puis, supprimez totalement le Formulaire de modification. Son rôle a été de nous fournir le contrôle. Maintenant que c’est fait il ne nous sert plus.

Puis, supprimez la connexion à la liste Contrôle.

Enfin, dans SharePoint, supprimez la liste Contrôle.

Votre application Power Apps est maintenant prête à recevoir des fichiers de la part des utilisateurs.

Création du flux Power Automate pour le téléchargement

Le flux créé dans Power Automate manipulera le fichier envoyé depuis Power Apps et le déposera dans la bibliothèque de documents SharePoint, en attribuant un nom au fichier.

Premièrement, ouvrez Power Automate.

Puis, dans Power Automate, créez un nouveau flux de cloud Automatisé que vous nommerez Import.

Avant d’aller plus loin, vérifiez que vous travaillez bien avec le nouveau concepteur. En effet, certaines options présentées dans ce tutoriel n’existent pas avec l’ancien concepteur.

creation du flux dimport dans power automate
Création du flux d’import dans Power Automate

Ajout du déclencheur

Ensuite, ajoutez un déclencheur Power Apps (v2).

declencheur power apps v2
Déclencheur Power Apps V2

Puis ajoutez une entrée qui servira à réceptionner le fichier.

declencheur power apps v2 cree
Déclencheur Power Apps V2 créé

Notamment, sélectionnez une entrée de type Fichier.

Puis, ajoutez une autre entrée qui servira à réceptionner le nom du dossier de stockage du fichier.

En particulier, sélectionnez une entrée de type Texte.

Au total, vous aurez deux 2 entrées : une entrée de type Texte, et une entrée de type Fichier. Vous verrez dans un instant qu’il n’est pas nécessaire d’avoir une entrée pour le nom du fichier.

Ajout de l’action Créer une fichier dans SharePoint

Ensuite, via le connecteur SharePoint, ajoutez l’action Créer un fichier.

Ensuite, renseignez l’adresse de votre site SharePoint.

Puis, renseignez le Chemin d’accès du dossier avec l’entrée de type Texte.

Puis, renseignez le Nom de fichier avec Contenu du fichier Name.

Ensuite, renseignez le Contenu du fichier avec Contenu du fichier ContentBytes.

parametres pour creer un fichier dans sharepoint
Paramètres pour créer un fichier dans sharepoint

Enfin, sauvegardez votre flux.

Intégration du flux dans votre application Power Apps

Ensuite, retournez dans votre application Power Apps.

Ensuite, ajoutez votre flux Import à votre application Power Apps.

ajouter un flux power automate a power apps
Ajouter un flux Power Automate à Power Apps

Puis, cliquez sur le contrôle Pièces jointes.

Puis, dans la propriété OnAddFile, remplacez false par la formule :

Import.Run({contentBytes:Last(Self.Attachments).Value;name:Last(Self.Attachments).Name};"Dossier n°001")

Attention. Si vous avez un message qui vous indique Votre formule n’a pas de colonne contentBytes de type Blog, c’est probablement parce que vous regardez un tuto avec la syntaxe {file:…}

Enfin, lancez une exécution.

exécution du flux pour charger un fichier dans sharepoint
Exécution du flux pour charger un fichier dans SharePoint

Fin des manipulations.

Ce contenu a été publié dans Power Apps, Power Automate. Vous pouvez le mettre en favoris avec ce permalien.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *