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



Hi Jon,

Thank you for the update to this discussion/question. 

I agree  that (In this case) XML-INTO or XML-SAX would have been simpler.

But If IBM go to all the effort of creating the SQL XML (PureXML) processes what's the point of not trying them??

This was a test with the new SQL XML processes and this just scratches the surface of what's available. 

I started with RPG II but my normal role today is RPG ILE/Free or SQL. IBM i has to have these options available to continue to be a viable option to none IBM i (Native) users .

However I do agree with you that the syntax of SQL is arcane (I like that word)  or esoteric, obscure. By the way I failed English at school!!!


R,
Mark   




From: Jon Paris <jon.paris@xxxxxxxxxxxxxx>
To: Midrange-L Midrange-l <midrange-l@xxxxxxxxxxxx>
Sent: Saturday, 11 October 2014, 19:25
Subject: Re: SQL XML. XMLTABLE 7.1


Methinks XML-INTO would have been simpler <grin> but thanks for posting this.

It answered one question I had about how to force the path down to the repeating (in this case) record level. The next bit I have to figure out is how to get (from your example) the person data that is nested with the record elements. All of your columns are children of the record element so it is a straightforward mapping.

P.S. There seem to be a few paste errors at the start of the xml but I think I fixed them. For example the characters bic are missing from the <bic_subj_code> tag. There were also some missing spaces in the xml header info.


Jon Paris

www.partner400.com
www.SystemiDeveloper.com

On Oct 11, 2014, at 12:36 PM, MARK GOLDEN <mark_golden@xxxxxxxxxxxxxxx> wrote:

Attachment did not work so here go's

XML File
definition:
 
  <?xml version="1.0"
encoding="UTF-8" standalone="yes" ?>
- <collectionxmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:noNamespaceSchemaLocation="BIBDSL-XML2-SCHEMA-V1.xsd";>
- <record>
  <
