erreur formule input box

Étiquetté : , , ,

  • erreur formule input box

    Posté par Fred Evellin sur 14 septembre 2023 à 14h27

    Bonjour,

    Pourquoi ai je une erreur pour le code suivant qui se trouve dans une input box menu Default :

    If(

    LookUp(Sort(BaseTBF;’Créé le’;SortOrder.Descending); NTBF = ComboBox_NTBF.Selected.Nom && Etat_TBF = “cip”);

    Set(var_parf_impo; true);

    Set(var_parf_impo;false)

    )

    erreur sur les set?

    merci de votre aide

    PostID=JBDPUn2SRf8zDHi

    Fred Evellin a répondu Il y a 7 mois, 4 semaines 1 Membre · 12 Réponses
  • 12 Réponses
  • DavidZed

    Membre
    14 septembre 2023 à 15h34

    Bonjour Fred Evellin ,

    A première vue je dirais que le soucis est au niveau du test logique de ton If() ,

    Tu renseignes un enregistrement : LookUp(Sort(BaseTBF;'Créé le';SortOrder.Descending); NTBF = ComboBox_NTBF.Selected.Nom && Etat_TBF = "cip")

    et il attends un booléen true ou false

    Tu peux à la place utiliser :

    Set(var_parf_impo;nIf(IsBlank(LookUp(Sort(BaseTBF;'Créé le';SortOrder.Descending); NTBF = ComboBox_NTBF.Selected.Nom && Etat_TBF = "cip"));nfalse;ntrue)

    CommentID=NPKcDRzJh8ixp0X, PostID=JBDPUn2SRf8zDHi

  • Geoffroy

    Membre
    14 septembre 2023 à 16h18

    On peut même simplifier en

    Set(var_parf_impo;!IsBlank(LookUp(Sort(BaseTBF;'Créé le';SortOrder.Descending); NTBF = ComboBox_NTBF.Selected.Nom && Etat_TBF = "cip"))

    Sinon, je me demandais à quoi servait le Sort ?

    CommentID=mSCcHg4ugyIrC8F, PostID=JBDPUn2SRf8zDHi

    • Fred Evellin

      Membre
      15 septembre 2023 à 11h26

      Bonjour,

      le sort sert à mettre les valeur dans le bon sens de création pour être sûr de récuperé la valeur la plus récente correspondant à ComboBox_NTBF. Peut-être n’est pas utile

      SubCommentID=fMYdixoIgcw9OeT, CommentID=mSCcHg4ugyIrC8F, PostID=JBDPUn2SRf8zDHi

  • DavidZed

    Membre
    15 septembre 2023 à 8h17

    je pense que c’est pour avoir le dernier item créé pour un autre usage, mais en l’occurrence ici, ça ne servira pas à grand chose

    CommentID=NudASbtuUdAHQkw, PostID=JBDPUn2SRf8zDHi

  • Fred Evellin

    Membre
    15 septembre 2023 à 11h29

    En fait l’idée est de recherche dans ma base BaseTBF la ligne la plus récente contenant la valeur du combobox et de vérifier si sur cette ligne la Etat_TBF est égale à “cip”. Si oui Set(var_parf_impo; true); sinon Set(var_parf_impo; false);

    CommentID=0lUVu3NBbwcuQYm, PostID=JBDPUn2SRf8zDHi

  • Fred Evellin

    Membre
    15 septembre 2023 à 12h25

    Grand merci pour vos aides. cela m’a aidé à corriger mon code. Le voici ;

    If(!IsBlank(LookUp(Sort(BaseTBF;’Créé le’;SortOrder.Descending); NTBF = ComboBox_NTBF.Selected.Nom && Etat_TBF = “cip”))=true;Set(var_parf_impo;false);Set(var_parf_impo;true))

    CommentID=ALA43ztsZZ8MXwc, PostID=JBDPUn2SRf8zDHi

  • Fred Evellin

    Membre
    21 septembre 2023 à 14h31

    Bonsoir,

    je reviens vers vous car que ce soit ma formule ou les vôtres. Cela ne marche qu’à moitié…. En effet selon la valeur de mon combobox la variable var_parf_impo est correcte mais pas sur toutes les valeurs. D’où peu provenir ce BUG?

    Merci de votre aide.

    Cordialement,

    CommentID=7KVRyinVYCo6wSt, PostID=JBDPUn2SRf8zDHi

  • Geoffroy

    Membre
    21 septembre 2023 à 15h00

    Bonjour Fred Evellin

    Qu’est-ce qu’il y a dans ton combobox ?

    CommentID=o8s5bWPn0d2BVGn, PostID=JBDPUn2SRf8zDHi

    • Fred Evellin

      Membre
      22 septembre 2023 à 7h37

      Bonjour,

      Il y a une liste de NTBF issu d’une base spécifique dataverse différente de BaseTBF. Mais je pense que le problème vient de : LookUp(Sort(BaseTBF;’Créé le’;SortOrder.Descending); NTBF = ComboBox_NTBF.Selected.Nom && Etat_TBF = “cip”))=true.

      En fait, quand je selection le TBF02 dans ma combobox, je veux récuperer la dernière ligne de ma BaseTBF qui contient TBF02 et alors vérifier si sur cette ligne la colonne Etat_TBF est “cip” ou non. Et selon le résultat alors var_parf_impo passe en true ou false.

      Je vais essayer en ajoutant un bouton qui prendra la valeur de la colonne Etat_TBF. J’aurais voulu le faire en passant que par des variables

      SubCommentID=eSso8ddVRwUcguM, CommentID=o8s5bWPn0d2BVGn, PostID=JBDPUn2SRf8zDHi

    • Fred Evellin

      Membre
      22 septembre 2023 à 7h51

      Super je viens de trouver::

      If(LookUp(Sort(BaseTBF;’Créé le’;SortOrder.Descending);NTBF=ComboBox_NTBF.Selected.Nom;Etat_TBF)=”cip”;Set(var_parf_impo; false );Set(var_parf_impo; true ))

      Comme quoi la nuit porte conseil 😀

      SubCommentID=NAIVDLA7G2Gkgm3, CommentID=o8s5bWPn0d2BVGn, PostID=JBDPUn2SRf8zDHi

  • Geoffroy

    Membre
    22 septembre 2023 à 11h12

    Vu que l’expression LookUp(Sort(BaseTBF;’Créé le’;SortOrder.Descending);NTBF=ComboBox_NTBF.Selected.Nom;Etat_TBF)=”cip” renvoie vrai ou faux, tu peux l’affecter directement à ta variable var_parf_impo

    Set(var_parf_impo; !LookUp(Sort(BaseTBF;'Créé le'; SortOrder.Descending); NTBF=ComboBox_NTBF.Selected.Nom;Etat_TBF)="cip")

    CommentID=GZgZztAjYMz8JQD, PostID=JBDPUn2SRf8zDHi

    • Fred Evellin

      Membre
      25 septembre 2023 à 7h41

      Merci de ta réponse. Je vais l’appliquer. Bonne journée

      SubCommentID=Dq1MMDMuCXuYo5x, CommentID=GZgZztAjYMz8JQD, PostID=JBDPUn2SRf8zDHi

Connectez-vous pour répondre.