Autor Thema: Eigenes Ordnersystem  (Gelesen 7852 mal)

Offline dirk_2909

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.173
  • Geschlecht: Männlich
  • Expand your Notes Client with ECM functionality..
    • d.velop
Re: Eigenes Ordnersystem
« Antwort #20 am: 29.05.08 - 09:13:05 »
Zitat
..komplexeres LotusScript ..

Warum ist denn das Verschieben eines Dokumente sin einen Ordner so komplex mit LS??

Sind nicht mehr als 3-4 Zeilen Code (bei min. Anforderungen).
Dirk

[IBM CLP R5]
[IBM CAD 6/6.5]
[IBM CAD 7]
[IBM CAD 8]


"Nein!! … Es genügt nicht Mails in einen anderen Ordner oder Datenbank zu verschieben, um sie zu archivieren!"

   
Disclaimer:
Ich Antworte nach besten Wissen und Gewissen. Sollte sich jemand durch meine Antwort persönlich angegriffen fühlen, ist dies nicht meine Absicht!
Ich bin auch nur ein Mensch, der Fehler machen kann. ....

Offline Mikhail

  • Frischling
  • *
  • Beiträge: 13
Re: Eigenes Ordnersystem
« Antwort #21 am: 29.05.08 - 09:32:39 »
Hallo Dirk,

das grundsätzliche Verschieben ist vielleicht nicht das Komplexe daran; es ist mehr die Aufgabe das ganze in einem Dialog mit dem Benutzer zu realisieren. Denke da an eine Dialogbox mit Embedded View, welche alle verfügbaren Ordner anzeigt und da ich, wie gesagt, noch nicht ganz so bewandert in LS bin, wirkt der Formelsprachen-Einzeiler schon deutlicher einfacher ;)

Michael

Offline dirk_2909

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.173
  • Geschlecht: Männlich
  • Expand your Notes Client with ECM functionality..
    • d.velop
Re: Eigenes Ordnersystem
« Antwort #22 am: 29.05.08 - 09:47:13 »
eine Embedded View macht in dem Zusammenhang überhaupt keinen Sinn .....

Und wenn Du alles mit einem "Formelspracheneinzeiler" hinbekommst , dann ist es ja ok.
Aber LS ist - aus meiner Sicht - auch schnell umgesetzt.

Und dank der Designerhilfe kann man sich viele Beispiele ansehen/verwenden und sich in das Thema einarbeiten...
Dirk

[IBM CLP R5]
[IBM CAD 6/6.5]
[IBM CAD 7]
[IBM CAD 8]


"Nein!! … Es genügt nicht Mails in einen anderen Ordner oder Datenbank zu verschieben, um sie zu archivieren!"

   
Disclaimer:
Ich Antworte nach besten Wissen und Gewissen. Sollte sich jemand durch meine Antwort persönlich angegriffen fühlen, ist dies nicht meine Absicht!
Ich bin auch nur ein Mensch, der Fehler machen kann. ....

Offline Mikhail

  • Frischling
  • *
  • Beiträge: 13
Re: Eigenes Ordnersystem
« Antwort #23 am: 29.05.08 - 09:57:30 »
Das ist ja genau was ich mache...

Also ich habe schon wirklich viel in der Designerhilfe 'rumgeblättert und auch hier im Forum, aber eine schnelle Umsetzung für einen Benutzerdialog, in dem dieser einen Ordner auswählen kann (so wie er es bei @Command([Folder]) kann, habe ich für LS noch nicht gefunden.

Von mir aus macht Embedded View keinen Sinn; hatte das halt nur hier im Forum gelesen - weiß halt nicht, wie ich sonst realisieren soll dass der Benutzer aus bestehenden Ordnern wählen kann. Schaue mir schon Picklist u.Ä. an, aber nach allem was ich schon gesehen und probiert habe, bin ich nicht der Meinung, dass das was ich schaffen will, leicht zu schaffen ist. Aber ich lasse mich auch gerne eines besseren belehren.

Michael

edit:
Vergessen zu schreiben: Der Formelspracheneinzeiler sorgt für das Verschieben, aber (wie schon früher in diesem Thread geschrieben) setzt keine Flag für die Sichtbarkeit, damit das Dokument aus der Ansicht verschwindet. Das Flagsetzen ist dabei nicht das Problem, sondern die Tatsache, dass die Flag gesetzt wird, auch wenn der Benutzer den Dialog mit Abbrechen (und eben nicht mit Kopieren/Verschieben) beendet. Das ergibt als Resultat, dass nicht verschobene Dokumente trotzdem nicht mehr angezeigt werden.
« Letzte Änderung: 29.05.08 - 10:00:17 von Mikhail »

