Neu JTL Datenbank -> Bilderspeicher auslesen

Marc Völker

Moderator
Mitarbeiter
15. April 2014
1.915
215
Hürth
Einfach nur Binär.
Das eigentliche Bildformat wird nicht umgewandelt. Sollte also noch png oder jpeg sein.
Kann man aber meistens am Hash auch erkennen, da das Bildformat dort mit rein geschrieben wird.
 

MirkoWK

Sehr aktives Mitglied
14. März 2022
833
305
Hi,

ich greife das mal wieder auf, da ich aktuelle keine Lösung dafür habe, wie man bBild in das img-Tag einer HTML-Mail ( Druckvorlagen) einbauen kann.
Geht das überhaupt? Hat da jemand schon Erfahrungen dazu, welche er teilen kann?

Viele Grüße
Mirko
 

John

Sehr aktives Mitglied
3. März 2012
4.203
1.079
Berlin
Ui, das ist doch mal eine Herausforderung.
Das Problem dürfte weniger das Auslesen aus der Datenbank als das anfügen/einbinden des Bilder in die eMail sein. Dafür fällt mich auch nichts ein.
 

MirkoWK

Sehr aktives Mitglied
14. März 2022
833
305
Hi,

das ist mein aktueller Stand - das erste img ist das mit Daten aus der DB, das zweite ein Beispiel aus dem Internet. Letzteres funktioniert sogar:
SQL:
{%- capture query -%}
SELECT
    b.bBild
FROM
    tArtikel a
    LEFT JOIN tArtikelbildPlattform bp ON bp.kArtikel = a.kArtikel AND bp.kShop = 4 AND bp.nNr = 1
    LEFT JOIN tbild b ON b.kBild = bp.kBild
WHERE
    a.cArtNr = 'A00001426'
{%- endcapture -%}
{%- assign result = query | DirectQueryScalar -%}
<html>
    <body>
        <img src = "data:image/jpeg;base64, {{result}}" />
        <img src = "data:image/gif;base64, R0lGODlhCAAFAIABAMaAgP///yH5BAEAAAEALAAAAAAIAAUAAAIKBBKGebzqoJKtAAA7" />
    </body>
</html>

Das Ergebnis der Abfrage ist auch anders, als wenn ich es zb im Management Studio aufrufe.
Hier ein Vergleich der ersten 20 Zeichen:
JTL: 25521625522401674707
DB: 0xFFD8FFE000104A4649

Woran könnte das liegen?
Aber auch mit dem Einsetzen des Textes aus der DB in das img-Tag klappt es nicht.

Ist es denn überhaupt Base64 encodiert?

Aktuell schreiben wir nach Anlage und Übertragung von Artikeln zum Shopware- Shop die Live-Bild-URL per UPDATE in das cQuelle Feld in tBild je Artikel. So haben wir dann die URL für die HTML-Mail, aber das ist echt nervig ;).

Viele Grüße
Mirko
 

mh1

Sehr aktives Mitglied
4. Oktober 2020
1.873
562
Das Ergebnis der Abfrage ist auch anders, als wenn ich es zb im Management Studio aufrufe.
Hier ein Vergleich der ersten 20 Zeichen:
JTL: 25521625522401674707
DB: 0xFFD8FFE000104A4649

Woran könnte das liegen?

