RECHERCHER :
COMMUNAUTE MP
Identifiez vous ...
Devenir Membre
J'ai oublié mon MDP
DOMAINE MP
Bavardages
Langages Généraux
Langages Web
Langages DotNet
Autres langages
Dev. Jeux Video
Sécurité
Sys. Exploitation
Graphismes
Logiciels
Réseaux
Bases de données
Méthodologies
Emplois High-tech
Aide juridique
Articles juridiques
FORUM
Index des forums
Ajouter un sujet
Rechercher sujet
Contact Responsable
Devenir modérateur
CHAT MP IRC
Votre pseudo ...
Srv: irc.moteurprog.com
Chan: #MoteurProg
PARTICIPER
Plus de 3500 emplois.
Rechercher un job
Déposez votre CV
Emplois High-tech

Visiteur MP

 xml parser

Forum : COBOL
Sous Catégorie : Aucune
Type du sujet : Sujet Normale
FAQ : FAQ COBOL

SUIVI DES SUJETS PAR MAIL

SUIVI PAR MAIL INACTIF

RESOLUTION DU SUJET SUJET NON RESOLU
BLOQUAGE DU SUJET SUJET ACTIF
APPARTENANCE A LA FAQ N'APPARTIENT PAS A LA FAQ


PAGE : [1]

POSTER UN NOUVEAU SUJET REPONDRE A CE SUJET

FORUM COBOL

PREMIERE PAGE

PAGE PRECEDENTE

Page précedente

Page suivante

PAGE SUIVANTE

DERNIERE PAGE
juju
Nouveau membre
Inscrit : 13/04/2004
Messages : 1
Message
#2150
Posté le 13/04/04 à 19:08
Bonjour
Je travail avec une version de cobol pour Z/OS V3R1 et j'essaie de traiter un flux XML.
Cette version de cobol permet l'utilisation de "XML PARSE", mais je rencontre une erreur 135 lorsque je traite l'évenement START-OF-CDATA-SECTION: c'est à dire la balise <![CDATA[...
Quel interet de pouvoir parser du XML si ce type de balise ne peut être traitée...
HELP ! HELP !!!

merci
8O

ERREUR BBCODE SUR CE MESSAGE :
- Fin de code inattendue !

HAUT DE PAGE

PROFIL MEMBRE LUI ECRIRE 

Publicité
Inscrit : X
Messages : X
Message
#Aucun

HAUT DE PAGE

  

Visiteur MP
Membre du club
Inscrit :
Messages : 1323
Message
#2184
Posté le 14/04/04 à 10:15
je ne connais ni ce cobol, ni l'instruction (?),
ni la balise (<! commentaires ) citées,
ce que je peux dire c'est que c'est
toujours le programmeur qui fait une erreur.
mauvaise utilisation ? sauf si bug de ce cobol,
ce qui me paraît hautement improbable.
@+

HAUT DE PAGE

PROFIL MEMBRE LUI ECRIRE ALLER VOIR SON SITE

dudu
Nouveau membre
Inscrit : 05/04/2006
Messages : 7
Message
#92920
Posté le 05/04/06 à 19:38
J'ai trouve cette exemple sur le net et il fonction


*=======================*
*=======================*
IDENTIFICATION DIVISION.
*=======================*
*=======================*

*==========*
PROGRAM-ID. TBETMOD2.
*==========*

*====================*
ENVIRONMENT DIVISION.
*====================*

*=====================*
CONFIGURATION SECTION.
*=====================*

*===============*
SOURCE-COMPUTER. IBM-370.
*SOURCE-COMPUTER. IBM-370 WITH DEBUGGING MODE.
*===============*

*=============*
*SPECIAL-NAMES. DECIMAL-POINT IS COMMA.
SPECIAL-NAMES.
*=============*

*=============*
DATA DIVISION.
*=============*

*=======================*
WORKING-STORAGE SECTION.
*=======================*


* document xml / attention au majuscule/minuscule
1 xml-document.
* 1140 = ebcdic
* 819 = ascii
* 2 pic x(39) value '<?xml version="1.0" encoding="ibm-1140"'.
*
* le parser n aime pas le encoding="ibm-1140"
* il prefere faire le test lui meme
* voir "XML CCSID exception flow control" dans la doc/web
*
2 pic x(39) value '<?xml version="1.0"'.
2 pic x(19) value ' standalone="yes"?>'.
2 pic x(39) value '<!--This document is just an example-->'.
2 pic x(10) value '<sandwich>'.
2 pic x(35) value ' <bread type="baker&apos;s best"/>'.
2 pic x(41) value ' <?spread please use real mayonnaise ?>'.
2 pic x(31) value ' <meat>Ham &amp; turkey</meat>'.
2 pic x(40) value ' <filling>Cheese, lettuce, tomato, etc.'.
2 pic x(10) value '</filling>'.
2 pic x(35) value ' <![CDATA[We should add a <relish>'.
2 pic x(22) value ' element in future!]]>'.
2 pic x(31) value ' <listprice>$4.99 </listprice>'.
2 pic x(27) value ' <discount>0.10</discount>'.
2 pic x(11) value '</sandwich>'.

