Allgemeines
[…]
Achtung: Unterschiedliches Verhalten, wenn man mit PNP oder PNPCE arbeitet. Bei der Pxxxx-Tabelle ist bei PNPCE die Kopfzeile nicht vollständig gefüllt, sondern nur die Spalte(n), die auch als Selektionskriterium in der Query bestimmt wurden
http://help.sap.com/saphelp_46c/helpdata/de/d2/cb441a455611d189710000e8322d00/content.htm
Infoset verändern
Transaktion SQ02

Alternative 1: Direkt in SQ02 mit Include
Hier am Beispiel Infotyptext des IT0030 aus dem PCL1 Cluster
Achtung: Muss in jedem InfoSet geändert werden und ggf. auch in jedem Mandanten, da es in manchen Unternehmen keine Transporte von InfoSets gibt. Nur der Include wird natürlich transport!
Zusatzfeld für entsprechenden Infotyp anlegen

Informationen zum Zusatzfeld hinterlegen (Bei Feldlänge 999 kommt es zum Dump!)

Coding zum Feld per rechter Maustaste auf das Zusatzfeld hinterlegen

Programm schreiben, das inkludiert werden soll
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 |
*&---------------------------------------------------------------------* *& Include ZHR_PA_READ_INFTY_0030_TEXT *&---------------------------------------------------------------------* DATA: lrf_message_handler TYPE REF TO if_hrpa_message_handler, lt_text_tab TYPE hrpad_text_tab, lv_string TYPE string, ls_pskey TYPE pskey. FIELD-SYMBOLS: <hrpad_text> LIKE LINE OF lt_text_tab. MOVE-CORRESPONDING p0030 TO ls_pskey. ls_pskey-subty = p0030-volma. TRY. CLEAR lv_string. CALL METHOD cl_hrpa_text_cluster=>read EXPORTING tclas = 'A' pskey = ls_pskey no_auth_check = '' IMPORTING * histo = * uname = * aedtm = * pgmid = text_tab = lt_text_tab. LOOP AT lt_text_tab ASSIGNING <hrpad_text>. CONCATENATE lv_string <hrpad_text> INTO lv_string SEPARATED BY space. ENDLOOP. textzuminfotyp = lv_string. CATCH cx_hrpa_missing_authorization . CATCH cx_hrpa_violated_assertion . ENDTRY. |
Alternative 2: Customizing mit FuBa (empfohlen!)
Am Beispiel des IT0009 Zusatzfeld SWIFT

Folgende Aktivitäten in abgebildeter Reihenfolge ausführen:

1. In jeder PXXXX_AF Struktur gibt es ein Customer Include CI_PXXXX_AF. Darin bitte Zusatzfeld anlegen.

2. Im zweiten Schritt einen Funktionsbaustein anlegen. Einfach einen der FuBas RPAQ_GET_AF_XXXX als Vorlage verwenden:

|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 |
FUNCTION z_rpaq_get_af_0009. *"---------------------------------------------------------------------- *"*"Lokale Schnittstelle: *" IMPORTING *" VALUE(C_IT0000) LIKE P0000 STRUCTURE P0000 OPTIONAL *" VALUE(C_IT0001) LIKE P0001 STRUCTURE P0001 OPTIONAL *" VALUE(C_IT0009) LIKE P0009 STRUCTURE P0009 *" VALUE(BEGDA_IT) LIKE SY-DATUM DEFAULT SY-DATUM *" VALUE(ENDDA_IT) LIKE SY-DATUM DEFAULT SY-DATUM *" VALUE(BEGDA_SEL) LIKE SY-DATUM DEFAULT SY-DATUM *" VALUE(ENDDA_SEL) LIKE SY-DATUM DEFAULT SY-DATUM *" VALUE(TCLAS) LIKE T582B-TCLAS OPTIONAL *" VALUE(MOLGA) LIKE T001P-MOLGA OPTIONAL *" VALUE(C_OBJEC) LIKE OBJEC STRUCTURE OBJEC OPTIONAL *" EXPORTING *" VALUE(AF_VALUES) LIKE P0009_AF STRUCTURE P0009_AF *" TABLES *" AF_FIELDS STRUCTURE RHTEXT_FIELD *" IT0000 STRUCTURE P0000 OPTIONAL *" IT0001 STRUCTURE P0001 OPTIONAL *" IT0009 STRUCTURE P0009 OPTIONAL *"---------------------------------------------------------------------- CLEAR af_values. LOOP AT af_fields. CASE af_fields-fieldname. WHEN 'ZZ_SWIFT'. SELECT SINGLE swift INTO af_values-zz_swift FROM bnka WHERE banks = c_it0009-banks AND bankl = c_it0009-bankl. ENDCASE. ENDLOOP. ENDFUNCTION. |
3. Im dritten Schritt muss der neue FuBa noch mit dem Feld verknüpft werden, für dess Ermittlung der FuBa geschrieben wurde:

Abschließend muss in der SQ02 das InfoSet noch aktualisiert werden. Dazu das InfoSet ändern.

Über InfoSet->Weitere Funktionen -> HR-Zusatzfelder aktualisieren das InfoSet aktualisieren.

Anschließend ist automatisch der Eintrag sowohl im entsprechenden Infotyp unter Zusatzfelder, als auch in der Feldgruppe des Infotyps zu sehen:

Tipps
Standardfelder als Text anzeigen
Damit ein Feld nicht nur als Wert sondern auch als Text dargestellt werden kann, muss die Texttabelle als Fremdschlüssel in der Struktur hinterlegt sein:


- S_PH0_48000513
- PPIS
- SQ01
- SQ02
PDF-Version: SAPQuery Infoset Zusatzfelder hinzufügen