Informes estadísticos primera parte

git-svn-id: https://192.168.0.254/svn/Proyectos.Tecsitel_FactuGES2/trunk@1030 0c75b7a4-871f-7646-8a2f-f78d34cc349f
This commit is contained in:
roberto 2011-02-03 18:44:02 +00:00
parent ad1c10d0a1
commit 738b989487
39 changed files with 3469 additions and 232 deletions

View File

@ -45,10 +45,6 @@
<Borland.ProjectType>Package</Borland.ProjectType>
<BorlandProject>
<BorlandProject><Delphi.Personality><Parameters><Parameters Name="UseLauncher">False</Parameters><Parameters Name="LoadAllSymbols">True</Parameters><Parameters Name="LoadUnspecifiedSymbols">False</Parameters></Parameters><Package_Options><Package_Options Name="PackageDescription">Libreria base de FactuGES</Package_Options><Package_Options Name="ImplicitBuild">False</Package_Options><Package_Options Name="DesigntimeOnly">False</Package_Options><Package_Options Name="RuntimeOnly">False</Package_Options></Package_Options><VersionInfo><VersionInfo Name="IncludeVerInfo">True</VersionInfo><VersionInfo Name="AutoIncBuild">False</VersionInfo><VersionInfo Name="MajorVer">1</VersionInfo><VersionInfo Name="MinorVer">0</VersionInfo><VersionInfo Name="Release">0</VersionInfo><VersionInfo Name="Build">0</VersionInfo><VersionInfo Name="Debug">False</VersionInfo><VersionInfo Name="PreRelease">False</VersionInfo><VersionInfo Name="Special">False</VersionInfo><VersionInfo Name="Private">False</VersionInfo><VersionInfo Name="DLL">False</VersionInfo><VersionInfo Name="Locale">3082</VersionInfo><VersionInfo Name="CodePage">1252</VersionInfo></VersionInfo><VersionInfoKeys><VersionInfoKeys Name="CompanyName"></VersionInfoKeys><VersionInfoKeys Name="FileDescription"></VersionInfoKeys><VersionInfoKeys Name="FileVersion">1.0.0.0</VersionInfoKeys><VersionInfoKeys Name="InternalName"></VersionInfoKeys><VersionInfoKeys Name="LegalCopyright"></VersionInfoKeys><VersionInfoKeys Name="LegalTrademarks"></VersionInfoKeys><VersionInfoKeys Name="OriginalFilename"></VersionInfoKeys><VersionInfoKeys Name="ProductName"></VersionInfoKeys><VersionInfoKeys Name="ProductVersion">1.0.0.0</VersionInfoKeys></VersionInfoKeys><Excluded_Packages>
<Excluded_Packages Name="$(BDS)\bin\dcloffice2k100.bpl">Microsoft Office 2000 Sample Automation Server Wrapper Components</Excluded_Packages>
<Excluded_Packages Name="$(BDS)\bin\dclofficexp100.bpl">Microsoft Office XP Sample Automation Server Wrapper Components</Excluded_Packages>
</Excluded_Packages><Source><Source Name="MainSource">Base.dpk</Source></Source></Delphi.Personality></BorlandProject></BorlandProject>
@ -58,57 +54,57 @@
<DelphiCompile Include="Base.dpk">
<MainSource>MainSource</MainSource>
</DelphiCompile>
<DCCReference Include="..\Modulos\Gestor de informes\Views\adortl.dcp" />
<DCCReference Include="..\Modulos\Gestor de informes\Views\cxDataD11.dcp" />
<DCCReference Include="..\Modulos\Gestor de informes\Views\cxEditorsD11.dcp" />
<DCCReference Include="..\Modulos\Gestor de informes\Views\cxExportD11.dcp" />
<DCCReference Include="..\Modulos\Gestor de informes\Views\cxExtEditorsD11.dcp" />
<DCCReference Include="..\Modulos\Gestor de informes\Views\cxGridD11.dcp" />
<DCCReference Include="..\Modulos\Gestor de informes\Views\cxIntl6D11.dcp" />
<DCCReference Include="..\Modulos\Gestor de informes\Views\cxIntlPrintSys3D11.dcp" />
<DCCReference Include="..\Modulos\Gestor de informes\Views\cxLibraryD11.dcp" />
<DCCReference Include="..\Modulos\Gestor de informes\Views\cxPageControlD11.dcp" />
<DCCReference Include="..\Modulos\Gestor de informes\Views\DataAbstract_Core_D11.dcp" />
<DCCReference Include="..\Modulos\Gestor de informes\Views\dbrtl.dcp" />
<DCCReference Include="..\Modulos\Gestor de informes\Views\dclIndyCore.dcp" />
<DCCReference Include="..\Modulos\Gestor de informes\Views\designide.dcp" />
<DCCReference Include="..\Modulos\Gestor de informes\Views\dsnap.dcp" />
<DCCReference Include="..\Modulos\Gestor de informes\Views\dxGDIPlusD11.dcp" />
<DCCReference Include="..\Modulos\Gestor de informes\Views\dxPSCoreD11.dcp" />
<DCCReference Include="..\Modulos\Gestor de informes\Views\dxThemeD11.dcp" />
<DCCReference Include="..\Modulos\Gestor de informes\Views\GUISDK_D11R.dcp" />
<DCCReference Include="..\Modulos\Gestor de informes\Views\IndyCore.dcp" />
<DCCReference Include="..\Modulos\Gestor de informes\Views\IndyProtocols.dcp" />
<DCCReference Include="..\Modulos\Gestor de informes\Views\IndySystem.dcp" />
<DCCReference Include="..\Modulos\Gestor de informes\Views\Jcl.dcp" />
<DCCReference Include="..\Modulos\Gestor de informes\Views\JclVcl.dcp" />
<DCCReference Include="..\Modulos\Gestor de informes\Views\JSDialog100.dcp" />
<DCCReference Include="..\Modulos\Gestor de informes\Views\JvCmpD11R.dcp" />
<DCCReference Include="..\Modulos\Gestor de informes\Views\JvCoreD11R.dcp" />
<DCCReference Include="..\Modulos\Gestor de informes\Views\JvCtrlsD11R.dcp" />
<DCCReference Include="..\Modulos\Gestor de informes\Views\JvDlgsD11R.dcp" />
<DCCReference Include="..\Modulos\Gestor de informes\Views\JvMMD11R.dcp" />
<DCCReference Include="..\Modulos\Gestor de informes\Views\JvNetD11R.dcp" />
<DCCReference Include="..\Modulos\Gestor de informes\Views\JvPageCompsD11R.dcp" />
<DCCReference Include="..\Modulos\Gestor de informes\Views\JvStdCtrlsD11R.dcp" />
<DCCReference Include="..\Modulos\Gestor de informes\Views\JvSystemD11R.dcp" />
<DCCReference Include="..\Modulos\Gestor de informes\Views\pckMD5.dcp" />
<DCCReference Include="..\Modulos\Gestor de informes\Views\pckUCDataConnector.dcp" />
<DCCReference Include="..\Modulos\Gestor de informes\Views\pckUserControl_RT.dcp" />
<DCCReference Include="..\Modulos\Gestor de informes\Views\PngComponentsD10.dcp" />
<DCCReference Include="..\Modulos\Gestor de informes\Views\PNG_D10.dcp" />
<DCCReference Include="..\Modulos\Gestor de informes\Views\RemObjects_Core_D11.dcp" />
<DCCReference Include="..\Modulos\Gestor de informes\Views\RemObjects_Indy_D11.dcp" />
<DCCReference Include="..\Modulos\Gestor de informes\Views\rtl.dcp" />
<DCCReference Include="..\Modulos\Gestor de informes\Views\TB2k_D10.dcp" />
<DCCReference Include="..\Modulos\Gestor de informes\Views\tbx_d10.dcp" />
<DCCReference Include="..\Modulos\Gestor de informes\Views\vcl.dcp" />
<DCCReference Include="..\Modulos\Gestor de informes\Views\vclactnband.dcp" />
<DCCReference Include="..\Modulos\Gestor de informes\Views\vcldb.dcp" />
<DCCReference Include="..\Modulos\Gestor de informes\Views\vcljpg.dcp" />
<DCCReference Include="..\Modulos\Gestor de informes\Views\VclSmp.dcp" />
<DCCReference Include="..\Modulos\Gestor de informes\Views\vclx.dcp" />
<DCCReference Include="..\Modulos\Gestor de informes\Views\xmlrtl.dcp" />
<DCCReference Include="..\..\Resources\Logotipos Tecsitel\adortl.dcp" />
<DCCReference Include="..\..\Resources\Logotipos Tecsitel\cxDataD11.dcp" />
<DCCReference Include="..\..\Resources\Logotipos Tecsitel\cxEditorsD11.dcp" />
<DCCReference Include="..\..\Resources\Logotipos Tecsitel\cxExportD11.dcp" />
<DCCReference Include="..\..\Resources\Logotipos Tecsitel\cxExtEditorsD11.dcp" />
<DCCReference Include="..\..\Resources\Logotipos Tecsitel\cxGridD11.dcp" />
<DCCReference Include="..\..\Resources\Logotipos Tecsitel\cxIntl6D11.dcp" />
<DCCReference Include="..\..\Resources\Logotipos Tecsitel\cxIntlPrintSys3D11.dcp" />
<DCCReference Include="..\..\Resources\Logotipos Tecsitel\cxLibraryD11.dcp" />
<DCCReference Include="..\..\Resources\Logotipos Tecsitel\cxPageControlD11.dcp" />
<DCCReference Include="..\..\Resources\Logotipos Tecsitel\DataAbstract_Core_D11.dcp" />
<DCCReference Include="..\..\Resources\Logotipos Tecsitel\dbrtl.dcp" />
<DCCReference Include="..\..\Resources\Logotipos Tecsitel\dclIndyCore.dcp" />
<DCCReference Include="..\..\Resources\Logotipos Tecsitel\designide.dcp" />
<DCCReference Include="..\..\Resources\Logotipos Tecsitel\dsnap.dcp" />
<DCCReference Include="..\..\Resources\Logotipos Tecsitel\dxGDIPlusD11.dcp" />
<DCCReference Include="..\..\Resources\Logotipos Tecsitel\dxPSCoreD11.dcp" />
<DCCReference Include="..\..\Resources\Logotipos Tecsitel\dxThemeD11.dcp" />
<DCCReference Include="..\..\Resources\Logotipos Tecsitel\GUISDK_D11R.dcp" />
<DCCReference Include="..\..\Resources\Logotipos Tecsitel\IndyCore.dcp" />
<DCCReference Include="..\..\Resources\Logotipos Tecsitel\IndyProtocols.dcp" />
<DCCReference Include="..\..\Resources\Logotipos Tecsitel\IndySystem.dcp" />
<DCCReference Include="..\..\Resources\Logotipos Tecsitel\Jcl.dcp" />
<DCCReference Include="..\..\Resources\Logotipos Tecsitel\JclVcl.dcp" />
<DCCReference Include="..\..\Resources\Logotipos Tecsitel\JSDialog100.dcp" />
<DCCReference Include="..\..\Resources\Logotipos Tecsitel\JvCmpD11R.dcp" />
<DCCReference Include="..\..\Resources\Logotipos Tecsitel\JvCoreD11R.dcp" />
<DCCReference Include="..\..\Resources\Logotipos Tecsitel\JvCtrlsD11R.dcp" />
<DCCReference Include="..\..\Resources\Logotipos Tecsitel\JvDlgsD11R.dcp" />
<DCCReference Include="..\..\Resources\Logotipos Tecsitel\JvMMD11R.dcp" />
<DCCReference Include="..\..\Resources\Logotipos Tecsitel\JvNetD11R.dcp" />
<DCCReference Include="..\..\Resources\Logotipos Tecsitel\JvPageCompsD11R.dcp" />
<DCCReference Include="..\..\Resources\Logotipos Tecsitel\JvStdCtrlsD11R.dcp" />
<DCCReference Include="..\..\Resources\Logotipos Tecsitel\JvSystemD11R.dcp" />
<DCCReference Include="..\..\Resources\Logotipos Tecsitel\pckMD5.dcp" />
<DCCReference Include="..\..\Resources\Logotipos Tecsitel\pckUCDataConnector.dcp" />
<DCCReference Include="..\..\Resources\Logotipos Tecsitel\pckUserControl_RT.dcp" />
<DCCReference Include="..\..\Resources\Logotipos Tecsitel\PngComponentsD10.dcp" />
<DCCReference Include="..\..\Resources\Logotipos Tecsitel\PNG_D10.dcp" />
<DCCReference Include="..\..\Resources\Logotipos Tecsitel\RemObjects_Core_D11.dcp" />
<DCCReference Include="..\..\Resources\Logotipos Tecsitel\RemObjects_Indy_D11.dcp" />
<DCCReference Include="..\..\Resources\Logotipos Tecsitel\rtl.dcp" />
<DCCReference Include="..\..\Resources\Logotipos Tecsitel\TB2k_D10.dcp" />
<DCCReference Include="..\..\Resources\Logotipos Tecsitel\tbx_d10.dcp" />
<DCCReference Include="..\..\Resources\Logotipos Tecsitel\vcl.dcp" />
<DCCReference Include="..\..\Resources\Logotipos Tecsitel\vclactnband.dcp" />
<DCCReference Include="..\..\Resources\Logotipos Tecsitel\vcldb.dcp" />
<DCCReference Include="..\..\Resources\Logotipos Tecsitel\vcljpg.dcp" />
<DCCReference Include="..\..\Resources\Logotipos Tecsitel\VclSmp.dcp" />
<DCCReference Include="..\..\Resources\Logotipos Tecsitel\vclx.dcp" />
<DCCReference Include="..\..\Resources\Logotipos Tecsitel\xmlrtl.dcp" />
<DCCReference Include="..\Servicios\FactuGES_Intf.pas" />
<DCCReference Include="Conexion\uConfigurarConexion.pas">
<Form>fConfigurarConexion</Form>

Binary file not shown.

View File

