Autor Thema: NotesDatabase.create Problem  (Gelesen 1714 mal)

Offline baumi78

  • Aktives Mitglied
  • ***
  • Beiträge: 124
  • Ich liebe dieses Forum!
NotesDatabase.create Problem
« am: 12.10.05 - 15:49:18 »
Hallo Notes Gemeinde,

ich habe mal wieder ein Problem. Ich möchte mit NotesDatabase.Create eine neue leere NotesDatenbank ohne Gestaltung in meinem lokalen Datenverzeichnis anlegen. Dies funktioniert auch soweit, nur kann ich die Datenbank anschließend nicht öffnen. Stattdessen die Fehlermeldung: "Datenbank ist nicht vollständig initialisiert. (Sie enthält keine Ansichten). Wählen sie Datei Replizierung Replizieren um die Datenbank vollständig zu initialisieren".

Beim anlegen einer neuen Notes Datenbank über das Menü wird ja eine Standardansicht angelegt, muss diese Ansicht enthalten sein, um die DB öffnen zu können? Wozu gibt es dann die NotesDatabase.Create Methode wenn man die DB anschließend nicht verwenden kann? Kann ich programmatisch mit LotusScript Ansichten anlegen?

Grüße Baumi

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re: NotesDatabase.create Problem
« Antwort #1 am: 12.10.05 - 16:39:59 »
NotesDatabase.Create erstellt - wie in der DesignerHelp gut nachzulesen ist - wirklich eine vollkommen leere DB (lediglich solche zwingend erforderliche Notes wie die ACL u.a. werden angelegt. Ansichten und Masken: Fehlanzeige. Du müsstest dann programmatisch ein Template darüberbügeln oder gleich NotesDatabase.CreateFromTemplate verwenden,

Wozu gibt es dann die NotesDatabase.Create Methode wenn man die DB anschließend nicht verwenden kann? Kann ich programmatisch mit LotusScript Ansichten anlegen?

Zu Frage 1: Einerseits siehe oben (Arbeiten mit Templates à la FrontEnd). Andererseits: Es kann durchaus Sinn machen, DBs ohne Design-Elemente zu haben - wenn man diese eigentlich gar nicht braucht. Ich arbeite durchaus mit solchen Konstrukten (Notes-DBs als reine Datenspeicher).
Zu Frage 2: Nein, Du kannst mit Bordmitteln das Design unter R5 nicht beeinflussen. Es ginge zwar (API), aber das ist nicht trivial.

Bevor wir jetzt alle rätseln: Was willst Du eigentlich erreichen ? Das wäre interessant zu erfahren (und leichter zu beantworten).

Bernhard

Offline baumi78

  • Aktives Mitglied
  • ***
  • Beiträge: 124
  • Ich liebe dieses Forum!
Re: NotesDatabase.create Problem
« Antwort #2 am: 12.10.05 - 16:55:46 »
Hallo Bernhard,

vielen Dank für deine schnelle Antwort. Also ich brauche die Datenbank auch nur als Datenspeicher, dass mit den Ansichten Erstellen habe ich nur nachgefragt, weil ich dachte das das Problem (DB kann man nicht öffnen) daran liegt. Über die API Ansichten zu erstellen ist mir zu heftig.

Woran liegt es das diese Fehlermeldung kommt, leigt es daran das die DB gar keine Ansichten hat?

Ziel ist es eine DB zu erstellen (ohne Design), dann kopiere ich Dokumente hinein (die ich später wieder "entnehmen" möchte) und versende die DB als Anhang einer Mail.

Grüße Baumi


Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re: NotesDatabase.create Problem
« Antwort #3 am: 12.10.05 - 17:14:45 »
Aber das steht doch in der DesignerHelp:
Zitat
Because the new database is not based on a template, it's blank and does not contain any forms or views.

Bernhard

Offline baumi78

  • Aktives Mitglied
  • ***
  • Beiträge: 124
  • Ich liebe dieses Forum!
Re: NotesDatabase.create Problem
« Antwort #4 am: 12.10.05 - 17:25:59 »
Ja ja,ich hab die Designerhilfe ja gelesen. Wie benutzt du denn diese Datenbanken die du als Datenträger verwendest? Wie kommst du an die Dokumente ran? Programmatisch oder wie?? Irgendwie reden wir ein bisschen aneinander vorbei.

Also ich habe eine Datenbank die auch mit Dokumenten gefüllt ist, an die Dokumente komme ich aber nie wieder ran, weil die Datenbank keine Ansichten hat und sich deshalb? nicht öffnen lässt????

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re: NotesDatabase.create Problem
« Antwort #5 am: 12.10.05 - 17:29:38 »
Willst Du denn an Dokumente via FrontEnd heran ?? Na, dann musst Du für die neue DB schon ein Template mit den erforderlichen Designelementen bereitstellen ...

Wenn nur via Backend (aber das erscheint mir bei Deinen Fragen jetzt doch eher unwahrscheinlich ...): Da brauchst Du doch keine Views etc., um auf die von Dir zum Kopieren in die "nackernde" DB) ausgewählten Docs zuzugreifen ...

