Autor Thema: Frage zu "permutation"  (Gelesen 5357 mal)

Offline tabama

  • Aktives Mitglied
  • ***
  • Beiträge: 233
  • Geschlecht: Männlich
  • hier werden Sie geholfen
Frage zu "permutation"
« am: 05.02.14 - 13:46:43 »
Ich habe folgende Aufgabenstellung:
In einem Doc gibt es ein Zahlenfeld "von" und ein Zahlefeld "bis".
Ich möchte nun dass in einer Ansicht für Jede Zahl in diesem Bereich eine einzelne Zeile (ist zwar immer das gleiche doc) angezeigt wird.
Grundsätzlich bekomme ich dies ja mit "..getrennt anzeigen", "@Explode" usw. hin.
In anderen Forenbeiträgen bin ich bei ähnlichen Problemen immer wieder auf den Begriff "permutation" gestossen. Allerdings blicke ich da nicht durch.
Kann mir vielleicht jemand mal schnell den Code für die Spaltenformel posten? Vielleicht verstehe ich es ja dann auch, wenn es sich konkret um meinen Fall handelt.
Vielen Dank

Glombi

  • Gast
Re: Frage zu "permutation"
« Antwort #1 am: 05.02.14 - 14:00:34 »
Du erstellst aus Performancegründen am besten ein Feld (Mehrfachwerte) in der Maske anstatt in der Ansicht in der Spalte  die Berechnung zu machen.
Das Feld dann mit einer einfachen @For(...) Funktion besetzen.

Andreas

Offline tabama

  • Aktives Mitglied
  • ***
  • Beiträge: 233
  • Geschlecht: Männlich
  • hier werden Sie geholfen
Re: Frage zu "permutation"
« Antwort #2 am: 05.02.14 - 14:29:37 »
Hallo Andreas,

das hatte ich auch schon probiert. Wenn die Range aber zu groß ist meckert Notes rum, dass es nur xx (ich glaube 64) kb sein dürfen.

Offline Tode

  • Moderatoren
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 6.883
  • Geschlecht: Männlich
  • Geht nicht, gibt's (fast) nicht... *g*
Re: Frage zu "permutation"
« Antwort #3 am: 05.02.14 - 14:41:53 »
Also: Wenn die Range zu gross ist, um in ein Feld zu passen, dann geht das aller Wahrscheinlichkeit nach auch in der Spaltenformel schief...

Zur "eigentlichen" Frage: Permutation... Bei der Permutation werden zwei Listen nicht linear (erstes Element mit erstem Element, zweites Element mit zweitem Element, etc. ) verarbeitet, sondern JEDES Element mit JEDEM.

Beispiel Text- Verkettung:

Code
_a := "a" : "b";
_b := "1" : "2";

a + b ergibt: "a1" : "b2";
Permutiert (Stern ist Permutationsoperator):
a *+ b ergibt "a1" : "a2" : "b1" : "b2"

Die Permutation hilft Dir also bei Deinem Problem nicht.
Gruss
Torsten (Tode)

P.S.: Da mein Nickname immer mal wieder für Verwirrung sorgt: Tode hat NICHTS mit Tod zu tun. So klingt es einfach, wenn ein 2- Jähriger versucht "Torsten" zu sagen... das klingt dann so: "Tooode" (langes O, das r, s und n werden verschluckt, das t wird zum badischen d)

Offline tabama

  • Aktives Mitglied
  • ***
  • Beiträge: 233
  • Geschlecht: Männlich
  • hier werden Sie geholfen
Re: Frage zu "permutation"
« Antwort #4 am: 05.02.14 - 14:56:28 »
Danke Tode,

Da steh' ich nun, ich armer Tor, Und bin so klug als wie zuvor! (Goethe)  :-:

Irgendjemand da draußen eine andere Idee?


Glombi

  • Gast
Re: Frage zu "permutation"
« Antwort #5 am: 05.02.14 - 15:00:12 »
In welchem Intervall liegen denn von und bis? Wenn Du da über 64k kommst, muss das ja gewaltig sein. Das will dann niemand in einer Ansicht sehen.

Offline Tode

  • Moderatoren
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 6.883
  • Geschlecht: Männlich
  • Geht nicht, gibt's (fast) nicht... *g*
Re: Frage zu "permutation"
« Antwort #6 am: 05.02.14 - 15:01:03 »
Was genau ist denn die Aufgabe? Wofür brauchst Du das (oder glaubst es zu brauchen)?
EIN Dokument für >32k Werte scheint mir doch suboptimal...
Gruss
Torsten (Tode)

P.S.: Da mein Nickname immer mal wieder für Verwirrung sorgt: Tode hat NICHTS mit Tod zu tun. So klingt es einfach, wenn ein 2- Jähriger versucht "Torsten" zu sagen... das klingt dann so: "Tooode" (langes O, das r, s und n werden verschluckt, das t wird zum badischen d)

Offline tabama

  • Aktives Mitglied
  • ***
  • Beiträge: 233
  • Geschlecht: Männlich
  • hier werden Sie geholfen
