diff --git a/App_Code/LogicNominas.vb b/App_Code/LogicNominas.vb index 8f2cafafa..bbac807ee 100644 --- a/App_Code/LogicNominas.vb +++ b/App_Code/LogicNominas.vb @@ -10,7 +10,7 @@ Public Class LogicNominas Public Sub New() guardarLogTimbrado = False End Sub - Public Function TimbrarNomina(CveNomina As Integer, CvePersonal As Integer, CvePeriodo As Integer, UsuarioActual As Usuario, Optional CvePAC As Integer = 4) As String + Public Function TimbrarNomina(CveNomina As Integer, CvePersonal As Integer, CvePeriodo As Integer, UsuarioActual As Usuario, Optional CvePAC As Integer = 4, Optional versionTimbre As VersionTimbradoEnum = VersionTimbradoEnum.PorDefectoEmpresa) As String Dim Retorno As String = "" GetError = "" 'Le reasigno el current error a nulo Dim sw As Diagnostics.Stopwatch = Nothing @@ -19,7 +19,7 @@ Public Class LogicNominas sw.Start() End If - Dim cfdi As CFDITimbre = PreTimbrar(CveNomina, UsuarioActual, False) 'CvePersonal, CvePeriodo, + Dim cfdi As CFDITimbre = PreTimbrar(CveNomina, UsuarioActual, False, versionTimbre) 'CvePersonal, CvePeriodo, If cfdi IsNot Nothing AndAlso cfdi.Mensaje = "" Then If Not cfdi.Timbrado Then Dim ObjTimbrado As New Timbrado @@ -28,7 +28,7 @@ Public Class LogicNominas ObjFactura.Folio = cfdi.Comprobante.Folio.ToEntero() ObjFactura.Serie = cfdi.Comprobante.Serie ObjFactura.Timbre = cfdi - If Not ObjTimbrado.TimbrarFactura(UsuarioActual, ObjFactura, CvePAC) Then + If Not ObjTimbrado.TimbrarFactura(UsuarioActual, ObjFactura, CvePAC, versionTimbre) Then Retorno = ObjTimbrado.MensajeErrorCFDI End If End If @@ -37,7 +37,7 @@ Public Class LogicNominas Else If hasfiniquito Then - cfdi = PreTimbrar(CveNomina, UsuarioActual, True) 'CvePersonal, CvePeriodo, + cfdi = PreTimbrar(CveNomina, UsuarioActual, True, versionTimbre) 'CvePersonal, CvePeriodo, If cfdi IsNot Nothing AndAlso cfdi.Mensaje = "" Then If Not cfdi.Timbrado Then @@ -47,7 +47,7 @@ Public Class LogicNominas ObjFactura.Folio = cfdi.Comprobante.Folio.ToEntero() ObjFactura.Serie = cfdi.Comprobante.Serie ObjFactura.Timbre = cfdi - If Not ObjTimbrado.TimbrarFactura(UsuarioActual, ObjFactura, CvePAC) Then + If Not ObjTimbrado.TimbrarFactura(UsuarioActual, ObjFactura, CvePAC, versionTimbre) Then Retorno = ObjTimbrado.MensajeErrorCFDI End If If Retorno <> "" Then @@ -81,7 +81,13 @@ Public Class LogicNominas Return Retorno End Function Dim hasfiniquito As Boolean - Public Function PreTimbrar(CveNomina As Integer, UsuarioActual As Usuario, TimbreIndemnizacion As Boolean) As CFDITimbre + Public Function PreTimbrar(CveNomina As Integer, UsuarioActual As Usuario, TimbreIndemnizacion As Boolean, Optional versionTimbrex As VersionTimbradoEnum = VersionTimbradoEnum.PorDefectoEmpresa) As CFDITimbre + + Dim versionTimbre As VersionTimbradoEnum = versionTimbrex + If versionTimbre = VersionTimbradoEnum.PorDefectoEmpresa Then + versionTimbre = If(UsuarioActual.Empresa.Funcionalidad(350) = "1", VersionTimbradoEnum.Version4_0, VersionTimbradoEnum.Version3_3) + End If + Dim continuar As Boolean = True hasfiniquito = False Dim CvePersonal As Integer = -1 @@ -319,7 +325,7 @@ Public Class LogicNominas End If cfdi.Nomina.CveNomina = CveNomina - cfdi.Receptor.UsoCFDI = If(UsuarioActual.Empresa.Funcionalidad(350).Contiene("1"), "CN01", "P01") + cfdi.Receptor.UsoCFDI = If(versionTimbre = VersionTimbradoEnum.Version4_0, "CN01", "P01") cfdi.Receptor.RFC = RFC cfdi.Receptor.Nombre = NombreCompleto @@ -427,7 +433,7 @@ Public Class LogicNominas If ObjDeducciones IsNot Nothing AndAlso ObjDeducciones.Count > 0 Then cfdi.Nomina.Deducciones = ObjDeducciones - cfdi.Comprobante.Version = If(UsuarioActual.Empresa.Funcionalidad(350).Contiene("1"), "4.0", "3.3") + cfdi.Comprobante.Version = If(versionTimbre = VersionTimbradoEnum.Version4_0, "4.0", "3.3") cfdi.Comprobante.Serie = Serie cfdi.Comprobante.Folio = Folio cfdi.Comprobante.Fecha = Now @@ -440,7 +446,7 @@ Public Class LogicNominas cfdi.Comprobante.TipoDocto = "Egs" cfdi.Comprobante.MetodoPago = "PUE" cfdi.Comprobante.CondicionesdePago = "" '"CONTADO" - cfdi.Comprobante.FormadePago = If(UsuarioActual.Empresa.Funcionalidad(350).Contiene("1"), "", "99") + cfdi.Comprobante.FormadePago = If(versionTimbre = VersionTimbradoEnum.Version4_0, "", "99") cfdi.Comprobante.LugarExpedicion = UsuarioActual.Empresa.CP.ToString() ' AHORITA SOLO SE REQUIERE ESPECIFICAR EL CODIGO POSTAL cfdi.Comprobante.NumCuentaPago = "" 'objPersonal.BancoNumCuenta '4.0 diff --git a/App_Code/Timbrado.vb b/App_Code/Timbrado.vb index 0ca7bf273..264ecd40d 100644 --- a/App_Code/Timbrado.vb +++ b/App_Code/Timbrado.vb @@ -12,6 +12,12 @@ Imports Extensiones Imports Newtonsoft.Json.Linq Imports ProfactCartaPorte = Profact.TimbraCFDI33.Complementos.CartaPorte20 + +Public Enum VersionTimbradoEnum As Integer + PorDefectoEmpresa = -1 + Version3_3 = 1 + Version4_0 = 2 +End Enum Public Class Timbrado #Region "P R O P I E D A D E S" @@ -1192,11 +1198,14 @@ Public Class Timbrado Return Timbre End Function - Public Function TimbrarFactura(UsuarioActual As Usuario, Ventas As Modelos.Factura, Optional CvePACEspecial As Integer = -1) As Boolean + Public Function TimbrarFactura(UsuarioActual As Usuario, Ventas As Modelos.Factura, Optional CvePACEspecial As Integer = -1, Optional versionTimbre As VersionTimbradoEnum = VersionTimbradoEnum.PorDefectoEmpresa) As Boolean Dim Retorno As Boolean = False Dim tCvePAC As Integer = UsuarioActual.Empresa.CvePAC If CvePACEspecial <> -1 Then tCvePAC = CvePACEspecial + If versionTimbre = VersionTimbradoEnum.PorDefectoEmpresa Then + versionTimbre = If(UsuarioActual.Empresa.Funcionalidad(350) = "1", VersionTimbradoEnum.Version4_0, VersionTimbradoEnum.Version3_3) + End If 'validación especial. If Ventas.TipoDocto.Contiene("Ing", "Dev") Then @@ -1228,15 +1237,15 @@ Public Class Timbrado Retorno = If(Ret = "", True, False) Case 3 - If UsuarioActual.Empresa.Funcionalidad(350) = "1" Then - Retorno = TimbrarFacturaProFactv40(UsuarioActual, Ventas) + If versionTimbre = VersionTimbradoEnum.Version4_0 Then + Retorno = TimbrarFacturaProFactV40(UsuarioActual, Ventas) Else Retorno = TimbrarFacturaProFact(UsuarioActual, Ventas) End If 'Retorno = TimbrarFacturaProFact(UsuarioActual, Ventas, TmpDTConceptos, TmpDTImpuestos, TmpDTComplementos, Ruta, LstFordASN, FordGSDBM, ObjV) Case 4 - If UsuarioActual.Empresa.Funcionalidad(350) = "1" Then + If versionTimbre = VersionTimbradoEnum.Version4_0 Then Dim Ret As String = TimbrarFacturaGoCFDIv40(Ventas, UsuarioActual, CvePACEspecial) If Ret <> "" Then MensajeErrorCFDI = Ret Retorno = If(Ret = "", True, False) @@ -1248,7 +1257,7 @@ Public Class Timbrado Case 5 - If UsuarioActual.Empresa.Funcionalidad(350) = "1" Then + If versionTimbre = VersionTimbradoEnum.Version4_0 Then Dim Ret As String = TimbrarFacturaPADEv40(Ventas, UsuarioActual, CvePACEspecial) If Ret <> "" Then MensajeErrorCFDI = Ret Retorno = If(Ret = "", True, False) diff --git a/Nomina/Finiquito.aspx.cs b/Nomina/Finiquito.aspx.cs index 71a01e261..4918a6ca4 100644 --- a/Nomina/Finiquito.aspx.cs +++ b/Nomina/Finiquito.aspx.cs @@ -75,34 +75,12 @@ public partial class Nomina_Finiquito : ClsPaginas } set { ViewState["dtempleados"] = value; } - } - private HybridDictionary EmpresasFuncionalidades - { - get - { - if (ViewState["EmpresasFuncionalidades"] == null) { return null; } - else { return (HybridDictionary)ViewState["EmpresasFuncionalidades"]; } - } - - set { ViewState["EmpresasFuncionalidades"] = value; } - } - - private HybridDictionary EmpresasFuncionalidadesnoV4 - { - get - { - if (ViewState["EmpresasFuncionalidadesnoV4"] == null) { return null; } - else { return (HybridDictionary)ViewState["EmpresasFuncionalidadesnoV4"]; } - } - - set { ViewState["EmpresasFuncionalidadesnoV4"] = value; } - } + } #endregion protected void Page_Load(object sender, EventArgs e) { if (!Page.IsPostBack) - { - CreaObjetoEmpresa(UsuarioActual); + { GvFinOrdinario.DataSource = new DataTable(); GVFinIndemnizacion.DataSource = new DataTable(); GvFinOrdinario.DataBind(); @@ -552,109 +530,6 @@ public partial class Nomina_Finiquito : ClsPaginas // } //} - private void CreaObjetoEmpresa(Usuario UsuarioActual) - { - ClsSisEmpresas ObjEmpresa = new ClsSisEmpresas(); - if (ObjEmpresa.GetEmpresas(UsuarioActual.CveEmpresa, "-1", "-1", "-1", "-1")) - { - if (ObjEmpresa.GetEmpresasFuncionalidades(UsuarioActual.CveEmpresa)) - { - System.Data.DataTable dttmp = ObjEmpresa.DtResultados; - - EmpresasFuncionalidades = new HybridDictionary(); - EmpresasFuncionalidadesnoV4 = new HybridDictionary(); - foreach (System.Data.DataRow Row in dttmp.Rows) - { - if (Convert.ToInt32(Row["CveFuncionalidad"]) != 350) - { - EmpresasFuncionalidadesnoV4.Add(Convert.ToInt32(Row["CveFuncionalidad"]), Row["Valor"].ToString()); - } - EmpresasFuncionalidades.Add(Convert.ToInt32(Row["CveFuncionalidad"]), Row["Valor"].ToString()); - } - //ObjEmpresa.Empresa.SetFuncionalidades(EmpresasFuncionalidades); - } - - UsuarioActual.Empresa = ObjEmpresa.Empresa; - } - else - { - } - ObjEmpresa.Dispose(); - } - public string TimbrarNominaV3_3(int CveNomina, int CvePersonal, int CvePeriodo, Usuario UsuarioActual, int CvePAC = 4) - { - LogicNominas lnom = new LogicNominas(); - string Retorno = ""; - string GetError = ""; // Le reasigno el current error a nulo - //System.Diagnostics.Stopwatch sw = null; - bool hasfiniquito = false; - - UsuarioActual.Empresa.SetFuncionalidades(EmpresasFuncionalidadesnoV4); - //if (guardarLogTimbrado) - //{ - // sw = new System.Diagnostics.Stopwatch(); - - // sw.Start(); - //} - CFDITimbre cfdi = lnom.PreTimbrar(CveNomina, UsuarioActual, false); // CvePersonal, CvePeriodo, - cfdi.Comprobante.CondicionesdePago = ""; - if (cfdi != null && cfdi.Mensaje == "") - { - if (!cfdi.Timbrado) - { - Timbrado ObjTimbrado = new Timbrado(); - Modelos.Factura ObjFactura = new Modelos.Factura(); - ObjFactura.TipoDocto = "Nomina"; - ObjFactura.Folio = cfdi.Comprobante.Folio.ToEntero(); - ObjFactura.Serie = cfdi.Comprobante.Serie; - ObjFactura.Timbre = cfdi; - if (!ObjTimbrado.TimbrarFactura(UsuarioActual, ObjFactura, CvePAC)) - Retorno = ObjTimbrado.MensajeErrorCFDI; - } - if (Retorno != "") - Retorno = $"{Retorno} - {cfdi.Receptor.Nombre}"; - else if (hasfiniquito) - { - cfdi = lnom.PreTimbrar(CveNomina, UsuarioActual, true); // CvePersonal, CvePeriodo, - if (cfdi != null && cfdi.Mensaje == "") - { - if (!cfdi.Timbrado) - { - Timbrado ObjTimbrado = new Timbrado(); - Modelos.Factura ObjFactura = new Modelos.Factura(); - ObjFactura.TipoDocto = "Nomina"; - ObjFactura.Folio = cfdi.Comprobante.Folio.ToEntero(); - ObjFactura.Serie = cfdi.Comprobante.Serie; - ObjFactura.Timbre = cfdi; - if (!ObjTimbrado.TimbrarFactura(UsuarioActual, ObjFactura, CvePAC)) - Retorno = ObjTimbrado.MensajeErrorCFDI; - if (Retorno != "") - Retorno = $"{Retorno} - {cfdi.Receptor.Nombre}"; - else - { - } - } - } - else if (cfdi == null) - Retorno = $"No se pudo generar el pretimbre(GetError):
{GetError}"; - else - Retorno = $"No se pudo generar el pretimbre:
{cfdi.Mensaje}"; - } - } - else if (cfdi == null) - Retorno = $"No se pudo generar el pretimbre(GetError):
{GetError}"; - else - Retorno = $"No se pudo generar el pretimbre:
{cfdi.Mensaje}"; - //if (guardarLogTimbrado) - //{ - // sw.Stop(); - // GuardaLogTimbrado(sw.ElapsedMilliseconds.ToString(), UsuarioActual.Empresa.CvePAC, "Nomina"); - //} - - UsuarioActual.Empresa.SetFuncionalidades(EmpresasFuncionalidades); - return Retorno; - } - protected void LnkTimbrar_Click(object sender, EventArgs e) { int CvePeriodo = CvePeriodoFiniquito; @@ -667,14 +542,8 @@ public partial class Nomina_Finiquito : ClsPaginas string Msg = ""; - if (UsuarioActual.CveEmpresa == 119) - { - Msg = lognom.TimbrarNomina(CveNomina, CvePersonal, CvePeriodo, UsuarioActual); - } - else - { - Msg = TimbrarNominaV3_3(CveNomina, CvePersonal, CvePeriodo, UsuarioActual); - } + Msg = lognom.TimbrarNomina(CveNomina, CvePersonal, CvePeriodo, UsuarioActual,versionTimbre:(UsuarioActual.CveEmpresa == 119? VersionTimbradoEnum.PorDefectoEmpresa: VersionTimbradoEnum.Version3_3)); + if (Msg != null && Msg.Length > 0) { Alert(Msg, TipoMensaje.MsgAdvertencia); } else diff --git a/Nomina/Nomina.aspx.cs b/Nomina/Nomina.aspx.cs index 0ecefafee..7204fddf2 100644 --- a/Nomina/Nomina.aspx.cs +++ b/Nomina/Nomina.aspx.cs @@ -208,27 +208,27 @@ public partial class Nomina_Nomina2 : ClsPaginas } - private HybridDictionary EmpresasFuncionalidades - { - get - { - if (ViewState["EmpresasFuncionalidades"] == null) { return null; } - else { return (HybridDictionary)ViewState["EmpresasFuncionalidades"]; } - } + //private HybridDictionary EmpresasFuncionalidades + //{ + // get + // { + // if (ViewState["EmpresasFuncionalidades"] == null) { return null; } + // else { return (HybridDictionary)ViewState["EmpresasFuncionalidades"]; } + // } - set { ViewState["EmpresasFuncionalidades"] = value; } - } + // set { ViewState["EmpresasFuncionalidades"] = value; } + //} - private HybridDictionary EmpresasFuncionalidadesnoV4 - { - get - { - if (ViewState["EmpresasFuncionalidadesnoV4"] == null) { return null; } - else { return (HybridDictionary)ViewState["EmpresasFuncionalidadesnoV4"]; } - } + //private HybridDictionary EmpresasFuncionalidadesnoV4 + //{ + // get + // { + // if (ViewState["EmpresasFuncionalidadesnoV4"] == null) { return null; } + // else { return (HybridDictionary)ViewState["EmpresasFuncionalidadesnoV4"]; } + // } - set { ViewState["EmpresasFuncionalidadesnoV4"] = value; } - } + // set { ViewState["EmpresasFuncionalidadesnoV4"] = value; } + //} #endregion protected void Page_Load(object sender, EventArgs e) @@ -236,7 +236,10 @@ public partial class Nomina_Nomina2 : ClsPaginas if (!IsPostBack) { - CreaObjetoEmpresa(UsuarioActual); + if(UsuarioActual.CveUsuario == 100) { + Alert("recuerda que solo la empresa (119) tiene activado el timbrado 4.0", TipoMensaje.ToastAdventencia); + } + //CreaObjetoEmpresa(UsuarioActual); DataTable dtperinc = null; using (ClsNominas objnom = new ClsNominas()) { @@ -1280,15 +1283,9 @@ public partial class Nomina_Nomina2 : ClsPaginas { LogicNominas lognom = new LogicNominas(); - string Msg = ""; - if (UsuarioActual.CveEmpresa == 119) - { - Msg = lognom.TimbrarNomina(CveNomina, CvePersonal, CvePeriodo, UsuarioActual); - } - else - { - Msg = TimbrarNominaV3_3(CveNomina, CvePersonal, CvePeriodo, UsuarioActual); - } + string Msg = ""; + Msg = lognom.TimbrarNomina(CveNomina, CvePersonal, CvePeriodo, UsuarioActual, versionTimbre: (UsuarioActual.CveEmpresa == 119 ? VersionTimbradoEnum.PorDefectoEmpresa : VersionTimbradoEnum.Version3_3)); + if (Msg != null && Msg.Length > 0) { Msg = msgCorregidoSat(Msg, CvePersonal, RFC, CURP); @@ -1344,35 +1341,40 @@ public partial class Nomina_Nomina2 : ClsPaginas } UpDatos.Update(); } - private void CreaObjetoEmpresa(Usuario UsuarioActual) - { - ClsSisEmpresas ObjEmpresa = new ClsSisEmpresas(); - if (ObjEmpresa.GetEmpresas(UsuarioActual.CveEmpresa, "-1", "-1", "-1", "-1")) - { - if (ObjEmpresa.GetEmpresasFuncionalidades(UsuarioActual.CveEmpresa)) - { - System.Data.DataTable dttmp = ObjEmpresa.DtResultados; + //private void CreaObjetoEmpresa(Usuario UsuarioActual) + //{ + // ClsSisEmpresas ObjEmpresa = new ClsSisEmpresas(); + // if (ObjEmpresa.GetEmpresas(UsuarioActual.CveEmpresa, "-1", "-1", "-1", "-1")) + // { + // if (ObjEmpresa.GetEmpresasFuncionalidades(UsuarioActual.CveEmpresa)) + // { + // System.Data.DataTable dttmp = ObjEmpresa.DtResultados; - EmpresasFuncionalidades = new HybridDictionary(); - EmpresasFuncionalidadesnoV4 = new HybridDictionary(); - foreach (System.Data.DataRow Row in dttmp.Rows) - { - if (Convert.ToInt32(Row["CveFuncionalidad"]) != 350) - { - EmpresasFuncionalidadesnoV4.Add(Convert.ToInt32(Row["CveFuncionalidad"]), Row["Valor"].ToString()); - } - EmpresasFuncionalidades.Add(Convert.ToInt32(Row["CveFuncionalidad"]), Row["Valor"].ToString()); - } - //ObjEmpresa.Empresa.SetFuncionalidades(EmpresasFuncionalidades); - } + // EmpresasFuncionalidades = new HybridDictionary(); + // EmpresasFuncionalidadesnoV4 = new HybridDictionary(); + // foreach (System.Data.DataRow Row in dttmp.Rows) + // { + // if (Convert.ToInt32(Row["CveFuncionalidad"]) != 350) + // { + // EmpresasFuncionalidadesnoV4.Add(Convert.ToInt32(Row["CveFuncionalidad"]), Row["Valor"].ToString()); + // EmpresasFuncionalidades.Add(Convert.ToInt32(Row["CveFuncionalidad"]), Row["Valor"].ToString()); + // } + // else + // { + // EmpresasFuncionalidades.Add(Convert.ToInt32(Row["CveFuncionalidad"]), Row["Valor"].ToString()); - UsuarioActual.Empresa = ObjEmpresa.Empresa; - } - else - { - } - ObjEmpresa.Dispose(); - } + // } + // } + // ObjEmpresa.Empresa.SetFuncionalidades(EmpresasFuncionalidades); + // } + + // UsuarioActual.Empresa = ObjEmpresa.Empresa; + // } + // else + // { + // } + // ObjEmpresa.Dispose(); + //} protected void LnkReenviarCorreo_Click(object sender, EventArgs e) { LinkButton lnk = (LinkButton)sender; @@ -1468,14 +1470,8 @@ public partial class Nomina_Nomina2 : ClsPaginas UsuarioActual = this.UsuarioActual; }*/ string Msg = "";// lognom.TimbrarNomina(CveNomina, CvePersonal, CvePeriodo, UsuarioActual, (UsuarioActual.CveUsuario == 100 ? 4 : 4)); - if (UsuarioActual.CveEmpresa == 119) - { - Msg = lognom.TimbrarNomina(CveNomina, CvePersonal, CvePeriodo, UsuarioActual); - } - else - { - Msg = TimbrarNominaV3_3(CveNomina, CvePersonal, CvePeriodo, UsuarioActual); - } + Msg = lognom.TimbrarNomina(CveNomina, CvePersonal, CvePeriodo, UsuarioActual, versionTimbre: (UsuarioActual.CveEmpresa == 119 ? VersionTimbradoEnum.PorDefectoEmpresa : VersionTimbradoEnum.Version3_3)); + if (Msg != null && Msg.Length > 0) { Alert(string.Format("El empleado no se pudo timbrar, el sat nos devolvio el siguiente mensaje:
{0}", Msg), TipoMensaje.MsgAdvertencia); } else @@ -9131,79 +9127,5 @@ public partial class Nomina_Nomina2 : ClsPaginas RegistraScript(string.Format("$('#ModalViewCorreo').modal();", TxtmcImporte.ClientID)); } - public string TimbrarNominaV3_3(int CveNomina, int CvePersonal, int CvePeriodo, Usuario UsuarioActual, int CvePAC = 4) - { - LogicNominas lnom = new LogicNominas(); - string Retorno = ""; - string GetError = ""; // Le reasigno el current error a nulo - //System.Diagnostics.Stopwatch sw = null; - bool hasfiniquito = false; - - UsuarioActual.Empresa.SetFuncionalidades(EmpresasFuncionalidadesnoV4); - //if (guardarLogTimbrado) - //{ - // sw = new System.Diagnostics.Stopwatch(); - - // sw.Start(); - //} - CFDITimbre cfdi = lnom.PreTimbrar(CveNomina, UsuarioActual, false); // CvePersonal, CvePeriodo, - cfdi.Comprobante.CondicionesdePago = ""; - if (cfdi != null && cfdi.Mensaje == "") - { - if (!cfdi.Timbrado) - { - Timbrado ObjTimbrado = new Timbrado(); - Modelos.Factura ObjFactura = new Modelos.Factura(); - ObjFactura.TipoDocto = "Nomina"; - ObjFactura.Folio = cfdi.Comprobante.Folio.ToEntero(); - ObjFactura.Serie = cfdi.Comprobante.Serie; - ObjFactura.Timbre = cfdi; - if (!ObjTimbrado.TimbrarFactura(UsuarioActual, ObjFactura, CvePAC)) - Retorno = ObjTimbrado.MensajeErrorCFDI; - } - if (Retorno != "") - Retorno = $"{Retorno} - {cfdi.Receptor.Nombre}"; - else if (hasfiniquito) - { - cfdi = lnom.PreTimbrar(CveNomina, UsuarioActual, true); // CvePersonal, CvePeriodo, - if (cfdi != null && cfdi.Mensaje == "") - { - if (!cfdi.Timbrado) - { - Timbrado ObjTimbrado = new Timbrado(); - Modelos.Factura ObjFactura = new Modelos.Factura(); - ObjFactura.TipoDocto = "Nomina"; - ObjFactura.Folio = cfdi.Comprobante.Folio.ToEntero(); - ObjFactura.Serie = cfdi.Comprobante.Serie; - ObjFactura.Timbre = cfdi; - if (!ObjTimbrado.TimbrarFactura(UsuarioActual, ObjFactura, CvePAC)) - Retorno = ObjTimbrado.MensajeErrorCFDI; - if (Retorno != "") - Retorno = $"{Retorno} - {cfdi.Receptor.Nombre}"; - else - { - } - } - } - else if (cfdi == null) - Retorno = $"No se pudo generar el pretimbre(GetError):
{GetError}"; - else - Retorno = $"No se pudo generar el pretimbre:
{cfdi.Mensaje}"; - } - } - else if (cfdi == null) - Retorno = $"No se pudo generar el pretimbre(GetError):
{GetError}"; - else - Retorno = $"No se pudo generar el pretimbre:
{cfdi.Mensaje}"; - //if (guardarLogTimbrado) - //{ - // sw.Stop(); - // GuardaLogTimbrado(sw.ElapsedMilliseconds.ToString(), UsuarioActual.Empresa.CvePAC, "Nomina"); - //} - - UsuarioActual.Empresa.SetFuncionalidades(EmpresasFuncionalidades); - return Retorno; - } - } \ No newline at end of file diff --git a/Ventas/ProductosServicios.aspx b/Ventas/ProductosServicios.aspx index a5b9acafb..6e33f38b6 100644 --- a/Ventas/ProductosServicios.aspx +++ b/Ventas/ProductosServicios.aspx @@ -515,14 +515,14 @@
- +
- + diff --git a/Ventas/ProductosServicios.aspx.vb b/Ventas/ProductosServicios.aspx.vb index 60bd5cf7a..4fcba66fb 100644 --- a/Ventas/ProductosServicios.aspx.vb +++ b/Ventas/ProductosServicios.aspx.vb @@ -440,10 +440,10 @@ Partial Class ProductosyServicios Private Sub CargaPanelCitricos() Dim ObjGral As New ClsGenerales() If ObjGral.GetEmpacados(UsuarioActual.CveEmpresa) Then - DdlEmpacado.DataSource = ObjGral.DtResultados.Copy() + DdlEmpacado.DataSource = ObjGral.DtResultados End If If ObjGral.GetTipoOrganicos(UsuarioActual.CveEmpresa) Then - DdlTipoOrganico.DataSource = ObjGral.DtResultados.Copy() + DdlTipoOrganico.DataSource = ObjGral.DtResultados End If ObjGral.Dispose() diff --git a/vwd.webinfo b/vwd.webinfo new file mode 100644 index 000000000..d54ddc206 --- /dev/null +++ b/vwd.webinfo @@ -0,0 +1,590 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file