Domino 9 und frühere Versionen > ND6: Entwicklung
db.compact bringt Fehler
William Wallace:
Hallo,
ich biete in einem Portal eine Funktion, womit der User sein Mailfile compacten kann:
Sub Click(Source As Button)
Dim session As New NotesSession
Dim workspace As New NotesUIWorkspace
Dim reg As New NotesRegistration
Dim uidoc As NotesUIDocument
Dim doc As NotesDocument
Set doc = workspace.CurrentDocument.Document
server = doc.Mail_Server(0)
path = doc.Mail_Path(0)
Dim db As New NotesDatabase( server, path )
If ( db.PercentUsed < 85 ) Then
Call db.Compact
Print ("Beginne mit dem Compact. Sie können wie gewohnt weiterarbeiten...........")
Else
Msgbox ("Die Auslastung Ihres Mailfiles liegt bei: " & db.PercentUsed & "%. Ein compact ist nicht notwendig!")
End If
End Sub
Einige User bekommen jedoch die Meldung:
Only local databases can be compacted (Servername!!!mail\name.nsf)
Woran kann das liegen ??? Ein manueller compact über das Mailfile funktioniert...
Gruß,
William
TMC:
Das liegt daran:
--- Zitat von: Notes 6 Designerhilfe ---Compact method
This method raises an error if the database is not local.
--- Ende Zitat ---
Warum willst Du denn, dass ein User *manuell* sein Mailfile auf dem Server compacten soll? Das kannst Du doch über den Domino automatisch machen lassen.
Und welches Interesse hätte ein User daran? Es bringt ihn aus User-Sicht doch keinen Schritt weiter.
Lokale Komprimierung aber durchaus, z.B. wegen Festplattenplatz seines Notebooks.
flaite:
Ist das Wort "Portal" das neue Wort für Notes-Datenbank ;D
Mich würde interessieren welche Notes-Anwendung nach dieser Benutzung des Begriffes kein Portal ist?
Ein Begriff, dessen semantische Bedeutung keine Grenzen mehr hat, macht keinen Sinn mehr. Ich arbeite nicht im Portalbereich, deshalb weiss ich auch keine Definition. Bin aber mit der Benutzung vorsichtig.
Compacten von Datenbanken gehört eindeutig in den Aufgabenbereich des Admins.
Es gibt verschiedene Standardmöglichkeiten, um das zu automatisieren (z.B. Programmdokumente, soviel ich weiss).
Ich würd dieses Projekt abbrechen, aber das Problem ist, dass dies auf dem Client läuft.
Du könntest die User Compact-Anforderungsdokumente auf dem Server erstellen lassen. Das sind dann normale Notes Dokumente, in dem alle benötigten Infos drinstehen (z.B. Pfad zu diesem Mailfile). Und dann ein zeitgesteuerter Agent, der die angeforderten Mail-Datenbanken compacted.
Als nächstes werden User fragen, ob sie nicht ein Anforderungsdokument erstellen können, das bewirkt, dass die Datenbank jede Woche compacted sind.
Ein paar User werden es vergessen.
Um den Usern die Arbeit zu ersparen ist es besser, dass per automatisierten, zeitgesteuerten Task für alle Datenbanken einzustellen. 8)
Man sollte immer hinterfragen, ob die Anforderungen an deren Realisierung wir arbeiten Sinn machen. Für diese schwierige Aufgabe, gibt es keine einfache Lösung. Techies neigen dazu, zu sehr auf der Implementierungsseite zu sein und die Motivation der Lösung, an der sie arbeiten, zu wenig kritisch zu hinterfragen.
Nicht-Techies wissen zu wenig über das System, auf dem eine modellhafte Lösung für die Aufgabenstellung erstellt wird. Wissen über das System der Lösungsplattform selbst beeinflusst aber in der Praxis die Anforderungen. Und dieses Wissen kann die Anforderungen effizienter machen. Diese ganze alte Theorie mit: Kunde ohne Ahnung von System schreibt Lastenheft und technische Leute erstellen daraus ein Pflichtenheft ist aus heutiger Sicht einfach naiv. Aber das ist ein anderes Thema.
Aber grundsätzlich: Sei agil und trage Verantwortung-> hinterfrage die Motivation der Anforderungen.
Gruß Axel
William Wallace:
hm...also als portal definiere ich unsere eigenprogrammierte willkommensseite,
wo etliche Funktion von anderen Datenbanken integriert sind, um sie hier einfacher
aufrufen zu können.
ich weiß auch, dass der compact serverseitig gesteuert werden kann. wir haben jedoch seit längerer zeit das problem, das unser server bei diesem task abbricht und sich verabschiedet.
die admins haben dafür keine lösung - deshalb meine angebotene lösung: ich habe eine report-datenbank, wo alle dbs auf dem server gelistet werden inkl. acl entries. hier kann man u.a. auch änderungen an der acl vornehmen (vorteil sie bleiben dokumentiert). desweiteren läuft ein agent über alle dbs, der die auslastung prüft: ist sie unter einem bestimmten wert bekommt a) bei mailfile der besitzer eine mail mit aufforderung zum compact und b) bei anwenderdatenbanken der jeweilige manager der db eine mail, usw.
nehme mir deine kommentare trotzalledem mal an...
Gruß,
William
Roalf:
du laborierst hier an den Wirkungen statt dich um die Ursachen zu kümmern.
--- Zitat ---die admins haben dafür keine lösung -
--- Ende Zitat ---
.
Das der Compact abbricht hat i.d.R. ganz simpele Ursachen (zumeist eine korrupte DB). Welche das ist kann man leicht im Log sehen. Manchmal hilft ein Fixup, sonst einfach eine neue Kopie der DB anlegen.
Lange Rede kurzer Sinn: dieses Admins sind unfähig. Du darfst mich ihnen gegenüber auch gerne zitieren.
Navigation
[0] Themen-Index
[#] Nächste Seite
Zur normalen Ansicht wechseln