1 xml-document-length computational pic 999.

1 CURRENT-ELEMENT PIC X(30).
1 XFR-ED PIC X(9) JUSTIFIED.
1 XFR-ED-1 REDEFINES XFR-ED PIC 999999.99.
1 LIST-PRICE COMPUTATIONAL PIC 9V99 VALUE 0.
1 DISCOUNT COMPUTATIONAL PIC 9V99 VALUE 0.
1 DISPLAY-PRICE PIC $$9.99.

*
1 Employee1 global.
2 Name pic X(5) Value 'Tom'.
2 Idn pic 9(9) comp Value 123456789.
2 Addr.
3 Street pic X(20) Value '555 Bailey Ave'.
3 City pic X(20) Value 'San Jose'.
3 State pic X(20) Value 'California'.
2 More.
3 Age pic +99.99 Value '45.9'.
3 Firm pic BBXXX9B Value 'IBM4'.
3 Salary COMP-2 Value +.00012327E+06.

1 XML-Employee1 pic X(500).

*=====================*
LOCAL-STORAGE SECTION.
*=====================*


*===============*
LINKAGE SECTION.
*===============*


*==================*
PROCEDURE DIVISION.
*==================*

* permet une insersion "inline" des sections dans le code cobol
MAINLINE SECTION.

* appel du parser
XML PARSE XML-DOCUMENT PROCESSING PROCEDURE XML-HANDLER
ON EXCEPTION
DISPLAY 'XML DOCUMENT ERROR ' XML-CODE
NOT ON EXCEPTION
DISPLAY 'XML DOCUMENT SUCCESSFULLY PARSED'
END-XML

* resultat
DISPLAY ' '
DISPLAY '-----+++++***** USING INFORMATION FROM XML '
'*****+++++-----'
DISPLAY ' '
MOVE LIST-PRICE TO DISPLAY-PRICE
DISPLAY ' SANDWICH LIST PRICE: ' DISPLAY-PRICE
COMPUTE DISPLAY-PRICE = LIST-PRICE * (1 - DISCOUNT)
DISPLAY ' PROMOTIONAL PRICE: ' DISPLAY-PRICE
DISPLAY ' GET ONE TODAY!'

* generation d un xml depuis une copie cobol
* XML GENERATE XML-Employee1 FROM Employee1
* ON EXCEPTION
* DISPLAY 'XML GENERATE ERROR ' XML-CODE
* NOT ON EXCEPTION
* DISPLAY 'XML Employee SUCCESSFULLY GENERATE'
* END-XML

* fin du programme
GOBACK.

* resultat du decodage
*
* START OF DOCUMENT: LENGTH=390 CHARACTERS.
* VERSION: <1.0>
* STANDALONE: <yes>
* COMMENT: <This document is just an example>
* START ELEMENT TAG: <sandwich>
* CONTENT CHARACTERS: < >
* START ELEMENT TAG: <bread>
* ATTRIBUTE NAME: <type>
* ATTRIBUTE VALUE CHARACTERS: <baker>
* ATTRIBUTE VALUE CHARACTER: <'>
* ATTRIBUTE VALUE CHARACTERS: <s best>
* END ELEMENT TAG: <bread>
* CONTENT CHARACTERS: < >
* PI TARGET: <spread>
* PI DATA: <please use real mayonnaise >
* CONTENT CHARACTERS: < >
* START ELEMENT TAG: <meat>
* CONTENT CHARACTERS: <Ham >
* CONTENT CHARACTER: <&>
* CONTENT CHARACTERS: < turkey>
* END ELEMENT TAG: <meat>
* CONTENT CHARACTERS: < >
* START ELEMENT TAG: <filling>
* CONTENT CHARACTERS: <Cheese, lettuce, tomato, etc.>
* END ELEMENT TAG: <filling>
* CONTENT CHARACTERS: < >
* START OF CDATA: <<![CDATA[>
* CONTENT CHARACTERS: <We should add a <relish> element in fut....
* END OF CDATA: <]]>>
* CONTENT CHARACTERS: < >
* START ELEMENT TAG: <listprice>
* CONTENT CHARACTERS: <$4.99 >
* END ELEMENT TAG: <listprice>
* CONTENT CHARACTERS: < >
* START ELEMENT TAG: <discount>
* CONTENT CHARACTERS: <0.10>
* END ELEMENT TAG: <discount>
* END ELEMENT TAG: <sandwich>
* END OF DOCUMENT.
* XML DOCUMENT SUCCESSFULLY PARSED
*
* -----+++++***** USING INFORMATION FROM XML *****+++++-----
*
* SANDWICH LIST PRICE: $4.99
* PROMOTIONAL PRICE: $4.49
* GET ONE TODAY!
*

