Barcodes

QRCodeGenerate#

Über die Aktion QRCodeGenerate wird ein QR Code mit beliebigem Inhalt erzeugt und als Bilddatei gespeichert. Das Ausgabeformat wird automatisch über die Dateiendung gesteuert: .png erzeugt ein Rasterbild, .svg eine skalierbare Vektorgrafik (ideal für Druck).

<QRCodeGenerate Content="" OutputFile="" EccLevel="Q" PixelSize="20" DarkColor="#000000" LightColor="#FFFFFF" Condition="" Variable="{@Result}" IgnoreError="false" />

Attribute:

  • Content: Der zu kodierende Inhalt ? beliebiger Text, URL, Nummer oder strukturierter Payload.
  • OutputFile: Pfad zur Ausgabedatei. Dateiendung bestimmt das Format: .png (Rasterbild) oder .svg (Vektorgrafik). Das Verzeichnis wird automatisch angelegt wenn es nicht existiert.
  • EccLevel: Fehlerkorrektur-Level. L (7%), M (15%), Q (25%, Standard), H (30%). Höher = robuster gegen Beschädigungen, aber größerer Code.
  • PixelSize: Größe eines einzelnen QR-Moduls in Pixel (Standard: 20). Bei SVG bestimmt dieser Wert die Skalierung.
  • DarkColor: Vordergrundfarbe als Hex-Wert (Standard: #000000).
  • LightColor: Hintergrundfarbe als Hex-Wert (Standard: #FFFFFF).
  • Variable: (Optional) Variable, in der gespeichert wird, ob die Aktion erfolgreich war (true oder false).
  • IgnoreError: (Optional) Gibt an, ob Fehler ignoriert werden sollen (true oder false, Standardwert: false).

Beispiel: Einfacher URL QR Code

<QRCodeGenerate Content="https://www.firma.de" OutputFile="C:\QR\firma.png" />

Beispiel: Individuell farbig für Corporate Design

<QRCodeGenerate Content="{@ArtikelNummer}"
                OutputFile="C:\QR\Artikel_{@ID}.png"
                EccLevel="H"
                PixelSize="10"
                DarkColor="#1a3a6b"
                LightColor="#f5f5f5" />

Beispiel: SVG für druckfähige Qualität

<QRCodeGenerate Content="{@ArtikelNummer}"
                OutputFile="C:\QR\Artikel_{@ID}.svg"
                EccLevel="Q"
                PixelSize="5" />

 

QRCodeGenerateBase64#

Über die Aktion QRCodeGenerateBase64 wird ein QR Code erzeugt und als Base64-String in der Variable gespeichert. Dieser String kann direkt in HTML-Berichten als Bildquelle verwendet werden.

<QRCodeGenerateBase64 Content="" EccLevel="Q" PixelSize="20" Condition="" Variable="{@QrBase64}" IgnoreError="false" />

Attribute:

  • Content: Der zu kodierende Inhalt.
  • EccLevel: Fehlerkorrektur-Level. L, M, Q (Standard), H.
  • PixelSize: Größe eines QR-Moduls in Pixel (Standard: 20).
  • Variable: Variable, in der der Base64-String gespeichert wird.
  • IgnoreError: (Optional) Gibt an, ob Fehler ignoriert werden sollen (true oder false, Standardwert: false).

Beispiel: QR Code in HTML-Report einbetten

<QRCodeGenerateBase64 Content="{@ArtikelNummer}" Variable="{@QrBase64}" />
<!-- Verwendung in HTML-Template: <img src="data:image/png;base64,{@QrBase64}"> -->

 

QRCodeGenerateGirocode#

Über die Aktion QRCodeGenerateGirocode wird ein Girocode QR Code nach dem europäischen EPC-Standard erzeugt. Dieser wird von allen gängigen Banking-Apps (Sparkasse, Volksbank, Deutsche Bank, ING usw.) gescannt und öffnet direkt eine vorausgefüllte SEPA-Überweisung.

<QRCodeGenerateGirocode Iban="" Bic="" Name="" Amount="" OutputFile="" Reference="" Information="" EccLevel="M" PixelSize="20" Condition="" Variable="{@Result}" IgnoreError="false" />

Attribute:

  • Iban: IBAN des Empfängers (nur IBAN erlaubt, keine Kontonummer).
  • Bic: BIC der Empfängerbank.
  • Name: Name des Empfängers (max. 70 Zeichen).
  • Amount: Betrag der Überweisung in Euro als Dezimalzahl (z. B. 123.45). Muss zwischen 0.01 und 999999999.99 liegen.
  • OutputFile: Pfad zur Ausgabedatei (PNG).
  • Reference: (Optional) Verwendungszweck (unstrukturiert, max. 140 Zeichen).
  • Information: (Optional) Zusätzliche Information für den Auftraggeber (max. 70 Zeichen).
  • EccLevel: Fehlerkorrektur-Level (Standard: M). Für Girocode wird M empfohlen.
  • PixelSize: Größe eines QR-Moduls in Pixel (Standard: 20). Für Druck auf Rechnungen empfiehlt sich 5 bis 8.
  • Variable: (Optional) Variable, in der gespeichert wird, ob die Aktion erfolgreich war.
  • IgnoreError: (Optional) Gibt an, ob Fehler ignoriert werden sollen (true oder false, Standardwert: false).

Beispiel: SEPA-QR auf Rechnung

<QRCodeGenerateGirocode Iban="DE89370400440532013000"
                         Bic="COBADEFFXXX"
                         Name="Muster GmbH"
                         Amount="{@Betrag}"
                         Reference="Rechnung {@RechnungNummer}"
                         OutputFile="C:\QR\Rechnung_{@ID}_giro.png"
                         PixelSize="6" />

 

QRCodeGenerateWifi#

Über die Aktion QRCodeGenerateWifi wird ein WiFi QR Code erzeugt. Beim Scannen mit einem Smartphone werden die WLAN-Zugangsdaten automatisch übernommen ? kein manuelles Eintippen des Passworts.

<QRCodeGenerateWifi Ssid="" Password="" OutputFile="" AuthType="WPA" Hidden="false" EccLevel="Q" PixelSize="20" Condition="" Variable="{@Result}" IgnoreError="false" />

Attribute:

  • Ssid: Name des WLAN-Netzwerks (SSID).
  • Password: WLAN-Passwort. Bei AuthType="nopass" leer lassen.
  • OutputFile: Pfad zur Ausgabedatei (PNG).
  • AuthType: Authentifizierungstyp. WPA (Standard, WPA/WPA2/WPA3), WEP, nopass (offenes Netz).
  • Hidden: true wenn das Netzwerk versteckt ist (SSID wird nicht ausgestrahlt). Standard: false.
  • EccLevel: Fehlerkorrektur-Level (Standard: Q).
  • PixelSize: Größe eines QR-Moduls in Pixel (Standard: 20).
  • Variable: (Optional) Variable, in der gespeichert wird, ob die Aktion erfolgreich war.
  • IgnoreError: (Optional) Gibt an, ob Fehler ignoriert werden sollen (true oder false, Standardwert: false).

Beispiel: Gäste-WLAN QR Code

<QRCodeGenerateWifi Ssid="{@WifiGaesteSsid}"
                    Password="{@WifiGaestePasswort}"
                    OutputFile="C:\QR\wifi_gaeste.png"
                    AuthType="WPA"
                    PixelSize="8" />

 

QRCodeGenerateVCard#

Über die Aktion QRCodeGenerateVCard wird ein Kontakt-QR Code (vCard oder MeCard) erzeugt. Beim Scannen wird der Kontakt direkt ins Adressbuch des Smartphones übernommen.

<QRCodeGenerateVCard Firstname="" Lastname="" OutputFile="" Email="" Phone="" MobilePhone="" Company="" Title="" Website="" Street="" Zip="" City="" Country="" OutputType="vCard4" EccLevel="Q" PixelSize="20" Condition="" Variable="{@Result}" IgnoreError="false" />

Attribute:

  • Firstname: Vorname.
  • Lastname: Nachname.
  • OutputFile: Pfad zur Ausgabedatei (PNG).
  • Email: (Optional) E-Mail-Adresse.
  • Phone: (Optional) Festnetznummer.
  • MobilePhone: (Optional) Mobilnummer.
  • Company: (Optional) Firmenname.
  • Title: (Optional) Berufsbezeichnung / Titel.
  • Website: (Optional) Webseite.
  • Street: (Optional) Straße und Hausnummer.
  • Zip: (Optional) Postleitzahl.
  • City: (Optional) Stadt.
  • Country: (Optional) Land (z. B. DE).
  • OutputType: Format der Kontaktdaten. vCard4 (Standard), vCard3, MeCard.
  • EccLevel: Fehlerkorrektur-Level (Standard: Q).
  • PixelSize: Größe eines QR-Moduls in Pixel (Standard: 20).
  • Variable: (Optional) Variable, in der gespeichert wird, ob die Aktion erfolgreich war.
  • IgnoreError: (Optional) Gibt an, ob Fehler ignoriert werden sollen (true oder false, Standardwert: false).

Beispiel: Visitenkarten-QR aus Datenbank

<SQLReadData Data="{@Mitarbeiter}" Query="SELECT * FROM Mitarbeiter WHERE ID={@ID}"
             Connection="{@myConn}" />
<QRCodeGenerateVCard Firstname="{@Data:Vorname}"
                     Lastname="{@Data:Nachname}"
                     Email="{@Data:Email}"
                     Phone="{@Data:Telefon}"
                     MobilePhone="{@Data:Mobil}"
                     Company="Muster GmbH"
                     Title="{@Data:Position}"
                     Website="https://www.firma.de"
                     City="Berlin" Country="DE"
                     OutputFile="C:\QR\Kontakt_{@ID}.png"
                     PixelSize="6" />

 

QRCodeGenerateUrl#

Über die Aktion QRCodeGenerateUrl wird ein URL QR Code erzeugt. Im Gegensatz zu QRCodeGenerate mit direktem URL-Text wird hier der Payload korrekt als URL-Typ formatiert.

<QRCodeGenerateUrl Url="" OutputFile="" EccLevel="Q" PixelSize="20" Condition="" Variable="{@Result}" IgnoreError="false" />

Attribute:

  • Url: Die vollständige URL inkl. Schema (z. B. https://www.firma.de).
  • OutputFile: Pfad zur Ausgabedatei (PNG).
  • EccLevel: Fehlerkorrektur-Level (Standard: Q).
  • PixelSize: Größe eines QR-Moduls in Pixel (Standard: 20).
  • Variable: (Optional) Variable, in der gespeichert wird, ob die Aktion erfolgreich war.
  • IgnoreError: (Optional) Gibt an, ob Fehler ignoriert werden sollen (true oder false, Standardwert: false).

Beispiel:

<QRCodeGenerateUrl Url="https://www.firma.de/produkte/{@ArtikelNummer}"
                   OutputFile="C:\QR\url_{@ID}.png" />

 

QRCodeGenerateEmail#

Über die Aktion QRCodeGenerateEmail wird ein E-Mail QR Code erzeugt. Beim Scannen öffnet sich die Mail-App des Smartphones mit vorausgefüllten Feldern.

<QRCodeGenerateEmail EmailAddress="" OutputFile="" Subject="" Body="" EccLevel="Q" PixelSize="20" Condition="" Variable="{@Result}" IgnoreError="false" />

Attribute:

  • EmailAddress: Die E-Mail-Adresse des Empfängers.
  • OutputFile: Pfad zur Ausgabedatei (PNG).
  • Subject: (Optional) Betreffzeile der E-Mail.
  • Body: (Optional) Vorausgefüllter E-Mail-Text.
  • EccLevel: Fehlerkorrektur-Level (Standard: Q).
  • PixelSize: Größe eines QR-Moduls in Pixel (Standard: 20).
  • Variable: (Optional) Variable, in der gespeichert wird, ob die Aktion erfolgreich war.
  • IgnoreError: (Optional) Gibt an, ob Fehler ignoriert werden sollen (true oder false, Standardwert: false).

Beispiel: Feedback-QR auf Lieferschein

<QRCodeGenerateEmail EmailAddress="[email protected]"
                     Subject="Feedback Lieferung {@LieferscheinNummer}"
                     OutputFile="C:\QR\feedback_{@ID}.png" />

 

QRCodeGenerateSms#

Über die Aktion QRCodeGenerateSms wird ein SMS QR Code erzeugt. Beim Scannen öffnet sich die SMS-App des Smartphones mit vorausgefüllter Nummer und optionalem Text.

<QRCodeGenerateSms PhoneNumber="" OutputFile="" Message="" EccLevel="Q" PixelSize="20" Condition="" Variable="{@Result}" IgnoreError="false" />

Attribute:

  • PhoneNumber: Telefonnummer des Empfängers im internationalen Format (z. B. +4915112345678).
  • OutputFile: Pfad zur Ausgabedatei (PNG).
  • Message: (Optional) Vorausgefüllter SMS-Text.
  • EccLevel: Fehlerkorrektur-Level (Standard: Q).
  • PixelSize: Größe eines QR-Moduls in Pixel (Standard: 20).
  • Variable: (Optional) Variable, in der gespeichert wird, ob die Aktion erfolgreich war.
  • IgnoreError: (Optional) Gibt an, ob Fehler ignoriert werden sollen (true oder false, Standardwert: false).

Beispiel:

<QRCodeGenerateSms PhoneNumber="+49800123456"
                   Message="Ich benötige Unterstützung zu Auftrag {@AuftragNummer}"
                   OutputFile="C:\QR\support_sms.png" />

 

QRCodeGenerateCalendarEvent#

Über die Aktion QRCodeGenerateCalendarEvent wird ein Kalendertermin QR Code (iCal/vEvent) erzeugt. Beim Scannen wird der Termin direkt in die Kalender-App des Smartphones übernommen.

<QRCodeGenerateCalendarEvent Subject="" StartDateTime="" EndDateTime="" OutputFile="" Location="" Description="" AllDay="false" EccLevel="Q" PixelSize="20" Condition="" Variable="{@Result}" IgnoreError="false" />

Attribute:

  • Subject: Titel des Termins.
  • StartDateTime: Startdatum und -uhrzeit (z. B. 2025-06-15 09:00 oder {@DatumVon}).
  • EndDateTime: Enddatum und -uhrzeit (z. B. 2025-06-15 10:30 oder {@DatumBis}).
  • OutputFile: Pfad zur Ausgabedatei (PNG).
  • Location: (Optional) Ort des Termins.
  • Description: (Optional) Beschreibung / Notizen zum Termin.
  • AllDay: true für ganztägige Termine, false (Standard) für Termine mit Uhrzeit.
  • EccLevel: Fehlerkorrektur-Level (Standard: Q).
  • PixelSize: Größe eines QR-Moduls in Pixel (Standard: 20).
  • Variable: (Optional) Variable, in der gespeichert wird, ob die Aktion erfolgreich war.
  • IgnoreError: (Optional) Gibt an, ob Fehler ignoriert werden sollen (true oder false, Standardwert: false).

Beispiel: Wartungstermin auf Lieferschein

<QRCodeGenerateCalendarEvent
    Subject="Wartung {@ArtikelBezeichnung}"
    StartDateTime="{@WartungDatum} 08:00"
    EndDateTime="{@WartungDatum} 10:00"
    Location="Halle 3, Maschine {@MaschinenNummer}"
    Description="Bitte Servicehandbuch bereithalten."
    OutputFile="C:\QR\Termin_{@ID}.png" />

 

QRCodeGeneratePhoneNumber#

Über die Aktion QRCodeGeneratePhoneNumber wird ein Telefonnummer QR Code erzeugt. Beim Scannen öffnet sich die Wähltastatur des Smartphones mit vorausgefüllter Nummer.

<QRCodeGeneratePhoneNumber PhoneNumber="" OutputFile="" EccLevel="Q" PixelSize="20" Condition="" Variable="{@Result}" IgnoreError="false" />

Attribute:

  • PhoneNumber: Telefonnummer im internationalen Format (z. B. +4989123456).
  • OutputFile: Pfad zur Ausgabedatei (PNG).
  • EccLevel: Fehlerkorrektur-Level (Standard: Q).
  • PixelSize: Größe eines QR-Moduls in Pixel (Standard: 20).
  • Variable: (Optional) Variable, in der gespeichert wird, ob die Aktion erfolgreich war.
  • IgnoreError: (Optional) Gibt an, ob Fehler ignoriert werden sollen (true oder false, Standardwert: false).

Beispiel:

<QRCodeGeneratePhoneNumber PhoneNumber="+498001234567"
                            OutputFile="C:\QR\hotline.png"
                            PixelSize="8" />

 

QRCodeGenerateWhatsApp#

Über die Aktion QRCodeGenerateWhatsApp wird ein WhatsApp QR Code erzeugt. Beim Scannen öffnet sich WhatsApp mit einem vorausgefüllten Chat an die angegebene Nummer.

<QRCodeGenerateWhatsApp PhoneNumber="" OutputFile="" Message="" EccLevel="Q" PixelSize="20" Condition="" Variable="{@Result}" IgnoreError="false" />

Attribute:

  • PhoneNumber: Telefonnummer im internationalen Format ohne + oder führende Nullen (z. B. 4915112345678).
  • OutputFile: Pfad zur Ausgabedatei (PNG).
  • Message: (Optional) Vorausgefüllter Nachrichtentext.
  • EccLevel: Fehlerkorrektur-Level (Standard: Q).
  • PixelSize: Größe eines QR-Moduls in Pixel (Standard: 20).
  • Variable: (Optional) Variable, in der gespeichert wird, ob die Aktion erfolgreich war.
  • IgnoreError: (Optional) Gibt an, ob Fehler ignoriert werden sollen (true oder false, Standardwert: false).

Beispiel: WhatsApp-Support QR

<QRCodeGenerateWhatsApp PhoneNumber="4915112345678"
                         Message="Hallo, ich habe eine Frage zu Auftrag {@AuftragNummer}"
                         OutputFile="C:\QR\whatsapp_support.png" />