Friday, February 11, 2011

Übersetzungen und Transport

Übersetzugen von Texten aller Art erfolgt über die SE63. Um in den Bereich für OTR-Texte zu springen, kann in der Befehlszeile SOTR eingegeben werden.
Um die Übersetzungen in einen Transportauftrag zu schreiben, muss das Programm RS_LXE_RECORD_TORDER verwendet werden.

OTR Cache

Nach dem Transport von OTR-Texten wird u.U. trotzdem noch der alte Text angezeigt. Dies liegt daran, dass der OTR-Cache nicht aktualisiert wurde. Um den Cache zu löschen in der Befehlszeile /$OTR eingeben.

Wednesday, December 8, 2010

Berechtigungsobjekt S_ICF

Die Ausführung von Services im Internet Communication Framework (ICF) (z.B. BSP- oder WebDynpro-Anwendungen) kann auf Systemebene durch Berechtigungen gesteuert werden. Dafür gibt es im Tab Service-Daten das Feld SAP-Berechtigung. Hier kann eine selbstgewählte Zeichenkette eingetragen werden. In eine ausgewählten Rolle muss anschließend das Berechtigungsobjekt S_ICF eingetragen werden. Dessen Feld ICF_VALUE wird mit der gleichen Zeichenkette gefüllt.

Friday, February 26, 2010

Code-Abzug mit SAPLink

Report ZSAPLINK
- Mehrere Nuggest erzeugen
- Nuggetname GLD
- Paketname Z*
- Nugget Dateiname c:\...nugg
- Pro Paket neues Nugget
- Keine Dialoge

Thursday, January 21, 2010

Textsuche in SAP-Programmen

Mit Hilfe der Transaktion EWK1 kann nach Strings/Wörtern in SAP-Programmen
(auch Includes) gesucht werden.

Monday, December 14, 2009

Dynamische Suchhilfe für ein Feld

Wenn zu einem Feld zur Design-Zeit die Typbelegung noch nicht bekannt ist
(z.B. Partner bei Qualitätsmeldungen), muss die Suchhilfe zur Laufzeit
angebunden werden. Dies ist über den FuBa F4IF_FIELD_VALUE_REQUEST
möglich. Diesem kann ein Referenztabellenfeld übergeben werden, für das er
dann die F4-Hilfe anzeigt.

Thursday, October 29, 2009

Verbuchung bei QM-Maßnahmen

Beim Anlegen von Qualitätsmeldungen (QM01) können Folgeaktivitäten
definiert werden (Customizing). Damit für das Anlegen von Bestellungen
auch der Belegfluss fortgeschrieben wird, muss die Folgeaktivität DELIVERY
ablaufen. Diese wird über das Katalog-Customizing (QS41) definiert.

Thursday, October 22, 2009

Texte (sprachunabhängig) ablegen

Über die Transaktion so10 können Texte angelegt/gepflegt werden. Mittels
des FuBa Read_Text können Sie wieder ausgelesen werden.

Thursday, October 1, 2009

Suchhilfe mit Mehfachfeldfüllung

Suchhilfen, bei denen abhängige Felder auch gefüllt werden sollen (z.B.
Belegposition und Belegnummer), haben ihre Tücken. Voraussetzung ist, dass
beider Felder in der Suchhilfe als Exportparameter vorkommen und die
Bezeichner in Suchhilfe, Suchfunktion (z.B. View) und Report/Dynpro
identisch sind.
Beide Felder müssen in ein und derselben Struktur/Tabelle vorkommen, die
als Referenztyp für die Variablendeklaration verwendet wird. In diese muss
die selbsterstellte Suchhilfe nochmal explizit angegeben werden (Herkunft
der Suchhilfe: 'explizite Suchhilfeanbindung am Feld').
Bei Erstellung eines Selektionsscreens als Dynpro muss als Variable eines
Tables-Statement verwendet werden. Nur dann funktionieren die
Abhängigkeiten und das paralle Füllen der Felder.

Monday, September 14, 2009

Textelement/-symbole für Report finden

Der Forumsbeitrag geht auf die Frage ein, wie man Textelemente eines
Reports ausliest und in welchen Tabellen sie abgelegt sind:
https://forums.sdn.sap.com/message.jspa?messageID=7216948
Funktionsbaustein READ_TEXT_ELEMENTS gibt alle Textsymbole eines Reports
zurück. Mit dem ABAP-Befehl 'READ TEXTPOOL' hat die gleiche Funktionalität.

Thursday, September 10, 2009

Transaktion für (Pflege-)View

Für einen (Pflege-)View kann mittels der SE93 eine eigene Transaktion
erstellt werden. Das Häkchen 'Einstiegsbild übersprüngen' sollte aktiv
sein. Für die Vorschlagswerte ist auf jeden Fall ein Wert für das
Dynprofeld VIEWNAME anzugeben. Das Feld UPDATE kann mit einem 'X' belegt
werden. Der SM30-Selektionsbildschirm erscheint dann nicht. Will man
diesen haben, muss stattdessen das Feld UPDATE_LTD gefüllt werden.

