Etikettendruck mit RSPO_SR* Bausteinen als SapScript Ersatz

Getting started ... Alles für einen gelungenen Start.
1 Beitrag • Seite 1 von 1
1 Beitrag Seite 1 von 1

Etikettendruck mit RSPO_SR* Bausteinen als SapScript Ersatz

Beitrag von Alpmann (ForumUser / 67 / 7 / 20 ) »
Einen schönen guten morgen in die Runde,

ich möchte alte SapScript Formulare für Etikettendruck vereinheitlichen und durch modernes ersetzen vor einer Umstellung auf S4.

Die Templates für die Etiketten (ZPL Code) habe ich in einer Z-Tabelle. Zeilenweise mit CHAR200 definiert.

Das Template lese ich in eine String Variable und mache mir replace die Ersetzungen und möchte den String zum Drucker schicken. Und da fangen meine Probleme an. Ich hatte mir dann mal den String in eine Datei schreiben lassen, um zu schauen, ob es passt. Die Datei sieht gut aus, aber all meine Versuche, das an den Drucker zu senden mit den RSPO_SR_OPEN, RSPO_SR_WRITE und RSPO_SR_CLOSE haben nicht zu 100% funktioniert. Das Problem sind hier wohl Unicode Zeichen sowie CRLF Zeichen. Im Template steht für eine neue Zeile __CRLF__.

REPLACE ALL OCCURRENCES OF '__CRLF__' IN lv_zpl_string WITH cl_abap_char_utilities=>cr_lf.

So hatte ich das in eine Datei geschrieben:

OPEN DATASET lv_file FOR OUTPUT IN TEXT MODE ENCODING UTF-8.

IF sy-subrc = 0.
TRANSFER lv_zpl_string TO lv_file.
CLOSE DATASET lv_file.
ENDIF.

So in den Spool

CALL FUNCTION 'RSPO_SR_OPEN'
EXPORTING
dest = 'XXX1'
layout = 'G_RAW'
doctype = 'RAW'
IMMEDIATE_PRINT = 'X'
IMPORTING
handle = lv_handle
spoolid = lv_spoolid.


DATA(lv_offset) = 0.
lv_len = strlen( lv_zpl_string ).

WHILE lv_offset < lv_len.

lv_chunk_len = nmin( val1 = 255 val2 = lv_len - lv_offset ).

temp_text = lv_zpl_string+lv_offset(lv_chunk_len).

CALL FUNCTION 'RSPO_SR_WRITE'
EXPORTING
handle = lv_handle
text = temp_text
EXCEPTIONS
handle_not_valid = 1
operation_failed = 2
OTHERS = 3.

lv_offset = lv_offset + lv_chunk_len.

ENDWHILE.

In der SPAD hat der Drucker den Gerätetyp LB_ZEB3 und als Treiber RDIF (spool raw data interface).

Es ist sicher kein Hexenwerk - aber ich habe es noch nicht durschaut.

Mit freundlichen Grüßen
Matthias Alpmann

gesponsert
Stellenangebote auf ABAPforum.com schalten
kostenfrei für Ausbildungsberufe und Werksstudenten


Seite 1 von 1

Vergleichbare Themen

1
Antw.
645
Views
Verhalten von ENQUEUE Bausteinen
von A6272 » 06.07.2023 12:18 • Verfasst in ABAP® für Anfänger
3
Antw.
1323
Views
allg. zu Funktoinsgruppen /-bausteinen
von adazip » 19.06.2007 14:29 • Verfasst in ABAP® für Anfänger
15
Antw.
3319
Views
Dokumenten-Download aus Archiv scheitert mit verschiedenen Bausteinen
von Doobie » 14.06.2022 15:16 • Verfasst in ABAP® für Anfänger
1
Antw.
3408
Views
Etikettendruck mit SmartForms
von deejey » 08.04.2024 09:05 • Verfasst in ABAP® Core
10
Antw.
11889
Views
Etikettendruck Wareneingang
von Chaos81 » 13.04.2020 20:00 • Verfasst in ABAP® für Anfänger

Aktuelle Forenbeiträge

SFP/SEGW - Fehler beim Rendering
vor 6 Tagen von Manfred K. 1 / 31365
Pflegeview zeigt nicht alle Daten an
vor einer Woche von sapdepp gelöst 7 / 31812
ALV Grid und Dynprofeld
vor einer Woche von PeterPaletti 5 / 31040

Newsletter Anmeldung

Keine Beiträge verpassen! Wöchentlich versenden wir lesenwerte Beiträge aus unserer Community.
Die letzte Ausgabe findest du hier.
Details zum Versandverfahren und zu Ihren Widerrufsmöglichkeiten findest du in unserer Datenschutzerklärung.

Aktuelle Forenbeiträge

SFP/SEGW - Fehler beim Rendering
vor 6 Tagen von Manfred K. 1 / 31365
Pflegeview zeigt nicht alle Daten an
vor einer Woche von sapdepp gelöst 7 / 31812
ALV Grid und Dynprofeld
vor einer Woche von PeterPaletti 5 / 31040

Unbeantwortete Forenbeiträge

SFP/SEGW - Fehler beim Rendering
vor 6 Tagen von Manfred K. 1 / 31365
Benutzerdefinierte Felder PSP
letzen Monat von Rabea1103 1 / 81534
Spool vereinen OTF und PDF
January 2026 von anna2205 1 / 97430