Liquidazioni periodiche

987 views
Skip to first unread message

softel...@gmail.com

unread,
Apr 19, 2017, 6:55:00 AM4/19/17
to Foxpro Italia
Salve
qualcuno ha qualche esempio di file liquidazione periodica in formato XML
da inviare il prossimo 31/05
Grazie

Salvatore Graf

unread,
Apr 19, 2017, 8:33:58 AM4/19/17
to foxpro...@googlegroups.com
Questo XML è relativo ad un’azienda con liquidazione IVA mensile


<?xml version="1.0" encoding="UTF-8"?>
<Fornitura xmlns="urn:www.agenziaentrate.gov.it:specificheTecniche:sco:ivp">
<Intestazione>
<CodiceFornitura>IVP17</CodiceFornitura>
</Intestazione>
<Comunicazione identificativo="20171">
<Frontespizio>
<CodiceFiscale>00000000000</CodiceFiscale>
<AnnoImposta>2017</AnnoImposta>
<PartitaIVA>012345678901</PartitaIVA>
<CFDichiarante>XXXYYY99X99X999X</CFDichiarante>
<CodiceCaricaDichiarante>1</CodiceCaricaDichiarante>
<FirmaDichiarazione>0</FirmaDichiarazione>
<CFIntermediario>012345678901</CFIntermediario>
<ImpegnoPresentazione>2</ImpegnoPresentazione>
<DataImpegno>06042017</DataImpegno>
</Frontespizio>
<DatiContabili>
<Modulo>
<Mese>1</Mese>
<TotaleOperazioniAttive>262958,67</TotaleOperazioniAttive>
<TotaleOperazioniPassive>87062,01</TotaleOperazioniPassive>
<IvaEsigibile>10639,03</IvaEsigibile>
<IvaDetratta>19097,59</IvaDetratta>
<IvaDovuta>0,00</IvaDovuta>
<IvaCredito>8458,56</IvaCredito>
<CreditoPeriodoPrecedente>28818,33</CreditoPeriodoPrecedente>
<CreditoAnnoPrecedente>0,00</CreditoAnnoPrecedente>
<ImportoDaVersare>0,00</ImportoDaVersare>
<ImportoACredito>8458,56</ImportoACredito>
</Modulo>
<Modulo>
<Mese>2</Mese>
<TotaleOperazioniAttive>335189,62</TotaleOperazioniAttive>
<TotaleOperazioniPassive>79659,62</TotaleOperazioniPassive>
<IvaEsigibile>11419,54</IvaEsigibile>
<IvaDetratta>15276,55</IvaDetratta>
<IvaDovuta>0,00</IvaDovuta>
<IvaCredito>3857,01</IvaCredito>
<CreditoPeriodoPrecedente>28818,33</CreditoPeriodoPrecedente>
<CreditoAnnoPrecedente>0,00</CreditoAnnoPrecedente>
<ImportoDaVersare>0,00</ImportoDaVersare>
<ImportoACredito>12315,57</ImportoACredito>
</Modulo>
<Modulo>
<Mese>3</Mese>
<TotaleOperazioniAttive>624880,06</TotaleOperazioniAttive>
<TotaleOperazioniPassive>82400,56</TotaleOperazioniPassive>
<IvaEsigibile>63929,83</IvaEsigibile>
<IvaDetratta>15353,90</IvaDetratta>
<IvaDovuta>48575,93</IvaDovuta>
<IvaCredito>0,00</IvaCredito>
<CreditoPeriodoPrecedente>28818,33</CreditoPeriodoPrecedente>
<CreditoAnnoPrecedente>28818,33</CreditoAnnoPrecedente>
<ImportoDaVersare>7442,03</ImportoDaVersare>
<ImportoACredito>0,00</ImportoACredito>
</Modulo>
</DatiContabili>
</Comunicazione>
</Fornitura>


Questo XML è relativo ad un’azienda con liquidazione IVA TRIMESTRALE


<?xml version="1.0" encoding="UTF-8"?>
<Fornitura xmlns="urn:www.agenziaentrate.gov.it:specificheTecniche:sco:ivp">
<Intestazione>
<CodiceFornitura>IVP17</CodiceFornitura>
</Intestazione>
<Comunicazione identificativo="20171">
<Frontespizio>
<CodiceFiscale>00000000000</CodiceFiscale>
<AnnoImposta>2017</AnnoImposta>
<PartitaIVA>012345678901</PartitaIVA>
<CFDichiarante>XXXYYY99X99X999X</CFDichiarante>
<CodiceCaricaDichiarante>1</CodiceCaricaDichiarante>
<FirmaDichiarazione>0</FirmaDichiarazione>
<CFIntermediario>012345678901</CFIntermediario>
<ImpegnoPresentazione>2</ImpegnoPresentazione>
<DataImpegno>06042017</DataImpegno>
</Frontespizio>
<DatiContabili>
<Modulo>
<Trimestre>1</Trimestre>
<TotaleOperazioniAttive>60618,21</TotaleOperazioniAttive>
<TotaleOperazioniPassive>518,24</TotaleOperazioniPassive>
<IvaEsigibile>13336,00</IvaEsigibile>
<IvaDetratta>114,02</IvaDetratta>
<IvaDovuta>13221,98</IvaDovuta>
<IvaCredito>0,00</IvaCredito>
<CreditoPeriodoPrecedente>0,00</CreditoPeriodoPrecedente>
<CreditoAnnoPrecedente>0,00</CreditoAnnoPrecedente>
<InteressiDovuti>0,00</InteressiDovuti>
<ImportoDaVersare>13221,98</ImportoDaVersare>
<ImportoACredito>0,00</ImportoACredito>
</Modulo>
</DatiContabili>
</Comunicazione>
</Fornitura>

Leggi bene tutte le specifiche che c’è scritto tutto .
Se hai una versione di Visual Studio recente, puoi aprire il file .XSD (schema) e farti generare un file XML di esempio.
Sono partito da quello e poi leggendo le specifiche l’ho costruito.

Parte del codice:

Try
oXml = Createobject("MSXML2.DOMDocument.6.0")
Catch To oErr
If oErr.ErrorNo <> 0
Messagebox(oErr.Message, 16, "Avviso")
Endif
Endtry

If Vartype(oErr) = "O"
Messagebox("ACTIVEX MSXML non presente nel sistema!" + Chr(13) + ;
"Contattare l'assistenza.", 48, "Avviso")
Return
Endif

oXml.Async = .F.
oXml.validateOnParse = .F.
oXml.resolveexternals = .F.
oXml.PreserveWhiteSpace = .T.
cNameSpace = "urn:www.agenziaentrate.gov.it:specificheTecniche:sco:ivp"

Wait Window "Generazione XML liquidazione I.V.A. in corso ... " Nowait

**** INTESTAZIONE ****
nodo = oXml.createProcessingInstruction("xml", "version='1.0' encoding='UTF-8'")
oXml.appendChild(nodo)

**** FORNITURA ****
nodoFornitura = oXml.createNode(1, "Fornitura", cNameSpace)

oXml.appendChild(nodoFornitura)

******************************************************************************************************************************************
**** INTESTAZIONE ****
******************************************************************************************************************************************
nodoIntestazione = oXml.createNode(1, "Intestazione", cNameSpace)

element = oXml.createNode(1, "CodiceFornitura", cNameSpace)
element.Text = "IVP17"
nodoIntestazione.appendChild(element)


nodoFornitura.appendChild(nodoIntestazione)
**** ELABORAZIONE COMUNICAZIONE

nodoComunicazione = oXml.createNode(1, "Comunicazione", cNameSpace)

oAttributo = oXml.createAttribute("identificativo")
oAttributo.Value = cAnno + alltrim(str(nTrimestre))
nodoComunicazione.setAttributeNode(oAttributo)


nodoFornitura.appendChild(nodoComunicazione)

**** FINE ELABORAZIONE ROOT

**** ELABORAZIONE Frontespizio

nodoFrontespizio = oXml.createNode(1, "Frontespizio", cNameSpace)

**** DATI Frontespizio
element = oXml.createNode(1, "CodiceFiscale", cNameSpace)
element.Text = Alltrim(aziendeutente.cf)
nodoFrontespizio.appendChild(element)

element = oXml.createNode(1, "AnnoImposta", cNameSpace)
element.Text = cAnno
nodoFrontespizio.appendChild(element)

element = oXml.createNode(1, "PartitaIVA", cNameSpace)
element.Text = aziendeutente.piva
nodoFrontespizio.appendChild(element)

element = oXml.createNode(1, "CFDichiarante", cNameSpace)
element.Text = Alltrim(aziendeutente.au_cf) &&TO DO CF DICHIARANTE (OBBLIGATORIO se diverso da PERSONA FISICA)
nodoFrontespizio.appendChild(element)

element = oXml.createNode(1, "CodiceCaricaDichiarante", cNameSpace)
element.Text = Alltrim(Str(ncarica)) && OBBLIGATORIO SE PRESENTE CFDICHIARANTE
nodoFrontespizio.appendChild(element)

element = oXml.createNode(1, "FirmaDichiarazione", cNameSpace)
element.Text = Alltrim(Str(nfirmadichiarante)) && OPZIONALE
nodoFrontespizio.appendChild(element)

element = oXml.createNode(1, "CFIntermediario", cNameSpace)
element.Text = Alltrim(cfi) && C.F. dell'intermediario che trasmette la comunicazione
nodoFrontespizio.appendChild(element)

element = oXml.createNode(1, "ImpegnoPresentazione", cNameSpace)
element.Text = Alltrim(Str(nimpegnopresentazione )) && 1 se la comunicazione è predisposta dal contribuente - 2 comunicazione predisposta da chi effettua l'invio
nodoFrontespizio.appendChild(element)

element = oXml.createNode(1, "DataImpegno", cNameSpace)
element.Text = Strtran(Dtoc(ddataimpegno), "-", "") && formato GGMMAAAA
nodoFrontespizio.appendChild(element)

**** FINE **** Frontespizio
ecc.. ecc..


oXml.save(cNomefile)


Ciao

Salvatore
> --
> Hai ricevuto questo messaggio perché sei iscritto al gruppo "Foxpro Italia" di Google Gruppi.
> Per annullare l'iscrizione a questo gruppo e non ricevere più le sue email, invia un'email a foxpro-itali...@googlegroups.com.
> Per postare messaggi in questo gruppo, invia un'email a foxpro...@googlegroups.com.
> Per visualizzare questa discussione sul Web, visita https://groups.google.com/d/msgid/foxpro-italia/cffe5443-b490-44ae-8a8d-f7497738109a%40googlegroups.com.
> Per ulteriori opzioni, visita https://groups.google.com/d/optout.

softel...@gmail.com

unread,
Apr 20, 2017, 2:48:18 AM4/20/17
to Foxpro Italia
Grazie
mi mancava solo la seconda linea

Denis Carlini

unread,
May 3, 2017, 8:49:49 AM5/3/17
to Foxpro Italia
Buongiorno,
avrei gentilmente bisogno di capire una cosa....

Allora se l iva è trimestrale utilizzo l esempio che trovo sopra senza problemi perchè il file dovrà essere inviato una volta a trimestre.
Se l iva è mensile invece, dovrò creare un file con il resoconto di 3 mesi che verrà poi inviato una volta a trimestre, o posso fare per ogni mese un file da inviare singolarmente?

Ultima domanda.....se invio il file 0001 del mese 1 e poi ne invio uno 0002 sempre riferito al mese 1 viene considerato l ultimo inviato? Come funziona per la fattura PA?

Grazie mille per l aiuto!!
Denis.

alessio pesce

unread,
May 3, 2017, 9:15:16 AM5/3/17
to Foxpro Italia

Ma la mia procedura crea un file testo non xml...come mai?? Esiste qualcosa per creare un file testo?



Per ulteriori opzioni, visita https://groups.google.com/d/optout.
--

Saluti

Alessio Pesce

Salvatore Graf

unread,
May 3, 2017, 9:37:01 AM5/3/17
to foxpro...@googlegroups.com
> Allora se l iva è trimestrale utilizzo l esempio che trovo sopra senza problemi perchè il file dovrà essere inviato una volta a trimestre.
> Se l iva è mensile invece, dovrò creare un file con il resoconto di 3 mesi che verrà poi inviato una volta a trimestre, o posso fare per ogni mese un file da inviare singolarmente?

Le specifiche parlano chiaro…

Il file XML DEVE essere inviato ogni trimestre.
Se azienda ha IVA mensile il file DEVE avere il dettaglio dei tre singoli mesi :

<Mese>1</Mese>
<Mese>2</Mese>
<Mese>3</Mese>

altrimenti se azienda ha IVA trimestrale il file DEVE avere solo il riferimento del trimestre :

<Trimestre>1</Trimestre>

Leggi bene pag 23 delle specifiche tecniche


> Ultima domanda.....se invio il file 0001 del mese 1 e poi ne invio uno 0002 sempre riferito al mese 1 viene considerato l ultimo inviato? Come funziona per la fattura PA?


Non trovo informazioni in merito. Se funziona come per le fatture PA, dato che è prevista una notifica sull’esito dell’elaborazione del file inviato, penso che sia possibile un solo invio x periodo, poi se l’esito dell’elaborazione è negativo, allora si può inviare una seconda volta.

Ciao

Salvatore
> Per visualizzare questa discussione sul Web, visita https://groups.google.com/d/msgid/foxpro-italia/4bbba96d-ab18-44f0-9f08-f63423673d27%40googlegroups.com.

Denis

unread,
May 3, 2017, 9:45:55 AM5/3/17
to Foxpro Italia
Grazie mille per la risposta.....

Ho verificato nei file che ho scaricato dal sito delle agenzie delle entrate.....nel file Specifiche+tecniche+e+regole+per+la+compilazione+della+comunicazione.pdf non riesco a trovare la parte che mi specifica quello che mi dici a pag. 23.
Sbaglio file?

Grazie.

alessio pesce

unread,
May 3, 2017, 10:03:28 AM5/3/17
to Foxpro Italia

Ci allegheremo il file?


Per postare in questo gruppo, invia un'email a foxpro...@googlegroups.com.
Per visualizzare questa discussione sul Web, visita https://groups.google.com/d/msgid/foxpro-italia/4cc292ca-cf4e-47dd-9d05-750fa5d394a2%40googlegroups.com.
Per altre opzioni visita https://groups.google.com/d/optout.
--

Saluti

Alessio Pesce

Salvatore Graf

unread,
May 3, 2017, 11:03:14 AM5/3/17
to foxpro...@googlegroups.com
SpecTecRegoleCompilazioneIVA+TRIMESTRALE.PDF