* procedure inserée en "inline"
XML-HANDLER SECTION.

*****DISPLAY '=> <' XML-TEXT '>'

* gestion des evenements xml

EVALUATE XML-EVENT

* ==> ORDER XML EVENTS MOST FREQUENT FIRST
WHEN 'START-OF-ELEMENT'
DISPLAY 'START ELEMENT TAG: <' XML-TEXT '>'
MOVE XML-TEXT TO CURRENT-ELEMENT

WHEN 'CONTENT-CHARACTERS'
DISPLAY 'CONTENT CHARACTERS: <' XML-TEXT '>'
* ==> TRANSFORM XML CONTENT TO OPERATIONAL COBOL DATA ITEM...
EVALUATE CURRENT-ELEMENT
WHEN 'listprice'
* ==> USING FUNCTION NUMVAL-C...
COMPUTE LIST-PRICE = FUNCTION NUMVAL-C(XML-TEXT)
WHEN 'discount'
* ==> USING DE-EDITING OF A NUMERIC EDITED ITEM...
MOVE XML-TEXT TO XFR-ED
MOVE XFR-ED-1 TO DISCOUNT
END-EVALUATE

WHEN 'END-OF-ELEMENT'
DISPLAY 'END ELEMENT TAG: <' XML-TEXT '>'
MOVE SPACES TO CURRENT-ELEMENT

WHEN 'START-OF-DOCUMENT'
COMPUTE XML-DOCUMENT-LENGTH = FUNCTION LENGTH(XML-TEXT)
DISPLAY 'START OF DOCUMENT: LENGTH=' XML-DOCUMENT-LENGTH
' CHARACTERS.'

WHEN 'END-OF-DOCUMENT'
DISPLAY 'END OF DOCUMENT.'

WHEN 'VERSION-INFORMATION'
DISPLAY 'VERSION: <' XML-TEXT '>'

WHEN 'ENCODING-DECLARATION'
DISPLAY 'ENCODING: <' XML-TEXT '>'

WHEN 'STANDALONE-DECLARATION'
DISPLAY 'STANDALONE: <' XML-TEXT '>'

WHEN 'ATTRIBUTE-NAME'
DISPLAY 'ATTRIBUTE NAME: <' XML-TEXT '>'

WHEN 'ATTRIBUTE-CHARACTERS'
DISPLAY 'ATTRIBUTE VALUE CHARACTERS: <' XML-TEXT '>'

WHEN 'ATTRIBUTE-CHARACTER'
DISPLAY 'ATTRIBUTE VALUE CHARACTER: <' XML-TEXT '>'

WHEN 'START-OF-CDATA-SECTION'
DISPLAY 'START OF CDATA: <' XML-TEXT '>'

WHEN 'END-OF-CDATA-SECTION'
DISPLAY 'END OF CDATA: <' XML-TEXT '>'

WHEN 'CONTENT-CHARACTER'
DISPLAY 'CONTENT CHARACTER: <' XML-TEXT '>'

WHEN 'PROCESSING-INSTRUCTION-TARGET'
DISPLAY 'PI TARGET: <' XML-TEXT '>'

WHEN 'PROCESSING-INSTRUCTION-DATA'
DISPLAY 'PI DATA: <' XML-TEXT '>'

WHEN 'COMMENT'
DISPLAY 'COMMENT: <' XML-TEXT '>'

WHEN 'EXCEPTION'
COMPUTE XML-DOCUMENT-LENGTH = FUNCTION LENGTH (XML-TEXT)
DISPLAY 'EXCEPTION ' XML-CODE ' AT OFFSET '
XML-DOCUMENT-LENGTH '.'

WHEN OTHER
DISPLAY 'UNEXPECTED XML EVENT: ' XML-EVENT '.'
END-EVALUATE.

END PROGRAM TBETMOD2.

HAUT DE PAGE

PROFIL MEMBRE LUI ECRIRE 
POSTER UN NOUVEAU SUJET REPONDRE A CE SUJET

PREMIERE PAGE

PAGE PRECEDENTE Page précédente

Page suivante

PAGE SUIVANTE DERNIERE PAGE

FORUM COBOL



    PAGE : [1]



.: Site Web développé par Yann Pingot et l'équipe MPWG avec www.evolvia-web.com :.