-- devoluciones de compra que retorna RNC
This commit is contained in:
@@ -19144,84 +19144,100 @@ Partial Class Compras_Compras
|
||||
Protected Sub BtnDevolucion_Click(sender As Object, e As EventArgs)
|
||||
Dim ObjCompras As New ClsCompras
|
||||
Dim TieneError As Boolean = False
|
||||
Dim ImporteCompra As Decimal = 0
|
||||
Dim tCveSubProyeto As Integer = TmpDT.FiltroPrimeroValor("CveSubProyecto", " CveSubProyecto > 0").ToEntero
|
||||
Dim ModalidadDevolucion As Integer = 1 ' 1 - devolución para que alamcen la confirme, 2 - devolución en automático generando RNC
|
||||
|
||||
If UsuarioActual.Empresa.Funcionalidad(382) = "1" Then ModalidadDevolucion = 2
|
||||
|
||||
ObjCompras.IniciaTransacSQL()
|
||||
|
||||
Dim ImporteCompra As Decimal = 0
|
||||
If EstatusAlmacen = 0 Then
|
||||
If ModalidadDevolucion = 1 Then
|
||||
If EstatusAlmacen = 0 Then
|
||||
|
||||
For Each gvr As GridViewRow In GvSolDev.Rows
|
||||
Dim Cantidad As Decimal = gvr.FCTextBox("TxtCant").Text.ToDecimal
|
||||
Dim PU As Decimal = gvr.DataKey("PU").ToDecimal
|
||||
If gvr.FCTextBox("TxtCant").Text.ToDecimal > 0 Then
|
||||
ObjCompras.UpdateEstatusAlmacenDetalle(gvr.DataKey("CveCompraDetalle").ToEntero, 0, UsuarioActual.CveUsuario, CantidadDevolucion:=gvr.FCTextBox("TxtCant").Text.ToDecimal)
|
||||
ImporteCompra = ImporteCompra + ((PU * Cantidad))
|
||||
Else
|
||||
ObjCompras.UpdateEstatusAlmacenDetalle(gvr.DataKey("CveCompraDetalle").ToEntero, 1, UsuarioActual.CveUsuario, CantidadDevolucion:=0)
|
||||
End If
|
||||
Next
|
||||
|
||||
If Not TieneError AndAlso ObjCompras.UpdateEstatusAlmacen(CveCompra, If(EstatusAlmacen = 1, 0, 1), UsuarioActual.CveUsuario) Then
|
||||
EstatusAlmacen = If(EstatusAlmacen = 1, 0, 1)
|
||||
Alert(If(EstatusAlmacen = 1, "La solicitud de devolución de almacen se guardo correctamente.", "La solicitud de almacen se canceló correctamente."))
|
||||
End If
|
||||
|
||||
End If
|
||||
InicializaDevolucionAlmacen()
|
||||
Else
|
||||
|
||||
For Each gvr As GridViewRow In GvSolDev.Rows
|
||||
Dim Cantidad As Decimal = gvr.FCTextBox("TxtCant").Text.ToDecimal
|
||||
Dim PU As Decimal = gvr.DataKey("PU").ToDecimal
|
||||
If gvr.FCTextBox("TxtCant").Text.ToDecimal > 0 Then
|
||||
ObjCompras.UpdateEstatusAlmacenDetalle(gvr.DataKey("CveCompraDetalle").ToEntero, 0, UsuarioActual.CveUsuario, CantidadDevolucion:=gvr.FCTextBox("TxtCant").Text.ToDecimal)
|
||||
ImporteCompra = ImporteCompra + ((PU * Cantidad))
|
||||
Else
|
||||
ObjCompras.UpdateEstatusAlmacenDetalle(gvr.DataKey("CveCompraDetalle").ToEntero, 1, UsuarioActual.CveUsuario, CantidadDevolucion:=0)
|
||||
End If
|
||||
Next
|
||||
End If
|
||||
|
||||
ImporteRNC = ImporteCompra.RoundSQL
|
||||
ImporteRNC = ImporteCompra.RoundSQL
|
||||
|
||||
If ChkEsDevolucionDevInv.Checked Then
|
||||
|
||||
If ChkEsDevolucionDevInv.Checked Then
|
||||
Dim objConta As New ClsContabilidad(ObjCompras.IniciaTransacSQL)
|
||||
|
||||
Dim objConta As New ClsContabilidad(ObjCompras.IniciaTransacSQL)
|
||||
CvePrePoliza = objConta.AddPrePolizas("Compras/RncDevInv", 53, ImporteCompra, TxtTotal.Text.ToDouble, DdlMoneda.SelectedValue.ToEntero, TxtFecha.Text.ToDate, $"RNC Devolucion Inv {TxtSerie.Text}-{TxtFolio.Text}",
|
||||
UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, FolioFijo:=0, ReglaFolioPoliza:=ObjCompras.ObtenerReglaFolio(DdlTipoTransaccion.SelectedValue, DdlTipoTransaccionCaja.SelectedValue,
|
||||
UsuarioActual.CveEmpresa), CveTipoPoliza:=objConta.ObtenerTipoPoliza(DdlTipoTransaccion.SelectedValue, DdlTipoTransaccionCaja.SelectedValue, UsuarioActual.CveEmpresa))
|
||||
If CvePrePoliza > 0 Then
|
||||
|
||||
CvePrePoliza = objConta.AddPrePolizas("Compras/RncDevInv", 53, ImporteCompra, TxtTotal.Text.ToDouble, DdlMoneda.SelectedValue.ToEntero, TxtFecha.Text.ToDate, $"RNC Devolucion Inv {TxtSerie.Text}-{TxtFolio.Text}",
|
||||
UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, FolioFijo:=0, ReglaFolioPoliza:=ObjCompras.ObtenerReglaFolio(DdlTipoTransaccion.SelectedValue, DdlTipoTransaccionCaja.SelectedValue,
|
||||
UsuarioActual.CveEmpresa), CveTipoPoliza:=objConta.ObtenerTipoPoliza(DdlTipoTransaccion.SelectedValue, DdlTipoTransaccionCaja.SelectedValue, UsuarioActual.CveEmpresa))
|
||||
If CvePrePoliza > 0 Then
|
||||
Dim PorcentajeIVA As Decimal = TmpDT.MAX("IVAPorcentaje").ToDecimal
|
||||
|
||||
Dim PorcentajeIVA As Decimal = TmpDT.MAX("IVAPorcentaje").ToDecimal
|
||||
Dim CompraActual As New Compra
|
||||
CompraActual.CveCompra = CveCompra
|
||||
CompraActual.CveTipoConceptoProveedor = CveTipoConcepto
|
||||
CompraActual.CveProveedor = CveProveedor
|
||||
CompraActual.CveMoneda = DdlMoneda.SelectedValue.ToEntero
|
||||
CompraActual.Fecha = TxtFecha.Text.ToDate
|
||||
CompraActual.SerieFolio = TxtSerie.Text.Trim & "-" & TxtFolio.Text.Trim
|
||||
CompraActual.ProveedorNombre = HplProveedor.Text
|
||||
CompraActual.TC = TipoCambio
|
||||
CompraActual.Total = TxtTotal.Text.ToDecimal
|
||||
CompraActual.IVA = TxtIVA.Text.ToDecimal
|
||||
CompraActual.IVADeducible = TxtIVA.Text.ToDecimal
|
||||
CompraActual.IEPS = TxtIEPS.Text.ToDecimal
|
||||
CompraActual.RetIVA = TxtRetIVA.Text.ToDecimal
|
||||
CompraActual.RetISR = TxtRetISR.Text.ToDecimal
|
||||
CompraActual.CveConceptoRetISR = DdlRetISRConcepto.SelectedValue.ToEntero
|
||||
CompraActual.CveConceptoRetIVA = DdlRetIVAConcepto.SelectedValue.ToEntero
|
||||
CompraActual.PorcentajeIVA = PorcentajeIVA
|
||||
CompraActual.UsuarioActual = UsuarioActual
|
||||
CompraActual.CveSubProyecto = tCveSubProyeto
|
||||
CompraActual.EsImportacion = chkImportacion.Checked
|
||||
|
||||
Dim CompraActual As New Compra
|
||||
CompraActual.CveCompra = CveCompra
|
||||
CompraActual.CveTipoConceptoProveedor = CveTipoConcepto
|
||||
CompraActual.CveProveedor = CveProveedor
|
||||
CompraActual.CveMoneda = DdlMoneda.SelectedValue.ToEntero
|
||||
CompraActual.Fecha = TxtFecha.Text.ToDate
|
||||
CompraActual.SerieFolio = TxtSerie.Text.Trim & "-" & TxtFolio.Text.Trim
|
||||
CompraActual.ProveedorNombre = HplProveedor.Text
|
||||
CompraActual.TC = TipoCambio
|
||||
CompraActual.Total = TxtTotal.Text.ToDecimal
|
||||
CompraActual.IVA = TxtIVA.Text.ToDecimal
|
||||
CompraActual.IVADeducible = TxtIVA.Text.ToDecimal
|
||||
CompraActual.IEPS = TxtIEPS.Text.ToDecimal
|
||||
CompraActual.RetIVA = TxtRetIVA.Text.ToDecimal
|
||||
CompraActual.RetISR = TxtRetISR.Text.ToDecimal
|
||||
CompraActual.CveConceptoRetISR = DdlRetISRConcepto.SelectedValue.ToEntero
|
||||
CompraActual.CveConceptoRetIVA = DdlRetIVAConcepto.SelectedValue.ToEntero
|
||||
CompraActual.PorcentajeIVA = PorcentajeIVA
|
||||
CompraActual.UsuarioActual = UsuarioActual
|
||||
CompraActual.CveSubProyecto = tCveSubProyeto
|
||||
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, EsDRMN:=True) Then
|
||||
TieneError = True
|
||||
End If
|
||||
|
||||
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, EsDRMN:=True) Then
|
||||
Else
|
||||
TieneError = True
|
||||
End If
|
||||
|
||||
Else
|
||||
TieneError = True
|
||||
End If
|
||||
|
||||
If Not CveCompraDRMC > 0 Then
|
||||
TieneError = True
|
||||
End If
|
||||
|
||||
If Not TieneError Then
|
||||
If Not RegistroInventarioDevTemporal(ObjCompras.IniciaTransacSQL, tCveSubProyeto, CveCompraDRMC, EsCancelacion:=False) Then
|
||||
If Not CveCompraDRMC > 0 Then
|
||||
TieneError = True
|
||||
End If
|
||||
|
||||
If Not TieneError Then
|
||||
If Not RegistroInventarioDevTemporal(ObjCompras.IniciaTransacSQL, tCveSubProyeto, CveCompraDRMC, EsCancelacion:=False) Then
|
||||
TieneError = True
|
||||
End If
|
||||
End If
|
||||
|
||||
End If
|
||||
|
||||
End If
|
||||
|
||||
If Not TieneError AndAlso ObjCompras.UpdateEstatusAlmacen(CveCompra, If(EstatusAlmacen = 1, 0, 1), UsuarioActual.CveUsuario) Then
|
||||
EstatusAlmacen = If(EstatusAlmacen = 1, 0, 1)
|
||||
Alert(If(EstatusAlmacen = 1, "La solicitud de devolución de almacen se guardo correctamente.", "La solicitud de almacen se canceló correctamente."))
|
||||
End If
|
||||
|
||||
If Not TieneError Then
|
||||
@@ -19232,7 +19248,7 @@ Partial Class Compras_Compras
|
||||
End If
|
||||
|
||||
ObjCompras.Dispose()
|
||||
InicializaDevolucionAlmacen()
|
||||
|
||||
End Sub
|
||||
|
||||
Function RegistroInventarioDevTemporal(ByRef transaccion As SqlTransaction, tCveSubProyecto As Integer, CveCompraDRMCRelacionada As Integer, EsCancelacion As Boolean) As Boolean
|
||||
|
||||
Reference in New Issue
Block a user