alessio pesce

unread,
May 3, 2017, 11:23:56 AM5/3/17
to foxpro...@googlegroups.com

Grazie millissime


Il mer 3 mag 2017, 17:03 Salvatore Graf <s.g...@italwork.com> ha scritto:

--
Hai ricevuto questo messaggio perché sei iscritto al gruppo "Foxpro Italia" di Google Gruppi.
Per annullare l'iscrizione a questo gruppo e non ricevere più le sue email, invia un'email a foxpro-itali...@googlegroups.com.
Per postare in questo gruppo, invia un'email a foxpro...@googlegroups.com.

Per altre opzioni visita https://groups.google.com/d/optout.

Per altre opzioni visita https://groups.google.com/d/optout.

--
Hai ricevuto questo messaggio perché sei iscritto al gruppo "Foxpro Italia" di Google Gruppi.
Per annullare l'iscrizione a questo gruppo e non ricevere più le sue email, invia un'email a foxpro-itali...@googlegroups.com.
Per postare in questo gruppo, invia un'email a foxpro...@googlegroups.com.

Per altre opzioni visita https://groups.google.com/d/optout.
--

Saluti

Alessio Pesce

alessio pesce

unread,
May 3, 2017, 11:25:43 AM5/3/17
to foxpro...@googlegroups.com

Ma siete sicuri che si possa fare solo col formato XML?

--

Saluti

Alessio Pesce

Salvatore Graf

unread,
May 3, 2017, 12:20:53 PM5/3/17
to foxpro...@googlegroups.com

Ma siete sicuri che si possa fare solo col formato XML?

Sicurissimo!

P.S. Ma le specifiche tecniche le vogliamo leggere ?

Salvatore


softel...@gmail.com

unread,
May 6, 2017, 2:00:03 AM5/6/17
to Foxpro Italia
Ciao
attenzione tutti i tag della liquidazione periodica devono essere preceduti da <iv:
esempio <iv:Frontespizio etc


Il giorno mercoledì 19 aprile 2017 12:55:00 UTC+2, softel...@gmail.com ha scritto:

Denis Carlini

unread,
May 6, 2017, 3:48:42 AM5/6/17
to foxpro...@googlegroups.com
Grazie mille. Ma tutte queste info dove sono reperibili? C e uno strumento per verificare la corretta struttura del file?

--
Hai ricevuto questo messaggio perché sei iscritto al gruppo "Foxpro Italia" di Google Gruppi.
Per annullare l'iscrizione a questo argomento, visita https://groups.google.com/d/topic/foxpro-italia/0HFPrJvd6a0/unsubscribe.
Per annullare l'iscrizione a questo gruppo e a tutti i suoi argomenti, invia un'email a foxpro-italia+unsubscribe@googlegroups.com.

Per postare in questo gruppo, invia un'email a foxpro...@googlegroups.com.

Salvatore Graf

unread,
May 7, 2017, 4:13:18 AM5/7/17
to foxpro...@googlegroups.com
Per verificare la correttezza di un file .XML bisogna avere il relativo file .XSD (schema) quindi utilizzare qualche tool specifico o agire tramite codice.


(bisogna poi installare il plug-in “XML tool” dal menù ->Plugin Manager)

Codice VFP :
**********************************************************************
* Programma..: LIQUIDAZIONE.VALIDAXML
* Autore.....: Salvatore GRAF
* Data.......: 03 April 2017, 10:03:47
* Info.......: Copyright © 2017, Italwork S.r.l.
*              All Rights Reserved.
* Compiler...: Visual FoxPro 09.00.0000.7423 for Windows
********************************************************************** 
lparameters cXMLPath,cXSDPath
LOCAL oXSD, validatexml, sNamespace, objSchemas, oXml, oErr 
try
   oXSD = createobject("MSXML2.DOMDocument.6.0")
catch to oErr
   if oErr.errorno<> 0
      *messagebox(oErr.message,16,"Avviso")
   endif
endtry
if vartype(oErr)="O"
   validatexml = "ACTIVEX MSXML2.DOMDocument.6.0 non trovato!"
   return validatexml
endif
oXSD.async = .f.
if !oXSD.load(cXSDPath)
   validatexml = "Errore  - Impossibile caricare il file schema XSD ("+cXSDPath+")"
   return validatexml 
else
   sNamespace = oXSD.documentElement.getAttribute("targetNamespace")
endif


objSchemas = createobject("MSXML2.XMLSchemaCache.6.0")
objSchemas.add(sNamespace, cXSDPath)


oXml = createobject("MSXML2.DOMDocument.6.0")
oXml.async = .f.
oXml.validateOnParse = .t.
oXml.resolveexternals = .t.

if !oXml.load(cXMLPath)
   validatexml = "Errore  - Impossibile caricare il file XML ("+cXMLPath+")"
   return validatexml 
endif
oXml.schemas = objSchemas
oErr = oXml.validate()
if oErr.errorCode <> 0 then
   validatexml = "Errore - " + oErr.reason + chr(13)
Else
   validatexml ="OK"
endif
return validatexml



P.S. 
attenzione tutti i tag della liquidazione periodica devono essere preceduti da <iv:
esempio <iv:Frontespizio etc

Non sono sicuro che sia corretta questa informazione… la cosa importante è che ci sia questo tag con il relativo attributo

<Fornitura xmlns="urn:www.agenziaentrate.gov.it:specificheTecniche:sco:ivp”>

Il file seguente di esempio è stato validato con successo !(Ho ovviamente modificato i dati del frontespizio per motivi di privacy!)

<?xml version="1.0" encoding="UTF-8"?>
<Fornitura xmlns="urn:www.agenziaentrate.gov.it:specificheTecniche:sco:ivp">
<Intestazione>
<CodiceFornitura>IVP17</CodiceFornitura>
</Intestazione>
<Comunicazione identificativo="20171">
<Frontespizio>
<CodiceFiscale>01234567890</CodiceFiscale>
<AnnoImposta>2017</AnnoImposta>
<PartitaIVA> 01234567890 </PartitaIVA>
<CFDichiarante>XXXYYY99X99Y9999Z</CFDichiarante>
<CodiceCaricaDichiarante>1</CodiceCaricaDichiarante>
<FirmaDichiarazione>0</FirmaDichiarazione>
<CFIntermediario> 01234567890</CFIntermediario>



SALVATORE



Per annullare l'iscrizione a questo gruppo e non ricevere più le sue email, invia un'email a foxpro-itali...@googlegroups.com.
Per postare in questo gruppo, invia un'email a foxpro...@googlegroups.com.

alessio pesce

unread,
May 9, 2017, 6:47:51 AM5/9/17
to foxpro...@googlegroups.com


Ragazzi a me invece accetta un file di testo così come lho allegato.
 Stiamo parlando della stessa cosa?
Lo do al commercialista che provvede ad inoltrarlo con la procedura delle imposte dirette.
ne sapete qualcosa?
 
--

Saluti

Alessio Pesce

0XXXXXX0657_NSP20.nsp

Salvatore Graf

unread,
May 9, 2017, 7:29:07 AM5/9/17
to foxpro...@googlegroups.com
Ad occhio mi sembra la vecchia versione del file, quella che era valida fino al 2016.
Ciao

Salvatore


--
Hai ricevuto questo messaggio perché sei iscritto al gruppo "Foxpro Italia" di Google Gruppi.
Per annullare l'iscrizione a questo gruppo e non ricevere più le sue email, invia un'email a foxpro-itali...@googlegroups.com.
Per postare in questo gruppo, invia un'email a foxpro...@googlegroups.com.

Per altre opzioni visita https://groups.google.com/d/optout.
<0XXXXXX0657_NSP20.nsp>

alessio pesce

unread,
May 9, 2017, 7:41:10 AM5/9/17
to foxpro...@googlegroups.com

Quindi dalle prossime non dovrebbe essere valida??



Per altre opzioni visita https://groups.google.com/d/optout.
--

Saluti

Alessio Pesce

alessio pesce

unread,
May 9, 2017, 7:41:42 AM5/9/17
to foxpro...@googlegroups.com

Devo rifare tutto daccapo?

--

Saluti

Alessio Pesce

alessio pesce

unread,
May 9, 2017, 7:43:13 AM5/9/17
to foxpro...@googlegroups.com

Secondo me, stiamo parlando di 2 cose diverse, la mia è il cosiddetto allegato clienti e fornitori...l'altra la liquidazione periodica dell'IVA...

--

Saluti

Alessio Pesce

Salvatore Graf

unread,
May 9, 2017, 7:58:05 AM5/9/17
to foxpro...@googlegroups.com
L'allegato clienti e fornitori dal 2017 non è più quello!
Bisogna rifare tutto nel nuovo formato XML 
Quit trovi tutto

Ciao

Salvatore


alessio pesce

unread,
May 10, 2017, 2:04:50 AM5/10/17
to foxpro...@googlegroups.com

Grazie....che brutta notizia



Per altre opzioni visita https://groups.google.com/d/optout.
--

Saluti

Alessio Pesce

alessio pesce

unread,
May 10, 2017, 2:49:38 AM5/10/17
to foxpro...@googlegroups.com

Salvatore, il link che mi hai segnalato, parla di trasmissione dati fattura. Penso si riferisca alle fatture telematiche non all'allegato clienti fornitori. Sbaglio?

--

Saluti

Alessio Pesce

Salvatore Graf

unread,
May 10, 2017, 3:38:38 AM5/10/17
to foxpro...@googlegroups.com

alessio pesce

unread,
May 10, 2017, 4:02:53 AM5/10/17
to foxpro...@googlegroups.com

Ed esiste qualche procedura in giro che crea il file? Grazie



Per altre opzioni visita https://groups.google.com/d/optout.
--

Saluti

Alessio Pesce

Salvatore Graf

unread,
May 10, 2017, 4:38:13 AM5/10/17
to foxpro...@googlegroups.com
Magari! 
Esistono le specifiche tecniche per crearlo!

Salvatore


alessio pesce

unread,
May 10, 2017, 4:56:42 AM5/10/17
to foxpro...@googlegroups.com

Bien, ci lavoreremo alacremente, sopra.



Per altre opzioni visita https://groups.google.com/d/optout.
--

Saluti

Alessio Pesce

alessio pesce

unread,
May 10, 2017, 5:40:40 AM5/10/17
to foxpro...@googlegroups.com
Salvatore, scusami se esagero, nel link dell'ufficio delle entrate ci sono due procedure una fino al 9 luglio una per dopo tale data.
Hai già visto cosa cambia? non si può utlizzare solo la seconda?
perdonami, ma penso che avrai già esaminato la cosa
ciao

--

Saluti

Alessio Pesce

Salvatore Graf

unread,
May 10, 2017, 5:47:03 AM5/10/17
to foxpro...@googlegroups.com
Ho usato solo la seconda visto che la scadenza è prevista per settembre !
Ciao !

alessio pesce

unread,
May 16, 2017, 9:59:01 AM5/16/17
to foxpro...@googlegroups.com

Ma un file esempio xml di compilazione fatture c'è da qualche parte?

Grazie



Per altre opzioni visita https://groups.google.com/d/optout.
--

Saluti

Alessio Pesce

softel...@gmail.com

unread,
May 17, 2017, 2:56:00 AM5/17/17
to Foxpro Italia
Per Salvatore Graf
scusami con l'esempio per la creazione del file xml come va chiuso il nodo comunicazione?


Il giorno mercoledì 19 aprile 2017 12:55:00 UTC+2, softel...@gmail.com ha scritto:

alessio pesce

unread,
May 17, 2017, 2:59:17 AM5/17/17
to Foxpro Italia

Se guardi nel sito agenzia Delle entrate troverai il software sviluppato da loro per la trasmissione  della liquidazione Iva. Potrai vedere direttamente il file creato.


--
Hai ricevuto questo messaggio perché sei iscritto al gruppo "Foxpro Italia" di Google Gruppi.
Per annullare l'iscrizione a questo gruppo e non ricevere più le sue email, invia un'email a foxpro-itali...@googlegroups.com.
Per postare in questo gruppo, invia un'email a foxpro...@googlegroups.com.

Per altre opzioni visita https://groups.google.com/d/optout.
--

Saluti

Alessio Pesce

Salvatore Graf

unread,
May 17, 2017, 3:20:06 AM5/17/17
to foxpro...@googlegroups.com
Se ho capito bene la domanda ...

Questo XML è relativo ad un’azienda con liquidazione IVA mensile

<?xml version="1.0" encoding="UTF-8"?>
<Fornitura xmlns="urn:www.agenziaentrate.gov.it:specificheTecniche:sco:ivp">
<Intestazione>
<CodiceFornitura>IVP17</CodiceFornitura>
</Intestazione>
<Comunicazione identificativo="20171">
<Frontespizio>
<CodiceFiscale>00000000000</CodiceFiscale>
<AnnoImposta>2017</AnnoImposta>
<PartitaIVA>012345678901</PartitaIVA>
<CFDichiarante>XXXYYY99X99X999X</CFDichiarante>

<CodiceCaricaDichiarante>1</CodiceCaricaDichiarante>
<FirmaDichiarazione>0</FirmaDichiarazione>
<CFIntermediario>012345678901</CFIntermediario>
Questo XML è relativo ad un’azienda con liquidazione IVA TRIMESTRALE


<?xml version="1.0" encoding="UTF-8"?>
<Fornitura xmlns="urn:www.agenziaentrate.gov.it:specificheTecniche:sco:ivp">
<Intestazione>
<CodiceFornitura>IVP17</CodiceFornitura>
</Intestazione>
<Comunicazione identificativo="20171">
<Frontespizio>
<CodiceFiscale>00000000000</CodiceFiscale>
<AnnoImposta>2017</AnnoImposta>
<PartitaIVA>012345678901</PartitaIVA>
<CFDichiarante>XXXYYY99X99X999X</CFDichiarante>

<CodiceCaricaDichiarante>1</CodiceCaricaDichiarante>
<FirmaDichiarazione>0</FirmaDichiarazione>
<CFIntermediario>012345678901</CFIntermediario>

<ImpegnoPresentazione>2</ImpegnoPresentazione>
<DataImpegno>06042017</DataImpegno>
</Frontespizio>
<DatiContabili>
<Modulo>
<Trimestre>1</Trimestre>
<TotaleOperazioniAttive>60618,21</TotaleOperazioniAttive>
<TotaleOperazioniPassive>518,24</TotaleOperazioniPassive>
<IvaEsigibile>13336,00</IvaEsigibile>
<IvaDetratta>114,02</IvaDetratta>
<IvaDovuta>13221,98</IvaDovuta>
<IvaCredito>0,00</IvaCredito>

