DATA OFFSET und DATA TRANSFER

Alles rund um die Sprache ABAP®: Funktionsbausteine, Listen, ALV
18 Beiträge • Seite 1 von 2 (current) Nächste
18 Beiträge Seite 1 von 2 (current) Nächste

DATA OFFSET und DATA TRANSFER

Beitrag von Littlered (ForumUser / 64 / 0 / 0 ) »
Hallo zusammen,

ich suche eine Möglichkeit in einem im Hintergrund ablaufenden Report das Ergebnis der liste in eine TXT-Datei abzulegen.

Ich habe dazu den Hinweis mit DATA OFFSET und DATA TRANSFER bekommen. Leider habe ich keine Ahnung was ich damit anfangen soll.

Hat jemand Erfahrung und dass schon mal gemacht und kann mir in einem Beispielcode zeigen wie ich den Inhalt einer internen Tabelle auf diesem Weg in eine TXT-Datei transferieren kann? DANKE!!!!!!


Beitrag von ewx (Top Expert / 4462 / 236 / 504 ) »
TRANSFER -> F1.

SAP-Hilfe

Enno.

Beitrag von Littlered (ForumUser / 64 / 0 / 0 ) »
Danke und wo kann ich den Speicherort festelgen und dass es eine TXT-Datei sein soll?

Beitrag von ewx (Top Expert / 4462 / 236 / 504 ) »
Bitte.

OPEN -> F1.

Beitrag von ereglam (Top Expert / 1826 / 0 / 6 ) »
Hallo Littlered,

das wird in der Hilfe zum Befehl OPEN DATASET beschrieben.
Wenn kein Pfad vorgegeben ist, wird die Datei auf dem jeweiligen Applikationsserver im Verzeichnis, das in der AL11 bei DIR_HOME angegeben wird, abgelegt.

Die Art der Datei wird durch 'OPEN DATASET IN TEXT|BINARAY MODE.' definiert.
Gruß
Ereglam


May the Force be with your code
|| .| |.|| | .... . ..|. ||| .|. |.|. . |... . .|| .. | .... |.|| ||| ..| .|. |.|. ||| |.. .
Mitglied im XING

Beitrag von Littlered (ForumUser / 64 / 0 / 0 ) »
Könntet ihr mir nicht ein Beispielcode schreiben wie es auszusehen hat wenn ich im Verzeichnis c:\test die datei ergebnis.txt erzeugen lassen will?

Ich steh ein wenig auf dem schlauch.

Zum Beispiel soll der Dateiname auch aus dem Daktuellen Datum gebildet werden. Werden die Datein immer neu erzeugt oder hinzugeschreiben?

Beitrag von Haubi (Expert / 611 / 15 / 27 ) »
Hintergrund = keine Verbindung zu irgendeinem Frontend-Rechner = kein C:\

Diese Frage wurde schon zigmal in allen Variationen in diesem Forum diskutiert. Bitte mal die Forensuche bemühen.

Gruss,
Haubi
Das ABAP Kochbuch ab sofort bei Amazon...

I'd rather write code that writes code than write code...

Beitrag von Littlered (ForumUser / 64 / 0 / 0 ) »
Gibt es denn die Möglichkeit den Wert für

DATA: fname(60) TYPE c VALUE 'myfile'.


mit einem Dateinamen zu belegen der das aktuelle DAtum beinhaltet?

Beitrag von ewx (Top Expert / 4462 / 236 / 504 ) »
fname ist eine normale Variable.
Das aktuelle Datum steht in SY-DATUM.

F1: WRITE, MOVE, CONCATENATE.

Beitrag von Littlered (ForumUser / 64 / 0 / 0 ) »
ja klar aber wie kann ich das machen? wenn ich vorher concatenate mache dann bekomm ich fehler weil er die variable nicht finden kann.

ich habs jetzt mal einfach getestet und das eingebaut. jetzt sagt er mir dass die quelle keine Tabelle sein darf. Ich hab aber als Quelle eine interne Tabelle:

