[gelöst]Unwissenheit bei Variablen Deklaration

Programmierung unter AOO/LO (StarBasic, Python, Java, ...)

Moderator: Moderatoren

pcdirk91
***
Beiträge: 54
Registriert: Fr, 15.11.2013 18:02
Wohnort: Fürth/bay

[gelöst]Unwissenheit bei Variablen Deklaration

Beitrag von pcdirk91 »

Hallo Leute,
ich habe wieder mal ein Anfängerproblem
Dank Stephans Hilfe habe ich in einem Dialog ein Grid erstellt in dem ich nun Zahlenwerte anzeigen kann. Das Problem besteht nun darin das in der Gridspalte "x-Achse" z.B, die Zahl 15 (Tabellenwert 15,00) aufgelistet ist eine Zeile weiter ist z.B die Zahl 15,1(Tabellenwert 15,10) und wieder eine Zeile weiter unten die Zahl 15,21 (Tabellenwert 15,21) "sind nur Beispiele".
Diese Werte kommen aus einer Tabelle in der das Zahlenformat "#.##0,00" definiert ist also 2 Nachkommastellen. Ich bräuchte also die Möglichkeit die es mir erlaubt jede Zahl mit 2 Nachkommastellen in eine Variable zuschreiben. Im Moment habe ich das mit formeln in der Tabelle gelöst in der ich aus dem wert einen String mache im Grid stehen dann die Ziffern mit 2 Nachkommastellen drin. Geht aber ist etwas mühsam (so finde ich es.
Vielleicht kann mir jemand helfen oder mir sagen wo ich nachlesen kann. Denn das mit den Variablenb habe ich noch nicht richtig verstanden
Für Euch ist das sicher nen Klacks. Acxhso diese Zahlenwerte habe ich in einem Array aufgenommen.

Vielen Dank im Voraus
Lg von Dirk
Zuletzt geändert von pcdirk91 am Mo, 08.04.2019 00:06, insgesamt 1-mal geändert.
F3K Total
********
Beiträge: 3704
Registriert: Mo, 28.02.2011 17:49

Re: Unwissenheit bei Variablen Deklaration

Beitrag von F3K Total »

Moin,
ich habe auch keine andere Lösung gefunden als die Zahlen in Text umzuwandeln.
Es ist mir weder gelungen, die Spalten des GRIDs zu formatieren, noch ist es nach meiner Meinung möglich in Starbasic Zahlen mit nur zwei Nachkommastellen zu deklarieren.
Gruß R
pcdirk91
***
Beiträge: 54
Registriert: Fr, 15.11.2013 18:02
Wohnort: Fürth/bay

Re: Unwissenheit bei Variablen Deklaration

Beitrag von pcdirk91 »

Hey,
danke für die prompte Antwort. Na da bin ich ja eher froh das nicht nur mir das so geht sondern anderen auch. Danke für die schnelle Antwort.
Dann bleibt das erstmal so bei menem Projekt . Es ist ja nicht so das diese Berechnungen einen erheblichen Zeitanspruch einnimmt ( muss diese Formeln ja entsprechend der Einträge kopieren). Also nochmals Danke und nen schönen Abend

Gruß Dirk
marcel_at_work
****
Beiträge: 195
Registriert: Sa, 24.04.2010 15:51
Wohnort: Basel [CH]

Re: [gelöst]Unwissenheit bei Variablen Deklaration

Beitrag von marcel_at_work »

Hallo ihr beiden,

bei funktioniert das eigentlich ohne Probleme.

Der folgende Code ist aus einem Projekt mit einer SQLite-Datenbankabfrage, die ich gerade ein wenig angepasst habe. Die abgefragte ID (Integer) aus der DB wird in ein Array eingelesen und auf zwei Nachkommastellen formatiert im Grid angezeigt:

Code: Alles auswählen

With oQueryOverview
	If Not isNull(oQueryOverview) Then
		While .Next()
			Redim Preserve arrRows(n)
			arrRows(n) = Array(Format(.getInt(.columns.findColumn("ID")), "0.00"))
			n = n + 1
		Wend
	End If
	.Close()
End With

Code: Alles auswählen

irgendeinArray(n) = Format(irgendeineZahl, "0.00")
... sollte analog also auch möglich sein.

Viele Grüße,

Marcel
[Win 10 Pro x64/Downgrade 7, AOO 4.1.6 und LO 6.3.0.4]
mikeleb
*******
Beiträge: 1316
Registriert: Fr, 09.12.2011 16:50

Re: [gelöst]Unwissenheit bei Variablen Deklaration

Beitrag von mikeleb »

Hallo,

Code: Alles auswählen

Format(irgendeineZahl, "0.00")
wandelt die Zahl eben in eine Zeichenkette, was pcdirk91 eigentlich gerade vermeiden möchte.
Gruß,
mikeleb
marcel_at_work
****
Beiträge: 195
Registriert: Sa, 24.04.2010 15:51
Wohnort: Basel [CH]

Re: [gelöst]Unwissenheit bei Variablen Deklaration

Beitrag von marcel_at_work »

Hoi,

upps, da ist was dran... :shock:

Viele Grüße,

Marcel
[Win 10 Pro x64/Downgrade 7, AOO 4.1.6 und LO 6.3.0.4]
Hiker
******
Beiträge: 590
Registriert: Mo, 08.09.2014 21:34
Wohnort: Berlin

Re: [gelöst]Unwissenheit bei Variablen Deklaration

Beitrag von Hiker »

Hallo,

Dirk ist da mit einem grundsätzlichen Problem konfrontiert, da Basic und auch die CPU heute normalerweise intern mit binären Floating-Point Codierungen arbeiten, die nicht eins zu eins auf dezmale Floating-Points abzubilden sind.

Wenn man das braucht muss man spezielle Libraries verwenden (oder einen sehr alten Computer finden, der noch BCD = binary Codes decimal verarbeitet).

Ergo: Dirk muss ggfs selbst passend runden.

Mfg, Jörn
Libre Office 6.3.1 (Win 10 Pro) / Libre Office 6.0.7 (Win8.1 Pro, Win 7 Pro) / AOO (Win 7)
Antworten