<CreditoPeriodoPrecedente>0,00</CreditoPeriodoPrecedente>
<CreditoAnnoPrecedente>0,00</CreditoAnnoPrecedente>
<InteressiDovuti>0,00</InteressiDovuti>
<ImportoDaVersare>13221,98</ImportoDaVersare>

<ImportoACredito>0,00</ImportoACredito>
</Modulo>
</DatiContabili>
</Comunicazione>
</Fornitura>

Ciao

Salvatore



softel...@gmail.com

unread,
May 18, 2017, 2:42:48 AM5/18/17
to Foxpro Italia
Si il file lo creo diversamente ma volevo vedere se possibile il resto del tuo sorgente per creare la liquidazione periodica
ti ringrazio anticipatamente
Luigi


Il giorno mercoledì 19 aprile 2017 12:55:00 UTC+2, softel...@gmail.com ha scritto:

Salvatore Graf

unread,
May 18, 2017, 3:22:38 AM5/18/17
to foxpro...@googlegroups.com
Ecco il codice che ovviamente al suo interno fa riferimento a tabelle e metodi del mio gestionale ma comunque la “pappa” c’è !
Buon lavoro

Salvatore


**********************************************************************
* Programma..: LIQUIDAZIONE.GENERAFILEXML
* Autore.....: Salvatore GRAF
* Data.......: 05 April 2017, 13:31:13
* Info.......: Copyright © 2017, Italwork S.r.l.
*              All Rights Reserved.
* Compiler...: Visual FoxPro 09.00.0000.7423 for Windows
* Modifiche..: administrator, Creato 05 April 2017 / 13:31:13
********************************************************************** 
Lparameters cTipoElaborazione


*Graf*  nfirmaintermediario   = 0
*Graf*  ddataimpegno      = Date()
*Graf*  nimpegnopresentazione   = 2
*Graf*  cfi           = ""
*Graf*  nfirmadichiarante   = 0
*Graf*  ncarica         = 1
*Graf*  nTrimestre        = 1

Try
  oXml = Createobject("MSXML2.DOMDocument.6.0")
Catch To oErr
  If oErr.ErrorNo <> 0
    Messagebox(oErr.Message, 16, "Avviso")
  Endif
Endtry
If Vartype(oErr) = "O"
  Messagebox("ACTIVEX MSXML non presente nel sistema!" + Chr(13) + ;
      "Contattare l'assistenza.", 48, "Avviso")
  Thisform.pagine.page1.attesa.Visible = .F.
  Return
Endif

oXml.Async        = .F.
oXml.validateOnParse  = .F.
oXml.resolveexternals = .F.
oXml.PreserveWhiteSpace = .T.
cNameSpace = "urn:www.agenziaentrate.gov.it:specificheTecniche:sco:ivp"

Wait Window "Generazione XML liquidazione I.V.A. in corso ... " Nowait

**** INTESTAZIONE ****
nodo = oXml.createProcessingInstruction("xml", "version='1.0' encoding='UTF-8'")
oXml.appendChild(nodo)

**** FORNITURA ****
nodoFornitura = oXml.createNode(1, "Fornitura", cNameSpace)

oXml.appendChild(nodoFornitura)

******************************************************************************************************************************************
**** INTESTAZIONE ****
******************************************************************************************************************************************
nodoIntestazione = oXml.createNode(1, "Intestazione", cNameSpace)

element    = oXml.createNode(1, "CodiceFornitura", cNameSpace)
element.Text = "IVP17"
nodoIntestazione.appendChild(element)

*Graf*  element    = oXml.createNode(1, "CodiceFiscaleDichiarante", cNameSpace)
*Graf*  element.Text = ""
*Graf*  nodoIntestazione.appendChild(element)

*Graf*  element    = oXml.createNode(1, "CodiceCarica", cNameSpace)
*Graf*  element.Text = ""
*Graf*  nodoIntestazione.appendChild(element)

nodoFornitura.appendChild(nodoIntestazione)
**** ELABORAZIONE COMUNICAZIONE

nodoComunicazione = oXml.createNode(1, "Comunicazione", cNameSpace)

oAttributo       = oXml.createAttribute("identificativo")
oAttributo.Value   = cAnno + alltrim(str(nTrimestre)) 
nodoComunicazione.setAttributeNode(oAttributo)


*Graf*  oAttributo       = oXml.createAttribute("xmlns")
*Graf*  oAttributo.Value   = "urn:www.agenziaentrate.gov.it:specificheTecniche:sco:ivp" 
*Graf*  nodoComunicazione.setAttributeNode(oAttributo)
**** DATI CONTABILI ************

nodoDatiContabili = oXml.createNode(1, "DatiContabili", cNameSpace)
**** MODULI ********************
****************************************************
**** VERIFICA ESISTENZA TABELLE PER GENERAZIONE ****
****************************************************
file1 = ""
file2 = ""
file3 = ""
If cTipoElaborazione = "M"
  Do Case
    Case ntrimestre = 1
      data1i = Date(Val(cAnno), 1, 1)
      data2i = Date(Val(cAnno), 2, 1)
      data3i = Date(Val(cAnno), 3, 1)
      valmesei = 1

    Case ntrimestre = 2
      data1i = Date(Val(cAnno), 4, 1)
      data2i = Date(Val(cAnno), 5, 1)
      data3i = Date(Val(cAnno), 6, 1)
      valmesei = 4

    Case ntrimestre = 3
      data1i = Date(Val(cAnno), 7, 1)
      data2i = Date(Val(cAnno), 8, 1)
      data3i = Date(Val(cAnno), 9, 1)
      valmesei = 7

    Case ntrimestre = 4
      data1i = Date(Val(cAnno), 10, 1)
      data2i = Date(Val(cAnno), 11, 1)
      data3i = Date(Val(cAnno), 12, 1)
      valmesei = 10

  Endcase

  data1f = Gomonth(data1i, 1) - 1
  data2f = Gomonth(data2i, 1) - 1
  data3f = Gomonth(data3i, 1) - 1

  Set Date ymd
  file1 = Strtran("LI" + cTipoElaborazione + "_" + Dtoc(data1i) + "_" + Dtoc(data1f), "-", "_")
  file2 = Strtran("LI" + cTipoElaborazione + "_" + Dtoc(data2i) + "_" + Dtoc(data2f), "-", "_")
  file3 = Strtran("LI" + cTipoElaborazione + "_" + Dtoc(data3i) + "_" + Dtoc(data3f), "-", "_")
  Set Date Dmy

  valmesef = valmesei + 2

Endif

If cTipoElaborazione = "T"

  Do Case
    Case ntrimestre = 1
      data1i = Date(Val(cAnno), 1, 1)

    Case ntrimestre = 2
      data1i = Date(Val(cAnno), 4, 1)

    Case ntrimestre = 3
      data1i = Date(Val(cAnno), 7, 1)

    Case ntrimestre = 4
      data1i = Date(Val(cAnno), 10, 1)

  Endcase

  data1f = Gomonth(data1i, 3) - 1

  Set Date ymd
  file1 = Strtran("LI" + cTipoElaborazione + "_" + Dtoc(data1i) + "_" + Dtoc(data1f), "-", "_")
  Set Date Dmy
  valmesei = 1
  valmesef = 1
Endif

numFile = 0

For i = valmesei  To valmesef

  numFile = numFile + 1
  cAlias = "file" + Alltrim(Str(numFile))
  cAlias = &cAlias
  
  Select (cAlias)
  nodoModulo  = oXml.createNode(1, "Modulo", cNameSpace)

  If cTipoElaborazione = "M"
    element   = oXml.createNode(1, "Mese", cNameSpace)
    element.Text = Alltrim(Str(i))
    nodoModulo.appendChild(element)
  Else
    element   = oXml.createNode(1, "Trimestre", cNameSpace)
    element.Text = Alltrim(Str(ntrimestre))
    nodoModulo.appendChild(element)
  Endif

  *element    = oXml.createNode(1,"Subfornitura",cNameSpace)
  *element.Text = Alltrim(Str(i)) &&TO DO
  *nodoModulo.appendChild(element)

  *element    = oXml.createNode(1,"EventiEccezionali",cNameSpace)
  *element.Text = Alltrim(Str(i)) &&TO DO
  *nodoModulo.appendChild(element)

  element   = oXml.createNode(1, "TotaleOperazioniAttive", cNameSpace)
  element.Text = Alltrim(Transform(totaleoperazioniattive, Replicate("9", 16) + ".99"))
  nodoModulo.appendChild(element)

  element   = oXml.createNode(1, "TotaleOperazioniPassive", cNameSpace)
  element.Text = Alltrim(Transform(TotaleOperazioniPassive, Replicate("9", 16) + ".99"))
  nodoModulo.appendChild(element)

  element   = oXml.createNode(1, "IvaEsigibile", cNameSpace)
  element.Text = Alltrim(Transform(IvaEsigibile, Replicate("9", 16) + ".99"))
  nodoModulo.appendChild(element)

  element   = oXml.createNode(1, "IvaDetratta", cNameSpace)
  element.Text = Alltrim(Transform(IvaDetratta, Replicate("9", 16) + ".99"))
  nodoModulo.appendChild(element)

  element   = oXml.createNode(1, "IvaDovuta", cNameSpace)
  element.Text = Alltrim(Transform(IvaDovuta, Replicate("9", 16) + ".99"))
  nodoModulo.appendChild(element)

  element   = oXml.createNode(1, "IvaCredito", cNameSpace)
  element.Text = Alltrim(Transform(IvaCredito, Replicate("9", 16) + ".99"))
  nodoModulo.appendChild(element)

  *element    = oXml.createNode(1,"DebitoPrecedente",cNameSpace)
  *element.Text = Alltrim(Str(i)) &&TO DO
  *nodoModulo.appendChild(element)

  element   = oXml.createNode(1, "CreditoPeriodoPrecedente", cNameSpace)
  element.Text = Alltrim(Transform(CreditoPeriodoPrecedente, Replicate("9", 16) + ".99"))
  nodoModulo.appendChild(element)

  element   = oXml.createNode(1, "CreditoAnnoPrecedente", cNameSpace)
  element.Text = Alltrim(Transform(CreditoAnnoPrecedente, Replicate("9", 16) + ".99"))
  nodoModulo.appendChild(element)

  *element    = oXml.createNode(1,"VersamentiAutoUE",cNameSpace)
  *element.Text = Alltrim(Str(i)) &&TO DO
  *nodoModulo.appendChild(element)

  *element    = oXml.createNode(1,"CreditiImposta",cNameSpace)
  *element.Text = Alltrim(Str(i)) &&TO DO
  *nodoModulo.appendChild(element)

  If cTipoElaborazione = "T"  And ntrimestre <> 4
    element   = oXml.createNode(1, "InteressiDovuti", cNameSpace)
    element.Text = Alltrim(Transform(InteressiDovuti, Replicate("9", 16) + ".99"))
    nodoModulo.appendChild(element)
  Endif

  If (cTipoElaborazione = "T"  And ntrimestre = 4) Or (cTipoElaborazione = "M" And i = 12) &&solo DICEMBRE
    element   = oXml.createNode(1, "Acconto", cNameSpace)
    element.Text = Alltrim(Transform(Acconto, Replicate("9", 16) + ".99"))
    nodoModulo.appendChild(element)
  Endif

  element   = oXml.createNode(1, "ImportoDaVersare", cNameSpace)
  element.Text = Alltrim(Transform(ImportoDaVersare, Replicate("9", 16) + ".99"))
  nodoModulo.appendChild(element)

  element   = oXml.createNode(1, "ImportoACredito", cNameSpace)
  element.Text = Alltrim(Transform(ImportoACredito, Replicate("9", 16) + ".99"))
  
  nodoModulo.appendChild(element)
  nodoDatiContabili.appendChild(nodoModulo)

Endfor
*** FINE MODULI **************

nodoComunicazione.appendChild(nodoFrontespizio)
nodoComunicazione.appendChild(nodoDatiContabili)

nodoFornitura.appendChild(nodoComunicazione)

**** FINE ELABORAZIONE FILE
cFilexmlTemp = Addbs(HomeDir) + "IVA_Telematico\" + Sys(2015) + ".xml"
Wait Clear

oXml.Save(cFilexmlTemp)
thisform.prettyXML(cFilexmlTemp)

cStringaXml = Filetostr(cFilexmlTemp) 

lerrore = .f.
validatexml = Thisform.validaxml(cFilexmlTemp, Addbs(HomeDir) + "IVA_Telematico\fornituraIvp_2017_v1.xsd")

select aziendeutente
cProg =  thisform.progressivoInvio(inviopalpha)
replace inviopalpha with cProg

cFilexml  = "IT" + Alltrim(aziendeutente.cf) + "_LI_" + cProg + ".xml"

If validatexml # "OK"
  Messagebox("Il seguente file non è corretto:" + Chr(13) + ;
      cFilexml + Chr(13) + ;
      "************************************************************" + Chr(13) + ;
      validatexml + Chr(13) + ;
      "************************************************************" + Chr(13) + ;
      "Operazione interrotta!", 64, "Avviso")
  lerrore = .T.
Endif


If !lerrore
  Thisform.SaveXml(cStringaXml, cFilexml, "Liquidazione IVA")
  Select aziendeutente
  If !Thisform.lTest
    Tableupdate(.T., .T.)
    delete file (cFilexmlTemp)
  endif
  
Endif












--
Hai ricevuto questo messaggio perché sei iscritto al gruppo "Foxpro Italia" di Google Gruppi.
Per annullare l'iscrizione a questo gruppo e non ricevere più le sue email, invia un'email a foxpro-itali...@googlegroups.com.
Per postare in questo gruppo, invia un'email a foxpro...@googlegroups.com.

Laldo Lorso

unread,
May 19, 2017, 1:05:30 PM5/19/17
to Foxpro Italia
Ciao Salvatore,
grazie alle tue istruzioni per le fatture PA di qualche tempo fa, questa è stata quasi una passeggiata ;-)
Tuttavia anche stavolta, come nel 2015, ho lo stesso problema in fase di validatexml!!
"Durante il caricamento dello schema "http://www.w3.org/TR/2002/REC-xmldsig-core-20020212/xmldsig-core-schema.xsd si è verificato il seguente errore: la DTD non è consentita".
In realtà solo da codice perchè l'Xml passa il controllo del software dell'AgenziaEntrate che ho scaricato da qui:
"http://www.agenziaentrate.gov.it/wps/content/nsilib/nsi/home/cosadevifare/comunicaredati/liquidazioni+periodiche+iva/swcontrollo+comunicazione+delle+liquidazioni+periodiche+iva"
ed anche quello con il link che consigliavi tu:

