Entrega por adelantado en BDH, Remisiones de NC en aplicaciones de NC

This commit is contained in:
2019-10-05 18:03:14 -07:00
parent a50cafde75
commit 6cc587a898
5 changed files with 236 additions and 4 deletions

View File

@@ -5109,6 +5109,8 @@ Namespace Modelos
Public Property Total As Decimal Public Property Total As Decimal
Public Property Otros As Decimal Public Property Otros As Decimal
Public Property TotalRemNCAplicado As Decimal
#Region "Totales por Tipo de cambio" #Region "Totales por Tipo de cambio"
Public ReadOnly Property SubTotalTC As Decimal Public ReadOnly Property SubTotalTC As Decimal

View File

@@ -4,4 +4,4 @@
28/08/2019:05:48 p. m. No se especifico a remitente - SIG - Se Genero una Recepción de Usados con el folio: 80 28/08/2019:05:48 p. m. No se especifico a remitente - SIG - Se Genero una Recepción de Usados con el folio: 80
02/09/2019:11:00 a. m. From:'signotificaciones@adssistemas.mx' - Para:'x@x.com' - Asunto:'Entrega de Factura SUCURSAL NARANJO SN-22' - CCP: '' - Adjuntos: 1 02/09/2019:11:00 a. m. From:'signotificaciones@adssistemas.mx' - Para:'x@x.com' - Asunto:'Entrega de Factura SUCURSAL NARANJO SN-22' - CCP: '' - Adjuntos: 1

View File

@@ -2517,6 +2517,18 @@ Partial Class PV
ObjFactura.DtInventario = DtInv.FiltraParametros("Seleccionado = 1") ObjFactura.DtInventario = DtInv.FiltraParametros("Seleccionado = 1")
End If End If
'VALIDA ENTREGA POR ADELANTADO
If UsuarioActual.Empresa.Funcionalidad(145) = "1" Then
'INCRUSTAMOS ALMACEN ENTREGA POR ADELANTADO CUANDO SEA REMISION Y NO TRAIGA ASIGNADO POR EL USUARIO
If ObjFactura.CveAlmacenTraspasoDestino <= 0 And ObjFactura.TipoDocto = "Rem" Then
ObjFactura.CveAlmacenTraspasoDestino = GlobalDTAlmacen(UsuarioActual.CveEmpresa).FiltroPrimeroValor("CveAlmacen", $"CveTipoAlmacen = 10 AND CveSubProyecto = {DdlSubProyectoDatos.SelectedValue}").ToString.ToEntero
End If
'SI LA SUCURSAL NO TIENE ENTREGA POR ADELANTADO
If ObjFactura.CveAlmacenTraspasoDestino <= 0 And ObjFactura.TipoDocto = "Rem" Then
ErrorList.Add("Ocurrió un error al seleccionar el almacen de entrega por adelantado de la sucursal.")
End If
End If
End Sub End Sub

View File

