Domino 9 und frühere Versionen > ND7: Entwicklung

Umwandlung in Dezimalzahl

(1/3) > >>

Demian:
Moin,moin alle zusammen,

folgende Konstellation:

Ich bekomme von einem Fremdsystem folgende strings, die ich in Dezimalzahlen umwandeln müsste:

"000000129-" oder
"000000129 "

Die " sind nur zur Verdeutlichung, dass bei positiven Zahlen an letzter Stelle ein Leerstring ist.

Die letzten beiden Ziffern stellen die Nachkommazahlen dar.

Es handelt sich also um die Werte -1.29 bzw. 1.29.

Irgendwie steh ich da im Moment voll auf dem Schlauch.

Hat jemand nen Ansatz, wie ich die Strings am Besten umwandeln kann?

Gruß
Demian

m3:
Formelsprache, LotusScript, JavaScript oder Java ?

Demian:
Sorry, ganz vergessen: Vorzugsweise in Script.

m3:
Na MId$ und Right$, String auseinanderschneiden und dann zusammenbauen.

Demian:
Moin,moin,

ich habe da nur das Problem mit den führenden Nullen. Insbesondere wenn die erste Vorkommazahl auch ne Null ist.

Hier mal mein bisheriger Code:

Function Sum(SumLine As String) As Currency
   Dim Zeros As Integer
   Dim PreDecimalPosition As String
   Dim DecimalPlace As String
   Dim SubTotal As String
   Dim i As Integer
   
   For i = 1 To 9
      If Mid(SumLine, i, 1) = 0 Then
         Zeros = Zeros + 1
      Else
         Exit For
      End If
   Next i
   
   If Zeros > 6 Then Zeros = 6
   
   PreDecimalPosition = Mid(SumLine, Zeros + 1, 7 - Zeros)
   DecimalPlace = Mid(SumLine, 10 - Zeros + 1, 2)
   SubTotal = Cstr(PreDecimalPosition & "," & DecimalPlace)
   
   If Right(SumLine, 1) = "-" Then
      Sum = Format(SubTotal,"Currency") * -1
   Else
      Sum = Format(SubTotal,"Currency")
   End If
End Function

Je länger ich da drauf guck, desto weniger Durchblick hab irgendwie. Irgendwie haperts bei dem

if Zeros > 6 und dem PreDecimalPosition.

Gruß
Demian

Navigation

[0] Themen-Index

[#] Nächste Seite

Zur normalen Ansicht wechseln