"http://www.xmlvalidation.com"

Prima di disturbarti ho provato la stessa soluzione che mi hai suggerito l'altra volta grazie al tuo Guru:
- ho copiato il file xmldsig-core-schema.xsd nella stessa cartella dello schema di validazione (
fornituraIvp_2017_iv.xsd)
- ed ho provato a modificare la path
maaaaa... purtroppo stavolta... niente da fare ;-(((
Se potessi darmi l'ennesima dritta te ne sarei grato...

Grazie mille e buona serata
Aldo

Salvatore Graf

unread,
May 22, 2017, 3:42:34 AM5/22/17
to foxpro...@googlegroups.com
Ciao Aldo,
C’è qualcosa che non mi quadra…
Per la validazione del file in questione, non è richiesto il file "xmldsig-core-schema.xsd 
Sono necessari invece tutti questi files:

- comunicazioneIvp_2017_v1.xsd (*)
- fornitura_v3.xsd
- fornituraIvp_2017_v1.xsd
- intestazioneIvp_2017_v1.xsd (*)
- typesDati_v3.xsd
- typesProvincie_v3.xsd

(*) in questi files ho modificato il path "originale":

<xs:import namespace="urn:www.agenziaentrate.gov.it:specificheTecniche:common" schemaLocation="../../common/fornitura_v3.xsd”/>

in 

<xs:import namespace="urn:www.agenziaentrate.gov.it:specificheTecniche:common" schemaLocation="fornitura_v3.xsd"/>


Prima di eseguire la validazione verifico se ho tutti i files necessari altrimenti li “genero” 


**********************************************************************
* Programma..: LIQUIDAZIONE.XSD1
* Autore.....: Salvatore GRAF
* Data.......: 07 April 2017, 18:41:15
* Info.......: Copyright © 2017, Italwork S.r.l.
*              All Rights Reserved.
* Compiler...: Visual FoxPro 09.00.0000.7423 for Windows
* Modifiche..: administrator, Creato 07 April 2017 / 18:41:15
********************************************************************** 
text to xsd1 textmerge noshow 
<?xml version="1.0" encoding="UTF-8"?>
<!-- edited with XMLSpy v2017 sp2 (x64) (http://www.altova.com) by rsiino (Sogei S.p.A.) -->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:cm="urn:www.agenziaentrate.gov.it:specificheTecniche:common" xmlns:sc="urn:www.agenziaentrate.gov.it:specificheTecniche:sco:common" xmlns:iv="urn:www.agenziaentrate.gov.it:specificheTecniche:sco:ivp" xmlns:ns1="www.agenziaentrate.gov.it:specificheTecniche:telent:v1" targetNamespace="urn:www.agenziaentrate.gov.it:specificheTecniche:sco:ivp" elementFormDefault="qualified" attributeFormDefault="unqualified" version="1.0">
<xs:annotation>
<xs:documentation xml:lang="it"><![CDATA[
Versione 1.0 - 13/02/16]]></xs:documentation>
</xs:annotation>
<xs:import namespace="urn:www.agenziaentrate.gov.it:specificheTecniche:common" schemaLocation="fornitura_v3.xsd"/>
<xs:element name="Comunicazione" type="iv:Comunicazione_IVP_Type"/>
<xs:complexType name="Comunicazione_IVP_Type">
<xs:complexContent>
<xs:extension base="cm:Documento_Type">
<xs:sequence>
<xs:element name="Frontespizio" type="iv:Frontespizio_IVP_Type"/>
<xs:element name="DatiContabili" type="iv:DatiContabili_IVP_Type"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Frontespizio_IVP_Type">
<xs:sequence>
<xs:element name="CodiceFiscale" type="cm:DatoCF_Type"/>
<xs:element name="AnnoImposta" type="cm:DatoDA_Type"/>
<xs:element name="PartitaIVA" type="cm:DatoPI_Type"/>
<xs:element name="PIVAControllante" type="cm:DatoPI_Type" minOccurs="0"/>
<xs:element name="UltimoMese" minOccurs="0">
<xs:simpleType>
<xs:restriction base="cm:DatoNP_Type">
<xs:enumeration value="1"/>
<xs:enumeration value="2"/>
<xs:enumeration value="3"/>
<xs:enumeration value="4"/>
<xs:enumeration value="5"/>
<xs:enumeration value="6"/>
<xs:enumeration value="7"/>
<xs:enumeration value="8"/>
<xs:enumeration value="9"/>
<xs:enumeration value="10"/>
<xs:enumeration value="11"/>
<xs:enumeration value="12"/>
<xs:enumeration value="13"/>
<xs:enumeration value="99"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="LiquidazioneGruppo" type="cm:DatoCB_Type" minOccurs="0"/>
<xs:element name="CFDichiarante" type="cm:DatoCF_Type" minOccurs="0"/>
<xs:element name="CodiceCaricaDichiarante" minOccurs="0">
<xs:simpleType>
<xs:restriction base="cm:DatoNP_Type">
<xs:enumeration value="1"/>
<xs:enumeration value="2"/>
<xs:enumeration value="3"/>
<xs:enumeration value="4"/>
<xs:enumeration value="5"/>
<xs:enumeration value="6"/>
<xs:enumeration value="7"/>
<xs:enumeration value="8"/>
<xs:enumeration value="9"/>
<xs:enumeration value="11"/>
<xs:enumeration value="12"/>
<xs:enumeration value="13"/>
<xs:enumeration value="14"/>
<xs:enumeration value="15"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="CodiceFiscaleSocieta" type="cm:DatoCN_Type" minOccurs="0"/>
<xs:element name="FirmaDichiarazione" type="cm:DatoCB_Type"/>
<xs:element name="CFIntermediario" type="cm:DatoCF_Type" minOccurs="0"/>
<xs:element name="ImpegnoPresentazione" minOccurs="0">
<xs:simpleType>
<xs:restriction base="cm:DatoN1_Type">
<xs:enumeration value="1"/>
<xs:enumeration value="2"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="DataImpegno" type="cm:DatoDT_Type" minOccurs="0"/>
<xs:element name="FirmaIntermediario" type="cm:DatoCB_Type" minOccurs="0"/>
<xs:element name="FlagConferma" type="cm:DatoCB_Type" minOccurs="0"/>
<xs:element name="IdentificativoProdSoftware" type="cm:DatoAN_Type" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="DatiContabili_IVP_Type">
<xs:sequence>
<xs:element name="Modulo" maxOccurs="5">
<xs:complexType>
<xs:sequence>
<xs:element name="Mese" minOccurs="0">
<xs:simpleType>
<xs:restriction base="cm:DatoNP_Type">
<xs:enumeration value="1"/>
<xs:enumeration value="2"/>
<xs:enumeration value="3"/>
<xs:enumeration value="4"/>
<xs:enumeration value="5"/>
<xs:enumeration value="6"/>
<xs:enumeration value="7"/>
<xs:enumeration value="8"/>
<xs:enumeration value="9"/>
<xs:enumeration value="10"/>
<xs:enumeration value="11"/>
<xs:enumeration value="12"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="Trimestre" minOccurs="0">
<xs:simpleType>
<xs:restriction base="cm:DatoN1_Type">
<xs:enumeration value="1"/>
<xs:enumeration value="2"/>
<xs:enumeration value="3"/>
<xs:enumeration value="4"/>
<xs:enumeration value="5"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="Subfornitura" type="cm:DatoCB_Type" minOccurs="0"/>
<xs:element name="EventiEccezionali" type="iv:Eventi_Ecc_Type" minOccurs="0"/>
<xs:element name="TotaleOperazioniAttive" type="iv:DatoVN_Type" minOccurs="0"/>
<xs:element name="TotaleOperazioniPassive" type="iv:DatoVN_Type" minOccurs="0"/>
<xs:element name="IvaEsigibile" type="iv:DatoVN_Type" minOccurs="0"/>
<xs:element name="IvaDetratta" type="iv:DatoVN_Type" minOccurs="0"/>
<xs:element name="IvaDovuta" type="cm:DatoVP_Type" minOccurs="0"/>
<xs:element name="IvaCredito" type="cm:DatoVP_Type" minOccurs="0"/>
<xs:element name="DebitoPrecedente" type="cm:DatoVP_Type" minOccurs="0"/>
<xs:element name="CreditoPeriodoPrecedente" type="cm:DatoVP_Type" minOccurs="0"/>
<xs:element name="CreditoAnnoPrecedente" type="iv:DatoVN_Type" minOccurs="0"/>
<xs:element name="VersamentiAutoUE" type="cm:DatoVP_Type" minOccurs="0"/>
<xs:element name="CreditiImposta" type="cm:DatoVP_Type" minOccurs="0"/>
<xs:element name="InteressiDovuti" type="cm:DatoVP_Type" minOccurs="0"/>
<xs:element name="Acconto" type="cm:DatoVP_Type" minOccurs="0"/>
<xs:element name="ImportoDaVersare" type="cm:DatoVP_Type" minOccurs="0"/>
<xs:element name="ImportoACredito" type="cm:DatoVP_Type" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
<xs:simpleType name="Eventi_Ecc_Type">
<xs:restriction base="xs:string">
<xs:enumeration value="1"/>
<xs:enumeration value="9"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="DatoVN_Type">
<xs:annotation>
<xs:documentation>Tipo semplice che identifica numeri positivi con 2 cifre decimali. La lunghezza massima prevista è di 16 caratteri, il separatore decimale previsto è la virgola.</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string">
<xs:maxLength value="16"/>
<xs:pattern value="[\-]{0,1}[0-9]+,[0-9]{2}"/>
</xs:restriction>
</xs:simpleType>
</xs:schema>
endtext

text to xsd2 textmerge noshow 
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="urn:www.agenziaentrate.gov.it:specificheTecniche:common" targetNamespace="urn:www.agenziaentrate.gov.it:specificheTecniche:common" elementFormDefault="qualified" attributeFormDefault="unqualified" version="3.0">
<xs:annotation>
<xs:documentation xml:lang="it"><![CDATA[
Versione 3.0 - 10/12/13
- modificato import typesDati_v3.xsd
- modificato targetNamespace
Versione 2.1 - 10/07/13
- rimossi gli elementi complessi Fornitura e Intestazione 

Versione 2.0 - 15/02/12
- modificato il tipo Intestazione_Type: introdotto il tipo complesso Dati_Intestazione_Type
- modificato il tipo Codice_Fornitura_Type
- modificato l'elemento TipoFornitore: associato il type DatoNP_Type
- modificato targetNamespace
]]></xs:documentation>
</xs:annotation>
<xs:include schemaLocation="typesDati_v3.xsd"/>
<xs:element name="Documento" type="Documento_Type" abstract="true"/>
<xs:complexType name="Documento_Type">
<xs:annotation>
<xs:documentation xml:lang="it">Documento trasmesso</xs:documentation>
</xs:annotation>
<xs:attribute name="identificativo" type="Identificativo_Type" use="required"/>
</xs:complexType>
<xs:simpleType name="Identificativo_Type">
<xs:restriction base="xs:string">
<xs:pattern value="[0-9]{4}[1-9]|[0-9]{3}[1-9][0-9]|[0-9]{2}[1-9][0-9]{2}|[0-9][1-9][0-9]{3}|[1-9][0-9]{4}"/>
</xs:restriction>
</xs:simpleType>
</xs:schema>
endtext

text to xsd3 textmerge noshow 
<?xml version="1.0" encoding="UTF-8"?>
<!-- edited with XMLSpy v2017 sp2 (x64) (http://www.altova.com) by rsiino (Sogei S.p.A.) -->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:cm="urn:www.agenziaentrate.gov.it:specificheTecniche:common" xmlns:sc="urn:www.agenziaentrate.gov.it:specificheTecniche:sco:common" xmlns:iv="urn:www.agenziaentrate.gov.it:specificheTecniche:sco:ivp" targetNamespace="urn:www.agenziaentrate.gov.it:specificheTecniche:sco:ivp" elementFormDefault="qualified" attributeFormDefault="unqualified" version="1.0">
<xs:annotation>
<xs:documentation xml:lang="it"><![CDATA[
Versione 1.0 - 13/02/16
]]></xs:documentation>
</xs:annotation>
<xs:include schemaLocation="intestazioneIvp_2017_v1.xsd"/>
<xs:include schemaLocation="comunicazioneIvp_2017_v1.xsd"/>
<xs:element name="Fornitura">
<xs:complexType>
<xs:sequence>
<xs:element name="Intestazione" type="iv:Intestazione_IVP_Type"/>
<xs:element name="Comunicazione" type="iv:Comunicazione_IVP_Type"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>

endtext

text to xsd4 textmerge noshow 
<?xml version="1.0" encoding="UTF-8"?>
<!-- edited with XMLSpy v2017 sp2 (x64) (http://www.altova.com) by rsiino (Sogei S.p.A.) -->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:cm="urn:www.agenziaentrate.gov.it:specificheTecniche:common" xmlns:sc="urn:www.agenziaentrate.gov.it:specificheTecniche:sco:common" xmlns:iv="urn:www.agenziaentrate.gov.it:specificheTecniche:sco:ivp" xmlns:ns1="www.agenziaentrate.gov.it:specificheTecniche:telent:v1" targetNamespace="urn:www.agenziaentrate.gov.it:specificheTecniche:sco:ivp" elementFormDefault="qualified" attributeFormDefault="unqualified" version="1.0">
<xs:annotation>
<xs:documentation xml:lang="it"><![CDATA[
Versione 1.0 - 13/02/16
]]></xs:documentation>
</xs:annotation>
<xs:import namespace="urn:www.agenziaentrate.gov.it:specificheTecniche:common" schemaLocation="fornitura_v3.xsd"/>
<xs:element name="Intestazione"/>
<xs:complexType name="Intestazione_IVP_Type">
<xs:sequence>
<xs:element name="CodiceFornitura">
<xs:simpleType>
<xs:restriction base="cm:DatoAN_Type">
<xs:enumeration value="IVP17"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="CodiceFiscaleDichiarante" type="cm:DatoCF_Type" minOccurs="0"/>
<xs:element name="CodiceCarica" minOccurs="0">
<xs:simpleType>
<xs:restriction base="cm:DatoNP_Type">
<xs:enumeration value="1"/>
<xs:enumeration value="2"/>
<xs:enumeration value="3"/>
<xs:enumeration value="4"/>
<xs:enumeration value="5"/>
<xs:enumeration value="6"/>
<xs:enumeration value="7"/>
<xs:enumeration value="8"/>
<xs:enumeration value="9"/>
<xs:enumeration value="11"/>
<xs:enumeration value="12"/>
<xs:enumeration value="13"/>
<xs:enumeration value="14"/>
<xs:enumeration value="15"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="IdSistema" type="cm:DatoCF_Type" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
</xs:schema>

endtext

text to xsd5 textmerge noshow 
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="urn:www.agenziaentrate.gov.it:specificheTecniche:common" targetNamespace="urn:www.agenziaentrate.gov.it:specificheTecniche:common" elementFormDefault="qualified" attributeFormDefault="unqualified" version="3.0">
<xs:annotation>
<xs:documentation xml:lang="it"><![CDATA[
Versione 3.0 - 10/12/13
- modificato targetNamespace
Versione 2.0.1 - 14/06/12
- modificati i tipi semplici DatoAN_Type, DatoEM_Type
Versione 2.0 - 15/02/12
- modificato targetNamespace
- introdotti i tipi semplici DatoGA_Type, DatoTL_Type, DatoCP_Type
]]></xs:documentation>
</xs:annotation>
<xs:include schemaLocation="typesProvincie_v3.xsd"/>
<xs:simpleType name="DatoAN_Type">
<xs:annotation>
<xs:documentation>Tipo semplice costituito da caratteri alfanumerici maiuscoli e dai caratteri: punto, virgola, apice, trattino, spazio, barra semplice, °, ^, ampersand, parentesi aperta e chiusa, doppie virgolette, barra rovesciata, la barra dritta, il più, le maiuscole accentate e la Ü. Tali caratteri non sono ammesi come primo carattere tranne: i numeri da 0 a 9, i caratteri maiuscoli da A a Z, il meno e le dopppie virgolette.</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string">
<xs:pattern value="([0-9A-Z\-]|&quot;){1}([ 0-9A-Z&amp;]|'|\-|\.|,|/|°|\^|\(|\)|À|È|É|Ì|Ò|Ù|Ü|&quot;|\\|\||\+)*"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="DatoNU_Type">
<xs:annotation>
<xs:documentation>Tipo semplice che identifica numeri naturali positivi e negativi con al massimo 16 cifre.</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string">
<xs:maxLength value="16"/>
<xs:pattern value="(\-[1-9]|[1-9])[0-9]*"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="DatoPC_Type">
<xs:annotation>
<xs:documentation>Tipo semplice che esprime una percentuale e dunque consente valori positivi non superiori a 100, con al massimo 2 cifre decimali. Il separatore decimale previsto è la virgola.</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string">
<xs:maxLength value="16"/>
<xs:pattern value="[0-9]?[0-9](,\d{1,3})?|100(,0{1,3})?"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="DatoQU_Type">
<xs:annotation>
<xs:documentation>Tipo semplice che identifica numeri positivi con al massimo 5 cifre decimali. La lunghezza massima prevista è di 16 caratteri, il separatore decimale previsto è la virgola.</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string">
<xs:maxLength value="16"/>
<xs:pattern value="[0-9]+(,[0-9]{1,5})?"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="DatoVP_Type">
<xs:annotation>
<xs:documentation>Tipo semplice che identifica numeri positivi con 2 cifre decimali. La lunghezza massima prevista è di 16 caratteri, il separatore decimale previsto è la virgola.</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string">
<xs:maxLength value="16"/>
<xs:pattern value="[0-9]+,[0-9]{2}"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="DatoN1_Type">
<xs:annotation>
<xs:documentation>Tipo semplice che identifica i numeri naturali da 1 a 9.</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string">
<xs:maxLength value="1"/>
<xs:pattern value="[1-9]"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="DatoNP_Type">
<xs:annotation>
<xs:documentation>Tipo semplice che identifica numeri naturali positivi con al massimo 16 cifre.</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string">
<xs:pattern value="[1-9]{1}[0-9]*"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="DatoPI_Type">
<xs:annotation>
<xs:documentation>Tipo semplice che identifica la partita IVA rispettandone i vincoli di struttura. </xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string">
<xs:length value="11"/>
<xs:pattern value="[0-7][0-9]{10}"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="DatoCN_Type">
<xs:annotation>
<xs:documentation>Tipo semplice che identifica un codice fiscale numerico rispettandone i vincoli di struttura.</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string">
<xs:length value="11"/>
<xs:pattern value="[0-9]{11}"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="DatoCF_Type">
<xs:annotation>
<xs:documentation>Tipo semplice che identifica un codice fiscale provvisorio o alfanumerico rispettandone i vincoli di struttura.</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string">
<xs:pattern value="[0-9]{11}|[A-Z]{6}[0-9LMNPQRSTUV]{2}[A-Z]{1}[0-9LMNPQRSTUV]{2}[A-Z]{1}[0-9LMNPQRSTUV]{3}[A-Z]{1}"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="DatoCB_Type">
<xs:annotation>
<xs:documentation>Tipo semplice che consente esclusivamente i valori 0 e 1.</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:byte">
<xs:pattern value="[01]"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="DatoCB12_Type">
<xs:annotation>
<xs:documentation>Tipo semplice che consente esclusivamente 12 caratteri con i valori 0 e 1.</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:byte">
<xs:pattern value="[10]{12}"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="DatoDT_Type">
<xs:annotation>
<xs:documentation>Tipo semplice che identifica una data nel formato ggmmaaaa. La data indicata non deve essere successiva alla data corrente.</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string">
<xs:length value="8"/>
<xs:pattern value="(((0[1-9]|[12][0-9]|3[01])(0[13578]|10|12)(\d{4}))|(([0][1-9]|[12][0-9]|30)(0[469]|11)(\d{4}))|((0[1-9]|1[0-9]|2[0-8])(02)(\d{4}))|((29)(02)([02468][048]00))|((29)(02)([13579][26]00))|((29)(02)([0-9][0-9][0][48]))|((29)(02)([0-9][0-9][2468][048]))|((29)(02)([0-9][0-9][13579][26])))"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="DatoDA_Type">
<xs:annotation>
<xs:documentation>Tipo semplice che identifica un anno nel formato aaaa. Sono ammessi anni dal 1800 al 2099.</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string">
<xs:length value="4"/>
<xs:pattern value="(18|19|20)[0-9]{2}"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="DatoDN_Type">
<xs:annotation>
<xs:documentation>Tipo semplice che identifica una data nel formato ggmmaaaa.</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string">
<xs:length value="8"/>
<xs:pattern value="(((0[1-9]|[12][0-9]|3[01])(0[13578]|10|12)(\d{4}))|(([0][1-9]|[12][0-9]|30)(0[469]|11)(\d{4}))|((0[1-9]|1[0-9]|2[0-8])(02)(\d{4}))|((29)(02)([02468][048]00))|((29)(02)([13579][26]00))|((29)(02)([0-9][0-9][0][48]))|((29)(02)([0-9][0-9][2468][048]))|((29)(02)([0-9][0-9][13579][26])))"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="DatoD6_Type">
<xs:annotation>
<xs:documentation>Tipo semplice che identifica una data nel formato mmaaaa.</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string">
<xs:length value="6"/>
<xs:pattern value="((0[0-9])|(1[0-2]))((19|20)[0-9][0-9])"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="DatoEM_Type">
<xs:annotation>
<xs:documentation>Tipo semplice che identifica un elemento di tipo email</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string">
<xs:pattern value="[a-zA-Z0-9._%\-'&quot;?^~=]+@[a-zA-Z0-9.\-]+\.[a-zA-Z]{2,4}"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="DatoGA_Type">
<xs:annotation>
<xs:documentation>Tipo semplice che identifica il numero di giorni in un anno e va da 1 a 365</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string">
<xs:minLength value="1"/>
<xs:maxLength value="3"/>
<xs:pattern value="[1-9]|([1-9][0-9])|([12][0-9][0-9])|(3[0-5][0-9])|(36[0-5])"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="DatoTL_Type">
<xs:annotation>
<xs:documentation>Tipo semplice che identifica un elemento di tipo telefono</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string">
<xs:pattern value="[0-9]*"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="DatoCP_Type">
<xs:annotation>
<xs:documentation>Tipo semplice che identifica un elemento di tipo cap</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string">
<xs:pattern value="[0-9]{5}"/>
</xs:restriction>
</xs:simpleType>
</xs:schema>

endtext

text to xsd6 textmerge noshow 
<?xml version="1.0" encoding="UTF-8"?>
<!-- edited with XMLSpy v2012 (http://www.altova.com) by rdobrowolny (Sogei S.p.A.) -->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="urn:www.agenziaentrate.gov.it:specificheTecniche:common" targetNamespace="urn:www.agenziaentrate.gov.it:specificheTecniche:common" elementFormDefault="qualified" attributeFormDefault="unqualified" version="3.0">
<xs:annotation>
<xs:documentation xml:lang="it"><![CDATA[
Versione 3.0 - 10/12/13
- modificato targetNamespace
Versione 2.0 - 15/02/12
- modificato targetNamespace
]]></xs:documentation>
</xs:annotation>
<xs:simpleType name="PR_Type">
<xs:annotation>
<xs:documentation>Tipo semplice costituito dalle sigle delle provincie italiane in vigore.</xs:documentation>
</xs:annotation>
<xs:union memberTypes="ProvincieItaliane"/>
</xs:simpleType>
<xs:simpleType name="PN_Type">
<xs:annotation>
<xs:documentation>Tipo semplice costituito dalle sigle delle provincie italiane in vigore,  dalle sigle delle provincie croate di Fiume, Pola e Zara e dalla sigla “EE†che indica un paese estero.</xs:documentation>
</xs:annotation>
<xs:union memberTypes="ProvincieItaliane ProvincieCroate Estero"/>
</xs:simpleType>
<xs:simpleType name="PE_Type">
<xs:annotation>
<xs:documentation>Tipo semplice costituito dalle sigle delle provincie italiane in vigore e dalla sigla “EE†che indica un paese estero.</xs:documentation>
</xs:annotation>
<xs:union memberTypes="ProvincieItaliane Estero"/>
</xs:simpleType>
<xs:simpleType name="ProvincieItaliane">
<xs:annotation>
<xs:documentation>
Elenco delle provincie italiane in vigore, valori ammessi:
Agrigento AG
Alessandria AL
Ancona AN
Aosta   AO
Ascoli Piceno AP
L'Aquila AQ
Arezzo AR
Asti AT
Avellino AV
Bari BA
Bergamo BG
Biella BI
Belluno BL
Benevento BN
Bologna BO
Brindisi BR
Brescia BS
Barletta-Andria-Trani BT
Bolzano BZ
Cagliari CA
Campobasso CB
Caserta CE
Chieti CH
Carbonia-Iglessias CI
Caltanissetta CL
Cuneo CN
Como CO
Cremona CR
Cosenza CS
Catania CT
Catanzaro CZ
Enna EN
Forlì-Cesena FC
Ferrara FE
Foggia FG
Firenze FI
Fermo FM
Frosinone FR
Genova GE
Gorizia GO
Grosseto GR
Imperia IM
Isernia IS
Crotone KR
Lecco LC
Lecce LE
Livorno LI
Lodi LO
Latina LT
Lucca LU
Monza e Brianza MB
Macerata MC
Messina ME
Milano MI
Mantova MN
Modena MO
Massa e Carrara MS
Matera MT
Napoli NA
Novara NO
Nuoro NU
Ogliastra OG
Oristano OR
Olbia-Tempio OT
Palermo PA
Piacenza PC
Padova PD
Pescara PE
Perugia PG
Pisa PI
Pordenone PN
Prato PO
Parma PR
Pistoia PT
Pesaro e Urbino PU
Pavia PV
Potenza PZ
Ravenna RA
Reggio Calabria RC
Reggio Emilia RE
Ragusa RG
Rieti RI
Roma RM
Rimini RN
Rovigo RO
Salerno SA
iena SI
Sondrio SO
La Spezia SP
Siracusa SR
Sassari SS
Savona SV
Taranto TA
Teramo TE
Trento TN
Torino TO
Trapani TP
Terni TR
Trieste TS
Treviso TV
Udine UD
Varese VA
Verbano-Cusio-Ossola VB
Vercelli VC
Venezia VE
Vicenza VI
Verona VR
Medio Campidano VS
Viterbo VT
Vibo Valentia VV
</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string">
<xs:enumeration value="AG"/>
<xs:enumeration value="AL"/>
<xs:enumeration value="AN"/>
<xs:enumeration value="AO"/>
<xs:enumeration value="AP"/>
<xs:enumeration value="AQ"/>
<xs:enumeration value="AR"/>
<xs:enumeration value="AT"/>
<xs:enumeration value="AV"/>
<xs:enumeration value="BA"/>
<xs:enumeration value="BG"/>
<xs:enumeration value="BI"/>
<xs:enumeration value="BL"/>
<xs:enumeration value="BN"/>
<xs:enumeration value="BO"/>
<xs:enumeration value="BR"/>
<xs:enumeration value="BS"/>
<xs:enumeration value="BT"/>
<xs:enumeration value="BZ"/>
<xs:enumeration value="CA"/>
<xs:enumeration value="CB"/>
<xs:enumeration value="CE"/>
<xs:enumeration value="CH"/>
<xs:enumeration value="CI"/>
<xs:enumeration value="CL"/>
<xs:enumeration value="CN"/>
<xs:enumeration value="CO"/>
<xs:enumeration value="CR"/>
<xs:enumeration value="CS"/>
<xs:enumeration value="CT"/>
<xs:enumeration value="CZ"/>
<xs:enumeration value="EN"/>
<xs:enumeration value="FC"/>
<xs:enumeration value="FE"/>
<xs:enumeration value="FG"/>
<xs:enumeration value="FI"/>
<xs:enumeration value="FM"/>
<xs:enumeration value="FR"/>
<xs:enumeration value="GE"/>
<xs:enumeration value="GO"/>
<xs:enumeration value="GR"/>
<xs:enumeration value="IM"/>
<xs:enumeration value="IS"/>
<xs:enumeration value="KR"/>
<xs:enumeration value="LC"/>
<xs:enumeration value="LE"/>
<xs:enumeration value="LI"/>
<xs:enumeration value="LO"/>
<xs:enumeration value="LT"/>
<xs:enumeration value="LU"/>
<xs:enumeration value="MB"/>
<xs:enumeration value="MC"/>
<xs:enumeration value="ME"/>
<xs:enumeration value="MI"/>
<xs:enumeration value="MN"/>
<xs:enumeration value="MO"/>
<xs:enumeration value="MS"/>
<xs:enumeration value="MT"/>
<xs:enumeration value="NA"/>
<xs:enumeration value="NO"/>
<xs:enumeration value="NU"/>
<xs:enumeration value="OG"/>
<xs:enumeration value="OR"/>
<xs:enumeration value="OT"/>
<xs:enumeration value="PA"/>
<xs:enumeration value="PC"/>
<xs:enumeration value="PD"/>
<xs:enumeration value="PE"/>
<xs:enumeration value="PG"/>
<xs:enumeration value="PI"/>
<xs:enumeration value="PN"/>
<xs:enumeration value="PO"/>
<xs:enumeration value="PR"/>
<xs:enumeration value="PT"/>
<xs:enumeration value="PU"/>
<xs:enumeration value="PV"/>
<xs:enumeration value="PZ"/>
<xs:enumeration value="RA"/>
<xs:enumeration value="RC"/>
<xs:enumeration value="RE"/>
<xs:enumeration value="RG"/>
<xs:enumeration value="RI"/>
<xs:enumeration value="RM"/>
<xs:enumeration value="RN"/>
<xs:enumeration value="RO"/>
<xs:enumeration value="SA"/>
<xs:enumeration value="SI"/>
<xs:enumeration value="SO"/>
<xs:enumeration value="SP"/>
<xs:enumeration value="SR"/>
<xs:enumeration value="SS"/>
<xs:enumeration value="SV"/>
<xs:enumeration value="TA"/>
<xs:enumeration value="TE"/>
<xs:enumeration value="TN"/>
<xs:enumeration value="TO"/>
<xs:enumeration value="TP"/>
<xs:enumeration value="TR"/>
<xs:enumeration value="TS"/>
<xs:enumeration value="TV"/>
<xs:enumeration value="UD"/>
<xs:enumeration value="VA"/>
<xs:enumeration value="VB"/>
<xs:enumeration value="VC"/>
<xs:enumeration value="VE"/>
<xs:enumeration value="VI"/>
<xs:enumeration value="VR"/>
<xs:enumeration value="VS"/>
<xs:enumeration value="VT"/>
<xs:enumeration value="VV"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="ProvincieCroate">
<xs:restriction base="xs:string">
<xs:enumeration value="FU">
<xs:annotation>
<xs:documentation>Fiume</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="PL">
<xs:annotation>
<xs:documentation>Pola</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="ZA">
<xs:annotation>
<xs:documentation>Zara</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="Estero">
<xs:restriction base="xs:string">
<xs:enumeration value="EE"/>
</xs:restriction>
</xs:simpleType>
</xs:schema>

endtext

=strtofile(xsd1,addbs(homedir)+"IVA_telematico\comunicazioneIvp_2017_v1.xsd",0)
=strtofile(xsd2,addbs(homedir)+"IVA_telematico\fornitura_v3.xsd",0)
=strtofile(xsd3,addbs(homedir)+"IVA_telematico\fornituraIvp_2017_v1.xsd",0)
=strtofile(xsd4,addbs(homedir)+"IVA_telematico\intestazioneIvp_2017_v1.xsd",0)
=strtofile(xsd5,addbs(homedir)+"IVA_telematico\typesDati_v3.xsd",0)
=strtofile(xsd6,addbs(homedir)+"IVA_telematico\typesProvincie_v3.xsd",0)



--
Hai ricevuto questo messaggio perché sei iscritto al gruppo "Foxpro Italia" di Google Gruppi.
Per annullare l'iscrizione a questo gruppo e non ricevere più le sue email, invia un'email a foxpro-itali...@googlegroups.com.
Per postare in questo gruppo, invia un'email a foxpro...@googlegroups.com.

Laldo Lorso

unread,
May 22, 2017, 5:56:03 AM5/22/17
to Foxpro Italia
Buongiorno e grazie!!
Ho confrontato la tua struttura dei files xsd che vai a crearti con quelli originali e aggiornati, scaricati dall'Agenzia delle Entrate.
Ti allego il file fornituraIvp_2017_v1.xsd nel quale ho notato un paio di differenze rispetto al tuo, in quanto ha in più queste due righe:

<xs:import namespace="http://www.w3.org/2000/09/xmldsig#" schemaLocation="http://www.w3.org/TR/2002/REC-xmldsig-core-20020212/xmldsig-core-schema.xsd" />

e
<xs:element ref="ds:Signature" minOccurs="0" />

Eliminandole infatti, la validazione va meravigliosamente a buon fine!!!
Quindi io potrei anche toglierle, ma siccome, come ti dicevo a suo tempo, non è che ne capisca tantissimo di xml, e parto sempre dal presupposto che se ci sono delle righe non "remmate", a qualcosa servono ;-) e ben sapendo che dal sito dell'Agenzia apportano quasi quotidianamente aggiornamenti ai propri files, ti chiedo se puoi cortesemente verificare l'importanza o meno di queste differenze di codice, grazie.

Buon lavoro a tutti
Aldo

fornituraIvp_2017_v1.xsd

Salvatore Graf

unread,
May 22, 2017, 6:43:32 AM5/22/17
to foxpro...@googlegroups.com
Ma porca Putt….. ! 
Hai ragione !

Rettifico il codice e ti faccio sapere!

Grazie  !

Salvatore




--
Hai ricevuto questo messaggio perché sei iscritto al gruppo "Foxpro Italia" di Google Gruppi.
Per annullare l'iscrizione a questo gruppo e non ricevere più le sue email, invia un'email a foxpro-itali...@googlegroups.com.
Per postare in questo gruppo, invia un'email a foxpro...@googlegroups.com.

Per altre opzioni visita https://groups.google.com/d/optout.
<fornituraIvp_2017_v1.xsd>

Salvatore Graf

unread,
May 22, 2017, 7:07:55 AM5/22/17
to foxpro...@googlegroups.com
Tutto OK !
Sistemato e la validazione funziona perfettamente!

Ho rettificato il metodo che genera i files .XSD 
In grassetto le parti modificate/aggiunte !

Ciao e Grazie 

Salvatore

Nell’ Init() del form 

if !file(Addbs(HomeDir) + "IVA_Telematico\comunicazioneIvp_2017_v1.xsd") or;
  !file(Addbs(HomeDir) + "IVA_Telematico\fornitura_v3.xsd") or;
  !file(Addbs(HomeDir) + "IVA_Telematico\fornituraIvp_2017_v1.xsd") or ;
  !file(Addbs(HomeDir) + "IVA_Telematico\intestazioneIvp_2017_v1.xsd") or ;
  !file(Addbs(HomeDir) + "IVA_Telematico\typesDati_v3.xsd") or ;
  !file(Addbs(HomeDir) + "IVA_Telematico\typesProvincie_v3.xsd") or ;
  !file(Addbs(HomeDir) + "IVA_Telematico\xmldsig-core-schema.xsd")
  
thisform.generaXSD()
endif 


Metodo generaXSD()
********************************************************************** 
* Programma..: LIQUIDAZIONE.XSD1
* Autore.....: Salvatore GRAF
* Data.......: 07 April 2017, 18:41:15
* Info.......: Copyright © 2017, Italwork S.r.l.
*              All Rights Reserved.
* Compiler...: Visual FoxPro 09.00.0000.7423 for Windows
* Modifiche..: administrator, Creato 07 April 2017 / 18:41:15
* Modifiche..: administrator, il 22 May 2017 / 12:58:53 ************** 
********************************************************************** 

***** comunicazioneIvp_2017_v1.xsd
*** fornitura_v3.xsd 
*** fornituraIvp_2017_v1.xsd

text to xsd3 textmerge noshow 
<?xml version="1.0" encoding="UTF-8"?>
<!-- edited with XMLSpy v2017 sp2 (x64) (http://www.altova.com) by rsiino 
(Sogei S.p.A.) -->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:cm="urn:www.agenziaentrate.gov.it:specificheTecniche:common"
xmlns:sc="urn:www.agenziaentrate.gov.it:specificheTecniche:sco:common"
xmlns:iv="urn:www.agenziaentrate.gov.it:specificheTecniche:sco:ivp"
targetNamespace="urn:www.agenziaentrate.gov.it:specificheTecniche:sco:ivp"
elementFormDefault="qualified" attributeFormDefault="unqualified"
version="1.0">
<xs:import namespace="http://www.w3.org/2000/09/xmldsig#" schemaLocation="xmldsig-core-schema.xsd" />
<xs:annotation>
<xs:documentation xml:lang="it"><![CDATA[
Versione 1.0 - 13/02/16
]]></xs:documentation>
</xs:annotation>
<xs:include schemaLocation="intestazioneIvp_2017_v1.xsd" />
<xs:include schemaLocation="comunicazioneIvp_2017_v1.xsd" />
<xs:element name="Fornitura">
<xs:complexType>
<xs:sequence>
<xs:element name="Intestazione" type="iv:Intestazione_IVP_Type" />
<xs:element name="Comunicazione" type="iv:Comunicazione_IVP_Type" />
<xs:element ref="ds:Signature" minOccurs="0" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
endtext


*** intestazioneIvp_2017_v1.xsd
*** typesDati_v3.xsd 
*** typesProvincie_v3.xsd 
text to xsd7 textmerge noshow 
<?xml version="1.0" encoding="UTF-8"?>

<!-- Schema for XML Signatures
    $Revision: 1.1 $ on $Date: 2002/02/08 20:32:26 $ by $Author: reagle $

    Copyright 2001 The Internet Society and W3C (Massachusetts Institute
    of Technology, Institut National de Recherche en Informatique et en
    Automatique, Keio University). All Rights Reserved.

    This document is governed by the W3C Software License [1] as described
    in the FAQ [2].

-->


        xmlns:ds="http://www.w3.org/2000/09/xmldsig#"
        targetNamespace="http://www.w3.org/2000/09/xmldsig#"
        version="0.1" elementFormDefault="qualified"> 

<!-- Basic Types Defined for Signatures -->

<simpleType name="CryptoBinary">
  <restriction base="base64Binary">
  </restriction>
</simpleType>

<!-- Start Signature -->

<element name="Signature" type="ds:SignatureType"/>
<complexType name="SignatureType">
  <sequence> 
    <element ref="ds:SignedInfo"/> 
    <element ref="ds:SignatureValue"/> 
    <element ref="ds:KeyInfo" minOccurs="0"/> 
    <element ref="ds:Object" minOccurs="0" maxOccurs="unbounded"/> 
  </sequence>  
  <attribute name="Id" type="ID" use="optional"/>
</complexType>

  <element name="SignatureValue" type="ds:SignatureValueType"/> 
  <complexType name="SignatureValueType">
    <simpleContent>
      <extension base="base64Binary">
        <attribute name="Id" type="ID" use="optional"/>
      </extension>
    </simpleContent>
  </complexType>

<!-- Start SignedInfo -->

<element name="SignedInfo" type="ds:SignedInfoType"/>
<complexType name="SignedInfoType">
  <sequence> 
    <element ref="ds:CanonicalizationMethod"/> 
    <element ref="ds:SignatureMethod"/> 
    <element ref="ds:Reference" maxOccurs="unbounded"/> 
  </sequence>  
  <attribute name="Id" type="ID" use="optional"/> 
</complexType>

  <element name="CanonicalizationMethod" type="ds:CanonicalizationMethodType"/> 
  <complexType name="CanonicalizationMethodType" mixed="true">
    <sequence>
      <any namespace="##any" minOccurs="0" maxOccurs="unbounded"/>
      <!-- (0,unbounded) elements from (1,1) namespace -->
    </sequence>
    <attribute name="Algorithm" type="anyURI" use="required"/> 
  </complexType>

  <element name="SignatureMethod" type="ds:SignatureMethodType"/>
  <complexType name="SignatureMethodType" mixed="true">
    <sequence>
      <element name="HMACOutputLength" minOccurs="0" type="ds:HMACOutputLengthType"/>
      <any namespace="##other" minOccurs="0" maxOccurs="unbounded"/>
      <!-- (0,unbounded) elements from (1,1) external namespace -->
    </sequence>
    <attribute name="Algorithm" type="anyURI" use="required"/> 
  </complexType>

<!-- Start Reference -->

<element name="Reference" type="ds:ReferenceType"/>
<complexType name="ReferenceType">
  <sequence> 
    <element ref="ds:Transforms" minOccurs="0"/> 
    <element ref="ds:DigestMethod"/> 
    <element ref="ds:DigestValue"/> 
  </sequence>
  <attribute name="Id" type="ID" use="optional"/> 
  <attribute name="URI" type="anyURI" use="optional"/> 
  <attribute name="Type" type="anyURI" use="optional"/> 
</complexType>

  <element name="Transforms" type="ds:TransformsType"/>
  <complexType name="TransformsType">
    <sequence>
      <element ref="ds:Transform" maxOccurs="unbounded"/>  
    </sequence>
  </complexType>

  <element name="Transform" type="ds:TransformType"/>
  <complexType name="TransformType" mixed="true">
    <choice minOccurs="0" maxOccurs="unbounded"> 
      <any namespace="##other" processContents="lax"/>
      <!-- (1,1) elements from (0,unbounded) namespaces -->
      <element name="XPath" type="string"/> 
    </choice>
    <attribute name="Algorithm" type="anyURI" use="required"/> 
  </complexType>

<!-- End Reference -->

<element name="DigestMethod" type="ds:DigestMethodType"/>
<complexType name="DigestMethodType" mixed="true"> 
  <sequence>
    <any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
  </sequence>    
  <attribute name="Algorithm" type="anyURI" use="required"/> 
</complexType>

<element name="DigestValue" type="ds:DigestValueType"/>
<simpleType name="DigestValueType">
  <restriction base="base64Binary"/>
</simpleType>

<!-- End SignedInfo -->

<!-- Start KeyInfo -->

<element name="KeyInfo" type="ds:KeyInfoType"/> 
<complexType name="KeyInfoType" mixed="true">
  <choice maxOccurs="unbounded">     
    <element ref="ds:KeyName"/> 
    <element ref="ds:KeyValue"/> 
    <element ref="ds:RetrievalMethod"/> 
    <element ref="ds:X509Data"/> 
    <element ref="ds:PGPData"/> 
    <element ref="ds:SPKIData"/>
    <element ref="ds:MgmtData"/>
    <any processContents="lax" namespace="##other"/>
    <!-- (1,1) elements from (0,unbounded) namespaces -->
  </choice>
  <attribute name="Id" type="ID" use="optional"/> 
</complexType>

  <element name="KeyName" type="string"/>
  <element name="MgmtData" type="string"/>

  <element name="KeyValue" type="ds:KeyValueType"/> 
  <complexType name="KeyValueType" mixed="true">
   <choice>
     <element ref="ds:DSAKeyValue"/>
     <element ref="ds:RSAKeyValue"/>
     <any namespace="##other" processContents="lax"/>
   </choice>
  </complexType>

  <element name="RetrievalMethod" type="ds:RetrievalMethodType"/> 
  <complexType name="RetrievalMethodType">
    <sequence>
      <element ref="ds:Transforms" minOccurs="0"/> 
    </sequence>  
    <attribute name="URI" type="anyURI"/>
    <attribute name="Type" type="anyURI" use="optional"/>
  </complexType>

<!-- Start X509Data -->

<element name="X509Data" type="ds:X509DataType"/> 
<complexType name="X509DataType">
  <sequence maxOccurs="unbounded">
    <choice>
      <element name="X509IssuerSerial" type="ds:X509IssuerSerialType"/>
      <element name="X509SKI" type="base64Binary"/>
      <element name="X509SubjectName" type="string"/>
      <element name="X509Certificate" type="base64Binary"/>
      <element name="X509CRL" type="base64Binary"/>
      <any namespace="##other" processContents="lax"/>
    </choice>
  </sequence>
</complexType>

<complexType name="X509IssuerSerialType"> 
  <sequence> 
    <element name="X509IssuerName" type="string"/> 
    <element name="X509SerialNumber" type="integer"/> 
  </sequence>
</complexType>

<!-- End X509Data -->

<!-- Begin PGPData -->

<element name="PGPData" type="ds:PGPDataType"/> 
<complexType name="PGPDataType"> 
  <choice>
    <sequence>
      <element name="PGPKeyID" type="base64Binary"/> 
      <element name="PGPKeyPacket" type="base64Binary" minOccurs="0"/> 
      <any namespace="##other" processContents="lax" minOccurs="0"
       maxOccurs="unbounded"/>
    </sequence>
    <sequence>
      <element name="PGPKeyPacket" type="base64Binary"/> 
      <any namespace="##other" processContents="lax" minOccurs="0"
       maxOccurs="unbounded"/>
    </sequence>
  </choice>
</complexType>

<!-- End PGPData -->

<!-- Begin SPKIData -->

<element name="SPKIData" type="ds:SPKIDataType"/> 
<complexType name="SPKIDataType">
  <sequence maxOccurs="unbounded">
    <element name="SPKISexp" type="base64Binary"/>
    <any namespace="##other" processContents="lax" minOccurs="0"/>
  </sequence>
</complexType> 

<!-- End SPKIData -->

<!-- End KeyInfo -->

<!-- Start Object (Manifest, SignatureProperty) -->

<element name="Object" type="ds:ObjectType"/> 
<complexType name="ObjectType" mixed="true">
  <sequence minOccurs="0" maxOccurs="unbounded">
    <any namespace="##any" processContents="lax"/>
  </sequence>
  <attribute name="Id" type="ID" use="optional"/> 
  <attribute name="MimeType" type="string" use="optional"/> <!-- add a grep facet -->
  <attribute name="Encoding" type="anyURI" use="optional"/> 
</complexType>

<element name="Manifest" type="ds:ManifestType"/> 
<complexType name="ManifestType">
  <sequence>
    <element ref="ds:Reference" maxOccurs="unbounded"/> 
  </sequence>
  <attribute name="Id" type="ID" use="optional"/> 
</complexType>

<element name="SignatureProperties" type="ds:SignaturePropertiesType"/> 
<complexType name="SignaturePropertiesType">
  <sequence>
    <element ref="ds:SignatureProperty" maxOccurs="unbounded"/> 
  </sequence>
  <attribute name="Id" type="ID" use="optional"/> 
</complexType>

   <element name="SignatureProperty" type="ds:SignaturePropertyType"/> 
   <complexType name="SignaturePropertyType" mixed="true">
     <choice maxOccurs="unbounded">
       <any namespace="##other" processContents="lax"/>
       <!-- (1,1) elements from (1,unbounded) namespaces -->
     </choice>
     <attribute name="Target" type="anyURI" use="required"/> 
     <attribute name="Id" type="ID" use="optional"/> 
   </complexType>

<!-- End Object (Manifest, SignatureProperty) -->

<!-- Start Algorithm Parameters -->

<simpleType name="HMACOutputLengthType">
  <restriction base="integer"/>
</simpleType>

<!-- Start KeyValue Element-types -->

<element name="DSAKeyValue" type="ds:DSAKeyValueType"/>
<complexType name="DSAKeyValueType">
  <sequence>
    <sequence minOccurs="0">
      <element name="P" type="ds:CryptoBinary"/>
      <element name="Q" type="ds:CryptoBinary"/>
    </sequence>
    <element name="G" type="ds:CryptoBinary" minOccurs="0"/>
    <element name="Y" type="ds:CryptoBinary"/>
    <element name="J" type="ds:CryptoBinary" minOccurs="0"/>
    <sequence minOccurs="0">
      <element name="Seed" type="ds:CryptoBinary"/>
      <element name="PgenCounter" type="ds:CryptoBinary"/>
    </sequence>
  </sequence>
</complexType>

<element name="RSAKeyValue" type="ds:RSAKeyValueType"/>
<complexType name="RSAKeyValueType">
  <sequence>
    <element name="Modulus" type="ds:CryptoBinary"/> 
    <element name="Exponent" type="ds:CryptoBinary"/> 
  </sequence>
</complexType> 

<!-- End KeyValue Element-types -->

<!-- End Signature -->

</schema>
endtext

=strtofile(xsd1,addbs(homedir)+"IVA_telematico\comunicazioneIvp_2017_v1.xsd",0)
=strtofile(xsd2,addbs(homedir)+"IVA_telematico\fornitura_v3.xsd",0)
=strtofile(xsd3,addbs(homedir)+"IVA_telematico\fornituraIvp_2017_v1.xsd",0)
=strtofile(xsd4,addbs(homedir)+"IVA_telematico\intestazioneIvp_2017_v1.xsd",0)
=strtofile(xsd5,addbs(homedir)+"IVA_telematico\typesDati_v3.xsd",0)
=strtofile(xsd6,addbs(homedir)+"IVA_telematico\typesProvincie_v3.xsd",0)
=strtofile(xsd7,addbs(homedir)+"IVA_telematico\xmldsig-core-schema.xsd",0)





Il giorno 22 mag 2017, alle ore 11:56, Laldo Lorso <al...@interplanet.it> ha scritto:

Laldo Lorso

unread,
May 23, 2017, 9:09:41 AM5/23/17
to Foxpro Italia
Ottimo Salvatore,
Tutto perfettissimo come sempre!!

Grazie&BuonLavoroAtutti
Aldo

softel...@gmail.com

unread,
May 29, 2017, 11:15:14 AM5/29/17
to Foxpro Italia
Ciao Salvatore
Puo' funzionare vfp in cloud?
Grazie Luigi


Il giorno mercoledì 19 aprile 2017 12:55:00 UTC+2, softel...@gmail.com ha scritto:

Gianni

unread,
May 29, 2017, 11:27:06 AM5/29/17
to foxpro...@googlegroups.com
Ciao Salvatore,

quando cambia l'argomento si crea un post nuovo, altrimenti diventa un'impresa trovare i contenuti.

E poi Salvatore non è l'unico a leggere e scrivere in questo gruppo. :)

Gianni

Gianni

unread,
May 29, 2017, 9:58:06 PM5/29/17
to foxpro...@googlegroups.com
Ehm, volevo dire ...

Ciao Luigi

Denis

unread,
May 30, 2017, 4:00:26 AM5/30/17
to Foxpro Italia
Buongiorno,
avrei bisogno gentilmente di sapere una cosa.....

Se per esempio invio un file IT00123456789_LI_00110.xml, poi mi accordo di aver sbagliato qualcosa nel file e lo voglio riinviare,
dovrò creare un altro file con un progressivo diverso? Per esempio IT00123456789_LI_00111.xml?

Utilizza la stessa logica dell invio fattura PA?

Oppure dovrò riinviare il file con lo stesso identico nome IT00123456789_LI_00110.xml?


Grazie mille.

Salvatore Graf

unread,
May 30, 2017, 7:25:49 AM5/30/17
to foxpro...@googlegroups.com
Nelle specifiche non ho letto nulla a riguardo di eventuali rettifiche… ad ogni modo meglio cambiare il progressivo…

Ciao
Salvatore



--
Hai ricevuto questo messaggio perché sei iscritto al gruppo "Foxpro Italia" di Google Gruppi.
Per annullare l'iscrizione a questo gruppo e non ricevere più le sue email, invia un'email a foxpro-itali...@googlegroups.com.
Per postare in questo gruppo, invia un'email a foxpro...@googlegroups.com.

softel...@gmail.com

unread,
May 30, 2017, 10:30:21 AM5/30/17
to Foxpro Italia
ciao
scusami ma non lo sapevo

Denis

unread,
Apr 18, 2018, 9:15:48 AM4/18/18
to Foxpro Italia
Ciao Salvatore,
per caso hai già analizzato le differenze del file della dichiarazione iva che riguarda il 2018?
A parte il codice IPV17 che diventa IPV18 per l anno 2018 hai notato altro? A me sembra di no...
Grazie mille.

Denis.


Salvatore Graf

unread,
Apr 19, 2018, 4:37:02 AM4/19/18
to foxpro...@googlegroups.com
Oltre al tag <CodiceFornitura>IVP18</CodiceFornitura> è obbligatorio il tag <numeroModulo> prima del tag <Mese>
Il valore da attribuire è un numero da 1 a 5


Le uniche informazioni che al momento ho trovato sono:

Modulo

Per ciascuna liquidazione periodica deve essere compilato un distinto modulo della presente Comunicazione, compilando il campo “Mod. N.”
Pertanto, i contribuenti che effettuano:

• esclusivamente liquidazioni periodiche mensili, devono compilare un modulo per ciascun mese del trimestre;

• esclusivamente liquidazioni periodiche trimestrali, devono compilare un unico modulo per il trimestre;

• sia liquidazioni mensili che trimestrali (in caso di contabilità separate), devono compilare un modulo per ciascun mese e un modulo per il trimestre
(nel particolare caso di anticipazione, ai fini compensativi dell’imposta, della liquidazione perio- dica trimestrale in coincidenza con quella relativa al terzo mese di ogni
trimestre solare si rinvia alle istruzioni di cui al pun- to B) del paragrafo “Contribuenti con contabilità separate”).


Se ho altre info le riporterò.

Salvatore
> --
> Hai ricevuto questo messaggio perché sei iscritto al gruppo "Foxpro Italia" di Google Gruppi.
> Per annullare l'iscrizione a questo gruppo e non ricevere più le sue email, invia un'email a foxpro-itali...@googlegroups.com.
> Per postare in questo gruppo, invia un'email a foxpro...@googlegroups.com.
> Per visualizzare questa discussione sul Web, visita https://groups.google.com/d/msgid/foxpro-italia/a7ff898f-85b4-481a-ab97-373d2cacacb2%40googlegroups.com.

Denis Carlini

unread,
Apr 19, 2018, 4:56:42 AM4/19/18
to foxpro...@googlegroups.com
Grazie mille, gentilissimo.

Ma il <numeroModulo> è valorizzato con un numero progressivo?

Il primo blocco sarà 1, il secondo blocco 2, ecc.....immagino.
Ma a parte dire che può assumere valori da 1 a 5 nelle specifiche non ho trovato niente.......

Quindi per esempio diventerà cosi il vecchio tracciato?


<?xml version="1.0" encoding="UTF-8"?>
<Fornitura xmlns="urn:www.agenziaentrate.gov.it:specificheTecniche:sco:ivp">
<Intestazione>
<CodiceFornitura>IVP18</CodiceFornitura>
</Intestazione>
<Comunicazione identificativo="00011">
<Frontespizio>
<CodiceFiscale>00000000000</CodiceFiscale>
<AnnoImposta>2018</AnnoImposta>
<PartitaIVA>00000000000</PartitaIVA>
<CFDichiarante>XXXXXXXXXXXXXXXX</CFDichiarante>
<CodiceCaricaDichiarante>1</CodiceCaricaDichiarante>
<FirmaDichiarazione>1</FirmaDichiarazione>
<CFIntermediario>11111111111</CFIntermediario>
<ImpegnoPresentazione>1</ImpegnoPresentazione>
<DataImpegno>12022018</DataImpegno>
<FirmaIntermediario>1</FirmaIntermediario>
</Frontespizio>
<DatiContabili>
<Modulo>
<NumeroModulo>1</NumeroModulo>
<Mese>10</Mese>
<TotaleOperazioniAttive>41080,00</TotaleOperazioniAttive>
<TotaleOperazioniPassive>17190,69</TotaleOperazioniPassive>
<IvaEsigibile>9037,60</IvaEsigibile>
<IvaDetratta>3781,96</IvaDetratta>
<IvaDovuta>5255,64</IvaDovuta>

<IvaCredito>0,00</IvaCredito>
<CreditoPeriodoPrecedente>0,00</CreditoPeriodoPrecedente>
<CreditoAnnoPrecedente>0,00</CreditoAnnoPrecedente>
<ImportoDaVersare>5255,64</ImportoDaVersare>
<ImportoACredito>0,00</ImportoACredito>
</Modulo>
<Modulo>
<NumeroModulo>2</NumeroModulo>
<Mese>11</Mese>
<TotaleOperazioniAttive>0,00</TotaleOperazioniAttive>
<TotaleOperazioniPassive>5544,06</TotaleOperazioniPassive>
<IvaEsigibile>0,00</IvaEsigibile>
<IvaDetratta>1219,70</IvaDetratta>
<IvaDovuta>0,00</IvaDovuta>
<IvaCredito>1219,70</IvaCredito>

<CreditoPeriodoPrecedente>0,00</CreditoPeriodoPrecedente>
<CreditoAnnoPrecedente>0,00</CreditoAnnoPrecedente>
<ImportoDaVersare>0,00</ImportoDaVersare>
<ImportoACredito>1219,70</ImportoACredito>
</Modulo>
<Modulo>
<NumeroModulo>3</NumeroModulo>
<Mese>12</Mese>
<TotaleOperazioniAttive>34528,00</TotaleOperazioniAttive>
<TotaleOperazioniPassive>23549,00</TotaleOperazioniPassive>
<IvaEsigibile>7596,16</IvaEsigibile>
<IvaDetratta>5180,78</IvaDetratta>
<IvaDovuta>2415,38</IvaDovuta>
<IvaCredito>0,00</IvaCredito>
<CreditoPeriodoPrecedente>1219,70</CreditoPeriodoPrecedente>
<CreditoAnnoPrecedente>0,00</CreditoAnnoPrecedente>
<ImportoDaVersare>143,48</ImportoDaVersare>

<ImportoACredito>0,00</ImportoACredito>
</Modulo>
</DatiContabili>
</Comunicazione>
</Fornitura>



Grazie mille per l aiuto.

Il giorno 19 aprile 2018 10:37, Salvatore Graf <s.g...@italwork.com> ha scritto:
Oltre al tag <CodiceFornitura>IVP18</CodiceFornitura> è obbligatorio il tag <numeroModulo> prima del tag <Mese>
Il valore da attribuire è un numero da 1 a 5


Le uniche informazioni che al momento ho trovato sono:

Modulo

Per ciascuna liquidazione periodica deve essere compilato un distinto modulo della presente Comunicazione, compilando il campo “Mod. N.”
Pertanto, i contribuenti che effettuano:

        • esclusivamente liquidazioni periodiche mensili, devono compilare un modulo per ciascun mese del trimestre;

        • esclusivamente liquidazioni periodiche trimestrali, devono compilare un unico modulo per il trimestre;

        • sia liquidazioni mensili che trimestrali (in caso di contabilità separate), devono compilare un modulo per ciascun mese e un modulo per il trimestre
        (nel particolare caso di anticipazione, ai fini compensativi dell’imposta, della liquidazione perio- dica trimestrale in coincidenza con quella relativa al terzo mese di ogni
        trimestre solare si rinvia alle istruzioni di cui al pun- to B) del paragrafo “Contribuenti con contabilità separate”).


Se ho altre info le riporterò.

Salvatore


> Il giorno 18 apr 2018, alle ore 15:15, Denis <denis.ca...@gmail.com> ha scritto:
>
> Ciao Salvatore,
> per caso hai già analizzato le differenze del file della dichiarazione iva che riguarda il 2018?
> A parte il codice IPV17 che diventa IPV18 per l anno 2018 hai notato altro? A me sembra di no...
> Grazie mille.
>
> Denis.
>
>
>
> --
> Hai ricevuto questo messaggio perché sei iscritto al gruppo "Foxpro Italia" di Google Gruppi.
> Per annullare l'iscrizione a questo gruppo e non ricevere più le sue email, invia un'email a foxpro-italia+unsubscribe@googlegroups.com.
> Per postare in questo gruppo, invia un'email a foxpro...@googlegroups.com.
> Per visualizzare questa discussione sul Web, visita https://groups.google.com/d/msgid/foxpro-italia/a7ff898f-85b4-481a-ab97-373d2cacacb2%40googlegroups.com.
> Per altre opzioni visita https://groups.google.com/d/optout.

--
Hai ricevuto questo messaggio perché sei iscritto al gruppo "Foxpro Italia" di Google Gruppi.
Per annullare l'iscrizione a questo argomento, visita https://groups.google.com/d/topic/foxpro-italia/0HFPrJvd6a0/unsubscribe.
Per annullare l'iscrizione a questo gruppo e a tutti i suoi argomenti, invia un'email a foxpro-italia+unsubscribe@googlegroups.com.
Per postare messaggi in questo gruppo, invia un'email a foxpro...@googlegroups.com.
Per visualizzare questa discussione sul Web, visita https://groups.google.com/d/msgid/foxpro-italia/C33CB699-DF58-4E88-BFC9-812B94125131%40italwork.com.
Per ulteriori opzioni, visita https://groups.google.com/d/optout.

Salvatore Graf

unread,
Apr 19, 2018, 5:17:04 AM4/19/18
to foxpro...@googlegroups.com

Il tag <NumeroModulo> può assumere valori da 1-5

<xs:element name="NumeroModulo">
<xs:simpleType>
<xs:restriction base="cm:DatoN1_Type">
<xs:enumeration value="1"/>
<xs:enumeration value="2"/>
<xs:enumeration value="3"/>
<xs:enumeration value="4"/>
<xs:enumeration value="5"/>
</xs:restriction>
</xs:simpleType>
</xs:element>

………

Potrebbe essere il riferimento al trimestre ? Ma allora il valore 5 a cosa serve?

Non riesco a capire cosa vogliono….



> Il giorno 19 apr 2018, alle ore 10:56, Denis Carlini <denis.ca...@gmail.com> ha scritto:
>
> <NumeroModulo>1</NumeroModulo>

Denis Carlini

unread,
Apr 19, 2018, 5:42:50 AM4/19/18
to foxpro...@googlegroups.com
Mi faccio coraggio allora che non sono l unico a non capire.....anche perchè come dici te ho sempre saputo che i trimestri in un anno sono 4......

--
Hai ricevuto questo messaggio perché sei iscritto al gruppo "Foxpro Italia" di Google Gruppi.
Per annullare l'iscrizione a questo argomento, visita https://groups.google.com/d/topic/foxpro-italia/0HFPrJvd6a0/unsubscribe.
Per annullare l'iscrizione a questo gruppo e a tutti i suoi argomenti, invia un'email a foxpro-italia+unsubscribe@googlegroups.com.
Per postare messaggi in questo gruppo, invia un'email a foxpro...@googlegroups.com.

Laldo Lorso

unread,
Apr 19, 2018, 8:49:22 AM4/19/18
to Foxpro Italia
Qui trovi tutto:
https://www.redazionefiscale.it/c/il-caso/24419-comunicazione-dati-iva-entro-il-2802-linvio-dei-dati-del-quarto-trimestre-2017-dubbi-e-soluzioni
in dettaglio:
"I contribuenti che hanno optato per la liquidazione trimestrale ai sensi dell’art. 7 del D.P.R. n. 542/99 devono indicare “5” per il quarto trimestre nella casella trimestre di riferimento (4 gli altri contribuenti trimestrali)."

Buon lavoro
Aldo



Il giorno giovedì 19 aprile 2018 11:42:50 UTC+2, Denis ha scritto:
Mi faccio coraggio allora che non sono l unico a non capire.....anche perchè come dici te ho sempre saputo che i trimestri in un anno sono 4......
Il giorno 19 aprile 2018 11:17, Salvatore Graf <s.g...@italwork.com> ha scritto:

Il tag <NumeroModulo> può assumere valori da 1-5

<xs:element name="NumeroModulo">
                                                        <xs:simpleType>
                                                                <xs:restriction base="cm:DatoN1_Type">
                                                                        <xs:enumeration value="1"/>
                                                                        <xs:enumeration value="2"/>
                                                                        <xs:enumeration value="3"/>
                                                                        <xs:enumeration value="4"/>
                                                                        <xs:enumeration value="5"/>
                                                                </xs:restriction>
                                                        </xs:simpleType>
                                                </xs:element>

………

Potrebbe essere il riferimento al trimestre ? Ma allora il valore 5 a cosa serve?

Non riesco a capire cosa vogliono….



> Il giorno 19 apr 2018, alle ore 10:56, Denis Carlini <denis.ca...@gmail.com> ha scritto:
>
> <NumeroModulo>1</NumeroModulo>

--
Hai ricevuto questo messaggio perché sei iscritto al gruppo "Foxpro Italia" di Google Gruppi.
Per annullare l'iscrizione a questo argomento, visita https://groups.google.com/d/topic/foxpro-italia/0HFPrJvd6a0/unsubscribe.
Per annullare l'iscrizione a questo gruppo e a tutti i suoi argomenti, invia un'email a foxpro-itali...@googlegroups.com.

Per postare messaggi in questo gruppo, invia un'email a foxpro...@googlegroups.com.

Denis Carlini

unread,
Apr 19, 2018, 8:58:34 AM4/19/18
to foxpro...@googlegroups.com
Grazie per la risposta, ho letto le specifiche da te elencate, ma non vedo riferimenti al NumeroModulo.....non riesco a capire la logica del NumeroModulo....

C'è un legame tra il <NumeroModulo> e il <Mese> o <Trimestre>?

Grazie mille.
Denis.



Per annullare l'iscrizione a questo gruppo e a tutti i suoi argomenti, invia un'email a foxpro-italia+unsubscribe@googlegroups.com.
Per postare in questo gruppo, invia un'email a foxpro...@googlegroups.com.
Per visualizzare questa discussione sul Web, visita https://groups.google.com/d/msgid/foxpro-italia/4c84f1c6-644e-41a1-a5b3-ee2472cded32%40googlegroups.com.

Laldo Lorso

unread,
Apr 19, 2018, 10:41:18 AM4/19/18
to Foxpro Italia
Qui
https://www.guidafisco.it/liquidazioni-iva-modello-invio-istruzioni-compilazione-quadri-vp-1925
letteralmente riporta:
  • Per chi effettua liquidazioni periodiche mensili: deve compilare un modulo per ciascun trimestre;
  • Per chi effettua invece liquidazioni IVA trimestrali: deve compilare 1 modulo per il trimestre.
e anche nelle ultime specifiche tecniche 2018 che ti allego a pag. 13 trovi i valori che possono assumere i campi MODULO, MESE e TRIMESTRE

quindi, secondo me, nel primo caso (mensili) avrai 3 distinti moduli in ciascun trimestre:
- mod. 1 per gennaio, mod. 2 per febbraio e mod. 3 per marzo relativamente al primo trimestre
e mese 1, mese 2, mese 3
- mod. 1 per aprile, mod. 2 per maggio e mod. 3 per giugno relativamente al secondo trimestre
e mese 4, mese 5, mese 6
e così via...

mentre nel secondo caso (trimestrali) :
- mod. 1 nel primo trimestre
e trimestre 1
- mod. 2 nel secondo
e trimestre 2
- mod. 3 nel terzo
e trimestre 3
- mod. 4 nel quarto
e trimestre 4 o 5 a seconda, come ti ho riportato nel precedente post

Spero sia più chiaro... e soprattutto di aver interpretato correttamente ;-)
Ciao
Per annullare l'iscrizione a questo gruppo e a tutti i suoi argomenti, invia un'email a foxpro-itali...@googlegroups.com.
specificheivaperiodica18.pdf

Salvatore Graf

unread,
Apr 19, 2018, 11:33:30 AM4/19/18
to foxpro...@googlegroups.com
Quindi :

• Per chi effettua liquidazioni periodiche mensili: deve compilare un modulo per ciascun trimestre;
-> I valori saranno sempre 1 - 2 - 3 ? (Sempre tre mesi sono !)

• Per chi effettua invece liquidazioni IVA trimestrali: deve compilare 1 modulo per il trimestre.
-> I valori saranno sempre 1 - 2 - 3 - 4 ? (Valori relativi ai trimestri ?)

… ed infine il N° 5 ?

"I contribuenti che hanno optato per la liquidazione trimestrale ai sensi dell’art. 7 del D.P.R. n. 542/99 devono indicare “5” per il quarto trimestre nella casella trimestre di riferimento (4 gli altri contribuenti trimestrali)”

Chi sarebbero gli "gli altri contribuenti trimestrali” ?

Che chiarezza !!!
Vorrei tanto conoscere il genio dell’agenzia delle entrate(furti) che ha pensato e scritto queste specifiche tecniche!


Salvatore



> Il giorno 19 apr 2018, alle ore 16:41, Laldo Lorso <al...@interplanet.it> ha scritto:
>
> <specificheivaperiodica18.pdf>

Denis Carlini

unread,
Apr 19, 2018, 11:40:09 AM4/19/18
to foxpro...@googlegroups.com
Ragazzi....io ho provato a scaricare il nuovo software per la comunicazione 2018 messa a disposizione sul sito dell' agenzia delle entrate.....secondo me quel numero moduli è sempre un numero progressivo! Quando avete tempo fate un Po di prove anche voi....io ho messo trimestre 5 e magicamente come numero modulo viene 1 e trimestre 5! Direi....fantastico....

--
Hai ricevuto questo messaggio perché sei iscritto al gruppo "Foxpro Italia" di Google Gruppi.
Per annullare l'iscrizione a questo argomento, visita https://groups.google.com/d/topic/foxpro-italia/0HFPrJvd6a0/unsubscribe.
Per annullare l'iscrizione a questo gruppo e a tutti i suoi argomenti, invia un'email a foxpro-itali...@googlegroups.com.
Per postare messaggi in questo gruppo, invia un'email a foxpro...@googlegroups.com.

Laldo Lorso

unread,
Apr 19, 2018, 4:54:13 PM4/19/18
to Foxpro Italia
Premesso che vorrei conoscerlo anch'io il "fenomeno" dell'Agenzia ;-))
penso che questo ti potrà essere d'aiuto:

QUADRO VP

Va evidenziato che per ciascuna liquidazione periodica va compilato un distinto modulo da specificare nel campo “Mod. N”. Così, per un contribuente mensile la Comunicazione sarà composta da 3 moduli.

Nel quadro in esame vanno indicati i dati della liquidazione periodica (in centesimi di Euro).

VP1

  • Mese va indicato il mese (da 1 a 12) di riferimento della liquidazione periodica.
  • Trimestre Va indicato il trimestre (da 1 a 5) di riferimento della liquidazione periodica. Va evidenziato che:
  • i trimestrali “speciali” (distributori di carburante / autotrasportatori) con riferimento alla Comunicazione del quarto trimestre indicano “4” nel campo “Trimestre”;
  • i trimestrali “normali” devono presentare la Comunicazione anche per il quarto trimestre indicando “5” nel campo “Trimestre”.

Contribuenti trimestrali

Come sopra accennato i contribuenti trimestrali “normali” devono presentare la Comunicazione in esame anche per il quarto trimestre (senza operare le eventuali operazioni di rettifica / conguaglio da effettuare in dichiarazione annuale) riportando “5” nel campo “Trimestre” (resta fermo al 16.3 il termine relativo al versamento annuale).

I contribuenti trimestrali “speciali” ex art. 74, comma 4, DPR n. 633/72 (distributori di carburante, autotrasportatori) devono effettuare anche la liquidazione del quarto trimestre il cui versamento scade il 16.2. Nel caso in cui un trimestrale “speciale” sia tenuto ad effettuare anche le liquidazioni trimestrali “ordinarie”, relativamente al quarto trimestre, vanno compilati 2 distinti moduli.


BuonaSerata

Aldo

Reply all
Reply to author
Forward
0 new messages