' GO TO FIXED POSITION ' © 2004 by Lukasz Szopa, l.szopa@open-document.de ' www.open-document.de ' Durch dieses Skript wird ein Anwender nach jedem Einloggen ' ins ELO an ein- und diesselbe Position (Schrank, Ordner, Register...) ' geführt. ' Anwendbar z.B. wenn der Anwender seine Arbeit in der Archiv-Struktur ' meistens "dort" beginnt, und - vor allem wenn die Archiv-Struktur ' viele Ebenen hat - sich nicht erst "durchklicken" muss. ' Damit man nicht für jeden User im Skript eine Anpassung & Änderung ' vornehmen muss, wird die ObjektID des ELO-Objekts ' (Schrank, Ordner, Register) oder ein Name des Elements (dann aber ' eindeutig!) vorher vom Administrator unter "Anwenderverwaltung" ' ins erste Eigenschafsfeld "E1" eingetragen. ' Beim Einstieg ins Archiv wird genau dieser Wert ' vom Skript ausgelesen und der Anwender zu dieser Ansicht geführt. ' D.h. dieses Skript unter "Skript-Aufrufe" beim Ereignis ' "Beim Betreten des Archivs" anfügen. set Elo=CreateObject("ELO.professional") ' set Elo=CreateObject("ELO.office") ' Für ELOoffice ' den Archivnamen ermitteln, die "Hinführung" muss aufgrund der ' ObjektID bzw. des Namens auf ein bestimmtes Archiv beschränkt sein! ArchivName=Elo.GetArcName() If Archivname="MeinArchiv" then ' hier den Namen des Archivs eingeben Elo.ReadUser(Elo.ActiveUserId) ' Daten des aktuellen Anwenders auslesen ObjID=Elo.ReadUserProperty(5) ' "5" für E1, "6" für E2 etc. ' Zum ELO-Element gehen... ret=Elo.GotoId (ObjID) if ret<>1 then MsgBox "Es wurde kein Objekt mit der ID " & ObjId & "gefunden werden." end if ' Falls Sie statt dessen einen NAMEN eines Objekts auslesen wollen, ' z.B. "Buchhaltung", muss die ObjektID erst durch einen Such-Vorgang ' ermittelt werden. Deshalb sollten Sie nur dann reine Objekt-Namen ' verwenden, wenn diese im gesamten Archiv einmalig sind: 'Elo.ReadUser(Elo.ActiveUserId) ' Daten des aktuellen Anwenders auslesen 'ObjektName=Elo.ReadUserProperty(5) ' "5" für E1, "6" für E2 etc. 'SearchTerm=ObjektName ' hier beginnt die Suche nach dem Objekt 'Elo.PrepareObjectEx 0,0,0 ' man könnte diese eingrenzen, wenn man z.B. durch Objekt-Tiefe den zweiten Wert ' des Elo.PrepareObjectEx festlegen könnte, z.B. Elo.PrepareObjectEx 0,2,0 für Ordner 'Elo.ObjShort=SearchTerm 'result=Elo.DoInvisibleSearch 'ObjID=Elo.GetEntryId(268435456) ' Zum ELO-Element gehen... 'ret=Elo.GotoId (ObjID) 'if ret<>1 then ' MsgBox "Es wurde kein Objekt mit der ID " & ObjId & "gefunden werden." 'end if End if