In unserem Podcast diskutiert Thomas Bahn über Nutzen, Anwendungen und Erfahrungen aus den Bereichen Chatbots und Künstliche Intelligenz. Mehr erfahren

de · en

SnTT: Feststellen, ob das Design einer Datenbank verborgen ist

von Bernd,
assono GmbH, Standort Hamburg,

Letztens musste ich herausfinden, ob das Design einer Datenbank Anwendung verborgen ist. Leider gibt es in LotusScript keine Eigenschaft, die man einfach abfragen könnte. Die Lösung, die schließlich funktioniert hat, setzt auf DXL.

Der Trick besteht darin, dass ein DXL-Export einer Datenbank Anwendung mit verborgenem Design nur die Basisinformationen über die Datenbank Anwendung aber keine Designelemente enthält. Anschließend muss man nur noch suchen, ob es einen Eintrag für eine Maske "<form>" gibt. Wenn kein Eintrag vorhanden ist, ist das Design wohl verborgen. (Abgesehen von Notes Datenbanken Anwendungen die keine Maske enthalten. Aber die kann man wohl vernachlässigen.)

Function isDesignHidden(db As NotesDatabase) As Boolean

On Error Goto err_handler

Dim session As New NotesSession
Dim DXLExporter As NotesDXLExporter
Dim ncl As NotesNoteCollection
Dim dxlOutput As String


'Input
Set ncl = db.CreateNoteCollection(False)
ncl.SelectForms = True
Call ncl.BuildCollection

Set DXLExporter = session.CreateDXLExporter
DXLExporter.ExitOnFirstFatalError = True
dxlOutput = DXLExporter.Export(ncl)

If Instr(1, dxlOutput, "<form", 1) <> 0 Then
isDesignHidden = False
Else
isDesignHidden = True
End If

Exit Function
err_handler:

Messagebox "Upps! There was an error." & Chr$(10) & Chr$(10) & _
"Procedure: " & Getthreadinfo(1) & Chr$(10) & _
"Error nr.: " & Cstr(Err) & " / Line: " & Cstr(Erl) & Chr$(10) & _
Error, 16, "Error"

Resume err_resume

err_resume:
End
End Function

Statt das DXL zu parsen, wird einfach mit Instr gesucht, ob der String "<form" vorhanden ist. Da mit dem DXL anschließend nicht weiter gearbeitet werden soll, ist dieses die schnellste Methode.

Fachbeitrag HCL Notes HCL Notes Traveler Entwicklung

Sie haben Fragen zu diesem Artikel? Kontaktieren Sie uns gerne: blog@assono.de

Sie haben Interesse an diesem Thema?

Gerne bieten wir Ihnen eine individuelle Beratung oder einen Workshop an.

Kontaktieren Sie uns

Weitere interessante Artikel

Sie haben Fragen?

Wenn Sie mehr über unsere Angebote erfahren möchten, können Sie uns jederzeit kontaktieren. Gerne erstellen wir eine individuelle Demo für Sie.

assono GmbH

Standort Kiel (Zentrale)
assono GmbH
Lise-Meitner-Straße 1–7
24223 Schwentinental

Standort Hamburg
assono GmbH
Bornkampsweg 58
22761 Hamburg

Telefonnummern:
Zentrale: +49 4307 900 416
Vertrieb: +49 4307 900 402

E-Mail-Adressen:
kontakt@assono.de
bewerbung@assono.de