diff --git a/App_Code/ClsOC.vb b/App_Code/ClsOC.vb
index dbda19f3b..5a2e41f76 100644
--- a/App_Code/ClsOC.vb
+++ b/App_Code/ClsOC.vb
@@ -1431,7 +1431,7 @@ Public Class ClsOC
Return Retorno
End Function
- Public Function UpdateEstatus(Estatus As String, Tipo As String, CveEstatusSiguiente As Integer, TipoTermino As Integer, EstatusActivo As Boolean, EsCancelable As Boolean, CveEstatus As Integer) As Boolean
+ Public Function UpdateEstatus(Estatus As String, Tipo As String, CveEstatusSiguiente As Integer, TipoTermino As Integer, EstatusActivo As Boolean, EsCancelable As Boolean, CveEstatus As Integer, EsatatusSiguiente As String) As Boolean
Dim Retorno As Boolean = False
DataAdapter("PA_OC_EstatusUpdate")
@@ -1452,6 +1452,9 @@ Public Class ClsOC
Catch Ex1 As SqlException
If Ex1.Message.Contains("Número: 2627;") Then
Alert("Ya existe un Estatus con el mismo nombre: " & Estatus & ".", TipoMensaje.MsgAdvertencia)
+
+ ElseIf Ex1.Message.Contains("Número: 530;") Then
+ Alert($"La asiganación del campo estatus siguiente {EsatatusSiguiente} esta creando problema de recursividad.", TipoMensaje.MsgAdvertencia)
Else
Me.OnError("Ocurrió un error al guardar los cambios en el Estatus", Ex1, SqlAdapter.SelectCommand.Parameters.ParametrosInfo())
End If
diff --git a/App_Code/Modelos.vb b/App_Code/Modelos.vb
index 1b3a113ff..8c878fb6a 100644
--- a/App_Code/Modelos.vb
+++ b/App_Code/Modelos.vb
@@ -2867,12 +2867,12 @@ Namespace Modelos
For Each Row2 As DataRow In DT.Rows
importeMovimiento = ((TmpDTDetalle.SUM("TotalImporte", String.Format("CveClasificacion = {0} And CveSubProyecto = {1}", Row2("CveClasificacion"), Row2("CveSubProyecto"))).ToString.ToDecimal) * ValorMultiplicador)
- If ObjFactura.TipoDocto = "Egs" Then
- importeMovimiento += (TmpDTDetalle.SUM("ImporteIVA", String.Format("CveClasificacion = {0} And CveSubProyecto = {1}", Row2("CveClasificacion"), Row2("CveSubProyecto"))).ToString().ToDecimal) * ValorMultiplicador
- importeMovimiento += (TmpDTDetalle.SUM("ImporteIEPS", String.Format("CveClasificacion = {0} And CveSubProyecto = {1}", Row2("CveClasificacion"), Row2("CveSubProyecto"))).ToString().ToDecimal) * ValorMultiplicador
- importeMovimiento -= (TmpDTDetalle.SUM("ImporteRetIVA", String.Format("CveClasificacion = {0} And CveSubProyecto = {1}", Row2("CveClasificacion"), Row2("CveSubProyecto"))).ToString().ToDecimal) * ValorMultiplicador
- importeMovimiento -= (TmpDTDetalle.SUM("ImporteRetISR", String.Format("CveClasificacion = {0} And CveSubProyecto = {1}", Row2("CveClasificacion"), Row2("CveSubProyecto"))).ToString().ToDecimal) * ValorMultiplicador
- End If
+ 'If ObjFactura.TipoDocto = "Egs" Then
+ ' importeMovimiento += (TmpDTDetalle.SUM("ImporteIVA", String.Format("CveClasificacion = {0} And CveSubProyecto = {1}", Row2("CveClasificacion"), Row2("CveSubProyecto"))).ToString().ToDecimal) * ValorMultiplicador
+ ' importeMovimiento += (TmpDTDetalle.SUM("ImporteIEPS", String.Format("CveClasificacion = {0} And CveSubProyecto = {1}", Row2("CveClasificacion"), Row2("CveSubProyecto"))).ToString().ToDecimal) * ValorMultiplicador
+ ' importeMovimiento -= (TmpDTDetalle.SUM("ImporteRetIVA", String.Format("CveClasificacion = {0} And CveSubProyecto = {1}", Row2("CveClasificacion"), Row2("CveSubProyecto"))).ToString().ToDecimal) * ValorMultiplicador
+ ' importeMovimiento -= (TmpDTDetalle.SUM("ImporteRetISR", String.Format("CveClasificacion = {0} And CveSubProyecto = {1}", Row2("CveClasificacion"), Row2("CveSubProyecto"))).ToString().ToDecimal) * ValorMultiplicador
+ 'End If
importeMX = importeMovimiento * tipoCambio * Multiplicador
FechaMovimiento = ObjFactura.FechaPago
@@ -2986,8 +2986,8 @@ Namespace Modelos
CveSubProyectoContabilizar = CveSubProyectoVenta
If tipoCambio > 1 Then Concepto += $" TC:{tipoCambio} ${importeMovimiento.FormatoNumero(2)}"
- If ObjFactura.TipoDocto = "Dev" Then
- TipoMovimiento = True
+ If ValorMultiplicador = -1 AndAlso ObjFactura.Alfa3 = "DEV" AndAlso ObjFactura.TipoDocto = "Dev" Then
+ TipoMovimiento = Not TipoMovimiento
ConceptoContable = 62
importeMovimiento = importeMovimiento * -1
importeMX = importeMX * -1
@@ -3024,8 +3024,8 @@ Namespace Modelos
CveSubProyectoContabilizar = CveSubProyectoVenta
If tipoCambio > 1 Then Concepto += $" TC:{tipoCambio} ${importeMovimiento.FormatoNumero(2)}"
- If ObjFactura.TipoDocto = "Dev" Then
- TipoMovimiento = True
+ If ValorMultiplicador = -1 AndAlso ObjFactura.Alfa3 = "DEV" AndAlso ObjFactura.TipoDocto = "Dev" Then
+ TipoMovimiento = Not TipoMovimiento
ConceptoContable = 314
importeMovimiento = importeMovimiento * -1
importeMX = importeMX * -1
@@ -3049,8 +3049,8 @@ Namespace Modelos
CveSubProyectoContabilizar = CveSubProyectoVenta
If tipoCambio > 1 Then Concepto += $" TC:{tipoCambio} ${importeMovimiento.FormatoNumero(2)}"
- If ObjFactura.TipoDocto = "Dev" Then
- TipoMovimiento = True
+ If ValorMultiplicador = -1 AndAlso ObjFactura.Alfa3 = "DEV" AndAlso ObjFactura.TipoDocto = "Dev" Then
+ TipoMovimiento = Not TipoMovimiento
ConceptoContable = 63
importeMovimiento = importeMovimiento * -1
importeMX = importeMX * -1
@@ -3085,8 +3085,8 @@ Namespace Modelos
FechaMovimiento = ObjFactura.FechaPago
PorcentajeImpuesto = TmpDTDetalle.MAX("PorcentajeIVA").ToDecimal
- If ObjFactura.TipoDocto = "Dev" Then
- TipoMovimiento = True
+ If ValorMultiplicador = -1 AndAlso ObjFactura.Alfa3 = "DEV" AndAlso ObjFactura.TipoDocto = "Dev" Then
+ TipoMovimiento = Not TipoMovimiento
ConceptoContable = 61
importeMovimiento = importeMovimiento * -1
importeMX = importeMX * -1
@@ -3102,39 +3102,39 @@ Namespace Modelos
If tipoCambio > 1 Then Concepto += $" TC:{tipoCambio} ${importeMovimiento.FormatoNumero(2)}"
End If
- If ObjFactura.TipoDocto = "Egs" Then
+ 'If ObjFactura.TipoDocto = "Egs" Then
- importeMovimiento = ObjFactura.IVA * ValorMultiplicador
- importeMX = Math.Round(importeMovimiento * tipoCambio * Multiplicador, 2)
- FechaMovimiento = ObjFactura.FechaPago
- PorcentajeImpuesto = TmpDTDetalle.MAX("PorcentajeIVA").ToDecimal
+ ' importeMovimiento = ObjFactura.IVA * ValorMultiplicador
+ ' importeMX = Math.Round(importeMovimiento * tipoCambio * Multiplicador, 2)
+ ' FechaMovimiento = ObjFactura.FechaPago
+ ' PorcentajeImpuesto = TmpDTDetalle.MAX("PorcentajeIVA").ToDecimal
- If importeMovimiento <> 0 Then
- 'IVA X TRASLADAR
- IdCtaIVAXTrasladar = If(IdCtaIVAXTrasladar > 0, IdCtaIVAXTrasladar, UsuarioActual.Empresa.IdCuentaIVAxTrasladar)
- CveCuentaIVAxTrasladar = If(CveCuentaIVAxTrasladar > 0, CveCuentaIVAxTrasladar, UsuarioActual.Empresa.CveCuentaIVAxTrasladar)
- Concepto = ObjConta.ObtenerConceptoEmpresa(UsuarioActual.CveEmpresa, 13, ObjFactura.Cliente.Nombre, $"{ObjFactura.Serie}-{ObjFactura.Folio}", FolioIE.ToString())
+ ' If importeMovimiento <> 0 Then
+ ' 'IVA X TRASLADAR
+ ' IdCtaIVAXTrasladar = If(IdCtaIVAXTrasladar > 0, IdCtaIVAXTrasladar, UsuarioActual.Empresa.IdCuentaIVAxTrasladar)
+ ' CveCuentaIVAxTrasladar = If(CveCuentaIVAxTrasladar > 0, CveCuentaIVAxTrasladar, UsuarioActual.Empresa.CveCuentaIVAxTrasladar)
+ ' Concepto = ObjConta.ObtenerConceptoEmpresa(UsuarioActual.CveEmpresa, 13, ObjFactura.Cliente.Nombre, $"{ObjFactura.Serie}-{ObjFactura.Folio}", FolioIE.ToString())
- If Not ObjConta.AddPrePolizasDetalle(ObjFactura.CvePrePoliza, TipoMovimiento, importeMovimiento, Referencia, 13, Concepto, Fecha, IdCtaIVAXTrasladar, -1, CveVenta:=ObjFactura.CveVenta, CveCliente:=CveCliente, CveIE:=-1, ImporteMX:=importeMX * Multiplicador, ImporteME:=If(tipoCambio = 1, 0, importeMovimiento), CveCuenta:=CveCuentaIVAxTrasladar, CveSubProyecto:=CveSubProyectoContabilizar, PorcentajeImpuesto:=PorcentajeImpuesto) Then
- ErrorPrepoliza = True
- Exit For
- End If
+ ' If Not ObjConta.AddPrePolizasDetalle(ObjFactura.CvePrePoliza, TipoMovimiento, importeMovimiento, Referencia, 13, Concepto, Fecha, IdCtaIVAXTrasladar, -1, CveVenta:=ObjFactura.CveVenta, CveCliente:=CveCliente, CveIE:=-1, ImporteMX:=importeMX * Multiplicador, ImporteME:=If(tipoCambio = 1, 0, importeMovimiento), CveCuenta:=CveCuentaIVAxTrasladar, CveSubProyecto:=CveSubProyectoContabilizar, PorcentajeImpuesto:=PorcentajeImpuesto) Then
+ ' ErrorPrepoliza = True
+ ' Exit For
+ ' End If
- 'IVA PAGADO
- IdCtaIVATrasladado = If(IdCtaIVATrasladado > 0, IdCtaIVATrasladado, UsuarioActual.Empresa.IdCuentaIVATrasladado)
- CveCuentaIVATrasladado = If(CveCuentaIVATrasladado > 0, CveCuentaIVATrasladado, UsuarioActual.Empresa.CveCuentaIVATrasladado)
- Concepto = ObjConta.ObtenerConceptoEmpresa(UsuarioActual.CveEmpresa, 61, ObjFactura.Cliente.Nombre, $"{ObjFactura.Serie}-{ObjFactura.Folio}", FolioIE.ToString())
+ ' 'IVA PAGADO
+ ' IdCtaIVATrasladado = If(IdCtaIVATrasladado > 0, IdCtaIVATrasladado, UsuarioActual.Empresa.IdCuentaIVATrasladado)
+ ' CveCuentaIVATrasladado = If(CveCuentaIVATrasladado > 0, CveCuentaIVATrasladado, UsuarioActual.Empresa.CveCuentaIVATrasladado)
+ ' Concepto = ObjConta.ObtenerConceptoEmpresa(UsuarioActual.CveEmpresa, 61, ObjFactura.Cliente.Nombre, $"{ObjFactura.Serie}-{ObjFactura.Folio}", FolioIE.ToString())
- If Not ObjConta.AddPrePolizasDetalle(ObjFactura.CvePrePoliza, Not TipoMovimiento, importeMovimiento, Referencia, 61, Concepto, Fecha, IdCtaIVATrasladado, -1, CveVenta:=ObjFactura.CveVenta, CveCliente:=CveCliente, CveIE:=-1, ImporteMX:=importeMX * Multiplicador, ImporteME:=If(tipoCambio = 1, 0, importeMovimiento), CveCuenta:=CveCuentaIVATrasladado, CveSubProyecto:=CveSubProyectoContabilizar, PorcentajeImpuesto:=PorcentajeImpuesto) Then
- ErrorPrepoliza = True
- Exit For
- End If
- End If
+ ' If Not ObjConta.AddPrePolizasDetalle(ObjFactura.CvePrePoliza, Not TipoMovimiento, importeMovimiento, Referencia, 61, Concepto, Fecha, IdCtaIVATrasladado, -1, CveVenta:=ObjFactura.CveVenta, CveCliente:=CveCliente, CveIE:=-1, ImporteMX:=importeMX * Multiplicador, ImporteME:=If(tipoCambio = 1, 0, importeMovimiento), CveCuenta:=CveCuentaIVATrasladado, CveSubProyecto:=CveSubProyectoContabilizar, PorcentajeImpuesto:=PorcentajeImpuesto) Then
+ ' ErrorPrepoliza = True
+ ' Exit For
+ ' End If
+ ' End If
- importeMovimiento = 0
- importeMX = 0
- End If
+ ' importeMovimiento = 0
+ ' importeMX = 0
+ 'End If
Case 38 'IEPS por Trasladar
@@ -3144,8 +3144,8 @@ Namespace Modelos
FechaMovimiento = ObjFactura.Fecha
CveSubProyectoContabilizar = CveSubProyectoVenta
- If ObjFactura.TipoDocto = "Dev" Then
- TipoMovimiento = True
+ If ValorMultiplicador = -1 AndAlso ObjFactura.Alfa3 = "DEV" AndAlso ObjFactura.TipoDocto = "Dev" Then
+ TipoMovimiento = Not TipoMovimiento
ConceptoContable = 39
importeMovimiento = importeMovimiento * -1
importeMX = importeMX * -1
@@ -3167,24 +3167,24 @@ Namespace Modelos
If tipoCambio > 1 Then Concepto += $" TC:{tipoCambio} ${importeMovimiento.FormatoNumero(2)}"
- If importeMovimiento <> 0 AndAlso ObjFactura.TipoDocto = "Egs" Then
- 'IEPS X TRASLADAR
- Concepto = ObjConta.ObtenerConceptoEmpresa(UsuarioActual.CveEmpresa, 38, ObjFactura.Cliente.Nombre, $"{ObjFactura.Serie}-{ObjFactura.Folio}", FolioIE.ToString())
- If Not ObjConta.AddPrePolizasDetalle(ObjFactura.CvePrePoliza, TipoMovimiento, importeMovimiento, Referencia, 38, Concepto, Fecha, UsuarioActual.Empresa.IdCuentaIEPSxTrasladar, -1, CveVenta:=ObjFactura.CveVenta, CveCliente:=CveCliente, CveIE:=-1, ImporteMX:=importeMX * Multiplicador, ImporteME:=If(tipoCambio = 1, 0, importeMovimiento), CveSubProyecto:=CveSubProyectoContabilizar) Then
- ErrorPrepoliza = True
- Exit For
- End If
+ 'If importeMovimiento <> 0 AndAlso ObjFactura.TipoDocto = "Egs" Then
+ ' 'IEPS X TRASLADAR
+ ' Concepto = ObjConta.ObtenerConceptoEmpresa(UsuarioActual.CveEmpresa, 38, ObjFactura.Cliente.Nombre, $"{ObjFactura.Serie}-{ObjFactura.Folio}", FolioIE.ToString())
+ ' If Not ObjConta.AddPrePolizasDetalle(ObjFactura.CvePrePoliza, TipoMovimiento, importeMovimiento, Referencia, 38, Concepto, Fecha, UsuarioActual.Empresa.IdCuentaIEPSxTrasladar, -1, CveVenta:=ObjFactura.CveVenta, CveCliente:=CveCliente, CveIE:=-1, ImporteMX:=importeMX * Multiplicador, ImporteME:=If(tipoCambio = 1, 0, importeMovimiento), CveSubProyecto:=CveSubProyectoContabilizar) Then
+ ' ErrorPrepoliza = True
+ ' Exit For
+ ' End If
- 'IEPS PAGADO
- Concepto = ObjConta.ObtenerConceptoEmpresa(UsuarioActual.CveEmpresa, 39, ObjFactura.Cliente.Nombre, $"{ObjFactura.Serie}-{ObjFactura.Folio}", FolioIE.ToString())
- If Not ObjConta.AddPrePolizasDetalle(ObjFactura.CvePrePoliza, Not TipoMovimiento, importeMovimiento, Referencia, 39, Concepto, Fecha, UsuarioActual.Empresa.IdCuentaIEPSTrasladado, -1, CveVenta:=ObjFactura.CveVenta, CveCliente:=CveCliente, CveIE:=-1, ImporteMX:=importeMX * Multiplicador, ImporteME:=If(tipoCambio = 1, 0, importeMovimiento), CveSubProyecto:=CveSubProyectoContabilizar) Then
- ErrorPrepoliza = True
- Exit For
- End If
+ ' 'IEPS PAGADO
+ ' Concepto = ObjConta.ObtenerConceptoEmpresa(UsuarioActual.CveEmpresa, 39, ObjFactura.Cliente.Nombre, $"{ObjFactura.Serie}-{ObjFactura.Folio}", FolioIE.ToString())
+ ' If Not ObjConta.AddPrePolizasDetalle(ObjFactura.CvePrePoliza, Not TipoMovimiento, importeMovimiento, Referencia, 39, Concepto, Fecha, UsuarioActual.Empresa.IdCuentaIEPSTrasladado, -1, CveVenta:=ObjFactura.CveVenta, CveCliente:=CveCliente, CveIE:=-1, ImporteMX:=importeMX * Multiplicador, ImporteME:=If(tipoCambio = 1, 0, importeMovimiento), CveSubProyecto:=CveSubProyectoContabilizar) Then
+ ' ErrorPrepoliza = True
+ ' Exit For
+ ' End If
- importeMovimiento = 0
- importeMX = 0
- End If
+ ' importeMovimiento = 0
+ ' importeMX = 0
+ 'End If
If tipoCambio > 1 Then Concepto += $" TC:{tipoCambio} ${importeMovimiento.FormatoNumero(2)}"
diff --git a/Inventarios/EntradasSalidas.aspx.vb b/Inventarios/EntradasSalidas.aspx.vb
index 9d1766958..e73ba8732 100644
--- a/Inventarios/EntradasSalidas.aspx.vb
+++ b/Inventarios/EntradasSalidas.aspx.vb
@@ -1451,11 +1451,17 @@ Partial Class Inventarios_EntradasSalidas
obs = DdlConcepto.SelectedItem.Text
If DdlPersonal.SelectedValue.ToEntero > 0 Then obs = obs & " - " & DdlPersonal.SelectedItem.Text
End If
+ Dim CveAlmacen As Integer = DdlAlmacen.SelectedValue.ToEntero
+
+ Dim CveModalidad As Integer = GlobalDTAlmacen(UsuarioActual.CveEmpresa, CveAlmacen:=CveAlmacen).FiltroPrimeroValor("CveModalidad").ToEntero()
+
+ Dim EsContabilizable As Boolean = (CveModalidad = 1)
Dim TotalCantidad As Double = DtMovimientos.SUMD("Cantidad")
Dim CvePrePoliza As Integer = ObjConta.AddPrePolizas("Inv/ES", 53, 0, 0, 1, TxtFecha.Text.ToDate, obs, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, CveTipoPoliza:=3)
- CveMovimiento = ObjInventario.AddMovimiento(DdlAlmacen.SelectedValue.ToEntero, DdlConcepto.SelectedValue.ToEntero, 1, Fecha, tFolio, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, -1, -1, SubProyecto, ActivoFijo, Guia:=TxtGuia.Text, Observaciones:=TxtObservaciones.Text, CvePersonal:=DdlPersonal.SelectedValue.ToEntero, Recibio:=TxtResponsable.Text.Trim, CveCliente:=CveCliente, CveClienteSucursal:=CveClienteSucursal, DepartamentoEntrega:=TxtDepartamentoEntrega.Text, PedidoContrato:=TxtPedidoContrato.Text, CveProveedor:=tCveProveedor)
+
+ CveMovimiento = ObjInventario.AddMovimiento(CveAlmacen, DdlConcepto.SelectedValue.ToEntero, 1, Fecha, tFolio, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, -1, -1, SubProyecto, ActivoFijo, Guia:=TxtGuia.Text, Observaciones:=TxtObservaciones.Text, CvePersonal:=DdlPersonal.SelectedValue.ToEntero, Recibio:=TxtResponsable.Text.Trim, CveCliente:=CveCliente, CveClienteSucursal:=CveClienteSucursal, DepartamentoEntrega:=TxtDepartamentoEntrega.Text, PedidoContrato:=TxtPedidoContrato.Text, CveProveedor:=tCveProveedor)
If CveMovimiento <= 0 OrElse CvePrePoliza <= 0 Then
@@ -1593,7 +1599,7 @@ Partial Class Inventarios_EntradasSalidas
End Select
- If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, TipoMovtoAlmacen, tValorInventario, TxtObservaciones.Text.Trim, 68, TxtObservaciones.Text.Trim, TxtFecha.Text.ToDate, idCtaContable, -1, CveMovimientoAlmacen:=CveMovimiento, ImporteMX:=tValorInventario, CveClasificacion:=CveClasificacion) Then
+ If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, TipoMovtoAlmacen, tValorInventario, TxtObservaciones.Text.Trim, 68, TxtObservaciones.Text.Trim, TxtFecha.Text.ToDate, idCtaContable, -1, CveMovimientoAlmacen:=CveMovimiento, ImporteMX:=tValorInventario, CveClasificacion:=CveClasificacion, Contabilizable:=EsContabilizable) Then
ErrorMovInv = True
Else
'Select Case DdlConcepto.SelectedValue.ToEntero
@@ -1610,7 +1616,7 @@ Partial Class Inventarios_EntradasSalidas
' End If
'Next
'Case Else
- If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, TipoMovtoOtro, tValorOtro, TxtObservaciones.Text.Trim, CveConceptoContable, TxtObservaciones.Text.Trim, TxtFecha.Text.ToDate, IdCtaContableOtro, -1, CveMovimientoAlmacen:=CveMovimiento, ImporteMX:=tValorOtro, CveSubProyecto:=tCveSubProyecto, CveClasificacion:=CveClasificacion) Then
+ If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, TipoMovtoOtro, tValorOtro, TxtObservaciones.Text.Trim, CveConceptoContable, TxtObservaciones.Text.Trim, TxtFecha.Text.ToDate, IdCtaContableOtro, -1, CveMovimientoAlmacen:=CveMovimiento, ImporteMX:=tValorOtro, CveSubProyecto:=tCveSubProyecto, CveClasificacion:=CveClasificacion, Contabilizable:=EsContabilizable) Then
ErrorMovInv = True
End If
'End Select
@@ -1624,8 +1630,8 @@ Partial Class Inventarios_EntradasSalidas
'DEVENGAR
Dim TotalPorDevengar As Double = 0
- 'cuando tiene AC y es salida de almacen, se manda al gasto
- If UsuarioActual.Empresa.UsaAC AndAlso (DdlConcepto.SelectedValue = "3") Then
+ 'cuando tiene AC y es salida de almacen, se manda al gasto, solo aplica si el almacen es contable
+ If UsuarioActual.Empresa.UsaAC AndAlso (DdlConcepto.SelectedValue = "3") AndAlso EsContabilizable Then
Dim DtII As DataTable = Nothing
Dim TotalDetalle As Double = 0.0
Dim Importe As Double = DtMovimientos.SUM("Total", "Estatus IN ('','U')")
@@ -3418,8 +3424,6 @@ Partial Class Inventarios_EntradasSalidas
End If
End If
-
-
IdCtaContable = GlobalDTAlmacen(UsuarioActual.CveEmpresa).FiltroPrimeroValor("IdCtaContable", $"CveAlmacen={DdlAlmacen.SelectedValue.ToEntero}").ToEntero
If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, MovAlmacen, DtCostos.SUMD("Total").RoundSQL, Concepto, 68, Concepto, TxtFecha.Text.ToDate, IdCtaContable, -1, CveVenta:=CveVenta, CveMovimientoAlmacen:=CveMovimiento, ImporteMX:=DtCostos.SUMD("Total").RoundSQL) Then
ErrorMovInv = True
@@ -3436,17 +3440,10 @@ Partial Class Inventarios_EntradasSalidas
Response.Redirect($"../Contabilidad/RegPrePoliza.aspx?CvePrePoliza={CvePrePolizaRegistrada}", True)
End If
-
Else
-
-
ObjInventario.Dispose()
ObjConta.Dispose()
-
End If
-
-
-
End Sub
#End Region
@@ -3677,10 +3674,16 @@ Partial Class Inventarios_EntradasSalidas
IdCuentaOtrosIngresos = 1319
End Select
+ Dim CveAlmacen As Integer = DdlAlmacenInventarioFisico.SelectedValue.ToEntero
+
+ Dim CveModalidad As Integer = GlobalDTAlmacen(UsuarioActual.CveEmpresa, CveAlmacen:=CveAlmacen).FiltroPrimeroValor("CveModalidad").ToEntero()
+
+ Dim EsContabilizable As Boolean = (CveModalidad = 1)
+
'MOVIMIENTO DE ENTRADA
If DtMovimientosEntradaInvFisico.Rows.Count > 0 Then
Dim FolioEntrada As Integer = ObjInventario.GetFolioSiguiente(32, UsuarioActual.CveEmpresa)
- CveMovimientoEntrada = ObjInventario.AddMovimiento(DdlAlmacenInventarioFisico.SelectedValue.ToEntero, 32, 1, Fecha, FolioEntrada, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, -1, -1, -1, -1, Observaciones:=TxtIFDescripcion.Text.Trim)
+ CveMovimientoEntrada = ObjInventario.AddMovimiento(CveAlmacen, 32, 1, Fecha, FolioEntrada, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, -1, -1, -1, -1, Observaciones:=TxtIFDescripcion.Text.Trim)
Else
CveMovimientoEntrada = -1
End If
@@ -3688,7 +3691,7 @@ Partial Class Inventarios_EntradasSalidas
'MOVIMIENTO DE SALIDA
If DtMovimientosSalidaInvFisico.Rows.Count > 0 Then
Dim FolioSalida As Integer = ObjInventario.GetFolioSiguiente(34, UsuarioActual.CveEmpresa)
- CveMovimientoSalida = ObjInventario.AddMovimiento(DdlAlmacenInventarioFisico.SelectedValue.ToEntero, 34, 1, Fecha, FolioSalida, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, -1, -1, -1, -1, CveMovimientoRelacionado:=CveMovimientoEntrada, Observaciones:=TxtIFDescripcion.Text.Trim)
+ CveMovimientoSalida = ObjInventario.AddMovimiento(CveAlmacen, 34, 1, Fecha, FolioSalida, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, -1, -1, -1, -1, CveMovimientoRelacionado:=CveMovimientoEntrada, Observaciones:=TxtIFDescripcion.Text.Trim)
End If
@@ -3779,7 +3782,7 @@ Partial Class Inventarios_EntradasSalidas
If ValorEntrada <= ValorSalida Then
TipoMovto = True : ValorEntrada = -ValorEntrada ' invierto su naturaleza
End If
- If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, TipoMovto, ValorEntrada, "", 68, tConcepto, Fecha, idCtaContableEntrada, -1, CveMovimientoAlmacen:=CveMovimientoEntrada, ImporteMX:=ValorEntrada) Then
+ If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, TipoMovto, ValorEntrada, "", 68, tConcepto, Fecha, idCtaContableEntrada, -1, CveMovimientoAlmacen:=CveMovimientoEntrada, ImporteMX:=ValorEntrada, Contabilizable:=EsContabilizable) Then
ErrorMovInv = True
Mensaje = "Ocurrió un error al guardar los movimientos contables de entrada"
End If
@@ -3791,14 +3794,14 @@ Partial Class Inventarios_EntradasSalidas
If ValorSalida < ValorEntrada Then
TipoMovto = False : ValorSalida = -ValorSalida ' invierto su naturaleza
End If
- If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, TipoMovto, ValorSalida, "", 68, tConcepto, Fecha, idCtaContableSalida, -1, CveMovimientoAlmacen:=CveMovimientoSalida, ImporteMX:=ValorSalida) Then
+ If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, TipoMovto, ValorSalida, "", 68, tConcepto, Fecha, idCtaContableSalida, -1, CveMovimientoAlmacen:=CveMovimientoSalida, ImporteMX:=ValorSalida, Contabilizable:=EsContabilizable) Then
ErrorMovInv = True
Mensaje = "Ocurrió un error al guardar los movimientos contables de salida"
End If
End If
If ValorEntrada >= ValorSalida Then
- If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, True, ValorEntrada + ValorSalida, "", 260, tConcepto, Fecha, IdCuentaOtrosIngresos, -1, CveMovimientoAlmacen:=CveMovimientoSalida, CveSubProyecto:=tCveSubProyecto, ImporteMX:=ValorEntrada + ValorSalida) Then
+ If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, True, ValorEntrada + ValorSalida, "", 260, tConcepto, Fecha, IdCuentaOtrosIngresos, -1, CveMovimientoAlmacen:=CveMovimientoSalida, CveSubProyecto:=tCveSubProyecto, ImporteMX:=ValorEntrada + ValorSalida, Contabilizable:=EsContabilizable) Then
ErrorMovInv = True
Mensaje = "Ocurrió un error al guardar los movimientos contables de ajuste de ingreso"
End If
@@ -3818,7 +3821,7 @@ Partial Class Inventarios_EntradasSalidas
tIdCtaGasto = 1321
End Select
- If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, False, ValorSalida + ValorEntrada, "", 51, tConcepto, Fecha, tIdCtaGasto, -1, CveMovimientoAlmacen:=CveMovimientoSalida, CveClasificacion:=tCveClasificacion, CveSubProyecto:=tCveSubProyecto, ImporteMX:=ValorSalida + ValorEntrada) Then
+ If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, False, ValorSalida + ValorEntrada, "", 51, tConcepto, Fecha, tIdCtaGasto, -1, CveMovimientoAlmacen:=CveMovimientoSalida, CveClasificacion:=tCveClasificacion, CveSubProyecto:=tCveSubProyecto, ImporteMX:=ValorSalida + ValorEntrada, Contabilizable:=EsContabilizable) Then
ErrorMovInv = True
Mensaje = "Ocurrió un error al guardar los movimientos contables de ajuste de salida"
End If
diff --git a/Inventarios/RecepcionAlmacen.aspx.vb b/Inventarios/RecepcionAlmacen.aspx.vb
index 9cf5cae5f..b6642b36d 100644
--- a/Inventarios/RecepcionAlmacen.aspx.vb
+++ b/Inventarios/RecepcionAlmacen.aspx.vb
@@ -2067,7 +2067,7 @@ Partial Class Inventarios_RecepcionAlmacen
End Sub
- Private Function GeneraPrePolizaSalidaEntregaDirecta(CveMovimiento As Integer, ByRef ObjInventario As ClsInventarios, ByRef ObjConta As ClsContabilidad, ByRef ObjContaContPAQ As ClsContPAQi) As Boolean
+ Private Function GeneraPrePolizaSalidaEntregaDirecta(CveMovimiento As Integer, ByRef ObjInventario As ClsInventarios, ByRef ObjConta As ClsContabilidad, ByRef ObjContaContPAQ As ClsContPAQi, EsContabilizable As Boolean) As Boolean
Dim Retorno As Boolean = True
Try
Dim DtCostos As DataTable = Nothing
@@ -2102,14 +2102,14 @@ Partial Class Inventarios_RecepcionAlmacen
IdCtaContable = GlobalDTClasificaciones(UsuarioActual.CveEmpresa).FiltroPrimeroValor("IdCuentaCostos", $"CveClasificacion = {RowInv("CveClasificacion")}").ToEntero
End If
- If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, Not MovAlmacen, ValorInventario, Concepto, tCveConcepto, Concepto, TxtFecha.Text.ToDate, IdCtaContable, -1, CveVenta:=CveVenta, CveClasificacion:=RowInv("CveClasificacion").ToString.ToEntero, CveMovimientoAlmacen:=CveMovimiento, ImporteMX:=ValorInventario, CveSubProyecto:=tCveSubProyecto) Then
+ If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, Not MovAlmacen, ValorInventario, Concepto, tCveConcepto, Concepto, TxtFecha.Text.ToDate, IdCtaContable, -1, CveVenta:=CveVenta, CveClasificacion:=RowInv("CveClasificacion").ToString.ToEntero, CveMovimientoAlmacen:=CveMovimiento, ImporteMX:=ValorInventario, CveSubProyecto:=tCveSubProyecto, Contabilizable:=EsContabilizable) Then
Retorno = False
Exit For
End If
Next
IdCtaContable = GlobalDTAlmacen(UsuarioActual.CveEmpresa).FiltroPrimeroValor("IdCtaContable", $"CveAlmacen={CveAlmacen}").ToEntero
- If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, MovAlmacen, DtCostos.SUMD("Total").RoundSQL, Concepto, 68, Concepto, TxtFecha.Text.ToDate, IdCtaContable, -1, CveVenta:=CveVenta, CveMovimientoAlmacen:=CveMovimiento, ImporteMX:=DtCostos.SUMD("Total").RoundSQL) Then
+ If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, MovAlmacen, DtCostos.SUMD("Total").RoundSQL, Concepto, 68, Concepto, TxtFecha.Text.ToDate, IdCtaContable, -1, CveVenta:=CveVenta, CveMovimientoAlmacen:=CveMovimiento, ImporteMX:=DtCostos.SUMD("Total").RoundSQL, Contabilizable:=EsContabilizable) Then
Retorno = False
End If
@@ -2202,8 +2202,14 @@ Partial Class Inventarios_RecepcionAlmacen
If HdnTipoDocto.Value <> "Fac" Then RecibidaCompleta = False
+ Dim CveAlmacen As Integer = DdlAlmacen.SelectedValue.ToEntero
+
+ Dim CveModalidad As Integer = GlobalDTAlmacen(UsuarioActual.CveEmpresa, CveAlmacen:=CveAlmacen).FiltroPrimeroValor("CveModalidad").ToEntero()
+
+ Dim EsContabilizable As Boolean = (CveModalidad = 1)
+
'ENTRADA ALMACÉN
- CveMovimiento = ObjInventario.AddMovimiento(DdlAlmacen.SelectedValue.ToEntero, If(TipoMovimiento > 1, 13, 2), 1, FechaMovto, -1, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa,
+ CveMovimiento = ObjInventario.AddMovimiento(CveAlmacen, If(TipoMovimiento > 1, 13, 2), 1, FechaMovto, -1, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa,
CveCompraSurtir, -1, -1, -1, Observaciones:=TxtObservaciones.Text.Trim, TipoCambio:=If(DdlMonedaTC.SelectedValue.ToEntero = 1, -1, TipoCambio),
MovimientoFijo:=If(TipoMovimiento = 2, True, False), Remision:=TxtRemision.Text, Modulo:="RA/G1")
If CveMovimiento > 0 Then
@@ -2345,7 +2351,7 @@ Partial Class Inventarios_RecepcionAlmacen
End If
If Not ErrorMovInv Then
- If Not GeneraPrePolizaSalidaEntregaDirecta(CveMovtoSalidaDirecta, ObjInventario, ObjConta, ObjContaContPAQ) Then
+ If Not GeneraPrePolizaSalidaEntregaDirecta(CveMovtoSalidaDirecta, ObjInventario, ObjConta, ObjContaContPAQ, EsContabilizable) Then
ErrorMovInv = True
Exit For
End If
@@ -2453,7 +2459,7 @@ Partial Class Inventarios_RecepcionAlmacen
End If
'DEVENGAR AC
- If Not ErrorMovInv AndAlso UsuarioActual.Empresa.UsaAC Then
+ If Not ErrorMovInv AndAlso UsuarioActual.Empresa.UsaAC AndAlso EsContabilizable Then
Dim IDPoliza As Integer
Dim TotalDetalle As Double = 0.0
Dim TotalPorDevengar = 0.0
@@ -2714,7 +2720,7 @@ Partial Class Inventarios_RecepcionAlmacen
Dim CveSubProyecto As Integer = GlobalDTAlmacen(UsuarioActual.CveEmpresa).FiltroPrimeroValor("CveSubProyecto", $"CveAlmacen= {DdlAlmacen.SelectedValue}").ToEntero
CvePrePoliza = ObjConta.AddPrePolizas("Inventario/RecepcionAlmacen", 74, TotalCosto, TotalCosto, 1, Fecha, ProveedorNombre, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa)
If CvePrePoliza > 0 Then
- If ObjConta.AddPrePolizasDetalle(CvePrePoliza, False, TotalCosto, SerieFolio, 68, SerieFolio, Fecha, IdCtaContableAlmacen, -1, CveCompra:=CveCompraSurtir, CveSubProyecto:=CveSubProyecto, CveOC:=CveOCSurtir, CveProveedor:=CveProveedor, CveMovimientoAlmacen:=CveMovimiento, ImporteMX:=TotalCosto, CveCuenta:=CveCuentaAlmacen) Then
+ If ObjConta.AddPrePolizasDetalle(CvePrePoliza, False, TotalCosto, SerieFolio, 68, SerieFolio, Fecha, IdCtaContableAlmacen, -1, CveCompra:=CveCompraSurtir, CveSubProyecto:=CveSubProyecto, CveOC:=CveOCSurtir, CveProveedor:=CveProveedor, CveMovimientoAlmacen:=CveMovimiento, ImporteMX:=TotalCosto, CveCuenta:=CveCuentaAlmacen, Contabilizable:=EsContabilizable) Then
'AGREGA POR CONCEPTO POR CVEOCDETALLE
If CveOCSurtir > 0 Then
@@ -2734,8 +2740,8 @@ Partial Class Inventarios_RecepcionAlmacen
If CveMoneda <> 1 AndAlso UsaComplementariaFleteImportaciones Then
'COMPLEMENTARIA
- If ObjConta.AddPrePolizasDetalle(CvePrePoliza, True, TotalCostoExtranjero, SerieFolio, CveConceptoContableCostoME, SerieFolio, Fecha, IdCtaContableRecepcionME, -1, CveCompra:=CveCompraSurtir, CveOC:=CveOCSurtir, CveSubProyecto:=CveSubProyecto, CveProveedor:=CveProveedor, CveMovimientoAlmacen:=CveMovimiento, ImporteMX:=TotalCostoExtranjero, ImporteME:=TotalCostoExtranjero, TipoCambio:=TipoCambio.ToDecimal, CveOCDetalle:=Dr("CveOrdenCompraDetalle").ToString.ToEntero) Then
- If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, True, TotalCostoDetalle - TotalCostoExtranjero, SerieFolio, CveConceptoContableCostoComplementaria, SerieFolio, Fecha, IdCtaContableRecepcionComplementaria, -1, CveCompra:=CveCompraSurtir, CveOC:=CveOCSurtir, CveProveedor:=CveProveedor, CveSubProyecto:=CveSubProyecto, CveMovimientoAlmacen:=CveMovimiento, ImporteMX:=TotalCostoDetalle - TotalCostoExtranjero, ImporteME:=TotalCostoExtranjero, TipoCambio:=TipoCambio.ToDecimal, CveOCDetalle:=Dr("CveOrdenCompraDetalle").ToString.ToEntero) Then
+ If ObjConta.AddPrePolizasDetalle(CvePrePoliza, True, TotalCostoExtranjero, SerieFolio, CveConceptoContableCostoME, SerieFolio, Fecha, IdCtaContableRecepcionME, -1, CveCompra:=CveCompraSurtir, CveOC:=CveOCSurtir, CveSubProyecto:=CveSubProyecto, CveProveedor:=CveProveedor, CveMovimientoAlmacen:=CveMovimiento, ImporteMX:=TotalCostoExtranjero, ImporteME:=TotalCostoExtranjero, TipoCambio:=TipoCambio.ToDecimal, CveOCDetalle:=Dr("CveOrdenCompraDetalle").ToString.ToEntero, Contabilizable:=EsContabilizable) Then
+ If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, True, TotalCostoDetalle - TotalCostoExtranjero, SerieFolio, CveConceptoContableCostoComplementaria, SerieFolio, Fecha, IdCtaContableRecepcionComplementaria, -1, CveCompra:=CveCompraSurtir, CveOC:=CveOCSurtir, CveProveedor:=CveProveedor, CveSubProyecto:=CveSubProyecto, CveMovimientoAlmacen:=CveMovimiento, ImporteMX:=TotalCostoDetalle - TotalCostoExtranjero, ImporteME:=TotalCostoExtranjero, TipoCambio:=TipoCambio.ToDecimal, CveOCDetalle:=Dr("CveOrdenCompraDetalle").ToString.ToEntero, Contabilizable:=EsContabilizable) Then
ErrorMovInv = True
Exit For
End If
@@ -2758,15 +2764,15 @@ Partial Class Inventarios_RecepcionAlmacen
If CveMoneda <> 1 AndAlso UsaComplementariaFleteImportaciones Then
'COMPLEMENTARIA
- If ObjConta.AddPrePolizasDetalle(CvePrePoliza, True, TotalCostoExtranjero, SerieFolio, CveConceptoContableCostoME, SerieFolio, Fecha, IdCtaContableRecepcionME, -1, CveCompra:=CveCompraSurtir, CveOC:=CveOCSurtir, CveProveedor:=CveProveedor, CveMovimientoAlmacen:=CveMovimiento, ImporteMX:=TotalCostoExtranjero, ImporteME:=TotalCostoExtranjero, TipoCambio:=TipoCambio.ToDecimal) Then
- If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, True, TotalCosto - TotalCostoExtranjero, SerieFolio, CveConceptoContableCostoComplementaria, SerieFolio, Fecha, IdCtaContableRecepcionComplementaria, -1, CveCompra:=CveCompraSurtir, CveOC:=CveOCSurtir, CveProveedor:=CveProveedor, CveMovimientoAlmacen:=CveMovimiento, ImporteMX:=TotalCosto - TotalCostoExtranjero, ImporteME:=TotalCostoExtranjero, TipoCambio:=TipoCambio.ToDecimal) Then
+ If ObjConta.AddPrePolizasDetalle(CvePrePoliza, True, TotalCostoExtranjero, SerieFolio, CveConceptoContableCostoME, SerieFolio, Fecha, IdCtaContableRecepcionME, -1, CveCompra:=CveCompraSurtir, CveOC:=CveOCSurtir, CveProveedor:=CveProveedor, CveMovimientoAlmacen:=CveMovimiento, ImporteMX:=TotalCostoExtranjero, ImporteME:=TotalCostoExtranjero, TipoCambio:=TipoCambio.ToDecimal, Contabilizable:=EsContabilizable) Then
+ If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, True, TotalCosto - TotalCostoExtranjero, SerieFolio, CveConceptoContableCostoComplementaria, SerieFolio, Fecha, IdCtaContableRecepcionComplementaria, -1, CveCompra:=CveCompraSurtir, CveOC:=CveOCSurtir, CveProveedor:=CveProveedor, CveMovimientoAlmacen:=CveMovimiento, ImporteMX:=TotalCosto - TotalCostoExtranjero, ImporteME:=TotalCostoExtranjero, TipoCambio:=TipoCambio.ToDecimal, Contabilizable:=EsContabilizable) Then
ErrorMovInv = True
End If
Else
ErrorMovInv = True
End If
Else
- If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, True, TotalCosto, SerieFolio, CveConceptoContableCosto, SerieFolio, Fecha, IdCtaContableRecepcion, -1, CveCompra:=CveCompraSurtir, CveOC:=CveOCSurtir, CveProveedor:=CveProveedor, CveMovimientoAlmacen:=CveMovimiento, ImporteMX:=TotalCosto, CveCuenta:=-1) Then
+ If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, True, TotalCosto, SerieFolio, CveConceptoContableCosto, SerieFolio, Fecha, IdCtaContableRecepcion, -1, CveCompra:=CveCompraSurtir, CveOC:=CveOCSurtir, CveProveedor:=CveProveedor, CveMovimientoAlmacen:=CveMovimiento, ImporteMX:=TotalCosto, CveCuenta:=-1, Contabilizable:=EsContabilizable) Then
ErrorMovInv = True
End If
End If
@@ -2881,10 +2887,10 @@ Partial Class Inventarios_RecepcionAlmacen
If Not ErrorMovInv Then
CvePrePoliza = ObjConta.AddPrePolizas("Inventario/RecepcionAlmacen-NC", 74, TotalCosto, TotalCosto, 1, Fecha, ProveedorNombre, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa)
If CvePrePoliza > 0 Then
- If ObjConta.AddPrePolizasDetalle(CvePrePoliza, False, TotalNC, SerieFolio, CveConceptoContableNC, SerieFolio, Fecha, IdCtaContableNC, -1, CveCompra:=CveCompraSurtir, CveProveedor:=CveProveedor, CveMovimientoAlmacen:=CveMovimiento, ImporteMX:=TotalNC) Then
- If ObjConta.AddPrePolizasDetalle(CvePrePoliza, False, TotalCosto * -1, SerieFolio, 68, SerieFolio, Fecha, IdCtaContableAlmacen, -1, CveCompra:=CveCompraSurtir, CveProveedor:=CveProveedor, CveMovimientoAlmacen:=CveMovimiento, ImporteMX:=TotalCosto * -1, CveCuenta:=CveCuentaAlmacen) Then
+ If ObjConta.AddPrePolizasDetalle(CvePrePoliza, False, TotalNC, SerieFolio, CveConceptoContableNC, SerieFolio, Fecha, IdCtaContableNC, -1, CveCompra:=CveCompraSurtir, CveProveedor:=CveProveedor, CveMovimientoAlmacen:=CveMovimiento, ImporteMX:=TotalNC, Contabilizable:=EsContabilizable) Then
+ If ObjConta.AddPrePolizasDetalle(CvePrePoliza, False, TotalCosto * -1, SerieFolio, 68, SerieFolio, Fecha, IdCtaContableAlmacen, -1, CveCompra:=CveCompraSurtir, CveProveedor:=CveProveedor, CveMovimientoAlmacen:=CveMovimiento, ImporteMX:=TotalCosto * -1, CveCuenta:=CveCuentaAlmacen, Contabilizable:=EsContabilizable) Then
If DifCostoNC <> 0 Then
- If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, True, DifCostoNC * -1, SerieFolio, 69, SerieFolio, Fecha, IdCtaContableClasificacion, -1, CveClasificacion:=CveClasificacionDifCostoNC, CveCompra:=CveCompraSurtir, CveProveedor:=CveProveedor, CveMovimientoAlmacen:=CveMovimiento, ImporteMX:=DifCostoNC * -1, CveCuenta:=CveCuentaClasificacion) Then
+ If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, True, DifCostoNC * -1, SerieFolio, 69, SerieFolio, Fecha, IdCtaContableClasificacion, -1, CveClasificacion:=CveClasificacionDifCostoNC, CveCompra:=CveCompraSurtir, CveProveedor:=CveProveedor, CveMovimientoAlmacen:=CveMovimiento, ImporteMX:=DifCostoNC * -1, CveCuenta:=CveCuentaClasificacion, Contabilizable:=EsContabilizable) Then
ErrorMovInv = True
End If
End If
diff --git a/OC/CatEstatus.aspx.vb b/OC/CatEstatus.aspx.vb
index 0ee5d010d..84303384c 100644
--- a/OC/CatEstatus.aspx.vb
+++ b/OC/CatEstatus.aspx.vb
@@ -165,16 +165,27 @@ Partial Class OC_CatEstatus
Private Sub BtnGuardar_Click(sender As Object, e As EventArgs) Handles BtnGuardar.Click
Dim TieneError = False
- Dim ObjEstatus As New ClsOC
+ Dim ObjEstatus As New ClsOC
+
+ 'No quitar transacción la transacción es por que el update puede generar recursividad en la vista Vw_OC_Estatus error 530
+ ObjEstatus.IniciaTransacSQL()
+
If HdnModalidad.Value = "I" Then
If Not ObjEstatus.AddEstatus(TxtEstatus.Text.Trim, DdlTipo.SelectedValue.ToString, DdlEstatusSiguiente.SelectedValue.ToEntero, DdlTipoTermino.SelectedValue.ToEntero, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa) Then
TieneError = True
End If
Else
- If Not ObjEstatus.UpdateEstatus(TxtEstatus.Text.Trim, DdlTipo.SelectedValue.ToString, DdlEstatusSiguiente.SelectedValue.ToEntero, DdlTipoTermino.SelectedValue.ToEntero, ChkEstatus.Checked, ChkCancelable.Checked, CveEstatus) Then
+ If Not ObjEstatus.UpdateEstatus(TxtEstatus.Text.Trim, DdlTipo.SelectedValue.ToString, DdlEstatusSiguiente.SelectedValue.ToEntero, DdlTipoTermino.SelectedValue.ToEntero, ChkEstatus.Checked, ChkCancelable.Checked, CveEstatus, DdlEstatusSiguiente.SelectedItem.Text) Then
TieneError = True
End If
End If
+
+ If TieneError Then
+ ObjEstatus.RollBack()
+ Else
+ ObjEstatus.Commit()
+ End If
+
ObjEstatus.Dispose()
If Not TieneError Then
@@ -189,7 +200,7 @@ Partial Class OC_CatEstatus
RegistraScript(String.Format("$('#{0}').modal('hide');", "DivAgregarEstatus"))
CargaDatos()
Else
- Alert("Ocurrió un error al guardar/editar estatus de órden de compra", TipoMensaje.MsgError)
+ 'Alert("Ocurrió un error al guardar/editar estatus de órden de compra", TipoMensaje.MsgError)
End If
End Sub
diff --git a/TareasProgramadas/Tareas119.ashx b/TareasProgramadas/Tareas119.ashx
index bc0290609..49543b657 100644
--- a/TareasProgramadas/Tareas119.ashx
+++ b/TareasProgramadas/Tareas119.ashx
@@ -8,7 +8,8 @@ using System.IO;
using System.Web.Services;
using System.Web.Services.Protocols;
using GemBox.Spreadsheet;
-using System.Data;
+using System.Data;
+using System.Text;
public class TareasJam : IHttpHandler
{
@@ -46,6 +47,9 @@ public class TareasJam : IHttpHandler
private bool EjecutaThalamus(int CveEmpresa)
{
+ bool Respuesta = false;
+ StringBuilder SBLog = new StringBuilder();
+
ClsGenerales ObjGenerales = new ClsGenerales();
DataTable DTProductos = new DataTable();
@@ -53,53 +57,97 @@ public class TareasJam : IHttpHandler
DataTable DTClientes = new DataTable();
DataTable DTAlmacenes = new DataTable();
+ string FTPServer = "ftp://127.0.0.1/";
+ string TFPUsr = "Toor";
+ string FTPPass = "agj-3500";
+
bool ErrorProceso = false;
+ SBLog.AppendLine("Consultas
");
+ SBLog.AppendLine("
| Consulta | Registros |
");
+
if (ObjGenerales.GetJAMCorveta(1))
{
DTProductos = ObjGenerales.DtResultados.Copy();
+ SBLog.AppendLine($"| Productos | {DTProductos.Rows.Count} |
");
+ }
+ else {
+ ErrorProceso = true;
+ SBLog.AppendLine($"| Productos | Error al consultar |
");
}
- else { ErrorProceso = true; }
- if (ObjGenerales.GetJAMCorveta(2))
+ if (ObjGenerales.GetJAMCorveta(2) & ErrorProceso == false)
{
DTVentas = ObjGenerales.DtResultados.Copy();
+ SBLog.AppendLine($"Ventas | {DTVentas.Rows.Count} |
");
+ }
+ else
+ {
+ ErrorProceso = true;
+ SBLog.AppendLine($"| Ventas | Error al consultar |
");
}
- else { ErrorProceso = true; }
- if (ObjGenerales.GetJAMCorveta(3))
+ if (ObjGenerales.GetJAMCorveta(3) & ErrorProceso == false)
{
DTClientes = ObjGenerales.DtResultados.Copy();
- }
- else { ErrorProceso = true; }
+ SBLog.AppendLine($"| Clientes | {DTClientes.Rows.Count} |
");
- if (ObjGenerales.GetJAMCorveta(4))
+ }
+ else {
+ ErrorProceso = true;
+ SBLog.AppendLine($"| Clientes | Error al consultar |
");
+ }
+
+ if (ObjGenerales.GetJAMCorveta(4) & ErrorProceso == false)
{
DTAlmacenes = ObjGenerales.DtResultados.Copy();
+ SBLog.AppendLine($"| Almacenes | {DTAlmacenes.Rows.Count} |
");
}
- else { ErrorProceso = true; }
+ else {
+ ErrorProceso = true;
+ SBLog.AppendLine($"| Almacenes | Error al consultar |
");
+ }
+
+ SBLog.AppendLine("
");
+ SBLog.AppendLine("
");
ObjGenerales.Dispose();
- DTProductos.Columns[0].ColumnName = "Código Producto Interno ";
- DTProductos.Columns[1].ColumnName = "Nombre del Producto";
- DTProductos.Columns[2].ColumnName = "Presentación";
- DTProductos.AcceptChanges();
+ if (!ErrorProceso)
+ {
+
+ try
+ {
+
+ DTProductos.Columns[0].ColumnName = "Código Producto Interno ";
+ DTProductos.Columns[1].ColumnName = "Nombre del Producto";
+ DTProductos.Columns[2].ColumnName = "Presentación";
+ DTProductos.AcceptChanges();
- DTClientes.Columns[4].ColumnName = "address.countryId";
- DTClientes.Columns[5].ColumnName = "address.stateId";
- DTClientes.Columns[6].ColumnName = "address.city";
- DTClientes.Columns[7].ColumnName = "address.street1";
- DTClientes.Columns[8].ColumnName = "address.street2";
- DTClientes.Columns[9].ColumnName = "address.postalCode";
- DTClientes.Columns[9].ColumnName = "phone.intCode";
- DTClientes.Columns[9].ColumnName = "phone.areaCode";
- DTClientes.Columns[9].ColumnName = "phone.number";
- DTClientes.Dispose();
+ DTClientes.Columns[4].ColumnName = "address.countryId";
+ DTClientes.Columns[5].ColumnName = "address.stateId";
+ DTClientes.Columns[6].ColumnName = "address.city";
+ DTClientes.Columns[7].ColumnName = "address.street1";
+ DTClientes.Columns[8].ColumnName = "address.street2";
+ DTClientes.Columns[9].ColumnName = "address.postalCode";
+ DTClientes.Columns[9].ColumnName = "phone.intCode";
+ DTClientes.Columns[9].ColumnName = "phone.areaCode";
+ DTClientes.Columns[9].ColumnName = "phone.number";
+ DTClientes.Dispose();
+
+ DTVentas.Columns.RemoveAt(7);
+ DTVentas.AcceptChanges();
+ }
+ catch (Exception e)
+ {
+ SBLog.AppendLine("Error al renombrar columnas");
+ }
+
+
+ }
+
- DTVentas.Columns.RemoveAt(7);
- DTVentas.AcceptChanges();
if (!ErrorProceso)
@@ -107,12 +155,7 @@ public class TareasJam : IHttpHandler
string RutaProductos = $@"{ HttpContext.Current.Server.MapPath("~") }Temp\Productos{DateTime.Now.ToString("yyyyMMdd")}.xlsx";
string RutaVentas = $@"{ HttpContext.Current.Server.MapPath("~") }Temp\Ventas{DateTime.Now.ToString("yyyyMMdd")}.xlsx";
string RutaClientes = $@"{ HttpContext.Current.Server.MapPath("~") }Temp\Clientes{DateTime.Now.ToString("yyyyMMdd")}.xlsx";
- string RutaAlmacenes = $@"{ HttpContext.Current.Server.MapPath("~") }Temp\Almacenes{DateTime.Now.ToString("yyyyMMdd")}.xlsx";
-
-
- string FTPServer = "ftp://127.0.0.1/";
- string TFPUsr = "Toor";
- string FTPPass = "agj-3500";
+ string RutaAlmacenes = $@"{ HttpContext.Current.Server.MapPath("~") }Temp\Almacenes{DateTime.Now.ToString("yyyyMMdd")}.xlsx";
SpreadsheetInfo.SetLicense(Extensiones.ModExtensiones.SerialGemBoxSpreadsheet());
@@ -160,18 +203,30 @@ public class TareasJam : IHttpHandler
var FInfoClientes = new FileInfo(RutaClientes);
var FInfoAlmacenes = new FileInfo(RutaAlmacenes);
-
bool CargaProductos = false;
bool CargaVentas = false;
bool CargaClientes = false;
bool CargaAlmacenes = false;
+ SBLog.AppendLine("Cargas
");
+ SBLog.AppendLine(" | Archivo | Estado |
");
+
CargaProductos = CargarArchivos(FInfoProductos, FTPServer, TFPUsr, FTPPass);
+
if (CargaProductos)
{
CargaProductos = VerificarArchivo(FInfoProductos, FInfoProductos.Length, FTPServer, TFPUsr, FTPPass);
}
+ if (CargaProductos)
+ {
+ SBLog.AppendLine($"| Productos | ok |
");
+ }
+ else
+ {
+ SBLog.AppendLine($"| Productos | Error carga |
");
+ }
+
if (CargaProductos)
{
CargaVentas = CargarArchivos(FInfoVentas, FTPServer, TFPUsr, FTPPass);
@@ -181,6 +236,14 @@ public class TareasJam : IHttpHandler
}
}
+ if (CargaVentas)
+ {
+ SBLog.AppendLine($"| Ventas | ok |
");
+ }else
+ {
+ SBLog.AppendLine($"| Ventas | Error carga |
");
+ }
+
if (CargaProductos & CargaVentas)
{
CargaClientes = CargarArchivos(FInfoClientes, FTPServer, TFPUsr, FTPPass);
@@ -190,6 +253,13 @@ public class TareasJam : IHttpHandler
}
}
+ if (CargaClientes)
+ {
+ SBLog.AppendLine($"| Clientes | ok |
");
+ }else
+ {
+ SBLog.AppendLine($"| Clientes | Error carga |
");
+ }
if (CargaProductos & CargaVentas& CargaClientes )
{
@@ -200,25 +270,60 @@ public class TareasJam : IHttpHandler
}
}
+ if (CargaAlmacenes)
+ {
+ SBLog.AppendLine($"| Almacenes | ok |
");
+ }else
+ {
+ SBLog.AppendLine($"| Almacenes | Error carga |
");
+ }
+
if (CargaProductos & CargaVentas & CargaClientes & CargaAlmacenes)
{
- return true;
+ Respuesta = true;
}
else
{
- return false;
+ Respuesta = false;
}
+ SBLog.AppendLine("
");
+
}
else
{
- return false;
+ Respuesta = false;
}
+
+ string Cuerpo = Respuesta ? $"Correcto
Tarea de carga de archios Corteva realizada correctamente
{SBLog.ToString()}" : $"Error
Error tarea de carga de archios Corteva
{SBLog.ToString()}" ;
+
+ MandaCorreo(Cuerpo, Respuesta);
+
+ return Respuesta;
+
}
+ private void MandaCorreo(string Cuerpo, bool ErrorProceso)
+ {
+
+ try
+ {
+ ClsSisMail Correo = new ClsSisMail();
+ string Para = "julian@adssistemas.mx;rene.molina@adssistemas.mx;oscar.irigoyen@adssistemas.mx";
+ //string Para = "oscar.irigoyen@adssistemas.mx";
+ string Asunto = ErrorProceso ? $"Carga Layout Corteva {DateTime.Now.ToString("yyyy-MM-dd")}" : $"Carga Layout Corteva Error {DateTime.Now.ToString("yyyy-MM-dd")}";
+
+ Correo.SendMail(ClsPaginas.EmpresaNotificaciones, Para, Asunto, Cuerpo);
+
+ }catch(Exception ex)
+ {
+ Extensiones.ModExtensiones.GuardaLog(null,$"Error Tareas Programadas 119 error enviar mail --> {ex.Message} ");
+ }
+ }
+
private bool CargarArchivos(FileInfo FInfo, string FTPServer, string FTPUsr, string FTPPass)
{
diff --git a/Ventas/Ventas.aspx b/Ventas/Ventas.aspx
index 708fce0c6..3efab29bb 100644
--- a/Ventas/Ventas.aspx
+++ b/Ventas/Ventas.aspx
@@ -3578,7 +3578,7 @@
+ DataKeyNames="ISTotal,Saldo,CveIE,Folio,Tipo,CveVenta,CveConceptoContable,CveConceptoContableAmor, TotalAnticipo, SubTotalAnticipo, IVAAnticipo,IEPS, ImpuestosLocalesAnticipo, SubTotalAmortizacion, SubTotal, Original, IVA, RetIVA, RetISR, IdCtaContableNC,FolioFiscal, CveClasificacionNC, IdCtaContableNCSIG, TipoCambio,TipoCambioPago,TipoCambioHoy, CveMoneda,Fecha,SaldoSubTotal,SaldoConImpuestos,RegresarImpuesto">
diff --git a/Ventas/Ventas.aspx.vb b/Ventas/Ventas.aspx.vb
index 20b47ce93..50331a465 100644
--- a/Ventas/Ventas.aspx.vb
+++ b/Ventas/Ventas.aspx.vb
@@ -10970,7 +10970,7 @@ Partial Class Ventas
'SI LA FACTURA ESTA PAGADA EN SU TOTALIDAD DEBE REGRESAR EL IMPUESTO
If (ObjFacturaNC IsNot Nothing AndAlso ObjFacturaNC.Pagado > 0) AndAlso ObjFactura.TipoDocto = "Dev" Then
- TipoMovimiento = True
+ TipoMovimiento = Not TipoMovimiento
ConceptoContable = 62
importeMovimiento = importeMovimiento * -1
importeMX = importeMX * -1
@@ -11009,7 +11009,7 @@ Partial Class Ventas
'SI LA FACTURA ESTA PAGADA EN SU TOTALIDAD DEBE REGRESAR EL IMPUESTO
If (ObjFacturaNC IsNot Nothing AndAlso ObjFacturaNC.Pagado > 0) AndAlso ObjFactura.TipoDocto = "Dev" Then
- TipoMovimiento = True
+ TipoMovimiento = Not TipoMovimiento
ConceptoContable = 314
importeMovimiento = importeMovimiento * -1
importeMX = importeMX * -1
@@ -11034,7 +11034,7 @@ Partial Class Ventas
'SI LA FACTURA ESTA PAGADA EN SU TOTALIDAD DEBE REGRESAR EL IMPUESTO
If (ObjFacturaNC IsNot Nothing AndAlso ObjFacturaNC.Pagado > 0) AndAlso ObjFactura.TipoDocto = "Dev" Then
- TipoMovimiento = True
+ TipoMovimiento = Not TipoMovimiento
ConceptoContable = 63
importeMovimiento = importeMovimiento * -1
importeMX = importeMX * -1
@@ -11073,7 +11073,7 @@ Partial Class Ventas
'SI LA FACTURA ESTA PAGADA EN SU TOTALIDAD DEBE REGRESAR EL IMPUESTO
If (ObjFacturaNC IsNot Nothing AndAlso ObjFacturaNC.Pagado > 0) AndAlso ObjFactura.TipoDocto = "Dev" Then
- TipoMovimiento = True
+ TipoMovimiento = Not TipoMovimiento
ConceptoContable = 61
importeMovimiento = importeMovimiento * -1
importeMX = importeMX * -1
@@ -11133,7 +11133,7 @@ Partial Class Ventas
'SI LA FACTURA ESTA PAGADA EN SU TOTALIDAD DEBE REGRESAR EL IMPUESTO
If (ObjFacturaNC IsNot Nothing AndAlso ObjFacturaNC.Pagado > 0) AndAlso ObjFactura.TipoDocto = "Dev" Then
- TipoMovimiento = True
+ TipoMovimiento = Not TipoMovimiento
ConceptoContable = 39
importeMovimiento = importeMovimiento * -1
importeMX = importeMX * -1
@@ -12857,8 +12857,69 @@ Partial Class Ventas
Else
importeMovimiento = 0
End If
+ Case 13 ' IVA x Trasladar
+ If gvr.DataKey("RegresarImpuesto") = "1" Then
+ importeMovimiento = gvr.DataKey("IVA").ToString().ToDecimal()
+ importeMX = importeMovimiento
+ PorcentajeImpuesto = (importeMovimiento / gvr.DataKey("SubTotal").ToString().ToDecimal())
+ If importeMovimiento <> 0 Then
+ IdCtaContable = If(IdCtaIVAXTrasladar > 0, IdCtaIVAXTrasladar, UsuarioActual.Empresa.IdCuentaIVAxTrasladar)
+ CveCuenta = If(CveCuentaIVAXTrasladar > 0, CveCuentaIVAXTrasladar, UsuarioActual.Empresa.CveCuentaIVAxTrasladar)
+ End If
+ Else
+ importeMovimiento = 0
+ PorcentajeImpuesto = 0
+ End If
+
+ Case 61 ' IVA Trasladado
+ If gvr.DataKey("RegresarImpuesto") = "1" Then
+ importeMovimiento = gvr.DataKey("IVA").ToString().ToDecimal()
+ importeMX = importeMovimiento
+ PorcentajeImpuesto = (importeMovimiento / gvr.DataKey("SubTotal").ToString().ToDecimal())
+ If importeMovimiento <> 0 Then
+ IdCtaContable = If(IdCtaIVATrasladado > 0, IdCtaIVATrasladado, UsuarioActual.Empresa.IdCuentaIVATrasladado)
+ CveCuenta = If(CveCuentaIVATrasladado > 0, CveCuentaIVATrasladado, UsuarioActual.Empresa.CveCuentaIVATrasladado)
+ End If
+ Else
+ importeMovimiento = 0
+ PorcentajeImpuesto = 0
+ End If
+
+ Case 38 ' IEPS x Trasladar
+ If gvr.DataKey("RegresarImpuesto") = "1" Then
+ importeMovimiento = gvr.DataKey("IEPS").ToString().ToDecimal()
+ importeMX = importeMovimiento
+ PorcentajeImpuesto = (importeMovimiento / gvr.DataKey("SubTotal").ToString().ToDecimal())
+ If importeMovimiento <> 0 AndAlso ObjConta.GetRetCuenta(ConceptoContable, UsuarioActual.CveEmpresa) Then
+ If ObjConta.DtResultados.Rows.Count > 0 Then
+ IdCtaContable = ObjConta.DtResultados.Rows(0)("IdCuentaIEPSxTrasladar").ToString().ToEntero()
+ CveCuenta = ObjConta.DtResultados.Rows(0)("IdCuentaIEPSxTrasladarSIG").ToString().ToEntero()
+ End If
+ End If
+ Else
+ importeMovimiento = 0
+ PorcentajeImpuesto = 0
+ End If
+
+ Case 39 ' IEPS Trasladado
+ If gvr.DataKey("RegresarImpuesto") = "1" Then
+ importeMovimiento = gvr.DataKey("IEPS").ToString().ToDecimal()
+ importeMX = importeMovimiento
+ PorcentajeImpuesto = (importeMovimiento / gvr.DataKey("SubTotal").ToString().ToDecimal())
+ If importeMovimiento <> 0 AndAlso ObjConta.GetRetCuenta(ConceptoContable, UsuarioActual.CveEmpresa) Then
+ If ObjConta.DtResultados.Rows.Count > 0 Then
+ IdCtaContable = ObjConta.DtResultados.Rows(0)("IdCuentaIEPSTrasladado").ToString().ToEntero()
+ CveCuenta = ObjConta.DtResultados.Rows(0)("IdCuentaIEPSTrasladadoSIG").ToString().ToEntero()
+ End If
+ End If
+ Else
+ importeMovimiento = 0
+ PorcentajeImpuesto = 0
+ End If
Case Else
importeMovimiento = 0
+ PorcentajeImpuesto = 0
+ importeMX = 0
End Select
If importeMovimiento <> 0 Then
@@ -12872,8 +12933,9 @@ Partial Class Ventas
' CveCuentaContabilizacion = 0
'End If
- If Not ObjConta.AddPrePolizasDetalle(CvePrepoliza, TipoMovimiento, importeMovimiento, Concepto, ConceptoContable, Concepto, FechaMovimiento, IdCtaContable, -1, CveVenta:=CveVenta, CveCliente:=CveCliente, ImporteMX:=importeMX, CveCuenta:=CveCuenta, TipoCambio:=TipoCambioGeneral) Then
+ If Not ObjConta.AddPrePolizasDetalle(CvePrepoliza, TipoMovimiento, importeMovimiento, Concepto, ConceptoContable, Concepto, FechaMovimiento, IdCtaContable, -1, CveVenta:=CveVenta, CveCliente:=CveCliente, ImporteMX:=importeMX, CveCuenta:=CveCuenta, TipoCambio:=TipoCambioGeneral, PorcentajeImpuesto:=PorcentajeImpuesto) Then
ErrorConta = True
+ Exit For
End If
End If
Next