Exemplo n.º 1
0
        /// <summary>
        /// Ejemplo de envío de un lote de facturas emitidas
        /// </summary>
        public void EnviarLoteFacturasEmitidas()
        {
            // Creamos un lote de factura recibidas
            ARInvoicesBatch LoteDeFacturasEmitidas =
                CreaLoteDeFacturasEmitidas();

            // Creo el sobre SOAP con el objeto XML a enviar a la AEAT
            Envelope envelope = LoteDeFacturasEmitidas.GetEnvelope();

            // Edito directamente el objeto XML
            FacturaExpedida facturaExpedida = envelope.Body.SuministroLRFacturasEmitidas.RegistroLRFacturasEmitidas[0].FacturaExpedida;

            facturaExpedida.Contraparte.IDOtro = new IDOtro
            {
                IDType     = "06",
                CodigoPais = "US",
                ID         = "NIF_EXTRANJERO"
            };


            // Realizamos el envío del SOBRE a la AEAT
            Wsd.Send(envelope);



            // Muestro el xml de respuesta recibido de la AEAT en el web browser
            webBrw.Navigate(Settings.Current.InboxPath +
                            LoteDeFacturasEmitidas.GetReceivedFileName());
        }
Exemplo n.º 2
0
        private void EnviaLoteEnCurso()
        {
            // Realizamos el envío del lote a la AEAT
            Wsd.SendFacturasEmitidas(_LoteDeFacturasEmitidas);

            // Muestro el xml de respuesta recibido de la AEAT en el web browser

            FormXmlViewer frmXmlViewer = new FormXmlViewer
            {
                Path = Settings.Current.InboxPath +
                _LoteDeFacturasEmitidas.GetReceivedFileName()
            };

            frmXmlViewer.ShowDialog();

            // Obtengo la respuesta de facturas recibidas del archivo de
            // respuesta de la AEAT.
            RespuestaLRF respuesta = new Envelope(frmXmlViewer.Path).Body.RespuestaLRFacturasEmitidas;

            if (respuesta == null)
            {
                DialogResult resultMsg;
                string _msgError = "Se ha recibido una respuesta inesperada. Pulse 'Aceptar', si quiere revisarla";
                resultMsg = MessageBox.Show(_msgError, "Error", MessageBoxButtons.OKCancel, MessageBoxIcon.Error);

                if (resultMsg == DialogResult.OK)
                    frmXmlViewer.ShowDialog();

                return;
            }

            foreach (DataGridViewRow row in grdInvoices.Rows) // Recorro las facturas enviadas
            {
                string numFra = row.Cells[0].Value.ToString();

                // Busco en las líneas de la respuesta el número de factura
                var linqQryFra = from respuestaFra in respuesta.RespuestaLinea
                                 where respuestaFra.IDFactura.NumSerieFacturaEmisor == numFra
                                 select respuestaFra;

                // Si el estado del registro es correcto lo marco como ok
                foreach (RespuestaLinea respuestaFra in linqQryFra)
                    if (respuestaFra.EstadoRegistro == "Correcto")
                        row.Cells[6].Value = MSeniorSII.Properties.Resources.circle_green;
                    else
                        row.Cells[6].Value = MSeniorSII.Properties.Resources.circle_red;


            }


            MessageBox.Show($"Estado del envío realizado a la AEAT: {respuesta.EstadoEnvio}.\nCódigo CVS: {respuesta.CSV}");

           

        }
Exemplo n.º 3
0
        /// <summary>
        /// Ejemplo de envío de un asiento resumen de facturas simplificadas
        /// </summary>
        public void EnviarAsientoResumenFacturasSimplificadas()
        {
            // Creamos un lote de factura recibidas
            ARInvoicesBatch asientoResumentFacturasSimplificadas =
                CreaAsientoResumenFacturasSimplificadas();

            // Realizamos el envío del lote a la AEAT
            Wsd.SendFacturasEmitidas(asientoResumentFacturasSimplificadas);

            // Muestro el xml de respuesta recibido de la AEAT en el web browser
            webBrw.Navigate(Settings.Current.InboxPath +
                            asientoResumentFacturasSimplificadas.GetReceivedFileName());
        }
Exemplo n.º 4
0
        private void EnviaLoteEnCurso()
        {
            // Realizamos el envío del lote a la AEAT
            Wsd.SendFacturasEmitidas(_LoteDeFacturasEmitidas);

            // Muestro el xml de respuesta recibido de la AEAT en el web browser

            FormXmlViewer frmXmlViewer = new FormXmlViewer
            {
                Path = Settings.Current.InboxPath +
                       _LoteDeFacturasEmitidas.GetReceivedFileName()
            };

            frmXmlViewer.ShowDialog();
        }