Avatar billede cbkc. Nybegynder
11. september 2001 - 12:14 Der er 1 kommentar og
1 løsning

Behandle ET doc. i en oversigt

Hvordan kan jeg få fat i det doc. i en oversigt, som aktuelt er markeret (ikke med Vip). Det skal indgå i følgende kode:
Sub Click(Source As Button)
    Dim session As New NotesSession
    Dim db As NotesDatabase
    Dim view As Notesview   
    Dim doc As NotesDocument
    Dim navn As Variant
   
    Set db = session.currentdatabase
    Set view = db.getview(\"Sager\")   
    Set doc = view.  (?????)
   
    navn = doc.filnavn(0)
    Kill \"i:\\temp\\\"+navn+\".lwp\"         
    Call doc.Remove(True)
End Sub

Som det indirekte fremgår af ovenstående skal koden afvikles fra en oversigt.
Jeg kan godt køre koden på alle doc. i oversigten,
vha: (erstatter del af ovenstående)
Set doc = view.getfirstdocument
Do Until doc Is Nothing
    navn = doc.filnavn(0)
    Kill \"i:\\temp\\\"+navn+\".lwp\"         
    Set doc2 = view.getnextdocument(doc)         
    Call doc.Remove(True)
    Set doc = doc2
Loop

Men det er ikke meningen, da kun udvalgte/enkelte doc. skal behandles/slettes.
Avatar billede roenving Novice
11. september 2001 - 12:22 #1
Hvis det er markerede dokumenter i en oversigt skal du bruge
db.UnprocessedDocuments
som giver følgende resultat:

Hvis et eller flere dokumenter er markeret med flueben, returneres en doccol med disse dokumenter (uanset hvor \'cursoren\' i øvrigt står);

Hvis ingen dokumenter er mærket returneres en doccol med det dokument, som befinder sig under cursoren, hvis det er en kategorisering returneres en tom doccol

Så din kode bliver til:

Sub Click(Source As Button)
    Dim session As New NotesSession
    Dim db As NotesDatabase
    Dim view As Notesview   
    Dim doc As NotesDocument
    Dim doccol As NotesDocumentCollection
    Dim navn As Variant
   
    Set db = session.currentdatabase
    Set view = db.getview(\"Sager\")   
    Set doccol = db.UnprocessedDocuments
   
    Set doc = doccol.getfirstdocument
Do while not doc Is Nothing \'foretrækker jeg :-)
    navn = doc.filnavn(0)
    Kill \"i:\\temp\\\"+navn+\".lwp\"         
    Set doc2 = doccol.getnextdocument(doc)         
    Call doc.Remove(True)
    Set doc = doc2
Loop
End Sub

hth
jes
Avatar billede cbkc. Nybegynder
11. september 2001 - 12:42 #2
Mange tak. \"doccol\" er et meget savnet led.

            \\
    0        \\
      ---|    |   
    0        /
            /
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Computerworld tilbyder specialiserede kurser i database-management

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester