Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

[Uniface-L] Saving Hex A0 ( non-breake space ) in DB

23 views
Skip to first unread message

dammie

unread,
Jul 7, 2010, 4:23:14 AM7/7/10
to unif...@uug.org
Hello,

I have defined column varchar18 in db (in model String VC18). I am trying import txt file via form in Uniface and save data into this db column.

There is text comming "2000-2001/ABCD XL " in Hex (323030302D323030312F4D54504C20584CA0). Lenght of this text is 18, but after store I ve got $error 0120 Error on field field ; subfield too large.

I think there is problem with last symbol ( Hex A0 = Non-break space? ). If I replace it with simply " " ( Hex 20 ) import is working without errors. (I can save this text also if I delete TWO (!) other chars e.g. if I save "00-2001/ABCD XL" )

Any comments? Why I cannot save Non-break space as simple char. I need extra space (2 another chars) in DB or it is uniface that is interperting symbol " " ( Hex A0 ) as 3 symbols?

dammie

Paul Koldijk

unread,
Jul 7, 2010, 5:12:10 AM7/7/10
to Uniface User Group Discussion Forum
Is it an Oracle Db? Dit you define the string as a CHAR or BYTE?
Sometimes BYTE needs 2 positions voor 1 charater. Ex. é or ë


2010/7/7 dammie <Musil...@seznam.cz>
_______________________________________________
Uniface User Group Discussion Forum
For more information: http://lists.umanitoba.ca/mailman/listinfo/uniface-l
To unsubscribe/set options: http://lists.umanitoba.ca/mailman/options/uniface-l

dammie

unread,
Jul 7, 2010, 7:42:12 AM7/7/10
to unif...@uug.org
Sybase DB, simple definition like this:

create table abcd (
...
...
...
info varchar(18),
...
...
...
)

Ulrich Merkel

unread,
Jul 7, 2010, 7:27:18 AM7/7/10
to Uniface User Group Discussion Forum
Hi dammie,

diacriticals and non-printable characters are stored internally as 3byte sequences.
Therefore the subfield is longer than the nunber of characters.

Just an experiment: take a C20 field and fill it with 20 7bit charactes and replace one with umlauts etc.
You can see the too long error raising; even with 11 umlauts.

Success, Uli

-- Ulrich Merkel --
ulrich...@web.de
+49(69)317881

-----Ursprüngliche Nachricht-----
Von: dammie <Musil...@seznam.cz>
Gesendet: 07.07.2010 10:23:14
An: unif...@uug.org
Betreff: [Uniface-L] Saving Hex A0 ( non-breake space ) in DB

Frank Sjoukes

unread,
Jul 8, 2010, 10:41:39 AM7/8/10
to Uniface User Group Discussion Forum
Hi,
 
Which version of Uniface 8 or 9?
What type of field:
Uniface 8: special string
Uniface 9: String
See: Uniface 9.1: Changes in Default Behavior of String Data Type
Kind regardsFrank Sjoukes


Van: Ulrich Merkel [mailto:Ulrich...@web.de]
Verzonden: wo 7-7-2010 13:27
Aan: Uniface User Group Discussion Forum
Onderwerp: Re: [Uniface-L] Saving Hex A0 ( non-breake space ) in DB

0 new messages