× The internal search function is temporarily non-functional. The current search engine is no longer viable and we are researching alternatives.
As a stop gap measure, we are using Google's custom search engine service.
If you know of an easy to use, open source, search engine ... please contact support@midrange.com.



The edi partner asked for <![CDATA[ data ]]> for any text strings with
unusual characters.
Jim

On Wed, May 6, 2015 at 4:07 PM, Henrik Rützou <hr@xxxxxxxxxxxx> wrote:

Do you encode the special entities in your XML a apos/quot is not allowed
in
XML data

On Wed, May 6, 2015 at 9:37 PM, Jim Franz <franz9000@xxxxxxxxx> wrote:

I have a program running for years using writeline, writing an xml file,
and within 1.4 million writes, a single instance of a single quote
(ebcdic
hex 7D)
did not translate to ascii correctly. I've used this process for years in
writing edi files without having this issue. This is V7R1. We send this
file every day, always building a new uniquely named file.


This worked (wrklnk display, ascii hex and the single quote in ascii is
27
454D504C 4F594545 275320 EMPLOYEE'S

this is ebcdic from file
C5D4D7D3 D6E8C5C5 7DE240C1 D9D440 EMPLOYEE'S

from same file, same column of data

This did not and single quote is now ascii 1A (which blew the trading
partner's process..)
20534149 44205348 45204449 444E1A54 20464545 SAID SHE DIDN T FEE

this is the ebcdic where single quote is 7D
40E2C1C9 C440E2C8 C540C4C9 C4D57DE3 40C6C5C5 D340E6C5

text file is CCSID 819

This writes the one record (it's based on an old set of code, but it has
always worked)
eval @vdata = %trim(CLCMLN)
exsr $valid
eval @dtext=indent2+'<IncidentDesc>' +
%trim(@vdata) +
'</IncidentDesc>'
eval @len = %len(%trimr(@dtext))
callp writeline(fd: %addr(@dtext):@len)

DSPFFD of column

Field Type Length Length Position Usage
Heading
CLCMLN CHAR 150 150 324 Both CAUSE xxx
Field text . . . . . . . . . . . . . . . : CAUSE OF
INJURY
Referenced
information
Referenced file . . . . . . . . . . . . : SREF
Library . . . . . . . . . . . . . . . : MMOD
Referenced record format . . . . . . . : CSREF
Referenced field . . . . . . . . . . . :
CMLN
Attributes changed . . . . . . . . . . :
Other
Coded Character Set Identifier . . . . . : 37

Text File create

Create a new file, and assign it a code page of 819:
Create this file with "all" permissions *RWX per BTS requirements
eval fd = open(%trim(filename):
O_CREAT+O_WRONLY+O_CODEPAGE:
S_IRWXO+S_IRWXU+S_IRWXG:
819)
if fd < 0
callp die('open(): ' + %str(strerror(errno)))
eval @errflag='Y'
endif
callp close(fd)

Now re-open the file in text mode. Since it was assigned a
code page of 819, and we're opening it in text mode, OS/400
will automatically translate to/from ASCII for us.
eval fd = open(%trim(filename):
O_WRONLY+O_TEXTDATA)


Have I missed something obvious?

Jim Franz
--
This is the RPG programming on the IBM i (AS/400 and iSeries) (RPG400-L)
mailing list
To post a message email: RPG400-L@xxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
visit: http://lists.midrange.com/mailman/listinfo/rpg400-l
or email: RPG400-L-request@xxxxxxxxxxxx
Before posting, please take a moment to review the archives
at http://archive.midrange.com/rpg400-l.




--
Regards,
Henrik Rützou

http://powerEXT.com <http://powerext.com/>
--
This is the RPG programming on the IBM i (AS/400 and iSeries) (RPG400-L)
mailing list
To post a message email: RPG400-L@xxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
visit: http://lists.midrange.com/mailman/listinfo/rpg400-l
or email: RPG400-L-request@xxxxxxxxxxxx
Before posting, please take a moment to review the archives
at http://archive.midrange.com/rpg400-l.



As an Amazon Associate we earn from qualifying purchases.

This thread ...

Follow-Ups:
Replies:

Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].

Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.