Пример #1
0
        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.
            _LoteBajaFactRecibidas = new APInvoicesDeleteBatch();

            foreach (DataGridViewRow row in grdInvoices.SelectedRows)
            {
                _LoteBajaFactRecibidas.Titular = _Titular;

                APInvoice _FactRecibidaBaja           = new APInvoice();
                RegistroRCLRFacturasRecibidas _regWrk = new RegistroRCLRFacturasRecibidas();

                _regWrk = (RegistroRCLRFacturasRecibidas)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")
                {
                    _FactRecibidaBaja.SellerParty = new Party
                    {
                        PartyName = _regWrk.FacturaRecibida.Contraparte.NombreRazon,
                        TaxIdentificationNumber = _regWrk.FacturaRecibida.Contraparte.NIF
                    };

                    if (_regWrk.FacturaRecibida.Contraparte.IDOtro != null)
                    {
                        _FactRecibidaBaja.CountryCode = _regWrk.FacturaRecibida.Contraparte.IDOtro.CodigoPais;
                    }

                    _FactRecibidaBaja.IssueDate     = Convert.ToDateTime(_regWrk.IDFactura.FechaExpedicionFacturaEmisor);
                    _FactRecibidaBaja.InvoiceNumber = _regWrk.IDFactura.NumSerieFacturaEmisor;

                    _LoteBajaFactRecibidas.APInvoices.Add(_FactRecibidaBaja);
                }
            }

            try
            {
                string tmpath = Path.GetTempFileName();

                // Genera el archivo xml y lo guarda en la ruta facilitada comno parámetro
                _LoteBajaFactRecibidas.GetXml(tmpath);

                FormXmlViewer frmXmlViewer = new FormXmlViewer
                {
                    Path = tmpath
                };

                frmXmlViewer.ShowDialog();
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
        }
Пример #2
0
        // Ejemplo de eliminar una factura emitida comunicada anteriormente al SII
        public void EliminarFacturaRecibida()
        {
            // Crea un lote de facturas recibidas envíadas al SII con anterioridad a eliminar
            APInvoicesDeleteBatch loteFacturasRecibidasEliminar = CrearLoteFacturaRecibidasEliminar();

            // Envíamos lote con las peticiones de borrado
            Wsd.DeleteFacturasRecibidas(loteFacturasRecibidasEliminar);


            // Mostramos el xml de respuesta de la AEAT en el web browser
            webBrw.Navigate(Settings.Current.InboxPath +
                            loteFacturasRecibidasEliminar.GetReceivedFileName());
        }
Пример #3
0
        /// <summary>
        /// Inicia entorno.
        /// </summary>
        private void Inizialize()
        {
            _PetFactRecEnviadas    = new APInvoicesQuery();
            _LoteBajaFactRecibidas = new APInvoicesDeleteBatch();

            _Titular = new Party();

            _PetFactRecEnviadas.Titular = _Titular;

            ResetFactura();

            // Inicializamos el campo para el país, en el caso de que sea un NIF extranjero.
            lbCountry.Text = "";

            //BindModelBusqueda();
        }
Пример #4
0
        // Crea un lote de factura recibidas a eliminar
        private static APInvoicesDeleteBatch CrearLoteFacturaRecibidasEliminar()
        {
            // Titular del lote
            Party titular = new Party()
            {
                TaxIdentificationNumber =
                    "B12959755",
                PartyName = "IRENE SOLUTIONS SL"
            };


            APInvoicesDeleteBatch loteFacturasEmitidasEliminar = new APInvoicesDeleteBatch
            {
                Titular = titular
            };


            // Creamos la primera factura enviada a eliminar
            APInvoice primeraFacturaEliminar = new APInvoice
            {
                IssueDate   = new DateTime(2017, 1, 15),
                PostingDate = new DateTime(2017, 1, 15), // Fecha de contabilización
                SellerParty = new Party()                // Acreedor (Emisor factura)
                {
                    TaxIdentificationNumber =
                        "B12756474",
                    PartyName = "MAC ORGANIZACION SL"
                },
                BuyerParty    = titular, // Comprador
                InvoiceNumber = "00001"  // Número de factura
            };


            // Añadimos la factura a eliminar al lote
            loteFacturasEmitidasEliminar.APInvoices.Add(primeraFacturaEliminar);

            return(loteFacturasEmitidasEliminar);
        }