Das Notes Forum
Best Practices => Diskussionen zu Best Practices => Thema gestartet von: iukhdh am 04.04.07 - 16:53:45
-
Hallo,
ich hätte da noch eine Ergänzung für Punkt 3.4
Der Besipielcode funktioniert ja nur bei Felder mit jeweils einem Eintrag. Ich habe aber im Hauptdokument ein Feld sonstigeMitarbeiter, in dem ich mehrere Mitarbeiter eintrage. Auf die im Punkt 3.4 genannte Weise wird aber nur ein Eintrag übergeben.
Ich habe es so gelöst:
'alle Mitarbeiter übergeben
Dim Anzahl As Integer
Anzahl=0
Dim Gesamtteilnehmer() As String
Forall Teilnehmer In doc.sonstigeMitarbeiter
Redim Preserve Gesamtteilnehmer(Anzahl) As String
Gesamtteilnehmer(Anzahl)=Teilnehmer
Anzahl = Anzahl + 1
End Forall
Call dc.StampAll( "sonstigeMitarbeiter" , Gesamtteilnehmer() )
Da ich Anfänger im Script bin, hab ich da ein wenig gebraucht bis es geklappt hat. Ich hoffe dass ich nicht total danebenliege und es eine viel einfachere Lösung gibt :-\ aber die könnt ihr dann ja hier hinschreiben.
Ciao
Thomas
-
Nun das geht etwas einfacher und braucht aus meiner Sicht nicht in den BP-Artikel aufgenommen werden, da es nicht zum Thema gehört.
Du ersetzt Deinen ganzen Code-Teil durch folgende Zeile:
Call dc.StampAll ("sonstigeMitarbeiter" , doc.SonstigeMitarbeiter)
Bernhard
-
Ohoh, ich fühl mich soooooo klein
:-\
Sowas hab ich ja fast befürchtet. Naja ... in 10 Jahren lache ich darüber ;)
Aber ich komme doch noch mit einer Frage:
Wäre es denn nicht sinnvoll, dann den Code im BP Artikel bei 3.4. generell so abzuändern? Also ohne das (0), was ja nur den ersten Wert holt?
Wenn ich es recht verstehe, holt sich der Code wie von dir vorgeschlagen ja den kompletten Inhalt, da wäre es dann doch egal ob nur einen Wert oder mehrere. Damit wäre der Beispielcode noch universeller.
Oder übersehe ich da was?
Frohe Ostern
Thomas
-
Nö, die Arbeit sparen wir uns jetzt, da diese Sache mit Haupt- und Antwortdokumenten überhaupt und gar nichts zu tun hat.
Abgesehen davon: Thomas, wir alle haben bei allem mal ganz klein angefangen. Mach' Dir da mal keine Gedanken! Manche bleiben erfahrungsgemäss (warum auch immer) irgendwann weit unten stehen, aber diese Gefahr sehe ich bei Dir nun gar nicht. Bleibe weiter neugierig und intessiert - und der AtNotes-Gemeinschaft gewogen!
Bernhard
-
Na keine Frage, ich bin ja froh dass ich dieses Forum gefunden habe. Nachdem ich inzwischen dank den vielen Tipps hier (insbesondere Antwortdokumente) ja meinem alteingesessenen Notes-Kollegen auch schon verblüffen und helfen konnte, bekommt ihr mich (uns) nicht so schnell los
:D
Und als kleinen Schlusssatz für diesen Thread habe ich noch folgendes:
Heh Leute, der Code geht auch ohne die (0) am Ende, und ist dabei viiiiiiiiel universeller einsetzbar !
;D ;D
-
ich bin klein ... mein herz ist ... hmmm ...
Hallo Leute,
bei der ganzen Debatte und den Best Practices für Haupt- und Antwortdokumente ist mir noch eingefallen:
Kann mann denn beim Erstellen eines Antwortdokumentes bestimmte Felder im Hauptdokument neu berechnen lassen, möglichst als Berechnung aller Antwortdokumente eines bestimmten Typs?
Konkret:
Wir versuchen hier auf Basis eines CRM eine Spendenverwaltung zu erstellen, dabei werden bestimmte Auswertungen im Hauptdokument gepflegt. Nun habe ich ein Antwortdokument des Typs "Spende" und würde gerne über alle Antwortdokumente beim Speichern eine Berechnung ausführen, die im Hauptdokument Felder aktualisiert.
Meist sind das statistische Auswertungen (Anzahl, Durchschnitt, Höhe), aber auch Ergänzungen in Auswahllisten (Affinität).
Geht so was? *grins* und wie? :))
LG
Stefan
-
Hallo
muss das immer sofort aktuell sein, oder könnte das nicht (täglich nachts) ein Agent erledigen?
Die Vorteile eines Agenten muss ich nicht weiter erklären - oder?
Viele Grüße
Werner
-
Hallo Werner,
aktuell wäre schon schick per Script im Queryclose ... oder so ... aber über den Agenten hab ich auch schon nachgedacht ... nur hab ich von script nur soviel Ahnung, dass ich es lesen und ggf. ganz rudimentär anpassen kann.
LG
Stefan
-
aktuell wäre schon schick per Script im Queryclose ... oder so ... aber über den Agenten hab ich auch schon nachgedacht ... nur hab ich von script nur soviel Ahnung, dass ich es lesen und ggf. ganz rudimentär anpassen kann.
Dann wird aber schwer. Denn was du haben willst ist eine reine Scriptlösung. eine fertige Lösung wirst du hier nicht bekommen, sondern nur Hinweise wie man sowas angehen kann.
Mit der Eigenschaft ParentDocumentUNID aus der Klasse NotesDocument kannst du auf das Hauptdokument zugreifen. Von da aus kannst du dann weitermachen. Mit der Eigenschaft Responses aus der gleichen Klasse bekommst du dann alle Antwortdokumente des entsprechenden Hauptdokuments als NotesDocumentCollection. Wenn es nur bestimmte Antworten sein sollen, kannst du alle Dokumente der Collection durchlaufen und die die passenden raussuchen oder du gehst über NotesDatabase.Search und suchst dir, mit den entsprechenden Parametern die Dokumente heraus.
Axel
PS: Eigentlich ist das hier der falsche Platz um Probleme zu diskutieren. Hier geht es nur um die Diskussion über die BP-Artikel. Welche Notes-Version hast du denn im Einsatz?