3 using System.Collections.Generic;
4 using System.ComponentModel;
23 #region Propiedades privadas 24 private bool _lReadOnly =
false;
25 private bool _lSustitutiva =
false;
26 private bool _lComplementaria =
false;
27 private bool _lEjercicio_Partido =
false;
29 #endregion Propiedades privadas 31 #region Propiedades públicas 32 [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)]
38 get {
return _oModelo; }
48 [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)]
49 public string _Periodo
51 get {
return txtPeriodo._Codigo; }
52 set { txtPeriodo._Codigo = value; }
58 [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)]
59 public string _Descripcion
61 get {
return ewtextboxDescripcion.Text; }
62 set { ewtextboxDescripcion.Text = value; }
68 [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)]
71 get {
return _lReadOnly; }
81 [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)]
82 public bool _Sustitutiva
84 get {
return _lSustitutiva; }
85 set { _lSustitutiva = value; }
91 [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)]
92 public bool _Complementaria
94 get {
return _lComplementaria; }
95 set { _lComplementaria = value; }
101 public bool _DeclaracionComplementaria
103 get {
return _lComplementaria; }
104 set { _lComplementaria = value; }
110 public bool _DeclaracionSustitutiva
112 get {
return _lComplementaria; }
113 set { _lComplementaria = value; }
119 public string _NumeroJustificante
121 get {
return ewtextboxJustificante.Text.TrimEnd(); }
122 set { ewtextboxJustificante.Text = value; }
128 public string _NumeroDeclaracionAnterior
130 get {
return ewtextboxDeclaracionAnterior.Text.TrimEnd(); }
131 set { ewtextboxDeclaracionAnterior.Text = value; }
133 #endregion Propiedades públicas 141 InitializeComponent();
145 _lEjercicio_Partido = Convert.ToBoolean(EW_GLOBAL._GetVariable(
"wl_Parti"));
147 SubscripcionEventos();
150 #endregion Constructor 152 #region Métodos públicos 153 public void _Refresh()
158 ModeloFiscal loModeloFiscal = ((ModeloFiscal)_oModelo);
160 if (loModeloFiscal._Complementaria)
162 ewcheckboxComplementaria.Checked = loModeloFiscal._DeclaracionComplementaria;
163 ewtextboxJustificante.Text = loModeloFiscal._NumeroJustificante;
166 if (loModeloFiscal._Sustitutiva)
168 ewcheckboxSustitutiva.Checked = loModeloFiscal._DeclaracionSustitutiva;
169 ewtextboxDeclaracionAnterior.Text = loModeloFiscal._NumeroDeclaracionAnterior;
179 string lcMensaje =
string.Empty;
183 if (ewcheckboxSustitutiva.Checked)
185 if (
string.IsNullOrWhiteSpace(ewtextboxDeclaracionAnterior.Text))
186 lcMensaje =
"Es necesario indicar el número declaración anterior de la autotoliquidación sustitutiva.";
188 if (
string.IsNullOrWhiteSpace(lcMensaje) && ewtextboxDeclaracionAnterior.Text.Trim().Length < 13)
189 lcMensaje =
"La longitud del número de la declaración anterior tiene de ser de 13 caracteres.";
191 if (!
string.IsNullOrWhiteSpace(lcMensaje))
193 FUNCTIONS._MessageBox(lcMensaje, _oModelo.
_Titulo, MessageBoxButtons.OK, MessageBoxIcon.Stop);
194 ewtextboxDeclaracionAnterior.Focus();
199 if (ewcheckboxComplementaria.Checked)
201 if (
string.IsNullOrWhiteSpace(ewtextboxJustificante.Text))
202 lcMensaje =
"Es necesario indicar el número de justificante de la autoliquidación complementaria.";
204 if (
string.IsNullOrWhiteSpace(lcMensaje) && ewtextboxJustificante.Text.Trim().Length < 13)
205 lcMensaje =
"La longitud del número de justificante de la autotoliquidación complementaria tiene de ser de 13 caracteres.";
207 if (!
string.IsNullOrWhiteSpace(lcMensaje))
209 FUNCTIONS._MessageBox(lcMensaje, _oModelo.
_Titulo, MessageBoxButtons.OK, MessageBoxIcon.Stop);
210 ewtextboxJustificante.Focus();
217 #endregion Métodos públicos 219 #region Métodos privados 220 private void RefreshModelo()
227 ewtextboxRuta.ReadOnly =
true;
234 ewlabelPeriodoEjercicio.Text =
"Ejercicio:";
235 ewpanelPeriodo.Visible =
false;
236 txtPeriodo.Visible =
false;
237 ewtablelayoutpanelPeriodoEjercicio.ColumnStyles[0].Width = 0;
240 txtEjercicio.Visible =
false;
244 ewpanelSustitutiva.Visible =
false;
245 ewtablelayoutpanelDeclaracion.RowStyles[2].Height = 0;
250 ewpanelComplementaria.Visible =
false;
251 ewtablelayoutpanelDeclaracion.RowStyles[3].Height = 0;
254 RefeshPeriodosVisual();
267 private void RefeshPeriodosVisual()
269 DataTable ldtPeriodosVisual = ((ModeloFiscal)_oModelo)._PeriodosVisual();
271 if (ldtPeriodosVisual != null)
272 txtPeriodo._Periodos(ldtPeriodosVisual);
278 private void ReadOnly()
280 txtPeriodo._ReadOnly = _lReadOnly;
281 txtEjercicio.ReadOnly =
true;
282 ewtextboxDescripcion.ReadOnly = _lReadOnly;
284 ewcheckboxSustitutiva.Enabled = !_lReadOnly;
285 ewtextboxDeclaracionAnterior.ReadOnly = _lReadOnly || !ewcheckboxSustitutiva.Checked;
287 ewcheckboxComplementaria.Enabled = !_lReadOnly;
288 ewtextboxJustificante.ReadOnly = _lReadOnly || !ewcheckboxComplementaria.Checked;
298 private void TipoDeclaracion()
300 if (ewcheckboxComplementaria.Checked)
302 else if (ewcheckboxSustitutiva.Checked)
308 _oModelo.
_NumeroJustificante = ewcheckboxComplementaria.Checked ? ewtextboxJustificante.Text :
"";
314 private void RefreshBusiness()
320 if (!loModeloFiscal._Anual)
321 loModeloFiscal._NumeroPeriodo = txtPeriodo._Codigo;
323 loModeloFiscal._Descripcion = ewtextboxDescripcion.Text;
335 if (_oModelo != null)
336 return (ModeloFiscal)_oModelo;
344 private void SubscripcionEventos()
346 ewcheckboxComplementaria.CheckedChanged += EwcheckboxComplementaria_CheckedChanged;
347 ewcheckboxSustitutiva.CheckedChanged += EwcheckboxSustitutiva_CheckedChanged;
349 if (_lEjercicio_Partido)
350 txtPeriodo._Codigo_Cambiado += TxtPeriodo__Codigo_Cambiado;
356 private void CancelarSubscripcionEventos()
358 ewcheckboxComplementaria.CheckedChanged -= EwcheckboxComplementaria_CheckedChanged;
359 ewcheckboxSustitutiva.CheckedChanged -= EwcheckboxSustitutiva_CheckedChanged;
361 if (_lEjercicio_Partido)
362 txtPeriodo._Codigo_Cambiado -= TxtPeriodo__Codigo_Cambiado;
370 private void EwcheckboxComplementaria_CheckedChanged(
object sender, EventArgs e)
372 ewtextboxJustificante.ReadOnly = !ewcheckboxComplementaria.Checked;
374 if (ewcheckboxComplementaria.Checked)
375 ewtextboxJustificante.Focus();
377 if (!
string.IsNullOrWhiteSpace(ewtextboxJustificante.Text))
378 ewtextboxJustificante.Text =
string.Empty;
386 private void EwcheckboxSustitutiva_CheckedChanged(
object sender, EventArgs e)
388 ewtextboxDeclaracionAnterior.ReadOnly = !ewcheckboxSustitutiva.Checked;
390 if (ewcheckboxSustitutiva.Checked)
391 ewtextboxDeclaracionAnterior.Focus();
393 if (!
string.IsNullOrWhiteSpace(ewtextboxDeclaracionAnterior.Text))
394 ewtextboxDeclaracionAnterior.Text =
string.Empty;
400 private void TxtPeriodo__Codigo_Cambiado()
404 if (loModeloFiscal != null)
411 #endregion Métodos privados string _NumeroJustificante
Número de justificante
eTipoDeclaracion _TipoDeclaracion
Tipo de la declaración
bool _PeriodosRetenciones
Modelo de retenciones que ha de presentar los periodos de retenciones Tenemos el modelo 130 que aun s...
bool _Valid()
Antes de generar validaremos un par de cosas
string _PathModelo()
Devuelve el math del modelo a generar
string _Ejercicio
Ejercicio del modelo
eTipoDeclaracion
Enumeración para los tipos de declaraciones:
bool _PeriodosRetenciones
Modelo de retenciones que ha de presentar los periodos de retenciones Tenemos el modelo 130 que aun s...
string _NumeroPeriodo
Número de periodo en formato string para poder gestionar el ejercicio partido y la consulta de los pe...
ModeloFiscal
Modelos fiscales soportados
string _NumeroDeclaracionAnterior
Número de declaracion anterior de una declaración sustitutiva
bool _Anual
Modelo de presentación anual
Interfaz de los modelos fiscales
string _Titulo
Título del modelo fiscal
bool _Complementaria
Para poder realizar declaraciones complementarias
Control de usuario de la parte de la declaración de los modelos
bool _Sustitutiva
Para poder realizar delacaraciones sustitutivas