Skip to Content

Archived discussions are read-only. Learn more about SAP Q&A

RFC unicode to non-unicode problem

nach einem Releasewechsel von Release 4.6C auf ECC6.0 mit Unicode und DIMP Aktivierung haben wir folgendes Problem:

Von einer externen Anwendung wird ein Remote fähiger Funktionsbaustein synchron per RFC im SAP ausgeführt.

Die im SAP-Funktionsbaustein ermittelten Daten werden per Tabelle mit fester Struktur zurückgegeben.

Die Tabelleninhalte auf SAP-Seite sehen nach wie vor korrekt aus (per Test und per Debugger kontrolliert).

Im externen Aufrufer kann die übergebene Struktur aber nicht mehr richtig interpretiert werden. Die Feld - Inhalt Zuordnung zur Struktur ist nicht mehr korrekt. Ein Perl-Dump (data::dumper) des Interface Objekts nach Ausführung der Discover-Methode ergibt, dass alle Felder dort mit doppelter Länge definiert sind. Anscheinend führt dies zu Verschiebungen der interpretierten Inhalte.

Der RFC von Extern erfolgt über Perl (Solaris 10, Perl 5.8.8, SAP::Rfc 1.55, RFC-SDK Stand März 2006).

weitere Anmerkung

es erfolgt kein Datenaustausch über Dateiausgabe und Dateieinlesen, von daher kann auch keine non-unicode Dateiausgabe erfolgen. Es wird direkt ein remotefähiger Funktionsbaustein im SAP aus Perl heraus aufgerufen.

Die Kommunikation erfolgt über eine Tabelle mit fester Struktur.

Auf Perl-Seite werden keine Feldlängen abgezählt. Das Perl-Programm erhält nach dem Aufruf Paare mit Feldname (= Komponentenname aus der Struktur der Tabelle im SAP) und Inhalt.

Diese Paare stimmen nicht mehr. Die Zuordnung Feldname und Inhalt stimmt nur noch für das erste Feld der Struktur, für die restlichen nicht mehr.

Auf welche Weise und wo diese Aufbereitung erfolgt ist uns nicht bekannt.

Wir vermuten, dass dies über das RFC-SDK geregelt wird.

Kann es sein, dass wir eine neuere Version des RFC-SDK einsetzen müssen?

Tags:
Not what you were looking for? View more on this topic or Ask a question