public void InitializeInvoice(FatturaOrdinaria fatturaElettronica, OwnerOptions ownerOptions) { FatturaElettronicaHeader header = fatturaElettronica.FatturaElettronicaHeader; this.ProgressivoInvio = header.DatiTrasmissione.ProgressivoInvio; this.FormatoTrasmissione = header.DatiTrasmissione.FormatoTrasmissione; this.CodiceDestinatario = header.DatiTrasmissione.CodiceDestinatario; this.SoggettoEmittente = header.SoggettoEmittente; this.PECDestinatario = header.DatiTrasmissione.PECDestinatario; this.Trasmittente = new CliForModel(header.DatiTrasmissione); if (header.TerzoIntermediarioOSoggettoEmittente != null) { this.IntermediarioOEmittente = new CliForModel(header.TerzoIntermediarioOSoggettoEmittente); } this.Bodies = new List <BodyModel>(); foreach (var body in fatturaElettronica.FatturaElettronicaBody) { this.Bodies.Add(new BodyModel(body, header)); } }
public BodyModel(FatturaElettronicaBody body, FatturaElettronicaHeader header) { if (body != null) { this.Simplified = false; this.TipoDocumento = body.DatiGenerali.DatiGeneraliDocumento.TipoDocumento; this.Divisa = body.DatiGenerali.DatiGeneraliDocumento.Divisa; this.Data = body.DatiGenerali.DatiGeneraliDocumento.Data; this.Numero = body.DatiGenerali.DatiGeneraliDocumento.Numero; this.BolloVirtuale = body.DatiGenerali.DatiGeneraliDocumento.DatiBollo.BolloVirtuale; this.ImportoBollo = body.DatiGenerali.DatiGeneraliDocumento.DatiBollo.ImportoBollo; this.ImportoTotaleDocumento = body.DatiGenerali.DatiGeneraliDocumento.ImportoTotaleDocumento; this.Arrotondamento = body.DatiGenerali.DatiGeneraliDocumento.Arrotondamento; this.Art73 = body.DatiGenerali.DatiGeneraliDocumento.Art73; this.NumeroFatturaPrincipale = body.DatiGenerali.FatturaPrincipale.NumeroFatturaPrincipale; this.DataFatturaPrincipale = body.DatiGenerali.FatturaPrincipale.DataFatturaPrincipale; this.MezzoTrasporto = body.DatiGenerali.DatiTrasporto.MezzoTrasporto; this.CausaleTrasporto = body.DatiGenerali.DatiTrasporto.CausaleTrasporto; this.NumeroColli = body.DatiGenerali.DatiTrasporto.NumeroColli; this.Descrizione = body.DatiGenerali.DatiTrasporto.Descrizione; this.UnitaMisuraPeso = body.DatiGenerali.DatiTrasporto.UnitaMisuraPeso; this.PesoLordo = body.DatiGenerali.DatiTrasporto.PesoLordo; this.PesoNetto = body.DatiGenerali.DatiTrasporto.PesoNetto; this.DataOraRitiro = body.DatiGenerali.DatiTrasporto.DataOraRitiro; this.DataInizioTrasporto = body.DatiGenerali.DatiTrasporto.DataInizioTrasporto; this.TipoResa = body.DatiGenerali.DatiTrasporto.TipoResa; this.DataOraConsegna = body.DatiGenerali.DatiTrasporto.DataOraConsegna; if (body.DatiGenerali.DatiTrasporto != null && body.DatiGenerali.DatiTrasporto.IndirizzoResa != null && body.DatiGenerali.DatiTrasporto.IndirizzoResa.CAP != null) { this.LuogoResa = new SediModel(body.DatiGenerali.DatiTrasporto.IndirizzoResa); } int causaleLength = body.DatiGenerali.DatiGeneraliDocumento.Causale.Count; if (causaleLength > 0) { this.Causale = new List <CausaleModel>(); } foreach (var c in body.DatiGenerali.DatiGeneraliDocumento.Causale) { this.Causale.Add(new CausaleModel(c)); } int ddtLength = body.DatiGenerali.DatiDDT.Count; if (ddtLength > 0) { this.DatiDDT = new List <DatiDDTModel>(); } foreach (var ddt in body.DatiGenerali.DatiDDT) { this.DatiDDT.Add(new DatiDDTModel(ddt)); } int cassaLength = body.DatiGenerali.DatiGeneraliDocumento.DatiCassaPrevidenziale.Count; if (cassaLength > 0) { this.DatiCassaPrevidenziale = new List <DatiCassaPrevidenzialeModel>(); } foreach (var cassa in body.DatiGenerali.DatiGeneraliDocumento.DatiCassaPrevidenziale) { this.DatiCassaPrevidenziale.Add(new DatiCassaPrevidenzialeModel(cassa)); } // ---DatiModel--- int acquistoLength = body.DatiGenerali.DatiOrdineAcquisto.Count; int contrattoLength = body.DatiGenerali.DatiContratto.Count; int convenzioneLength = body.DatiGenerali.DatiConvenzione.Count; int ricezioneLength = body.DatiGenerali.DatiRicezione.Count; int fCollegateLength = body.DatiGenerali.DatiFattureCollegate.Count; if (acquistoLength > 0 || contrattoLength > 0 || convenzioneLength > 0 || ricezioneLength > 0 || fCollegateLength > 0 ) { this.Dati = new List <DatiModel>(); } foreach (var acquisto in body.DatiGenerali.DatiOrdineAcquisto) { this.Dati.Add(new DatiModel(acquisto)); } foreach (var contratto in body.DatiGenerali.DatiContratto) { this.Dati.Add(new DatiModel(contratto)); } foreach (var convenzione in body.DatiGenerali.DatiConvenzione) { this.Dati.Add(new DatiModel(convenzione)); } foreach (var ricezione in body.DatiGenerali.DatiRicezione) { this.Dati.Add(new DatiModel(ricezione)); } foreach (var collegate in body.DatiGenerali.DatiFattureCollegate) { this.Dati.Add(new DatiModel(collegate)); } //---End DatiModel--- this.DatiPagamento = new List <DatiPagamentoModel>(); int pagamentoLength = body.DatiPagamento.Count; if (pagamentoLength > 0) { foreach (var pagamento in body.DatiPagamento) { this.DatiPagamento.Add(new DatiPagamentoModel(pagamento)); } } else { var defaultDettaglio = new DettaglioPagamentoModel ( "MP05", body.DatiGenerali.DatiGeneraliDocumento.ImportoTotaleDocumento ?? default(int), body.DatiGenerali.DatiGeneraliDocumento.Data ); var defaultPagamento = new DatiPagamentoModel ( "TP02", defaultDettaglio ); this.DatiPagamento.Add(defaultPagamento); } this.DatiPagamento[0].Active = true; int riepilogoLength = body.DatiBeniServizi.DatiRiepilogo.Count; if (riepilogoLength > 0) { this.DatiRiepilogo = new List <DatiRiepilogoModel>(); } foreach (var riepilogo in body.DatiBeniServizi.DatiRiepilogo) { this.DatiRiepilogo.Add(new DatiRiepilogoModel(riepilogo)); } int salLength = body.DatiGenerali.DatiSAL.Count; if (salLength > 0) { this.DatiSAL = new List <DatiSALModel>(); } foreach (var sal in body.DatiGenerali.DatiSAL) { this.DatiSAL.Add(new DatiSALModel(sal)); } int lineeLength = body.DatiBeniServizi.DettaglioLinee.Count; if (lineeLength > 0) { this.DettaglioLinee = new List <DettaglioLineeModel>(); } foreach (var linea in body.DatiBeniServizi.DettaglioLinee) { this.DettaglioLinee.Add(new DettaglioLineeModel(linea)); } int ritenutaLength = body.DatiGenerali.DatiGeneraliDocumento.DatiRitenuta.Count; if (ritenutaLength > 0) { this.DatiRitenuta = new List <DatiRitenutaModel>(); foreach (var r in body.DatiGenerali.DatiGeneraliDocumento.DatiRitenuta) { this.DatiRitenuta.Add(new DatiRitenutaModel(r)); } } DettaglioPagamento dettaglioPagamento = new DettaglioPagamento(); if (body.DatiPagamento.Count > 0 && body.DatiPagamento[0].DettaglioPagamento.Count > 0) { dettaglioPagamento = body.DatiPagamento[0].DettaglioPagamento[0]; } this.CedentePrestatore = new CliForModel(header.CedentePrestatore, header.Rappresentante, dettaglioPagamento); this.CessionarioCommittente = new CliForModel(header.CessionarioCommittente); if (body.DatiGenerali.DatiTrasporto.DatiAnagraficiVettore != null) { this.Vettore = new CliForModel(body.DatiGenerali.DatiTrasporto.DatiAnagraficiVettore); } } }
private PdfPTable GeneratePDFHeader(FatturaElettronicaHeader _FatturaElettronicaHeader) { PdfPTable _PDFSenderTable = new PdfPTable(1); PdfPTable _PDFRecieverTable = new PdfPTable(1); PdfPCell _Sender = new PdfPCell(new Phrase(LocalisedString.Sender, _TitleHelvetica)) { HorizontalAlignment = Element.ALIGN_CENTER, VerticalAlignment = Element.ALIGN_CENTER, BackgroundColor = _HeaderColour, Border = Rectangle.NO_BORDER, FixedHeight = 20.0f }; PdfPCell _Reciever = new PdfPCell(new Paragraph(LocalisedString.Reciever, _TitleHelvetica)) { HorizontalAlignment = Element.ALIGN_CENTER, VerticalAlignment = Element.ALIGN_CENTER, BackgroundColor = _HeaderColour, Border = Rectangle.NO_BORDER, FixedHeight = 20.0f }; _PDFSenderTable.DefaultCell.Border = Rectangle.NO_BORDER; _PDFRecieverTable.DefaultCell.Border = Rectangle.NO_BORDER; _PDFSenderTable.AddCell(_Sender); _PDFRecieverTable.AddCell(_Reciever); InsertSenderHeaderData(_PDFSenderTable, _FatturaElettronicaHeader.CedentePrestatore); InsertRecieverHeaderData(_PDFRecieverTable, _FatturaElettronicaHeader.CessionarioCommittente, _FatturaElettronicaHeader.DatiTrasmissione.CodiceDestinatario, _FatturaElettronicaHeader.DatiTrasmissione.PECDestinatario); PdfPCell _PDFHeaderSenderCell = new PdfPCell(_PDFSenderTable) { BorderWidth = 1.5f, BorderColor = _BorderColour }; PdfPCell _PDFHeaderReciverCell = new PdfPCell(_PDFRecieverTable) { BorderWidth = 1.5f, BorderColor = _BorderColour }; PdfPTable _PDFHeaderContainer = new PdfPTable(3); _PDFHeaderContainer.WidthPercentage = 100; _PDFHeaderContainer.HorizontalAlignment = Element.ALIGN_LEFT; _PDFHeaderContainer.DefaultCell.Border = Rectangle.NO_BORDER; _PDFHeaderContainer.SetWidths(new float[] { 12f, 1f, 12f }); _PDFHeaderContainer.AddCell(_PDFHeaderSenderCell); _PDFHeaderContainer.AddCell(new PdfPCell( ) { Border = Rectangle.NO_BORDER }); _PDFHeaderContainer.AddCell(_PDFHeaderReciverCell); return(_PDFHeaderContainer); }
private bool genera_xml(string percorso, string nome_file) { bool esito = false; try { FatturaElettronicaXMLNodes nodoPrincipale = new FatturaElettronicaXMLNodes(); FatturaElettronicaHeader overviewHeader = new FatturaElettronicaHeader(); DatiTrasmissione datiTrasmissione = new DatiTrasmissione(); IdTrasmittente idTrasmittente_111 = new IdTrasmittente(); idTrasmittente_111.IdPaese = "IT"; idTrasmittente_111.IdCodice = "01234567890"; datiTrasmissione.IdTrasmittente = idTrasmittente_111; datiTrasmissione.ProgressivoInvio = "00001"; datiTrasmissione.FormatoTrasmissione = "FPR12"; datiTrasmissione.CodiceDestinatario = "ABC1234"; ContattiTrasmittente contattiTrasmittente_115 = new ContattiTrasmittente(); contattiTrasmittente_115.Telefono = ""; contattiTrasmittente_115.Email = ""; datiTrasmissione.ContattiTrasmittente = contattiTrasmittente_115; datiTrasmissione.PECDestinatario = ""; overviewHeader.DatiTrasmissione = datiTrasmissione; CedentePrestatore cedentePrestatore = new CedentePrestatore(); DatiAnagrafici datiAnagrafici_121 = new DatiAnagrafici(); IdFiscaleIVA idFiscaleIVA_121 = new IdFiscaleIVA(); idFiscaleIVA_121.IdPaese = "IT"; idFiscaleIVA_121.IdCodice = "01234567890"; datiAnagrafici_121.IdFiscaleIVA = idFiscaleIVA_121; datiAnagrafici_121.CodiceFiscale = ""; Anagrafica anagrafica_121 = new Anagrafica(); anagrafica_121.Denominazione = "SOCIETA' ALPHA SRL"; anagrafica_121.Nome = ""; anagrafica_121.Cognome = ""; anagrafica_121.Titolo = ""; anagrafica_121.CodEORI = ""; datiAnagrafici_121.Anagrafica = anagrafica_121; datiAnagrafici_121.AlboProfessionale = ""; datiAnagrafici_121.ProvinciaAlbo = ""; datiAnagrafici_121.NumeroIscrizioneAlbo = ""; datiAnagrafici_121.DataIscrizioneAlbo = ""; datiAnagrafici_121.RegimeFiscale = "RF19"; cedentePrestatore.DatiAnagrafici = datiAnagrafici_121; Sede sede_122 = new Sede(); sede_122.Indirizzo = "VIALE ROMA"; sede_122.NumeroCivico = "543"; sede_122.CAP = "07100"; sede_122.Comune = "SASSARI"; sede_122.Provincia = "SS"; sede_122.Nazione = "IT"; cedentePrestatore.Sede = sede_122; StabileOrganizzazione stabileOrganizzazione_123 = new StabileOrganizzazione(); stabileOrganizzazione_123.Indirizzo = ""; stabileOrganizzazione_123.NumeroCivico = ""; stabileOrganizzazione_123.CAP = ""; stabileOrganizzazione_123.Comune = ""; stabileOrganizzazione_123.Provincia = ""; stabileOrganizzazione_123.Nazione = ""; cedentePrestatore.StabileOrganizzazione = stabileOrganizzazione_123; IscrizioneREA iscrizioneREA_124 = new IscrizioneREA(); iscrizioneREA_124.Ufficio = ""; iscrizioneREA_124.NumeroREA = ""; iscrizioneREA_124.CapitaleSociale = ""; iscrizioneREA_124.SocioUnico = ""; iscrizioneREA_124.StatoLiquidazione = ""; cedentePrestatore.IscrizioneREA = iscrizioneREA_124; Contatti contatti_125 = new Contatti(); contatti_125.Telefono = ""; contatti_125.Fax = ""; contatti_125.Email = ""; cedentePrestatore.Contatti = contatti_125; cedentePrestatore.RiferimentoAmministrazione = ""; overviewHeader.CedentePrestatore = cedentePrestatore; RappresentanteFiscale rappresentanteFiscale = new RappresentanteFiscale(); DatiAnagrafici datiAnagrafici_131 = new DatiAnagrafici(); IdFiscaleIVA idFiscaleIVA_131 = new IdFiscaleIVA(); idFiscaleIVA_131.IdPaese = ""; idFiscaleIVA_131.IdPaese = ""; datiAnagrafici_131.IdFiscaleIVA = idFiscaleIVA_131; datiAnagrafici_131.CodiceFiscale = ""; Anagrafica anagrafica_131 = new Anagrafica(); anagrafica_131.Denominazione = ""; anagrafica_131.Nome = ""; anagrafica_131.Cognome = ""; anagrafica_131.Titolo = ""; anagrafica_131.CodEORI = ""; datiAnagrafici_131.Anagrafica = anagrafica_131; rappresentanteFiscale.DatiAnagrafici = datiAnagrafici_131; overviewHeader.RappresentanteFiscale = rappresentanteFiscale; CessionarioCommittente cessionarioCommittente = new CessionarioCommittente(); DatiAnagrafici datiAnagrafici_141 = new DatiAnagrafici(); IdFiscaleIVA idFiscaleIVA_141 = new IdFiscaleIVA(); idFiscaleIVA_141.IdPaese = ""; idFiscaleIVA_141.IdCodice = ""; datiAnagrafici_141.IdFiscaleIVA = idFiscaleIVA_141; datiAnagrafici_141.CodiceFiscale = "09876543210"; Anagrafica anagrafica_141 = new Anagrafica(); anagrafica_141.Denominazione = "AMMINISTRAZIONE BETA"; anagrafica_141.Nome = ""; anagrafica_141.Cognome = ""; anagrafica_141.Titolo = ""; anagrafica_141.CodEORI = ""; datiAnagrafici_141.Anagrafica = anagrafica_141; cessionarioCommittente.DatiAnagrafici = datiAnagrafici_141; Sede sede_142 = new Sede(); sede_142.Indirizzo = "VIA TORINO"; sede_142.NumeroCivico = "38"; sede_142.CAP = "00145"; sede_142.Comune = "ROMA"; sede_142.Provincia = "RM"; sede_142.Nazione = "IT"; cessionarioCommittente.Sede = sede_142; StabileOrganizzazione stabileOrganiccazione_143 = new StabileOrganizzazione(); stabileOrganiccazione_143.Indirizzo = ""; stabileOrganiccazione_143.NumeroCivico = ""; stabileOrganiccazione_143.CAP = ""; stabileOrganiccazione_143.Comune = ""; stabileOrganiccazione_143.Provincia = ""; stabileOrganiccazione_143.Nazione = ""; cessionarioCommittente.StabileOrganizzazione = stabileOrganiccazione_143; RappresentanteFiscale rappresentanteFiscale_144 = new RappresentanteFiscale(); DatiAnagrafici datiAnagrafici_144 = new DatiAnagrafici(); IdFiscaleIVA idFiscaleIVA_144 = new IdFiscaleIVA(); idFiscaleIVA_144.IdPaese = ""; idFiscaleIVA_144.IdCodice = ""; datiAnagrafici_144.IdFiscaleIVA = idFiscaleIVA_144; Anagrafica anagrafica_144 = new Anagrafica(); anagrafica_144.Denominazione = ""; anagrafica_144.Nome = ""; anagrafica_144.Cognome = ""; datiAnagrafici_144.Anagrafica = anagrafica_144; rappresentanteFiscale_144.DatiAnagrafici = datiAnagrafici_144; overviewHeader.CessionarioCommittente = cessionarioCommittente; TerzoIntermediarioOSoggettoEmittente terzoIntermediarioOSoggettoEmittente = new TerzoIntermediarioOSoggettoEmittente(); DatiAnagrafici datiAnagrafici_151 = new DatiAnagrafici(); IdFiscaleIVA idFiscaleIVA_151 = new IdFiscaleIVA(); idFiscaleIVA_151.IdPaese = ""; idFiscaleIVA_151.IdCodice = ""; datiAnagrafici_151.IdFiscaleIVA = idFiscaleIVA_151; datiAnagrafici_151.CodiceFiscale = ""; datiAnagrafici_151.CodiceFiscale = ""; Anagrafica anagrafica_151 = new Anagrafica(); anagrafica_151.Denominazione = ""; anagrafica_151.Nome = ""; anagrafica_151.Cognome = ""; anagrafica_151.Titolo = ""; anagrafica_151.CodEORI = ""; datiAnagrafici_151.Anagrafica = anagrafica_151; overviewHeader.TerzoIntermediarioOSoggettoEmittente = terzoIntermediarioOSoggettoEmittente; overviewHeader.SoggettoEmittente = ""; FatturaElettronicaBody overviewBody = new FatturaElettronicaBody(); DatiGenerali datiGenerali = new DatiGenerali(); DatiGeneraliDocumento datiGeneraliDocumento = new DatiGeneraliDocumento(); datiGeneraliDocumento.TipoDocumento = "TD01"; datiGeneraliDocumento.Divisa = "EUR"; datiGeneraliDocumento.Data = "2017-01-18"; datiGeneraliDocumento.Numero = "123"; DatiRitenuta datiRitenuta = new DatiRitenuta(); datiRitenuta.TipoRitenuta = ""; datiRitenuta.ImportoRitenuta = ""; datiRitenuta.AliquotaRitenuta = ""; datiRitenuta.CausalePagamento = ""; datiGeneraliDocumento.DatiRitenuta = datiRitenuta; DatiBollo datiBollo = new DatiBollo(); datiBollo.BolloVirtuale = ""; datiBollo.ImportoBollo = ""; datiGeneraliDocumento.DatiBollo = datiBollo; DatiCassaPrevidenziale datiCassaPrevidenziale = new DatiCassaPrevidenziale(); List <DatiCassaPrevidenziale> datiCassaPrevidenzialeList = new List <DatiCassaPrevidenziale>(); datiCassaPrevidenziale.TipoCassa = ""; datiCassaPrevidenziale.AlCassa = ""; datiCassaPrevidenziale.ImportoContributoCassa = ""; datiCassaPrevidenziale.ImponibileCassa = ""; datiCassaPrevidenziale.AliquotaIVA = ""; datiCassaPrevidenziale.Ritenuta = ""; datiCassaPrevidenziale.Natura = ""; datiCassaPrevidenziale.RiferimentoAmministrazione = ""; datiCassaPrevidenzialeList.Add(datiCassaPrevidenziale); datiGeneraliDocumento.DatiCassaPrevidenziale = datiCassaPrevidenzialeList; ScontoMaggiorazione scontoMaggiorazione = new ScontoMaggiorazione(); List <ScontoMaggiorazione> scontoMaggiorazioneList = new List <ScontoMaggiorazione>(); scontoMaggiorazione.Tipo = ""; scontoMaggiorazione.Percentuale = ""; scontoMaggiorazione.Importo = ""; scontoMaggiorazioneList.Add(scontoMaggiorazione); datiGeneraliDocumento.ScontoMaggiorazione = scontoMaggiorazioneList; datiGeneraliDocumento.ImportoTotaleDocumento = ""; datiGeneraliDocumento.Arrotondamento = ""; datiGeneraliDocumento.Causale = ""; datiGeneraliDocumento.Art73 = ""; datiGenerali.DatiGeneraliDocumento = datiGeneraliDocumento; DatiOrdineAcquisto datiOrdineAcquisto = new DatiOrdineAcquisto(); List <DatiOrdineAcquisto> datiOrdineAcquistoList = new List <DatiOrdineAcquisto>(); datiOrdineAcquisto.RiferimentoNumeroLinea = "1"; datiOrdineAcquisto.IdDocumento = "66685"; datiOrdineAcquisto.Data = "2016-09-0"; datiOrdineAcquisto.NumItem = ""; datiOrdineAcquisto.CodiceCommessaConvenzione = ""; datiOrdineAcquisto.CodiceCUP = ""; datiOrdineAcquisto.CodiceCIG = ""; datiOrdineAcquistoList.Add(datiOrdineAcquisto); datiGenerali.DatiOrdineAcquisto = datiOrdineAcquistoList; DatiContratto datiContratto = new DatiContratto(); List <DatiContratto> datiContrattoList = new List <DatiContratto>(); datiContratto.RiferimentoNumeroLinea = ""; datiContratto.IdDocumento = ""; datiContratto.Data = ""; datiContratto.NumItem = ""; datiContratto.CodiceCommessaConvenzione = ""; datiContratto.CodiceCUP = ""; datiContratto.CodiceCIG = ""; datiContrattoList.Add(datiContratto); datiGenerali.DatiContratto = datiContrattoList; DatiConvenzione datiConvenzione = new DatiConvenzione(); List <DatiConvenzione> datiConvenzioneList = new List <DatiConvenzione>(); datiConvenzione.RiferimentoNumeroLinea = ""; datiConvenzione.IdDocumento = ""; datiConvenzione.Data = ""; datiConvenzione.NumItem = ""; datiConvenzione.CodiceCommessaConvenzione = ""; datiConvenzione.CodiceCUP = ""; datiConvenzione.CodiceCIG = ""; datiConvenzioneList.Add(datiConvenzione); datiGenerali.DatiConvenzione = datiConvenzioneList; DatiRicezione datiRicezione = new DatiRicezione(); List <DatiRicezione> datiRicezioneList = new List <DatiRicezione>(); datiRicezione.RiferimentoNumeroLinea = ""; datiRicezione.IdDocumento = ""; datiRicezione.Data = ""; datiRicezione.NumItem = ""; datiRicezione.CodiceCommessaConvenzione = ""; datiRicezione.CodiceCUP = ""; datiRicezione.CodiceCIG = ""; datiRicezioneList.Add(datiRicezione); datiGenerali.DatiRicezione = datiRicezioneList; DatiFattureCollegate datiFattureCollegate = new DatiFattureCollegate(); List <DatiFattureCollegate> datiFattureCollegateList = new List <DatiFattureCollegate>(); datiFattureCollegate.RiferimentoNumeroLinea = ""; datiFattureCollegate.IdDocumento = ""; datiFattureCollegate.Data = ""; datiFattureCollegate.NumItem = ""; datiFattureCollegate.CodiceCommessaConvenzione = ""; datiFattureCollegate.CodiceCUP = ""; datiFattureCollegate.CodiceCIG = ""; datiFattureCollegateList.Add(datiFattureCollegate); datiGenerali.DatiFattureCollegate = datiFattureCollegateList; DatiSAL datiSAL = new DatiSAL(); List <DatiSAL> datiSALList = new List <DatiSAL>(); datiSAL.RiferimentoFase = ""; datiSALList.Add(datiSAL); datiGenerali.DatiSAL = datiSALList; DatiDDT datiDDT = new DatiDDT(); List <DatiDDT> datiDDTList = new List <DatiDDT>(); datiDDT.NumeroDDT = ""; datiDDT.DataDDT = ""; datiDDT.RiferimentoNumeroLinea = ""; datiDDTList.Add(datiDDT); datiGenerali.DatiDDT = datiDDTList; DatiTrasporto datiTrasporto = new DatiTrasporto(); DatiAnagraficiVettore datiAnagraficiVettore = new DatiAnagraficiVettore(); IdFiscaleIVA idFiscaleIva = new IdFiscaleIVA(); idFiscaleIva.IdCodice = ""; idFiscaleIva.IdPaese = ""; datiAnagraficiVettore.IdFiscaleIVA = idFiscaleIva; datiAnagraficiVettore.CodiceFiscale = ""; Anagrafica anagraficaVettore = new Anagrafica(); anagraficaVettore.Denominazione = ""; anagraficaVettore.Nome = ""; anagraficaVettore.Cognome = ""; anagraficaVettore.Titolo = ""; anagraficaVettore.CodEORI = ""; datiAnagraficiVettore.Anagrafica = anagraficaVettore; datiAnagraficiVettore.NumeroLicenzaGuida = ""; datiTrasporto.MezzoTrasporto = ""; datiTrasporto.CausaleTrasporto = ""; datiTrasporto.NumeroColli = ""; datiTrasporto.Descrizione = ""; datiTrasporto.UnitaMisuraPeso = ""; datiTrasporto.PesoLordo = ""; datiTrasporto.PesoNetto = ""; datiTrasporto.DataOraRitiro = ""; datiTrasporto.DataInizioTrasporto = ""; datiTrasporto.TipoResa = ""; IndirizzoResa indirizzoResa = new IndirizzoResa(); indirizzoResa.Indirizzo = ""; indirizzoResa.NumeroCivico = ""; indirizzoResa.CAP = ""; indirizzoResa.Comune = ""; indirizzoResa.Provincia = ""; indirizzoResa.Nazione = ""; datiTrasporto.IndirizzoResa = indirizzoResa; datiTrasporto.DataOraConsegna = ""; datiGenerali.DatiTrasporto = datiTrasporto; FatturaPrincipale fatturaPrincipale = new FatturaPrincipale(); fatturaPrincipale.NumeroFatturaPrincipale = ""; fatturaPrincipale.DataFatturaPrincipale = ""; datiGenerali.FatturaPrincipale = fatturaPrincipale; overviewBody.DatiGenerali = datiGenerali; DatiBeniServizi datiBeniServizi = new DatiBeniServizi(); DettaglioLinee dettaglioLinee = new DettaglioLinee(); List <DettaglioLinee> dettaglioLineeList = new List <DettaglioLinee>(); dettaglioLinee.NumeroLinea = ""; dettaglioLinee.TipoCessionePrestazione = ""; CodiceArticolo codiceArticolo = new CodiceArticolo(); codiceArticolo.CodiceTipo = ""; codiceArticolo.CodiceValore = ""; dettaglioLinee.CodiceArticolo = codiceArticolo; dettaglioLinee.Descrizione = ""; dettaglioLinee.Quantita = ""; dettaglioLinee.UnitaMisura = ""; dettaglioLinee.DataInizioPeriodo = ""; dettaglioLinee.DataFinePeriodo = ""; dettaglioLinee.PrezzoUnitario = ""; ScontoMaggiorazione scontoMaggiorazione_221 = new ScontoMaggiorazione(); scontoMaggiorazione_221.Tipo = ""; scontoMaggiorazione_221.Percentuale = ""; scontoMaggiorazione_221.Importo = ""; dettaglioLinee.ScontoMaggiorazione = scontoMaggiorazione_221; dettaglioLinee.PrezzoTotale = ""; dettaglioLinee.AliquotaIVA = ""; dettaglioLinee.Ritenuta = ""; dettaglioLinee.Natura = ""; dettaglioLinee.RiferimentoAmministrazione = ""; AltriDatiGestionali altriDatiGestionali = new AltriDatiGestionali(); altriDatiGestionali.TipoDato = ""; altriDatiGestionali.RiferimentoTesto = ""; altriDatiGestionali.RiferimentoNumero = ""; altriDatiGestionali.RiferimentoData = ""; dettaglioLinee.AltriDatiGestionali = altriDatiGestionali; dettaglioLineeList.Add(dettaglioLinee); datiBeniServizi.DettaglioLinee = dettaglioLineeList; DatiRiepilogo datiRiepilogo = new DatiRiepilogo(); List <DatiRiepilogo> datiRiepilogoList = new List <DatiRiepilogo>(); datiRiepilogo.AliquotaIVA = ""; datiRiepilogo.Natura = ""; datiRiepilogo.SpeseAccessorie = ""; datiRiepilogo.Arrotondamento = ""; datiRiepilogo.ImponibileImporto = ""; datiRiepilogo.Imposta = ""; datiRiepilogo.EsigibilitaIVA = ""; datiRiepilogo.RiferimentoNormativo = ""; datiRiepilogoList.Add(datiRiepilogo); datiBeniServizi.DatiRiepilogo = datiRiepilogoList; overviewBody.DatiBeniServizi = datiBeniServizi; DatiVeicoli datiVeicoli = new DatiVeicoli(); datiVeicoli.Data = ""; datiVeicoli.TotalePercorso = ""; overviewBody.DatiVeicoli = datiVeicoli; DatiPagamento datiPagamento = new DatiPagamento(); datiPagamento.CondizioniPagamento = ""; DettaglioPagamento dettaglioPagamento = new DettaglioPagamento(); dettaglioPagamento.Beneficiario = ""; dettaglioPagamento.ModalitaPagamento = ""; dettaglioPagamento.DataRiferimentoTerminiPagamento = ""; dettaglioPagamento.GiorniTerminiPagamento = ""; dettaglioPagamento.DataScadenzaPagamento = ""; dettaglioPagamento.ImportoPagamento = ""; dettaglioPagamento.CodUfficioPostale = ""; dettaglioPagamento.CognomeQuietanzante = ""; dettaglioPagamento.NomeQuietanzante = ""; dettaglioPagamento.CFQuietanzante = ""; dettaglioPagamento.TitoloQuietanzante = ""; dettaglioPagamento.IstitutoFinanziario = ""; dettaglioPagamento.IBAN = ""; dettaglioPagamento.ABI = ""; dettaglioPagamento.CAB = ""; dettaglioPagamento.BIC = ""; dettaglioPagamento.ScontoPagamentoAnticipato = ""; dettaglioPagamento.DataLimitePagamentoAnticipato = ""; dettaglioPagamento.PenalitaPagamentiRitardati = ""; dettaglioPagamento.DataDecorrenzaPenale = ""; dettaglioPagamento.CodicePagamento = ""; datiPagamento.DettaglioPagamento = dettaglioPagamento; overviewBody.DatiPagamento = datiPagamento; Allegati allegati = new Allegati(); allegati.NomeAttachment = ""; allegati.AlgoritmoCompressione = ""; allegati.FormatoAttachment = ""; allegati.DescrizioneAttachment = ""; allegati.Attachment = ""; overviewBody.Allegati = allegati; nodoPrincipale.FatturaElettronicaHeader = overviewHeader; nodoPrincipale.FatturaElettronicaBody = overviewBody; XmlRootAttribute XmlRoot = new XmlRootAttribute(); XmlRoot.Namespace = "http://www.fatturapa.gov.it/sdi/fatturapa/v1.2"; XmlAttributes myxmlAttribute = new XmlAttributes(); myxmlAttribute.XmlRoot = XmlRoot; XmlAttributeOverrides xmlAttributeOverrides = new XmlAttributeOverrides(); xmlAttributeOverrides.Add(typeof(FatturaElettronicaXMLNodes), myxmlAttribute); XmlAttributes emptyNsAttribute = new XmlAttributes(); XmlElementAttribute xElement1 = new XmlElementAttribute(); xElement1.Namespace = ""; emptyNsAttribute.XmlElements.Add(xElement1); xmlAttributeOverrides.Add(typeof(FatturaElettronicaXMLNodes), "FatturaElettronicaHeader", emptyNsAttribute); xmlAttributeOverrides.Add(typeof(FatturaElettronicaXMLNodes), "FatturaElettronicaBody", emptyNsAttribute); nodoPrincipale.versione = "FPA12"; XmlSerializer ser = new XmlSerializer(nodoPrincipale.GetType(), xmlAttributeOverrides); ser = new XmlSerializer(nodoPrincipale.GetType(), new XmlRootAttribute("pX")); XmlSerializerNamespaces ns = new XmlSerializerNamespaces(); ns.Add("ds", "http://www.w3.org/2000/09/xmldsig#"); ns.Add("p", "http://ivaservizi.agenziaentrate.gov.it/docs/xsd/fatture/v1.2"); ns.Add("xsi", "http://www.w3.org/2001/XMLSchema-instance"); var path = percorso + nome_file; System.IO.FileStream file = System.IO.File.Create(path); ser.Serialize(new System.IO.StreamWriter(file, new System.Text.UTF8Encoding()), nodoPrincipale, ns); file.Close(); string delimiterToBeReplaced = "pX"; string newDelimiter = "p:FatturaElettronica"; string contents = System.IO.File.ReadAllText(path); contents = contents.Replace(delimiterToBeReplaced, newDelimiter); System.IO.File.WriteAllText(path, contents); esito = true; } catch (Exception ex) { string eccezione = ex.ToString(); return(esito); } return(esito); }