Home Forum Nuclos Konfiguration Vorgänge und Objekte Dynamisches BO Formatierung double Datentyp

Ansicht von 5 Beiträgen - 1 bis 5 (von insgesamt 5)
  • Autor
    Beiträge
  • #9515
    Dieter Mennig
    Teilnehmer

    Hallo zusammen,

    ich habe ein dynamisches Businessobjekt erstellt, das u.a. auch Spalten enthält mit double Datentypen und Gruppierung. Wenn ich nun das Ergebnis teste (Vorschau) fällt auf, dass die Nachkommastellen abgeschnitten werden, wenn sie 0 sind. Beispiele:

    110,95 –> 110,95 (passt)
    110,90 –> 110,9 (0 wird abgeschnitten)
    110,00 –> 110 (,00 wird abgeschnitten)

    Im Unterformular wo das dynamische BO angebunden ist, werden immer alle Nachkommastellen abgeschnitten. Dort erscheint dann immer nur eine ganze Zahl (im Beispiel 110), egal welche Nachkommastellen die Zahl hat. Siehe dazu auch die screenshots. Im Unterformular sollen die Zahlen aber mit 2 Nachkommastellen angezeigt werden.

    Bei referenzierten „echten“ BO’s erscheinen im Unterformular die beiden Nachkommastellen korrekt. Ebenso, wenn ich beim dynamischen BO nicht gruppiere.

    Kann man das bei dynamischen BO’s irgendwo einstellen oder muss man mit Formatierungsbefehlen arbeiten. Auf welche Formatierungsbefehle hört das dynamische BO im SQL Statement?

    Herzlichen Dank.

    #9517
    Fry123
    Teilnehmer

    ich bin nicht sicher aber ich glaube das muss einen casten haben.

    SELECT CAST(1 AS NUMERIC(9,2))

    #9518
    Dieter Mennig
    Teilnehmer

    Hi Fry123,

    danke für die schnelle Info. Einen CAST habe ich schon probiert, war aber ohne Wirkung. Mir ist aber aufgefallen, dass die Änderungen nicht sofort übernommen werden. Werde es deshalb nochmals probieren und danach den Server neu starten. Mal sehen, ich berichte dann…

    #9519
    Nick Röder
    Teilnehmer

    Am besten mit to_char() umwandeln. Die Darstellung im dyn BO geht derzeit nicht anders.

    Alternativ ein virtuelles BusinessObjekt daraus machen. Dann greifen auch die normalen Mechanismen

    #9533
    Dieter Mennig
    Teilnehmer

    Hallo zusammen,

    so, ich habe nun einiges probiert sowohl mit einem dynamischen BO, als auch mit einem virtuellem.

    1. dynamisches BO
    Die Umwandlung mit TO_CHAR funktioniert, ist aber nicht optimal, weil die umgewandelten Zahlen in der view linksbündig stehen, „normale“ Zahlen aber rechtsbündig. Eine rechtsbündige Formatierung in der view habe ich nicht einstellen können (habe aber auch nur erweiterte Eigenschaften probiert, damit habe ich es nicht hinbekommen). Vielleicht geht das irgendwie.
    Ein CAST funktioniert, allerdings nur in der View, nicht in der Vorschau (das reicht ja aber). Hier funktioniert vor allem auch die rechtsbündige Darstellung. Insofern würde ich den CAST einer TO_CHAR Anweisung vorziehen.

    2. virtuelles BO
    Das virtuelle BO war ein kleines Gefrickel, ich habe die Abfrage dann aber hinbekommen. Ein Problem war u.a., dass die summierten Zahlen auch nicht als double identifiziert werden konnten, sondern als integer. So ist auch hier ein CAST erforderlich. Mit dem CAST wird ein double Feld dann auch tatsächlich als double angelegt. Anbei ein kleines Beispiel für eine solche Abfrage (wer es mal brauchen kann), bezieht sich natürlich jetzt auf die bei mir verwendeten Objekte.

    Damit funktioniert nun die Abfrage und die View. Insofern werde ich es beim virtuellem BO belassen (dynamische sollen ja irgendwann auslaufen).

    Kleine Anregung: Eine Entwurfsoberfläche für virtuelle BO (so wie bei den dynamischen) wäre echt cool. Ich bin so vorgegangen, dass ich in der Entwurfsoberfläche der dynamischen BO die Abfrage zusammengestellt und getestet habe. Erst dann habe ich die SQL Anweisungen in das virtuelle BO übertragen.

    Danke nochmal für eure Unterstützung.

    Attachments:
Ansicht von 5 Beiträgen - 1 bis 5 (von insgesamt 5)