Get Newsletter From Db
Zuletzt geändert: 14.03.2026 05:56

Get-NewsletterFromDb #

ÜBERSICHT #

Lädt einen Newsletter aus der EULANDA-Datenbank (dbo.Brief) und liefert den Markdown-Text zurück.

SYNTAX #

Get-NewsletterFromDb [-Conn] <__ComObject> [-Name] <string> [[-TableName] <string>] [[-SchemaName]
    <string>] [[-NameColumn] <string>] [[-MemoColumn] <string>] [-AsRtf] [[-StartAtFrontmatter]
    <bool>] [[-NormalizeSpaces] <bool>] [-TrimEnd] [<CommonParameters>]

BESCHREIBUNG #

Liest aus dbo.Brief die Spalte Memo anhand des Brief-Namens (Spalte Name). Wenn der Inhalt RTF ist (enthält ‘{\rtf’), wird er über ConvertFrom-RtfText in reinen Text umgewandelt. Standardmäßig wird alles vor der ersten ‘—’ Zeile abgeschnitten (Frontmatter-Start), und geschützte Leerzeichen werden zu normalen Leerzeichen normalisiert.

PARAMETER #

-Conn #

Type: __ComObject

Offene ADODB-Verbindung zur EULANDA-Datenbank.

-Name #

Type: string

Name des Newsletters in dbo.Brief.Name (z.B. ‘Newsletter: Januar 2026’).

-TableName #

Type: string
Default: 'Brief'

Tabellenname, Standard ‘Brief’.

-SchemaName #

Type: string
Default: 'dbo'

Schema, Standard ‘dbo’.

-NameColumn #

Type: string
Default: 'Name'

Spaltenname für den Namen, Standard ‘Name’.

-MemoColumn #

Type: string
Default: 'Memo'

Spaltenname für den Inhalt, Standard ‘Memo’.

-AsRtf #

Type: switch

Wenn gesetzt, wird der Rohinhalt (RTF/Text) zurückgegeben, ohne Umwandlung.

-StartAtFrontmatter #

Type: bool
Default: $true

Wenn true (Standard), wird nach dem Konvertieren alles vor der ersten Zeile ‘—’ entfernt.

-NormalizeSpaces #

Type: bool
Default: $true

Wenn true (Standard), werden NBSP und ähnliche Whitespaces in normale Leerzeichen umgewandelt.

-TrimEnd #

Type: switch

Wenn gesetzt, werden am Ende überflüssige Whitespaces/Zeilenumbrüche entfernt.

AUSGABEN #

System.String

BEISPIELE #

# Newsletter aus DB laden und direkt an Send-Newsletter übergeben
$mdText = Get-NewsletterFromDb -Conn $conn -Name 'Newsletter: Januar 2026'
Send-Newsletter -Conn $conn -DataPath '.\database' -MarkdownText $mdText -TestOnly -TestTo 'cn@outlook.de' -Verbose
# Roh-RTF aus DB holen (zum Debuggen)
$rtf = Get-NewsletterFromDb -Conn $conn -Name 'Newsletter: Januar 2026' -AsRtf