DATA versus DATA_X


Alles rund um die Sprache ABAP®: Funktionsbausteine, Listen, ALV

Moderatoren: Jan, Steff

DATA versus DATA_X

Beitragvon ABAP_User » 30.07.2012, 12:40

Worin unterscheiden sich Datenelemente mit dem Zusatz X, von den Datenelementen ohne diesen Zusatz?
Beispiel CENTRALDATAPERSON und CENTRALDATAPERSON_X.
Wenn ein Funktionsbaustein den Import von Feldern dieser beiden Typen erlaubt, ist es dann ratsam, sowohl
data als auch data_x zu übergeben, um keine Inkonsistenzen zu bekommen?

Gruß & Dank
ABAP_User
ABAP_User
Specialist
 
Beiträge: 144
Registriert: 23.12.2010, 23:45
Dank erhalten: 0 mal
Ich bin: Student/in

Sponsor

Alte ABAP-Entwicklerweisheit: Weißt du weder aus noch ein, baust du einen BADI ein

Re: DATA versus DATA_X

Beitragvon black_adept » 30.07.2012, 13:19

Hallo ABAP_User,

Worin unterscheiden sich Datenelemente mit dem Zusatz X, von den Datenelementen ohne diesen Zusatz?

Schau doch einfach in der SE11 nach.

Wenn ein Funktionsbaustein den Import von Feldern dieser beiden Typen erlaubt, ist es dann ratsam, sowohl
data als auch data_x zu übergeben, um keine Inkonsistenzen zu bekommen?

Das kommt darauf an.
live long and prosper
Stefan Schmöcker

email: stefan@schmoecker.de

Für diese Nachricht hat black_adept einen Dank bekommen :
Unit605
black_adept
Top Expert
 
Beiträge: 1974
Registriert: 08.01.2003, 13:33
Wohnort: Lehrte ( bei Hannover )
Dank erhalten: 198 mal
Ich bin: Freiberufler/in

Re: DATA versus DATA_X

Beitragvon a-dead-trousers » 30.07.2012, 13:32

Diese Datenelemente wurden (früher?) für BAPIs angelegt die mit Strukturen als Übergabeparameter arbeiten.
Wenn man nun nicht alle Felder der Struktur versorgen kann (oder will) übergibt man nur diejenigen bei denen eine Änderung Sinn macht und setzt gleichzeitig in der Kontrollstruktur (die die _X Felder beinhaltet) das entsprechende Feld auf 'X'.
Dann wird das BAPI auch nur jene Felder verändern zu denen es ein 'X' in der Kontrollstruktur gibt.
Es ist daher immer ratsam BEIDE Strukturen/Felder zu versorgen.

Hoffe das war verständlich genug. Es kann natürlich auch andere Verwendungen für die DATA und DATA_X Datenelemente geben, aber das ist der meiner Meinung nach häufigste Anwendungsfall.

lg
ADT
Theory is when you know something, but it doesn't work.
Practice is when something works, but you don't know why.
Programmers combine theory and practice: Nothing works and they don't know why.

ECC: 6.05
Basis: 7.02
a-dead-trousers
Top Expert
 
Beiträge: 1734
Registriert: 07.02.2011, 13:40
Dank erhalten: 347 mal
Ich bin: Entwickler/in

Re: DATA versus DATA_X

Beitragvon ABAP_User » 30.07.2012, 14:30

Inzwischen durfte/musste ich selbst feststellen, dass nur die Felder geändert werden, die auf 'X' gesetzt werden. :)
Dennoch vielen Dank!!
ABAP_User
Specialist
 
Beiträge: 144
Registriert: 23.12.2010, 23:45
Dank erhalten: 0 mal
Ich bin: Student/in

Re: DATA versus DATA_X

Beitragvon black_adept » 31.07.2012, 07:05

ABAP_User hat geschrieben:Worin unterscheiden sich Datenelemente mit dem Zusatz X, von den Datenelementen ohne diesen Zusatz?
Wenn ich dein letztes Posting lese meintest du gar keine Datenlemente sondern Strukturen... *sigh*

P.S.
Warum stellt man diese Frage überhaupt? Ich habe mir jetzt mal den ersten BAPI genommen, von dem ich weiß, dass er die normale und die X-Strukturen enthält: BAPI_SALESORDER_CHANGE und habe dort
1.) Mir die Doku zu der Kopf-X-Struktur angeschaut: ( ORDER_HEADER_INX )
SAP Doku hat geschrieben:FU BAPI_SALESORDER_CHANGE ORDER_HEADER_INX

____________________________________________________

Short Text

Sales Order Check List

Description

This paramter fulfills the following two tasks:


o Controls processing functions with the value in the UPDATEFLAG field
(change indicator).
The following entries are available:
' ' : Create a new sales document
I: Create a new sales document
U: Change an existing sales document
D: Delete an existing sales document


o Controls the field entry with checkboxes
If the UPDATEFLAG field has been activated, the system only copies
those fields from the SALES_HEADER_IN parameter that have been
activated with 'X'.


und dann noch einmal in die Struktur selber gegangen, gesehen dass dort alle Felder auf das Datenelement BAPIUPDATE verweisen und mir dessen Doku angeschaut.
SAP Doku hat geschrieben:DE BAPIUPDATE

____________________________________________________

Short Text

Updated information in related user data field

Definition

This flag is used to select fields containing modified values in the
parameter. It is used in, for example, change methods.

The value 'X' means that the associated field contains an updated value.
The value BLANK means that the field does not contain an updated value.