Die Bilddaten werden in der Tabelle binär abgespeichert.
Wenn man solche Daten in SSMS anzeigt, wird eine hexadezimale Darstellung dieser Daten angezeigt (d.h. immer zwei Stellen nach dem eileitenden 0x ist eine hexadezimaler Wert aus dem Berich 00 bis FF. In einer dezimalen Darstellung wäre das 0 bis 255. Irgendwie müssen die Daten ja angezeigt werden.Ein Anzeigeprogramm könnte sich auch für eine binäre Darstellung entscheiden (also 0 und 1) oder für jedes Byte könnte man das entsprechende ASCII Zeichen anzeigen.....aber eine hexadezimales Byte Array macht für diesen Fall am meisten Sinn und SMSS wählt halt diese Darstellung.
In der Datenbank sind aber nicht wirklich hexadezimale Werte gespeichert, deshalb macht der obige Vergleich keinen Sinn.
 
Zuletzt bearbeitet:
  • Gefällt mir
Reaktionen: MirkoWK

MirkoWK

Sehr aktives Mitglied
14. März 2022
833
305
Die Bilddaten werden in der Tabelle binär abgespeichert.
Wenn man solche Daten in SSMS anzeigt, wird eine hexadezimale Darstellung dieser Daten angezeigt (d.h. immer zwei Stellen nach dem eileitenden 0x ist eine hexadezimaler Wert aus dem Berich 00 bis 0F. In einer dezimalen Darstellung wäre das 0 bis 255. Irgendwie müssen die Daten ja angezeigt werden.Ein Anzeigeprogramm könnte sich auch für eine binäre Darstellung entscheiden (also 0 und 1) oder für jedes Byte könnte man das entsprechende ASCII Zeichen anzeigen.....aber eine hexadezimales Byte Array macht für diesen Fall am meisten Sinn und SMSS wählt halt diese Darstellung.
In der Datenbank sind aber nicht wirklich hexadezimale Werte gespeichert, deshalb macht der obige Vergleich keinen Sinn.
Das ist schonmal sehr aufschlussreich und erklärt schonmal den Unterschied der Anzeige :thumbsup:.

Hast du eine Idee dazu, wie man es dann auch anzeigen lassen könnte?
 

kelvin.

Sehr aktives Mitglied
15. Februar 2023
168
65
Frankfurt
Versuchs es mal mit der Query. Ist zwar keine schöne Lösung, aber so müsstest du den richtigen Wert bekommen.

Code:
{%- capture query -%}
SELECT
    (SELECT b.bBild AS '*' FOR XML PATH(''))
FROM
    tArtikel a
    LEFT JOIN tArtikelbildPlattform bp ON bp.kArtikel = a.kArtikel AND bp.kShop = 4 AND bp.nNr = 1
    LEFT JOIN tbild b ON b.kBild = bp.kBild
WHERE
    a.cArtNr = 'A00001426'
{%- endcapture -%}
 
  • Gefällt mir
Reaktionen: MirkoWK

MirkoWK

Sehr aktives Mitglied
14. März 2022
833
305
Versuchs es mal mit der Query. Ist zwar keine schöne Lösung, aber so müsstest du den richtigen Wert bekommen.

Code:
{%- capture query -%}
SELECT
    (SELECT b.bBild AS '*' FOR XML PATH(''))
FROM
    tArtikel a
    LEFT JOIN tArtikelbildPlattform bp ON bp.kArtikel = a.kArtikel AND bp.kShop = 4 AND bp.nNr = 1
    LEFT JOIN tbild b ON b.kBild = bp.kBild
WHERE
    a.cArtNr = 'A00001426'
{%- endcapture -%}
Hi,

also das funktioniert :thumbsup:.

Noch eine 2 generelle Anmerkungen:
Das Laden dauert etwas beim Testen, aber die Mail wird ja erst versendet, wenn geladen.
Die Qualität des Bildes ist leider nicht so gut, wenn es wie ins unserem Fall relativ klein ist (120x90px im HTML von 1600x1200px aus der Datenbank). Ich nenne es mal Treppeneffekt ;). (Das war nur in der Vorschau so )

Viele Grüße
Mirko
 
Zuletzt bearbeitet:

mh1

Sehr aktives Mitglied
4. Oktober 2020
1.873
562
Die Daten
Super :thumbsup:
Noch eine 2 generelle Anmerkungen:
Das Laden dauert etwas beim Testen, aber die Mail wird ja erst versendet, wenn geladen.
Die Ladezeit ist von der Datenmenge in dem Feld abhängig. Vielleicht wärs ja auch mit dem Vorschaubild getan?

Die Qualität des Bildes ist leider nicht so gut, wenn es wie ins unserem Fall relativ klein ist (120x90px im HTML von 1600x1200px aus der Datenbank). Ich nenne es mal Treppeneffekt ;). (Das war nur in der Vorschau so )
Schickt ihr denn tatsächlich 1600x1200px große Bilder per Email raus?
 

