2 using System.Collections.Generic;
6 using System.ComponentModel;
12 using System.Windows.Forms;
18 namespace sage.ew.articulo
27 bool _lRecc = Convert.ToBoolean(EW_GLOBAL._GetVariable(
"wl_recc"));
31 bool _lProrrata = Convert.ToBoolean(EW_GLOBAL._GetVariable(
"wl_prorrata_aplicar"));
33 string _cNombreImpuesto = Convert.ToString(EW_GLOBAL._GetVariable(
"wc_iva"));
35 string _cIvaRep3 = Convert.ToString(EW_GLOBAL._GetVariable(
"wc_IvaRep",
"477")).Substring(0,3);
36 string _cIvaSop3 = Convert.ToString(EW_GLOBAL._GetVariable(
"wc_IvaSop",
"472")).Substring(0,3);
38 string _cIvaRecSop3 = Convert.ToString(EW_GLOBAL._GetVariable(
"wc_recsop",
"472")).Substring(0, 3);
39 string _cIvaRecRep3 = Convert.ToString(EW_GLOBAL._GetVariable(
"wc_recrep",
"477")).Substring(0, 3);
41 string _cIvaPendSop3 = Convert.ToString(EW_GLOBAL._GetVariable(
"wc_pendedsop",
"")).Substring(0, 3);
42 string _cIvaRecPendSop3 = Convert.ToString(EW_GLOBAL._GetVariable(
"wc_recsopcdev",
"")).Substring(0, 3);
43 string _cIvaPendRep3 = Convert.ToString(EW_GLOBAL._GetVariable(
"wc_pendevrep",
"")).Substring(0, 3);
44 string _cIvaRecPendRep3 = Convert.ToString(EW_GLOBAL._GetVariable(
"wc_recrepcdev",
"")).Substring(0, 3);
50 string _cIvaSop3_Nodeduc = Convert.ToString(EW_GLOBAL._GetVariable(
"wc_prtivsopnd",
"472")).Substring(0, 3);
54 string _cIvaPendSop3_Nodeduc = Convert.ToString(EW_GLOBAL._GetVariable(
"wc_prtivsndpd",
"")).Substring(0, 3);
59 #region PROPIEDADES PUBLICAS 73 if (_lisCampos.ContainsKey(
"IVA"))
74 return Convert.ToDecimal(_lisCampos[
"IVA"]._NewVal);
80 if (_lisCampos.ContainsKey(
"IVA"))
82 _lisCampos[
"IVA"]._NewVal = value;
92 public decimal _Recargo
97 if (_lisCampos.ContainsKey(
"RECARG"))
98 return Convert.ToDecimal(_lisCampos[
"RECARG"]._NewVal);
104 if (_lisCampos.ContainsKey(
"RECARG"))
106 _lisCampos[
"RECARG"]._NewVal = value;
132 public TipoImpuesto _Tipo
138 return (_lisCampos.ContainsKey(
"TIPO") && Enum.TryParse<
TipoImpuesto>(Convert.ToString(_lisCampos[
"TIPO"]._NewVal), out loTipo)) ? loTipo :
TipoImpuesto.IVA;
142 if (_lisCampos.ContainsKey(
"TIPO")) _lisCampos[
"TIPO"]._NewVal = Convert.ToInt32(value);
149 public Boolean _IGICImplicito
153 return (_lisCampos.ContainsKey(
"IGIC_IMPLI") && _Tipo ==
TipoImpuesto.IGIC) ? Convert.ToBoolean(_lisCampos[
"IGIC_IMPLI"]._NewVal) :
false;
157 if (_lisCampos.ContainsKey(
"IGIC_IMPLI")) _lisCampos[
"IGIC_IMPLI"]._NewVal = value;
165 public string _Cta_IVA_Sop
169 if (_lisCampos.ContainsKey(
"CTA_IV_SOP"))
170 return _lisCampos[
"CTA_IV_SOP"]._NewVal.ToString();
176 if (_lisCampos.ContainsKey(
"CTA_IV_SOP"))
178 if (_ValidaCuenta(value, _cIvaSop3, _cNombreImpuesto +
" soportado"))
180 _lisCampos[
"CTA_IV_SOP"]._NewVal = value;
190 public string _Cta_IVA_Rep
194 if (_lisCampos.ContainsKey(
"CTA_IV_REP"))
195 return _lisCampos[
"CTA_IV_REP"]._NewVal.ToString();
201 if (_lisCampos.ContainsKey(
"CTA_IV_REP"))
203 if (_ValidaCuenta(value, _cIvaRep3, _cNombreImpuesto +
" repercutido"))
205 _lisCampos[
"CTA_IV_REP"]._NewVal = value;
215 public string _Cta_REC_Sop
219 if (_lisCampos.ContainsKey(
"CTA_RE_SOP"))
220 return _lisCampos[
"CTA_RE_SOP"]._NewVal.ToString();
226 if (_lisCampos.ContainsKey(
"CTA_RE_SOP"))
228 if (_ValidaCuenta(value, _cIvaRecSop3,
" recargo soportado"))
230 _lisCampos[
"CTA_RE_SOP"]._NewVal = value;
240 public string _Cta_REC_Rep
244 if (_lisCampos.ContainsKey(
"CTA_RE_REP"))
245 return _lisCampos[
"CTA_RE_REP"]._NewVal.ToString();
251 if (_lisCampos.ContainsKey(
"CTA_RE_REP"))
253 if (_ValidaCuenta(value, _cIvaRecRep3,
" recargo repercutido"))
255 _lisCampos[
"CTA_RE_REP"]._NewVal = value;
265 public string _Pendevrep
269 if (_lisCampos.ContainsKey(
"PENDEVREP"))
270 return _lisCampos[
"PENDEVREP"]._NewVal.ToString();
276 if (_lisCampos.ContainsKey(
"PENDEVREP"))
278 if (_ValidaCuenta(value, String.IsNullOrWhiteSpace(_cIvaPendRep3) ? _cIvaRep3 : _cIvaPendRep3,
" repercutido pendiente devengo", _cNombreImpuesto +
" repercutido"))
280 _lisCampos[
"PENDEVREP"]._NewVal = value;
290 public string _Pendedsop
294 if (_lisCampos.ContainsKey(
"PENDEDSOP"))
295 return _lisCampos[
"PENDEDSOP"]._NewVal.ToString();
301 if (_lisCampos.ContainsKey(
"PENDEDSOP"))
303 if (_ValidaCuenta(value, String.IsNullOrWhiteSpace(_cIvaPendSop3) ? _cIvaSop3 : _cIvaPendSop3,
" soportado pendiente devengo", _cNombreImpuesto +
" soportado"))
305 _lisCampos[
"PENDEDSOP"]._NewVal = value;
315 public string _Recrepcdev
319 if (_lisCampos.ContainsKey(
"RECREPCDEV"))
320 return _lisCampos[
"RECREPCDEV"]._NewVal.ToString();
326 if (_lisCampos.ContainsKey(
"RECREPCDEV"))
328 if (_ValidaCuenta(value, String.IsNullOrWhiteSpace(_cIvaRecPendRep3) ? _cIvaRecRep3 : _cIvaRecPendRep3,
"recargo repercutido pendiente devengo",
"recargo repercutido"))
330 _lisCampos[
"RECREPCDEV"]._NewVal = value;
341 public string _Recsopcdev
345 if (_lisCampos.ContainsKey(
"RECSOPCDEV"))
346 return _lisCampos[
"RECSOPCDEV"]._NewVal.ToString();
352 if (_lisCampos.ContainsKey(
"RECSOPCDEV"))
354 if (_ValidaCuenta(value, String.IsNullOrWhiteSpace(_cIvaRecPendSop3) ? _cIvaRecSop3 : _cIvaRecPendSop3,
"recargo soportado pendiente devengo",
"recargo soportado"))
356 _lisCampos[
"RECSOPCDEV"]._NewVal = value;
368 public string _Cta_IVA_Sop_Nodeduc
372 if (_lisCampos.ContainsKey(
"PRTIVSOPND"))
373 return _lisCampos[
"PRTIVSOPND"]._NewVal.ToString();
379 if (_lisCampos.ContainsKey(
"PRTIVSOPND"))
381 if (_ValidaCuenta(value, _cIvaSop3_Nodeduc, _cNombreImpuesto +
" soportado no deducible", _cNombreImpuesto +
" soportado no deducible (Prorrata)"))
383 _lisCampos[
"PRTIVSOPND"]._NewVal = value;
394 public string _Pendedsop_Nodeduc
398 if (_lisCampos.ContainsKey(
"PRTIVSNDPD"))
399 return _lisCampos[
"PRTIVSNDPD"]._NewVal.ToString();
405 if (_lisCampos.ContainsKey(
"PRTIVSNDPD"))
407 if (_ValidaCuenta(value, String.IsNullOrWhiteSpace(_cIvaPendSop3_Nodeduc) ? _cIvaSop3_Nodeduc : _cIvaPendSop3_Nodeduc, _cNombreImpuesto +
" soportado no deducible pendiente devengo", _cNombreImpuesto +
" soportado no deducible pendiente devengo (Prorrata)"))
409 _lisCampos[
"PRTIVSNDPD"]._NewVal = value;
426 private bool _ValidaCuenta(String tcCuenta, String tcPrefijo, String tcDescripcion, String tcDescripcionStandard)
428 String lcErrorMessage =
"";
430 if (!_ValidaCuenta(tcCuenta, tcPrefijo, tcDescripcion, tcDescripcionStandard, ref lcErrorMessage))
432 _Error_Message = lcErrorMessage;
445 private bool _ValidaCuenta(String tcCuenta, String tcPrefijo, String tcDescripcion)
447 return _ValidaCuenta(tcCuenta, tcPrefijo, tcDescripcion, tcDescripcion);
458 private bool _ValidaCuenta(String tcCuenta, String tcPrefijo, String tcDescripcion, ref String lcErrorMessage)
460 return _ValidaCuenta(tcCuenta, tcPrefijo, tcDescripcion, tcDescripcion, ref lcErrorMessage);
472 private bool _ValidaCuenta(String tcCuenta, String tcPrefijo, String tcDescripcion, String tcDescripcionStandard, ref String lcErrorMessage)
476 if(!
String.IsNullOrWhiteSpace(tcCuenta))
478 String lcCuenta = DB.SQLValor(
"CUENTAS",
"CODIGO", tcCuenta,
"CODIGO",
"GESTION").ToString();
480 if (!
String.IsNullOrEmpty(lcCuenta))
482 if (!
String.IsNullOrWhiteSpace(tcPrefijo))
484 if (lcCuenta.Substring(0, 3) != tcPrefijo )
486 lcErrorMessage =
String.Format(
"La cuenta de {1} es incorrecta.{2}La cuenta debe empezar por {0}.", tcPrefijo, tcDescripcion, Environment.NewLine);
492 lcErrorMessage =
String.Format(
"La cuenta contable estándar {0} no esta informada, antes de continuar debe informarla.", tcDescripcionStandard);
498 lcErrorMessage =
String.Format(
"La cuenta {0} no existe.", tcCuenta);
511 public string _IVA_CEE
515 if (_lisCampos.ContainsKey(
"IVA_CEE"))
516 return _lisCampos[
"IVA_CEE"]._NewVal.ToString();
522 if (_lisCampos.ContainsKey(
"IVA_CEE"))
524 if (!
string.IsNullOrWhiteSpace(value))
526 String lcCuenta = DB.SQLValor(
"TIPO_IVA",
"CODIGO", value,
"CODIGO",
"GESTION").ToString();
527 if (!
string.IsNullOrEmpty(lcCuenta))
529 _lisCampos[
"IVA_CEE"]._NewVal = value;
534 _Error_Message =
"El código no existe.";
538 _lisCampos[
"IVA_CEE"]._NewVal = value;
549 public bool _IVA_Deducible
553 if (_lisCampos.ContainsKey(
"DEDUCE"))
554 return Convert.ToBoolean(_lisCampos[
"DEDUCE"]._NewVal);
560 if (_lisCampos.ContainsKey(
"DEDUCE"))
562 _lisCampos[
"DEDUCE"]._NewVal = value;
572 public bool _IVA_Servicios
576 if (_lisCampos.ContainsKey(
"INMOVIL"))
577 return Convert.ToBoolean(_lisCampos[
"INMOVIL"]._NewVal);
583 if (_lisCampos.ContainsKey(
"INMOVIL"))
585 _lisCampos[
"INMOVIL"]._NewVal = value;
599 if (_lisCampos.ContainsKey(
"TIPO_IMP"))
600 return Convert.ToInt16(_lisCampos[
"TIPO_IMP"]._NewVal);
606 if (_lisCampos.ContainsKey(
"TIPO_IMP"))
608 _lisCampos[
"TIPO_IMP"]._NewVal = value;
620 public bool _IVA_BienesInversion
624 if (_lisCampos.ContainsKey(
"B_INV"))
625 return Convert.ToBoolean(_lisCampos[
"B_INV"]._NewVal);
631 if (_lisCampos.ContainsKey(
"B_INV"))
633 _lisCampos[
"B_INV"]._NewVal = value;
657 public bool _IGIC_Sujeto0
661 if (_lisCampos.ContainsKey(
"CERO"))
662 return Convert.ToBoolean(_lisCampos[
"CERO"]._NewVal);
668 if (_lisCampos.ContainsKey(
"CERO"))
670 _lisCampos[
"CERO"]._NewVal = value;
694 public bool _IVA_Sujeto0
698 return _IGIC_Sujeto0;
702 _IGIC_Sujeto0 = value;
710 public bool _IVA_Exento
714 if (_lisCampos.ContainsKey(
"EXENTO"))
715 return Convert.ToBoolean(_lisCampos[
"EXENTO"]._NewVal);
721 if (_lisCampos.ContainsKey(
"EXENTO"))
723 _lisCampos[
"EXENTO"]._NewVal = value;
737 if (_lisCampos.ContainsKey(
"AG_VIAJE"))
738 return Convert.ToBoolean(_lisCampos[
"AG_VIAJE"]._NewVal);
744 if (_lisCampos.ContainsKey(
"AG_VIAJE"))
746 _lisCampos[
"AG_VIAJE"]._NewVal = value;
756 public Boolean _UtilizarAsistenteListasPrevias
760 return Convert.ToBoolean(EW_GLOBAL._GetVariable(
"WL_LISTASPREVM",
false));
771 return Convert.ToString(_Campo(
"GUID"));
775 _Campo(
"GUID", value);
779 #endregion PROPIEDADES PUBLICAS 789 this._Clave =
"Codigo";
790 this._DataBase =
"Gestion";
791 this._Tabla =
"Tipo_IVA";
792 this._Pantalla =
"Tipo_IVA";
793 bool _lRecc = Convert.ToBoolean(EW_GLOBAL._GetVariable(
"wl_recc"));
794 bool _lProrrata = Convert.ToBoolean(EW_GLOBAL._GetVariable(
"wl_prorrata_aplicar"));
796 _Browser_Titulos_Campos =
"Código, Nombre, % IVA, IVA sopor., IVA reper., " +
797 "Recargo sopor., Recargo reper. " +
798 (! _lRecc ?
"" :
", IVA Sopor. pdte. dev., IVA Reper. pdte. dev., Recargo sopor. pdte. dev., Recargo reper. pdte. dev. " ) +
799 (!_lProrrata ?
"" :
", IVA sopor. no deduc., IVA sopor. no deduc. pdte. dev. " );
800 _Browser_Campos =
"CODIGO, NOMBRE, IVA, CTA_IV_SOP, CTA_IV_REP, " +
801 "CTA_RE_SOP, CTA_RE_REP " +
802 (!_lRecc ?
"" :
", PENDEDSOP, PENDEVREP, RECSOPCDEV, RECREPCDEV ") +
803 (!_lProrrata ?
"" :
", PRTIVSOPND, PRTIVSNDPD");
806 string lc_iva = Convert.ToString(EW_GLOBAL._GetVariable(
"wc_iva"));
807 lc_iva = lc_iva.Trim();
809 this._TituloMantenimiento = String.Format(
"Mantenimiento de tipos de {0}", lc_iva);
810 this._TituloCabecera = String.Format(
"Tipos de {0}", lc_iva);
815 #endregion CONSTRUCTORS 817 #region METODOS PUBLICOS 826 List<string> loList =
new List<string>();
830 loList.Add(
"D_PEDIVE");
831 loList.Add(
"D_ALBDEP");
832 loList.Add(
"IVAREPER");
833 loList.Add(
"IVASOPOR");
834 loList.Add(
"ASIDEFIN");
835 loList.Add(
"D_ALBVEN");
836 loList.Add(
"PROVEED");
837 loList.Add(
"ARTICULO");
838 loList.Add(
"D_ALBCOM");
839 loList.Add(
"D_PEDICO");
840 loList.Add(
"EMPRESA");
841 loList.Add(
"CLIENTES");
842 loList.Add(
"D_PRESUV");
843 loList.Add(
"D_PLAPR");
844 loList.Add(
"PORTES");
845 loList.Add(
"PORTES_PDV");
846 loList.Add(
"PORTES_PRV");
847 loList.Add(
"PORTES_DPV");
848 loList.Add(
"PORTESC");
849 loList.Add(
"ENTRE_CL");
851 loList.Add(
"D_PRECOM");
852 loList.Add(
"D_CERTIF");
853 loList.Add(
"D_DEPCOM");
854 loList.Add(
"MODTIPO");
855 loList.Add(
"MOD349R");
856 loList.Add(
"ORD_SOPT");
857 loList.Add(
"IVRECPLUS");
858 loList.Add(
"IVSOCPLUS");
860 llOk = llOk && !_Existen_Registros(
"GESTION", loList,
"TIPO_IVA");
864 loList.Add(
"MODELO");
865 loList.Add(
"CONCEP");
867 loList.Add(
"IVACJREPER");
868 loList.Add(
"IVACJSOPOR");
870 llOk = llOk && !_Existen_Registros(
"COMUNES", loList,
"TIPO_IVA");
874 return base._Delete();
879 string lc_iva = Convert.ToString(EW_GLOBAL._GetVariable(
"wc_iva"));
880 lc_iva = lc_iva.Trim();
882 this._Error_Message =
"Este código de tipo de "+lc_iva+
" está siendo utilizado por el programa. No se puede borrar el código de tipo de "+lc_iva+
".";
894 List<string> loList =
new List<string>();
896 loList.Add(
"IVAREPER");
897 loList.Add(
"IVASOPOR");
898 loList.Add(
"IVA_EXEN");
900 return _Existen_Registros(
"GESTION", loList,
"TIPO_IVA");
913 DataTable ldtDeducible =
new DataTable();
915 lcSql =
"SELECT codigo, nombre " +
916 "FROM " + DB.SQLDatabase(
"gestion",
"tipo_iva") +
" " +
917 "WHERE codigo != " + DB.SQLString(this._Codigo) +
" " +
920 if (this._IVA_Deducible)
921 lcSql = lcSql + DB.SQLString(
true);
923 lcSql = lcSql + DB.SQLString(
false);
925 DB.SQLExec(lcSql +
"AND " + tcCampoCuenta +
" = " + DB.SQLString(tcValorCuenta), ref ldtDeducible);
946 public bool _Comprobar_Ctas_Iva(
string tcIvaSop,
string tcIvaRep,
string tcRecSop,
string tcRecRep,
string tcCriIvaSop,
string tcCriIvaRep,
string tcCriRecSop,
string tcCriRecRep,
string tcProrrataIvaSop,
string tcProrrataCriIvaSop, out
string tcMensaje)
948 return _Comprobar_Ctas_Iva(this._cNombreImpuesto, tcIvaSop, tcIvaRep, tcRecSop, tcRecRep, tcCriIvaSop, tcCriIvaRep, tcCriRecSop, tcCriRecRep, tcProrrataIvaSop, tcProrrataCriIvaSop, out tcMensaje);
967 public bool _Comprobar_Ctas_Iva(
string tcIvaSop,
string tcIvaRep,
string tcRecSop,
string tcRecRep,
string tcCriIvaSop,
string tcCriIvaRep,
string tcCriRecSop,
string tcCriRecRep,
string tcProrrataIvaSop,
string tcProrrataCriIvaSop, out
string tcMensaje,
string tcEjercicio)
969 return _Comprobar_Ctas_Iva(this._cNombreImpuesto, tcIvaSop, tcIvaRep, tcRecSop, tcRecRep, tcCriIvaSop, tcCriIvaRep, tcCriRecSop, tcCriRecRep, tcProrrataIvaSop, tcProrrataCriIvaSop, out tcMensaje, tcEjercicio);
988 public bool _Comprobar_Ctas_Iva(
string tcTipoImpuesto,
string tcIvaSop,
string tcIvaRep,
string tcRecSop,
string tcRecRep,
string tcCriIvaSop,
string tcCriIvaRep,
string tcCriRecSop,
string tcCriRecRep,
string tcProrrataIvaSop,
string tcProrrataCriIvaSop, out
string tcMensaje)
990 return _Comprobar_Ctas_Iva(this._cNombreImpuesto, tcIvaSop, tcIvaRep, tcRecSop, tcRecRep, tcCriIvaSop, tcCriIvaRep, tcCriRecSop, tcCriRecRep, tcProrrataIvaSop, tcProrrataCriIvaSop, out tcMensaje,
"GESTION");
1010 private bool _Comprobar_Ctas_Iva(
string tcTipoImpuesto,
string tcIvaSop,
string tcIvaRep,
string tcRecSop,
string tcRecRep,
string tcCriIvaSop,
string tcCriIvaRep,
string tcCriRecSop,
string tcCriRecRep,
string tcProrrataIvaSop,
string tcProrrataCriIvaSop, out
string tcMensaje,
string tcEjercicio =
"GESTION")
1012 string lcSql, lcWhere =
string.Empty;
1013 DataTable ldtIvas =
new DataTable();
1014 string lcIva =
string.Empty;
1027 lcSql =
"SELECT CODIGO, NOMBRE, TIPO FROM " + DB.SQLDatabase(tcEjercicio,
"TIPO_IVA") +
1028 " WHERE codigo != " + DB.SQLString(this._Codigo);
1032 if (!
string.IsNullOrWhiteSpace(tcIvaSop))
1034 lcWhere += (!
string.IsNullOrWhiteSpace(lcWhere) ?
" OR " :
"") +
"cta_iv_sop = " + DB.SQLString(tcIvaSop) +
" ";
1035 lcWhere += (!
string.IsNullOrWhiteSpace(lcWhere) ?
" OR " :
"") +
"cta_re_sop = " + DB.SQLString(tcIvaSop) +
" ";
1036 lcWhere += (!
string.IsNullOrWhiteSpace(lcWhere) ?
" OR " :
"") +
"pendedsop = " + DB.SQLString(tcIvaSop) +
" ";
1037 lcWhere += (!
string.IsNullOrWhiteSpace(lcWhere) ?
" OR " :
"") +
"recsopcdev = " + DB.SQLString(tcIvaSop) +
" ";
1038 lcWhere += (!
string.IsNullOrWhiteSpace(lcWhere) ?
" OR " :
"") +
"prtivsopnd = " + DB.SQLString(tcIvaSop) +
" ";
1039 lcWhere += (!
string.IsNullOrWhiteSpace(lcWhere) ?
" OR " :
"") +
"prtivsndpd = " + DB.SQLString(tcIvaSop) +
" ";
1042 if (!
string.IsNullOrWhiteSpace(tcIvaRep))
1044 lcWhere += (!
string.IsNullOrWhiteSpace(lcWhere) ?
" OR " :
"") +
"cta_iv_rep = " + DB.SQLString(tcIvaRep) +
" ";
1045 lcWhere += (!
string.IsNullOrWhiteSpace(lcWhere) ?
" OR " :
"") +
"cta_re_rep = " + DB.SQLString(tcIvaRep) +
" ";
1046 lcWhere += (!
string.IsNullOrWhiteSpace(lcWhere) ?
" OR " :
"") +
"pendevrep = " + DB.SQLString(tcIvaRep) +
" ";
1047 lcWhere += (!
string.IsNullOrWhiteSpace(lcWhere) ?
" OR " :
"") +
"recrepcdev = " + DB.SQLString(tcIvaRep) +
" ";
1050 if (!
string.IsNullOrWhiteSpace(tcRecSop))
1052 lcWhere += (!
string.IsNullOrWhiteSpace(lcWhere) ?
" OR " :
"") +
"cta_re_sop = " + DB.SQLString(tcRecSop) +
" ";
1053 lcWhere += (!
string.IsNullOrWhiteSpace(lcWhere) ?
" OR " :
"") +
"cta_iv_sop = " + DB.SQLString(tcRecSop) +
" ";
1054 lcWhere += (!
string.IsNullOrWhiteSpace(lcWhere) ?
" OR " :
"") +
"pendedsop = " + DB.SQLString(tcRecSop) +
" ";
1055 lcWhere += (!
string.IsNullOrWhiteSpace(lcWhere) ?
" OR " :
"") +
"recsopcdev = " + DB.SQLString(tcRecSop) +
" ";
1056 lcWhere += (!
string.IsNullOrWhiteSpace(lcWhere) ?
" OR " :
"") +
"prtivsopnd = " + DB.SQLString(tcRecSop) +
" ";
1057 lcWhere += (!
string.IsNullOrWhiteSpace(lcWhere) ?
" OR " :
"") +
"prtivsndpd = " + DB.SQLString(tcRecSop) +
" ";
1060 if (!
string.IsNullOrWhiteSpace(tcRecRep))
1062 lcWhere += (!
string.IsNullOrWhiteSpace(lcWhere) ?
" OR " :
"") +
"cta_iv_rep = " + DB.SQLString(tcRecRep) +
" ";
1063 lcWhere += (!
string.IsNullOrWhiteSpace(lcWhere) ?
" OR " :
"") +
"cta_re_rep = " + DB.SQLString(tcRecRep) +
" ";
1064 lcWhere += (!
string.IsNullOrWhiteSpace(lcWhere) ?
" OR " :
"") +
"pendevrep = " + DB.SQLString(tcRecRep) +
" ";
1065 lcWhere += (!
string.IsNullOrWhiteSpace(lcWhere) ?
" OR " :
"") +
"recrepcdev = " + DB.SQLString(tcRecRep) +
" ";
1068 if (!
string.IsNullOrWhiteSpace(tcCriIvaSop))
1070 lcWhere += (!
string.IsNullOrWhiteSpace(lcWhere) ?
" OR " :
"") +
"cta_re_sop = " + DB.SQLString(tcCriIvaSop) +
" ";
1071 lcWhere += (!
string.IsNullOrWhiteSpace(lcWhere) ?
" OR " :
"") +
"cta_iv_sop = " + DB.SQLString(tcCriIvaSop) +
" ";
1072 lcWhere += (!
string.IsNullOrWhiteSpace(lcWhere) ?
" OR " :
"") +
"pendedsop = " + DB.SQLString(tcCriIvaSop) +
" ";
1073 lcWhere += (!
string.IsNullOrWhiteSpace(lcWhere) ?
" OR " :
"") +
"recsopcdev = " + DB.SQLString(tcCriIvaSop) +
" ";
1074 lcWhere += (!
string.IsNullOrWhiteSpace(lcWhere) ?
" OR " :
"") +
"prtivsopnd = " + DB.SQLString(tcCriIvaSop) +
" ";
1075 lcWhere += (!
string.IsNullOrWhiteSpace(lcWhere) ?
" OR " :
"") +
"prtivsndpd = " + DB.SQLString(tcCriIvaSop) +
" ";
1078 if (!
string.IsNullOrWhiteSpace(tcCriIvaRep))
1080 lcWhere += (!
string.IsNullOrWhiteSpace(lcWhere) ?
" OR " :
"") +
"cta_iv_rep = " + DB.SQLString(tcCriIvaRep) +
" ";
1081 lcWhere += (!
string.IsNullOrWhiteSpace(lcWhere) ?
" OR " :
"") +
"cta_re_rep = " + DB.SQLString(tcCriIvaRep) +
" ";
1082 lcWhere += (!
string.IsNullOrWhiteSpace(lcWhere) ?
" OR " :
"") +
"pendevrep = " + DB.SQLString(tcCriIvaRep) +
" ";
1083 lcWhere += (!
string.IsNullOrWhiteSpace(lcWhere) ?
" OR " :
"") +
"recrepcdev = " + DB.SQLString(tcCriIvaRep) +
" ";
1086 if (!
string.IsNullOrWhiteSpace(tcCriRecSop))
1088 lcWhere += (!
string.IsNullOrWhiteSpace(lcWhere) ?
" OR " :
"") +
"cta_re_sop = " + DB.SQLString(tcCriRecSop) +
" ";
1089 lcWhere += (!
string.IsNullOrWhiteSpace(lcWhere) ?
" OR " :
"") +
"cta_iv_sop = " + DB.SQLString(tcCriRecSop) +
" ";
1090 lcWhere += (!
string.IsNullOrWhiteSpace(lcWhere) ?
" OR " :
"") +
"pendedsop = " + DB.SQLString(tcCriRecSop) +
" ";
1091 lcWhere += (!
string.IsNullOrWhiteSpace(lcWhere) ?
" OR " :
"") +
"recsopcdev = " + DB.SQLString(tcCriRecSop) +
" ";
1092 lcWhere += (!
string.IsNullOrWhiteSpace(lcWhere) ?
" OR " :
"") +
"prtivsopnd = " + DB.SQLString(tcCriRecSop) +
" ";
1093 lcWhere += (!
string.IsNullOrWhiteSpace(lcWhere) ?
" OR " :
"") +
"prtivsndpd = " + DB.SQLString(tcCriRecSop) +
" ";
1096 if (!
string.IsNullOrWhiteSpace(tcCriRecRep))
1098 lcWhere += (!
string.IsNullOrWhiteSpace(lcWhere) ?
" OR " :
"") +
"cta_iv_rep = " + DB.SQLString(tcCriRecRep) +
" ";
1099 lcWhere += (!
string.IsNullOrWhiteSpace(lcWhere) ?
" OR " :
"") +
"cta_re_rep = " + DB.SQLString(tcCriRecRep) +
" ";
1100 lcWhere += (!
string.IsNullOrWhiteSpace(lcWhere) ?
" OR " :
"") +
"pendevrep = " + DB.SQLString(tcCriRecRep) +
" ";
1101 lcWhere += (!
string.IsNullOrWhiteSpace(lcWhere) ?
" OR " :
"") +
"recrepcdev = " + DB.SQLString(tcCriRecRep) +
" ";
1104 if (!
string.IsNullOrWhiteSpace(tcProrrataIvaSop))
1106 lcWhere += (!
string.IsNullOrWhiteSpace(lcWhere) ?
" OR " :
"") +
"cta_iv_sop = " + DB.SQLString(tcProrrataIvaSop) +
" ";
1107 lcWhere += (!
string.IsNullOrWhiteSpace(lcWhere) ?
" OR " :
"") +
"cta_re_sop = " + DB.SQLString(tcProrrataIvaSop) +
" ";
1108 lcWhere += (!
string.IsNullOrWhiteSpace(lcWhere) ?
" OR " :
"") +
"pendedsop = " + DB.SQLString(tcProrrataIvaSop) +
" ";
1109 lcWhere += (!
string.IsNullOrWhiteSpace(lcWhere) ?
" OR " :
"") +
"recsopcdev = " + DB.SQLString(tcProrrataIvaSop) +
" ";
1110 lcWhere += (!
string.IsNullOrWhiteSpace(lcWhere) ?
" OR " :
"") +
"prtivsopnd = " + DB.SQLString(tcProrrataIvaSop) +
" ";
1111 lcWhere += (!
string.IsNullOrWhiteSpace(lcWhere) ?
" OR " :
"") +
"prtivsndpd = " + DB.SQLString(tcProrrataIvaSop) +
" ";
1114 if (!
string.IsNullOrWhiteSpace(tcProrrataCriIvaSop))
1116 lcWhere += (!
string.IsNullOrWhiteSpace(lcWhere) ?
" OR " :
"") +
"cta_iv_sop = " + DB.SQLString(tcProrrataCriIvaSop) +
" ";
1117 lcWhere += (!
string.IsNullOrWhiteSpace(lcWhere) ?
" OR " :
"") +
"cta_re_sop = " + DB.SQLString(tcProrrataCriIvaSop) +
" ";
1118 lcWhere += (!
string.IsNullOrWhiteSpace(lcWhere) ?
" OR " :
"") +
"pendedsop = " + DB.SQLString(tcProrrataCriIvaSop) +
" ";
1119 lcWhere += (!
string.IsNullOrWhiteSpace(lcWhere) ?
" OR " :
"") +
"recsopcdev = " + DB.SQLString(tcProrrataCriIvaSop) +
" ";
1120 lcWhere += (!
string.IsNullOrWhiteSpace(lcWhere) ?
" OR " :
"") +
"prtivsopnd = " + DB.SQLString(tcProrrataCriIvaSop) +
" ";
1121 lcWhere += (!
string.IsNullOrWhiteSpace(lcWhere) ?
" OR " :
"") +
"prtivsndpd = " + DB.SQLString(tcProrrataCriIvaSop) +
" ";
1124 if (!
string.IsNullOrWhiteSpace(lcWhere))
1126 lcSql +=
" AND ( " + lcWhere +
") ";
1128 DB.SQLExec(lcSql, ref ldtIvas);
1130 if (ldtIvas != null && ldtIvas.Rows.Count > 0)
1132 foreach (DataRow loRow
in ldtIvas.Rows)
1134 lcIva =
String.Format(
"{2} con código {0} y nombre {1}", Convert.ToString(loRow[
"CODIGO"]), Convert.ToString(loRow[
"NOMBRE"]).Trim(), Convert.ToInt32(loRow[
"TIPO"]) == 0 ?
"IVA" :
"IGIC");
1135 tcMensaje +=
String.Format(
"El tipo de {0} comparte alguna cuenta contable con el tipo de {1} actual.{2}{2}", lcIva, tcTipoImpuesto, Environment.NewLine);
1137 tcMensaje +=
"No se permiten utilizar cuentas ya utilizadas en otros tipos de IVA/IGIC.";
1218 public bool _Comprobar_Ctas_Iva(
string tcIvaSop,
string tcIvaRep,
string tcRecSop,
string tcRecRep,
string tcCriIvaSop,
string tcCriIvaRep,
string tcCriRecSop,
string tcCriRecRep, out
string tcMensaje)
1220 bool llOk = this._Comprobar_Ctas_Iva(tcIvaSop, tcIvaRep, tcRecSop, tcRecRep, tcCriIvaSop, tcCriIvaRep, tcCriRecSop, tcCriRecRep,
"",
"", out tcMensaje);
1239 public bool _Comprobar_Ctas_Iva(
string tcTipoImpuesto,
string tcIvaSop,
string tcIvaRep,
string tcRecSop,
string tcRecRep,
string tcCriIvaSop,
string tcCriIvaRep,
string tcCriRecSop,
string tcCriRecRep, out
string tcMensaje)
1241 bool llOk = this._Comprobar_Ctas_Iva(tcTipoImpuesto, tcIvaSop, tcIvaRep, tcRecSop, tcRecRep, tcCriIvaSop, tcCriIvaRep, tcCriRecSop, tcCriRecRep,
"",
"", out tcMensaje);
1255 if (toTipoExecute ==
TipoExecute.Before && !_Comprobar_Ctas_Iva(_Cta_IVA_Sop, _Cta_IVA_Rep, _Cta_REC_Sop, _Cta_REC_Rep, _Pendedsop, _Pendevrep, _Recsopcdev, _Recrepcdev, _Cta_IVA_Sop_Nodeduc, _Pendedsop_Nodeduc, out
string lcMensajeError, tcEjercicio))
1257 lcMensajeError = lcMensajeError.Replace($
"{Environment.NewLine}{Environment.NewLine}", Environment.NewLine);
1258 lcMensajeError = lcMensajeError.Replace($
"actual",
"a traspasar");
1260 _ShowMessageValidacionTrapaso($
"No se puede crear el Tipo de Iva en el siguiente ejercicio ({tcEjercicio}):{Environment.NewLine}{lcMensajeError}", tcEjercicio, tbIsNew);
1266 return base._TraspasarSiguienteEjercicio(toTipoExecute, tcEjercicio, tbIsNew);
1277 String lcErrorMessage, lcErrorMessageTotal =
"";
1278 Dictionary<String, String> loErrores =
new Dictionary<String, String>();
1280 if (this._FormMante != null) this._FormMante._oErrorProvider.Clear();
1282 llOk = base._Save_Before();
1286 string lcIva = Convert.ToString(EW_GLOBAL._GetVariable(
"wc_iva"));
1287 if (
string.IsNullOrWhiteSpace(lcIva))
1291 if (String.IsNullOrWhiteSpace(_cIvaSop3) || String.IsNullOrWhiteSpace(_cIvaRep3) || String.IsNullOrWhiteSpace(_cIvaRecRep3) || String.IsNullOrWhiteSpace(_cIvaRecSop3) || (this._lProrrata && String.IsNullOrEmpty(this._cIvaSop3_Nodeduc)))
1293 if (String.IsNullOrWhiteSpace(_cIvaSop3)) lcErrorMessageTotal +=
" " + lcIva +
" soportado";
1294 if (String.IsNullOrWhiteSpace(_cIvaRep3)) lcErrorMessageTotal += String.Format(
"{0} {1}", String.IsNullOrEmpty(lcErrorMessageTotal) ?
"" :
",", lcIva +
" repercutido");
1295 if (String.IsNullOrWhiteSpace(_cIvaRecRep3)) lcErrorMessageTotal += String.Format(
"{0} {1}", String.IsNullOrEmpty(lcErrorMessageTotal) ?
"" :
",",
"recargo soportado");
1296 if (String.IsNullOrWhiteSpace(_cIvaRecSop3)) lcErrorMessageTotal += String.Format(
"{0} {1}", String.IsNullOrEmpty(lcErrorMessageTotal) ?
"" :
",",
"recargo repercutido");
1297 if (this._lProrrata && String.IsNullOrEmpty(
this._cIvaSop3_Nodeduc)) lcErrorMessageTotal += String.Format(
"{0} {1}", String.IsNullOrEmpty(lcErrorMessageTotal) ?
"" :
",", lcIva +
" soportado no deducible (Prorrata)'");
1299 if (lcErrorMessageTotal.Contains(
","))
1301 lcErrorMessageTotal = String.Format(
"{0} y {1}", lcErrorMessageTotal.Substring(0, lcErrorMessageTotal.LastIndexOf(
",")), lcErrorMessageTotal.Substring(lcErrorMessageTotal.LastIndexOf(
",") + 1));
1302 lcErrorMessageTotal = String.Format(
"Las cuentas contables estándar {0} no estan informadas, antes de continuar debe informarlas.", lcErrorMessageTotal);
1306 lcErrorMessageTotal = String.Format(
"La cuenta contable estándar {0} no esta informada, antes de continuar debe informarla.", lcErrorMessageTotal);
1308 _Error_Message = lcErrorMessageTotal;
1314 lcErrorMessageTotal =
"";
1318 if (llOk && this._IVA != 0)
1320 lcErrorMessage = $
"No se pueden marcar como exentos, los tipos de {lcIva} que tenga un % de {lcIva} diferente de 0.";
1321 lcErrorMessageTotal += lcErrorMessage;
1322 _AddError(loErrores,
"_IVA", lcErrorMessage);
1326 if (llOk && this._Recargo != 0 )
1328 lcErrorMessage = $
"No se pueden marcar como exentos, los tipos de {lcIva} que tenga un % de recargo diferente de 0.";
1329 lcErrorMessageTotal += lcErrorMessage;
1330 _AddError(loErrores,
"_Recargo", lcErrorMessage);
1335 if (llOk && this._Recargo != 0 && this._IVA == 0)
1337 lcErrorMessage = $
"No se puede especificar % recargo en un tipo de {lcIva} que tenga 0 % de {lcIva}";
1338 lcErrorMessageTotal += lcErrorMessage;
1339 _AddError(loErrores,
"_Recargo", lcErrorMessage);
1343 _Error_Message = lcErrorMessageTotal;
1344 _SetErrorControl(loErrores);
1350 if (String.IsNullOrWhiteSpace(
this._Cta_IVA_Sop))
1352 lcErrorMessage =
"La cuenta de " + lcIva +
" soportado no puede quedar vacía.";
1353 lcErrorMessageTotal += String.Format(
"{0}{0}{1}", String.IsNullOrEmpty(lcErrorMessageTotal) ?
"" : Environment.NewLine, lcErrorMessage);
1354 _AddError(loErrores,
"_Cta_IVA_Sop", lcErrorMessage);
1358 if (String.IsNullOrWhiteSpace(
this._Cta_IVA_Rep))
1360 lcErrorMessage =
"La cuenta de " + lcIva +
" repercutido no puede quedar vacía.";
1361 lcErrorMessageTotal += String.Format(
"{0}{0}{1}", String.IsNullOrEmpty(lcErrorMessageTotal) ?
"" : Environment.NewLine, lcErrorMessage);
1362 _AddError(loErrores,
"_Cta_IVA_Rep", lcErrorMessage);
1366 if (this._Recargo != 0)
1368 if (String.IsNullOrWhiteSpace(
this._Cta_REC_Sop))
1370 lcErrorMessage =
"La cuenta de recargo soportado no puede quedar vacía pues ha declarado % recargo (" + this._Recargo.ToString().Trim() +
").";
1371 lcErrorMessageTotal += String.Format(
"{0}{0}{1}", String.IsNullOrEmpty(lcErrorMessageTotal) ?
"" : Environment.NewLine, lcErrorMessage);
1372 _AddError(loErrores,
"_Cta_REC_Sop", lcErrorMessage);
1376 if (String.IsNullOrWhiteSpace(
this._Cta_REC_Rep))
1378 lcErrorMessage =
"La cuenta de recargo repercutido no puede quedar vacía pues ha declarado % recargo (" + this._Recargo.ToString().Trim() +
").";
1379 lcErrorMessageTotal += String.Format(
"{0}{0}{1}", String.IsNullOrEmpty(lcErrorMessageTotal) ?
"" : Environment.NewLine, lcErrorMessage);
1380 _AddError(loErrores,
"_Cta_REC_Rep", lcErrorMessage);
1385 if (this._lProrrata)
1387 if (String.IsNullOrWhiteSpace(
this._Cta_IVA_Sop_Nodeduc))
1389 lcErrorMessage =
"La cuenta de " + lcIva +
" soportado no deducible no puede quedar vacía.";
1390 lcErrorMessageTotal += String.Format(
"{0}{0}{1}", String.IsNullOrEmpty(lcErrorMessageTotal) ?
"" : Environment.NewLine, lcErrorMessage);
1391 _AddError(loErrores,
"_Cta_IVA_Sop_Nodeduc", lcErrorMessage);
1398 if (
string.IsNullOrWhiteSpace(_Pendedsop))
1400 lcErrorMessage =
"La cuenta de soportado pendiente devengo para criterio de caja no puede estar vacía";
1401 lcErrorMessageTotal += String.Format(
"{0}{0}{1}", String.IsNullOrEmpty(lcErrorMessageTotal) ?
"" : Environment.NewLine, lcErrorMessage);
1402 _AddError(loErrores,
"_Pendedsop", lcErrorMessage);
1406 if (
string.IsNullOrWhiteSpace(_Pendevrep))
1408 lcErrorMessage =
"La cuenta de repercutido pendiente devengo para criterio de caja no puede estar vacía";
1409 lcErrorMessageTotal += String.Format(
"{0}{0}{1}", String.IsNullOrEmpty(lcErrorMessageTotal) ?
"" : Environment.NewLine, lcErrorMessage);
1410 _AddError(loErrores,
"_Pendevrep", lcErrorMessage);
1414 if (this._Recargo != 0)
1416 if (String.IsNullOrWhiteSpace(
this._Recsopcdev))
1418 lcErrorMessage =
"La cuenta de recargo soportado pendiente devengo no puede quedar vacía pues ha declarado % recargo (" + this._Recargo.ToString().Trim() +
").";
1419 lcErrorMessageTotal += String.Format(
"{0}{0}{1}", String.IsNullOrEmpty(lcErrorMessageTotal) ?
"" : Environment.NewLine, lcErrorMessage);
1420 _AddError(loErrores,
"_Recsopcdev", lcErrorMessage);
1424 if (String.IsNullOrWhiteSpace(
this._Recrepcdev))
1426 lcErrorMessage =
"La cuenta de recargo repercutido pendiente devengo no puede quedar vacía pues ha declarado % recargo (" + this._Recargo.ToString().Trim() +
").";
1427 lcErrorMessageTotal += String.Format(
"{0}{0}{1}", String.IsNullOrEmpty(lcErrorMessageTotal) ?
"" : Environment.NewLine, lcErrorMessage);
1428 _AddError(loErrores,
"_Recrepcdev", lcErrorMessage);
1433 if (this._lProrrata)
1439 if (
string.IsNullOrWhiteSpace(_Pendedsop_Nodeduc))
1441 lcErrorMessage =
"La cuenta de "+lcIva+
" soportado no deducible pendiente devengo para criterio de caja no puede estar vacía";
1442 lcErrorMessageTotal += String.Format(
"{0}{0}{1}", String.IsNullOrEmpty(lcErrorMessageTotal) ?
"" : Environment.NewLine, lcErrorMessage);
1443 _AddError(loErrores,
"_Pendedsop_Nodeduc", lcErrorMessage);
1451 _SetErrorControl(loErrores);
1452 _Error_Message = lcErrorMessageTotal;
1458 lcErrorMessage = lcErrorMessageTotal =
"";
1460 if (!_ValidaCuenta(_Cta_IVA_Sop, _cIvaSop3, lcIva +
" soportado", ref lcErrorMessage))
1462 lcErrorMessageTotal += String.Format(
"{0}{0}{1}", String.IsNullOrEmpty(lcErrorMessageTotal) ?
"" : Environment.NewLine, lcErrorMessage);
1463 _AddError(loErrores,
"_Cta_IVA_Sop", lcErrorMessage);
1467 if (!_ValidaCuenta(_Cta_REC_Sop, _cIvaRecSop3,
" recargo soportado", ref lcErrorMessage))
1469 lcErrorMessageTotal += String.Format(
"{0}{0}{1}", String.IsNullOrEmpty(lcErrorMessageTotal) ?
"" : Environment.NewLine, lcErrorMessage);
1470 _AddError(loErrores,
"_Cta_REC_Sop", lcErrorMessage);
1474 if (_lRecc && !_ValidaCuenta(_Pendedsop, String.IsNullOrWhiteSpace(_cIvaPendSop3) ? _cIvaSop3 : _cIvaPendSop3,
"criterio de caja soportado pendiente devengo", ref lcErrorMessage))
1476 lcErrorMessageTotal += String.Format(
"{0}{0}{1}", String.IsNullOrEmpty(lcErrorMessageTotal) ?
"" : Environment.NewLine, lcErrorMessage);
1477 _AddError(loErrores,
"_Pendedsop", lcErrorMessage);
1481 if (_lRecc && !_ValidaCuenta(_Recsopcdev, String.IsNullOrWhiteSpace(_cIvaRecPendSop3) ? _cIvaRecSop3 : _cIvaRecPendSop3,
"recargo soportado pendiente devengo", ref lcErrorMessage))
1483 lcErrorMessageTotal += String.Format(
"{0}{0}{1}", String.IsNullOrEmpty(lcErrorMessageTotal) ?
"" : Environment.NewLine, lcErrorMessage);
1484 _AddError(loErrores,
"_Recsopcdev", lcErrorMessage);
1490 if (!_ValidaCuenta(_Cta_IVA_Sop_Nodeduc, _cIvaSop3_Nodeduc, lcIva +
" soportado no deducible", ref lcErrorMessage))
1492 lcErrorMessageTotal += String.Format(
"{0}{0}{1}", String.IsNullOrEmpty(lcErrorMessageTotal) ?
"" : Environment.NewLine, lcErrorMessage);
1493 _AddError(loErrores,
"_Cta_IVA_Sop_Nodeduc", lcErrorMessage);
1499 if (!_ValidaCuenta(_Pendedsop_Nodeduc, String.IsNullOrWhiteSpace(_cIvaPendSop3_Nodeduc) ? _cIvaSop3 : _cIvaPendSop3_Nodeduc,
"criterio de caja soportado no deducible pendiente de devengo", ref lcErrorMessage))
1501 lcErrorMessageTotal += String.Format(
"{0}{0}{1}", String.IsNullOrEmpty(lcErrorMessageTotal) ?
"" : Environment.NewLine, lcErrorMessage);
1502 _AddError(loErrores,
"_Pendedsop_Nodeduc", lcErrorMessage);
1508 if (!_ValidaCuenta(_Cta_IVA_Rep, _cIvaRep3, lcIva +
" repercutido", ref lcErrorMessage))
1510 lcErrorMessageTotal += String.Format(
"{0}{0}{1}", String.IsNullOrEmpty(lcErrorMessageTotal) ?
"" : Environment.NewLine, lcErrorMessage);
1511 _AddError(loErrores,
"_Cta_IVA_Rep", lcErrorMessage);
1515 if (!_ValidaCuenta(_Cta_REC_Rep, _cIvaRecRep3,
" recargo repercutido", ref lcErrorMessage))
1517 lcErrorMessageTotal += String.Format(
"{0}{0}{1}", String.IsNullOrEmpty(lcErrorMessageTotal) ?
"" : Environment.NewLine, lcErrorMessage);
1518 _AddError(loErrores,
"_Cta_REC_Rep", lcErrorMessage);
1522 if (_lRecc && !_ValidaCuenta(_Pendevrep, String.IsNullOrWhiteSpace(_cIvaPendRep3) ? _cIvaRep3 : _cIvaPendRep3,
"criterio de caja repercutido pendiente devengo", ref lcErrorMessage))
1524 lcErrorMessageTotal += String.Format(
"{0}{0}{1}", String.IsNullOrEmpty(lcErrorMessageTotal) ?
"" : Environment.NewLine, lcErrorMessage);
1525 _AddError(loErrores,
"_Pendevrep", lcErrorMessage);
1529 if (_lRecc && !_ValidaCuenta(_Recrepcdev, String.IsNullOrWhiteSpace(_cIvaRecPendRep3) ? _cIvaRecRep3 : _cIvaRecPendRep3,
"recargo repercutido pendiente devengo", ref lcErrorMessage))
1531 lcErrorMessageTotal += String.Format(
"{0}{0}{1}", String.IsNullOrEmpty(lcErrorMessageTotal) ?
"" : Environment.NewLine, lcErrorMessage);
1532 _AddError(loErrores,
"_Recrepcdev", lcErrorMessage);
1538 _SetErrorControl(loErrores);
1539 _Error_Message = lcErrorMessageTotal;
1547 if (!
string.IsNullOrWhiteSpace(this._Cta_IVA_Sop) && !
string.IsNullOrWhiteSpace(this._Cta_REC_Sop) && this._Cta_IVA_Sop == this._Cta_REC_Sop)
1549 lcErrorMessage =
"Las cuentas de " + lcIva +
" soportado y de recargo soportado deben ser distintas (" + this._Cta_IVA_Sop +
").";
1550 lcErrorMessageTotal += String.Format(
"{0}{0}{1}", String.IsNullOrEmpty(lcErrorMessageTotal) ?
"" : Environment.NewLine, lcErrorMessage);
1551 _AddError(loErrores,
"_Cta_IVA_Sop", lcErrorMessage);
1552 _AddError(loErrores,
"_Cta_REC_Sop", lcErrorMessage);
1557 if (!
string.IsNullOrWhiteSpace(this._Cta_IVA_Sop) && !
string.IsNullOrWhiteSpace(this._Pendedsop) && this._Cta_IVA_Sop == this._Pendedsop)
1559 lcErrorMessage =
"Las cuentas de " + lcIva +
" soportado y de criterio de caja soportado pendiente devengo deben ser distintas (" + this._Cta_IVA_Sop +
").";
1560 lcErrorMessageTotal += String.Format(
"{0}{0}{1}", String.IsNullOrEmpty(lcErrorMessageTotal) ?
"" : Environment.NewLine, lcErrorMessage);
1561 _AddError(loErrores,
new List<string>() {
"_Pendedsop",
"_Cta_IVA_Sop" }, lcErrorMessage);
1565 if (!
string.IsNullOrWhiteSpace(this._Cta_IVA_Sop) && !
string.IsNullOrWhiteSpace(this._Recsopcdev) && this._Cta_IVA_Sop == this._Recsopcdev)
1567 lcErrorMessage =
"Las cuentas de " + lcIva +
" soportado y de recargo soportado pendiente devengo deben ser distintas (" + this._Cta_IVA_Sop +
").";
1568 lcErrorMessageTotal += String.Format(
"{0}{0}{1}", String.IsNullOrEmpty(lcErrorMessageTotal) ?
"" : Environment.NewLine, lcErrorMessage);
1569 _AddError(loErrores,
new List<string>() {
"_Recsopcdev",
"_Cta_IVA_Sop" }, lcErrorMessage);
1573 if (this._lProrrata)
1577 if (!
string.IsNullOrWhiteSpace(this._Cta_IVA_Sop) && !
string.IsNullOrWhiteSpace(this._Cta_IVA_Sop_Nodeduc)
1578 && this._Cta_IVA_Sop == this._Cta_IVA_Sop_Nodeduc)
1580 lcErrorMessage =
"Las cuentas de " + lcIva +
" soportado y de " + lcIva +
" soportado no deducible deben ser distintas (" + this._Cta_IVA_Sop_Nodeduc +
").";
1581 lcErrorMessageTotal += String.Format(
"{0}{0}{1}", String.IsNullOrEmpty(lcErrorMessageTotal) ?
"" : Environment.NewLine, lcErrorMessage);
1582 _AddError(loErrores,
new List<string>() {
"_Cta_IVA_Sop_Nodeduc",
"_Cta_IVA_Sop" }, lcErrorMessage);
1586 if (!
string.IsNullOrWhiteSpace(this._Cta_IVA_Sop) && !
string.IsNullOrWhiteSpace(this._Pendedsop_Nodeduc)
1587 && this._Cta_IVA_Sop == this._Pendedsop_Nodeduc)
1589 lcErrorMessage =
"Las cuentas de " + lcIva +
" soportado y de "+lcIva+
" soportado no deducible pendiente devengo deben ser distintas (" + this._Cta_IVA_Sop +
").";
1590 lcErrorMessageTotal += String.Format(
"{0}{0}{1}", String.IsNullOrEmpty(lcErrorMessageTotal) ?
"" : Environment.NewLine, lcErrorMessage);
1591 _AddError(loErrores,
new List<string>() {
"_Pendedsop_Nodeduc",
"_Cta_IVA_Sop" }, lcErrorMessage);
1597 if (!
string.IsNullOrWhiteSpace(this._Cta_IVA_Sop_Nodeduc) && !
string.IsNullOrWhiteSpace(this._Cta_REC_Sop)
1598 && this._Cta_IVA_Sop_Nodeduc == this._Cta_REC_Sop)
1600 lcErrorMessage =
"Las cuentas de " + lcIva +
" soportado no deducible y de recargo soportado deben ser distintas (" + this._Cta_IVA_Sop_Nodeduc +
").";
1601 lcErrorMessageTotal += String.Format(
"{0}{0}{1}", String.IsNullOrEmpty(lcErrorMessageTotal) ?
"" : Environment.NewLine, lcErrorMessage);
1602 _AddError(loErrores,
new List<string>() {
"_Cta_IVA_Sop_Nodeduc",
"_Cta_REC_Sop" }, lcErrorMessage);
1606 if (!
string.IsNullOrWhiteSpace(this._Cta_IVA_Sop_Nodeduc) && !
string.IsNullOrWhiteSpace(this._Pendedsop)
1607 && this._Cta_IVA_Sop_Nodeduc == this._Pendedsop)
1609 lcErrorMessage =
"Las cuentas de " + lcIva +
" soportado no deducible y de criterio de caja soportado pendiente devengo deben ser distintas (" + this._Cta_IVA_Sop_Nodeduc +
").";
1610 lcErrorMessageTotal += String.Format(
"{0}{0}{1}", String.IsNullOrEmpty(lcErrorMessageTotal) ?
"" : Environment.NewLine, lcErrorMessage);
1611 _AddError(loErrores,
new List<string>() {
"_Cta_IVA_Sop_Nodeduc",
"_Pendedsop" }, lcErrorMessage);
1616 if (!
string.IsNullOrWhiteSpace(this._Cta_IVA_Sop_Nodeduc) && !
string.IsNullOrWhiteSpace(this._Recsopcdev)
1617 && this._Cta_IVA_Sop_Nodeduc == this._Recsopcdev)
1619 lcErrorMessage =
"Las cuentas de " + lcIva +
" soportado no deducible y de recargo soportado pendiente devengo deben ser distintas (" + this._Cta_IVA_Sop_Nodeduc +
").";
1620 lcErrorMessageTotal += String.Format(
"{0}{0}{1}", String.IsNullOrEmpty(lcErrorMessageTotal) ?
"" : Environment.NewLine, lcErrorMessage);
1621 _AddError(loErrores,
new List<string>() {
"_Recsopcdev",
"_Cta_IVA_Sop_Nodeduc" }, lcErrorMessage);
1625 if (!
string.IsNullOrWhiteSpace(this._Cta_IVA_Sop_Nodeduc) && !
string.IsNullOrWhiteSpace(this._Pendedsop_Nodeduc)
1626 && this._Cta_IVA_Sop_Nodeduc == this._Pendedsop_Nodeduc)
1628 lcErrorMessage =
"Las cuentas de " + lcIva +
" soportado no deducible y de " + lcIva +
" soportado no deducible pendiente devengo deben ser distintas (" + this._Cta_IVA_Sop_Nodeduc +
").";
1629 lcErrorMessageTotal += String.Format(
"{0}{0}{1}", String.IsNullOrEmpty(lcErrorMessageTotal) ?
"" : Environment.NewLine, lcErrorMessage);
1630 _AddError(loErrores,
new List<string>() {
"_Pendedsop_Nodeduc",
"_Cta_IVA_Sop_Nodeduc" }, lcErrorMessage);
1637 if (!
string.IsNullOrWhiteSpace(this._Pendedsop) && !
string.IsNullOrWhiteSpace(this._Cta_REC_Sop) && this._Pendedsop == this._Cta_REC_Sop)
1639 lcErrorMessage =
"Las cuentas de criterio de caja soportado pendiente devengo y recargo soportado deben ser distintas (" + this._Pendedsop +
").";
1640 lcErrorMessageTotal += String.Format(
"{0}{0}{1}", String.IsNullOrEmpty(lcErrorMessageTotal) ?
"" : Environment.NewLine, lcErrorMessage);
1641 _AddError(loErrores,
new List<string>() {
"_Pendedsop",
"_Cta_REC_Sop" }, lcErrorMessage);
1645 if (!
string.IsNullOrWhiteSpace(this._Pendedsop) && !
string.IsNullOrWhiteSpace(this._Recsopcdev) && this._Pendedsop == this._Recsopcdev)
1647 lcErrorMessage =
"Las cuentas de criterio de caja soportado pendiente devengo y recargo soportado pendiente devengo deben ser distintas (" + this._Pendedsop +
").";
1648 lcErrorMessageTotal += String.Format(
"{0}{0}{1}", String.IsNullOrEmpty(lcErrorMessageTotal) ?
"" : Environment.NewLine, lcErrorMessage);
1649 _AddError(loErrores,
new List<string>() {
"_Recsopcdev",
"_Pendedsop" }, lcErrorMessage);
1653 if (this._lProrrata)
1657 if (!
string.IsNullOrWhiteSpace(this._Pendedsop) && !
string.IsNullOrWhiteSpace(this._Pendedsop_Nodeduc) && this._Pendedsop == this._Pendedsop_Nodeduc)
1659 lcErrorMessage =
"Las cuentas de criterio de caja soportado pendiente devengo y "+lcIva+
" soportado no deducible pendiente devengo deben ser distintas (" + this._Pendedsop +
").";
1660 lcErrorMessageTotal += String.Format(
"{0}{0}{1}", String.IsNullOrEmpty(lcErrorMessageTotal) ?
"" : Environment.NewLine, lcErrorMessage);
1661 _AddError(loErrores,
new List<string>() {
"_Pendedsop_Nodeduc",
"_Pendedsop" }, lcErrorMessage);
1667 if (!
string.IsNullOrWhiteSpace(this._Pendedsop_Nodeduc) && !
string.IsNullOrWhiteSpace(this._Cta_REC_Sop) && this._Pendedsop_Nodeduc == this._Cta_REC_Sop)
1669 lcErrorMessage =
"Las cuentas de recargo soportado y " + lcIva +
" soportado no deducible pendiente devengo deben ser distintas (" + this._Pendedsop_Nodeduc +
").";
1670 lcErrorMessageTotal += String.Format(
"{0}{0}{1}", String.IsNullOrEmpty(lcErrorMessageTotal) ?
"" : Environment.NewLine, lcErrorMessage);
1671 _AddError(loErrores,
new List<string>() {
"_Pendedsop_Nodeduc",
"_Cta_REC_Sop" }, lcErrorMessage);
1675 if (!
string.IsNullOrWhiteSpace(this._Pendedsop_Nodeduc) && !
string.IsNullOrWhiteSpace(this._Recsopcdev) && this._Pendedsop_Nodeduc == this._Recsopcdev)
1677 lcErrorMessage =
"Las cuentas de recargo soportado pendiente de devengo y " + lcIva +
" soportado no deducible pendiente devengo deben ser distintas (" + this._Pendedsop_Nodeduc +
").";
1678 lcErrorMessageTotal += String.Format(
"{0}{0}{1}", String.IsNullOrEmpty(lcErrorMessageTotal) ?
"" : Environment.NewLine, lcErrorMessage);
1679 _AddError(loErrores,
new List<string>() {
"_Pendedsop_Nodeduc",
"_Recsopcdev" }, lcErrorMessage);
1684 if (!
string.IsNullOrWhiteSpace(this._Recsopcdev) && !
string.IsNullOrWhiteSpace(this._Cta_REC_Sop)
1685 && this._Recsopcdev == this._Cta_REC_Sop)
1687 lcErrorMessage =
"Las cuentas de recargo soportado y criterio de caja recargo soportado pendiente devengo deben ser distintas (" + this._Cta_IVA_Sop +
").";
1688 lcErrorMessageTotal += String.Format(
"{0}{0}{1}", String.IsNullOrEmpty(lcErrorMessageTotal) ?
"" : Environment.NewLine, lcErrorMessage);
1689 _AddError(loErrores,
new List<string>() {
"_Recsopcdev",
"_Cta_REC_Sop" }, lcErrorMessage);
1694 if (!
string.IsNullOrWhiteSpace(this._Cta_IVA_Rep) && !
string.IsNullOrWhiteSpace(this._Cta_REC_Rep) && this._Cta_IVA_Rep == this._Cta_REC_Rep)
1697 lcErrorMessage =
"Las cuentas de " + lcIva +
" repercutido y de recargo repercutido deben ser distintas (" + this._Cta_IVA_Rep +
").";
1698 lcErrorMessageTotal += String.Format(
"{0}{0}{1}", String.IsNullOrEmpty(lcErrorMessageTotal) ?
"" : Environment.NewLine, lcErrorMessage);
1699 _AddError(loErrores,
new List<string>() {
"_Cta_REC_Rep",
"_Cta_IVA_Rep" }, lcErrorMessage);
1703 if (!
string.IsNullOrWhiteSpace(this._Cta_IVA_Rep) && !
string.IsNullOrWhiteSpace(this._Recrepcdev) && this._Cta_IVA_Rep == this._Recrepcdev)
1705 lcErrorMessage =
"Las cuentas de " + lcIva +
" repercutido y de recargo repercutido pendiente devengo deben ser distintas (" + this._Cta_IVA_Rep +
").";
1706 lcErrorMessageTotal += String.Format(
"{0}{0}{1}", String.IsNullOrEmpty(lcErrorMessageTotal) ?
"" : Environment.NewLine, lcErrorMessage);
1707 _AddError(loErrores,
new List<string>() {
"_Recrepcdev",
"_Cta_IVA_Rep" }, lcErrorMessage);
1711 if (!
string.IsNullOrWhiteSpace(this._Cta_IVA_Rep) && !
string.IsNullOrWhiteSpace(this._Pendevrep) && this._Cta_IVA_Rep == this._Pendevrep)
1713 lcErrorMessage =
"Las cuentas de " + lcIva +
" repercutido y de recargo repercutido pendiente devengo deben ser distintas (" + this._Cta_IVA_Rep +
").";
1714 lcErrorMessageTotal += String.Format(
"{0}{1}", String.IsNullOrEmpty(lcErrorMessageTotal) ?
"" : Environment.NewLine, lcErrorMessage);
1715 _AddError(loErrores,
new List<string>() {
"_Recrepcdev",
"_Cta_IVA_Rep" }, lcErrorMessage);
1719 if (!
string.IsNullOrWhiteSpace(this._Pendevrep) && !
string.IsNullOrWhiteSpace(this._Recrepcdev) && this._Pendevrep == this._Recrepcdev)
1721 lcErrorMessage =
"Las cuentas de criterio de caja repercutido pendiente devengo y recargo repercutido pendiente devengo deben ser distintas (" + this._Pendevrep +
").";
1722 lcErrorMessageTotal += String.Format(
"{0}{0}{1}", String.IsNullOrEmpty(lcErrorMessageTotal) ?
"" : Environment.NewLine, lcErrorMessage);
1723 _AddError(loErrores,
new List<string>() {
"_Pendevrep",
"_Recrepcdev" }, lcErrorMessage);
1727 if (!
string.IsNullOrWhiteSpace(this._Recrepcdev) && !
string.IsNullOrWhiteSpace(this._Cta_REC_Rep) && this._Recrepcdev == this._Cta_REC_Rep)
1729 lcErrorMessage =
"Las cuentas de criterio de caja repercutido pendiente devengo y recargo repercutido deben ser distintas (" + this._Pendevrep +
").";
1730 lcErrorMessageTotal += String.Format(
"{0}{0}{1}", String.IsNullOrEmpty(lcErrorMessageTotal) ?
"" : Environment.NewLine, lcErrorMessage);
1731 _AddError(loErrores,
new List<string>() {
"_Recrepcdev",
"_Cta_REC_Rep" }, lcErrorMessage);
1735 if (!
string.IsNullOrWhiteSpace(this._Pendevrep) && !
string.IsNullOrWhiteSpace(this._Cta_REC_Rep) && this._Pendevrep == this._Cta_REC_Rep)
1737 lcErrorMessage =
"Las cuentas de recargo repercutido y criterio de caja repercutido pendiente devengo deben ser distintas (" + this._Pendevrep +
").";
1738 lcErrorMessageTotal += String.Format(
"{0}{0}{1}", String.IsNullOrEmpty(lcErrorMessageTotal) ?
"" : Environment.NewLine, lcErrorMessage);
1739 _AddError(loErrores,
new List<string>() {
"_Pendevrep",
"_Cta_REC_Rep" }, lcErrorMessage);
1745 _SetErrorControl(loErrores);
1746 _Error_Message = lcErrorMessageTotal;
1750 string lcMensajeError;
1751 llOk = _Comprobar_Ctas_Iva(_Cta_IVA_Sop, _Cta_IVA_Rep, _Cta_REC_Sop, _Cta_REC_Rep, _Pendedsop, _Pendevrep, _Recsopcdev, _Recrepcdev, _Cta_IVA_Sop_Nodeduc, _Pendedsop_Nodeduc, out lcMensajeError);
1753 _Error_Message = lcMensajeError;
1761 private void _AddError(Dictionary<String, String> toErrores, List<String> tcListKeys, String tcError)
1763 foreach(String lcKey
in tcListKeys) _AddError(toErrores, lcKey, tcError);
1766 private void _AddError(Dictionary<String, String> toErrores, String tcKey, String tcError)
1768 if(toErrores.ContainsKey(tcKey))
1770 if (!toErrores[tcKey].EndsWith(
".")) toErrores[tcKey] +=
".";
1771 toErrores[tcKey] += tcError;
1775 toErrores.Add(tcKey, tcError);
1779 private void _SetErrorControl(Dictionary<String, String> toErrores)
1781 if (this._FormMante != null && toErrores is Dictionary<String, String> && toErrores.Count > 0)
1784 this._FormMante._SetFocusOnProperty(toErrores.First().Key);
1786 foreach (KeyValuePair<String, String> loKeyValuePair
in toErrores)
1788 this._FormMante._SetError_OnControl(loKeyValuePair.Key, loKeyValuePair.Value);
1802 bool llEsIvaCee =
false;
1804 if (
string.IsNullOrWhiteSpace(_Codigo))
1807 string lcIvaOrigen = Convert.ToString(DB.SQLValor(
"tipo_iva",
"iva_cee", _Codigo,
"codigo"));
1809 llEsIvaCee = !
string.IsNullOrWhiteSpace(lcIvaOrigen);
1820 return ObtenerValoresDeTipo().All(t => t == 0);
1829 return ObtenerValoresDeTipo().All(t => t == 1);
1836 private static IEnumerable<int> ObtenerValoresDeTipo()
1838 DataTable datos =
new DataTable();
1840 var lcSql =
"SELECT TIPO FROM " + DB.SQLDatabase(
"GESTION",
"TIPO_IVA");
1841 if (DB.SQLExec(lcSql, ref datos) && datos.Rows.Count > 0)
1843 foreach (DataRow row
in datos.Rows)
1845 yield
return Convert.ToInt32(row[
"tipo"]);
1851 throw new NotSupportedException();
1855 #endregion METODOS PUBLICOS 1857 #region Métodos auxiliares 1866 string pendevrep = Convert.ToString(EW_GLOBAL._GetVariable(
"wc_pendevrep"));
1867 string pendedsop = Convert.ToString(EW_GLOBAL._GetVariable(
"wc_pendedsop"));
1868 string recrepcdev = Convert.ToString(EW_GLOBAL._GetVariable(
"wc_recrepcdev"));
1869 string recsopcdev = Convert.ToString(EW_GLOBAL._GetVariable(
"wc_recsopcdev"));
1872 bool esReccDelCodcom = (pendevrep.StartsWith(tcCuenta) || pendedsop.StartsWith(tcCuenta) ||
1873 recrepcdev.StartsWith(tcCuenta) || recsopcdev.StartsWith(tcCuenta));
1875 if (esReccDelCodcom)
1879 tcCuenta = tcCuenta.Trim();
1880 string cuentaSqlString = DB.SQLString(tcCuenta);
1882 DataTable ldtDatos =
new DataTable();
1884 string lcSql =
"SELECT COUNT(CODIGO) AS CONTA FROM " + DB.SQLDatabase(
"GESTION",
"TIPO_IVA") +
1885 " WHERE PENDEVREP = " + cuentaSqlString +
1886 " OR PENDEDSOP = " + cuentaSqlString +
1887 " OR RECSOPCDEV = " + cuentaSqlString +
1888 " OR RECREPCDEV = " + cuentaSqlString;
1889 if(DB.SQLExec(lcSql, ref ldtDatos) && ldtDatos.Rows.Count > 0)
1891 int vecesQueAparece = Convert.ToInt32(ldtDatos.Rows[0][
"CONTA"]);
1892 return (vecesQueAparece > 0);
1903 bool llEsIvaCee =
false;
1905 if (
string.IsNullOrWhiteSpace(tcTipoIva))
1908 string lcIvaOrigen = Convert.ToString(DB.SQLValor(
"tipo_iva",
"iva_cee", tcTipoIva,
"codigo"));
1910 llEsIvaCee = !
string.IsNullOrWhiteSpace(lcIvaOrigen);
1925 loForm.FormClosing +=
new FormClosingEventHandler(ewMante_FormClosing);
1926 loForm._ShowDialog();
1933 #endregion Métodos auxiliares Clase de negocio base para mantenimientos
TipoImpuesto
Tipo de impuesto
DataTable _Control_Iva_Deducible(string tcCampoCuenta, string tcValorCuenta)
Cuando marcamos que el Tipo de IVA es deducible es neceasrio realizar una serie de controles ...
static bool ContieneUnicamenteTiposParaIGIC()
Determina si tenemos definidos tipos que corresponden a IGIC (tipo 1)
AccionTraspasoUltimoEjercicio
Indica la acción a arealizar si hay que traspasar los datos al siguiente ejercicio ...
bool _EsIvaCee()
Devuelve true si el código de IVA cargado en el objeto es el equivalente CEE de otro tipo de IVA ...
Indica que es un mantenimiento con asistente
bool HayMovimientos()
Indica si hay movimientos es las tabas de iva
TipoIVA()
Constructor vacío
bool _Comprobar_Ctas_Iva(string tcTipoImpuesto, string tcIvaSop, string tcIvaRep, string tcRecSop, string tcRecRep, string tcCriIvaSop, string tcCriIvaRep, string tcCriRecSop, string tcCriRecRep, string tcProrrataIvaSop, string tcProrrataCriIvaSop, out string tcMensaje)
Comprueba si existen otros tipos de IVA con las cuentas contables incompatibles con el que se está ed...
bool _Comprobar_Ctas_Iva(string tcTipoImpuesto, string tcIvaSop, string tcIvaRep, string tcRecSop, string tcRecRep, string tcCriIvaSop, string tcCriIvaRep, string tcCriRecSop, string tcCriRecRep, out string tcMensaje)
Comprueba si existen otros tipos de IVA con las cuentas contables incompatibles con el que se está ed...
override bool _TraspasarSiguienteEjercicio(TipoExecute toTipoExecute, string tcEjercicio, bool tbIsNew)
Hacemos las validaciones de los ivas en el siguiente ejercicio
bool _Comprobar_Ctas_Iva(string tcIvaSop, string tcIvaRep, string tcRecSop, string tcRecRep, string tcCriIvaSop, string tcCriIvaRep, string tcCriRecSop, string tcCriRecRep, out string tcMensaje)
Comprueba si existen otros tipos de IVA con las cuentas contables incompatibles con el que se está ed...
TipoExecute
Tipos de ejecución de los métodos
_EstadosMantenimiento
Declaro un enum para los estados del mantenimiento.
static bool _EsIvaCee(string tcTipoIva)
Devuelve true si el código de IVA cargado en el objeto es el equivalente CEE de otro tipo de IVA ...
override bool _Save_Before()
Validamos el tipo de IVA exento
override bool _Delete()
Borra el tipo de IVA cargado
bool _Comprobar_Ctas_Iva(string tcIvaSop, string tcIvaRep, string tcRecSop, string tcRecRep, string tcCriIvaSop, string tcCriIvaRep, string tcCriRecSop, string tcCriRecRep, string tcProrrataIvaSop, string tcProrrataCriIvaSop, out string tcMensaje, string tcEjercicio)
Comprueba si existen otros tipos de IVA con las cuentas contables incompatibles con el que se está ed...
Lisatdo base para los listados de IVA Repercutido, Soportado ...
bool _ShowAsistente(String tcNuevoCodigo="")
Abre la pantalla del asistente
static bool _EsCuentaRecc(string tcCuenta)
Determina si la cuenta es de RECC mediante la consulta de que esté aplicada en algún tipo de IVA...
bool _Comprobar_Ctas_Iva(string tcIvaSop, string tcIvaRep, string tcRecSop, string tcRecRep, string tcCriIvaSop, string tcCriIvaRep, string tcCriRecSop, string tcCriRecRep, string tcProrrataIvaSop, string tcProrrataCriIvaSop, out string tcMensaje)
Comprueba si existen otros tipos de IVA con las cuentas contables incompatibles con el que se está ed...
static bool ContieneUnicamenteTiposParaIVA()
Determina si tenemos definidos tipos que corresponden a IVA (tipo 0)