Thursday, September 3, 2009

CALL SELECTION-SCREEN

Statt "CALL SELECTION-SCREEN" kann auch "LEAVE TO SCREEN 0" verwendet
werden. Damit können Probleme mit den OK-Codes und Endlosschleifen beim
Screen-Aufruf verhindert werden.

Thursday, August 27, 2009

Encoding

Für Änderungen des Encodings ist die Klasse CL_ABAP_CONV_OBJ nützlich
(mehr Infos über die Klassendokumentation).
Der Report RSCP0032 kann für Tests und Informationsgewinnung rund um
Encoding genutzt werden.
Die Funktionsbausteine ECATT_CONV_STRING_TO_XSTRING und
ECATT_CONV_XSTRING_TO_STRING können für Transformationen genutzt werden.
In der Tabelle TCP00 sind die Codepages aufgeführt.

FORM decode_response USING pi_xstring type xstring CHANGING pie_string
type string.
DATA: lo_eref TYPE REF TO cx_transformation_error,
lv_errstr TYPE string,
lo_converter TYPE REF TO cl_abap_conv_obj.

* ändern des Encoding auf ISO-8859-1 (nur das versteht Inforate)
CREATE OBJECT lo_converter
EXPORTING
incode = '1133' " ISO-8859-1
outcode = '4103' " UTF-8
EXCEPTIONS
invalid_codepage = 1
internal_error = 2
OTHERS = 3.

IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.

CALL METHOD lo_converter->convert
EXPORTING
inbuff = pi_xstring
outbufflg = 0
IMPORTING
outbuff = pie_string
EXCEPTIONS
internal_error = 1
OTHERS = 2.

IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
ENDFORM.

Tuesday, August 18, 2009

Problem Import WSDL von Fremdsystem

Manche externe Systeme haben Probleme, die WSDL eines SAP-Webservices zu
importieren. Dies kann u.a. an den policy-tags liegen. In diesem Fall
hilft es, in der WSDL-URL 'ws_policy' durch 'standard' zu ersetzen.

Wednesday, July 22, 2009

Webservice Consumer

Ein Video-Tutorial zur Erstellung eines Webservice-Clients findet man
unter:
https://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/media/uuid/20eb3174-41ab-2a10-a383-907faf60eed3

Wenn das Einlesen einer WSDL-URL nicht funktioniert oder eine
Fehlermeldung beim Aufruf des Services auftritt, kann das damit
zusammenhängen, dass die Proxy-Einstellungen im SAP falsch/ungepflegt
sind. Dazu die SICF aufrufen und die Einstellungen unter
Client/Proxyeinstellungen vornehmen.

Tuesday, July 14, 2009

System Traces

Die Logs/Traces im System können über die SM21 aufgerufen werden. Hier
findet man auch die RFC-Developer Traces, die den Netzwerkverkehr
protokollieren.

Tuesday, June 23, 2009

Dynprotextarea für Anzeige

CONSTANTS: gc_ne0 TYPE i VALUE '1',
gc_eq0 TYPE i VALUE '0',
gc_line_length TYPE i VALUE '100'.

CREATE OBJECT go_custom_container
EXPORTING
container_name = 'CC_INFO'
EXCEPTIONS
cntl_error = 1
cntl_system_error = 2
create_error = 3
lifetime_error = 4
lifetime_dynpro_dynpro_link = 5.

CREATE OBJECT go_editor
EXPORTING
parent = go_custom_container
wordwrap_mode =
cl_gui_textedit=>wordwrap_at_fixed_position
wordwrap_position = gc_line_length
wordwrap_to_linebreak_mode = cl_gui_textedit=>true.

go_editor->set_readonly_mode( gc_ne0 ).
go_editor->set_statusbar_mode( gc_eq0 ).
go_editor->set_toolbar_mode( gc_eq0 ).

Monday, June 22, 2009

Pflegeviewvariante für Tabelle

Üblicherweise legt man für Tabellen einen Pflegedialog an (SE54). Um zu
erreichen, dass nur bestimmte Datensätze bzw. Spalten angezeigt werden,
kann eine Pflegeview-Variante erzeugt werden. Auch dafür die SE54
aufrufen. Als Referenz für die Variante nimmt man den zuvor erzeugten
Pflegeview.

Über die SE93 kann man eine Transaktion anlegen, über die man den
Pflegedialog direkt aufrufen kann ohne über die SM30 gehen zu müssen.

Friday, June 19, 2009

Sonderzeichen und Codepage

Beim Einlesen von Textfiles, z.B. mit
cl_gui_frontend_services=>gui_upload, kann es zu Problemen mit der
Codierung kommen und Sonderzeichen werden falsch dargestellt. Weiß man die
Codepage des Dokuments kann diese dem Leseprogramm mitgegeben werden und
die Zeichen werden korrekt umgesetzt.
In der Tabelle TCP00A sind Codepages und die internen SAP-ID's abgelegt.