Beschreib' mal bitte etwas genauer, was Du überhaupt bezwecken willst.

Bernhard

Offline baumi78

  • Aktives Mitglied
  • ***
  • Beiträge: 124
  • Ich liebe dieses Forum!
Re: NotesDatabase.create Problem
« Antwort #6 am: 13.10.05 - 10:32:19 »
Hallo Berhard,

vielen Dank für die Info. hilft mir schon weiter. Ist ja eigentlich auch logisch, das man Dokumente nicht mit dem Front End öffnen kann wenn man keine Gestaltung mit gibt.

Ansonsten der Sinn der ganzen Geschichte, wie schon oben kurz beschrieben:

Wir haben eine Anwendung die die Konfiguration als Notes Dokumente abspeichert. Nun möchte ich dem Benutzer der sich mit Notes eventuell nicht gut auskennen ersparen die Dokumente per Hand in eine "Trägerdatenbank zu kopieren". Deshalb erstelle ich eine Aktion (Script) die dann folgendes können soll:

Neue DB erstellen, benötigten Dokumente zusammensuchen und in neue DB kopieren, Mail öffnen und DB anhängen (Benutzer soll dann nur noch die Mail abschicken müssen.

Soweit so gut, wenn ich der Datenbank eine Gestaltung gebe (createcopy oder createfromtemplate) dann ist sie schon kanpp über 3 MB groß, deshalb wollte ich nur einen Datenbankrumpf nutzen und werde nun einfach noch eine weitere Aktion erstellen, welche mir die Konfigurationsdokumente aus dem vom Kunden zurückgesendeten DB wieder in meine DB mit Gestaltung einliest (übers BackEnd sollte das kein Problem sein).

Kann man mit NotesDatabase.Create auch eine bestehende DB überschreiben?? Das klappt wohl nicht, deshalblösche ich jetzt nach Rückfrage eine eventuell schon bestehende DB (beim nächsten Ausführen der Aktion).

Probleme gibt es im Moment nur noch mit der Propertie FilePath, wenn ich eine bestehende DB öffne und FilePath verwende (um später das Attachement anzuhängen), liefert die Eigenschaft mir den korrekten absoluten Pfad auf die DB in meinem lokalen Datenverzeichnis, also C:\Lotus\Notes\Data\Konfiguartion.nsf. Wenn ich aber die DB neu erstelle, dann liefert mir FilePath nur einen relativen Pfad also Konfiguration.nsf. Hast du vielleicht eine Idee warum sich das so unterschiedlich verhält? Anbei noch der Code:

Code

If (ConfigDatabase.isopen) Then
		
		myMsg="Datenbank Konfiguration existiert bereits wenn sie fortfahren wird die Datenbank überschrieben"
		myconfirm = Msgbox (myMsg, MB_OKCANCEL, "Konfiguration speichern" )
		If myconfirm=False Then
			Exit Function
		End If
		
		Call ConfigDatabase.Remove
		
End If
	
	Messagebox( "Datenbank Konfiguration wird angelegt...")

	
	Set ConfigDatabase=New NotesDatabase("","Konfiguration.nsf")
	If (ConfigDatabase.isopen) Then
		Msgbox("Datenbank wurde nicht korrekt gelöscht")
	End If
	
	Call ConfigDatabase.Create( "", "Konfiguration.nsf", True)
	ConfigDatabase.Title = "Konfiguration"
	
	myFilePath=ConfigDatabase.FilePath
	
	Messagebox(myFilePath)


Grüße Baumi

Offline baumi78

  • Aktives Mitglied
  • ***
  • Beiträge: 124
  • Ich liebe dieses Forum!
Re: NotesDatabase.create Problem
« Antwort #7 am: 13.10.05 - 11:20:43 »
Okay das mit dem NotesDatabase.FilePath funktioniert jetzt, allerdings muss ich nach dem Aufruf der create Methode das Objekt mit NotesDatabase.Close (Funktion ist in 5'er Designer Hilfe gar nicht dokumentiert??) noch einmal schließen und mir das Objekt noch einmal holen, danach liefert mir FilePath den erwarteten Wert (den absoluten Pfad).

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz