Fatturazione Elettronica

Moderator: Enrico Maria Giordano

User avatar
Maurizio
Posts: 705
Joined: Mon Oct 10, 2005 1:29 pm
Contact:

Re: Fatturazione Elettronica

Post by Maurizio »

Ciao Enrico

cProgInvio := NTOC( nProgInvio , 36, 5, "0" )

soluzione molto semplice semplice, ho visto che con 4 caratteri si arriva a 1679615 , più che sufficente ( NTOC( nProgInvio , 36, 4, "0" )

Maurizio
User avatar
MarcoBoschi
Posts: 925
Joined: Thu Nov 17, 2005 11:08 am
Location: Padova - Italy
Contact:

Re: Fatturazione Elettronica

Post by MarcoBoschi »

Tratto dal pdf ..."specifiche tecniche" agenzia entrate...

il progressivo univoco del file è rappresentato da una stringa alfanumerica di
lunghezza massima di 5 caratteri e con valori ammessi [a-z], [A-Z], [0-9].
Quindi maiuscolo e minuscolo ammessi.
Marco Boschi
info@marcoboschi.it
User avatar
Silvio.Falconi
Posts: 4956
Joined: Thu Oct 18, 2012 7:17 pm

Re: Fatturazione Elettronica

Post by Silvio.Falconi »

Ragazzi da dove potrei iniziare per fare questa fatturazione elettronica
Premetto il tizio a cui la devo fare ha un software ma non è compatibile con il nostro sistema dbf/harbour
e poi lo vuole a se stante, da nuovo insomma
Mi date una mano e sopratutto una dritta per favore ?
io ho trovato questo sorgente ma purtroppo è in NEt http://fatturaelettronicaopensource.org/
come faccio per convertirlo in harbour ?
I use : FiveWin for Harbour August 2020 (Revision) - Harbour 3.2.0dev (r1712141320) - Bcc7.30 - xMate ver. 1.15.3 - PellesC
User avatar
MarcoBoschi
Posts: 925
Joined: Thu Nov 17, 2005 11:08 am
Location: Padova - Italy
Contact:

Re: Fatturazione Elettronica

Post by MarcoBoschi »

da qui Silvio
https://www.fatturapa.gov.it/export/fat ... va/f-2.htm

il tracciato del file xml lo trovi nel foglio excel "Rappresentazione+tabellare+del+tracciato+fattura+ordinaria.xls"

Ciao
Marco Boschi
info@marcoboschi.it
User avatar
Silvio.Falconi
Posts: 4956
Joined: Thu Oct 18, 2012 7:17 pm

Re: Fatturazione Elettronica

Post by Silvio.Falconi »

già conosco purtroppo questa pagina...
Le codifiche le metto in archivi dbf... ok
poi come lo creo il file xml in harbour ?
oppure devo prendere un file modello g ed inerire le variabili nella stessa ?
e poi non capisco il foglio di stile dove lo devo inserire?

cioè ho trovato nel forum questo ma non so se è adatto

Code: Select all

nFileHandle := FCreate( "MyDoc.xml", 0 ) 
// cXml would be your response from the server
FWrite( nFileHandle, cXml )
FClose( nFileHandle )
I use : FiveWin for Harbour August 2020 (Revision) - Harbour 3.2.0dev (r1712141320) - Bcc7.30 - xMate ver. 1.15.3 - PellesC
User avatar
Silvio.Falconi
Posts: 4956
Joined: Thu Oct 18, 2012 7:17 pm

Re: Fatturazione Elettronica

Post by Silvio.Falconi »

quindi

#include "FiveWin.ch"
#include "FileIo.ch"

FUNCTION FatturazioneElettronica()
LOCAL cBuffer
LOCAL nHandle

nHandle := fCreate( cXmlFile, FC_NORMAL )
fWrite( nHandle, [<?xml version="1.0" encoding="UTF-8" ?>] + CRLF )
fWrite( nHandle, Space( 0 ) + '<FatturaElettronicaHeader>' + CRLF )
fWrite( nHandle, Space( 0 ) + '</FatturaElettronicaHeader>' + CRLF )
fWrite( nHandle, Space( 0 ) + '<FatturaElettronicaBody>' + CRLF )
fWrite( nHandle, Space( 0 ) + '</FatturaElettronicaBody>' + CRLF )


e mi sono perso perchè come chiudo con </p:FatturaElettronica> se sopra ho messo ?xml version="1.0"
I use : FiveWin for Harbour August 2020 (Revision) - Harbour 3.2.0dev (r1712141320) - Bcc7.30 - xMate ver. 1.15.3 - PellesC
User avatar
Silvio.Falconi
Posts: 4956
Joined: Thu Oct 18, 2012 7:17 pm

Re: Fatturazione Elettronica

Post by Silvio.Falconi »

come inserisco tutta questa parte ?

Code: Select all

<p:FatturaElettronica versione="FPA12" xmlns:ds="http://www.w3.org/2000/09/xmldsig#" 
xmlns:p="http://ivaservizi.agenziaentrate.gov.it/docs/xsd/fatture/v1.2" 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xsi:schemaLocation="http://ivaservizi.agenziaentrate.gov.it/docs/xsd/fatture/v1.2 fatturaordinaria_v1.2.xsd ">
I use : FiveWin for Harbour August 2020 (Revision) - Harbour 3.2.0dev (r1712141320) - Bcc7.30 - xMate ver. 1.15.3 - PellesC
User avatar
Silvio.Falconi
Posts: 4956
Joined: Thu Oct 18, 2012 7:17 pm

Re: Fatturazione Elettronica

Post by Silvio.Falconi »

Ragazzi,
invece di usare fcreate e fclose non si puo' usare direttamente la classe

TXmlDocument()


oXml := TXmlDocument():new( '<?xml version="1.0" encoding="UTF-8" standalone="yes"?>' )
oXmlNode := TXmlNode():new( , '<p:FatturaElettronica versione="FPA12"',;
{ "xmlns:ds" => "http://www.w3.org/2000/09/xmldsig#",;
"xmlns:p" => "http://ivaservizi.agenziaentrate.gov.it ... tture/v1.2",;
"xmlns:xsi" => "http://www.w3.org/2001/XMLSchema-instance" } )

oXmlHeader := TXmlNode():new( , 'FatturaElettronicaHeader' )


abbiamo un esempio ?
I use : FiveWin for Harbour August 2020 (Revision) - Harbour 3.2.0dev (r1712141320) - Bcc7.30 - xMate ver. 1.15.3 - PellesC
solving
Posts: 56
Joined: Fri Jun 05, 2009 7:55 am
Location: Sicily ( ct ) - Italy

Re: Fatturazione Elettronica

Post by solving »

salve

perche' complicarsi la vita ?

io tratto il file .xml come un file ascii ( txt ) quindi uso fcreate, frwite e fclose

esempio

.... frceate
.
.
* --------------------------------- fase Header
cRiga := "<FatturaElettronicaHeader>" + CRLF
cRiga += "<DatiTrasmissione>" + CRLF
cRiga += "<IdTrasmittente>" + CRLF
cRiga += "<IdPaese>" +"IT"+ "</IdPaese>" + CRLF
cRiga += "<IdCodice>" + p_iva_azienda + "</IdCodice>" + CRLF
cRiga += "</IdTrasmittente>" + CRLF
cRiga += "<ProgressivoInvio>" + cNumInt +"</ProgressivoInvio>" + CRLF
cRiga += "<FormatoTrasmissione>FPR12</FormatoTrasmissione>" + CRLF
cRiga += "<CodiceDestinatario>" + pippo->cod_univ_cliente +"</CodiceDestinatario>" + CRLF
cRiga += "<ContattiTrasmittente/>" + CRLF
cRiga += "</DatiTrasmissione>" + CRLF
----- fwrite

*------------------------------ fase Cedente / Prestatore
cRiga := "<CedentePrestatore>" + CRLF
cRiga += "<DatiAnagrafici>" + CRLF
cRiga +="<IdFiscaleIVA>" + CRLF
cRiga += "<IdPaese>" + pippo->id_paese_cliente +"/IdPaese>" + CRLF
cRiga += "<IdCodice>" + pippo->p_iva_cliente +"</IdCodice>" + CRLF
cRiga += "</IdFiscaleIVA>" + CRLF
cRiga += "<Anagrafica>" + CRLF
cRiga += "<Denominazione>" + pippo->rag_soc_cliente +"</Denominazione>" + CRLF
cRiga += "</Anagrafica>" + CRLF

----- fwrite

* ----- altre fasi
etc.. etc...

---- fclose

come ha detto marco boschi :
https://www.fatturapa.gov.it/export/fat ... va/f-2.htm
hai tutti gli esempi ( non propio tutti tutti )
e sopratutto tracciato tabellare ( consiglio di guardare quello in excel )

per questa riga dato che contiene già i doppi apici puoi fare : ( racchiudi dentro [ e ] )

cRiga := [<p:FatturaElettronica versione="FPA12" xmlns:ds="http://www.w3.org/2000/09/xmldsig#"]
cRiga += [xmlns:p="http://ivaservizi.agenziaentrate.gov.it ... tture/v1.2"]
cRiga += [xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"]
cRiga += [xsi:schemaLocation="http://ivaservizi.agenziaentrate.gov.it ... tture/v1.2 fatturaordinaria_v1.2.xsd ">]
cRiga += CRLF
----- fwrite
User avatar
Silvio.Falconi
Posts: 4956
Joined: Thu Oct 18, 2012 7:17 pm

Re: Fatturazione Elettronica

Post by Silvio.Falconi »

Grazieee
I use : FiveWin for Harbour August 2020 (Revision) - Harbour 3.2.0dev (r1712141320) - Bcc7.30 - xMate ver. 1.15.3 - PellesC
User avatar
Silvio.Falconi
Posts: 4956
Joined: Thu Oct 18, 2012 7:17 pm

Re: Fatturazione Elettronica

Post by Silvio.Falconi »

io avrei anche un altro problema
io lavoro presso un Pa e mi hanno detto che devo far visualizzare le fatture che arrivano da privato in questo modo
cioè adesso usiamo un pdf che arriva dal privato ma non ho capito come è stato fatto il pdf

Image

gli impiegati stampano le fatture che arrivano ed elaborano
ma non ho capito come trasformare il file xml in questo formato
I use : FiveWin for Harbour August 2020 (Revision) - Harbour 3.2.0dev (r1712141320) - Bcc7.30 - xMate ver. 1.15.3 - PellesC
solving
Posts: 56
Joined: Fri Jun 05, 2009 7:55 am
Location: Sicily ( ct ) - Italy

Re: Fatturazione Elettronica

Post by solving »

salve
quello che fai vedere lo si ottiene da :
dal sito fatturapa e poi strumenti
gli dai in "pasto" un file xml e lo trasforma in quel modo.

https://sdi.fatturapa.gov.it/SdI2Fattur ... a_file_sdi

alcuni mettono dentro il file xml un allegato che corrisponde alla fattura in formato pdf
ma non tutti. ( attenzione che sicuramente , sopratutto le PA arrivano xml firmati e non he detto che
con un visualizzatore esterno riesca ad prire il file - assoinvoice lo fà)

Quindi o costruisci un programma che analizzando il file xml ricevuto, ricrea un pseudo fattura leggibile
( con tanti di possibili
o usi programmi terzi ( tipo assoinvoice ) che genera un pseudo documento leggibile.
User avatar
Silvio.Falconi
Posts: 4956
Joined: Thu Oct 18, 2012 7:17 pm

Re: Fatturazione Elettronica

Post by Silvio.Falconi »

ho trovato un view free
https://migg.it/
lo fa allo stesso modo come lo voglio fare io e come lo visualizzano le PA

Comunque se analizziamo il file fatturapa_v1.2

è come se sostituisce automaticamente i dati presi dalla fattura ( ci sono tutte le tabelle inserite)

esempio: Regime fiscale:

Code: Select all

<span>
                                                                    <xsl:value-of select="RegimeFiscale" />
                                                                </span>

                                                                <xsl:variable name="RF">
                                                                    <xsl:value-of select="RegimeFiscale" />
                                                                </xsl:variable>
                                                                <xsl:choose>
                                                                    <xsl:when test="$RF='RF01'">
                                                                        (ordinario)
                                                                    </xsl:when>
                                                                    <xsl:when test="$RF='RF02'">
                                                                        (contribuenti minimi)
                                                                    </xsl:when>
                                                                    <xsl:when test="$RF='RF03'">
                                                                        (nuove iniziative produttive)
                                                                    </xsl:when>
                                                                    <xsl:when test="$RF='RF04'">
                                                                        (agricoltura e attivita' connesse e pesca)
                                                                    </xsl:when>
                                                                    <xsl:when test="$RF='RF05'">
                                                                        (vendita sali e tabacchi)
                                                                    </xsl:when>
                                                                    <xsl:when test="$RF='RF06'">
                                                                        (commercio fiammiferi)
                                                                    </xsl:when>
                                                                    <xsl:when test="$RF='RF07'">
                                                                        (editoria)
                                                                    </xsl:when>
                                                                    <xsl:when test="$RF='RF08'">
                                                                        (gestione servizi telefonia pubblica)
                                                                    </xsl:when>
                                                                    <xsl:when test="$RF='RF09'">
                                                                        (rivendita documenti di trasporto pubblico e di sosta)
                                                                    </xsl:when>
                                                                    <xsl:when test="$RF='RF10'">
                                                                        (intrattenimenti, giochi e altre attivita' di cui alla tariffa allegata al DPR 640/72)
                                                                    </xsl:when>
                                                                    <xsl:when test="$RF='RF11'">
                                                                        (agenzie viaggi e turismo)
                                                                    </xsl:when>
                                                                    <xsl:when test="$RF='RF12'">
                                                                        (agriturismo)
                                                                    </xsl:when>
                                                                    <xsl:when test="$RF='RF13'">
                                                                        (vendite a domicilio)
                                                                    </xsl:when>
                                                                    <xsl:when test="$RF='RF14'">
                                                                        (rivendita beni usati, oggetti d’arte,
                                                                        d’antiquariato o da collezione)
                                                                    </xsl:when>
                                                                    <xsl:when test="$RF='RF15'">
                                                                        (agenzie di vendite all’asta di oggetti d’arte,
                                                                        antiquariato o da collezione)
                                                                    </xsl:when>
                                                                    <xsl:when test="$RF='RF16'">
                                                                        (IVA per cassa P.A.)
                                                                    </xsl:when>
                                                                    <xsl:when test="$RF='RF17'">
                                                                        (IVA per cassa - art. 32-bis, D.L. 83/2012)
                                                                    </xsl:when>
                                                                    <xsl:when test="$RF='RF19'">
                                                                        (Regime forfettario)
                                                                    </xsl:when>
                                                                    <xsl:when test="$RF='RF18'">
                                                                        (altro)
                                                                    </xsl:when>
                                                                    <xsl:when test="$RF=''">
                                                                    </xsl:when>
                                                                    <xsl:otherwise>
                                                                        <span>(!!! codice non previsto !!!)</span>
                                                                    </xsl:otherwise>
                                                                </xsl:choose>


c'è un comando per esempio xsl:when test="$RF='RF08'"

quando nel file trovi il codice RF08 to convertilo in " (altro)"


quindi è una sorta di traduttore
I use : FiveWin for Harbour August 2020 (Revision) - Harbour 3.2.0dev (r1712141320) - Bcc7.30 - xMate ver. 1.15.3 - PellesC
User avatar
MarcoBoschi
Posts: 925
Joined: Thu Nov 17, 2005 11:08 am
Location: Padova - Italy
Contact:

Re: Fatturazione Elettronica

Post by MarcoBoschi »

[quote="Maurizio"]devi mettere la Quantità a 1 e IVA

Maurizio,
non ti sembra una cosa assurda che si debba mettere comunque a Qta a 1 e l'iva?
Non mi permetterei mai di criticare quello che dici tu.
Critico il fatto che non abbiano previsto comunque che uno possa scrivere una descrizione senza quantita, prezzo e aliquota
Nel forum progammatori.it trovo anche questa possibilità

Code: Select all

<DettaglioLinee>
<NumeroLinea>4</NumeroLinea>
<Descrizione>CANONE DI LOCAZIONE DAL 01/06/2018 AL 31/08/2018</Descrizione>
<Quantita>0.00</Quantita>
<PrezzoUnitario>0.00</PrezzoUnitario>
<PrezzoTotale>0.00</PrezzoTotale>
<AliquotaIVA>22.00</AliquotaIVA>
</DettaglioLinee>
 
ovvero Descrizione e Aliquota senza quantità
Cosa costava permettere solo Descrizione e basta?
A cosa darebbe fastidio la presenza di una riga tipo questa che segue?

Code: Select all

<DettaglioLinee>
<NumeroLinea>4</NumeroLinea>
<Descrizione>CANONE DI LOCAZIONE DAL 01/06/2018 AL 31/08/2018</Descrizione>
</DettaglioLinee>
 

Se qualcuno di Voi amici riesce a spiegarmi il senso mi farebbe un grosso favore
Le mie fatture non hanno niente nel campo cod_iva ( e cod_iva->aliquota) nelle righe descrittive.
Mi rompe tantissimo ripassare tutte le righe memorizzare l'aliquota in una variabile e usarla
in quelle righe che sono solo descrittive.

Buona serata a tutti
Grazie
Marco Boschi
info@marcoboschi.it
User avatar
Silvio.Falconi
Posts: 4956
Joined: Thu Oct 18, 2012 7:17 pm

Re: Fatturazione Elettronica

Post by Silvio.Falconi »

sta fatturazione è... una stronzata vedrai che la toglieranno

a scuola non sanno come farci lavorare di più oltre ad usare un sistema on line che non funziona o si blocca spesso
vogliono uniformare tutto che lo facciano ma che sia uguale per tutte le nazioni
hanno iniziato in sudamerica e via via sta stramaledetta cavolata è arrivata anche in Italia
I use : FiveWin for Harbour August 2020 (Revision) - Harbour 3.2.0dev (r1712141320) - Bcc7.30 - xMate ver. 1.15.3 - PellesC
Post Reply