Hallo,
ich habe mal wieder ein kleines Problem.Diesmal ist es die Darstellung von Zahlen.
Ich habe mehrere Zahlen TYPE p DECIMALS 2, die leider nicht das gewünschte Format haben.
Beispiel: 2043,98 wird ausgegeben und der Kunde wünscht 2.043,98! Wie kann man das realisieren?
Es sollte aber für alle Zahlen gelten, nicht nur für das Bsp.
- in den Benutzereinstellungen unter dem Punkt _ Festwerte - Dezimaldarstellung
- im Programm - in der Docu suchen using edit Mask (Ausgabe auf Liste), im ALV kann man auch bei den Eigenschaften eine Maske einstellen (Docu dazu heranziehen)
Hallo jens,
ich hole mir die Daten aus SAPscript mit Hilfe eines Performs, da sind sie auch im richtigen Format. Jetzt muss ich einen Replace durchführen, um mit den Daten rechnen zu können. Nach der Berechnung muss ich die Daten in das Formular schreiben und dann sind die Daten nicht mehr in dem gewünschten Format.
Damit fällt das USING weg und die Geschichte mit dem Benutzereinstellung kann ich auch nicht machen, da es für den Kunden gedacht ist.
Gruß
wowa
du hast im Formular einen Absprung in deine Form Routine oder ?
Was für Felder werden im Formular ausgegeben - DDIC Felder (Wertefelder) oder sind es Characterfelder einer Struktur ? Bitte ein paar mehr Infos, was du genau machst / machen willst.
Die Einstellungen zum Benutzer beziehen sich meinerseits auf den Anwender / SAP User und da ist es unabhängig ob es ein Kunde ist oder du als Entwickler - im SAP GUI sind diese Einstellungen zu finden oder über die TA SU01 mal anschauen !
Denn auch der Kunde arbeitet ja mit der GUI oder ?!
Genau, ich rufe aus dem Formular mein kleines Projekt auf. Das Feld was ich brauche ist vom TYP CURR(MHND-WRSHB). Der Kunde hat keine Oberfläche im herkömmlichen Sinne. Er will jemanden Mahnen(F150) und wenn er alles Selektiert hat, wird ein Druckformular erstellt. Die Felder im Formular sind Wertefelder.
Genau, ich rufe aus dem Formular mein kleines Projekt auf. Das Feld was ich brauche ist vom TYP CURR(MHND-WRSHB). Der Kunde hat keine Oberfläche im herkömmlichen Sinne. Er will jemanden Mahnen(F150) und wenn er alles Selektiert hat, wird ein Druckformular erstellt. Die Felder im Formular sind Wertefelder.
also die daten im Formular kannst du auch mit einer Maske aufbereiten lassen schaue dazu die Docu zu Sapscript an - Aufbereitungsoptionen - in deinem Fall üsste im Formular stehen &MHND-WRSHD& - wenn im Formualr steht -
&MHND-WRSHD(T)& - dann wird der Tausender Separator weg gelassen.
Welcher Separator gezogen wird -> Benutzer / System Einstellung - entweder . oder ,
Siehe Docu SAPScript Control Commands
Dieses Feld lese ich zwar ein, gebe aber mein eigenes Feld zurück(&eigene_summe&). Das Feld MHND-WRSHB brauch ich zum Schluss in dem Formular nicht mehr, weil ich eine neue Berechnung der Kosten durchführen muss. Ich dachte es gibt ein FUBA oder was auch immer, wo man eine Zahl im Stil von "2048.98" eingeben kann und zurück eine Zahl in dem Format "2.048,98". bekommt.
Aber mit diesem Befehl ist man nicht Flexibel oder irre ich mich? Für mein BSP. 2048,98 wäre die Maske '_.___,__'.Aber was ist Wenn die Zahl größer oder kleiner ist?
bitte Docu zu Befehl lesen
- wenn die Zahl kleiner Tausend ist - dann interessiert das eh nicht - dann steht da 999,00 z.Bsp.
- Wenn über Tausend - dann steht da 9.999,00 z.Bsp.
- wenn noch grösser - dann gibt es keinen weiteren Separator bei dieser Maske
Gruss
Folgende Benutzer bedankten sich beim Autor jensschladitz für den Beitrag: Wowa