× 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.



Lim,

you can find some code at 

http://www.abvv.be/code/en/fram099.htm

in the  DBXMLSRC savefile look for the XML#CVT1 and XML#CVT2 rpgle
source-members.
(not very optimized but it works)

luc

Luc Pittoors
ABVV / FGTB Federaal
Hoogstraat 42
1000 Brussel
Tel : 02/506.82.37
luc.pittoors@xxxxxxx

date: Mon, 20 Jun 2005 13:29:25 -0500
from: "Lim Hock-Chai" <Lim.Hock-Chai@xxxxxxxxxxxxxxx>
subject: RE: how to populate the field when the
        fieldnameisstored:Actuallythere are lot more fields

seems like the code below is to convert pack field in the file to a string
field.  Is that right?  My question is more toward converting a string field
into pack field that you can substr it into the pack field in the file using
the method described.


-----Original Message-----
From: rpg400-l-bounces@xxxxxxxxxxxx [mailto:rpg400-l-bounces@xxxxxxxxxxxx]On
Behalf Of Shannon ODonnell
Sent: Monday, June 20, 2005 1:05 PM
To: 'RPG programming on the AS400 / iSeries'
Subject: RE: how to populate the field when the
fieldnameisstored:Actuallythere are lot more fields


Good question!  I never tried this on XML data.  But basically, what I do
with packed data in a DB2 database is to convert the hex value to a
character value. 

  *---------------------------------------------------------------------
      *    ExtPack - Extract Packed Data from DS
      *---------------------------------------------------------------------
     C     ExtPack       Begsr
      *
      ****
     C                   Eval      filwrk = DataFile
     C                   Eval      Hexstring = %Subst(filwrk:iBps:iLen)
      ****
      *
     C                   eval      NumHex = 0
     C                   Evalr     Char16 = %subst(hexstring:1:iLen)
     C                   Eval      CharField = %char(NumHex)
     C                   If        NumHex >= 0
     C                   Eval      Sign = '+'
     C                   Else
     C                   Eval      Sign = '-'
     C                   Endif
      *
     C                   Endsr
      *
----------------------------------------------------------------------------

As an Amazon Associate we earn from qualifying purchases.

This thread ...


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.