@ -1,7 +1,7 @@
MAINICON ICON "C:\Codigo tecsitel\Resources\Iconos\Factuges.ico"
1 VERSIONINFO
FILEVERSION 1,8,6,0
PRODUCTVERSION 1,8,6,0
FILEVERSION 1,8,7,0
PRODUCTVERSION 1,8,7,0
FILEFLAGSMASK 0x3FL
FILEFLAGS 0x00L
FILEOS 0x40004L
@ -13,10 +13,10 @@ BEGIN
BLOCK "0C0A04E4"
BEGIN
VALUE "CompanyName", "Rodax Software S.L.\0"
VALUE "FileVersion", "1.8.6.0\0"
VALUE "FileVersion", "1.8.7.0\0"
VALUE "InternalName", "FactuGES\0"
VALUE "ProductName", "FactuGES\0"
VALUE "ProductVersion", "1.8.6.0\0"
VALUE "ProductVersion", "1.8.7.0\0"
END
END
BLOCK "VarFileInfo"

Binary file not shown.

View File

@ -2478,7 +2478,7 @@ inherited fEditorPreview: TfEditorPreview
Bitmap = {}
end
object frxReport1: TfrxReport
Version = '4.3'
Version = '4.7.71'
DotMatrixReport = False
EngineOptions.DoublePass = True
IniFile = '\Software\Fast Reports'
@ -2529,6 +2529,7 @@ inherited fEditorPreview: TfEditorPreview
ShowDialog = False
UseFileCache = True
ShowProgress = True
OverwritePrompt = False
Monochrome = True
Left = 120
Top = 384
@ -2536,13 +2537,21 @@ inherited fEditorPreview: TfEditorPreview
object frxPDFExport1: TfrxPDFExport
UseFileCache = True
ShowProgress = True
OverwritePrompt = False
PrintOptimized = True
Outline = False
Background = False
HTMLTags = False
Author = 'FastReport'#174
Subject = 'FastReport PDF export'
Background = False
Creator = 'FastReport (http://www.fast-report.com)'
HTMLTags = False
ProtectionFlags = [ePrint, eModify, eCopy, eAnnot]
HideToolbar = False
HideMenubar = False
HideWindowUI = False
FitWindow = False
CenterWindow = False
PrintScaling = False
Left = 160
Top = 384
end
@ -2550,6 +2559,7 @@ inherited fEditorPreview: TfEditorPreview
ShowDialog = False
UseFileCache = True
ShowProgress = True
OverwritePrompt = False
Monochrome = True
Left = 192
Top = 384
@ -2557,6 +2567,8 @@ inherited fEditorPreview: TfEditorPreview
object frxXLSExport1: TfrxXLSExport
UseFileCache = True
ShowProgress = True
OverwritePrompt = False
ExportEMF = True
AsText = False
Background = True
FastExport = True
@ -2569,25 +2581,32 @@ inherited fEditorPreview: TfEditorPreview
object frxMailExport1: TfrxMailExport
UseFileCache = True
ShowProgress = True
OverwritePrompt = False
ShowExportDialog = True
SmtpPort = 25
UseIniFile = True
TimeOut = 60
ConfurmReading = False
Left = 80
Top = 384
end
object frxRTFExport: TfrxRTFExport
UseFileCache = True
ShowProgress = True
OverwritePrompt = False
ExportEMF = True
Wysiwyg = True
Creator = 'FastReport http://www.fast-report.com'
SuppressPageHeadersFooters = False
HeaderFooterMode = hfText
AutoSize = False
Left = 232
Top = 384
end
object frxSimpleTextExport1: TfrxSimpleTextExport
UseFileCache = True
ShowProgress = True
OverwritePrompt = False
Frames = False
EmptyLines = False
OEMCodepage = False

View File

@ -154,7 +154,7 @@ type
function GetTitle: string;
procedure PonerTitulos(const ATitulo: String = ''); override;
function GetController : IControllerBase;
procedure SetController (const Value : IControllerBase);
procedure SetController (const Value : IControllerBase); Virtual;
procedure SetListaID (const Value : TIntegerList);
function GetListaID : TIntegerList;
public

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -89,7 +89,18 @@ type
DADSInformeListadoFacturasResumen: TDADataSource;
tbl_InformeListadoFacturasResumen: TDAMemDataTable;
Bin2DataStreamer: TDABin2DataStreamer;
frxDBInformeListadoFacturasGrafComp: TfrxDBDataset;
DASInformeListadoFacturasGrafComp: TDADataSource;
tbl_InformeListadoFacturasGrafCompMensual: TDAMemDataTable;
tbl_InformeListadoFacturasGrafCompTrimestral: TDAMemDataTable;
tbl_InformeListadoFacturasGrafCompSemestral: TDAMemDataTable;
schReport: TDASchema;
frxDBInformeListadoClientesMayorFacturacionResumen: TfrxDBDataset;
DADSInformeListadoClientesMayorFacturacionResumen: TDADataSource;
tbl_InformeListadoClientesMayorFacturacionResumen: TDAMemDataTable;
frxDBInformeListadoClientesMayorDescuentoResumen: TfrxDBDataset;
DADSInformeListadoClientesMayorDescuentoResumen: TDADataSource;
tbl_InformeListadoClientesMayorDescuentoResumen: TDAMemDataTable;
procedure DataModuleCreate(Sender: TObject);
procedure DataModuleDestroy(Sender: TObject);
private
@ -99,16 +110,22 @@ type
FFechaFin: Variant;
FFechaVenInicio: Variant;
FFechaVenFin: Variant;
FAno1: Variant;
FAno2: Variant;
FIntervalo: Variant;
FListaIDClientes: TIntegerArray;
FListaNombresClientes : TStringList;
FImporteMinimo: Currency;
FDesglosado : Boolean;
FTopN: Integer;
//Genera cada una de las facturas a imprimir
procedure _GenerarFactura(const ID: Integer; const VerSello: Boolean = True; const VerCopia: Boolean = True);
procedure PrepararTablaInforme(ATabla: TDAMemDataTable);
procedure PrepararTablaResumenInforme(ATabla: IDADataset);
procedure PrepararTablaInformeGrafComp(ATabla: TDAMemDataTable);
procedure PrepararTablaResumenInformeGrafComp(ATabla: TDAMemDataTable);
function _GenerarInforme(const TipoInforme: String): Binary;
procedure IniciarParametrosInforme;
procedure RecuperarNombresClientes;
@ -118,6 +135,7 @@ type
function GenerarInformeIVA(const IdEmpresa: Integer; const FechaInicio: Variant; const FechaFin: Variant; const ListaIDClientes: TIntegerArray; const Desglosado: Boolean; const ImporteMinimo: Currency): Binary;
function GenerarInformeListadoFacturas(const IdEmpresa: Integer; const FechaInicio: Variant; const FechaFin: Variant; const FechaVenInicio: Variant; const FechaVenFin: Variant; const ListaIDClientes: TIntegerArray; const Desglosado: Boolean; const ImporteMinimo: Currency): Binary;
function GenerarInformeListadoFacturasPendientes(const IdEmpresa: Integer; const FechaInicio: Variant; const FechaFin: Variant; const FechaVenInicio: Variant; const FechaVenFin: Variant; const ListaIDClientes: TIntegerArray; const Desglosado: Boolean; const ImporteMinimo: Currency): Binary;
function GenerarInformeFacturasGrafComp(const IdEmpresa: Integer; const Intervalo: Variant; const Ano1: Variant; const Ano2: Variant; const ListaIDClientes: TIntegerArray; const TopN: Integer): Binary;
end;
implementation
@ -126,7 +144,7 @@ implementation
uses
uSistemaFunc, StrUtils, uDataModuleServer, schFacturasClienteClient_Intf,
uROServer, DataAbstract4_Intf;
uROServer, DataAbstract4_Intf, srvGestorInformes_Impl;
const
rptFacturaCliente = 'InfFacturaCliente.fr3';
@ -136,6 +154,7 @@ const
rptInformeListadoFacturasClienteDesglosado = 'InformeListadoFacturasClienteDesglosado.fr3';
rptInformeListadoFactuasClientePendiente = 'InformeListadoFacturasClientePendientes.fr3';
rptInformeListadoFactuasClientePendienteDesglosado = 'InformeListadoFacturasClientePendientesDesglosado.fr3';
rptInformeListadoFacturasClienteGrafComp = 'InformeListadoFacturasClienteGrafComp.fr3';
{ Dataset names for schReport }
ds_InformeListadoFacturasResumen = 'InformeListadoFacturasResumen';
@ -202,6 +221,59 @@ begin
end;
end;
function TRptFacturasCliente.GenerarInformeFacturasGrafComp(
const IdEmpresa: Integer; const Intervalo, Ano1, Ano2: Variant;
const ListaIDClientes: TIntegerArray; const TopN: Integer): Binary;
var
AStream: TMemoryStream;
AInforme: Variant;
begin
FConnection.BeginTransaction; //<--- Creo que no va a hacer falta. "PUES SI ES NECESARIO"
AStream := TMemoryStream.Create;
try
//Inicializamos parametros
FIdEmpresa := IdEmpresa;
FAno1 := Ano1;
FAno2 := Ano2;
FIntervalo := Intervalo;
FTopN := TopN;
if Assigned(FListaIDClientes) then
FListaIDClientes.Free;
FListaIDClientes := ListaIDClientes;
//Preparamos la tabla correspondiente y la abrimos para el informe
if (FIntervalo = CTE_MENSUAL) then
PrepararTablaInformeGrafComp(tbl_InformeListadoFacturasGrafCompMensual)
else if (FIntervalo = CTE_TRIMESTRAL) then
PrepararTablaInformeGrafComp(tbl_InformeListadoFacturasGrafCompTrimestral)
else
PrepararTablaInformeGrafComp(tbl_InformeListadoFacturasGrafCompSemestral);
//Se preparan las tablas del listado resumen del informe
// PrepararTablaResumenInformeGrafComp(tbl_InformeListadoProveedoresMayorFacturacionResumen);
// PrepararTablaResumenInformeGrafComp(tbl_InformeListadoProveedoresMayorDescuentoResumen);
Result := Binary.Create;
AInforme := DarRutaFichero(DarRutaInformes, rptInformeListadoFacturasClienteGrafComp, IntTostr(FIdEmpresa));
if VarIsNull(AInforme) then
raise Exception.Create (('Error Servidor: GenerarInformeFacturasGrafComp, no encuentra informe ' + rptInformeListadoFacturasClienteGrafComp));
frxReport.LoadFromFile(AInforme, True);
// IniciarParametrosInforme;
frxReport.PrepareReport(False);
frxReport.PreviewPages.SaveToStream(Result);
finally
AStream.Free;
FConnection.RollbackTransaction; //<--- Creo que no va a hacer falta. "PUES SI ES NECESARIO"
end;
end;
function TRptFacturasCliente.GenerarInformeIVA(const IdEmpresa: Integer; const FechaInicio: Variant; const FechaFin: Variant; const ListaIDClientes: TIntegerArray; const Desglosado: Boolean; const ImporteMinimo: Currency): Binary;
var
ATipoInforme: String;
@ -512,6 +584,19 @@ begin
end;
end;
procedure TRptFacturasCliente.PrepararTablaInformeGrafComp(ATabla: TDAMemDataTable);
begin
if ATabla.Active then
ATabla.Active := False;
DASInformeListadoFacturasGrafComp.DataTable := ATabla;
ATabla.ParamByName('ID_EMPRESA1').AsInteger := FIdEmpresa;
ATabla.ParamByName('ID_EMPRESA2').AsInteger := FIdEmpresa;
ATabla.ParamByName('ANO1').AsVariant := FAno1;
ATabla.ParamByName('ANO2').AsVariant := FAno2;
ATabla.Active := True;
end;
procedure TRptFacturasCliente.PrepararTablaResumenInforme(ATabla: IDADataset);
var
i: Integer;
@ -561,6 +646,17 @@ begin
ATabla.Where.AddText(AWhereStr);
end;
procedure TRptFacturasCliente.PrepararTablaResumenInformeGrafComp(ATabla: TDAMemDataTable);
begin
if ATabla.Active then
ATabla.Active := False;
ATabla.ParamByName('ID_EMPRESA').AsInteger := FIdEmpresa;
ATabla.ParamByName('ANO').AsVariant := FAno1;
ATabla.ParamByName('NTOP').AsInteger := FTopN;
ATabla.Active := True;
end;
procedure TRptFacturasCliente.RecuperarNombresClientes;
var
AContactosService : IsrvContactos;

View File

@ -31,12 +31,16 @@ type
const IncludeSchema: Boolean; const MaxRecords: Integer);
procedure DARemoteServiceCreate(Sender: TObject);
procedure DataAbstractServiceBeforeAcquireConnection(aSender: TObject; var aConnectionName: string);
private
protected
{ IsrvFacturasCliente methods }
function GenerarInforme(const ListaID: TIntegerArray; const VerSello: Boolean = True; const VerCopia: Boolean = True): Binary;
function GenerarInformeEnWord(const ID: Integer; const VerSello: Boolean = True): Binary;
function GenerarInformeEnPDF(const ListaID: TIntegerArray; const VerSello: Boolean = True): Binary;
public
function DarListaAnos: StringArray;
end;
implementation
@ -77,6 +81,24 @@ begin
bpFacturasCliente.BusinessRulesID := BIZ_SERVER_FACTURAS_CLIENTE;
end;
function TsrvFacturasCliente.DarListaAnos: StringArray;
var
dsAnos : IDADataset;
begin
Result := StringArray.Create();
try
dsAnos := schFacturasCliente.NewDataset(Connection, 'ListaAnosFacturas', '', True);
while not dsAnos.EOF do
begin
Result.Add(dsAnos.Fields[0].AsString);
dsAnos.Next;
end;
finally
dsAnos.Close;
dsAnos := NIL;
end;
end;
procedure TsrvFacturasCliente.DataAbstractServiceBeforeAcquireConnection(
aSender: TObject; var aConnectionName: string);
begin

View File