@@ -5807,8 +5807,16 @@
</div> </div>
<div class="row form-group"> <div class="row form-group">
<div class="col-md-2"> <div class="col-md-2">
<asp:Literal ID="LtlTitleImportesRem" runat="server" Visible="false" Text="Importe Remisiones:"></asp:Literal>
</div> </div>
<div class="col-md-4"> <div class="col-md-4">
<div id="DivTxtRemNC" runat="server" visible="false">
<div class="input-group">
<span class="input-group-addon">$</span>
<asp:TextBox ID="TxtImportesRemisionesNC" ClientIDMode="Static" Text="0.00" CssClass="form-control input-sm" runat="server" Enabled="false"/>
</div>
<ajax:FilteredTextBoxExtender ID="FTIRNC" runat="server" TargetControlID="TxtImportesRemisionesNC" FilterType="Custom, Numbers" ValidChars=".," />
</div>
</div> </div>
<div class="col-md-2"> <div class="col-md-2">
Por Porcentaje: Por Porcentaje:
@@ -5823,6 +5831,17 @@
<ajax:ValidatorCalloutExtender ID="VCENCPorcentaje" runat="server" HighlightCssClass="vco" TargetControlID="RVNCPorcentaje" Width="300px"></ajax:ValidatorCalloutExtender> <ajax:ValidatorCalloutExtender ID="VCENCPorcentaje" runat="server" HighlightCssClass="vco" TargetControlID="RVNCPorcentaje" Width="300px"></ajax:ValidatorCalloutExtender>
</div> </div>
</div> </div>
<div id="DivBtnRemNC" runat="server" visible="false" class="row form-group">
<div class="col-md-2">
</div>
<div class="col-md-4">
<button type="button" class="btn btn-primary" data-toggle="modal" data-target="#ModalAplicarRemisionesNC">
Aplicar Remisiones
</button>
</div>
<div class="col-md-6">
</div>
</div>
<div class="row" style="margin-right: 10px; margin-top: 18px;" align="right"> <div class="row" style="margin-right: 10px; margin-top: 18px;" align="right">
<input type="text" id="TxtBusqueda10" class="form-control input-sm" onkeyup="<%= String.Format("FiltrarTabla('TxtBusqueda10','{0}')", GvCxC.ClientID) %>" style="display: inline-block; margin-right: -20px; width: 150px;" /> <input type="text" id="TxtBusqueda10" class="form-control input-sm" onkeyup="<%= String.Format("FiltrarTabla('TxtBusqueda10','{0}')", GvCxC.ClientID) %>" style="display: inline-block; margin-right: -20px; width: 150px;" />
<a href="javascript:;" onclick="<%= String.Format("FiltrarTabla('TxtBusqueda10','{0}')", GvCxC.ClientID) %>" style="margin-top: -3px;" class="btn btn-circle btn-sm label-info"><i class="icon-magnifier"></i></a> <a href="javascript:;" onclick="<%= String.Format("FiltrarTabla('TxtBusqueda10','{0}')", GvCxC.ClientID) %>" style="margin-top: -3px;" class="btn btn-circle btn-sm label-info"><i class="icon-magnifier"></i></a>
@@ -5916,6 +5935,61 @@
</ContentTemplate> </ContentTemplate>
</asp:UpdatePanel> </asp:UpdatePanel>
</div> </div>
<%--APLICAR REMISIONES DE NC--%>
<div id="ModalAplicarRemisionesNC" class="modal ADS fade" role="dialog">
<asp:UpdatePanel ID="UpModalRemisionesNC" class="modal-dialog rowpadding" tabindex="-1" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal">&times;</button>
<h4 class="modal-title">Aplicar Remisiones de Nota de Crédito</h4>
</div>
<div class="modal-body">
<div class="row" style="margin-right: 10px; margin-top: 18px;" align="right">
<input type="text" id="TxtBusquedaRemNC" class="form-control input-sm" onkeyup="<%= String.Format("FiltrarTabla('TxtBusquedaRemNC','{0}')", GvRemisionesNC.ClientID) %>" style="display: inline-block; margin-right: -20px; width: 150px;" />
<a href="javascript:;" onclick="<%= String.Format("FiltrarTabla('TxtBusquedaRemNC','{0}')", GvRemisionesNC.ClientID) %>" style="margin-top: -3px;" class="btn btn-circle btn-sm label-info"><i class="icon-magnifier"></i></a>
</div>
<div class="row" style="max-height: 10px">
<div class="col-md-12" style="height: 440px; overflow: auto">
<asp:GridView ID="GvRemisionesNC" runat="server" AutoGenerateColumns="False"
DataKeyNames="CveVenta" CssClass="table table-striped table-advance table-hover Widthall mysmallbtn" GridLines="None">
<Columns>
<asp:TemplateField>
<ItemTemplate>
<asp:CheckBox ID="ChkAplicar" runat="server" />
</ItemTemplate>
</asp:TemplateField>
<asp:HyperLinkField DataNavigateUrlFields="CveVenta" Target="_blank" DataNavigateUrlFormatString="/Ventas/Ventas.aspx?CveVenta={0}" DataTextField="SerieFolio" HeaderText="Folio" ItemStyle-Width="150px" ItemStyle-HorizontalAlign="Left" />
<asp:BoundField HeaderText="Fecha" DataField="Fecha" DataFormatString="{0:d}" ItemStyle-HorizontalAlign="Center" />
<asp:TemplateField HeaderText="Total" ItemStyle-HorizontalAlign="Right">
<ItemTemplate>
<asp:Literal ID="LtlTotal" runat="server" Text='<%# Eval("Original", "{0:N2}") %>'></asp:Literal>
<asp:Literal ID="LtlAbrev" runat="server" Text='<%# Eval("Abreviatura") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Saldo" ItemStyle-HorizontalAlign="Right">
<ItemTemplate>
<asp:Literal ID="LtlSaldo" runat="server" Text='<%# Eval("Saldo", "{0:N2}") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField>
<ItemTemplate>
<asp:TextBox ID="TxtImporte" CssClass="myvalue" runat="server" Width="75px" />
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
</div>
</div>
</div>
<div class="modal-footer">
<button id="CancelarAplicarRemNC" type="button" class="btn btn-default" data-dismiss="modal">Cerrar</button>
<asp:Button Text="Aplicar Remisiones" ID="BtnAplicarRemisionNC" OnClick="BtnAplicarRemisionNC_Click" CssClass="btn btn-primary" runat="server" />
</div>
</div>
</ContentTemplate>
</asp:UpdatePanel>
</div>
<%-- MODAL APLICAR DEVOLUCIONES --%> <%-- MODAL APLICAR DEVOLUCIONES --%>
<div class="modal ADS fade" id="DivAplicaDevolucion" role="dialog"> <div class="modal ADS fade" id="DivAplicaDevolucion" role="dialog">
@@ -6290,6 +6364,12 @@
$get('TxtTotalGv').value = FormatoNumero(TotalImportes, 2); $get('TxtTotalGv').value = FormatoNumero(TotalImportes, 2);
$get('TxtNCImporte').value = FormatoNumero(total, 2); $get('TxtNCImporte').value = FormatoNumero(total, 2);
if ('<%= UsuarioActual.Empresa.Funcionalidad(344) %>' == '1')
{
CompararNC();
}
} }
function CalculaTotalChk(Total, SubTotal, TxtTotalGv, TxtImporte, Saldo, Porcentaje, Chk) { function CalculaTotalChk(Total, SubTotal, TxtTotalGv, TxtImporte, Saldo, Porcentaje, Chk) {
@@ -6314,6 +6394,11 @@
$get('TxtNCImporte').value = FormatoNumero(ToDouble($get('TxtNCImporte').value) - ToDouble(TxtImporte.value), 2); $get('TxtNCImporte').value = FormatoNumero(ToDouble($get('TxtNCImporte').value) - ToDouble(TxtImporte.value), 2);
TxtImporte.value = ""; TxtImporte.value = "";
} }
if ('<%= UsuarioActual.Empresa.Funcionalidad(344) %>' == '1')
{
CompararNC();
}
} }
function LimitaCantidadNCMasivo(Porcentaje, Saldo, Total, Subtotal, TxtTotalGv, TxtTotal, Chk, TxtImporte) { function LimitaCantidadNCMasivo(Porcentaje, Saldo, Total, Subtotal, TxtTotalGv, TxtTotal, Chk, TxtImporte) {
@@ -6354,6 +6439,10 @@
TxtTotal.value = FormatoNumero(TotalConPorcentaje, 2); TxtTotal.value = FormatoNumero(TotalConPorcentaje, 2);
if ('<%= UsuarioActual.Empresa.Funcionalidad(344) %>' == '1')
{
CompararNC();
}
} }
function displayToastr(x) { function displayToastr(x) {
@@ -7328,5 +7417,33 @@
$('#divAgregarCliente').modal('hide'); $('#divAgregarCliente').modal('hide');
} }
function CompararNC() {
var TotalRem = ToDouble(document.getElementById('<%= TxtImportesRemisionesNC.ClientID %>').value);
var TotalNC = ToDouble(document.getElementById('<%= TxtNCImporte.ClientID %>').value);
if (TotalRem == TotalNC) {
document.getElementById('<%= TxtImportesRemisionesNC.ClientID %>').style.border = "2px solid #04B431";
document.getElementById('<%= TxtNCImporte.ClientID %>').style.border = "2px solid #04B431";
document.getElementById('<%= TxtImportesRemisionesNC.ClientID %>').style.color = "";
document.getElementById('<%= TxtNCImporte.ClientID %>').style.color = "";
}
else {
document.getElementById('<%= TxtImportesRemisionesNC.ClientID %>').style.border = "2px solid #ff0000";
document.getElementById('<%= TxtNCImporte.ClientID %>').style.border = "2px solid #ff0000";
document.getElementById('<%= TxtImportesRemisionesNC.ClientID %>').style.color = "#ff0000";
document.getElementById('<%= TxtNCImporte.ClientID %>').style.color = "#ff0000";
}
}
function CerrarModalRemNC() {
if ('<%= UsuarioActual.Empresa.Funcionalidad(344) %>' == '1')
{
CompararNC();
}
$('#ModalAplicarRemisionesNC').modal('hide');
}
</script> </script>
</asp:Content> </asp:Content>

