Problème d’import sur les vues MICROSOFT SQL SERVER, colonnes explicites

  • Problème d’import sur les vues MICROSOFT SQL SERVER, colonnes explicites

    Posté par Sylvain sur 31 mai 2024 à 18h53

    Bonjour !

    Je suis en train de développer une nouvelle application Power Apps avec du Microsoft SQL SERVER en base de données et je n’arrive pas à remplir une table tampon à partir d’une vue via la fonction :
    ClearCollect(collTamponVueTableSql;Filter(vueTableSql;colA:”x”))

    En gros il m’importe les lignes de la table sur les colonnes que j’ai mis en filtrage (colA) mais toutes les autres colonnes sont vides.

    Le seul moyen que j’ai trouvé pour parer au problème consiste à décocher cette option dans les paramètres :

    -> je m’aperçois que cette fonction est en train d’être mise hors service alors ça m’inquiète !

    Est ce que vous sauriez m’indiquer s’il y a d’autres moyens d’effectuer des imports de données qui fonctionne pour des vues MSQLS ? Car si demain cette option n’existe plus cela va devenir pénalisant !

    Merci d’avance pour vos lumières !

    Sylvain CHARLETY

    Quentin a répondu Il y a 5 mois, 3 semaines 3 Membres · 6 Réponses
  • 6 Réponses
  • Quentin

    Membre
    31 mai 2024 à 19h43

    Hello Sylvain,

    J’avais vu passé un post il y a longtemps là dessus. De mémoire vu que tu dois explicitement nommer les colonnes (avant va n’était pas le cas), tu peux passer par la fonction ShowColumns pour résoudre ce problème

    Exemple dans ton cas, quelque chose comme ça :

    ClearCollect(collTamponVueTableSql;Filter(ShowColumns(VueTableSql;Col1;Col2;Col3… );Col1=x))

    En espérant que ça fonctionne😕

  • Sylvain

    Membre
    1 juin 2024 à 17h15

    Salut Quentin,

    Merci beaucoup pour ta réponse c’est très sympathique de ta part et en plus cela fonctionne c’est à dire qu’en employant ShowColumns() sur la table à filtrer et à importer dans le ClearCollect j’arrive bien à importer mes colonnes :-).

    C’est déjà bien que ça fonctionne néanmoins ce n’est pas pratique du tout car lorsque j’ai besoin d’importer toute une table il faut que je me colle toutes les colonnes à la main dans la ShowColumns.

    Comme je trouvais ça bizarre j’ai fait une nouvelle série de tests et voici mes conclusions :

    Scénario 1 :
    – je suis en fonctionnement paramètres par défaut (j’ai pas touché aux paramètres de colonnes explicites cités dans mon premier post)
    – j’ai une galerie au premier niveau d’un écran, dans la galerie j’appelle (via un control text) une colonne ou plusieurs colonnes sur une collection tampon issues d’une vue Sql
    -> dans ce scénario tout fonctionne bien, pas besoin de showcolumns(), le système détecte bien l’appel des champs et les colonnes sont importés. Je ne rencontre pas le problème cité dans mon post

    Scénario 2 :
    – je suis en fonctionnement paramètres par défaut (j’ai pas touché aux paramètres de colonnes explicites cités dans mon premier post)
    – j’ai une galerie vachement imbriqué dans l’arborescence (voir image ci dessous), dans la galerie j’appelle (via un control text) une colonne ou plusieurs colonnes sur une collection tampon issues d’une vue Sql
    -> dans ce scénario je n’ai rien qui remonte par défaut, il me faut utiliser la fonction Showcolumns lors de la génération de la table tampon :

    Bon, ça me semble bien fucké et destabilisant comme problème, soit c’est une forme de bug soit j’ai raté autre chose à un autre endroit ^^, en tout cas j’ai une parade via ShowColumns.

    Affaire à suivre.

  • Quentin

    Membre
    1 juin 2024 à 18h46

    C’est déjà ça mais c’est clair que ça peut avoir un sacré impact… Affaire à suivre côté MS comme tu dis 😉

  • DavidZed

    Membre
    2 juin 2024 à 10h46

    Par curiosité, est-ce que dans la galerie du cas 1, il y a la même configuration que dans le cas 2 : le labeltext dans un container :

    Est-ce que cela change quelque-chose de mettre le labeltext à la racine de la galerie dans le cas 2 (et en double vérif : ajouter cette imbrication dans le cas 1 si elle n’y était pas)

    Il y a des chances pour que seule cette imbrication soit impliquée

  • Sylvain

    Membre
    2 juin 2024 à 16h55

    Salut David,

    Merci beaucoup de ta participation au sujet :-).

    Je viens de passer à peu près 2h à essayer de déterminer ce qui dans l’application implique une non détection des champs à faire remonter lors du ClearCollect() mais sans succès 😅.

    Suite à mes tests :

    • l’implémentation du conteneur horizontal ou vertical ne joue pas
    • l’implémentation des conteneurs à l’intérieur des conteneurs jusqu’à 6 niveaux d’imbrication ne joue pas
    • le fait que l’appel des champs dépendent d’une condition IF ne joue pas
    • si je mets dans mon application un objet type “table” avec X appel de champs fait systèmatiquement remonter les champs appelés lors du ClearCollect()

    Je sèche, that’s it low code no code 🤓

    Merci pour votre contribution en tout cas !

  • Quentin

    Membre
    2 juin 2024 à 17h08

    À la rigueur ça peut valoir le coup de ton côté Sylvain de faire un ticket au support pour avoir des infos qu’on n’aurait pas 😁

    • Cette réponse a été modifiée Il y a 5 mois, 3 semaines par  Quentin.

Connectez-vous pour répondre.