Das Notes Forum

Domino 9 und frühere Versionen => ND6: Entwicklung => Thema gestartet von: Phate am 16.09.04 - 17:22:41

Titel: Einträge einer Liste zählen
Beitrag von: Phate am 16.09.04 - 17:22:41
Hallo,
kennt jemand eine Lösung wie ich die Werte einer Liste zähle?
Die Liste sieht etwa so aus.
Liste: BWL; Informatik; Mathe; Informatik; BWL; Mathe; Mathe
nun möchte ich zählen wie oft Mathe oder BWL oder Informatik in der Liste vor kommt.

Titel: Re:Einträge einer Liste zählen
Beitrag von: eknori (retired) am 16.09.04 - 18:38:40
in Notes6 haben wir ja jetzt die schöne Formel @For.

count := 0;
List1:=DeinMultiValueFeld;
List2 := "Mathe";

@For(n := 1;
n <= @Elements(List1);
n := n + 1;

@If(List1[n] = List2 ; Count := Count + 1 ; "") );

@Prompt([Ok] ; List2; @Text(Count))

Jetzt musst du im Prinzip nur noch ermitteln, welche Elemente in der Liste vorhanden sind ( in einem übergeordneten @For z.B. )
Titel: Re:Einträge einer Liste zählen
Beitrag von: datenbanken24 am 16.09.04 - 18:47:29
oder:

_list := DEINELISTE;
_search := SUCHELEMENT;

@Elements(@Transform(
   _list;
   "x";
   @If( x = _search ; x; @Nothing)
))

Titel: Re:Einträge einer Liste zählen
Beitrag von: koehlerbv am 16.09.04 - 19:20:16
oder R5-kompatibel:

_list := DEINELISTE;
_search := SUCHELEMENT;
_temp := @Replace (DEINELISTE; SUCHELEMENT; "");
_elements := @Elements (_list) - @Elements (_temp);

Ist die Anzahl der Suchelemente nicht bekannt, dann - wie von Ulrich beschrieben - eine @For-Schleife darüber legen und die jeweiligen Ergebnisse in eine Ergebnisliste ablegen.

Es führen viele Wege nach Rom ...

Bernhard
Titel: Re:Einträge einer Liste zählen
Beitrag von: Phate am 16.09.04 - 19:41:22
Vielen Dank für die schnellen Antworten
Titel: Re:Einträge einer Liste zählen
Beitrag von: datenbanken24 am 16.09.04 - 20:35:05
Nur der Vollständigkeit halber:

In der Formel von @koehlerbv fehlt, glaube ich, ein @Trim

statt:
_temp := @Replace (DEINELISTE; SUCHELEMENT; "");

war sicher gemeint:
_temp := @Trim(@Replace (DEINELISTE; SUCHELEMENT; ""));


Gruß,
Uwe
Titel: Re:Einträge einer Liste zählen
Beitrag von: koehlerbv am 16.09.04 - 20:40:01
Uwe, vielen Dank ! Noch beim Posten sagte ich zu mir "Vergiss das @Trim nicht mit hinzuschreiben !", aber ...
Das @Trim ist ja der eigentliche Casus Knaktus - und dann hab' ich's doch vergessen.

Nochmals DANKE für Deine Aufmerksamkeit, Uwe - und sorry @All für meine Schusslichkeit !

Bernhard