Ihre LimeSurvey-Version: [3.90]
Eigener Server oder LimeSurvey-Cloud: Eigener
Genutzte Designvorlage: bootswatch
==================
Hallo zusammen,
ich möchte einen Teilnehmer fragen, ob er
1. mit den Angeboten von uns zufrieden ist und
2. ob er noch Interesse an anderen Angeboten hat, die er noch nicht nutzt.
Dazu habe ich zu 1. und 2. jeweils eine Matrix erstellt.
Die Angebote die genutzt werden möchte ich mit
{angebotvorbelegung_SQ001_x006="Angebot1"}
{angebotvorbelegung_SQ002_x006="Angebot2"}
{angebotvorbelegung_SQ003_x006="Angebot3"}
vorbelegen, was so über eine Gleichung auch gut klappt.
Nun wollte ich die vom Teilnehmer bereits genutzten Angebote in Teilnehmerattribute erfassen um nur diese auch anzeigen und stellte fest, das hier maximal 66 möglich sind (DB-Seitig).
Also dachte ich, ich erstelle nur ein paar Attributfelder und schreibe da rein "a1,a2,a3," bis a100 und frage es so ab, da wir über 100 im Angebot haben.
Das geht auch noch, wenn ich aber in einer dazu neuen Gleichung mit der ich aus den Attributen selektieren will
{angebotvorbelegung_SQ001_x006 = (if(is_empty(aangebotvorbelegung_SQ001_x006) AND TOKEN:ATTRIBUTE_2 =='a1', 'Angebotsnahme1'))}
{angebotvorbelegung_SQ002_x006 = (if(is_empty(aangebotvorbelegung_SQ002_x006) AND TOKEN:ATTRIBUTE_2 =='a2', 'Angebotsnahme2'))} usw usw.
es versuche, bewirkt wohl das ==, das der Wert exakt stimmen muss.
Z.B. wird (wenn ich a1 einzeln in das Attribut schreibe) der Wert "Angebotsnahme1" in der Matrix ausgegeben, aber sobald ich es mit Komma trenne, oder hintereinander mit Leerzeichen schreibe,
kein Wert mehr ausgegeben, das hatte ich mit
{angebotvorbelegung_SQ001_x006 = (if(is_empty(aangebotvorbelegung_SQ001_x006) AND TOKEN:ATTRIBUTE_2 =='a1', 'Angebotsnahme1', 'Nicht gefunden'))} rausgefunden, da wurde dann "Nicht gefunden" in der Zeile der Matrix ausgegeben.
Nun die Frage:
Wie kann ich einen Teilwert aus dem Teilnehmerattribut abfragen?
Oder kann ich einen anderen Weg gehen, z.B. die Angebote pro Teilnehmer in eine Art array schreiben und abfragen?
Ich habe es schon mit
{angebotvorbelegung_SQ001_x006 = (if(is_empty(aangebotvorbelegung_SQ001_x006) AND TOKEN:ATTRIBUTE_2 like 'a1', 'Angebotsnahme1'))}
{angebotvorbelegung_SQ001_x006 = (if(is_empty(aangebotvorbelegung_SQ001_x006) AND TOKEN:ATTRIBUTE_2 =='%a1%', 'Angebotsnahme1'))}
{angebotvorbelegung_SQ001_x006 = (if(is_empty(aangebotvorbelegung_SQ001_x006) AND TOKEN:ATTRIBUTE_2 =='*a1*', 'Angebotsnahme1'))}
versucht, habe aber keinen Erfolg
Könnt Ihr mir helfen?
Vielen Dank!