diff --git a/Bancos/PopIEVentas.aspx.vb b/Bancos/PopIEVentas.aspx.vb index c19aea954..834dc6bbf 100644 --- a/Bancos/PopIEVentas.aspx.vb +++ b/Bancos/PopIEVentas.aspx.vb @@ -1414,6 +1414,7 @@ Partial Class Bancos_PopIEVentas Dim ObjIE As New ClsBancos() Dim ObjMov As New ClsContabilidad(ObjIE.IniciaTransacSQL) + Dim ObjCliente As New ClsClientes(ObjIE.IniciaTransacSQL) Dim CvePlantillaPoliza As Integer = 11 Dim ConceptoPoliza As String = String.Format("{0} {1}", NombreCliente, SerieFolio) @@ -2171,32 +2172,50 @@ Partial Class Bancos_PopIEVentas TimpocambioGeneral = tipoCambioPago CveSubProyectoContabilizar = CveSubProyectoVenta + + CveIE = rw.DataKey("CveIE").ToString.ToEntero 'si la factura es en dólares y trae complementaria, el importemn debe ser igual al importe If CveMoneda = 2 Then ImporteMX = ImporteMovimiento IdCtaContable = IdCtaContMonedaExtranjeraAnticipo + CveCuenta = CveCuentaMonedaExtranjera Else IdCtaContable = IdCtaAnticipo CveCuenta = CveCuentaAnticipo End If TotalPagarCliente = ImporteMovimiento - If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, ImporteMovimiento, ReferenciaConcepto, ConceptoContable, ConceptoMovimiento, Fecha, IdCtaAnticipo, -1, CveIE, CveVenta, -1, CveSubProyectoContabilizar, If(ViewState("CveCliente") IsNot Nothing, ViewState("CveCliente").ToString.ToEntero, -1), ImporteMX:=ImporteMX, CveCuenta:=CveCuenta, TipoCambio:=tipoCambioPago) Then + + If ObjCliente.GetClientes(CveCliente, "-1", "-1", "-1", "-1", "-1", "-1", -1, UsuarioActual.CveEmpresa) Then + If ObjCliente.DtResultados.Rows.Count > 0 Then + If CveMoneda = 2 Then + IdCtaContable = ObjCliente.IdCtaMonedaExtranjeraAnticipos + Else + IdCtaContable = ObjCliente.IdCtaContAnticipos + End If + End If + End If + + If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, ImporteMovimiento, ReferenciaConcepto, ConceptoContable, ConceptoMovimiento, Fecha, IdCtaContable, -1, CveIE, CveVenta, -1, CveSubProyectoContabilizar, If(ViewState("CveCliente") IsNot Nothing, ViewState("CveCliente").ToString.ToEntero, -1), ImporteMX:=ImporteMX, TipoCambio:=tipoCambioPago) Then MsgError = "No se pudo insertar la póliza" End If If CveMoneda <> 1 AndAlso (IdCtaContMonedaComplementariaAnticipo > 0 Or UsuarioActual.CveEmpresa = 119) Then IdCtaContable = IdCtaContMonedaComplementariaAnticipo - CveCuenta = CveCuentaComplementaria + If ObjCliente.DtResultados.Rows.Count > 0 Then + IdCtaContable = ObjCliente.IdCtaContCompAnticipos + End If If ImporteMovimiento <> 0 AndAlso (IdCtaContable > 0 Or UsuarioActual.CveEmpresa = 119) Then - If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, 0, ReferenciaConcepto, 227, ConceptoMovimiento, Fecha, IdCtaContable, -1, CveIE, CveVenta, -1, CveSubProyectoContabilizar, If(ViewState("CveCliente") IsNot Nothing, ViewState("CveCliente").ToString.ToEntero, -1), ImporteMX:=ImporteMovimiento * tipoCambioPago - ImporteMovimiento, CveCuenta:=CveCuenta, ImporteME:=ImporteMovimiento, TipoCambio:=tipoCambioPago) Then + If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, 0, ReferenciaConcepto, 227, ConceptoMovimiento, Fecha, IdCtaContable, -1, CveIE, CveVenta, -1, CveSubProyectoContabilizar, If(ViewState("CveCliente") IsNot Nothing, ViewState("CveCliente").ToString.ToEntero, -1), ImporteMX:=ImporteMovimiento * tipoCambioPago - ImporteMovimiento, ImporteME:=ImporteMovimiento, TipoCambio:=tipoCambioPago) Then MsgError = "No se pudo insertar la póliza" End If TotalPagarCliente += Math.Round(ImporteMovimiento * tipoCambioVenta - ImporteMovimiento, 2) 'le agrego la complementario ImporteMX = ImporteMovimiento IdCtaContable = IdCtaContMonedaExtranjeraAnticipo - CveCuenta = CveCuentaMonedaExtranjera + If ObjCliente.DtResultados.Rows.Count > 0 Then + IdCtaContable = ObjCliente.IdCtaMonedaExtranjeraAnticipos + End If End If End If @@ -3462,6 +3481,7 @@ Partial Class Bancos_PopIEVentas ObjIE.Dispose() ObjMov.Dispose() + ObjCliente.Dispose() 'CargaVenta(CveVenta) 'UpDatosVenta.Update()