Hallo Fiddi,
erstmal danke fĂĽr die Infos.
Der Briefbogen ist ein PDF mit einem Firmenlogo rechts oben in der Ecke.
Ich habe meinen Code jetzt wie folgt geändert.
- Code: Alles auswählen
IF lrtTempBLOB.Blob.HASVALUE THEN BEGIN
lrtTempBLOB.CALCFIELDS(Blob);
gtxWatermark := lrtTempBLOB.ToBase64String;
Und im Design des Reports entsprechend:
- Code: Alles auswählen
=System.Convert.FromBase64String(Fields!gtxWatermark.Value)
Leider wird immer noch nichts angezeigt, egal, ob ich als Source Database (mit dem MIMEType image/bmp) oder Embedded angebe.
Vielleicht einmal zur Info, wenn ich das Firmenlogo (nur das Logo als PNG, nicht den Briefbogen) direkt im Feld 29 in der Tabelle 79 abspeichere, geht es, zumindest wird etwas ausgedruckt.
Nur, wenn ich zur Laufzeit das komplette PDF als BLOB in der TempBlob abspeichere, scheint es irgendwo auf dem Weg verloren zu gehen.
Ich habe dann noch versucht, mir den Inhalt des BLOBs nach dem CALCFIELDS hierĂĽber auszugeben:
- Code: Alles auswählen
MESSAGE('%1',lrtTempBLOB.ToBase64String);
Es wird nur ein leeres Fenster angezeigt. Keine Ahnung, ob das mit der MESSAGE ĂĽberhaupt gehen kann, den Trick habe ich hier geklaut
https://community.dynamics.com/nav/f/microsoft-dynamics-nav-forum/364294/convert-pdf-to-base64-using-outstream