Page 1 of 1

SQ02 maximalen Wert eines Feldes ausgeben

PostPosted: Wed Oct 07, 2009 11:21 am
by Erica1936
Hallo Zusammen,

ich habe mit der SQ02 ein Infoset erzeugt und über die SQ01 einen darüber laufenden Query erzeugt. Als Ergebnis werden alle Rückmeldungen im SAP-System aufgelistet.

Nun zu meiner Frage:
In der Liste werden auch die Stornierungen der Rückmeldungen angezeigt, was im Endeffekt die Summe der Rückmeldungszeit verfälscht, da die Stornierungen einfach addiert werden.

Lösung hierfür wäre nur die Rückmeldungen auszugeben, welche den aktuellsten Zeitstempel haben. Insofern müsste man den maiximalen Wert des Feldes "Datum der Rückmeldung" ausgeben.

Ist sowas in der SQ02 möglich oder benötige ich hier ABAP?

Danke im Voraus!

Grüß Timm

Werte

PostPosted: Thu Oct 08, 2009 10:09 am
by Erica1936
Hallo Nochmal,

habe jetzt einen anderen Lösungsansatz, da die Stornierungen von Rückmeldungen auch in der Liste erscheinen sollen. Die Zeiten der Stornierungen sollten als Minus-Wert ausgegeben werden, dann würde die Summe wieder passen.

Wie kann ich in bestimmten Ausgabefeldern die Vorzeichen der Werte umdrehen?

Im Anhang befindet sich eine Beispielliste des angesprochenen Queries, die das ganze veranschaulicht. Der Wert der Stornierung von 350 Stunden sollten als Minuswert ausgegeben werden

Danke und Gruß Timm

PostPosted: Thu Oct 08, 2009 12:06 pm
by Len2363
Hallo Timm,

in der Tabelle AFRU gibt es das Feld STOKZ (Flag ob Rückmeldungssatz storniert wurde). Damit müsstest Du arbeiten können. Wenn AFRU-STOKZ = X dann Wert *-1.

Gruß
Jörg

PostPosted: Thu Oct 08, 2009 12:29 pm
by Erica1936
Danke, das hört sich sehr brauchbar an. Nur wie kann ich das in der SQ01 umsetzen, dass ich bei gesetztem Stornokennzeichen diesen Wert mit -1 multipliziere.

Ich denke hier ist abap-Coding erforderlich oder? Wenn ja, wie kann ich das einbauen? Für Vorschläge wäre ich sehr dankbar.

Grüße Timm

PostPosted: Thu Oct 08, 2009 12:50 pm
by Tron
Moin,
mit ABAP geht es natürlich, aber vorher kannst Du es mit Zusatzfeldern (inkl Berechnung mit Formel) probieren.
http://help.sap.com/saphelp_pserv464/he ... ontent.htm
gruß Tron

PostPosted: Thu Oct 08, 2009 4:40 pm
by Erica1936
Danke für die Tips. Das hat mich schon ein bisschen weiter gebracht.
Muss aber gestehen, dass ich eher im Customizing zu Hause bin, als im Programmieren.

Habe jetzt ein Zusatzfeld mit dem Namen Stornozeit definiert.
In dem Feld ist folgendes Coding hinterlegt.

if AFRU-STOKZ = 'X'.
STORNOZEIT = AFRU-ISM03 * -1.
ENDIF.

Das Ergebnis habe ich angehängt. Was ist falsch?

PostPosted: Thu Oct 08, 2009 5:30 pm
by Joeline5261
Hallo,
das Feld wird gefüllt aber nie gelöscht, evtl. besser so.

if AFRU-STOKZ = 'X'.
STORNOZEIT = AFRU-ISM03 * -1.
else.
clear: stornozeit.
ENDIF.

Gruß Wolfgang

PostPosted: Thu Oct 08, 2009 6:34 pm
by Tron
Moin.
also so muss es gehen.
Code: [Select all] [Expand/Collapse] [Download] (Untitled.txt)
  1. if afru-stokz is initial.
  2. stornozeit = afru-ism03.
  3. stornozeit = afru-ism03 * -1.
GeSHi ©

Meine Tabelle:
Bild
Das Ergebnis
Bild
Das Feld stornozeit ist sozusagen die korrigierte afru-ism03, die dann angezeigt werden soll.
Das Feld der afru-ism03 könnte so bei der Ausgabe unterdrückt werden. :wink:
(nicht vergessen stornozeit in die FELDGRUPPE mit aufzunehmen)
gruß Tron

PostPosted: Fri Oct 09, 2009 9:06 am
by Erica1936
Sensationell Tron, so gehts! Vielen Dank auch an die Anderen. Waren nur brauchbare Antworten dabei.

Viele Grüße Timm