Kbase P109894: Characters left when deleting the content of a fill-in in OE10B03, using UTF-8
Autor |
  Progress Software Corporation - Progress |
Acesso |
  Público |
Publicação |
  01/02/2006 |
|
Status: Unverified
FACT(s) (Environment):
OpenEdge 10.0B
SYMPTOM(s):
Optical problem when deleting the content of a fill-in
Selecting the content of a fill-in and pressing a key results in a optical problem
The fill-in is not cleaned correctly: one or two characters of the last input (from the end) stay in the input area.
The problem is at visual level only. The characters left are never considered nor stored in the Database.
Using cpinternal UTF-8
It works fine when not using cpinternal UTF-8
OpenEdge 10.0B with Service Pack 3
CAUSE:
This is a known issue being investigated by Development
FIX:
The issue can be worked around by simulating the cleaning in a trigger. To do this use ANY-PRINTABLE trigger. See the code below as sample:
DEF VAR v-feld AS CHAR FORMAT "x(10)" NO-UNDO.
DEFINE FRAME f-frame
v-feld AT ROW 2 COL 35 COLON-ALIGNED LABEL "Just press a key to see the issue"
VIEW-AS FILL-IN NATIVE SIZE 15 by 0.9
WITH SIDE-LABELS NO-UNDERLINE THREE-D OVERLAY
KEEP-TAB-ORDER SIZE 80 BY 10.
/* uncomment below to workaround */
/*
ON ANY-PRINTABLE OF v-feld IN FRAME f-frame DO:
IF SELF:SELECTION-START <> ? THEN DO:
DEFINE VARIABLE i AS INTEGER NO-UNDO.
i = SELF:SELECTION-START.
SELF:SCREEN-VALUE =
SUBSTRING(SELF:SCREEN-VALUE, 1, SELF:SELECTION-START - 1 )
+ CHR(LASTKEY)
+ SUBSTRING(SELF:SCREEN-VALUE, SELF:SELECTION-END).
SELF:CURSOR-OFFSET = i + 1.
RETURN NO-APPLY.
END.
END. */
ENABLE v-feld WITH FRAME f-frame.
v-feld:SCREEN-VALUE = "äöüßäöüßäö".
WAIT-FOR CLOSE OF THIS-PROCEDURE.