Répétez apres moi :J'aime PBAdonf. J'aime PBAdonf. J'aime PBAdonf.

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