Hi,
ich muss einen Float - Wert in seine Besatndteile zerlegen.
Dafür habe ich mir eine SP geschrieben.
Leider ist das Verhalten bezüglich der Umwandlung in Firebird unterschiedlich.
Der Test mit folgendem Statement liefert das gewünschte Ergebnis:
select lpad(trunc(10077.34), 6, '0') from rdb$database
Ergebnis: 010077
Das gleiche aus der SP:
SQL-Code:
create procedure TRUS_ARTIKELNUMMER (
WERT type of WAEHRUNG)
returns (
NUMMER type of VARCHAR6,
ZUSATZ type of VARCHAR2)
as
begin
nummer = lpad(trunc(:wert), 6, '0');
zusatz = lpad(trunc((:wert - trunc(:wert)) * 100), 2, '0');
suspend;
end
liefert dann aber:
10077.
Wie wandelt man Integer in Varchar ohne den Tausender - Punkt.
Frank