Conventions for Parameters with Updated Values (update parameter)

The parameter has exactly the same fields as the parameter with the user
data. The name of the update parameter should consist of the user data
parameter name with an additional 'X'

For example: User data parameter name: Equisales
Update parameter: EquisalesX

If the parameter is a table the update parameter must also be a table.

Example

The distribution channel (Distr_Chan) should be changed to the value
'US'.
Business Object: PieceOfEquipment
BAPI: Update
Parameter with updated data: EquiSales
Fields in EquiSales: SalesOrg
Distr_Chan = 'US'
Division
...
Parameter for modified data: EquiSales_x
Fields in EquiSalesX: SalesOrg
Distr_Chan = 'X'
Division
...
In the parameter EquiSales_x the field Distr_Chan has the value 'X',
meaning that the field EquiSales-Distr_Chan contains modified values.

Further Notes

This procedure is necessary because otherwise fields containing updated
values cannot be identified. Using an initial value is no solution
because an initial value could also be valid new value. Also, in the
ABAP programming language or on other development platforms, you cannot
assign the value "zero" to a field in order to select fields and thus
indicate that the remaining fields contain update values. For further
information see the BAPI Programming Guidelines.


Ist es denn wirklich zu viel verlangt, dass man 1 Minute opfert und die F1-Hilfe durchliest bevor man ein Posting startet?
live long and prosper
Stefan Schmöcker

email: stefan@schmoecker.de

Für diese Nachricht hat black_adept einen Dank bekommen :
Haubi
black_adept
Top Expert
 
Beiträge: 1974
Registriert: 08.01.2003, 13:33
Wohnort: Lehrte ( bei Hannover )
Dank erhalten: 198 mal
Ich bin: Freiberufler/in

Re: DATA versus DATA_X

Beitragvon ralf.wenzel » 10.08.2012, 13:43

black_adept hat geschrieben:Warum stellt man diese Frage überhaupt? Ich habe mir jetzt mal den ersten BAPI genommen {......} Ist es denn wirklich zu viel verlangt, dass man 1 Minute opfert und die F1-Hilfe durchliest bevor man ein Posting startet?


Auf BAPI muss man aber erstmal kommen....
Bild
Ralf Wenzel • SAP, Datenschutz, Cloud Computing
Inh. Heuristika Unternehmensberatung, Hamburg
iX 10/14 (ab 25.09.2014 im Handel):
Sicherheit und Datenschutz in SAP-Systemen
ralf.wenzel
Top Expert
 
Beiträge: 1611
Registriert: 18.09.2004, 13:03
Wohnort: Hamburg
Dank erhalten: 27 mal
Ich bin: Freiberufler/in

Re: DATA versus DATA_X

Beitragvon Unit605 » 10.08.2012, 21:30

ralf.wenzel hat geschrieben:
black_adept hat geschrieben:Warum stellt man diese Frage überhaupt? Ich habe mir jetzt mal den ersten BAPI genommen {......} Ist es denn wirklich zu viel verlangt, dass man 1 Minute opfert und die F1-Hilfe durchliest bevor man ein Posting startet?


Auf BAPI muss man aber erstmal kommen....


Wieso muss man da erst einmal drauf kommen?

Anhand der Frage ist es recht eindeutig, dass es sich um einen BAPI handelt.

ABAP_User hat geschrieben:Worin unterscheiden sich Datenelemente mit dem Zusatz X, von den Datenelementen ohne diesen Zusatz?
Beispiel CENTRALDATAPERSON und CENTRALDATAPERSON_X.
Wenn ein Funktionsbaustein den Import von Feldern dieser beiden Typen erlaubt, ist es dann ratsam, sowohl
data als auch data_x zu übergeben, um keine Inkonsistenzen zu bekommen?

Gruß & Dank
ABAP_User
Unit605
Expert
 
Beiträge: 539
Registriert: 05.02.2009, 21:29
Wohnort: San Diego, CA, USA
Dank erhalten: 43 mal
Ich bin: Entwickler/in

Re: DATA versus DATA_X

Beitragvon ralf.wenzel » 11.08.2012, 10:00

Stimmt
Bild
Ralf Wenzel • SAP, Datenschutz, Cloud Computing
Inh. Heuristika Unternehmensberatung, Hamburg
iX 10/14 (ab 25.09.2014 im Handel):
Sicherheit und Datenschutz in SAP-Systemen
ralf.wenzel
Top Expert
 
Beiträge: 1611
Registriert: 18.09.2004, 13:03
Wohnort: Hamburg
Dank erhalten: 27 mal
Ich bin: Freiberufler/in


Zurück zu ABAP® Core

  Aktuelle Beiträge   
Download ITAB mit tiefer Struktur aus Debugger heraus
vor einer Stunde von Pyro 0 Antw.
gelöst Typ dynamisch aus String zuweisen
vor 4 Stunden von Talvien 2 Antw.
gelöst SpoolID ermitteln und weiter nutzen
vor 4 Stunden von dyv 5 Antw.
Verwendung von MIME Audiodateien
vor 2 Stunden von jensschladitz 1 Antw.
gelöst Anlegen von einer Variante
vor 9 Stunden von Unit605 1 Antw.

  Ähnliche Beiträge beta
DATA OFFSET und DATA TRANSFER
22.07.2005, 10:01 von black_adept 17 Antw.
Create Data
12.08.2004, 06:58 von asano 2 Antw.

 

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder

Feedback ...?

Was können wir verbessern? Hinterlasse deine Kontaktdaten, wenn du eine direkte Antwort möchtest.

... Absenden!