write ... under

Die Frage ist als "gelöst" markiert. Den entsprechend Beitrag findest du hier.

Getting started ... Alles für einen gelungenen Start.
8 Beiträge • Seite 1 von 1
8 Beiträge Seite 1 von 1

write ... under

Beitrag von Gast ( / / 0 / 3 ) »
[/quote]write at 50 'test'.
data: t(4) type c.
t = 'test'.
write: / 'hallo' under t.

:oops: hi leute kann man das irgendwie realisieren?
Danke

gesponsert
Stellenangebote auf ABAPforum.com schalten
kostenfrei für Ausbildungsberufe und Werksstudenten


Beitrag von ewx (Top Expert / 4784 / 294 / 628 ) »
Evtl. so:

Code: Alles auswählen.

data: t(4) type c.
t = 'test'.
write at 50 t.
write: / 'hallo' under t.
???
Enno

Re: write ... under

Beitrag von GERDLA (Specialist / 116 / 0 / 0 ) »
Anonymous hat geschrieben:
write at 50 'test'.
data: t(4) type c.
t = 'test'.
write: / 'hallo' under t.

:oops: hi leute kann man das irgendwie realisieren?
Danke
[/quote]



Ich bin mir zwar fast sicher das du nicht so eine Lösung meinst:

Report Test.

DATA: T(4) TYPE C VALUE 'TEST'.

WRITE: 50 T.
WRITE: /50 '/'.
WRITE: /50 'HALLO'.

Was suchst du denn genau?

gruss

gerdla

Beitrag von Gast ( / / 0 / 3 ) »
Ich meine mein t bekomme ich erst im Programm.

so sieht das ungefähr aus.

Code: Alles auswählen.

loop at itab1 where artnr = matnr_tab-matnr.
      write: '  ', itab1-t.
    endloop.
...

loop at itab1 where artnr = tab-matnr
                      and ouse = tab-ouse.
             text = itab1-t.
             write: itab1-mgdem under text.
      endloop.

Beitrag von ereglam (Top Expert / 1829 / 2 / 7 ) »
warum benutzt Du dann nicht:

Code: Alles auswählen.

LOOP AT itab1 WHERE artnr = matnr_tab-matnr.
  WRITE: '  ', itab1-t.
ENDLOOP.
...

LOOP AT itab1 WHERE artnr = tab-matnr
                      AND ouse = tab-ouse.
  WRITE: itab1-mgdem UNDER itab1-t.
ENDLOOP. 
:?:
Gruß
Ereglam


May the Force be with your code
|| .| |.|| | .... . ..|. ||| .|. |.|. . |... . .|| .. | .... |.|| ||| ..| .|. |.|. ||| |.. .

Beitrag von Gast ( / / 0 / 3 ) »
Anonymous hat geschrieben: text = itab1-t.
write: itab1-mgdem under text.
So funktioniert das nicht!
Du kannst den WRITE .. UNDER nur verwenden, um einen Wert unter eine andere zuvor ausgegebene Variable auszugeben, aber nicht unter einen ausgegebenen Text!

Gruß,
Enno.

Beitrag von Gast ( / / 0 / 3 ) »
egal wie, aber ich würde auf jeden fall versuchen zu vermeiden mit under zu arbeiten. eine positionierung wie
z.b. write: /50 'hugo' ist für den armen teufel der irgendwann solche programme im layout anpassen muss wesentlich einfacher. ich habe schon genügend grosse programme umstellen müssen, bei denen dir under förmlich um die ohren geflogen ist und du irgendwann nicht mehr weißt wo du auf der zeile stehst, da verflucht man mehr wie einmal den
verfasser.
joachim

Beitrag von dima ( / / 0 / 3 ) »
So ich will euch das mal zeigen was mein Problem ist.
ich gebe ein Datume als Überschrieften aus und unter diesen muss ich jetzt einen wert ausgeben der natürlich zu dem Datum passt.

mein code (performance killer)
vieleicht kann ja euch mir einen Rat geben wo ich nicht 4 loop schleifen durchgehen muss.

Code: Alles auswählen.


  
data: itab1 type table of zdemand with header line.

data: begin of matnr_tab occurs 10000,
        matnr    type char30,
      end of matnr_tab.
data: begin of hous_tab occurs 10000,
        matnr    type char30,
        hous type char10,
      end of hous_tab.







data: anf type i value 20,
        abs type i value 13,
        anfang   type i ,
        abstand  type i ,
        ab       type i ,
        datum(10) type c,
        dat   type string.


  loop at itab1.
    matnr_tab-matnr        = itab1-artnr.
    warehous_tab-matnr     = itab1-artnr.
    warehous_tab-warehous  = itab1-dm_warehouse.
    collect matnr_tab.    clear matnr_tab.
    collect warehous_tab. clear warehous_tab.
  endloop.


  loop at matnr_tab.
    abstand = abs.
    anfang = anf.
    clear ab.


*   Datum
    sort itab1 by artnr datum.
    loop at itab1 where artnr = matnr_tab-matnr.
      if sy-tabix = 1.
        write: at anfang itab1-datum.
        ab = anfang + abstand.
      else.
        write: at ab itab1-datum.
        ab = ab + abstand.
      endif.
    endloop.

    abstand = abs.
    anfang = anf.
    clear ab.


*// verschiedene houses
    loop at hous_tab where matnr = matnr_tab-matnr.
      write /3 hous_tab-hous.

*//   welches Datum?      
      loop at itab1 where artnr = matnr_tab-matnr.

        if itab1-house = hous_tab-hous.

          if sy-tabix = 1.
            write: at anfang itab1-mgdem left-justified.
            ab = anfang + abstand.
          else.
            write: at ab itab1-mgdem     left-justified.
            ab = ab + abstand.
          endif.
        else.
          if sy-tabix = 1.
            write: at anfang '0'.
            ab = anfang + abstand.
          else.
            write: at ab '0'.
            ab = ab + abstand.
          endif.
        endif.

      endloop."itab1                                              
      anfang = anf.
      abstand = abs.
      clear ab.
    
    endloop."warehous_tab
  endloop."matnr_tab
endform."ausgabe
Jetzt wollte ich nocht ein bild einfügen. Keine ahnung wie das hier geht. :idea: :oops:

Seite 1 von 1

Vergleichbare Themen

5
Antw.
1870
Views
WRITE zebra
von hmaxi96 » 25.01.2016 14:34 • Verfasst in ABAP® für Anfänger
2
Antw.
1994
Views
RFC Funktionsbaustein mit WRITE
von Ralph » 09.03.2006 14:17 • Verfasst in ABAP® Core
7
Antw.
19934
Views
select und write
von eddi89 » 11.08.2009 19:40 • Verfasst in ABAP® für Anfänger
2
Antw.
9743
Views
Write Uhrzeit
von ABAP_BEGINNER » 04.06.2010 14:50 • Verfasst in ABAP® für Anfänger
2
Antw.
14805
Views
WRITE und NEW-LINE
von dyv » 08.09.2014 14:34 • Verfasst in ABAP® für Anfänger

Über diesen Beitrag


Die Frage ist als "gelöst" markiert. Den entsprechend Beitrag findest du hier.

Unterstütze die Community und teile den Beitrag für mehr Leser und Austausch

Newsletter Anmeldung

Keine Beiträge verpassen! Wöchentlich versenden wir lesenwerte Beiträge aus unserer Community.
Die letzte Ausgabe findest du hier.
Details zum Versandverfahren und zu Ihren Widerrufsmöglichkeiten findest du in unserer Datenschutzerklärung.