diff --git a/App_Code/ClsClientes.vb b/App_Code/ClsClientes.vb
index 388078978..c1aeb6b22 100644
--- a/App_Code/ClsClientes.vb
+++ b/App_Code/ClsClientes.vb
@@ -163,6 +163,7 @@ Public Class ClsClientes
Public Property UsaProductoAlterno As Boolean = False
Public Property EnDemanda As Boolean = False
Public Property EnQuebranto As Boolean = False
+ Public Property GastosEnvio As Decimal = 0
#End Region
@@ -417,6 +418,7 @@ Public Class ClsClientes
_UsaProductoAlterno = CBool(Data(0)("UsaProductoAlterno"))
_EnDemanda = CBool(Data(0)("UsaProductoAlterno"))
_EnQuebranto = CBool(Data(0)("EnQuebranto"))
+ _GastosEnvio = Data(0)("GastosEnvio").ToString.ToDecimal
End If
Retorno = True
@@ -535,7 +537,7 @@ Public Class ClsClientes
Optional LT As String = "0", Optional LG As String = "0", Optional EsDistribuidor As Boolean = False, Optional TipoCliente As Integer = 1, Optional CargoUsado As Boolean = False, Optional BonificacionUsado As Boolean = False, Optional CveTipoRetencion As Integer = 0,
Optional CorreoEntregaCompras As String = "-1", Optional CorreoEntregaAlmacen As String = "-1", Optional CveSATEstado As Integer = -1, Optional CveAdminTrayecto As Integer = -1, Optional CveRegimenFiscal As Integer = 0, Optional RegimenSociedad As String = "-1", Optional TipoPersona As Boolean = False,
Optional RepresentanteLegal As String = "", Optional FechaLimiteCredito As Date = MinFecha, Optional ComExtCalle As String = "-1", Optional ComExtNumExt As String = "-1", Optional ComExtCP As String = "-1", Optional Genero As Boolean = True, Optional CveAlmacenAsignado As Integer = -1, Optional CveAlmacenConsignacion As Integer = -1, Optional CveAlmacenAlterno As Integer = -1, Optional UsaProductoAlterno As Boolean = False,
- Optional EnDemanda As Boolean = False, Optional EnQuebranto As Boolean = False) As Boolean
+ Optional EnDemanda As Boolean = False, Optional EnQuebranto As Boolean = False, Optional GastosEnvio As Decimal = 0) As Boolean
Dim Retorno As Boolean = False
@@ -669,6 +671,7 @@ Public Class ClsClientes
.Add("@UsaProductoAlterno", SqlDbType.Bit).Value = UsaProductoAlterno
.Add("@EnDemanda", SqlDbType.Bit).Value = EnDemanda
.Add("@EnQuebranto", SqlDbType.Bit).Value = EnQuebranto
+ .Add("@GastosEnvio", SqlDbType.SmallMoney).Value = GastosEnvio
End With
Try
SqlAdapter.Fill(Data)
@@ -715,7 +718,7 @@ Public Class ClsClientes
Optional LT As String = "0", Optional LG As String = "0", Optional EsDistribuidor As Boolean = False, Optional TipoCliente As Integer = 1, Optional CargoUsado As Boolean = False, Optional BonificacionUsado As Boolean = False, Optional CveTipoRetencion As Integer = 0, Optional CorreoEntregaCompras As String = "-1", Optional CorreoEntregaAlmacen As String = "-1",
Optional CveSATEstado As Integer = -1, Optional CveAdminTrayecto As Integer = -1, Optional NoDesglosaIVA As Boolean = False, Optional CveRegimenFiscal As Integer = 0, Optional RegimenSociedad As String = "-1", Optional TipoPersona As Boolean = False,
Optional RepresentanteLegal As String = "", Optional FechaLimiteCredito As Date = MinFecha, Optional ComExtCalle As String = "-1", Optional ComExtNumExt As String = "-1", Optional ComExtCP As String = "-1", Optional Genero As Boolean = True, Optional CveAlmacenAsignado As Integer = -1, Optional CveAlmacenAlterno As Integer = -1, Optional CveAlmacenConsignacion As Integer = -1, Optional UsaProductoAlterno As Boolean = False,
- Optional EnDemanda As Boolean = False, Optional EnQuebranto As Boolean = False) As Boolean
+ Optional EnDemanda As Boolean = False, Optional EnQuebranto As Boolean = False, Optional GastosEnvio As Decimal = 0) As Boolean
Dim Retorno As Boolean = False
@@ -859,6 +862,7 @@ Public Class ClsClientes
.Add("@UsaProductoAlterno", SqlDbType.Bit).Value = UsaProductoAlterno
.Add("@EnDemanda", SqlDbType.Bit).Value = EnDemanda
.Add("@EnQuebranto", SqlDbType.Bit).Value = EnQuebranto
+ .Add("@GastosEnvio", SqlDbType.SmallMoney).Value = GastosEnvio
End With
Try
SqlAdapter.Fill(Data)
diff --git a/App_Code/ClsNominas.vb b/App_Code/ClsNominas.vb
index fcb9f0653..4261e7144 100644
--- a/App_Code/ClsNominas.vb
+++ b/App_Code/ClsNominas.vb
@@ -3812,6 +3812,27 @@ Public Class ClsNominas
End Function
+ Public Function MovimientosSaldosGet(cvePersonal As Int32, cvePeriodo As Int32, cveUsuario As Int32, cveEmpresa As Int32) As Boolean
+ Dim retorno As Boolean = False
+ DataAdapter("PA_Nom_MovimientosSaldosGet", CommandType.StoredProcedure)
+ addParameters("@CvePersonal", SqlDbType.Int, cvePersonal)
+ addParameters("@CvePeriodo", SqlDbType.Int, cvePeriodo)
+ addParameters("@CveUsuario", SqlDbType.Int, cveUsuario)
+ addParameters("@CveEmpresa", SqlDbType.Int, cveEmpresa)
+ retorno = RunQuery("Ocurrió un error al obtener el MovimientosSaldosGet.")
+ Return retorno
+ End Function
+
+ Public Function NomMovimientosShow(cvePersonal As Int32, cvePeriodo As Int32, cveUsuario As Int32, cveEmpresa As Int32) As Boolean
+ Dim retorno As Boolean = False
+ DataAdapter("PA_Nom_MovimientosShow", CommandType.StoredProcedure)
+ addParameters("@CvePersonal", SqlDbType.Int, cvePersonal)
+ addParameters("@CvePeriodo", SqlDbType.Int, cvePeriodo)
+ addParameters("@CveUsuario", SqlDbType.Int, cveUsuario)
+ addParameters("@CveEmpresa", SqlDbType.Int, cveEmpresa)
+ retorno = RunQuery("Ocurrió un error al obtener el NomMovimientosShow.")
+ Return retorno
+ End Function
Public Sub addParameters(varsql As String, sqltipe As SqlDbType, valor As Object)
SqlAdapter.SelectCommand.Parameters.Add(varsql, sqltipe).Value = valor
diff --git a/App_Code/ClsOS.vb b/App_Code/ClsOS.vb
index 376513ad8..723c9861d 100644
--- a/App_Code/ClsOS.vb
+++ b/App_Code/ClsOS.vb
@@ -1728,7 +1728,7 @@ Public Class ClsOS
Return Retorno
End Function
- Public Function UpdateOrdenesServiciosAsignadas(CveOSDetalle As Integer, CveUsuario As Integer, FechaCita As Date, HoraCita As DateTime, CveEmpresa As Integer) As Boolean
+ Public Function UpdateOrdenesServiciosAsignadas(CveOSDetalle As Integer, CveUsuarioAtendio As Integer, FechaCita As Date, HoraCita As DateTime, CveEmpresa As Integer, CveUsuario As Integer) As Boolean
Dim Retorno As Boolean = False
DataAdapter("PA_OS_OrdenesServiciosAsignadasUpdate")
@@ -1737,6 +1737,7 @@ Public Class ClsOS
.Add("@FechaCita", SqlDbType.Date).Value = FechaCita
.Add("@HoraCita", SqlDbType.DateTime).Value = HoraCita
.Add("@CveOSDetalle", SqlDbType.Int).Value = CveOSDetalle
+ .Add("@CveUsuarioAtendio", SqlDbType.Int).Value = CveUsuarioAtendio
.Add("@CveUsuario", SqlDbType.Int).Value = CveUsuario
End With
diff --git a/App_Code/ClsPaginas.vb b/App_Code/ClsPaginas.vb
index 4089af8a5..5de754c67 100644
--- a/App_Code/ClsPaginas.vb
+++ b/App_Code/ClsPaginas.vb
@@ -7945,299 +7945,315 @@ Public Class ClsPaginas
#End Region
#Region "PDF NOMINA"
Public Function GeneraPDFNomina(CvePersonal As Integer, CvePeriodo As Integer, CveEmpresa As Integer, RutaEmpresa As String, Optional indemnizacion As Boolean = False) As Byte()
- Dim ObjNomina As New ClsNominas
- Dim ObjPersonal As New ClsRH
- Dim TieneError As Boolean = False
Dim Retorno As Byte() = Nothing
- If Not ObjNomina.GetNom_Nominas(-1, CvePersonal, CvePeriodo, -1, CveEmpresa) Then
- Alert("Ocurrio un erro al obtener datos de la nomina", TipoMensaje.MsgError)
- ObjPersonal.Dispose()
- ObjNomina.Dispose()
- Return Nothing
- End If
- Dim CveNomina As Integer = ObjNomina.CveNomina
- Dim DTPercepciones As Data.DataTable
- Dim DTDeducciones As Data.DataTable
- Dim DTDeducciones2 As New Data.DataTable
- Dim Ruta As String = UsuarioActual.Empresa.Ruta
- Dim PathXML As String = $"{Ruta}XML\Nomina\{ObjNomina.Serie }{If(indemnizacion, "F", "")}-{ObjNomina.Folio}.xml"
- Dim FechaEmision, FechaCertificacion As DateTime
- Dim FolioFiscal, NoSerieCertificado, NoSerieCertificadoContribuyente, SelloCFDi, SelloSAT As String
- FolioFiscal = ""
- NoSerieCertificado = ""
- SelloCFDi = ""
- SelloSAT = ""
- NoSerieCertificadoContribuyente = ""
- Dim RutaCBB As String = String.Format("{0}CBB\Nomina\{1}.jpg", RutaEmpresa, ObjNomina.SerieFolio)
- Dim ImagenCBB As New System.IO.FileInfo(RutaCBB)
- Dim ImgCBB As String
- Dim RutaFormato As String = String.Format("{0}Formatos\Nomina.rdlc", RutaEmpresa)
- Dim RutaFormatoDefault As String = String.Format("Empresas\Grales\Formatos\Nomina.rdlc")
- Dim CFDIVersion As String = ""
- Dim UsoCFDI As String = "ND"
-
-
-
- 'SI ESTA TIMBRADA - CON XML
- If System.IO.File.Exists(PathXML) Then
- Dim XmlDoc As New System.Xml.XmlDocument
- 'XmlDoc.Load(Ruta & "XML\\Nomina\NOM A-3845.xml")
- XmlDoc.Load(PathXML)
-
- If ValorNodoXML(XmlDoc.DocumentElement, "version").Contiene("3.3", "4.0") Then
- FechaEmision = XmlDoc.DocumentElement.Attributes("Fecha").InnerText.ToDate
- NoSerieCertificadoContribuyente = XmlDoc.DocumentElement.Attributes("NoCertificado").InnerText
- For i As Integer = 0 To XmlDoc.DocumentElement("cfdi:Complemento").ChildNodes.Count - 1
- If XmlDoc.DocumentElement("cfdi:Complemento").ChildNodes(i).Name = "tfd:TimbreFiscalDigital" Then
- FolioFiscal = XmlDoc.DocumentElement("cfdi:Complemento").ChildNodes(i).Attributes("UUID").InnerText
- NoSerieCertificado = XmlDoc.DocumentElement("cfdi:Complemento").ChildNodes(i).Attributes("NoCertificadoSAT").InnerText
- FechaCertificacion = XmlDoc.DocumentElement("cfdi:Complemento").ChildNodes(i).Attributes("FechaTimbrado").InnerText.ToDate
- SelloCFDi = XmlDoc.DocumentElement("cfdi:Complemento").ChildNodes(i).Attributes("SelloCFD").InnerText
- SelloSAT = XmlDoc.DocumentElement("cfdi:Complemento").ChildNodes(i).Attributes("SelloSAT").InnerText
- End If
- Next
- Else
- FechaEmision = XmlDoc.DocumentElement.Attributes("fecha").InnerText.ToDate
- NoSerieCertificadoContribuyente = XmlDoc.DocumentElement.Attributes("noCertificado").InnerText
- For i As Integer = 0 To XmlDoc.DocumentElement("cfdi:Complemento").ChildNodes.Count - 1
- If XmlDoc.DocumentElement("cfdi:Complemento").ChildNodes(i).Name = "tfd:timbreFiscalDigital" Then
- FolioFiscal = XmlDoc.DocumentElement("cfdi:Complemento").ChildNodes(i).Attributes("UUID").InnerText
- NoSerieCertificado = XmlDoc.DocumentElement("cfdi:Complemento").ChildNodes(i).Attributes("noCertificadoSAT").InnerText
- FechaCertificacion = XmlDoc.DocumentElement("cfdi:Complemento").ChildNodes(i).Attributes("fechaTimbrado").InnerText.ToDate
- SelloCFDi = XmlDoc.DocumentElement("cfdi:Complemento").ChildNodes(i).Attributes("selloCFD").InnerText
- SelloSAT = XmlDoc.DocumentElement("cfdi:Complemento").ChildNodes(i).Attributes("selloSAT").InnerText
- End If
- Next
- End If
-
-
-
- Try
- CFDIVersion = ValorNodoXML(XmlDoc.DocumentElement, "version")
-
-
- Dim nsManager As New XmlNamespaceManager(XmlDoc.NameTable)
- nsManager.AddNamespace("cfdi", If(CFDIVersion = "4.0", "http://www.sat.gob.mx/cfd/4", "http://www.sat.gob.mx/cfd/3"))
-
- Dim receptorNode As XmlNode = XmlDoc.SelectSingleNode("/cfdi:comprobante/cfdi:emisor/cfdi:receptor", nsManager)
-
- If receptorNode IsNot Nothing Then
- UsoCFDI = ValorNodoXML(receptorNode, "usocfdi")
- Dim UsoCFDIImprimir As String = GlobalDTSATUsosCFDI(-1, "-1").FiltroPrimeroValor("UsoCFDIDescripcion", $" UsoCFDI = '{UsoCFDI}' ")
-
- If UsoCFDIImprimir.Trim.Length > 0 Then
- UsoCFDI = UsoCFDIImprimir
- End If
+ Using ObjNomina As New ClsNominas
+ Using ObjPersonal As New ClsRH
+ Dim TieneError As Boolean = False
+ If Not ObjNomina.GetNom_Nominas(-1, CvePersonal, CvePeriodo, -1, CveEmpresa) Then
+ Alert("Ocurrio un erro al obtener datos de la nomina", TipoMensaje.MsgError)
+ ObjPersonal.Dispose()
+ ObjNomina.Dispose()
+ Return Nothing
End If
+ Dim CveNomina As Integer = ObjNomina.CveNomina
+ Dim DTPercepciones As Data.DataTable
+ Dim DTDeducciones As Data.DataTable
+ Dim DTDeducciones2 As New Data.DataTable
+ Dim Ruta As String = UsuarioActual.Empresa.Ruta
+ Dim PathXML As String = $"{Ruta}XML\Nomina\{ObjNomina.Serie }{If(indemnizacion, "F", "")}-{ObjNomina.Folio}.xml"
+ Dim FechaEmision, FechaCertificacion As DateTime
+ Dim FolioFiscal, NoSerieCertificado, NoSerieCertificadoContribuyente, SelloCFDi, SelloSAT As String
+ FolioFiscal = ""
+ NoSerieCertificado = ""
+ SelloCFDi = ""
+ SelloSAT = ""
+ NoSerieCertificadoContribuyente = ""
+ Dim RutaCBBDir As String = String.Format("{0}CBB\Nomina\", RutaEmpresa)
+ If Not (System.IO.Directory.Exists(RutaCBBDir)) Then
+ System.IO.Directory.CreateDirectory(RutaCBBDir)
+ End If
+ Dim RutaCBB As String = String.Format("{0}{1}.jpg", RutaCBBDir, ObjNomina.SerieFolio)
+ Dim ImagenCBB As New System.IO.FileInfo(RutaCBB)
+ Dim ImgCBB As String
+ Dim RutaFormato As String = String.Format("{0}Formatos\Nomina.rdlc", RutaEmpresa)
+ Dim RutaFormatoDefault As String = String.Format("Empresas\Grales\Formatos\Nomina.rdlc")
+ Dim CFDIVersion As String = ""
+ Dim UsoCFDI As String = "ND"
- If UsoCFDI = "ND" Or UsoCFDI = "" Then
- If CFDIVersion = "4.0" Then
- UsoCFDI = "CN01 - Nómina"
+
+ 'SI ESTA TIMBRADA - CON XML
+ If System.IO.File.Exists(PathXML) Then
+ Dim XmlDoc As New System.Xml.XmlDocument
+ 'XmlDoc.Load(Ruta & "XML\\Nomina\NOM A-3845.xml")
+ XmlDoc.Load(PathXML)
+
+ If ValorNodoXML(XmlDoc.DocumentElement, "version").Contiene("3.3", "4.0") Then
+ FechaEmision = XmlDoc.DocumentElement.Attributes("Fecha").InnerText.ToDate
+ NoSerieCertificadoContribuyente = XmlDoc.DocumentElement.Attributes("NoCertificado").InnerText
+ For i As Integer = 0 To XmlDoc.DocumentElement("cfdi:Complemento").ChildNodes.Count - 1
+ If XmlDoc.DocumentElement("cfdi:Complemento").ChildNodes(i).Name = "tfd:TimbreFiscalDigital" Then
+ FolioFiscal = XmlDoc.DocumentElement("cfdi:Complemento").ChildNodes(i).Attributes("UUID").InnerText
+ NoSerieCertificado = XmlDoc.DocumentElement("cfdi:Complemento").ChildNodes(i).Attributes("NoCertificadoSAT").InnerText
+ FechaCertificacion = XmlDoc.DocumentElement("cfdi:Complemento").ChildNodes(i).Attributes("FechaTimbrado").InnerText.ToDate
+ SelloCFDi = XmlDoc.DocumentElement("cfdi:Complemento").ChildNodes(i).Attributes("SelloCFD").InnerText
+ SelloSAT = XmlDoc.DocumentElement("cfdi:Complemento").ChildNodes(i).Attributes("SelloSAT").InnerText
+ End If
+ Next
Else
- UsoCFDI = "P01 - Por definir"
+ FechaEmision = XmlDoc.DocumentElement.Attributes("fecha").InnerText.ToDate
+ NoSerieCertificadoContribuyente = XmlDoc.DocumentElement.Attributes("noCertificado").InnerText
+ For i As Integer = 0 To XmlDoc.DocumentElement("cfdi:Complemento").ChildNodes.Count - 1
+ If XmlDoc.DocumentElement("cfdi:Complemento").ChildNodes(i).Name = "tfd:timbreFiscalDigital" Then
+ FolioFiscal = XmlDoc.DocumentElement("cfdi:Complemento").ChildNodes(i).Attributes("UUID").InnerText
+ NoSerieCertificado = XmlDoc.DocumentElement("cfdi:Complemento").ChildNodes(i).Attributes("noCertificadoSAT").InnerText
+ FechaCertificacion = XmlDoc.DocumentElement("cfdi:Complemento").ChildNodes(i).Attributes("fechaTimbrado").InnerText.ToDate
+ SelloCFDi = XmlDoc.DocumentElement("cfdi:Complemento").ChildNodes(i).Attributes("selloCFD").InnerText
+ SelloSAT = XmlDoc.DocumentElement("cfdi:Complemento").ChildNodes(i).Attributes("selloSAT").InnerText
+ End If
+ Next
End If
+
+
+ Try
+ CFDIVersion = ValorNodoXML(XmlDoc.DocumentElement, "version")
+
+
+ Dim nsManager As New XmlNamespaceManager(XmlDoc.NameTable)
+ nsManager.AddNamespace("cfdi", If(CFDIVersion = "4.0", "http://www.sat.gob.mx/cfd/4", "http://www.sat.gob.mx/cfd/3"))
+
+ Dim receptorNode As XmlNode = XmlDoc.SelectSingleNode("/cfdi:comprobante/cfdi:emisor/cfdi:receptor", nsManager)
+
+ If receptorNode IsNot Nothing Then
+ UsoCFDI = ValorNodoXML(receptorNode, "usocfdi")
+ Dim UsoCFDIImprimir As String = GlobalDTSATUsosCFDI(-1, "-1").FiltroPrimeroValor("UsoCFDIDescripcion", $" UsoCFDI = '{UsoCFDI}' ")
+
+ If UsoCFDIImprimir.Trim.Length > 0 Then
+ UsoCFDI = UsoCFDIImprimir
+ End If
+
+ End If
+
+ If UsoCFDI = "ND" Or UsoCFDI = "" Then
+
+ If CFDIVersion = "4.0" Then
+ UsoCFDI = "CN01 - Nómina"
+ Else
+ UsoCFDI = "P01 - Por definir"
+ End If
+
+ End If
+
+
+ Catch ex As Exception
+
+ End Try
+
+ 'SIN TIMBRAR - SIN XML
+ Else
+ FolioFiscal = "Sin Timbrar"
+ NoSerieCertificado = "Sin Timbrar"
+ SelloCFDi = "Sin Timbrar"
+ SelloSAT = "Sin Timbrar"
End If
-
-
- Catch ex As Exception
-
- End Try
-
- 'SIN TIMBRAR - SIN XML
- Else
- FolioFiscal = "Sin Timbrar"
- NoSerieCertificado = "Sin Timbrar"
- SelloCFDi = "Sin Timbrar"
- SelloSAT = "Sin Timbrar"
- End If
- 'Si no tiene CBB, SE GENERA
- If Not ImagenCBB.Exists Then
- If ObjPersonal.GetPersonal(CvePersonal, CveEmpresa) Then
- GeneraQRSAT(UsuarioActual.Empresa.RFC, ObjPersonal.RFC, ObjNomina.Total.ToString.ToDecimal, FolioFiscal, RutaGuardado:=RutaCBB)
- End If
- End If
- ImgCBB = String.Format("{0}://{1}:{2}/Empresas/{3}/CBB/Nomina/{4}.jpg", Request.Url.Scheme, Request.Url.Host, Request.Url.Port, UsuarioActual.CveEmpresa, ObjNomina.SerieFolio)
- Dim cQr As Byte() = Nothing
- Try
- Dim CadenaOriginalCFD As String = "||1.0|" + FolioFiscal + "|" + FechaCertificacion.ToString("yyyy-MM-dd") + "T" + FechaCertificacion.ToString("HH:mm:ss") + "|" + SelloCFDi + "|" + NoSerieCertificado + "||"
- Dim RptParametro As New List(Of ReportParameter)
-
- 'Datos Empresa
- RptParametro.Add(New ReportParameter("RegistroPatronal", ObjNomina.RegistroPatronal))
- Dim ajusteindemnizacion As Double = 0
- 'PERCECIONES - DEDUCCIONES
- If ObjNomina.GetNom_NominasDetalles(CveNomina, CvePersonal, CvePeriodo, "-1") Then
- Dim filtrop As String = " AND CveSistema NOT IN(10,11,32)"
- Dim friltrod As String = " AND CveSistema <>47"
- If indemnizacion Then
- filtrop = "AND CveSistema IN(10,11,32)"
- friltrod = " AND CveSistema =47"
+ 'Si no tiene CBB, SE GENERA
+ If Not ImagenCBB.Exists Then
+ If ObjPersonal.GetPersonal(CvePersonal, CveEmpresa) Then
+ GeneraQRSAT(UsuarioActual.Empresa.RFC, ObjPersonal.RFC, ObjNomina.Total.ToString.ToDecimal, FolioFiscal, RutaGuardado:=RutaCBB)
+ End If
End If
- DTPercepciones = ObjNomina.DtResultados.FiltraParametros($"((Tipo = 'P' OR (Tipo = 'D' AND Importe <0)) AND ((Importe <>0 AND EsPadre = 1 AND SoloVisible =0) OR Imprimir =1)) {filtrop}")
- DTDeducciones = ObjNomina.DtResultados.FiltraParametros($"(Tipo = 'D' AND ((Importe >0 AND EsPadre = 1 AND SoloVisible =0) OR Imprimir =1) ) {friltrod}")
- DTDeducciones2 = ObjNomina.DtResultados.FiltraParametros($"(Tipo = 'D' AND (( Importe >0 AND EsPadre = 1 AND SoloVisible =0) OR Imprimir =1) ){friltrod}")
- ajusteindemnizacion = ObjNomina.DtResultados.FiltraParametros($"((Tipo = 'P' OR (Tipo = 'D' AND Importe <0)) AND Importe <>0 AND EsPadre = 1 AND SoloVisible =0) AND CveSistema IN(10,11,32)").SUM("Importe") -
+ ImgCBB = String.Format("{0}://{1}:{2}/Empresas/{3}/CBB/Nomina/{4}.jpg", Request.Url.Scheme, Request.Url.Host, Request.Url.Port, UsuarioActual.CveEmpresa, ObjNomina.SerieFolio)
+ Dim cQr As Byte() = Nothing
+ Try
+ Dim CadenaOriginalCFD As String = "||1.0|" + FolioFiscal + "|" + FechaCertificacion.ToString("yyyy-MM-dd") + "T" + FechaCertificacion.ToString("HH:mm:ss") + "|" + SelloCFDi + "|" + NoSerieCertificado + "||"
+ Dim RptParametro As New List(Of ReportParameter)
+
+ 'Datos Empresa
+ RptParametro.Add(New ReportParameter("RegistroPatronal", ObjNomina.RegistroPatronal))
+ Dim ajusteindemnizacion As Double = 0
+ 'PERCECIONES - DEDUCCIONES
+ If ObjNomina.GetNom_NominasDetalles(CveNomina, CvePersonal, CvePeriodo, "-1") Then
+ Dim filtrop As String = " AND CveSistema NOT IN(10,11,32)"
+ Dim friltrod As String = " AND CveSistema <>47"
+ If indemnizacion Then
+ filtrop = "AND CveSistema IN(10,11,32)"
+ friltrod = " AND CveSistema =47"
+ End If
+ DTPercepciones = ObjNomina.DtResultados.FiltraParametros($"((Tipo = 'P' OR (Tipo = 'D' AND Importe <0)) AND ((Importe <>0 AND EsPadre = 1 AND SoloVisible =0) OR Imprimir =1)) {filtrop}")
+ DTDeducciones = ObjNomina.DtResultados.FiltraParametros($"(Tipo = 'D' AND ((Importe >0 AND EsPadre = 1 AND SoloVisible =0) OR Imprimir =1) ) {friltrod}")
+ DTDeducciones2 = ObjNomina.DtResultados.FiltraParametros($"(Tipo = 'D' AND (( Importe >0 AND EsPadre = 1 AND SoloVisible =0) OR Imprimir =1) ){friltrod}")
+ ajusteindemnizacion = ObjNomina.DtResultados.FiltraParametros($"((Tipo = 'P' OR (Tipo = 'D' AND Importe <0)) AND Importe <>0 AND EsPadre = 1 AND SoloVisible =0) AND CveSistema IN(10,11,32)").SUM("Importe") -
ObjNomina.DtResultados.FiltraParametros($"(Tipo = 'D' AND Importe >0 AND EsPadre = 1 AND SoloVisible =0) AND CveSistema =47").SUM("Importe")
- For Each row As DataRow In DTPercepciones.Rows
- If row("Tipo").ToString() = "D" Then
- row("Codigo") = row("Codigo").ToString().Replace("D", "OP")
- row("Importe") = row("Importe").ToString().ToDecimal() * -1
+ For Each row As DataRow In DTPercepciones.Rows
+ If row("Tipo").ToString() = "D" Then
+ row("Codigo") = row("Codigo").ToString().Replace("D", "OP")
+ row("Importe") = row("Importe").ToString().ToDecimal() * -1
+ End If
+ Next
+ Else
+ DTPercepciones = Nothing
+ DTDeducciones = Nothing
End If
- Next
- Else
- DTPercepciones = Nothing
- DTDeducciones = Nothing
- End If
- Dim SalarioDiario As String
- Dim SDI As String
- Dim Departamento As String
- Dim Puesto As String
- 'DATOS DEL EMPLEADO
- If ObjPersonal.GetPersonal(CvePersonal, CveEmpresa) Then
- RptParametro.Add(New ReportParameter("NoEmpleado", ObjPersonal.Codigo))
- RptParametro.Add(New ReportParameter("RFC", ObjPersonal.RFC))
- RptParametro.Add(New ReportParameter("CURP", ObjPersonal.CURP))
- RptParametro.Add(New ReportParameter("NombreCompleto", String.Format("{0} {1} {2}", ObjPersonal.Nombres, ObjPersonal.APaterno, ObjPersonal.AMaterno).Trim()))
- RptParametro.Add(New ReportParameter("Regimen", ObjPersonal.RegimenContratacion))
- RptParametro.Add(New ReportParameter("RiesgoPuesto", ObjPersonal.RiesgoPuesto))
- RptParametro.Add(New ReportParameter("NSS", ObjPersonal.NumeroSS))
- Departamento = ObjPersonal.Departamento
- Puesto = ObjPersonal.Puesto.ToString()
- RptParametro.Add(New ReportParameter("FechaIngreso", ObjPersonal.FechaIngreso.ToString("dd/MM/yyyy")))
- RptParametro.Add(New ReportParameter("Contrato", ObjPersonal.TipoContrato.ToString))
- RptParametro.Add(New ReportParameter("Jornada", ObjPersonal.Jornada))
- RptParametro.Add(New ReportParameter("Periodo", ObjNomina.TipoPeriodo))
- RptParametro.Add(New ReportParameter("Banco", ObjPersonal.Banco))
- RptParametro.Add(New ReportParameter("CLABE", ObjPersonal.CLABE))
- SalarioDiario = ObjPersonal.SalarioDiario.ToString
- SDI = ObjPersonal.SDI.ToString
- If ObjNomina.GetNom_NominasDataXML(CveNomina, CvePersonal, CvePeriodo, 1, CveEmpresa) AndAlso ObjNomina.DtResultados.Rows.Count > 0 Then
- Dim drow As DataRow = ObjNomina.DtResultados.Rows(0)
- SalarioDiario = drow("SalarioDiario").ToString()
- SDI = drow("NomRSalarioDiarioIntegrado").ToString()
- Departamento = drow("NomRDepartamento").ToString()
- Puesto = drow("NomRPuesto").ToString()
- End If
- RptParametro.Add(New ReportParameter("SalarioBase", SalarioDiario))
- RptParametro.Add(New ReportParameter("SalarioDiarioInt", SDI))
- RptParametro.Add(New ReportParameter("Departamento", Departamento))
- RptParametro.Add(New ReportParameter("Puesto", Puesto))
- 'DATOS NOMINA
- If ObjNomina.GetNom_Nominas(CveNomina, CvePersonal, CvePeriodo, 1, CveEmpresa) Then
- RptParametro.Add(New ReportParameter("ReciboNomina", ObjNomina.Folio.ToString))
- RptParametro.Add(New ReportParameter("Serie", ObjNomina.Serie))
- RptParametro.Add(New ReportParameter("Fecha", ObjNomina.Fecha.ToString))
- RptParametro.Add(New ReportParameter("Periodo", ObjNomina.TipoPeriodo))
- RptParametro.Add(New ReportParameter("DiasPagados", ObjNomina.DiasPagados.ToString))
- RptParametro.Add(New ReportParameter("MetodoPago", ObjNomina.MetodoPago)) '"""PUE"" (Pago en una sola exhibición)"
- RptParametro.Add(New ReportParameter("FormaPago", """99"" (Por definir)"))
- RptParametro.Add(New ReportParameter("Cantidad", "1"))
- RptParametro.Add(New ReportParameter("Unidad", "ACT"))
- RptParametro.Add(New ReportParameter("Descripcion", "PAGO DE NÓMINA"))
- RptParametro.Add(New ReportParameter("Total", If(indemnizacion, ajusteindemnizacion, ObjNomina.Total - ajusteindemnizacion).ToString()))
- RptParametro.Add(New ReportParameter("ImporteLetra", ObjNomina.Total.ToString.ToDecimal.Texto2Letras))
- RptParametro.Add(New ReportParameter("Clave", "84111505"))
- cQr = GeneraQRSAT(UsuarioActual.Empresa.RFC, ObjPersonal.RFC, ObjNomina.Total.ToString().ToDecimal(), FolioFiscal)
- Else
- TieneError = True
- End If
- Else
- TieneError = True
- End If
- If Not TieneError Then
- If ObjNomina.GetPeriodos(-1, CveEmpresa, -1, -1, CvePeriodo) Then
- RptParametro.Add(New ReportParameter("FechaInicio", ObjNomina.FechaInicio.ToString("dd/MM/yyyy")))
- RptParametro.Add(New ReportParameter("FechaFin", ObjNomina.FechaFin.ToString("dd/MM/yyyy")))
- Else
- TieneError = True
- End If
- End If
-
- RptParametro.Add(New ReportParameter("PU", DTPercepciones.SUM("Importe").ToString()))
- RptParametro.Add(New ReportParameter("Importe", DTPercepciones.SUM("Importe").ToString()))
- RptParametro.Add(New ReportParameter("ImporteDeducciones", DTDeducciones.SUM("Importe").ToString()))
- RptParametro.Add(New ReportParameter("SubTotal", DTPercepciones.SUM("Importe").ToString()))
- RptParametro.Add(New ReportParameter("Descuentos", DTDeducciones.SUM("Importe", "SATCveConcepto <> '002'").ToString()))
- RptParametro.Add(New ReportParameter("ISR", DTDeducciones.SUM("Importe", "SATCveConcepto = '002'").ToString()))
- 'Timbrado
- RptParametro.Add(New ReportParameter("FolioFiscal", FolioFiscal))
- RptParametro.Add(New ReportParameter("CertificadoSAT", NoSerieCertificado))
- RptParametro.Add(New ReportParameter("FechaCertificacion", FechaCertificacion.ToString))
- RptParametro.Add(New ReportParameter("SelloDigitalEmisor", SelloCFDi))
- RptParametro.Add(New ReportParameter("SelloDigitalSAT", SelloSAT))
- RptParametro.Add(New ReportParameter("CadenaOriginal", CadenaOriginalCFD))
- RptParametro.Add(New ReportParameter("QR", ImgCBB.ToString))
-
- RptParametro.Add(New ReportParameter("CFDIVersion", CFDIVersion))
- RptParametro.Add(New ReportParameter("UsoCFDI", UsoCFDI))
-
- Dim LSRds As New List(Of ReportDataSource)
-
- Dim rds2 As ReportDataSource = New ReportDataSource()
- Dim dtqr As New DataTable
- Dim column As DataColumn = New DataColumn("ImagenByte")
- column.DataType = System.Type.[GetType]("System.Byte[]")
- column.AllowDBNull = True
- column.Caption = "ImagenByte"
- dtqr.Columns.Add(column)
- Dim rowqr As DataRow = dtqr.NewRow()
- rowqr("ImagenByte") = cQr
- dtqr.Rows.Add(rowqr)
- rds2.Name = "dsImagenes"
- rds2.Value = dtqr
- LSRds.Add(rds2)
- Dim numnewfiles As Integer = 0
- If DTPercepciones.Rows.Count > DTDeducciones2.Rows.Count Then
- numnewfiles = DTPercepciones.Rows.Count - DTDeducciones2.Rows.Count
- For index As Integer = 1 To numnewfiles
- DTDeducciones2.Rows.Add(DTDeducciones2.NewRow)
- Next
- Else
- If DTDeducciones2.Rows.Count > DTPercepciones.Rows.Count Then
- numnewfiles = DTDeducciones2.Rows.Count - DTPercepciones.Rows.Count
- For index As Integer = 1 To numnewfiles
- DTPercepciones.Rows.Add(DTPercepciones.NewRow)
- Next
- End If
- End If
- Dim RptDS As New ReportDataSource
- RptDS.Name = "DsOC"
- RptDS.Value = DTPercepciones
- LSRds.Add(RptDS)
- Dim RDS As New ReportDataSource
- RDS.Name = "DataSet1"
- RDS.Value = DTDeducciones2
- LSRds.Add(RDS)
- Dim Archivo As New System.IO.FileInfo(RutaFormato)
- If Not TieneError Then
- If Archivo.Exists Then
- Retorno = StreamPDF(RutaFormato, LSRds, RptParametro, ObjNomina.SerieFolio, "PDF", MR:=Nothing)
- Dim ArchivoPDF As New System.IO.FileInfo(String.Format("{0}PDF\\{1}.pdf", RutaEmpresa, ObjNomina.SerieFolio))
- If Not ArchivoPDF.Exists Then
- Try
- DirectoryExistsCreate(String.Format("{0}PDF", RutaEmpresa))
- DirectoryExistsCreate(String.Format("{0}PDF\{1}", RutaEmpresa, "Nomina"))
- File.WriteAllBytes(String.Format("{0}PDF\Nomina\{1}.pdf", RutaEmpresa, ObjNomina.SerieFolio), Retorno)
- Catch ex As Exception
- Alert("Ocurrió un error al generar el PDF", TipoMensaje.MsgAdvertencia)
- GuardaLog(String.Format("Ocurrió un error al generar el PDF {0}", ex))
- End Try
+ Dim SalarioDiario As String
+ Dim SDI As String
+ Dim Departamento As String
+ Dim Puesto As String
+ 'DATOS DEL EMPLEADO
+ If ObjPersonal.GetPersonal(CvePersonal, CveEmpresa) Then
+ RptParametro.Add(New ReportParameter("NoEmpleado", ObjPersonal.Codigo))
+ RptParametro.Add(New ReportParameter("RFC", ObjPersonal.RFC))
+ RptParametro.Add(New ReportParameter("CURP", ObjPersonal.CURP))
+ RptParametro.Add(New ReportParameter("NombreCompleto", String.Format("{0} {1} {2}", ObjPersonal.Nombres, ObjPersonal.APaterno, ObjPersonal.AMaterno).Trim()))
+ RptParametro.Add(New ReportParameter("Regimen", ObjPersonal.RegimenContratacion))
+ RptParametro.Add(New ReportParameter("RiesgoPuesto", ObjPersonal.RiesgoPuesto))
+ RptParametro.Add(New ReportParameter("NSS", ObjPersonal.NumeroSS))
+ Departamento = ObjPersonal.Departamento
+ Puesto = ObjPersonal.Puesto.ToString()
+ RptParametro.Add(New ReportParameter("FechaIngreso", ObjPersonal.FechaIngreso.ToString("dd/MM/yyyy")))
+ RptParametro.Add(New ReportParameter("Contrato", ObjPersonal.TipoContrato.ToString))
+ RptParametro.Add(New ReportParameter("Jornada", ObjPersonal.Jornada))
+ RptParametro.Add(New ReportParameter("Periodo", ObjNomina.TipoPeriodo))
+ RptParametro.Add(New ReportParameter("Banco", ObjPersonal.Banco))
+ RptParametro.Add(New ReportParameter("CLABE", ObjPersonal.CLABE))
+ SalarioDiario = ObjPersonal.SalarioDiario.ToString
+ SDI = ObjPersonal.SDI.ToString
+ If ObjNomina.GetNom_NominasDataXML(CveNomina, CvePersonal, CvePeriodo, 1, CveEmpresa) AndAlso ObjNomina.DtResultados.Rows.Count > 0 Then
+ Dim drow As DataRow = ObjNomina.DtResultados.Rows(0)
+ SalarioDiario = drow("SalarioDiario").ToString()
+ SDI = drow("NomRSalarioDiarioIntegrado").ToString()
+ Departamento = drow("NomRDepartamento").ToString()
+ Puesto = drow("NomRPuesto").ToString()
+ End If
+ RptParametro.Add(New ReportParameter("SalarioBase", SalarioDiario))
+ RptParametro.Add(New ReportParameter("SalarioDiarioInt", SDI))
+ RptParametro.Add(New ReportParameter("Departamento", Departamento))
+ RptParametro.Add(New ReportParameter("Puesto", Puesto))
+ 'DATOS NOMINA
+ If ObjNomina.GetNom_Nominas(CveNomina, CvePersonal, CvePeriodo, 1, CveEmpresa) Then
+ RptParametro.Add(New ReportParameter("ReciboNomina", ObjNomina.Folio.ToString))
+ RptParametro.Add(New ReportParameter("Serie", ObjNomina.Serie))
+ RptParametro.Add(New ReportParameter("Fecha", ObjNomina.Fecha.ToString))
+ RptParametro.Add(New ReportParameter("Periodo", ObjNomina.TipoPeriodo))
+ RptParametro.Add(New ReportParameter("DiasPagados", ObjNomina.DiasPagados.ToString))
+ RptParametro.Add(New ReportParameter("MetodoPago", ObjNomina.MetodoPago)) '"""PUE"" (Pago en una sola exhibición)"
+ RptParametro.Add(New ReportParameter("FormaPago", """99"" (Por definir)"))
+ RptParametro.Add(New ReportParameter("Cantidad", "1"))
+ RptParametro.Add(New ReportParameter("Unidad", "ACT"))
+ RptParametro.Add(New ReportParameter("Descripcion", "PAGO DE NÓMINA"))
+ RptParametro.Add(New ReportParameter("Total", If(indemnizacion, ajusteindemnizacion, ObjNomina.Total - ajusteindemnizacion).ToString()))
+ RptParametro.Add(New ReportParameter("ImporteLetra", ObjNomina.Total.ToString.ToDecimal.Texto2Letras))
+ RptParametro.Add(New ReportParameter("Clave", "84111505"))
+ cQr = GeneraQRSAT(UsuarioActual.Empresa.RFC, ObjPersonal.RFC, ObjNomina.Total.ToString().ToDecimal(), FolioFiscal)
+ Else
+ TieneError = True
+ End If
+ Else
+ TieneError = True
+ End If
+ If Not TieneError Then
+ If ObjNomina.GetPeriodos(-1, CveEmpresa, -1, -1, CvePeriodo) Then
+ RptParametro.Add(New ReportParameter("FechaInicio", ObjNomina.FechaInicio.ToString("dd/MM/yyyy")))
+ RptParametro.Add(New ReportParameter("FechaFin", ObjNomina.FechaFin.ToString("dd/MM/yyyy")))
+ Else
+ TieneError = True
+ End If
End If
- Else
- 'ImprimirPDF(String.Format("{0}\Formatos\Nomina.rdlc", RutaEmpresa), LSRds, RptParametro, ObjNomina.SerieFolio)
- End If
- Else
- Alert("Ocurrio un error al obtener los datos de la Nomina")
- End If
- Catch ex As Exception
- GuardaLog(String.Format("Ocurrio un error al generar el reporte RLDC {0}", ex))
- End Try
- ObjNomina.Dispose()
- ObjPersonal.Dispose()
+ RptParametro.Add(New ReportParameter("PU", DTPercepciones.SUM("Importe").ToString()))
+ RptParametro.Add(New ReportParameter("Importe", DTPercepciones.SUM("Importe").ToString()))
+ RptParametro.Add(New ReportParameter("ImporteDeducciones", DTDeducciones.SUM("Importe").ToString()))
+ RptParametro.Add(New ReportParameter("SubTotal", DTPercepciones.SUM("Importe").ToString()))
+ RptParametro.Add(New ReportParameter("Descuentos", DTDeducciones.SUM("Importe", "SATCveConcepto <> '002'").ToString()))
+ RptParametro.Add(New ReportParameter("ISR", DTDeducciones.SUM("Importe", "SATCveConcepto = '002'").ToString()))
+ 'Timbrado
+ RptParametro.Add(New ReportParameter("FolioFiscal", FolioFiscal))
+ RptParametro.Add(New ReportParameter("CertificadoSAT", NoSerieCertificado))
+ RptParametro.Add(New ReportParameter("FechaCertificacion", FechaCertificacion.ToString))
+ RptParametro.Add(New ReportParameter("SelloDigitalEmisor", SelloCFDi))
+ RptParametro.Add(New ReportParameter("SelloDigitalSAT", SelloSAT))
+ RptParametro.Add(New ReportParameter("CadenaOriginal", CadenaOriginalCFD))
+ RptParametro.Add(New ReportParameter("QR", ImgCBB.ToString))
+
+ RptParametro.Add(New ReportParameter("CFDIVersion", CFDIVersion))
+ RptParametro.Add(New ReportParameter("UsoCFDI", UsoCFDI))
+
+ Dim LSRds As New List(Of ReportDataSource)
+
+ Dim rds2 As ReportDataSource = New ReportDataSource()
+ Dim dtqr As New DataTable
+ Dim column As DataColumn = New DataColumn("ImagenByte")
+ column.DataType = System.Type.[GetType]("System.Byte[]")
+ column.AllowDBNull = True
+ column.Caption = "ImagenByte"
+ dtqr.Columns.Add(column)
+ Dim rowqr As DataRow = dtqr.NewRow()
+ rowqr("ImagenByte") = cQr
+ dtqr.Rows.Add(rowqr)
+ rds2.Name = "dsImagenes"
+ rds2.Value = dtqr
+ LSRds.Add(rds2)
+ Dim numnewfiles As Integer = 0
+ If DTPercepciones.Rows.Count > DTDeducciones2.Rows.Count Then
+ numnewfiles = DTPercepciones.Rows.Count - DTDeducciones2.Rows.Count
+ For index As Integer = 1 To numnewfiles
+ DTDeducciones2.Rows.Add(DTDeducciones2.NewRow)
+ Next
+ Else
+ If DTDeducciones2.Rows.Count > DTPercepciones.Rows.Count Then
+ numnewfiles = DTDeducciones2.Rows.Count - DTPercepciones.Rows.Count
+ For index As Integer = 1 To numnewfiles
+ DTPercepciones.Rows.Add(DTPercepciones.NewRow)
+ Next
+ End If
+ End If
+
+ If ObjNomina.NomMovimientosShow(CvePersonal, CvePeriodo, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa) Then
+ If Not IsNothing(ObjNomina.DtResultados) And ObjNomina.DtResultados.Rows.Count > 0 And ObjNomina.DtResultados.Rows(0)("ShowMovtosPermanentes").ToString() = "1" Then
+ If ObjNomina.MovimientosSaldosGet(CvePersonal, CvePeriodo, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa) Then
+ Dim RptDSMP As New ReportDataSource
+ RptDSMP.Name = "DsMovtosPermanentes"
+ RptDSMP.Value = ObjNomina.DtResultados
+ LSRds.Add(RptDSMP)
+ End If
+ End If
+ End If
+ Dim RptDS As New ReportDataSource
+ RptDS.Name = "DsOC"
+ RptDS.Value = DTPercepciones
+ LSRds.Add(RptDS)
+ Dim RDS As New ReportDataSource
+ RDS.Name = "DataSet1"
+ RDS.Value = DTDeducciones2
+ LSRds.Add(RDS)
+ Dim Archivo As New System.IO.FileInfo(RutaFormato)
+ If Not TieneError Then
+ If Archivo.Exists Then
+ Retorno = StreamPDF(RutaFormato, LSRds, RptParametro, ObjNomina.SerieFolio, "PDF", MR:=Nothing)
+ Dim ArchivoPDF As New System.IO.FileInfo(String.Format("{0}PDF\\{1}.pdf", RutaEmpresa, ObjNomina.SerieFolio))
+ If Not ArchivoPDF.Exists Then
+ Try
+ DirectoryExistsCreate(String.Format("{0}PDF", RutaEmpresa))
+ DirectoryExistsCreate(String.Format("{0}PDF\{1}", RutaEmpresa, "Nomina"))
+ File.WriteAllBytes(String.Format("{0}PDF\Nomina\{1}.pdf", RutaEmpresa, ObjNomina.SerieFolio), Retorno)
+ Catch ex As Exception
+ Alert("Ocurrió un error al generar el PDF", TipoMensaje.MsgAdvertencia)
+ GuardaLog(String.Format("Ocurrió un error al generar el PDF {0}", ex))
+ End Try
+ End If
+ Else
+ 'ImprimirPDF(String.Format("{0}\Formatos\Nomina.rdlc", RutaEmpresa), LSRds, RptParametro, ObjNomina.SerieFolio)
+ End If
+ Else
+ Alert("Ocurrio un error al obtener los datos de la Nomina")
+ End If
+ Catch ex As Exception
+ GuardaLog(String.Format("Ocurrio un error al generar el reporte RLDC {0}", ex))
+ End Try
+
+ End Using
+ End Using
Return Retorno
End Function
#End Region
diff --git a/App_Code/ClsRH.vb b/App_Code/ClsRH.vb
index 259de04bf..10d97f41f 100644
--- a/App_Code/ClsRH.vb
+++ b/App_Code/ClsRH.vb
@@ -321,6 +321,21 @@ Public Class ClsRH
#End Region
#Region "ClsRHAsistenciasInasistencias"
+
+ Public Function CargaInicialAsistenciaInasistencia(cveEmpresa As Int32, cveUsuario As Int32) As Boolean
+ Dim retorno As Boolean = False
+ DataAdapter("PA_RH_CargaInicialAsistenciaInasistencia", CommandType.StoredProcedure)
+ addParameters("@CveEmpresa", SqlDbType.Int, cveEmpresa)
+ addParameters("@CveUsuario", SqlDbType.Int, cveUsuario)
+
+ Try
+ SqlAdapter.Fill(Data)
+ retorno = True
+ Catch ex As Exception
+ OnError("Ocurrió un error al realizar la carga inicial de asistencia inasistencia.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo())
+ End Try
+ Return retorno
+ End Function
Public Function GetAsistenciasInasistencias(CveEmpresa As Integer) As Boolean
Dim Retorno As Boolean = False
diff --git a/App_Code/ClsVentas.vb b/App_Code/ClsVentas.vb
index 6255262da..a90f706f1 100644
--- a/App_Code/ClsVentas.vb
+++ b/App_Code/ClsVentas.vb
@@ -6899,7 +6899,7 @@ Public Class ClsVentas
End Function
- Public Function GetComisionesMedicasRep(FechaInicio As Date, FechaFin As Date, CveEmpresa As Integer, CveSubProyecto As Integer, CveProcedimiento As Integer, CveMedico As Integer, CveVendedor As Integer, CveUsuario As Integer, CveTipoVenta As Integer, Opcion As Integer) As Boolean
+ Public Function GetComisionesMedicasRep(FechaInicio As Date, FechaFin As Date, CveEmpresa As Integer, CveSubProyecto As Integer, CveProcedimiento As Integer, CveMedico As Integer, CveVendedor As Integer, CveUsuario As Integer, CveTipoVenta As Integer, FechaInicioPago As Date, FechaFinPago As Date) As Boolean
Dim Retorno As Boolean = False
DataAdapter("PA_Vta_ComisionesMedicasRepGet")
@@ -6914,7 +6914,8 @@ Public Class ClsVentas
.Add("@CveVendedor", SqlDbType.Int).Value = CveVendedor
.Add("@CveUsuario", SqlDbType.Int).Value = CveUsuario
.Add("@CveTipoVenta", SqlDbType.Int).Value = CveTipoVenta
- .Add("@Opcion", SqlDbType.Int).Value = Opcion
+ .Add("@FechaInicioPago", SqlDbType.Date).Value = FechaInicioPago
+ .Add("@FechaFinPago", SqlDbType.Date).Value = FechaFinPago
End With
@@ -6934,7 +6935,7 @@ Public Class ClsVentas
#Region "VENTAS MEDICAS COMISIONES ESPECIALES"
- Public Function GetComisionesMedicasEsPeciales(CveMedico As Integer, CvePS As Integer, CveEmpresa As Integer) As Boolean
+ Public Function GetComisionesMedicasEspeciales(CveMedico As Integer, CvePS As Integer, CveEmpresa As Integer) As Boolean
Dim Retorno As Boolean = False
DataAdapter("PA_Vta_ComisionesMedicasEspecialesGet")
diff --git a/Bancos/DepositosCaja.aspx b/Bancos/DepositosCaja.aspx
index 518ea5655..b24b9059c 100644
--- a/Bancos/DepositosCaja.aspx
+++ b/Bancos/DepositosCaja.aspx
@@ -628,14 +628,14 @@
function txtSumaCuentaRetorno(txt) {
debugger;
var comision2 = ToDouble($('#C_TxtCuentaRetorno').val());
- if (comision2 > ValorTotalSeleccionado) {
- $('#C_TxtCuentaRetorno').val(descuento)
- alert("No es posible poner un IVA superior a lo seleccionado")
- } else {
+ //if (comision2 > ValorTotalSeleccionado) {
+ // $('#C_TxtCuentaRetorno').val(descuento)
+ // alert("No es posible poner un IVA superior a lo seleccionado")
+ //} else {
saldo = ValorTotalSeleccionado - comision2 + comision - IVA - ComisionIntermediario;
$('#C_lblValorTotal').text(FormatoNumero(saldo, 2));
descuento = ToDouble($('#C_TxtCuentaRetorno').val())
- }
+ //}
}
diff --git a/Bancos/DepositosCaja.aspx.vb b/Bancos/DepositosCaja.aspx.vb
index 2f1a1fdcd..e99be126b 100644
--- a/Bancos/DepositosCaja.aspx.vb
+++ b/Bancos/DepositosCaja.aspx.vb
@@ -157,6 +157,11 @@ Partial Class Bancos_DepositosCaja
Private Sub BtnDepositar_Click(sender As Object, e As EventArgs) Handles BtnDepositar.Click
+
+ If Not Validaciones() Then
+ Exit Sub
+ End If
+
Dim TotalImporte As Decimal = 0
Dim TotalImportePrePoliza As Decimal
Dim Comision As Decimal = TxtComision.Text.ToDecimal
@@ -172,13 +177,13 @@ Partial Class Bancos_DepositosCaja
Exit Sub
End If
-
+ Dim tContador As Integer = 0
For Each Gvr As GridViewRow In GvFacturas.Rows
If Gvr.FCCheckBox("ChkFactura").Checked Then TotalImporte += Gvr.DataKey("Importe").ToDecimal
Next
- If TotalImporte = 0 Then
- Alert("Seleccion una factura para realizar el depósito", TipoMensaje.MsgAdvertencia)
+ If TotalImporte = 0 AndAlso CuentaRetorno <> 0 Then
+ Alert("Seleccione una factura para realizar el depósito", TipoMensaje.MsgAdvertencia)
Exit Sub
End If
@@ -465,8 +470,58 @@ Partial Class Bancos_DepositosCaja
lblValorTotalSeleccionado.Text = "0.0"
CargaDatos()
ObjConta.Dispose()
- End Sub
-
+ End Sub
+
+ Private Function Validaciones() As Boolean
+
+ Dim Respuesta As Boolean = True
+
+ If Not ValidaCobranza() Then
+ Respuesta = False
+ End If
+
+ Return Respuesta
+
+ End Function
+
+
+ Private Function ValidaCobranza() As Boolean
+ Dim Respuesta As Boolean = False
+
+ If UsuarioActual.CveEmpresa.Contiene(195) Then
+
+ Dim ObjMovtos As New ClsMovimientos()
+ Dim FechaI, FechaF As Date
+ FechaI = If(IsDate(txtFechaI.Text.Trim()), txtFechaI.Text.Trim().ToDate, MinFecha)
+ FechaF = If(IsDate(txtFechaF.Text.Trim()), txtFechaF.Text.Trim().ToDate, MaxFecha).AddDays(1)
+
+ If ObjMovtos.GetRemisionesCobranza(UsuarioActual.CveEmpresa, DdlSubProyectos.SelectedValue.ToEntero, FechaI, FechaF) Then
+ Dim dtt As DataTable = ObjMovtos.DtResultados.FiltraParametros($"CveVenta > 0 AND (CveUsuarioCobranza IS NULL OR CveUsuarioCobranza = {UsuarioActual.CveUsuario}) AND TipoDocto IN ('Ing','Rem')")
+ 'Dim Dtta As DataTable = dtt.FiltraParametros($"CveUsuarioCobranza = {UsuarioActual.CveUsuario} ")
+ 'If Dtta IsNot Nothing AndAlso Dtta.Rows.Count > 0 Then dtt = Dtta
+
+ If dtt.Rows.Count = 0 Then
+ Respuesta = True
+ Else
+ Respuesta = False
+ Alert("Se detectaron cobros pendientes.", TipoMensaje.MsgAdvertencia)
+ End If
+
+ Else
+ Alert("Error al consultarcobros pendientes.", TipoMensaje.MsgAdvertencia)
+ Respuesta = False
+ End If
+
+ ObjMovtos.Dispose()
+
+ Else
+ Respuesta = True
+ End If
+
+ Return Respuesta
+ End Function
+
+
Private Sub ObtenerTotalImporta()
Dim Total As Double = 0
diff --git a/Compras/Compras.aspx.vb b/Compras/Compras.aspx.vb
index 2beb02694..c0c464012 100644
--- a/Compras/Compras.aspx.vb
+++ b/Compras/Compras.aspx.vb
@@ -3594,13 +3594,10 @@ Partial Class Compras_Compras
End If
End If
-<<<<<<< HEAD
- CargaRetIVAConcepto(True, ObjProveedor.DIOTCveTipoOperacion)
- CargaRetISRConcepto(True, ObjProveedor.DIOTCveTipoOperacion)
CargaRetIVAConcepto(True, ObjProveedor.DIOTCveTipoOperacion)
CargaRetISRConcepto(True, ObjProveedor.DIOTCveTipoOperacion)
->>>>>>> GDiaz 2024.05.21
+
LbAgregar.Enabled = True
UpPSS.Update()
@@ -3647,11 +3644,7 @@ Partial Class Compras_Compras
PorcentajeProntoPago = ObjProveedor.PorcentajeProntoPago
End If
-<<<<<<< HEAD
-=======
-
->>>>>>> GDiaz 2024.05.21
Else
Alert("El Proveedor solicitado no existe, por favor intente de nuevo.", TipoMensaje.MsgAdvertencia)
End If
@@ -3659,9 +3652,6 @@ Partial Class Compras_Compras
-<<<<<<< HEAD
-=======
->>>>>>> GDiaz 2024.05.21
If UsuarioActual.Empresa.Funcionalidad(560) = "1" Then
If ObjProveedor.GetProveedoresEvaluacionPediente(Me.CveProveedor, UsuarioActual.CveEmpresa) Then
If ObjProveedor.DtResultados.Rows.Count > 0 Then
@@ -9790,7 +9780,7 @@ Partial Class Compras_Compras
-
+ Dim TCAnt As Decimal = If(DdlMoneda.SelectedValue = "1", 1, If(CveCompra > 0, LblTC.Text.ToDecimal, TxtTC.Text.ToDecimal))
If UsuarioActual.Empresa.CveEmpresa.Contiene(13, 83) Then
@@ -9802,7 +9792,7 @@ Partial Class Compras_Compras
e.Row.DBCampo("CveMoneda"),
e.Row.DBCampo("TCCompra").ToDouble,
DdlMoneda.SelectedValue,
- IIf(DdlMoneda.SelectedValue = "1", 1, TxtTC.Text),
+ TCAnt,
e.Row.FCTextBox("TxtComision").ClientID
)) 'SI ES UNA COMPRA NUEVA SE PONE EL TOTAL, SI NO EL SALDO
@@ -9834,7 +9824,7 @@ Partial Class Compras_Compras
e.Row.DBCampo("CveMoneda"),
e.Row.DBCampo("TCCompra").ToDouble,
DdlMoneda.SelectedValue,
- IIf(DdlMoneda.SelectedValue = "1", 1, TxtTC.Text)
+ TCAnt
)) 'SI ES UNA COMPRA NUEVA SE PONE EL TOTAL, SI NO EL SALDO
e.Row.FCTextBox("TxtAnticipo").Attributes.Add("onKeyUp", String.Format("FnCambiaAnt({0},this,{1},{2},{3},{4},{5});",
diff --git a/Contabilidad/RegPrePolizaS.aspx.vb b/Contabilidad/RegPrePolizaS.aspx.vb
index ab4a57400..07148d380 100644
--- a/Contabilidad/RegPrePolizaS.aspx.vb
+++ b/Contabilidad/RegPrePolizaS.aspx.vb
@@ -1690,7 +1690,7 @@ Partial Class ContabilidadC_RegPrePolizaS
End If
- If DdlPlantilla.SelectedValue.ToEntero <> 53 Then
+ If DdlPlantilla.SelectedValue.ToEntero <> 53 And Not CvePrePoliza > 0 Then
Dim x As Integer = 0
For Each gvRow As GridViewRow In GvMov.Rows
@@ -1769,7 +1769,7 @@ Partial Class ContabilidadC_RegPrePolizaS
DtMovimientos.AcceptChanges()
- If DdlPlantilla.SelectedValue.ToEntero <> 53 Then
+ If DdlPlantilla.SelectedValue.ToEntero <> 53 And Not CvePrePoliza > 0 Then
GvMov.DataSource = DtMovimientos
GvMov.DataBind()
GvPrePoliza.DataBind()
diff --git a/General/SaldosIniciales.aspx.vb b/General/SaldosIniciales.aspx.vb
index 494091251..4f113db72 100644
--- a/General/SaldosIniciales.aspx.vb
+++ b/General/SaldosIniciales.aspx.vb
@@ -3967,7 +3967,7 @@ Partial Class General_SaldosIniciales
TxtExcel.Text = ""
UpDatos.Update()
Else
- Alert(String.Format("Se agregaron: {0} Empleados correctamente.", NumRows), TipoMensaje.MsgInformacion)
+ Alert(String.Format("Se agregaron: {0} Empleados correctamente.", ContadorAgregados), TipoMensaje.MsgInformacion)
ObjRH.Commit()
TxtExcel.Text = ""
UpDatos.Update()
diff --git a/Nomina/Nomina.aspx.cs b/Nomina/Nomina.aspx.cs
index 0d1a67388..159550188 100644
--- a/Nomina/Nomina.aspx.cs
+++ b/Nomina/Nomina.aspx.cs
@@ -325,7 +325,8 @@ public partial class Nomina_Nomina2 : ClsPaginas
{
if (!IsPostBack)
- {
+ {
+ cargarutaempresa();
{
DtNomOrden = new DataTable();
@@ -474,6 +475,15 @@ public partial class Nomina_Nomina2 : ClsPaginas
}
}
}
+ private void cargarutaempresa()
+ {
+ string rutaCBBDir = String.Format("{0}CBB\\Nomina\\", UsuarioActual.Empresa.Ruta);
+
+ if (!Directory.Exists(rutaCBBDir))
+ {
+ Directory.CreateDirectory(rutaCBBDir);
+ }
+ }
#region Filtros
private void cargaEjercicios()
{
@@ -2109,7 +2119,7 @@ public partial class Nomina_Nomina2 : ClsPaginas
{
column++;
libro.Cell(1, column).Value = row["CveConcepto"].ToString();
- libro.Cell(FilaConceptos, column).Value = "N";
+ libro.Cell(FilaConceptos, column).Value = "S";
libro.Cell(3, column).Value = row["Concepto"].ToString();
libro.Cell(4, column).Value = row["Codigo"].ToString();
libro.Column(column).Width = 15;
@@ -2124,7 +2134,7 @@ public partial class Nomina_Nomina2 : ClsPaginas
{
column++;
libro.Cell(1, column).Value = row["CveConcepto"].ToString();
- libro.Cell(FilaConceptos, column).Value = "N";
+ libro.Cell(FilaConceptos, column).Value = "S";
libro.Cell(3, column).Value = row["Concepto"].ToString();
libro.Cell(4, column).Value = row["Codigo"].ToString();
libro.Column(column).Width = 15;
@@ -2139,7 +2149,7 @@ public partial class Nomina_Nomina2 : ClsPaginas
{
column++;
libro.Cell(1, column).Value = row["CveConcepto"].ToString();
- libro.Cell(FilaConceptos, column).Value = "N";
+ libro.Cell(FilaConceptos, column).Value = "S";
libro.Cell(3, column).Value = row["Concepto"].ToString();
libro.Cell(4, column).Value = row["Codigo"].ToString();
libro.Column(column).Width = 15;
diff --git a/Nomina/ReportePTU.aspx b/Nomina/ReportePTU.aspx
index d20134520..c48800e94 100644
--- a/Nomina/ReportePTU.aspx
+++ b/Nomina/ReportePTU.aspx
@@ -82,17 +82,26 @@
+