Domino 9 und frühere Versionen > ND6: Entwicklung

Initialisierung von privaten Ordner im Agenten

<< < (2/2)

Axel:

--- Zitat von: Skorpi am 25.01.08 - 12:58:40 ---Über ein Ordnertemplate verfüge ich allerdings nicht...

--- Ende Zitat ---

Mit dem Template war auch der Ausgangsordner gemeint. Wenn man den aufruft, wird ein persönlicher Ordner daraus erstellt, wenn noch keiner für den entsprechenden User existiert.


--- Zitat von: Skorpi am 25.01.08 - 12:58:40 ---Nur ich sehe beispielsweise nicht die private View einer anderen Person X.

--- Ende Zitat ---

Ist ja auch logisch, sonst wär's ja kein privater Ordner.

Wenn du das so machst, wie oben beschrieben (Agentaufruf mit @Command([RunAgent]) und Zugriff auf Odner mit uiws.CurrentView.View), beschleicht mich ein Verdacht.

RunAgent wird sofort ausgeführt und wahrscheinlich im Context der ursprünglichen Ansicht (die gerade angezeigt wird) und nicht im Context des Ordners.

@Command([ToolsRunMacro]...) wäre hier die bessere Alternative. Ich würde aber mit NotesDatabase.Getview auf den Ordner zugreifen.


Axel

LN4ever:
Hallo Skorpi,

warum erstellst du den Ordner nicht per Script in dem Agenten selbst ?

Ein kurzer Auszug aus einem allgemeinen Ecel-Export-Agenten, den ich überall einsetze. Dort nehme ich die aktuelle View und erstelle eine Kopie davon, die ich anschließend zum privaten Ordner über die $FLAGS-Eigenschaften mache. Und den kann ich mit Dokumenten füllen - bei einer View mit Antworthierarchie und Dokumenten mit Antwortdokumenten in der DocumentCollection wandern allerdings immer ALLE Antwortdokumente mit (und nicht nur die der ursprünglichen Selektion). Das muß man wissen und ggf. berücksichtigen.

         Randomize
         foldername="TmpExportView" + Cstr (Int(Rnd()*1000))
         If Not v Is Nothing Then
            Set doc=db.getdocumentbyunid(v.universalid)
            If Not doc Is Nothing Then
               Set newdoc=doc.copytodatabase(db)
               Call newdoc.replaceitemvalue("$Title",foldername)
               Call newdoc.replaceitemvalue("$Flags","3FY")
               Call newdoc.save(True,True)
               ' Wenn der Anwender kein Recht hat Ordner zu erstellen, kommt er hier nicht mehr hin
               foldercreated=True
            End If
         End If
         Set v = db.getview(folderName)
         Call dc.putallinfolder(folderName)


Gruß

Norbert

Skorpi:
Nochmal vielen Dank für Eure Hilfe  :)

Ich hatte das Thema erstmal nach hinten geschoben. Als ich es Heute wieder auf dem Tisch kam, fiel es mir wie Schuppen von den Augen. Ich hatte einfach vergessen in der Zugriffskontrolle einen Haken bei "Private Ordner/Ansichten erstellen" zu setzen.

Tja, so ist das halt manchmal  :-:

Navigation

[0] Themen-Index

[*] Vorherige Sete

Zur normalen Ansicht wechseln