Tags:
tag this topic
create new tag
view all tags
---+ .TEXT FROM UNICODE This subroutine transcodes a Unicode alpha field into a RAW alpha field. Added in 6.0.0 <br /><span data-mce-mark="1"><span data-mce-mark="1"><span data-mce-mark="1"><span data-mce-mark="1"><span data-mce-mark="1"><span data-mce-mark="1"><span data-mce-mark="1"><span data-mce-mark="1"><span data-mce-mark="1"><span data-mce-mark="1">%TOC%</span></span></span></span></span></span></span></span></span></span> ---++ Usage <pre> PASS <raw> FIELD SHARE? Y PASS <unicode_source> FIELD SHARE? N PASS <encoding> FIELD SHARE? N PASS <action> FIELD SHARE? N PASS <option> FIELD SHARE? N PASS <error_text> FIELD SHARE? Y GOSUB --- .TEXT FROM UNICODE * Check for errors IF --- .TEXT FROM UNICODE NE </pre> ---++ Description This subroutine will transcode a Unicode alpha field to a RAW alpha field with error handling for the characters that cannot be transcoded. The first 2 parameters are required. If any required parameters are missing, the subroutine will CANCEL. <raw> is the RAW alpha field to contain the transcoded string (Required). This must be PASSed with Share "Y" to return the value. *This must be a RAW field type, otherwise the transcoding will fail.* <unicode_source> is the field containing the Unicode string to be transcoded (Required). <encoding> is the encoding to use in the RAW target field. If not specified or a blank is PASSed, it will check the environment variable APPX_RAW_ENCODING and use that encoding. If that is not present, it will default to ISO-8859-15. <action> is the action to be taken if a character cannot be transcoded to RAW (Optional). If not PASSed or blank is PASSed, defaults to SKIP. * SKIP - skip the offending character, it will not be transcoded to the target field but the remaining characters will be. * STOP - stop transcoding and return an error * SUBS - Substitute the character in the <option> field for the offending character * ESCAPE - Escape the character according to the convention specified in the <option> field <option> contains either the substitute character to use if <action> is SUBS or the convention to use if <action> is ESCAPE. This is required if <action> is SUBS or ESCAPE. If <action> is SUBS you may pass any single character that exists in the target encoding. If more than one character is PASSed, only the first character is used. If <action> is ESCAPE, then PASS one of the following: * <span data-mce-mark="1" style="background-color: transparent;">C - specifies C style escaping (\uXXXX or \UXXXXXXXX)</span> * <span data-mce-mark="1" style="background-color: transparent;">STYLE - specifies CSS2 escaping (\XXXXXX)</span> * <span data-mce-mark="1" style="background-color: transparent;">JAVA - specifies Java escaping (\uXXXX)</span> * <span data-mce-mark="1" style="background-color: transparent;">UNICODE - specifies Unicode escaping {U+XXXXX}</span> * <span data-mce-mark="1" style="background-color: transparent;">DECIMAL - - specifies XML decimal escaping ($#XXXX)</span> * <span data-mce-mark="1" style="background-color: transparent;">X - specifies XML hex escaping (&#xXXXX)</span> <error text> if an error occured this field contains additional error text from the Unicode library (Optional). This must be PASSed with Share "Y" to return the value. Note: This subroutine is designed to operate on Alpha, Text, and Token fields only. The returned results are undefined if you specify any other type of field. ---++ Examples Given a Unicode string containing 'aɏb', here are the results with various options (the ɏ character does not exist in the ISO-8859-15 encoding). | *Option* | *Result* | | SKIP | 'ab' | | STOP | 'a'. The field .TEXT FROM UNICODE contains ".UC_FROM_UCODE Fail" and <error> contains "U_INVALID_CHAR_FOUND" | | SUBS | 'a*b', assuming '*' was passed in <option> field as a substitute character. | | ESCAPE | 'a\u024Fb' if C is PASSed as <option> | | ESCAPE | 'a\24F b' if STYLE is PASSed as <option> | | ESCAPE | 'a\u024Fb' if JAVA is PASSed as <option> | | ESCAPE | 'a{U+024F}b' if UNICODE is PASSed as <option> | | ESCAPE | 'aɏb' if DECIMAL is PASSed as <option> | | ESCAPE | 'aɏb' if X is PASSed as <option> | <span style="background-color: #f6f6f6; color: #630000; font-size: 18.85px;">Comments</span> <br /><span data-mce-mark="1"><span data-mce-mark="1"><span data-mce-mark="1"><span data-mce-mark="1"><span data-mce-mark="1"><span data-mce-mark="1"><span data-mce-mark="1"><span data-mce-mark="1"><span data-mce-mark="1"><span data-mce-mark="1">%COMMENT%</span></span></span></span></span></span></span></span></span></span> -- <span data-mce-mark="1"><span data-mce-mark="1"><span data-mce-mark="1"><span data-mce-mark="1"><span data-mce-mark="1"><span data-mce-mark="1"><span data-mce-mark="1"><span data-mce-mark="1"><span data-mce-mark="1"><span data-mce-mark="1">%USERSIG{JeanNeron - 2017-11-02}%</span></span></span></span></span></span></span></span></span></span>
E
dit
|
A
ttach
|
Watch
|
P
rint version
|
H
istory
: r5
<
r4
<
r3
<
r2
<
r1
|
B
acklinks
|
V
iew topic
|
Ra
w
edit
|
M
ore topic actions
Topic revision: r5 - 2023-04-10
-
BrianRyan
Home
Site map
Main web
MedicaidBilling web
Sandbox web
TWiki web
Main Web
Users
Groups
Index
Search
Changes
Notifications
RSS Feed
Statistics
Preferences
P
View
Raw View
Print version
Find backlinks
History
More topic actions
Edit
Raw edit
Attach file or image
Edit topic preference settings
Set new parent
More topic actions
Account
Log In
E
dit
A
ttach
Copyright © 2008-2025 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki?
Send feedback