Domino 9 und frühere Versionen > Entwicklung

Summierungsfrage

(1/2) > >>

Holger:
Hallo Zusammen

ich habe ein Problem mit einem Summary Form, das unserem Provider leider nicht gefällt an unserer DB. Ich habe ein Form das tabellenartig aufgebaut ist, mit Jahren und Quartalen. In diesem Form ziehe ich mir die Summen der einzelnen Dokumente (die vom Aufbau her gleich sind) mit @dblookup zusammen. Das sind allerdings 34 Werte die ich da benötige also auch 34 Formeln mit DbLookup. Das scheint aber dem Provider nicht zu gefallen, gibt es noch eine andere Möglichkeit die Summen zu ziehen so dass wenn ich das Summary dokument öffne die aktuellen Summen in den jeweiligen Kästchen stehen? Leider bin ich kein Script Profi deshalb weiß ich auch nicht ob es vielleicht über Script möglich ist.

Danke für eure Hilfe

Holger

Rob Green:
mach ein großes Feld mit einer einzigen dblookup....diese zieht sich aus einer View folgenden Wert heraus
"Feld1 ~ Feld2 ~ Feld3 ~ ..."

Mit @word kannst Du dann diesen langen String in die einzelnen Felder übertragen. Damit sparst Du dir 33 dblookups.

Holger:
Hallo Rob Green,

das scheint mir das richtige zu sein, ich habe damit aber och nie gearbeitet, ist denn richtig wenn ich ein Feld definiere, das Lookup heißt und computed ist, als Formel hinterlege ich dann:
@Sum(@DbColumn("":"NoCache";"";"(Lookup Revenue Increase)";2);
@DbColumn("":"NoCache";"";"(Lookup Revenue Increase)";3);
@DbColumn("":"NoCache";"";"(Lookup Revenue Increase)";4))/2
. Wenn ich das ausprobiere bekomme ich aber dann die Gesamtsumme?

Irgendetwas mache ich doch falsch? Das @Sum brauche ich ja um aus dem View die Summe rauszuziehen die ich dann ja wieder durch 2 teilen muß weil ich sonst die Summe doppelt drin hätte.

Gruß

Holger

Holger:
Hi,
nochmal ich, das Problem mit der Formel für das Feld konnte ich nun lösen, wenn ich die folgende Formel nutze,
@Sum(@DbColumn("":"NoCache";"";"(Lookup Revenue Increase)";2)/2):
@Sum(@DbColumn("":"NoCache";"";"(Lookup Revenue Increase)";3)/2):
@Sum(@DbColumn("":"NoCache";"";"(Lookup Revenue Increase)";4)/2)

Aber ich schaffe es einfach nicht die Werte aus dem Feld Lookup nun in die einzelnen Felder zu holen mit @Word. Ich nutze die folgende Formel und denke die müßte eigentlich auch richtig sein.

@Word(Lookup; ";" ; 1)

Aber in dem Feld erscheint einfach nichts? Muß ich vielleicht irgendwelche speziellen Einstellungen in den Feldern vornehmen?

Gruß

Holger

Rob Green:
ok, ich sehe, daß das Problem anders geartet ist, als ich zuerst vermutet bzw. verstanden hatte.

Daher "anders herum":
- nimm eine zentrale Summaryform, die nicht dynamisch bei jedem Aufruf erneut berechnet wird, sondern direkt bei jeder Änderung eines neuen Docs bzw. bestehenden Docs. Der Unterschied zu vorher ist, daß sich nun die Summary die Werte nicht mehr holt, sondern die Werte bekommt.

Da ich nun nicht den genauen Aufbau kenne, mal ein Beispiel, das das verdeutlichen soll, was ich meine:

im zentralen Summary steht:
- 168 neue Anträge
- 20 im Februar
- 30 im März
etc...
kommt nun ein neues Doc im Mai hinzu, wird beim Abspeichern des neuen Docs per @setdocfield der Zähler im Feld für den Monat Mai innerhalb der zentralen Summary Form um 1 erhöht.

Das Prinzip kann man beliebig weiter anwenden.

So in der Art eher? Ist vaD sehr performanceprovider schonend

Navigation

[0] Themen-Index

[#] Nächste Seite

Zur normalen Ansicht wechseln