private void LanzarConsulta() { // Realizamos la consulta de las facturas en la AEAT Wsd.GetOperIntracom(_PetOperIntraEnviadas); // Muestro el xml de respuesta recibido de la AEAT en el web browser FormXmlViewer frmXmlViewer = new FormXmlViewer { Path = Settings.Current.InboxPath + _PetOperIntraEnviadas.GetReceivedFileName() }; //frmXmlViewer.ShowDialog(); try { // Obtengo la respuesta de la consulta de facturas recibidas del archivo de respuesta de la AEAT. RespuestaConsultaLRDetOperIntracomunitarias respuesta = new Envelope(frmXmlViewer.Path).Body.RespuestaConsultaLRDetOperIntracomunitarias; if (respuesta == null) { SoapFault msgError = new Envelope(frmXmlViewer.Path).Body.RespuestaError; if (msgError != null) { MessageBox.Show(msgError.FaultDescription, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } } // Tenemos que recorrernos la respuesta y rellenar el datagrid con los datos de cada factura. grdInvoices.Rows.Clear(); if (respuesta.ResultadoConsulta == "ConDatos") { foreach (var invoice in respuesta.RegistroRCLRDetOperIntracom) { System.Drawing.Icon _marcaFact = MSeniorSII.Properties.Resources.Tag_Ok; if (invoice.EstadoFactura.EstadoRegistro == "Anulada") { _marcaFact = MSeniorSII.Properties.Resources.Tag_Delete; } grdInvoices.Rows.Add(invoice.IDFactura.NumSerieFacturaEmisor, invoice.IDFactura.FechaExpedicionFacturaEmisor, invoice.OperacionIntracomunitaria.OperacionIntracom.TipoOperacion, invoice.OperacionIntracomunitaria.OperacionIntracom.ClaveDeclarado, invoice.OperacionIntracomunitaria.OperacionIntracom.DescripcionBienes, invoice, _marcaFact, invoice.DatosPresentacion.TimestampPresentacion, invoice.EstadoFactura.TimestampUltimaModificacion); } } } catch (Exception ex) { string _msgError = "Error: " + ex.Message; MessageBox.Show(_msgError, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } txFechaBusqueda.Focus(); }
private void btBuscaFacts_Click(object sender, EventArgs e) { BindModelTitular(); BindModelBusqueda(); // Realizamos la consulta de las facturas en la AEAT Wsd.GetOperIntracom(_PetOperIntraEnviadas); // Muestro el xml de respuesta recibido de la AEAT en el web browser FormXmlViewer frmXmlViewer = new FormXmlViewer { Path = Settings.Current.InboxPath + _PetOperIntraEnviadas.GetReceivedFileName() }; //frmXmlViewer.ShowDialog(); try { // Obtengo la respuesta de la consulta de facturas recibidas del archivo de respuesta de la AEAT. RespuestaConsultaLRDetOperIntracomunitarias respuesta = new Envelope(frmXmlViewer.Path).Body.RespuestaConsultaLRDetOperIntracomunitarias; if (respuesta == null) { DialogResult resultMsg; string _msg = "Se ha recibido una respuesta inesperada. Pulse 'Aceptar', si quiere revisarla"; resultMsg = MessageBox.Show(_msg, "Error", MessageBoxButtons.OKCancel, MessageBoxIcon.Error); if (resultMsg == DialogResult.OK) { frmXmlViewer.ShowDialog(); } return; } // Tenemos que recorrernos la respuesta y rellenar el datagrid con los datos de cada factura. grdInvoices.Rows.Clear(); if (respuesta.ResultadoConsulta == "ConDatos") { foreach (var invoice in respuesta.RegistroRCLRDetOperIntracom) { System.Drawing.Icon _marcaFact = MSeniorSII.Properties.Resources.Tag_Ok; if (invoice.EstadoFactura.EstadoRegistro == "Anulada") { _marcaFact = MSeniorSII.Properties.Resources.Tag_Delete; } grdInvoices.Rows.Add(invoice.IDFactura.NumSerieFacturaEmisor, invoice.IDFactura.FechaExpedicionFacturaEmisor, invoice.OperacionIntracomunitaria.OperacionIntracom.TipoOperacion, invoice.OperacionIntracomunitaria.OperacionIntracom.ClaveDeclarado, invoice.OperacionIntracomunitaria.OperacionIntracom.DescripcionBienes, invoice, _marcaFact, invoice.DatosPresentacion.TimestampPresentacion, invoice.EstadoFactura.TimestampUltimaModificacion); } } } catch (Exception ex) { MessageBox.Show(ex.Message); } txFechaBusqueda.Focus(); }