DATA: fname(60) TYPE c VALUE 'Ergebnis'.

DATA: text(4) TYPE c,
hex TYPE x.

OPEN DATASET fname FOR OUTPUT IN TEXT MODE ENCODING DEFAULT.

TRANSFER attributes TO fname.

OPEN DATASET fname FOR INPUT IN TEXT MODE ENCODING DEFAULT.

READ DATASET fname INTO text.
WRITE / text.
READ DATASET fname INTO text.
WRITE text.
READ DATASET fname INTO text.
WRITE text.

OPEN DATASET fname FOR INPUT IN BINARY MODE.

SKIP.
DO.
READ DATASET fname INTO hex.
IF sy-subrc <> 0.
EXIT.
ENDIF.
WRITE hex.
ENDDO.

Beitrag von ereglam (Top Expert / 1826 / 0 / 6 ) »
das Coding sieht in etwa so aus:

Code: Alles auswählen.

* Dateinamen
CONCATENATE
  'myfile_'
  sy-datum
  '.txt'
  INTO fname.
* Schreiben
OPEN DATASET fname FOR OUTPUT IN TEXT MODE ENCODING DEFAULT. 
LOOP AT attributes.
  TRANSFER attributes TO fname.
ENDLOOP.
CLOSE DATASET fname.

* Lesen
OPEN DATASET fname FOR INPUT IN TEXT MODE ENCODING DEFAULT. 
DO.
  READ DATASET fname INTO attributes.
  IF sy-subrc NE 0.
    EXIT.
  ENDIF.
  APPEND attributes.
ENDDO.
CLOSE DATASET fname.
Gruß
Ereglam


May the Force be with your code
|| .| |.|| | .... . ..|. ||| .|. |.|. . |... . .|| .. | .... |.|| ||| ..| .|. |.|. ||| |.. .
Mitglied im XING

Beitrag von Littlered (ForumUser / 64 / 0 / 0 ) »
Vielen Dank, dass sieht schon mal gut aus. Ich bekomm aber den Fehler:

"Die interne Tabelle Attributes hat keine Kopfzeile"
"Zusätze INTO wa, Assigning, Reference into, Transporting no fields erforderlich"

was muss ich da jetzt berichtigen? ich habs versuch aber wahrscheinlich an der falschen stelle.

Beitrag von ewx (Top Expert / 4462 / 236 / 504 ) »
Hallo Littleerd,

schön wäre es, wenn du uns darüber aufklärst, was du gemacht hast, was nicht und wie genau der Fehler heisst.

Informationen wie "Ich habs versucht" hilft wahrlich wenig weiter.

Zum Thema Kopfzeile gibt's einen SEHR ausführlichen Thread hier: http://www.abapforum.com/forum/viewtopic.php?t=2471

Gruß und schönen Feierabend!

Enno.

Beitrag von Littlered (ForumUser / 64 / 0 / 0 ) »
Dank Eurer Hilfe hat es geklappt. Ein paar Änderungen und jetzt funktioniert es.

Gibt es eigentlich eine Möglichkeit das Verzeichniss zu bestimmen? Eigentlich nicht oder? Es wird immer in dem definierten Workverzeichnis abgelegt oder?

Beitrag von Gast ( / / 0 / 3 ) »
Du brauchst das Verzeichnis nur vor den Dateinamen zu packen...
"/usr/tmp/myfile.txt"
"C:\temp\myfile.txt"


Über diesen Beitrag


ABAP & SAP eBook Flatrate von Espresso Tutorials Sponsorlink
Unterstütze die Community und teile den Beitrag für mehr Leser und Austausch

Vergleichbare Themen

DATA BROWSER
von pohlmann-schwarza » 29.08.2008 13:31
Create Data
von asano » 11.08.2004 16:54
Export Data
von Heikeb » 28.08.2012 12:45
TYPES und DATA
von bohne » 19.11.2006 23:27
Data to Code vs. Code to Data
von SAP_ENTWICKLER » 06.12.2016 11:36