Difference: 0LASubrTextFromUnicode (1 vs. 5)

Revision 52023-04-10 - BrianRyan

Line: 1 to 1
 
META TOPICPARENT name="FullAPIList"

.TEXT FROM UNICODE

Line: 40 to 40
 
  • DECIMAL - - specifies XML decimal escaping ($#XXXX)
  • X - specifies XML hex escaping (&#xXXXX)
<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.
Added:
>
>
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).

Line: 54 to 56
 
ESCAPE 'aɏb' if DECIMAL is PASSed as <option>
ESCAPE 'aɏb' if X is PASSed as <option>
Changed:
<
<

Comments

>
>
Comments
 
<--/commentPlugin-->

Revision 42018-09-05 - JeanNeron

Line: 1 to 1
 
META TOPICPARENT name="FullAPIList"

.TEXT FROM UNICODE

Line: 21 to 21
  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.
Changed:
<
<
<raw> is the RAW alpha field to contain the transcoded string (Required). This must be PASSed with Share "Y" to return the value.
>
>
<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).
Line: 51 to 51
 
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>
Changed:
<
<
ESCAPE 'aɏb' if DECIMAL is PASSed as <option>
>
>
ESCAPE 'aɏb' if DECIMAL is PASSed as <option>
 
ESCAPE 'aɏb' if X is PASSed as <option>

Comments

Revision 32018-01-04 - JeanNeron

Line: 1 to 1
 
META TOPICPARENT name="FullAPIList"

.TEXT FROM UNICODE

This subroutine transcodes a Unicode alpha field into a RAW alpha field. Added in 6.0.0

Changed:
<
<

>
>

 

Usage

      PASS         <raw>                      FIELD            SHARE? Y
      PASS         <unicode_source>           FIELD            SHARE? N

Line: 45 to 45
 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'
Changed:
<
<
STOP Nothing is returned in <raw>. The field .TEXT FROM UNICODE contains ".UC_FROM_UCODE Fail" and <error> contains "U_INVALID_CHAR_FOUND"
>
>
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>
Changed:
<
<
ESCAPE 'a&#591;b' if DECIMAL is PASSed as <option>
ESCAPE 'a&#x24F;b' if X is PASSed as <option>
>
>
ESCAPE 'aɏb' if DECIMAL is PASSed as <option>
ESCAPE 'aɏb' if X is PASSed as <option>
 

Comments

Changed:
<
<

<--/commentPlugin-->
>
>

<--/commentPlugin-->
 
Deleted:
<
<
-- Jean Neron - 2017-11-02
 \ No newline at end of file
Added:
>
>
-- Jean Neron - 2017-11-02
 \ No newline at end of file

Revision 22017-11-02 - JeanNeron

Line: 1 to 1
 
META TOPICPARENT name="FullAPIList"

.TEXT FROM UNICODE

Line: 11 to 11
  PASS <encoding> FIELD SHARE? N PASS <action> FIELD SHARE? N PASS <option> FIELD SHARE? N
Changed:
<
<
PASS <error_text> FIELD SHARE? N
>
>
PASS <error_text> FIELD SHARE? Y
  GOSUB --- .TEXT FROM UNICODE
    • Check for errors IF --- .TEXT FROM UNICODE NE

Revision 12017-11-02 - JeanNeron

Line: 1 to 1
Added:
>
>
META TOPICPARENT name="FullAPIList"

.TEXT FROM UNICODE

This subroutine transcodes a Unicode alpha field into a RAW alpha field. Added in 6.0.0


Usage

      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? N
      GOSUB    --- .TEXT FROM UNICODE
      *        Check for errors
      IF       --- .TEXT FROM UNICODE         NE

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.

<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:
  • C - specifies C style escaping (\uXXXX or \UXXXXXXXX)
  • STYLE - specifies CSS2 escaping (\XXXXXX)
  • JAVA - specifies Java escaping (\uXXXX)
  • UNICODE - specifies Unicode escaping {U+XXXXX}
  • DECIMAL - - specifies XML decimal escaping ($#XXXX)
  • X - specifies XML hex escaping (&#xXXXX)
<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.

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 Nothing is returned in <raw>. 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&#591;b' if DECIMAL is PASSed as <option>
ESCAPE 'a&#x24F;b' if X is PASSed as <option>

Comments


<--/commentPlugin-->

-- Jean Neron - 2017-11-02

 
This site is powered by the TWiki collaboration platform Powered by PerlCopyright © 2008-2024 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback