Autor Thema: Bestimmte Dokumente zählen/addieren  (Gelesen 2554 mal)

feel_x

  • Gast
Bestimmte Dokumente zählen/addieren
« am: 09.04.03 - 14:55:29 »
Ich habe einen Baum aus Hauptdokumenten (in Kategorien) und dazugehörigen Unterdokumenten.
Jetzt möchte ich für jedes Hauptdokument die Anzahl der Unterdokumente haben, und zwar als eine Zahl, mit der ich auch weiterrechnen kann.
(Also nicht @docchildren..)

In der Hilfe gibt mir @sum folgenden Tipp:

"This example looks at the Transactions view in the current database, whose first column contains number values indicating the amount of a transaction. The formula sums the transactions and places the total in the result field on the current document."

FIELD result:=result;
r:=@DbColumn("":""; ""; "Transactions"; 1 );
@SetField( "result"; @Sum( r ) )

Jetzt müsste ich doch nur der Formel sagen:
Such dir nicht alle Dokumente zusammen, sondern nur die, die der gleichen Kategorie angehören wie Du.
Wie füge ich das in die Formel ein?

Oder.. ein Agent, der die Anzahl der Antwortdokumente im Sekundentakt durchrechnet.
Wird bei einer großen Anzahl Dokumente blöd,
aber ist ein Anfang..
 :)

Offline ata

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 5.092
  • Geschlecht: Männlich
  • drenaiondrufflos
    • Anton Tauscher Privat
Re:Bestimmte Dokumente zählen/addieren
« Antwort #1 am: 09.04.03 - 17:42:05 »
Zitat
Oder.. ein Agent, der die Anzahl der Antwortdokumente im Sekundentakt durchrechnet.
Wird bei einer großen Anzahl Dokumente blöd,
aber ist ein Anfang..

... na deinen Admin möchte ich sehen, wenn der das spitz bekommt...

ata  ;D ;D ;D
Grüßle Toni :)

Offline Rob Green

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 2.651
  • Geschlecht: Männlich
    • Meipor
Re:Bestimmte Dokumente zählen/addieren
« Antwort #2 am: 09.04.03 - 17:56:02 »
hm...wenn Du zu einer Kategorie die Anzahl der Docs haben möchtest, verwendest Du natürlich nicht DBCOLUMN (das alle Werte = Dokumente einer Spalte aus ner View zurückliefert), sondern DBLOOKUP. Liefert alle Docs entsprechend Suchtreffer.

Bsp:
"suche in View ALLE nach Kategorie ROT.."
- dazu muß die erste Spalte der View ALLE aufsteigend sortiert / Kategorisiert sein (auf jeden Fall das erste, das zweite ist ein "Kann")
- in der ersten Spalte sollte der Suchbegriff potenziell vorkommen

Ins Doc und dort in ein Feld kommt die Formel:
_results:=@dblookup("":"NoCache";"Server":"View";"ROT";2);
anzahl:=@elements(_results);
Vielleicht verdirbt Geld wirklich den Charakter.
Auf keinen Fall aber macht Mangel an Geld ihn besser.
(John Steinbeck)

Meiporblog: http://www.meipor.de/blog
allg. Unternehmerblog: http://www.m-e-x.de/blog

feel_x

  • Gast
Re:Bestimmte Dokumente zählen/addieren
« Antwort #3 am: 10.04.03 - 10:33:55 »
Ins Doc und dort in ein Feld kommt die Formel:
_results:=@dblookup("":"NoCache";"Server":"View";"ROT";2);
anzahl:=@elements(_results);

Ja,
und wenn ich jetzt noch sagen möchte:
Keine statische Angabe, sondern statt "ROT"
"alle Dokumente, in denen das Feld "Titel" oder von mir aus Dokument-ID den gleichen Wert enthält wie im aktuellen Dokument?"