View File

@@ -257,6 +257,14 @@ Partial Class Ventas
ViewState("RemisionesLista") = value ViewState("RemisionesLista") = value
End Set End Set
End Property End Property
Private Property ListaRemisionesNC As List(Of Modelos.Factura)
Get
Return If(IsNothing(ViewState("ListaRemisionesNC")), Nothing, CType(ViewState("ListaRemisionesNC"), List(Of Modelos.Factura)))
End Get
Set(value As List(Of Modelos.Factura))
ViewState("ListaRemisionesNC") = value
End Set
End Property
Private Property Pedidos2Lista As List(Of Integer) Private Property Pedidos2Lista As List(Of Integer)
Get Get
Return If(IsNothing(ViewState("Pedidos2Lista")), Nothing, CType(ViewState("Pedidos2Lista"), List(Of Integer))) Return If(IsNothing(ViewState("Pedidos2Lista")), Nothing, CType(ViewState("Pedidos2Lista"), List(Of Integer)))
@@ -1733,6 +1741,9 @@ Partial Class Ventas
If UsuarioActual.Empresa.Funcionalidad(344).ToString = "1" Then If UsuarioActual.Empresa.Funcionalidad(344).ToString = "1" Then
DdlTipoComprobante.Items.Insert(DdlTipoComprobante.Items.Count, New ListItem("NC de Remisión", "RNC")) DdlTipoComprobante.Items.Insert(DdlTipoComprobante.Items.Count, New ListItem("NC de Remisión", "RNC"))
DivBtnRemNC.Visible = True
DivTxtRemNC.Visible = True
LtlTitleImportesRem.Visible = True
End If End If
If UsuarioActual.Empresa.Funcionalidad(528) = "1" Then 'FUNCIONALIDAD. DE REGISTRO DE CUENTA PREDIAL. If UsuarioActual.Empresa.Funcionalidad(528) = "1" Then 'FUNCIONALIDAD. DE REGISTRO DE CUENTA PREDIAL.
@@ -4937,7 +4948,7 @@ Partial Class Ventas
Dim ObjCliente As New ClsClientes() Dim ObjCliente As New ClsClientes()
If ObjCliente.GetClientes(CveCliente, "-1", "-1", "-1", "-1", "-1", "-1", -1, UsuarioActual.CveEmpresa) Then If ObjCliente.GetClientes(CveCliente, "-1", "-1", "-1", "-1", "-1", "-1", -1, UsuarioActual.CveEmpresa) Then
If ObjCliente.DtResultados.Rows.Count > 0 Then If ObjCliente.DtResultados.Rows.Count > 0 Then
If UsuarioActual.CveEmpresa.Contiene(72, 119) AndAlso ObjCliente.DtResultados.Rows(0)("PermiteCredito").ToString = "False" AndAlso DdlTipoComprobante.SelectedValue.Contiene("Ing", "Ant", "Rem") AndAlso CveVenta < 1 Then If UsuarioActual.Empresa.Funcionalidad(570) = "1" AndAlso ObjCliente.DtResultados.Rows(0)("PermiteCredito").ToString = "False" AndAlso DdlTipoComprobante.SelectedValue.Contiene("Ing", "Ant", "Rem") AndAlso CveVenta < 1 Then
RBLPago.SelectedValue = "2" RBLPago.SelectedValue = "2"
RBLPago.Items(0).Enabled = False RBLPago.Items(0).Enabled = False
RBLPago_SelectedIndexChanged(Nothing, Nothing) RBLPago_SelectedIndexChanged(Nothing, Nothing)
@@ -9303,7 +9314,7 @@ Partial Class Ventas
ViewState("SeGuardoPrePoliza") = True ViewState("SeGuardoPrePoliza") = True
End If End If
Case 277 'Remisión del cliente Case 277 'Remisión de NC
If ObjFactura.TipoDocto = "RNC" Then If ObjFactura.TipoDocto = "RNC" Then
importeMovimiento = (ObjFactura.Total - TotalOtrosConceptos) * ValorMultiplicador importeMovimiento = (ObjFactura.Total - TotalOtrosConceptos) * ValorMultiplicador
@@ -9788,6 +9799,42 @@ Partial Class Ventas
Next Next
If UsuarioActual.Empresa.Funcionalidad(344) = "1" Then
If ListaRemisionesNC IsNot Nothing Then
For Each ObjRNC As Modelos.Factura In ListaRemisionesNC
If ObjRNC.TipoDocto = "RNC" Then
importeMovimiento = ObjRNC.TotalRemNCAplicado * -1
importeMX = importeMovimiento * tipoCambio * Multiplicador
FechaMovimiento = ObjFactura.FechaPago
CveSubProyectoContabilizar = CveSubProyectoVenta
If tipoCambio > 1 Then Concepto += $" TC:{tipoCambio} ${importeMovimiento.FormatoNumero(2)}"
If tipoCambio = 1 Then
IdCtaContable = ObjFactura.Cliente.IdCtaContClientes
CveCuenta = ObjFactura.Cliente.CveCuentaClientes
Else
IdCtaContable = ObjFactura.Cliente.IdCtaContMonedaExtranjera
CveCuenta = ObjFactura.Cliente.CveCuentaMonedaExtranjera
End If
IdCtaContableCliente = IdCtaContable
CveCuentaCliente = CveCuenta
If ObjConta.AddPrePolizasDetalle(ObjFactura.CvePrePoliza, TipoMovimiento, importeMovimiento, Referencia, 277, Concepto, FechaMovimiento, IdCtaContable, -1, CveVenta:=ObjRNC.CveVenta, CveVentaAmortizacion:=ObjFactura.CveVenta, CveCliente:=ObjFactura.CveCliente, CveIE:=CveIE, ImporteMX:=importeMX, ImporteME:=If(tipoCambio = 1, 0, importeMovimiento), CveCuenta:=CveCuenta, Contabilizable:=False, CveSubProyecto:=CveSubProyectoContabilizar) Then
If Not ObjConta.AddPrePolizasDetalle(ObjFactura.CvePrePoliza, Not TipoMovimiento, importeMovimiento, Referencia, 278, Concepto, FechaMovimiento, IdCtaContable, -1, CveVenta:=ObjRNC.CveVenta, CveVentaAmortizacion:=ObjFactura.CveVenta, CveCliente:=ObjFactura.CveCliente, CveIE:=CveIE, ImporteMX:=importeMX, ImporteME:=If(tipoCambio = 1, 0, importeMovimiento), CveCuenta:=CveCuenta, Contabilizable:=False, CveSubProyecto:=CveSubProyectoContabilizar) Then
ErrorPrepoliza = True
End If
Else
ErrorPrepoliza = True
End If
importeMovimiento = 0
End If
Next
End If
End If
If sumaAmorticaciones <> 0 Then If sumaAmorticaciones <> 0 Then
If Not ObjConta.AddPrePolizasDetalle(ObjFactura.CvePrePoliza, True, sumaAmorticaciones, Referencia, 251, Concepto, FechaMovimiento, IdCtaContClientes, -1, CveVenta:=ObjFactura.CveVenta, CveCliente:=ObjFactura.CveCliente, CveIE:=CveIE, ImporteMX:=sumaAmorticaciones * tipoCambio, ImporteME:=If(tipoCambio = 1, 0, importeMovimiento), CveCuenta:=CveCuentaCliente, CveSubProyecto:=CveSubProyectoContabilizar, Contabilizable:=Contabilizable) Then If Not ObjConta.AddPrePolizasDetalle(ObjFactura.CvePrePoliza, True, sumaAmorticaciones, Referencia, 251, Concepto, FechaMovimiento, IdCtaContClientes, -1, CveVenta:=ObjFactura.CveVenta, CveCliente:=ObjFactura.CveCliente, CveIE:=CveIE, ImporteMX:=sumaAmorticaciones * tipoCambio, ImporteME:=If(tipoCambio = 1, 0, importeMovimiento), CveCuenta:=CveCuentaCliente, CveSubProyecto:=CveSubProyectoContabilizar, Contabilizable:=Contabilizable) Then
ErrorPrepoliza = True ErrorPrepoliza = True
@@ -20196,6 +20243,9 @@ Partial Class Ventas
End If End If
RVTxtNCImporte.MaximumValue = ((PorcentajeMaximo * TxtTotal.Text.ToDouble) / 100).FormatoNumero().ToDouble.ToString RVTxtNCImporte.MaximumValue = ((PorcentajeMaximo * TxtTotal.Text.ToDouble) / 100).FormatoNumero().ToDouble.ToString
'RVIRNC.MinimumValue = RVTxtNCImporte.MinimumValue
'RVIRNC.MaximumValue = RVTxtNCImporte.MaximumValue
UpAplicarNC.Update() UpAplicarNC.Update()
End Sub End Sub
@@ -20217,13 +20267,14 @@ Partial Class Ventas
'LkNotaCredito.Visible = False 'LkNotaCredito.Visible = False
DivGvCxC.Visible = True DivGvCxC.Visible = True
CargaCxC() CargaCxC()
CargaRNC()
TxtNCPorcentaje.Attributes.Add("onkeyup", "CalculaImporteNCMasivo();") TxtNCPorcentaje.Attributes.Add("onkeyup", "CalculaImporteNCMasivo();")
TxtNCImporte.Text = "0.00" TxtNCImporte.Text = "0.00"
TxtNCImporte.Enabled = False TxtNCImporte.Enabled = False
RVTxtNCImporte.Enabled = False RVTxtNCImporte.Enabled = False
UpAplicarNC.Update() UpAplicarNC.Update()
UpModalRemisionesNC.Update()
End Sub End Sub
Private Sub CargaCxC() Private Sub CargaCxC()
@@ -20235,6 +20286,14 @@ Partial Class Ventas
ObjMovtos.Dispose() ObjMovtos.Dispose()
GvCxC.DataBind() GvCxC.DataBind()
End Sub End Sub
Private Sub CargaRNC()
Dim ObjMovtos As New ClsMovimientos()
If ObjMovtos.GetCxCClienteDetalle(ViewState("CveCliente").ToString.ToEntero, "-1", "-1", -1, -1, UsuarioActual.CveEmpresa, -1, TipoDocto:="RNC") Then
GvRemisionesNC.DataSource = ObjMovtos.DtResultados.FiltraParametros("Tipo = 'Act' AND CveVenta > 0", "Moneda, OrdenVencimiento, FechaVencimiento")
End If
ObjMovtos.Dispose()
GvRemisionesNC.DataBind()
End Sub
Protected Sub GvCxC_RowDataBound(sender As Object, e As GridViewRowEventArgs) Protected Sub GvCxC_RowDataBound(sender As Object, e As GridViewRowEventArgs)
If e.Row.RowType = DataControlRowType.DataRow Then If e.Row.RowType = DataControlRowType.DataRow Then
@@ -20258,6 +20317,14 @@ Partial Class Ventas
Protected Sub BtnAplicarNC_Click(sender As Object, e As EventArgs) Protected Sub BtnAplicarNC_Click(sender As Object, e As EventArgs)
If UsuarioActual.Empresa.Funcionalidad(344) = "1" Then
If TxtImportesRemisionesNC.Text.ToDecimal() <> TxtNCImporte.Text.ToDecimal() Then
Alert($"Los importes no coinciden", TipoMensaje.MsgAdvertencia)
Exit Sub
End If
End If
Dim DrPS = GlobalDTPS(UsuarioActual.CveEmpresa, CvePS:=DdlNCPS.SelectedValue.ToEntero).FiltroPrimero("") Dim DrPS = GlobalDTPS(UsuarioActual.CveEmpresa, CvePS:=DdlNCPS.SelectedValue.ToEntero).FiltroPrimero("")
If DrPS Is Nothing Then If DrPS Is Nothing Then
Alert("Ocurrió un error al cargar la información del producto. Por favor comuniquese con asistencia SIG", TipoMensaje.MsgError) Alert("Ocurrió un error al cargar la información del producto. Por favor comuniquese con asistencia SIG", TipoMensaje.MsgError)
@@ -22955,4 +23022,38 @@ Partial Class Ventas
#End Region #End Region
Protected Sub BtnAplicarRemisionNC_Click(sender As Object, e As EventArgs)
If ListaRemisionesNC Is Nothing Then
ListaRemisionesNC = New List(Of Modelos.Factura)
Else
ListaRemisionesNC.Clear()
End If
Dim TotalRemNCAplicado As Decimal = 0
For Each GvRow As GridViewRow In GvRemisionesNC.Rows
If GvRow.RowType = DataControlRowType.DataRow Then
If GvRow.FCCheckBox("ChkAplicar").Checked Then
Dim RemNC As New Modelos.Factura(UsuarioActual, GvRow.DataKey("CveVenta").ToEntero(), UsuarioActual.CveEmpresa)
RemNC.TotalRemNCAplicado = GvRow.FCTextBox("TxtImporte").Text.ToDecimal()
TotalRemNCAplicado += RemNC.TotalRemNCAplicado
If RemNC.TotalRemNCAplicado <= 0 Then
Alert($"Debe asignar un importe en la siguiente remisión: <b>{RemNC.SerieFolio}</b>", TipoMensaje.MsgAdvertencia)
ListaRemisionesNC.Clear()
Exit Sub
End If
ListaRemisionesNC.Add(RemNC)
End If
End If
Next
TxtImportesRemisionesNC.Text = TotalRemNCAplicado.FormatoNumero
UpModalRemisionesNC.Update()
UpAplicarNC.Update()
RegistraScript("CerrarModalRemNC();")
End Sub
End Class End Class