OK; habs gefunden. Ist zwar ein "ReplaceDesign", aber das ist ja wurscht, wenn man das gleiche Template übergibt
Option Public
Option Declare
' Notes functions
Declare Function NSFDbOpen Lib "nnotes.dll" Alias "NSFDbOpen" ( Byval filename As String, hdb As Long ) As Integer
Declare Function NSFDbClose Lib "nnotes.dll" Alias "NSFDbClose" ( Byval hdb As Long ) As Integer
Declare Function DesignReplace Lib "nnotes.dll" Alias "DesignReplace" ( Byval ht As Long, Byval hdb As Long, Byval dw1 As Long, Byval dw2 As Long, Byval dw3 As Long, Byval dw4 As Long ) As Integer
Sub ReplaceDesign( tpl As NotesDatabase, db As NotesDatabase )
Dim source As String
Dim target As String
Dim status As Integer
Dim ht As Long
Dim hdb As Long
' open source (template) database
If tpl.Server="" Then
source=tpl.FilePath
Else
source=tpl.Server & "!!" & tpl.FilePath
End If
status=NSFDbOpen( source, ht )
If status<>0 Then Error 1, "Failed to open " & source & " (error code=" & status & ")"
' open target database
If db.Server="" Then
target=db.FilePath
Else
target=db.Server & "!!" & db.FilePath
End If
status=NSFDbOpen( target, hdb )
If status<>0 Then
NSFDbClose ht
Error 1, "Failed to open " & target & " (error code=" & status & ")"
End If
' perform the design replacement
status=DesignReplace( ht, hdb, 0, 1, 0, 0 )
NSFDbClose ht
NSFDbClose hdb
If status<>0 Then Error 1, "Error during replace design (error code=" & status & ")"
End Sub
eknori