also @dbloookup("":"NoCache";"Server":"View";feld Titel = current document";2);

kann ich das so ähnlich basteln, oder sollte ich das mit einer if-formel machen, die die Werte übergibt?


feel_x

  • Gast
Re:Bestimmte Dokumente zählen/addieren
« Antwort #4 am: 10.04.03 - 10:38:06 »

und: Kann ich diese Formel theoretisch auch in einer Ansicht benutzen und nicht in einem Feld?


feel_x

  • Gast
Re:Bestimmte Dokumente zählen/addieren
« Antwort #5 am: 10.04.03 - 10:47:52 »

Hier nochmal ein Bildchen:
Ich kämpfe mit dem Problem, dass ich sehen will, wie viele Anmeldungen (grün) zu einem Seminar (Schwarz) vorliegen.
Mit @docchildren kann ich ja nicht weiterrechnen, insofern bringt mir das nur zur Anzeige was.

Ich will wissen: Gesamtanzahl Plätze (fest eingetragen)
abzüglich Anmeldungen (automatisch berechnet) ist gleich Anzahl freie Plätze.

oder muss ich das doch über ein Skript machen, das mir die Platzanzahl im Seminardokument herunterzählt..


Offline Rob Green

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 2.651
  • Geschlecht: Männlich
    • Meipor
Re:Bestimmte Dokumente zählen/addieren
« Antwort #6 am: 10.04.03 - 11:03:23 »
nein, Du kannst kein dblookup in einer View verwenden, wozu auch? Eine View ist quasi schon ein extrakt von dem, was man sehen will.

Was Du möchtest ist ja, daß ein neuer User keine Schulung mehr buchen kann, wenn diese voll ist bzw. vica versa.

Wenn also ein neues Reservierungsdoc aufgemacht wird, gibt es eine Formel in einem berechneten Feld...

_result:=@if(@isdocbeingsaved;@dblookup("":"NoCache":"server":"db";"view";EINDEUTIGE_SUCH_ID_ZUM_ANGEBOTENEN_SEMINAR;2);CHECK);
_entries:=@if(@iserror(_result);0;@elements(_result));
Field CHECK:=_entries;
_void

Dann gibt es im hidden, bearbeitbaren Feld CHECK eine Validierungsformel....
@if(CHECK>=FELD_MAXIMUMPLAETZE;@failure("Sie können nicht weil ..");@success)

Feld_Maximumplätze enthält die für das Seminar vorgegebene feste Anzahl an Plätzen.

So wird bei jedem Speicherversuch nachgeschaut, wie viele Buchungen bereits vorliegen und bei überschreiten unterbindet das System den Versuch des Users, einen weiteren Platz zu buchen.

Das schöne daran ist, Du kannst es mit fertigen "Response Slots" machen (also leeren, aber bestehenden Reservierungsdocs, wobei natürlich ne andere View für Überbuchungs-Check herangezogen wird, damit nicht auch die leeren Slots fälschlicherweise zählen) ODEr man kann neue Reservierungsdocs on the fly userseitig erstellen.
« Letzte Änderung: 10.04.03 - 11:05:23 von Rob Green »
Vielleicht verdirbt Geld wirklich den Charakter.
Auf keinen Fall aber macht Mangel an Geld ihn besser.
(John Steinbeck)

Meiporblog: http://www.meipor.de/blog
allg. Unternehmerblog: http://www.m-e-x.de/blog

feel_x

  • Gast
Re:Bestimmte Dokumente zählen/addieren
« Antwort #7 am: 10.04.03 - 11:41:21 »

_result:=@if(@isdocbeingsaved;@dblookup("":"NoCache":"server":"db";"view";EINDEUTIGE_SUCH_ID_ZUM_ANGEBOTENEN_SEMINAR;2);CHECK);
_entries:=@if(@iserror(_result);0;@elements(_result));
Field CHECK:=_entries;
_void
usw.


cool, fast genau das suche ich.
Jetzt noch eine Verständnisfrage: der Schlüssel "EINDEUTIGE_SUCH_ID_ZUM_ANGEGEBENEN_SEMINAR" ist ja statisch.
In dem Moment, in dem ein neues Seminar mit einer anderen ID angelegt wird, soll das ja auch funktionieren. Sonst sucht jedes neue Seminar nach dem gleichen Schlüssel
(oder hab ich die Formel falsch verstanden?)
wie mache ich das, dass ich in dieser Formel übergebe:
Feld "EINDEUTIGE_ID" istgleich dem aktuellen Dokument?
Dann hab ich's

:)



Offline Rob Green

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 2.651
  • Geschlecht: Männlich
    • Meipor
Re:Bestimmte Dokumente zählen/addieren
« Antwort #8 am: 10.04.03 - 11:45:03 »
feel_x...es gibt eine sehr gute Help in Lotus Notes, wo super dupa die Funktionen erklärt werden. Da findest Du auch @dblookup.
Und wie man den Suchschlüssel eingeben kann, statisch, dynamisch, etc...ist easy.  ;)
Vielleicht verdirbt Geld wirklich den Charakter.
Auf keinen Fall aber macht Mangel an Geld ihn besser.
(John Steinbeck)

Meiporblog: http://www.meipor.de/blog
allg. Unternehmerblog: http://www.m-e-x.de/blog

feel_x

  • Gast
Re:Bestimmte Dokumente zählen/addieren
« Antwort #9 am: 10.04.03 - 11:48:17 »

Okay, Danke Dir :)

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz