Consultor Eletrônico



Kbase P150749: UPDATE TEXT() statement opens new line at insertion point if user moves back to enter corrections
Autor   Progress Software Corporation - Progress
Acesso   Público
Publicação   02/02/2010
Status: Verified

SYMPTOM(s):

UPDATE TEXT() statement opens new line at insertion point if user moves back to enter corrections

Line opens up even after enough characters have been deleted to make room for the new characters.

After few BACKSPACE, DELETE, PASTE, RETYPE and CURSOR repositioning activities, erratic things start to happen to the data in the fields (FILL-IN)like some FILL-IN data disappearing, data moving from one FILL-IN into another, blank lines appearing, etc.


Problem occurs when the user:
1. Moves cursor to a previous line with the up arrow key.
2. Moves cursor backward with left arrow or backspace.
3. Deletes one or more characters with destructive backspace or delete key.
4. Enters new characters in INSERT mode.

Exact number of characters that may be entered before new line opens up varies.

FACT(s) (Environment):

Application has been upgraded to OpenEdge 10.2A with no service packs installed.
Same application using UPDATE TEXT works correctly in Progress 9.
IBM AIX
Windows
OpenEdge 10.1B
OpenEdge 10.2A

CAUSE:

Two null bytes are being inserted after the ESC-[4m control character (underscore) at the beginning of each line, and after the ESC-[m control character (turn off character attributes) that is sent before the INSERT code. These invisible bytes make the text line longer than it appears. When new characters are entered, the line becomes longer than its maximum length, and UPDATE TEXT opens a new line at the insertion point to accommodate the new characters.

FIX:

Upgrade to OpenEdge 10.2A01 or later.