Se arregla pico de centimos en los recibos generados cuando el numero de plazos son muchos (SOLICITADO POR ANGELICA)

git-svn-id: https://192.168.0.254/svn/Proyectos.AbetoDesign_FactuGES/trunk@100 93f398dd-4eb6-7a46-baf6-13f46f578da2
This commit is contained in:
roberto 2014-06-18 11:06:58 +00:00
parent e207419f71
commit c62128bded
8 changed files with 102 additions and 47 deletions

View File

@ -28,12 +28,28 @@ interface
Function IntToLetras(Numero:LongInt):String;
Function xxIntToLetras(Valor:LongInt):String;
Function CifraToLetras(Cifra: Double): String;
function RoundCurrency(const Value: Currency): Currency;
implementation
uses SysUtils, Dialogs;
// SysUtils, Windows, Dialogs, Messages, Classes, Graphics, Controls, Forms, StdCtrls;
function RoundCurrency(const Value: Currency): Currency;
var
V64: Int64 absolute Result;
Decimals: Integer;
begin
Result := Value;
Decimals := V64 mod 100;
Dec(V64, Decimals);
case Decimals of
-99 .. -50 : Dec(V64, 100);
50 .. 99 : Inc(V64, 100);
end;
end;
Function xxIntToLetras(Valor:LongInt):String;
const
aUnitat : array[1..15] of String = ('UNO','DOS','TRES','CUATRO','CINCO','SEIS',

View File

@ -1128,6 +1128,7 @@ end;
function TFacturasClienteController.Guardar(AFactura: IBizFacturaCliente): Boolean;
var
IDNuevo : Integer;
begin
Result := False;
@ -1143,7 +1144,6 @@ begin
// Asegurarnos de que todos los importes están bien.
RecalcularImportes(AFactura);
try
AFactura.DataTable.ApplyUpdates;
@ -1270,6 +1270,7 @@ var
ADiaVencimiento: Integer;
ADiasMas: Integer;
BSemaforo: Boolean;
AImporteAcumulado : Double;
begin
if not Assigned(AFactura) then
@ -1292,6 +1293,7 @@ begin
With AFormaPago.Plazos.DataTable do
begin
i := 1;
AImporteAcumulado := 0;
First;
repeat
//SOLO PARA ACANA (Leer comentario anterior
@ -1317,6 +1319,7 @@ begin
begin
ARecibos.FECHA_VENCIMIENTO := AFactura.FECHA_VENCIMIENTO;
ARecibos.IMPORTE := AFactura.IMPORTE_TOTAL;
AImporteAcumulado := AImporteAcumulado + ARecibos.IMPORTE;
end
else
begin
@ -1356,7 +1359,19 @@ begin
AFechaVencimiento := IncDay(AFechaVencimiento, ADiasMas);
ARecibos.FECHA_VENCIMIENTO := AFechaVencimiento;
ARecibos.IMPORTE := AFactura.IMPORTE_TOTAL * (AFormaPago.Plazos.PORCENTAJE / 100);
ARecibos.IMPORTE := RoundCurrency(RoundCurrency(AFactura.IMPORTE_TOTAL) * (AFormaPago.Plazos.PORCENTAJE / 100));
AImporteAcumulado := AImporteAcumulado + ARecibos.IMPORTE;
if (i = AFormaPago.Plazos.RecordCount) then
begin
if (AImporteAcumulado < RoundCurrency(AFactura.IMPORTE_TOTAL)) then
ARecibos.IMPORTE := ARecibos.IMPORTE + (RoundCurrency(AFactura.IMPORTE_TOTAL) - AImporteAcumulado)
else if (AImporteAcumulado > RoundCurrency(AFactura.IMPORTE_TOTAL)) then
ARecibos.IMPORTE := ARecibos.IMPORTE - (AImporteAcumulado - RoundCurrency(AFactura.IMPORTE_TOTAL));
end;
end;
ARecibos.DESCRIPCION := 'RECIBO ' + ARecibos.REFERENCIA + ' - ' + CifraToLetras(ARecibos.IMPORTE);

View File

@ -99,7 +99,7 @@ implementation
{$INCLUDE ..\..\..\FactuGES.inc}
uses
SysUtils, uDataTableUtils, DB, uDateUtils, DateUtils, uDataModuleUsuarios,
SysUtils, uDataTableUtils, DB, uDateUtils, DateUtils, uDataModuleUsuarios,
Variants, cxDateUtils, uTiposIVAController, uBizTiposIVA, uFactuGES_App, uBizEmpresasTiendas;
{ TBizFacturaCliente }

View File

@ -49,49 +49,49 @@
<DelphiCompile Include="PresupuestosCliente_view.dpk">
<MainSource>MainSource</MainSource>
</DelphiCompile>
<DCCReference Include="..\..\..\Servidor\adortl.dcp" />
<DCCReference Include="..\..\..\Servidor\ApplicationBase.dcp" />
<DCCReference Include="..\..\..\Servidor\Articulos_view.dcp" />
<DCCReference Include="..\..\..\Servidor\Base.dcp" />
<DCCReference Include="..\..\..\Servidor\cxDataD11.dcp" />
<DCCReference Include="..\..\..\Servidor\cxEditorsD11.dcp" />
<DCCReference Include="..\..\..\Servidor\cxExportD11.dcp" />
<DCCReference Include="..\..\..\Servidor\cxExtEditorsD11.dcp" />
<DCCReference Include="..\..\..\Servidor\cxGridD11.dcp" />
<DCCReference Include="..\..\..\Servidor\cxLibraryD11.dcp" />
<DCCReference Include="..\..\..\Servidor\cxPageControlD11.dcp" />
<DCCReference Include="..\..\..\Servidor\DataAbstract_Core_D11.dcp" />
<DCCReference Include="..\..\..\Servidor\dbrtl.dcp" />
<DCCReference Include="..\..\..\Servidor\designide.dcp" />
<DCCReference Include="..\..\..\Servidor\dsnap.dcp" />
<DCCReference Include="..\..\..\Servidor\dxCoreD11.dcp" />
<DCCReference Include="..\..\..\Servidor\dxGDIPlusD11.dcp" />
<DCCReference Include="..\..\..\Servidor\dxThemeD11.dcp" />
<DCCReference Include="..\..\..\Servidor\GestorInformes_controller.dcp" />
<DCCReference Include="..\..\..\Servidor\GUIBase.dcp" />
<DCCReference Include="..\..\..\Servidor\GUISDK_D11R.dcp" />
<DCCReference Include="..\..\..\Servidor\Jcl.dcp" />
<DCCReference Include="..\..\..\Servidor\JclVcl.dcp" />
<DCCReference Include="..\..\..\Servidor\JvCoreD11R.dcp" />
<DCCReference Include="..\..\..\Servidor\JvCtrlsD11R.dcp" />
<DCCReference Include="..\..\..\Servidor\JvMMD11R.dcp" />
<DCCReference Include="..\..\..\Servidor\JvStdCtrlsD11R.dcp" />
<DCCReference Include="..\..\..\Servidor\JvSystemD11R.dcp" />
<DCCReference Include="..\..\..\Servidor\PngComponentsD10.dcp" />
<DCCReference Include="..\..\..\Servidor\PNG_D10.dcp" />
<DCCReference Include="..\..\..\Servidor\PreCli_ConCli_relation.dcp" />
<DCCReference Include="..\..\..\Servidor\PresupuestosCliente_controller.dcp" />
<DCCReference Include="..\..\..\Servidor\PresupuestosCliente_model.dcp" />
<DCCReference Include="..\..\..\Servidor\RemObjects_Core_D11.dcp" />
<DCCReference Include="..\..\..\Servidor\rtl.dcp" />
<DCCReference Include="..\..\..\Servidor\tb2k_d10.dcp" />
<DCCReference Include="..\..\..\Servidor\tbx_d10.dcp" />
<DCCReference Include="..\..\..\Servidor\vcl.dcp" />
<DCCReference Include="..\..\..\Servidor\vclactnband.dcp" />
<DCCReference Include="..\..\..\Servidor\vcldb.dcp" />
<DCCReference Include="..\..\..\Servidor\vcljpg.dcp" />
<DCCReference Include="..\..\..\Servidor\vclx.dcp" />
<DCCReference Include="..\..\..\Servidor\xmlrtl.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\adortl.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\ApplicationBase.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\Articulos_view.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\Base.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\cxDataD11.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\cxEditorsD11.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\cxExportD11.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\cxExtEditorsD11.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\cxGridD11.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\cxLibraryD11.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\cxPageControlD11.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\DataAbstract_Core_D11.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\dbrtl.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\designide.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\dsnap.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\dxCoreD11.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\dxGDIPlusD11.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\dxThemeD11.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\GestorInformes_controller.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\GUIBase.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\GUISDK_D11R.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\Jcl.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\JclVcl.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\JvCoreD11R.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\JvCtrlsD11R.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\JvMMD11R.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\JvStdCtrlsD11R.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\JvSystemD11R.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\PngComponentsD10.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\PNG_D10.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\PreCli_ConCli_relation.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\PresupuestosCliente_controller.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\PresupuestosCliente_model.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\RemObjects_Core_D11.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\rtl.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\tb2k_d10.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\tbx_d10.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\vcl.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\vclactnband.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\vcldb.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\vcljpg.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\vclx.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\xmlrtl.dcp" />
<DCCReference Include="uDialogOpcionesImpresionPresupuestosCliente.pas">
<Form>frDialogOpcionesImpresionPresupuestosCliente</Form>
<DesignClass>T</DesignClass>

View File

@ -1,4 +1,28 @@
inherited frViewElegirArticulosPresupuestosCliente: TfrViewElegirArticulosPresupuestosCliente
inherited frViewFiltroBase1: TfrViewFiltroBase
inherited TBXDockablePanel1: TTBXDockablePanel
inherited dxLayoutControl1: TdxLayoutControl
inherited txtFiltroTodo: TcxTextEdit
Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
end
inherited edtFechaIniFiltro: TcxDateEdit
Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
end
inherited edtFechaFinFiltro: TcxDateEdit
Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
end
end
end
end
inherited dxComponentPrinter: TdxComponentPrinter
inherited dxComponentPrinterLink: TdxGridReportLink
ReportDocument.CreationDate = 39297.755936412040000000

View File

@ -12,7 +12,7 @@ uses
uDADataTable, cxGridLevel, cxGridCustomTableView, cxGridTableView,
cxGridDBTableView, cxClasses, cxControls, cxGridCustomView, cxGrid, dxPgsDlg,
ActnList, TB2Item, TBX, TB2Toolbar, TBXDkPanels, TB2Dock, uViewFiltroBase,
uDAInterfaces;
uDAInterfaces, uCustomView, uViewBase;
type
IViewElegirArticulosPresupuestosCliente = interface(IViewArticulos)