PROCEDURE Inc (P_Number IN OUT NUMBER) IS BEGIN P_Number := P_Number + 1; END; PROCEDURE Dec (P_Number IN OUT NUMBER) IS BEGIN P_Number := P_Number - 1; END;Diese Prozeduren nutze ich seit 20 Jahren in der ein oder anderen Variation. Manchmal mit zwei Parametern, oft auch nur mit einem Parameter. In der ganzen Zeit gab es nie Probleme
In neueren Versionen von Oracle Forms funktioniert dies nun nicht mehr
Und warum? Oracle hat in PL/SQL einen neuen SUBTYPE für DECIMAL erzeugt und ihn "DEC" genannt. Diesen TYPE kann man zum Beispiel zur Variablendeklaration benutzen:
DECLARE V_Value DEC; BEGIN ...
Das zerstört natürlich meine Prozedur in der PL/SQL-Library :-(
Alle anderen Sprachen kennen von Hause aus schon INC und DEC. Nur nicht Oracle!
Also immer schön acht geben beim erzeugen von neuen Funktionen die für lange Zeit gültig sein sollen :-)
Gerd
Keine Kommentare:
Kommentar veröffentlichen