11.886 messaggi dal 09 febbraio 2002
Contributi
Ah ok, denominazione è un attributo e non un nodo. Quindi, per recuperare il suo valore userai getAttribute anziché SelectSingleNode.

Prova così:
Set NodoPec = Anagrafica.selectSingleNode("//indirizzo-posta-certificata")
Set NodoDati = Anagrafica.selectSingleNode("//dati-identificativi")

 Dim Pec
  If Not NodoPec Is Nothing Then
  '  'la pec esisteva, quindi possiamo leggere il suo testo
  Pec = NodoPec.text
  End If
   Response.Write(Pec & "PEC")

  Dim RAGIONESOCIALE
  If Not NodoDati Is Nothing Then
    RAGIONESOCIALE = NodoDati.getAttribute("denominazione")
  End If

   Response.Write(RAGIONESOCIALE & "RAGIONESOCIALE")


ciao,
Moreno
Modificato da BrightSoul il 14 giugno 2018 19.48 -

Enjoy learning and just keep making
10 messaggi dal 09 gennaio 2012
Ciao Moreno
ti pongo un ulteriore quesito, che cmq rimane nel tema.
Adesso mi sto approcciando alla lettura del xbrl che non si discosta molto dal xml, tant'è vero che grazie ai tuoi precedenti suggerimenti, riesco a leggere abbastanza del file.
Il problema nasce dal fatto che così
  Set NodoImm = Bil.selectSingleNode("//itcc-ci:TotImmImm")
riesco a leggere il valore di uno dei due nodi senza poter però differenziare in funzione dell'anno che è rappresentato da contextRef="c0_i" e da contextRef="c1_i

  <itcc-ci:TotImmImm contextRef="c0_i" unitRef="EUR" decimals="0">16497</itcc-ci:TotaleImmobilizzazioniImmateriali>
  <itcc-ci:TotImmImm contextRef="c1_i" unitRef="EUR" decimals="0">43390</itcc-ci:TotaleImmobilizzazioniImmateriali>


cosa mi suggerisci?
11.886 messaggi dal 09 febbraio 2002
Contributi
Ciao,
dovresti raffinare il criterio di selezione. Al momento stai usando questa stringa:
//itcc-ci:TotImmImm

Dovresti invece provare con questo, che impone la presenza dell'attributo contextRef con valore c0_i
//itcc-ci:TotImmImm[@contextRef='c0_i']


Quindi, la riga di codice diventa:
0Set NodoImm = Bil.selectSingleNode("//itcc-ci:TotImmImm[@contextRef='c0_i']")


Come hai appena visto, componendo opportunamente la stringa di selezione, riuscirai a selezionare un nodo in base al suo nome, alla sua gerarchia, ai suoi attributi o al suo valore. Fai riferimento a questa pagina, in cui troverai svariati esempi:
https://www.w3schools.com/xml/xpath_syntax.asp

La stringa di selezione si chiama più propriamente "espressione XPath" o "percorso XPath".

ciao,
Moreno

Enjoy learning and just keep making

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.