@ -37,6 +37,17 @@ type
tbl_InformeListadoFacturasPendResumen: TDAMemDataTable;
Bin2DataStreamer: TDABin2DataStreamer;
DARemoteDataAdapter: TDARemoteDataAdapter;
DASInformeListadoFacturasGrafComp: TDADataSource;
tbl_InformeListadoFacturasGrafCompMensual: TDAMemDataTable;
tbl_InformeListadoFacturasGrafCompTrimestral: TDAMemDataTable;
frxDBInformeListadoFacturasGrafComp: TfrxDBDataset;
tbl_InformeListadoFacturasGrafCompSemestral: TDAMemDataTable;
frxDBInformeListadoProveedoresMayorFacturacionResumen: TfrxDBDataset;
DADSInformeListadoProveedoresMayorFacturacionResumen: TDADataSource;
tbl_InformeListadoProveedoresMayorFacturacionResumen: TDAMemDataTable;
frxDBInformeListadoProveedoresMayorDescuentoResumen: TfrxDBDataset;
DADSInformeListadoProveedoresMayorDescuentoResumen: TDADataSource;
tbl_InformeListadoProveedoresMayorDescuentoResumen: TDAMemDataTable;
schReport: TDASchema;
procedure DataModuleCreate(Sender: TObject);
procedure DataModuleDestroy(Sender: TObject);
@ -47,19 +58,26 @@ type
FFechaFin: Variant;
FFechaVenInicio: Variant;
FFechaVenFin: Variant;
FAno1: Variant;
FAno2: Variant;
FIntervalo: Variant;
FListaIDProveedores: TIntegerArray;
FListaNombresProveedores: TStringList;
FImporteMinimo: Currency;
FDesglosado : Boolean;
FTopN: Integer;
procedure RecuperarNombresProveedores;
procedure PrepararTablaInforme(ATabla: TDAMemDataTable);
procedure PrepararTablaResumenInforme(ATabla: IDADataset);
procedure PrepararTablaInformeGrafComp(ATabla: TDAMemDataTable);
procedure PrepararTablaResumenInformeGrafComp(ATabla: TDAMemDataTable);
procedure IniciarParametrosInforme;
function _GenerarInforme(const TipoInforme: String): Binary;
public
function GenerarInformeIVA(const IdEmpresa: Integer; const FechaInicio: Variant; const FechaFin: Variant; const ListaIDProveedores: TIntegerArray; const Desglosado: Boolean; const ImporteMinimo: Currency): Binary;
function GenerarInformeListadoFacturas(const IdEmpresa: Integer; const FechaInicio: Variant; const FechaFin: Variant; const FechaVenInicio: Variant; const FechaVenFin: Variant; const ListaIDProveedores: TIntegerArray; const Desglosado: Boolean; const ImporteMinimo: Currency): Binary;
function GenerarInformeListadoFacturasPendientes(const IdEmpresa: Integer; const FechaInicio: Variant; const FechaFin: Variant; const FechaVenInicio: Variant; const FechaVenFin: Variant; const ListaIDProveedores: TIntegerArray; const Desglosado: Boolean; const ImporteMinimo: Currency): Binary;
function GenerarInformeFacturasGrafComp(const IdEmpresa: Integer; const Intervalo: Variant; const Ano1: Variant; const Ano2: Variant; const ListaIDProveedores: TIntegerArray; const TopN: Integer): Binary;
end;
implementation
@ -68,7 +86,7 @@ implementation
uses
uSistemaFunc, StrUtils, uDataModuleServer, schFacturasProveedorClient_Intf,
uROServer, DataAbstract4_Intf;
uROServer, DataAbstract4_Intf, srvGestorInformes_Impl;
const
rptInformeIVA = 'InformeIVAProveedores.fr3';
@ -77,6 +95,7 @@ const
rptInformeListadoFacturasProveedorDesglosado = 'InformeListadoFacturasProveedorDesglosado.fr3';
rptInformeListadoFactuasProveedorPendiente = 'InformeListadoFacturasProveedorPendientes.fr3';
rptInformeListadoFactuasProveedorPendienteDesglosado = 'InformeListadoFacturasProveedorPendientesDesglosado.fr3';
rptInformeListadoFacturasProveedorGrafComp = 'InformeListadoFacturasProveedorGrafComp.fr3';
{ Dataset names for schReport }
ds_InformeListadoFacturasResumen = 'InformeListadoFacturasResumen';
@ -99,6 +118,59 @@ begin
FreeANDNIL(FListaNombresProveedores);
end;
function TRptFacturasProveedor.GenerarInformeFacturasGrafComp(
const IdEmpresa: Integer; const Intervalo, Ano1, Ano2: Variant;
const ListaIDProveedores: TIntegerArray; const TopN: Integer): Binary;
var
AStream: TMemoryStream;
AInforme: Variant;
begin
FConnection.BeginTransaction; //<--- Creo que no va a hacer falta. "PUES SI ES NECESARIO"
AStream := TMemoryStream.Create;
try
//Inicializamos parametros
FIdEmpresa := IdEmpresa;
FAno1 := Ano1;
FAno2 := Ano2;
FIntervalo := Intervalo;
FTopN := TopN;
if Assigned(FListaIDProveedores) then
FListaIDProveedores.Free;
FListaIDProveedores := ListaIDProveedores;
//Preparamos la tabla correspondiente y la abrimos para el informe
if (FIntervalo = CTE_MENSUAL) then
PrepararTablaInformeGrafComp(tbl_InformeListadoFacturasGrafCompMensual)
else if (FIntervalo = CTE_TRIMESTRAL) then
PrepararTablaInformeGrafComp(tbl_InformeListadoFacturasGrafCompTrimestral)
else
PrepararTablaInformeGrafComp(tbl_InformeListadoFacturasGrafCompSemestral);
//Se preparan las tablas del listado resumen del informe
PrepararTablaResumenInformeGrafComp(tbl_InformeListadoProveedoresMayorFacturacionResumen);
PrepararTablaResumenInformeGrafComp(tbl_InformeListadoProveedoresMayorDescuentoResumen);
Result := Binary.Create;
AInforme := DarRutaFichero(DarRutaInformes, rptInformeListadoFacturasProveedorGrafComp, IntTostr(FIdEmpresa));
if VarIsNull(AInforme) then
raise Exception.Create (('Error Servidor: GenerarInformeFacturasGrafComp, no encuentra informe ' + rptInformeListadoFacturasProveedorGrafComp));
frxReport.LoadFromFile(AInforme, True);
// IniciarParametrosInforme;
frxReport.PrepareReport(False);
frxReport.PreviewPages.SaveToStream(Result);
finally
AStream.Free;
FConnection.RollbackTransaction; //<--- Creo que no va a hacer falta. "PUES SI ES NECESARIO"
end;
end;
function TRptFacturasProveedor.GenerarInformeIVA(const IdEmpresa: Integer;
const FechaInicio, FechaFin: Variant;
const ListaIDProveedores: TIntegerArray; const Desglosado: Boolean;
@ -445,6 +517,19 @@ begin
end;
end;
procedure TRptFacturasProveedor.PrepararTablaInformeGrafComp(ATabla: TDAMemDataTable);
begin
if ATabla.Active then
ATabla.Active := False;
DASInformeListadoFacturasGrafComp.DataTable := ATabla;
ATabla.ParamByName('ID_EMPRESA1').AsInteger := FIdEmpresa;
ATabla.ParamByName('ID_EMPRESA2').AsInteger := FIdEmpresa;
ATabla.ParamByName('ANO1').AsVariant := FAno1;
ATabla.ParamByName('ANO2').AsVariant := FAno2;
ATabla.Active := True;
end;
procedure TRptFacturasProveedor.PrepararTablaResumenInforme(ATabla: IDADataset);
var
i: Integer;
@ -494,6 +579,17 @@ begin
ATabla.Where.AddText(AWhereStr);
end;
procedure TRptFacturasProveedor.PrepararTablaResumenInformeGrafComp(ATabla: TDAMemDataTable);
begin
if ATabla.Active then
ATabla.Active := False;
ATabla.ParamByName('ID_EMPRESA').AsInteger := FIdEmpresa;
ATabla.ParamByName('ANO').AsVariant := FAno1;
ATabla.ParamByName('NTOP').AsInteger := FTopN;
ATabla.Active := True;
end;
procedure TRptFacturasProveedor.RecuperarNombresProveedores;
var
AContactosService : IsrvContactos;

View File

@ -33,6 +33,10 @@ type
procedure DARemoteServiceCreate(Sender: TObject);
procedure DataAbstractServiceBeforeAcquireConnection(aSender: TObject;
var aConnectionName: string);
public
function DarListaAnos: StringArray;
end;
implementation
@ -71,6 +75,24 @@ begin
bpFacturasProveedor.BusinessRulesID := BIZ_SERVER_FACTURAS_PROVEEDOR;
end;
function TsrvFacturasProveedor.DarListaAnos: StringArray;
var
dsAnos : IDADataset;
begin
Result := StringArray.Create();
try
dsAnos := schFacturasProveedor.NewDataset(Connection, 'ListaAnosFacturas', '', True);
while not dsAnos.EOF do
begin
Result.Add(dsAnos.Fields[0].AsString);
dsAnos.Next;
end;
finally
dsAnos.Close;
dsAnos := NIL;
end;
end;
procedure TsrvFacturasProveedor.DataAbstractServiceBeforeAcquireConnection(
aSender: TObject; var aConnectionName: string);
begin

View File

@ -43,6 +43,7 @@ contains
uIEditorInformeFacturasProveedorReport in 'View\uIEditorInformeFacturasProveedorReport.pas',
uIEditorInformePresupuestosReport in 'View\uIEditorInformePresupuestosReport.pas',
uIEditorInformeRecibosProveedorReport in 'View\uIEditorInformeRecibosProveedorReport.pas',
uIEditorInformePedidosReport in 'View\uIEditorInformePedidosReport.pas';
uIEditorInformePedidosReport in 'View\uIEditorInformePedidosReport.pas',
uIEditorInformeFacturasProveedorReportGrafComp in 'View\uIEditorInformeFacturasProveedorReportGrafComp.pas';
end.

View File

@ -47,6 +47,7 @@
<DCCReference Include="View\uIEditorInformeFacturasClienteReport.pas" />
<DCCReference Include="View\uIEditorInformeFacturasProveedorPendientesReport.pas" />
<DCCReference Include="View\uIEditorInformeFacturasProveedorReport.pas" />
<DCCReference Include="View\uIEditorInformeFacturasProveedorReportGrafComp.pas" />
<DCCReference Include="View\uIEditorInformeIVAClientesReport.pas" />
<DCCReference Include="View\uIEditorInformeIVAProveedoresReport.pas" />
<DCCReference Include="View\uIEditorInformePedidosReport.pas" />

View File

@ -0,0 +1,28 @@
unit uIEditorInformeFacturasProveedorReportGrafComp;
interface
uses
FactuGES_Intf, uIEditorInformeBase;
type
IEditorInformeFacturasProveedorReportGrafComp = interface(IEditorInformeBase)
['{1F80F45F-AAD6-460D-9E68-AD4492009926}']
function GetIntervalo: Variant;
function GetAno1: Variant;
function GetAno2: Variant;
function GetListaIDProveedores: TIntegerArray;
property Intervalo: Variant read GetIntervalo;
property Ano1: Variant read GetAno1;
property Ano2: Variant read GetAno2;
property ListaIDProveedores: TIntegerArray read GetListaIDProveedores;
end;
implementation
end.

View File

@ -14,7 +14,8 @@ type
property DataModule: IDataModuleGestorInformes read GetDataModule;
// procedure Preview(AFactura : IBizFacturaCliente; AllItems: Boolean = false);
// procedure Print(AFactura : IBizFacturaCliente; AllItems: Boolean = false);
function DarListaIntervalos: TStringList;
//MODULO PRESUPUESTOS DE CLIENTE
procedure VerInformeListadoPresupuestos;
@ -34,6 +35,8 @@ type
procedure VerInformeIVAProveedores;
procedure VerInformeListadoFacturasProv;
procedure VerInformeListadoFacturasProvPendientes;
procedure VerInformeFacturasProvGrafComp;
function DarListaAnosFacturasProv: TStringList;
//MODULO RECIBOS DE PROVEEDOR
procedure VerInformeListadoRecibosProvPendientes;
@ -83,6 +86,9 @@ type
procedure VerInformeIVAProveedores;
procedure VerInformeListadoFacturasProv;
procedure VerInformeListadoFacturasProvPendientes;
procedure VerInformeFacturasProvGrafComp;
function DarListaAnosFacturasProv: TStringList;
function DarListaIntervalos: TStringList;
//MODULO RECIBOS DE PROVEEDOR
procedure VerInformeListadoRecibosProvPendientes;
@ -104,7 +110,7 @@ uses
uIEditorInformeIVAProveedoresReport, uIEditorInformeFacturasProveedorReport,
uIEditorInformeFacturasProveedorPendientesReport, uIEditorInformeRecibosProveedorReport,
uIEditorInformeRecibosProvPendientesReport,
uIEditorInformePedidosReport;
uIEditorInformePedidosReport, uIEditorInformeFacturasProveedorReportGrafComp;
{procedure CopiarArticulosPedido(AOrigen: IBizDetallesPedidoCliente;
@ -264,6 +270,16 @@ begin
Result := Supports(EditorRegistry.CreateEditor(AName), IID, Intf);
end;
function TGestorInformesController.DarListaAnosFacturasProv: TStringList;
begin
Result := FDataModule.DarListaAnosFacturasProv;
end;
function TGestorInformesController.DarListaIntervalos: TStringList;
begin
Result := FDataModule.DarListaIntervalos;
end;
destructor TGestorInformesController.Destroy;
begin
FDataModule := Nil;
@ -275,6 +291,30 @@ begin
Result := FDataModule;
end;
procedure TGestorInformesController.VerInformeFacturasProvGrafComp;
var
AStream: Binary;
AEditor : IEditorInformeFacturasProveedorReportGrafComp;
begin
AEditor := NIL;
CreateEditor('EditorInformeFacturasProveedorReportGrafComp', IEditorInformeFacturasProveedorReportGrafComp, AEditor);
if Assigned(AEditor) then
try
AEditor.Controller := Self;
AEditor.Title := 'Informe comparativo de facturación de proveedores';
AStream := FDataModule.GenerarInformeFacturasProvGrafComp(AppFactuGES.EmpresaActiva.ID,
AEditor.Intervalo, AEditor.Ano1, AEditor.Ano2, AEditor.ListaIDProveedores);
AEditor.LoadFromStream(AStream);
AEditor.Preview;
finally
AEditor.Release;
AEditor := Nil;
FreeAndNil(AStream);
end;
end;
procedure TGestorInformesController.VerInformeIVAClientes;
var
AStream: Binary;

View File

@ -10,12 +10,12 @@ inherited DataModuleGestorInformes: TDataModuleGestorInformes
Top = 16
end
object rda_GestorInformes: TDARemoteDataAdapter
DataStreamer = Bin2DataStreamer
GetSchemaCall.RemoteService = RORemoteService
GetDataCall.RemoteService = RORemoteService
UpdateDataCall.RemoteService = RORemoteService
GetScriptsCall.RemoteService = RORemoteService
RemoteService = RORemoteService
DataStreamer = Bin2DataStreamer
Left = 43
Top = 135
end
@ -47,8 +47,6 @@ inherited DataModuleGestorInformes: TDataModuleGestorInformes
end>
StreamingOptions = [soDisableEventsWhileStreaming]
RemoteDataAdapter = rda_GestorInformes
DetailOptions = [dtCascadeOpenClose, dtCascadeApplyUpdates, dtAutoFetch, dtCascadeDelete, dtCascadeUpdate, dtDisableLogOfCascadeDeletes, dtDisableLogOfCascadeUpdates, dtIncludeInAllInOneFetch]
MasterOptions = [moCascadeOpenClose, moCascadeApplyUpdates, moCascadeDelete, moCascadeUpdate, moDisableLogOfCascadeDeletes, moDisableLogOfCascadeUpdates]
LogicalName = 'DirectoryData'
IndexDefs = <>
Left = 184

View File

@ -21,6 +21,7 @@ type
procedure DAClientDataModuleCreate(Sender: TObject);
public
// function GetItems : IBizFacturaCliente;
function DarListaIntervalos: TStringList;
//MODULO PRESUPUESTOS DE CLIENTE
function GenerarInformeListadoPresupuestos(const IdEmpresa: Integer; const FechaInicio: Variant; const FechaFin: Variant; const ListaIDClientes: TIntegerArray; const Desglosado: Boolean; const ImporteMinimo: Currency): Binary;
@ -41,6 +42,8 @@ type
function GenerarInformeIVAProveedores(const IdEmpresa: Integer; const FechaInicio: Variant; const FechaFin: Variant; const ListaIDProveedores: TIntegerArray; const Desglosado: Boolean; const ImporteMinimo: Currency): Binary;
function GenerarInformeListadoFacturasProv(const IdEmpresa: Integer; const FechaInicio: Variant; const FechaFin: Variant; const FechaVenInicio: Variant; const FechaVenFin: Variant; const ListaIDProveedores: TIntegerArray; const Desglosado: Boolean; const ImporteMinimo: Currency): Binary;
function GenerarInformeListadoFacturasProvPendientes(const IdEmpresa: Integer; const FechaInicio: Variant; const FechaFin: Variant; const FechaVenInicio: Variant; const FechaVenFin: Variant; const ListaIDProveedores: TIntegerArray; const Desglosado: Boolean; const ImporteMinimo: Currency): Binary;
function GenerarInformeFacturasProvGrafComp(const IdEmpresa: Integer; const Intervalo: Variant; const Ano1: Variant; const Ano2: Variant; const ListaIDProveedores: TIntegerArray): Binary;
function DarListaAnosFacturasProv: TStringList;
//MODULO RECIBOS DE CLIENTE
function GenerarInformeListadoRecibosProvPendientes(const IdEmpresa: Integer; const FechaInicio: Variant; const FechaFin: Variant; const FechaVenInicio: Variant; const FechaVenFin: Variant; const ListaIDProveedores: TIntegerArray; const Desglosado: Boolean; const ImporteMinimo: Currency): Binary;
@ -55,7 +58,7 @@ implementation
uses
uDataModuleConexion, uDataTableUtils, cxControls,
Dialogs;
Dialogs, DataAbstract4_Intf;
{ TdmPresupuestos }
@ -65,6 +68,48 @@ begin
RORemoteService.Message := dmConexion.Message;
end;
function TDataModuleGestorInformes.DarListaAnosFacturasProv: TStringList;
var
i: Integer;
AResultado : StringArray;
begin
Result := Nil;
try
AResultado := (RORemoteService as IsrvGestorInformes).DarListaAnosFacturasProv;
Result := TStringList.Create;
for i:= 0 to AResultado.Count - 1 do
Result.Add(AResultado.Items[i]);
finally
FreeANDNIL(AResultado)
end;
end;
function TDataModuleGestorInformes.DarListaIntervalos: TStringList;
var
i: Integer;
AResultado : StringArray;
begin
Result := Nil;
try
AResultado := (RORemoteService as IsrvGestorInformes).DarListaIntervalos;
Result := TStringList.Create;
for i:= 0 to AResultado.Count - 1 do
Result.Add(AResultado.Items[i]);
finally
FreeANDNIL(AResultado)
end;
end;
function TDataModuleGestorInformes.GenerarInformeFacturasProvGrafComp(
const IdEmpresa: Integer; const Intervalo, Ano1, Ano2: Variant;
const ListaIDProveedores: TIntegerArray): Binary;
begin
try
Result := (RORemoteService as IsrvGestorInformes).GenerarInformeFacturasProvGrafComp(IdEmpresa, Intervalo, Ano1, Ano2, ListaIdProveedores, 7);
finally
end;
end;
function TDataModuleGestorInformes.GenerarInformeIVAClientes(const IdEmpresa: Integer; const FechaInicio: Variant; const FechaFin: Variant; const ListaIDClientes: TIntegerArray; const Desglosado: Boolean; const ImporteMinimo: Currency): Binary;
begin
try

View File

@ -3,12 +3,14 @@ unit uIDataModuleGestorInformes;
interface
uses
uROTypes, FactuGES_Intf;
uROTypes, Classes, FactuGES_Intf;
type
IDataModuleGestorInformes = interface
['{65FB8E9E-5218-43DC-80AD-BDB4383B7064}']
// function GetItems: IBizFacturaCliente;
function DarListaIntervalos: TStringList;
procedure getInforme;
//MODULO PRESUPUESTOS DE CLIENTE
@ -31,6 +33,9 @@ type
function GenerarInformeListadoFacturasProv(const IdEmpresa: Integer; const FechaInicio: Variant; const FechaFin: Variant; const FechaVenInicio: Variant; const FechaVenFin: Variant; const ListaIDProveedores: TIntegerArray; const Desglosado: Boolean; const ImporteMinimo: Currency): Binary;
function GenerarInformeListadoFacturasProvPendientes(const IdEmpresa: Integer; const FechaInicio: Variant; const FechaFin: Variant; const FechaVenInicio: Variant; const FechaVenFin: Variant; const ListaIDProveedores: TIntegerArray; const Desglosado: Boolean; const ImporteMinimo: Currency): Binary;
function GenerarInformeFacturasProvGrafComp(const IdEmpresa: Integer; const Intervalo: Variant; const Ano1: Variant; const Ano2: Variant; const ListaIDProveedores: TIntegerArray): Binary;
function DarListaAnosFacturasProv: TStringList;
//MODULO RECIBOS DE CLIENTE
function GenerarInformeListadoRecibosProvPendientes(const IdEmpresa: Integer; const FechaInicio: Variant; const FechaFin: Variant; const FechaVenInicio: Variant; const FechaVenFin: Variant; const ListaIDProveedores: TIntegerArray; const Desglosado: Boolean; const ImporteMinimo: Currency): Binary;
function GenerarInformeListadoRecibosProveedor(const IdEmpresa: Integer; const FechaInicio: Variant; const FechaFin: Variant; const FechaVenInicio: Variant; const FechaVenFin: Variant; const ListaIDProveedores: TIntegerArray; const Desglosado: Boolean; const ImporteMinimo: Currency): Binary;

View File

@ -103,6 +103,12 @@ object PluginGestorInformes: TPluginGestorInformes
ImageIndex = 0
OnExecute = actInformeRecibosProvPendientesExecute
end
object actInformeFacturasProveedorGrafComp: TAction
Category = 'Facturas de proveedor'
Caption = 'Informe comparativo de facturaci'#243'n de proveedores'
ImageIndex = 0
OnExecute = actInformeFacturasProveedorGrafCompExecute
end
end
object MainMenu: TMainMenu
Images = LargeImages
@ -162,6 +168,14 @@ object PluginGestorInformes: TPluginGestorInformes
Tag = 130
Action = actInformeRecibosProvPendientes
end
object N5: TMenuItem
Tag = 140
Caption = '-'
end
object Informecomparativodefacturacindeproveedores1: TMenuItem
Tag = 150
Action = actInformeFacturasProveedorGrafComp
end
end
end
object SmallImages: TPngImageList

View File

@ -41,6 +41,9 @@ type
N4: TMenuItem;
Listadoderecibosdeproveedor1: TMenuItem;
Listadoderecibosdeproveedorpendientes1: TMenuItem;
actInformeFacturasProveedorGrafComp: TAction;
N5: TMenuItem;
Informecomparativodefacturacindeproveedores1: TMenuItem;
procedure actInformeFacturasClienteExecute(Sender: TObject);
procedure actInformeFacturasClientePendientesExecute(Sender: TObject);
procedure actInformeFacturasClienteIVAExecute(Sender: TObject);
@ -51,6 +54,7 @@ type
procedure actInformeFacturasProveedorIVAExecute(Sender: TObject);
procedure actInformeRecibosProveedorExecute(Sender: TObject);
procedure actInformeRecibosProvPendientesExecute(Sender: TObject);
procedure actInformeFacturasProveedorGrafCompExecute(Sender: TObject);
private
FController : IGestorInformesController;
public
@ -98,6 +102,12 @@ begin
FController.VerInformeListadoFacturasProv;
end;
procedure TPluginGestorInformes.actInformeFacturasProveedorGrafCompExecute(
Sender: TObject);
begin
FController.VerInformeFacturasProvGrafComp;
end;
procedure TPluginGestorInformes.actInformeFacturasProveedorIVAExecute(
Sender: TObject);
begin

View File

@ -25,12 +25,19 @@ const
ds_Customers = 'Customers';
ds_Regions = 'Regions';
CTE_MENSUAL = 'Mensual';
CTE_TRIMESTRAL = 'Trimestral';
CTE_SEMESTRAL = 'Semestral';
type
{ TGestorInformes }
TsrvGestorInformes = class(TDataAbstractService, IsrvGestorInformes)
Schema: TDASchema;
Bin2DataStreamer: TDABin2DataStreamer;
public
//MODULO DE INFORMES
function DarListaIntervalos: StringArray;
//MODULO PRESUPUESTOS CLIENTE
function GenerarInformeListadoPresupuestos(const IdEmpresa: Integer; const FechaInicio: Variant; const FechaFin: Variant; const ListaIDClientes: TIntegerArray; const Desglosado: Boolean; const ImporteMinimo: Currency): Binary;
@ -39,6 +46,9 @@ type
function GenerarInformeListadoFacturasCli(const IdEmpresa: Integer; const FechaInicio: Variant; const FechaFin: Variant; const FechaVenInicio: Variant; const FechaVenFin: Variant; const ListaIDClientes: TIntegerArray; const Desglosado: Boolean; const ImporteMinimo: Currency): Binary;
function GenerarInformeListadoFacturasCliPendientes(const IdEmpresa: Integer; const FechaInicio: Variant; const FechaFin: Variant; const FechaVenInicio: Variant; const FechaVenFin: Variant; const ListaIDClientes: TIntegerArray; const Desglosado: Boolean; const ImporteMinimo: Currency): Binary;
function GenerarInformeFacturasCliGrafComp(const IdEmpresa: Integer; const Intervalo: Variant; const Ano1: Variant; const Ano2: Variant; const ListaIDClientes: TIntegerArray; const TopN: Integer): Binary;
function DarListaAnosFacturasCli: StringArray;
//MODULO RECIBOS CLIENTE
function GenerarInformeListadoRecibosCliente(const IdEmpresa: Integer; const FechaInicio: Variant; const FechaFin: Variant; const FechaVenInicio: Variant; const FechaVenFin: Variant; const ListaIDClientes: TIntegerArray; const Desglosado: Boolean; const ImporteMinimo: Currency): Binary;
function GenerarInformeListadoRecibosCliPendientes(const IdEmpresa: Integer; const FechaInicio: Variant; const FechaFin: Variant; const FechaVenInicio: Variant; const FechaVenFin: Variant; const ListaIDClientes: TIntegerArray; const Desglosado: Boolean; const ImporteMinimo: Currency): Binary;
@ -51,6 +61,9 @@ type
function GenerarInformeListadoFacturasProv(const IdEmpresa: Integer; const FechaInicio: Variant; const FechaFin: Variant; const FechaVenInicio: Variant; const FechaVenFin: Variant; const ListaIDProveedores: TIntegerArray; const Desglosado: Boolean; const ImporteMinimo: Currency): Binary;
function GenerarInformeListadoFacturasProvPendientes(const IdEmpresa: Integer; const FechaInicio: Variant; const FechaFin: Variant; const FechaVenInicio: Variant; const FechaVenFin: Variant; const ListaIDProveedores: TIntegerArray; const Desglosado: Boolean; const ImporteMinimo: Currency): Binary;
function GenerarInformeFacturasProvGrafComp(const IdEmpresa: Integer; const Intervalo: Variant; const Ano1: Variant; const Ano2: Variant; const ListaIDProveedores: TIntegerArray; const TopN: Integer): Binary;
function DarListaAnosFacturasProv: StringArray;
//MODULO RECIBOS PROVEEDOR
function GenerarInformeListadoRecibosProveedor(const IdEmpresa: Integer; const FechaInicio: Variant; const FechaFin: Variant; const FechaVenInicio: Variant; const FechaVenFin: Variant; const ListaIDProveedores: TIntegerArray; const Desglosado: Boolean; const ImporteMinimo: Currency): Binary;
function GenerarInformeListadoRecibosProvPendientes(const IdEmpresa: Integer; const FechaInicio: Variant; const FechaFin: Variant; const FechaVenInicio: Variant; const FechaVenFin: Variant; const ListaIDProveedores: TIntegerArray; const Desglosado: Boolean; const ImporteMinimo: Currency): Binary;
@ -62,13 +75,78 @@ implementation
uses
{Generated:} FactuGES_Invk, uDataModuleServer, uDatabaseUtils, Dialogs,
uRptPresupuestosCliente_Server, uRptFacturasCliente_Server, uRptRecibosCliente_Server,
uRptPedidosProveedor_Server, uRptFacturasProveedor_Server, uRptRecibosProveedor_Server;
uRptPedidosProveedor_Server, uRptFacturasProveedor_Server, uRptRecibosProveedor_Server,
srvFacturasProveedor_Impl, srvFacturasCliente_Impl;
procedure Create_srvGestorInformes(out anInstance: IUnknown);
begin
anInstance := TsrvGestorInformes.Create(nil);
end;
function TsrvGestorInformes.DarListaAnosFacturasCli: StringArray;
var
AServer : TsrvFacturasCliente;
begin
Result := Nil;
AServer := TsrvFacturasCliente.Create(nil);
try
Result := AServer.DarListaAnos;
finally
FreeAndNIL(AServer);
end;
end;
function TsrvGestorInformes.DarListaAnosFacturasProv: StringArray;
var
AServer : TsrvFacturasProveedor;
begin
Result := Nil;
AServer := TsrvFacturasProveedor.Create(nil);
try
Result := AServer.DarListaAnos;
finally
FreeAndNIL(AServer);
end;
end;
function TsrvGestorInformes.DarListaIntervalos: StringArray;
begin
Result := StringArray.Create();
Result.Add(CTE_MENSUAL);
Result.Add(CTE_TRIMESTRAL);
Result.Add(CTE_SEMESTRAL);
end;
function TsrvGestorInformes.GenerarInformeFacturasCliGrafComp(
const IdEmpresa: Integer; const Intervalo, Ano1, Ano2: Variant;
const ListaIDClientes: TIntegerArray; const TopN: Integer): Binary;
var
AReportGenerator : TRptFacturasCliente;
begin
AReportGenerator := TRptFacturasCliente.Create(nil);
try
Result := AReportGenerator.GenerarInformeFacturasGrafComp(IdEmpresa, Intervalo, Ano1, Ano2, ListaIDClientes, TopN);
finally
FreeAndNIL(AReportGenerator);
end;
end;
function TsrvGestorInformes.GenerarInformeFacturasProvGrafComp(
const IdEmpresa: Integer; const Intervalo, Ano1, Ano2: Variant;
const ListaIDProveedores: TIntegerArray; const TopN: Integer): Binary;
var
AReportGenerator : TRptFacturasProveedor;
begin
AReportGenerator := TRptFacturasProveedor.Create(nil);
try
Result := AReportGenerator.GenerarInformeFacturasGrafComp(IdEmpresa, Intervalo, Ano1, Ano2, ListaIDProveedores, TopN);
finally
FreeAndNIL(AReportGenerator);
end;
end;
function TsrvGestorInformes.GenerarInformeIVAClientes(const IdEmpresa: Integer; const FechaInicio: Variant; const FechaFin: Variant; const ListaIDClientes: TIntegerArray; const Desglosado: Boolean; const ImporteMinimo: Currency): Binary;
var
AReportGenerator : TRptFacturasCliente;

View File

@ -64,11 +64,13 @@ requires
dxLayoutControlD11,
dxComnD11,
cxEditorsD11,
cxDataD11;
cxDataD11,
dxCoreD11,
fqb110,
bdertl;
contains
uGestorInformesViewRegister in 'uGestorInformesViewRegister.pas',
uViewPeriodoFechas in 'uViewPeriodoFechas.pas' {frViewPeriodoFechas: TFrame},
uViewFiltroImportes in 'uViewFiltroImportes.pas' {frViewFiltroImportes: TFrame},
uEditorInformeIVAClientesReport in 'uEditorInformeIVAClientesReport.pas' {fEditorInformeIVAClientesReport: TForm},
uEditorInformeBase in 'uEditorInformeBase.pas' {fEditorInformeBase: TForm},
@ -85,6 +87,9 @@ contains
uEditorInformeFacturasProveedorReport in 'uEditorInformeFacturasProveedorReport.pas' {fEditorInformeFacturasProveedorReport: TForm},
uEditorInformePedidosReport in 'uEditorInformePedidosReport.pas' {fEditorInformePedidosReport: TForm},
uEditorInformeRecibosProveedorReport in 'uEditorInformeRecibosProveedorReport.pas' {fEditorInformeRecibosProveedorReport: TForm},
uEditorInformePresupuestosReport in 'uEditorInformePresupuestosReport.pas' {fEditorInformePresupuestosReport: TForm};
uEditorInformePresupuestosReport in 'uEditorInformePresupuestosReport.pas' {fEditorInformePresupuestosReport: TForm},
uViewPeriodoFechas in 'uViewPeriodoFechas.pas' {frViewPeriodoFechas: TFrame},
uViewIntervaloComparativo in 'uViewIntervaloComparativo.pas' {TfrViewIntervaloComparativo: TFrame},
uEditorInformeFacturasProveedorReportGrafComp in 'uEditorInformeFacturasProveedorReportGrafComp.pas' {fEditorInformeFacturasProveedorReportGrafComp: TForm};
end.

View File

@ -38,40 +38,49 @@
<DelphiCompile Include="GestorInformes_view.dpk">
<MainSource>MainSource</MainSource>
</DelphiCompile>
<DCCReference Include="ApplicationBase.dcp" />
<DCCReference Include="Base.dcp" />
<DCCReference Include="ccpackD11.dcp" />
<DCCReference Include="cfpack_d11.dcp" />
<DCCReference Include="Contactos_controller.dcp" />
<DCCReference Include="Contactos_model.dcp" />
<DCCReference Include="Contactos_view.dcp" />
<DCCReference Include="cxDataD11.dcp" />
<DCCReference Include="cxEditorsD11.dcp" />
<DCCReference Include="cxLibraryD11.dcp" />
<DCCReference Include="dbrtl.dcp" />
<DCCReference Include="designide.dcp" />
<DCCReference Include="dxComnD11.dcp" />
<DCCReference Include="dxGDIPlusD11.dcp" />
<DCCReference Include="dxLayoutControlD11.dcp" />
<DCCReference Include="dxThemeD11.dcp" />
<DCCReference Include="frx11.dcp" />
<DCCReference Include="frxe11.dcp" />
<DCCReference Include="fs11.dcp" />
<DCCReference Include="GestorInformes_controller.dcp" />
<DCCReference Include="GUIBase.dcp" />
<DCCReference Include="GUISDK_D11R.dcp" />
<DCCReference Include="Jcl.dcp" />
<DCCReference Include="JclVcl.dcp" />
<DCCReference Include="JvCoreD11R.dcp" />
<DCCReference Include="JvPageCompsD11R.dcp" />
<DCCReference Include="JvStdCtrlsD11R.dcp" />
<DCCReference Include="JvSystemD11R.dcp" />
<DCCReference Include="PngComponentsD10.dcp" />
<DCCReference Include="PNG_D10.dcp" />
<DCCReference Include="RemObjects_Core_D11.dcp" />
<DCCReference Include="rtl.dcp" />
<DCCReference Include="tb2k_d10.dcp" />
<DCCReference Include="tbx_d10.dcp" />
<DCCReference Include="C:\FR\4.7.71\Demos\Main\ApplicationBase.dcp" />
<DCCReference Include="C:\FR\4.7.71\Demos\Main\Base.dcp" />
<DCCReference Include="C:\FR\4.7.71\Demos\Main\bdertl.dcp" />
<DCCReference Include="C:\FR\4.7.71\Demos\Main\ccpackD11.dcp" />
<DCCReference Include="C:\FR\4.7.71\Demos\Main\cfpack_d11.dcp" />
<DCCReference Include="C:\FR\4.7.71\Demos\Main\Contactos_controller.dcp" />
<DCCReference Include="C:\FR\4.7.71\Demos\Main\Contactos_model.dcp" />
<DCCReference Include="C:\FR\4.7.71\Demos\Main\Contactos_view.dcp" />
<DCCReference Include="C:\FR\4.7.71\Demos\Main\cxDataD11.dcp" />
<DCCReference Include="C:\FR\4.7.71\Demos\Main\cxEditorsD11.dcp" />
<DCCReference Include="C:\FR\4.7.71\Demos\Main\cxLibraryD11.dcp" />
<DCCReference Include="C:\FR\4.7.71\Demos\Main\dbrtl.dcp" />
<DCCReference Include="C:\FR\4.7.71\Demos\Main\designide.dcp" />
<DCCReference Include="C:\FR\4.7.71\Demos\Main\dxComnD11.dcp" />
<DCCReference Include="C:\FR\4.7.71\Demos\Main\dxCoreD11.dcp" />
<DCCReference Include="C:\FR\4.7.71\Demos\Main\dxGDIPlusD11.dcp" />
<DCCReference Include="C:\FR\4.7.71\Demos\Main\dxLayoutControlD11.dcp" />
<DCCReference Include="C:\FR\4.7.71\Demos\Main\dxThemeD11.dcp" />
<DCCReference Include="C:\FR\4.7.71\Demos\Main\fqb110.dcp" />
<DCCReference Include="C:\FR\4.7.71\Demos\Main\frx11.dcp" />
<DCCReference Include="C:\FR\4.7.71\Demos\Main\frxe11.dcp" />
<DCCReference Include="C:\FR\4.7.71\Demos\Main\fs11.dcp" />
<DCCReference Include="C:\FR\4.7.71\Demos\Main\GestorInformes_controller.dcp" />
<DCCReference Include="C:\FR\4.7.71\Demos\Main\GUIBase.dcp" />
<DCCReference Include="C:\FR\4.7.71\Demos\Main\GUISDK_D11R.dcp" />
<DCCReference Include="C:\FR\4.7.71\Demos\Main\Jcl.dcp" />
<DCCReference Include="C:\FR\4.7.71\Demos\Main\JclVcl.dcp" />
<DCCReference Include="C:\FR\4.7.71\Demos\Main\JvCoreD11R.dcp" />
<DCCReference Include="C:\FR\4.7.71\Demos\Main\JvPageCompsD11R.dcp" />
<DCCReference Include="C:\FR\4.7.71\Demos\Main\JvStdCtrlsD11R.dcp" />
<DCCReference Include="C:\FR\4.7.71\Demos\Main\JvSystemD11R.dcp" />
<DCCReference Include="C:\FR\4.7.71\Demos\Main\PngComponentsD10.dcp" />
<DCCReference Include="C:\FR\4.7.71\Demos\Main\PNG_D10.dcp" />
<DCCReference Include="C:\FR\4.7.71\Demos\Main\RemObjects_Core_D11.dcp" />
<DCCReference Include="C:\FR\4.7.71\Demos\Main\rtl.dcp" />
<DCCReference Include="C:\FR\4.7.71\Demos\Main\tb2k_d10.dcp" />
<DCCReference Include="C:\FR\4.7.71\Demos\Main\tbx_d10.dcp" />
<DCCReference Include="C:\FR\4.7.71\Demos\Main\vcl.dcp" />
<DCCReference Include="C:\FR\4.7.71\Demos\Main\vclactnband.dcp" />
<DCCReference Include="C:\FR\4.7.71\Demos\Main\vcldb.dcp" />
<DCCReference Include="C:\FR\4.7.71\Demos\Main\vcljpg.dcp" />
<DCCReference Include="C:\FR\4.7.71\Demos\Main\vclx.dcp" />
<DCCReference Include="C:\FR\4.7.71\Demos\Main\xmlrtl.dcp" />
<DCCReference Include="uEditorInformeBase.pas">
<Form>fEditorInformeBase</Form>
<DesignClass>TForm</DesignClass>
@ -92,6 +101,10 @@
<Form>fEditorInformeFacturasProveedorReport</Form>
<DesignClass>TForm</DesignClass>
</DCCReference>
<DCCReference Include="uEditorInformeFacturasProveedorReportGrafComp.pas">
<Form>fEditorInformeFacturasProveedorReportGrafComp</Form>
<DesignClass>TForm</DesignClass>
</DCCReference>
<DCCReference Include="uEditorInformeIVAClientesReport.pas">
<Form>fEditorInformeIVAClientesReport</Form>
<DesignClass>TForm</DesignClass>
@ -105,7 +118,7 @@
<DesignClass>TForm</DesignClass>
</DCCReference>
<DCCReference Include="uEditorInformePresupuestosReport.pas">
<Form>fEditorInformePresupuestoReport</Form>
<Form>fEditorInformePresupuestosReport</Form>
<DesignClass>TForm</DesignClass>
</DCCReference>
<DCCReference Include="uEditorInformeRecibosClienteReport.pas">
@ -137,6 +150,10 @@
<Form>frViewFiltroProveedores</Form>
<DesignClass>TFrame</DesignClass>
</DCCReference>
<DCCReference Include="uViewIntervaloComparativo.pas">
<Form>TfrViewIntervaloComparativo</Form>
<DesignClass>TFrame</DesignClass>
</DCCReference>
<DCCReference Include="uViewParametrosInforme.pas">
<Form>frViewParametrosInforme</Form>
<DesignClass>TFrame</DesignClass>
@ -145,12 +162,6 @@
<Form>frViewPeriodoFechas</Form>
<DesignClass>TFrame</DesignClass>
</DCCReference>
<DCCReference Include="vcl.dcp" />
<DCCReference Include="vclactnband.dcp" />
<DCCReference Include="vcldb.dcp" />
<DCCReference Include="vcljpg.dcp" />
<DCCReference Include="vclx.dcp" />
<DCCReference Include="xmlrtl.dcp" />
</ItemGroup>
</Project>
<!-- EurekaLog First Line

View File

@ -0,0 +1,171 @@
inherited fEditorInformeFacturasProveedorReportGrafComp: TfEditorInformeFacturasProveedorReportGrafComp
Caption = 'fEditorInformeFacturasProveedorReportGrafComp'
ClientHeight = 655
ClientWidth = 895
ExplicitWidth = 903
ExplicitHeight = 689
PixelsPerInch = 96
TextHeight = 13
inherited JvNavPanelHeader: TJvNavPanelHeader
Width = 895
ExplicitWidth = 895
inherited Image1: TImage
Left = 868
ExplicitLeft = 868
end
end
inherited TBXDock: TTBXDock
Width = 895
ExplicitWidth = 895
inherited tbxMenu: TTBXToolbar
ExplicitWidth = 895
end
inherited TBXToolbar1: TTBXToolbar
ExplicitWidth = 591
object TBXItem58: TTBXItem [0]
Action = actRefrescar
DisplayMode = nbdmImageAndText
Images = SmallImages
end
end
end
inherited StatusBar: TJvStatusBar
Top = 636
Width = 895
ExplicitTop = 636
ExplicitWidth = 895
end
inherited TBXMultiDockIzquierdo: TTBXMultiDock
Height = 534
ExplicitHeight = 534
end
inherited TBXMultiDockDerecho: TTBXMultiDock
Left = 703
Width = 192
Height = 534
ExplicitLeft = 703
ExplicitWidth = 192
ExplicitHeight = 534
inherited pnlParametros: TTBXDockablePanel
DockedWidth = 188
ExplicitWidth = 192
ExplicitHeight = 518
inherited TBXDockablePanel1: TTBXDockablePanel
Top = 368
ExplicitTop = 368
ExplicitWidth = 188
inherited TBXButton1: TTBXButton
AlignWithMargins = True
Left = 3
Top = 3
Width = 182
Height = 37
Margins.Left = 8
Margins.Top = 8
Margins.Right = 8
Margins.Bottom = 8
Align = alTop
ExplicitLeft = 3
ExplicitTop = 3
ExplicitWidth = 182
ExplicitHeight = 37
end
end
inline TfrViewIntervaloComparativo1: TTfrViewIntervaloComparativo
Left = 0
Top = 0
Width = 188
Height = 182
Align = alTop
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'Tahoma'
Font.Style = []
ParentFont = False
TabOrder = 1
ReadOnly = False
ExplicitWidth = 188
inherited TBXAlignmentPanel2: TTBXAlignmentPanel
Width = 182
ExplicitWidth = 182
inherited Label3: TLabel
Width = 172
end
inherited cbIntervalo: TcxComboBox
Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
ExplicitWidth = 166
Width = 166
end
end
inherited TBXLabel2: TTBXLabel
Width = 188
ExplicitWidth = 188
end
inherited TBXAlignmentPanel3: TTBXAlignmentPanel
Width = 182
ExplicitWidth = 182
inherited lis: TLabel
Width = 172
end
inherited cbAno1: TcxComboBox
Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
ExplicitWidth = 166
Width = 166
end
end
inherited TBXAlignmentPanel1: TTBXAlignmentPanel
Width = 182
ExplicitWidth = 182
inherited Label1: TLabel
Width = 172
end
inherited cbAno2: TcxComboBox
Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
ExplicitWidth = 166
Width = 166
end
end
end
inline frViewFiltroProveedores1: TfrViewFiltroProveedores
Left = 0
Top = 182
Width = 188
Height = 195
Align = alTop
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'Tahoma'
Font.Style = []
ParentFont = False
TabOrder = 2
Visible = False
ReadOnly = False
ExplicitTop = 182
inherited TBXLabel2: TTBXLabel
Width = 188
end
inherited bElegirProveedor: TBitBtn
Width = 119
end
inherited edtProveedor: TcxTextEdit
Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
Width = 152
end
end
end
end
end

View File

@ -0,0 +1,175 @@
unit uEditorInformeFacturasProveedorReportGrafComp;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, uEditorPreview, frxExportText, frxExportRTF, frxExportMail,
frxExportXLS, frxExportImage, frxExportPDF, frxClass, frxDCtrl, frxGradient,
frxChBox, frxCross, frxRich, frxOLE, frxBarcode, JvAppStorage,
JvAppRegistryStorage, JvComponentBase, JvFormPlacement, ImgList, PngImageList,
StdActns, ActnList, ComCtrls, JvExComCtrls, JvStatusBar, TB2ExtItems,
TBXExtItems, TBX, TB2Item, TB2Dock, TB2Toolbar, pngimage, ExtCtrls,
JvExControls, JvNavigationPane, uCustomView,
uViewBase, uViewPeriodoFechas, uControllerBase,
dxLayoutControl, cxControls, uViewFiltroImportes,
FactuGES_Intf, TBXDkPanels, uEditorInformeBase,
uIEditorInformeBase, uViewParametrosInforme, uIEditorInformeFacturasProveedorReportGrafComp,
uViewIntervaloComparativo, uViewFiltroProveedores;
type
TfEditorInformeFacturasProveedorReportGrafComp = class(TfEditorInformeBase, IEditorInformeFacturasProveedorReportGrafComp)
TBXItem58: TTBXItem;
TfrViewIntervaloComparativo1: TTfrViewIntervaloComparativo;
frViewFiltroProveedores1: TfrViewFiltroProveedores;
procedure actRefrescarExecute(Sender: TObject);
procedure FormShow(Sender: TObject);
private
FListaIDProveedores: TIntegerArray;
function GetIntervalo: Variant;
function GetAno1: Variant;
function GetAno2: Variant;
function GetListaIDProveedores: TIntegerArray;
procedure RefrescarInforme;
protected
procedure SetController (const Value : IControllerBase); override;
public
property Intervalo: Variant read GetIntervalo;
property Ano1: Variant read GetAno1;
property Ano2: Variant read GetAno2;
property ListaIDProveedores: TIntegerArray read GetListaIDProveedores;
constructor Create(AOwner: TComponent); override;
destructor Destroy; override;
end;
implementation
{$R *.dfm}
uses uROTypes, DateUtils, uGestorInformesController, uFactuGES_App;
{ TfEditorGestorInformesReport }
procedure TfEditorInformeFacturasProveedorReportGrafComp.actRefrescarExecute(Sender: TObject);
begin
inherited;
RefrescarInforme;
end;
constructor TfEditorInformeFacturasProveedorReportGrafComp.Create(AOwner: TComponent);
begin
inherited;
FListaIDProveedores := TIntegerArray.Create;
end;
destructor TfEditorInformeFacturasProveedorReportGrafComp.Destroy;
begin
FListaIDProveedores.Free;
inherited;
end;
procedure TfEditorInformeFacturasProveedorReportGrafComp.FormShow(
Sender: TObject);
var
AListaAnos: TStringList;
AListaIntervalos: TStringList;
i: Integer;
begin
inherited;
end;
function TfEditorInformeFacturasProveedorReportGrafComp.GetIntervalo: Variant;
begin
Result := TfrViewIntervaloComparativo1.cbIntervalo.EditValue;
end;
function TfEditorInformeFacturasProveedorReportGrafComp.GetAno1: Variant;
begin
Result := TfrViewIntervaloComparativo1.cbAno1.EditValue;
end;
function TfEditorInformeFacturasProveedorReportGrafComp.GetAno2: Variant;
begin
Result := TfrViewIntervaloComparativo1.cbAno2.EditValue;
end;
function TfEditorInformeFacturasProveedorReportGrafComp.GetListaIDProveedores: TIntegerArray;
begin
FListaIDProveedores.Clear;
if Assigned(frViewFiltroProveedores1.Proveedor) then
FListaIDProveedores.Add(frViewFiltroProveedores1.Proveedor.ID);
Result := FListaIDProveedores;
end;
procedure TfEditorInformeFacturasProveedorReportGrafComp.RefrescarInforme;
var
AStream: Binary;
begin
ShowHourglassCursor;
try
AStream := (Controller as IGestorInformesController).DataModule.GenerarInformeFacturasProvGrafComp(
AppFactuGES.EmpresaActiva.ID,
Intervalo,
Ano1,
Ano2,
ListaIDProveedores);
LoadFromStream(AStream);
Report.ShowPreparedReport;
finally
FreeAndNil(AStream);
HideHourglassCursor;
end;
end;
procedure TfEditorInformeFacturasProveedorReportGrafComp.SetController(
const Value: IControllerBase);
var
AListaAnos: TStringList;
AListaIntervalos: TStringList;
i: Integer;
begin
inherited;
AListaIntervalos := (Controller as IGestorInformesController).DarListaIntervalos;
AListaAnos := (Controller as IGestorInformesController).DarListaAnosFacturasProv;
if Assigned(AListaIntervalos) then
begin
TfrViewIntervaloComparativo1.cbIntervalo.Properties.Items.BeginUpdate;
TfrViewIntervaloComparativo1.cbIntervalo.Properties.Items.Clear;
for i := 0 to AListaIntervalos.Count - 1 do
TfrViewIntervaloComparativo1.cbIntervalo.Properties.Items.Append(AListaIntervalos.Strings[i]);
TfrViewIntervaloComparativo1.cbIntervalo.Properties.Items.EndUpdate;
end;
if Assigned(AListaAnos) then
begin
TfrViewIntervaloComparativo1.cbAno1.Properties.Items.BeginUpdate;
TfrViewIntervaloComparativo1.cbAno2.Properties.Items.BeginUpdate;
TfrViewIntervaloComparativo1.cbAno1.Properties.Items.Clear;
TfrViewIntervaloComparativo1.cbAno2.Properties.Items.Clear;
for i := 0 to AListaAnos.Count - 1 do
begin
TfrViewIntervaloComparativo1.cbAno1.Properties.Items.Append(AListaAnos.Strings[i]);
TfrViewIntervaloComparativo1.cbAno2.Properties.Items.Append(AListaAnos.Strings[i]);
end;
TfrViewIntervaloComparativo1.cbAno1.Properties.Items.EndUpdate;
TfrViewIntervaloComparativo1.cbAno2.Properties.Items.EndUpdate;
end;
TfrViewIntervaloComparativo1.cbIntervalo.ItemIndex := 0;
TfrViewIntervaloComparativo1.cbAno1.ItemIndex := 0;
end;
end.

View File

@ -14,7 +14,9 @@ uses
uEditorInformePresupuestosReport, uEditorInformePedidosReport,
uEditorInformeIVAProveedoresReport, uEditorInformeFacturasProveedorReport, uEditorInformeFacturasProveedorPendientesReport,
uEditorInformeRecibosProveedorReport, uEditorInformeRecibosProvPendientesReport;
uEditorInformeRecibosProveedorReport, uEditorInformeRecibosProvPendientesReport,
uEditorInformeFacturasProveedorReportGrafComp;
procedure RegisterViews;
begin
@ -31,6 +33,8 @@ begin
EditorRegistry.RegisterClass(TfEditorInformeFacturasProveedorPendientesReport, 'EditorInformeFacturasProveedorPendientesReport');
EditorRegistry.RegisterClass(TfEditorInformeRecibosProveedorReport, 'EditorInformeRecibosProveedorReport');
EditorRegistry.RegisterClass(TfEditorInformeRecibosProvPendientesReport, 'EditorInformeRecibosProvPendientesReport');
EditorRegistry.RegisterClass(TfEditorInformeFacturasProveedorReportGrafComp, 'EditorInformeFacturasProveedorReportGrafComp');
end;
procedure UnregisterViews;
@ -48,6 +52,8 @@ begin
EditorRegistry.UnRegisterClass(TfEditorInformeFacturasProveedorPendientesReport);
EditorRegistry.UnRegisterClass(TfEditorInformeRecibosProveedorReport);
EditorRegistry.UnRegisterClass(TfEditorInformeRecibosProvPendientesReport);
EditorRegistry.UnRegisterClass(TfEditorInformeFacturasProveedorReportGrafComp);
end;
end.

View File

@ -0,0 +1,178 @@
inherited TfrViewIntervaloComparativo: TTfrViewIntervaloComparativo
Width = 451
Height = 182
Align = alTop
ExplicitWidth = 451
ExplicitHeight = 182
object TBXAlignmentPanel2: TTBXAlignmentPanel
AlignWithMargins = True
Left = 3
Top = 32
Width = 445
Height = 42
Margins.Left = 5
Margins.Top = 5
Margins.Right = 5
Align = alTop
AutoSize = True
TabOrder = 0
DesignSize = (
445
42)
object Label3: TLabel
Left = 5
Top = 5
Width = 435
Height = 13
Align = alTop
Caption = 'Intervalo comparativo'
Transparent = True
ExplicitWidth = 106
end
object cbIntervalo: TcxComboBox
Left = 3
Top = 21
Anchors = [akLeft, akTop, akRight]
Properties.DropDownListStyle = lsFixedList
Style.BorderColor = clWindowFrame
Style.BorderStyle = ebs3D
Style.HotTrack = False
Style.LookAndFeel.Kind = lfStandard
Style.LookAndFeel.NativeStyle = True
Style.LookAndFeel.SkinName = ''
Style.ButtonStyle = bts3D
Style.PopupBorderStyle = epbsFrame3D
StyleDisabled.LookAndFeel.Kind = lfStandard
StyleDisabled.LookAndFeel.NativeStyle = True
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.Kind = lfStandard
StyleFocused.LookAndFeel.NativeStyle = True
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.Kind = lfStandard
StyleHot.LookAndFeel.NativeStyle = True
StyleHot.LookAndFeel.SkinName = ''
TabOrder = 0
Width = 429
end
end
object TBXLabel2: TTBXLabel
Left = 0
Top = 0
Width = 451
Height = 29
Margins.Top = 5
Margins.Bottom = 10
Align = alTop
Caption = 'Periodo'
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'MS Sans Serif'
Font.Style = [fsBold]
ParentColor = True
ParentFont = False
Underline = True
end
object TBXAlignmentPanel3: TTBXAlignmentPanel
AlignWithMargins = True
Left = 3
Top = 80
Width = 445
Height = 42
Margins.Left = 5
Margins.Top = 5
Margins.Right = 5
Align = alTop
AutoSize = True
TabOrder = 2
DesignSize = (
445
42)
object lis: TLabel
Left = 5
Top = 5
Width = 435
Height = 13
Align = alTop
Caption = 'A'#241'o'
Transparent = True
ExplicitWidth = 19
end
object cbAno1: TcxComboBox
Left = 3
Top = 21
Anchors = [akLeft, akTop, akRight]
Properties.DropDownListStyle = lsFixedList
Style.BorderColor = clWindowFrame
Style.BorderStyle = ebs3D
Style.HotTrack = False
Style.LookAndFeel.Kind = lfStandard
Style.LookAndFeel.NativeStyle = True
Style.LookAndFeel.SkinName = ''
Style.ButtonStyle = bts3D
Style.PopupBorderStyle = epbsFrame3D
StyleDisabled.LookAndFeel.Kind = lfStandard
StyleDisabled.LookAndFeel.NativeStyle = True
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.Kind = lfStandard
StyleFocused.LookAndFeel.NativeStyle = True
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.Kind = lfStandard
StyleHot.LookAndFeel.NativeStyle = True
StyleHot.LookAndFeel.SkinName = ''
TabOrder = 0
Width = 429
end
end
object TBXAlignmentPanel1: TTBXAlignmentPanel
AlignWithMargins = True
Left = 3
Top = 128
Width = 445
Height = 42
Margins.Left = 5
Margins.Top = 5
Margins.Right = 5
Align = alTop
AutoSize = True
TabOrder = 3
DesignSize = (
445
42)
object Label1: TLabel
Left = 5
Top = 5
Width = 435
Height = 13
Align = alTop
Caption = 'Comparar con a'#241'o'
Transparent = True
ExplicitWidth = 88
end
object cbAno2: TcxComboBox
Left = 3
Top = 21
Anchors = [akLeft, akTop, akRight]
Properties.DropDownListStyle = lsFixedList
Style.BorderColor = clWindowFrame
Style.BorderStyle = ebs3D
Style.HotTrack = False
Style.LookAndFeel.Kind = lfStandard
Style.LookAndFeel.NativeStyle = True
Style.LookAndFeel.SkinName = ''
Style.ButtonStyle = bts3D
Style.PopupBorderStyle = epbsFrame3D
StyleDisabled.LookAndFeel.Kind = lfStandard
StyleDisabled.LookAndFeel.NativeStyle = True
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.Kind = lfStandard
StyleFocused.LookAndFeel.NativeStyle = True
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.Kind = lfStandard
StyleHot.LookAndFeel.NativeStyle = True
StyleHot.LookAndFeel.SkinName = ''
TabOrder = 0
Width = 429
end
end
end

View File

@ -0,0 +1,92 @@
unit uViewIntervaloComparativo;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, cxGraphics, cxEdit, cxDropDownEdit, cxCalendar, StdCtrls,
cxControls, cxContainer, cxTextEdit, cxMaskEdit, TBXDkPanels,
cxEditRepositoryItems, dxLayoutControl, dxLayoutLookAndFeels, uViewBase,
Mask, JvExMask, JvToolEdit, TB2Dock, uViewParametrosInforme;
type
IViewPeriodoFechas = interface(IViewParametrosInforme)
['{793084E2-873E-4C57-8BD6-9087816CCF3A}']
end;
TTfrViewIntervaloComparativo = class(TfrViewParametrosInforme, IViewPeriodoFechas)
TBXLabel2: TTBXLabel;
TBXAlignmentPanel2: TTBXAlignmentPanel;
Label3: TLabel;
TBXAlignmentPanel3: TTBXAlignmentPanel;
lis: TLabel;
cbIntervalo: TcxComboBox;
cbAno1: TcxComboBox;
TBXAlignmentPanel1: TTBXAlignmentPanel;
Label1: TLabel;
cbAno2: TcxComboBox;
private
function GetIntervalo: Variant;
function GetAno1: Variant;
function GetAno2: Variant;
procedure SetIntervalo(const Value: Variant);
procedure SetAno1(const Value: Variant);
procedure SetAno2(const Value: Variant);
public
property Intevalo : Variant read GetIntervalo write SetIntervalo;
property Ano1 : Variant read GetAno1 write SetAno1;
property Ano2 : Variant read GetAno2 write SetAno2;
constructor Create(AOwner: TComponent); override;
end;
implementation
uses DateUtils;
{$R *.dfm}
function TTfrViewIntervaloComparativo.GetIntervalo: Variant;
begin
Result := cbIntervalo.EditValue;
end;
function TTfrViewIntervaloComparativo.GetAno1: Variant;
begin
Result := cbAno1.EditValue;
end;
function TTfrViewIntervaloComparativo.GetAno2: Variant;
begin
Result := cbAno2.EditValue;
end;
procedure TTfrViewIntervaloComparativo.SetIntervalo(const Value: Variant);
begin
cbIntervalo.EditValue := Value;
end;
procedure TTfrViewIntervaloComparativo.SetAno1(const Value: Variant);
begin
cbAno1.EditValue := Value;
end;
procedure TTfrViewIntervaloComparativo.SetAno2(const Value: Variant);
begin
cbAno2.EditValue := Value;
end;
constructor TTfrViewIntervaloComparativo.Create(AOwner: TComponent);
begin
inherited;
// cbPeriodo.ItemIndex := 0;
// cbPeriodo2.ItemIndex := 0;
// EsteMes(TFecha);
end;
end.

View File

@ -280,6 +280,12 @@
</Parameter>
</Parameters>
</Operation>
<Operation Name="DarListaAnos" UID="{AD3EDBF5-EA5F-4C8A-AFBF-E71A155CD742}">
<Parameters>
<Parameter Name="Result" DataType="StringArray" Flag="Result">
</Parameter>
</Parameters>
</Operation>
</Operations>
</Interface>
</Interfaces>
@ -288,6 +294,12 @@
<Interfaces>
<Interface Name="Default" UID="{7655160C-7023-452E-BB0E-C97E29B915E7}">
<Operations>
<Operation Name="DarListaAnos" UID="{FF851AE3-7133-4F8F-AF47-0F951C04015C}">
<Parameters>
<Parameter Name="Result" DataType="StringArray" Flag="Result">
</Parameter>
</Parameters>
</Operation>
</Operations>
</Interface>
</Interfaces>
@ -708,6 +720,24 @@
</Parameter>
</Parameters>
</Operation>
<Operation Name="GenerarInformeFacturasProvGrafComp" UID="{03C5A99B-8787-4A17-927A-D1405442032E}">
<Parameters>
<Parameter Name="Result" DataType="Binary" Flag="Result">
</Parameter>
<Parameter Name="IdEmpresa" DataType="Integer" Flag="In" >
</Parameter>
<Parameter Name="Intervalo" DataType="Variant" Flag="In" >
</Parameter>
<Parameter Name="Ano1" DataType="Variant" Flag="In" >
</Parameter>
<Parameter Name="Ano2" DataType="Variant" Flag="In" >
</Parameter>
<Parameter Name="ListaIDProveedores" DataType="TIntegerArray" Flag="In" >
</Parameter>
<Parameter Name="TopN" DataType="Integer" Flag="In" >
</Parameter>
</Parameters>
</Operation>
<Operation Name="GenerarInformeListadoFacturasCliPendientes" UID="{09AD0E02-7104-4B03-A605-97897915E849}">
<Parameters>
<Parameter Name="Result" DataType="Binary" Flag="Result">
@ -876,6 +906,18 @@
</Parameter>
</Parameters>
</Operation>
<Operation Name="DarListaAnosFacturasProv" UID="{5E0CCDD9-7CD5-411B-8B42-D31855A08D3D}">
<Parameters>
<Parameter Name="Result" DataType="StringArray" Flag="Result">
</Parameter>
</Parameters>
</Operation>
<Operation Name="DarListaIntervalos" UID="{C269B16F-5CA5-4EB8-8D9A-EAB8133537C4}">
<Parameters>
<Parameter Name="Result" DataType="StringArray" Flag="Result">
</Parameter>
</Parameters>
</Operation>
</Operations>
</Interface>
</Interfaces>

View File

@ -505,6 +505,7 @@ type
function GenerarInforme(const ListaID: TIntegerArray; const VerSello: Boolean; const VerCopia: Boolean): Binary;
function GenerarInformeEnWord(const ID: Integer; const VerSello: Boolean): Binary;
function GenerarInformeEnPDF(const ListaID: TIntegerArray; const VerSello: Boolean): Binary;
function DarListaAnos: StringArray;
end;
{ CosrvFacturasCliente }
@ -520,11 +521,13 @@ type
function GenerarInforme(const ListaID: TIntegerArray; const VerSello: Boolean; const VerCopia: Boolean): Binary;
function GenerarInformeEnWord(const ID: Integer; const VerSello: Boolean): Binary;
function GenerarInformeEnPDF(const ListaID: TIntegerArray; const VerSello: Boolean): Binary;
function DarListaAnos: StringArray;
end;
{ IsrvFacturasProveedor }
IsrvFacturasProveedor = interface(IDataAbstractService)
['{7655160C-7023-452E-BB0E-C97E29B915E7}']
function DarListaAnos: StringArray;
end;
{ CosrvFacturasProveedor }
@ -537,6 +540,7 @@ type
protected
function __GetInterfaceName:string; override;
function DarListaAnos: StringArray;
end;
{ IsrvPresupuestosCliente }
@ -771,6 +775,8 @@ type
const FechaVenFin: Variant; const ListadoIDClientes: TIntegerArray; const Desglosado: Boolean; const ImporteMinimo: Currency): Binary;
function GenerarInformeListadoFacturasProv(const IdEmpresa: Integer; const FechaInicio: Variant; const FechaFin: Variant; const FechaVenInicio: Variant;
const FechaVenFin: Variant; const ListaIDProveedores: TIntegerArray; const Desglosado: Boolean; const ImporteMinimo: Currency): Binary;
function GenerarInformeFacturasProvGrafComp(const IdEmpresa: Integer; const Intervalo: Variant; const Ano1: Variant; const Ano2: Variant; const ListaIDProveedores: TIntegerArray;
const TopN: Integer): Binary;
function GenerarInformeListadoFacturasCliPendientes(const IdEmpresa: Integer; const FechaInicio: Variant; const FechaFin: Variant; const FechaVenInicio: Variant;
const FechaVenFin: Variant; const ListaIDClientes: TIntegerArray; const Desglosado: Boolean; const ImporteMinimo: Currency): Binary;
function GenerarInformeListadoFacturasProvPendientes(const IdEmpresa: Integer; const FechaInicio: Variant; const FechaFin: Variant; const FechaVenInicio: Variant;
@ -787,6 +793,8 @@ type
const Desglosado: Boolean; const ImporteMinimo: Currency): Binary;
function GenerarInformeListadoPedidos(const IdEmpresa: Integer; const FechaInicio: Variant; const FechaFin: Variant; const ListaIDProveedores: TIntegerArray;
const Desglosado: Boolean; const ImporteMinimo: Currency): Binary;
function DarListaAnosFacturasProv: StringArray;
function DarListaIntervalos: StringArray;
end;
{ CosrvGestorInformes }
@ -807,6 +815,8 @@ type
const FechaVenFin: Variant; const ListadoIDClientes: TIntegerArray; const Desglosado: Boolean; const ImporteMinimo: Currency): Binary;
function GenerarInformeListadoFacturasProv(const IdEmpresa: Integer; const FechaInicio: Variant; const FechaFin: Variant; const FechaVenInicio: Variant;
const FechaVenFin: Variant; const ListaIDProveedores: TIntegerArray; const Desglosado: Boolean; const ImporteMinimo: Currency): Binary;
function GenerarInformeFacturasProvGrafComp(const IdEmpresa: Integer; const Intervalo: Variant; const Ano1: Variant; const Ano2: Variant; const ListaIDProveedores: TIntegerArray;
const TopN: Integer): Binary;
function GenerarInformeListadoFacturasCliPendientes(const IdEmpresa: Integer; const FechaInicio: Variant; const FechaFin: Variant; const FechaVenInicio: Variant;
const FechaVenFin: Variant; const ListaIDClientes: TIntegerArray; const Desglosado: Boolean; const ImporteMinimo: Currency): Binary;
function GenerarInformeListadoFacturasProvPendientes(const IdEmpresa: Integer; const FechaInicio: Variant; const FechaFin: Variant; const FechaVenInicio: Variant;
@ -823,6 +833,8 @@ type
const Desglosado: Boolean; const ImporteMinimo: Currency): Binary;
function GenerarInformeListadoPedidos(const IdEmpresa: Integer; const FechaInicio: Variant; const FechaFin: Variant; const ListaIDProveedores: TIntegerArray;
const Desglosado: Boolean; const ImporteMinimo: Currency): Binary;
function DarListaAnosFacturasProv: StringArray;
function DarListaIntervalos: StringArray;
end;
implementation
@ -1731,6 +1743,22 @@ begin
end
end;
function TsrvFacturasCliente_Proxy.DarListaAnos: StringArray;
begin
try
result := nil;
__Message.InitializeRequestMessage(__TransportChannel, 'FactuGES', __InterfaceName, 'DarListaAnos');
__Message.Finalize;
__TransportChannel.Dispatch(__Message);
__Message.Read('Result', TypeInfo(DataAbstract4_Intf.StringArray), result, []);
finally
__Message.UnsetAttributes(__TransportChannel);
__Message.FreeStream;
end
end;
{ CosrvFacturasProveedor }
class function CosrvFacturasProveedor.Create(const aMessage: IROMessage; aTransportChannel: IROTransportChannel): IsrvFacturasProveedor;
@ -1738,11 +1766,29 @@ begin
result := TsrvFacturasProveedor_Proxy.Create(aMessage, aTransportChannel);
end;
{ TsrvFacturasProveedor_Proxy }
function TsrvFacturasProveedor_Proxy.__GetInterfaceName:string;
begin
result := 'srvFacturasProveedor';
end;
function TsrvFacturasProveedor_Proxy.DarListaAnos: StringArray;
begin
try
result := nil;
__Message.InitializeRequestMessage(__TransportChannel, 'FactuGES', __InterfaceName, 'DarListaAnos');
__Message.Finalize;
__TransportChannel.Dispatch(__Message);
__Message.Read('Result', TypeInfo(DataAbstract4_Intf.StringArray), result, []);
finally
__Message.UnsetAttributes(__TransportChannel);
__Message.FreeStream;
end
end;
{ CosrvPresupuestosCliente }
class function CosrvPresupuestosCliente.Create(const aMessage: IROMessage; aTransportChannel: IROTransportChannel): IsrvPresupuestosCliente;
@ -2419,6 +2465,29 @@ begin
end
end;
function TsrvGestorInformes_Proxy.GenerarInformeFacturasProvGrafComp(const IdEmpresa: Integer; const Intervalo: Variant; const Ano1: Variant; const Ano2: Variant; const ListaIDProveedores: TIntegerArray;
const TopN: Integer): Binary;
begin
try
result := nil;
__Message.InitializeRequestMessage(__TransportChannel, 'FactuGES', __InterfaceName, 'GenerarInformeFacturasProvGrafComp');
__Message.Write('IdEmpresa', TypeInfo(Integer), IdEmpresa, []);
__Message.Write('Intervalo', TypeInfo(Variant), Intervalo, []);
__Message.Write('Ano1', TypeInfo(Variant), Ano1, []);
__Message.Write('Ano2', TypeInfo(Variant), Ano2, []);
__Message.Write('ListaIDProveedores', TypeInfo(FactuGES_Intf.TIntegerArray), ListaIDProveedores, []);
__Message.Write('TopN', TypeInfo(Integer), TopN, []);
__Message.Finalize;
__TransportChannel.Dispatch(__Message);
__Message.Read('Result', TypeInfo(Binary), result, []);
finally
__Message.UnsetAttributes(__TransportChannel);
__Message.FreeStream;
end
end;
function TsrvGestorInformes_Proxy.GenerarInformeListadoFacturasCliPendientes(const IdEmpresa: Integer; const FechaInicio: Variant; const FechaFin: Variant; const FechaVenInicio: Variant;
const FechaVenFin: Variant; const ListaIDClientes: TIntegerArray; const Desglosado: Boolean; const ImporteMinimo: Currency): Binary;
begin
@ -2615,6 +2684,38 @@ begin
end
end;
function TsrvGestorInformes_Proxy.DarListaAnosFacturasProv: StringArray;
begin
try
result := nil;
__Message.InitializeRequestMessage(__TransportChannel, 'FactuGES', __InterfaceName, 'DarListaAnosFacturasProv');
__Message.Finalize;
__TransportChannel.Dispatch(__Message);
__Message.Read('Result', TypeInfo(DataAbstract4_Intf.StringArray), result, []);
finally
__Message.UnsetAttributes(__TransportChannel);
__Message.FreeStream;
end
end;
function TsrvGestorInformes_Proxy.DarListaIntervalos: StringArray;
begin
try
result := nil;
__Message.InitializeRequestMessage(__TransportChannel, 'FactuGES', __InterfaceName, 'DarListaIntervalos');
__Message.Finalize;
__TransportChannel.Dispatch(__Message);
__Message.Read('Result', TypeInfo(DataAbstract4_Intf.StringArray), result, []);
finally
__Message.UnsetAttributes(__TransportChannel);
__Message.FreeStream;
end
end;
initialization
RegisterROClass(TRdxLoginInfo);
RegisterROClass(TRdxEmpresasArray);

View File

@ -171,6 +171,7 @@ type
procedure Invoke_GenerarInforme(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
procedure Invoke_GenerarInformeEnWord(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
procedure Invoke_GenerarInformeEnPDF(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
procedure Invoke_DarListaAnos(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
end;
TsrvFacturasProveedor_Invoker = class(TDataAbstractService_Invoker)
@ -179,6 +180,7 @@ type
public
constructor Create; override;
published
procedure Invoke_DarListaAnos(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
end;
TsrvPresupuestosCliente_Invoker = class(TDataAbstractService_Invoker)
@ -295,6 +297,7 @@ type
procedure Invoke_GenerarInformeIVAProveedores(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
procedure Invoke_GenerarInformeListadoFacturasCli(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
procedure Invoke_GenerarInformeListadoFacturasProv(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
procedure Invoke_GenerarInformeFacturasProvGrafComp(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
procedure Invoke_GenerarInformeListadoFacturasCliPendientes(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
procedure Invoke_GenerarInformeListadoFacturasProvPendientes(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
procedure Invoke_GenerarInformeListadoRecibosCliente(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
@ -303,6 +306,8 @@ type
procedure Invoke_GenerarInformeListadoRecibosProvPendientes(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
procedure Invoke_GenerarInformeListadoPresupuestos(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
procedure Invoke_GenerarInformeListadoPedidos(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
procedure Invoke_DarListaAnosFacturasProv(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
procedure Invoke_DarListaIntervalos(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
end;
implementation
@ -886,6 +891,31 @@ begin
end;
end;
procedure TsrvFacturasCliente_Invoker.Invoke_DarListaAnos(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
{ function DarListaAnos: StringArray; }
var
lResult: DataAbstract4_Intf.StringArray;
__lObjectDisposer: TROObjectDisposer;
begin
lResult := nil;
try
lResult := (__Instance as IsrvFacturasCliente).DarListaAnos;
__Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvFacturasCliente', 'DarListaAnosResponse');
__Message.Write('Result', TypeInfo(DataAbstract4_Intf.StringArray), lResult, []);
__Message.Finalize;
__Message.UnsetAttributes(__Transport);
finally
__lObjectDisposer := TROObjectDisposer.Create(__Instance);
try
__lObjectDisposer.Add(lResult);
finally
__lObjectDisposer.Free();
end;
end;
end;
{ TsrvFacturasProveedor_Invoker }
constructor TsrvFacturasProveedor_Invoker.Create;
@ -894,6 +924,31 @@ begin
FAbstract := False;
end;
procedure TsrvFacturasProveedor_Invoker.Invoke_DarListaAnos(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
{ function DarListaAnos: StringArray; }
var
lResult: DataAbstract4_Intf.StringArray;
__lObjectDisposer: TROObjectDisposer;
begin
lResult := nil;
try
lResult := (__Instance as IsrvFacturasProveedor).DarListaAnos;
__Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvFacturasProveedor', 'DarListaAnosResponse');
__Message.Write('Result', TypeInfo(DataAbstract4_Intf.StringArray), lResult, []);
__Message.Finalize;
__Message.UnsetAttributes(__Transport);
finally
__lObjectDisposer := TROObjectDisposer.Create(__Instance);
try
__lObjectDisposer.Add(lResult);
finally
__lObjectDisposer.Free();
end;
end;
end;
{ TsrvPresupuestosCliente_Invoker }
constructor TsrvPresupuestosCliente_Invoker.Create;
@ -1863,6 +1918,47 @@ begin
end;
end;
procedure TsrvGestorInformes_Invoker.Invoke_GenerarInformeFacturasProvGrafComp(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
{ function GenerarInformeFacturasProvGrafComp(const IdEmpresa: Integer; const Intervalo: Variant; const Ano1: Variant; const Ano2: Variant; const ListaIDProveedores: TIntegerArray;
const TopN: Integer): Binary; }
var
IdEmpresa: Integer;
Intervalo: Variant;
Ano1: Variant;
Ano2: Variant;
ListaIDProveedores: FactuGES_Intf.TIntegerArray;
TopN: Integer;
lResult: Binary;
__lObjectDisposer: TROObjectDisposer;
begin
ListaIDProveedores := nil;
lResult := nil;
try
__Message.Read('IdEmpresa', TypeInfo(Integer), IdEmpresa, []);
__Message.Read('Intervalo', TypeInfo(Variant), Intervalo, []);
__Message.Read('Ano1', TypeInfo(Variant), Ano1, []);
__Message.Read('Ano2', TypeInfo(Variant), Ano2, []);
__Message.Read('ListaIDProveedores', TypeInfo(FactuGES_Intf.TIntegerArray), ListaIDProveedores, []);
__Message.Read('TopN', TypeInfo(Integer), TopN, []);
lResult := (__Instance as IsrvGestorInformes).GenerarInformeFacturasProvGrafComp(IdEmpresa, Intervalo, Ano1, Ano2, ListaIDProveedores, TopN);
__Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvGestorInformes', 'GenerarInformeFacturasProvGrafCompResponse');
__Message.Write('Result', TypeInfo(Binary), lResult, []);
__Message.Finalize;
__Message.UnsetAttributes(__Transport);
finally
__lObjectDisposer := TROObjectDisposer.Create(__Instance);
try
__lObjectDisposer.Add(ListaIDProveedores);
__lObjectDisposer.Add(lResult);
finally
__lObjectDisposer.Free();
end;
end;
end;
procedure TsrvGestorInformes_Invoker.Invoke_GenerarInformeListadoFacturasCliPendientes(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
{ function GenerarInformeListadoFacturasCliPendientes(const IdEmpresa: Integer; const FechaInicio: Variant; const FechaFin: Variant; const FechaVenInicio: Variant;
const FechaVenFin: Variant; const ListaIDClientes: TIntegerArray; const Desglosado: Boolean; const ImporteMinimo: Currency): Binary; }
@ -2215,5 +2311,55 @@ begin
end;
end;
procedure TsrvGestorInformes_Invoker.Invoke_DarListaAnosFacturasProv(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
{ function DarListaAnosFacturasProv: StringArray; }
var
lResult: DataAbstract4_Intf.StringArray;
__lObjectDisposer: TROObjectDisposer;
begin
lResult := nil;
try
lResult := (__Instance as IsrvGestorInformes).DarListaAnosFacturasProv;
__Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvGestorInformes', 'DarListaAnosFacturasProvResponse');
__Message.Write('Result', TypeInfo(DataAbstract4_Intf.StringArray), lResult, []);
__Message.Finalize;
__Message.UnsetAttributes(__Transport);
finally
__lObjectDisposer := TROObjectDisposer.Create(__Instance);
try
__lObjectDisposer.Add(lResult);
finally
__lObjectDisposer.Free();
end;
end;
end;
procedure TsrvGestorInformes_Invoker.Invoke_DarListaIntervalos(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
{ function DarListaIntervalos: StringArray; }
var
lResult: DataAbstract4_Intf.StringArray;
__lObjectDisposer: TROObjectDisposer;
begin
lResult := nil;
try
lResult := (__Instance as IsrvGestorInformes).DarListaIntervalos;
__Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvGestorInformes', 'DarListaIntervalosResponse');
__Message.Write('Result', TypeInfo(DataAbstract4_Intf.StringArray), lResult, []);
__Message.Finalize;
__Message.UnsetAttributes(__Transport);
finally
__lObjectDisposer := TROObjectDisposer.Create(__Instance);
try
__lObjectDisposer.Add(lResult);
finally
__lObjectDisposer.Free();
end;
end;
end;
initialization
end.

Binary file not shown.

Binary file not shown.

View File

@ -37,6 +37,16 @@
<BorlandProject>
<BorlandProject><Delphi.Personality><Parameters><Parameters Name="UseLauncher">False</Parameters><Parameters Name="LoadAllSymbols">True</Parameters><Parameters Name="LoadUnspecifiedSymbols">False</Parameters><Parameters Name="RunParams">/standalone</Parameters></Parameters><VersionInfo><VersionInfo Name="IncludeVerInfo">True</VersionInfo><VersionInfo Name="AutoIncBuild">False</VersionInfo><VersionInfo Name="MajorVer">1</VersionInfo><VersionInfo Name="MinorVer">8</VersionInfo><VersionInfo Name="Release">7</VersionInfo><VersionInfo Name="Build">0</VersionInfo><VersionInfo Name="Debug">False</VersionInfo><VersionInfo Name="PreRelease">False</VersionInfo><VersionInfo Name="Special">False</VersionInfo><VersionInfo Name="Private">False</VersionInfo><VersionInfo Name="DLL">False</VersionInfo><VersionInfo Name="Locale">3082</VersionInfo><VersionInfo Name="CodePage">1252</VersionInfo></VersionInfo><VersionInfoKeys><VersionInfoKeys Name="CompanyName"></VersionInfoKeys><VersionInfoKeys Name="FileDescription"></VersionInfoKeys><VersionInfoKeys Name="FileVersion">1.8.7.0</VersionInfoKeys><VersionInfoKeys Name="InternalName"></VersionInfoKeys><VersionInfoKeys Name="LegalCopyright"></VersionInfoKeys><VersionInfoKeys Name="LegalTrademarks"></VersionInfoKeys><VersionInfoKeys Name="OriginalFilename"></VersionInfoKeys><VersionInfoKeys Name="ProductName"></VersionInfoKeys><VersionInfoKeys Name="ProductVersion">1.8.7.0</VersionInfoKeys><VersionInfoKeys Name="Comments"></VersionInfoKeys><VersionInfoKeys Name="CompileDate">miércoles, 19 de enero de 2011 17:45</VersionInfoKeys></VersionInfoKeys><Excluded_Packages>
<Excluded_Packages Name="C:\Documents and Settings\All Users\Documentos\RAD Studio\5.0\Bpl\dxPSCoreD11.bpl">ExpressPrinting System by Developer Express Inc.</Excluded_Packages>
</Excluded_Packages><Source><Source Name="MainSource">FactuGES_Server.dpr</Source></Source></Delphi.Personality></BorlandProject></BorlandProject>
</ProjectExtensions>

View File

@ -1,7 +1,7 @@
MAINICON ICON "C:\Codigo tecsitel\Resources\Iconos\Servidor.ico"
1 VERSIONINFO
FILEVERSION 1,8,6,0
PRODUCTVERSION 1,8,6,0
FILEVERSION 1,8,7,0
PRODUCTVERSION 1,8,7,0
FILEFLAGSMASK 0x3FL
FILEFLAGS 0x00L
FILEOS 0x40004L
@ -12,9 +12,9 @@ BEGIN
BEGIN
BLOCK "0C0A04E4"
BEGIN
VALUE "FileVersion", "1.8.6.0\0"
VALUE "ProductVersion", "1.8.6.0\0"
VALUE "CompileDate", "miércoles, 13 de octubre de 2010 17:05\0"
VALUE "FileVersion", "1.8.7.0\0"
VALUE "ProductVersion", "1.8.7.0\0"
VALUE "CompileDate", "miércoles, 19 de enero de 2011 18:10\0"
END
END
BLOCK "VarFileInfo"