Formule Substringof invalide

  • Formule Substringof invalide

    Posté par Mickael sur 29 octobre 2024 à 9h25

    Bonjour,

    J’ai une liste sharepoint avec pas moins de 10 000 lignes de texte.

    Je dois effectuer une recherche dans cette liste sharepoint dans mon application power app Cependant avec une simple formule larecherche ne fonctionnera pas à cause de la limitation de délégation: 2000 lignes max.

    J’ai trouvé cette video qui semble correspondre à ce que je recherche:

    Search SharePoint In Power Apps With No Delegation Warning

    Mais je rencontre une erreur dans ma requêtre de filtre dans “obtenir les éléments” pour ce code:

    <pre class=”language-markup”>Substringof('@{triggerBody()['text']}',Titre)

    Voici l’erreur que j’ai sur ce code lorsque j’éxécute mon flux:

    L’action « Obtenir_les_éléments » a échoué: L’opérateur de fonction « Substringof » n’est pas pris en charge ou son utilisation est incorrecte

    Savez vous ce qui ne va pas dans mon code?

    R3dKap a répondu Il y a 1 mois, 3 semaines 3 Membres · 8 Réponses
  • 8 Réponses
  • Mickael

    Membre
    29 octobre 2024 à 10h08

    Voici une copie écran de ma fonction qui est en erreur:

  • R3dKap

    Membre
    29 octobre 2024 à 11h18

    Salut @Mickael,

    Essaie “Title” à la place de “Titre”. Je pense qu’il faut plutôt le nom technique de la colonne en 2è paramètre de la fonction substring()… 😉

  • Mickael

    Membre
    30 octobre 2024 à 10h34

    Bonjour,

    Malheureusement en raplaçant Titre par Title:

    <pre class=”language-markup”>Substringof('@{triggerBody()['text']}',Title)

    Ma fonction semble erronée.

    Cette fonction: Substringof existe bien dans la liste des fonctions de mon flux pour “obtenir les éléments sharepoint”

    Cependant si j’essaye de la valider àa ne passe pas, je je suppose que ma fonction est incorectement écrite.

    que puis-je corriger dans ma fonction?

  • R3dKap

    Membre
    1 novembre 2024 à 12h51
  • Mickael

    Membre
    15 novembre 2024 à 16h18

    Bonjour,

    Merci pour la suggestion.

    Cependant j’ai toujours un message d’erreur sur mon flux

    <pre class=”language-markup”>substring('hello world', 6, 5)

    Dans “obtenir les éléments:

    J’ai ce message d’erreur:

    <pre class=”language-markup”>L'action « Obtenir_les_éléments » a échoué: Unable to process template language expressions in action 'Obtenir_les_éléments' inputs at line '0' and column '0': 'The template language function 'substring' expects two parameters: the 'string' to take a section from as the first parameter, the 'start index' as the second parameter. The function was invoked with '1' parameter(s). Please see https://aka.ms/logicexpressions#substring for usage details.'.

  • Geoffroy

    Membre
    16 novembre 2024 à 17h11

    Bonjour Mickael,

    Quelle est la formule dans ton Substring ?

    Il semble qu’il manque le second argument, le nombre de caractères à extraire.

  • Mickael

    Membre
    19 novembre 2024 à 14h30

    Bonjour,

    La formule substring était erronée, mais même après l’avoir corrigée en:

    <pre class=”language-markup”>substring(TEST,0,4)

    j’avais toujours un message d’erreur lors de l’execution de mon flux sur “Obtenir les éléments”

    Finalement j’ai réussi en mettant cette formule:

    <pre class=”language-markup”>Title eq '@{triggerBody()['text']}'

    Cette fois ci mon flux me filtre bien le texte recherché dans ma liste sharepoint

    Je rencontre néanmoins un dernier souci:

    Dans mon flux j’ai incrémenté une variable qui me compte le nombre de fois ou le texte est trouvé dans ma liste sharepoint.

    Voici la copie écran de mon flux:

    Dans la réponse à mon flux Je souhaite récupérer le nombre d’éléments trouvés dans ma variable incrémentale.

    Dans mon power apps j’a mis cette formule:

    <pre class=”language-markup”>Set(compteurcp;SearchArchivage.Run("TEST"))

    Mais j’ai un message d’erreur: “Valeur Texte attendue”

    Qu’est ce que je dois corriger?

  • R3dKap

    Membre
    26 novembre 2024 à 21h18

    @Mickael,

    Ton premier substring('hello world', 6, 5) est bien écrit. Je pense que l’erreur venait du fait que ton paramètre Requête de filtre devait être au format : <nom du champ> <opérateur> 'substring(...)'.

    Ton 2è substring(TEST, 0, 4) est faux : il faut des apostrophes autour de TEST pour que ce soit interprété comme une chaîne, donc : substring('TEST', 0, 4).

    Pour ton problème sur le retour du nombre d’occurrence, qu’as-tu mis dans Respond to a Power App or Flow ?

Connectez-vous pour répondre.