-- afectar alamcen en la devolución y considerar registrar lote/caducidad

This commit is contained in:
2024-06-17 08:31:49 -07:00
parent e43e14ce86
commit 54ac9b836b

View File

@@ -6,7 +6,6 @@ Imports System.Xml
Imports System.Diagnostics
Imports System.Globalization
Imports System.IO
Imports System.IO
Imports System.Threading.Tasks
Imports Newtonsoft.Json
Imports Extensiones
@@ -2683,6 +2682,7 @@ Partial Class Compras_Compras
ChkEsNoDeducible.Checked = dr("NoDeducible").ToString.ToEntero > 0
If ChkEsNoDeducible.Checked Then AplicarNoDeducible()
LblMetodoPago.Text = dr("MetodoPagoSAT").ToString
CveConceptoContableAlmacen = dr("CveConceptoContableAlmacen").ToString.ToEntero
If UsuarioActual.Empresa.UsaAC Then
CambiaEjercicioAC(False)
@@ -13743,7 +13743,7 @@ Partial Class Compras_Compras
If dr("CveAlmacen").ToString.ToEntero = CveAlmacen And dr("CveCompraDetalle").ToString.ToEntero <> -1 And dr("origen").ToString.ToEntero <> -1 And dr("Total").ToString.ToDecimal <> 0 Then
'hay que restarle descuento
importeconcepto = dr("Total").ToString.ToDecimal
If Not ObjInventario.AddMovimientoDetalle(CveMovimientoEntrada, dr("Cantidad").ToString.ToDecimal, dr("CveUM").ToString.ToEntero, dr("CvePS").ToString.ToEntero, importeconcepto, -1, CveCompraDetalle:=dr("CveCompraDetalle").ToString.ToEntero, Serie:=dr("Serie").ToString) Then
If Not ObjInventario.AddMovimientoDetalle(CveMovimientoEntrada, dr("Cantidad").ToString.ToDecimal, dr("CveUM").ToString.ToEntero, dr("CvePS").ToString.ToEntero, importeconcepto, -1, CveCompraDetalle:=dr("CveCompraDetalle").ToString.ToEntero, Serie:=dr("Serie").ToString, Lote:=dr("Lote").ToString, FechaCaducidad:=dr("FechaCaducidad").ToString.ToDate) Then
ErrorCancelar = True
Exit For
End If
@@ -13758,45 +13758,53 @@ Partial Class Compras_Compras
Total68 = ObjInventario.DtResultados.SUMD("Total").RoundSQL(2) * -1
End If
If ObjContabilidad.GetPrePolizasDetalle(CvePrePoliza, UsuarioActual.CveEmpresa) Then
Dim DtPrePolizaAlmacen As DataTable = ObjContabilidad.DtResultados.FiltraParametros($"CveMovimientoAlmacen = {CveMovimientoReferencia}")
If CvePrePolizaNueva > 0 Then
Dim tTotal As Decimal = 0
For Each dr As DataRow In DtPrePolizaAlmacen.Rows
If Not ObjContabilidad.AddPrePolizasDetalle(CvePrePolizaNueva, CBool(dr("TipoMovto").ToString), Total68, Total68, dr("CveConceptoContable").ToString.ToEntero,
dr("Referencia").ToString, dr("Concepto").ToString, dr("CveIE").ToString.ToEntero,
dr("CveVenta").ToString.ToEntero, dr("CveCompra").ToString.ToEntero, dr("CveSubProyecto").ToString.ToEntero, dr("CveCliente").ToString.ToEntero, dr("CveProveedor").ToString.ToEntero, dr("CvePersonal").ToString.ToEntero,
CveMovimientoEntrada,
dr("CveActivoFijo").ToString.ToEntero, -1, -1, dr("CveCreditoDetalle").ToString.ToEntero,
ImporteME:=Total68,
CveTipoGasto:=dr("CveTipoGasto").ToString.ToEntero, CveClasificacion:=dr("CveClasificacion").ToString.ToEntero,
PorcentajeImpuesto:=dr("PorcentajeImpuesto").ToString.ToDecimal,
CveOCDetalle:=dr("CveOCDetalle").ToString.ToEntero) Then
ErrorCancelar = True
Exit For
End If
tTotal += Total68
Next
If CvePrePolizaNueva > 0 Then
Dim tTotal As Decimal = 0
'si el importe es diferente al subtotal, se deberá generar un ajuste al costo
If Abs(tTotal) <> TxtSubTotal.Text.ToDecimal Then
tTotal = Abs(tTotal) - TxtSubTotal.Text.ToDecimal
If Not ObjContabilidad.AddPrePolizasDetalle(CvePrePolizaNueva, False, tTotal, tTotal, 69, "", "cancelación",
If Not ObjContabilidad.AddPrePolizasDetalle(CvePrePolizaNueva, True, Total68, Total68, CveConceptoContableAlmacen,
TxtFolio.Text, TxtFolio.Text, CveCompra:=CveCompra,
CveMovimientoAlmacen:=CveMovimientoEntrada) Then
ErrorCancelar = True
End If
If Not ObjContabilidad.AddPrePolizasDetalle(CvePrePolizaNueva, False, Total68, Total68, 68, TxtFolio.Text, TxtFolio.Text, CveCompra:=CveCompra,
CveMovimientoAlmacen:=CveMovimientoEntrada) Then
ErrorCancelar = True
End If
'For Each dr As DataRow In DtPrePolizaAlmacen.Rows
' If Not ObjContabilidad.AddPrePolizasDetalle(CvePrePolizaNueva, CBool(dr("TipoMovto").ToString), Total68, Total68, dr("CveConceptoContable").ToString.ToEntero,
' dr("Referencia").ToString, dr("Concepto").ToString, dr("CveIE").ToString.ToEntero,
' dr("CveVenta").ToString.ToEntero, dr("CveCompra").ToString.ToEntero, dr("CveSubProyecto").ToString.ToEntero, dr("CveCliente").ToString.ToEntero, dr("CveProveedor").ToString.ToEntero, dr("CvePersonal").ToString.ToEntero,
' CveMovimientoEntrada,
' dr("CveActivoFijo").ToString.ToEntero, -1, -1, dr("CveCreditoDetalle").ToString.ToEntero,
' ImporteME:=Total68,
' CveTipoGasto:=dr("CveTipoGasto").ToString.ToEntero, CveClasificacion:=dr("CveClasificacion").ToString.ToEntero,
' PorcentajeImpuesto:=dr("PorcentajeImpuesto").ToString.ToDecimal,
' CveOCDetalle:=dr("CveOCDetalle").ToString.ToEntero) Then
' ErrorCancelar = True
' Exit For
' End If
' tTotal += Total68
'Next
'si el importe es diferente al subtotal, se deberá generar un ajuste al costo
If Abs(Total68) <> TxtSubTotal.Text.ToDecimal Then
tTotal = Abs(Total68) - TxtSubTotal.Text.ToDecimal
If Not ObjContabilidad.AddPrePolizasDetalle(CvePrePolizaNueva, False, tTotal, tTotal, 69, "", "cancelación",
CveCompra:=CveCompra, CveSubProyecto:=TmpDT.MAX("CveSubProyecto").ToEntero,
CveMovimientoAlmacen:=CveMovimientoEntrada,
ImporteME:=tTotal,
CveClasificacion:=TmpDT.MAX("CveClasificacion").ToEntero) Then
ErrorCancelar = True
End If
ErrorCancelar = True
End If
Else
ErrorCancelar = True
End If
Else
ErrorCancelar = True
ErrorCancelar = True
End If
End If
End If
Next
End If