Decimalzahlen werden im Selektionselement immer gerundet?

Dieses Thema im Forum "AppDesigner" wurde erstellt von mgosx, 18. Dezember 2019.

  1. mgosx

    mgosx Mitglied

    Hallo zusammen,

    ich rufe ein Selektionselement auf und übergebe u.a. die Dichte mit 4 Nachkommastellen an dieses.
    Die zugehörende Struktur hat ein Feld Dichte, mit 4 NKS definiert.

    Beim Aufruf mittels Makro und Selektionsdialog öffnen übergebe ich die Dichte (diese hat 4 NKS):
    Dichte:=[Dichte]

    Im Selektionselement wird diese jedoch immer auf 2 NKS gefunden dargestellt.
    d.h.
    - Dichte beim Aufruf: 1,1234
    - Dichte im Element: 1,1200

    Wie kann ich dies beeinflussen, bzw. wo liegt mein Fehler?
     
  2. khk

    khk Neues Mitglied

    Hallo mgosx,

    übergibst du den Wert an ein anderes Selektionselement oder an sich selbst? Bin dahingehend etwas verwirrt in deiner Darstellung.

    Darf ich den Anwendungsfall erfahren, wieso der Wert von einem Selektionselement an das andere übergeben werden soll?

    MfG
    khk
     
  3. mgosx

    mgosx Mitglied

    Hallo KHK,
    ich rufe das Selektionselement aus einem Listenelement auf und übergebe die Parameter.
    Hintergrund ist ein Etikettendruck. Im Selektionselement kann der Benutzer noch die Menge eingeben.
    Zum Verständnis:
    Im listenelement ist das Feld Dichte mit 4 NKS angelegt und wird so angezeigt.
    Bei der Übergabe ins Selektionselement rundet der Appdesigner aber das Ergebnis und stellt es z. B. als 1,1200 dar.
    Gruß Mark
     
    khk gefällt das.
  4. khk

    khk Neues Mitglied

    Hallo Mark,

    das ist ein Fehler, der an Sage gemeldet werden muss. Die Nachkommastellen verschwinden bereits bei der Nutzung des Feldes "Dichte" im Makro.

    Trotzdem habe ich einen "Hack" gefunden, mit dem es klappt:
    Das Listenelement hat nehme ich an eine Datenquelle, aus der das Feld "Dichte" gelesen wird. Hier muss ein neues Feld "DichtePseudo" (Decimal) angelegt werden mit Eigenschaft "SQL-Abfrage" = "Dichte * 10000".

    upload_2019-12-19_9-14-33.png

    Das Feld muss auch dem Listenelement hinzugefügt werden, kann aber versteckt sein.

    Die Makro-Übergabe an das Selektionselement funktioniert dann so:
    Code:
    Dichte:=[DichtePseudo] / 10000
    Damit klappt es einwandfrei. Bei größeren Problem könnte ich übrigens nach Absprache vorbeikommen, wohne im gleichen "Dorf" wie Sie ;)

    LG
    khk
     
    mgosx gefällt das.
  5. ALangmaack-Sage

    ALangmaack-Sage Aktives Mitglied Mitglieder

    Dem kann ich mich nur anschließen.
     
  6. mgosx

    mgosx Mitglied

    ich dachte mir schon, dass es ein Fehler ist und auch dass man diesen siehe Hack umgehen kann.
    Aber ich wollte doch sicher gehen, dass ich nicht doch irgendetwas übersehen habe.

    lg MG
     

Diese Seite empfehlen