Réponses céées sur le Forum

Page 1 sur 3
  • Elias

    Membre
    23 mai 2024 à 13h57 en réponse à: Mixer une galerie, formulaire et position

    Encore un grand merci pour votre aide.

    En essayant de développer un app un peu compliquée j’ai l’imression ,de progresser un peu chaque jour, grace a vous:)

    je pense donc que je vais supprimer la colonne ID-mere et ne pas utiliser la fonction look up.

    Encore un grand merci!

  • Elias

    Membre
    23 mai 2024 à 10h31 en réponse à: Mixer une galerie, formulaire et position

    Un très grand merci Jeremy pour cette autre piste très fructueuse

    CHAPITRE 1 : Ca fonctionne…presque

    Voici ce que j’ai fait avec les adaptations suivante:

    • le nom de la variable var_ID_boite_Mere : je prefere que mes noms de variable commence par var (bonne idée?)
    • le nom de la liste BoiteEmplacement
    • le nom du formulaire:Form1_

    Ce qui donne :

    Set(var_ID_Boite_Mere;Form1_1.LastSubmit.ID)

    ForAll(Sequence (9;1;1);

    Patch(BoiteEmplacement;Defaults(BoiteEmplacement);

    {emplacement: Value;

    ‘ID-mere’:var_ID_boite_Mere}))

    J’ai changé titre par emplacement car ma liste BoiteEmplacement reprend les colonnes suivantes

    titre (dont je ne sais pas quoi faire, cette colonne a été créé lors de la création de ma liste?)

    ID-mère : qui est une colonne de recherche, qui va chercher l le nom de la boite dans la liste (Boites80).

    emplacement : qui doit reprendre les n° d’emplacement de 1 à 9.

    Question 1 : remplacer titre par emplacement est ce correct dans mon cas?

    CHAPITRE 2 : Ca fonctionne

    Question 2 : j’ai un message d’erreur “le type de cet argument ‘ID_x002d_mere’ ne correspond pas au type attendu ‘record’. type trouvé ‘Number. Je pense que cela vient du fait que dans le patch on donne à ID-mere une valeur numerique var_ID_boite_Mere. Alors que cette colonne est définie dans sharepoint comme une colonne recherche (qui va chercher son info dans la colonne titre, de la liste Boites80, cette colonne titre étant une ligne de texte avec par exemple des données du type 2024-01) Mon diagnostique est il le bon?

    Pour ce problème j’ai fait l’essai suivant: j’ai changé ID-mere par titre sur la dernière ligne.

    Set(var_ID_Boite_Mere;Form1_1.LastSubmit.ID)

    ForAll(Sequence (9;1;1);

    Patch(BoiteEmplacement;Defaults(BoiteEmplacement);

    {emplacement: Value;

    titre : var_ID_boite_Mere}))

    Et cela fonctionne!! je suis super content 🙂 j’ai donc ID de ma boite dans la colonne titre et mes 9 emplacements de créer!

    CHAPITRE 3 : peut on mieux faire?

    Il reste un point qui me chagrine, comment mettre dans ID-Mere le nom de la boite qui vient d’être créer?

    Pour tester voici ce que j’ai fait j ‘ai ajouté dans ma liste BoiteEmplacement une colone ID-mere-Bis de type texte. (le modification son en gras)

    Set(var_ID_ID_Boite_Mere;Form1_1.LastSubmit.ID);; //Donne la valeur de ID de la dernière boite crée.

    Set(var_ID_Boite_mere;Form1_1LastSubmit.titre);; //donne la valeur titre (par exemple 2025-01) à la variable

    ForAll(Sequence (9;1;1);

    Patch(BoiteEmplacement;Defaults(BoiteEmplacement);

    {emplacement: Value;

    ‘titre’:var_ID_ID_boite_Mere;

    ‘ID-mere-bis:var_ID_mere}))

    cela marche :

    Question 3 : est la meilleur manière de faire? ou alors aurais je du jouer avec une fonction lookup et avoir dans la dernière ligne de mon patch : ‘ID-mere’: LookUp (boites80; ID=var_ID_ID_boite_Mere).titre?

    J’ai testé cette option et je retrouve mon message d’erreur : “”le type de cet argument ‘ID_x002d_mere’ ne correspond pas au type attendu ‘record’. type trouvé ‘Text. Avez vous une piste?

    Encore un tout grand merci !

  • Elias

    Membre
    22 mai 2024 à 12h30 en réponse à: Mixer une galerie, formulaire et position

    Encore un tout grand merci cette information.

    Dans mon cas je veux donc créer les 9 emplacements de la nouvelle boite lorsque celle ci est créée .

    Ma fonction patch est donc mise sur mon bouton de validation de mon écran de création d’une nouvelle boite.

    <div>
    <div>ForAll(Sequence(1;9);</div>
    <div> Patch(</div>
    <div> BoiteEmplacement;</div>
    <div> Record;</div>
    <div> {BoiteEmplacement : {id : ID ; value : LookUp(Boites80;id= ID ;titreboiteNum)}})</div>
    <div> </div>
    <div> }</div>
    <div> )</div>
    <div>)</div>
    <div> </div>
    <div>- Question 1 : J’ai un problème avec le ForAll qui ne semble pas correcte. une diée</div>
    <div>- question 2 : la fonction Record ne semble pas reconnue. ?</div>
    <div>- question 3 : J’ai bien vu que toute mes tables avaient en effet une colonne ID que l’on peut faire apparaitre dans Sharepoint en créant une vue particulière. mais toutes ces colonnes de mes différentes liste s’appellent tous ID, comment les distinguée?</div>
    <div> </div>
    <div> </div>
    </div>

  • Elias

    Membre
    2 mai 2024 à 22h43 en réponse à: Mixer une galerie, formulaire et position

    Je pense que mon problème vient de ma liste sharepoint dans laquelle j ai une colonne de type Rechrche. Si je change le type de colonne comment pus je faire le lien dans powerApps?

  • Elias

    Membre
    30 avril 2024 à 17h18 en réponse à: Mixer une galerie, formulaire et position

    Sur base de la proposition de Jeremy j’ai donc 2 listes:

    Boites80 avec la colonne titreBoiteNum (par exemple 2024-10) et son lieux de stockage.

    BoiteEmplacements avec 3 colonnes : titre, ID-mere qui est une colonne recherche dans ma liste sharepoint qui reprend l’info l’indetification de la boite qui se trouve dans titreBoiteNum de la liste Boits80

    Pour ma partie Power apps j’ai une appli classique avec un ecran d’accueil qui reprend une galerie et le détail du contenu et un écran d’édition.

    Dans mon ecran d’édition j’ai un bouton ‘Valider’ qui permet de valider une nouvelle entrée. Sur ce bouton j’ai mis le Onselect sur :

    <div>
    <div>SubmitForm(Form1_1);;</div>
    <div>Navigate(‘ecAcceuil-boite80’);;</div>
    <div>Set(</div>
    <div> varNouveau;</div>
    <div> false</div>
    <div>);;</div>
    <div>ForAll(Sequence(1,9);Patch(BoiteEmplacement;Defaults(BoiteEmplacement);{‘ID-mere’: DataCardValue31.Text; emplacement:Value}))</div>
    </div>

    La première partie soumet mon formulaire = crée la nouvelle boite dans ma liste “Boites80” : OK

    La seconde partie me fait retourner à mon ecran d’acceuil des boites80 : OK

    La variable VarNouveau et mise à false : ca me permet de remetre cette vraiable sur cette valeur et de différencier les modification des créations (…je pense..)

    Et donc vient ensuite la partie de Pactch pour créer dans ma table “BooiteEmplacement”.

    C’est là que ca merdouille..avec du bug :

    message 1 : “La fonction patch contient des arguments non valides”. voyez vous d ou vient le problème? j’ai essayé avec ‘ID-mere’ ou ID-mere sans les ”, ca ne change pas le problème.

    Message 2 : “Le type de cet argument ‘ID-x002d-mere’ ne correspond pas au type atendu ‘reccord’. Type trouvé ‘Text’. ici j’imagie que le problème vient du fait que j’ai utilisé le type text. comme expliqué plus haut, dans sharepoint le colonne ID-Mere est une colonne de type recherche. est ce que c’est ca qui pose problème?

    D’avance, merci

  • Elias

    Membre
    26 avril 2024 à 13h52 en réponse à: Mixer une galerie, formulaire et position

    Super!

    Oui je debute et je progresses bien en grande partie grâce à ce forum.

    Pour ma première app je souhaite aller le plus loin possible. Car comme tu l as vu dans les autres postes il y a des choses qui se recoupent.

    Je sais que cela est complexe c est justement ça qui est motivant. J espère arriver jusqu a ce point. Sur papier j ai mes listes, dans share point, J ai déjà des applications de base qui tournent avec quelques fonctions de powerfx. If, and, or, isblank, mise en forme de bouton conditionnel, lien entre les tables

    .La dernière chose que j ai intégrée c est les variable et les collections. Les prochaines étapes c est les fonction lookup et patch. Cet partie sur les boîtes me permet donc d intégrer ces fonctions.

    Encore merci pour ton input!

  • Elias

    Membre
    26 avril 2024 à 9h23 en réponse à: Mixer une galerie, formulaire et position

    Merci.

    “Soucis, il te faut maintenant générer 9 lignes à chaque création de nouvelle “boite”. C’est tout à fait faisable, mais il faut maitriser les Patch”

    Cette fonction reste pour l’instant un peu compliquée pour moi.

    Je vais un peu faire des recherches. L’idée est que lors de la création d’une nouvelle boite, on crée déjà les 9.

    Donc les listes suivantes

    -Items : avec la liste des mes objects

    -Boites : qui reprend la liste boites avec leur identification et leur date de création par exemple.

    -BoitesItems : qui reprend le contenu de toutes les boites, avec les colonnes boiteID, position, Item description.

    Par contre je ne vois pas ou et a quoi servirait le point suivant :

    “A mon avis, tu vas devoir créer une autre liste “position” qui référe à ta liste “boite”.

    Tu vas avoir 9 lignes dans cette table, 1 pour chaque position, avec une valeur “ID_boite” = l’id de la boite mère.”

    Dans cette liste j’aurais par exemple

    Position = 1; ID-boite: boite1

    Position = 2: ID-boite: boite1…. et cela jusqu’a 9

    Puis idem avec position=1; ID-boite : boite2.

    C’est ca? a quoi cela sert il? pour la fonction patch?

  • Elias

    Membre
    25 avril 2024 à 15h33 en réponse à: Faisabilité d’un projet avec POwer Apps

    Encore merc Jeremy.

    Dans mon exemple des boites j’ai bien compris que je pouvais avoir des galleries imbriquées.

    Cette organisation en 1 ou 2 galeries, imbriquées ou pas est indépendante de la structure de la base de données. En effet je peux travailler avec une liste Sharepoint avec pour chaque étapes les colonnes nécessaires ou je peux avoir une liste mère avec les données de base et une liste fille par étapes.Dans les deux cas je peux utiliser des galleries imbriquées.

    De ce que je comprends l’option une liste mère et des listes filles par étapes est plus optimale> c’est bien cela?

    La question qui suit est ou et comment je gère mes statuts par exemple : Pret pour étape 1, Etapes 1 en cours, Pret pour étapes 2, Etapes 2 en cours etc…). Je pensais avoir liste statut qui reprends tous les status possibles et une colonne ‘statut’ dans ma liste mère dans laquelle je fais évoluer les statuts.

    Qu’en pensez vous?

  • Elias

    Membre
    24 avril 2024 à 15h55 en réponse à: Mixer une galerie, formulaire et position

    Je trouve que 3 sortes de galeries :

    • galerie horizontale
    • galerie verticale
    • galerie à hauteur flexible

    mais si je compredn bien une nested gallery est une gallery dans une gallery, c’est bien ca?

    Concrètement en quoi cela peut il m’aider par rapport à ce que je veux faire?

    J’image que la gallery de niveau plus élevée peu reprendre mon numéro de boite et la sous galerie le détail d’une boite. c’est bien cela?

    C’est en effet une option intéressante que je vais tester. Merci!

    Pour l’enregistrement de la position 1 à 9, y a t il des solutions?

  • Elias

    Membre
    24 avril 2024 à 15h12 en réponse à: Mixer une galerie, formulaire et position

    Merci Jeremy, c’est super! ca m’aide vraiement. top.

    Pour mon point 2 pour l’affichage j’ai donc ma solution je dois jsute bien cadré les étiquettes de la galerie avec mon arrière plan. Ca c’est OK.

    Pour la partie 3, Y a t il le meme genre d’outils/options pour un formulaire?

    Et comment lui faire encodé dans la liste ‘Boites’ la position de l’item dans la boite?

    je pensais

    • pour mes 9 positions, 9 étiquettes de texte (et-text-position) avec les comme texte 1,2,3,4..jusque 9.
    • pour mes 9 positions, 9 “entrée de texte” dans le quel j’encode mon n° d’inventaire de mon Item (et qui est liée à ma colonne Item de liste Boites). Mais comment intégrer l’emplacement? en copiant la données de l'”étiquette de texte” 1 à 9?Vous avez une piste pour ce genre d’encodage?

    merci

  • Elias

    Membre
    22 avril 2024 à 17h59 en réponse à: Récupérer le nom des colonnes d’un tableau

    Est cexquextu peux passer par une liste share point : transfomrer ton fichier xls en liste share point et t assurer que tu as bien tes en tête de colonne dans Sharepoint.

    Puis faire ton appli sur base de ta liste sharepoint.

    Note : je débute dans power apps.

  • Elias

    Membre
    22 avril 2024 à 13h23 en réponse à: Faisabilité d’un projet avec POwer Apps

    J’ai donc maintenant 2 listes sharepoint

    • Types qui reprend différenets colonnes définissant les différents types qui caractérise mes Items
    • Items qui reprend l’identification, le type, et d’autres colonne.

    En complément j’ai créé un app qui fonctionne me permettant assez classiquement de consulter, d’éditer, créer et supprimer des enregistrements.

    Pour le point suivant j’ai besoin de votre avis.

    Dans la pratique mes items sont stockées . Parfois on reprendre un ou plusieurs de ces Items et on leur faire suivre un processus en différentes étapes. Ce que je cherche c’est la meilleure manière de gérer ce processus dans power apps.(processus en 4 étapes)

    Ma première question est la suivante : pour gérer mes 4 étapes de mon procéssus je pourrais ajouter dans ma liste Items des colonnes pour chaqu’une des étapes. Par exemple la Step1 : step1date, spet1Nom, step1resulat.

    Une autre option serait de créer une liste a part pour chaqu’une des étapes?

    Qu’elle option vous semble la plus pertinente (ou quelle autres manière de faire serait plus pertiente)?

    bonne apres midi.

  • Elias

    Membre
    22 avril 2024 à 12h56 en réponse à: Fonction IF avec plusieurs condtions (Or)

    merci pour l’information.

    et en ce qui concerne la fonction In qu’est ce que je dois adapter?

  • Elias

    Membre
    22 avril 2024 à 9h58 en réponse à: Fonction IF avec plusieurs condtions (Or)

    Merci Alexandre pour ton aide.

    Dans sharepoint j’ai 2 liste

    1/ Types qui reprend entre autre comme colonne typeInit (en fait cette colonne reprend les initiales du type, la version courte, usuelle : par exemple “MLSA”, “OMONL”, “CETS”

    2/ une seconde liste sharepoint Items qui reprdend des colonnes dont itemNum (numéro d’indentification) et une colonne typeNomInit qui une colonne de type recherche qui renvoie vers la colonne typeInit de la liste Types.

    Dans power apps dans mon écran d’édition j’ai une datacard qui reprend “typeNomInit_Datacard2” qui reprend une datacardkey16 et ma datacardvalue16.

    La propriété Items de cette datacardvalue16 est : Item = Choices([@Items].typeNomInit)

    Petite question supplémentaire parfois dans des choix ou des filtre je vois cette écriture [@Items] et parfois uniquement le nom de la liste Items sans les crochets. quelle est la différence?

  • Elias

    Membre
    13 mai 2024 à 15h00 en réponse à: Mixer une galerie, formulaire et position

    Un grand merci pour cette réponse!

    Je percois qu’il y a un truc que je ne comprends pas et j’aimerai vraiment arriver à mon objectif.

    Je vais reprendre ici ma situation. Dans Sharepoint j’ai 2 listes

    Boites80 avec les colonnes

    • titreBoiteNum (par exemple 2024-10), cette colonne est la colonne titre de cette liste
    • lieuStockage

    BoiteEmplacements avec 3 colonnes :

    • titre, (en fait pour linstnat cette colonne est vide dans shaerpoint car elle est apparue automatiquement à la création de ma liste)
    • ID-mere qui est une colonne recherche dans ma liste sharepoint qui reprend l’info l’indetification de la boite qui se trouve dans titreBoiteNum de la liste Boits80
    • Emplacement

    Tu indiques que “

    Pour patcher une colonne lookup, tu dois fournir un enregistrement qui contient deux valeurs : Id et Value

    • Id correspond à la colonne ID de la liste parente (destination du lookup).
      • Question 1a : dans mon cas la liste parante est Boite80. C’est bien cela?
      • Question 1b : dans ma liste Boite80 je n’ai pas de colonne qui s’appelle Id. j’ai uniquement la colonne titreBoiteNum et lieuStockage. De quel colonne s’agit il alors?
    • Value correspond à la colonne Title ou Titre de la liste parente. Question 2 C’est donc titreBoiteNum. C’est bien cela?

    Question 3 dans ta proposition :

    Patch( Source ; Record ; { BooiteEmplacement :{ Id: ID-mere ; Value : Lookup( 'Liste destination du lookup' ; ID=ID-mere ; Title ) } } )

    Source c’est la liste que je dois Patcher : donc dans mon cas c’est la liste BoiteEmplacement. ?

    Donc cela donne :

    Patch( BoiteEmplacement ; Record ; { BoiteEmplacement :{ Id: ID-mere ; Value : Lookup( 'Boite80' ; ID=ID-mere ; titreBoiteNum ) } } )

    C’est bien cela?

Page 1 sur 3