Re: Frage zu "permutation"
« Antwort #7 am: 05.02.14 - 15:12:08 »
Hallo,

maximum von 1 bis 9999 in einer-Schritten, also knappe 10.000 Zahlen.

Ist ein wenig schwierig zu beschreiben, da es sich um eine fachspezifische Anwendung handelt. Deshalb hier mal ohne Fachbegriffe:

Es gibt ca. 200 Dokumente, in dem bestimmte Verfahrensweisen beschrieben sind.
In dem "von - bis" Feldern gibt es nun Nummern die besagen, dass dies Verfahren für diese Nummer nicht zur Anwendung kommt.
In der gewünschten Ansicht soll als Überblick dienen, bei welcher Nummer welches Verfahren nicht angewendet wird.

Wenn dies mit der Ansicht nicht funktioniert, dann werde ich irgendwie etwas mit einer Eingabemaske basteln und über ein search die gefundenen Dokumente in einen (temporären) Ordner schieben.

Glombi

  • Gast
Re: Frage zu "permutation"
« Antwort #8 am: 05.02.14 - 15:42:44 »
ich habs getestet.

1000er Schritte gehen, bspw.
@For(n :=1000; n<2000; n:= n + 1;
full := @If(n=1000;1;full : n));
full

D.h. Du könntest 10 von den Feldern machen.
Gibts denn da Lücken bei den Verfahren?

Offline Peter Klett

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 2.713
  • Geschlecht: Männlich
Re: Frage zu "permutation"
« Antwort #9 am: 05.02.14 - 16:01:07 »
Hm, wenn man das auf mehrere Felder verteilt, gibt es aber trotzdem ein Mengenproblem, außer, man setzt die Items auf Issummary = False. Dann können sie aber nicht mehr in Ansichten angezeigt werden, und der Sinn der Aktion wäre damit dahin ...

Offline thkn777

  • Aktives Mitglied
  • ***
  • Beiträge: 176
Re: Frage zu "permutation"
« Antwort #10 am: 05.02.14 - 16:21:34 »
@tabama
Ich weiß, das beantwortet Deine Frage jetzt nicht, aber kannst Du das Problem nicht einfach umgehen? Wenn Du nun einfach drei Spalten machst:

Verfahren | nicht erlaubt von | nicht erlaubt bis

Sie erste Spalte einfach sortiert. Die letzten beiden Spalten einfach sortiert und als zweite Sortierspalte die jeweils andere Spalte.

Dann kann der Nutzer:
- in der ersten Spalte das Verfahren suchen und sieht sofort in Spalte 2 und 3, wo es nicht gültig ist
- Ansicht nach Spalte1 sortieren --> welche Verfahren sind UNTER einer bestimmten Nummer erlaubt
- Ansicht nach Spalte2 sortieren --> welche Verfahren sind ÜBER einer bestimmten Nummer erlaubt

Gruß,
Th.

Offline pram

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.170
  • Geschlecht: Männlich
    • Foconis Object Framework
Re: Frage zu "permutation"
« Antwort #11 am: 06.02.14 - 00:11:37 »
Die Permutation verwende ich hin und wieder wenn ich Zahlen in einem Bereich erzeugen will.
z.B:
@text(0:3:6:9*+1:2:3) - Erzeugt die Zahlen 1-12 für Monatsauswahl
@text((0:1:2:3:4:5*5*+1:2:3:4:5):31) - das Gleiche für Tag 1..31 spart halt Tipparbeit und ist "cool" ;)


Deine Idee ist vermutlich, dass du in der Ansicht einfach beginnen willts, die Zahl einzutippen und dann direkt zum Eintrag zu springen. Dies sollte mit folgender Formel aber möglich sein:
Code
x:= start; 
@for(i:= start + 1 ; i <= ende;i := i + 1; x := x:i);
x
Das Problem ist aber die 32k (oder 64k) Grenze. Die Dokumente werden dann nicht mehr angezeigt, wenn die Formeln zu viel Werte liefern.

Wäre bei einem Wertebereich von 0...9999 aber kein Problem, da dies < 40k sind und du bestimmt nicht den ganzen Bereich einem Dokument zuordnest.

Aus konzeptioneller Sicht würde ich aber auch das Verfahren von thkn777 vorziehen, aus ergonomischer Sicht (durch tippen direkt hin springen hat was) wohl das andere ;)

Gruß
Roland
Roland Praml

IBM Certified Application Developer - Lotus Notes and Domino 8
Ich verwende das Foconis Object Framework

Offline tabama

  • Aktives Mitglied
  • ***
  • Beiträge: 233
  • Geschlecht: Männlich
  • hier werden Sie geholfen
Re: Frage zu "permutation"
« Antwort #12 am: 06.02.14 - 11:02:51 »
Vielen Dank für die vielen Antworten.

Ich werde mich mal mit dem Gedanken von thkn777 näher beschäftigen. Das scheint mir ein vernüftiger Kompromiss zwischen "wollen und können" zu sein.

Zwar hat pram ja nochmal das Thema Permutation aufgegriffen, aber ich muss gestehten, dass ich es immer noch nicht so richtig kapiert habe. Ich werde einfach mal seinen Code kopieren, vielleicht klappt es ja.

