diff --git a/Contabilidad/RegPrePoliza.aspx b/Contabilidad/RegPrePoliza.aspx index 2836aea82..88e35e479 100644 --- a/Contabilidad/RegPrePoliza.aspx +++ b/Contabilidad/RegPrePoliza.aspx @@ -373,6 +373,9 @@ +
+
+
diff --git a/Contabilidad/RegPrePoliza.aspx.vb b/Contabilidad/RegPrePoliza.aspx.vb index 623229efd..e6580a22f 100644 --- a/Contabilidad/RegPrePoliza.aspx.vb +++ b/Contabilidad/RegPrePoliza.aspx.vb @@ -794,6 +794,18 @@ Partial Class ContabilidadC_RegPrePoliza e.Row.FCLinkButton("ImgBancos").CssClass = "btn btn-circle btn-sm green" End If End If + + If e.Row.DataKey("CveConcepto").ToEntero.Contiene(17) Then + e.Row.FCDropDownList("DdlProveedores").Visible = True + e.Row.FCDropDownList("DdlProveedores").DataSource = GlobalDTCompProveedores(UsuarioActual.CveEmpresa) + e.Row.FCDropDownList("DdlProveedores").DataBind() + e.Row.FCDropDownList("DdlProveedores").Items.Insert(0, New ListItem(" - ", "-1")) + + 'If CveTipoTransaccion > 0 And CveCuenta > 0 And Folio.Length > 0 And ImporteDocumento > 0 And Beneficiario.Length > 0 Then + ' e.Row.FCLinkButton("ImgPagoCompra").CssClass = "btn btn-circle btn-sm green" + 'End If + End If + End If End Sub @@ -854,15 +866,20 @@ Partial Class ContabilidadC_RegPrePoliza If ObjIE.GetBancosIE(CveIE, -1, -1, "-1", -1, "-1", "-1", -1, -1, -1, -1, -1, MinFecha, MaxFecha, MinFecha, MaxFecha, MinFecha, MaxFecha, -1, -1, UsuarioActual.CveEmpresa) Then FolioIE = ObjIE.Folio End If - End If - - + End If + + + Dim CveProveedor As Integer = -1 + Dim CveCompra As Integer = -1 'inserto las compras que voy a pagarDdlSaldos For Each gvr As GridViewRow In GvMov.Rows If gvr.DataKey("IDCuenta").ToEntero > 0 Then IdCtaContable = gvr.DataKey("IDCuenta") End If + CveProveedor = gvr.DataKey("CveProveedor").ToEntero + CveCompra = gvr.DataKey("CveCompra").ToEntero + CveConcepto = gvr.DataKey("CveConcepto").ToEntero If gvr.DataKey("TipoMovto").ToDouble <> 0 Then Importe = gvr.FCTextBox("TxtAbono").Text.ToDouble @@ -870,6 +887,11 @@ Partial Class ContabilidadC_RegPrePoliza Else Importe = gvr.FCTextBox("TxtCargo").Text.ToDouble TipoMovto = False + End If + 'Registra pago de compra + If CveConcepto = 17 Then + CveProveedor = gvr.FCDropDownList("DdlProveedores").SelectedValue.ToEntero + CveCompra = gvr.FCDropDownList("DdlCompras").SelectedValue.ToEntero End If If CveConcepto = 41 Then @@ -890,7 +912,7 @@ Partial Class ContabilidadC_RegPrePoliza If Importe <> 0 Then If ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovto, Importe, gvr.FCLiteral("LtlReferencia").Text, gvr.DataKey("CveConcepto").ToEntero, gvr.FCTextBox("TxtConcepto").Text, TxtFecha.Text.ToDate, IdCtaContable, -1, CveSubProyecto:=gvr.FCDropDownList("DdlSubProyecto").SelectedValue.ToEntero, CveIE:=CveIE, - CveProveedor:=gvr.DataKey("CveProveedor").ToEntero, CveCompra:=gvr.DataKey("CveCompra").ToEntero, + CveProveedor:=CveProveedor, CveCompra:=CveCompra, CvePersonal:=gvr.DataKey("CvePersonal").ToEntero, CveClasificacion:=gvr.DataKey("CveClasificacion").ToEntero, ImporteMX:=Importe, CveTipoGasto:=gvr.FCDropDownList("DdlTipoGasto").SelectedValue.ToEntero, CveCliente:=gvr.DataKey("CveCliente").ToEntero, CveVenta:=gvr.DataKey("CveVenta").ToEntero, TipoCambio:=If(gvr.DataKey("TC").ToString.ToDouble > 0, gvr.DataKey("TC").ToString.ToDouble, 1), @@ -1560,10 +1582,34 @@ Partial Class ContabilidadC_RegPrePoliza Protected Sub LnkComplementoPago_Click(sender As Object, e As EventArgs) GeneraTimbre(CvePrePoliza) - End Sub + End Sub #End Region - - - + + + + Protected Sub DdlProveedores_SelectedIndexChanged1(sender As Object, e As EventArgs) + Dim ddl As DropDownList = CType(sender, DropDownList) + Dim ddl2 As DropDownList = DirectCast(ddl.BindingContainer, GridViewRow).FCDropDownList("DdlCompras") + CargaCompras2(ddl.SelectedValue.ToEntero, ddl2) + End Sub + + Private Sub CargaCompras2(CveProveedor As Integer, ddl As DropDownList) + + Dim ObjCompras As New ClsCompras + + ddl.ClearSelection() + If ObjCompras.GetCompras(-1, "-1", "-1", CveProveedor, -1, UsuarioActual.CveEmpresa) Then + ddl.DataSource = ObjCompras.DtResultados.FiltraParametros("Saldo > 0") + ddl.DataBind() + ddl.Items.Insert(0, New ListItem(" - ", "-1")) + ddl.Visible = True + Else + ddl.DataSource = Nothing + ddl.DataBind() + ddl.Items.Insert(0, New ListItem(" - ", "-1")) + + End If + ObjCompras.Dispose() + End Sub End Class diff --git a/Inventarios/RecepcionEntrega.aspx.vb b/Inventarios/RecepcionEntrega.aspx.vb index 4d3cf4f62..1194c521b 100644 --- a/Inventarios/RecepcionEntrega.aspx.vb +++ b/Inventarios/RecepcionEntrega.aspx.vb @@ -1868,112 +1868,7 @@ Partial Class Inventarios_RecepcionEntrega End If ' TERMINA: GARANTIAS - ' COMIENZA: VIRTUAL - If TipoDocto.Contiene("Ing") AndAlso UsuarioActual.Empresa.Funcionalidad(573) = "1" Then - Dim DtPSVirtual As New DataTable("DtTamanios") - DtPSVirtual.Columns.Add(New DataColumn("CvePS", GetType(Integer))) - DtPSVirtual.Columns.Add(New DataColumn("Cantidad", GetType(Decimal))) - DtPSVirtual.Columns.Add(New DataColumn("PU", GetType(Decimal))) - DtPSVirtual.Columns.Add(New DataColumn("CveUM", GetType(Integer))) - - Dim DtTamanios As DataTable = Nothing - - If ObjAcumuladores.TamañoGet(-1, UsuarioActual.CveEmpresa) Then - DtTamanios = ObjAcumuladores.DtResultados.Copy() - End If - - Dim CveConceptoMovimientoVirtual As Integer = -1 - Dim CveAlmacenVirtual As Integer = -1 - Dim CveMovimientoRelacionadoVirtual As Integer = -1 - Dim ValidaVirtual As Boolean = False - - If TipoMovimiento = 1 Then - For Each GvRow As GridViewRow In GvDatos.Rows - If GvRow.RowType = DataControlRowType.DataRow Then - - If GvRow.datakey("CveTamaño").tostring.toentero > 0 Then - ValidaVirtual = True ' si tiene tamaño, debe de tener virtual - Dim drr As DataRow = DtTamanios.FiltroPrimero(String.Format("CveTamaño={0}", GvRow.DataKey("CveTamaño"))) - If drr IsNot Nothing Then - - Dim CvePSCargo = drr("CvePSCargo").ToString().ToEntero() - Dim Row As DataRow = DtPSVirtual.NewRow() - Row("CvePS") = CvePSCargo - Row("Cantidad") = GvRow.FCTextBox("TbCantidadF").Text.ToDecimal() - Row("PU") = 0 - Row("CveUM") = GvRow.DataKey("CveUM").ToEntero() - - DtPSVirtual.Rows.Add(Row) - End If - - End If - - End If - Next - CveConceptoMovimientoVirtual = 3 - CveAlmacenVirtual = GlobalDTAlmacenUsuarios(UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, 24).FiltroPrimeroValor("CveAlmacen", $"CveSubProyecto={CveSubProyecto}").ToEntero() - - ElseIf TipoMovimiento = 2 Then - ValidaVirtual = True - Dim CveMovimientoSalidaDev As Integer = -1 - If ObjInventario.GetInv_Mov(CveVentaSurtir, UsuarioActual.CveEmpresa) Then - Dim RowMovimiento As DataRow = ObjInventario.DtResultados.FiltroPrimero("CvePS IS NULL AND CveTipoAlmacen = 24 AND CveConcepto = 3 AND CveVenta > 0") - CveMovimientoSalidaDev = RowMovimiento("CveMovimiento").ToString().ToEntero() - CveAlmacenVirtual = RowMovimiento("CveAlmacen").ToString().ToEntero() - CveMovimientoRelacionadoVirtual = CveMovimientoSalidaDev - Else - ErrorMovInv = True - TextoError = "Ocurrió un error al procesar el movimiento. Por favor vuelva a intentar." - End If - - 'CARGA CONCEPTOS DEVUELTOS EN LA VENTA - If ObjInventario.GetMovimientosDetalle(CveMovimientoSalidaDev, UsuarioActual.CveEmpresa) Then - DtPSVirtual = ObjInventario.DtResultados.Copy() - Else - ErrorMovInv = True - TextoError = "Ocurrió un error al procesar los movimientos de devolución. Por favor vuelva a intentar." - End If - CveConceptoMovimientoVirtual = 18 - End If - - If DtPSVirtual IsNot Nothing AndAlso DtPSVirtual.Rows.Count > 0 AndAlso CveAlmacenVirtual > 0 AndAlso CveConceptoMovimientoVirtual > 0 Then - CveMovimientoVirtual = ObjInventario.AddMovimiento(CveAlmacenVirtual, CveConceptoMovimientoVirtual, 1, TxtFecha.Text.ToDate, -1, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, -1, CveVentaSurtir, -1, -1, - Observaciones:=TxtObservaciones.Text.Trim, Guia:=TxtGuia.Text, CveMovimientoRelacionado:=CveMovimientoRelacionadoVirtual, Modulo:="RE/G6") - FolioVirtual = ObjInventario.Folio - - If CveMovimientoVirtual > 0 Then - For Each RowUsado As DataRow In DtPSVirtual.Rows - Dim CvePS = RowUsado("CvePS").ToString().ToEntero() - Dim CantidadUsado As Double = RowUsado("Cantidad").ToString().ToDouble() - Dim PU As Double = RowUsado("PU").ToString().ToDouble() - Dim CveUM As Integer = RowUsado("CveUM").ToString().ToEntero() - - If Not ObjInventario.AddMovimientoDetalle(CveMovimientoVirtual, CantidadUsado, CveUM, CvePS, PU, -1) Then - ErrorMovInv = True - TextoError = "Ocurrió un error al procesar los conceptos de traspaso de apartado. Por favor vuelva a intentar." - Exit For - End If - Next - Else - ErrorMovInv = True - End If - - Else - If ValidaVirtual Then - ErrorMovInv = True - TextoError = "Ocurrió un error al procesar el movimiento en almacen virtual. Por favor vuelva a intentar." - - End If - End If - - If DtPSVirtual.Rows.Count = 0 AndAlso ValidaVirtual = True Then - ErrorMovInv = True - TextoError = "No se tienen productos para el almacen virtual." - End If - End If - - ' TERMINA: VIRTUAL If Not ErrorMovInv Then Dim ConceptoMovimiento = 3 @@ -2316,8 +2211,81 @@ Partial Class Inventarios_RecepcionEntrega End If End If - 'AGREGA BITACORA A VENTA - If Not ErrorMovInv Then + ' COMIENZA: VIRTUAL + If TipoDocto.Contiene("Ing", "Dev") AndAlso UsuarioActual.Empresa.Funcionalidad(573) = "1" AndAlso CveMovimiento > 0 Then + Dim DtPSVirtual As New DataTable("DtTamanios") + + If ObjInventario.GetMovimientosDetalleVirtual(CveMovimiento, UsuarioActual.CveEmpresa) Then + DtPSVirtual = ObjInventario.DtResultados + End If + + ' + 'DtPSVirtual.Columns.Add(New DataColumn("CvePS", GetType(Integer))) + 'DtPSVirtual.Columns.Add(New DataColumn("Cantidad", GetType(Decimal))) + 'DtPSVirtual.Columns.Add(New DataColumn("PU", GetType(Decimal))) + 'DtPSVirtual.Columns.Add(New DataColumn("CveUM", GetType(Integer))) + + 'Dim DtTamanios As DataTable = Nothing + + 'If ObjAcumuladores.TamañoGet(-1, UsuarioActual.CveEmpresa) Then + ' DtTamanios = ObjAcumuladores.DtResultados.Copy() + 'End If + + Dim CveConceptoMovimientoVirtual As Integer = -1 + Dim CveAlmacenVirtual As Integer = -1 + Dim CveMovimientoRelacionadoVirtual As Integer = CveMovimiento + Dim ValidaVirtual As Boolean = False + + If TipoMovimiento = 1 Then + CveConceptoMovimientoVirtual = 36 + CveAlmacenVirtual = GlobalDTAlmacenUsuarios(UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, 24).FiltroPrimeroValor("CveAlmacen", $"CveSubProyecto={CveSubProyecto}").ToEntero() + + ElseIf TipoMovimiento = 2 Then + ValidaVirtual = True + CveConceptoMovimientoVirtual = 37 + End If + + If DtPSVirtual IsNot Nothing AndAlso DtPSVirtual.Rows.Count > 0 AndAlso CveAlmacenVirtual > 0 AndAlso CveConceptoMovimientoVirtual > 0 Then + CveMovimientoVirtual = ObjInventario.AddMovimiento(CveAlmacenVirtual, CveConceptoMovimientoVirtual, 1, TxtFecha.Text.ToDate, -1, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, -1, CveVentaSurtir, -1, -1, + Observaciones:=TxtObservaciones.Text.Trim, Guia:=TxtGuia.Text, CveMovimientoRelacionado:=CveMovimientoRelacionadoVirtual, Modulo:="RE/G6") + FolioVirtual = ObjInventario.Folio + + If CveMovimientoVirtual > 0 Then + For Each RowUsado As DataRow In DtPSVirtual.Rows + Dim CvePS = RowUsado("CvePS").ToString().ToEntero() + Dim CantidadUsado As Double = RowUsado("Cantidad").ToString().ToDouble() + Dim PU As Double = RowUsado("PU").ToString().ToDouble() + Dim CveUM As Integer = RowUsado("CveUM").ToString().ToEntero() + + If Not ObjInventario.AddMovimientoDetalle(CveMovimientoVirtual, CantidadUsado, CveUM, CvePS, PU, -1) Then + ErrorMovInv = True + TextoError = "Ocurrió un error al procesar los conceptos de traspaso de apartado. Por favor vuelva a intentar." + Exit For + End If + Next + Else + ErrorMovInv = True + End If + + Else + If ValidaVirtual Then + ErrorMovInv = True + TextoError = "Ocurrió un error al procesar el movimiento en almacen virtual. Por favor vuelva a intentar." + + End If + End If + + If DtPSVirtual.Rows.Count = 0 AndAlso ValidaVirtual = True Then + ErrorMovInv = True + TextoError = "No se tienen productos para el almacen virtual." + End If + End If + + ' TERMINA: VIRTUAL + + + 'AGREGA BITACORA A VENTA + If Not ErrorMovInv Then Dim MensajeBitacora = If(TipoMovimiento = 1, "Surtida", "Devuelta") If Not ObjEventos.AddEventoBitacora(String.Format("Venta {2} en Folio: {1}", CveMovimiento, Folio, MensajeBitacora), "-1", UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, CveVenta:=CveVentaSurtir) Then ErrorMovInv = True diff --git a/Planeacion/CatSubProyectos.aspx.vb b/Planeacion/CatSubProyectos.aspx.vb index 0c13a7096..217c9a811 100644 --- a/Planeacion/CatSubProyectos.aspx.vb +++ b/Planeacion/CatSubProyectos.aspx.vb @@ -119,7 +119,7 @@ Partial Class CatSubProyectos Public Sub CargaDatos() Dim ObjSub As New ClsSubProyectos - If ObjSub.GetSubProyectos() Then + If ObjSub.GetSubProyectos(UsuarioActual.CveEmpresa) Then GvDatos.DataSource = ObjSub.DtResultados.FiltraParametros($"CveEmpresa = {UsuarioActual.CveEmpresa}") GvDatos.DataBind() End If @@ -204,7 +204,7 @@ Partial Class CatSubProyectos If ObjSubProyectos.RemoveSubProyecto(GvDatos.DataKeys(e.RowIndex).Value.ToString.ToEntero) Then GvDatos.EditIndex = -1 ViewState("DTSubProyectos") = ObjSubProyectos.DtResultados.FiltraParametros("CveEmpresa = " & UsuarioActual.CveEmpresa) - GlobalDTSubProyectos(-1) = ObjSubProyectos.DtResultados + GlobalDTSubProyectos(UsuarioActual.CveEmpresa) = ObjSubProyectos.DtResultados Alert("El SubProyecto se eliminó correctamente.", TipoMensaje.MsgInformacion) End If @@ -232,7 +232,7 @@ Partial Class CatSubProyectos If ObjSubProyectos.UpdateSubProyectoSegNeg(CveSubProyecto, CveSegmento, UsuarioActual.CveEmpresa) Then GvDatos.EditIndex = -1 ViewState("DTSubProyectos") = ObjSubProyectos.DtResultados.FiltraParametros("CveEmpresa = " & UsuarioActual.CveEmpresa) - GlobalDTSubProyectos(-1) = ObjSubProyectos.DtResultados + GlobalDTSubProyectos(UsuarioActual.CveEmpresa) = ObjSubProyectos.DtResultados Alert("Los cambios se guardaron correctamente.", TipoMensaje.MsgInformacion) Else ErrorSubProyecto = True