diff --git a/Compras/Compras.aspx b/Compras/Compras.aspx
index a5e574f5d..72d5c2f69 100644
--- a/Compras/Compras.aspx
+++ b/Compras/Compras.aspx
@@ -1418,7 +1418,7 @@
-
diff --git a/Compras/Compras.aspx.vb b/Compras/Compras.aspx.vb
index 6180445d4..337de7139 100644
--- a/Compras/Compras.aspx.vb
+++ b/Compras/Compras.aspx.vb
@@ -539,6 +539,8 @@ Partial Class Compras_Compras
ViewState("EsNoDeducible") = value
End Set
End Property
+
+
#End Region
#Region "PROPIEDADES - AC NEW"
@@ -1036,8 +1038,6 @@ Partial Class Compras_Compras
End Set
End Property
-
-
Public Property FechaCompraOriginal As Date
Get
Return ViewState("FechaCompraOriginal").ToString.ToDate
@@ -1202,22 +1202,8 @@ Partial Class Compras_Compras
End Set
End Property
-
-
-
-
-
-
- 'ImporteRNCSaldar = 0
- 'SerieFolioProntoPago = ""
- 'TipoCambioProntoPago = 1
- 'FechaProntoPago = MinFecha
- 'CveMonedaProntoPago = 1
-
-
#End Region
-
'Public Property ListaFacturasRealcionadasRNC As List(Of String)
' Get
' If ViewState("ListaFacturasRealcionadasRNC") Is Nothing Then
@@ -1230,7 +1216,6 @@ Partial Class Compras_Compras
' End Set
'End Property
-
Private Property EsGrupoDiaz As Boolean
Get
If ViewState("EsGrupoDiaz") Is Nothing Then
@@ -1243,6 +1228,18 @@ Partial Class Compras_Compras
End Set
End Property
+ Private Property CveCompraDRMC As Integer
+ Get
+ If ViewState("CveCompraDRMC") Is Nothing Then
+ ViewState("CveCompraDRMC") = -1
+ End If
+ Return ViewState("CveCompraDRMC").ToString.ToEntero
+ End Get
+ Set(value As Integer)
+ ViewState("CveCompraDRMC") = value
+ End Set
+ End Property
+
Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load
If Not IsPostBack Then
@@ -14698,6 +14695,17 @@ Partial Class Compras_Compras
ErrorCancelar = True
End Try
+
+ If Not ErrorCancelar AndAlso DdlTipoComprobante.SelectedValue = "RNC" AndAlso TxtSerie.Text.Contains("DRNC") Then
+ If Not ErrorCancelar Then
+ If Not RegistroInventarioDevTemporal(ObjCompras.IniciaTransacSQL, TmpDT.MAX("CveSubProyecto").ToEntero, CveCompra, EsCancelacion:=True) Then
+ ErrorCancelar = True
+ End If
+ End If
+ End If
+
+
+
If Not ErrorCancelar Then
If ObjAC IsNot Nothing Then
ObjAC.Commit()
@@ -19231,7 +19239,7 @@ Partial Class Compras_Compras
CompraActual.EsImportacion = chkImportacion.Checked
If Not GeneraRNC(ObjCompras.IniciaTransacSQL, CveCompra, CompraActual, objConta, CvePrePoliza, DdlProveedor.SelectedValue.ToEntero, DdlProveedor.SelectedItem.Text, TxtFecha.Text.ToDate, $"Remisión Nota de Crédito {TxtDescripcion.Text}", DdlMoneda.SelectedValue.ToEntero,
- TxtSerie.Text, TxtFolio.Text) Then
+ TxtSerie.Text, TxtFolio.Text, EsDRMN:=True) Then
TieneError = True
End If
@@ -19239,8 +19247,12 @@ Partial Class Compras_Compras
TieneError = True
End If
+ If Not CveCompraDRMC > 0 Then
+ TieneError = True
+ End If
+
If Not TieneError Then
- If Not RegistroInventarioDevTemporal(ObjCompras.IniciaTransacSQL, 0, tCveSubProyeto) Then
+ If Not RegistroInventarioDevTemporal(ObjCompras.IniciaTransacSQL, tCveSubProyeto, CveCompraDRMC, EsCancelacion:=False) Then
TieneError = True
End If
End If
@@ -19248,6 +19260,7 @@ Partial Class Compras_Compras
End If
+
If Not TieneError Then
ObjCompras.Commit()
Else
@@ -19259,18 +19272,20 @@ Partial Class Compras_Compras
InicializaDevolucionAlmacen()
End Sub
- Function RegistroInventarioDevTemporal(ByRef transaccion As SqlTransaction, OpcionOrigen As Integer, tCveSubProyecto As Integer) As Boolean
+ Function RegistroInventarioDevTemporal(ByRef transaccion As SqlTransaction, tCveSubProyecto As Integer, CveCompraDRMCRelacionada As Integer, EsCancelacion As Boolean) As Boolean
'Dim CveConceptoInv As Integer = If(OpcionOrigen = 1, 2, 3)
- Dim CveConceptoSalida As Integer = 3
- Dim CveConceptoEntrada As Integer = 2
+
+ Dim CveConceptoSalida As Integer = If(EsCancelacion, 2, 13)
+ 'Dim CveConceptoEntrada As Integer = 2 'OIC FIXME Ver Con Rene
Dim Respuesta As Boolean = True
'Dim ObjOC As New ClsOC(transaccion)
Dim CveAlmacenOrigen As Integer = -1
- Dim CveAlmacenDestino As Integer = -1
+ 'Dim CveAlmacenDestino As Integer = -1
+
For Each gvRow As GridViewRow In GvInvMov.Rows
CveAlmacenOrigen = gvRow.DataKey("CveAlmacen").ToEntero
@@ -19284,14 +19299,14 @@ Partial Class Compras_Compras
Return False
End If
- CveAlmacenDestino = GlobalDTAlmacen(UsuarioActual.CveEmpresa).FiltroPrimeroValor("CveAlmacen", $" CveSubProyecto = {tCveSubProyecto} AND CveTipoAlmacen = 21 ").ToEntero
- If CveAlmacenDestino <= 0 Then
- CveAlmacenDestino = GlobalDTAlmacen(UsuarioActual.CveEmpresa).FiltroPrimeroValor("CveAlmacen", $" CveTipoAlmacen = 21 ").ToEntero
- End If
- If CveAlmacenDestino <= 0 Then
- Alert("Almacén destino de devolución proveedor no esta asignado.")
- Return False
- End If
+ 'CveAlmacenDestino = GlobalDTAlmacen(UsuarioActual.CveEmpresa).FiltroPrimeroValor("CveAlmacen", $" CveSubProyecto = {tCveSubProyecto} AND CveTipoAlmacen = 21 ").ToEntero
+ 'If CveAlmacenDestino <= 0 Then
+ ' CveAlmacenDestino = GlobalDTAlmacen(UsuarioActual.CveEmpresa).FiltroPrimeroValor("CveAlmacen", $" CveTipoAlmacen = 21 ").ToEntero
+ 'End If
+ 'If CveAlmacenDestino <= 0 Then
+ ' Alert("Almacén destino de devolución proveedor no esta asignado.")
+ ' Return False
+ 'End If
Dim ObjConta As New ClsContabilidad(transaccion)
Dim ObjInventario As New ClsInventarios(transaccion)
@@ -19299,10 +19314,10 @@ Partial Class Compras_Compras
'Dim CveConceptoInv As Integer = If(TipoTermino = 1, 3, 2)
Dim CvePrePolizaSalida As Integer = ObjConta.AddPrePolizas("Comp/InvDevSal", 53, 0, 0, 1, TxtFecha.Text.Replace(",", "").ToDate, $"Devolución proveedor {TxtSerie.Text}{TxtFolio.Text}", UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, CveTipoPoliza:=3)
- Dim CvePrePolizaEntrada As Integer = ObjConta.AddPrePolizas("Comp/InvDevEnt", 53, 0, 0, 1, TxtFecha.Text.Replace(",", "").ToDate, $"Devolución proveedor {TxtSerie.Text}{TxtFolio.Text}", UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, CveTipoPoliza:=3)
+ 'Dim CvePrePolizaEntrada As Integer = ObjConta.AddPrePolizas("Comp/InvDevEnt", 53, 0, 0, 1, TxtFecha.Text.Replace(",", "").ToDate, $"Devolución proveedor {TxtSerie.Text}{TxtFolio.Text}", UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, CveTipoPoliza:=3)
- Dim CveMovimientoSalida As Integer = ObjInventario.AddMovimiento(CveAlmacenOrigen, CveConceptoSalida, 1, NowADS, -1, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, -1, -1, tCveSubProyecto, -1, Observaciones:=$"Devolución proveedor {TxtSerie.Text}{TxtFolio.Text}",
- CveAlmacenDestino:=CveAlmacenDestino, Modulo:="ComprasDev/1")
+ Dim CveMovimientoSalida As Integer = ObjInventario.AddMovimiento(CveAlmacenOrigen, CveConceptoSalida, 1, NowADS, -1, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, CveCompraDRMCRelacionada, -1, tCveSubProyecto, -1, Observaciones:=$"Devolución proveedor {TxtSerie.Text}{TxtFolio.Text}",
+ CveAlmacenDestino:=-1, Modulo:="ComprasDev/1")
Dim FolioMtoSalida As Integer = ObjInventario.Folio
Dim FolioMtoEntrada As Integer = 0 'Se asigna mas abajo
@@ -19319,31 +19334,26 @@ Partial Class Compras_Compras
Dim Mensaje As String = ""
Dim Cont As Integer = 0
- For Each gvRow As GridViewRow In GvSolDev.Rows
- 'Dim FechaCaducidadVal As Date = If(Dr("AplicaCaducidad").ToString = "True", Dr("FechaCaducidad").ToString.ToDate, MinFecha)
- Dim FechaMovtoExistenciaStr As String = $"{NowADS.ToString("yyyy/MM/dd")} {NowADS.ToString("HH:mm")}"
- Dim Cantidad As Decimal = gvRow.FCTextBox("TxtCant").Text.ToDecimal
+ If EsCancelacion Then
- If Cantidad > 0 Then
+ For Each gvRow As GridViewRow In GvInvMov.Rows
+ 'Dim FechaCaducidadVal As Date = If(Dr("AplicaCaducidad").ToString = "True", Dr("FechaCaducidad").ToString.ToDate, MinFecha)
+ Dim FechaMovtoExistenciaStr As String = $"{NowADS.ToString("yyyy/MM/dd")} {NowADS.ToString("HH:mm")}"
+ Dim Cantidad As Decimal = gvRow.DataKey("Cantidad").ToDecimal
- Dim CveUM As Integer = gvRow.DataKey("CveUM").ToString.ToEntero
- Dim CvePS As Integer = gvRow.DataKey("CvePS").ToString.ToEntero
- Dim CveCompraDetalle As Integer = gvRow.DataKey("CveCompraDetalle").ToEntero
- Dim PU As Decimal = gvRow.DataKey("PU").ToDecimal
- Dim CodigoPS As String = gvRow.DataKey("CodigoPS")
+ If Cantidad > 0 Then
- If ObjInventario.GetExistenciasPS(CvePS, CveUM, UsuarioActual.CveEmpresa, CveAlmacenOrigen, FechaMovto:=FechaMovtoExistenciaStr) >= Cantidad Then
- If Not ObjInventario.AddMovimientoDetalle(CveMovimientoSalida, Cantidad, CveUM, CvePS, PU, -1, Observaciones:=$"Devolución proveedor {TxtSerie.Text}{TxtFolio.Text}", CveUsuarioModifico:=UsuarioActual.CveUsuario,
- CveCompraDetalle:=CveCompraDetalle) Then
- Mensaje = "Error al guardar los movimientos"
- Respuesta = False
- Exit For
- End If
- Else
+ Dim CveUM As Integer = gvRow.DataKey("CveUM").ToString.ToEntero
+ Dim CvePS As Integer = gvRow.DataKey("CvePS").ToString.ToEntero
+ 'Dim CveCompraDetalle As Integer = gvRow.DataKey("CveCompraDetalle").ToEntero' OIC 2024-12-26 se quita relacion
+ Dim PU As Decimal = gvRow.DataKey("PU").ToDecimal
+ Dim CodigoPS As String = gvRow.DataKey("CodigoPS")
- If UsuarioActual.TienePermisoProceso(114) Then
+
+
+ If UsuarioActual.TienePermisoProceso(114) Or EsCancelacion Then
If Not ObjInventario.AddMovimientoDetalle(CveMovimientoSalida, Cantidad, CveUM, CvePS, PU, -1, Observaciones:=$"Devolución proveedor {TxtSerie.Text}{TxtFolio.Text}", CveUsuarioModifico:=UsuarioActual.CveUsuario,
- CveOrdenCompraDetalle:=CveCompraDetalle) Then
+ CveOrdenCompraDetalle:=-1) Then
Mensaje = "Error al guardar los movimientos"
Respuesta = False
Exit For
@@ -19355,59 +19365,94 @@ Partial Class Compras_Compras
Exit For
End If
+
+
+ Cont += 1
+
End If
- Cont += 1
+ Next
- End If
- Next
+ Else
+ For Each gvRow As GridViewRow In GvSolDev.Rows
+ 'Dim FechaCaducidadVal As Date = If(Dr("AplicaCaducidad").ToString = "True", Dr("FechaCaducidad").ToString.ToDate, MinFecha)
+ Dim FechaMovtoExistenciaStr As String = $"{NowADS.ToString("yyyy/MM/dd")} {NowADS.ToString("HH:mm")}"
+ Dim Cantidad As Decimal = gvRow.FCTextBox("TxtCant").Text.ToDecimal
+ If Cantidad > 0 Then
- Dim CveMovimientoEntrada As Integer = ObjInventario.AddMovimiento(CveAlmacenDestino, CveConceptoEntrada, 1, NowADS, -1, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, -1, -1, tCveSubProyecto, -1, Observaciones:=$"Devolución proveedor {TxtSerie.Text}{TxtFolio.Text}",
- Modulo:="ComprasDev/2", CveMovimientoRelacionado:=CveMovimientoSalida)
- FolioMtoEntrada = ObjInventario.Folio
+ Dim CveUM As Integer = gvRow.DataKey("CveUM").ToString.ToEntero
+ Dim CvePS As Integer = gvRow.DataKey("CvePS").ToString.ToEntero
+ 'Dim CveCompraDetalle As Integer = gvRow.DataKey("CveCompraDetalle").ToEntero' OIC 2024-12-26 se quita relacion
+ Dim PU As Decimal = gvRow.DataKey("PU").ToDecimal
+ Dim CodigoPS As String = gvRow.DataKey("CodigoPS")
- If Respuesta AndAlso CveMovimientoEntrada > 0 Then
- 'OIC GetMovmientoDetalle y relacionar al anteruior
- '
- 'Dim DTMovmientoDetalle As New DataTable
-
-
-
- If ObjInventario.GetMovimientosDetalle(CveMovimientoSalida, UsuarioActual.CveEmpresa) Then
- For Each dRow As DataRow In ObjInventario.DtResultados.Rows
-
- Dim Cantidad As Decimal = dRow("Cantidad").ToString.ToDecimal
-
- If Cantidad > 0 Then
- Dim CveUM As Integer = dRow("CveUM").ToString.ToEntero
- Dim CvePS As Integer = dRow("CvePS").ToString.ToEntero
- Dim CveMovimientoDetalle As Integer = dRow("CveMovimientoDetalle").ToString.ToEntero
- Dim PU As Decimal = dRow("PU").ToString.ToDecimal
- Dim CodigoPS As String = dRow("CodigoPS").ToString
-
- Dim ImporteConcepto As Decimal = PU
-
- If Not ObjInventario.AddMovimientoDetalle(CveMovimientoEntrada, Cantidad, CveUM, CvePS, ImporteConcepto, Observaciones:=$"Devolución proveedor {TxtSerie.Text}{TxtFolio.Text}", CveUsuarioModifico:=UsuarioActual.CveUsuario,
- CveMovimientoDetalleEntrada:=CveMovimientoDetalle) Then
+ If ObjInventario.GetExistenciasPS(CvePS, CveUM, UsuarioActual.CveEmpresa, CveAlmacenOrigen, FechaMovto:=FechaMovtoExistenciaStr) >= Cantidad And Not EsCancelacion Then
+ If Not ObjInventario.AddMovimientoDetalle(CveMovimientoSalida, Cantidad, CveUM, CvePS, PU, -1, Observaciones:=$"Devolución proveedor {TxtSerie.Text}{TxtFolio.Text}", CveUsuarioModifico:=UsuarioActual.CveUsuario,
+ CveCompraDetalle:=-1) Then
Mensaje = "Error al guardar los movimientos"
Respuesta = False
Exit For
-
End If
- Cont += 1
- End If
+ Else
- Next
- End If
+ If UsuarioActual.TienePermisoProceso(114) Or EsCancelacion Then
+ If Not ObjInventario.AddMovimientoDetalle(CveMovimientoSalida, Cantidad, CveUM, CvePS, PU, -1, Observaciones:=$"Devolución proveedor {TxtSerie.Text}{TxtFolio.Text}", CveUsuarioModifico:=UsuarioActual.CveUsuario,
+ CveOrdenCompraDetalle:=-1) Then
+ Mensaje = "Error al guardar los movimientos"
+ Respuesta = False
+ Exit For
+ End If
+ Else
+ Mensaje = String.Format("No hay existencias suficientes del producto: {0}", CodigoPS)
+ Alert(Mensaje, TipoMensaje.MsgAdvertencia)
+ Respuesta = False
+ Exit For
+ End If
+
+ End If
+ Cont += 1
+
+ End If
+ Next
End If
+
+
+ ''Se quita entrada
+ 'Dim CveMovimientoEntrada As Integer = ObjInventario.AddMovimiento(CveAlmacenDestino, CveConceptoEntrada, 1, NowADS, -1, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, -1, -1, tCveSubProyecto, -1, Observaciones:=$"Devolución proveedor {TxtSerie.Text}{TxtFolio.Text}",
+ ' Modulo:="ComprasDev/2", CveMovimientoRelacionado:=CveMovimientoSalida)
+ 'FolioMtoEntrada = ObjInventario.Folio
+ 'If Respuesta AndAlso CveMovimientoEntrada > 0 Then
+ ' If ObjInventario.GetMovimientosDetalle(CveMovimientoSalida, UsuarioActual.CveEmpresa) Then
+ ' For Each dRow As DataRow In ObjInventario.DtResultados.Rows
+ ' Dim Cantidad As Decimal = dRow("Cantidad").ToString.ToDecimal
+ ' If Cantidad > 0 Then
+ ' Dim CveUM As Integer = dRow("CveUM").ToString.ToEntero
+ ' Dim CvePS As Integer = dRow("CvePS").ToString.ToEntero
+ ' Dim CveMovimientoDetalle As Integer = dRow("CveMovimientoDetalle").ToString.ToEntero
+ ' Dim PU As Decimal = dRow("PU").ToString.ToDecimal
+ ' Dim CodigoPS As String = dRow("CodigoPS").ToString
+ ' Dim ImporteConcepto As Decimal = PU
+ ' If Not ObjInventario.AddMovimientoDetalle(CveMovimientoEntrada, Cantidad, CveUM, CvePS, ImporteConcepto, Observaciones:=$"Devolución proveedor {TxtSerie.Text}{TxtFolio.Text}", CveUsuarioModifico:=UsuarioActual.CveUsuario,
+ ' CveMovimientoDetalleEntrada:=CveMovimientoDetalle) Then
+ ' Mensaje = "Error al guardar los movimientos"
+ ' Respuesta = False
+ ' Exit For
+ ' End If
+ ' Cont += 1
+ ' End If
+ ' Next
+ ' End If
+ 'End If
+
+
'PrePoliza Movmiento de salida
Dim EsContabilizable As Boolean = False
'Registro la prepóliza
If Respuesta AndAlso ObjInventario.GetMovimientosDetalle(CveMovimientoSalida, UsuarioActual.CveEmpresa) Then
- Dim tValorInventario As Decimal = ObjInventario.DtResultados.SUMD("Total", "").RoundSQL()
- Dim tValorOtro As Decimal = tValorInventario
+ Dim tValorInventario As Decimal = ObjInventario.DtResultados.SUMD("Total", "").RoundSQL() '* (If(EsCancelacion, -1, 1))
+ 'Dim tValorOtro As Decimal = tValorInventario
Dim TipoMovtoAlmacen As Boolean = False
Dim TipoMovtoOtro As Boolean = True
@@ -19446,7 +19491,7 @@ Partial Class Compras_Compras
Case 13, 29
CveConceptoContable = 69
TipoMovtoOtro = True
- tValorOtro = -tValorOtro
+ 'tValorOtro = -tValorOtro
Dim drr As DataRow = GlobalDTClasificaciones(UsuarioActual.CveEmpresa).FiltroPrimero("")
If drr IsNot Nothing Then
CveClasificacion = drr("CveClasificacion").ToString.ToEntero
@@ -19462,114 +19507,124 @@ Partial Class Compras_Compras
'2-78
Dim Obs As String = $"Devolución proveedor {TxtSerie.Text}{TxtFolio.Text}"
- If Not ObjConta.AddPrePolizasDetalle(CvePrePolizaSalida, TipoMovtoAlmacen, tValorInventario, tValorInventario, 68, Obs, Obs, CveMovimientoAlmacen:=CveMovimientoSalida, CveClasificacion:=CveClasificacion, Contabilizable:=EsContabilizable) Then
- Respuesta = False
- Else
+ If ObjConta.AddPrePolizasDetalle(CvePrePolizaSalida, TipoMovtoAlmacen, tValorInventario, tValorInventario, 68, Obs, Obs, CveMovimientoAlmacen:=CveMovimientoSalida, CveClasificacion:=CveClasificacion, Contabilizable:=EsContabilizable) Then
- 'Dim Total As Decimal = 0
- If CveConceptoContable.Contiene(181, 78, 51, 69) Then
- Dim Dt As DataTable = ObjInventario.DtResultados.FiltraParametros("", "", {"CveClasificacion"}).Copy
+ Dim Dt As DataTable = ObjInventario.DtResultados.FiltraParametros("", "", {"CveClasificacion"}).Copy
+ For Each Dr As DataRow In Dt.Rows
+ Dim Total As Decimal = ObjInventario.DtResultados.FiltraParametros($"CveClasificacion = {Dr("CveClasificacion")}").SUM("Total").RoundSQL() ' * (If(EsCancelacion, -1, 1))
- For Each Dr As DataRow In Dt.Rows
- Dim Total As Decimal = ObjInventario.DtResultados.FiltraParametros($"CveClasificacion = {Dr("CveClasificacion")}").SUM("Total").RoundSQL()
-
- If Not ObjConta.AddPrePolizasDetalle(CvePrePolizaSalida, Not TipoMovtoAlmacen, Total, Total, CveConceptoContable, LblFolio.Text, Obs, 0, CveMovimientoAlmacen:=CveMovimientoSalida, CveClasificacion:=Dr("CveClasificacion").ToString.ToEntero, CveSubProyecto:=tCveSubProyecto) Then
- Respuesta = False
- End If
- Next
- Else
- If Not ObjConta.AddPrePolizasDetalle(CvePrePolizaSalida, Not TipoMovtoAlmacen, tValorInventario, tValorInventario, CveConceptoContable, Obs, Obs, CveMovimientoAlmacen:=CveMovimientoSalida, CveClasificacion:=CveClasificacion, Contabilizable:=EsContabilizable) Then
+ If Not ObjConta.AddPrePolizasDetalle(CvePrePolizaSalida, Not TipoMovtoAlmacen, Total, Total, 95, LblFolio.Text, Obs, 0, CveMovimientoAlmacen:=CveMovimientoSalida, CveClasificacion:=Dr("CveClasificacion").ToString.ToEntero, CveSubProyecto:=tCveSubProyecto, Contabilizable:=EsContabilizable) Then
Respuesta = False
End If
- End If
+ Next
+ 'If CveConceptoContable.Contiene(181, 78, 51, 69) Then
+ ' Dim Dt As DataTable = ObjInventario.DtResultados.FiltraParametros("", "", {"CveClasificacion"}).Copy
+
+ ' For Each Dr As DataRow In Dt.Rows
+ ' Dim Total As Decimal = ObjInventario.DtResultados.FiltraParametros($"CveClasificacion = {Dr("CveClasificacion")}").SUM("Total").RoundSQL()
+
+ ' If Not ObjConta.AddPrePolizasDetalle(CvePrePolizaSalida, Not TipoMovtoAlmacen, Total, Total, CveConceptoContable, LblFolio.Text, Obs, 0, CveMovimientoAlmacen:=CveMovimientoSalida, CveClasificacion:=Dr("CveClasificacion").ToString.ToEntero, CveSubProyecto:=tCveSubProyecto) Then
+ ' Respuesta = False
+ ' End If
+ ' Next
+ 'Else
+ ' If Not ObjConta.AddPrePolizasDetalle(CvePrePolizaSalida, Not TipoMovtoAlmacen, tValorInventario, tValorInventario, CveConceptoContable, Obs, Obs, CveMovimientoAlmacen:=CveMovimientoSalida, CveClasificacion:=CveClasificacion, Contabilizable:=EsContabilizable) Then
+ ' Respuesta = False
+ ' End If
+ 'End If
+
+
+ Else
+ Respuesta = False
+
End If
Else
Respuesta = False
End If
- 'PrePoliza Movmiento de entrada
- If Respuesta AndAlso ObjInventario.GetMovimientosDetalle(CveMovimientoEntrada, UsuarioActual.CveEmpresa) Then
- Dim tValorInventario As Decimal = ObjInventario.DtResultados.SUMD("Total", "").RoundSQL()
- Dim tValorOtro As Decimal = tValorInventario
+ ''PrePoliza Movmiento de entrada
+ 'If Respuesta AndAlso ObjInventario.GetMovimientosDetalle(CveMovimientoEntrada, UsuarioActual.CveEmpresa) Then
+ ' Dim tValorInventario As Decimal = ObjInventario.DtResultados.SUMD("Total", "").RoundSQL()
+ ' Dim tValorOtro As Decimal = tValorInventario
- Dim TipoMovtoAlmacen As Boolean = False
- Dim TipoMovtoOtro As Boolean = True
+ ' Dim TipoMovtoAlmacen As Boolean = False
+ ' Dim TipoMovtoOtro As Boolean = True
- Dim drA2 As DataRow = GlobalDTAlmacen(UsuarioActual.CveEmpresa).FiltroPrimero(String.Format("CveAlmacen = {0}", CveAlmacenOrigen))
- If drA2 IsNot Nothing Then
- tCveSubProyecto = drA2("CveSubProyecto").ToString.ToEntero
- End If
+ ' Dim drA2 As DataRow = GlobalDTAlmacen(UsuarioActual.CveEmpresa).FiltroPrimero(String.Format("CveAlmacen = {0}", CveAlmacenOrigen))
+ ' If drA2 IsNot Nothing Then
+ ' tCveSubProyecto = drA2("CveSubProyecto").ToString.ToEntero
+ ' End If
- Dim OrigenMov As Integer = GlobalDTInvConceptos.FiltroPrimeroValor("Origen", "CveConcepto = " & CveConceptoEntrada).ToEntero
- If OrigenMov = 1 Then TipoMovtoAlmacen = False Else TipoMovtoAlmacen = True
- TipoMovtoOtro = Not TipoMovtoAlmacen
+ ' Dim OrigenMov As Integer = GlobalDTInvConceptos.FiltroPrimeroValor("Origen", "CveConcepto = " & CveConceptoEntrada).ToEntero
+ ' If OrigenMov = 1 Then TipoMovtoAlmacen = False Else TipoMovtoAlmacen = True
+ ' TipoMovtoOtro = Not TipoMovtoAlmacen
- Dim CveConceptoContable As Integer = 260
- Dim CveClasificacion As Integer = -1
- Select Case CveConceptoEntrada
- Case 2, 32
- CveConceptoContable = 78
- EsContabilizable = True
- Case 28, 31
- CveConceptoContable = 51
- If CveConceptoEntrada = 28 Then
- ''cuando es 28, es otros ingresos.78
- CveConceptoContable = 78
- End If
- EsContabilizable = True
- Case 30
- CveConceptoContable = 181
- TipoMovtoOtro = False
- If DdlSubProyecto.Visible = True AndAlso DdlSubProyecto.SelectedValue.ToEntero > 0 Then tCveSubProyecto = DdlSubProyecto.SelectedValue.ToEntero
+ ' Dim CveConceptoContable As Integer = 260
+ ' Dim CveClasificacion As Integer = -1
+ ' Select Case CveConceptoEntrada
+ ' Case 2, 32
+ ' CveConceptoContable = 78
+ ' EsContabilizable = True
+ ' Case 28, 31
+ ' CveConceptoContable = 51
+ ' If CveConceptoEntrada = 28 Then
+ ' ''cuando es 28, es otros ingresos.78
+ ' CveConceptoContable = 78
+ ' End If
+ ' EsContabilizable = True
+ ' Case 30
+ ' CveConceptoContable = 181
+ ' TipoMovtoOtro = False
+ ' If DdlSubProyecto.Visible = True AndAlso DdlSubProyecto.SelectedValue.ToEntero > 0 Then tCveSubProyecto = DdlSubProyecto.SelectedValue.ToEntero
- Case 34
- CveConceptoContable = 51
- EsContabilizable = True
- Case 13, 29
- CveConceptoContable = 69
- TipoMovtoOtro = True
- tValorOtro = -tValorOtro
- Dim drr As DataRow = GlobalDTClasificaciones(UsuarioActual.CveEmpresa).FiltroPrimero("")
- If drr IsNot Nothing Then
- CveClasificacion = drr("CveClasificacion").ToString.ToEntero
- End If
- Case 3
- CveConceptoContable = 51
- EsContabilizable = True
- Case Else
- CveConceptoContable = 95
+ ' Case 34
+ ' CveConceptoContable = 51
+ ' EsContabilizable = True
+ ' Case 13, 29
+ ' CveConceptoContable = 69
+ ' TipoMovtoOtro = True
+ ' tValorOtro = -tValorOtro
+ ' Dim drr As DataRow = GlobalDTClasificaciones(UsuarioActual.CveEmpresa).FiltroPrimero("")
+ ' If drr IsNot Nothing Then
+ ' CveClasificacion = drr("CveClasificacion").ToString.ToEntero
+ ' End If
+ ' Case 3
+ ' CveConceptoContable = 51
+ ' EsContabilizable = True
+ ' Case Else
+ ' CveConceptoContable = 95
- End Select
+ ' End Select
- '2-78
- Dim Obs As String = $"Devolución proveedor {TxtSerie.Text}{TxtFolio.Text}"
+ ' '2-78
+ ' Dim Obs As String = $"Devolución proveedor {TxtSerie.Text}{TxtFolio.Text}"
- If Not ObjConta.AddPrePolizasDetalle(CvePrePolizaEntrada, TipoMovtoAlmacen, tValorInventario, tValorInventario, 68, Obs, Obs, CveMovimientoAlmacen:=CveMovimientoEntrada, CveClasificacion:=CveClasificacion, Contabilizable:=EsContabilizable) Then
- Respuesta = False
- Else
+ ' If Not ObjConta.AddPrePolizasDetalle(CvePrePolizaEntrada, TipoMovtoAlmacen, tValorInventario, tValorInventario, 68, Obs, Obs, CveMovimientoAlmacen:=CveMovimientoEntrada, CveClasificacion:=CveClasificacion, Contabilizable:=EsContabilizable) Then
+ ' Respuesta = False
+ ' Else
- 'Dim Total As Decimal = 0
- If CveConceptoContable.Contiene(181, 78, 51, 69) Then
- Dim Dt As DataTable = ObjInventario.DtResultados.FiltraParametros("", "", {"CveClasificacion"}).Copy
+ ' 'Dim Total As Decimal = 0
+ ' If CveConceptoContable.Contiene(181, 78, 51, 69) Then
+ ' Dim Dt As DataTable = ObjInventario.DtResultados.FiltraParametros("", "", {"CveClasificacion"}).Copy
- For Each Dr As DataRow In Dt.Rows
- Dim Total As Decimal = ObjInventario.DtResultados.FiltraParametros($"CveClasificacion = {Dr("CveClasificacion")}").SUM("Total").RoundSQL()
+ ' For Each Dr As DataRow In Dt.Rows
+ ' Dim Total As Decimal = ObjInventario.DtResultados.FiltraParametros($"CveClasificacion = {Dr("CveClasificacion")}").SUM("Total").RoundSQL()
- If Not ObjConta.AddPrePolizasDetalle(CvePrePolizaEntrada, Not TipoMovtoAlmacen, Total, Total, CveConceptoContable, LblFolio.Text, Obs, 0, CveMovimientoAlmacen:=CveMovimientoEntrada, CveClasificacion:=Dr("CveClasificacion").ToString.ToEntero, CveSubProyecto:=tCveSubProyecto) Then
- Respuesta = False
- End If
- Next
- Else
- If Not ObjConta.AddPrePolizasDetalle(CvePrePolizaEntrada, Not TipoMovtoAlmacen, tValorInventario, tValorInventario, CveConceptoContable, Obs, Obs, CveMovimientoAlmacen:=CveMovimientoEntrada, CveClasificacion:=CveClasificacion, Contabilizable:=EsContabilizable) Then
- Respuesta = False
- End If
- End If
- End If
- Else
- Respuesta = False
- End If
+ ' If Not ObjConta.AddPrePolizasDetalle(CvePrePolizaEntrada, Not TipoMovtoAlmacen, Total, Total, CveConceptoContable, LblFolio.Text, Obs, 0, CveMovimientoAlmacen:=CveMovimientoEntrada, CveClasificacion:=Dr("CveClasificacion").ToString.ToEntero, CveSubProyecto:=tCveSubProyecto) Then
+ ' Respuesta = False
+ ' End If
+ ' Next
+ ' Else
+ ' If Not ObjConta.AddPrePolizasDetalle(CvePrePolizaEntrada, Not TipoMovtoAlmacen, tValorInventario, tValorInventario, CveConceptoContable, Obs, Obs, CveMovimientoAlmacen:=CveMovimientoEntrada, CveClasificacion:=CveClasificacion, Contabilizable:=EsContabilizable) Then
+ ' Respuesta = False
+ ' End If
+ ' End If
+ ' End If
+ 'Else
+ ' Respuesta = False
+ 'End If
End If
@@ -22158,7 +22213,8 @@ Partial Class Compras_Compras
#Region "PRONTO PAGO"
Public Function GeneraRNC(ByRef sqltransaccion As SqlTransaction, CveCompraRegistrada As Integer, ByRef CompraActual As Compra, ByRef ObjConta As ClsContabilidad, CvePrePoliza As Integer,
- CveProveedor As Integer, NombreProveedor As String, Fecha As Date, Descripcion As String, CveMoneda As Integer, Serie As String, Folio As String) As Boolean
+ CveProveedor As Integer, NombreProveedor As String, Fecha As Date, Descripcion As String, CveMoneda As Integer, Serie As String, Folio As String, Optional EsDRMN As Boolean = False) As Boolean
+ CveCompraDRMC = -1
Dim respuesta As Boolean = True
Dim PorcentajeIVA As Decimal = TmpDT.MAX("IVAPorcentaje").ToDecimal
@@ -22191,7 +22247,7 @@ Partial Class Compras_Compras
.NombreProveedor = NombreProveedor,
.Fecha = Fecha,
.CveMoneda = CveMoneda,
- .Serie = Serie,
+ .Serie = If(EsDRMN, $"DRNC{Serie}", Serie),
.Folio = Folio,
.CveCompraAmortizacion = CveCompraRegistrada
}
@@ -22220,6 +22276,7 @@ Partial Class Compras_Compras
Pago.AplicaAcreditable = False
Pago.TipoPago = "RNC"
Pago.Fecha = CompraActual.Fecha 'toma la misma fecha de la provisión en el pago de NC
+ CveCompraDRMC = CompraRNC.CveCompra
respuesta = Not AplicaPrePolizaPagoCompra(CompraActual, Pago, CvePrePoliza, ObjConta)
Else
respuesta = False