Hallo,

wenn Du Nummer statt gepackt numerisch als Integer definierst klappt es. (SQL interpretiert numerische Ausdrücke, solange kein Dezimal-Trennzeichen angegeben wurde, immer als Integer!)

Die skalare Funktion Hex konvertiert den Inhalt eines Feldes so wie er gespeichert wurde. In gepackten Feldern werden die einzelnen Ziffern in Halbbytes gespeichert und in dem letzten Halbbyte steht das Vorzeichen.

Der Inhalt von Integer-Felder wird dagegen binär gespeichert und damit zeigt Dir die Funktion HEX dann auch den gewünschten Wert an.

Eine andere Variante (ohne SQL) wäre, ein Alpha-Feld in einer Datenstruktur durch ein Integer-Feld zu überlagern.

PHP-Code:
D DSConvert       DS                    Qualified                       
D   Hex                          1A                            
D   Num                         3U 0  Overlay
(Hex
Wenn Du jetzt 37 in DSConvert.Num schiebst, steht der Hex-Wert, den Du suchst in DSConvert.Hex.
Diese Lösung klappt allerdings nur bei numerischen Werten.

Birgitta