Méls de confirmation selon la réponse

More
1 month 2 weeks ago #221088 by Viniasco
Je crois que l'expression date("ymd"...) n'est pas reconnue par LS.
J'ai donc essayé les 2 expressions en ne gardant que {TOKEN:SENT} à la place. La condition if ne fonctionnait toujours pas, du moins la réponse retournée était KO alors qu'elle aurait dû être OK.
Comme {TOKEN:SENT} affiche la date avec l'heure et les min., j'ai mis {TOKEN:SENT>="20211014","OK","KO"} ce qui devait être vrai même si ma valeur de référence n'indique pas les h:m.
Et avec ça, j'ai bien OK, même si je n'ai pas les - comme séparateur dans la date de référence.

Test ultime avec {if(TOKEN:SENT == "2021-10-15 15:33", "OK", "KO")} alors que la date d'envoi est 2021-10-15 15:34, la réponse est KO, donc bonne.

La comparaison des dates n'est donc pas gênée par les séparateurs, mais exige les h:m, à mois qu'on ne puisse imposer un format ymd, mais sans date("ymd",...).

Du coup, je devrais m'en sortir pour mon questionnaire avec non pas == mais >.

Please Log in to join the conversation.

More
1 month 2 weeks ago #221090 by DenisChenu
OK, autre idée pour la date en simplifié/texte comparable facilement

str_replace("-","",substr(TOKEN:SENT,0,10)) ?

Ou pitete j'ai fait une grosse erreur {date("Ymd",strtotime(TOKEN:SENT))} ?

Assistance on LimeSurvey forum and LimeSurvey core development are on my free time.
I'm not a LimeSurvey GmbH member, professional service on demand , plugin development . I don't answer to private message.

Please Log in to join the conversation.

More
1 month 2 weeks ago #221113 by Viniasco

Ou pitete j'ai fait une grosse erreur {date("Ymd",strtotime(TOKEN:SENT))}

C'est bon ! Avec cette expression la comparaison de date se fait sans les h:min.

Je pensais donc enfin parvenir à mes fins, mais ça coince encore quelque part.
Cette expression fonctionne : 
{if((date("Ymd",strtotime(TOKEN:SENT))=="20211015")AND(Q2.NAOK=="Y"),"Rép1",if((date("Ymd",strtotime(TOKEN:SENT))=="20211015")AND(Q2.NAOK=="N"),"Rép2","Rép.4"))}

Mais plus celle-ci, qui est la première avec une condition en plus :
{if((date("Ymd",strtotime(TOKEN:SENT))=="20211015")AND(Q2.NAOK=="Y"),"Rép1",if((date("Ymd",strtotime(TOKEN:SENT))=="20211015")AND(Q2.NAOK=="N"),"Rép2",if((date("Ymd",strtotime(TOKEN:SENT))!=20211015")AND(Q2.NAOK=="Y"),"Rép3","Rép.4")))}

Est-ce parce qu'il y a trop de conditions ?
 

Please Log in to join the conversation.

More
1 month 2 weeks ago #221129 by DenisChenu
J'aime pas les condition imbriqué …
join(
if(date("Ymd",strtotime(TOKEN:SENT)=="20211015") AND (Q2.NAOK=="Y"),"Rép1"),
if(date("Ymd",strtotime(TOKEN:SENT)=="20211015") AND (Q2.NAOK=="N"),"Rép2"),
if(date("Ymd",strtotime(TOKEN:SENT)!="20211015") AND (Q2.NAOK=="Y"),"Rép3"),
if(date("Ymd",strtotime(TOKEN:SENT)!="20211015") AND (Q2.NAOK!="Y"),"Rép4"),
"")}

ca donne quoi ?

Assistance on LimeSurvey forum and LimeSurvey core development are on my free time.
I'm not a LimeSurvey GmbH member, professional service on demand , plugin development . I don't answer to private message.

Please Log in to join the conversation.

More
1 month 1 week ago #221289 by Viniasco
Aucune réponse en conservant les sauts de ligne, mais Rép1Rép3 avec 
{join(if(date("Ymd",strtotime(TOKEN:SENT)=="20211015") AND (Q2.NAOK=="Y"),"Rép1"),if(date("Ymd",strtotime(TOKEN:SENT)=="20211015") AND (Q2.NAOK=="N"),"Rép2"),if(date("Ymd",strtotime(TOKEN:SENT)!="20211015") AND (Q2.NAOK=="Y"),"Rép3"),if(date("Ymd",strtotime(TOKEN:SENT)!="20211015") AND (Q2.NAOK!="Y"),"Rép4"),"")}

Please Log in to join the conversation.

More
1 month 1 week ago #221324 by DenisChenu
Pour les saut de lignes : utilise le champs dédié … ou désactive l'éditeur HTML

Assistance on LimeSurvey forum and LimeSurvey core development are on my free time.
I'm not a LimeSurvey GmbH member, professional service on demand , plugin development . I don't answer to private message.

Please Log in to join the conversation.

More
1 month 5 days ago - 1 month 5 days ago #221574 by Viniasco
De retour 

Je saisis toutes ces formules sans activer le html. C'est déjà bien assez compliqué comme ça.

Mais à priori la syntaxe de mes conditions imbriquées est bonne, puisqu'elle fonctionne avec 3. À 4 ça bloque, sais-tu s'il y a un nombre d'imbrications maximum ?

Bon appétit
Last edit: 1 month 5 days ago by Viniasco.

Please Log in to join the conversation.

More
1 month 5 days ago #221586 by Viniasco
Je ne trouve pas d'autre explication qu'une limite du nombre de conditions mis à 3, même si l'exemple donné dans cette page  laisse penser qu'il pourrait y en avoir bien plus.

Please Log in to join the conversation.

More
1 month 5 days ago - 1 month 5 days ago #221587 by Viniasco

Ça y est et voici la bonne syntaxe ! Inspirée de ta proposition et de la mienne :
{if(date("Ymd",strtotime(TOKEN:SENT))=="20211015" AND Q2.NAOK=="Y","RépD",if(date("Ymd",strtotime(TOKEN:SENT))=="20211015" AND Q2.NAOK!="Y","Rép2",if(date("Ymd",strtotime(TOKEN:SENT))!="20211015" AND Q2.NAOK=="Y","Rép3",if(date("Ymd",strtotime(TOKEN:SENT))!="20211015" AND Q2.NAOK!="Y","Rép4"))))}

Il a donc fallu que j'ajoute une 4ème condition pour le dernier cas, alors que je pensais qu'il suffisait de mettre la réponse à donner si les 3 1ères n'allaient pas. Comme dans Excel quoi.
Last edit: 1 month 5 days ago by Viniasco.
The following user(s) said Thank You: DenisChenu

Please Log in to join the conversation.

More
1 month 5 days ago #221588 by DenisChenu
Bizarre, normalement pas de limite spéciale sur les condition imbriquée …

Assistance on LimeSurvey forum and LimeSurvey core development are on my free time.
I'm not a LimeSurvey GmbH member, professional service on demand , plugin development . I don't answer to private message.

Please Log in to join the conversation.

More
1 month 4 days ago #221617 by Viniasco
Mais il n'y en a pas. Au contraire, c'est parce que je n'en mettais pas assez que ça coinçait.

Please Log in to join the conversation.

Moderators: Nickko

Start now!

Just create your account and start using Limesurvey today.

Register now