MirkoWK

Sehr aktives Mitglied
14. März 2022
833
305
Ähnliche Themen
Titel Forum Antworten Datum
Neu Seit heute früh kein Start von JTL-Wawi möglich - Datenbank nicht erreichbar User helfen Usern - Fragen zu JTL-Wawi 7
Neu JTL-POS: Verkäufe vom 25.–27.08. nicht an Wawi übertragen – alte Bons erneut senden? JTL-POS - Fehler und Bugs 0
„Wer hat Lust auf einen Erfahrungsaustausch bei Kaffee und Kuchen?“ – aber mit JTL-Wawi als Dessert? Starten mit JTL: Projektabwicklung & Migration 0
Neu JTL Start (0 €): Buchung für GmbH i. G. ohne USt-IdNr. nicht möglich Allgemeine Fragen zu JTL-Shop 0
Neu JTL-Shop 5.8 - Aktuell 5.8.0 Releaseforum 0
Neu Biete: KI-gestützte Produktdatenoptimierung für JTL-Wawi (Zero-Touch, mit Faktencheck) Dienstleistung, Jobs und Ähnliches 2
Neu Suche Setup-Datei / Installer für JTL-Wawi 1.6 (1.6.48.0) JTL-Wawi 1.6 1
Neu Shopify Zahlungsarten in JTL Wawi mappen – Jemand eine Lösung? Shopify-Connector 0
Neu Selektieren aller Artikel, bei denen NICHT 'Preis aus Registerkarte JTL Wawi" eingestellt ist? User helfen Usern - Fragen zu JTL-Wawi 1
Neu JTL-POS 2.0.0.4 – TSE-Signaturexport führt reproduzierbar zum Absturz JTL-POS - Fehler und Bugs 2
Neu Erfahrungen mit DHL Paket International Premium Tarife in der JTL-Shipping-Cloud ? JTL-ShippingLabels - Ideen, Lob und Kritik 1
Wichtig GLS auf JTL Shipping 2.0 — Webinar am 17. September (Live-Walkthrough & Migration) News, Events und Umfragen 0
Neu JTL-POS DATEV-Export – Kassendifferenz nicht nur bei Mehrzweckgutscheinen JTL-POS - Fehler und Bugs 2
Neu Biete: REPMOD — Lieferantendaten (BMECat, CSV, Preislisten) automatisch als fertiger JTL-Ameise-Import Dienstleistung, Jobs und Ähnliches 6
Neu Google Shopping ... seit JTL Wawi 2.0.6 steigende Zahl nicht genehmigte Produkte (Attribut „Preis“ [[price]]) User helfen Usern - Fragen zu JTL-Wawi 9
Neu JTL-POS DATEV-Export – Kassendifferenz bei Mehrzweckgutscheinen Allgemeine Fragen zu JTL-POS 0
Neu Plugin: Infinite Scroll / „Mehr laden“ für JTL-Shop 5 – einmalige Lizenz, kein Abo Plugins für JTL-Shop 0
Neu JTL-Shop 5.5 – „Rechnung nicht beilegen“ per Workflow anhand der Auftragsposition erkennen User helfen Usern - Fragen zu JTL-Wawi 1
Neu JTL-POS 2.0.0.3 - Barcodeschema lässt sich nicht speichern / alte sind weg JTL-POS - Fehler und Bugs 9
Neu JTL POS Crasht bei Druckerauswahl JTL-POS - Fehler und Bugs 13
JTL API 2.0 Verbinden - HILFE GESUCHT JTL-Wawi 2.0 11
Neu JTL-POS 2.0.0.2 Absturz nach Tagesabschluss JTL-POS - Fehler und Bugs 5
Neu JTL POS App Speicherverbrauch hoch, obwohl Datensicherung klein JTL-POS - Fehler und Bugs 8
Neu Wie verarbeitet ihr B2B-Bestellungen aus E-Mail oder PDF in JTL-Wawi? Arbeitsabläufe in JTL-Wawi 16
Neu Fehler beim öffnen von JTL Hub JTL-ShippingLabels - Fehler und Bugs 2
Neu JTL-Wawi 2.0.6: eBay-Rahmenbedingungen bei bestehenden Angeboten/Vorlagen nicht mehr änderbar eBay-Anbindung - Fehler und Bugs 11
Neu Shipping 2.0 ist ein Grund für kleine Shops JTL zu verlassen bzw. gar nicht erst mit JTL anzufangen JTL-ShippingLabels - Ideen, Lob und Kritik 41
Neu guide.jtl-software.com seit mehreren Stunden nicht erreichbar JTL-Wawi - Fehler und Bugs 1
Neu Welche JTL-Shop Plugins oder Funktionen fehlen euch noch? – menuBuilder aktuell in Entwicklung Plugins für JTL-Shop 7
Neu Neuer JTL-Shop lässt sich nicht öffnen Installation / Updates von JTL-Shop 2
Neu Shopify-Connector auf neues JTL-Kundenkonto umstellen – App bleibt altem Konto zugeordnet Shopify-Connector 4
Neu 💚 Plugin: DZM Bonus Plus - das Treueprogramm für deinen JTL-Shop Plugins für JTL-Shop 12
Neu JTL-Ameise - Neue / aktualisierte Lieferadresse als Standard setzen User helfen Usern - Fragen zu JTL-Wawi 3
Neu JTL-Ameise - Neue / aktualisierte Lieferadresse als Standard setzen User helfen Usern 0
Neu Klarna (1.2.14) und JTL (5.7.2) nicht kompatibel Technische Fragen zu Plugins und Templates 0
Neu Amazon VCS-Lite – Fehlende Rechnungen nachträglich hochladen (JTL-Wawi 1.11.11)? Amazon-Anbindung - Fehler und Bugs 4
Neu 🔥 𝐍𝐮𝐫 𝟓× verfügbar 𝟓𝟎% 𝐑𝐚𝐛𝐚𝐭𝐭 auf dein Besucherticket für die kommende JTL-Connect am 02.10.2026 in Köln Dienstleistung, Jobs und Ähnliches 0
Neu Synchronisation Produkte Shopify > JTL Shopify-Connector 2
Mehrere Probleme mit JTL-Wawi und JTL-POS – hängen diese zusammen? JTL-Wawi 2.0 1
Neu Stripe plugin mit JTL SHOP Error 500 Plugins für JTL-Shop 2
Neu css Einstellungen Paypal Plugin von JTL JTL-Shop - Fehler und Bugs 1
Neu Eigenen JTL-SCX-Marktplatzkanal für Multi-Vendor-Marktplatz erstellen – Erfahrungen gesucht Einrichtung und Installation von JTL-eazyAuction 3
JTL-Wawi 2.0.6.0 sendet fehlerhafte multipart/form-data-Requests – ModSecurity blockt Datenabgleich mit 403 (scheinbar hosterabhängig) JTL-Wawi 2.0 20
Neu JTL-Shop 5.7.2: Zahlungsbetrag weicht vom Auftragswert ab JTL-Shop - Fehler und Bugs 4
Neu JTL-Shop 5.7.2: Unterschiedliche Standardsprachen in tsprache – widersprüchliche Canonical- und Hreflang-Ausgabe der Startseite Allgemeine Fragen zu JTL-Shop 4
Neu Versandetikett bei Aufträgen aus dem JTL Shop Arbeitsabläufe in JTL-Wawi 0
Neu JTL Search blockiert unsere Shops JTL-Shop - Fehler und Bugs 1
Wichtig JTL-ShippingLabels 1.0: Support-Ende GLS/DPD und Migration von JTL-Start-Kunden nach dem 30. September News, Events und Umfragen 14
Neu JTL-Wawi REST API (Beta): HTTP 402 "Zahlung erforderlich" auf allen Endpunkten trotz gebuchter Beta-Lizenz Schnittstellen Import / Export 2
Neu JTL Shop 5.7.2 NOVA - Akkordeon Überschriften herabstufen auf H3 Templates für JTL-Shop 3

Ähnliche Themen