-
+
-
+
+
+
+
@@ -4285,20 +4288,28 @@
-
+
+
-
+
+
+
+
+
+
+
+
@@ -6600,59 +6611,111 @@
- function ValidaCredito(objTxt, event, CveCreditoDetalle, Tipo) {
-
- var ValorInicialTFloat = objTxt.value.toString().replace(/,/g, '').length = 0 ? 0 : parseFloat(objTxt.value.toString().replace(/,/g, ''));
-
+ function ValidaCredito( event, CveCreditoDetalle, Tipo, ImporteIE ) {
var char = event.which || event.keyCode;
- if (char == 9) {//Evita que se ejecute la rutina cuando se presiona Tap (cuando se salta de interes a ambas si se ejecuta se limpian los valores de capital e interes)
- return;
- }
+ if (char == 9) {
+ return;//Evita que se ejecute la rutina cuando se presiona Tap (cuando se salta de interes a ambas si se ejecuta se limpian los valores de capital e interes)
+ }
+
+ debugger;
- if (ValorInicialTFloat == 0) {
- objTxt.value = '0';
- //return;
- }
+ let TotalCompra = 0;
+ let ImporteAmortizado = 0;
+ let ImporteComision = 0;
+ let ImporteDocPorPagar = 0;
+ let TotalAmortizaciones = 0;
+ let TotalComisiones = 0;
- let Total = 0;
- let TotalString = '';
+ TotalCompra = parseFloat($('#<%= TxtTotal.ClientID %>').val().replace(/,/g, '')).toFixed(2);
+ ImporteAmortizado = $(`.CsSelAmbos${CveCreditoDetalle}`).val().replace(/,/g, '').length == 0 ? 0 : parseFloat($(`.CsSelAmbos${CveCreditoDetalle}`).val().replace(/,/g, ''));
+ ImporteComision = $(`.CsSelComision${CveCreditoDetalle}`).val().replace(/,/g, '').length == 0 ? 0 : parseFloat($(`.CsSelComision${CveCreditoDetalle}`).val().replace(/,/g, ''));
+ ImporteDocPorPagar = (ImporteIE - ImporteAmortizado - ImporteComision).toFixed(2);
- if (Tipo == 1) {
+ $(`.CsSelAmbos${CveCreditoDetalle}`).each(function () {
+ FormatoMoneda3($(this));
+ });
- $(`.CsSelAmbos${CveCreditoDetalle}`).each(function () {
- $(this).val("");
- });
-
- $(`.CsSelCapital${CveCreditoDetalle}`).each(function () {
- FormatoMoneda3($(this));
- });
-
- $(`.CsSelInteres${CveCreditoDetalle}`).each(function () {
- FormatoMoneda3($(this));
- });
-
-
- } else {
-
- $(`.CsSelAmbos${CveCreditoDetalle}`).each(function () {
- FormatoMoneda3($(this));
- });
-
- $(`.CsSelCapital${CveCreditoDetalle}`).each(function () {
- $(this).val("");
- });
-
- $(`.CsSelInteres${CveCreditoDetalle}`).each(function () {
- $(this).val("");
- });
-
- }
-
- var TotalCompra = parseFloat($('#<%= TxtTotal.ClientID %>').val().replace(/,/g, '')).toFixed(2);
+ $(`.CsSelComision${CveCreditoDetalle}`).each(function () {
+ FormatoMoneda3($(this));
+ });
$(`.CsCreGlobal`).each(function () {
+ let stringTemp = $(this).val().replace(/,/g, '');
+ let tempValor = parseFloat(stringTemp);
+
+ if (!isNaN(tempValor)) {
+ TotalAmortizaciones += tempValor
+ }
+ });
+
+ $(`.CsComGlobal`).each(function () {
+ let stringTemp = $(this).val().replace(/,/g, '');
+ let tempValor = parseFloat(stringTemp);
+
+ if (!isNaN(tempValor)) {
+ TotalComisiones += tempValor
+ }
+ });
+
+
+ if (((TotalAmortizaciones + TotalComisiones) > TotalCompra) || ((ImporteAmortizado + ImporteComision) > ImporteIE)) {
+
+ TotalAmortizaciones = 0;
+ TotalComisiones = 0;
+
+ if (Tipo == 1) {
+ $(`.CsSelAmbos${CveCreditoDetalle}`).val(``);
+ } else if (Tipo == 2) {
+ $(`.CsSelComision${CveCreditoDetalle}`).val(``);
+ }
+
+
+ TotalCompra = parseFloat($('#<%= TxtTotal.ClientID %>').val().replace(/,/g, '')).toFixed(2);
+ ImporteAmortizado = $(`.CsSelAmbos${CveCreditoDetalle}`).val().replace(/,/g, '').length == 0 ? 0 : parseFloat($(`.CsSelAmbos${CveCreditoDetalle}`).val().replace(/,/g, ''));
+ ImporteComision = $(`.CsSelComision${CveCreditoDetalle}`).val().replace(/,/g, '').length == 0 ? 0 : parseFloat($(`.CsSelComision${CveCreditoDetalle}`).val().replace(/,/g, ''));
+ ImporteDocPorPagar = (ImporteIE - ImporteAmortizado - ImporteComision).toFixed(2);
+
+ $(`.CsSelAmbos${CveCreditoDetalle}`).each(function () {
+ FormatoMoneda3($(this));
+ });
+
+ $(`.CsSelComision${CveCreditoDetalle}`).each(function () {
+ FormatoMoneda3($(this));
+ });
+
+ $(`.CsCreGlobal`).each(function () {
+
+ let stringTemp = $(this).val().replace(/,/g, '');
+ let tempValor = parseFloat(stringTemp);
+
+ if (!isNaN(tempValor)) {
+ TotalAmortizaciones += tempValor
+ }
+ });
+
+ $(`.CsComGlobal`).each(function () {
+
+ let stringTemp = $(this).val().replace(/,/g, '');
+ let tempValor = parseFloat(stringTemp);
+
+ if (!isNaN(tempValor)) {
+ TotalComisiones += tempValor
+ }
+ });
+ }
+
+ if (ImporteAmortizado == 0 & ImporteComision == 0) {
+ ImporteDocPorPagar = 0;
+ }
+
+ $('#<%= LblImporteCreditos.ClientID %>').text('Acumulado: ' + FormatoNumero((TotalAmortizaciones + TotalComisiones), 2));
+ $(`.CsSelLblDocPorPagar${CveCreditoDetalle}`).text(FormatoNumero(ImporteDocPorPagar, 2));
+
+
+
+ /* $(`.CsCreGlobal`).each(function () {
let stringTemp = $(this).val().replace(/,/g, '');
let tempValor = parseFloat(stringTemp);
@@ -6660,11 +6723,11 @@
if (!isNaN(tempValor)) {
Total += tempValor
}
- });
+ });*/
- if (Total > TotalCompra) {
+ /*if (Total > TotalCompra) {
- let TmpObtTxtValor = TotalCompra - (Total - ValorInicialTFloat);
+ let TmpObtTxtValor = TotalCompra - (Total - ImporteAmortizado);
if (TmpObtTxtValor > 0) {
objTxt.value = '' + FormatoNumero(TmpObtTxtValor, 2);
@@ -6673,13 +6736,13 @@
}
Total = TotalCompra;
- }
+ }*/
- $('#<%= LblImporteCreditos.ClientID %>').text('Total ' + FormatoMonedaL(Total));
+ //$('#<%= LblImporteCreditos.ClientID %>').text('Acumulado: ' + FormatoMonedaL(Total));
- if (ValorInicialTFloat == 0) {
+ /*if (ImporteAmortizado == 0) {
objTxt.value = '';
- }
+ }*/
}
diff --git a/Compras/Compras.aspx.vb b/Compras/Compras.aspx.vb
index 6f5c8bd3d..154742adf 100644
--- a/Compras/Compras.aspx.vb
+++ b/Compras/Compras.aspx.vb
@@ -6042,9 +6042,7 @@ Partial Class Compras_Compras
ErrorPrepoliza = True
End If
- 'If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, True, importeMovimiento, importeMN, 41, Referencia, Concepto, CtaProveedorAcreedores, CveCompra:=CveCompra, CveProveedor:=CveProveedorConcepto, CveIE:=CveIE, CveCreditoDetalle:=CveCreditoDetalle, CveClasificacion:=CveClasificacionDT, CveSubProyecto:=CveSubProyectoDT, ImporteME:=If(tipoCambioActual = 1, 0, importeMovimiento), CveTipoGasto:=CveTipoGastoDT, TipoCambio:=tipoCambioActual, Contabilizable:=SeContabiliza) Then
- ' ErrorPrepoliza = True
- 'End If
+
@@ -6053,50 +6051,55 @@ Partial Class Compras_Compras
For Each gvRowCredito As GridViewRow In GvCreditos.Rows
Dim ImportePagoCredito As Decimal = If(gvRowCredito.FCTextBox("TxtAmbos").Text.ToDecimal > 0, gvRowCredito.FCTextBox("TxtAmbos").Text.ToDecimal, (gvRowCredito.FCTextBox("TxtCapital").Text.ToDecimal + gvRowCredito.FCTextBox("TxtInteres").Text.ToDecimal))
- Dim TotalMensualidadCredito As Decimal = gvRowCredito.DataKey("Total").ToDecimal
+ Dim ImporteIEAnticipo As Decimal = gvRowCredito.DataKey("ImporteIE").ToDecimal '' Lo que se pago desde el movimiento Bancario
+
Dim CveMonedaCredito As Integer = gvRowCredito.DataKey("CveMoneda").ToEntero
Dim OtrosGastosIngresosCredito As Decimal = gvRowCredito.FCTextBox("TxtComision").Text.ToDecimal
Dim CveIECredito As Integer = gvRowCredito.DataKey("CveIE").ToEntero
Dim CveCreditoDetalleTemp As Integer = gvRowCredito.DataKey("CveCreditoDetalle").ToEntero
- Dim Pago As New CompraPago
- Pago.ImportePago = CompraActual.Total
- Pago.CveIE = CveIECredito
- Pago.CveMonedaPago = 1
- Pago.CveCompraAmortizacion = -1
- Pago.CveProveedor = CveProveedor
- Pago.CveCreditoDetalle = CveCreditoDetalleTemp
- Pago.TipoPago = "Egsc"
+ If ImportePagoCredito > 0 Then
+ Dim Pago As New CompraPago
+ Pago.ImportePago = ImportePagoCredito
+ Pago.CveIE = CveIECredito
+ Pago.CveMonedaPago = 1
+ Pago.CveCompraAmortizacion = -1
+ Pago.CveProveedor = CveProveedor
+ Pago.CveCreditoDetalle = CveCreditoDetalleTemp
+ Pago.TipoPago = "Egsc"
- If OtrosGastosIngresosCredito <> 0 Then
- Pago.OtroGastoIngreso = OtrosGastosIngresosCredito
- End If
-
- ErrorCreditosCompra = AplicaPrePolizaPagoCompra(CompraActual, Pago, CvePrePoliza, ObjConta)
-
- If ErrorCreditosCompra Then
- Exit For
- End If
-
- Dim ImporteDifCredito As Decimal = TotalMensualidadCredito - ImportePagoCredito
-
- If ImporteDifCredito > 0 Then
-
- Dim ImportePagoCreditoMN As Decimal = ImportePagoCredito * tipoCambioActual
- Dim ImporteDifCreditoMN As Decimal = ImporteDifCredito * tipoCambioActual
-
- If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, False, ImporteDifCredito, ImporteDifCreditoMN, 59, Referencia, Concepto, IdCtaContable, CveCompra:=CveCompra, CveProveedor:=CveProveedorConcepto, CveIE:=CveIECredito, CveCreditoDetalle:=CveCreditoDetalleTemp, CveClasificacion:=CveClasificacionDT, CveSubProyecto:=CveSubProyectoDT, ImporteME:=If(tipoCambioActual = 1, 0, ImporteDifCredito), CveTipoGasto:=CveTipoGastoDT, TipoCambio:=tipoCambioActual, Contabilizable:=SeContabiliza) Then
- ErrorPrepoliza = True
+ If OtrosGastosIngresosCredito <> 0 Then
+ Pago.OtroGastoIngreso = OtrosGastosIngresosCredito
End If
- If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, True, ImporteDifCredito, ImporteDifCreditoMN, 21, Referencia, Concepto, CtaProveedorAcreedores, CveCompra:=CveCompra, CveProveedor:=CveProveedorConcepto, CveIE:=CveIECredito, CveCreditoDetalle:=CveCreditoDetalleTemp, CveClasificacion:=CveClasificacionDT, CveSubProyecto:=CveSubProyectoDT, ImporteME:=If(tipoCambioActual = 1, 0, ImporteDifCredito), CveTipoGasto:=CveTipoGastoDT, TipoCambio:=tipoCambioActual, Contabilizable:=SeContabiliza) Then
- ErrorPrepoliza = True
+ ErrorCreditosCompra = AplicaPrePolizaPagoCompra(CompraActual, Pago, CvePrePoliza, ObjConta)
+
+ If ErrorCreditosCompra Then
+ Exit For
End If
+ Dim ImporteDifCredito As Decimal = ImporteIEAnticipo - ImportePagoCredito ' CompraActual.Total
+ If ImporteDifCredito > 0 Then
+
+ ' Dim ImportePagoCreditoMN As Decimal = ImportePagoCredito * tipoCambioActual
+ Dim ImporteDifCreditoMN As Decimal = ImporteDifCredito * tipoCambioActual
+
+ If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, False, ImporteDifCredito, ImporteDifCreditoMN, 59, Referencia, Concepto, IdCtaContable, CveCompra:=CveCompra, CveProveedor:=CveProveedorConcepto, CveIE:=CveIECredito, CveCreditoDetalle:=CveCreditoDetalleTemp, CveClasificacion:=CveClasificacionDT, CveSubProyecto:=CveSubProyectoDT, ImporteME:=If(tipoCambioActual = 1, 0, ImporteDifCredito), CveTipoGasto:=CveTipoGastoDT, TipoCambio:=tipoCambioActual, Contabilizable:=SeContabiliza) Then
+ ErrorPrepoliza = True
+ End If
+
+ If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, True, ImporteDifCredito, ImporteDifCreditoMN, 21, Referencia, Concepto, CtaProveedorAcreedores, CveCompra:=CveCompra, CveProveedor:=CveProveedorConcepto, CveIE:=CveIECredito, CveCreditoDetalle:=CveCreditoDetalleTemp, CveClasificacion:=CveClasificacionDT, CveSubProyecto:=CveSubProyectoDT, ImporteME:=If(tipoCambioActual = 1, 0, ImporteDifCredito), CveTipoGasto:=CveTipoGastoDT, TipoCambio:=tipoCambioActual, Contabilizable:=SeContabiliza) Then
+ ErrorPrepoliza = True
+ End If
+
+
+ End If
End If
+
+
Next
@@ -18877,10 +18880,15 @@ Partial Class Compras_Compras
Dim TxtInteres As TextBox = e.Row.FCTextBox("TxtInteres")
Dim TxtAmbos As TextBox = e.Row.FCTextBox("TxtAmbos")
Dim CveCreditoDetalle As Integer = e.Row.DataKey("CveCreditoDetalle").ToEntero
+ Dim TxtComision As TextBox = e.Row.FCTextBox("TxtComision")
+ Dim LblDocPorPagar As Label = e.Row.FCLabel("LblDocPorPagar")
Dim CveCompraCapital As Integer = e.Row.DataKey("CveCompra").ToEntero
Dim CveCompraInteres As Integer = e.Row.DataKey("CveCompraInteres").ToEntero
+
+ Dim ImporteIE As Decimal = e.Row.DataKey("ImporteIE").ToDecimal
+
If CveCompraCapital > 0 Then
TxtCapital.Enabled = False
TxtAmbos.Enabled = False
@@ -18891,18 +18899,22 @@ Partial Class Compras_Compras
TxtAmbos.Enabled = False
End If
- TxtCapital.Attributes.Add("class", $"CsCreGlobal CsSelCapital{CveCreditoDetalle}")
- TxtCapital.Attributes.Add("onkeyup", $"ValidaCredito(this,event,{CveCreditoDetalle},1)")
- 'TxtCapital.Attributes.Add("data-CD", CveCreditoDetalle.ToString)
+ 'TxtCapital.Attributes.Add("class", $"CsCreGlobal CsSelCapital{CveCreditoDetalle}")
+ 'TxtCapital.Attributes.Add("onkeyup", $"ValidaCredito(this,event,{CveCreditoDetalle},1,{ImporteIE})")
+ ''TxtCapital.Attributes.Add("data-CD", CveCreditoDetalle.ToString)
- TxtInteres.Attributes.Add("class", $"CsCreGlobal CsSelInteres{CveCreditoDetalle}")
- TxtInteres.Attributes.Add("onkeyup", $"ValidaCredito(this,event,{CveCreditoDetalle},1)")
+ 'TxtInteres.Attributes.Add("class", $"CsCreGlobal CsSelInteres{CveCreditoDetalle}")
+ 'TxtInteres.Attributes.Add("onkeyup", $"ValidaCredito(this,event,{CveCreditoDetalle},1,{ImporteIE})")
'TxtInteres.Attributes.Add("data-CD", CveCreditoDetalle.ToString)
TxtAmbos.Attributes.Add("class", $"CsCreGlobal CsSelAmbos{CveCreditoDetalle}")
- TxtAmbos.Attributes.Add("onkeyup", $"ValidaCredito(this,event,{CveCreditoDetalle},2)")
+ TxtAmbos.Attributes.Add("onkeyup", $"ValidaCredito(event,{CveCreditoDetalle},1,{ImporteIE})")
'TxtAmbos.Attributes.Add("data-CD", CveCreditoDetalle.ToString)
+ TxtComision.Attributes.Add("class", $"CsComGlobal CsSelComision{CveCreditoDetalle}")
+ TxtComision.Attributes.Add("onkeyup", $"ValidaCredito(event,{CveCreditoDetalle},2,{ImporteIE})")
+
+ LblDocPorPagar.Attributes.Add("class", $"CsSelLblDocPorPagar{CveCreditoDetalle}")
End If
@@ -18911,7 +18923,7 @@ Partial Class Compras_Compras
Private Sub CargaCreditosDisponibles()
- If RBLPago.SelectedValue.ToEntero = 4 Then
+ If RBLPago.SelectedValue.ToEntero = 4 And CveProveedor > 0 Then
Dim ObjBancos As New ClsBancos
If ObjBancos.GetCreditosDetalleCompras(UsuarioActual.CveEmpresa, CveProveedor, -1, -1, -1) Then