R3dKap
Expert Power AppsRéponses céées sur le Forum
-
R3dKap
Membre24 septembre 2024 à 18h20 en réponse à: Supervision multi environnements des flux Power Automate en erreur ?https://learn.microsoft.com/fr-fr/power-platform/guidance/coe/starter-kit 😊
L’outil de lui-même rempli des tas de tables Dataverse avec des infos hyper détaillées sur tous les flux, apps, users, etc.
-
R3dKap
Membre24 septembre 2024 à 18h18 en réponse à: Installation et configuration d’un WAF pour canvas appWAF ?
🐶 ? 😁
-
R3dKap
Membre24 septembre 2024 à 18h17 en réponse à: Lien Planner – Liste Sharepoint via POWER AUTOMATESalut @Fabrice,
Ce que je ferais :
- Balayer la liste SharePoint
- Regarder chaque tâche Planner pour l’élément de la liste en cours
- Si cette tâche a l’étiquette Proposition de clôture générer le code HTML correspondant
- Ajouter ce code HTML pour cette tâche à une variable qui va contenir toutes les lignes du tableau
- Une fois le traitement terminé, générer le contenu complet du mail (et dont le tableau fait partie) et l’envoyer
-
Salut @Valentin,
Mon avis est que les champs de type Lookup sont là justement pour créer de vraies relations entre les tables dans une vraie base de données (comme c’est le cas dans une base SQL Server qui est d’ailleurs utilisé pour le Dataverse). Cela permet de gérer des notions de dépendances et donc de protection des données lorsque l’on veut supprimer un enregistrement qui est utilisé par ailleurs par exemple.
Je ne recommanderais pas de stocker les ID des enregistrements liés d’une autre table dans un champ texte : même si techniquement c’est possible ça me semble bancal et contre-productif.
Et pour ce qui est des perfs, je ne pense pas qu’il y ait une différence au niveau base de données (c’est plutôt dans la manière d’exploiter cette relation que cela peut engendrer des différences de perfs) : d’ailleurs tu remarqueras que lorsque tu récupéres un enregistrement d’une Table A avec un champ lookup vers une table B, dans ton champ lookup n’a que le champ contenant l’identifiant de l’enregistrement lié (+ le champ principal) qui sont alimentés (tous les autres sont vides) -> c’est une optimisation faite par Power Apps pour que les perfs restent acceptables.
-
R3dKap
Membre24 septembre 2024 à 16h24 en réponse à: Afficher la valeur de recherche exacte dans dataverse au lieu de l’ID ou le GUIDSalut @Chris,
J’ai bien vu ton retour. Laisse-moi un peu de temps pour répondre… 😉
Tu as avancé comment depuis ?
-
Salut Vincent,
Effectivement, le nouveau Combo Box moderne n’est pas encore très souple car aujourd’hui il lui faut impérativement une colonne Value pour afficher les valeurs dans la liste.
Or, si ta combo pointe vers un champs de type User, elle va avoir la structure suivante :
Structure dans laquelle il va donc falloir rajouter une colonne Value avec l’instruction suivante (à mettre donc dans le Items de ta combo) :
AddColumns(Choices([@Developpeurs].scUser); Value; DisplayName)
Tu y mets ton propre champ évidemment… 😉
Là tu verras alors les noms de tes utilisateurs s’afficher à l’ouverture de la liste déroulante.
Reste à régler le problème de l’enregistrement de la donnée car cette colonne Value que tu as rajouté n’est pas connue de la structure User côté SharePoint. Il faut donc la retirer au moment de l’enregistrement de la donnée :
DropColumns(DataCardValue11.Selected; Value)
A mettre sur le Update du datacard.
Et le tour est joué 😊
-
Salut @Stephane,
Toujours coincé là-dessus ? Si oui, peux-tu préciser d’où est extraite ta capture ? Power Automate Desktop ?
-
Salut @Valentin,
Dataflow importe les données dans l’ordre où sont spécifiées tes requêtes :
A toi de déplacer vers le haut ou vers le bas tes sources de données pour décider dans quel ordre elles doivent être chargées.
😉
-
Ah je comprends mieux… Alors si je tiens pas compte de ta remarque “ça marchait avant, ça marche plus maintenant” je pourrais te dire que le connecteur OneDrive qui te founir l’action de conversion HTML > PDF est extêmement limité et ne supporte que du CSS hyper basique. Il faut donc que tu restes sur quelque chose de très simple en terme de CSS. Maintenant, le convertisseur est aussi hyper sensible : la moindre virgule ou accolade qui manque quelque part et la conversion foire complètement ou à moitié sans que tu ne saches pourquoi passke tu n’aurais aucun message d’erreur. Et d’ailleurs, en HTML tu auras un rendu “propre” parce-que le navigateur est capable de supporter des petites erreurs et de les auto-corriger ; le convertisseur non -> il plante ! Donc révérifie 3x tout ton code HTML avec un outil adéquat pour t’assurer qu’il est nickel.
Sinon, met ici le CSS que tu as mis dans ton HTML pour qu’on voie à quoi il ressemble…
Après ce qui est bizarre, du coup je reviens dessus, c’est le fait que tu dis que ça marchait et que tout à coup ça marche plus : c’est plutôt étonnant pour un connecteur qui est là depuis très très longtemps…
-
R3dKap
Membre17 septembre 2024 à 22h46 en réponse à: Afficher la valeur de recherche exacte dans dataverse au lieu de l’ID ou le GUIDSalut Chris,
Commençons par le commencement… 😉
Y’a un truc qui cloche dans ta table 2 : que le premier champ Caissière soit un champ de recherche vers la table 1 -> OK. Mais que les champs Caisse et Société soient aussi des champs de recherche (qui plus est “sur un champ” de table 1) -> là ça cloche.
Dans Dataverse, lorsque l’on crée un champ de recherche d’une table A vers une table B on ne spécifie pas le champ lié : ça c’est un truc qui se fait dans SharePoint, pas dans Dataverse. Dans Dataverse c’est un vrai lien relationnel entre les 2 tables qui fait que l’on peut accéder à partir du champ de recherche de la table A à tous les champs de la table liée B.
Or, clairement dans ton cas de figure ce que tu devrais avoir dans ta table 2 c’est :
- Caissière (champ de recherche vers table 1)
- Montant (champ de type devise)
- Caisse (champ de type option (ça s’appelle “option” dans Dataverse, pas “choix” 😉… “choix” c’est dans SharePoint)
- Société (champ de type option également)
Du coup si on y regarde bien : mettre un champ Société dans table 2 est redondant puisqu’il existe déjà sur Caissière qui pointe vers table 1 où il y a justement la société. Ca c’est le genre de truc qu’il faut éviter (sauf cas rare justifié par des problématiques de performance).
Clairement, ton modèle de données et la manière dont tu va structurer et organiser tes tables est absolument critique pour que tout se passe bien ensuite dans l’application. Les problèmes de valeurs que tu rencontres dans ton application sont probablement dûs à une mauvaise construction de tes tables.
Essaie peut-être de nous décrire tout simplement comme tu le dirais à l’oral ce que ton modèle de données représente dans la réalité : j’ai des caissières qui travaillent dans une société et sur une caisse donnée à un instant t ; j’ai besoin de suivre l’approvisionnement en montant des différentes caisses ; etc…
PS : perso je créerais une table Caisses et une table Sociétés… passke le jour où tu voudras associer une information supplémentaire à l’une ou l’autre tu pourras le faire sans problème (à contrario d’une option où c’est juste une liste de valeurs)… 😉
-
Salut Hervé,
Perso je ferais une moulinette dans Power Apps :
- tu places ton fichier Excel dans la bibliothèque de documents d’un site SharePoint quelconque
- tu crées une app Power Apps
- tu ajoutes à l’app ton fichier Excel comme source de données
- tu mets un bouton sur l’écran
- dans ce bouton sur la propriété OnSelect tu mets le code suivant :
<pre class=”language-markup”>
ForAll(
TonFichierExcel As loopItem;
Patch(
TaListeSP;
Defaults(TaListeSP);
{
Colonne1SP: loopItem.ValeurColonne1DeTonFichierExcel;
Colonne2SP: loopItem.ValeurColonne2DeTonFichierExcel;
etc...
}
)
)Tu lances l’application, tu cliques sur le bouton et voilàaaa… 😉
Si t’as besoin d’aide à une étape précise n’hésite pas…
PS: pour que ça marche faut juste que les données de ton fichier Excel soit dans un vrai tableau Excel avec des entêtes de colonnes etc.
Ah et pour ce qui est de partager ta liste avec tous les membres de ton orga, il suffit que tous aient accès à ton site SharePoint. Pour cela tu peux ajouter “All company” comme membre du site. Depuis ton site SharePoint :
- tu cliques sur l’icône engrenage en haut à droite puis Autorisations du site
- clique sur Ajouter des membres puis Partager le site uniquement
- là tu saisis All company et tu valides
- et voilàaaaa 😉
-
R3dKap
Membre12 septembre 2024 à 21h39 en réponse à: Bonnes pratiques création données HEADER / DETAIL@Jeremy, pourquoi un flux ? Ca me semble vachement compliqué à mettre en oeuvre (et à maintenir) alors que :
- dans le OnSuccess du formHEADER tu pourrais initialiser toutes tes lignes de AUDIT DETAILS en faisant ceci :
- tu boucles sur les lignes de AUDIT TEMPLATES qui correspondent au template spécifié dans le HEADER
- tu crées (avec un simple Patch) une ligne AUDIT DETAILS en te servant de
formHEADER.LastSubmit.ID
et de la ligne de TEMPLATE en cours dans la boucle
Ensuite l’appli n’a plus qu’à lister les lignes de AUDIT DETAILS pour qu’elles soient remplies par l’utilisateur (via un formulaire ou un simple Patch, au choix).
PS: j’ai lu en diagonale que ton dernier post, donc j’ai p’têt loupé des trucs d’avant… 😉
- dans le OnSuccess du formHEADER tu pourrais initialiser toutes tes lignes de AUDIT DETAILS en faisant ceci :
-
R3dKap
Membre3 septembre 2024 à 17h38 en réponse à: Saisie et affichage d’une expression mathématiqueA priori tu peux quasiment tout faire avec du PCF. Mais je m’y connais absolument pas… 🙏
-
R3dKap
Membre3 septembre 2024 à 15h45 en réponse à: Saisie et affichage d’une expression mathématiqueSalut @Nicolas,
De base comme ça je dirais que c’est pas possible. Et je viens de jeter un oeil rapide au site qui référence les composants PCF (https://pcf.gallery/) et je n’ai rien trouvé sur le sujet.
😔
-
R3dKap
Membre3 septembre 2024 à 12h47 en réponse à: Affichage msg d'erreurs personnalisés lorsque champs obligatoires non renseignés