/// <summary> /// Construye una nueva instancia de la clase QueryAeatLine. /// </summary> /// <param name="respuesta"></param> public QueryAeatInvoice(dynamic respuesta) { if (respuesta.DatosPresentacion != null) { CSV = respuesta.DatosPresentacion.CSV; } Lines = new List <QueryAeatInvoiceLine>(); EstadoFactura estado = respuesta.EstadoFactura; Estado = estado.EstadoRegistro; ExternStatus exStatus = (ExternStatus)Convert.ToInt32(estado.EstadoCuadre); EstadoCuadre = $"{exStatus}"; switch (respuesta.GetType().Name) { case "RegistroRCLRFacturasEmitidas": _RegistroRCLRFacturasEmitidas = (RegistroRCLRFacturasEmitidas)respuesta; Libro = "FE"; GetLinesFE(); break; case "RegistroRCLRFacturasRecibidas": _RegistroRCLRFacturasRecibidas = (RegistroRCLRFacturasRecibidas)respuesta; Libro = "FR"; GetLinesFR(); break; } }
private void MnViewXML_Click(object sender, EventArgs e) { // Generaremos el lote para poder dar de baja las facturas que se hayan seleccionado en el DataGrid. _LoteBajaFactEmitidas = new Batch(BatchActionKeys.DR, BatchActionPrefixes.BajaLR, BatchTypes.FacturasEmitidas); foreach (DataGridViewRow row in grdInvoices.SelectedRows) { _LoteBajaFactEmitidas.Titular = _Titular; ARInvoice _FactEmitidaBaja = new ARInvoice(); RegistroRCLRFacturasEmitidas _RegWrk = new RegistroRCLRFacturasEmitidas(); _RegWrk = (RegistroRCLRFacturasEmitidas)row.Cells[5].Value; // Sólo daremos de baja aquellas facturas cuyo estado sean correctas, que tras realizar varias pruebas, // las anuladas también las devuelve y al seleccionarlas se puede producir un error. if (_RegWrk.EstadoFactura.EstadoRegistro == "Correcta") { _FactEmitidaBaja.SellerParty = new Party { TaxIdentificationNumber = _RegWrk.IDFactura.IDEmisorFactura.NIF }; _FactEmitidaBaja.IssueDate = Convert.ToDateTime(_RegWrk.IDFactura.FechaExpedicionFacturaEmisor); _FactEmitidaBaja.InvoiceNumber = _RegWrk.IDFactura.NumSerieFacturaEmisor; _LoteBajaFactEmitidas.BatchItems.Add(_FactEmitidaBaja); } } try { string tmpath = Path.GetTempFileName(); // Genera el archivo xml y lo guarda en la ruta facilitada comno parámetro _LoteBajaFactEmitidas.GetXml(tmpath); FormXmlViewer frmXmlViewer = new FormXmlViewer { Path = tmpath }; frmXmlViewer.ShowDialog(); } catch (Exception ex) { string _msgError = "Error: " + ex.Message; MessageBox.Show(_msgError, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } }