Seit längerem schlage ich mich rum mit einem Problem:
ich habe eine System- Schablone (Teamroom, Reservierungen, etc.) in einem multilingual installierten Server.
Wenn man aus dieser Schablone eine Datenbank generiert, dann hat die Datenbank immer alle verfügbaren Sprachen, anstatt zu Fragen (wie bei der Mail): Welche Sprache möchtest Du denn haben wie im angefügten Bild.
Nun hatte ich die Schnauze voll und habe mal eine Mail- Datenbank auf HERZ UND NIEREN geprüft, um herauszufinden, wo die Sprachwahl versteckt ist.
Und Ihr werdet es nicht glauben: Sie steckt im Design- Element für das Datenbank- Symbol....
Im Feld "$LANGUAGE" des Design- Elements stehen alle zur Verfügung stehenden Sprachen.
Wenn Ihr also eine Datenbank manuell mehrsprachig machen wollt, dann müsst Ihr nur alle Design- Elemente mehrsprachig halten und dann folgende Schritte durchführen:
1. Datenbanksymbol- Eigenschaften öffnen und die UNID auslesen (das könnt Ihr auch per NotesPEEK machen, da könnt Ihr die UNID gleich kopieren.
2. Einen Agenten schreiben, der folgenden Code enthält:
Dim ses As New NotesSession
Dim db As NotesDatabase
Dim doc As NotesDocument
Dim langs( 1 ) As String
Set db = ses.CurrentDatabase
Set doc = db.GetDocumentByUNID( "325BE77F5A822FF3C1256F970036D9BB" )
langs( 0 ) = "en"
langs( 1 ) = "de"
Call doc.ReplaceItemValue( "$LANGUAGE" , langs )
Call doc.Save( True, True )
Fertig...
gegebenenfalls kommt man über die Datenbank- Design Klasse auch ohne abschreiben der ID an das Design- Dokument, aber das war mir jetzt zu aufwändig, das zu testen.
EDIT:
Das mit dem Automatismus klappt wirklich.
Use "DBDesign" '<<<- diese Scriptlib gibts in der Sandbox
Dim ses As New NotesSession
Dim db As NotesDatabase
Dim dbdesign As DatabaseDesign
Dim doc As notesdocument
Dim ret As Variant
Dim langs( 1 ) As String
Set db = ses.CurrentDatabase
Set dbDesign = createDatabaseDesign( db)
ret = dbDesign.IconDocuments
Set doc = ret( 0 )
langs( 0 ) = "en"
langs( 1 ) = "de"
Call doc.ReplaceItemValue( "$LANGUAGE" , langs )
Call doc.Save( True, True )
Vielleicht braucht's ja mal jemand...
Gruß
Tode