From cc3ab8d9aa974adc9070389eb8a455ff0f481c45 Mon Sep 17 00:00:00 2001 From: rrene Date: Fri, 14 Oct 2022 16:49:29 -0700 Subject: [PATCH 1/8] -mejoras --- General/SaldosIniciales.aspx.vb | 63 +++------------------------------ 1 file changed, 5 insertions(+), 58 deletions(-) diff --git a/General/SaldosIniciales.aspx.vb b/General/SaldosIniciales.aspx.vb index 652cdc548..404dd9bb9 100644 --- a/General/SaldosIniciales.aspx.vb +++ b/General/SaldosIniciales.aspx.vb @@ -1511,7 +1511,7 @@ Partial Class General_SaldosIniciales If Not CveProveedor > 0 Then Alert(String.Format("No se encontró el Proveedor con el RFC: {0}", {RFC}), TipoMensaje.MsgError) : ErrorCompras = True : Exit For If Not CveProveedorSucursal > 0 Then CveProveedorSucursal = -1 - TipoDocto = IIf(TipoDocto.ToUpper.Contiene("INGRESOS", "INGRESO", "ING"), "Fac", "NC").ToString + TipoDocto = IIf(TipoDocto.ToUpper.Contiene("INGRESOS", "INGRESO", "ING", "FACTURA"), "Fac", "NC").ToString 'Temporalmente SE BORRARA @@ -1851,10 +1851,10 @@ Partial Class General_SaldosIniciales For Each Row As DataRow In dt.Rows Dim Codigo As String = Row("Código").ToString Dim Descripcion As String = Row("Descripción").ToString - Dim TipoAF As String = Row("Tipo").ToString - Dim SubTipo As String = Row("SubTipo").ToString - Dim Valor As Decimal = Row("Valor").ToString.ToDecimal - Dim FechaAF As Date = Row("Fecha").ToString.ToDate + Dim TipoAF As String = Row("Tipo").ToString.Trim + Dim SubTipo As String = Row("SubTipo").ToString.Trim + Dim Valor As Decimal = Row("Valor de compra").ToString.ToDecimal + Dim FechaAF As Date = Row("Fecha de compra").ToString.ToDate Dim NumeroSerie As String = Row("No. Serie").ToString Dim Año As Integer = Row("Año").ToString.ToEntero Dim CuentaContable As String = Row("Cuenta Contable").ToString @@ -3943,58 +3943,5 @@ Partial Class General_SaldosIniciales End Sub - Private Function ReadExcelFile(ByVal flatFilePath As String, ByVal firstRowHasHeaders As Boolean) As DataTable - SpreadsheetInfo.SetLicense(ModExtensiones.SerialGemBoxSpreadsheet) - Dim excelFile As ExcelFile = ExcelFile.Load(flatFilePath) - - Dim unnamed As Integer = 0 - Dim cols As Integer - Dim columns As String() - Dim curRow As Integer = 0 - Dim curCol As Integer = 0 - Dim dataTable As DataTable = New DataTable() - Dim worksheet As ExcelWorksheet = excelFile.Worksheets(0) - - For cols = 0 To worksheet.Rows(0).AllocatedCells.Count - 1 - - If firstRowHasHeaders Then - - If worksheet.Rows(0).Cells(cols).Value IsNot Nothing Then - dataTable.Columns.Add(worksheet.Rows(0).Cells(cols).Value.ToString().Trim) - Else - dataTable.Columns.Add("Unnamed Column " & (System.Threading.Interlocked.Increment(unnamed))) - End If - - curRow = 1 - Else - dataTable.Columns.Add("Column " & (cols + 1)) - End If - - Next - - While curRow < worksheet.Rows.Count - - columns = New String(cols - 1) {} - - For curCol = 0 To cols - 1 - - If worksheet.Rows(curRow).Cells(curCol).Value Is Nothing Then - columns(curCol) = "" - Else - columns(curCol) = worksheet.Rows(curRow).Cells(curCol).Value.ToString() - End If - - Next - - dataTable.Rows.Add(columns) - curRow += 1 - - End While - - Return dataTable - - End Function - - End Class From 1d83125c585688fd115dd0da1a77772fbf948e58 Mon Sep 17 00:00:00 2001 From: rrene Date: Tue, 18 Oct 2022 12:55:42 -0700 Subject: [PATCH 2/8] --mejora --- General/SaldosIniciales.aspx.vb | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/General/SaldosIniciales.aspx.vb b/General/SaldosIniciales.aspx.vb index 404dd9bb9..9741dfdda 100644 --- a/General/SaldosIniciales.aspx.vb +++ b/General/SaldosIniciales.aspx.vb @@ -1540,9 +1540,6 @@ Partial Class General_SaldosIniciales FechaVencimiento = Fecha End If - - - 'Compra If Not ObjCompras.AddCompra(TipoDocto, "", Serie, Folio, Folio2, CveProveedor.ToEntero, SubTotal, 0, 0, IVA, RetIVA, RetISR, IEPS, 0, 0, Total, Fecha, CveMoneda, TipoCambio.ToDouble, FechaVencimiento, False, CodProvee, 1, CvePrePoliza, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, CveProveedorSucursal:=CveProveedorSucursal, @@ -1553,7 +1550,7 @@ Partial Class General_SaldosIniciales CveCompra = ObjCompras.CveCompra 'Compra Detalle - If Not ObjCompras.AddCompraDetalle(CveCompra, CveUnidadMedida, CvePS, Sucursal.ToEntero, -1, 0, 1, SubTotal, 0.16D, SubTotal, 0, "Carga Inicial", -1) Then + If Not ObjCompras.AddCompraDetalle(CveCompra, CveUnidadMedida, CvePS, Sucursal.ToEntero, -1, 0, 1, SubTotal, PorcentajeIVA.ToDecimal, SubTotal, 0, "Carga Inicial", -1) Then ErrorCompras = True Exit For End If @@ -1563,11 +1560,11 @@ Partial Class General_SaldosIniciales 'PrePólizaDetalle If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, True, Total, Folio, IIf(TipoDocto = "Fac", 5, 18).ToString.ToEntero, String.Format("{0}-{1}", Serie, Folio), Fecha, -1, -1, CveCompra:=CveCompra, CveProveedor:=CveProveedor, ImporteMX:=Total, CveSubProyecto:=Sucursal.ToEntero) Then ErrorCompras = True : Exit For If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, False, SubTotal, Folio, 6, String.Format("{0}-{1}", Serie, Folio), Fecha, -1, -1, CveCompra:=CveCompra, CveProveedor:=CveProveedor, ImporteMX:=SubTotal, CveClasificacion:=CveClasificacion, CveSubProyecto:=Sucursal.ToEntero) Then ErrorCompras = True : Exit For - If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, False, IVA, Folio, 14, String.Format("{0}-{1}", Serie, Folio), Fecha, -1, -1, CveCompra:=CveCompra, CveProveedor:=CveProveedor, ImporteMX:=IVA, CveSubProyecto:=Sucursal.ToEntero) Then ErrorCompras = True : Exit For + If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, False, IVA, Folio, 14, String.Format("{0}-{1}", Serie, Folio), Fecha, -1, -1, CveCompra:=CveCompra, CveProveedor:=CveProveedor, ImporteMX:=IVA, CveSubProyecto:=Sucursal.ToEntero, PorcentajeImpuesto:=PorcentajeIVA.ToDecimal) Then ErrorCompras = True : Exit For If IEPS > 0 Then If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, False, IEPS, Folio, 25, String.Format("{0}-{1}", Serie, Folio), Fecha, -1, -1, CveCompra:=CveCompra, CveProveedor:=CveProveedor, ImporteMX:=IEPS, CveSubProyecto:=Sucursal.ToEntero) Then ErrorCompras = True : Exit For - If RetIVA > 0 Then If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, False, RetIVA, Folio, 15, String.Format("{0}-{1}", Serie, Folio), Fecha, -1, -1, CveCompra:=CveCompra, CveProveedor:=CveProveedor, ImporteMX:=RetIVA, CveSubProyecto:=Sucursal.ToEntero) Then ErrorCompras = True : Exit For - If RetISR > 0 Then If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, False, RetISR, Folio, 16, String.Format("{0}-{1}", Serie, Folio), Fecha, -1, -1, CveCompra:=CveCompra, CveProveedor:=CveProveedor, ImporteMX:=RetISR, CveSubProyecto:=Sucursal.ToEntero) Then ErrorCompras = True : Exit For + If RetIVA > 0 Then If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, True, RetIVA, Folio, 15, String.Format("{0}-{1}", Serie, Folio), Fecha, -1, -1, CveCompra:=CveCompra, CveProveedor:=CveProveedor, ImporteMX:=RetIVA, CveSubProyecto:=Sucursal.ToEntero) Then ErrorCompras = True : Exit For + If RetISR > 0 Then If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, True, RetISR, Folio, 16, String.Format("{0}-{1}", Serie, Folio), Fecha, -1, -1, CveCompra:=CveCompra, CveProveedor:=CveProveedor, ImporteMX:=RetISR, CveSubProyecto:=Sucursal.ToEntero) Then ErrorCompras = True : Exit For If ImpuestosLocales > 0 Then If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, True, ImpuestosLocales, Folio, 27, String.Format("{0}-{1}", Serie, Folio), Fecha, -1, -1, CveCompra:=CveCompra, CveProveedor:=CveProveedor, ImporteMX:=ImpuestosLocales, CveSubProyecto:=Sucursal.ToEntero) Then ErrorCompras = True : Exit For 'Saldo From a141aa2d183238d99b6f20d9c9e02673739c5d74 Mon Sep 17 00:00:00 2001 From: rrene Date: Tue, 18 Oct 2022 12:56:09 -0700 Subject: [PATCH 3/8] -- codigo comentado --- Inventarios/TraspasoAlmacen.aspx.vb | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/Inventarios/TraspasoAlmacen.aspx.vb b/Inventarios/TraspasoAlmacen.aspx.vb index 5cdef0c56..cbccac8d7 100644 --- a/Inventarios/TraspasoAlmacen.aspx.vb +++ b/Inventarios/TraspasoAlmacen.aspx.vb @@ -2820,12 +2820,15 @@ Partial Class Inventarios_TraspasoAlmacen Private Sub CargaAlmacenDestino() Dim DrAlmO As DataRow = GlobalDTAlmacen(UsuarioActual.CveEmpresa, CveAlmacen:=DdlAlmacenOrigen.SelectedValue.ToEntero).FiltroPrimero("") - If DrAlmO("CveTipoAlmacen").ToString.ToEntero = 26 Then 'costeados - + If DrAlmO("CveTipoAlmacen").ToString = "26" Then 'costeados + Dim tTipoAlmacen As String = "26" + 'If UsuarioActual.CveUsuario = 1703 Then ''1703, Jesus lópez,codigo tempora. RMF.2022.10.17 + ' tTipoAlmacen = "1,16,26" + 'End If If ChkTransitorio.Checked Then - DdlAlmacenDestino.DataSource = GlobalDTAlmacen(UsuarioActual.CveEmpresa).FiltraParametros(" CveTipoAlmacen IN (26) AND Estatus = 'Activo' ") + DdlAlmacenDestino.DataSource = GlobalDTAlmacen(UsuarioActual.CveEmpresa).FiltraParametros($" CveTipoAlmacen IN ({tTipoAlmacen}) AND Estatus = 'Activo' ") Else - DdlAlmacenDestino.DataSource = GlobalDTAlmacenUsuarios(UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, CveTipoAlmacen:=-1).FiltraParametros("CveTipoAlmacen IN (26) ") + DdlAlmacenDestino.DataSource = GlobalDTAlmacenUsuarios(UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, CveTipoAlmacen:=-1).FiltraParametros($"CveTipoAlmacen IN ({tTipoAlmacen}) ") End If DdlAlmacenDestino.DataBind() From 1140ab1198aa7de6bf5cad27a237c36a1151fd31 Mon Sep 17 00:00:00 2001 From: rrene Date: Tue, 18 Oct 2022 14:05:06 -0700 Subject: [PATCH 4/8] - mejora AF --- General/SaldosIniciales.aspx.vb | 13 ++++--------- 1 file changed, 4 insertions(+), 9 deletions(-) diff --git a/General/SaldosIniciales.aspx.vb b/General/SaldosIniciales.aspx.vb index 9741dfdda..2efab3828 100644 --- a/General/SaldosIniciales.aspx.vb +++ b/General/SaldosIniciales.aspx.vb @@ -1804,8 +1804,6 @@ Partial Class General_SaldosIniciales If Not dt.Columns.Contains("CveCuentaContable") Then dt.Columns.Add("CveCuentaContable", GetType(Integer)) End If - - Dim sbErrores As New StringBuilder For Each Row As DataRow In dt.Rows @@ -1827,8 +1825,6 @@ Partial Class General_SaldosIniciales End If Next - - If Not ErrorAF Then dt.AcceptChanges() Else @@ -1836,7 +1832,6 @@ Partial Class General_SaldosIniciales Exit Sub End If - Dim ObjAF As New ClsAF Try @@ -1845,7 +1840,7 @@ Partial Class General_SaldosIniciales Dim Contador As Integer = 0 Dim NumRow As Integer = 0 - For Each Row As DataRow In dt.Rows + For Each Row As DataRow In dt.FiltraParametros("Descripción <> ''").Rows Dim Codigo As String = Row("Código").ToString Dim Descripcion As String = Row("Descripción").ToString Dim TipoAF As String = Row("Tipo").ToString.Trim @@ -1873,9 +1868,9 @@ Partial Class General_SaldosIniciales 'VALIDACIONES - If Not CveSubTipoAF > 0 Then Alert($"No se encontró el SubTipo: {TipoAF} Renglón: {NumRow}: ", TipoMensaje.MsgAdvertencia) : ErrorAF = True : Exit For - If Not CveSubProyecto > 0 Then Alert($"No se encontró el SubProyecto: {SubProyecto} Renglón: {NumRow}: ", TipoMensaje.MsgAdvertencia) : ErrorAF = True : Exit For - If Not CveEstadoActivoFijo > 0 Then Alert($"No se encontró el Estado: {Estado} Renglón: {NumRow}: ", TipoMensaje.MsgAdvertencia) : ErrorAF = True : Exit For + If Not CveSubTipoAF > 0 Then Alert($"No se encontró el SubTipo: {TipoAF} Descripcion: {Descripcion} Renglón: {NumRow}: ", TipoMensaje.MsgAdvertencia) : ErrorAF = True : Exit For + If Not CveSubProyecto > 0 Then Alert($"No se encontró el SubProyecto: {SubProyecto} Descripcion: {Descripcion} Renglón: {NumRow}: ", TipoMensaje.MsgAdvertencia) : ErrorAF = True : Exit For + If Not CveEstadoActivoFijo > 0 Then Alert($"No se encontró el Estado: {Estado} Descripcion: {Descripcion} Renglón: {NumRow}: ", TipoMensaje.MsgAdvertencia) : ErrorAF = True : Exit For If Not CveCliente > 0 Then CveCliente = -1 From c3f6d1aea29fcc29b6c303afffb1f4763bf49c33 Mon Sep 17 00:00:00 2001 From: Jonathan Alexis Perez Morales Date: Tue, 18 Oct 2022 22:57:02 -0700 Subject: [PATCH 5/8] Impresion de entradas/salidas en stimulsoft --- App_Code/ClsPaginas.vb | 13 +++- Sistemas/CatSesiones.aspx.vb | 130 +++++++++++++++---------------- Sistemas/ListadoReportes.aspx | 38 ++++++++- Sistemas/ListadoReportes.aspx.cs | 21 ++++- 4 files changed, 131 insertions(+), 71 deletions(-) diff --git a/App_Code/ClsPaginas.vb b/App_Code/ClsPaginas.vb index 3c87cf0e2..9eae7b0f1 100644 --- a/App_Code/ClsPaginas.vb +++ b/App_Code/ClsPaginas.vb @@ -5910,6 +5910,16 @@ Public Class ClsPaginas lrds.Add(rds) ImprimirPDF(RutaReporte, lrds, Parametros, NombreArchivo, Formato, MR, Content_Disposition) End Sub + + Public Sub ImprimirPDFStimulsoft(RutaReporte As String, DtDatos As DataTable, Parametros As List(Of ReportParameter), Optional NombreArchivo As String = "Reporte", Optional Formato As String = "PDF", Optional RDSName As String = "Datos", Optional Content_Disposition As String = "attachment") + Dim lrds As New List(Of ReportDataSource) + Dim rds As New ReportDataSource + rds.Name = RDSName + rds.Value = DtDatos + lrds.Add(rds) + + ImprimirbytesPDF(StreamBytesStimulsoft("Facturas", RutaReporte, lrds, Parametros, NombreArchivo:=NombreArchivo, Formato:="PDF"), NombreArchivo, Formato, Content_Disposition:=Content_Disposition) + End Sub Public Sub ImprimirPDFMultiDS(RutaReporte As String, lrds As List(Of ReportDataSource), Parametros As List(Of ReportParameter), Optional NombreArchivo As String = "Reporte", Optional Formato As String = "PDF", Optional RDSName As String = "DataSet1", Optional MR As ReportViewer = Nothing) ImprimirPDF(RutaReporte, lrds, Parametros, NombreArchivo, Formato, MR) End Sub @@ -8081,7 +8091,7 @@ Public Class ClsPaginas Return retorno End Function - Protected Function StreamBytesStimulsoft(Opcion As String, RutaReporte As String, DataSource As List(Of ReportDataSource), Parametros As List(Of ReportParameter), Optional NombreArchivo As String = "Reporte", Optional Formato As String = "PDF") As Byte() + Protected Function StreamBytesStimulsoft(Opcion As String, RutaReporte As String, DataSource As List(Of ReportDataSource), Parametros As List(Of ReportParameter), Optional NombreArchivo As String = "Reporte", Optional Formato As String = "PDF", Optional NombreDataSource As String = "Datos") As Byte() 'limpio ReportViwer Dim sw As New System.Diagnostics.Stopwatch() sw.Start() @@ -8150,6 +8160,7 @@ Public Class ClsPaginas Dim payload As New JObject( New JProperty("formato", Formato), New JProperty("ruta", RutaReporte), + New JProperty("nombreDataSource", NombreDataSource), New JProperty("UsarFormatoCompilado", False), New JProperty("parametros", paramsArray), New JProperty("dataSource", dataSourceArray) diff --git a/Sistemas/CatSesiones.aspx.vb b/Sistemas/CatSesiones.aspx.vb index 31effa199..000c80239 100644 --- a/Sistemas/CatSesiones.aspx.vb +++ b/Sistemas/CatSesiones.aspx.vb @@ -7,7 +7,7 @@ Partial Class Sistemas_CatSesiones Protected Sub BtnCargar_Click(sender As Object, e As EventArgs) Handles BtnCargar.Click If DdlVariable.SelectedItem.Value = "GlobalDTUsuarios" Then - CargaUsuarios() + CargaUsuarios() ElseIf DdlVariable.SelectedItem.Value = "GlobalDTUsuarioResponsable" Then CargaUsuariosResponsable() ElseIf DdlVariable.SelectedItem.Value = "GlobalDTAlmacenUsuarios" Then @@ -35,7 +35,7 @@ Partial Class Sistemas_CatSesiones ElseIf DdlVariable.SelectedItem.Value = "GlobalDTGralPaises" Then CargaPaises() ElseIf DdlVariable.SelectedItem.Value = "GlobalDTGralEstados" Then - CargaEstados() + CargaEstados() ElseIf DdlVariable.SelectedItem.Value = "GlobalDTGralColonias" Then CargaColonias() ElseIf DdlVariable.SelectedItem.Value = "GlobalDTGralMunicipios" Then @@ -92,29 +92,29 @@ Partial Class Sistemas_CatSesiones ElseIf DdlVariable.SelectedItem.Value = "GlobalDTSATMotivoTraslado" Then CargaSATMotivoTraslado() ElseIf DdlVariable.SelectedItem.Value = "GlobalDTConceptosContables" Then - CargaConceptosContables() + CargaConceptosContables() ElseIf DdlVariable.SelectedItem.Value = "GlobalDTClasificacionPorcentaje" Then - CargaDTClasificacionPorcentaje() + CargaDTClasificacionPorcentaje() ElseIf DdlVariable.SelectedItem.Value = "GlobalDTInvPSSeccionesAlmacen" Then - CargaDTInvPSSeccionesAlmacen() + CargaDTInvPSSeccionesAlmacen() ElseIf DdlVariable.SelectedItem.Value = "GlobalDTTipoTransacciones" Then CargaGlobalDTTipoTransacciones() - End If - - - - - End Sub - Private Sub CargaGlobalDTTipoTransacciones() - Using ObjBancos As New ClsBancos - If ObjBancos.GetBancos_TiposTransaccion(-1) Then Application("GlobalDTTipoTransacciones") = ObjBancos.DtResultados Else Application("GlobalDTTipoTransacciones") = Nothing - If ObjBancos.GetBancos_EstatusIE() Then Application("GlobalDTBancosEstatusIE") = ObjBancos.DtResultados Else Application("GlobalDTBancosEstatusIE") = Nothing - If ObjBancos.GetBancos() Then Application("GlobalDTBancos") = ObjBancos.DtResultados Else Application("GlobalDTBancos") = Nothing - If ObjBancos.GetBancos_TiposCuenta() Then Application("GlobalDTTipoCuenta") = ObjBancos.DtResultados Else Application("GlobalDTTipoCuenta") = Nothing - End Using - End Sub - - + End If + + + + + End Sub + Private Sub CargaGlobalDTTipoTransacciones() + Using ObjBancos As New ClsBancos + If ObjBancos.GetBancos_TiposTransaccion(-1) Then Application("GlobalDTTipoTransacciones") = ObjBancos.DtResultados Else Application("GlobalDTTipoTransacciones") = Nothing + If ObjBancos.GetBancos_EstatusIE() Then Application("GlobalDTBancosEstatusIE") = ObjBancos.DtResultados Else Application("GlobalDTBancosEstatusIE") = Nothing + If ObjBancos.GetBancos() Then Application("GlobalDTBancos") = ObjBancos.DtResultados Else Application("GlobalDTBancos") = Nothing + If ObjBancos.GetBancos_TiposCuenta() Then Application("GlobalDTTipoCuenta") = ObjBancos.DtResultados Else Application("GlobalDTTipoCuenta") = Nothing + End Using + End Sub + + Private Sub CargaConceptosContables() Dim ObjContabilidad As New ClsContabilidad If ObjContabilidad.GetConta_ConceptosContables() Then Application("GlobalDTContaConceptosContables") = ObjContabilidad.DtResultados Else Application("GlobalDTContaConceptosContables") = Nothing @@ -130,8 +130,8 @@ Partial Class Sistemas_CatSesiones Private Sub CargaContratos() Dim ObjContratos As New ClsContratos If ObjContratos.GetContratos(-1, UsuarioActual.CveEmpresa) Then Application("GlobalDTContratos") = ObjContratos.DtResultados Else Application("GlobalDTContratos") = Nothing - If ObjContratos.GetSecciones() Then Application("GlobalDTContratosSecciones") = ObjContratos.DtResultados Else Application("GlobalDTContratosSecciones") = Nothing - ' If ObjContratos.GetContratosTipos(UsuarioActual.CveEmpresa) Then Application("GlobalDTContratosTipos") = ObjContratos.DtResultados Else Application("GlobalDTContratosTipos") = Nothing + If ObjContratos.GetSecciones() Then Application("GlobalDTContratosSecciones") = ObjContratos.DtResultados Else Application("GlobalDTContratosSecciones") = Nothing + ' If ObjContratos.GetContratosTipos(UsuarioActual.CveEmpresa) Then Application("GlobalDTContratosTipos") = ObjContratos.DtResultados Else Application("GlobalDTContratosTipos") = Nothing ObjContratos.Dispose() GlobalDTContratosTipos(UsuarioActual.CveEmpresa) = Nothing End Sub @@ -216,7 +216,7 @@ Partial Class Sistemas_CatSesiones Private Sub CargaVenta() Dim ObjVentas As New ClsVentas - If ObjVentas.GetMesas Then Application("GlobalDTMesas") = ObjVentas.DtResultados Else Application("GlobalDTMesas") = Nothing + 'If ObjVentas.GetMesas Then Application("GlobalDTMesas") = ObjVentas.DtResultados Else Application("GlobalDTMesas") = Nothing If ObjVentas.GetPrecioListas Then Application("GlobalDTPrecioListas") = ObjVentas.DtResultados Else Application("GlobalDTPrecioListas") = Nothing If ObjVentas.GetCondicionesEntrega(-1) Then Application("GlobalDTVtaCondicionesEntrega") = ObjVentas.DtResultados Else Application("GlobalDTVtaCondicionesEntrega") = Nothing @@ -232,11 +232,11 @@ Partial Class Sistemas_CatSesiones If ObjPS.GetMetodosInv() Then Application("GlobalDTInvMetodosInventario") = ObjPS.DtResultados Else Application("GlobalDTInvMetodosInventario") = Nothing 'If ObjPS.GetPSSimplificado(-1) Then Application("GlobalDTPSSimplificado") = ObjPS.DtResultados.AsEnumerable() Else Application("GlobalDTPSSimplificado") = Nothing ObjPS.Dispose() - GlobalDTPSSimplificado(UsuarioActual.CveEmpresa) = Nothing - Using ObjVenta As New ClsVentas - If ObjVenta.GetClasificacionDetalle(-1, CveClasificacion:=-1) Then - Application("GlobalDTClasificacionesDetalle") = ObjVenta.DtResultados - End If + GlobalDTPSSimplificado(UsuarioActual.CveEmpresa) = Nothing + Using ObjVenta As New ClsVentas + If ObjVenta.GetClasificacionDetalle(-1, CveClasificacion:=-1) Then + Application("GlobalDTClasificacionesDetalle") = ObjVenta.DtResultados + End If End Using 'Fin Carga Usuarios @@ -290,9 +290,9 @@ Partial Class Sistemas_CatSesiones Application("GlobalDTUsuarioResponsable") = ObjUsuarios.DtResultados Else Application("GlobalDTUsuarios") = Nothing - End If - GlobalDTAlmacenUsuarios(-1, UsuarioActual.CveEmpresa) = Nothing - 'If ObjUsuarios.GetAlmacen(-1) Then Application("GlobalDTAlmacenUsuarios") = ObjUsuarios.DtResultados Else Application("GlobalDTAlmacenUsuarios") = Nothing + End If + GlobalDTAlmacenUsuarios(-1, UsuarioActual.CveEmpresa) = Nothing + 'If ObjUsuarios.GetAlmacen(-1) Then Application("GlobalDTAlmacenUsuarios") = ObjUsuarios.DtResultados Else Application("GlobalDTAlmacenUsuarios") = Nothing ObjUsuarios.Dispose() 'Fin Carga Usuarios End Sub @@ -300,12 +300,12 @@ Partial Class Sistemas_CatSesiones Private Sub CargaUsuariosResponsable() 'Carga Usuarios Dim ObjUsuarios As New ClsSisUsuarios - If ObjUsuarios.GetUsuariosEmpresas(-1) Then - Alert(ObjUsuarios.DtResultados.Rows.Count.ToString) + If ObjUsuarios.GetUsuariosEmpresas(-1) Then + Alert(ObjUsuarios.DtResultados.Rows.Count.ToString) Application("GlobalDTUsuarioResponsable") = ObjUsuarios.DtResultados Else Application("GlobalDTUsuarioResponsable") = Nothing - End If + End If ObjUsuarios.Dispose() 'Fin Carga Usuarios End Sub @@ -402,25 +402,25 @@ Partial Class Sistemas_CatSesiones Private Sub CargaPaises() Dim Gral As New ClsGenerales - GlobalDTGralPaises = Nothing - 'If Gral.GetGralPaises Then Application("GlobalDTGralPaises") = Gral.DtResultados Else Application("GlobalDTGralPaises") = Nothing + GlobalDTGralPaises = Nothing + 'If Gral.GetGralPaises Then Application("GlobalDTGralPaises") = Gral.DtResultados Else Application("GlobalDTGralPaises") = Nothing If Gral.GetClasificacionPorcentaje(-1, -1, -1, -1, 1) Then Application("GlobalDTClasificacionPorcentaje") = Gral.DtResultados Else Application("GlobalDTClasificacionPorcentaje") = Nothing Gral.Dispose() End Sub Private Sub CargaEstados() - GlobalDTGralEstados("") = Nothing - 'Dim Gral As New ClsGenerales - 'If Gral.GetGralEstados Then Application("GlobalDTGralEstados") = Gral.DtResultados Else Application("GlobalDTGralEstados") = Nothing - 'Gral.Dispose() + GlobalDTGralEstados("") = Nothing + 'Dim Gral As New ClsGenerales + 'If Gral.GetGralEstados Then Application("GlobalDTGralEstados") = Gral.DtResultados Else Application("GlobalDTGralEstados") = Nothing + 'Gral.Dispose() End Sub Private Sub CargaColonias() - GlobalDTGralColonias("", "", "") = Nothing - 'Dim Gral As New ClsGenerales - 'If Gral.GetGralEstados Then Application("GlobalDTGralEstados") = Gral.DtResultados Else Application("GlobalDTGralEstados") = Nothing - 'Gral.Dispose() + GlobalDTGralColonias("", "", "") = Nothing + 'Dim Gral As New ClsGenerales + 'If Gral.GetGralEstados Then Application("GlobalDTGralEstados") = Gral.DtResultados Else Application("GlobalDTGralEstados") = Nothing + 'Gral.Dispose() End Sub @@ -482,10 +482,10 @@ Partial Class Sistemas_CatSesiones End Sub 'Compras - Private Sub CargaProveedores() - GlobalDTCompProveedores(UsuarioActual.CveEmpresa) = Nothing - - + Private Sub CargaProveedores() + GlobalDTCompProveedores(UsuarioActual.CveEmpresa) = Nothing + + Dim ObjProveedores As New ClsCompProveedores 'If ObjProveedores.GetProveedores(ClsCompProveedores.TipoConsulta.ParaGlobalDT, -1, "-1", "-1", "-1", "-1", "-1", "-1", "-1", -1, -1) Then Application("GlobalDTCompProveedores") = ObjProveedores.DtResultados Else Application("GlobalDTCompProveedores") = Nothing If ObjProveedores.GetClasificacionProveedores Then Application("GlobalDTProveedorClasificacion") = ObjProveedores.DtResultados Else Application("GlobalDTProveedorClasificacion") = Nothing @@ -570,7 +570,7 @@ Partial Class Sistemas_CatSesiones End If End If ObjGral.Dispose() - Application("TipoCambioActual") = Nothing + Application("TipoCambioActual") = Nothing End Sub Private Sub CargarEquivalencias() @@ -606,19 +606,19 @@ Partial Class Sistemas_CatSesiones ' Response.Redirect(dominio) 'End If LblTotal.Text = dominio - End Sub - - Private Sub CargaDTClasificacionPorcentaje() - - Dim ObjGenerales As New ClsGenerales - If ObjGenerales.GetClasificacionPorcentaje(-1) Then Application("GlobalDTClasificacionPorcentaje") = ObjGenerales.DtResultados Else Application("GlobalDTClasificacionPorcentaje") = Nothing - ObjGenerales.Dispose() - - End Sub - - Private Sub CargaDTInvPSSeccionesAlmacen() - GlobalDTInvPSSeccionesAlmacen(UsuarioActual.CveEmpresa, -1, -1) = Nothing - GlobalDTSeccionAlmacen(UsuarioActual.CveEmpresa, -1) = Nothing - End Sub - + End Sub + + Private Sub CargaDTClasificacionPorcentaje() + + Dim ObjGenerales As New ClsGenerales + If ObjGenerales.GetClasificacionPorcentaje(-1) Then Application("GlobalDTClasificacionPorcentaje") = ObjGenerales.DtResultados Else Application("GlobalDTClasificacionPorcentaje") = Nothing + ObjGenerales.Dispose() + + End Sub + + Private Sub CargaDTInvPSSeccionesAlmacen() + GlobalDTInvPSSeccionesAlmacen(UsuarioActual.CveEmpresa, -1, -1) = Nothing + GlobalDTSeccionAlmacen(UsuarioActual.CveEmpresa, -1) = Nothing + End Sub + End Class diff --git a/Sistemas/ListadoReportes.aspx b/Sistemas/ListadoReportes.aspx index 04c7bdaa4..ab2ce9e1c 100644 --- a/Sistemas/ListadoReportes.aspx +++ b/Sistemas/ListadoReportes.aspx @@ -5,7 +5,7 @@ - Listado de reportes de Stimulsoft + Listado de formatos de impresión @@ -21,7 +21,7 @@
- Listado de formatos + Listado de formatos de la empresa
@@ -51,6 +51,40 @@
+
+
+
+
+ Listado de formatos generales +
+
+
+
+
+ " style="display: inline-block; margin-right: -20px; width: 150px;" /> + " style="margin-top: -3px;" class="btn btn-circle btn-sm label-info"> +
+
+
+
+
+
+ + + + + + + + + + + + +
+
+
diff --git a/Sistemas/ListadoReportes.aspx.cs b/Sistemas/ListadoReportes.aspx.cs index 4ab288968..37abde9f4 100644 --- a/Sistemas/ListadoReportes.aspx.cs +++ b/Sistemas/ListadoReportes.aspx.cs @@ -21,12 +21,27 @@ public partial class Sistemas_ListadoReportes : ClsPaginas { string RutaReportes = string.Format("{0}/Formatos", UsuarioActual.Empresa.Ruta); - string[] allfiles = Directory.GetFiles(RutaReportes, "*.mrt", SearchOption.AllDirectories); + string[] allfiles = Directory.GetFiles(RutaReportes, "*.mrt", SearchOption.TopDirectoryOnly); GvDatos.DataSource = (from Reporte in allfiles let file = new FileInfo(Reporte) select new { RutaReporte = file.FullName, Reporte = file.Name.Replace(".mrt","") }).QueryToDataTable(true); GvDatos.DataBind(); + + //EN LA EMPRESA DE JULIAN SE PUEDEN EDITAR LOS GENERALES + if (UsuarioActual.CveEmpresa == 2 ) + { + DivGenerales.Visible = true; + string RutaGenerales = string.Format("{0}/Grales/Formatos", Extensiones.ModExtensiones.DirectorioEmpresas); + + string[] allFormatosGenerales = Directory.GetFiles(RutaGenerales, "*.mrt", SearchOption.TopDirectoryOnly); + + GvGenerales.DataSource = (from Reporte in allFormatosGenerales + let file = new FileInfo(Reporte) + select new { RutaReporte = file.FullName, Reporte = file.Name.Replace(".mrt", "") }).QueryToDataTable(true); + GvGenerales.DataBind(); + } + UPDatos.Update(); } @@ -34,8 +49,8 @@ public partial class Sistemas_ListadoReportes : ClsPaginas { GridViewRow GvRow = (GridViewRow)(((LinkButton)sender).NamingContainer); var RutaReporteEncriptada = Encripta(GvRow.DataKey("RutaReporte")); - var hostURL = "https://localhost:7162"; - if (UsuarioActual.Empresa.FacturaProduccion) + var hostURL = "http://localhost:2202"; + if (EsProduccion) { hostURL = "http://sig.adssistemas.mx:6599"; } From f4cf802cf0b4df18bf8fabfd767363a43b9fc71a Mon Sep 17 00:00:00 2001 From: Jonathan Alexis Perez Morales Date: Tue, 18 Oct 2022 22:59:33 -0700 Subject: [PATCH 6/8] Funcionalidad 706, en ventas y estados financieros --- App_Code/ClsContabilidad.vb | 3 +- App_Code/Modelos.vb | 13 +- Ashx/SIGFacturacion.ashx | 534 +++++++++--------- Ashx/SIGFacturacionCiclica.ashx | 450 +++++++-------- Compras/PopUpVerFactura.aspx.vb | 14 +- Contabilidad2/RepAnexoCatalogo.aspx | 449 ++++++++------- Contabilidad2/RepAnexoCatalogo.aspx.vb | 8 +- .../RepMovimientosAuxiliaresCatalogo.aspx | 501 ++++++++-------- .../RepMovimientosAuxiliaresCatalogo.aspx.vb | 18 +- Contabilidad2/RepSituacionFinanciera.aspx | 492 ++++++++-------- Ventas/Ventas.aspx | 12 + Ventas/Ventas.aspx.vb | 337 ++++++----- 12 files changed, 1437 insertions(+), 1394 deletions(-) diff --git a/App_Code/ClsContabilidad.vb b/App_Code/ClsContabilidad.vb index be86a5e61..ef844e9a9 100644 --- a/App_Code/ClsContabilidad.vb +++ b/App_Code/ClsContabilidad.vb @@ -193,7 +193,7 @@ Public Class ClsContabilidad End Function Public Function AddPrePolizas(Modulo As String, CvePlantillaPoliza As Integer, Cargos As Double, Abonos As Double, CveMoneda As Integer, Fecha As Date, Concepto As String, CveUsuario As Integer, CveEmpresa As Integer, Optional FolioFijo As Integer = 0, Optional ReglaFolioPoliza As String = "", Optional CveTipoPoliza As Integer = -1, - Optional AgregarFolio As Boolean = False) As Integer + Optional AgregarFolio As Boolean = False, Optional TipoContable As Integer = -1) As Integer FolioPoliza = -1 Dim Retorno As Integer = -1 @@ -215,6 +215,7 @@ Public Class ClsContabilidad .Add("@FolioPoliza", SqlDbType.Int).Direction = ParameterDirection.Output .Add("@ReglaFolioPoliza", SqlDbType.VarChar).Value = ReglaFolioPoliza .Add("@AgregarFolio", SqlDbType.Bit).Value = AgregarFolio + .Add("@TipoContable", SqlDbType.Int).Value = TipoContable End With Try diff --git a/App_Code/Modelos.vb b/App_Code/Modelos.vb index 1328bcd5a..f72a279b9 100644 --- a/App_Code/Modelos.vb +++ b/App_Code/Modelos.vb @@ -2470,8 +2470,13 @@ Namespace Modelos End If IdCtaContableCliente = IdCtaContable - If ObjConta.AddPrePolizasDetalle(ObjFactura.CvePrePoliza, TipoMovimiento, importeMovimiento, Referencia, 190, Concepto, FechaMovimiento, IdCtaContable, -1, CveVenta:=ObjFactura.CveVenta, CveCliente:=ObjFactura.CveCliente, CveIE:=CveIE, ImporteMX:=importeMX, ImporteME:=If(tipoCambio = 1, 0, importeMovimiento), Contabilizable:=False, CveSubProyecto:=CveSubProyectoContabilizar) Then - If Not ObjConta.AddPrePolizasDetalle(ObjFactura.CvePrePoliza, Not TipoMovimiento, importeMovimiento, Referencia, 193, Concepto, FechaMovimiento, IdCtaContable, -1, CveVenta:=ObjFactura.CveVenta, CveCliente:=ObjFactura.CveCliente, CveIE:=CveIE, ImporteMX:=importeMX, ImporteME:=If(tipoCambio = 1, 0, importeMovimiento), Contabilizable:=False, CveSubProyecto:=CveSubProyectoContabilizar) Then + Dim ContabilizableRem As Boolean = False + If ObjFactura.TipoContable <> -1 Then + ContabilizableRem = True + End If + + If ObjConta.AddPrePolizasDetalle(ObjFactura.CvePrePoliza, TipoMovimiento, importeMovimiento, Referencia, 190, Concepto, FechaMovimiento, IdCtaContable, -1, CveVenta:=ObjFactura.CveVenta, CveCliente:=ObjFactura.CveCliente, CveIE:=CveIE, ImporteMX:=importeMX, ImporteME:=If(tipoCambio = 1, 0, importeMovimiento), Contabilizable:=ContabilizableRem, CveSubProyecto:=CveSubProyectoContabilizar) Then + If Not ObjConta.AddPrePolizasDetalle(ObjFactura.CvePrePoliza, Not TipoMovimiento, importeMovimiento, Referencia, 193, Concepto, FechaMovimiento, IdCtaContable, -1, CveVenta:=ObjFactura.CveVenta, CveCliente:=ObjFactura.CveCliente, CveIE:=CveIE, ImporteMX:=importeMX, ImporteME:=If(tipoCambio = 1, 0, importeMovimiento), Contabilizable:=ContabilizableRem, CveSubProyecto:=CveSubProyectoContabilizar) Then ErrorPrepoliza = True End If Else @@ -5249,7 +5254,7 @@ Namespace Modelos If Not AplicaRefacturacionConPagos AndAlso ((((ObjFactura.Saldo > 0 AndAlso (CveEstatus > 0 AndAlso Not CveEstatus.Contiene(20, 23))) OrElse (ObjFactura.Total = 0 AndAlso UsuarioActual.CveEmpresa.Contiene(72) AndAlso ObjFactura.TipoDocto.Contiene("Ing"))) AndAlso CveEstatus.Contiene(4, 5)) OrElse (CvePlantillaPoliza = 7 AndAlso (CveEstatus > 0 AndAlso Not CveEstatus.Contiene(20, 23)))) Then 'CUANDO SE CANCELA, LA PÓLIZA DEBE DE SER DE DIARIO - CvePrePoliza = ObjConta.AddPrePolizas("Modelos/CancelarDocumento", CvePlantillaPoliza, ObjFactura.Total, ObjFactura.Total, ObjFactura.CveMoneda, CancelacionFecha, ObjFactura.Cliente.Nombre, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, CveTipoPoliza:=3) + CvePrePoliza = ObjConta.AddPrePolizas("Modelos/CancelarDocumento", CvePlantillaPoliza, ObjFactura.Total, ObjFactura.Total, ObjFactura.CveMoneda, CancelacionFecha, ObjFactura.Cliente.Nombre, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, CveTipoPoliza:=3, TipoContable:=ObjFactura.TipoContable) ObjFactura.CvePrePoliza = CvePrePoliza If ObjFactura.CvePrePoliza <= 0 Then @@ -7285,6 +7290,8 @@ Namespace Modelos Public Property MotivoCancelacion As String = "" + Public Property TipoContable As Integer = -1 + #End Region diff --git a/Ashx/SIGFacturacion.ashx b/Ashx/SIGFacturacion.ashx index 816d27346..d9fa69a59 100644 --- a/Ashx/SIGFacturacion.ashx +++ b/Ashx/SIGFacturacion.ashx @@ -1,5 +1,5 @@ -<%@ WebHandler Language="VB" Class="SIGFacturacion" %> - +<%@ WebHandler Language="VB" Class="SIGFacturacion" %> + Imports System Imports System.Web Imports System.Net.Http @@ -11,62 +11,62 @@ Imports Extensiones Imports System.IO Imports Modelos -Public Class SIGFacturacion : Implements IHttpHandler, IRequiresSessionState - +Public Class SIGFacturacion : Implements IHttpHandler, IRequiresSessionState + Private Property CveEmpresaFacturar As Integer = 143 Public Sub ProcessRequest(ByVal context As HttpContext) Implements IHttpHandler.ProcessRequest - context.Response.ContentType = "text/plain" + context.Response.ContentType = "text/plain" Dim Retorno As Boolean = False - Try - 'If context.Request.InputStream IsNot Nothing Then - ' Using reader As New StreamReader(context.Request.InputStream) - ' Dim json = reader.ReadToEnd - - ' If Not String.IsNullOrEmpty(json) Then - ' Dim JsonRequest As JObject = JObject.Parse(json) - ' If JsonRequest IsNot Nothing Then - ' Dim Metodo = JsonRequest("Metodo").ToString() - ' If Metodo = "FactMasivaRemisiones" Then - ' Dim pCveEmpresa = JsonRequest("CveEmpresa").ToString() - ' Dim pFechaI As String = "" - ' Dim pFechaF As String = "" - - ' If JsonRequest("FechaI") IsNot Nothing AndAlso JsonRequest("FechaF") IsNot Nothing Then - ' pFechaI = JsonRequest("FechaI") - ' pFechaF = JsonRequest("FechaF") - ' End If - - ' IniciaFacturacionMasiva(context, CveEmpresaFacturar, pFechaI, pFechaF) - ' End If - ' End If - ' End If - - ' End Using - 'End If - - Dim Metodo = If(context.Request("Metodo") = Nothing, "", context.Request("Metodo").ToString()) - If Metodo = "FactMasivaRemisiones" Then - Dim pFechaI As String = "" - Dim pFechaF As String = "" - - If context.Request("FechaI") IsNot Nothing AndAlso context.Request("FechaF") IsNot Nothing Then - pFechaI = context.Request("FechaI") - pFechaF = context.Request("FechaF") - End If - - Retorno = IniciaFacturacionMasiva(CveEmpresaFacturar, pFechaI, pFechaF) + Try + 'If context.Request.InputStream IsNot Nothing Then + ' Using reader As New StreamReader(context.Request.InputStream) + ' Dim json = reader.ReadToEnd + + ' If Not String.IsNullOrEmpty(json) Then + ' Dim JsonRequest As JObject = JObject.Parse(json) + ' If JsonRequest IsNot Nothing Then + ' Dim Metodo = JsonRequest("Metodo").ToString() + ' If Metodo = "FactMasivaRemisiones" Then + ' Dim pCveEmpresa = JsonRequest("CveEmpresa").ToString() + ' Dim pFechaI As String = "" + ' Dim pFechaF As String = "" + + ' If JsonRequest("FechaI") IsNot Nothing AndAlso JsonRequest("FechaF") IsNot Nothing Then + ' pFechaI = JsonRequest("FechaI") + ' pFechaF = JsonRequest("FechaF") + ' End If + + ' IniciaFacturacionMasiva(context, CveEmpresaFacturar, pFechaI, pFechaF) + ' End If + ' End If + ' End If + + ' End Using + 'End If + + Dim Metodo = If(context.Request("Metodo") = Nothing, "", context.Request("Metodo").ToString()) + If Metodo = "FactMasivaRemisiones" Then + Dim pFechaI As String = "" + Dim pFechaF As String = "" + + If context.Request("FechaI") IsNot Nothing AndAlso context.Request("FechaF") IsNot Nothing Then + pFechaI = context.Request("FechaI") + pFechaF = context.Request("FechaF") + End If + + Retorno = IniciaFacturacionMasiva(CveEmpresaFacturar, pFechaI, pFechaF) End If Catch ex As Exception ex.GuardaLog(ex.Message) - End Try - - If Retorno Then - context.Response.Write("True") - Else - context.Response.Write("False") + End Try + + If Retorno Then + context.Response.Write("True") + Else + context.Response.Write("False") End If End Sub @@ -77,7 +77,7 @@ Public Class SIGFacturacion : Implements IHttpHandler, IRequiresSessionState End Get End Property - Private Function IniciaFacturacionMasiva(pCveEmpresa As String, pFechaI As String, pFechaF As String) As Boolean + Private Function IniciaFacturacionMasiva(pCveEmpresa As String, pFechaI As String, pFechaF As String) As Boolean Dim Retorno As Boolean = True Dim JsonRetorno As New JObject() Dim CveEmpresa As Integer = pCveEmpresa.ToEntero() @@ -96,9 +96,9 @@ Public Class SIGFacturacion : Implements IHttpHandler, IRequiresSessionState FechaI = New DateTime(DomingoAnterior.Year, DomingoAnterior.Month, DomingoAnterior.Day, 0, 0, 0) FechaF = New DateTime(Sabado.Year, Sabado.Month, Sabado.Day, 23, 59, 59) - JsonRetorno = EjecutarFacturacionMasiva(Usuario, FechaI, FechaF, Usuario.Empresa.FacturaProduccion) - Else - Retorno = False + JsonRetorno = EjecutarFacturacionMasiva(Usuario, FechaI, FechaF, Usuario.Empresa.FacturaProduccion) + Else + Retorno = False GuardaLogFacturacion("Ejecución no permitida, no es el dia permitido para ejecucion o no se espeficaron las fechas") End If Else @@ -107,11 +107,11 @@ Public Class SIGFacturacion : Implements IHttpHandler, IRequiresSessionState JsonRetorno = EjecutarFacturacionMasiva(Usuario, FechaI, FechaF, Usuario.Empresa.FacturaProduccion) End If - End If - - GuardaLogFacturacion("Ejecución Exitosa, se generaron las siguientes facturas:") - GuardaLogFacturacion(JsonRetorno.ToString()) - + End If + + GuardaLogFacturacion("Ejecución Exitosa, se generaron las siguientes facturas:") + GuardaLogFacturacion(JsonRetorno.ToString()) + Return Retorno End Function @@ -242,8 +242,8 @@ Public Class SIGFacturacion : Implements IHttpHandler, IRequiresSessionState json.Add(New JProperty("Almacen", ObsInv.ToString())) Return json - End Function - + End Function + #Region "V A L I D A - D A T O S" Private Function ValidaUsuarioSistema(CveEmpresa As Integer) As Usuario Dim UsuarioActual As Usuario = Nothing @@ -277,8 +277,8 @@ Public Class SIGFacturacion : Implements IHttpHandler, IRequiresSessionState UsuarioActual.Empresa = ObjEmpresa.Empresa End If ObjEmpresa.Dispose() - End Sub - + End Sub + #End Region #Region "D E F I N I R - O B J E T O S" Private Function CreaFactura(Resp As Modelos.Factura.MMensajeFactura, UsuarioActual As Usuario, DTRemisionesPS As DataTable, CveCliente As Integer, CveSubProyecto As Integer, CveMoneda As Integer, DatosRemisiones As JObject, FechaI As DateTime, FechaF As DateTime) As Modelos.Factura @@ -780,7 +780,7 @@ Public Class SIGFacturacion : Implements IHttpHandler, IRequiresSessionState 'RECARGAR GV Return Row - End Function + End Function #End Region #Region "E N V I O - C O R R E O" Private Sub EnviarCorreo(Objfactura As Modelos.Factura, UsuarioActual As Usuario) @@ -924,9 +924,9 @@ Public Class SIGFacturacion : Implements IHttpHandler, IRequiresSessionState End If End Try End If - End Sub + End Sub #End Region - + Public Sub GuardaLogFacturacion(Str As String) Dim ArchivoW As StreamWriter Dim strLineaTMP As String @@ -949,8 +949,8 @@ Public Class SIGFacturacion : Implements IHttpHandler, IRequiresSessionState ArchivoW.Close() ArchivoW.Dispose() - End Sub - + End Sub + #Region "G L O B A L - D T" Public Property GlobalTipoCambio(Optional Fecha As Date = MinFecha) As Double Get @@ -1135,10 +1135,10 @@ Public Class SIGFacturacion : Implements IHttpHandler, IRequiresSessionState Set(value As DataTable) HttpContext.Current.Application("GlobalDTPSATPS") = value End Set - End Property - + End Property + #Region "GLOBALES DE SAT COMERCIO EXTERIOR" - + Property GlobalDTClavePedimento() As DataTable Get GlobalDTClavePedimento = DirectCast(HttpContext.Current.Application("GlobalDTClavePedimento"), DataTable) @@ -1248,10 +1248,10 @@ Public Class SIGFacturacion : Implements IHttpHandler, IRequiresSessionState Set(value As DataTable) HttpContext.Current.Application("GlobalDTColonia") = value End Set - End Property - + End Property + #End Region - + Property GlobalDTPSATUM() As DataTable Get GlobalDTPSATUM = DirectCast(HttpContext.Current.Application("GlobalDTPSATUM"), DataTable) @@ -1635,8 +1635,8 @@ Public Class SIGFacturacion : Implements IHttpHandler, IRequiresSessionState Set(value As DataTable) HttpContext.Current.Application("GlobalDTLeyendasFiscales") = value End Set - End Property - + End Property + Property GlobalDTEstatusFactura() As DataTable Get GlobalDTEstatusFactura = DirectCast(HttpContext.Current.Application("GlobalDTEstatusFactura"), DataTable) @@ -1680,37 +1680,37 @@ Public Class SIGFacturacion : Implements IHttpHandler, IRequiresSessionState HttpContext.Current.Application("GlobalDTProyectos") = value End Set End Property - Public Property GlobalDTSubProyectos(CveProyecto As Integer, Optional CveSubProyecto As Integer = -1, Optional CveEmpresa As Integer = -1, Optional Estatus As Integer = 1) As DataTable - Get - Dim AppNombre As String = String.Format("GlobalDTSubProyectos-{0}", CveEmpresa) - 'sino existe, recarga los datos - If DirectCast(HttpContext.Current.Application(AppNombre), DataTable) Is Nothing Or (DirectCast(HttpContext.Current.Application(AppNombre), DataTable) IsNot Nothing AndAlso DirectCast(HttpContext.Current.Application(AppNombre), DataTable).Rows.Count = 0) Then - Dim P As New ClsSubProyectos - If P.GetSubProyectos(CveEmpresa:=CveEmpresa) Then HttpContext.Current.Application(AppNombre) = P.DtResultados - P.Dispose() - - End If - - If CveProyecto <> -1 OrElse CveSubProyecto <> -1 OrElse CveEmpresa <> -1 OrElse Estatus <> -1 Then - Dim StrSQL As New StringBuilder - If CveProyecto <> -1 Then StrSQL.AppendFormat(" AND CveProyecto = {0}", CveProyecto) - If CveSubProyecto <> -1 Then StrSQL.AppendFormat(" AND CveSubProyecto = {0}", CveSubProyecto) - If Estatus <> -1 Then StrSQL.AppendFormat(" AND CveEstatus = {0}", Estatus) - If CveEmpresa <> -1 Then StrSQL.AppendFormat(" AND CveEmpresa = {0}", CveEmpresa) - - Dim Dv As New DataView(DirectCast(HttpContext.Current.Application(AppNombre), DataTable), StrSQL.ToString.Trim.TrimStart("A"c, "N"c, "D"c), "", DataViewRowState.CurrentRows) - GlobalDTSubProyectos = Dv.ToTable - Dv.Dispose() - - Else - GlobalDTSubProyectos = DirectCast(HttpContext.Current.Application(AppNombre), DataTable) - End If - - End Get - Set(ByVal value As DataTable) - Dim AppNombre As String = String.Format("GlobalDTSubProyectos-{0}", CveEmpresa) - HttpContext.Current.Application(AppNombre) = value - End Set + Public Property GlobalDTSubProyectos(CveProyecto As Integer, Optional CveSubProyecto As Integer = -1, Optional CveEmpresa As Integer = -1, Optional Estatus As Integer = 1) As DataTable + Get + Dim AppNombre As String = String.Format("GlobalDTSubProyectos-{0}", CveEmpresa) + 'sino existe, recarga los datos + If DirectCast(HttpContext.Current.Application(AppNombre), DataTable) Is Nothing Or (DirectCast(HttpContext.Current.Application(AppNombre), DataTable) IsNot Nothing AndAlso DirectCast(HttpContext.Current.Application(AppNombre), DataTable).Rows.Count = 0) Then + Dim P As New ClsSubProyectos + If P.GetSubProyectos(CveEmpresa:=CveEmpresa) Then HttpContext.Current.Application(AppNombre) = P.DtResultados + P.Dispose() + + End If + + If CveProyecto <> -1 OrElse CveSubProyecto <> -1 OrElse CveEmpresa <> -1 OrElse Estatus <> -1 Then + Dim StrSQL As New StringBuilder + If CveProyecto <> -1 Then StrSQL.AppendFormat(" AND CveProyecto = {0}", CveProyecto) + If CveSubProyecto <> -1 Then StrSQL.AppendFormat(" AND CveSubProyecto = {0}", CveSubProyecto) + If Estatus <> -1 Then StrSQL.AppendFormat(" AND CveEstatus = {0}", Estatus) + If CveEmpresa <> -1 Then StrSQL.AppendFormat(" AND CveEmpresa = {0}", CveEmpresa) + + Dim Dv As New DataView(DirectCast(HttpContext.Current.Application(AppNombre), DataTable), StrSQL.ToString.Trim.TrimStart("A"c, "N"c, "D"c), "", DataViewRowState.CurrentRows) + GlobalDTSubProyectos = Dv.ToTable + Dv.Dispose() + + Else + GlobalDTSubProyectos = DirectCast(HttpContext.Current.Application(AppNombre), DataTable) + End If + + End Get + Set(ByVal value As DataTable) + Dim AppNombre As String = String.Format("GlobalDTSubProyectos-{0}", CveEmpresa) + HttpContext.Current.Application(AppNombre) = value + End Set End Property Property GlobalDTSubProyectosUsuarios(CveUsuario As Integer, CveProyecto As Integer, CveEmpresa As Integer, Optional CveSubProyecto As Integer = -1, Optional CveEstatus As Integer = -1) As DataTable Get @@ -2305,44 +2305,44 @@ Public Class SIGFacturacion : Implements IHttpHandler, IRequiresSessionState HttpContext.Current.Application("GlobalDTAlmacen") = value End Set End Property - Property GlobalDTAlmacenUsuarios(CveUsuario As Integer, CveEmpresa As Integer, Optional CveTipoAlmacen As Integer = 1) As DataTable - Get - Dim AppNombre As String = String.Format("GlobalDTAlmacenUsuarios-{0}", CveEmpresa) - 'sino existe, recarga los datos - If HttpContext.Current.Application(AppNombre) Is Nothing Then - Dim ObjUsr As New ClsSisUsuarios - If ObjUsr.GetAlmacen(-1, CveEmpresa) Then HttpContext.Current.Application(AppNombre) = ObjUsr.DtResultados - ObjUsr.Dispose() - End If - Dim Str As New StringBuilder - Str.AppendFormat("CveUsuario = {0} AND CveEmpresa = {1} ", CveUsuario, CveEmpresa) - If CveTipoAlmacen > 0 Then Str.AppendFormat("AND CveTipoAlmacen = {0}", CveTipoAlmacen) - - Dim Dv As New DataView(DirectCast(HttpContext.Current.Application(AppNombre), DataTable), Str.ToString, "", DataViewRowState.CurrentRows) - GlobalDTAlmacenUsuarios = Dv.ToTable - Dv.Dispose() - End Get - Set(value As DataTable) - Dim AppNombre As String = String.Format("GlobalDTAlmacenUsuarios-{0}", CveEmpresa) - HttpContext.Current.Application(AppNombre) = value - End Set - 'Get - ' If CveEmpresa <> -1 Then - ' Dim Str As New StringBuilder - ' Str.AppendFormat("CveUsuario = {0} AND CveEmpresa = {1} ", CveUsuario, CveEmpresa) - ' If CveTipoAlmacen > 0 Then Str.AppendFormat("AND CveTipoAlmacen = {0}", CveTipoAlmacen) - - ' Dim Dv As New DataView(DirectCast(HttpContext.Current.Application("GlobalDTAlmacenUsuarios"), DataTable), Str.ToString, "", DataViewRowState.CurrentRows) - ' GlobalDTAlmacenUsuarios = Dv.ToTable - ' Dv.Dispose() - ' Else - ' GlobalDTAlmacenUsuarios = DirectCast(HttpContext.Current.Application("GlobalDTAlmacenUsuarios"), DataTable) - ' End If - - 'End Get - 'Set(value As DataTable) - ' HttpContext.Current.Application("GlobalDTAlmacenUsuarios") = value - 'End Set + Property GlobalDTAlmacenUsuarios(CveUsuario As Integer, CveEmpresa As Integer, Optional CveTipoAlmacen As Integer = 1) As DataTable + Get + Dim AppNombre As String = String.Format("GlobalDTAlmacenUsuarios-{0}", CveEmpresa) + 'sino existe, recarga los datos + If HttpContext.Current.Application(AppNombre) Is Nothing Then + Dim ObjUsr As New ClsSisUsuarios + If ObjUsr.GetAlmacen(-1, CveEmpresa) Then HttpContext.Current.Application(AppNombre) = ObjUsr.DtResultados + ObjUsr.Dispose() + End If + Dim Str As New StringBuilder + Str.AppendFormat("CveUsuario = {0} AND CveEmpresa = {1} ", CveUsuario, CveEmpresa) + If CveTipoAlmacen > 0 Then Str.AppendFormat("AND CveTipoAlmacen = {0}", CveTipoAlmacen) + + Dim Dv As New DataView(DirectCast(HttpContext.Current.Application(AppNombre), DataTable), Str.ToString, "", DataViewRowState.CurrentRows) + GlobalDTAlmacenUsuarios = Dv.ToTable + Dv.Dispose() + End Get + Set(value As DataTable) + Dim AppNombre As String = String.Format("GlobalDTAlmacenUsuarios-{0}", CveEmpresa) + HttpContext.Current.Application(AppNombre) = value + End Set + 'Get + ' If CveEmpresa <> -1 Then + ' Dim Str As New StringBuilder + ' Str.AppendFormat("CveUsuario = {0} AND CveEmpresa = {1} ", CveUsuario, CveEmpresa) + ' If CveTipoAlmacen > 0 Then Str.AppendFormat("AND CveTipoAlmacen = {0}", CveTipoAlmacen) + + ' Dim Dv As New DataView(DirectCast(HttpContext.Current.Application("GlobalDTAlmacenUsuarios"), DataTable), Str.ToString, "", DataViewRowState.CurrentRows) + ' GlobalDTAlmacenUsuarios = Dv.ToTable + ' Dv.Dispose() + ' Else + ' GlobalDTAlmacenUsuarios = DirectCast(HttpContext.Current.Application("GlobalDTAlmacenUsuarios"), DataTable) + ' End If + + 'End Get + 'Set(value As DataTable) + ' HttpContext.Current.Application("GlobalDTAlmacenUsuarios") = value + 'End Set End Property Property GlobalDTNom_Periodos() As DataTable Get @@ -2397,9 +2397,9 @@ Public Class SIGFacturacion : Implements IHttpHandler, IRequiresSessionState Set(value As DataTable) HttpContext.Current.Application("GlobalDTVtaCobranzaEstatus") = value End Set - End Property - - + End Property + + #Region "***********************************************************************DT EVENTOS****************************************************************************************" Property GlobalDTTiposEventos() As DataTable Get @@ -2435,9 +2435,9 @@ Public Class SIGFacturacion : Implements IHttpHandler, IRequiresSessionState Set(value As DataTable) HttpContext.Current.Application("GlobalDTOIEstatusEventos") = value End Set - End Property + End Property #End Region - + #Region " **********************************************************************DT PROSPECTOS*************************************************************************************" Property GlobalDTProspectosCaracteristicasClasificaciones() As DataTable Get @@ -2478,9 +2478,9 @@ Public Class SIGFacturacion : Implements IHttpHandler, IRequiresSessionState Set(value As DataTable) HttpContext.Current.Application("GlobalDTProspectosCaracteristicasOpciones") = value End Set - End Property + End Property #End Region - + #Region "***********************************************************************DT ACTIVOS FIJOS**********************************************************************************" Property GlobalDTActivoFijos(CveEmpresa As Integer, Optional CveSubTipoActivoFijo As Integer = -1, Optional CveActivoFijo As Integer = -1) As DataTable Get @@ -2573,10 +2573,10 @@ Public Class SIGFacturacion : Implements IHttpHandler, IRequiresSessionState Set(value As DataTable) HttpContext.Current.Application("GlobalDTTipoActivoFijo") = value End Set - End Property - + End Property + #End Region - + #Region "***********************************************************************DT GENERALES**************************************************************************************" Property GlobalDTGralPaises() As DataTable Get @@ -2664,10 +2664,10 @@ Public Class SIGFacturacion : Implements IHttpHandler, IRequiresSessionState Set(value As DataTable) HttpContext.Current.Application("GlobalDTGralColectivas") = value End Set - End Property - + End Property + #End Region - + #Region "***********************************************************************DT PROSPECTOS*************************************************************************************" Property GlobalDTProspectosSupervisores(CveEmpresa As Integer) As DataTable Get @@ -2876,8 +2876,8 @@ Public Class SIGFacturacion : Implements IHttpHandler, IRequiresSessionState Set(value As DataTable) HttpContext.Current.Application("GlobalDTProspectosTipos") = value End Set - End Property - + End Property + #Region " DT PROSPECTOS SOLICITUDES" Property GlobalDTProspectosSolicitudes(CveEmpresa As Integer) As DataTable Get @@ -2944,15 +2944,15 @@ Public Class SIGFacturacion : Implements IHttpHandler, IRequiresSessionState Set(value As DataTable) HttpContext.Current.Application("GlobalDTProspectosSolicitudesApoyos") = value End Set - End Property - + End Property + #End Region #End Region - + #Region "**********************************************DT AMORTIZACIÓN CONTABLE PLAN DE DESARROLLO********************************************************************************" - + #Region "***********************************************************************DT AMORTIZACIÓN CONTABLE*********************************************************************************************" - + Property GlobalDTAC_RubrosIngreso() As DataTable Get GlobalDTAC_RubrosIngreso = DirectCast(HttpContext.Current.Application("GlobalDTAC_RubrosIngreso"), DataTable) @@ -3208,11 +3208,11 @@ Public Class SIGFacturacion : Implements IHttpHandler, IRequiresSessionState Set(value As DataTable) HttpContext.Current.Application("GlobalDTAC_MatrizEgresos") = value End Set - End Property - - + End Property + + #End Region - + Property GlobalDTAC_PD_EjeRector(CveEmpresa As Integer) As DataTable Get If CveEmpresa <> -1 Then @@ -3291,9 +3291,9 @@ Public Class SIGFacturacion : Implements IHttpHandler, IRequiresSessionState Set(value As DataTable) HttpContext.Current.Application("GlobalDTAC_PD_Metas") = value End Set - End Property + End Property #End Region - + #Region "***********************************************************************GLOBAL DT ORDENES DE COMPRA***********************************************************************" Property GlobalDTOCEstatus(CveEmpresa As Integer) As DataTable Get @@ -3308,75 +3308,75 @@ Public Class SIGFacturacion : Implements IHttpHandler, IRequiresSessionState Set(value As DataTable) HttpContext.Current.Application("GlobalDTOCEstatus") = value End Set - End Property - - Property GlobalDTOCEstatusUsuarios(CveEmpresa As Integer, Optional CveUsuario As Integer = -1, Optional Tipo As String = "") As DataTable - Get - - Dim AppNombre As String = String.Format("GlobalDTOCEstatusUsuarios-{0}", CveEmpresa) - 'sino existe, recarga los datos - If DirectCast(HttpContext.Current.Application(AppNombre), DataTable) Is Nothing Then - - Dim ObjOC As New ClsOC - If ObjOC.GetEstatusUsuarios(-1, -1, -1, -1, CveEmpresa) Then - HttpContext.Current.Application(AppNombre) = ObjOC.DtResultados - Else - HttpContext.Current.Application(AppNombre) = Nothing - End If - - ObjOC.Dispose() - - End If - - Dim filtro As New StringBuilder - filtro.AppendFormat("CveEmpresa = {0} ", CveEmpresa) - If CveUsuario > 0 Then - filtro.AppendFormat(" AND CveUsuario={0} ", CveUsuario) - End If - If Tipo <> "" Then - filtro.AppendFormat(" AND Tipo='{0}'", Tipo) - End If - Dim Dv As New DataView(DirectCast(HttpContext.Current.Application(AppNombre), DataTable), filtro.ToString, "", DataViewRowState.CurrentRows) - GlobalDTOCEstatusUsuarios = Dv.ToTable - Dv.Dispose() - - End Get - Set(value As DataTable) - Dim AppNombre As String = String.Format("GlobalDTOCEstatusUsuarios-{0}", CveEmpresa) - HttpContext.Current.Application(AppNombre) = value - End Set - End Property - - - - - - 'Property GlobalDTOCEstatusUsuarios(CveEmpresa As Integer, Optional CveUsuario As Integer = -1, Optional Tipo As String = "") As DataTable - ' Get - ' If CveEmpresa <> -1 Then - ' Dim filtro As New StringBuilder - ' filtro.AppendFormat("CveEmpresa = {0} ", CveEmpresa) - ' If CveUsuario > 0 Then - ' filtro.AppendFormat(" AND CveUsuario={0} ", CveUsuario) - ' End If - ' If Tipo <> "" Then - ' filtro.AppendFormat(" AND Tipo='{0}'", Tipo) - ' End If - ' Dim Dv As New DataView(DirectCast(HttpContext.Current.Application("GlobalDTOCEstatusUsuarios"), DataTable), filtro.ToString, "", DataViewRowState.CurrentRows) - ' GlobalDTOCEstatusUsuarios = Dv.ToTable - ' Dv.Dispose() - ' Else - ' GlobalDTOCEstatusUsuarios = DirectCast(HttpContext.Current.Application("GlobalDTOCEstatusUsuarios"), DataTable) - ' End If - ' End Get - ' Set(value As DataTable) - ' HttpContext.Current.Application("GlobalDTOCEstatusUsuarios") = value - ' End Set - 'End Property - - + End Property + + Property GlobalDTOCEstatusUsuarios(CveEmpresa As Integer, Optional CveUsuario As Integer = -1, Optional Tipo As String = "") As DataTable + Get + + Dim AppNombre As String = String.Format("GlobalDTOCEstatusUsuarios-{0}", CveEmpresa) + 'sino existe, recarga los datos + If DirectCast(HttpContext.Current.Application(AppNombre), DataTable) Is Nothing Then + + Dim ObjOC As New ClsOC + If ObjOC.GetEstatusUsuarios(-1, -1, -1, -1, CveEmpresa) Then + HttpContext.Current.Application(AppNombre) = ObjOC.DtResultados + Else + HttpContext.Current.Application(AppNombre) = Nothing + End If + + ObjOC.Dispose() + + End If + + Dim filtro As New StringBuilder + filtro.AppendFormat("CveEmpresa = {0} ", CveEmpresa) + If CveUsuario > 0 Then + filtro.AppendFormat(" AND CveUsuario={0} ", CveUsuario) + End If + If Tipo <> "" Then + filtro.AppendFormat(" AND Tipo='{0}'", Tipo) + End If + Dim Dv As New DataView(DirectCast(HttpContext.Current.Application(AppNombre), DataTable), filtro.ToString, "", DataViewRowState.CurrentRows) + GlobalDTOCEstatusUsuarios = Dv.ToTable + Dv.Dispose() + + End Get + Set(value As DataTable) + Dim AppNombre As String = String.Format("GlobalDTOCEstatusUsuarios-{0}", CveEmpresa) + HttpContext.Current.Application(AppNombre) = value + End Set + End Property + + + + + + 'Property GlobalDTOCEstatusUsuarios(CveEmpresa As Integer, Optional CveUsuario As Integer = -1, Optional Tipo As String = "") As DataTable + ' Get + ' If CveEmpresa <> -1 Then + ' Dim filtro As New StringBuilder + ' filtro.AppendFormat("CveEmpresa = {0} ", CveEmpresa) + ' If CveUsuario > 0 Then + ' filtro.AppendFormat(" AND CveUsuario={0} ", CveUsuario) + ' End If + ' If Tipo <> "" Then + ' filtro.AppendFormat(" AND Tipo='{0}'", Tipo) + ' End If + ' Dim Dv As New DataView(DirectCast(HttpContext.Current.Application("GlobalDTOCEstatusUsuarios"), DataTable), filtro.ToString, "", DataViewRowState.CurrentRows) + ' GlobalDTOCEstatusUsuarios = Dv.ToTable + ' Dv.Dispose() + ' Else + ' GlobalDTOCEstatusUsuarios = DirectCast(HttpContext.Current.Application("GlobalDTOCEstatusUsuarios"), DataTable) + ' End If + ' End Get + ' Set(value As DataTable) + ' HttpContext.Current.Application("GlobalDTOCEstatusUsuarios") = value + ' End Set + 'End Property + + #End Region - + #Region "F I N A N Z A S " Property GlobalDTFinan_RazonesFinancieras() As DataTable Get @@ -3385,10 +3385,10 @@ Public Class SIGFacturacion : Implements IHttpHandler, IRequiresSessionState Set(value As DataTable) HttpContext.Current.Application("GlobalDTFinan_RazonesFinancieras") = value End Set - End Property + End Property #End Region - - + + #Region "***********************************************************************GLOBAL DT CONTABILIDAD****************************************************************************" Property GlobalDTContaPlantillasPolizas(CveEmpresa As Integer, Optional TipoPlantilla As Integer = -1) As DataTable Get @@ -3442,9 +3442,9 @@ Public Class SIGFacturacion : Implements IHttpHandler, IRequiresSessionState Set(value As DataTable) HttpContext.Current.Application("GlobalDTContaConceptosContables") = value End Set - End Property + End Property #End Region - + #Region "**********************************************************************GLOBAL DT RH (RECURSOS HUMANOS)********************************************************************" Property GlobalDTAsistenciaDetalle() As DataTable Get @@ -3596,13 +3596,13 @@ Public Class SIGFacturacion : Implements IHttpHandler, IRequiresSessionState Set(value As DataTable) HttpContext.Current.Application("GlobalDTTipoBuzon") = value End Set - End Property + End Property #End Region - + #Region "*********** D T - C O M B U S T I B L E S ***********" - - - + + + Property GlobalDTCombustibles(CveEmpresa As Integer) As DataTable Get If CveEmpresa <> -1 Then @@ -3641,11 +3641,11 @@ Public Class SIGFacturacion : Implements IHttpHandler, IRequiresSessionState Set(ByVal value As DataTable) HttpContext.Current.Application("GlobalDTCombustiblesTipos") = value End Set - End Property + End Property #End Region - + #Region "*********** D T - M A N T E N I M I E N T O S ***********" - + Property GlobalDTMantenimientosTipos() As DataTable Get GlobalDTMantenimientosTipos = DirectCast(HttpContext.Current.Application("GlobalDTMantenimientosTipos"), DataTable) @@ -3684,13 +3684,13 @@ Public Class SIGFacturacion : Implements IHttpHandler, IRequiresSessionState HttpContext.Current.Application("GlobalDTMantenimientosTipos") = value End Set - End Property - + End Property + #End Region - - + + #Region "*********** D T - T A L L E R E S ***********" - + Property GlobalDTTalleresTipos() As DataTable Get GlobalDTTalleresTipos = DirectCast(HttpContext.Current.Application("GlobalDTTalleresTipos"), DataTable) @@ -3707,12 +3707,12 @@ Public Class SIGFacturacion : Implements IHttpHandler, IRequiresSessionState Set(value As DataTable) HttpContext.Current.Application("GlobalDTTalleres") = value End Set - End Property - + End Property + #End Region - + #Region "*********** D T - D I S T R I B U I D O R E S ***********" - + Property GlobalDTDistribuidoresTipos() As DataTable Get GlobalDTDistribuidoresTipos = DirectCast(HttpContext.Current.Application("GlobalDTDistribuidoresTipos"), DataTable) @@ -3729,11 +3729,11 @@ Public Class SIGFacturacion : Implements IHttpHandler, IRequiresSessionState Set(value As DataTable) HttpContext.Current.Application("GlobalDTDistribuidores") = value End Set - End Property - + End Property + #End Region - - + + Property GlobalDTOIRevision(CveEmpresa As Integer) As DataTable Get If CveEmpresa <> -1 Then @@ -3824,8 +3824,8 @@ Public Class SIGFacturacion : Implements IHttpHandler, IRequiresSessionState Set(value As DataTable) HttpContext.Current.Application("GlobalDTPaqueterias") = value End Set - End Property - + End Property + #End Region - + End Class \ No newline at end of file diff --git a/Ashx/SIGFacturacionCiclica.ashx b/Ashx/SIGFacturacionCiclica.ashx index 650e27487..0ffcd6887 100644 --- a/Ashx/SIGFacturacionCiclica.ashx +++ b/Ashx/SIGFacturacionCiclica.ashx @@ -2,26 +2,26 @@ 'Option Explicit On 'Option Strict On -Imports System -Imports System.Web -Imports System.Data -Imports Newtonsoft.Json.Linq -Imports Extensiones -Imports System.IO -Imports Microsoft.AspNet.SignalR - -Public Class SIGFacturacionCiclica : Implements IHttpHandler, IRequiresSessionState - Public Sub ProcessRequest(ByVal context As HttpContext) Implements IHttpHandler.ProcessRequest +Imports System +Imports System.Web +Imports System.Data +Imports Newtonsoft.Json.Linq +Imports Extensiones +Imports System.IO +Imports Microsoft.AspNet.SignalR + +Public Class SIGFacturacionCiclica : Implements IHttpHandler, IRequiresSessionState + Public Sub ProcessRequest(ByVal context As HttpContext) Implements IHttpHandler.ProcessRequest context.Response.ContentType = "text/plain" - Dim retorno = False - Try - If context.Request("Metodo") IsNot Nothing Then - Select Case context.Request("Metodo") + Dim retorno = False + Try + If context.Request("Metodo") IsNot Nothing Then + Select Case context.Request("Metodo") Case "EjecutaServicio" ModExtensiones.GuardaLogAD("Servicio Ejecutado...........", "LogFacturacionCiclica") - retorno = IniciaFacturacionMasiva() - End Select - + retorno = IniciaFacturacionMasiva() + End Select + End If Catch ex As Exception @@ -32,65 +32,65 @@ Public Class SIGFacturacionCiclica : Implements IHttpHandler, IRequiresSessionSt context.Response.Write("True") Else context.Response.Write("False") - End If - End Sub - - Public ReadOnly Property IsReusable() As Boolean Implements IHttpHandler.IsReusable - Get - Return False - End Get - End Property - - Private Function Parametros(Cadena As String) As Hashtable - Dim P1() As String = Cadena.Split("&"c) - Dim Tmp As String - Dim P2() As String - - Dim URLParametros As New Hashtable - - For Each Tmp In P1 - P2 = Tmp.Replace("%26%", "&").Split("="c) - URLParametros.Add(P2(0).ToString.ToUpper, P2(1)) - Next - Return URLParametros - End Function - -#Region "V A L I D A - D A T O S" - Private Function ValidaUsuarioSistema(CveEmpresa As Integer) As Usuario - Dim UsuarioActual As Usuario = Nothing - Dim ObjUsuarios As New ClsSisUsuarios - If ObjUsuarios.GetUsuarios(100) Then - If ObjUsuarios.DtResultados.Rows.Count > 0 Then - Dim Usuario = ObjUsuarios.DtResultados.Rows(0)("Usuario").ToString() - Dim Contrasenia = ObjUsuarios.DtResultados.Rows(0)("Contraseña").ToString() - UsuarioActual = ObjUsuarios.ValidaUsuario(Usuario, Contrasenia, IMEI, CveEmpresa) - UsuarioActual.CveEmpresa = CveEmpresa - CreaObjetoEmpresa(UsuarioActual) - End If - End If - ObjUsuarios.Dispose() - Return UsuarioActual - End Function - Private Sub CreaObjetoEmpresa(ByRef UsuarioActual As Usuario) - - Dim ObjEmpresa As New ClsSisEmpresas() - If ObjEmpresa.GetEmpresas(UsuarioActual.CveEmpresa, "-1", "-1", "-1", "-1") Then - If ObjEmpresa.GetEmpresasFuncionalidades(UsuarioActual.CveEmpresa) Then - Dim dttmp As Data.DataTable = ObjEmpresa.DtResultados - - Dim EmpresasFuncionalidades As New HybridDictionary - For Each Row As Data.DataRow In dttmp.Rows - EmpresasFuncionalidades.Add(Convert.ToInt32(Row("CveFuncionalidad")), Row("Valor").ToString) - Next - ObjEmpresa.Empresa.SetFuncionalidades(EmpresasFuncionalidades) - End If - - UsuarioActual.Empresa = ObjEmpresa.Empresa - End If - ObjEmpresa.Dispose() + End If End Sub -#End Region + Public ReadOnly Property IsReusable() As Boolean Implements IHttpHandler.IsReusable + Get + Return False + End Get + End Property + + Private Function Parametros(Cadena As String) As Hashtable + Dim P1() As String = Cadena.Split("&"c) + Dim Tmp As String + Dim P2() As String + + Dim URLParametros As New Hashtable + + For Each Tmp In P1 + P2 = Tmp.Replace("%26%", "&").Split("="c) + URLParametros.Add(P2(0).ToString.ToUpper, P2(1)) + Next + Return URLParametros + End Function + +#Region "V A L I D A - D A T O S" + Private Function ValidaUsuarioSistema(CveEmpresa As Integer) As Usuario + Dim UsuarioActual As Usuario = Nothing + Dim ObjUsuarios As New ClsSisUsuarios + If ObjUsuarios.GetUsuarios(100) Then + If ObjUsuarios.DtResultados.Rows.Count > 0 Then + Dim Usuario = ObjUsuarios.DtResultados.Rows(0)("Usuario").ToString() + Dim Contrasenia = ObjUsuarios.DtResultados.Rows(0)("Contraseña").ToString() + UsuarioActual = ObjUsuarios.ValidaUsuario(Usuario, Contrasenia, IMEI, CveEmpresa) + UsuarioActual.CveEmpresa = CveEmpresa + CreaObjetoEmpresa(UsuarioActual) + End If + End If + ObjUsuarios.Dispose() + Return UsuarioActual + End Function + Private Sub CreaObjetoEmpresa(ByRef UsuarioActual As Usuario) + + Dim ObjEmpresa As New ClsSisEmpresas() + If ObjEmpresa.GetEmpresas(UsuarioActual.CveEmpresa, "-1", "-1", "-1", "-1") Then + If ObjEmpresa.GetEmpresasFuncionalidades(UsuarioActual.CveEmpresa) Then + Dim dttmp As Data.DataTable = ObjEmpresa.DtResultados + + Dim EmpresasFuncionalidades As New HybridDictionary + For Each Row As Data.DataRow In dttmp.Rows + EmpresasFuncionalidades.Add(Convert.ToInt32(Row("CveFuncionalidad")), Row("Valor").ToString) + Next + ObjEmpresa.Empresa.SetFuncionalidades(EmpresasFuncionalidades) + End If + + UsuarioActual.Empresa = ObjEmpresa.Empresa + End If + ObjEmpresa.Dispose() + End Sub + +#End Region Private Function IniciaFacturacionMasiva() As Boolean Dim Retorno As Boolean = True @@ -101,8 +101,8 @@ Public Class SIGFacturacionCiclica : Implements IHttpHandler, IRequiresSessionSt If ObjContratos.CicloComercialGet(-1, -1, -1, -1, FechaRef, FechaRef, -1) Then DTCicloComercial = ObjContratos.DtResultados.FiltraParametros("FueFacturado = 0 AND FacturacionCiclicaAutomatico = 1") End If - End Using - + End Using + If DTCicloComercial IsNot Nothing Then For Each RowEmpresa As DataRow In DTCicloComercial.FiltraParametros("", DistinctColumns:={"CveEmpresa"}).Rows Dim CveEmpresa As Integer = RowEmpresa("CveEmpresa").ToString().ToEntero() @@ -113,12 +113,12 @@ Public Class SIGFacturacionCiclica : Implements IHttpHandler, IRequiresSessionSt Next End If - Return Retorno + Return Retorno End Function Private Function EjecutarFacturacionMasiva(UsuarioActual As Usuario, DTCicloComercial As DataTable) As Boolean - Dim Retorno As Boolean = False - + Dim Retorno As Boolean = False + If DTCicloComercial IsNot Nothing Then For Each Row As DataRow In DTCicloComercial.Rows @@ -152,36 +152,36 @@ Public Class SIGFacturacionCiclica : Implements IHttpHandler, IRequiresSessionSt End If - Return Retorno + Return Retorno End Function - Private Function EmitirImprimir(UsuarioActual As Usuario, RowCiclo As DataRow) As Modelos.Factura.MMensajeFactura + Private Function EmitirImprimir(UsuarioActual As Usuario, RowCiclo As DataRow) As Modelos.Factura.MMensajeFactura Dim Resp As New Modelos.Factura.MMensajeFactura - Dim ObjFactura = CreaObjetosVenta(UsuarioActual, RowCiclo) - + Dim ObjFactura = CreaObjetosVenta(UsuarioActual, RowCiclo) + If ObjFactura Is Nothing Then - Resp.Mensajes.Add("Ocurrió un error al procesar los datos de la Venta ") - ObjFactura = Nothing - Return Resp - End If - - If ObjFactura.CveCliente > 0 Then + Resp.Mensajes.Add("Ocurrió un error al procesar los datos de la Venta ") + ObjFactura = Nothing + Return Resp + End If + + If ObjFactura.CveCliente > 0 Then If ObjFactura.DtDetalle.Rows.Count > 0 Then - Resp = ObjFactura.EmitirFactura() - Else - Resp.Mensajes.Add("No se pudo completar facturación por que no se encontraron partidas ") + Resp = ObjFactura.EmitirFactura() + Else + Resp.Mensajes.Add("No se pudo completar facturación por que no se encontraron partidas ") End If Else - Resp.Mensajes.Add("No se pudo completar facturación por que no se encontraro el cliente ") - End If - - Return Resp + Resp.Mensajes.Add("No se pudo completar facturación por que no se encontraro el cliente ") + End If + + Return Resp End Function #Region "P R E P A R A - V E N T A" Private Function CreaDTVentas() As DataTable - Dim TmpDT = New DataTable + Dim TmpDT = New DataTable TmpDT.Columns.Add("CveVenta", GetType(Integer)) TmpDT.Columns.Add("Consec", GetType(Integer)) TmpDT.Columns.Add("Cantidad", GetType(Decimal)) @@ -268,8 +268,8 @@ Public Class SIGFacturacionCiclica : Implements IHttpHandler, IRequiresSessionSt TmpDT.Columns.Add("CveTamaño", GetType(Integer)) TmpDT.Columns.Add("EsCargo", GetType(Boolean)) - Return TmpDT - End Function + Return TmpDT + End Function Private Function CreaObjetosVenta(UsuarioActual As Usuario, DR As DataRow) As Modelos.Factura Dim ObjFactura = New Modelos.Factura(UsuarioActual) Try @@ -453,134 +453,134 @@ Public Class SIGFacturacionCiclica : Implements IHttpHandler, IRequiresSessionSt Catch ex As Exception ObjFactura = Nothing OnError("Ocurrió un error al generar la factura", ex) - End Try + End Try - Return ObjFactura - - End Function - - Private Function PreParaTimbre(Obj As Modelos.Factura, UsuarioActual As Usuario) As CFDITimbre - Dim Timbre As New CFDITimbre - Timbre.Comprobante.TipoComprobante = If(Obj.TipoDocto.Contiene("Ing", "Ant"), "I", If(Obj.TipoDocto.Contiene("Egs", "Dev"), "E", "")) - Timbre.Comprobante.Folio = Obj.Folio.ToString - Timbre.Comprobante.Serie = Obj.Serie - Timbre.Comprobante.Fecha = Obj.FechaCP - Timbre.Comprobante.FormadePago = Obj.FormaPagoSAT33 - Timbre.Comprobante.CondicionesdePago = Obj.FormaPago33 - Timbre.Comprobante.MetodoPago = Obj.ClaveMetodoPagoSAT - Timbre.Comprobante.Subtotal = Obj.SubTotal - Timbre.Comprobante.Descuentos = Obj.Descuento - Timbre.Comprobante.Moneda = Obj.MonedaSAT - Timbre.Comprobante.TipoCambio = If(Obj.CveMoneda = 1, "1", Obj.TipoCambio.ToString) - Timbre.Comprobante.Total = Obj.Total - - Timbre.Comprobante.LugarExpedicion = Obj.SubProyecto.CP - Timbre.Comprobante.Confirmacion = "" - - Timbre.Receptor.RFC = Obj.Cliente.RFC - Timbre.Receptor.Nombre = Obj.Cliente.Nombre - Timbre.Receptor.ResidenciaFiscal = "" - Timbre.Receptor.NumeroRegistroTributario = "" - Timbre.Receptor.UsoCFDI = Obj.ClaveUsoCFDI - - - If Obj.CveTipoRelacion > 0 Then - Select Case Obj.CveTipoRelacion - Case 1 - Timbre.CFDIRelacionados.TipoRelacion = "01" - Timbre.CFDIRelacionados.TipoRelacionTexto = "01-Nota de Crédito aplicada a Ingreso" - Case 2 - Timbre.CFDIRelacionados.TipoRelacion = "02" - Timbre.CFDIRelacionados.TipoRelacionTexto = "02-Nota de débito de los documentos relacionados" - Case 3 - Timbre.CFDIRelacionados.TipoRelacion = "03" - Timbre.CFDIRelacionados.TipoRelacionTexto = "03-Devolución aplicada a Ingreso" - Case 4 - Timbre.CFDIRelacionados.TipoRelacion = "04" - Timbre.CFDIRelacionados.TipoRelacionTexto = "04-Refacturación de Ingreso" - Case 7 - Timbre.CFDIRelacionados.TipoRelacion = "07" - Timbre.CFDIRelacionados.TipoRelacionTexto = "07-CFDI por aplicación de anticipo" - Case 8 - Timbre.CFDIRelacionados.TipoRelacion = "08" - Timbre.CFDIRelacionados.TipoRelacionTexto = "08-Factura generada por pagos en parcialidades " - Case 9 - Timbre.CFDIRelacionados.TipoRelacion = "09" - Timbre.CFDIRelacionados.TipoRelacionTexto = "09-Factura generada por pagos diferidos" - - End Select - - 'If DtVentasNC IsNot Nothing AndAlso DtVentasNC.Rows.Count > 0 Then - ' For Each Dr As DataRow In DtVentasNC.Rows - ' Timbre.CFDIRelacionados.UUID.Add(Dr("FolioFiscal").ToString) - ' Next - 'Else - ' Timbre.CFDIRelacionados.UUID.Add(HdnFolioFiscalNC.Value) - 'End If - - End If - - - Dim totSubTotal As Decimal = Obj.SubTotal - Dim totIVA As Decimal = Obj.IVA - Dim totRetIVA As Decimal = Obj.RetIVA - Dim totRetISR As Decimal = Obj.RetISR - Dim i As Integer = 1 - - 'detalles - Dim tPS As String = "" - - For Each drr As DataRow In Obj.DtDetalle.Rows - If drr("PS").ToString.Length = 1 Then - tPS = drr("Obs").ToString - Else - If drr("PS").ToString.Length = 0 Then - tPS = "" - Else - tPS = String.Format("{0} {1}", drr("PS"), drr("Obs")) - End If - End If - 'condicionante, especial - If UsuarioActual.CveEmpresa = 15 Then drr("UM") = "" ' les comentan que no debe de ir la etiqueta de "unidad" en el producto - - Dim concepto As New CFDIConceptos With {.Cantidad = drr("Cantidad").ToString.ToDecimal, - .Descripcion = tPS, - .ValorUnitario = drr("PU").ToString.ToDecimal, - .Importe = drr("TotalImporte").ToString.ToDecimal, - .Descuento = drr("Descuento").ToString.ToDecimal, - .Unidad = drr("UM").ToString, - .ClaveUnidad = drr("SATClaveUM").ToString, - .ClaveProdServ = drr("SATClaveProdServ").ToString, - .Noidentificacion = drr("Noidentificacion").ToString, - .CuentaPredial = drr("CuentaPredial").ToString} - 'verifica suma subtotales - If i = Obj.DtDetalle.Rows.Count AndAlso totSubTotal <> concepto.Importe Then 'proceso de ajusta de decimales - concepto.Importe = totSubTotal - End If - totSubTotal = totSubTotal - concepto.Importe - - 'siempre estaremos agregando el iva, auqnue sea en importe cero o tasa cero, para que se emita la factura - ' If drr("ImporteIVA").ToString.ToDouble > 0 Then - concepto.Impuestos.Add(New CFDIConceptosImpuestos With {.TrasladooRetencion = "T", .Base = concepto.Importe - concepto.Descuento, .TasaOCuota = drr("PorcentajeIVA").ToString.ToDecimal, .Impuesto = "002", .Importe = drr("ImporteIVA").ToString.ToDecimal}) - ' End If - - If drr("ImporteIEPS").ToString.ToDouble > 0 Then - concepto.Impuestos.Add(New CFDIConceptosImpuestos With {.TrasladooRetencion = "T", .Base = concepto.Importe - concepto.Descuento, .TasaOCuota = drr("PorcentajeIEPS").ToString.ToDecimal, .Impuesto = "003", .Importe = drr("ImporteIEPS").ToString.ToDecimal}) - End If - - If drr("ImporteRetIVA").ToString.ToDouble > 0 Then 'si hay retenciones - concepto.Impuestos.Add(New CFDIConceptosImpuestos With {.TrasladooRetencion = "R", .Base = concepto.Importe - concepto.Descuento, .TasaOCuota = drr("PorcentajeRetIVA").ToString.ToDecimal, .Impuesto = "002", .Importe = drr("ImporteRetIVA").ToString.ToDecimal}) - End If - - If drr("ImporteRetISR").ToString.ToDouble > 0 Then 'retención de ISR - concepto.Impuestos.Add(New CFDIConceptosImpuestos With {.TrasladooRetencion = "R", .Base = concepto.Importe - concepto.Descuento, .TasaOCuota = drr("PorcentajeRetISR").ToString.ToDecimal, .Impuesto = "001", .Importe = drr("ImporteRetISR").ToString.ToDecimal}) - End If - - Timbre.Conceptos.Add(concepto) - i += 1 - Next - Return Timbre + Return ObjFactura + + End Function + + Private Function PreParaTimbre(Obj As Modelos.Factura, UsuarioActual As Usuario) As CFDITimbre + Dim Timbre As New CFDITimbre + Timbre.Comprobante.TipoComprobante = If(Obj.TipoDocto.Contiene("Ing", "Ant"), "I", If(Obj.TipoDocto.Contiene("Egs", "Dev"), "E", "")) + Timbre.Comprobante.Folio = Obj.Folio.ToString + Timbre.Comprobante.Serie = Obj.Serie + Timbre.Comprobante.Fecha = Obj.FechaCP + Timbre.Comprobante.FormadePago = Obj.FormaPagoSAT33 + Timbre.Comprobante.CondicionesdePago = Obj.FormaPago33 + Timbre.Comprobante.MetodoPago = Obj.ClaveMetodoPagoSAT + Timbre.Comprobante.Subtotal = Obj.SubTotal + Timbre.Comprobante.Descuentos = Obj.Descuento + Timbre.Comprobante.Moneda = Obj.MonedaSAT + Timbre.Comprobante.TipoCambio = If(Obj.CveMoneda = 1, "1", Obj.TipoCambio.ToString) + Timbre.Comprobante.Total = Obj.Total + + Timbre.Comprobante.LugarExpedicion = Obj.SubProyecto.CP + Timbre.Comprobante.Confirmacion = "" + + Timbre.Receptor.RFC = Obj.Cliente.RFC + Timbre.Receptor.Nombre = Obj.Cliente.Nombre + Timbre.Receptor.ResidenciaFiscal = "" + Timbre.Receptor.NumeroRegistroTributario = "" + Timbre.Receptor.UsoCFDI = Obj.ClaveUsoCFDI + + + If Obj.CveTipoRelacion > 0 Then + Select Case Obj.CveTipoRelacion + Case 1 + Timbre.CFDIRelacionados.TipoRelacion = "01" + Timbre.CFDIRelacionados.TipoRelacionTexto = "01-Nota de Crédito aplicada a Ingreso" + Case 2 + Timbre.CFDIRelacionados.TipoRelacion = "02" + Timbre.CFDIRelacionados.TipoRelacionTexto = "02-Nota de débito de los documentos relacionados" + Case 3 + Timbre.CFDIRelacionados.TipoRelacion = "03" + Timbre.CFDIRelacionados.TipoRelacionTexto = "03-Devolución aplicada a Ingreso" + Case 4 + Timbre.CFDIRelacionados.TipoRelacion = "04" + Timbre.CFDIRelacionados.TipoRelacionTexto = "04-Refacturación de Ingreso" + Case 7 + Timbre.CFDIRelacionados.TipoRelacion = "07" + Timbre.CFDIRelacionados.TipoRelacionTexto = "07-CFDI por aplicación de anticipo" + Case 8 + Timbre.CFDIRelacionados.TipoRelacion = "08" + Timbre.CFDIRelacionados.TipoRelacionTexto = "08-Factura generada por pagos en parcialidades " + Case 9 + Timbre.CFDIRelacionados.TipoRelacion = "09" + Timbre.CFDIRelacionados.TipoRelacionTexto = "09-Factura generada por pagos diferidos" + + End Select + + 'If DtVentasNC IsNot Nothing AndAlso DtVentasNC.Rows.Count > 0 Then + ' For Each Dr As DataRow In DtVentasNC.Rows + ' Timbre.CFDIRelacionados.UUID.Add(Dr("FolioFiscal").ToString) + ' Next + 'Else + ' Timbre.CFDIRelacionados.UUID.Add(HdnFolioFiscalNC.Value) + 'End If + + End If + + + Dim totSubTotal As Decimal = Obj.SubTotal + Dim totIVA As Decimal = Obj.IVA + Dim totRetIVA As Decimal = Obj.RetIVA + Dim totRetISR As Decimal = Obj.RetISR + Dim i As Integer = 1 + + 'detalles + Dim tPS As String = "" + + For Each drr As DataRow In Obj.DtDetalle.Rows + If drr("PS").ToString.Length = 1 Then + tPS = drr("Obs").ToString + Else + If drr("PS").ToString.Length = 0 Then + tPS = "" + Else + tPS = String.Format("{0} {1}", drr("PS"), drr("Obs")) + End If + End If + 'condicionante, especial + If UsuarioActual.CveEmpresa = 15 Then drr("UM") = "" ' les comentan que no debe de ir la etiqueta de "unidad" en el producto + + Dim concepto As New CFDIConceptos With {.Cantidad = drr("Cantidad").ToString.ToDecimal, + .Descripcion = tPS, + .ValorUnitario = drr("PU").ToString.ToDecimal, + .Importe = drr("TotalImporte").ToString.ToDecimal, + .Descuento = drr("Descuento").ToString.ToDecimal, + .Unidad = drr("UM").ToString, + .ClaveUnidad = drr("SATClaveUM").ToString, + .ClaveProdServ = drr("SATClaveProdServ").ToString, + .Noidentificacion = drr("Noidentificacion").ToString, + .CuentaPredial = drr("CuentaPredial").ToString} + 'verifica suma subtotales + If i = Obj.DtDetalle.Rows.Count AndAlso totSubTotal <> concepto.Importe Then 'proceso de ajusta de decimales + concepto.Importe = totSubTotal + End If + totSubTotal = totSubTotal - concepto.Importe + + 'siempre estaremos agregando el iva, auqnue sea en importe cero o tasa cero, para que se emita la factura + ' If drr("ImporteIVA").ToString.ToDouble > 0 Then + concepto.Impuestos.Add(New CFDIConceptosImpuestos With {.TrasladooRetencion = "T", .Base = concepto.Importe - concepto.Descuento, .TasaOCuota = drr("PorcentajeIVA").ToString.ToDecimal, .Impuesto = "002", .Importe = drr("ImporteIVA").ToString.ToDecimal}) + ' End If + + If drr("ImporteIEPS").ToString.ToDouble > 0 Then + concepto.Impuestos.Add(New CFDIConceptosImpuestos With {.TrasladooRetencion = "T", .Base = concepto.Importe - concepto.Descuento, .TasaOCuota = drr("PorcentajeIEPS").ToString.ToDecimal, .Impuesto = "003", .Importe = drr("ImporteIEPS").ToString.ToDecimal}) + End If + + If drr("ImporteRetIVA").ToString.ToDouble > 0 Then 'si hay retenciones + concepto.Impuestos.Add(New CFDIConceptosImpuestos With {.TrasladooRetencion = "R", .Base = concepto.Importe - concepto.Descuento, .TasaOCuota = drr("PorcentajeRetIVA").ToString.ToDecimal, .Impuesto = "002", .Importe = drr("ImporteRetIVA").ToString.ToDecimal}) + End If + + If drr("ImporteRetISR").ToString.ToDouble > 0 Then 'retención de ISR + concepto.Impuestos.Add(New CFDIConceptosImpuestos With {.TrasladooRetencion = "R", .Base = concepto.Importe - concepto.Descuento, .TasaOCuota = drr("PorcentajeRetISR").ToString.ToDecimal, .Impuesto = "001", .Importe = drr("ImporteRetISR").ToString.ToDecimal}) + End If + + Timbre.Conceptos.Add(concepto) + i += 1 + Next + Return Timbre End Function #End Region diff --git a/Compras/PopUpVerFactura.aspx.vb b/Compras/PopUpVerFactura.aspx.vb index caa121514..6f85e1f3f 100644 --- a/Compras/PopUpVerFactura.aspx.vb +++ b/Compras/PopUpVerFactura.aspx.vb @@ -3580,7 +3580,13 @@ Partial Class PopUpVerFactura If (UsuarioActual.CveEmpresa = 72) Then params.Add(New ReportParameter("DomicilioFiscal", DomicilioFiscalCompu)) End If - ImprimirPDF("Empresas/Grales/Formatos/EntradaSalida.rdlc", DtMovimientos, params, String.Format("Entrada de Almacen - {0}", Folio.ToString), RDSName:="DsInventarios") + + If UsuarioActual.CveEmpresa.Contiene(172, 173) Then + ImprimirPDFStimulsoft("Empresas/Grales/Formatos/EntradaSalida.mrt", DtMovimientos, params, String.Format("Entrada de Almacen - {0}", Folio.ToString)) + Else + ImprimirPDF("Empresas/Grales/Formatos/EntradaSalida.rdlc", DtMovimientos, params, String.Format("Entrada de Almacen - {0}", Folio.ToString), RDSName:="DsInventarios") + End If + End If Case 3, 16, 37, 40 ' S A L I D A S @@ -3843,7 +3849,11 @@ Partial Class PopUpVerFactura If A.Exists Then ImprimirPDF(UsuarioActual.Empresa.Ruta & "Formatos/EntradaSalida.rdlc", DtMovimientos, params, String.Format("Salida de Almacen - {0}", Folio.ToString), RDSName:="DsInventarios") Else - ImprimirPDF("Empresas/Grales/Formatos/EntradaSalida.rdlc", DtMovimientos, params, String.Format("Salida de Almacen - {0}", Folio.ToString), RDSName:="DsInventarios") + If UsuarioActual.CveEmpresa.Contiene(172, 173) Then + ImprimirPDFStimulsoft("Empresas/Grales/Formatos/EntradaSalida.mrt", DtMovimientos, params, String.Format("Salida de Almacen - {0}", Folio.ToString)) + Else + ImprimirPDF("Empresas/Grales/Formatos/EntradaSalida.rdlc", DtMovimientos, params, String.Format("Salida de Almacen - {0}", Folio.ToString), RDSName:="DsInventarios") + End If End If End If diff --git a/Contabilidad2/RepAnexoCatalogo.aspx b/Contabilidad2/RepAnexoCatalogo.aspx index c58828168..791b10d69 100644 --- a/Contabilidad2/RepAnexoCatalogo.aspx +++ b/Contabilidad2/RepAnexoCatalogo.aspx @@ -1,220 +1,213 @@ -<%@ Page Title="" Language="VB" MasterPageFile="~/Site.master" AutoEventWireup="false" CodeFile="RepAnexoCatalogo.aspx.vb" Inherits="AC2_RepAnexoCatalogo" EnableEventValidation="false" %> - - - - - - - - - - - - - -
  • - Excel -
  • -
  • - PDF -
  • - -
    - - - - -
    -
    -
    - - "><%--class="expand"--%> - -
    -
    - <%--
    --%> -
      -
    • F. I.
    • -
    • - -
      - - - - - - - - - - -
      - -
    • -
    • F. F.
    • -
    • -
      - - - - - - - - - - - -
      -
    • - -
    • Cuenta: -
    • -
    • - - - - - - - - -
    • - - -
    -
    -
    -
    > - -
      -
    • - Tipo Movto: -
    • -
    • - - - - - - - -
    • -
    • - SubProyecto: -
    • -
    • - - - -
    • -
    • Tipo: -
    • - -
    • - - - - - -
    • - -
    • - - -
    • - -
    - -
    -
    - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Saldos Iniciales
    DeudorAcreedor
    -
    - - - - - -
    - - - - - - - - - - - - - - - - - - - - - - -
    Saldos Actuales
    DeudorAcreedor
    -
    - - - <%----%> - - - -
    -
    - -
    - -
    -
    - - - - - +<%@ Page Title="" Language="VB" MasterPageFile="~/Site.master" AutoEventWireup="false" CodeFile="RepAnexoCatalogo.aspx.vb" Inherits="AC2_RepAnexoCatalogo" EnableEventValidation="false" %> + + + + + + + + + + + + + +
  • + Excel +
  • +
  • + PDF +
  • + +
    + + + + +
    +
    +
    + + "><%--class="expand"--%> + +
    +
    + <%--
    --%> +
    +
    + Cuenta +
    +
    + + + + + + +
    +
    + Tipo Movto +
    +
    + + + + + + + +
    +
    + Fecha Inicio: +
    +
    +
    + + + + +
    + + + + + + +
    +
    + Fecha Fin: +
    +
    +
    + + + + +
    + + + + + + +
    +
    +
    +
    +
    > +
    +
    + Tipo +
    +
    + + + + + +
    +
    + SubProyecto +
    +
    + + + +
    +
    + + +
    +
    +
    +
    + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Saldos Iniciales
    DeudorAcreedor
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + + + + + +
    Saldos Actuales
    DeudorAcreedor
    +
    + + + <%----%> + + + +
    +
    + +
    + +
    +
    + + + + + - + + diff --git a/Contabilidad2/RepAnexoCatalogo.aspx.vb b/Contabilidad2/RepAnexoCatalogo.aspx.vb index db401a85a..02a85d054 100644 --- a/Contabilidad2/RepAnexoCatalogo.aspx.vb +++ b/Contabilidad2/RepAnexoCatalogo.aspx.vb @@ -138,8 +138,8 @@ Partial Class AC2_RepAnexoCatalogo End If - TxtFechaDel.Text = FechaInicio.ToShortDateString - TxtFechaAl.Text = FechaFin.ToShortDateString + txtFechaI.Text = FechaInicio.ToShortDateString + txtFechaF.Text = FechaFin.ToShortDateString If Not ErrorParametros Then CargaDatos() @@ -308,8 +308,8 @@ Partial Class AC2_RepAnexoCatalogo If DdlTipoCuentas.SelectedValue.ToEntero = -2 AndAlso DdlCuentas.SelectedValue.ToEntero = -1 Then Alert("El campo Cuenta es obligatorio.", TipoMensaje.MsgError) Else - FechaInicio = If(TxtFechaDel.Text = "" Or TxtFechaDel.Text = "__/__/____", Date.Now, TxtFechaDel.Text.ToDate) - FechaFin = If(TxtFechaAl.Text = "" Or TxtFechaAl.Text = "__/__/____", Date.Now, TxtFechaAl.Text.ToDate) + FechaInicio = If(txtFechaI.Text = "" Or txtFechaI.Text = "__/__/____", Date.Now, txtFechaI.Text.ToDate) + FechaFin = If(txtFechaF.Text = "" Or txtFechaF.Text = "__/__/____", Date.Now, txtFechaF.Text.ToDate) IdCuenta = If(DdlTipoCuentas.SelectedValue.ToEntero = -2, DdlCuentas.SelectedValue.ToEntero, DdlTipoCuentas.SelectedValue.ToEntero) CargaDatos() diff --git a/Contabilidad2/RepMovimientosAuxiliaresCatalogo.aspx b/Contabilidad2/RepMovimientosAuxiliaresCatalogo.aspx index 7cfa4539c..848671d12 100644 --- a/Contabilidad2/RepMovimientosAuxiliaresCatalogo.aspx +++ b/Contabilidad2/RepMovimientosAuxiliaresCatalogo.aspx @@ -1,259 +1,248 @@ -<%@ Page Title="" Language="VB" MasterPageFile="~/Site.master" AutoEventWireup="false" CodeFile="RepMovimientosAuxiliaresCatalogo.aspx.vb" Inherits="Conta_RepMovimientosAuxiliaresCatalogo" EnableEventValidation="false" %> - - - - - - -
  • - Generar EXCEL -
  • -
  • - Imprimir -
  • - -
    - - Movimientos Auxiliares del Catálogo - - - - - - - -
    -
    -
    - - -
    -
    -
    - -
    -
    - - - - - - - - - - -
    -
    - -
    -
    - - - - - - - - - - -
    -
    - - - -
    -<%-- - --%> - - - - - - - -
    - - - -
    -
    -
    - - - -
    - -
    -
    - -
    - <%--
    - " style="display: inline-block; margin-right: -20px; width: 150px;" /> - " style="margin-top: -3px;" class="btn btn-circle btn-sm label-info"> -
    --%> - - -
    - " style="display: inline-block; margin-right: -20px; width: 150px;" /> - " style="margin-top: -3px;" class="btn btn-circle btn-sm label-info"> -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    CuentaNombreSaldo Inicial
    FechaTipoNúmeroConceptoReferenciaReferencia MovtoSubProyectoCargosAbonosSaldo
    - <%--
    --%> -
    - <%-- --%> - - - - - - +<%@ Page Title="" Language="VB" MasterPageFile="~/Site.master" AutoEventWireup="false" CodeFile="RepMovimientosAuxiliaresCatalogo.aspx.vb" Inherits="Conta_RepMovimientosAuxiliaresCatalogo" EnableEventValidation="false" %> + + + + + + +
  • + Generar EXCEL +
  • +
  • + Imprimir +
  • + +
    + + Movimientos Auxiliares del Catálogo + + + + + + + +
    +
    +
    + + +
    +
    +
    +
    + Fecha Inicio: +
    +
    +
    + + + + +
    + + + + + + +
    +
    + Fecha Fin: +
    +
    +
    + + + + +
    + + + + + + +
    + + +
    + Cuenta: +
    +
    + + + + + +
    +
    +
    +
    + + +
    + +
    +
    + +
    + +
    + " style="display: inline-block; margin-right: -20px; width: 150px;" /> + " style="margin-top: -3px;" class="btn btn-circle btn-sm label-info"> +
    + + + + + + + + + +
    - - - -
    + + + + + + + + + + + + + + + + + + +
    CuentaNombreSaldo Inicial
    FechaTipoNúmeroConceptoReferenciaReferencia MovtoSubProyectoCargosAbonosSaldo
    + + + + + + + - - - - - - - - - - - - - - - -
    + + + + Saldo Inicial: - - -
    - - - - - - <%----%> - -
    - -
    -
    - - - - <%----%> - - - - - - - - -
    -
    - -
    -
    -
    - -
    -
    - - - - - -
    - - + + + + + + + + + + + + + + + + + +
    + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + + - - + + + diff --git a/Contabilidad2/RepMovimientosAuxiliaresCatalogo.aspx.vb b/Contabilidad2/RepMovimientosAuxiliaresCatalogo.aspx.vb index 520d31421..f4e55305d 100644 --- a/Contabilidad2/RepMovimientosAuxiliaresCatalogo.aspx.vb +++ b/Contabilidad2/RepMovimientosAuxiliaresCatalogo.aspx.vb @@ -108,8 +108,8 @@ Partial Class Conta_RepMovimientosAuxiliaresCatalogo DdlMoneda.DataSource = GlobalDTMonedas 'DdlMoneda.Dispose() DdlMoneda.DataBind() - TxtFechaDel.Text = Now.FirstDayOfMonth.ToShortDateString - TxtFechaAl.Text = Now.LastDayOfMonth.ToShortDateString + txtFechaI.Text = Now.FirstDayOfMonth.ToShortDateString + txtFechaF.Text = Now.LastDayOfMonth.ToShortDateString If Request("CveCuenta") IsNot Nothing AndAlso IsNumeric(Request("CveCuenta")) AndAlso Request("CveCuenta").ToEntero > 0 Then @@ -119,7 +119,7 @@ Partial Class Conta_RepMovimientosAuxiliaresCatalogo 'HdnCveCuenta.Value = IdCuenta.ToString FechaFin = Request("FF").ToDate - TxtFechaAl.Text = FechaFin.ToShortDateString + txtFechaF.Text = FechaFin.ToShortDateString DdlCuentas.SelectedValueExist(IdCuenta) If DdlCuentas.SelectedValue.ToEntero <> -1 Then @@ -129,10 +129,10 @@ Partial Class Conta_RepMovimientosAuxiliaresCatalogo If Request("FI") IsNot Nothing AndAlso Request("FI").ToString.Length = 10 AndAlso Request("FI").ToDate > "01/01/1000".ToDate Then FechaInicio = Request("FI").ToDate - TxtFechaDel.Text = FechaInicio.ToShortDateString + txtFechaI.Text = FechaInicio.ToShortDateString Else FechaInicio = DateSerial(Year(FechaFin), Month(FechaFin), 1) - TxtFechaDel.Text = FechaInicio.ToShortDateString + TxtFechaF.Text = FechaInicio.ToShortDateString End If If Request("CveSubProyecto") IsNot Nothing Then @@ -179,8 +179,8 @@ Partial Class Conta_RepMovimientosAuxiliaresCatalogo If DdlTipoCuentas.SelectedValue.ToEntero = -2 AndAlso DdlCuentas.SelectedValue.ToEntero = -1 Then Alert("El campo Cuenta es obligatorio.", TipoMensaje.MsgError) Else - FechaInicio = If(TxtFechaDel.Text = "" Or TxtFechaDel.Text = "__/__/____", Date.Now, TxtFechaDel.Text.ToDate) - FechaFin = If(TxtFechaAl.Text = "" Or TxtFechaAl.Text = "__/__/____", Date.Now, TxtFechaAl.Text.ToDate) + FechaInicio = If(txtFechaI.Text = "" Or txtFechaI.Text = "__/__/____", Date.Now, txtFechaI.Text.ToDate) + FechaFin = If(txtFechaF.Text = "" Or txtFechaF.Text = "__/__/____", Date.Now, txtFechaF.Text.ToDate) IdCuenta = If(DdlTipoCuentas.SelectedValue.ToEntero = -2, DdlCuentas.SelectedValue.ToEntero, DdlTipoCuentas.SelectedValue.ToEntero) CargaDatos() @@ -412,8 +412,8 @@ Partial Class Conta_RepMovimientosAuxiliaresCatalogo If DdlTipoCuentas.SelectedValue.ToEntero = -2 AndAlso DdlCuentas.SelectedValue.ToEntero = -1 Then Alert("El campo Cuenta es obligatorio.", TipoMensaje.MsgError) Else - FechaInicio = If(TxtFechaDel.Text = "" Or TxtFechaDel.Text = "__/__/____", Date.Now, TxtFechaDel.Text.ToDate) - FechaFin = If(TxtFechaAl.Text = "" Or TxtFechaAl.Text = "__/__/____", Date.Now, TxtFechaAl.Text.ToDate) + FechaInicio = If(txtFechaI.Text = "" Or txtFechaI.Text = "__/__/____", Date.Now, txtFechaI.Text.ToDate) + FechaFin = If(txtFechaF.Text = "" Or txtFechaF.Text = "__/__/____", Date.Now, txtFechaF.Text.ToDate) IdCuenta = If(DdlTipoCuentas.SelectedValue.ToEntero = -2, DdlCuentas.SelectedValue.ToEntero, DdlTipoCuentas.SelectedValue.ToEntero) 'Dim ObjConta As New ClsContPAQi(UsuarioActual.Empresa) diff --git a/Contabilidad2/RepSituacionFinanciera.aspx b/Contabilidad2/RepSituacionFinanciera.aspx index 655bd61dc..525852a24 100644 --- a/Contabilidad2/RepSituacionFinanciera.aspx +++ b/Contabilidad2/RepSituacionFinanciera.aspx @@ -1,116 +1,112 @@ -<%@ Page Title="" Language="VB" MasterPageFile="~/Site.master" AutoEventWireup="false" CodeFile="RepSituacionFinanciera.aspx.vb" Inherits="AC2_SituacionFinanciera" %> - - - - - - - - - - - - -
  • - Exporta Excel +<%@ Page Title="" Language="VB" MasterPageFile="~/Site.master" AutoEventWireup="false" CodeFile="RepSituacionFinanciera.aspx.vb" Inherits="AC2_SituacionFinanciera" %> + + + + + + + + + + + + +
  • + Exporta Excel <%-- --%> -
  • -
  • - Imprimir +
  • +
  • + Imprimir <%-- --%> -
  • -
  • - Cerrar Ejercicio -
  • -
    - - - -
    -
    -
    - - "><%--class="expand"--%> - -
    -
    -
    - -
    - - -
    - -
    - - - - - - - - - - - - - - -
    - -
    - - - -
    - - -
    -
    -
    -
    > - -
    -
    - - -
    - - - - - -
    - -
    - -
    - -
    - -
    - -
    -
    - -
    -
    -
    -
    -
    - - - - - - - -
    - -
    - - - + + + + +
    + +
  • + Cerrar Ejercicio +
  • + + + + +
    +
    +
    + + "><%--class="expand"--%> + +
    +
    +
    + +
    + + +
    + +
    + + + + + + + + + + + + + + +
    + + +
    +
    +
    +
    > +
    +
    +
    + +
    + + + + + +
    +
    +
    + +
    + +
    + +
    + +
    +
    +
    +
    +
    +
    +
    + + + + + + + +
    + +
    + + + - -

    ACTIVO

    @@ -217,16 +213,16 @@ -
    -
    -
    - -
    - - - + +
    + +
    +
    + +
    + + + - - - - - - + + + + + + - - - - -

    PASIVO

    @@ -332,34 +328,34 @@ -
    - -
    - - - - - - - - -
    -

    Total del Pasivo:

    -
    - - - -
    -
    -
    -
    - + + +
    + + + + + + + + +
    +

    Total del Pasivo:

    +
    + + + +
    +
    +
    +
    +

    @@ -495,46 +491,46 @@ -

    - -
    - - - - - - - - -
    -

    - -

    -
    - - - -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - -
    -
    - - + + +
    + + + + + + + + +
    +

    + +

    +
    + + + +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    + +
    +
    + +
    @@ -549,14 +545,14 @@
    -
    -
    -
    -
    - -
    - - + + + +
    + +
    + +
    @@ -573,54 +569,54 @@
    -
    -
    -
    -
    -
    -
    - -
    - -
    - - -
    - - -
    -
    - - -
    - - + + + +
    +
    +
    + +
    + +
    + + +
    + + +
    +
    + + +
    + + diff --git a/Ventas/Ventas.aspx b/Ventas/Ventas.aspx index e2f342c52..bd1dddfbe 100644 --- a/Ventas/Ventas.aspx +++ b/Ventas/Ventas.aspx @@ -784,6 +784,18 @@ activado + + Tipo Contable:  + + + + + + + + + + diff --git a/Ventas/Ventas.aspx.vb b/Ventas/Ventas.aspx.vb index 819d30cfb..13b93190e 100644 --- a/Ventas/Ventas.aspx.vb +++ b/Ventas/Ventas.aspx.vb @@ -5568,6 +5568,17 @@ Partial Class Ventas LBFacturarAnticipo.Visible = UsuarioActual.TienePermisoProceso(274) End If + 'SI ES COMPLEMENTARIA, NO DEBE PERMITIR FACTURAR + If UsuarioActual.Empresa.Funcionalidad(706) = "1" AndAlso DbRowVenta("TipoContable").ToString() <> "-1" Then + If DbRowVenta("TipoContable").ToString() = "0" Then + BtnsFacturar.Visible = False + End If + + TrTipoContable.Visible = True + DdlTipoContable.SelectedValueExist(DbRowVenta("TipoContable").ToString()) + DdlTipoContable.Enabled = False + End If + End If If DbRowVenta("TipoDocto").ToString().Contiene("Cot", "Pd2") Then @@ -9115,10 +9126,13 @@ Partial Class Ventas Dim Archivo As New System.IO.FileInfo(String.Format("{0}Formatos/Factura.rdlc", UsuarioActual.Empresa.Ruta)) Dim Archivo2 As New System.IO.FileInfo(String.Format("{0}Formatos/Remision.rdlc", UsuarioActual.Empresa.Ruta)) + Dim ArchivoSti As New System.IO.FileInfo(String.Format("{0}Formatos/Factura.mrt", UsuarioActual.Empresa.Ruta)) + Dim ArchivoSti2 As New System.IO.FileInfo(String.Format("{0}Formatos/Remision.mrt", UsuarioActual.Empresa.Ruta)) + LnkImprimir.Visible = False 'If (UsuarioActual.CveEmpresa.Contiene(1, 4, 5, 7, 11, 12, 72, 80, 81, 83) And UsuarioActual.CveUsuario = 100) Or UsuarioActual.CveEmpresa.Contiene(80, 83) Or UsuarioActual.CveUsuario = 100 Then - If (Archivo.Exists Or Archivo2.Exists) And IfNull(CveVenta, 0).ToString().ToEntero() > 0 Then + If (Archivo.Exists Or Archivo2.Exists Or ArchivoSti.Exists Or ArchivoSti2.Exists) And IfNull(CveVenta, 0).ToString().ToEntero() > 0 Then HplDownPDF.Visible = True HplDownPDF.NavigateUrl = String.Format("/Compras/PopUpVerFactura.aspx?P={0}", Encripta(String.Format("OP=VTA&CVEVENTA={0}&PAG=1&GUARDAR=1", CveVenta))) If UsuarioActual.CveRol = 1 Then @@ -12640,7 +12654,13 @@ Partial Class Ventas tCveTipoPoliza = 1 ' que sea siempre ingreso. End If - factura.CvePrePoliza = ObjConta.AddPrePolizas("Ventas/GuardarVenta", factura.CvePlantillaPoliza, factura.Total, factura.Total, factura.CveMoneda, factura.Fecha, If(CveEmpresaCRM > 0, LblEmpresaCRM.Text, factura.Cliente.Nombre), factura.CveUsuario, factura.CveEmpresa, CveTipoPoliza:=tCveTipoPoliza) + Dim TipoContable As Integer = -1 + If UsuarioActual.Empresa.Funcionalidad(706) = "1" AndAlso factura.TipoDocto = "Rem" Then + '1-Contable, 0-Complementaria + TipoContable = DdlTipoContable.SelectedValue.ToEntero() + End If + + factura.CvePrePoliza = ObjConta.AddPrePolizas("Ventas/GuardarVenta", factura.CvePlantillaPoliza, factura.Total, factura.Total, factura.CveMoneda, factura.Fecha, If(CveEmpresaCRM > 0, LblEmpresaCRM.Text, factura.Cliente.Nombre), factura.CveUsuario, factura.CveEmpresa, CveTipoPoliza:=tCveTipoPoliza, TipoContable:=TipoContable) Dim RFCReceptor As String = "" @@ -13126,7 +13146,7 @@ Partial Class Ventas If ErrorList.Count = 0 Then 'prepoliza - GuardarVentaPrePolizas(ObjConta, factura, TmpDTDetalle, CveNCaVincular, objContPaqi, ObjBancos, ObjVentas, ObjEventos:=ObjEventos, EsNCAmortizacion:=EsNCAmortizacion, NCDescuento:=NCDescuento, ListaNCDescuento:=ListaNCDescuento, ObjInventario:=ObjInventario) + GuardarVentaPrePolizas(ObjConta, factura, TmpDTDetalle, CveNCaVincular, objContPaqi, ObjBancos, ObjVentas, ObjEventos:=ObjEventos, EsNCAmortizacion:=EsNCAmortizacion, NCDescuento:=NCDescuento, ListaNCDescuento:=ListaNCDescuento, ObjInventario:=ObjInventario, TipoContable:=TipoContable) If ErrorList.Count = 0 Then 'INVENTARIOS @@ -13161,7 +13181,7 @@ Partial Class Ventas Private Sub GuardarVentaPrePolizas(ByRef ObjConta As ClsContabilidad, factura As Modelos.Factura, TmpDTDetalleMovimientos As DataTable, CveNCaVincular As Integer, ByRef objContPaqi As ClsContPAQi, Optional ByRef ObjBancos As ClsBancos = Nothing, ByRef Optional ObjVentas As ClsVentas = Nothing, ByRef Optional ObjEventos As ClsOIEventos = Nothing, Optional EsNCAmortizacion As Boolean = False, Optional NCDescuento As Boolean = False, - Optional ValorMultiplicador As Integer = 1, Optional ListaNCDescuento As List(Of Modelos.Factura) = Nothing, Optional ObjInventario As ClsInventarios = Nothing) + Optional ValorMultiplicador As Integer = 1, Optional ListaNCDescuento As List(Of Modelos.Factura) = Nothing, Optional ObjInventario As ClsInventarios = Nothing, Optional TipoContable As Integer = -1) Dim CveIE As Integer = -1 Dim DT As DataTable = Nothing @@ -13180,7 +13200,7 @@ Partial Class Ventas If DdlTipoComprobante.SelectedValue <> "Cot" Then If factura.CvePrePoliza > 0 Then - If ProcesoPrepolizas(ObjConta, factura, CveIE, TmpDTDetalleMovimientos, objContPaqi, ValorMultiplicador, ObjBancos, ObjVentas, ObjEventos:=ObjEventos, EsNCAmortizacion:=EsNCAmortizacion, NCDescuento:=NCDescuento, ListaNCDescuento:=ListaNCDescuento, ObjInventario:=ObjInventario) Then + If ProcesoPrepolizas(ObjConta, factura, CveIE, TmpDTDetalleMovimientos, objContPaqi, ValorMultiplicador, ObjBancos, ObjVentas, ObjEventos:=ObjEventos, EsNCAmortizacion:=EsNCAmortizacion, NCDescuento:=NCDescuento, ListaNCDescuento:=ListaNCDescuento, ObjInventario:=ObjInventario, TipoContable:=TipoContable) Then ErrorList.Add("Ocurrió un error al agregar los Movimientos de la prepoliza.
    Revise su factura y cualquier detalle comuníquese a Soporte Técnico") End If @@ -13192,7 +13212,7 @@ Partial Class Ventas Private Function ProcesoPrepolizas(ByRef ObjConta As ClsContabilidad, ObjFactura As Modelos.Factura, CveIE As Integer, TmpDTDetalle As DataTable, ByRef objContPaqi As ClsContPAQi, Optional ValorMultiplicador As Integer = 1, ByRef Optional ObjBancos As ClsBancos = Nothing, ByRef Optional ObjVentas As ClsVentas = Nothing, ByRef Optional ObjEventos As ClsOIEventos = Nothing, Optional EsNCAmortizacion As Boolean = False, Optional NCDescuento As Boolean = False, - Optional ListaNCDescuento As List(Of Modelos.Factura) = Nothing, Optional ObjInventario As ClsInventarios = Nothing) As Boolean + Optional ListaNCDescuento As List(Of Modelos.Factura) = Nothing, Optional ObjInventario As ClsInventarios = Nothing, Optional TipoContable As Integer = -1) As Boolean Try Dim DT As DataTable Dim CvePlantilaPoliza As Integer @@ -13343,8 +13363,13 @@ Partial Class Ventas End If IdCtaContableCliente = IdCtaContable - If ObjConta.AddPrePolizasDetalle(ObjFactura.CvePrePoliza, TipoMovimiento, importeMovimiento, Referencia, 190, Concepto, FechaMovimiento, IdCtaContable, -1, CveVenta:=ObjFactura.CveVenta, CveCliente:=ObjFactura.CveCliente, CveIE:=CveIE, ImporteMX:=importeMX, ImporteME:=If(tipoCambio = 1, 0, importeMovimiento), Contabilizable:=False, CveSubProyecto:=CveSubProyectoContabilizar) Then - If Not ObjConta.AddPrePolizasDetalle(ObjFactura.CvePrePoliza, Not TipoMovimiento, importeMovimiento, Referencia, 193, Concepto, FechaMovimiento, IdCtaContable, -1, CveVenta:=ObjFactura.CveVenta, CveCliente:=ObjFactura.CveCliente, CveIE:=CveIE, ImporteMX:=importeMX, ImporteME:=If(tipoCambio = 1, 0, importeMovimiento), Contabilizable:=False, CveSubProyecto:=CveSubProyectoContabilizar) Then + Dim ContabilizableRem As Boolean = False + If TipoContable <> -1 Then + ContabilizableRem = True + End If + + If ObjConta.AddPrePolizasDetalle(ObjFactura.CvePrePoliza, TipoMovimiento, importeMovimiento, Referencia, 190, Concepto, FechaMovimiento, IdCtaContable, -1, CveVenta:=ObjFactura.CveVenta, CveCliente:=ObjFactura.CveCliente, CveIE:=CveIE, ImporteMX:=importeMX, ImporteME:=If(tipoCambio = 1, 0, importeMovimiento), Contabilizable:=ContabilizableRem, CveSubProyecto:=CveSubProyectoContabilizar) Then + If Not ObjConta.AddPrePolizasDetalle(ObjFactura.CvePrePoliza, Not TipoMovimiento, importeMovimiento, Referencia, 193, Concepto, FechaMovimiento, IdCtaContable, -1, CveVenta:=ObjFactura.CveVenta, CveCliente:=ObjFactura.CveCliente, CveIE:=CveIE, ImporteMX:=importeMX, ImporteME:=If(tipoCambio = 1, 0, importeMovimiento), Contabilizable:=ContabilizableRem, CveSubProyecto:=CveSubProyectoContabilizar) Then ErrorPrepoliza = True End If Else @@ -16523,189 +16548,194 @@ Partial Class Ventas #End Region #Region "I M A G E - B U T T O N S" - Protected Function CancelarFactura(ByRef ObjVentas As ClsVentas, ByRef ObjConta As ClsContabilidad, ByRef ObjAC As ClsContPAQi, ByRef ObjBancos As ClsBancos) As Boolean - Dim IDPoliza As Integer = -1 - Dim CvePrePoliza As Integer - Dim CvePlantillaPoliza As Integer + 'Protected Function CancelarFactura(ByRef ObjVentas As ClsVentas, ByRef ObjConta As ClsContabilidad, ByRef ObjAC As ClsContPAQi, ByRef ObjBancos As ClsBancos) As Boolean + ' Dim IDPoliza As Integer = -1 + ' Dim CvePrePoliza As Integer + ' Dim CvePlantillaPoliza As Integer - Dim ErrorCancelar As Boolean = False - Dim Mensaje As String = "" + ' Dim ErrorCancelar As Boolean = False + ' Dim Mensaje As String = "" - Try - ObjFacturaDevolucion.TipoDocto = ObjFactura.TipoDocto + ' Try + ' ObjFacturaDevolucion.TipoDocto = ObjFactura.TipoDocto - If ObjFacturaDevolucion.TipoDocto.Contiene("Egs", "Dev") Then - CvePlantillaPoliza = 7 - ElseIf ObjFacturaDevolucion.TipoDocto.Contiene("Ing", "Rem", "Ant") Then - CvePlantillaPoliza = 4 - End If + ' Dim TipoContable As Integer = -1 + ' If ObjFacturaDevolucion.TipoDocto.Contiene("Egs", "Dev") Then + ' CvePlantillaPoliza = 7 + ' ElseIf ObjFacturaDevolucion.TipoDocto.Contiene("Ing", "Rem", "Ant") Then + ' CvePlantillaPoliza = 4 + ' End If + + ' If UsuarioActual.Empresa.Funcionalidad(706) = "1" AndAlso Then + + ' End If - CvePrePoliza = ObjConta.AddPrePolizas("Ventas/GuardaEstatus", CvePlantillaPoliza, TxtTotal.Text.ToDouble, TxtTotal.Text.Replace(",", "").ToDouble, DdlMoneda.SelectedValue.ToEntero(), Now, NombreCliente, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa) - ObjFacturaDevolucion.CveVenta = CveVenta - ObjFacturaDevolucion.CvePrePoliza = CvePrePoliza + ' CvePrePoliza = ObjConta.AddPrePolizas("Ventas/GuardaEstatus", CvePlantillaPoliza, TxtTotal.Text.ToDouble, TxtTotal.Text.Replace(",", "").ToDouble, DdlMoneda.SelectedValue.ToEntero(), Now, NombreCliente, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa) + ' ObjFacturaDevolucion.CveVenta = CveVenta + ' ObjFacturaDevolucion.CvePrePoliza = CvePrePoliza - If NuevaFactura = 1 AndAlso UsuarioActual.TienePermisoProceso(222) Then - If ObjVentas.GetVentaDetalle(ObjFacturaDevolucion.CveVenta) Then - TmpDT = ObjVentas.DtResultados - TmpDT.Columns.Add("CveVentaDetalleRNC", GetType(Integer)) - TmpDT.Columns.Add("TieneProntoPago", GetType(String)) - TmpDT.Columns.Add("ImporteProntoPago", GetType(Decimal)) - End If - ErrorCancelar = ProcesoPrepolizas(ObjConta, ObjFacturaDevolucion, -1, TmpDT, ObjAC, -1, ObjBancos, ObjVentas) - Else - ErrorCancelar = ProcesoPrepolizas(ObjConta, ObjFacturaDevolucion, -1, TmpDT, ObjAC, -1, ObjBancos, ObjVentas) - End If + ' If NuevaFactura = 1 AndAlso UsuarioActual.TienePermisoProceso(222) Then + ' If ObjVentas.GetVentaDetalle(ObjFacturaDevolucion.CveVenta) Then + ' TmpDT = ObjVentas.DtResultados + ' TmpDT.Columns.Add("CveVentaDetalleRNC", GetType(Integer)) + ' TmpDT.Columns.Add("TieneProntoPago", GetType(String)) + ' TmpDT.Columns.Add("ImporteProntoPago", GetType(Decimal)) + ' End If + ' ErrorCancelar = ProcesoPrepolizas(ObjConta, ObjFacturaDevolucion, -1, TmpDT, ObjAC, -1, ObjBancos, ObjVentas) + ' Else + ' ErrorCancelar = ProcesoPrepolizas(ObjConta, ObjFacturaDevolucion, -1, TmpDT, ObjAC, -1, ObjBancos, ObjVentas) + ' End If - If Not ErrorCancelar Then - ErrorCancelar = GuardarVentaImpuestosLocales(ObjVentas, ObjConta, ObjFacturaDevolucion, -1) - End If + ' If Not ErrorCancelar Then + ' ErrorCancelar = GuardarVentaImpuestosLocales(ObjVentas, ObjConta, ObjFacturaDevolucion, -1) + ' End If - If CveEstatus = 4 Then + ' If CveEstatus = 4 Then - If ObjVentas.UpdateEstatusFactura(CveEstatus, FolioFiscal, "", Now, CveVenta, IDPoliza) Then - Mensaje = "El nuevo estatus se guardó correctamente" - Else - ErrorCancelar = True - End If + ' If ObjVentas.UpdateEstatusFactura(CveEstatus, FolioFiscal, "", Now, CveVenta, IDPoliza) Then + ' Mensaje = "El nuevo estatus se guardó correctamente" + ' Else + ' ErrorCancelar = True + ' End If - 'Si se está mandando a Cancelada SAT - ElseIf CveEstatus = 5 Then + ' 'Si se está mandando a Cancelada SAT + ' ElseIf CveEstatus = 5 Then - Dim DT As DataTable = Nothing + ' Dim DT As DataTable = Nothing - If FolioFiscal = "" Then - Dim XmlDoc As New XmlDocument - XmlDoc.Load(Ruta & "XML\" & DdlTipoComprobante.SelectedValue & "\" & VentaFolio & ".xml") - ViewState("FolioFiscal") = XmlDoc.DocumentElement("cfdi:Complemento").FirstChild.Attributes("UUID").InnerText - End If + ' If FolioFiscal = "" Then + ' Dim XmlDoc As New XmlDocument + ' XmlDoc.Load(Ruta & "XML\" & DdlTipoComprobante.SelectedValue & "\" & VentaFolio & ".xml") + ' ViewState("FolioFiscal") = XmlDoc.DocumentElement("cfdi:Complemento").FirstChild.Attributes("UUID").InnerText + ' End If - Dim ObjCancelacion As New Timbrado + ' Dim ObjCancelacion As New Timbrado - Dim Total As Decimal = TxtTotal.Text.ToDecimal - Dim RFCReceptor As String = HdnRFCVenta.Value + ' Dim Total As Decimal = TxtTotal.Text.ToDecimal + ' Dim RFCReceptor As String = HdnRFCVenta.Value - If Not ObjVentas.UpdateEstatusFactura(13, FolioFiscal, "", Now, CveVenta, IDPoliza) Then 'Marcamos la factura como refacturada, si no se cancelo en el SAT el estatus nos dejara cancelarla despues - ErrorCancelar = True - End If - Dim RespCancelacion = ObjCancelacion.CFDICancelar(UsuarioActual.Empresa, FolioFiscal, Total, RFCReceptor, UsuarioActual.Empresa.RFC) - If RespCancelacion.Verificado Then - 'falta verificar traer el acuse y reenviarlo + ' If Not ObjVentas.UpdateEstatusFactura(13, FolioFiscal, "", Now, CveVenta, IDPoliza) Then 'Marcamos la factura como refacturada, si no se cancelo en el SAT el estatus nos dejara cancelarla despues + ' ErrorCancelar = True + ' End If + ' Dim RespCancelacion = ObjCancelacion.CFDICancelar(UsuarioActual.Empresa, FolioFiscal, Total, RFCReceptor, UsuarioActual.Empresa.RFC) + ' If RespCancelacion.Verificado Then + ' 'falta verificar traer el acuse y reenviarlo - If UsuarioActual.Empresa.TipoContabilidad = 2 AndAlso UsuarioActual.Empresa.UsaAC Then - Dim IDMPoliza As Modelos.RetornoPolizaConta = GenerarPolizaAC(ObjAC, ObjFacturaDevolucion, True) - IDPoliza = IDMPoliza.IdPoliza - If IDMPoliza.IdPoliza <= 0 Then - Mensaje = "No se pudo generar la poliza" - ErrorCancelar = True - End If - End If + ' If UsuarioActual.Empresa.TipoContabilidad = 2 AndAlso UsuarioActual.Empresa.UsaAC Then + ' Dim IDMPoliza As Modelos.RetornoPolizaConta = GenerarPolizaAC(ObjAC, ObjFacturaDevolucion, True) + ' IDPoliza = IDMPoliza.IdPoliza + ' If IDMPoliza.IdPoliza <= 0 Then + ' Mensaje = "No se pudo generar la poliza" + ' ErrorCancelar = True + ' End If + ' End If - If Not ErrorCancelar Then - If ObjVentas.UpdateEstatusFactura(CveEstatus, FolioFiscal, ObjCancelacion.CancelacionAcuse, Now, CveVenta, IDPoliza, CvePAC:=UsuarioActual.Empresa.CvePAC) Then - Mensaje = "El nuevo estatus se guardó correctamente" - Else - ErrorCancelar = True - End If - End If - Else - ErrorCancelar = True - End If + ' If Not ErrorCancelar Then + ' If ObjVentas.UpdateEstatusFactura(CveEstatus, FolioFiscal, ObjCancelacion.CancelacionAcuse, Now, CveVenta, IDPoliza, CvePAC:=UsuarioActual.Empresa.CvePAC) Then + ' Mensaje = "El nuevo estatus se guardó correctamente" + ' Else + ' ErrorCancelar = True + ' End If + ' End If + ' Else + ' ErrorCancelar = True + ' End If - ObjCancelacion = Nothing + ' ObjCancelacion = Nothing - End If - Catch ex As Exception - GuardaLog("CancelF." & ex.ToString()) - ErrorCancelar = True - End Try + ' End If + ' Catch ex As Exception + ' GuardaLog("CancelF." & ex.ToString()) + ' ErrorCancelar = True + ' End Try - Return Not ErrorCancelar - End Function - Protected Function CancelarFactura2(ObjVentas As ClsVentas, ObjConta As ClsContabilidad, ObjAC As ClsContPAQi, ObjBancos As ClsBancos) As Boolean + ' Return Not ErrorCancelar + 'End Function + 'Protected Function CancelarFactura2(ObjVentas As ClsVentas, ObjConta As ClsContabilidad, ObjAC As ClsContPAQi, ObjBancos As ClsBancos) As Boolean - Dim IDPoliza As Integer = -1 - Dim CvePrePoliza As Integer - Dim CvePlantillaPoliza As Integer + ' Dim IDPoliza As Integer = -1 + ' Dim CvePrePoliza As Integer + ' Dim CvePlantillaPoliza As Integer - Dim ErrorCancelar As Boolean = False - Dim Mensaje As String = "" + ' Dim ErrorCancelar As Boolean = False + ' Dim Mensaje As String = "" - CreaObjetosVenta() + ' CreaObjetosVenta() - If ObjFactura.TipoDocto.Contiene("Egs", "Dev") Then - CvePlantillaPoliza = 7 - ElseIf ObjFactura.TipoDocto.Contiene("Ing", "Rem") Then - CvePlantillaPoliza = 4 - End If + ' If ObjFactura.TipoDocto.Contiene("Egs", "Dev") Then + ' CvePlantillaPoliza = 7 + ' ElseIf ObjFactura.TipoDocto.Contiene("Ing", "Rem") Then + ' CvePlantillaPoliza = 4 + ' End If - CvePrePoliza = ObjConta.AddPrePolizas("Ventas/GuardaEstatus", CvePlantillaPoliza, TxtTotal.Text.ToDouble, TxtTotal.Text.Replace(",", "").ToDouble, DdlMoneda.SelectedValue.ToEntero(), Now, NombreCliente, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa) - ObjFactura.CveVenta = CveVenta - ObjFactura.CvePrePoliza = CvePrePoliza + ' CvePrePoliza = ObjConta.AddPrePolizas("Ventas/GuardaEstatus", CvePlantillaPoliza, TxtTotal.Text.ToDouble, TxtTotal.Text.Replace(",", "").ToDouble, DdlMoneda.SelectedValue.ToEntero(), Now, NombreCliente, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa) + ' ObjFactura.CveVenta = CveVenta + ' ObjFactura.CvePrePoliza = CvePrePoliza - If HplSaldoAuxiliar.Text.ToDecimal > 0 Then - ErrorCancelar = ProcesoPrepolizas(ObjConta, ObjFactura, -1, TmpDT, ObjAC, -1, ObjBancos, ObjVentas) - End If + ' If HplSaldoAuxiliar.Text.ToDecimal > 0 Then + ' ErrorCancelar = ProcesoPrepolizas(ObjConta, ObjFactura, -1, TmpDT, ObjAC, -1, ObjBancos, ObjVentas) + ' End If - If Not ErrorCancelar Then - ErrorCancelar = GuardarVentaImpuestosLocales(ObjVentas, ObjConta, ObjFactura, -1) - End If + ' If Not ErrorCancelar Then + ' ErrorCancelar = GuardarVentaImpuestosLocales(ObjVentas, ObjConta, ObjFactura, -1) + ' End If - If CveEstatus = 4 Then + ' If CveEstatus = 4 Then - If ObjVentas.UpdateEstatusFactura(CveEstatus, FolioFiscal, "", Now, CveVenta, IDPoliza) Then - Mensaje = "El nuevo estatus se guardó correctamente" - Else - ErrorCancelar = True - End If + ' If ObjVentas.UpdateEstatusFactura(CveEstatus, FolioFiscal, "", Now, CveVenta, IDPoliza) Then + ' Mensaje = "El nuevo estatus se guardó correctamente" + ' Else + ' ErrorCancelar = True + ' End If - 'Si se está mandando a Cancelada SAT - ElseIf CveEstatus = 5 Then + ' 'Si se está mandando a Cancelada SAT + ' ElseIf CveEstatus = 5 Then - Dim DT As DataTable = Nothing + ' Dim DT As DataTable = Nothing - If FolioFiscal = "" Then - Dim XmlDoc As New XmlDocument - XmlDoc.Load(Ruta & "XML\" & DdlTipoComprobante.SelectedValue & "\" & VentaFolio & ".xml") - ViewState("FolioFiscal") = XmlDoc.DocumentElement("cfdi:Complemento").FirstChild.Attributes("UUID").InnerText - End If + ' If FolioFiscal = "" Then + ' Dim XmlDoc As New XmlDocument + ' XmlDoc.Load(Ruta & "XML\" & DdlTipoComprobante.SelectedValue & "\" & VentaFolio & ".xml") + ' ViewState("FolioFiscal") = XmlDoc.DocumentElement("cfdi:Complemento").FirstChild.Attributes("UUID").InnerText + ' End If - 'Si es cancelar en el SAT: - Dim CFDi As New ClbNegBICFDv3_2.ClsNegEDI - Dim Respuesta As New ClbNegBICFDv3_2.ClsNegRespuesta - Respuesta = CFDi.CancelaCFdi(UsuarioActual.Empresa.BIUsuario, UsuarioActual.Empresa.BIContraseña, Ruta & "Certificados\" & UsuarioActual.Empresa.ArchivoPfx, UsuarioActual.Empresa.ContraseñaKey, UsuarioActual.Empresa.RFC, FolioFiscal, "http://208.43.160.178/srvCFDi/service1.asmx") + ' 'Si es cancelar en el SAT: + ' Dim CFDi As New ClbNegBICFDv3_2.ClsNegEDI + ' Dim Respuesta As New ClbNegBICFDv3_2.ClsNegRespuesta + ' Respuesta = CFDi.CancelaCFdi(UsuarioActual.Empresa.BIUsuario, UsuarioActual.Empresa.BIContraseña, Ruta & "Certificados\" & UsuarioActual.Empresa.ArchivoPfx, UsuarioActual.Empresa.ContraseñaKey, UsuarioActual.Empresa.RFC, FolioFiscal, "http://208.43.160.178/srvCFDi/service1.asmx") - If Respuesta Is Nothing Then - 'Alert("La factura no se pudo cancelar.
    Posbiles causas:
      - Los servicios del SAT están ocupados.
      - El Folio Fiscal no ha quedado registrado.", TipoMensaje.MsgError) - Me.GuardaLog(CFDi.MsgError) - ErrorCancelar = True - Mensaje = "La factura no se pudo cancelar.
    Posbiles causas:
      - Los servicios del SAT están ocupados.
      - El Folio Fiscal no ha quedado registrado." - ElseIf Respuesta.NoCertificadoSAT <> String.Empty Then + ' If Respuesta Is Nothing Then + ' 'Alert("La factura no se pudo cancelar.
    Posbiles causas:
      - Los servicios del SAT están ocupados.
      - El Folio Fiscal no ha quedado registrado.", TipoMensaje.MsgError) + ' Me.GuardaLog(CFDi.MsgError) + ' ErrorCancelar = True + ' Mensaje = "La factura no se pudo cancelar.
    Posbiles causas:
      - Los servicios del SAT están ocupados.
      - El Folio Fiscal no ha quedado registrado." + ' ElseIf Respuesta.NoCertificadoSAT <> String.Empty Then - If UsuarioActual.Empresa.TipoContabilidad = 2 AndAlso UsuarioActual.Empresa.UsaAC Then - Dim IDMPoliza As Modelos.RetornoPolizaConta = GenerarPolizaAC(ObjAC, ObjFacturaDevolucion, True) - IDPoliza = IDMPoliza.IdPoliza - If IDMPoliza.IdPoliza <= 0 Then - Mensaje = "No se pudo generar la poliza" - ErrorCancelar = True - End If - End If + ' If UsuarioActual.Empresa.TipoContabilidad = 2 AndAlso UsuarioActual.Empresa.UsaAC Then + ' Dim IDMPoliza As Modelos.RetornoPolizaConta = GenerarPolizaAC(ObjAC, ObjFacturaDevolucion, True) + ' IDPoliza = IDMPoliza.IdPoliza + ' If IDMPoliza.IdPoliza <= 0 Then + ' Mensaje = "No se pudo generar la poliza" + ' ErrorCancelar = True + ' End If + ' End If - If Not ErrorCancelar Then - If ObjVentas.UpdateEstatusFactura(CveEstatus, FolioFiscal, Respuesta.NoCertificadoSAT, Respuesta.FechaTimbrado, CveVenta, IDPoliza) Then - Mensaje = "El nuevo estatus se guardó correctamente" - Else - ErrorCancelar = True - End If - End If - End If + ' If Not ErrorCancelar Then + ' If ObjVentas.UpdateEstatusFactura(CveEstatus, FolioFiscal, Respuesta.NoCertificadoSAT, Respuesta.FechaTimbrado, CveVenta, IDPoliza) Then + ' Mensaje = "El nuevo estatus se guardó correctamente" + ' Else + ' ErrorCancelar = True + ' End If + ' End If + ' End If - End If + ' End If - Return Not ErrorCancelar - End Function + ' Return Not ErrorCancelar + 'End Function Protected Sub ImgBtnAddC_Click(sender As Object, e As ImageClickEventArgs) Handles ImgBtnAddC.Click Dim Row As DataRow = Nothing @@ -17120,6 +17150,10 @@ Partial Class Ventas tdFechaVigencia.Visible = DdlTipoComprobante.SelectedValue.Contiene("Cot") + If UsuarioActual.Empresa.Funcionalidad(706) = "1" AndAlso (CveVenta <= 0 OrElse EsCreaApartirDe) AndAlso DdlTipoComprobante.SelectedValue.Contiene("Rem") Then + TrTipoContable.Visible = True + End If + Updatetabs.Update() UPCondicionesPago.Update() UpCliente.Update() @@ -19818,6 +19852,7 @@ Partial Class Ventas If Not OcurrioError AndAlso RemisionesLista.Count > 0 AndAlso DtRemConceptosSurtidos IsNot Nothing Then If DtRemConceptosSurtidos.SUMD("Surtido") <> DtRemConceptosSurtidos.SUMD("Cantidad") Then OcurrioError = True + Alert("Lo facturado no coincide con lo surtido en inventario", TipoMensaje.MsgAdvertencia) End If End If From d0d45e3ee9274f8b227188386383d7149c37dae3 Mon Sep 17 00:00:00 2001 From: Jonathan Alexis Perez Morales Date: Tue, 18 Oct 2022 22:59:49 -0700 Subject: [PATCH 7/8] Renombrar Clasificaciones de clientes a Giro --- Ventas/CatClientesClasificaciones.aspx | 4 ++-- Ventas/RepProductosServicios.aspx | 2 +- Ventas/RepProductosServiciosDetalle.aspx | 2 +- Ventas/RepVentaDetalle.aspx | 2 +- Ventas/RepVentas.aspx | 2 +- 5 files changed, 6 insertions(+), 6 deletions(-) diff --git a/Ventas/CatClientesClasificaciones.aspx b/Ventas/CatClientesClasificaciones.aspx index 6900bfd49..651999a62 100644 --- a/Ventas/CatClientesClasificaciones.aspx +++ b/Ventas/CatClientesClasificaciones.aspx @@ -10,7 +10,7 @@ - Catálogo de Clasificaciones de Clientes + Catálogo de giros de clientes @@ -34,7 +34,7 @@ - + diff --git a/Ventas/RepProductosServicios.aspx b/Ventas/RepProductosServicios.aspx index 735b5b74a..3a06a76df 100644 --- a/Ventas/RepProductosServicios.aspx +++ b/Ventas/RepProductosServicios.aspx @@ -286,7 +286,7 @@
    - +
    diff --git a/Ventas/RepProductosServiciosDetalle.aspx b/Ventas/RepProductosServiciosDetalle.aspx index 102bf8ff3..4f5f6374e 100644 --- a/Ventas/RepProductosServiciosDetalle.aspx +++ b/Ventas/RepProductosServiciosDetalle.aspx @@ -287,7 +287,7 @@
    - +
    diff --git a/Ventas/RepVentaDetalle.aspx b/Ventas/RepVentaDetalle.aspx index ce304bba6..6e4f84715 100644 --- a/Ventas/RepVentaDetalle.aspx +++ b/Ventas/RepVentaDetalle.aspx @@ -279,7 +279,7 @@
    - +
    diff --git a/Ventas/RepVentas.aspx b/Ventas/RepVentas.aspx index 83ec7ed29..73b10d77b 100644 --- a/Ventas/RepVentas.aspx +++ b/Ventas/RepVentas.aspx @@ -285,7 +285,7 @@ - +
    From 4bf28b46737ce72065d85715ca01c22959c85f97 Mon Sep 17 00:00:00 2001 From: rrene Date: Wed, 19 Oct 2022 09:14:36 -0700 Subject: [PATCH 8/8] =?UTF-8?q?--=20usuario=20contabilizaci=C3=B3n?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Compras/Compras.aspx.vb | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/Compras/Compras.aspx.vb b/Compras/Compras.aspx.vb index 6db7b064a..80c768d05 100644 --- a/Compras/Compras.aspx.vb +++ b/Compras/Compras.aspx.vb @@ -8482,8 +8482,6 @@ Partial Class Compras_Compras Next - - If ErrorMovtosCxP = 0 And CvePrePolizaNueva > 0 Then If (UsuarioActual.Empresa.UsaAC Or UsuarioActual.Empresa.Funcionalidad(200).ToString = "1") AndAlso IdPoliza > 0 AndAlso UsuarioActual.Empresa.TipoContabilidad = 2 Then @@ -8492,7 +8490,7 @@ Partial Class Compras_Compras ObjContaAC.IniciaTransacSQL() End If - If Not ObjConta.ContabilizarPrePoliza(CvePrePolizaNueva, UsuarioActual.CveEmpresa, UsuarioActual.Empresa, MinFecha, "", ObjContaAC) Then + If Not ObjConta.ContabilizarPrePoliza(CvePrePolizaNueva, UsuarioActual.CveUsuario, UsuarioActual.Empresa, MinFecha, "", ObjContaAC) Then ErrorMovtosCxP = 3 End If