_subj_code>APF|FH</bic_subj_code>
  <auth_title>J![HIYOGISONOF</auth_title>
  <barcode>5706152320489</barcode>
  <bic_subject>Films
cinema|Thriller / suspense</bic_subject>
  <bic
cat_code>SCBX2048</cat_code>
  <cert_uk>15</cert_uk>
  <colour>Col
& B/W</colour>
  <contributor>Ulli Lommel
(Director) | Ulli Lommel (Producer) | Ulli Lommel (Writer) | Ulli Lommel
(Music) | Ulli Lommel (Cinematographer) | Yogi Joshi (Actor) | Elissa Dowling
(Actor) | Jamie Bernadette (Actor) | Cassandra Church (Actor) | Bertrand Pare
(Actor) | Boston Chaet (Actor)</contributor>
-<contributor_list>
-<person>
  <person_id>FP17206</person_id>
  <person_forename>Ulli</person_forename>
  <person_surname>Lommel</person_surname>
  <person_display_name>Ulli Lommel</person_display_name>
  <role>Director</role>
  </person>
-<person>
  <person_id>FP17206</person_id>
  <person_forename>Ulli</person_forename>
  <person_surname>Lommel</person_surname>
  <person_display_name>Ulli Lommel</person_display_name>
  <role>Producer</role>
  </person>
- <person>
  <person_id>FP17206</person_id>
  <person_forename>Ulli</person_forename>
  <person_surname>Lommel</person_surname>
  <person_display_name>Ulli
Lommel</person_display_name>
  <role>Writer</role>
  </person>
- <person>
  <person_id>FP17206</person_id>
  <person_forename>Ulli</person_forename>
  <person_surname>Lommel</person_surname>
  <person_display_name>Ulli
Lommel</person_display_name>
  <role>Music</role>
  </person>
- <person>
  <person_id>FP17206</person_id>
  <person_forename>Ulli</person_forename>
  <person_surname>Lommel</person_surname>
  <person_display_name>Ulli
Lommel</person_display_name>
  <role>Cinematographer</role>
  </person>
- <person>
  <person_id>FP170390</person_id>
  <person_forename>Yogi</person_forename>
  <person_surname>Joshi</person_surname>
  <person_display_name>Yogi
Joshi</person_display_name>
  <role>Actor</role>
  </person>
- <person>
  <person_id>FP143189</person_id>
  <person_forename>Elissa</person_forename>
  <person_surname>Dowling</person_surname>
  <person_display_name>Elissa
Dowling</person_display_name>
  <role>Actor</role>
  </person>
- <person>
  <person_id>FP170391</person_id>
  <person_forename>Jamie</person_forename>
  <person_surname>Bernadette</person_surname>
  <person_display_name>Jamie
Bernadette</person_display_name>
  <role>Actor</role>
  </person>
- <person>
  <person_id>FP170392</person_id>
  <person_forename>Cassandra</person_forename>
  <person_surname>Church</person_surname>
  <person_display_name>Cassandra
Church</person_display_name>
  <role>Actor</role>
  </person>
- <person>
  <person_id>FP170393</person_id>
  <person_forename>Bertrand</person_forename>
  <person_surname>Pare</person_surname>
  <person_display_name>Bertrand
Pare</person_display_name>
  <role>Actor</role>
  </person>
- <person>
  <person_id>FP170394</person_id>
  <person_forename>Boston</person_forename>
  <person_surname>Chaet</person_surname>
  <person_display_name>Boston
Chaet</person_display_name>
  <role>Actor</role>
  </person>
  </contributor_list>
  <ctitle>Son of
Sam</ctitle>
  <description>Low-budget
horror movie, directed by Ulli Lommel, based on the crimes of serial killer,
David Berkowitz. In the 1970s, a man calling himself the 'Son of Sam' is
killing people in New York, carrying out the instructions of murderous voices
inside his head.</description>
  <duration>80</duration>
- <extras_1>
- <![CDATA[
Languages(s): English|Interactive Menu|Screen ratio
1:1.33|Dolby Mono
  ]]>
  </extras_1>
  <facet>DBFILM|DBFILMMUSIC|DBFILMMUSICGAME|TRADE</facet>
  <format>DVD / Normal</format>
  <format_code>DVDN</format_code>
  <format_type>DVD</format_type>
  <genre>Feature|Thriller</genre>
  <genre_code>1005</genre_code>
  <identifier>SCBX2048|5706152320489|MM00173587</identifier>
  <imprint>Scanbox
Entertainment</imprint>
  <imprint_code>SCANB</imprint_code>
  <imprint_exact>SCANBOXENTERTAINMENT</imprint_exact>
-<jacket_l>
- <![CDATA[
www.bibdsl.co.uk/w10-images/l/mm00173587.jpg
  ]]>
  </jacket_l>
-<jacket_m>
- <![CDATA[
www.bibdsl.co.uk/w10-images/m/mm00173587.jpg
  ]]>
  </jacket_m>
- <jacket_s>
- <![CDATA[
www.bibdsl.co.uk/w10-images/s/mm00173587.jpg
  ]]>
  </jacket_s>
  <jacket_ud>07/06/2011</jacket_ud>
  <kword_index>Son of
Sam|Yogi Joshi</kword_index>
  <name_exact>YOGIJOSHI</name_exact>
  <nof_items>1 disc(s)</nof_items>
  <primary_name>Yogi
Joshi</primary_name>
  <primary_price>B_5 to
_10</primary_price>
  <psc>fiction
thriller_suspense</psc>
  <psg>feature
thriller</psg>
  <publ_country>United States
of America</publ_country>
  <ref_no>MM00173587</ref_no>
  <region>Region 2</region>
  <related_ids>MMID00108677</related_ids>
  <sort_alpha>JOSHIYOGISONOFSAM</sort_alpha>
  <sort_date>20110627</sort_date>
  <sort_month>201106</sort_month>
  <sort_name>JOSHIYOGI</sort_name>
  <sort_series>ZZZZZZZZSONOFSAM</sort_series>
  <sort_title>SONOFSAM</sort_title>
  <title_exact>SONOFSAM</title_exact>
  <uk_avail>Retail / Rental</uk_avail>
  <uk_avail_code>RETR</uk_avail_code>
  <uk_dlr_ex_vat>5.44</uk_dlr_ex_vat>
  <uk_pubdate>27 Jun 2011</uk_pubdate>
  <uk_ex_vat_price>6.66</uk_ex_vat_price>
  <uk_vat_price>7.99</uk_vat_price>
  <uk_vat_rate>S</uk_vat_rate>
  <w10_title_code>MMID00108677</w10_title_code>
  <year_of_production>2008</year_of_production>
  <last_updated>27082014
- 16:03:11</last_updated>
  </record>
  </collection>
 
 
 
DB2 Physical file
definition
 
 
 
Number Of  Record  Internal    External    Output 
Fields And  Format  Field Name  Field Name  Buffer 
Indicators  Length                          Position
      55    30,616  WX@AEB      WX@AEB            1
      55    30,616  WX#ALT      WX#ALT          14
      55    30,616  WX#BAS      WX#BAS          79
      55    30,616  WX#BIC      WX#BIC          149
      55    30,616  WX#BCC      WX#BCC          651
      55    30,616  WX#CAT      WX#CAT          766
      55    30,616  WX#CER      WX#CER          781
      55    30,616  WX#CEI      WX#CEI          784
      55    30,616  WX#COL      WX#COL          787
      55    30,616  WX#CON      WX#CON          797
      55    30,616  WX#TIT      WX#TIT        1,799
      55    30,616  WX#DES      WX#DES        2,551
      55    30,616  WX#DUR      WX#DUR      12,553
      55    30,616  WX#EDI      WX#EDI      12,557
      55    30,616  WX#EDN      WX#EDN      12,561
      55    30,616  WX#EID      WX#EID      12,763
      55    30,616  WX#EXT      WX#EXT      12,797
      55    30,616  WX#EX1      WX#EX1      12,823
      55    30,616  WX#EX2      WX#EX2      17,825
      55    30,616  WX#FMT      WX#FMT      22,827
      55    30,616  WX#FMC      WX#FMC      22,902
      55    30,616  WX#FTY      WX#FTY      22,907
      55    30,616  WX#GNR      WX#GNR      22,957
      55    30,616  WX#GNC      WX#GNC      23,007
      55    30,616  WX#IMP      WX#IMP      23,017
      55    30,616  WX#IMC      WX#IMC      23,319
      55    30,616  WX#AGE      WX#AGE      23,329
      55    30,616  WX#JKL      WX#JKL      23,339
      55    30,616  WX#JKM      WX#JKM      23,439
      55    30,616  WX#JKS      WX#JKS      23,539
      55    30,616  WX#ORG      WX#ORG      23,639
      55    30,616  WX#NUM      WX#NUM      23,664
      55    30,616  WX#PRA      WX#PRA      23,714
      55    30,616  WX#PRN      WX#PRN      23,724
      55    30,616  WX#PRP      WX#PRP      23,774
      55    30,616  WX#PSC      WX#PSC      23,789
      55    30,616  WX#PSG      WX#PSG      24,041
      55    30,616  WX#PRD      WX#PRD      24,293
      55    30,616  WX#PUB      WX#PUB      24,343
      55    30,616  WX#REG      WX#REG      24,373
      55    30,616  WX#SER      WX#SER      24,388
      55    30,616  WX#SUB      WX#SUB      25,140
      55    30,616  WX#SUP      WX#SUP      25,160
      55    30,616  WX#TRK      WX#TRK      25,190
      55    30,616  WX#TRL      WX#TRL      30,192
      55    30,616  WX#AVA      WX#AVA      30,442
      55    30,616  WX#AVC      WX#AVC      30,542
      55    30,616  WX#DEL      WX#DEL      30,546
      55    30,616  WX#DLR      WX#DLR      30,554
      55    30,616  WX#REL      WX#REL      30,564
      55    30,616  WX#RRX      WX#RRX      30,572
      55    30,616  WX#RRP      WX#RRP      30,582
      55    30,616  WX#VAT      WX#VAT      30,592
      55    30,616  WX#YRP      WX#YRP      30,593
      55    30,616  WX#UPD      WX#UPD      30,597
 
 
 
AS400 command
STRSQL:
 
 
1: SET
TRANSACTION ISOLATION LEVEL READ UNCOMMITTED, READ WRITE
 
2: Insert into f56wxTMP                             
Select *                                         
From
XMLTABLE('/collection/record'               
Passing
xmlparse                                 
(Document
Get_xml_file                           
('/xml/WEST10/WEST10_DBDVD_C_FULL_20140827_9.xml'))
Columns                                           
"WX@AEB"  Varchar(255)  Path 'barcode',         
"WX#ALT"  Varchar(255)  Path 'auth_title',     
"WX#BAS"  Varchar(70)    Path 'based_on',       
"WX#BIC"  Varchar(500)  Path 'bic_subject',     
"WX#BCC"  Varchar(115)  Path 'bic_subj_code',   
"WX#CAT"  Varchar(15)    Path 'cat_code',       
"WX#CER"  Varchar(3)    Path 'cert_uk',         
"WX#CEI"  Varchar(3)    Path 'cert_irish',     
"WX#COL"  Varchar(10)    Path 'colour',         
"WX#CON"  Varchar(1000)  Path 'contributor',   
"WX#TIT"  Varchar(750)  Path 'ctitle',     
"WX#DES"  Varchar(10002) Path 'description',
"WX#DUR"  Varchar(4)    Path 'duration',   
"WK#EDI"  Varchar(6)    Path 'edi_number', 
"WX#EDN"  Varchar(202)  Path 'edition',   
"WX#EID"  Varchar(100)  Path 'eidr',       
"WX#EXT"  Varchar(26)    Path
'extras_tbc', 
"WX#EX1"  Varchar(5000)  Path
'extras_1',   
"WX#EX2"  Varchar(5000)  Path 'extras_2',   
"WX#FMT"  Varchar(75)    Path 'format',     
"WX#FMC"  Varchar(5)    Path 'format_code',
"WX#FTY"  Varchar(50)    Path 'format_type',
"WX#GNR"  Varchar(50)    Path 'genre',     
"WX#GNC"  Varchar(10)    Path 'genre_code', 
"WX#IMP"  Varchar(300)  Path 'imprint',   
"WX#IMC"  Varchar(10)    Path 'imprint_code',
"WX#AGE"  Varchar(10)    Path 'interest_age',
"WX#JKL"  Varchar(100)  Path 'jacket_l',   
"WX#JKM"  Varchar(100)  Path 'jacket_m',   
"WX#JKS"  Varchar(100)  Path 'jacket_s',   
"WX#ORG"  Varchar(25)    Path 'language_orig',
"WX#NUM"  Varchar(50)    Path 'nof_items',   
"WX#PRA"  Varchar(10)    Path 'primary_avail',
"WX#PRN"  Varchar(50)    Path 'primary_name',
"WX#PRP"  Varchar(15)    Path 'primary_price',
"WX#PSC"  Varchar(250)  Path 'psc',         
"WX#PSG"  Varchar(250)  Path 'psg',         
"WX#PRD"  Varchar(50)    Path 'publ_country',
"WX#PUB"  Varchar(30)    Path 'publisher',   
"WX#REG"  Varchar(15)    Path 'region',     
"WX#SER"  Varchar(750)  Path 'series',     
"WX#SUB"  Varchar(20)    Path 'subtitles',   
"WX#SUP"  Varchar(30)    Path 'supplier',   
"WX#TRK"  Varchar(5000)  Path 'tracks',
"WX#TRL"  Varchar(250)  Path 'trailer',         
"WX#AVA"  Varchar(100)  Path 'uk_avail',         
"WX#AVC"  Varchar(4)    Path 'uk_avail_code',   
"WX#DEL"  Varchar(8)    Path 'uk_del_date',     
"WX#DLR"  Varchar(10)    Path 'uk_dlr_ex_vat',   
"WK#REL"  Varchar(8)    Path 'uk_pubdate',       
"WX#RRX"  Varchar(10)    Path 'uk_ex_vat_price', 
"WX#RRP"  Varchar(10)    Path 'uk_vat_price',     
"WX#VAT"  Varchar(1)    Path 'uk_vat_rate',     
"WX#YRP"  Varchar(4)    Path 'year_of_production',
"WX#UPD"  Varchar(20)    Path 'last_updated') x
 
3: COMMIT
 


________________________________
From: MARK GOLDEN <mark_golden@xxxxxxxxxxxxxxx>
To: Midrange Systems Technical Discussion <midrange-l@xxxxxxxxxxxx>
Sent: Saturday, 11 October 2014, 17:09
Subject: Re: SQL XML. XMLTABLE 7.1


Hi,

Please accept this is one of my first attempts at this coding.



Regards,
Mark.




________________________________
From: Jon Paris <jon.paris@xxxxxxxxxxxxxx>
To: Midrange-L Midrange-l <midrange-l@xxxxxxxxxxxx>
Sent: Thursday, 9 October 2014, 23:16
Subject: Re: SQL XML. XMLTABLE 7.1


Thanks Mark.


Jon Paris

www.partner400.com
www.SystemiDeveloper.com

On Oct 9, 2014, at 5:09 PM, MARK GOLDEN <mark_golden@xxxxxxxxxxxxxxx> wrote:

Hi Jon,

I will arrange to have the code posted tomorrow. Unfortunately I do not have access to the IBM i server tonight.

Regards,
Mark 


________________________________
From: Jon Paris <jon.paris@xxxxxxxxxxxxxx>
To: Midrange-L Midrange-l <midrange-l@xxxxxxxxxxxx>
Sent: Thursday, 9 October 2014, 21:11
Subject: Re: SQL XML. XMLTABLE 7.1


For those of us still struggling with the arcane SQL syntax used to perform this feat Mark it would be really nice if you could post the code to the thread or on code.midrange.com and the link posted here.


Jon Paris

www.partner400.com
www.SystemiDeveloper.com

On Oct 9, 2014, at 1:21 PM, MARK GOLDEN <mark_golden@xxxxxxxxxxxxxxx> wrote:

Hi,

Due to your help and pointers I now have an XML file being converted to DB2 with the use to XMLTABLE, XML_GET_FILE, etc.

I do have one more question. Within the data is CDATA strings. I know their purpose but the parser is returning invalid data. Between the ![CDATA[' and ']]' is good but the ![[] is being returned with invalid data. Is this the old problem of [] being translated incorrectly due to CCSIDs or is there
something I can do within the XML process to strip these characters?

Thanks,
Mark.   
 


________________________________
From: Vernon Hamberg <vhamberg@xxxxxxxxxxxxxxx>
To: Midrange Systems Technical Discussion <midrange-l@xxxxxxxxxxxx>
Sent: Monday, 6 October 2014, 19:56
Subject: Re: AW: SQL XML. XMLTABLE 7.1


Excellent!

On 10/6/2014 1:41 PM, Gary Thompson wrote:
Vern,
Thank you.
Both links look spot on for me!

-----Original Message-----
From: MIDRANGE-L [mailto:midrange-l-bounces@xxxxxxxxxxxx] On Behalf Of Vernon Hamberg
Sent: Monday, October 06, 2014 10:27 AM
To: Midrange Systems Technical Discussion
Subject: Re: AW: SQL XML. XMLTABLE 7.1

Gary

For more on the support in SQL, go to this link -

http://ibmsystemsmag.blogs.com/i_can/xml/

Page down to find the 1st of 2 articles by Nick Lawrence - a number of links to helpful and sometimes almost overwhelming stuff from IBM.

To get going on XML itself, I suggest http://www.w3schools.com and look for the XML tutorial - excellent place for lots of web-related stuff.

HTH
Vern

On 10/6/2014 8:42 AM, Gary Thompson wrote:
Interesting - about time Team Mudville learns about XML so any hints on where to start are appreciated.

We're at V7R1

I don't see the XML tool-kit on our V7R1 box so I'll ask ops mgr to
install 5733-XT2

We have the  XML Files, Ins and Outs and Integrating XML with DB2 redbooks and
      XML Toolkit and XML Extender manuals.

Also have XML Toolkit article from ibmsystemsmag . . .

Thanks

-----Original Message-----
From: MIDRANGE-L [mailto:midrange-l-bounces@xxxxxxxxxxxx] On Behalf Of
Birgitta Hauser
Sent: Sunday, October 05, 2014 10:26 PM
To: 'Midrange Systems Technical Discussion'
Subject: AW: AW: SQL XML. XMLTABLE 7.1

It is hard to say what happens, without knowing the XML document.
In either way if it is stored in the IFS in the path
/erl/customerinfo, can you access the XML document as follows (from
IBM I Navigator's run an SQL script / STRSQL does not support it!)

Values(XMLParse(Get_XML_File('/erl/customerinfo/YourxmlDoc.xml'));

Mit freundlichen Grüßen / Best regards

Birgitta Hauser

"Shoot for the moon, even if you miss, you'll land among the stars."
(Les
Brown)
"If you think education is expensive, try ignorance." (Derek Bok) "What is worse than training your staff and losing them? Not training them and keeping them!"

-----Ursprüngliche Nachricht-----
Von: MIDRANGE-L [mailto:midrange-l-bounces@xxxxxxxxxxxx] Im Auftrag
von MARK GOLDEN
Gesendet: Sunday, 05.10 2014 22:10
An: Midrange Systems Technical Discussion
Betreff: Re: AW: SQL XML. XMLTABLE 7.1

Hi Birgitta,

This is still new to me as you can see!!

My XML document is stored in the IFS with path /erl/customerinfo.

Mit freundlichen Grüßen / Best regards


Mark Golden.


________________________________
      From: Birgitta Hauser <Hauser@xxxxxxxxxxxxxxx>
To: 'Midrange Systems Technical Discussion' <midrange-l@xxxxxxxxxxxx>
Sent: Sunday, 5 October 2014, 19:26
Subject: AW: SQL XML. XMLTABLE 7.1
   

Where is your XML Document located or what's the name of your XML document?
If your XML document is located within the IFS you need to refer to
the IFS file, i.e. retrieve a XML locator with the GET_XML_FILE function:
Something like this:

        Select a.*
        from XMLTABLE('/customerinfo'
              passing xmlparse(Document
Get_xml_file('/YourDir/YourSubDir/YourXMLDoc.xml'))
                      Columns  CustId  Integer  Path '@CId',
                              CustName    VarChar(30)  Path 'name',
                              Str  VarChar(40)  Path 'assr/street',
                              Place      VarChar(30) Path 'addr/city')  a;

Mit freundlichen Grüßen / Best regards

Birgitta Hauser

"Shoot for the moon, even if you miss, you'll land among the stars."
(Les
Brown)
"If you think education is expensive, try ignorance." (Derek Bok)
"What is worse than training your staff and losing them? Not training
them and keeping them!"

-----Ursprüngliche Nachricht-----
Von: MIDRANGE-L [mailto:midrange-l-bounces@xxxxxxxxxxxx] Im Auftrag
von MARK GOLDEN
Gesendet: Sunday, 05.10 2014 15:44
An: MIDRANGE-L@xxxxxxxxxxxx
Betreff: SQL XML. XMLTABLE 7.1

Any help would be greatly appreciated.

I am trying to use SQL, XML, XMLTABLE functionality on IBM i 7.1.

Using the below example from the web which is similar to other
examples I am getting the following error.

INSERT INTO erl/address(cid, name, street, city) SELECT x.custid,
x.custname, x.str, x.place FROM XMLTABLE('$i/customerinfo' PASSING
CAST(? AS
XML) AS "i"
COLUMNS custid INTEGER PATH '@Cid', custname VARCHAR(30) PATH 'name',
str
VARCHAR(40) PATH 'addr/street', place VARCHAR(30) PATH 'addr/city' )
AS x ;
                   


Use of parameter marker not valid.    SQL0418. This seems to refer to the
'?' in the CAST section of the statement.


   

For more info. I am trying to load a XML file into a Physical file
without XML fields/columns defined. So straight XML to PF file field mapping.

Yours Sincerely,

Mark Golden
--
This is the Midrange Systems Technical Discussion (MIDRANGE-L) mailing
list To post a message email: MIDRANGE-L@xxxxxxxxxxxx To subscribe,
unsubscribe, or change list options,
visit: http://lists.midrange.com/mailman/listinfo/midrange-l
or email: MIDRANGE-L-request@xxxxxxxxxxxx Before posting, please take
a moment to review the archives at http://archive.midrange.com/midrange-l.


--
This is the Midrange Systems Technical Discussion (MIDRANGE-L) mailing list To post a message email: MIDRANGE-L@xxxxxxxxxxxx To subscribe, unsubscribe, or change list options,
visit: http://lists.midrange.com/mailman/listinfo/midrange-l
or email: MIDRANGE-L-request@xxxxxxxxxxxx Before posting, please take a moment to review the archives at http://archive.midrange.com/midrange-l.


--
This is the Midrange Systems Technical Discussion (MIDRANGE-L) mailing list
To post a message email: MIDRANGE-L@xxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
visit: http://lists.midrange.com/mailman/listinfo/midrange-l
or email: MIDRANGE-L-request@xxxxxxxxxxxx
Before posting, please take a moment to review the archives
at http://archive.midrange.com/midrange-l.
--
This is the Midrange Systems Technical Discussion (MIDRANGE-L) mailing list
To post a message email: MIDRANGE-L@xxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
visit: http://lists.midrange.com/mailman/listinfo/midrange-l
or email: MIDRANGE-L-request@xxxxxxxxxxxx
Before posting, please take a moment to review the archives
at http://archive.midrange.com/midrange-l.


--
This is the Midrange Systems Technical Discussion (MIDRANGE-L) mailing list
To post a message email: MIDRANGE-L@xxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
visit: http://lists.midrange.com/mailman/listinfo/midrange-l
or email: MIDRANGE-L-request@xxxxxxxxxxxx
Before posting, please take a moment to review the archives
at http://archive.midrange.com/midrange-l.
--
This is the Midrange Systems Technical Discussion (MIDRANGE-L) mailing list
To post a message email: MIDRANGE-L@xxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
visit: http://lists.midrange.com/mailman/listinfo/midrange-l
or email: MIDRANGE-L-request@xxxxxxxxxxxx
Before posting, please take a moment to review the archives
at http://archive.midrange.com/midrange-l.


--
This is the Midrange Systems Technical Discussion (MIDRANGE-L) mailing list
To post a message email: MIDRANGE-L@xxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
visit: http://lists.midrange.com/mailman/listinfo/midrange-l
or email: MIDRANGE-L-request@xxxxxxxxxxxx
Before posting, please take a moment to review the archives
at http://archive.midrange.com/midrange-l.
--
This is the Midrange Systems Technical Discussion (MIDRANGE-L) mailing list
To post a message email: MIDRANGE-L@xxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
visit: http://lists.midrange.com/mailman/listinfo/midrange-l
or email: MIDRANGE-L-request@xxxxxxxxxxxx
Before posting, please take a moment to review the archives
at http://archive.midrange.com/midrange-l.
--
This is the Midrange Systems Technical Discussion (MIDRANGE-L) mailing list
To post a message email: MIDRANGE-L@xxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
visit: http://lists.midrange.com/mailman/listinfo/midrange-l
or email: MIDRANGE-L-request@xxxxxxxxxxxx
Before posting, please take a moment to review the archives
at http://archive.midrange.com/midrange-l.



As an Amazon Associate we earn from qualifying purchases.

This thread ...

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.