Offline dirk_2909

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.173
  • Geschlecht: Männlich
  • Expand your Notes Client with ECM functionality..
    • d.velop
Re: Eigenes Ordnersystem
« Antwort #24 am: 29.05.08 - 10:36:46 »
Du musst über die DB-Eigenschaften die Ansichten auslesen und darus dann die Ordner herausselektieren ( notesdatabase.Views / notesview.IsFolder ).

Dann die ermittelten werte in einem Auswahlfeld oder Prompt ( NotesUIWorkspace ) dem User auswählbar machen ..

über document.PutInFolder( "DERAUSGEAEHLTE_ORDNER" , True ) kannst Du das dok verschieben.
Dirk

[IBM CLP R5]
[IBM CAD 6/6.5]
[IBM CAD 7]
[IBM CAD 8]


"Nein!! … Es genügt nicht Mails in einen anderen Ordner oder Datenbank zu verschieben, um sie zu archivieren!"

   
Disclaimer:
Ich Antworte nach besten Wissen und Gewissen. Sollte sich jemand durch meine Antwort persönlich angegriffen fühlen, ist dies nicht meine Absicht!
Ich bin auch nur ein Mensch, der Fehler machen kann. ....

Offline gossifu

  • Senior Mitglied
  • ****
  • Beiträge: 352
  • Geschlecht: Männlich
  • Dummheit schafft Freizeit
Re: Eigenes Ordnersystem
« Antwort #25 am: 29.05.08 - 10:37:37 »


Ich hab da jetzt für Deine Anforderung nichts fertiges, aber wenn Du mit db.Views arbeitest, kannst Du Dir eine Liste aller Ordner zusammenstellen.
Code
Dim i as integer
Dim folder() As String
Forall v in db.Views
    If v.IsFolder Then
        Redim Preserve folder(i) As String
        folder(i) = v.Name
        i = i + 1
    End If
End Forall
ggfs noch sortieren, Script könnte man z. Bsp aus dem GruppenDokument des NAB nehmen,
um die Gruppenmitglieder zu sortieren.

Dann die Liste in eine Promptbox mit Einzel- oder Mehrfachauswahl.
So hast Du Die Namen der Ordner und kannst dann den Rest erledigen.

Vielleicht kann man auch schon eine Ordnerliste irgendwo hinterlegen, die beim Erstellen eine neuen Ordners aktualisiert wird, dann geht das schneller.

mfg

Kjeld

Edit: zu spät  ;)
Immer lustig und vergnügt, bis der A.... im Sarge liegt. ;-)

Offline Mikhail

  • Frischling
  • *
  • Beiträge: 13
Re: Eigenes Ordnersystem
« Antwort #26 am: 29.05.08 - 10:43:08 »
Okay, ich nehme es zurück;
es HÖRT sich zumindest viel einfacher AN, als ich es mir vorgestellt hatte...

Also ein großes DANKESCHÖN an dieser Stelle und ich werde mich dann mal damit auseinander setzen ;)

Grüße
Michael

edit:
Nochmal ein großes DANKE; mit eurer Hilfe und ein bisschen Fummeln bin ich jetzt so weit:


Sub Click (Source As Button)
   Dim uiws As New NotesUIWorkspace
   Dim sess As New NotesSession
   Dim db As NotesDatabase
   Dim dc As NotesDocumentCollection
   Dim doc As NotesDocument
   Dim item As notesitem
   
   Set db = sess.CurrentDatabase
   Set dc = db.UnprocessedDocuments
   Set doc = dc.GetFirstDocument
   
   Dim i As Integer
   Dim folder() As String
   Forall v In db.Views
      If v.IsFolder Then
         Redim Preserve folder(i) As String
         folder(i) = v.Name
         i = i + 1
      End If
   End Forall
   
   Dim auswahl As Variant
   auswahl = uiws.Prompt(PROMPT_OKCANCELLIST, "In Ordner einfügen", "Bitte wählen Sie einen Ordner aus:", "", folder())
   Messagebox auswahl
   
   If Not auswahl = "" Then
      While Not doc Is Nothing
         Call doc.PutInFolder(auswahl)
         
         Set item = doc.ReplaceItemValue("sichtbarkeit", "3")
         Call doc.Save( True, False, False)
         Set doc=dc.GetNextDocument(doc)
      Wend
   End If
End Sub

Das braucht ein klein bisschen bis es die Liste geladen hat und daher denke ich nochmal über deinen Vorschlag nach, Kjeld. Aber grundsätzlich läufts erst mal, also wiederholtes Danke. PROMPTe Hilfe sozusagen :P

[closed]
« Letzte Änderung: 29.05.08 - 15:06:42 von Mikhail »

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz