Autor Thema: Error 4063  (Gelesen 5079 mal)

Offline Fanker

  • Frischling
  • *
  • Beiträge: 20
Error 4063
« am: 01.11.12 - 11:35:58 »
Hallo,

bei diesem Aufruf erhalte ich den Fehler: Error 4063 Database has not been opened yet

Function Mail()
   Dim dbverz As NotesDbDirectory
   Dim verz As String
   
   Dim session As New NotesSession
   Dim dbmail As NotesDatabase
      
   
   verz = "SERVERMAIL"
   Set dbverz = New NotesDbDirectory(verz)
   Set dbmail = dbverz.GetFirstDatabase( Database )
   Set dbmail = session.CurrentDatabase

   

   Do While Not (dbmail Is Nothing)
      On Error Resume Next

      If Left(dbmail.Filepath,5) = "mail\" Then
         On Error GoTo err_Dbmail
         
         Dim dbcol As NotesNoteCollection
         Dim dbdoccol As NotesDocumentCollection
         Dim dbdoc As NotesDocument
         
         Set dbdoccol = dbmail.GetProfileDocCollection()



Domino 8.5.2FP3
Domino Administrator mit allen rechten.

Was mache ich falsch? Ich möchte alle Profildokumente durchlaufen, sofern
vorhanden.




Offline WildVirus

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 658
  • Geschlecht: Männlich
Re: Error 4063
« Antwort #1 am: 01.11.12 - 12:30:10 »
Hallo Namenloser ;),

wie wäre es mit einem vernünftigen Errorhandling ?

Hast Du überhaupt die Rechte auf die DB ?

Bei welcher DB tritt der Fehler auf ?

Und bevor Du mit
Code
Do While Not (dbmail Is Nothing)
auf eine DB losgehst, solltest Du vorher prüfen, ob überhaupt eine geöffnet wurde.

Was passiert, wenn der Agent mit den Rechten des Domino läuft ?

Und ich verstehe nicht, warum Du erst 
Code
Set dbmail = dbverz.GetFirstDatabase( Database )
und dann noch 
Code
Set dbmail = session.CurrentDatabase
machst. Welche DB willst Du jetzt prüfen ?

CU,
Axel

Offline Ralf_M_Petter

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.879
  • Geschlecht: Männlich
  • Jeder ist seines eigenen Glückes Schmied
    • Ralf's Blog
Re: Error 4063
« Antwort #2 am: 01.11.12 - 12:34:55 »
In welcher Zeile erhälst du den Fehler? Auf welcher Plattform? Am Server oder am Client? Fragen über Fragen...

Was aber komisch erscheint ist folgener Absatz:

Set dbmail = dbverz.GetFirstDatabase( Database )
Set dbmail = session.CurrentDatabase


Warum setzt du zuerst dbmail nur um es in der nächsten Anweisung wieder zu überschreiben?

Grüße

Ralf
Jede Menge Tipps und Tricks zu IT Themen findet Ihr auf meinem Blog  Everything about IT  Eine wahre Schatzkiste sind aber sicher die Beiträge zu meinem Lieblingsthema Tipps und Tricks zu IBM Notes/Domino Schaut doch einfach mal rein.

Offline Fanker

  • Frischling
  • *
  • Beiträge: 20
Re: Error 4063
« Antwort #3 am: 01.11.12 - 13:01:20 »
Ich habe als Domino Administrator den Agenten über Debugger gestartet.
Ich möchte alle 'Mail'-DB's durchlaufen, welche im Verzeichnis Mail\ stehen
alle anderen sollen übersprungen werden.

Ich habe angenommen, dass ich nachdem eine db gefunden wurde, eine Notesession für die weitere Verarbeitung erforderlich ist. Vielleicht liegt ja hier schon das Problem?

Die Fehlermeldung kommt bei der Zeile

Set dbdoccol = dbmail.GetProfileDocCollection()

und wird durch

On Error GoTo err_Dbmail

err_Dbmail:
  Print("Fehler: " & CStr(Err) & " " &  Error$)
  Resume Next


aufgefangen, Daher habe ich die Fehlermeldung.

Danke für die Unterstützung

 

Offline WildVirus

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 658
  • Geschlecht: Männlich
Re: Error 4063
« Antwort #4 am: 01.11.12 - 13:09:17 »
Hast Du denn Zugriff auf die Mail-DBs der Mitarbeiter ?

Unsere Admins würden standrechtlich erschossen, wenn sie das einfach so machen würden !

Offline Peter Klett

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 2.713
  • Geschlecht: Männlich
Re: Error 4063
« Antwort #5 am: 01.11.12 - 13:15:26 »
Wenn Du Dir das mit dem Debugger anschaust, würde ich das Errorhandling auskommentieren, dann siehst Du sofort, wo es hängt.

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re: Error 4063
« Antwort #6 am: 02.11.12 - 13:17:56 »
Abgesehen von den anderen Mängeln des Codes, die schon genannt worden sind: Die eigentliche Fehlermeldung hier kommt durch falsche Deklaration der NotesDatabase zustande. Es muss sein:
Dim dbMail As New NotesDatabase ("", "").

Bernhard

Offline umi

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 2.062
  • Geschlecht: Männlich
  • one notes to rule'em all, one notes to find'em....
    • Belsoft AG
Re: Error 4063
« Antwort #7 am: 02.11.12 - 14:02:55 »
Hallo

Ich tippe jetzt mal auf das GetFirstDatabase()

The first database, of the specified fileType%, located in the directory. The database is closed. To open it, use the Open or OpenIfModified method in NotesDatabase.
Gruss

Urs

<:~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Jegliche Schreibfehler sind unpeabischigt
http://www.belsoft.ch
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~:>

Offline HH

  • Senior Mitglied
  • ****
  • Beiträge: 339
  • Geschlecht: Männlich
Re: Error 4063
« Antwort #8 am: 05.11.12 - 13:15:24 »
Hallo,

abgesehen vom eigentlichen Code...

Datenbanken, auf die über NotesDbDirectory zugegriffen wird, sind per default nicht geöffnet (s. Debugger: isopen = false). Es stehen dann nur sehr wenige Eigenschaften zur Verfügung.

Also erst expliziert öffnen und dann auf Dokumente zugreifen.

Hubert

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz