diff --git a/Compras/Compras.aspx b/Compras/Compras.aspx index 660c5a22c..fff9c865e 100644 --- a/Compras/Compras.aspx +++ b/Compras/Compras.aspx @@ -1342,7 +1342,14 @@ <%--3--%> - + <%----%> + + Producto + + + + + <%--4--%> <%--5--%> @@ -1439,6 +1446,7 @@ Producto + diff --git a/Compras/Compras.aspx.vb b/Compras/Compras.aspx.vb index 48d4a0c62..43418882f 100644 --- a/Compras/Compras.aspx.vb +++ b/Compras/Compras.aspx.vb @@ -1228,6 +1228,19 @@ Partial Class Compras_Compras End Set End Property + Private Property TienePermisoKardex As Boolean + Get + If ViewState("TienePermisoKardex") Is Nothing Then + ViewState("TienePermisoKardex") = False + End If + + Return Boolean.Parse(ViewState("TienePermisoKardex").ToString) + End Get + Set(value As Boolean) + ViewState("TienePermisoKardex") = value + End Set + End Property + Private Property CveCompraDRMC As Integer Get If ViewState("CveCompraDRMC") Is Nothing Then @@ -1246,6 +1259,7 @@ Partial Class Compras_Compras 'ImgBtnBuscarOC.Attributes.Add("data-toggle", "tooltip") 'ImgBtnBuscarOC.Attributes.Add("data-placement", "top") EsGrupoDiaz = If(UsuarioActual.Empresa.Funcionalidad(382) = "1", True, False) + TienePermisoKardex = If(UsuarioActual.TienePermisoPagina(224), True, False) CargaDatosAgregarPS() TieneAnticiposXML = False @@ -11252,6 +11266,14 @@ Partial Class Compras_Compras Protected Sub GVINV_RowDataBound(sender As Object, e As GridViewRowEventArgs) Handles GvInv.RowDataBound If e.Row.RowType = DataControlRowType.DataRow Then + + + If TienePermisoKardex Then + e.Row.FCLiteral("LtlPS").Visible = False + e.Row.FCHyperLink("HlPS").Visible = True + e.Row.FCHyperLink("HLPS").NavigateUrl = $"../Inventarios/Kardex.aspx?CvePS={e.Row.DataKey("CvePS")}" + End If + Dim AplicaLote As Boolean = e.Row.DBCampo("AplicaLote").ToBool Dim AplicaCaducidad As Boolean = e.Row.DBCampo("AplicaCaducidad").ToBool @@ -19144,84 +19166,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 +19270,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 @@ -19619,6 +19657,13 @@ Partial Class Compras_Compras e.Row.Font.Bold = True End If Else + + If TienePermisoKardex Then + e.Row.FCLiteral("LtlPS").Visible = False + e.Row.FCHyperLink("HlPS").Visible = True + e.Row.FCHyperLink("HLPS").NavigateUrl = $"../Inventarios/Kardex.aspx?CvePS={e.Row.DataKey("CvePS")}" + End If + e.Row.Cells(3).HorizontalAlign = HorizontalAlign.Left End If End If diff --git a/Empresas/189/Formatos/Entradas.rdlc b/Empresas/189/Formatos/Entradas.rdlc index b1f0e2451..c7cf50e59 100644 --- a/Empresas/189/Formatos/Entradas.rdlc +++ b/Empresas/189/Formatos/Entradas.rdlc @@ -425,7 +425,7 @@ - Código Prov. + # Parte @@ -1902,7 +1903,7 @@ - =IIF(LEN(Parameters!SubProyectoEntrega.Value) > 0,"Lugar de Entrega: " + Parameters!SubProyectoEntrega.Value,"") + =IIF(LEN(Parameters!SubProyectoEntrega.Value) > 0 or LEN(Parameters!ProveedorLugar.Value) > 0,"Lugar de Entrega: " + Parameters!SubProyectoEntrega.Value,"") + + =Parameters!ProveedorLugar.Value + +