diff --git a/App_Code/ClsClientes.vb b/App_Code/ClsClientes.vb index a7804beb0..54fe23b28 100644 --- a/App_Code/ClsClientes.vb +++ b/App_Code/ClsClientes.vb @@ -1299,6 +1299,25 @@ Public Class ClsClientes Return Retorno End Function + Public Function GetVentasRemisionesPagos(CveCliente As Integer, Ventas As String) As Boolean + Dim Retorno As Boolean = False + DataAdapter("PA_Vta_VentasRemisionesPagos") + + With SqlAdapter.SelectCommand.Parameters + .Add("@CveCliente", SqlDbType.Int).Value = CveCliente + .Add("@Ventas", SqlDbType.VarChar).Value = Ventas + End With + + Try + SqlAdapter.Fill(Data) + Retorno = True + Catch ex As Exception + OnError("Ocurrió un error al obtener los pagos de las remisiones.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) + End Try + + Return Retorno + End Function + ''' ''' Obtiene las ventas que tienen Serie-Folio que no existen en la base de datos pero si en el xml y que esten en la base de datos pero no en el XML ''' diff --git a/Ventas/FacturacionGlobal.aspx.vb b/Ventas/FacturacionGlobal.aspx.vb index b766d3436..370b40595 100644 --- a/Ventas/FacturacionGlobal.aspx.vb +++ b/Ventas/FacturacionGlobal.aspx.vb @@ -159,10 +159,16 @@ Partial Class Ventas_FacturacionGlobal SbRemisiones.Remove(SbRemisiones.Length - 1, 1) Dim DtRemisionesPS As New DataTable() + Dim DtPagos As New DataTable() + Dim ObjClientes As New ClsClientes If ObjClientes.GetVentasRemisionesTotales(CveCliente, SbRemisiones.ToString(), 1) Then DtRemisionesPS = ObjClientes.DtResultados.Copy() End If + + If ObjClientes.GetVentasRemisionesPagos(CveCliente, SbRemisiones.ToString()) Then + DtPagos = ObjClientes.DtResultados.Copy() + End If ObjClientes.Dispose() Dim ObjFactura = Modelos.Factura.CrearVentaNueva(UsuarioActual, Me.CveSubProyecto, CveCliente, CveMoneda, "Ing") @@ -173,6 +179,7 @@ Partial Class Ventas_FacturacionGlobal ObjFactura.RemisionesLista = RemisionesLista ObjFactura.DtRemisionesPS = DtRemisionesPS ObjFactura.DtRemisiones = DtRemisiones.FiltraParametros($"CveVenta IN ({SbRemisiones.ToString()})") + ObjFactura.DtPagos = DtPagos For Each Dr As DataRow In DtRemisionesPS.Rows ObjFactura.AgregarPS(Dr("CvePS").ToString().ToEntero(), Dr("Cantidad").ToString().ToDecimal(), Dr("PU").ToString().ToDecimal(), Dr("Descuento").ToString().ToDecimal, Dr("Obs").ToString(), CveUM:=Dr("CveUM").ToString().ToEntero(), @@ -184,17 +191,14 @@ Partial Class Ventas_FacturacionGlobal 'ObjFactura.DtInventario = ObjFactura.DtDetalle.FiltraParametros("CveTipoPs = 2") Dim SbAlert As New StringBuilder() - Dim urlFactura As String = "" Dim Retorno As Modelos.Factura.MMensajeFactura = Nothing Try Retorno = ObjFactura.EmitirFactura(True) If Retorno IsNot Nothing AndAlso Retorno.CveVenta > 0 Then - SbAlert.AppendFormat("{0}
", Retorno.Mensajes(Retorno.Mensajes.Count - 1)) + SbAlert.AppendFormat("{0}", Retorno.Mensajes(Retorno.Mensajes.Count - 1)) SbAlert.AppendFormat("
", Encripta(String.Format("OP=VTA&CVEVENTA={0}&PAG=1&GUARDAR=1", Retorno.CveVenta))) - - urlFactura = $"/Compras/PopUpVerFactura.aspx?P={Encripta(String.Format("OP=VTA&CVEVENTA={0}&PAG=1&GUARDAR=1", Retorno.CveVenta))}" Else SbAlert.Append("Ocurrió un error al generar la factura") End If