2 using System.Collections.Generic;
3 using System.ComponentModel;
28 #region Propiedades privadas 31 private Form _oForm = null;
32 private bool _lValidarMensajeServicio =
true;
37 private bool _lEsModeloSII
39 get {
return _oModeloFiscalLibros.
_Pantalla ==
"SII"; }
42 #endregion Propiedades privadas 44 #region Propiedades públicas 52 return _oModeloFiscalLibros;
56 if (_oModeloFiscalLibros != value && value != null)
58 _oModeloFiscalLibros = value;
61 SubscripcionEventos();
66 #endregion Propiedades públicas 74 InitializeComponent();
78 gridRespuestas._FiltrarPorColumna =
true;
79 gridRespuestas.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.DisableResizing;
82 #endregion Constructor 84 #region Métodos privados 85 private void SubscripcionEventos()
90 gridRespuestas.RowPrePaint += GridRespuestas_RowPrePaint;
91 gridRespuestas.CellDoubleClick += GridRespuestas_CellDoubleClick;
92 gridRespuestas.CellClick += GridRespuestas_CellClick;
97 _oForm.Activated += Form_Activated;
103 private void CancelarSubscripcionEventos()
105 gridRespuestas.RowPrePaint -= GridRespuestas_RowPrePaint;
106 gridRespuestas.CellDoubleClick -= GridRespuestas_CellDoubleClick;
107 gridRespuestas.CellClick -= GridRespuestas_CellClick;
110 _oForm.Activated -= Form_Activated;
118 private void Form_Activated(
object sender, EventArgs e)
120 if (Disposing || IsDisposed)
123 if (_ofrmObserva != null)
124 _ofrmObserva.Focus();
126 if (_lValidarMensajeServicio)
127 ValidarMensajeServicio();
133 private void ValidarMensajeServicio()
135 _lValidarMensajeServicio =
false;
137 string lcMensajeServicio = ((ModeloFiscalLibrosBase)_oModeloFiscalLibros)._MensajeTiempoEsperaExcedidoServicio;
139 List<IRespuestaFactura> lstRespuestasServicio = _oModeloFiscalLibros.
_GeneradorXML.
_Resultado.ToList().AsEnumerable().Where(res => res._Error._Descripcion == lcMensajeServicio).ToList<
IRespuestaFactura>();
141 if (lstRespuestasServicio != null && lstRespuestasServicio.Count > 0)
142 FUNCTIONS._MessageBox(lcMensajeServicio, Text, MessageBoxButtons.OK, MessageBoxIcon.Error);
150 private void GridRespuestas_CellDoubleClick(
object sender, DataGridViewCellEventArgs e)
152 if (sender != null && e.RowIndex >= 0)
156 DataGridViewRow loRow = loGrid.Rows[e.RowIndex];
158 string lcColumnName = loGrid.CurrentCell.OwningColumn.Name;
160 if (lcColumnName ==
"_DescripcionIncidencia")
171 frmObserva.
_Titulo =
"Detalle de la incidencia";
172 frmObserva.
_Text = lcIncidencia;
185 private void GridRespuestas_CellClick(
object sender, DataGridViewCellEventArgs e)
187 if (sender != null && e.RowIndex >= 0)
191 DataGridViewRow loRow = loGrid.Rows[e.RowIndex];
193 string lcColumnName = loGrid.CurrentCell.OwningColumn.Name;
195 if (lcColumnName ==
"respuesta")
210 private void GridRespuestas_RowPrePaint(
object sender, DataGridViewRowPrePaintEventArgs e)
216 DataGridViewRow loRow = loGrid.Rows[e.RowIndex];
221 loGrid.Rows[e.RowIndex].DefaultCellStyle.ForeColor =
Color.Red;
228 private void Binding()
230 BindingSource ofilas =
new BindingSource();
232 _oModeloFiscalLibros.
_GeneradorXML.
_Resultado.ToList().AsEnumerable().Where(res=>res._Libro != null).ToList().ForEach(f => ofilas.Add(f));
234 gridRespuestas.DataSource = ofilas;
240 private void ConfigurarGrid()
243 int lnWidthFactura = TextRenderer.MeasureText(
new String(
'A', lnLongCol),
new System.Drawing.Font(
"Segoe UI", 9.5F)).Width;
245 gridRespuestas.AutoGenerateColumns =
false;
246 gridRespuestas.Columns.Clear();
252 ldgtbColLibro.Name =
"_Titulo";
253 ldgtbColLibro.DataPropertyName =
"_Titulo";
254 ldgtbColLibro.HeaderText =
"Libro";
255 ldgtbColLibro.ValueType = typeof(
string);
256 ldgtbColLibro.Visible =
true;
257 ldgtbColLibro._NoParar =
true;
258 ldgtbColLibro.ToolTipText =
"Libro";
259 ldgtbColLibro.Width = 150;
260 ldgtbColLibro.ReadOnly =
true;
261 gridRespuestas.Columns.Add(ldgtbColLibro);
265 if (Convert.ToBoolean(_oModeloFiscalLibros?._DobleTerritorio))
269 ldgtbColTerritorio.Name =
"_Territorio";
270 ldgtbColTerritorio.DataPropertyName =
"_Territorio";
271 ldgtbColTerritorio.HeaderText =
"Territorio";
272 ldgtbColTerritorio.ValueType = typeof(
string);
273 ldgtbColTerritorio.Visible =
true;
274 ldgtbColTerritorio._NoParar =
true;
275 ldgtbColTerritorio.ToolTipText =
"Territorio";
276 ldgtbColTerritorio.Width = 60;
277 ldgtbColTerritorio.ReadOnly =
true;
278 gridRespuestas.Columns.Add(ldgtbColTerritorio);
284 ldgtbColFactura.Name =
"_Factura";
285 ldgtbColFactura.DataPropertyName =
"_Factura";
286 ldgtbColFactura.HeaderText =
"Factura";
287 ldgtbColFactura.ValueType = typeof(
string);
288 ldgtbColFactura._NoParar =
true;
289 ldgtbColFactura.ToolTipText =
"Factura";
290 ldgtbColFactura.Width = lnWidthFactura;
291 ldgtbColFactura.ReadOnly =
true;
292 gridRespuestas.Columns.Add(ldgtbColFactura);
297 ldgtbColFactura.Name =
"_FechaExpedicion";
298 ldgtbColFactura.DataPropertyName =
"_FechaExpedicion";
299 ldgtbColFactura.HeaderText =
"Fecha";
300 ldgtbColFactura.ValueType = typeof(DateTime);
301 ldgtbColFactura._NoParar =
true;
302 ldgtbColFactura.ToolTipText =
"Fecha";
303 ldgtbColFactura.Width = 80;
304 ldgtbColFactura.ReadOnly =
true;
305 gridRespuestas.Columns.Add(ldgtbColFactura);
310 ldgtbColTipoEnvio.Name =
"_DescripcionEnvio";
311 ldgtbColTipoEnvio.DataPropertyName =
"_DescripcionEnvio";
312 ldgtbColTipoEnvio.HeaderText =
"Tipo envío";
313 ldgtbColTipoEnvio.ValueType = typeof(
string);
314 ldgtbColTipoEnvio.Visible =
true;
315 ldgtbColTipoEnvio._NoParar =
true;
316 ldgtbColTipoEnvio.ToolTipText =
"Tipo envío";
317 ldgtbColTipoEnvio.Width = 80;
318 ldgtbColTipoEnvio.ReadOnly =
true;
319 gridRespuestas.Columns.Add(ldgtbColTipoEnvio);
324 ldgtbColEstado.Name =
"_DescripcionEstado";
325 ldgtbColEstado.DataPropertyName =
"_DescripcionEstado";
326 ldgtbColEstado.HeaderText =
"Estado";
327 ldgtbColEstado.ValueType = typeof(
string);
328 ldgtbColEstado.Visible =
true;
329 ldgtbColEstado._NoParar =
true;
330 ldgtbColEstado.ToolTipText =
"Estado";
331 ldgtbColEstado.Width = 80;
332 ldgtbColEstado.ReadOnly =
true;
333 gridRespuestas.Columns.Add(ldgtbColEstado);
338 ldgtbColMasInfo.Name =
"_MasInformacion";
339 ldgtbColMasInfo.DataPropertyName =
"_MasInformacion";
340 ldgtbColMasInfo.HeaderText =
"Información adicional";
341 ldgtbColMasInfo.ValueType = typeof(
string);
342 ldgtbColMasInfo._NoParar =
true;
343 ldgtbColMasInfo.ToolTipText =
"Más información";
344 ldgtbColMasInfo.Width = 170;
345 ldgtbColMasInfo.ReadOnly =
true;
346 gridRespuestas.Columns.Add(ldgtbColMasInfo);
351 ldgtbColIncidencia.Name =
"_DescripcionIncidencia";
352 ldgtbColIncidencia.DataPropertyName =
"_DescripcionIncidencia";
353 ldgtbColIncidencia.HeaderText =
"Incidencia";
354 ldgtbColIncidencia.ValueType = typeof(
string);
355 ldgtbColIncidencia._NoParar =
true;
356 ldgtbColIncidencia.ToolTipText =
"Incidencia";
357 ldgtbColIncidencia.AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill;
358 ldgtbColIncidencia.ReadOnly =
true;
359 gridRespuestas.Columns.Add(ldgtbColIncidencia);
366 ldgtbRespuesta.Name =
"respuesta";
367 ldgtbRespuesta.HeaderText =
"Respuesta";
369 ldgtbRespuesta._NoParar =
true;
370 ldgtbRespuesta.ToolTipText =
"Respuesta";
371 ldgtbRespuesta._Filtrar =
false;
372 ldgtbRespuesta.Width = 38;
373 ldgtbRespuesta.ReadOnly =
true;
374 ldgtbRespuesta.DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter;
376 gridRespuestas.Columns.Add(ldgtbRespuesta);
386 DataColumn loDataCol;
387 DataTable loDt =
new DataTable();
389 foreach (DataGridViewColumn loColumn
in gridRespuestas.Columns)
391 if (loColumn.Visible)
393 string lcColumName = $
"col{loColumn.Name.ToLower()}";
395 if (loColumn.ValueType == typeof(DateTime))
397 loDataCol =
new DataColumn(lcColumName, typeof(DateTime));
398 loDataCol.ExtendedProperties.Add(
"Mascara",
"dd/MM/yyyy");
402 loDataCol =
new DataColumn(lcColumName, typeof(
string));
405 loDataCol.Caption = loColumn.HeaderText;
406 loDt.Columns.Add(loDataCol);
410 foreach (DataGridViewRow loGridViewRow
in gridRespuestas.Rows)
412 DataRow loRow = loDt.NewRow();
414 foreach (DataColumn loCol
in loDt.Columns)
416 loRow[loCol.ColumnName] = loGridViewRow.Cells[loCol.ColumnName.Substring(3).ToLower()].Value;
419 loDt.Rows.Add(loRow);
425 #endregion Métodos privados EstadoAEATModelos _Estado
Estado : Pendiente, Generado o Enviado
string _Pantalla
Pantalla para la gestión de accesos
static System.Drawing.Bitmap icon_eye16
Busca un recurso adaptado de tipo System.Drawing.Bitmap.
Interfaz IRespuestaFactura
Clase de recurso fuertemente tipado, para buscar cadenas traducidas, etc.
KeyDiccionarioLenCampos
Clave del diccionario LenCampos
DataTable _GetResultado()
Devuelve un Datatable con los datos del grid
Base per a les columnes imagen estandar
Clase del objeto grid para Sage50
EstadoAEATModelos
Estado modelos
Clase de respuesta de la generación del XML
List< IRespuestaFactura > _Resultado
Resultado de la generación
Control de usuario para el resumen de envío
IGenerarXML _GeneradorXML
Generador XML
Presenta un datagridview con botones añadir y borrar tipo Mantegrid de Eurowin
Base per a les columnes estandar