Nochmals Danke an Alle.

Offline thkn777

  • Aktives Mitglied
  • ***
  • Beiträge: 176
Re: Frage zu "permutation"
« Antwort #13 am: 06.02.14 - 13:18:35 »
@tabama
Vielleicht noch eine zweite Idee: Bau in Deine Dokumente ein RichText Item "vonbis" ein, dessen Inhalt an geeigneter Stelle berechnet wird. Das QuerySave Event käme zum Beispiel in Frage. Warum RichText? Das darf auch etwas größer werden.

Das Item "vonbis" befüllst Du mit der Liste der Nummern, für die ein Verfahren ungültig ist.
Bsp.
Verfahren ungültig für Nummern 5-9: "vonbis" ist:
5 6 7 8 9

Die DB wird zusätzlich volltextindiziert. --> Die Nutzer können nun ganz einfach nach einer Nummer suchen ;) und erhalten eine Liste der Verfahren, die für diese Nummer nicht zugelassen sind.

Tip:
Wenn Du die Suche auf das Item "vonbis" beschränken willst und nach Nummer 100 suchst, kannst Du bei der Volltextsuche eingeben: "[vonbis]=100"

Tip:
Um es den Nutzern einfacher zu machen, kannst Du das Item auch "nichterlaubt" nennen, dann suchst Du mit "[nichterlaubt]=100". Man kann die Suche auch über die erweiterten Eingaben im Suchdialog starten.

ODER Du baust die Liste aus dem Beispiel oben anders:
nicht erlaubt für 5
nicht erlaubt für 6
nicht erlaubt für 7
nicht erlaubt für 8
nicht erlaubt für 9

--> dann kann der Nutzer GENAU DAS in die Suche eingeben  ;D

Achtung:
Ein Volltextindex kann auch mal nicht aktuell sein.

Viel Erfolg.
« Letzte Änderung: 06.02.14 - 13:27:44 von thkn777 »

Offline ascabg

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 3.697
  • Geschlecht: Männlich
Re: Frage zu "permutation"
« Antwort #14 am: 06.02.14 - 13:26:39 »
Hallo,

@thkn777
Kurze Frage zu Deinem Vorschlag mit der Suche ueber den FTI.

Wurde zwar nicht angegeben, aber was machst Du bei der von Dir vorgeschlagenen Suche, wenn im Dokument auch die Verfahren angegenen sind, fuer die es gilt?

Oder was passiert bei der Suche, wenn im Dokument auch Telefonnummern angegeben sind?

Wenn Du jetzt nach einer einzelnen Nummer suchst, ...



Andreas

Offline thkn777

  • Aktives Mitglied
  • ***
  • Beiträge: 176
Re: Frage zu "permutation"
« Antwort #15 am: 06.02.14 - 13:33:46 »
@ascabg
Mit [itemname]=<wert> kann in der Volltextsuche nur im Item "itemname" gesucht werden. Wähle ich hier das von mir nur mit den ungültigen Nummern befüllte Item "vonbis" aus, dann sollten auch nur ungültige Verfahren gefunden werden. Die von Dir erwähnten gültigen Nummern oder Telefonnummern würden ja in anderen Items stehen

Alternativ kann man sich diese Suche auch im Suchdialog "zusammenbauen" (siehe "Mehr" und dann unter Bedingungen "Feld")

Ich habe mein Posting noch mal etwas erweitert. Ist ja keine fertige Lösung, nur eine Idee.

Vorteil der Volltextsuche: funktioniert in allen Ansichten der DB. Das kann manchmal ganz nützlich sein.

Th.
« Letzte Änderung: 06.02.14 - 13:35:54 von thkn777 »

Offline Peter Klett

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 2.713
  • Geschlecht: Männlich
Re: Frage zu "permutation"
« Antwort #16 am: 06.02.14 - 15:15:51 »
Bei der Variante mit der Volltextsuche müssten auf jeden Fall die Nummern formatiert werden, entweder fest

0001 0002 0003

oder irgendwie maskiert

'1' '2' '3'

damit wirklich konkret gesucht werden kann.

Eine Suche "[vonbis]=100" findet auch 1000, 1001, 2100, 3100 usw.. Mir wäre das zu wackelig ...

Offline thkn777

  • Aktives Mitglied
  • ***
  • Beiträge: 176
Re: Frage zu "permutation"
« Antwort #17 am: 06.02.14 - 16:03:20 »
@Peter Klett
Es gibt auf jeden Fall noch allerhand zu bedenken, wenn man eine Volltextsuche hier einsetzen möchte, ich wollte nur eine Idee beisteuern.

Zu Deinem Problem, daß ggf. zuviele Einträge gefunden werden: das hängt von den Suchoptionen in der Volltextsuche ab.

"[vonbis]=100" findet "1000" nur, wenn die unscharfe Suche an ist (bei mir jedenfalls). Selbst "Mit Wortvarianten" klammert die 1000 aus der Ergebnismenge aus.

Schönen Feierabend wünsch' ich.

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz