Trennzeichen für statische Wertelisten

Beim Definieren von statischen Wertelisten in Oracle APEX kann man unangenehme Nebeneffekte erzielen, wenn man einen Beistrich „,“ oder ein Semikolon „;“ im Anzeige- bzw. Rückgabewert verwenden will.

Das liegt daran, dass APEX intern diese beiden Zeichen als Trennerzeichen zwischen den einzelnen Anzeige bzw. Rückgabewerten verwendet. Ist nun so ein Trennzeichen im Anzeigewert enthalten, kommt der APEX Parser durcheinander und ihre Werteliste wird falsch dargestellt.

Über dieses Problem hat Patrick Wolf schon vor einigen Jahren gebloggt, nun ist es an der Zeit dies wieder zu erwähnen (ich selbst vergesse es immer wieder und muss von neuem suchen…).

Wie erwähnt verwendet APEX intern den Beistrich und das Semikolon als Trennzeichen zwischen den Anzeige- und Rückgabewerten, denn intern wird die gesamte Werteliste in einem einzigen Feld gespeichert.

Beispiel: STATIC2:No Work;NOWORK,Holiday;HOLIDAY,Working Day;DEFAULT

 

Um selbst Beistrich/Semikolon in der LOV-Definition zu verwenden, kann APEX dazu überredet werden andere Trennzeichen zu verwenden.

Dazu folgendes Beispiel: STATIC2(~,*):No Work, Holiday*FREE~Working Day*DEFAULT

 

Ein kleiner Trick, der einem die letzten Haare auf dem Kopf retten kann !