Powerbuilder pour les completement Geeks !

Le forum (ô combien francophone) des utilisateurs de Powerbuilder.

Recherche rapide

Annonce

Certaines rubriques, dont des cours, sont uniquement visibles par les membres du forum ^^.
Dans la rubrique Liens & Références, vous avez accès à un sommaire de téléchargement, profitez-en !
Il existe maintenant un nouveau TOPIC "Votre CV en Ligne" accessible uniquement par demande.

#1 01-08-2008 15:22:41

Nyphel  
Membre Power Geek
Lieu: Grenoble
Date d'inscription: 06-05-2008
Messages: 253
Pépites: 12
Banque: 529,705,333,097,693

Enregistrer le contenu d'une datawindow au format XML

Suite à la source donnée sur ce post, j'ai voulu en faire de même pour le format XML.

Voici donc mon code source :

Code: pb

f_saveas_xml(dw_detail,'c:/test_pb.xml')

Code: pb

integer li_return_value

IF adw_dw.SaveAs( as_docname, HTMLTable!, TRUE ) = -1 THEN
    li_return_value = -1
    RETURN li_return_value
END IF 

// Convert HTML file to XML
OLEObject XML 
XML = CREATE OLEObject 

li_return_value = XML.ConnectToObject( as_docname ) // li_return_value = -7
IF li_return_value = 0 THEN
    XML.Application.DisplayAlerts = FALSE 
    XML.Application.Workbooks( 1 ).Parent.Windows( XML.Application.workbooks( 1 ).Name ).Visible = TRUE 
    XML.Application.Workbooks( 1 ).SaveAs(as_docname, 1 )
    XML.Application.Workbooks( 1 ).Close() 
END IF 

DESTROY XML

RETURN li_return_value


Le fichier temporaire au format HTML est bien créé dans c:/test_pb.xml.
Par contre j'obtiens un code d'erreur égal à -7 lors de la connexion à ce fichier pour essayer de le transformer en XML, et la documentation dit :

Returns 0 if it succeeds and one of the following negative values if an error occurs:

-1  Invalid call: the argument is the Object property of a control
-2  Class name not found
-3  Object could not be created
-4  Could not connect to object
-5  Ca not connect to the currently active object
-6  Filename is not valid
-7  File not found or file could not be opened
-8  Load from file not supported by server
-9  Other error
-15  COM+ is not loaded on this computer
-16  Invalid Call: this function not applicable to OLETxnObject

If any argument's value is null, ConnectToObject returns null.

Le fichier est bien existant, c'est donc qu'il n'arrive pas à l'ouvrir en format XML.
Il y parvient en format Excel.
Si moi je double-clic sur le fichier, il s'ouvre avec Internet Explorer.
Je ne comprends pas vraiment quel est le soucis... E t vous ?

Dernière modification par Nyphel (01-08-2008 15:24:08)

Hors ligne

 

Pied de page des forums

Propulsé par FluxBB 1.2.22