STF Reporte de Pedidos cambios de ps en observacion de remision por partida

This commit is contained in:
rakcsle
2024-09-04 16:16:29 -07:00
parent a9b520087b
commit 5c3880a413
2 changed files with 48 additions and 4 deletions

View File

@@ -121,7 +121,7 @@
<asp:GridView ID="GvDatos" runat="server" AutoGenerateColumns="False" EmptyDataText="No se encontraron Ventas con los filtros especificados"
CssClass="table table-striped table-advance table-hover Widthall ScrollAD mysmallbtn"
DataKeyNames="CveCliente,CveVendedor,CveSubProyecto,CvePS,CveUnidadMedida,Cantidad,PU,CveVentaDetalle,GastosEnvio,CveVenta,SerieFolio" data-sort="true" GridLines="None" Width="99%">
DataKeyNames="CveCliente,CveVendedor,CveSubProyecto,CvePS,CveUnidadMedida,Cantidad,PU,CveVentaDetalle,GastosEnvio,CveVenta,SerieFolio,CodigoPS,CantidadOrg,CvePSOrg,CodigoPSOrg" data-sort="true" GridLines="None" Width="99%">
<Columns>
<asp:TemplateField>

View File

@@ -1,6 +1,7 @@
Option Explicit On
Option Strict On
Imports System.Activities.Expressions
Imports System.Data
Imports DocumentFormat.OpenXml.Office.CustomUI
Imports Extensiones
@@ -90,6 +91,11 @@ Partial Class Ventas_RepPedidosSTF
Dim ObjVentas As New ClsVentas
If ObjVentas.GetRepPedidosSTF(DdlSubProyecto.SelectedValue.ToEntero, DdlVendedor.SelectedValue.ToEntero, UsuarioActual.CveEmpresa, Opcion, FechaInicio, FechaFin) Then
DatosGV = ObjVentas.DtResultados
DatosGV.Columns.Add("CantidadOrg", GetType(Decimal))
DatosGV.Columns.Add("CvePSOrg", GetType(Integer))
DatosGV.Columns.Add("CodigoPSOrg", GetType(String))
GvDatos.DataSource = DatosGV
End If
@@ -175,6 +181,15 @@ Partial Class Ventas_RepPedidosSTF
Exit Sub
End If
Dim CvPSOrg As Integer = DatosGV.Rows(GvDatos.EditIndex)("CvePSOrg").ToString.ToEntero
Dim CantidadOrg As Decimal = DatosGV.Rows(GvDatos.EditIndex)("CantidadOrg").ToString.ToDecimal
If Not (CvPSOrg > 0 Or CantidadOrg > 0) Then
DatosGV.Rows(GvDatos.EditIndex)("CantidadOrg") = GvDatos.Rows(GvDatos.EditIndex).DataKey("Cantidad")
DatosGV.Rows(GvDatos.EditIndex)("CvePSOrg") = GvDatos.Rows(GvDatos.EditIndex).DataKey("CvePS")
DatosGV.Rows(GvDatos.EditIndex)("CodigoPSOrg") = GvDatos.Rows(GvDatos.EditIndex).DataKey("CodigoPS")
End If
DatosGV.Rows(GvDatos.EditIndex)("Cantidad") = Cantidad
DatosGV.Rows(GvDatos.EditIndex)("CvePS") = CvePSNuevo
DatosGV.Rows(GvDatos.EditIndex)("CodigoPS") = PSNuevo
@@ -216,6 +231,10 @@ Partial Class Ventas_RepPedidosSTF
TmpDTRemis.Columns.Add("CveVendedor", GetType(Decimal))
TmpDTRemis.Columns.Add("GastosEnvio", GetType(Decimal))
TmpDTRemis.Columns.Add("Observacion", GetType(String))
TmpDTRemis.Columns.Add("CantidadOrg", GetType(Decimal))
TmpDTRemis.Columns.Add("CvePSOrg", GetType(Integer))
TmpDTRemis.Columns.Add("CodigoPSOrg", GetType(String))
'agruparo por cliente
For Each gvr As GridViewRow In GvDatos.Rows
@@ -233,10 +252,16 @@ Partial Class Ventas_RepPedidosSTF
drp("GastosEnvio") = gvr.DataKey("GastosEnvio").ToDecimal
drp("Observacion") = gvr.DataKey("SerieFolio")
drp("CantidadOrg") = gvr.DataKey("CantidadOrg").ToDecimal
drp("CvePSOrg") = gvr.DataKey("CvePSOrg").ToEntero
drp("CodigoPSOrg") = gvr.DataKey("CodigoPSOrg")
TmpDTRemis.Rows.Add(drp)
End If
Next
If TmpDTRemis IsNot Nothing AndAlso TmpDTRemis.Rows.Count = 0 Then
Alert("No se ha seleccionado ninguna partida, favor de seleccionar", TipoMensaje.MsgAdvertencia)
Exit Sub
@@ -254,7 +279,19 @@ Partial Class Ventas_RepPedidosSTF
For Each dr As DataRow In TmpDTRemis.FiltraParametros($"CveCliente ={drt("CveCliente")} AND CveVendedor = {drt("CveVendedor")} AND CveSubProyecto = {drt("CveSubProyecto")}").Rows
If ObjFactura IsNot Nothing Then
If Not ObjFactura.AgregarPS(dr("CvePS").ToString.ToEntero, dr("Cantidad").ToString.ToDecimal, dr("PU").ToString.ToDecimal, 0, dr("Observacion").ToString, CveSubProyecto:=dr("CveSubProyecto").ToString.ToEntero, CveVentaDetallePadre:=dr("CveVentaDetalle").ToString.ToEntero) Then
Dim Obs As String = dr("Observacion").ToString
If (dr("CantidadOrg").ToString.ToEntero > 0) AndAlso (dr("Cantidad").ToString.ToDecimal <> dr("CantidadOrg").ToString.ToDecimal) Then
Obs = $"{Obs}, Cantidad Original: {dr("CantidadOrg").ToString.ToDecimal.ToString("###,###,###.00")}"
End If
If (dr("CvePSOrg").ToString.ToEntero > 0) AndAlso (dr("CvePS").ToString.ToEntero <> dr("CvePSOrg").ToString.ToEntero) Then
Obs = $"{Obs}, Producto Original: {dr("CodigoPSOrg").ToString}"
End If
If Not ObjFactura.AgregarPS(dr("CvePS").ToString.ToEntero, dr("Cantidad").ToString.ToDecimal, dr("PU").ToString.ToDecimal, 0, Obs, CveSubProyecto:=dr("CveSubProyecto").ToString.ToEntero, CveVentaDetallePadre:=dr("CveVentaDetalle").ToString.ToEntero) Then
Alert("Error al agregar producto", TipoMensaje.MsgAdvertencia)
TieneError = True
Exit For
@@ -267,8 +304,15 @@ Partial Class Ventas_RepPedidosSTF
Next
If drt("GastosEnvio").ToString.ToDecimal > 0 Then
Dim tCvePSEnvio As Integer = usuarioactual.empresa.Funcionalidad(160).ToEntero
If Not ObjFactura.AgregarPS(tCvePSEnvio, 1, drt("GastosEnvio").ToString.ToDecimal, 0, drt("Observacion").ToString, CveSubProyecto:=drt("CveSubProyecto").ToString.ToEntero) Then
Dim tCvePSEnvio As Integer = UsuarioActual.Empresa.Funcionalidad(160).ToEntero
Dim Obs As String = drt("Observacion").ToString
If (drt("CantidadOrg").ToString.ToEntero > 0 Or drt("CvePSOrg").ToString.ToEntero > 0) AndAlso (drt("CvePS").ToString.ToEntero <> drt("CvePSOrg").ToString.ToEntero Or drt("Cantidad").ToString.ToDecimal <> drt("CantidadOrg").ToString.ToDecimal) Then
Obs = $"{Obs} - Cantidad Original: {drt("CantidadOrg").ToString.ToDecimal.ToString("###,###,###.00")}, Producto Original: {drt("CodigoPSOrg").ToString}"
End If
If Not ObjFactura.AgregarPS(tCvePSEnvio, 1, drt("GastosEnvio").ToString.ToDecimal, 0, Obs, CveSubProyecto:=drt("CveSubProyecto").ToString.ToEntero) Then
TieneError = True
End If
End If